.fui-row{align-items:center}.fui-col,.fui-row{display:flex;gap:12px}.fui-col{flex-direction:column}.fui-grow{flex:1;min-width:0}.fui-spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.fui-panel{background:var(--bg-elev);box-shadow:var(--shadow-1)}.fui-panel,.fui-panel-sunk{border:1px solid var(--line);border-radius:var(--r-md)}.fui-panel-sunk{background:var(--bg-sunk)}.fui-panel-alt{background:var(--panel-alt);border:1px solid var(--line);border-radius:var(--r-md)}.fui-panel-pad{padding:16px}.fui-panel-pad-lg{padding:22px}.fui-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-pill);font-size:11.5px;font-weight:500;line-height:1;background:var(--panel-alt);color:var(--fg-2);border:1px solid var(--line);white-space:nowrap}.fui-chip .dot{width:6px;height:6px;border-radius:var(--r-pill);background:currentColor}.fui-chip.fui-ghost{background:transparent}.fui-chip[data-tone=new]{color:var(--st-new);background:color-mix(in oklch,var(--st-new) 10%,transparent);border-color:color-mix(in oklch,var(--st-new) 22%,transparent)}.fui-chip[data-tone=design]{color:var(--st-design);background:color-mix(in oklch,var(--st-design) 10%,transparent);border-color:color-mix(in oklch,var(--st-design) 22%,transparent)}.fui-chip[data-tone=review]{color:var(--st-review);background:color-mix(in oklch,var(--st-review) 12%,transparent);border-color:color-mix(in oklch,var(--st-review) 22%,transparent)}.fui-chip[data-tone=casting]{color:var(--st-casting);background:color-mix(in oklch,var(--st-casting) 10%,transparent);border-color:color-mix(in oklch,var(--st-casting) 22%,transparent)}.fui-chip[data-tone=setting]{color:var(--st-setting);background:color-mix(in oklch,var(--st-setting) 10%,transparent);border-color:color-mix(in oklch,var(--st-setting) 22%,transparent)}.fui-chip[data-tone=qc]{color:var(--st-qc);background:color-mix(in oklch,var(--st-qc) 10%,transparent);border-color:color-mix(in oklch,var(--st-qc) 22%,transparent)}.fui-chip[data-tone=ready]{color:var(--st-ready);background:color-mix(in oklch,var(--st-ready) 12%,transparent);border-color:color-mix(in oklch,var(--st-ready) 22%,transparent)}.fui-chip[data-tone=shipped]{color:var(--st-shipped);background:color-mix(in oklch,var(--st-shipped) 10%,transparent);border-color:color-mix(in oklch,var(--st-shipped) 22%,transparent)}.fui-chip[data-tone=done]{color:var(--st-done);background:color-mix(in oklch,var(--st-done) 10%,transparent);border-color:color-mix(in oklch,var(--st-done) 22%,transparent)}.fui-chip[data-tone=issue]{color:var(--st-issue);background:color-mix(in oklch,var(--st-issue) 12%,transparent);border-color:color-mix(in oklch,var(--st-issue) 25%,transparent)}.fui-chip[data-tone=hold]{color:var(--st-hold);background:color-mix(in oklch,var(--st-hold) 12%,transparent);border-color:color-mix(in oklch,var(--st-hold) 25%,transparent)}.fui-prio-rush{color:var(--st-issue)}.fui-prio-vip{color:var(--st-setting)}.fui-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:var(--r-sm);font-size:13px;font-weight:500;font-family:var(--font);cursor:pointer;border:1px solid var(--line-strong);background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-1);transition:background .12s,border-color .12s,transform 80ms,box-shadow .12s}.fui-btn:hover{background:var(--panel-alt);border-color:var(--line-stronger)}.fui-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent)}.fui-btn:active{transform:translateY(.5px)}.fui-btn.fui-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.fui-btn.fui-primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}[data-theme=dark] .fui-btn.fui-primary{color:#0d1220}[data-theme=dark] .fui-btn.fui-primary:hover{background:var(--accent-ink)}.fui-btn.fui-accent{background:var(--accent);color:#fff;border-color:var(--accent)}[data-theme=dark] .fui-btn.fui-accent{color:#0d1220}.fui-btn.fui-ghost{background:transparent;border-color:transparent}.fui-btn.fui-ghost:hover{background:var(--panel-alt)}.fui-btn.fui-sm{padding:4px 9px;font-size:12px;border-radius:var(--r-sm)}.fui-btn.fui-lg{padding:10px 16px;font-size:14px}.fui-btn.fui-icon{padding:6px}.fui-btn[disabled]{opacity:.45;cursor:not-allowed}.fui-menu-item:focus-visible{box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent);outline:none}.fui-input,.fui-select,.fui-textarea{width:100%;padding:7px 10px;background:var(--bg-elev);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:13.5px;font-family:var(--font);color:var(--fg);transition:border-color .12s,box-shadow .12s}.fui-input:focus,.fui-select:focus,.fui-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent)}.fui-input::-moz-placeholder{color:var(--fg-4)}.fui-input::placeholder{color:var(--fg-4)}.fui-search{position:relative;display:flex;align-items:center}.fui-search .fui-input{padding-left:34px}.fui-search>svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--fg-3);pointer-events:none;width:14px;height:14px}.fui-kbd{align-items:center;gap:2px;padding:2px 5px;border:1px solid var(--line);border-radius:4px;font-family:var(--mono);font-size:10.5px;color:var(--fg-3);line-height:1}.fui-kbd,.fui-seg{display:inline-flex;background:var(--bg-sunk)}.fui-seg{padding:2px;border:1px solid var(--line);border-radius:var(--r-sm);gap:1px}.fui-seg button{padding:5px 11px;background:transparent;border:none;border-radius:calc(var(--r-sm) - 2px);font-size:12px;font-weight:500;color:var(--fg-3);cursor:pointer;font-family:var(--font);transition:background .1s,color .1s}.fui-seg button:hover{color:var(--fg)}.fui-seg button.on{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-1)}.fui-tabs{display:flex;gap:2px;border-bottom:1px solid var(--line)}.fui-tabs .fui-tab{padding:9px 14px;font-size:13px;color:var(--fg-3);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font)}.fui-tabs .fui-tab:hover{color:var(--fg)}.fui-tabs .fui-tab.fui-active{color:var(--fg);border-bottom-color:var(--fg)}.fui-table{width:100%;border-collapse:collapse}.fui-table th{text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-3);padding:10px 12px;background:var(--panel-alt);position:sticky;top:0;z-index:1}.fui-table td,.fui-table th{border-bottom:1px solid var(--line)}.fui-table td{padding:12px;vertical-align:middle;font-size:13.5px}.fui-table tr.fui-interactive:hover td{background:var(--panel-alt);cursor:pointer}.fui-table tr.fui-selected td{background:color-mix(in oklch,var(--accent) 8%,transparent)}.fui-avatar{width:26px;height:26px;border-radius:var(--r-pill);background:var(--accent-bg);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;border:1px solid var(--line);font-family:var(--font)}.fui-avatar.fui-lg{width:36px;height:36px;font-size:13px}.fui-ph{background:repeating-linear-gradient(135deg,var(--panel-alt) 0 8px,var(--bg-sunk) 8px 16px);border:1px solid var(--line);align-items:center;justify-content:center;color:var(--fg-4);font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;border-radius:var(--r-sm)}.fui-kpi,.fui-ph{position:relative;overflow:hidden;display:flex}.fui-kpi{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);padding:20px 22px;flex-direction:column;gap:10px;min-width:0}.fui-kpi .fui-v{font-family:var(--font-display);font-size:36px;line-height:1;letter-spacing:-.02em;font-weight:600;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:var(--fg)}.fui-kpi .fui-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:500}.fui-kpi .fui-delta,.fui-kpi .fui-label{font-family:var(--font-mono,"JetBrains Mono",monospace)}.fui-kpi .fui-delta{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--g);font-variant-numeric:tabular-nums}.fui-kpi .fui-delta.fui-neg{color:var(--st-issue)}.fui-kpi-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto}.fui-kpi-foot>.fui-spark{margin-top:0;flex:1;max-width:120px}.fui-spark{display:flex;align-items:flex-end;gap:2px;height:26px;margin-top:auto}.fui-spark>span{width:4px;flex:none;background:var(--accent);opacity:.4;border-radius:2px;min-height:2px}.fui-spark>span.fui-hi{opacity:.95;background:var(--accent)}.fui-tracker{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;border-radius:var(--r-pill);overflow:hidden}.fui-tracker .fui-seg-bar{height:6px;background:var(--bg-sunk)}.fui-tracker .fui-seg-bar.fui-done{background:var(--fg)}.fui-tracker .fui-seg-bar.fui-now{background:var(--accent)}.fui-pl-mini{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--fg-3)}.fui-pl-mini .fui-pl-dots{display:inline-flex;gap:3px}.fui-pl-mini .fui-pl-dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--bg-sunk)}.fui-pl-mini .fui-pl-dot.fui-done{background:var(--fg)}.fui-pl-mini .fui-pl-dot.fui-now{background:var(--accent)}.fui-timeline{position:relative;padding-left:20px}.fui-timeline:before{content:"";position:absolute;left:6px;top:4px;bottom:4px;width:1px;background:var(--line-strong)}.fui-timeline .fui-node{position:relative;padding:2px 0 16px}.fui-timeline .fui-node:before{content:"";position:absolute;left:-18px;top:6px;width:9px;height:9px;border-radius:var(--r-pill);background:var(--bg);border:1.5px solid var(--line-strong)}.fui-timeline .fui-node.fui-done:before{background:var(--fg);border-color:var(--fg)}.fui-timeline .fui-node.fui-now:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 20%,transparent)}.fui-sec-label{font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:10.5px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3);margin-bottom:8px}.fui-display{font-family:var(--font-display);letter-spacing:-.02em;font-weight:400;font-variant-numeric:tabular-nums}.fui-display-1{font-size:48px;line-height:1.05}.fui-display-2{font-size:32px;line-height:1.1}.fui-display-3{font-size:22px;line-height:1.2}.fui-italic{font-style:italic}.fui-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.fui-scrim{position:fixed;inset:0;background:color-mix(in oklch,var(--ink-900) 40%,transparent);backdrop-filter:blur(2px);z-index:40;opacity:0;pointer-events:none;transition:opacity .22s ease}.fui-scrim.fui-on{opacity:1;pointer-events:auto}.fui-drawer{position:fixed;top:0;bottom:0;right:0;width:min(720px,calc(100vw - 220px));background:var(--bg);border-left:1px solid var(--line);z-index:41;transform:translateX(100%);transition:transform .28s cubic-bezier(.22,1,.36,1);display:grid;grid-template-rows:auto 1fr;box-shadow:var(--shadow-3)}.fui-drawer.fui-on{transform:translateX(0)}.fui-scroll{overflow:auto}.fui-scroll::-webkit-scrollbar{width:8px;height:8px}.fui-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:8px}.fui-scroll::-webkit-scrollbar-track{background:transparent}.mono{font-family:var(--font-mono,"JetBrains Mono",monospace);font-variant-numeric:tabular-nums}.serif{font-family:var(--font-display)}.serif.it{font-style:italic}.eye{font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:500}.greet{font-family:var(--font-display);font-weight:600;font-size:28px;color:var(--fg);line-height:1.15;letter-spacing:-.02em}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:500;line-height:1.6;border:1px solid var(--line);white-space:nowrap;background:var(--panel-alt)}.chip:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.c-new{color:var(--st-new);background:color-mix(in oklch,var(--st-new) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-new) 25%,transparent)}.c-cad{color:var(--st-design);background:color-mix(in oklch,var(--st-design) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-design) 25%,transparent)}.c-review{color:var(--st-review);background:color-mix(in oklch,var(--st-review) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-review) 25%,transparent)}.c-casting{color:var(--st-casting);background:color-mix(in oklch,var(--st-casting) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-casting) 25%,transparent)}.c-setting{color:var(--st-setting);background:color-mix(in oklch,var(--st-setting) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-setting) 25%,transparent)}.c-qc{color:var(--st-qc);background:color-mix(in oklch,var(--st-qc) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-qc) 25%,transparent)}.c-ready{color:var(--st-ready);background:color-mix(in oklch,var(--st-ready) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-ready) 25%,transparent)}.c-shipped{color:var(--st-shipped);background:color-mix(in oklch,var(--st-shipped) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-shipped) 25%,transparent)}.c-done{color:var(--st-done);background:color-mix(in oklch,var(--st-done) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-done) 25%,transparent)}.c-issue{color:var(--st-issue);background:color-mix(in oklch,var(--st-issue) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-issue) 25%,transparent)}.c-hold{color:var(--st-hold);background:color-mix(in oklch,var(--st-hold) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--st-hold) 25%,transparent)}.c-gold{color:var(--accent);background:var(--accent-bg);border-color:color-mix(in oklch,var(--accent) 25%,transparent)}.btn,a.btn,button.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;font-weight:500;cursor:pointer;border:1px solid transparent;line-height:1;font-family:inherit;border-radius:var(--r-sm);transition:background .12s,border-color .12s,box-shadow .12s}.btn:focus-visible,a.btn:focus-visible,button.btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent)}.btn.btn-p,a.btn.btn-p,button.btn.btn-p{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow-1)}[data-theme=dark] .btn.btn-p,[data-theme=dark] a.btn.btn-p,[data-theme=dark] button.btn.btn-p{color:#0d1220}.btn.btn-s,a.btn.btn-s,button.btn.btn-s{background:var(--bg-elev);color:var(--fg);border-color:var(--line-strong);box-shadow:var(--shadow-1)}.btn.btn-g,a.btn.btn-g,button.btn.btn-g{background:transparent;color:var(--fg)}.btn.btn-p:hover,a.btn.btn-p:hover,button.btn.btn-p:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.btn-s:hover,a.btn.btn-s:hover,button.btn.btn-s:hover{background:var(--panel-alt);border-color:var(--line-stronger)}.btn.btn-g:hover,a.btn.btn-g:hover,button.btn.btn-g:hover{background:var(--panel-alt)}.fcard{padding:18px}.fcard,.kpi{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1)}.kpi{padding:20px 22px;display:flex;flex-direction:column;gap:10px;min-width:0}.kpi .lbl{font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-weight:500}.kpi .val{font-family:var(--font-display);font-size:36px;line-height:1;color:var(--fg);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.kpi .dlt{font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:11px;color:var(--g);font-variant-numeric:tabular-nums}.kpi .dlt.dn{color:var(--st-issue)}.spark{display:flex;align-items:flex-end;gap:2px;height:26px}.spark b{width:4px;opacity:.35;min-height:2px}.spark b,.spark b.hi{background:var(--accent)}.spark b.hi{opacity:.95}.urg-o{border-left:3px solid var(--st-issue)}.urg-t{border-left:3px solid var(--accent)}.urg-w{border-left:3px solid var(--st-hold)}.urg-l{border-left:3px solid var(--fg-3)}.tb-tab{font-size:13px;color:var(--fg-3);padding:18px 0;border-bottom:2px solid transparent;cursor:pointer;transition:color .18s,border-color .18s}.tb-tab.active{color:var(--fg);font-weight:500;border-bottom-color:var(--accent)}.seg{display:inline-flex;background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-sm);padding:2px;gap:2px}.seg button{border:none;background:transparent;padding:5px 12px;font-size:12px;color:var(--fg-3);cursor:pointer;font-family:inherit;border-radius:calc(var(--r-sm) - 2px);transition:background .12s,color .12s}.seg button:hover{color:var(--fg)}.seg button.active{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-1);font-weight:500}.fui-quiet-link{transition:text-decoration-color .12s}.fui-quiet-link:hover{text-decoration:underline;text-underline-offset:3px}.odsr-stack{padding:var(--sp-5) var(--sp-5) var(--sp-6);display:flex;flex-direction:column;flex-shrink:0}.odsr-group{padding:0}.odsr-group+.odsr-group{border-top:1px solid var(--line);margin-top:var(--sp-3);padding-top:var(--sp-3)}.odsr-eyebrow{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-3)}.odsr-eyebrow-title{font-size:var(--text-2xs);font-weight:500;text-transform:uppercase;letter-spacing:.14em}.odsr-eyebrow-action,.odsr-eyebrow-title{font-family:var(--mono,var(--font-mono));color:var(--fg-3)}.odsr-eyebrow-action{font-size:var(--text-xs);text-decoration:none;cursor:pointer;background:none;border:none;padding:0}.odsr-eyebrow-action:hover{color:var(--fg)}.odsr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));row-gap:12px;-moz-column-gap:20px;column-gap:20px}.odsr-item{min-width:0}.odsr-item.odsr-editable{cursor:pointer}.odsr-label{font-family:var(--mono,var(--font-mono));font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-3);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.odsr-value{font-size:var(--text-md);line-height:1.35;color:var(--fg);display:flex;align-items:baseline;gap:6px;min-width:0}.odsr-item.odsr-editable .odsr-value-text{border-bottom:1px solid transparent;transition:border-color .12s ease}.odsr-item.odsr-editable:hover .odsr-value-text{border-bottom-color:var(--line-stronger)}.odsr-value.odsr-empty{color:var(--fg-4)}.odsr-value.odsr-mono{font-family:var(--mono,var(--font-mono));font-variant-numeric:tabular-nums}.odsr-value>.odsr-value-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.odsr-pencil{opacity:0;transition:opacity .12s ease;color:var(--fg-4);font-size:10px;flex-shrink:0}.odsr-item:hover .odsr-pencil{opacity:1}.odsr-stone{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);padding:14px}.odsr-stone+.odsr-stone{margin-top:var(--sp-2)}.odsr-stone-head{display:flex;align-items:flex-start;gap:var(--sp-3)}.odsr-stone-glyph{flex-shrink:0;color:var(--fg-3);margin-top:2px}.odsr-stone-eyebrow{font-family:var(--mono,var(--font-mono));font-size:9.5px;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-4)}.odsr-stone-specline{font-size:var(--text-md);color:var(--fg);margin-top:2px}.odsr-stone-specline .odsr-sep{color:var(--fg-4)}.odsr-stone-cert{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:12px;color:var(--fg-2)}.odsr-stone-cert,.odsr-stone-lab{font-family:var(--mono,var(--font-mono))}.odsr-stone-lab{margin-top:3px;display:flex;align-items:baseline;gap:10px;font-size:var(--text-xs);color:var(--fg-3);cursor:default}.odsr-stone-lab-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.odsr-stone-lab-src{margin-left:auto;flex-shrink:0;font-family:var(--font,inherit);font-size:var(--text-2xs);color:var(--fg-4)}.odsr-copy-btn{background:none;border:none;padding:0 2px;cursor:pointer;color:var(--fg-4);font-size:11px;font-family:var(--mono,var(--font-mono));line-height:1}.odsr-copy-btn:hover{color:var(--fg)}.odsr-stone-toggle{background:none;border:none;padding:0;cursor:pointer;font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-4)}.odsr-stone-toggle:hover{color:var(--fg)}.odsr-stone-body{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line)}.odsr-hero{display:flex;align-items:center;gap:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line);margin-bottom:var(--sp-3)}.odsr-hero-thumb{-o-object-fit:cover;object-fit:cover;display:block}.odsr-hero-thumb,.odsr-hero-thumb-empty{width:64px;height:64px;flex-shrink:0;border-radius:var(--r-md);border:1px solid var(--line)}.odsr-hero-thumb-empty{background:var(--panel-alt);display:flex;align-items:center;justify-content:center}.odsr-hero-chips{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.odsr-chip{display:inline-flex;align-items:center;padding:2px 8px;background:var(--panel-alt);border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--text-xs);color:var(--fg-2);white-space:nowrap;text-transform:capitalize}.odsr-hero-dates{flex-shrink:0;display:flex;gap:var(--sp-4);text-align:right}.odsr-hero-date .odsr-label{margin-bottom:1px}.odsr-hero-date-value{font-family:var(--mono,var(--font-mono));font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--fg);white-space:nowrap}.odsr-hero-date-value.odsr-issue{color:var(--st-issue)}.odsr-hero-date-value.odsr-quiet{color:var(--fg-3)}.odsr-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono,var(--font-mono));font-size:var(--text-xs);color:var(--fg-2);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px;white-space:nowrap}.odsr-link:hover{color:var(--fg);border-bottom-color:var(--line-strong)}.odsr-row{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-sm);color:var(--fg-2);padding:6px 0;cursor:pointer}.odsr-tab-count{margin-left:5px;font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);color:var(--fg-4);font-variant-numeric:tabular-nums}.odsr-shell{background:var(--bg-elev);border-left:1px solid var(--line);border-radius:var(--r-xl) 0 0 var(--r-xl);box-shadow:var(--shadow-3)}@media (max-width:768px){.odsr-shell{border-radius:0}}.odsr-stock-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:var(--r-pill,999px);font-size:var(--text-2xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;text-decoration:none;border:1px solid var(--line);color:var(--fg-3);background:var(--panel-alt)}.odsr-stock-chip .odsr-stock-dot{width:6px;height:6px;border-radius:var(--r-pill,999px);background:currentColor;flex-shrink:0}a.odsr-stock-chip:hover{border-color:var(--line-stronger)}.odsr-stock-chip.odsr-stock-avail{color:var(--g);background:color-mix(in oklch,var(--g) 10%,transparent);border-color:color-mix(in oklch,var(--g) 25%,transparent)}.odsr-stock-chip.odsr-stock-assigned{color:var(--accent-ink);background:var(--accent-bg);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.odsr-stock-chip.odsr-stock-muted{color:var(--fg-3);background:var(--panel-alt);border-color:var(--line)}.odsr-suggest{margin-top:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-alt);padding:10px 12px}.odsr-suggest-row{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:var(--r-sm);background:var(--bg-elev);border:1px solid var(--line);font-size:var(--text-sm);transition:border-color .12s ease,box-shadow .12s ease}.odsr-suggest-row+.odsr-suggest-row{margin-top:6px}.odsr-suggest-row:hover{border-color:color-mix(in srgb,var(--accent) 35%,transparent);box-shadow:var(--shadow-1)}.odsr-suggest-thumb{width:28px;height:28px;border-radius:var(--r-sm);-o-object-fit:cover;object-fit:cover;border:1px solid var(--line);flex-shrink:0}.odsr-footer{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel-alt);flex-shrink:0;position:sticky;bottom:0;z-index:6;margin-top:auto}.odsr-footer-note{flex:1;padding:8px 0;font-size:var(--text-xs);color:var(--fg-3);gap:6px}.odsr-footer-note,.odsr-next{display:flex;align-items:center}.odsr-next{gap:8px;flex-wrap:wrap;padding:8px 16px;border-bottom:1px solid var(--line);font-size:var(--text-sm);flex-shrink:0}.odsr-next-dot{width:7px;height:7px;border-radius:var(--r-pill,999px);background:currentColor;flex-shrink:0}.odsr-next-title{font-weight:650;color:var(--fg);white-space:nowrap}.odsr-next-detail{color:var(--fg-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.odsr-next-cta{flex-shrink:0;margin-left:auto;padding:3px 11px;border-radius:var(--r-sm);border:1px solid;background:var(--bg-elev);color:inherit;font-family:inherit;font-size:var(--text-xs);font-weight:700;letter-spacing:.03em;cursor:pointer;transition:background .12s ease}.odsr-next-cta:hover{background:var(--panel-alt)}.odsr-next-urgent{color:var(--st-issue);background:color-mix(in oklch,var(--st-issue) 9%,var(--bg-elev));border-bottom-color:color-mix(in oklch,var(--st-issue) 25%,transparent)}.odsr-next-attention{color:var(--o);background:color-mix(in oklch,var(--o) 9%,var(--bg-elev));border-bottom-color:color-mix(in oklch,var(--o) 25%,transparent)}.odsr-next-info{color:var(--accent-ink);background:var(--accent-bg)}@media (max-width:640px){.odsr-next-title{white-space:normal}.odsr-next-cta{flex-basis:100%;margin-left:0;min-height:40px}}.odsr-track{padding:8px 16px 9px;border-bottom:1px solid var(--line);background:var(--bg-elev);flex-shrink:0}.odsr-track-full{display:flex;gap:6px}.odsr-track-cell{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.odsr-track-bar{display:block;height:4px;border-radius:var(--r-pill,999px);background:var(--bg-sunk)}.odsr-track-cell.odsr-done .odsr-track-bar{background:var(--fg)}.odsr-track-cell.odsr-now .odsr-track-bar{background:var(--accent)}.odsr-track-cell.odsr-now.odsr-late .odsr-track-bar{background:var(--st-issue)}.odsr-track-label{font-family:var(--mono,var(--font-mono));font-size:9.5px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.odsr-track-cell.odsr-done .odsr-track-label{color:var(--fg-3)}.odsr-track-cell.odsr-now .odsr-track-label{color:var(--accent-ink);font-weight:700}.odsr-track-cell.odsr-now.odsr-late .odsr-track-label{color:var(--st-issue)}.odsr-track-date{font-family:var(--mono,var(--font-mono));font-variant-numeric:tabular-nums;font-size:var(--text-2xs);color:var(--fg-3);white-space:nowrap;min-height:1em}.odsr-track-cell.odsr-now .odsr-track-date{color:var(--fg);font-weight:600}.odsr-track-cell.odsr-now.odsr-late .odsr-track-date{color:var(--st-issue)}.odsr-track-compact{display:none;align-items:center;gap:8px}.odsr-track-dots{display:inline-flex;gap:4px}.odsr-track-dot{width:7px;height:7px;border-radius:var(--r-pill,999px);background:var(--bg-sunk)}.odsr-track-dot.odsr-done{background:var(--fg)}.odsr-track-dot.odsr-now{background:var(--accent)}.odsr-track-dot.odsr-now.odsr-late{background:var(--st-issue)}@media (max-width:640px){.odsr-track-full{display:none}.odsr-track-compact{display:flex}.odsr-track-compact .odsr-track-label{font-size:var(--text-2xs);color:var(--fg-2)}}.odsr-add{color:var(--accent-ink);font-weight:600}.odsr-needs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));row-gap:12px;-moz-column-gap:20px;column-gap:20px;padding:10px 12px;margin-bottom:var(--sp-3);border:1px dashed color-mix(in oklch,var(--o) 45%,transparent);border-radius:var(--r-md);background:color-mix(in oklch,var(--o) 5%,transparent)}.odsr-client{display:flex;flex-direction:column;gap:8px}.odsr-client-id{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;min-width:0}.odsr-client-name{font-size:var(--text-md);font-weight:600;color:var(--fg);text-decoration:none}a.odsr-client-name:hover{text-decoration:underline}.odsr-client-email{font-family:var(--mono,var(--font-mono));font-size:var(--text-xs);color:var(--fg-3);min-width:0;overflow:hidden;text-overflow:ellipsis}.odsr-client-chips{display:flex;flex-wrap:wrap;gap:6px}.odsr-chip-promise{color:var(--accent-ink);background:var(--accent-bg);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.odsr-chip-ok{color:var(--g);background:color-mix(in oklch,var(--g) 8%,transparent);border-color:color-mix(in oklch,var(--g) 25%,transparent)}.odsr-client-skel{display:flex;flex-direction:column;gap:8px}.odsr-skel{display:block;height:12px;border-radius:var(--r-sm);background:var(--bg-sunk)}.odsr-quickmsg{margin-top:var(--sp-3);padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-alt)}.odsr-head-thumbs{display:flex;gap:4px;flex-shrink:0}.odsr-head-thumb{width:40px;height:40px;border-radius:var(--r-sm);border:1px solid var(--line);-o-object-fit:cover;object-fit:cover;display:block;cursor:pointer}.odsr-prevnext-label{font-family:var(--mono,var(--font-mono));font-variant-numeric:tabular-nums;font-size:var(--text-2xs);color:var(--fg-4);white-space:nowrap;flex-shrink:0}.odsr-cta-bar{display:none}@media (max-width:768px){.odsr-touch{min-width:44px;min-height:44px;justify-content:center}.odsr-cta-bar{display:flex;flex-shrink:0;gap:var(--sp-2);padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-elev)}.odsr-cta-bar>button{flex:1;min-height:44px;font-size:13px}
  /* !important: outranks [data-portal="vendor"] .vp-btn-* (0,2,0),
     same convention as the globals.css mobile overrides. */.odsr-cta-inline{display:none!important}}@media (max-width:480px){.odsr-hero{flex-wrap:wrap;row-gap:var(--sp-3)}.odsr-hero-dates{flex-basis:100%;justify-content:flex-start;text-align:left}.odsr-grid,.odsr-needs{grid-template-columns:1fr}}.odsr-head-mobile{display:none}@media (max-width:768px){.odsr-admin .odsr-footer,.odsr-admin .odsr-head-desktop{display:none!important}.odsr-head-mobile{display:flex}.odsr-shell-ghost{box-shadow:none!important}.odsr-head-mobile{flex-direction:column;gap:8px;flex-shrink:0;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;border-bottom:1px solid var(--line);background:var(--bg-elev);position:relative;touch-action:pan-y}.odsr-hm-row1{display:flex;align-items:center;gap:8px;min-width:0}.odsr-hm-icon{flex-shrink:0;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--fg-2);border-radius:var(--r-sm);cursor:pointer;padding:0}.odsr-hm-icon:disabled{opacity:.35;cursor:default}.odsr-hm-icon:active{background:var(--panel-alt)}.odsr-hm-name{flex:1;min-width:0;margin:0;font-family:var(--font-display,var(--font));font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--fg);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.odsr-hm-status{flex-shrink:0}.odsr-hm-row2{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.odsr-hm-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel-alt);color:var(--accent-ink);font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0}.odsr-hm-chip-quiet,.odsr-hm-meta{color:var(--fg-3)}.odsr-hm-meta{font-size:11px;white-space:nowrap;flex-shrink:0}.odsr-hm-nav{display:inline-flex;align-items:center;gap:2px;flex-shrink:0}.odsr-hm-photos{display:flex;gap:6px;overflow-x:auto}.odsr-hm-photo{width:56px;height:56px;flex-shrink:0;border-radius:var(--r-sm);border:1px solid var(--line);-o-object-fit:cover;object-fit:cover;display:block;cursor:pointer}.odsr-mobile-bar{flex-shrink:0;display:flex;align-items:stretch;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-elev)}.odsr-mb-btn{min-height:48px;border-radius:var(--r-md);font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);background:var(--panel-alt);color:var(--fg);padding:0 14px}.odsr-mb-primary{flex:1;min-width:0;background:var(--fg);color:var(--fg-inv,#fff);border-color:var(--fg)}.odsr-mb-secondary{flex:0 0 auto}.odsr-mb-more{flex:0 0 auto;width:52px;padding:0}.odsr-mb-note{flex:1;display:flex;align-items:center;justify-content:center;color:var(--fg-3);font-size:13px}.odsr-admin .odsr-grid,.odsr-admin .odsr-needs{grid-template-columns:1fr;row-gap:0}.odsr-admin .odsr-grid>.odsr-item,.odsr-admin .odsr-needs>.odsr-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--line)}.odsr-admin .odsr-grid>.odsr-item:last-child,.odsr-admin .odsr-needs>.odsr-item:last-child{border-bottom:none}.odsr-admin .odsr-grid>.odsr-item>.odsr-label,.odsr-admin .odsr-needs>.odsr-item>.odsr-label{margin-bottom:0;flex-shrink:0;max-width:45%}.odsr-admin .odsr-grid>.odsr-item>.odsr-value,.odsr-admin .odsr-needs>.odsr-item>.odsr-value{justify-content:flex-end;text-align:right;flex:1;min-width:0}.odsr-track-cta{margin-left:auto;flex-shrink:0}.odsr-track-cta-btn{border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-ink);background:var(--accent-bg);border-radius:var(--r-sm);padding:2px 10px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.odsr-admin [data-section=cad-review] img{max-height:50vh;height:auto}}.odsr-group-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0;border:none;background:transparent;cursor:pointer;text-align:left}.odsr-group-toggle-title{font-family:var(--mono,var(--font-mono));font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--fg-2)}.odsr-group-toggle-hint{font-size:11px;color:var(--fg-4)}.odsr-group-chev{margin-left:auto;color:var(--fg-3);display:inline-flex;transition:transform .16s ease}.odsr-group-chev.odsr-open{transform:rotate(180deg)}.odsr-group-body{padding-bottom:10px}@media (prefers-reduced-motion:reduce){.odsr-group-chev{transition:none}}.odsr-sheet-scrim{position:fixed;inset:0;z-index:600;background:color-mix(in oklch,var(--fg) 55%,transparent);display:flex;align-items:flex-end;justify-content:center}.odsr-sheet{width:100%;max-width:640px;background:var(--bg-elev);border-radius:var(--r-xl) var(--r-xl) 0 0;border-top:1px solid var(--line);box-shadow:var(--shadow-3);padding:8px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:4px;animation:odsrSheetUp .2s cubic-bezier(.16,1,.3,1)}@keyframes odsrSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.odsr-sheet{animation:none}}.odsr-sheet-grip{width:40px;height:4px;border-radius:999px;background:var(--line-strong,var(--line));margin:6px auto 10px}.odsr-sheet-title{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);padding:0 4px 6px}.odsr-sheet-list{display:flex;flex-direction:column}.odsr-sheet-row{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 6px;width:100%;border:none;background:transparent;color:var(--fg);font-size:15px;text-align:left;cursor:pointer;border-radius:var(--r-sm)}.odsr-sheet-row:active{background:var(--panel-alt)}.odsr-sheet-row:disabled{opacity:.4;cursor:default}.odsr-sheet-ico{display:inline-flex;color:var(--fg-3);flex-shrink:0}.odsr-sheet-danger,.odsr-sheet-danger .odsr-sheet-ico{color:var(--st-issue)}.odsr-sheet-cancel{margin-top:8px;min-height:48px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--panel-alt);color:var(--fg-2);font-size:15px;font-weight:600;cursor:pointer}.odsr-editsheet{gap:10px}.odsr-editsheet-label{font-size:16px;font-weight:600;color:var(--fg);padding:0 2px}.odsr-editsheet-input{width:100%;font-size:16px}.odsr-editsheet-actions{display:flex;gap:10px;margin-top:6px}.odsr-editsheet-cancel,.odsr-editsheet-save{flex:1;min-height:48px;border-radius:var(--r-md);font-size:15px;font-weight:600;cursor:pointer}.odsr-editsheet-cancel{border:1px solid var(--line);background:var(--panel-alt);color:var(--fg-2)}.odsr-editsheet-save{border:1px solid var(--fg);background:var(--fg);color:var(--fg-inv,#fff)}.odsr-editsheet-cancel:disabled,.odsr-editsheet-save:disabled{opacity:.5;cursor:default}.drq-board{display:flex;align-items:flex-start;gap:var(--sp-3);overflow-x:auto;padding-bottom:var(--sp-3)}.drq-col{flex:0 0 264px;width:264px;min-width:0}.drq-col-head{display:flex;align-items:baseline;gap:8px;padding:0 2px 8px}.drq-col-title{font-size:12px;font-weight:600;color:var(--fg-2)}.drq-col-count{font-size:var(--text-2xs);font-weight:500;color:var(--fg-3);font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:var(--r-pill);background:var(--panel-alt);border:1px solid var(--line)}.drq-col-body{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0;padding:var(--sp-2);background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-md)}.drq-col-empty{padding:2px 8px;text-align:center;font-size:var(--text-xs);line-height:1.4;color:var(--fg-4)}.drq-card{display:flex;gap:10px;width:100%;min-width:0;overflow:hidden;text-align:left;padding:10px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1);cursor:pointer;font-family:inherit;color:inherit;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.drq-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2);transform:translateY(-1px)}.drq-card:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent)}.drq-card-thumb{width:42px;height:42px;flex-shrink:0;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel-alt);overflow:hidden;display:flex;align-items:center;justify-content:center;color:color-mix(in oklch,var(--accent) 55%,var(--fg-4))}.drq-card-thumb img,.drq-card-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.drq-card-main{flex:1;min-width:0}.drq-card-title{font-size:var(--text-sm);font-weight:600;color:var(--fg);line-height:1.3}.drq-card-client,.drq-card-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drq-card-client{font-size:var(--text-xs);color:var(--fg-3);margin-top:1px}.drq-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:7px}.drq-card-age{font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);color:var(--fg-4);font-variant-numeric:tabular-nums;white-space:nowrap}.drq-card-age.drq-stale{color:var(--st-hold)}.drq-card-deliv{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);color:var(--fg-3);font-variant-numeric:tabular-nums;white-space:nowrap}.drq-row-thumb .drq-card-thumb{width:32px;height:32px;border-radius:var(--r-sm)}.drq-cell-title{max-width:280px;min-width:0;font-weight:600;color:var(--fg)}.drq-cell-client,.drq-cell-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drq-cell-client{max-width:200px;color:var(--fg-2)}.drq-overlay{position:fixed;inset:0;background:color-mix(in oklch,var(--fg) 38%,transparent);z-index:60;animation:drqFade .18s ease}.drq-drawer{position:fixed;top:0;right:0;bottom:0;width:min(620px,100vw);background:var(--bg-elev);border-left:1px solid var(--line);border-radius:var(--r-xl) 0 0 var(--r-xl);box-shadow:var(--shadow-2);z-index:61;display:flex;flex-direction:column;overflow:hidden;animation:drqSlide .24s cubic-bezier(.22,1,.36,1)}@keyframes drqFade{0%{opacity:0}to{opacity:1}}@keyframes drqSlide{0%{transform:translateX(24px);opacity:0}to{transform:translateX(0);opacity:1}}@media (prefers-reduced-motion:reduce){.drq-drawer,.drq-overlay{animation:none}}.drq-drawer-head{padding:var(--sp-4) var(--sp-5) var(--sp-3);border-bottom:1px solid var(--line)}.drq-drawer-eyebrow{font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3)}.drq-drawer-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;letter-spacing:-.015em;color:var(--fg);margin:2px 0 0;line-height:1.2}.drq-drawer-body{flex:1;overflow-y:auto}.drq-steps{display:flex;gap:6px;flex-wrap:wrap}.drq-step{padding:5px 11px;border-radius:var(--r-sm);background:var(--bg-elev);border:1px solid var(--line);color:var(--fg-2);font-size:var(--text-xs);font-weight:500;font-family:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease}.drq-step:hover:not(:disabled){background:var(--panel-alt);border-color:var(--line-strong)}.drq-step:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent)}.drq-step:disabled{cursor:default}.drq-step.drq-on{color:var(--drq-step-tone,var(--fg));background:color-mix(in oklch,var(--drq-step-tone,var(--fg-3)) 10%,var(--bg-elev));border-color:color-mix(in oklch,var(--drq-step-tone,var(--fg-3)) 28%,transparent)}.drq-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:var(--sp-2)}.drq-media-tile{display:block;aspect-ratio:1;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel-alt);overflow:hidden;position:relative}.drq-media-tile:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 25%,transparent)}.drq-media-tile img,.drq-media-tile video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.drq-media-tag{position:absolute;bottom:4px;right:4px;font-family:var(--mono,var(--font-mono));font-size:9px;letter-spacing:.08em;padding:1px 5px;border-radius:3px;background:color-mix(in oklch,var(--fg) 78%,transparent);color:var(--fg-inv)}.drq-upload{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:var(--r-sm);border:1px dashed var(--line-strong);background:transparent;color:var(--fg-2);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.drq-upload:hover{background:var(--panel-alt)}.drq-upload.drq-busy{opacity:.55;cursor:wait}.drq-rev{padding:10px 12px;border-radius:var(--r-sm);background:color-mix(in oklch,var(--st-issue) 5%,var(--bg-elev));border:1px solid color-mix(in oklch,var(--st-issue) 20%,transparent)}.drq-rev+.drq-rev{margin-top:var(--sp-2)}.drq-rev-note{font-size:var(--text-sm);color:var(--fg);line-height:1.5;white-space:pre-wrap}.drq-rev-meta{margin-top:6px;font-family:var(--mono,var(--font-mono));font-size:var(--text-2xs);letter-spacing:.04em;color:var(--fg-3)}.drq-error{padding:9px 12px;border-radius:var(--r-sm);background:color-mix(in oklch,var(--st-issue) 8%,var(--bg-elev));border:1px solid color-mix(in oklch,var(--st-issue) 28%,transparent);color:var(--st-issue);font-size:var(--text-sm)}@media (max-width:700px){.drq-col{flex-basis:240px;width:240px}.drq-drawer{border-radius:0}}