/* Rook Console homepage (GET /) styles. Extracted from eos/web.py Application._layout
   in Sprint 2 (De-risk the UI layer) -- previously an inline <style> string built
   with Python string concatenation. */

.kai-briefing{width:min(1040px,100%);margin:0 auto;padding:0 0 56px}.briefing-intro{height:auto!important;padding:8px 0 24px!important;background:transparent!important;display:grid!important;grid-template-columns:260px 1fr;align-items:center;gap:42px}.briefing-intro .kai-presence{padding:18px 0!important}.briefing-intro h1{font-size:clamp(46px,7vw,78px)!important;letter-spacing:-.05em;margin:8px 0 20px}.kai-voice{font-size:20px;line-height:1.55;color:#e7edf7}.kai-voice p{margin:7px 0;color:#e7edf7!important}.brief-focus{margin:8px 0 22px;padding:30px 34px!important;background:rgba(17,25,40,.74)!important}.brief-focus h2{font-size:clamp(28px,4vw,43px);margin:7px 0 10px;max-width:780px}.brief-step{font-size:14px!important;text-transform:uppercase;letter-spacing:.05em;color:#a9c9fb!important;font-weight:700;margin:20px 0 6px}.brief-source{font-size:16px;color:#aeb8c7!important}.kai-recommendation{font-size:18px;color:#e1e8f2!important;max-width:820px}.brief-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:25px}.brief-actions form{margin:0}.brief-time{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);padding:1px;margin:0 0 22px}.brief-time span{padding:15px;background:#0b111b;color:#aeb8c7;font-size:14px;text-transform:none;letter-spacing:0}.brief-time strong{display:block;font:600 16px -apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;color:#f3f7ff;margin-top:4px}.technical-detail{border-top:1px solid var(--line);padding-top:18px;color:#aeb8c7}.technical-detail summary{cursor:pointer;color:#d5deeb;font-size:15px;margin-bottom:15px}.technical-detail .table-wrap{margin-bottom:12px}.reporting-note{text-align:center;color:#dce9ff!important}@media(max-width:760px){.briefing-intro{grid-template-columns:1fr;text-align:center;gap:0}.briefing-intro .kai-presence{padding-bottom:0!important}.brief-time{grid-template-columns:1fr 1fr}.brief-focus{padding:24px!important}}@media(max-width:480px){.brief-time{grid-template-columns:1fr}.brief-actions{align-items:stretch;flex-direction:column}.brief-actions a,.brief-actions form,.brief-actions button{width:100%;justify-content:center}}
.activate-content-officer{margin-top:18px}
.kai-console{margin:8px 0 24px!important;padding:28px!important;background:linear-gradient(145deg,rgba(19,31,50,.96),rgba(11,18,30,.98))!important;border:1px solid rgba(132,179,255,.25)!important}.console-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.console-head h2{margin:4px 0}.console-head>span{padding:7px 12px;border-radius:999px;background:rgba(96,160,255,.12);color:#bcd5ff;font-size:13px}.kai-messages{display:grid;gap:12px;max-height:330px;overflow:auto;margin:22px 0}.kai-message,.user-message{max-width:82%;padding:14px 17px;border-radius:14px;background:#17243a}.user-message{justify-self:end;background:#275da7}.kai-message strong,.user-message strong{display:block;font-size:12px;color:#bcd5ff}.kai-message p,.user-message p{margin:4px 0;color:#f2f6fc}.kai-command{display:grid;grid-template-columns:1fr auto;gap:10px}.kai-command textarea{min-height:52px;max-height:240px;border:1px solid rgba(166,194,236,.28);border-radius:12px;background:#090f19;color:#fff;padding:15px 16px;font:inherit;resize:vertical;overflow:auto}.kai-command textarea:disabled,.kai-command button:disabled{opacity:.65}.action-card,.confirm-action{display:inline-flex;margin:8px 8px 0 0;padding:9px 13px;border-radius:9px;background:#dce9ff;color:#174f9c!important;text-decoration:none;border:0;font-weight:700;cursor:pointer}.action-detail{display:block;margin-top:6px;color:#aeb8c7;font-size:13px}.command-progress{font-size:12px;color:#9fc2fa}.kai-workspace-panel{margin:0 0 24px!important;padding:0!important;overflow:hidden!important}.kai-workspace-panel[hidden]{display:none!important}.kai-workspace-panel header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line)}.kai-workspace-panel header p{margin:0}.kai-workspace-panel iframe{display:block;width:100%;height:min(68vh,760px);border:0;background:#0b111b}.live-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px;margin-bottom:24px}.live-grid>section{margin:0!important;padding:22px!important;background:rgba(13,21,34,.75)!important}.live-now h2{font-size:23px}.live-now>p:last-child{color:#aeb8c7}.live-activity{list-style:none;margin:0;padding:0}.live-activity li{display:grid;grid-template-columns:48px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.live-activity time{color:#8eb8f7}.needs-attention{color:#ffb36b}.completed{color:#7ed6a8}.working{color:#8eb8f7}.waiting{color:#c7cfda}@media(max-width:900px){.live-grid{grid-template-columns:1fr}.kai-command{grid-template-columns:1fr}.kai-message,.user-message{max-width:94%}.kai-workspace-panel iframe{height:72vh}}
.command-progress-step{display:block;margin:3px 0;color:#9fc2fa;font-size:12px}.command-progress-arrow{display:block;text-align:center;color:#bfdeff;font-size:12px;margin:0 0 2px}
/* Capability attention panel (KAI MASTER 002 Phase 1/4): one specialist's
   failure is shown as that specialist's failure, beside a Rook that stays Ready. */
.kai-attention{margin:0 0 24px!important;padding:20px 24px!important;background:rgba(41,30,12,.62)!important;border:1px solid rgba(214,158,74,.42)!important}.kai-attention ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}.kai-attention li{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.kai-attention a{color:#f4e3c4;text-decoration:none}.kai-attention a strong{font-size:17px}.kai-attention small{color:#d8c6a6;font-size:14px;flex-basis:100%}.attention-state{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:rgba(214,158,74,.2);color:#ffd79a}.attention-state.needs-attention{background:rgba(224,120,102,.2);color:#ffb2a3}.attention-note{margin:14px 0 0;color:#d8c6a6;font-size:14px}
/* Rook Console attachments (KAI MASTER 003 Phase 4/6). Enhances the existing
   composer: a small attach control beside the textarea, chips for files
   chosen but not yet sent, and quiet references on the sent turn. */
.kai-command{grid-template-columns:1fr auto auto}.kai-attach{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:52px;border:1px solid rgba(166,194,236,.28);border-radius:12px;background:#090f19;color:#bcd5ff;font-size:22px;line-height:1;cursor:pointer}.kai-attach:hover{border-color:rgba(166,194,236,.6);color:#fff}.kai-attach input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.kai-voice{margin:14px 0;padding:14px 16px;border:1px solid rgba(132,179,255,.25);border-radius:12px;background:rgba(9,15,25,.55)}.kai-voice>div:first-child{display:flex;justify-content:space-between;gap:12px}.kai-voice-state{color:#bcd5ff}.kai-voice p{margin:7px 0 12px;color:#c7cfda;font-size:14px}.kai-voice-actions{display:flex;flex-wrap:wrap;gap:8px}.kai-voice-actions .button{min-height:40px}
.kai-attachment-tray{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.attachment-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(96,160,255,.14);border:1px solid rgba(132,179,255,.3);color:#dce9ff;font-size:13px}.attachment-chip em{color:#ffb36b;font-style:normal;font-size:12px}.attachment-chip.is-uploading{opacity:.7}.attachment-remove{border:0;background:transparent;color:#9fc2fa;cursor:pointer;font-size:14px;line-height:1;padding:0 2px}.attachment-remove:hover{color:#fff}
.attachment-refs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.attachment-ref{padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.08);color:#cfdcf0;font-size:12px}.attachment-ref em{color:#ffb36b;font-style:normal}
@media(max-width:900px){.kai-command{grid-template-columns:1fr auto auto}}

/* AUTHENTICATED WEB ACCESS 001: the signed-out surface. Deliberately shows
   nothing about EOS beyond its name -- no modules, no state, no transcript. */
.signin-body { display: flex; align-items: center; justify-content: center; min-height: 100vh; margin: 0; }
.signin { width: min(24rem, 90vw); padding: 2rem; }
.signin h1 { margin: 0 0 .25rem; font-size: 1.35rem; }
.signin p { margin: 0 0 1.25rem; opacity: .75; }
.signin-error { color: #b3261e; font-weight: 600; }
