:root{--accent:#c2410c;--accent-fixed:#c2410c;--accent-ink:#fff;--bg:#f5f4f0;--surface:#fff;--surface-2:#f1efe9;--line:#e6e3db;--line-2:#eeebe4;--ink:#1f2023;--ink-2:#3f4045;--ink-3:#5f6066;--field:#fff;--fieldline:#d8d5cc;--hover:#fafaf8;--chip-bg:#ecebe8;--track:#e6e3db;--shadow:#1f202314;--detail:#fbfaf7;--accent-text:var(--accent);--accent-soft:#fff1e6;--warn-bg:#fff4e5;--warn-line:#f5c98a;--warn-ink:#6b3e0a;--ok-bg:#ecfdf3;--ok-ink:#166534;--ok:#166534;--ok-soft:#dcfce7;--warn:#92400e;--warn-soft:#fef3c7;--bad:#991b1b;--bad-soft:#fee2e2;--info:#1e40af;--info-soft:#dbeafe;--vio:#5b21b6;--vio-soft:#ede9fe;--teal:#115e59;--teal-soft:#ccfbf1;--mute-soft:#f1f5f9;--scrim:#1415178c;--f-display:var(--font-display), "Arial Narrow", system-ui, sans-serif;--f-body:var(--font-body), system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:var(--font-mono), ui-monospace, Menlo, Consolas, monospace;--r:12px;--chip-h:36px;--ease:cubic-bezier(.2, 0, 0, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#161719;--surface:#1f2023;--surface-2:#26272b;--line:#2e3034;--line-2:#2a2b2f;--ink:#ededea;--ink-2:#c8c8cc;--ink-3:#a0a0a6;--field:#26272b;--fieldline:#3a3c41;--hover:#25262a;--chip-bg:#2e3034;--track:#34363b;--shadow:#00000059;--detail:#232427;--accent-text:color-mix(in srgb, var(--accent) 55%, #fff);--accent-soft:#2e1d14;--warn-bg:#2b2116;--warn-line:#5c4220;--warn-ink:#f5c98a;--ok-bg:#15291d;--ok-ink:#86efac;--ok:#86efac;--ok-soft:#16a34a33;--warn:#fcd34d;--warn-soft:#d9770638;--bad:#fca5a5;--bad-soft:#dc262638;--info:#93c5fd;--info-soft:#2563eb38;--vio:#c4b5fd;--vio-soft:#7c3aed40;--teal:#5eead4;--teal-soft:#0d948838;--mute-soft:#2e3034;--scrim:#000000a6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#161719;--surface:#1f2023;--surface-2:#26272b;--line:#2e3034;--line-2:#2a2b2f;--ink:#ededea;--ink-2:#c8c8cc;--ink-3:#a0a0a6;--field:#26272b;--fieldline:#3a3c41;--hover:#25262a;--chip-bg:#2e3034;--track:#34363b;--shadow:#00000059;--detail:#232427;--accent-text:color-mix(in srgb, var(--accent) 55%, #fff);--accent-soft:#2e1d14;--warn-bg:#2b2116;--warn-line:#5c4220;--warn-ink:#f5c98a;--ok-bg:#15291d;--ok-ink:#86efac;--ok:#86efac;--ok-soft:#16a34a33;--warn:#fcd34d;--warn-soft:#d9770638;--bad:#fca5a5;--bad-soft:#dc262638;--info:#93c5fd;--info-soft:#2563eb38;--vio:#c4b5fd;--vio-soft:#7c3aed40;--teal:#5eead4;--teal-soft:#0d948838;--mute-soft:#2e3034;--scrim:#000000a6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);margin:0;font-size:15px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:inherit}h1{font-family:var(--f-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(26px,4vw,34px);font-weight:800;line-height:1.1}h2{font-family:var(--f-display);margin:0;font-size:19px;font-weight:600}h3{margin:0;font-size:15px;font-weight:600}main{padding-block:28px 60px}[hidden]{display:none!important}.wrap{max-width:1200px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.mono{font-family:var(--f-mono);font-size:.86em}.sub{color:var(--ink-2);margin-top:4px}.mini{color:var(--ink-3);font-size:12.5px}.btn{border:1px solid var(--fieldline);background:var(--field);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-weight:500;text-decoration:none;transition:transform .12s,box-shadow .18s,border-color .15s;display:inline-flex}.btn:hover{border-color:var(--ink-3)}.btn:not(:disabled):hover{box-shadow:0 6px 16px var(--shadow);transform:translateY(-1px)}.btn:not(:disabled):active{box-shadow:none;transform:scale(.97)}.btn.primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}.btn.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.btn.danger{color:var(--bad);border-color:var(--bad)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.sm{padding:5px 10px;font-size:13px}.chip{height:var(--chip-h);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-width:0;max-width:100%;padding:0 12px;font-size:13px;display:inline-flex}.chip>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chip input{accent-color:var(--accent);margin:0}.pill{white-space:nowrap;background:var(--pill-bg);height:24px;color:var(--pill-ink);box-shadow:inset 0 0 0 var(--pill-ring-w,0) var(--pill-ring,transparent);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.st-awaiting{--pill-bg:#ffedd5;--pill-ink:#9a3412}.st-uploading{--pill-bg:var(--info-soft);--pill-ink:var(--info)}.st-attention{--pill-bg:var(--bad-soft);--pill-ink:var(--bad)}.st-uploaded{--pill-bg:var(--ok-soft);--pill-ink:var(--ok)}.st-editor{--pill-bg:var(--warn-soft);--pill-ink:var(--warn)}.st-complete{--pill-bg:var(--teal-soft);--pill-ink:var(--teal)}.st-qc{--pill-bg:var(--vio-soft);--pill-ink:var(--vio)}.st-gallery{--pill-bg:transparent;--pill-ink:var(--ok);--pill-ring:#16a34a;--pill-ring-w:1.5px}.st-client{--pill-bg:transparent;--pill-ink:var(--warn);--pill-ring:#d97706;--pill-ring-w:1.5px}.st-scheduled{--pill-bg:transparent;--pill-ink:#475569;--pill-ring:#cbd5e1;--pill-ring-w:1.5px}.st-delivered{--pill-bg:var(--mute-soft);--pill-ink:#475569}.st-cancelled{--pill-bg:var(--mute-soft);--pill-ink:var(--ink-3);text-decoration:line-through}.st-custom{--pill-bg:var(--surface-2);--pill-ink:var(--ink-2)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .st-awaiting{--pill-bg:#ea580c33;--pill-ink:#fdba74}:root:not([data-theme=light]) .st-gallery{--pill-ring:#22c55e}:root:not([data-theme=light]) .st-scheduled{--pill-ink:#cbd5e1;--pill-ring:#52525b}:root:not([data-theme=light]) .st-delivered{--pill-ink:#c8c8cc}}:root[data-theme=dark] .st-awaiting{--pill-bg:#ea580c33;--pill-ink:#fdba74}:root[data-theme=dark] .st-gallery{--pill-ring:#22c55e}:root[data-theme=dark] .st-scheduled{--pill-ink:#cbd5e1;--pill-ring:#52525b}:root[data-theme=dark] .st-delivered{--pill-ink:#c8c8cc}.head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px}.grid2{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (max-width:860px){.grid2{grid-template-columns:minmax(0,1fr)}}.stack{gap:18px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.formgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.formgrid .full{grid-column:1/-1}@media (max-width:560px){.formgrid{grid-template-columns:minmax(0,1fr)}}.field{flex-direction:column;gap:5px;min-width:0;margin-bottom:14px;display:flex}.field label,.flabel{color:var(--ink-2);font-size:13px;font-weight:600}.field input,.field select,.field textarea{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;padding:9px 11px}.field textarea{resize:vertical;min-height:90px}.field input[readonly],.field input:disabled,.field textarea:disabled{color:var(--ink-2);background:var(--mute-soft);cursor:not-allowed}.field .hint{color:var(--ink-3);font-size:12.5px}.note{color:var(--ink-2);background:var(--surface-2);border-radius:8px;padding:10px 12px;font-size:13px}.note.warn{background:var(--warn-soft);color:var(--warn)}.note.good{background:var(--ok-soft);color:var(--ok)}.note.bad{background:var(--bad-soft);color:var(--bad)}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:10px 0;display:flex}.list li:last-child{border-bottom:0}.list .grow{flex:1;min-width:0}.list .grow strong,.list .grow .mini{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.tag{background:var(--surface-2);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.tag.accent{background:var(--accent-soft);color:var(--accent-text);box-shadow:none}.back{color:var(--ink-2);margin-bottom:10px;text-decoration:none;display:inline-block}.back:hover{color:var(--ink)}.tabs{box-shadow:inset 0 -1px 0 var(--line);flex-wrap:wrap;gap:2px 4px;margin-bottom:20px;display:flex}.tabs a{color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;padding:10px 12px;font-weight:500;text-decoration:none}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.tablebox{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow-x:auto}.tablebox table{border-collapse:collapse;width:100%;min-width:720px}.tablebox th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);background:var(--surface-2);padding:10px 14px;font-size:11.5px;font-weight:600}.tablebox td{border-bottom:1px solid var(--line);vertical-align:top;padding:11px 14px}.tablebox tr:last-child td{border-bottom:0}.tablebox td .t{font-weight:600}.tablebox td .s{color:var(--ink-3);font-size:12.5px}.tablebox .num{font-variant-numeric:tabular-nums;text-align:right}.tablebox td.act{text-align:right;white-space:nowrap;width:1%}.acts{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:inline-flex}.roletag{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:2px 8px;font-size:12.5px;font-weight:600;display:inline-flex}.roletag.admin{background:var(--ink);color:var(--surface);box-shadow:none}.custom-tag{color:var(--accent-text);letter-spacing:.02em;font-size:11px;font-weight:600}.status-invited{color:var(--warn);font-size:13px;font-weight:600}.status-active{color:var(--ok);font-size:13px;font-weight:600}.ok-text{color:var(--ok);font-weight:600}.off-text{color:var(--ink-3)}.presets{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.preset{border:1px solid var(--line);background:var(--surface-2);text-align:left;border-radius:8px;flex-direction:column;gap:3px;width:100%;height:100%;padding:10px 12px;display:flex}button.preset{cursor:pointer}.preset b{font-size:14px}.preset small{color:var(--ink-3);font-size:12.5px}.preset[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.preset:disabled{opacity:.5;cursor:not-allowed}.seg{border:1px solid var(--line);background:var(--surface);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{cursor:pointer;color:var(--ink-2);background:0 0;border:0;padding:8px 12px}.seg button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.perms{gap:16px;display:grid}.permgroup h3{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);margin-bottom:6px;font-size:12px}.permrow{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.permrow:last-child{border-bottom:0}.permrow .pl{min-width:0}.permrow .pl small{color:var(--ink-3);font-size:12.5px;display:block}.switch{vertical-align:middle;flex:none;width:40px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch span{background:var(--mute-soft);box-shadow:inset 0 0 0 1px var(--line);pointer-events:none;border-radius:999px;transition:background .15s;position:absolute;inset:0}.switch span:after{content:"";background:var(--surface);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.switch input:disabled{cursor:not-allowed}.switch input:disabled+span{opacity:.5}.kv{grid-template-columns:120px minmax(0,1fr);gap:6px 12px;margin:0;font-size:13.5px;display:grid}.kv dt{color:var(--ink-3)}.kv dd{word-break:break-word;margin:0}.items{gap:8px;margin:0;padding:0;list-style:none;display:grid}.items li{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:14px;display:flex}.items select{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:5px 8px}.linkbtn{color:var(--accent-text);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}@media (min-width:900px){.tablebox td.act .acts{flex-wrap:nowrap}}.countbar{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.countbar .s{color:var(--ink-3);font-size:12.5px}.counters{grid-template-columns:repeat(var(--cols,6), minmax(0, 1fr));gap:10px;margin-bottom:18px;display:grid}.counter{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);text-align:left;color:inherit;flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;display:flex}.counter b{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.counter span{color:var(--ink-2);align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.counter[aria-current=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.dot{box-sizing:border-box;border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.pill .dot{width:8px;height:8px}.d-awaiting{background:#ea580c}.d-uploading{background:#2563eb}.d-attention{background:#dc2626}.d-uploaded{background:#16a34a}.d-editor{background:#d97706}.d-complete{background:#0d9488}.d-qc{background:#7c3aed}.d-gallery{background:0 0;border:2px solid #16a34a}.d-client{background:0 0;border:2px solid #d97706}.d-scheduled{background:0 0;border:2px solid #94a3b8}.d-delivered,.d-cancelled{background:#94a3b8}.d-custom{background:var(--ink-3)}.customize{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin-bottom:18px;padding:16px}.customize .top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.checks{flex-wrap:wrap;gap:8px;display:flex}.chip.dis{opacity:.45;cursor:not-allowed}.chip:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.chip.blocked{opacity:.5;background:0 0;border-style:dashed}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.filters input,.filters select{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0;padding:8px 10px}.filters input[type=search]{flex:220px}.filters form{display:contents}.seg a{color:var(--ink-2);padding:8px 12px;text-decoration:none}.seg a[aria-current=true]{background:var(--ink);color:var(--surface)}.group{margin-bottom:22px}.ghead{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.ghead h2{font-size:17px}.ghead .c{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:13px}.ghead .linkbtn{margin-left:auto;font-size:13px}.jobs table{min-width:820px}.jobs tbody tr.jobrow{cursor:pointer}.jobs tbody tr.jobrow:hover td{background:var(--surface-2)}.jobs tbody tr.open td{background:var(--detail)}.jobs .t a{color:inherit;text-decoration:none}.jobs .t a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.caret{width:14px;color:var(--ink-3);font-size:11px;display:inline-block}.jobs tr.detailrow td,.jobs tbody tr.detailrow:hover td{cursor:default;background:var(--detail);box-shadow:inset 3px 0 0 var(--accent);padding:0}.empty{text-align:center;color:var(--ink-3);padding:28px 20px}.src{letter-spacing:.02em;color:var(--ink-2);border:1px solid var(--line);vertical-align:1px;border-radius:5px;align-items:center;margin-left:6px;padding:0 6px;font-size:11.5px;font-weight:600;display:inline-flex}.svc{border:1px solid var(--line);color:var(--ink-2);border-radius:6px;margin:0 4px 4px 0;padding:1px 7px;font-size:12px;display:inline-block}.svc.warn{border-color:var(--warn);color:var(--warn)}.dgrid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px;padding:4px 16px 18px;display:grid}.dcol{align-content:start;gap:14px;min-width:0;display:grid}.dcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;padding:20px}.dcard h3{margin-bottom:12px;font-size:18px;font-weight:600}.card select,.dcard select{background:var(--field);border:1px solid var(--fieldline);color:var(--ink);border-radius:8px;padding:8px 10px}.dcard .kv{grid-template-columns:120px minmax(0,1fr)}.dcard select{width:100%}.mapline{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tracks{gap:10px;display:grid}.track{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;min-width:0;padding:12px}.dialog .track{background:var(--surface)}.confirmbox{border:1px dashed var(--accent);background:var(--accent-soft);border-radius:10px;margin-top:12px;padding:12px}.confirmbox .seg{background:var(--surface)}.log{gap:10px;margin:0;padding:0;font-size:13.5px;list-style:none;display:grid}.log li{grid-template-columns:76px minmax(0,1fr);gap:10px;display:grid}.log li span{line-height:1.6}.log time{color:var(--ink-3);font-variant-numeric:tabular-nums;padding-top:1px;font-size:12.5px}.who{vertical-align:1px;white-space:nowrap;border-radius:5px;margin-right:6px;padding:1px 7px;font-size:11.5px;font-weight:600;display:inline-block}.who-me{background:var(--accent-soft);color:var(--accent-text)}.who-cmo{background:var(--vio-soft);color:var(--vio)}.who-person{background:var(--info-soft);color:var(--info)}.who-sys{background:var(--mute-soft);color:var(--ink-3)}.picker{gap:10px;display:grid}.pgroup{grid-template-columns:110px minmax(0,1fr);align-items:start;gap:8px;display:grid}.plabel{color:var(--ink-2);padding-top:9px;font-size:12.5px;font-weight:600}.mapchecks{flex-wrap:wrap;gap:6px;display:flex}.covers ul{columns:2;column-gap:28px;margin:6px 0 0;padding-left:20px;font-size:14px;line-height:1.7}.covers li{break-inside:avoid}.step{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.step em{font-style:normal;font-family:var(--f-mono);color:var(--accent-text);font-size:12px;font-weight:500}.pathpreview{font-family:var(--f-mono);background:var(--surface-2);border:1px dashed var(--line);word-break:break-all;border-radius:8px;padding:10px 12px;font-size:13px}.pathpreview b{color:var(--accent-text);font-weight:500}.side h2{margin-bottom:8px}.side ol{color:var(--ink-2);gap:6px;margin:0;padding-left:20px;font-size:14px;display:grid}.err{color:var(--bad);margin-top:8px;font-size:13px}.dbx{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;font-size:13.5px;display:flex}.dbx .off{color:var(--ink-3);font-weight:600}.meta{color:var(--ink-2);flex-wrap:wrap;gap:16px;font-size:14px;display:flex}.modal{background:var(--scrim);z-index:50;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.dialog{background:var(--surface);border:1px solid var(--line);border-radius:14px;width:100%;max-width:440px;padding:24px}.dialog.wide{max-width:860px;max-height:calc(100vh - 32px);overflow:auto}.xbtn{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:4px;margin-left:auto;padding:0 4px;font-size:22px;line-height:1}.xbtn:hover{color:var(--bad)}@media (max-width:980px){.counters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.dgrid{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.counters{grid-template-columns:repeat(2,minmax(0,1fr))}.pgroup{grid-template-columns:minmax(0,1fr)}.plabel{padding-top:0}.mapline{flex-direction:column}.covers ul{columns:1}}.rootgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.rootblk{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;min-width:0;padding:12px}.roothead{align-items:center;gap:8px;margin-bottom:8px;display:flex}.inl{width:100%;min-width:0;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 6px}.inl:hover{border-color:var(--line)}.inl:focus{border-color:var(--accent);background:var(--surface);outline:none}.inl.strong{font-size:15px;font-weight:600}.svcrows{gap:2px;margin-bottom:10px;display:grid}.svcrow{grid-template-columns:minmax(0,1fr) 54px 54px 54px 54px 118px 22px;align-items:center;gap:8px;font-size:13.5px;display:grid}.svchead{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:0 6px;font-size:11.5px;font-weight:600}.svcrow select{background:var(--surface);border:1px solid var(--line);border-radius:6px;width:100%;min-width:0;padding:4px 6px;font-size:12.5px}.svcrow .switch{vertical-align:middle;width:34px;height:20px;display:inline-block}.svcrow .switch span:after{width:14px;height:14px}.svcrow .switch input:checked+span:after{transform:translate(14px)}.addsub{gap:6px;display:flex}.addsub input{background:var(--surface);border:1px solid var(--line);border-radius:7px;flex:1;min-width:0;padding:5px 8px;font-size:13px}.kind{white-space:nowrap;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600}.kind-package{background:var(--vio-soft);color:var(--vio)}.kind-primary{background:var(--info-soft);color:var(--info)}.kind-addon{background:var(--teal-soft);color:var(--teal)}.kind-both{background:var(--ok-soft);color:var(--ok)}.kind-group{background:var(--accent-soft);color:var(--accent-text)}.kind-na,.kind-unlinked{background:var(--mute-soft);color:var(--ink-3)}.maptable{min-width:0}.maptable td{vertical-align:middle}.maptable select{background:var(--surface-2);border:1px solid var(--line);border-radius:7px;width:100%;min-width:140px;max-width:100%;padding:6px 8px}.maptable tr.unmapped td:first-child{color:var(--warn);font-weight:600}@media (max-width:980px){.rootgrid{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.svcrow{grid-template-columns:minmax(0,1fr) 40px 40px 40px 40px 86px 20px}}.invite{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);margin-bottom:14px;padding:16px}.roles{grid-template-columns:120px minmax(0,1fr);margin:0 0 10px}.uploadsbar{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:var(--surface);border:1px solid var(--line);z-index:40;border-radius:12px;gap:12px;width:min(340px,100vw - 32px);padding:12px 14px;display:grid;position:fixed;box-shadow:0 8px 24px #1018282e}.upname{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13.5px;overflow:hidden}.bigbar{background:var(--mute-soft);border-radius:6px;height:10px;overflow:hidden}.bigbar i{background:var(--info);height:100%;transition:width .2s linear;display:block}.bigbar i.done{background:var(--ok)}.minibar{background:var(--mute-soft);border-radius:4px;width:110px;max-width:100%;height:4px;margin-top:6px;overflow:hidden}.minibar i{background:var(--info);height:100%;display:block}.drop{border:1.5px dashed var(--line);border-radius:var(--r);text-align:center;background:var(--surface-2);padding:18px 14px;transition:border-color .15s}.drop.over{border-color:var(--accent);background:var(--accent-soft)}.drop p{color:var(--ink-2);margin:4px 0}.drop .row{justify-content:center;margin-top:10px}.queue{border:1px solid var(--line);border-radius:8px;max-height:180px;margin-top:10px;overflow:auto}.qrow{font-family:var(--f-mono);border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:5px 10px;font-size:12.5px;display:flex}.qrow:last-child{border-bottom:0}.qrow span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stats{color:var(--ink-2);flex-wrap:wrap;gap:18px;font-size:12.5px;display:flex}.stats b{color:var(--ink);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.bigbar i{transition:none}}.systems{gap:8px;margin-top:6px;display:grid}.sys{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.sys .soon{color:var(--ink-3);font-size:12.5px}.changes{color:var(--ink-2);gap:4px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.dlist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.dlist li{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:8px 10px}.dlist .drow{justify-content:space-between;align-items:center;gap:12px;display:flex}.dlist .dname{font-size:14px;font-weight:600}.dlist select{max-width:180px}.dutytable{min-width:560px}.dutytable th.c,.dutytable td.c{text-align:center;width:14%}.dutytable input{width:18px;height:18px;accent-color:var(--accent)}.defgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (max-width:720px){.defgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.viewseg{margin-left:auto}main.wrap:has(.board.compact){max-width:max(1200px,600px + 50vw)}.board.compact .jobs tbody tr.jobrow td{padding-top:6px;padding-bottom:6px}.board.compact .jobs .s,.board.compact .ddots .mini{font-size:12px}.ddots{align-items:center;gap:4px;margin-top:4px;display:flex}.ddots .mini{margin-left:4px}.chips{flex-wrap:wrap;gap:4px;display:inline-flex}.tchip{background:var(--surface-2);border:1px solid var(--line);min-width:24px;height:22px;color:var(--ink-2);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.cmonote{background:var(--accent-soft);color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.due{align-items:center;gap:6px;margin-top:2px;display:flex}.due.overdue .mini{color:var(--bad);font-weight:600}.turnaround{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.turnaround input[type=number]{width:56px;padding:2px 4px;font-size:12.5px}.turnaround select{max-width:190px}.turnaround .note{flex-basis:100%;margin:2px 0 0}.qnrow{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0;display:flex}.qnrow>:first-child{flex:200px;min-width:0}.qnrow.off>:first-child{opacity:.55}.qnrow select{max-width:200px}.quicknotes{border:0;flex-wrap:wrap;gap:6px 14px;margin:0 0 4px;padding:0;display:flex}.quicknotes legend{margin-bottom:6px}.qcheck{align-items:center;gap:6px;font-size:13.5px;font-weight:400;display:inline-flex}.checklist{gap:2px;margin:8px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.checklist li:before{content:"✓";color:var(--ok);margin-right:6px;font-weight:700}.bad-text{color:var(--bad);font-weight:600}.warn-text{color:var(--warn)}.rules .rule.off .sentence{opacity:.55}.rules .sentence b{font-weight:600}.rule-editor{border:1px solid var(--line);border-radius:var(--r);background:var(--surface-2);margin-top:8px;padding:12px}.rule-editor fieldset{border:0;margin:0 0 12px;padding:0}.rule-editor legend{margin-bottom:6px;font-weight:600}.rule-editor .targets{flex-direction:column;gap:6px;display:flex}.app{grid-template-columns:232px minmax(0,1fr);min-height:100dvh;display:grid}.app-main{flex-direction:column;min-width:0;display:flex}.app-main>main{width:100%;max-width:1240px;padding-left:max(24px, env(safe-area-inset-left,0px));padding-right:max(24px, env(safe-area-inset-right,0px));flex:1}@media (max-width:900px){.app{grid-template-columns:minmax(0,1fr)}.app-main>main{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}}.signed-out-bar{background:#1f2023;padding-block:14px}.guise{background:var(--accent-fixed);color:#fff}.guise-inner{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 24px;font-size:14px;display:flex}.guise-inner strong{font-weight:600}.guise-inner .btn{color:#9a3412;background:#fff;border-color:#fff;font-weight:600}.guise-inner>a.btn{margin-left:auto}@media (max-width:560px){.guise-inner>a.btn{margin-left:0}}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px}.card h2{font-family:var(--f-body);margin-bottom:8px;font-size:18px;font-weight:600}.pop{transition:transform .12s,box-shadow .18s,background-color .15s,border-color .15s}.pop:hover{box-shadow:0 6px 16px var(--shadow);transform:translateY(-1px)}.pop:active{box-shadow:none;transform:scale(.985)}.page-enter{animation:.28s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.theme-fade,.theme-fade *,.theme-fade :before,.theme-fade :after{transition:background-color .35s,border-color .35s,color .35s,fill .35s!important}.theme-toggle{height:44px;padding:0 14px}.next{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);animation:2.8s ease-in-out infinite breathe;border-color:var(--accent)!important}@keyframes breathe{50%{box-shadow:0 0 0 7px color-mix(in srgb, var(--accent) 8%, transparent)}}.flash{animation:.9s ease-out flash}@keyframes flash{0%{background-color:color-mix(in srgb, var(--accent) 14%, transparent)}to{background-color:#0000}}.yourmove{color:var(--accent-text);font-weight:600}.toasts{left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;pointer-events:none;flex-direction:column;gap:8px;width:min(440px,100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}.toast{color:#fff;pointer-events:auto;background:#1f2023;border-radius:12px;align-items:center;gap:10px;padding:10px 10px 10px 14px;font-size:14px;animation:.2s ease-out page-in;display:flex;box-shadow:0 12px 32px #0a0f144d}.toast>span{flex:1}.toast .btn{color:#1f2023;background:#fff;border-color:#fff}.toast .xbtn{color:#d0d0d3}.tag-planned{border:1px solid var(--fieldline);height:22px;color:var(--ink-2);font-family:var(--f-body);letter-spacing:.6px;text-transform:uppercase;vertical-align:middle;border-radius:999px;align-items:center;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.planned-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:16px;display:grid}.planned-grid p{color:var(--ink-2);margin:0 0 8px}.planned-grid .picked{border-color:var(--ink)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.pop:hover,.pop:active,.btn:not(:disabled):hover,.btn:not(:disabled):active{transform:none}}.sk{background:var(--surface-2);border-radius:8px}.sk-line{height:14px}.sk-title{height:34px}.sk-btn{border-radius:10px;width:96px;height:44px}.sk-block{border-radius:12px;height:220px}.sk-card{border-radius:12px;height:74px}.sk-stage{border-radius:12px;height:92px}.sk-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;display:grid}.sk-row{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:12px;display:grid}.board-skeleton{flex-direction:column;gap:28px;display:flex}.crumbs{color:var(--ink-3);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:flex}.crumbs a{color:var(--ink-2)}.jobpage h1 .pill{vertical-align:middle;margin-left:8px}