:root{color-scheme:dark;font-family:Avenir Next,PingFang TC,Noto Sans TC,sans-serif;background:#111414;color:#f1efe4;--panel: #181d1c;--panel-strong: #202725;--line: #36403d;--muted: #a8b2a8;--amber: #d7a642;--green: #66d18f;--red: #ef6f6c;--ink: #111414}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(90deg,rgba(215,166,66,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(102,209,143,.05) 1px,transparent 1px),#111414;background-size:48px 48px}a{color:inherit}main{min-height:100vh}.hero-band{border-bottom:1px solid var(--line);background:linear-gradient(135deg,#151918,#222320 62%,#191614);padding:24px clamp(18px,4vw,56px) 32px}nav{display:flex;justify-content:flex-end;gap:10px;margin-bottom:28px}nav a,.ghost-button,.detail-link,.chart-copy a{border:1px solid var(--line);border-radius:6px;padding:9px 12px;text-decoration:none;color:#f7edce;background:#ffffff0a}.detail-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.detail-actions span{border:1px solid var(--green);border-radius:999px;color:var(--green);font-weight:800;padding:7px 10px}.detail-actions button{background:var(--green);border:0;border-radius:6px;color:var(--ink);cursor:pointer;font:inherit;font-weight:800;padding:9px 12px}.detail-actions button.danger{background:transparent;border:1px solid rgba(239,111,108,.6);color:#ffd6d4}.candidate-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.candidate-actions button{background:var(--green);border:0;border-radius:6px;color:var(--ink);cursor:pointer;font:inherit;font-weight:800;padding:9px 12px;white-space:nowrap}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:28px;align-items:end}.eyebrow{color:var(--amber);font-size:.75rem;font-weight:800;letter-spacing:0;margin:0 0 8px}h1,h2,p{margin-top:0}h1{font-size:clamp(2.4rem,6vw,5.4rem);line-height:.95;margin-bottom:18px}h2{font-size:clamp(1.25rem,2vw,1.9rem)}.hero-grid p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:1.05rem;line-height:1.7}.status-board{display:grid;grid-template-columns:1fr auto;gap:12px 18px;border-left:3px solid var(--green);background:#111414bd;padding:18px}.status-board span{color:var(--muted)}.status-board strong{color:var(--green)}.content-band,.detail-page,.watchlist-page{padding:28px clamp(18px,4vw,56px) 56px}.section-title,.page-header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.compact h1{font-size:clamp(2rem,5vw,4rem);margin:0}.radar-shell{overflow-x:auto;border-top:1px solid var(--line)}.radar-controls{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(130px,.7fr) minmax(150px,1fr) minmax(130px,.7fr) minmax(120px,auto) auto;gap:10px;align-items:end;border-top:1px solid var(--line);padding:14px 0 16px}.radar-controls label{display:grid;gap:6px}.radar-controls .checkbox-control{align-items:center;border:1px solid var(--line);border-radius:6px;display:flex;gap:8px;min-height:40px;padding:8px 10px}.checkbox-control input{accent-color:var(--green);width:auto}.radar-controls span{color:var(--muted);font-size:.85rem}.radar-controls input,.radar-controls select{width:100%;border:1px solid var(--line);border-radius:6px;background:#111414;color:#f1efe4;font:inherit;min-height:40px;padding:8px 10px}.radar-controls strong{color:var(--green);white-space:nowrap;min-height:40px;display:grid;place-items:center end}.radar-table{width:100%;border-collapse:collapse;min-width:920px}.radar-table th{color:var(--muted);font-size:.78rem;text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}.radar-table td{padding:14px 10px;border-bottom:1px solid rgba(54,64,61,.7);vertical-align:middle}.radar-table tr:hover{background:#d7a6420f}.ticker-stack,.event-cell{display:grid;gap:4px}.ticker-stack strong{font-size:1.1rem;color:#fff4cf}.ticker-stack em{border:1px solid rgba(102,209,143,.55);border-radius:999px;color:var(--green);display:inline-block;font-size:.72rem;font-style:normal;margin-left:8px;padding:2px 6px;vertical-align:middle}.ticker-stack span,.event-cell span,.muted{color:var(--muted)}.score-meter{position:relative;width:92px;height:30px;border:1px solid var(--line);background:#111414}.score-meter span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--amber))}.score-meter strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#111414;text-shadow:0 1px 0 rgba(255,255,255,.32)}.source-pills,.tag-list{display:flex;flex-wrap:wrap;gap:6px}.source-pills span,.tag-list span{border:1px solid var(--line);border-radius:999px;padding:4px 8px;color:#e6dfc8;background:#ffffff0a}.detail-link{display:inline-block;white-space:nowrap}.empty-state,.error-panel{border:1px solid var(--line);background:var(--panel);padding:28px}.compact-empty{padding:18px}.source-health{margin-bottom:22px}.compact-title{margin-bottom:10px}.readiness-panel{border:1px solid var(--line);border-radius:8px;margin-bottom:22px;padding:18px}.readiness-badge{border-radius:999px;font-size:.82rem;padding:7px 10px}.readiness-badge.ready{background:#65d6a729;color:var(--green)}.readiness-badge.degraded,.readiness-badge.missing{background:#ef6f6c24;color:#ffd6d4}.readiness-counts,.readiness-checks{display:flex;flex-wrap:wrap;gap:10px}.readiness-counts{margin-bottom:12px}.readiness-counts span{background:#ffffff0d;border-radius:999px;color:var(--muted);font-size:.86rem;padding:7px 10px}.readiness-check{background:#ffffff0a;border:1px solid var(--line);border-radius:8px;flex:1 1 210px;min-width:0;padding:12px}.readiness-check span{color:var(--muted);display:block;font-size:.82rem;margin-top:4px}.readiness-check p{color:var(--muted);font-size:.9rem;line-height:1.5;margin:8px 0 0}.readiness-check.ready{border-color:#65d6a759}.readiness-check.degraded,.readiness-check.missing{border-color:#ef6f6c73}.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.health-card{display:grid;gap:5px;border:1px solid var(--line);border-left-width:4px;background:#ffffff09;padding:12px}.health-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.health-card.ok{border-left-color:var(--green)}.health-card.partial{border-left-color:var(--amber)}.health-card.failed{border-left-color:var(--red)}.health-card span,.health-card time,.health-card small,.health-card p{color:var(--muted);margin:0}.health-card time{font-size:.8rem}.health-advice{border-top:1px solid var(--line);color:#fff4cf!important;line-height:1.5;margin-top:4px!important;padding-top:8px}.admin-refresh{align-items:end;background:#ffffff09;border:1px solid var(--line);border-left:4px solid var(--amber);display:grid;gap:14px;grid-template-columns:minmax(220px,1fr) minmax(320px,520px);margin-bottom:22px;padding:16px}.admin-refresh h2{margin-bottom:8px}.admin-refresh p:not(.eyebrow){color:var(--muted);margin-bottom:0}.admin-refresh form{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(180px,1fr) auto auto}.admin-refresh label{display:grid;gap:6px}.admin-refresh label span{color:var(--muted);font-size:.85rem}.admin-refresh input{background:#111414;border:1px solid var(--line);border-radius:6px;color:#f1efe4;font:inherit;min-height:40px;padding:8px 10px;width:100%}.admin-refresh button{background:var(--amber);border:0;border-radius:6px;color:var(--ink);cursor:pointer;font-weight:800;min-height:40px;padding:8px 13px}.admin-refresh button:disabled{cursor:progress;opacity:.72}.refresh-result,.refresh-error{grid-column:1 / -1}.refresh-result{color:var(--green)!important}.refresh-error{color:#ffd6d4!important}.empty-kicker{color:var(--green);font-weight:800}.error-panel{border-color:#ef6f6c80;color:#ffd6d4;margin-bottom:18px}.skeleton-table{display:grid;gap:10px}.skeleton-table span{height:48px;background:linear-gradient(90deg,var(--panel),var(--panel-strong),var(--panel));background-size:240% 100%;animation:sweep 1.2s linear infinite}@keyframes sweep{to{background-position:-240% 0}}.chart-band{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:18px;margin-bottom:28px}.chart-copy{border-top:3px solid var(--amber);background:var(--panel);padding:18px}.chart-copy p{color:var(--muted);line-height:1.6}.chart-band iframe{width:100%;min-height:420px;border:1px solid var(--line);background:#080909}.research-summary{margin-bottom:28px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px}.summary-grid article{border-top:3px solid var(--green);background:var(--panel);min-height:96px;padding:14px}.summary-grid article span{color:var(--muted)}.summary-grid article strong{color:#fff4cf;display:block;font-size:1.9rem;margin-top:8px}.timeline ol{list-style:none;padding:0;margin:0;display:grid;gap:12px}.timeline li,.watch-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;border-top:1px solid var(--line);padding:14px 0}.timeline time,.watch-row time{color:var(--amber);font-size:.9rem}.event-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.event-meta span{border:1px solid var(--line);border-radius:999px;color:#e6dfc8;font-size:.8rem;padding:3px 7px}.timeline p{color:var(--muted)}.watchlist-grid{display:grid;gap:8px}.watchlist-form{display:grid;grid-template-columns:minmax(120px,160px) minmax(160px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px;padding:16px 0}.watchlist-form div{display:grid;gap:6px}.watchlist-form label{color:var(--muted);font-size:.85rem}.watchlist-form input{width:100%;border:1px solid var(--line);border-radius:6px;background:#111414;color:#f1efe4;padding:10px 11px;font:inherit}.watchlist-form button{border:0;border-radius:6px;background:var(--green);color:var(--ink);cursor:pointer;font-weight:800;padding:11px 14px}.form-message{grid-column:1 / -1;color:var(--amber);margin:0}.watch-row{align-items:center;grid-template-columns:minmax(0,1fr) auto auto;color:inherit}.watch-row a{color:inherit;display:grid;gap:8px;grid-template-columns:120px minmax(0,1fr);text-decoration:none}.watch-row button{background:transparent;border:1px solid rgba(239,111,108,.6);border-radius:6px;color:#ffd6d4;cursor:pointer;font:inherit;font-weight:800;padding:8px 11px}@media (max-width: 760px){.hero-grid,.chart-band,.summary-grid{grid-template-columns:1fr}nav,.section-title,.page-header{align-items:flex-start;flex-direction:column}.timeline li,.watch-row,.watchlist-form,.admin-refresh,.admin-refresh form,.radar-controls{grid-template-columns:1fr}.radar-controls strong{place-items:start}.watch-row a{grid-template-columns:1fr}}
