:root{--bg:#081423;--panel:#0d2038;--panel2:#102944;--line:#294b70;--text:#f2ecdc;--muted:#b8c7d5;--dim:#8fa4b8;--gold:#c9a84c;--gold2:#e4c877;--teal:#24b8a1;--red:#ee8e84;--green:#85d69a}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(900px 550px at 85% -10%,rgba(36,97,156,.32),transparent 60%),radial-gradient(800px 520px at 0% 10%,rgba(14,159,110,.14),transparent 55%),var(--bg);color:var(--text);font:15px/1.5 Inter,Segoe UI,Arial,sans-serif}
header{padding:30px clamp(18px,5vw,64px) 16px;border-bottom:1px solid var(--line)} .brand{color:var(--teal);font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
h1{font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,4.3rem);line-height:.98;margin:.18em 0;color:white}h1 em{color:var(--gold2);font-style:normal}.sub{max-width:900px;color:var(--muted)}.flow{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:18px 0 4px}.flow span{background:#123052;border:1px solid #2c5c87;border-radius:999px;padding:5px 9px;font-size:.8rem}.flow i{color:var(--gold);font-style:normal}
main{max-width:1500px;margin:0 auto;padding:22px}.grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:18px}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 16px 45px rgba(0,0,0,.2)}h2{font-family:Georgia,serif;margin:0 0 10px;color:white;font-size:1.55rem}h3{color:white;margin:20px 0 8px}label{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold2);font-weight:700;margin:12px 0 5px}input,select,textarea{width:100%;padding:10px 11px;border-radius:10px;border:1px solid #335a80;background:#071527;color:white;font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:2px}button{border:0;border-radius:10px;padding:9px 13px;font-weight:800;cursor:pointer;background:var(--gold);color:#111827}button.secondary{background:#17385d;color:var(--text);border:1px solid var(--line)}button.small{padding:6px 9px;font-size:.8rem}button:disabled{opacity:.5;cursor:wait}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.status{padding:12px;border:1px solid var(--line);background:#071527;border-radius:10px;color:var(--muted);white-space:pre-wrap;min-height:52px}.ok{color:var(--green)}.err{color:var(--red)}.muted{color:var(--muted)}.hidden{display:none!important}.pill{font-size:.7rem;background:#17385d;padding:3px 8px;border-radius:999px;color:#aee8da;white-space:nowrap}.pill.gold{color:#ffe9a5}.pill.red{color:#ffc2bb}.pill.green{color:#aaf0c4}
.selectable{border:1px solid var(--line);border-radius:12px;padding:13px;margin:9px 0;background:#0a1b30;cursor:pointer}.selectable:hover{border-color:var(--teal)}.selectable.active{border-color:var(--gold);background:#122b4b}.item{border:1px solid var(--line);border-radius:12px;padding:13px;margin:9px 0;background:#0a1b30}.item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.item h4{margin:0;color:#fff}.workspace{display:grid;grid-template-columns:.9fr 1.2fr 1fr;gap:18px;align-items:start;margin-top:18px}.stack{display:grid;gap:18px}.messages{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:10px;background:#071527}.msg{padding:9px 10px;border-bottom:1px solid #1b3553}.msg:last-child{border-bottom:0}.msg .meta{font-size:.72rem;color:var(--dim)}.msg.agent{background:rgba(36,184,161,.06)}.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.proof div{border:1px solid var(--line);border-radius:12px;padding:14px;background:#0a1b30}.proof b{color:var(--gold2);display:block;margin-bottom:5px}footer{color:var(--muted);text-align:center;padding:28px}.empty{border:1px dashed var(--line);border-radius:12px;padding:14px;color:var(--muted)}
.shell{display:grid;grid-template-columns:320px minmax(0,1fr) 380px;gap:14px;align-items:start;margin-top:16px}
.rail,.roompane,.inspector{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 16px 45px rgba(0,0,0,.2)}
.rail,.inspector{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto}
.roompane{min-height:70vh;display:flex;flex-direction:column;gap:10px}
.roompane .messages{max-height:none;min-height:340px;flex:1}
.railsec{border-bottom:1px solid #1b3553;padding:10px 0 14px}.railsec:last-child{border-bottom:0}
.railhead h3{margin:0 0 6px}.createbox{border:1px dashed var(--line);border-radius:12px;padding:10px;margin-top:10px}
.createbox summary{cursor:pointer;color:var(--gold2);font-weight:800}
.roomhead h2{margin:0}.mentionbar{border:1px solid var(--line);background:#071527;border-radius:10px;padding:9px 11px;color:var(--muted);font-size:.9rem}
.composer{border-top:1px solid var(--line);padding-top:10px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.tab{background:#17385d;color:var(--text);border:1px solid var(--line);padding:7px 10px}
.tab.active{background:var(--gold);color:#111827}.insp-panel h3{margin-top:4px}
.appcard{border:1px solid var(--teal);border-radius:12px;padding:12px;background:#0a2233;margin:6px 0}
.boardcols{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,1fr);gap:10px;overflow-x:auto;padding-bottom:6px}
.boardcol{border:1px solid var(--line);border-radius:12px;padding:8px;background:#071527;min-height:80px}
.boardcol h5{margin:2px 0 8px;color:var(--gold2);text-transform:capitalize}
.rec{border:1px solid var(--line);border-radius:10px;padding:9px;margin:7px 0;background:#0a1b30}
.kv{font-size:.85rem;color:var(--muted)} .kv b{color:var(--text)}
table.rec-table{width:100%;border-collapse:collapse;font-size:.88rem} table.rec-table th,table.rec-table td{border-bottom:1px solid #1b3553;padding:6px;text-align:left;vertical-align:top}
details.createbox{margin:10px 0}
@media(max-width:1100px){.shell{grid-template-columns:1fr 1fr}.roompane{grid-column:1/-1;order:-1}.rail,.inspector{position:static;max-height:none}.workspace{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.proof{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.shell{grid-template-columns:1fr}}
@media(max-width:760px){.workspace,.proof{grid-template-columns:1fr}main{padding:14px}}
