.progress-page[data-v-d63c8954]{min-height:100vh;background:#f5f7fa}.progress-hero[data-v-d63c8954]{min-height:420px;display:flex;flex-direction:column;justify-content:center;padding:64px 0;color:#fff;background:#0f2342;text-align:center}.progress-hero[data-v-d63c8954]>*{width:min(980px,calc(100% - 40px));margin-right:auto;margin-left:auto}.hero-center-group[data-v-d63c8954]{display:flex;flex-direction:column;align-items:center}.progress-hero h1[data-v-d63c8954]{margin:0;font-size:clamp(34px,5vw,54px);line-height:1.2}.progress-note[data-v-d63c8954]{margin:14px 0 28px;color:#b9c6d4;line-height:1.7}.progress-overview[data-v-d63c8954]{display:inline-flex;align-items:baseline;gap:12px;padding:14px 20px;border:1px solid rgb(255 255 255 / 20%);border-radius:6px;background:#ffffff12}.progress-overview span[data-v-d63c8954]{color:#b9c6d4}.progress-overview strong[data-v-d63c8954]{color:#d7263d;font-size:30px}.progress-date[data-v-d63c8954]{margin:0 0 18px;color:#8ea0b5;font-size:13px}.progress-list[data-v-d63c8954]{width:min(980px,calc(100% - 40px));margin:0 auto;padding:56px 0 80px;display:grid;gap:14px}.progress-item[data-v-d63c8954]{padding:24px;border:1px solid #dce2ea;border-radius:8px;background:#fff}.progress-item-header[data-v-d63c8954]{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:start}.progress-status[data-v-d63c8954]{display:inline-flex;width:fit-content;min-height:28px;align-items:center;justify-content:center;padding:0 10px;border-radius:4px;font-size:12px;font-weight:700}.progress-status.done[data-v-d63c8954]{color:#1d7a50;background:#e2f5eb}.progress-status.active[data-v-d63c8954]{color:#a4440c;background:#fdeeda}.progress-status.pending[data-v-d63c8954]{color:#5f6b7c;background:#edf0f4}.progress-copy h2[data-v-d63c8954]{margin:0;color:#172033;font-size:18px}.progress-copy p[data-v-d63c8954]{margin:8px 0 0;color:#647087;font-size:14px;line-height:1.7}.item-percent[data-v-d63c8954]{text-align:right}.item-percent span[data-v-d63c8954]{display:block;color:#7b8798;font-size:12px}.item-percent strong[data-v-d63c8954]{display:block;margin-top:4px;color:#172033;font-size:24px}.sub-list[data-v-d63c8954]{display:grid;gap:10px;margin:20px 0 0;padding:18px 0 0;border-top:1px solid #eef1f5;list-style:none}.sub-list li[data-v-d63c8954]{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:start}.sub-list strong[data-v-d63c8954]{color:#243044;font-size:14px}.sub-list p[data-v-d63c8954]{margin:4px 0 0;color:#7b8798;font-size:13px;line-height:1.6}.progress-loading[data-v-d63c8954]{width:min(980px,calc(100% - 40px));margin:56px auto;color:#647087;text-align:center}@media(max-width:640px){.progress-hero[data-v-d63c8954]{min-height:360px;padding:48px 0}.progress-item-header[data-v-d63c8954],.sub-list li[data-v-d63c8954]{grid-template-columns:1fr}.item-percent[data-v-d63c8954]{text-align:left}.progress-list[data-v-d63c8954]{padding:40px 0 60px}}:root{font-family:Microsoft YaHei,PingFang SC,Segoe UI,system-ui,-apple-system,sans-serif;color:#172033;background:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility;--navy: #0f2342;--navy-soft: #17365f;--red: #d7263d;--red-dark: #b51d31;--ink: #172033;--muted: #647087;--line: #dce2ea;--surface: #ffffff;--surface-muted: #f5f7fa}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--surface-muted)}button,input{font:inherit}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-main{flex:1}.site-header{position:sticky;z-index:20;top:0;color:#fff;background:var(--navy);box-shadow:0 1px #ffffff14}.header-inner{width:min(1280px,100% - 40px);height:72px;margin:0 auto;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;gap:14px;flex:0 0 auto}.brand-name{color:var(--red);font-size:28px;font-weight:800;line-height:1}.brand-subtitle{padding-left:14px;border-left:1px solid rgba(255,255,255,.25);color:#cbd4df;font-size:12px;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.main-nav a{position:relative;color:#d9e1ea;font-size:14px;white-space:nowrap}.main-nav a:after{position:absolute;right:0;bottom:-8px;left:0;height:2px;content:"";background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .16s ease}.main-nav a:hover,.main-nav a.router-link-active{color:#fff}.main-nav a:hover:after,.main-nav a.router-link-active:after{transform:scaleX(1)}.user-link{padding:8px 16px;border:1px solid rgba(255,255,255,.3);border-radius:4px}.user-link:after{display:none}.menu-toggle{display:none;width:40px;height:40px;margin-left:auto;padding:10px 8px;border:0;border-radius:4px;color:#fff;background:transparent;cursor:pointer}.menu-toggle span{display:block;height:2px;margin:5px 0;background:currentColor}.hero{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden;color:#fff;background-color:var(--navy);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px}.hero:before{position:absolute;top:-160px;right:-100px;width:520px;height:520px;border:1px solid rgba(215,38,61,.6);content:"";transform:rotate(18deg)}.hero:after{position:absolute;right:9%;bottom:12%;width:180px;height:180px;border-right:2px solid rgba(215,38,61,.8);border-bottom:2px solid rgba(215,38,61,.8);content:""}.hero-copy{position:relative;z-index:1;width:min(1280px,100% - 40px);margin:0 auto;padding:96px 0 120px}.eyebrow{margin:0 0 18px;color:var(--red);font-size:12px;font-weight:700;letter-spacing:0}.hero h1{max-width:760px;margin:0;font-size:clamp(38px,6vw,68px);font-weight:700;line-height:1.12}.hero-description{max-width:660px;margin:24px 0 0;color:#b9c6d4;font-size:17px;line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 22px;border:1px solid transparent;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer}.button-primary{color:#fff;background:var(--red)}.button-primary:hover{background:var(--red-dark)}.button-secondary{color:#fff;border-color:#ffffff73;background:#ffffff0a}.button-block{width:100%}.system-status{position:absolute;z-index:2;right:40px;bottom:24px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.18);border-radius:4px;color:#b9c6d4;background:#00000029;font-size:12px}.status-dot{width:8px;height:8px;border-radius:50%;background:#a0aaba}.system-status.online .status-dot{background:#47c38a;box-shadow:0 0 0 4px #47c38a26}.section{width:min(1280px,100% - 40px);margin:0 auto}.home-modules{padding:88px 0 104px}.section-heading{max-width:620px;margin-bottom:36px}.section-heading h2,.placeholder-page h1{margin:0;color:var(--navy);font-size:clamp(30px,4vw,44px);line-height:1.25}.section-heading>p:last-child{margin:14px 0 0;color:var(--muted);line-height:1.8}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.module-card{min-height:210px;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.module-card:hover{border-color:#0f234247;box-shadow:0 16px 36px #0f23421a;transform:translateY(-4px)}.module-index{display:block;color:var(--red);font-size:13px;font-weight:800}.module-card h3{margin:30px 0 10px;color:var(--navy);font-size:20px}.module-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.site-footer{color:#cbd4df;background:#0b1930}.footer-inner{width:min(1280px,100% - 40px);min-height:124px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner strong{color:var(--red);font-size:22px}.footer-inner p{margin:8px 0 0;font-size:12px}.copyright{color:#7f8da0}.placeholder-page{width:min(900px,100% - 40px);min-height:540px;margin:0 auto;padding:110px 0}.placeholder-page>p:not(.eyebrow){max-width:600px;margin:20px 0 32px;color:var(--muted);font-size:16px;line-height:1.8}.login-page{min-height:100vh;display:grid;place-items:center;padding:40px 20px;color:#fff;background-color:var(--navy);background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px}.login-panel{width:min(420px,100%);padding:42px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#09182feb;box-shadow:0 24px 60px #00000042}.login-panel h1{margin:36px 0 8px;font-size:30px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:32px}.auth-tabs button{height:38px;border:1px solid rgba(255,255,255,.18);border-radius:4px;color:#aeb9c8;background:transparent;cursor:pointer}.auth-tabs button.active{color:#fff;border-color:#d7263db3;background:#d7263d33}.login-note{margin:0 0 28px;color:#aeb9c8;font-size:14px}.login-form{display:grid;gap:18px}.login-form label{display:grid;gap:8px;color:#cbd4df;font-size:13px}.login-form input{width:100%;height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:4px;outline:none;color:#fff;background:#ffffff0f}.login-form input:focus{border-color:#d7263dbf}.auth-message{margin:0;color:#ff8f9d;font-size:13px}.back-link{display:block;margin-top:24px;color:#aeb9c8;font-size:13px;text-align:center}@media(max-width:960px){.module-grid{grid-template-columns:repeat(2,1fr)}.brand-subtitle{display:none}}@media(max-width:760px){.header-inner{width:min(100% - 28px,1280px)}.menu-toggle{display:block}.main-nav{position:absolute;top:72px;right:0;left:0;display:none;align-items:stretch;padding:14px 18px 22px;background:var(--navy);box-shadow:0 14px 30px #0000003d}.main-nav.is-open{display:grid}.main-nav a{padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.08)}.user-link{margin-top:10px;text-align:center}.hero{min-height:500px}.hero:after{display:none}.hero-copy{width:min(100% - 28px,1280px);padding:76px 0 112px}.system-status{right:14px}.section,.footer-inner{width:min(100% - 28px,1280px)}.home-modules{padding:68px 0}.module-grid{grid-template-columns:1fr}.module-card{min-height:180px}.footer-inner{align-items:flex-start;flex-direction:column;justify-content:center}.placeholder-page{min-height:440px;padding:78px 0}.login-panel{padding:32px 24px}}
