:root{--bg:#f4f6f8;--card:#fff;--navy:#0b2545;--blue:#2f6fed;--blue-soft:#eaf0fe;--text:#1f2933;--muted:#52606d;--border:#e1e7ef;--warn-bg:#fff8f4;--warn-border:#fbd7c4;--warn-text:#b1400d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,Arial,sans-serif;line-height:1.5}.wrap{max-width:860px;margin:0 auto;padding:24px 16px 64px}.header{background:var(--navy);color:#fff;border-radius:12px;padding:24px 28px}.header-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.header .eyebrow{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#7fb2ff}.signout-btn{background:transparent;border:1px solid hsla(0,0%,100%,.35);color:#fff;font-size:12px;padding:5px 10px;border-radius:6px;cursor:pointer}.signout-btn:hover{background:hsla(0,0%,100%,.1)}.header-actions{justify-content:flex-end}.header-actions,.refresh-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.refresh-btn{background:var(--blue);border:none;color:#fff;font-size:12px;padding:5px 12px;border-radius:6px;cursor:pointer;font-weight:600}.refresh-btn:hover:not(:disabled){background:#2558c7}.refresh-btn.secondary{background:#fff;color:var(--navy);border:1px solid var(--border)}.refresh-btn.secondary:hover:not(:disabled){background:#f6f8fa}.refresh-btn:disabled{opacity:.65;cursor:wait}.refresh-msg{font-size:11px;color:#c7d6ea;max-width:200px}.refresh-msg.error{color:#fca5a5}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.auth-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:32px 28px;max-width:420px;width:100%;box-shadow:0 8px 24px rgba(11,37,69,.08)}.auth-eyebrow{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--blue);margin-bottom:8px}.auth-card h1{margin:0 0 8px;color:var(--navy);font-size:22px}.auth-sub{margin:0 0 20px;color:var(--muted);font-size:14px}.auth-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:16px}.auth-error p{margin:4px 0 0}.ms-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;border:1px solid var(--border);color:var(--text);padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.ms-btn:hover{background:#f8fafc;border-color:#cbd5e1}.header h1{font-size:22px;margin:6px 0 4px;font-weight:600}.header .meta{font-size:13px;color:#c7d6ea}.section-title{font-size:16px;font-weight:600;color:var(--navy);border-left:4px solid var(--blue);padding-left:10px;margin:28px 0 12px}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px 18px;margin-bottom:12px}.card.soon{background:var(--warn-bg);border-color:var(--warn-border)}.card h3{font-size:15px;margin:0 0 2px;color:var(--navy);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card .sub{font-size:13px;color:var(--muted);margin-bottom:8px}.card .desc{font-size:13px;color:#3e4c59}.card .criteria{margin:10px 0 0;padding-left:18px;font-size:12px;color:#3e4c59}.card .criteria li{margin-bottom:4px}.card .criteria strong{color:var(--navy);font-weight:600}.card .foot{margin-top:10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.badge{display:inline-block;font-size:12px;border-radius:4px;padding:3px 9px;background:var(--blue-soft);color:#1b4ed8;white-space:nowrap}.badge.soon{background:#fde2cf;color:var(--warn-text)}.badge.new{background:#d1fae5;color:#065f46;font-weight:600;letter-spacing:.02em}.card .history{margin-top:10px}.card .history-toggle{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;font-size:12px;color:var(--blue);cursor:pointer}.card .history-toggle:hover{text-decoration:underline}.card .history-chevron{font-size:11px;color:var(--muted)}.card .history-list{margin:8px 0 0;padding:10px 12px 10px 28px;background:#f6f8fa;border-radius:6px;border:1px solid var(--border);font-size:12px;color:#3e4c59}.card .history-list li{margin-bottom:6px}.card .history-list li:last-child{margin-bottom:0}.card .history-type{font-weight:600;color:var(--navy)}.card .history-date{color:var(--muted)}.card .history-list a{margin-left:8px;color:var(--blue);text-decoration:none}.card .history-list a:hover{text-decoration:underline}.card .foot a{color:var(--blue);text-decoration:none;font-size:13px}.card .foot a:hover{text-decoration:underline}.empty{background:var(--card);border:1px dashed var(--border);border-radius:10px;padding:28px;text-align:center;color:var(--muted)}.footnote{font-size:12px;color:#7b8794;margin-top:24px}