:root{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#18334e;background:#f2f6fb;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid #d8e3ef;background:white;color:#36536e;border-radius:7px;padding:9px 13px}button:hover{border-color:#1673d5;color:#065fc0}button:disabled{opacity:.5;cursor:wait}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #6aa9ef;outline-offset:3px}header{background:linear-gradient(110deg,#073568,#085eae 72%,#0b77c9);color:white;padding:25px 34px;display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:4px solid #8bcbff}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:700;color:#9bcaf5}h1{font-size:32px;margin:9px 0 8px;letter-spacing:-.8px}h1 small{font-size:23px;font-weight:500;padding-left:22px;letter-spacing:0}header p{margin:0;font-size:12px;color:#d1e7ff;letter-spacing:1px}.header-divider{margin:0 13px;opacity:.5}.header-right{display:flex;align-items:flex-end;flex-direction:column;gap:10px;font-size:12px;color:#dceeff}.badge{border:1px solid #ffffff42;border-radius:30px;background:#ffffff15;padding:5px 11px;font-size:11px}.ghost{background:transparent;border-color:#ffffff42;color:white;font-size:11px;padding:6px 11px}.ghost:hover{color:white;border-color:white}main{max-width:2200px;margin:auto;padding:0 26px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 0}.filters,.actions{display:flex;align-items:center;gap:12px}.filters label{font-size:11px;color:#73869c;display:flex;align-items:center;gap:8px}.filters select{max-width:230px;background:white;border:1px solid #d8e3ef;border-radius:7px;padding:9px 28px 9px 11px;color:#163b62}.actions{font-size:10px;color:#8191a3}.actions button{font-size:11px}#notice{display:none;background:#fff6df;border:1px solid #f4dfac;color:#88620c;border-radius:7px;padding:11px 15px;margin-bottom:16px;font-size:12px;line-height:1.7}#notice.visible{display:block}.panel{background:white;border:1px solid #dce7f2;border-radius:10px;overflow:hidden;box-shadow:0 3px 10px #123f6a03}.panel-head{background:linear-gradient(90deg,#e8f3ff,#f4f9ff);display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid #e2edf8;gap:10px}.panel-head h2{font-size:14px;margin:0;color:#075eaf;display:flex;align-items:center;gap:10px}.section-icon{font-size:20px;line-height:1;color:#0074e5}.panel-head>span{font-size:9px;letter-spacing:.9px;color:#8399b1}.panel-head i{font-style:normal;margin:0 7px}.panel-head small{font-weight:400;font-size:11px;color:#718da9;margin-left:1px}.table-scroll{overflow:auto;min-height:275px}table{border-collapse:separate;border-spacing:0;width:100%;white-space:nowrap;font-size:12px}th,td{text-align:center;border-right:1px solid #e1eaf3;border-bottom:1px solid #e1eaf3;padding:12px 15px;min-width:100px}thead th{background:#075ba8;color:#fff;font-weight:500;font-size:12px;padding:14px 15px}th:first-child{position:sticky;left:0;z-index:1;min-width:170px;text-align:left}thead th:first-child{z-index:2;background:#075ba8}tbody th{background:#f0f6fc;color:#23496e;font-weight:600}tbody tr:nth-child(even) td{background:#fbfdff}tbody td.phase{font-size:11px;color:#6c8298}td.total,thead th:last-child{background:#fff9e9!important;color:#23496e;font-weight:700}thead th:last-child{background:#0b64b5!important;color:white}td.positive{background:#e6f7ed!important;color:#0a9158;font-weight:650}td.negative{background:#ffeded!important;color:#cc4c51;font-weight:650}td.missing{color:#adb9c7}.table-foot{display:flex;justify-content:space-between;color:#8a9bae;font-size:10px;padding:10px 16px;background:#fcfdff}.charts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.chart{height:290px;padding:8px}.empty{min-height:275px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#8c9bb0;gap:12px}.empty strong{color:#58728e;font-size:15px}.empty p{margin:0;text-align:center;font-size:12px;line-height:1.8}footer{display:flex;justify-content:space-between;padding:20px 0;color:#8a9aab;font-size:9px;letter-spacing:.8px}footer b{color:#65a5dd;margin:0 10px;font-weight:400}dialog{border:1px solid #d9e6f4;border-radius:16px;padding:30px;width:min(440px,94vw);color:#193f66;box-shadow:0 30px 90px #08274d40}dialog::backdrop{background:#0d294780;backdrop-filter:blur(5px)}dialog form{display:flex;flex-direction:column;gap:14px}dialog h2{margin:0;font-size:23px}dialog p{font-size:12px;margin:0;color:#7b8da1}dialog label{font-size:12px;display:flex;flex-direction:column;gap:7px}input{width:100%;border:1px solid #d3e0ed;border-radius:6px;padding:11px;color:#1c4269}dialog .eyebrow{color:#408ac9;margin-top:6px}.close{position:absolute;right:12px;top:12px;padding:1px 8px;border:0;font-size:23px}.primary{background:#086ac6;color:white;border-color:#086ac6}#loginMessage{color:#ba4a3c;line-height:1.6}#logout{font-size:12px}body:fullscreen{overflow:auto}@media(min-width:1700px){header{padding:27px 38px}h1{font-size:38px}h1 small{font-size:28px}.chart{height:330px}th,td{padding:14px 16px}}@media(max-width:1000px){header{padding:22px}h1{font-size:27px}h1 small{display:block;padding:8px 0 0;font-size:19px}.toolbar{align-items:flex-start;flex-direction:column}.actions{width:100%;justify-content:flex-end}.panel-head>span{display:none}}@media(max-width:650px){main{padding:0 12px}header{padding:20px 16px}.header-right{max-width:130px;font-size:10px}header p{font-size:10px;line-height:1.8}.header-divider{margin:0 3px}.charts{grid-template-columns:1fr}.filters{flex-wrap:wrap;gap:9px}.filters select{max-width:200px}.actions{flex-wrap:wrap;justify-content:flex-start}.actions>span{width:100%}footer{flex-direction:column;gap:10px}.panel-head h2{font-size:13px}}
/* Compact presentation follows the supplied table + two-chart reference. */
[hidden]{display:none!important}
.stage-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:2px 0 18px}.stage-card{border:1px solid #dce7f2;border-top:3px solid var(--stage-color);padding:18px 20px;text-align:left;border-radius:9px;color:#1c3b5d;box-shadow:0 3px 12px #133d6704}.stage-card:hover,.stage-card.selected{border-color:var(--stage-color);box-shadow:0 4px 18px #163b6410}.stage-card-top,.stage-stats,.stage-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.stage-card-top>span{font-weight:650;font-size:14px}.stage-card-top small,.stage-owner{font-size:10px;color:#8091a5}.stage-value{margin:13px 0 12px}.stage-value strong{font-size:34px;letter-spacing:-1px;color:var(--stage-color);font-weight:650}.stage-value>span{font-size:12px;color:#8b9eb2;margin-left:8px}.stage-track{height:5px;background:#edf2f7;border-radius:20px;overflow:hidden}.stage-track span{display:block;height:100%;background:var(--stage-color);border-radius:20px}.stage-stats{font-size:11px;color:#6e849b;margin:10px 0 16px}.stage-card-bottom{font-size:10px;color:#8193a7;border-top:1px solid #edf2f7;padding:12px 0 8px}.stage-card-bottom b{color:var(--stage-color);font-weight:500}.stage-card-bottom b.behind{color:#c4544b}.stage-owner{display:block}.stage-tabs{display:flex;gap:5px;border-bottom:1px solid #d7e3ef;margin-bottom:9px}.stage-tabs button{background:transparent;border:0;border-radius:0;padding:12px 21px;color:#73899f;font-size:12px;border-bottom:3px solid transparent}.stage-tabs button.active{color:#096aca;border-bottom-color:#096aca;font-weight:650}.stage-note{font-size:11px;line-height:1.8;color:#70849a;padding:0 3px;margin:0 0 16px}.overview-chart{height:300px;padding:8px}.overview-table{margin-top:16px}.overview-table th:first-child{min-width:250px}.overview-table td{font-variant-numeric:tabular-nums;padding:14px 18px}#overview{margin-bottom:8px}@media(min-width:1700px){.overview-chart{height:350px}.stage-card{padding:20px 25px}.stage-value strong{font-size:38px}}@media(max-width:850px){.stage-cards{grid-template-columns:1fr}.stage-card{padding:16px}.stage-card-top small{font-size:11px}.stage-tabs{overflow:auto;white-space:nowrap}.stage-tabs button{flex-shrink:0;padding:11px 15px}.overview-chart{height:330px}.stage-value strong{font-size:32px}}
@media(min-width:1100px){header{padding:14px 26px}h1{font-size:28px;margin:5px 0}h1 small{font-size:22px}header p{font-size:10px}.eyebrow{font-size:8px}.header-right{flex-direction:row;align-items:center;font-size:10px}.toolbar{padding:12px 0}.filters select{padding:7px 24px 7px 10px}.actions button{padding:7px 10px}#notice{padding:5px 12px;margin-bottom:12px;font-size:11px}.panel-head{padding:10px 15px}.panel-head h2{font-size:13px}th,td{min-width:78px;padding:8px 10px;font-size:11px}thead th{font-size:11px;padding:10px}th:first-child{min-width:165px}.table-foot{padding:7px 14px}.charts{margin-top:14px;gap:14px}.chart{height:235px}.table-scroll{min-height:0}footer{padding:12px 0}.panel{border-radius:8px}}
