:root{--bg: #f6f7f9;--surface: #ffffff;--text: #1d2330;--muted: #5d6676;--border: #dde1e7;--primary: #0072b2;--primary-text: #ffffff;--danger: #b0420a;--ok: #007a5a;--hand: #e69f00;--idle: #8a6d00;--focus: #0a5fd6;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #14171c;--surface: #1d2129;--text: #e8eaee;--muted: #a0a8b6;--border: #2f3542;--primary: #56b4e9;--primary-text: #0b1520;--danger: #ff8a5c;--ok: #3ccf9e;--hand: #f0b429;--idle: #e0c85a;--focus: #8ab4ff}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{background:var(--primary);color:var(--primary-text);border:1px solid transparent;padding:6px 12px;border-radius:6px;cursor:pointer}a.button{display:inline-block;text-align:center;text-decoration:none;padding:6px 12px;border-radius:6px;border:1px solid var(--border);color:var(--text)}button.secondary{background:transparent;color:var(--text);border-color:var(--border)}button.danger{background:transparent;color:var(--danger);border-color:var(--danger)}button.link{background:none;color:var(--primary);padding:0;border:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input,select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 8px}label{display:flex;flex-direction:column;gap:4px;font-size:.9rem}code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.9em}.code-big{font-size:1.15em;font-weight:700;letter-spacing:.08em}.topbar{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;gap:10px;align-items:center}.logo{color:var(--primary);font-size:1.4rem}.muted{color:var(--muted);font-size:.9rem}.small{font-size:.8rem}.error{color:var(--danger)}.ok{color:var(--ok)}.row{display:flex;gap:8px;align-items:center}.row label{flex-direction:row;align-items:center}.wrap{flex-wrap:wrap;align-items:flex-end}.grow{flex:1}.center{display:grid;place-items:center;min-height:70vh;padding:16px}.page{max-width:1300px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px}.login{width:min(380px,100%);display:flex;flex-direction:column;gap:12px}.login h1{margin:0 0 8px}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.list-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid var(--border);border-radius:8px}.session-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.session-head h1{margin:4px 0}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs button{background:transparent;color:var(--text);border:1px solid var(--border)}.tabs button.active{background:var(--primary);color:var(--primary-text)}.count{margin-left:6px;background:var(--hand);color:#000;border-radius:10px;padding:0 7px;font-size:.8rem}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:8px;border-bottom:1px solid var(--border);vertical-align:top}.badge{display:inline-flex;gap:4px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:1px 8px;font-size:.8rem}.st-online{color:var(--ok)}.st-error{color:var(--danger)}.st-hand{color:var(--hand)}.st-idle{color:var(--idle)}.st-offline{color:var(--muted)}.st-pending{color:var(--primary)}.mosaic{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.tile{border:2px solid var(--border);border-radius:8px;padding:8px;background:var(--bg)}.tile.st-error{border-color:var(--danger)}.tile.st-hand{border-color:var(--hand)}.tile header{margin-bottom:6px}pre.code{margin:0;max-height:280px;overflow:auto;font-size:11px;line-height:1.35;background:var(--surface);border-radius:6px;padding:6px}pre.code.big{max-height:60vh;font-size:13px;margin-top:12px;white-space:pre}pre.code .ln{display:inline-block;width:3em;color:var(--muted);-webkit-user-select:none;user-select:none}pre.code .cursor-line{background:color-mix(in srgb,var(--hand) 25%,transparent)}.chat{display:flex;flex-direction:column;gap:10px;height:60vh}.messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:8px}.msg{padding:6px 10px;border-radius:8px;border:1px solid var(--border);max-width:80%}.msg.mine{align-self:flex-end;background:color-mix(in srgb,var(--primary) 12%,transparent)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
