:root{--navy:#102a48;--blue:#1764b7;--orange:#df602e;--bg:#f3f5f8;--line:#e1e6ed;--muted:#6c7c8f;--text:#1d3048;--green:#17805e;--red:#be3f3f}*{box-sizing:border-box}body{margin:0;font:14px/1.55 "Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #78b6fb;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #ced7e2;border-radius:7px;background:white;padding:10px 12px;color:var(--text)}input:focus,textarea:focus,select:focus{outline:2px solid #c5ddf8;border-color:var(--blue)}input[type=checkbox]{width:17px;height:17px;accent-color:var(--blue)}textarea{resize:vertical;min-height:82px}label{font-weight:600;display:block;margin:0 0 6px}h1,h2,h3,p{margin:0}h1{font-size:27px;line-height:1.3;letter-spacing:-.5px}h2{font-size:18px}h3{font-size:15px}a{color:var(--blue);text-decoration:none}.muted,small{color:var(--muted)}small{font-size:12px}.eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;color:var(--blue);margin-bottom:10px}.brand{display:flex;align-items:center;gap:11px}.brand img{width:38px;height:38px}.brand b{font-size:23px;letter-spacing:1px}.brand span{display:block;font-size:10px;font-weight:600;letter-spacing:1.7px;color:#9dafc4}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border-radius:7px;background:white;border:1px solid #cdd7e4;color:var(--text);font-weight:600;white-space:nowrap}.btn:hover{background:#f0f5fa}.btn.primary{color:white;background:var(--blue);border-color:var(--blue)}.btn.primary:hover{background:#104f96}.btn.dark{background:var(--navy);color:white;border-color:var(--navy)}.btn.warn{color:var(--red);border-color:#eac8c8}.btn.small{padding:6px 10px;font-size:12px}.btn.ghost{background:transparent;border-color:transparent}.btn.full{width:100%}.icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.badge{display:inline-flex;align-items:center;border-radius:5px;font-size:11px;padding:4px 8px;background:#edf1f6;color:#52647a;font-weight:600;white-space:nowrap}.badge.green{background:#e6f4ed;color:#177353}.badge.blue{background:#e9f2fc;color:#175da8}.badge.amber{background:#fff2da;color:#93611a}.badge.red{background:#fbeaea;color:#b63c3c}.tag{font-size:10px;letter-spacing:1px;color:#f1bc9f;background:#3c3440;border:1px solid #75544b;padding:3px 6px;border-radius:4px}.gateway{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.gate-story{background:var(--navy);color:white;padding:46px max(35px,7vw);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.gate-story h1{font-size:42px;max-width:520px;line-height:1.23;margin:60px 0 22px}.gate-story .lead{max-width:450px;color:#b7c7da;font-size:16px}.story-process{display:flex;gap:0;margin:34px 0 28px}.story-process div{border-top:2px solid #3b5673;padding:14px 18px 0 0;flex:1}.story-process b{display:block;font-size:12px;color:#ed9c73;margin-bottom:5px}.story-process span{font-size:13px}.gate-foot{color:#9aadc4;font-size:12px;padding-top:30px}.gate-form{padding:42px 8vw;display:flex;flex-direction:column;justify-content:center}.gate-form h2{font-size:26px;margin:10px 0}.gate-form .intro{margin-bottom:23px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:24px;margin-bottom:22px;overflow:auto}.tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:12px 0;color:var(--muted);font-weight:600;white-space:nowrap}.tabs button.active{border-color:var(--blue);color:var(--blue)}.field{margin-bottom:16px}.field small{display:block;margin-top:6px}.notice{border-radius:7px;background:#edf4fc;padding:12px 15px;color:#345c86;margin:14px 0;line-height:1.6}.notice.amber{background:#fff5e6;color:#8e642c}.notice.green{background:#e8f5ed;color:#266b51}.notice.red{background:#fbeaea;color:#9c3737}.divider{display:flex;align-items:center;gap:14px;color:#8b99aa;font-size:11px;margin:19px 0}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}.checks{display:flex;align-items:center;gap:10px;font-weight:400}.app-layout{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:white;position:fixed;width:238px;height:100vh;padding:26px 18px;display:flex;flex-direction:column;z-index:30}.sidebar .brand{padding:0 8px}.sidebar .brand b{font-size:21px}.nav-label{color:#7f98b4;font-size:10px;letter-spacing:1.5px;margin:35px 12px 10px}.nav-item{display:flex;align-items:center;gap:12px;color:#bccbdb;background:none;border:0;width:100%;padding:12px 14px;text-align:left;border-radius:7px;font-weight:500;margin:3px 0}.nav-item.active{background:#254465;color:white}.nav-item.active .icon{color:#f18b5c}.nav-item:hover{background:#1d3a59}.sidebar-foot{margin-top:auto;border-top:1px solid #2e4660;padding:20px 10px 0;font-size:11px;color:#a3b6cb}.sidebar-foot strong{color:#dce7f2;display:block;margin-bottom:5px}.workspace{grid-column:2}.topbar{height:77px;background:white;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:18px}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb strong{color:var(--text);font-weight:500}.top-actions{display:flex;align-items:center;gap:14px}.top-actions select{padding:6px 10px;font-size:12px;max-width:230px}.avatar{width:32px;height:32px;background:#e8eff7;color:var(--navy);display:grid;place-items:center;border-radius:50%;font-weight:700;font-size:11px}.profile-text{font-size:12px;font-weight:600}.profile-text small{display:block;font-size:10px;font-weight:400}.net{white-space:nowrap;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--green)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}.mode-strip{padding:8px 34px;background:#fff7eb;color:#8a632d;border-bottom:1px solid #f0e4d0;font-size:11px;display:flex;justify-content:space-between;gap:12px}.mode-strip.live{background:#eaf4ed;color:#276949;border-color:#d7e7dc}#content{padding:30px 34px 45px;max-width:1580px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.page-head p{margin-top:8px;color:var(--muted);max-width:730px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.grid-equal{grid-template-columns:1fr 1fr}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}.stat{background:white;border:1px solid var(--line);border-radius:9px;padding:20px 22px}.stat .top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.stat .top .icon{color:#8597ad}.stat strong{font-size:30px;font-weight:650;display:block;margin:10px 0 3px;line-height:1.2}.stat small{font-size:11px}.panel{background:white;border:1px solid var(--line);border-radius:9px;margin-bottom:22px;overflow:hidden}.panel-head{padding:19px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2{font-size:15px}.panel-body{padding:22px}.panel-body p+p{margin-top:12px}.welcome{display:grid;grid-template-columns:1fr auto;gap:25px;background:#e8eff8;padding:25px 28px;border:1px solid #dce5f1;border-radius:9px}.welcome h2{font-size:21px;color:var(--navy);margin:4px 0 8px}.welcome p{font-size:13px;color:#5e7390}.welcome .number{font-size:46px;line-height:1;color:#b3c7de;font-weight:700;letter-spacing:-2px;align-self:center}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:#7c8ca0;font-weight:600;background:#fafbfd;padding:12px 20px;white-space:nowrap}td{padding:15px 20px;border-bottom:1px solid #edf0f4;font-size:12px;vertical-align:middle}tr:last-child td{border-bottom:0}td .sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}.link-btn{border:0;background:none;padding:0;color:var(--blue);font-weight:600;text-align:left;cursor:pointer}.score-num{font-size:17px;font-weight:650;color:var(--navy)}.filterbar{display:flex;gap:12px;margin:0 0 20px;align-items:center}.filterbar input{max-width:340px}.empty{padding:35px 25px;color:var(--muted);text-align:center}.empty strong{display:block;color:var(--text);margin-bottom:8px}.bar-row{margin:17px 0}.bar-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:7px}.bar{height:7px;background:#eef2f6;border-radius:4px;overflow:hidden}.bar span{display:block;height:100%;background:#3b76b8;border-radius:4px}.task-item{padding:13px 0;border-bottom:1px solid #edf0f4;display:flex;justify-content:space-between;gap:12px;align-items:center}.task-item:last-child{border:0}.task-item b{font-size:12px;display:block}.task-item small{font-size:11px}.stepper{display:flex;gap:6px;margin:0 0 24px;overflow:auto}.step{flex:1;min-width:118px;border-top:3px solid #d7dfe8;padding:10px 6px;color:#8b99ab;font-size:11px}.step span{display:block;font-size:10px;color:#9ca9b9;margin-bottom:4px}.step.done{border-color:#4c9b7b;color:#327b5d}.step.current{border-color:var(--blue);color:var(--blue);font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-grid small{display:block;margin-bottom:3px}.scoring-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:22px}.score-side{align-self:start;position:sticky;top:20px}.score-total{padding:24px;text-align:center;background:var(--navy);color:white;border-radius:8px}.score-total strong{font-size:47px;display:block;line-height:1.2}.score-total span{color:#bacbe0;font-size:12px}.score-total .badge{margin-top:13px}.rule{display:grid;grid-template-columns:minmax(0,1fr) 95px;gap:15px;padding:17px 22px;border-bottom:1px solid #edf0f4}.rule:last-child{border:0}.rule h3{font-size:12px;font-weight:600;margin-bottom:5px}.rule small{font-size:10px}.rule input[type=number]{text-align:center;padding:8px}.rule .note-input{margin-top:10px;font-size:11px;padding:7px 9px;background:#fafbfd}.rule .rule-code{font-size:10px;color:#8797aa;margin-right:5px}.rule .critical{color:var(--red)}.pool-head{background:#f8fafc;padding:13px 22px;display:flex;justify-content:space-between;font-size:12px;font-weight:600}.score-break{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.score-break:last-child{border:0}.check-row{display:grid;grid-template-columns:minmax(0,1fr) 125px 1fr auto;gap:12px;align-items:center;padding:15px 22px;border-bottom:1px solid var(--line)}.check-row b{font-size:12px}.check-row input,.check-row select{font-size:12px;padding:8px}.timeline{position:relative;padding-left:24px}.timeline-item{border-left:1px solid #dce3ec;padding:0 0 23px 20px;position:relative;font-size:12px}.timeline-item:before{content:"";width:7px;height:7px;border-radius:50%;background:#8aa3bf;position:absolute;left:-4px;top:6px}.timeline-item strong{display:block}.timeline-item small{display:block;font-size:10px}.comment{padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.comment p{margin:7px 0;white-space:pre-wrap}.file-item{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.file-item b{font-size:12px}.file-item small{display:block}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.policy-step{display:flex;gap:13px;margin-bottom:21px}.policy-step .num{width:27px;height:27px;display:grid;place-items:center;background:#edf2f8;border-radius:6px;flex-shrink:0;font-size:11px;color:var(--blue)}.policy-step p{font-size:12px;color:var(--muted);margin-top:4px}.guide-step{display:grid;grid-template-columns:30px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.guide-step .num{color:var(--blue);font-weight:700;font-size:19px}.guide-step p{font-size:12px;margin:6px 0;color:var(--muted)}.mono{font-family:Consolas,monospace;font-size:12px}.modal-overlay{position:fixed;inset:0;background:#102a4873;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(2px)}.dialog{background:white;border-radius:11px;width:min(600px,100%);max-height:90vh;overflow:auto}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-bottom:1px solid var(--line)}.dialog-body{padding:24px}.dialog-foot{padding:17px 25px;background:#f8fafc;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}.store-check{display:flex;align-items:center;gap:10px;padding:8px 0;font-weight:400;font-size:12px}.store-check small{margin-left:auto}.row-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}#toast{position:fixed;right:25px;bottom:25px;z-index:200;max-width:430px;background:#18344f;color:white;border-radius:8px;padding:14px 19px;box-shadow:0 5px 24px #0c23442b;display:none;font-size:13px}#toast.error{background:#a93939}#toast.show{display:block}.initial{padding:80px;text-align:center;color:var(--muted)}.report{max-width:900px;margin:auto;background:white;padding:44px;border:1px solid var(--line)}.report-header{text-align:center;border-bottom:2px solid var(--navy);padding-bottom:20px;margin-bottom:25px}.report-header h1{font-size:22px;margin:15px 0 8px}.report .info-grid{font-size:12px;margin-bottom:25px}.report th,.report td{padding:10px;font-size:12px}.signatures{display:grid;grid-template-columns:1fr 1fr;text-align:center;margin:40px 0 70px}.signatures small{display:block}.mobile-menu{display:none}.pending-sync{padding:13px 18px;background:#fff3dc;border:1px solid #eddbb5;border-radius:7px;font-size:12px;margin-bottom:18px}.pending-sync p{margin:6px 0}.switchline{display:flex;align-items:center;gap:12px;margin:12px 0}.caption{font-size:11px;color:var(--muted);margin-top:14px}.right{text-align:right}
@media(min-width:1600px){.gate-form{padding:60px 10vw}}@media(max-width:1150px){.topbar,#content{padding-left:22px;padding-right:22px}.stats{gap:12px}.stat{padding:15px}.stat strong{font-size:26px}.profile-text{display:none}.scoring-layout{grid-template-columns:minmax(0,1fr) 220px}.check-row{grid-template-columns:1fr 115px}.check-row input{grid-column:1}.gate-form{padding:35px 5vw}.gate-story{padding:35px 5vw}.gate-story h1{font-size:35px}}@media(max-width:850px){.app-layout{grid-template-columns:74px minmax(0,1fr)}.sidebar{width:74px;padding:22px 10px}.sidebar .brand{padding:0 8px}.sidebar .brand b,.sidebar .brand span,.nav-item span,.nav-label,.sidebar-foot{display:none}.nav-item{justify-content:center;padding:13px;margin:6px 0}.sidebar nav{margin-top:35px}.nav-item .icon{width:21px;height:21px}.workspace{grid-column:2}.topbar{padding:0 18px}.top-actions{gap:8px}.top-actions select{max-width:175px}.mode-strip{padding:8px 18px}.grid-2{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.scoring-layout{grid-template-columns:1fr}.score-side{position:static;grid-row:1;display:grid;grid-template-columns:200px 1fr;gap:18px}.score-side .panel{margin:0}.score-total{display:flex;flex-direction:column;justify-content:center}.score-total strong{font-size:35px}.policy-grid{grid-template-columns:1fr}.gateway{grid-template-columns:1fr}.gate-story{padding:28px 35px}.gate-story h1{font-size:32px;margin:27px 0 15px}.gate-story .lead{font-size:14px}.story-process,.gate-foot{display:none}.gate-form{padding:30px 35px;max-width:650px;width:100%;margin:auto}.info-grid{gap:12px}.welcome .number{display:none}.welcome{grid-template-columns:1fr}.page-head h1{font-size:24px}.page-head{flex-wrap:wrap}}@media(max-width:520px){.app-layout{grid-template-columns:1fr}.sidebar{width:100%;height:56px;bottom:0;padding:0 5px;flex-direction:row}.sidebar .brand{display:none}.sidebar nav{display:flex;justify-content:space-around;width:100%;margin:0;overflow:auto}.nav-item{margin:0;width:auto;min-width:45px;padding:9px}.sidebar-foot{display:none}.workspace{grid-column:1;padding-bottom:56px}.topbar{height:65px;padding:0 14px}.breadcrumb{display:none}.top-actions{width:100%;justify-content:space-between}.mode-strip{padding:8px 14px;font-size:10px}.mode-strip .optional{display:none}#content{padding:22px 14px 30px}.stats{gap:10px}.stat{padding:13px}.stat .top{font-size:11px}.stat strong{font-size:26px}.stat small{font-size:10px}.panel-head,.panel-body{padding:16px}.page-head{margin-bottom:18px}.page-head p{font-size:12px}.page-head .actions{width:100%}.welcome{padding:20px}.welcome h2{font-size:18px}.info-grid{grid-template-columns:1fr 1fr}.score-side{grid-template-columns:1fr}.score-total{padding:16px}.score-total strong{font-size:37px}.score-side .panel-body{padding:12px 20px}.score-break{padding:9px 0}.rule{padding:15px;grid-template-columns:1fr 70px;gap:10px}.rule h3{font-size:12px}.pool-head{padding:12px 15px}.check-row{padding:15px}.row-fields{grid-template-columns:1fr}.report{padding:20px}.dialog-body{padding:18px}.gate-form{padding:25px 22px}.gate-story{padding:23px 22px}.gate-story h1{font-size:28px}.story-process{display:none}.tabs{gap:18px}.net{font-size:10px}.top-actions select{max-width:190px}.panel{margin-bottom:16px}td,th{padding:11px 14px}.signatures{font-size:10px}.modal-overlay{padding:10px}.badge{font-size:10px}.step{min-width:100px}.filterbar{flex-wrap:wrap}}@media print{body{background:white;font-size:11px}.sidebar,.topbar,.mode-strip,.page-head,.no-print,#toast,#modal{display:none!important}.app-layout,.workspace{display:block;padding:0}#content{padding:0;max-width:none}.report{border:0;padding:10px;max-width:none}.report-header h1{font-size:19px}table{break-inside:auto}tr{break-inside:avoid}.signatures{break-inside:avoid}.report .notice{display:none}.report .print-note{display:block}}
