*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}body{margin:0;color:#142e49;background:#f5f8fc}a{text-decoration:none;color:inherit}.layout{min-height:100vh;display:grid;grid-template-columns:254px minmax(0,1fr)}.sidebar{background:#082844;color:#eaf3fc;padding:26px 17px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;align-items:center;gap:12px;font-weight:850;letter-spacing:1.2px;font-size:19px;padding:2px 10px 24px}.brand-mark{display:grid;place-items:center;background:#1b7cc4;width:36px;height:36px;border-radius:9px;color:white}.brand small{display:block;font-size:9px;letter-spacing:1.8px;font-weight:650;color:#9dbbd1;margin-top:4px}.environment{display:flex;align-items:center;gap:9px;border:1px solid #29536e;background:#123c5a;border-radius:8px;font-size:10px;letter-spacing:.8px;padding:12px;margin-bottom:27px}.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#48c1ed;box-shadow:0 0 0 4px #48c1ed24;flex-shrink:0}.nav-label{color:#87abc4;font-size:10px;letter-spacing:1.3px;font-weight:800;padding:0 13px;margin:12px 0}.sidebar nav>a,.sidebar nav>.disabled{display:flex;align-items:center;gap:11px;padding:13px 12px;border-radius:9px;font-size:13px;margin:4px 0}.sidebar nav>a:hover,.sidebar nav>a:focus-visible{background:#184d70}.sidebar nav>a.active{background:#1c6596;color:white}.sidebar nav>.disabled{color:#809db2;cursor:not-allowed}.nav-tag{margin-left:auto;font-size:9px;color:#a8cde6;white-space:nowrap}.side-foot{margin-top:auto;padding:24px 12px 0;color:#87abc4;font-size:11px;line-height:1.8}main{padding:42px clamp(20px,4.2vw,70px) 24px;max-width:1700px;width:100%;margin:auto}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:start}.breadcrumb,.kicker{font-size:10px;letter-spacing:1.8px;color:#1470af;font-weight:850}h1{font-size:clamp(27px,3vw,38px);letter-spacing:-1.2px;margin:11px 0}h2{font-size:23px;letter-spacing:-.6px;margin:8px 0}h3{font-size:19px;margin:16px 0 10px}p{color:#63798d;line-height:1.6}.topbar p{margin-top:0}.top-status{white-space:nowrap;background:white;border:1px solid #d8e5ef;border-radius:50px;padding:11px 15px;font-size:12px;color:#426680;display:flex;align-items:center;gap:10px}.notice{margin:27px 0 24px;border:1px solid #b8d8ef;background:#eaf5fc;border-radius:10px;display:flex;align-items:center;gap:20px;padding:17px 19px;font-size:13px;color:#3e627e}.notice strong{font-size:10px;letter-spacing:1px;color:#0a679f;white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.stat,.module,.roadmap{background:white;border:1px solid #dce6ee;border-radius:13px;box-shadow:0 4px 15px #163c5908}.stat{padding:22px}.stat>span{color:#668197;font-size:12px}.stat strong{display:block;font-size:34px;margin:10px 0 0}.stat strong small{font-size:17px;color:#a0afba}.stat p{font-size:12px;margin:6px 0 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:43px 0 16px}.hint{font-size:12px;color:#879bad}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.module{padding:23px;display:flex;flex-direction:column;min-height:305px;position:relative;overflow:hidden}.module.ready:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#086cae,#46b6ed)}.module-icon{display:grid;place-items:center;background:#eaf5fc;color:#0d74b4;width:43px;height:43px;border-radius:10px;font-size:23px}.state{position:absolute;right:18px;top:27px;font-size:10px;font-weight:750;color:#16856b;display:flex;gap:7px;align-items:center}.dot{width:6px;height:6px;background:#1cba90;border-radius:50%}.state.pending{color:#8c99a6}.module p{font-size:13px;flex:1}.module-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;border-top:1px solid #e6edf3;padding:15px 0;color:#7b90a2}.module-meta strong{color:#35566f;text-align:right}.action{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;background:#0b669e;color:white;border-radius:8px;font-size:12px;font-weight:750}.action:hover,.action:focus-visible{background:#084c7a}.action.unavailable{background:#f0f3f6;color:#98a7b3;cursor:not-allowed}.roadmap{margin-top:27px;padding:24px;display:flex;justify-content:space-between;align-items:center;gap:25px}.roadmap p{font-size:13px;margin:5px 0}.steps{display:flex;gap:8px;align-items:center;white-space:nowrap}.step{border:1px solid #dce6ee;background:#f5f8fb;color:#7d92a2;padding:10px 12px;border-radius:8px;font-size:11px}.step.current{color:#0d70a8;background:#eaf5fc;border-color:#b8d8ef}.arrow{color:#a9b7c1}footer{font-size:11px;color:#96a8b7;margin:32px 0 0}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap{display:block}.steps{margin-top:20px}}@media(max-width:740px){.layout{display:block}.sidebar{min-height:auto;padding:13px}.brand{padding-bottom:8px}.environment,.side-foot,.sidebar .nav-label,.sidebar nav>.disabled{display:none}.sidebar nav{display:flex;gap:7px;overflow:auto}.sidebar nav>a{white-space:nowrap;padding:10px}.topbar{display:block}.top-status{display:inline-flex;margin-top:10px}.stats,.cards{grid-template-columns:1fr}.notice{display:block}.notice strong{display:block;margin-bottom:6px}.section-head{display:block}.steps{flex-wrap:wrap}.arrow{display:none}main{padding-top:25px}}
/* V1.0.2 — QA workspace */
.qa-cta{margin-top:26px;padding:24px;background:linear-gradient(110deg,#eaf5fc,#fff);border:1px solid #bdd9ea;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:24px}.qa-cta p{font-size:13px;margin:5px 0}.qa-cta .action{white-space:nowrap}.qa-panel{background:#fff;border:1px solid #dce6ee;border-radius:14px;padding:24px;margin:24px 0}.qa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.qa-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #e9eff4}.qa-item input{accent-color:#0876b6;width:18px;height:18px;flex-shrink:0}.qa-item strong{display:block;font-size:13px}.qa-item small{display:block;color:#6e879a;margin-top:5px;line-height:1.5}.qa-actions{display:flex;gap:10px;flex-wrap:wrap}.qa-actions button,.qa-actions a{border:1px solid #b6d1e4;border-radius:9px;padding:11px 15px;background:#fff;color:#095d92;cursor:pointer;font:700 12px inherit;font-weight:700}.qa-actions button.primary{background:#0b669e;color:white;border-color:#0b669e}.qa-warning{padding:13px 16px;border-radius:9px;background:#fff6e7;border:1px solid #efdbb6;font-size:12px;color:#745526}.qa-progress{height:8px;background:#e7eef4;border-radius:20px;overflow:hidden}.qa-progress>div{height:100%;background:#1679b9;width:0;transition:width .2s}.qa-note{width:100%;min-height:80px;padding:12px;border:1px solid #cddde8;border-radius:9px;font:inherit;font-size:13px;resize:vertical}@media(max-width:900px){.qa-grid{grid-template-columns:1fr}.qa-cta{display:block}.qa-cta .action{display:inline-flex;margin-top:14px}}
