:root{color:#142a42;font-synthesis:none;background:#e9eff4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Yu Gothic,Meiryo,sans-serif;font-size:14px;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#173d60;border:1px solid #173d60;border-radius:9px;min-height:42px;padding:9px 15px;font-weight:600}button:hover{filter:brightness(1.12)}button:disabled{cursor:default;opacity:.45}.secondary{color:#173d60;background:#fff;border-color:#cad8e4}.text{color:#315979;background:0 0;border:0;min-height:34px;padding:5px 10px;font-weight:500}.danger{color:#8d3b31;background:#fff3ef;border-color:#dfbdb5}input,select,textarea{color:#142a42;background:#fff;border:1px solid #b9cada;border-radius:7px;width:100%;min-width:0;max-width:100%;min-height:42px;padding:9px 10px}input:focus,select:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:3px solid #82b9dd}input[type=checkbox]{accent-color:#173d60;flex:0 0 19px;width:19px;min-height:19px}textarea{resize:vertical;min-height:100px}h1{margin:4px 0 0;font-size:25px;font-weight:600}h2{margin:0 0 10px;font-size:16px;font-weight:600}h3{margin:5px 0 9px;font-size:14px}p{margin:6px 0}small,.muted{color:#597086;font-size:12px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.app{max-width:1120px;margin:0 auto;padding-bottom:100px}header{background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:22px 25px;display:flex}.eyebrow{letter-spacing:.1em;color:#45637a;font-size:10px}.eyebrow small{margin-left:8px}.mode-bar{color:#43617a;background:#e2ebf3;padding:8px 25px;font-size:11px}.mode-bar.demo{color:#79592d;background:#fff0d7}main{padding:22px 25px}.card{overflow-wrap:anywhere;background:#fff;border:1px solid #d5e1eb;border-radius:13px;min-width:0;margin:0 0 14px;padding:18px}.card.warn{background:#fff9ee;border-color:#e8c992}.card.good{background:#f5fbf8;border-color:#bad6ce}.card button{margin-top:8px}.dashboard{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:20px;display:grid}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:14px;display:grid}.grid>.card{margin:0 0 14px}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin:9px 0;display:flex}.badge{color:#486176;background:#ebeff3;border-radius:5px;padding:2px 8px;font-size:12px;display:inline-block}.badge.green{color:#246653;background:#dceee4}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:15px 0;display:grid}.stat{min-width:0}.stat span{color:#5a7187;font-size:12px;display:block}.stat strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:23px;font-weight:500;display:block}.grades>div,.rows>div{border-bottom:1px solid #e3eaf0;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.grades b{white-space:nowrap}.rows small{display:block}.record{border-bottom:1px solid #e0e8ef;padding:14px 0}.record:last-child{border:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}label{color:#46617a;flex-direction:column;gap:6px;font-size:12px;display:flex}label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:9px;padding-top:6px}.inline{flex-direction:row!important;align-items:center!important;display:flex!important}.wide{grid-column:1/-1}.grade-row{background:#f8fafc;border:1px solid #dce6ee;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;display:grid}.grade-row h3,.grade-row p{grid-column:1/-1}.form-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.back{margin-bottom:14px}.notice{color:#2a624b;overflow-wrap:anywhere;background:#e1efe8;border-radius:9px;margin:14px 25px 0;padding:12px 16px}.notice button{float:right}.notice.error{color:#8e4030;background:#fff0ec}nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;width:min(100%,1120px);padding:9px 20px;padding-bottom:max(9px,env(safe-area-inset-bottom));background:#ffffffed;border-top:1px solid #d8e3ed;gap:8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}nav button{color:#6a8297;background:0 0;border:0;flex:1;padding:6px 0;font-size:12px;font-weight:500}nav span{font-size:19px;display:block}nav button.active{color:#173d60;background:#e3edf6}details{margin:12px 0}summary{cursor:pointer;color:#315979}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#eef3f7;border-radius:6px;max-height:380px;padding:12px;font-size:11px;overflow:auto}.stat-box{background:#f3f7fa;border-radius:9px;padding:14px}.restore{border-top:1px solid #d5e1eb;margin-top:16px;padding-top:16px}.restore label{margin:14px 0}.modal{z-index:30;background:#142a4280;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal .card{width:100%;max-width:900px;max-height:90vh;overflow:auto}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:500px;font-size:12px}th,td{text-align:left;border-bottom:1px solid #dde6ed;padding:10px}@media (width<=650px){header{padding:18px 15px}h1{font-size:23px}.mode-bar{padding:8px 15px}main{padding:14px 12px}.dashboard{grid-template-columns:1fr;gap:0}.card{padding:14px}.notice{margin:12px 12px 0}.form-grid,.grade-row{grid-template-columns:1fr}.wide,.grade-row h3,.grade-row p{grid-column:auto}.stat strong{font-size:21px}nav{gap:4px;padding-left:10px;padding-right:10px}.actions button{flex-grow:1}.app{padding-bottom:100px}}.backup-json{min-height:220px;font-family:Consolas,monospace;font-size:11px;line-height:1.5}.entry-line{border-top:1px solid #dde6ed;margin-top:8px;padding:10px 0}.entry-line.status-WAIT_CONDITION{border-left:3px solid #cf9e50;padding-left:10px}.entry-line.status-INELIGIBLE,.entry-line.status-RISK_BLOCKED{border-left:3px solid #b75346;padding-left:10px}.entry-line.status-MISSING_DATA{border-left:3px solid #8c9dad;padding-left:10px}.reason-BLOCK,.reason-RISK{color:#88362c;background:#fbe3df}.reason-WAIT{color:#775519;background:#fff0d2}.reason-WARNING{color:#75582c;background:#fff3de}.portfolio-metrics strong small{font-size:14px;font-weight:400;display:block}.closed-history{background:#f3f7fa;border:1px solid #d5e1eb;border-radius:12px;padding:14px}.closed-history summary{align-items:center;min-height:44px;display:flex}button{min-height:44px}.entry-reasons+.entry-reasons{border-top:1px solid #e8d5b4;padding-top:12px}.section-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}:root{-webkit-text-size-adjust:100%;--edge:25px;--nav-space:100px;font-size:16px}.app{padding-bottom:calc(var(--nav-space) + env(safe-area-inset-bottom,0px));min-height:100dvh}header{padding-top:calc(22px + env(safe-area-inset-top,0px));padding-left:calc(var(--edge) + env(safe-area-inset-left,0px));padding-right:calc(var(--edge) + env(safe-area-inset-right,0px))}main,.mode-bar{padding-left:calc(var(--edge) + env(safe-area-inset-left,0px));padding-right:calc(var(--edge) + env(safe-area-inset-right,0px))}nav{padding-left:calc(10px + env(safe-area-inset-left,0px));padding-right:calc(10px + env(safe-area-inset-right,0px));padding-bottom:max(9px,env(safe-area-inset-bottom,0px))}button,input,select,textarea{touch-action:manipulation;min-height:44px}input,select,textarea{scroll-margin-block:80px;font-size:16px}input[type=checkbox]{min-height:19px}summary{min-height:44px;padding:10px 0}.form-actions{bottom:calc(var(--nav-space) + env(safe-area-inset-bottom,0px));z-index:2;background:#fff;border-top:1px solid #e1e8ee;margin-top:12px;padding:12px 0;position:sticky}.notice.pwa-update .actions button{float:none;margin:0}.pwa-update{color:#624b24;background:#fff4de}.offline-state{color:#43617a;background:#e2eaf0;font-size:12px}.pwa-environment ol{padding-left:22px}.modal{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overscroll-behavior:contain;overflow:auto}.modal .card{max-height:calc(100vh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:0}.modal-top{z-index:1;background:#fff;justify-content:flex-end;padding:8px 0;display:flex;position:sticky;top:-14px}body.modal-open{width:100%;position:fixed;overflow:hidden}@media (width<=650px){:root{--edge:12px}header{padding-top:calc(18px + env(safe-area-inset-top,0px))}.grades>div{flex-wrap:wrap}.grade-row{padding:12px}.stat strong{font-size:21px}}
