:root{--hub-ink:#0b1a2a;--hub-ink-soft:#122338;--hub-gold:#e0bd60;--hub-gold-deep:#b8862d;--hub-gold-text:#5a4326;--hub-paper:#fffdf8;--hub-mist:#eef2f6}body,html{margin:0;padding:0;min-height:100%;background:var(--hub-mist);color:#243041;-webkit-tap-highlight-color:transparent;font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}.login-page{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;padding:24px;background:radial-gradient(720px 360px at 50% 22%,rgba(224,189,96,.16),transparent 70%),radial-gradient(520px 400px at 10% 90%,rgba(30,58,95,.5),transparent 65%),linear-gradient(165deg,#0a1628,#0f2744 48%,#0b1f1a)}.login-page:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(140px 48px at 18% 28%,hsla(0,0%,100%,.07),transparent 70%),radial-gradient(180px 56px at 82% 36%,hsla(0,0%,100%,.05),transparent 72%)}.login-card.ant-card{position:relative;z-index:1;width:100%;max-width:420px;border-radius:18px!important;border:1px solid rgba(224,189,96,.28)!important;background:linear-gradient(180deg,#fffdf8,#fdf7e9)!important;box-shadow:0 24px 48px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.75)!important}.login-card .ant-card-body{padding:28px 28px 24px}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}.login-brand-emblem{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:20px;font-weight:900;color:#fff6df;background:radial-gradient(circle at 34% 28%,#f0d074 0,#d3a544 46%,#a97c2c 100%);box-shadow:0 8px 16px rgba(150,108,40,.4),inset 0 0 0 2px rgba(255,246,214,.45)}.login-brand h1{margin:0;font-size:22px;font-weight:800;letter-spacing:.12em;background:linear-gradient(180deg,#f4d778,#d5a743 50%,#a9761f);-webkit-background-clip:text;background-clip:text;color:transparent}.login-brand p{margin:4px 0 0;font-size:12px;letter-spacing:.08em;color:#a08a5c}.login-card .ant-btn-primary{height:44px;font-weight:700;letter-spacing:.2em;text-indent:.2em;border:none;background:linear-gradient(180deg,#e0bd60,#cc9f3f 55%,#b6862d);box-shadow:0 10px 22px rgba(168,122,40,.35)}.login-card .ant-btn-primary:not(:disabled):hover{background:linear-gradient(180deg,#e8c86e,#d5a948 55%,#c0902f)!important}.login-captcha-btn{width:140px;height:40px;padding:0;border:1px solid #e7d6ab;border-left:none;border-radius:0 10px 10px 0;background:#fffaf0;cursor:pointer;overflow:hidden;font-size:13px;color:#a08a5c}.login-captcha-btn img{display:block;width:100%;height:100%;object-fit:contain;background:#f5ecd6}.login-captcha-btn:hover{background:#fff3d6}.shell-brand{--shell-gold:#e0bd60;--shell-gold-deep:#b6862d;height:56px;margin:0 12px;padding:0 10px;display:flex;align-items:center;gap:10px;white-space:nowrap;border-bottom:1px solid rgba(224,189,96,.18);background:linear-gradient(180deg,rgba(224,189,96,.08),transparent)}.shell-brand-emblem{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:15px;font-weight:900;color:#fff6df;letter-spacing:0;background:radial-gradient(circle at 34% 28%,#f0d074 0,#d3a544 46%,#a97c2c 100%);box-shadow:0 4px 10px rgba(150,108,40,.45),inset 0 0 0 1.5px rgba(255,246,214,.45);text-shadow:0 1px 2px rgba(120,82,20,.55)}.shell-brand-text{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;line-height:1.15}.shell-brand-title{font-size:15px;font-weight:700;letter-spacing:.12em;background:linear-gradient(180deg,#f4d778,#d5a743 50%,#c0902f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.shell-brand-sub{font-size:10px;font-weight:500;letter-spacing:.18em;color:rgba(224,189,96,.55)}.ant-layout-sider-collapsed .shell-brand{margin:0 8px;padding:0;justify-content:center;gap:0;border-bottom-color:transparent;background:none}.ant-layout-sider-collapsed .shell-brand-text{display:none}.shell-boot{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(720px 360px at 50% 28%,rgba(224,189,96,.14),transparent 70%),radial-gradient(520px 400px at 12% 90%,rgba(30,58,95,.55),transparent 65%),linear-gradient(165deg,#0a1628,#0f2744 48%,#0b1f1a)}.shell-boot:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(140px 48px at 22% 30%,hsla(0,0%,100%,.06),transparent 70%),radial-gradient(180px 56px at 78% 38%,hsla(0,0%,100%,.045),transparent 72%);animation:shell-boot-drift 8s ease-in-out infinite alternate}.shell-boot-card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:18px;padding:36px 40px 32px;border-radius:20px;border:1px solid rgba(224,189,96,.22);background:linear-gradient(180deg,rgba(255,253,248,.06),rgba(255,248,230,.03));box-shadow:0 24px 48px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.08);backdrop-filter:blur(8px)}.shell-boot-ring{position:relative;width:72px;height:72px;display:grid;place-items:center}.shell-boot-ring:before{content:"";position:absolute;inset:0;border-radius:50%;border-color:#e0bd60 rgba(224,189,96,.25) transparent transparent;border-style:solid;border-width:2px;animation:shell-boot-spin 1s linear infinite}.shell-boot-emblem{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:22px;font-weight:900;color:#fff6df;background:radial-gradient(circle at 34% 28%,#f0d074 0,#d3a544 46%,#a97c2c 100%);box-shadow:0 8px 18px rgba(150,108,40,.45),inset 0 0 0 2px rgba(255,246,214,.45);text-shadow:0 2px 3px rgba(120,82,20,.55);animation:shell-boot-pulse 1.8s ease-in-out infinite}.shell-boot-title{margin:0;font-size:18px;font-weight:700;letter-spacing:.16em;text-indent:.16em;background:linear-gradient(180deg,#f4d778,#d5a743 50%,#c0902f);-webkit-background-clip:text;background-clip:text;color:transparent}.shell-boot-hint{margin:0;font-size:13px;letter-spacing:.08em;color:rgba(224,189,96,.65)}.shell-boot-dots{display:flex;gap:6px}.shell-boot-dots span{width:6px;height:6px;border-radius:50%;background:#e0bd60;opacity:.35;animation:shell-boot-dot 1.2s ease-in-out infinite}.shell-boot-dots span:nth-child(2){animation-delay:.2s}.shell-boot-dots span:nth-child(3){animation-delay:.4s}@keyframes shell-boot-spin{to{transform:rotate(1turn)}}@keyframes shell-boot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes shell-boot-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes shell-boot-drift{0%{transform:translateY(0)}to{transform:translateY(-12px)}}#__next,body,html{height:100%}.shell-root.ant-layout{min-height:100vh;min-height:100dvh;background:radial-gradient(900px 420px at 80% -10%,rgba(224,189,96,.12),transparent 60%),radial-gradient(700px 480px at 0 100%,rgba(61,107,140,.08),transparent 55%),linear-gradient(180deg,#eef2f6,#e7edf3)}.shell-sider.ant-layout-sider{position:sticky!important;top:0;align-self:stretch;height:100vh!important;height:100dvh!important;max-height:100vh;max-height:100dvh;background:linear-gradient(180deg,#0d2034,#0b1a2a 55%,#0a1724)!important;box-shadow:4px 0 24px rgba(10,22,40,.18)}.shell-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;min-height:100%;overflow:hidden}.shell-menu.ant-menu-dark{background:transparent!important;padding:8px 0 16px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.shell-menu.ant-menu-dark .ant-menu-item{margin-block:4px}.shell-menu.ant-menu-dark .ant-menu-item-selected{box-shadow:inset 3px 0 0 #e0bd60}.shell-header{position:sticky;top:0;z-index:20;padding:0 20px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;height:60px!important;line-height:60px!important;background:rgba(255,253,248,.86)!important;border-bottom:1px solid rgba(184,134,45,.14)!important;backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.65)}.shell-page-title{margin:0!important;font-weight:700!important;letter-spacing:.04em;color:var(--hub-gold-text)!important}.shell-user{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid rgba(184,134,45,.16);background:rgba(255,248,230,.55);cursor:pointer;transition:background .15s,border-color .15s}.shell-user:hover{background:rgba(255,244,214,.9);border-color:rgba(184,134,45,.32)}.shell-user .ant-avatar{background:linear-gradient(180deg,#e0bd60,#b6862d);color:#fff8e7}.shell-user-meta{display:flex;flex-direction:column;line-height:1.2;min-width:0}.shell-user-name{font-size:13px;font-weight:600;color:#2a3340;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell-user-role{font-size:11px;color:rgba(184,134,45,.85);letter-spacing:.04em}.shell-content{margin:18px}.shell-panel{padding:20px;min-height:280px;background:var(--hub-paper)!important;border:1px solid rgba(184,134,45,.12);border-radius:16px!important;box-shadow:0 10px 28px rgba(30,48,70,.06),inset 0 1px 0 hsla(0,0%,100%,.9)}.dash-stat.ant-card{border-radius:14px!important;border:1px solid rgba(184,134,45,.12)!important;background:linear-gradient(180deg,#fffdf8,#faf6ec)!important;box-shadow:0 6px 16px rgba(30,48,70,.04);transition:transform .18s ease,box-shadow .18s ease}.dash-stat.ant-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(30,48,70,.08)}.dash-stat .ant-statistic-title{color:#8a7350;font-size:13px}.dash-stat .ant-statistic-content{color:#2a3340;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.dash-stat .ant-statistic-content-prefix,.dash-stat .ant-statistic-content-value{white-space:nowrap}.dash-stat-money .ant-statistic-content{font-size:22px;letter-spacing:-.02em}.dash-note.ant-alert{border-radius:12px;border:1px solid rgba(184,134,45,.16);background:rgba(255,248,230,.65)}.ant-table-wrapper{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.ant-table{min-width:0}.shell-panel .ant-table-wrapper{border-radius:12px;overflow:hidden}.shell-panel .ant-btn-primary{box-shadow:0 6px 14px rgba(168,122,40,.22)}.shell-drawer .ant-drawer-header{background:var(--hub-ink);border-bottom:1px solid rgba(224,189,96,.18)}.shell-drawer .ant-drawer-title{color:#f4d778;letter-spacing:.12em}.shell-drawer .ant-drawer-close{color:rgba(255,248,230,.75)}@media (max-width:767px){.shell-content{margin:10px}.shell-panel{padding:14px;border-radius:12px!important}.shell-header{padding:0 10px 0 6px!important}.login-card .ant-card-body{padding:22px 18px 18px}.ant-modal{max-width:calc(100vw - 16px)!important;margin:8px auto!important;padding-bottom:0}.ant-modal .ant-modal-body{max-height:min(70vh,560px);overflow:auto;-webkit-overflow-scrolling:touch}.h5-full-control,.h5-full-control.ant-input-number,.h5-full-control.ant-picker,.h5-full-control.ant-select{width:100%!important}.h5-toolbar{display:flex;flex-wrap:wrap;gap:8px}.h5-toolbar>*{flex:1 1 100%}.h5-toolbar .ant-btn{width:100%}}@supports (padding:env(safe-area-inset-bottom)){body{padding-bottom:env(safe-area-inset-bottom)}}.reg-page{--reg-gold:#c9a24a;--reg-gold-deep:#a67c2e;--reg-ink:#5a4326;--reg-line:#e7d6ab;--reg-field:#faf3e1;min-height:100vh;padding:max(12px,env(safe-area-inset-top)) 14px max(18px,env(safe-area-inset-bottom));background:radial-gradient(900px 420px at 50% -120px,rgba(255,244,214,.9),transparent 70%),radial-gradient(700px 520px at 12% 8%,rgba(221,232,236,.55),transparent 60%),radial-gradient(760px 560px at 92% 4%,hsla(41,59%,85%,.6),transparent 60%),linear-gradient(180deg,#f6efe0,#efe4cd 55%,#ead9ba)}.reg-page:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(120px 42px at 18% 20%,hsla(0,0%,100%,.7),transparent 70%),radial-gradient(160px 52px at 82% 26%,hsla(0,0%,100%,.55),transparent 72%),radial-gradient(110px 40px at 68% 12%,hsla(0,0%,100%,.5),transparent 72%);z-index:0}.reg-hero{position:relative;z-index:1;max-width:480px;margin:0 auto;padding:4px 4px 12px;text-align:center}.reg-emblem{width:50px;height:50px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:#fff6df;border-radius:50%;background:radial-gradient(circle at 34% 28%,#f0d074 0,#d3a544 46%,#a97c2c 100%);box-shadow:0 8px 16px rgba(150,108,40,.4),inset 0 0 0 2px rgba(255,246,214,.5);text-shadow:0 2px 3px rgba(120,82,20,.6)}.reg-mark{display:inline-block;padding:2px 14px;border:1px solid rgba(166,124,46,.4);border-radius:999px;font-size:11px;letter-spacing:.35em;text-indent:.35em;color:var(--reg-gold-deep);background:rgba(255,250,236,.6)}.reg-hero h1{margin:8px 0 6px;font-size:34px;font-weight:900;letter-spacing:.14em;text-indent:.14em;background:linear-gradient(180deg,#f4d778,#d5a743 45%,#a9761f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 1px rgba(120,78,18,.35))}.reg-hero p{display:flex;align-items:center;justify-content:center;gap:12px;margin:0;font-size:15px;color:var(--reg-gold-deep)}.reg-hero p:after,.reg-hero p:before{content:"";width:42px;height:1px;background:linear-gradient(90deg,transparent,rgba(166,124,46,.6))}.reg-hero p:after{transform:scaleX(-1)}.reg-card{position:relative;z-index:1;max-width:480px;margin:0 auto;padding:18px 18px 16px;border-radius:18px;border:1px solid rgba(201,162,74,.32);background:linear-gradient(180deg,#fffdf8,#fdf7e9);box-shadow:0 18px 44px rgba(120,90,40,.2),inset 0 2px 0 hsla(0,0%,100%,.8)}.reg-card .ant-form-item{margin-bottom:14px}.reg-card .ant-form-item .ant-form-item-label{padding-bottom:2px}.reg-card .ant-typography{color:var(--reg-ink)}.reg-card .ant-form-item-label>label{color:var(--reg-ink);font-size:16px;font-weight:600}.reg-card .ant-form-item-explain-error{font-size:14px}.reg-card .ant-input,.reg-card .ant-input-affix-wrapper{background:var(--reg-field);border:1px solid var(--reg-line);border-radius:12px;font-size:18px;transition:border-color .15s,box-shadow .15s}.reg-card .ant-input-affix-wrapper-lg,.reg-card .ant-input-lg{box-sizing:border-box;height:50px;min-height:50px;padding-top:0;padding-bottom:0;font-size:18px;line-height:48px}.reg-card .ant-input-affix-wrapper-lg{display:inline-flex;align-items:center;line-height:1.2}.reg-card .ant-input-affix-wrapper-lg>.ant-input{height:100%;min-height:0;padding-top:0!important;padding-bottom:0!important;font-size:18px;line-height:1.2}.reg-card .ant-input-affix-wrapper>.ant-input{background:transparent;border:none;border-radius:0}.reg-card .ant-input-affix-wrapper:hover,.reg-card .ant-input:hover{border-color:var(--reg-gold)}.reg-card .ant-input-affix-wrapper-focused,.reg-card .ant-input-focused,.reg-card .ant-input:focus{border-color:var(--reg-gold);box-shadow:0 0 0 3px rgba(201,162,74,.18)}.reg-card .ant-input::placeholder{color:#b6a276}.reg-row{display:grid;grid-template-columns:1fr;gap:0 14px}@media (min-width:480px){.reg-row{grid-template-columns:1fr 1fr}}.reg-card .ant-btn-primary{height:50px;font-size:18px;font-weight:700;letter-spacing:.3em;text-indent:.3em;border:none;border-radius:12px;color:#fff8e7;background:linear-gradient(180deg,#e0bd60,#cc9f3f 55%,#b6862d);box-shadow:0 10px 22px rgba(168,122,40,.35);text-shadow:0 1px 2px rgba(130,90,20,.4)}.reg-card .ant-btn-primary:not(:disabled):hover{background:linear-gradient(180deg,#e8c86e,#d5a948 55%,#c0902f)!important;color:#fff8e7!important;box-shadow:0 12px 26px rgba(168,122,40,.45)}.reg-card .ant-btn-primary:not(:disabled):active{filter:brightness(.96)}.reg-captcha-btn{width:148px;height:50px;padding:0;border:1px solid var(--reg-line);border-left:none;border-radius:0 12px 12px 0;background:#fff;cursor:pointer;overflow:hidden;font-size:15px;color:#b6a276}.reg-captcha-btn img{display:block;width:100%;height:100%;object-fit:contain;background:#f5ecd6}.reg-foot-note{text-align:center;margin-top:14px;font-size:14px;color:#a08a5c}.reg-text-link{color:var(--reg-gold-deep);text-decoration:underline;text-underline-offset:3px}.reg-text-link:hover{color:var(--reg-gold)}.reg-done{padding:34px 10px 26px;text-align:center}.reg-done-ring{width:78px;height:78px;margin:0 auto 16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:38px;color:#fff;background:radial-gradient(circle at 35% 30%,#e6c368,#b6862d);box-shadow:0 12px 26px rgba(168,122,40,.4)}@media (max-width:767px){.reg-page{padding:max(16px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom));-webkit-text-size-adjust:100%;text-size-adjust:100%}.reg-hero h1{font-size:40px;margin:10px 0}.reg-card{padding:20px 16px 18px}.reg-card .ant-form-item-label>label{font-size:18px!important}.reg-card .ant-form-item-explain-error{font-size:15px!important}.reg-card .ant-input,.reg-card .ant-input-affix-wrapper,.reg-card .ant-input-affix-wrapper-lg,.reg-card .ant-input-affix-wrapper-lg>.ant-input,.reg-card .ant-input-affix-wrapper>.ant-input,.reg-card .ant-input-lg{font-size:20px!important}.reg-card .ant-input-affix-wrapper-lg,.reg-card .ant-input-lg{height:54px!important;min-height:54px!important;padding-top:0!important;padding-bottom:0!important;line-height:52px}.reg-card .ant-input-affix-wrapper-lg{line-height:1.2}.reg-card .ant-input-affix-wrapper-lg>.ant-input{height:100%!important;padding-top:0!important;padding-bottom:0!important;line-height:1.2!important}.reg-card .ant-btn-primary{height:54px!important;font-size:20px!important}.reg-captcha-btn{width:156px;height:54px;font-size:16px}.reg-foot-note{font-size:15px}.reg-done .ant-typography,.reg-done h2,.reg-done p{font-size:18px}}