:root{--navy:#092348;--navy2:#0e356b;--blue:#008fd5;--cyan:#17b8ed;--green:#129d72;--red:#ed5066;--gold:#e69b39;--ink:#182d49;--muted:#71829b;--line:#e5ebf3;--wash:#f5f8fc;--white:#fff;--shadow:0 16px 44px rgba(18,47,89,.08);--rad:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f7f9fc;font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',system-ui,sans-serif;font-size:14px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #55c9fd;outline-offset:2px}img{max-width:100%}.container{max-width:1240px;margin:auto;padding-left:30px;padding-right:30px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid #eaf0f6}.header-inside{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{width:48px;height:48px;overflow:hidden;border-radius:15px;background:#fff;box-shadow:0 0 0 1px #e4eef6;flex:none}.brand-mark img{height:100%;width:100%;object-fit:contain}.brand-name{font-size:19px;line-height:1.2;letter-spacing:.02em;color:#082b56;font-weight:900}.brand-sub{font-size:10px;color:#7e91a7;font-weight:800;letter-spacing:.2em;margin-top:5px}.navigation{display:flex;align-items:center;gap:8px}.nav-link{white-space:nowrap;font-weight:700;color:#536881;padding:12px 16px;border-radius:12px;transition:.18s}.nav-link:hover,.nav-link.active{background:#eaf6fe;color:#006eb5}.menu-button{display:none;align-items:center;gap:8px;background:#edf7ff;border:0;border-radius:11px;padding:9px 12px;color:var(--navy);font-weight:800}.page{padding-top:38px;padding-bottom:76px;min-height:calc(100vh - 84px)}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.22em;color:#148fca;text-transform:uppercase}.hero{background:radial-gradient(circle at 86% 18%,rgba(15,186,221,.24),transparent 39%),linear-gradient(125deg,#082047,#104783 74%,#095b87);border-radius:30px;color:#fff;box-shadow:0 18px 48px rgba(10,48,97,.16);padding:48px 50px 44px;position:relative;overflow:hidden;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.hero:after{content:'';position:absolute;width:400px;height:400px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-100px;top:-155px;pointer-events:none}.hero .eyebrow{color:#85dfff}.hero h1{font-size:clamp(29px,3.6vw,50px);letter-spacing:-.04em;line-height:1.32;font-weight:900;margin:14px 0 18px}.hero h1 em{font-style:normal;color:#7adefa}.hero p{color:#c7e1f6;font-size:15px;max-width:610px;line-height:1.95}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 20px;font-weight:800;transition:.18s;white-space:nowrap}.btn-primary{background:#21bbed;color:#062c52}.btn-primary:hover{background:#5cd9fc;transform:translateY(-1px)}.btn-outline{color:#fff;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08)}.btn-outline:hover{background:rgba(255,255,255,.17)}.btn-light{background:#e9f5fd;color:#096da9}.btn-secondary{background:white;border:1px solid #d8e5f0;color:#284d73}.hero-visual{display:flex;flex-direction:column;align-items:center;position:relative}.hero-logo-wrap{width:min(100%,340px);border-radius:31px;box-shadow:0 14px 48px rgba(0,0,0,.14);background:#fff;overflow:hidden;aspect-ratio:1}.hero-logo-wrap img{width:100%;height:100%;object-fit:contain;display:block}.hero-caption{margin-top:12px;color:#bde8f5;letter-spacing:.1em;font-size:11px;font-weight:800}.kicker-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero-pill,.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:100px;font-size:11px;font-weight:800}.hero-pill{background:rgba(255,255,255,.12);color:#d8f7ff;border:1px solid rgba(255,255,255,.2)}.dot{width:7px;height:7px;background:#56e2a4;border-radius:50%;display:inline-block}.notice{margin-top:24px;padding:22px 26px;background:#fff7ed;border:1px solid #f5dcb7;border-left:5px solid #ec9b35;border-radius:18px;display:grid;grid-template-columns:30px 1fr;gap:13px}.notice-icon{width:29px;height:29px;border-radius:9px;background:#ffe3b9;color:#9e5a08;font-weight:900;display:grid;place-items:center}.notice strong{font-size:15px;color:#6d4618}.notice p{margin:5px 0 8px;color:#79684f;font-size:13px}.notice a{color:#95550a;text-decoration:underline;text-underline-offset:3px;font-weight:800}.notice-links{display:flex;gap:18px;flex-wrap:wrap}.section{margin-top:52px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}.section-title{font-size:26px;letter-spacing:-.035em;margin:5px 0 0;font-weight:900;color:#12365b}.section-sub{font-size:13px;color:var(--muted);margin:7px 0 0}.inline-link{font-size:13px;font-weight:800;color:#087cb6;white-space:nowrap}.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.cards-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid #e6edf5;border-radius:var(--rad);padding:23px 25px;box-shadow:var(--shadow)}.stage{position:relative;overflow:hidden;min-height:228px}.stage-num{font-size:12px;font-weight:900;letter-spacing:.14em;color:#148ac6}.stage h3{font-size:21px;letter-spacing:-.035em;margin:11px 0 6px}.stage p{font-size:13px;color:#6f8197;margin:0;max-width:275px}.stage-icon{font-size:26px;line-height:1;width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:#eaf8fe;color:#008bd0;margin-bottom:18px}.stage .inline-link{display:inline-block;margin-top:17px}.stage:before{content:'';height:4px;width:70px;background:#1ba9e7;position:absolute;top:0;left:24px;border-radius:4px}.stage:nth-child(2):before{background:#44bd9e}.stage:nth-child(3):before{background:#faad57}.metric-card{min-height:158px}.metric-label{color:#687d93;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:6px}.metric-value{font-size:37px;font-weight:900;line-height:1.3;letter-spacing:-.05em;color:#0f365f;margin:12px 0 5px}.metric-foot{font-size:11px;color:#8291a3}.metric-card .tiny-tag{font-size:10px}.tiny-tag{background:#eff6fd;color:#3582b8;padding:3px 8px;border-radius:7px;font-weight:900;white-space:nowrap}.status-badge{font-size:11px;padding:5px 11px;border-radius:999px;background:#edf3f9;color:#567087;font-weight:800}.status-badge.green{background:#e7f7ee;color:#0a9161}.status-badge.amber{background:#fff3e2;color:#a7660d}.stat-strip{background:#eaf4fb;border:1px solid #d9e9f6;border-radius:17px;padding:15px 21px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;color:#476680}.stat-strip strong{color:#143b5e}.method-box{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}.method-dark{background:#09284f;color:#fff;border-radius:22px;padding:29px 32px}.method-dark h3{font-size:21px;margin:0 0 13px}.method-dark p,.method-dark li{color:#c4d7e9;font-size:13px}.method-dark ul{padding-left:22px;margin:15px 0 0}.method-light{background:#fff;border:1px solid #e5ecf3;border-radius:22px;padding:29px 31px}.method-light h3{font-size:20px;margin:0 0 12px}.method-light p{font-size:13px;color:#687d94}.thresholds{display:flex;gap:7px;flex-wrap:wrap}.threshold{background:#f2f6fa;color:#60778b;border:1px solid #e5edf4;padding:6px 15px;border-radius:9px;font-weight:900}.threshold.selected{color:#fff;background:#0b78b8;border-color:#0b78b8}.page-banner{background:radial-gradient(circle at 100% 0%,rgba(20,188,221,.16),transparent 36%),linear-gradient(115deg,#0a2953,#104479);color:#fff;border-radius:25px;padding:36px 39px;margin-bottom:23px;display:flex;align-items:center;justify-content:space-between;gap:30px}.page-banner h1{font-size:35px;margin:7px 0 9px;line-height:1.35}.page-banner p{color:#c2d9ec;margin:0;font-size:14px}.page-banner .eyebrow{color:#8bdff9}.banner-symbol{font-size:72px;line-height:1;color:rgba(142,219,244,.7);font-weight:300}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin:24px 0 16px}.toolbar-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.field{background:#fff;border:1px solid #dce7f0;border-radius:11px;padding:10px 13px;color:#3e5a76;min-height:42px;max-width:100%;font-weight:700}.label{font-size:12px;color:#697f94;font-weight:800}.segmented{background:#edf3f8;border-radius:11px;padding:4px;display:flex;gap:3px}.segmented button{background:transparent;border:0;color:#6f849a;border-radius:8px;font-size:12px;font-weight:900;padding:7px 14px}.segmented button.active{background:white;color:#0875b0;box-shadow:0 2px 7px #0e345418}.table-card{background:#fff;border:1px solid #e5edf5;border-radius:21px;overflow:hidden;box-shadow:var(--shadow)}.table-top{padding:18px 24px;border-bottom:1px solid #edf1f6;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.table-top h2{font-size:17px;margin:0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:850px}th{text-align:left;padding:14px 18px;background:#f8fafd;color:#6f8195;font-size:12px;font-weight:800;white-space:nowrap}td{border-top:1px solid #edf1f6;padding:16px 18px;font-size:13px;color:#38516b;white-space:nowrap}td strong{color:#143c63}tr:hover td{background:#fbfdff}.side-long{background:#e8f7ef;color:#139065;padding:5px 10px;border-radius:8px;font-size:11px;font-weight:900}.side-short{background:#fff0f1;color:#d14b5e;padding:5px 10px;border-radius:8px;font-size:11px;font-weight:900}.positive{color:#de4264!important;font-weight:900}.negative{color:#10926b!important;font-weight:900}.quiet{color:#8d9aac}.empty-state{padding:60px 25px;text-align:center}.empty-art{width:78px;height:78px;border-radius:22px;background:#eef7fc;color:#1d95c9;margin:auto auto 17px;display:grid;place-items:center;font-size:34px}.empty-state h3{font-size:18px;margin:0 0 6px;color:#1c4268}.empty-state p{max-width:490px;margin:0 auto 14px;color:#7e8fa3;font-size:13px}.notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:23px}.note{background:white;border:1px solid #e8edf4;border-radius:17px;padding:19px 22px}.note b{font-size:14px;color:#1c4268}.note p{font-size:12px;color:#718499;margin:6px 0 0}.interpretation{padding:19px 24px;background:#edf8fe;border:1px solid #d6eaf5;border-radius:15px;color:#496a83;font-size:12px;margin-top:18px}.interpretation b{color:#1c6593}.upload-card{background:#fff;border:1px dashed #b9d2e5;border-radius:20px;padding:24px 27px;margin-top:22px;display:flex;gap:24px;justify-content:space-between;align-items:center}.upload-card h3{margin:0 0 4px;font-size:17px}.upload-card p{font-size:12px;color:#7488a0;margin:0}.upload-actions{display:flex;gap:9px;flex-wrap:wrap}.hidden{display:none!important}.success{color:#138357;font-weight:800}.error{color:#c13a54;font-weight:800}.upload-message{font-size:12px;margin-top:8px}.about-hero{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:26px;background:#fff;border:1px solid #e4edf5;border-radius:26px;padding:39px 43px}.about-hero h2{font-size:33px;letter-spacing:-.04em;line-height:1.5;margin:5px 0 14px}.about-hero p{font-size:15px;color:#6b7e93;line-height:2.1}.about-art{justify-self:center;width:250px;border-radius:25px;background:#fff;box-shadow:0 14px 40px #12345b13}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.value-card{padding:26px 25px;background:#fff;border:1px solid #e7edf4;border-radius:18px}.value-card h3{margin:9px 0;font-size:19px}.value-card p{color:#75869a;font-size:13px}.big-quote{padding:36px 45px;border-radius:24px;background:linear-gradient(110deg,#e8f8ff,#f3fff8);border:1px solid #dceef4;text-align:center}.big-quote h2{font-size:26px;color:#0c4f7e;line-height:1.6;margin:0 0 9px}.big-quote p{color:#5b8295;font-size:14px;margin:0}.source-links{display:flex;gap:14px;flex-wrap:wrap}.source-links a{background:#fff;border:1px solid #dae8f2;border-radius:11px;padding:11px 16px;color:#177cad;font-size:12px;font-weight:800}.site-footer{background:#0b2345;color:#c7d6e5;padding:38px 0 22px}.footer-inside{display:flex;justify-content:space-between;gap:28px;align-items:start}.footer-brand{font-size:19px;color:#fff;font-weight:900;letter-spacing:.03em}.footer-left p{font-size:12px;color:#93acc7;max-width:525px;margin:9px 0}.footer-nav{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;font-weight:800}.footer-bottom{margin-top:25px;padding-top:16px;border-top:1px solid #ffffff20;font-size:11px;color:#93a9c1;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.data-disclaimer{margin-top:18px;font-size:11px;color:#8191a5}.date-note{font-size:11px;color:#91a4b8}.key{display:inline-block;font-size:11px;border-radius:8px;color:#0b749a;background:#e7f5fb;padding:5px 9px;font-weight:800}.alert-inline{display:flex;align-items:center;gap:7px;color:#996826;font-size:12px;font-weight:700}.small{font-size:12px}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.mini-tile{background:#f7fafc;border:1px solid #edf1f5;border-radius:13px;padding:14px}.mini-tile b{display:block;color:#1e4167;font-size:14px}.mini-tile span{font-size:11px;color:#7d8da2}.blank-dash{color:#93a6bb}.footer-cite{color:#9bdcf7;text-decoration:underline}
@media(max-width:1050px){.header-inside{min-height:75px}.navigation{gap:2px}.nav-link{padding:10px 9px;font-size:12px}.hero{grid-template-columns:1.2fr .8fr;padding:38px}.hero-logo-wrap{max-width:280px}.container{padding-left:23px;padding-right:23px}.cards-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.header-inside{min-height:70px}.brand-mark{width:40px;height:40px}.brand-name{font-size:16px}.brand-sub{font-size:9px}.menu-button{display:flex}.navigation{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid #ddeaf5;box-shadow:0 10px 20px #142c4417;padding:12px 22px;flex-direction:column;align-items:stretch}.navigation.open{display:flex}.nav-link{font-size:14px;padding:12px 16px}.container{padding-left:16px;padding-right:16px}.page{padding-top:18px;padding-bottom:42px}.hero{grid-template-columns:1fr;padding:30px 24px;gap:24px;border-radius:22px}.hero h1{font-size:30px}.hero p{font-size:13px}.hero-visual{align-items:start}.hero-logo-wrap{width:190px;border-radius:19px}.hero-caption{font-size:9px}.notice{padding:17px;grid-template-columns:22px 1fr}.notice-links{gap:10px}.section{margin-top:37px}.section-title{font-size:22px}.section-head{align-items:start}.cards-3,.notes,.about-values,.method-box{grid-template-columns:1fr}.cards-4{grid-template-columns:repeat(2,1fr);gap:11px}.card{padding:20px}.metric-card{min-height:145px}.metric-value{font-size:29px}.page-banner{padding:27px 24px;border-radius:21px}.page-banner h1{font-size:27px}.banner-symbol{display:none}.toolbar{align-items:stretch}.toolbar-group{flex-wrap:wrap}.about-hero{grid-template-columns:1fr;padding:27px 24px}.about-hero h2{font-size:25px}.about-art{width:180px}.upload-card{align-items:start;flex-direction:column}.footer-inside{flex-direction:column}.big-quote{padding:29px 20px}.big-quote h2{font-size:22px}}
@media(max-width:390px){.cards-4{grid-template-columns:1fr 1fr}.metric-value{font-size:25px}.metric-card{padding:15px}.hero-actions .btn{width:100%}}

/* Last-week review: date selection, direction cards, compact performance bars */
.weekly-home-cta{display:flex;justify-content:space-between;align-items:center;gap:26px;border-radius:21px;border:1px solid #d7e9f4;padding:23px 27px;margin-top:18px;background:linear-gradient(110deg,#eaf8ff,#f7fcff)}
.weekly-home-cta h3{margin:5px 0;font-size:19px;color:#12456e}.weekly-home-cta p{margin:0;font-size:12px;color:#64839b;max-width:820px}
.weekly-home-cta .btn{flex:none}
.weekly-control{background:#fff;border:1px solid #e4edf5;border-radius:22px;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.weekly-control-left h2{font-size:27px;line-height:1.35;color:#103c68;margin:7px 0}.weekly-control-left p{color:#7b8fa5;font-size:12px;margin:0}
.weekly-control-right{display:flex;flex-direction:column;align-items:start;gap:9px;min-width:245px}
.weekly-control-right .field{width:100%}.weekly-side-card{box-shadow:none}
.weekly-side-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-weight:900;color:#2d567e}
.weekly-side-metric{padding:14px 0;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.weekly-side-metric b{font-size:32px;color:#0d4978;line-height:1.2;letter-spacing:-.04em}.weekly-side-metric span{font-size:12px;color:#788fa4}
.weekly-daily-table{min-width:1180px}.weekly-daily-table td{padding:17px 12px}.weekly-daily-table th{padding:15px 12px}
.weekly-meter{display:flex;flex-direction:column;gap:7px;min-width:100px}.weekly-meter-value{font-size:12px;font-weight:900;color:#2d4c6f}
.weekly-meter-track{display:block;width:100%;height:7px;border-radius:99px;background:#e9eff7;overflow:hidden}.weekly-meter-fill{display:block;height:100%;border-radius:inherit}.bar-intra{background:#159ed5}.bar-close{background:#13a485}
.weekly-audit-filters{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:14px}
.weekly-days{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.weekly-days button{padding:8px 12px;border:1px solid #dbe8f1;border-radius:10px;background:#fff;color:#58778f;font-size:12px;font-weight:800}
.weekly-days button span{font-size:10px;opacity:.75;margin-left:4px}.weekly-days button.active{background:#0a77b8;border-color:#0a77b8;color:#fff}
@media(max-width:760px){.weekly-home-cta,.weekly-control{flex-direction:column;align-items:stretch;padding:22px}.weekly-home-cta .btn{align-self:start}.weekly-control-left h2{font-size:21px}.weekly-control-right{min-width:0}.weekly-side-metric b{font-size:28px}.weekly-days button{padding:7px 10px}.weekly-daily-table{min-width:1000px}}

/* V3.7: stage schemas and three-threshold tables */
.batch-select{max-width:245px;min-width:155px}
.wide-table{min-width:1280px}
.wide-table th,.wide-table td{padding:13px 12px;vertical-align:top}
.wide-table th{white-space:nowrap}
.wide-table td{font-variant-numeric:tabular-nums}
.triple-table{min-width:690px}
.triple-table th:not(:first-child),.triple-table td:not(:first-child){text-align:center}
.triple-table td{padding:12px}
.triple-table tbody tr:nth-child(3n){border-bottom:2px solid #dfeaf4}
.cell-sub{display:block;color:#8392a4;font-size:11px;margin-top:4px;line-height:1.5;max-width:270px;word-break:break-word}
.td-desc{white-space:normal;min-width:200px;max-width:330px;line-height:1.7;overflow-wrap:anywhere}
.status-triplet{display:flex;flex-direction:column;gap:6px;min-width:110px}
.status-triplet span{display:flex;align-items:center;gap:7px}
.status-triplet span .status-badge{white-space:nowrap}
.template-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px 25px;margin:13px 0;padding:10px 2px}
.upload-card-stage{align-items:flex-start}
.upload-card-stage .upload-actions{min-width:230px}
.upload-card-stage .upload-message{padding:8px 0;max-width:690px}
.upload-card-stage select{min-width:185px}
@media(max-width:760px){.batch-select{max-width:none;width:100%}.upload-card-stage .upload-actions{min-width:0}.triple-table{min-width:600px}.wide-table{min-width:1100px}}
/* Optional market context snapshots by stage */
.market-placeholder{padding:24px 27px;border:1px dashed #c8dbe9;border-radius:18px;background:#fbfdff;color:#788ba0;font-size:13px}
.market-panel{padding:22px 25px}
.market-meta{display:flex;gap:11px 24px;align-items:center;flex-wrap:wrap;font-size:12px;color:#668199;margin-bottom:16px;word-break:break-word}
.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.market-grid .mini-tile span{display:block;color:#718da5}
.market-grid .mini-tile b{font-size:18px}
@media(max-width:760px){.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V3.7-S · static-source provenance and accessible native audit disclosures */
.dataset-provenance{display:flex;gap:10px 18px;flex-wrap:wrap;align-items:center;padding:13px 17px;margin-top:16px;border:1px solid #dce5ed;border-left:4px solid #8195a9;border-radius:12px;background:#fafbfd;color:#496177;font-size:12px;line-height:1.8}
.dataset-provenance strong{font-weight:800;color:#263f56}.dataset-provenance span{flex:1;min-width:220px}
.audit-details{margin-top:11px;background:#fff;border:1px solid #dfebf3;border-radius:12px;overflow:hidden}
.audit-details summary{cursor:pointer;padding:13px 17px;color:#315a79;font-size:13px;font-weight:800;list-style-position:inside}
.audit-details[open] summary{border-bottom:1px solid #dfebf3}
.audit-details .table-scroll{margin:8px 12px 12px}.audit-details .triple-table{width:100%}
.no-script-notice{padding:9px 16px;text-align:center;background:#e7eef5;color:#3d5870;font-size:12px}
@media(max-width:760px){.dataset-provenance{padding:12px}.audit-details summary{padding:12px}}
