body{margin:0;background:#fbf6ec;font-family:PingFang SC,Microsoft YaHei,Segoe UI,system-ui,sans-serif}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%}.app-sider .app-nav{flex:1;overflow-y:auto}.app-sider .ant-menu-submenu-title{font-size:13.5px;font-weight:700;color:#57503f!important;letter-spacing:.06em}.app-sider .ant-menu-submenu-arrow{transition:transform .2s ease-out}.app-sider .ant-menu-item{font-size:13.5px}.app-logo{display:flex;align-items:center;gap:9px;padding:18px 16px 12px;font-weight:800;font-size:15.5px;color:#3d3524;text-decoration:none;transition:color .15s ease}.app-logo:hover{color:#8a6400}.app-logo:focus-visible{color:#8a6400;outline:2px solid #e7b51f;outline-offset:-2px;border-radius:8px}.app-user-chip{margin:10px 12px 14px;display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:10px;font-size:12.5px;border:1px solid #f0e6d2;background:#fff;color:#3d3524}.app-user-chip .chip-ava{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;flex-shrink:0;background:linear-gradient(135deg,#e7b51f,#b98a0c)}.app-user-chip .chip-role{color:#9a8e76;font-size:11.5px}.credit-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 13px;font-size:12.5px;font-weight:600;background:linear-gradient(90deg,#fff3c9,#fde9a8);color:#7a5c0f;border:1px solid #efd98b;line-height:1.4}.credit-badge svg{flex-shrink:0}.tool-banner{position:relative;display:flex;align-items:center;min-height:118px;border-radius:14px;overflow:hidden;margin-bottom:16px;color:#fff9e8;background:linear-gradient(90deg,#5c4708,#93711a 58%,#93711a00)}.tool-banner .bn-imgs{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.tool-banner .bn-imgs img{position:absolute;right:0;height:100%;width:52%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 32%);mask-image:linear-gradient(90deg,transparent 0,#000 32%)}.tool-banner .bn-txt{position:relative;z-index:2;padding:20px 26px;max-width:56%}.tool-banner .bn-txt b{font-size:16.5px;display:block;margin-bottom:4px}.tool-banner .bn-txt p{font-size:12.5px;opacity:.85;margin:0 0 10px}.tool-banner .bn-cta.ant-btn{background:#f0c232;border-color:#f0c232;color:#4a3b10;font-weight:600}.tool-banner .bn-cta.ant-btn:hover{background:#e7b51f!important;border-color:#e7b51f!important;color:#4a3b10!important}@media (max-width: 767px){.tool-banner{display:none}}.wcy-title-link{display:inline;color:#3d3524;text-decoration:none}.wcy-title-link:hover{color:#8a6400;text-decoration:underline}.warm-upload{border:1.5px dashed #dfd3b4;background:#fffcf3;border-radius:12px;padding:12px 14px}.warm-upload .ant-upload-list-item-container,.warm-upload .ant-upload.ant-upload-select{width:72px!important;height:72px!important}.warm-upload .ant-upload.ant-upload-select{background:#fffdf6;border:1.5px dashed #dfd3b4!important;border-radius:10px!important;color:#8a6400}.warm-upload .ant-upload.ant-upload-select:hover{border-color:#e7b51f!important}.warm-upload .ant-upload-list-item{border-radius:10px;padding:0!important}.warm-upload .ant-upload-list-item-thumbnail,.warm-upload .ant-upload-list-item-thumbnail img{border-radius:10px;object-fit:cover}.warm-upload .ant-upload-list-item-container{position:relative}.warm-upload .ant-upload-list-item-container:after{content:"✓";position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:#16a34a;color:#fff;font-size:11px;line-height:18px;text-align:center;z-index:2;pointer-events:none}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:#fbf6ec}.login-card{width:100%;max-width:1020px;display:grid;grid-template-columns:1.15fr 1fr;border-radius:16px;overflow:hidden;border:1px solid #f0e6d2;box-shadow:0 8px 30px #604e201f;background:#fff}.lg-brand{position:relative;display:flex;flex-direction:column;padding:44px 48px 36px;overflow:hidden;color:#3d3524;background:radial-gradient(560px 280px at 90% -4%,rgba(240,194,50,.3),transparent 62%),radial-gradient(420px 240px at -4% 110%,rgba(214,168,29,.14),transparent 60%),linear-gradient(155deg,#fffaea,#fbf2d8 60%,#f7efdc)}.lg-brand .lg-logo{height:50px;width:fit-content;background:#fff;border-radius:12px;padding:6px 14px;margin-bottom:20px;box-shadow:0 2px 10px #604e201a;position:relative;z-index:2}.lg-brand h3{font-size:25px;font-weight:800;margin:0 0 8px;position:relative;z-index:2;line-height:1.4}.lg-brand .lg-sub{font-size:13.5px;opacity:.8;margin:0 0 18px;position:relative;z-index:2}.lg-feat{display:flex;flex-direction:column;gap:10px;font-size:13px;position:relative;z-index:2}.lg-feat div{display:flex;align-items:center;gap:9px}.lg-feat svg{width:15px;height:15px;flex-shrink:0;color:#b98a0c}.lg-shots{position:relative;z-index:2;margin-top:auto;padding-top:26px;display:flex;align-items:flex-end;height:172px}.lg-shots .shot{border-radius:14px;overflow:hidden;border:3px solid #fff;box-shadow:0 14px 30px #604e2038}.lg-shots .shot img{width:100%;height:100%;object-fit:cover;display:block}.lg-shots .s1{width:150px;height:150px;transform:rotate(-5deg);z-index:1}.lg-shots .s2{width:120px;height:150px;transform:rotate(3deg) translate(-18px);z-index:2}.lg-shots .s3{width:132px;height:118px;transform:rotate(8deg) translate(-30px);z-index:3}.lg-shots .s-badge{position:absolute;right:8px;bottom:12px;border-radius:999px;padding:6px 14px;font-size:11.5px;font-weight:700;box-shadow:0 4px 14px #604e202e;z-index:4;background:#3d3524;color:#ffe9a8}.lg-form{background:#fff;display:flex;flex-direction:column;justify-content:center;padding:44px 52px}.lg-form h4{font-size:20px;font-weight:700;margin:0 0 4px;color:#3d3524}.lg-form .lg-form-sub{font-size:12.5px;color:#9a8e76;margin:0 0 10px}@media (max-width: 959px){.login-card{grid-template-columns:1fr;max-width:460px}.lg-brand{padding:32px 32px 28px}.lg-shots{height:130px}.lg-shots .s1{width:110px;height:110px}.lg-shots .s2{width:90px;height:110px}.lg-shots .s3{width:100px;height:90px}.lg-form{padding:28px 32px 36px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
