:root{--paper: #f6f5f2;--surface: #ffffff;--sunken: #efeee9;--ink: #141414;--ink-2: #4a4a47;--ink-3: #8a8984;--rule: #e2e0da;--rule-strong: #c9c7bf;--focus: #141414;--ok: #2f6b3d;--warn: #9a5b12;--bad: #a3312a;--info: #2c4f87;--sans: "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--radius: 3px;--side: 232px;--shadow: 0 10px 30px rgba(20, 20, 20, .12);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper: #121212;--surface: #1b1b1a;--sunken: #0c0c0c;--ink: #ecebe6;--ink-2: #b4b2ab;--ink-3: #85847e;--rule: #2a2a28;--rule-strong: #3d3c39;--focus: #ecebe6;--ok: #79b487;--warn: #d69d4f;--bad: #e07a71;--info: #85a8e0;--shadow: 0 10px 30px rgba(0, 0, 0, .5);color-scheme:dark}}:root[data-theme=dark]{--paper: #121212;--surface: #1b1b1a;--sunken: #0c0c0c;--ink: #ecebe6;--ink-2: #b4b2ab;--ink-3: #85847e;--rule: #2a2a28;--rule-strong: #3d3c39;--focus: #ecebe6;--ok: #79b487;--warn: #d69d4f;--bad: #e07a71;--info: #85a8e0;--shadow: 0 10px 30px rgba(0, 0, 0, .5);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font:15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum"}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}button,input,select,textarea{font:inherit;color:inherit}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}h1,h2,h3,h4{margin:0;font-weight:500;letter-spacing:-.01em}p{margin:0}.mono{font-family:var(--mono);font-size:12px;letter-spacing:0}.muted{color:var(--ink-3)}.soft{color:var(--ink-2)}.label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-weight:500}.nowrap{white-space:nowrap}.grow{flex:1;min-width:0}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.stack{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.stack.tight{gap:6px}.stack.loose{gap:32px}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell{display:grid;grid-template-columns:var(--side) 1fr;min-height:100vh;min-height:100dvh}.side{position:sticky;top:0;height:100vh;height:100dvh;border-right:1px solid var(--rule);padding:22px 14px;display:flex;flex-direction:column;gap:28px}.brand{padding:0 8px;display:grid;gap:2px}.brand-mark{font-size:13px;font-weight:600;letter-spacing:.32em;text-transform:uppercase}.brand-sub{font-size:11px;color:var(--ink-3);letter-spacing:.04em}.nav{display:grid;gap:1px}.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);color:var(--ink-2)}.nav a:hover{background:var(--sunken);text-decoration:none;color:var(--ink)}.nav a.active{background:var(--ink);color:var(--paper)}.nav a .count{margin-left:auto;font-family:var(--mono);font-size:11px;min-width:18px;height:18px;display:grid;place-items:center;border-radius:9px;background:var(--info);color:#fff;padding:0 5px}.nav a svg{flex:none;opacity:.85}.nav-group{display:grid;gap:6px}.nav-group>.label{padding:0 8px}.side-foot{margin-top:auto;display:grid;gap:10px;font-size:13px}.side-foot .seg{justify-self:start;margin-left:8px}.nav .nav-btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);color:var(--ink-2)}.nav .nav-btn:hover{background:var(--sunken);color:var(--ink)}.main{min-width:0;padding:32px 40px 80px}.page{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.page>*,.stack>*,.section>*,.cols>*{min-width:0}.topbar{display:none}@media (max-width: 860px){.shell{grid-template-columns:1fr}.side{position:fixed;z-index:40;inset:0 auto 0 0;width:260px;background:var(--paper);transform:translate(-100%);transition:transform .18s ease}.side.open{transform:none;box-shadow:0 0 0 100vmax #00000040}.topbar{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--rule);padding:12px 16px}.main{padding:20px 16px 64px}}.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--ink)}.ph>.grow{flex:1 1 260px}.ph h1{font-size:30px;line-height:1.1;letter-spacing:-.02em}.ph .crumb{margin-bottom:8px;display:block}.section{display:grid;gap:12px}.section-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--rule)}.section-h h2{font-size:15px}.btn{display:inline-flex;align-items:center;gap:6px;justify-content:center;height:36px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--rule-strong);background:var(--surface);cursor:pointer;white-space:nowrap;font-size:14px;transition:border-color .12s,background .12s,opacity .12s}.btn:hover{border-color:var(--ink);text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn.primary:hover{opacity:.88}.btn.ghost{border-color:transparent;background:none;color:var(--ink-2)}.btn.ghost:hover{color:var(--ink);background:var(--sunken)}.btn.danger{color:var(--bad)}.btn.danger:hover{border-color:var(--bad)}.btn.sm{height:30px;padding:0 10px;font-size:13px}.link-btn{all:unset;cursor:pointer;color:var(--ink-2);font-size:12px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--rule-strong)}.link-btn:hover{color:var(--ink)}.link-btn.danger:hover{color:var(--bad)}.field{display:grid;gap:4px}.field>span{font-size:12px;color:var(--ink-2)}.input,.select,.textarea{width:100%;height:38px;padding:0 10px;border-radius:var(--radius);border:1px solid var(--rule-strong);background:var(--surface)}.textarea{height:auto;min-height:80px;padding:8px 10px;resize:vertical;line-height:1.5}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--ink)}.check{display:flex;gap:8px;align-items:center;font-size:13px;cursor:pointer}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 600px){.grid2,.grid3{grid-template-columns:1fr}}.error{color:var(--bad);font-size:13px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:0 12px 8px 0;border-bottom:1px solid var(--rule)}.table td{padding:10px 12px 10px 0;border-bottom:1px solid var(--rule);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--sunken)}.table-wrap{overflow-x:auto}.list{display:grid}.list>*{padding:10px 0;border-bottom:1px solid var(--rule)}.list>*:last-child{border-bottom:none}.tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap;color:var(--ink-2)}.tag:before{content:"";width:7px;height:7px;border-radius:50%;border:1.5px solid currentColor;flex:none}.tag.open{color:var(--ink-3)}.tag.submitted{color:var(--info)}.tag.submitted:before{background:currentColor}.tag.approved{color:var(--ok)}.tag.approved:before{background:currentColor}.tag.changes,.tag.late{color:var(--warn)}.tag.changes:before,.tag.late:before{background:currentColor}.tag.bad{color:var(--bad)}.chip{display:inline-block;font-size:11px;padding:1px 7px;border:1px solid var(--rule-strong);border-radius:99px;color:var(--ink-2);white-space:nowrap}.chip.solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}.meter{height:3px;background:var(--rule);border-radius:2px;overflow:hidden}.meter>i{display:block;height:100%;background:var(--ink)}.stages{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px}.stages button{all:unset;cursor:pointer;display:grid;gap:6px;font-size:11px;color:var(--ink-3)}.stages button:before{content:"";height:3px;background:var(--rule);border-radius:2px}.stages button.done:before{background:var(--ink-2)}.stages button.current{color:var(--ink);font-weight:500}.stages button.current:before{background:var(--ink)}.stages button:disabled{cursor:default}.stages button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 600px){.stages button:not(.current) span{visibility:hidden}.stages button.current span{overflow:visible}}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:24px 20px}.tile{display:grid;gap:10px}.tile:hover{text-decoration:none}.tile:hover .tile-title{text-decoration:underline;text-underline-offset:3px}.cover{aspect-ratio:1;background:var(--sunken);border:1px solid var(--rule);overflow:hidden;display:grid;place-items:center;color:var(--ink-3);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.cover img{width:100%;height:100%;object-fit:cover}.cover.round{border-radius:50%}.avatar{width:40px;height:40px;flex:none}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));border-top:1px solid var(--rule)}.stat{padding:14px 16px 14px 0;display:grid;gap:2px}.stat b{font-size:26px;font-weight:400;letter-spacing:-.02em}.cols{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;align-items:start}@media (max-width: 960px){.cols{grid-template-columns:minmax(0,1fr)}}.empty{padding:28px 0;color:var(--ink-3);font-size:13px}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.tabs a{padding:8px 0;margin-bottom:-1px;color:var(--ink-3);border-bottom:1.5px solid transparent;white-space:nowrap}.tabs a:hover{color:var(--ink);text-decoration:none}.tabs a.active{color:var(--ink);border-color:var(--ink)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0a0a0a6b;display:grid;place-items:start center;padding:8vh 16px 16px;overflow-y:auto}.modal{width:100%;max-width:520px;background:var(--paper);border:1px solid var(--rule-strong);border-radius:4px;box-shadow:0 20px 50px #0000002e}.modal.wide{max-width:720px}.modal-h{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--rule)}.modal-h h3{font-size:15px}.modal-b{padding:20px;display:grid;gap:14px}.modal-f{padding:14px 20px;border-top:1px solid var(--rule);display:flex;justify-content:flex-end;gap:8px}@media (max-width: 600px){.overlay{padding:0;place-items:end stretch}.modal{border-radius:10px 10px 0 0;max-height:92vh;overflow-y:auto}.modal-f{position:sticky;bottom:0;background:var(--paper);padding-bottom:max(14px,env(safe-area-inset-bottom))}}.drop{border:1px dashed var(--rule-strong);border-radius:var(--radius);padding:18px;text-align:center;color:var(--ink-3);font-size:13px;cursor:pointer;background:var(--surface)}.drop.over,.drop:hover{border-color:var(--ink);color:var(--ink)}.progress{display:grid;gap:4px;font-size:12px}.track{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center}.track .idx{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.track audio{width:100%;height:32px;margin-top:6px}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.thumb{display:grid;gap:6px;font-size:12px}.thumb .cover{aspect-ratio:1}.thumb.wide .cover{aspect-ratio:4 / 3}.file-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--ink-3)}.dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;padding:14px 0;border-bottom:1px solid var(--rule)}.dl:last-child{border-bottom:none}.dl-title{font-weight:500}.dl-feedback{grid-column:1 / -1;font-size:13px;padding:8px 10px;background:var(--sunken);border-left:2px solid var(--warn)}.dl-feedback.approved{border-color:var(--ok)}.dl-files{grid-column:1 / -1;display:grid;gap:4px;font-size:13px}.dl-actions{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.grid-table{width:100%;border-collapse:collapse;font-size:13px}.grid-table th{font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);text-align:left;padding:0 10px 8px;border-bottom:1px solid var(--ink);white-space:nowrap}.grid-table th:first-child,.grid-table td:first-child{padding-left:0}.grid-table td{padding:10px;border-bottom:1px solid var(--rule);white-space:nowrap}.grid-table td.cell{border-left:1px solid var(--rule)}.grid-table tr.band-row td{padding-top:22px;border-bottom:1px solid var(--rule-strong);font-weight:500}.comment{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid var(--rule)}.comment p{white-space:pre-wrap}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-box{width:100%;max-width:340px;display:grid;gap:28px}.auth-box .brand{padding:0}.auth-box .brand-mark{font-size:15px}.notice{padding:10px 12px;border:1px solid var(--rule-strong);background:var(--surface);font-size:13px}.kbd{font-family:var(--mono);font-size:11px;padding:1px 5px;border:1px solid var(--rule-strong);border-radius:3px}.btn svg,.link-btn svg{flex:none}.btn.danger-solid{background:var(--bad);border-color:var(--bad);color:#fff}.btn.danger-solid:hover{opacity:.88}.icon-btn{all:unset;box-sizing:border-box;cursor:pointer;width:32px;height:32px;border-radius:var(--radius);display:inline-grid;place-items:center;color:var(--ink-2)}.icon-btn:hover{background:var(--sunken);color:var(--ink)}.icon-btn:focus-visible{outline:2px solid var(--focus)}.menu{position:relative;display:inline-block}.menu-pop{position:absolute;right:0;top:calc(100% + 4px);z-index:50;min-width:180px;padding:4px;background:var(--surface);border:1px solid var(--rule-strong);border-radius:6px;box-shadow:var(--shadow);display:grid}.menu-pop button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:4px;font-size:14px;white-space:nowrap}.menu-pop button:hover,.menu-pop button:focus-visible{background:var(--sunken)}.menu-pop button.danger{color:var(--bad)}.toasts{position:fixed;z-index:200;left:50%;bottom:24px;transform:translate(-50%);display:grid;gap:8px;justify-items:center;pointer-events:none;width:max-content;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:6px;font-size:14px;background:var(--ink);color:var(--paper);box-shadow:var(--shadow);animation:toast-in .18s ease-out}.toast.error{background:var(--bad);color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.modal.confirm{max-width:420px}.modal.confirm h3{font-size:17px}.seg{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface)}.seg button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:4px;font-size:13px;color:var(--ink-2)}.seg button:hover{color:var(--ink)}.seg button.on{background:var(--ink);color:var(--paper)}.seg.icons button{padding:5px 8px}.drop-zone{position:relative}.drop-zone.dragging:after{content:"Drop to upload";position:fixed;top:12px;right:12px;bottom:12px;left:12px;z-index:90;display:grid;place-items:center;border:2px dashed var(--ink);border-radius:10px;background:color-mix(in srgb,var(--paper) 88%,transparent);font-size:20px;pointer-events:none}.tabbar{display:none}@media (max-width: 860px){.topbar{display:none}.tabbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;z-index:35;left:0;right:0;bottom:0;background:var(--paper);border-top:1px solid var(--rule);padding:4px 4px max(6px,env(safe-area-inset-bottom))}.tabbar a,.tabbar button{all:unset;cursor:pointer;display:grid;justify-items:center;gap:2px;padding:6px 0;font-size:11px;color:var(--ink-3);position:relative}.tabbar .active{color:var(--ink)}.tabbar .dot{position:absolute;top:4px;left:calc(50% + 8px);width:7px;height:7px;border-radius:50%;background:var(--info)}.main{padding-bottom:96px}.toasts{bottom:84px}}.empty .btn{margin-top:12px}.row-actions{display:flex;align-items:center;gap:4px;justify-content:flex-end}.dl{padding-left:14px;border-left:3px solid var(--rule)}.dl.s-submitted{border-left-color:var(--info)}.dl.s-changes{border-left-color:var(--warn)}.dl.s-approved{border-left-color:var(--ok)}.dl.s-approved .dl-title{color:var(--ink-2)}.dl-file{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius);background:var(--sunken);font-size:14px}.dl-file:hover{text-decoration:none;background:var(--rule)}@media (max-width: 700px){.hide-sm{display:none}}.seg{max-width:100%;overflow-x:auto;scrollbar-width:none}.seg .mono{opacity:.7;font-size:11px}.main:has(.chat){padding:0}.chat{display:grid;grid-template-columns:220px minmax(0,1fr);height:100vh;height:100dvh;min-height:0}.chat.has-thread{grid-template-columns:220px minmax(0,1fr) 380px}.chat-channels{border-right:1px solid var(--rule);padding:20px 10px;display:flex;flex-direction:column;gap:1px;overflow-y:auto}.chat-space{display:flex;align-items:center;gap:8px;padding:0 10px 14px;font-weight:500}.chat-channels button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:var(--radius);color:var(--ink-2)}.chat-channels button:hover{background:var(--sunken);color:var(--ink)}.chat-channels button.on{background:var(--sunken);color:var(--ink);font-weight:500}.chat-channels button.add{color:var(--ink-3);margin-top:6px}.badge{min-width:18px;height:18px;border-radius:9px;background:var(--info);color:#fff;font-size:11px;display:grid;place-items:center;padding:0 5px;font-family:var(--mono)}.chat-main,.chat-thread{display:flex;flex-direction:column;min-width:0;min-height:0}.chat-thread{border-left:1px solid var(--rule);background:var(--paper)}.chat-head{display:flex;align-items:center;gap:10px;padding:16px 24px;border-bottom:1px solid var(--rule)}.chat-title{font-size:18px;letter-spacing:-.01em}.chat-scroll{flex:1;overflow-y:auto;padding:12px 24px 8px}.thread-back{display:none}.day-divider{display:flex;align-items:center;gap:12px;margin:18px 0 8px;font-size:12px;color:var(--ink-3)}.day-divider:before,.day-divider:after{content:"";flex:1;height:1px;background:var(--rule)}.thread-divider{font-size:12px;color:var(--ink-3);border-bottom:1px solid var(--rule);padding:8px 0;margin-bottom:8px}.msg{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:6px 8px;margin:0 -8px;border-radius:6px}.msg:not(.compact){margin-top:8px}.msg:hover{background:var(--sunken)}.msg-gutter{display:flex;justify-content:center}.avatar-sm{width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-size:12px;font-weight:500;letter-spacing:.03em}.msg-time-hover{font-size:11px;color:var(--ink-3);font-family:var(--mono);opacity:0;padding-top:3px}.msg:hover .msg-time-hover{opacity:1}.msg-meta{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:2px}.msg-meta strong{font-weight:500;font-size:14px}.msg-text{white-space:pre-wrap;overflow-wrap:anywhere}.chat-link{text-decoration:underline;text-underline-offset:2px;color:var(--info)}.msg-actions{position:absolute;top:-14px;right:8px;display:none;gap:2px;padding:2px;background:var(--surface);border:1px solid var(--rule-strong);border-radius:6px;box-shadow:var(--shadow)}.msg:hover .msg-actions,.msg-actions:focus-within{display:flex}@media (hover: none){.msg:hover{background:none}.msg:hover .msg-actions{display:none}.msg.active{background:var(--sunken)}.msg.active .msg-actions{display:flex;position:static;grid-column:2;justify-self:start;margin-top:4px;box-shadow:none;animation:pop-in .14s var(--ease)}.msg-time-hover{opacity:1}.msg.compact .msg-time-hover{opacity:0}.msg.active .msg-time-hover{opacity:1}}.emoji-pop{display:flex;flex-wrap:wrap;width:196px;min-width:0}.emoji-pop button{font-size:18px;padding:4px 6px;justify-content:center}@media (hover: none),(max-width: 640px){.emoji-pop{position:fixed;left:10px;right:10px;top:auto;bottom:calc(var(--tabbar-h) + 10px);width:auto;flex-wrap:nowrap;justify-content:space-between;padding:6px;border-radius:14px;z-index:60;animation:sheet-in .18s var(--ease)}body.typing .emoji-pop{bottom:10px}.emoji-pop button{font-size:26px;padding:6px 4px;flex:1}}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.reaction{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:12px;border:1px solid var(--rule-strong);background:var(--surface);font-size:14px}.reaction span{font-size:12px;font-family:var(--mono);color:var(--ink-2)}.reaction.mine{border-color:var(--info);background:color-mix(in srgb,var(--info) 12%,var(--surface))}.reply-link{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:13px;color:var(--info);font-weight:500}.reply-link:hover{text-decoration:underline}.msg-attachments{display:grid;gap:6px;margin-top:6px;justify-items:start}.att-image img{max-width:min(360px,100%);max-height:280px;border-radius:6px;border:1px solid var(--rule)}.att-file{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface);max-width:420px;width:100%;font-size:14px}.att-file audio{width:100%;height:32px;margin-top:6px}.composer{padding:10px 24px 14px}.composer.dragging .composer-row{border-color:var(--ink);border-style:dashed}.composer-row{display:flex;align-items:flex-end;gap:6px;padding:6px;border:1px solid var(--rule-strong);border-radius:8px;background:var(--surface)}.composer-row:focus-within{border-color:var(--ink)}.composer-input{flex:1;border:none;outline:none;resize:none;background:none;padding:6px 4px;line-height:1.45;max-height:200px;font-size:15px}.composer-hint{font-size:11px;margin-top:4px}.pending{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.pending-file{display:inline-flex;align-items:center;gap:6px;max-width:260px;padding:2px 2px 2px 10px;font-size:13px;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface)}.pending-file.err{border-color:var(--bad);color:var(--bad)}@media (max-width: 1100px){.chat.has-thread{grid-template-columns:200px minmax(0,1fr)}.chat-thread{position:fixed;inset:0 0 0 auto;width:min(420px,100%);z-index:45;box-shadow:var(--shadow)}}@media (max-width: 860px){.chat,.chat.has-thread{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - var(--tabbar-h))}body.typing .chat{height:100dvh}.chat-channels{flex-direction:row;overflow-x:auto;padding:10px 12px;border-right:none;border-bottom:1px solid var(--rule);gap:4px}.chat-space{display:none}.chat-channels button{flex:none;border:1px solid var(--rule-strong);border-radius:99px;padding:5px 12px}.chat-channels button.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chat-channels button.add{margin-top:0}.chat-head,.chat-scroll,.composer{padding-left:14px;padding-right:14px}.chat-thread{inset:0 0 var(--tabbar-h) 0;width:100%;animation:sheet-in .22s ease-out}body.typing .chat-thread{bottom:0}.thread-back{display:inline-grid}.composer-hint{display:none}.main:has(.chat){padding-bottom:0}}:root{--tabbar-h: 0px;--ease: cubic-bezier(.2, .8, .2, 1)}html{-webkit-text-size-adjust:100%}*{-webkit-tap-highlight-color:transparent}a,button,.btn,input,select,textarea,label{touch-action:manipulation}.page,.chat-main{animation:page-in .22s var(--ease)}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}}.btn,.icon-btn,.seg button,.nav a,.tabbar a,.tabbar button,.reaction,.chat-channels button{transition:background-color .15s,color .15s,border-color .15s,transform .1s,opacity .15s}.btn:active:not(:disabled),.icon-btn:active,.reaction:active,.seg button:active{transform:scale(.96)}.tile{transition:transform .18s var(--ease)}.tile:active{transform:scale(.98)}.tile .cover img{transition:transform .4s var(--ease)}.tile:hover .cover img{transform:scale(1.03)}.overlay{animation:fade-in .15s ease-out}.modal{animation:pop-in .2s var(--ease)}.menu-pop{animation:pop-in .14s var(--ease);transform-origin:top right}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes sheet-in{0%{transform:translateY(24px);opacity:0}}.empty.loading{opacity:0;animation:fade-in .2s ease-out .35s forwards}.side-backdrop{display:none}@media (max-width: 860px){:root{--tabbar-h: calc(58px + env(safe-area-inset-bottom)) }.side{transition:transform .26s var(--ease);box-shadow:none}.side.open{box-shadow:var(--shadow)}.side-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#00000059;opacity:0;pointer-events:none;transition:opacity .26s var(--ease)}.side-backdrop.open{opacity:1;pointer-events:auto}.tabbar{height:var(--tabbar-h);align-items:start;padding-bottom:env(safe-area-inset-bottom)}.tabbar a.active svg{transform:translateY(-1px)}body.typing .tabbar{display:none}.modal{animation:sheet-in .24s var(--ease)}.main{padding-bottom:calc(var(--tabbar-h) + 32px)}.toasts{bottom:calc(var(--tabbar-h) + 12px)}}@media (pointer: coarse){.input,.select,.textarea,.composer-input,input,select,textarea{font-size:16px}.icon-btn{width:38px;height:38px}.btn.sm{height:34px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media (max-width: 640px){.rtable thead{display:none}.rtable,.rtable tbody{display:block}.rtable tr{display:flex;flex-wrap:wrap;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--rule);position:relative}.rtable tr:last-child{border-bottom:none}.rtable td{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;font-size:14px}.rtable td[data-label]:before{content:attr(data-label);color:var(--ink-3);font:12px var(--sans)}.rtable td.primary{order:-1;flex:1 1 100%;font-size:15px;font-weight:500;padding:0 84px 4px 0}.rtable td.actions{position:absolute;top:6px;right:0}.rtable tr.clickable:hover td{background:none}}@media (max-width: 640px){.task-form>*{flex:1 1 100%!important;width:100%!important;min-width:0!important}}.chat-channels,.tabs{scrollbar-width:none}.chat-channels::-webkit-scrollbar,.tabs::-webkit-scrollbar,.seg::-webkit-scrollbar{display:none}.hello{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--ink)}.hello h1{font-size:34px;line-height:1.1;letter-spacing:-.025em}.hello-summary{margin-top:10px;font-size:17px;color:var(--ink-2);max-width:60ch;line-height:1.45}.clock{text-align:right;flex:none}.clock-time{font-size:34px;font-weight:500;letter-spacing:-.025em;line-height:1.1;font-variant-numeric:tabular-nums}.clock-date{margin-top:10px;font-size:17px;color:var(--ink-2);line-height:1.45}@media (max-width: 640px){.hello{flex-direction:column;align-items:flex-start;gap:12px}.hello h1{font-size:27px}.hello-summary{font-size:16px;margin-top:8px}.clock{text-align:left;display:flex;align-items:baseline;gap:0;font-size:14px;color:var(--ink-2)}.clock-time{font-size:14px;font-weight:500;letter-spacing:0;color:var(--ink)}.clock-time:after{content:"·";margin:0 7px;color:var(--ink-3);font-weight:400}.clock-date{margin:0;font-size:14px}.hello.hs-ink .clock-time,.hello.hs-ink .clock-time:after{color:var(--accent-on)}}.glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.glance-card{position:relative;overflow:hidden;display:grid;gap:2px;padding:14px 16px;border:1px solid var(--rule);border-radius:8px;background:var(--surface);transition:border-color .15s,transform .15s var(--ease)}.glance-card:hover{text-decoration:none;border-color:var(--rule-strong)}.glance-card:active{transform:scale(.98)}.glance-card b{font-size:30px;font-weight:400;letter-spacing:-.03em;line-height:1.15}.glance-card .muted{font-size:13px}.glance-card.hot{border-color:var(--info)}.glance-card.hot b{color:var(--info)}.glance-card.release img{position:absolute;right:12px;top:12px;width:44px;height:44px;object-fit:cover;border-radius:6px;border:1px solid var(--rule)}.glance-card.release:has(img) .label,.glance-card.release:has(img) b{padding-right:52px}@media (max-width: 640px){.glance-card.release img{width:34px;height:34px;right:10px;top:10px}.glance-card.release:has(img) .label,.glance-card.release:has(img) b{padding-right:40px}}@media (max-width: 860px){.glance{grid-template-columns:repeat(2,minmax(0,1fr))}}.week-item{display:flex;align-items:center;gap:12px;padding-left:10px;border-left:3px solid var(--ev, var(--ink-3))}.week-item:hover{text-decoration:none;background:var(--sunken)}.week-when{display:grid;width:52px;flex:none;font-size:12px;color:var(--ink-3)}.week-when b{font-weight:500;color:var(--ink);font-size:13px}.k-release{--ev: #1d1d1b;--ev-on: #f6f5f2}.k-due{--ev: #b4690e;--ev-on: #fff}.k-gig{--ev: #2d62b0;--ev-on: #fff}.k-session{--ev: #2f7d4a;--ev-on: #fff}.k-meeting{--ev: #7350b4;--ev-on: #fff}.k-other{--ev: #6e6d68;--ev-on: #fff}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .k-release{--ev: #ecebe6;--ev-on: #121212}:root:not([data-theme=light]) .k-due{--ev: #e0a458;--ev-on: #1b1206}:root:not([data-theme=light]) .k-gig{--ev: #7aa5ea;--ev-on: #0b1526}:root:not([data-theme=light]) .k-session{--ev: #74c08f;--ev-on: #0b1a10}:root:not([data-theme=light]) .k-meeting{--ev: #b49ae8;--ev-on: #170f26}:root:not([data-theme=light]) .k-other{--ev: #a8a7a1;--ev-on: #151514}}:root[data-theme=dark] .k-release{--ev: #ecebe6;--ev-on: #121212}:root[data-theme=dark] .k-due{--ev: #e0a458;--ev-on: #1b1206}:root[data-theme=dark] .k-gig{--ev: #7aa5ea;--ev-on: #0b1526}:root[data-theme=dark] .k-session{--ev: #74c08f;--ev-on: #0b1a10}:root[data-theme=dark] .k-meeting{--ev: #b49ae8;--ev-on: #170f26}:root[data-theme=dark] .k-other{--ev: #a8a7a1;--ev-on: #151514}.cal-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--ink-2)}.cal-legend span{display:inline-flex;align-items:center;gap:6px}.cal-legend span:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--ev)}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.cal>div{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-height:112px;padding:6px;display:grid;align-content:start;gap:3px;min-width:0}.cal .dow{min-height:0;padding:8px 6px;font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em}.cal .day{position:relative;transition:background .12s}.cal .day:hover{background:color-mix(in srgb,var(--sunken) 60%,transparent)}.cal .out{background:var(--sunken)}.cal .out .num{color:var(--ink-3)}.cal .num{font-size:13px;color:var(--ink-2);justify-self:start;min-width:22px;height:22px;display:grid;place-items:center;border-radius:11px;padding:0 4px;font-variant-numeric:tabular-nums}.cal .today .num{background:var(--ink);color:var(--paper);font-weight:500}.cal .add{position:absolute;top:4px;right:4px;width:24px;height:24px;opacity:0;transition:opacity .12s}.cal .day:hover .add,.cal .add:focus-visible{opacity:1}.ev{all:unset;box-sizing:border-box;cursor:pointer;display:block;width:100%;font-size:12px;line-height:1.35;padding:2px 6px;border-left:2px solid var(--ev, var(--ink-3));background:var(--surface);border-radius:0 3px 3px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s}.ev:hover{background:color-mix(in srgb,var(--ev) 10%,var(--surface))}.ev.k-release{font-weight:500}.agenda{display:none}.agenda-day{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}.agenda-date{display:grid;justify-items:start;align-content:start;gap:2px;font-size:12px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.agenda-date b{font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.02em;text-transform:none}.agenda-day.today .agenda-date b{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}.agenda .ev{white-space:normal;padding:6px 10px;font-size:14px}@media (max-width: 700px){.cal{display:none}.agenda{display:block}}.accent-ink{--accent: var(--ink);--accent-on: var(--paper)}.accent-blue{--accent: #2d62b0;--accent-on: #fff}.accent-green{--accent: #2f7d4a;--accent-on: #fff}.accent-amber{--accent: #b4690e;--accent-on: #fff}.accent-red{--accent: #b23a30;--accent-on: #fff}.accent-purple{--accent: #7350b4;--accent-on: #fff}.accent-teal{--accent: #1f7a72;--accent-on: #fff}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .accent-blue{--accent: #7aa5ea;--accent-on: #0b1526}:root:not([data-theme=light]) .accent-green{--accent: #74c08f;--accent-on: #0b1a10}:root:not([data-theme=light]) .accent-amber{--accent: #e0a458;--accent-on: #1b1206}:root:not([data-theme=light]) .accent-red{--accent: #e88378;--accent-on: #240b08}:root:not([data-theme=light]) .accent-purple{--accent: #b49ae8;--accent-on: #170f26}:root:not([data-theme=light]) .accent-teal{--accent: #6cc6bc;--accent-on: #061a18}}:root[data-theme=dark] .accent-blue{--accent: #7aa5ea;--accent-on: #0b1526}:root[data-theme=dark] .accent-green{--accent: #74c08f;--accent-on: #0b1a10}:root[data-theme=dark] .accent-amber{--accent: #e0a458;--accent-on: #1b1206}:root[data-theme=dark] .accent-red{--accent: #e88378;--accent-on: #240b08}:root[data-theme=dark] .accent-purple{--accent: #b49ae8;--accent-on: #170f26}:root[data-theme=dark] .accent-teal{--accent: #6cc6bc;--accent-on: #061a18}.hello{position:relative}.hello-text,.hello .clock{position:relative;z-index:1}.hello-art{position:absolute;top:0;right:0;bottom:0;left:0;color:var(--accent);pointer-events:none;overflow:hidden}.hello-art svg{display:block}.hello-dot{color:var(--accent)}.hello:not(.hs-plain){overflow:hidden;border:1px solid var(--rule);border-radius:14px;padding:28px 28px 26px;background:var(--surface);min-height:168px}.hs-plain{border-bottom-color:var(--accent)}.hello.hs-ink{background:var(--accent);border-color:var(--accent)}.hello.hs-ink,.hello.hs-ink .hello-summary,.hello.hs-ink .clock-date,.hello.hs-ink .hello-dot{color:var(--accent-on)}.hello.hs-ink .hello-summary,.hello.hs-ink .clock-date{opacity:.8}.hello-img{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center}.hello-img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--surface) 70%,transparent)}.hello.hs-image{border-color:transparent}@media (max-width: 640px){.hello:not(.hs-plain){padding:20px 18px;min-height:0}}.looks{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}.look{all:unset;cursor:pointer;display:grid;gap:6px;font-size:13px;color:var(--ink-2);text-align:center}.look-thumb{position:relative;height:62px;border-radius:8px;border:1px solid var(--rule-strong);background:var(--surface);overflow:hidden;transition:box-shadow .15s,transform .1s}.look-thumb:before,.look-thumb:after{content:"";position:absolute;left:10px;height:5px;border-radius:3px;background:var(--ink);z-index:1}.look-thumb:before{top:16px;width:46%;opacity:.85}.look-thumb:after{top:27px;width:64%;height:3px;opacity:.35}.look-thumb.hs-ink{background:var(--accent);border-color:var(--accent)}.look-thumb.hs-ink:before,.look-thumb.hs-ink:after{background:var(--accent-on)}.look-thumb .hello-img{border-radius:8px}.look:hover .look-thumb{box-shadow:0 2px 10px #0000001a}.look:active .look-thumb{transform:scale(.97)}.look.on{color:var(--ink);font-weight:500}.look.on .look-thumb{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink)}.swatches{display:flex;flex-wrap:wrap;gap:10px}.swatch{all:unset;cursor:pointer;width:30px;height:30px;border-radius:50%;background:var(--accent);position:relative;transition:transform .1s}.swatch:active{transform:scale(.92)}.swatch.on{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--accent)}.swatch:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.hello.hs-waveform{padding-bottom:84px}.look-thumb.hs-waveform:before{top:12px}.look-thumb.hs-waveform:after{top:22px}@media (max-width: 640px){.hello.hs-waveform{padding-bottom:72px}}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--paper);display:grid;place-items:center;padding:24px;cursor:default;transition:opacity .6s var(--ease),visibility .6s}.splash.leaving{opacity:0;visibility:hidden}.splash-inner{display:grid;justify-items:center;gap:22px;text-align:center;transition:transform .6s var(--ease)}.splash.leaving .splash-inner{transform:translateY(-14px) scale(.985)}.splash-wave{display:flex;align-items:center;gap:4px;height:56px;color:var(--accent)}.splash-wave i{display:block;width:3px;height:56px;border-radius:2px;background:currentColor;opacity:.85;transform:scaleY(.04);animation:splash-bar .8s var(--ease) forwards,splash-play var(--d) ease-in-out infinite alternate}@keyframes splash-bar{to{transform:scaleY(var(--h))}}@keyframes splash-play{0%{transform:scaleY(var(--h))}to{transform:scaleY(calc(var(--h) * .3))}}.splash-mark{display:flex;flex-wrap:wrap;justify-content:center;gap:0 .9em;font-size:22px;font-weight:600;letter-spacing:.42em;padding-left:.42em}.splash-word{display:inline-flex}.splash-mark span span{display:inline-block;opacity:0;filter:blur(6px);transform:translateY(6px);animation:splash-letter .7s var(--ease) forwards}@keyframes splash-letter{to{opacity:1;filter:blur(0);transform:none}}.splash-hello{font-size:18px;color:var(--ink-2);opacity:0;transform:translateY(8px);animation:splash-up .7s var(--ease) 1.05s forwards}.splash-dot{color:var(--accent)}@keyframes splash-up{to{opacity:1;transform:none}}@media (max-width: 640px){.splash-mark{font-size:17px;letter-spacing:.34em;padding-left:.34em;gap:6px;flex-direction:column;align-items:center}.splash-hello{font-size:16px}.splash-wave,.splash-wave i{height:44px}}@media (prefers-reduced-motion: reduce){.splash-wave i{transform:scaleY(var(--h));animation:none}.splash-mark span span,.splash-hello{opacity:1;filter:none;transform:none}}.wf-bar{transform-box:fill-box;transform-origin:center;animation:wf-bounce 1.2s ease-in-out infinite alternate}@keyframes wf-bounce{0%{transform:scaleY(1)}to{transform:scaleY(.45)}}.vinyl-spin{animation:vinyl-spin 16s linear infinite}@keyframes vinyl-spin{to{transform:rotate(360deg)}}.grid-wave{opacity:.2;animation:grid-wave 4.5s ease-in-out infinite}@keyframes grid-wave{0%,to{opacity:.16}50%{opacity:.5}}.lyric-line{opacity:.09;animation-name:lyric;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes lyric{0%{opacity:.09}5%{opacity:.5}14%{opacity:.09}to{opacity:.09}}.plain-glide{position:absolute;bottom:0;left:0;height:2px;width:22%;background:var(--accent);border-radius:2px;animation:plain-glide 9s ease-in-out infinite}@keyframes plain-glide{0%{transform:translate(-100%);opacity:0}15%{opacity:1}50%{transform:translate(455%);opacity:1}60%,to{transform:translate(455%);opacity:0}}.ink-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 30%,color-mix(in srgb,var(--accent-on) 16%,transparent) 50%,transparent 70%);transform:translate(-100%);animation:ink-sheen 7s ease-in-out infinite}@keyframes ink-sheen{0%{transform:translate(-100%)}45%,to{transform:translate(100%)}}.hello-img{animation:ken-burns 26s ease-in-out infinite alternate}@keyframes ken-burns{0%{transform:scale(1)}to{transform:scale(1.08) translate(-1.5%,-1%)}}@media (prefers-reduced-motion: reduce){.wf-bar,.vinyl-spin,.grid-wave,.lyric-line,.plain-glide,.ink-sheen,.hello-img{animation:none!important}.plain-glide,.ink-sheen{display:none}}.k-todo{--ev: var(--ink-3);--ev-on: var(--paper)}.ev.k-todo{border-left-style:dashed;color:var(--ink-2)}.cal-legend .k-todo:before{background:none;border:1.5px dashed var(--ink-3)}.tabs .tab-count{margin-left:6px;font-family:var(--mono);font-size:11px;background:var(--info);color:#fff;border-radius:9px;padding:0 6px}.gig{display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:14px;padding:14px 0 14px 12px;border-bottom:1px solid var(--rule);border-left:3px solid var(--rule)}.gig:last-child{border-bottom:none}.gig.s-hold,.gig.s-enquiry{border-left-color:var(--warn)}.gig.s-confirmed{border-left-color:var(--ok)}.gig.s-announced{border-left-color:var(--info)}.gig.s-played{border-left-color:var(--rule-strong)}.gig.s-played .gig-venue,.gig.s-cancelled .gig-venue{color:var(--ink-3)}.gig.s-cancelled .gig-venue{text-decoration:line-through}.gig-date{display:grid;justify-items:start;align-content:start}.gig-date b{font-size:24px;font-weight:500;letter-spacing:-.02em;line-height:1.05}.gig-date span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);white-space:nowrap}.gig-venue{font-weight:500;font-size:15px}.gig-meta{font-size:13px}.gig-status{font-size:12px;padding:2px 9px;border-radius:99px;border:1px solid var(--rule-strong);color:var(--ink-2);white-space:nowrap}.gig-status.s-hold,.gig-status.s-enquiry,.gig-status.r-open{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.gig-status.s-confirmed,.gig-status.r-offered{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.gig-status.s-announced,.gig-status.r-replied{color:var(--info);border-color:color-mix(in srgb,var(--info) 40%,transparent)}.gig-status.s-cancelled,.gig-status.r-closed,.gig-status.s-played{color:var(--ink-3)}.gig-docs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.gig-doc{display:inline-flex;align-items:center;gap:6px;max-width:300px;padding:2px 2px 2px 8px;font-size:12px;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface);color:var(--ink-2)}.gig-doc a:not(.icon-btn){display:inline-flex;gap:5px;min-width:0;color:inherit}.gig-doc b{font-weight:500;color:var(--ink);white-space:nowrap}.gig-doc .icon-btn{width:24px;height:24px}.gig-doc.add{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;border:1px dashed var(--rule-strong);border-radius:6px;color:var(--ink-3);transition:color .12s,border-color .12s}.gig-doc.add:hover{color:var(--ink);border-color:var(--ink)}.request{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--rule);border-radius:10px;background:var(--surface)}.request.s-open{border-color:color-mix(in srgb,var(--warn) 45%,var(--rule))}.request.s-closed{opacity:.65}.request-reply{padding:8px 12px;background:var(--sunken);border-left:2px solid var(--info)}@media (max-width: 640px){.gig{grid-template-columns:56px minmax(0,1fr);padding-left:10px}.gig-date span{font-size:10px;letter-spacing:.04em}.gig>.row{grid-column:2;justify-self:start}.gig-date b{font-size:20px}}.who{display:flex;flex-wrap:wrap;gap:2px 14px;font-size:12px;color:var(--ink-3)}.who span{display:inline-flex;align-items:center;gap:4px}.who .who-ok{color:var(--ok)}.who .who-warn{color:var(--warn)}.people{display:grid;gap:1px}.person{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--rule)}.person:last-child{border-bottom:none}.person b{font-weight:500}.person-stats{display:flex;gap:12px;font-size:13px;color:var(--ink-2);white-space:nowrap}.person-stats .who-ok{color:var(--ok)}.person-stats .who-warn{color:var(--warn)}.timeline{display:grid}.tl-item{display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;padding:8px 0;position:relative;font-size:14px}.tl-item:hover{text-decoration:none;background:var(--sunken)}.tl-item:before{content:"";position:absolute;left:4px;top:0;bottom:0;width:1px;background:var(--rule)}.tl-dot{width:9px;height:9px;border-radius:50%;margin-top:6px;background:var(--ink-3);position:relative;z-index:1;box-shadow:0 0 0 3px var(--paper)}.tl-item.a-approved .tl-dot{background:var(--ok)}.tl-item.a-changes .tl-dot{background:var(--warn)}.tl-item.a-submitted .tl-dot{background:var(--info)}.tl-item b{font-weight:500}@media (max-width: 640px){.person{grid-template-columns:36px minmax(0,1fr)}.person-stats{grid-column:2}}.presence{margin-top:18px;padding:14px 10px 0;border-top:1px solid var(--rule);display:grid;gap:8px}.presence-list{display:grid;gap:2px}.presence-row{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:14px}.presence-row.offline{color:var(--ink-3)}.presence-avatar{position:relative;flex:none;width:28px;height:28px;border-radius:50%;background:var(--sunken);border:1px solid var(--rule-strong);display:grid;place-items:center;font-size:10px;font-weight:500;color:var(--ink-2)}.presence-avatar i{position:absolute;right:-2px;bottom:-2px;width:10px;height:10px;border-radius:50%;background:var(--rule-strong);box-shadow:0 0 0 2px var(--paper)}.presence-row.online .presence-avatar i,.presence-avatar.online i{background:#2fa35a}.presence-row.away .presence-avatar i{background:#d69d4f}.presence-row.online .presence-avatar i{animation:presence-pulse 2.4s ease-in-out infinite}@keyframes presence-pulse{0%,to{box-shadow:0 0 0 2px var(--paper)}50%{box-shadow:0 0 0 2px var(--paper),0 0 0 5px color-mix(in srgb,#2fa35a 25%,transparent)}}.presence-when{font-size:12px;color:var(--ink-3);white-space:nowrap}.presence-row.online .presence-when{color:#2fa35a}.presence-row.away .presence-when{color:var(--warn)}.presence-compact{display:none}.presence-summary{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);padding:4px 8px 4px 4px;border-radius:99px;border:1px solid var(--rule-strong)}.presence-stack{display:inline-flex}.presence-stack .presence-avatar{width:24px;height:24px;font-size:9px;margin-left:-6px;background:var(--surface)}.presence-stack .presence-avatar:first-child{margin-left:0}.presence-pop{width:260px;padding:10px 12px}@media (max-width: 860px){.chat-channels .presence{display:none}.presence-compact{display:inline-block}}@media (prefers-reduced-motion: reduce){.presence-row.online .presence-avatar i{animation:none}}.chat-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 640px){.chat-head .row>.chip{display:none}}
