/* watchtower-command-eoc.css — the reworked Command "EOC" default layout:
 * a 7-tile situation band + two working desks (incident work desk + radio
 * compose/send desk). Ported class-for-class from the reworked design
 * `Dispatch - EOC Console.dc.html` (James 2026-06-27, design-divergence rebuild).
 * Everything is scoped under `.cmd-eoc2` so the design's generic class names
 * (.vt/.col/.ph/.qrow/.tier/.dhead/.le/.rtab/…) never collide with the global
 * Watchtower classes. Tokens (--sky/--gold/--red/--green/--bg-*/--l-*/--t-*/
 * --label/--mono/--sans) are the global DS vars already defined in watchtower.css. */

.cmd-eoc2 { height:100%; display:flex; flex-direction:column; min-height:0; background:var(--bg-0); }

/* viewing band */
.cmd-eoc2 .viewband { flex:0 0 auto; display:grid; grid-template-columns:repeat(7,1fr); gap:1px; background:var(--l-2); border-bottom:1px solid var(--l-2); }
.cmd-eoc2 .vt { background:var(--bg-1); padding:9px 14px; display:flex; flex-direction:column; gap:4px; min-width:0; }
.cmd-eoc2 .vt .k { font-family:var(--label); font-size:8.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--t-3); }
.cmd-eoc2 .vt .v { font-family:var(--mono); font-size:19px; font-weight:800; line-height:1; }
.cmd-eoc2 .vt .v span { font-size:11px; color:var(--t-3); }
.cmd-eoc2 .vt .s { font-family:var(--mono); font-size:10px; color:var(--t-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cmd-eoc2 .vt.acc .v { color:var(--green); } .cmd-eoc2 .vt.warn .v { color:var(--gold); } .cmd-eoc2 .vt.crit .v { color:var(--red); } .cmd-eoc2 .vt.sky .v { color:var(--sky); }

/* two working desks */
.cmd-eoc2 .workrow { flex:1; min-height:0; display:grid; grid-template-columns:252px 1fr 384px; }
.cmd-eoc2 .col { min-height:0; display:flex; flex-direction:column; min-width:0; }
.cmd-eoc2 .col.queue { border-right:1px solid var(--l-2); background:var(--bg-0); }
.cmd-eoc2 .col.desk { border-right:1px solid var(--l-2); }
.cmd-eoc2 .col.radio { background:var(--bg-0); }
.cmd-eoc2 .ph { flex:0 0 auto; padding:9px 14px; font-family:var(--label); font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--t-1); border-bottom:1px solid var(--l-2); background:var(--bg-1); display:flex; align-items:center; gap:9px; }
.cmd-eoc2 .ph .c { margin-left:auto; font-family:var(--mono); font-size:10px; color:var(--t-3); font-weight:400; letter-spacing:0; }
.cmd-eoc2 .ph .lab { font-family:var(--label); font-size:8px; letter-spacing:0.12em; color:var(--sky); border:1px solid color-mix(in oklab,var(--sky) 50%,transparent); border-radius:3px; padding:1px 5px; }
.cmd-eoc2 .scroll { flex:1; min-height:0; overflow:auto; }

/* queue */
.cmd-eoc2 .qrow { display:grid; grid-template-columns:30px 1fr; gap:10px; padding:11px 13px; border-bottom:1px solid var(--l-1); cursor:pointer; align-items:center; border-left:3px solid transparent; }
.cmd-eoc2 .qrow:hover { background:var(--bg-2); }
.cmd-eoc2 .qrow.on { background:color-mix(in oklab,var(--sky) 13%,var(--bg-1)); border-left-color:var(--sky); }
.cmd-eoc2 .tier { font-family:var(--mono); font-weight:700; font-size:10px; padding:3px 0; border-radius:3px; text-align:center; }
.cmd-eoc2 .tier.t1 { background:color-mix(in oklab,var(--sky) 20%,var(--bg-2)); color:var(--sky); }
.cmd-eoc2 .tier.t2 { background:color-mix(in oklab,var(--gold) 22%,var(--bg-2)); color:var(--gold); }
.cmd-eoc2 .tier.t3 { background:var(--red); color:#fff; }
.cmd-eoc2 .qrow .ty { font-size:13px; font-weight:600; } .cmd-eoc2 .qrow .sb { font-family:var(--mono); font-size:10.5px; color:var(--t-2); margin-top:2px; }
.cmd-eoc2 .qrow .nm { font-family:var(--mono); font-size:9px; color:var(--t-3); }
.cmd-eoc2 .intake { padding:10px 13px; border-bottom:1px solid var(--l-1); }
.cmd-eoc2 .intake button { width:100%; padding:10px; border-radius:6px; border:1px dashed var(--l-2); background:transparent; color:var(--sky); font-family:var(--label); font-size:11px; letter-spacing:0.08em; text-transform:uppercase; cursor:pointer; }
.cmd-eoc2 .intake button:hover { border-color:var(--sky); background:color-mix(in oklab,var(--sky) 8%,transparent); }

/* incident desk */
.cmd-eoc2 .dempty { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; color:var(--t-3); text-align:center; padding:40px; }
.cmd-eoc2 .dempty svg { opacity:0.4; }
.cmd-eoc2 .dhead { flex:0 0 auto; padding:14px 18px; border-bottom:1px solid var(--l-2); background:var(--bg-1); }
.cmd-eoc2 .dhead .row1 { display:flex; align-items:center; gap:11px; }
.cmd-eoc2 .dhead .num { font-family:var(--mono); font-size:12px; color:var(--t-2); }
.cmd-eoc2 .dhead h2 { font-family:var(--label); font-size:20px; letter-spacing:0.02em; margin:0; }
.cmd-eoc2 .dhead .st { margin-left:auto; font-family:var(--label); font-size:9px; letter-spacing:0.08em; text-transform:uppercase; padding:4px 10px; border-radius:4px; border:1px solid currentColor; }
.cmd-eoc2 .dhead .st.active { color:var(--gold); } .cmd-eoc2 .dhead .st.contained { color:var(--sky); } .cmd-eoc2 .dhead .st.resolved { color:var(--green); }
.cmd-eoc2 .dmeta { display:flex; gap:22px; margin-top:11px; flex-wrap:wrap; }
.cmd-eoc2 .dmeta .m { display:flex; flex-direction:column; gap:2px; }
.cmd-eoc2 .dmeta .m .k { font-family:var(--label); font-size:8.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--t-3); }
.cmd-eoc2 .dmeta .m .v { font-size:13px; font-weight:600; }
.cmd-eoc2 .dtools { flex:0 0 auto; display:flex; gap:8px; padding:12px 18px; border-bottom:1px solid var(--l-2); flex-wrap:wrap; }
.cmd-eoc2 .tb { display:flex; align-items:center; gap:7px; padding:9px 13px; border-radius:6px; border:1px solid var(--l-2); background:var(--bg-2); color:var(--t-1); font-size:12.5px; font-weight:600; cursor:pointer; }
.cmd-eoc2 .tb:hover { border-color:var(--sky); } .cmd-eoc2 .tb .ic { color:var(--sky); display:grid; place-items:center; }
.cmd-eoc2 .tb.warn:hover { border-color:var(--gold); } .cmd-eoc2 .tb.warn .ic { color:var(--gold); }
.cmd-eoc2 .tb.green:hover { border-color:var(--green); } .cmd-eoc2 .tb.green .ic { color:var(--green); }
.cmd-eoc2 .tb.ghost { margin-left:auto; background:transparent; text-decoration:none; }
.cmd-eoc2 .dlogwrap { flex:1; min-height:0; overflow:auto; padding:14px 18px; }
.cmd-eoc2 .dlogwrap .lh { font-family:var(--label); font-size:10px; letter-spacing:0.12em; text-transform:uppercase; color:var(--t-3); margin-bottom:11px; }
.cmd-eoc2 .le { display:grid; grid-template-columns:48px 78px 1fr; gap:11px; padding:8px 0; border-bottom:1px solid var(--l-1); font-size:13px; align-items:baseline; }
.cmd-eoc2 .le .t { font-family:var(--mono); font-size:11px; color:var(--t-3); }
.cmd-eoc2 .le .w { font-family:var(--label); font-size:9px; letter-spacing:0.06em; text-transform:uppercase; color:var(--sky); }
.cmd-eoc2 .le .mg { color:var(--t-1); line-height:1.4; }
.cmd-eoc2 .dadd { flex:0 0 auto; display:flex; gap:9px; padding:12px 18px; border-top:1px solid var(--l-2); background:var(--bg-1); }
.cmd-eoc2 .dadd input { flex:1; padding:10px 13px; background:var(--bg-2); border:1px solid var(--l-2); border-radius:6px; color:var(--t-0); font-family:var(--sans); font-size:13px; }
.cmd-eoc2 .dadd input:focus { outline:none; border-color:var(--sky); }
.cmd-eoc2 .dadd button { padding:10px 18px; border-radius:6px; border:0; background:var(--sky); color:#06121c; font-family:var(--label); font-size:11px; letter-spacing:0.08em; text-transform:uppercase; cursor:pointer; }

/* radio desk */
.cmd-eoc2 .rtabs { flex:0 0 auto; display:flex; gap:6px; padding:9px 12px; border-bottom:1px solid var(--l-2); background:var(--bg-1); }
.cmd-eoc2 .rtab { padding:6px 11px; border-radius:5px; border:1px solid var(--l-2); background:var(--bg-2); color:var(--t-2); font-family:var(--mono); font-size:11px; cursor:pointer; }
.cmd-eoc2 .rtab.on { border-color:var(--sky); color:var(--sky); background:color-mix(in oklab,var(--sky) 14%,var(--bg-1)); }
.cmd-eoc2 .rlog { flex:1; min-height:0; overflow:auto; padding:6px 0; }
.cmd-eoc2 .rdo { display:grid; grid-template-columns:44px 48px 1fr; gap:9px; padding:8px 14px; border-bottom:1px solid var(--l-1); font-size:12.5px; align-items:baseline; }
.cmd-eoc2 .rdo .t { font-family:var(--mono); color:var(--t-3); font-size:11px; } .cmd-eoc2 .rdo .f { font-family:var(--mono); color:var(--sky); } .cmd-eoc2 .rdo .mg { color:var(--t-1); line-height:1.4; }
.cmd-eoc2 .rdo.allcall { background:color-mix(in oklab,var(--gold) 9%,transparent); } .cmd-eoc2 .rdo.allcall .f { color:var(--gold); }
.cmd-eoc2 .rdo.eoc .f { color:var(--green); }
.cmd-eoc2 .allcalls { flex:0 0 auto; display:flex; gap:6px; padding:9px 12px 0; flex-wrap:wrap; }
.cmd-eoc2 .ac { font-family:var(--label); font-size:9.5px; letter-spacing:0.05em; text-transform:uppercase; padding:5px 10px; border-radius:5px; border:1px solid var(--l-2); background:var(--bg-2); color:var(--t-2); cursor:pointer; }
.cmd-eoc2 .ac:hover { border-color:var(--gold); color:var(--gold); }
.cmd-eoc2 .ac.on { border-color:var(--gold); color:var(--gold); background:color-mix(in oklab,var(--gold) 14%,var(--bg-1)); }
.cmd-eoc2 .compose { flex:0 0 auto; padding:10px 12px 12px; border-top:1px solid var(--l-2); background:var(--bg-1); }
.cmd-eoc2 .compose .fr { display:flex; gap:8px; align-items:center; margin-bottom:8px; }
.cmd-eoc2 .compose .frtag { font-family:var(--label); font-size:9px; letter-spacing:0.1em; text-transform:uppercase; color:var(--t-3); }
.cmd-eoc2 .compose select { background:var(--bg-2); border:1px solid var(--l-2); border-radius:5px; color:var(--t-0); font-family:var(--mono); font-size:12px; padding:6px 9px; }
.cmd-eoc2 .compose .ir { display:flex; gap:8px; }
.cmd-eoc2 .compose input { flex:1; padding:10px 12px; background:var(--bg-2); border:1px solid var(--l-2); border-radius:6px; color:var(--t-0); font-family:var(--sans); font-size:13px; }
.cmd-eoc2 .compose input:focus { outline:none; border-color:var(--sky); }
.cmd-eoc2 .compose .send { padding:10px 16px; border-radius:6px; border:0; background:var(--sky); color:#06121c; font-family:var(--label); font-size:11px; letter-spacing:0.08em; text-transform:uppercase; cursor:pointer; }
.cmd-eoc2 .compose .send.gold { background:var(--gold); color:#1a1205; }
