:root { --bg:#07111f; --surface:#0d1b2b; --surface-2:#11243a; --line:#27415d; --text:#eef6ff; --muted:#9eb1c7; --cyan:#52d5f1; --green:#55d496; --yellow:#f5c96a; --red:#f37878; --white:#d7e3ef; --radius:16px; }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; background:radial-gradient(circle at 75% -10%,#173553 0,transparent 34rem),var(--bg); color:var(--text); font:16px/1.45 "Segoe UI",Arial,sans-serif; }
button,input,textarea,select { font:inherit; } button { cursor:pointer; }
.shell { max-width:1440px; margin:auto; padding:28px; }
.topbar,.mission-summary,.panel,.card { border:1px solid var(--line); background:rgba(13,27,43,.9); box-shadow:0 18px 45px rgba(0,0,0,.16); }
.topbar { min-height:96px; border-radius:var(--radius); padding:18px 24px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.brand,.card-heading,.panel-heading,.dialog-heading { display:flex; align-items:center; gap:13px; }
.brand-mark { width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:25px;color:#04101a;background:var(--cyan); }
.eyebrow { margin:0 0 3px; color:var(--cyan); font-size:.72rem; font-weight:700; letter-spacing:.12em; }
h1,h2,p { margin-top:0; } h1 { margin-bottom:0;font-size:1.4rem; } h2 { margin-bottom:0;font-size:1.13rem; }
.briefing { text-align:right; } .briefing p,.briefing time { display:block;margin:0;color:var(--muted); } .briefing strong { font-size:1.3rem; }.date-nav { display:flex;justify-content:flex-end;align-items:center;gap:5px;margin:6px 0 2px; }.date-nav input { padding:5px;border:1px solid var(--line);border-radius:7px;background:#071522;color:var(--text); }.date-step { width:28px;height:28px;padding:0;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);color:var(--cyan); }.today-button { margin-left:4px; }
.mission-summary { margin-top:20px; border-radius:var(--radius); padding:22px 24px; display:flex; justify-content:space-between; align-items:center; gap:28px; }
.mission-summary h2 { font-size:1.45rem; } .mission-summary p:not(.eyebrow) { margin:6px 0 0;color:var(--muted); }
.completion { width:min(330px,100%); } .completion>span { display:block;font-weight:700; } .completion>span:last-child { margin-top:7px;color:var(--muted);font-size:.84rem;font-weight:400; }
.progress-track { height:10px;margin-top:9px;border-radius:99px;background:#06101b;overflow:hidden; } #progress-bar { height:100%; width:0; border-radius:inherit;background:var(--green);transition:width .25s ease; }
.alerts { display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:10px;margin:18px 0; } .alert { padding:11px 14px;border-left:4px solid var(--yellow);border-radius:8px;background:rgba(245,201,106,.1);color:#f9dfa0;font-size:.92rem; } .alert.red { border-color:var(--red);background:rgba(243,120,120,.1);color:#ffc3c3; }
.board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.card { min-height:230px;padding:19px;border-radius:var(--radius); border-top:4px solid var(--white);display:flex;flex-direction:column; }.card.wide { grid-column:span 2;min-height:190px; }
.card[data-status="complete"] { border-top-color:var(--green); }.card[data-status="attention"] { border-top-color:var(--yellow);}.card[data-status="required"] { border-top-color:var(--red);}.card[data-status="neutral"] { border-top-color:var(--white);}
.icon { flex:0 0 34px;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;color:var(--cyan);font-size:1.2rem; }.status-dot { margin-left:auto;width:11px;height:11px;border-radius:50%;background:var(--white); }.card[data-status="complete"] .status-dot { background:var(--green);box-shadow:0 0 12px var(--green); }.card[data-status="attention"] .status-dot { background:var(--yellow); }.card[data-status="required"] .status-dot { background:var(--red); }
.card-body { flex:1;margin:20px 0;color:var(--muted); }.card-body p { margin:0 0 8px; }.card-body strong { color:var(--text); }.metric { display:inline-block;margin:0 12px 8px 0;padding:5px 8px;border-radius:7px;background:var(--surface-2);font-size:.9rem; }.muted { color:var(--muted); }
.button { padding:9px 13px;border:1px solid var(--cyan);border-radius:9px;background:var(--cyan);color:#04101a;font-weight:700; }.button:hover { filter:brightness(1.1); }.button.secondary { background:transparent;color:var(--cyan); }.button.compact { padding:7px 10px;font-size:.85rem; }.card .button { align-self:flex-start; }.lower-grid { display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-top:16px; }.panel { border-radius:var(--radius);padding:19px; }.panel-heading { justify-content:space-between; }.parking-list { margin-top:15px; }.parking-item { display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line); }.parking-item:first-child { border-top:0; }.parking-item button { margin-left:auto; }.tag { display:inline-block;padding:2px 6px;border-radius:5px;background:#1d3550;color:var(--muted);font-size:.72rem; }.priority-high { color:#ffaaa7; }.priority-medium { color:#ffe09a; }.priority-low { color:#aee5ff; }.data-tools p:not(.eyebrow) { color:var(--muted); }.tool-row { display:flex;flex-wrap:wrap;gap:9px;margin:16px 0; }.file-button input { display:none; }.text-button { padding:0;border:0;background:none;color:var(--muted);text-decoration:underline;font-size:.85rem; }
dialog { width:min(590px,calc(100% - 30px));border:1px solid var(--line);border-radius:var(--radius);padding:0;background:var(--surface);color:var(--text);box-shadow:0 25px 80px #000; }dialog::backdrop { background:rgba(0,0,0,.65); }.dialog-heading { justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line); }.close-button { width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:1.7rem; }.form-fields { padding:22px;display:grid;gap:15px; }.field { display:grid;gap:6px; }.field label { font-weight:600; }.hint { color:var(--muted);font-size:.84rem; }.field input,.field textarea,.field select { width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#071522;color:var(--text); }.field textarea { min-height:85px;resize:vertical; }.checkbox { display:flex;align-items:center;gap:9px; }.checkbox input { width:auto; }.dialog-actions { display:flex;justify-content:flex-end;gap:10px;padding:16px 22px 22px; }.toast { position:fixed;right:22px;bottom:22px;transform:translateY(90px);opacity:0;padding:11px 15px;border-radius:8px;background:#dcfbe9;color:#083921;font-weight:700;transition:.2s; }.toast.show { transform:none;opacity:1; }.noscript { padding:12px;background:#511d24;color:white;text-align:center; }
@media (max-width:950px) { .board { grid-template-columns:repeat(2,minmax(0,1fr)); }.card.wide { grid-column:span 2; }.lower-grid { grid-template-columns:1fr; } }
@media (max-width:620px) { .shell { padding:14px; }.topbar,.mission-summary { align-items:flex-start;flex-direction:column; }.briefing { text-align:left; }.date-nav { justify-content:flex-start; }.board { grid-template-columns:1fr; }.card.wide { grid-column:auto; }.mission-summary { gap:16px; }.card { min-height:205px; }.lower-grid { margin-top:14px; } }
