:root{--accent:#2f5be0;--bg:color-mix(in srgb,var(--accent) 3.5%,#f6f7f9);--card:color-mix(in srgb,var(--accent) 1%,#fff);--ink:#16202e;--muted:#667085;--line:color-mix(in srgb,var(--accent) 9%,#e5e8ec);--line-soft:color-mix(in srgb,var(--accent) 5%,#eff1f4);--brand:var(--accent);--danger:#c62828;--warn:#b26a00;--s-order:#8a93a6;--s-design:#7b4fd6;--s-approval:#d98a00;--s-production:#2554d6;--s-handover:#0e8a8a;--s-done:#1b7f4b;--shadow:0 1px 2px #1018280d,0 1px 3px #1018280f;--shadow-lg:0 4px 8px -2px #10182814,0 2px 4px -2px #1018280f;--field-line:color-mix(in srgb,var(--accent) 10%,#d6dae2);--field-line-h:color-mix(in srgb,var(--accent) 22%,#bcc3d0);--btn-line-h:color-mix(in srgb,var(--accent) 20%,#c9cfd9);--label:#475467;--ph:#98a2b3;--th-bg:color-mix(in srgb,var(--accent) 6%,#fafbfc);--th-ink:#475467;--dash:color-mix(in srgb,var(--accent) 20%,#cfd4de);--tag-gov-bg:#e6f4ee;--tag-gov:#18794e;--tag-biz-bg:#fdf1e0;--tag-biz:#a35c00;--tag-sch-bg:#f1eafd;--tag-sch:#6d3fc0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:color-mix(in srgb,var(--accent) 7%,#060910);--card:color-mix(in srgb,var(--accent) 11%,#0a0e15);--ink:#e6eaf2;--muted:#96a1b5;--line:color-mix(in srgb,var(--accent) 18%,#171d2b);--line-soft:color-mix(in srgb,var(--accent) 13%,#111723);--brand:color-mix(in srgb,var(--accent) 68%,#fff);--danger:#ff7b72;--warn:#f0b04a;--s-order:#7d879b;--s-design:#a98bf0;--s-approval:#d99a2b;--s-production:#4f79e8;--s-handover:#2fb3b3;--s-done:#2f9e6b;--shadow:0 1px 2px #00000080;--shadow-lg:0 6px 16px #00000073;--field-line:color-mix(in srgb,var(--accent) 22%,#222a3b);--field-line-h:color-mix(in srgb,var(--accent) 36%,#2f3a50);--btn-line-h:color-mix(in srgb,var(--accent) 36%,#2f3a50);--label:#aab4c6;--ph:#66728a;--th-bg:color-mix(in srgb,var(--accent) 16%,#0d121d);--th-ink:#a9b3c6;--dash:color-mix(in srgb,var(--accent) 28%,#1f283a);--tag-gov-bg:#2f9e6b2e;--tag-gov:#5fd6a0;--tag-biz-bg:#f0b04a29;--tag-biz:#f0b04a;--tag-sch-bg:#a98bf02e;--tag-sch:#c3adf7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:color-mix(in srgb,var(--accent) 7%,#060910);--card:color-mix(in srgb,var(--accent) 11%,#0a0e15);--ink:#e6eaf2;--muted:#96a1b5;--line:color-mix(in srgb,var(--accent) 18%,#171d2b);--line-soft:color-mix(in srgb,var(--accent) 13%,#111723);--brand:color-mix(in srgb,var(--accent) 68%,#fff);--danger:#ff7b72;--warn:#f0b04a;--s-order:#7d879b;--s-design:#a98bf0;--s-approval:#d99a2b;--s-production:#4f79e8;--s-handover:#2fb3b3;--s-done:#2f9e6b;--shadow:0 1px 2px #00000080;--shadow-lg:0 6px 16px #00000073;--field-line:color-mix(in srgb,var(--accent) 22%,#222a3b);--field-line-h:color-mix(in srgb,var(--accent) 36%,#2f3a50);--btn-line-h:color-mix(in srgb,var(--accent) 36%,#2f3a50);--label:#aab4c6;--ph:#66728a;--th-bg:color-mix(in srgb,var(--accent) 16%,#0d121d);--th-ink:#a9b3c6;--dash:color-mix(in srgb,var(--accent) 28%,#1f283a);--tag-gov-bg:#2f9e6b2e;--tag-gov:#5fd6a0;--tag-biz-bg:#f0b04a29;--tag-biz:#f0b04a;--tag-sch-bg:#a98bf02e;--tag-sch:#c3adf7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--brand-ink:#fff}@supports (color:oklch(from red l c h)){:root{--brand-ink:oklch(from var(--brand) clamp(0,(l - .62) * -1000,1) 0 0)}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}header{background:var(--card);border-bottom:1px solid var(--line);z-index:5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0}h1{margin:0;font-size:18px}.head-actions{gap:8px;display:flex}main{max-width:1400px;margin:0 auto;padding:16px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:8px;padding:7px 12px}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand);font-weight:600}button.danger{color:var(--danger)}button.small{padding:3px 8px;font-size:13px}input,select,textarea{border:1px solid var(--line);background:var(--bg);border-radius:8px;width:100%;padding:8px 10px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}label{color:var(--muted);margin-bottom:3px;font-size:12px;font-weight:600;display:block}.banner{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);border:1px solid var(--danger);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;display:flex}.error{color:var(--danger);margin:0 0 10px}.toolbar{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.toolbar input{flex:200px;width:auto}.toolbar select{width:auto}.chips{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.chip{border-radius:999px;padding:4px 12px;font-size:13px}.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.empty{text-align:center;color:var(--muted);padding:40px 0}.page{background:var(--card);border:1px solid var(--line);border-radius:12px}.dlg h2{margin:0 0 16px;font-size:20px}fieldset{border:1px solid var(--line);border-radius:10px;margin:0 0 14px;padding:12px}legend{padding:0 6px;font-size:13px;font-weight:700}.grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.grid .full{grid-column:1/-1}.items-wrap{border:1px solid var(--line);background:var(--card);border-radius:8px;overflow-x:auto}.itemrow{border-bottom:1px solid var(--line);grid-template-columns:36px minmax(160px,3fr) minmax(90px,1.2fr) 70px minmax(130px,2fr) minmax(110px,1.2fr) minmax(118px,.7fr) minmax(118px,.7fr) minmax(140px,2fr) 38px;min-width:1060px;display:grid}.itemrow>*{border:0;border-right:1px solid var(--line);background:0 0;border-radius:0;min-width:0;margin:0;padding:9px 10px}.itemrow>:last-child{border-right:0}.itemrow input:focus,.itemrow select:focus{outline:2px solid var(--brand);outline-offset:-2px;background:var(--bg)}.itemrow:not(.ihead):hover{background:color-mix(in srgb,var(--ink) 3%,transparent)}.itemrow.ihead{background:var(--bg);color:var(--muted);font-size:12px;font-weight:600}.itemrow.ihead>*{white-space:nowrap;padding:8px 10px}.itemrow.ihead>:nth-last-child(-n+3){text-align:center}.itemrow.ihead>:nth-last-child(2){text-align:left}.itemrow .cell{justify-content:center;align-items:center;padding:0;display:flex}.itemrow .idx{color:var(--muted);background:var(--bg);font-size:12px}.itemrow .chk{width:17px;height:17px;margin:0;padding:0}.itemrow>button{color:var(--muted);font-size:16px;line-height:1}.itemrow>button:hover:not(:disabled){color:var(--danger);background:var(--bg)}.addrow{text-align:left;width:100%;min-width:1060px;color:var(--muted);background:0 0;border:0;border-radius:0;padding:9px 12px;font-size:13px;display:block}.addrow:hover{background:var(--bg)!important}.row-end{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}@media (width<=560px){.grid{grid-template-columns:1fr 1fr}}@media print{.sidebar,header,.toolbar,.chips,.banner,.noprint{display:none!important}body{color:#000;background:#fff}.stage-select{appearance:none;border:0;padding:0;color:#000!important;background:0 0!important}}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow-x:auto}table.sheet{border-collapse:collapse;width:100%;min-width:980px;font-size:14px}.sheet th{background:var(--bg);text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);border:1px solid var(--line);white-space:nowrap;padding:8px 10px;font-size:12px;position:sticky;top:0}.th-btn{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;background:0 0;border:0;border-radius:0;padding:0;font-weight:700}.sheet td{border:1px solid var(--line);vertical-align:top;padding:7px 10px}.sheet tr.late-row td:first-child{box-shadow:inset 4px 0 0 var(--danger)}.line{white-space:nowrap;align-items:center;height:32px;display:flex}.sheet td.num .line{justify-content:flex-end}.row-actions{vertical-align:top}.sheet .chkcol{text-align:center}.sheet .chkcol .line{justify-content:center}.sheet .chk{width:18px;height:18px;padding:0}.sheet .num{text-align:right;font-variant-numeric:tabular-nums}.sheet .jno{color:var(--muted);white-space:nowrap;font-weight:600}.sheet .cust,.sheet .iname{font-weight:600}.sheet .note{color:var(--muted);font-size:12px}.sheet td.due{white-space:nowrap;font-weight:600}.sheet td.due.late{color:var(--danger)}.sheet td.due.soon{color:var(--warn)}.row-actions{white-space:nowrap}.row-actions button{margin-right:4px}.stage-select{color:#fff;background:var(--c);border-color:var(--c);width:auto;min-width:112px;padding:4px 8px;font-size:13px;font-weight:600}.stage-select option{color:#000;background:#fff}.app{align-items:flex-start;min-height:100vh;display:flex}.content{flex:1;min-width:0}.sidebar{--sb-bg:color-mix(in srgb,var(--accent) 17%,#04070d);--sb-bg2:color-mix(in srgb,var(--accent) 30%,#0a0e16);--sb-ink:#eef1f7;--sb-muted:color-mix(in srgb,var(--accent) 14%,#98a3b8);--sb-line:#ffffff14;--sb-accent:color-mix(in srgb,var(--accent) 68%,#fff);background:var(--sb-bg);width:244px;height:100vh;color:var(--sb-ink);border-right:1px solid color-mix(in srgb,var(--accent) 12%,#000);flex-direction:column;flex:none;align-self:flex-start;gap:2px;padding:14px 12px;transition:width .18s;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar.collapsed{width:68px}.sidebar button{color:inherit;background:0 0;border:0;border-radius:8px}.sidebar .ico{flex:none}.side-brand{border-bottom:1px solid var(--sb-line);align-items:center;gap:10px;min-height:52px;margin-bottom:10px;padding:2px 4px 14px;display:flex}.brand-mark{background:linear-gradient(135deg,var(--sb-accent),color-mix(in srgb,var(--sb-accent) 62%,#000));color:#fff;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 2px 8px #3a5fd073}.brand-text{flex-direction:column;flex:1;min-width:0;line-height:1.15;display:flex}.brand-text strong{letter-spacing:.01em;font-size:13px;line-height:1.2}.brand-text small{color:var(--sb-muted);font-size:11px}.side-toggle{width:28px;height:28px;color:var(--sb-muted);flex:none;place-items:center;padding:0;display:grid}.side-toggle:hover{background:var(--sb-bg2);color:#fff}.side-new{text-align:left;white-space:nowrap;width:100%;min-height:40px;box-shadow:0 1px 0 #ffffff2e inset,0 4px 12px color-mix(in srgb,var(--sb-accent) 35%,transparent);align-items:center;gap:10px;margin-bottom:12px;padding:0 12px;font-weight:600;display:flex;background:var(--sb-accent)!important;color:var(--on-accent)!important}.side-new:hover{filter:brightness(1.08)}.side-section{letter-spacing:.09em;text-transform:uppercase;color:var(--sb-muted);white-space:nowrap;padding:12px 12px 6px;font-size:11px;font-weight:700}.sidebar nav{flex-direction:column;gap:2px;display:flex}.side-item{text-align:left;white-space:nowrap;align-items:center;gap:12px;width:100%;min-height:38px;padding:0 12px;font-size:14px;display:flex;position:relative;color:color-mix(in srgb,var(--accent) 10%,#c3cbd9)!important}.side-item:hover{background:var(--sb-bg2);color:#fff!important}.side-item.on{background:color-mix(in srgb,var(--sb-accent) 20%,transparent);font-weight:600;color:#fff!important}.side-item.on:before{content:"";background:var(--sb-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-12px}.side-item.on .ico{color:color-mix(in srgb,var(--sb-accent) 60%,#fff)}.side-label{text-overflow:ellipsis;flex:1;overflow:hidden}.side-count{text-align:center;font-variant-numeric:tabular-nums;color:#cfd8e8;background:#ffffff17;border-radius:999px;min-width:22px;padding:1px 7px;font-size:11px;font-weight:600}.side-item.on .side-count{color:#fff;background:#ffffff2e}.side-count.danger{color:#fff;background:#e5484d}.sidebar:focus-within .side-item:focus-visible,.sidebar button:focus-visible{outline:2px solid color-mix(in srgb,var(--sb-accent) 60%,#fff);outline-offset:1px}.sidebar.collapsed .brand-text,.sidebar.collapsed .side-label,.sidebar.collapsed .side-count,.sidebar.collapsed .side-section{display:none}.sidebar.collapsed .side-brand{flex-direction:column;align-items:center;gap:8px;padding:2px 0 12px}.sidebar.collapsed .side-new,.sidebar.collapsed .side-item{justify-content:center;padding:0}.sidebar.collapsed .side-item.on:before{left:-12px}.sidebar.collapsed nav{margin-top:2px}.sidebar.collapsed nav+nav{border-top:1px solid var(--sb-line);margin-top:10px;padding-top:10px}@media (width<=560px){.sidebar{width:200px}.sidebar.collapsed{width:60px}}.sheet td.pic{white-space:nowrap;font-weight:600}.steps{flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.steps li{border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.steps li.on{color:var(--ink);border-color:var(--brand);font-weight:600}.steps li.done{color:var(--s-done)}.stepno{background:var(--bg);border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:inline-grid}.steps li.on .stepno{background:var(--brand);color:var(--brand-ink)}.job-summary{color:var(--muted);margin:0 0 14px}.job-summary strong{color:var(--ink)}.picgrid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;gap:16px;display:grid}.piccard h3{margin:0 0 8px;font-size:15px}.piccard h3 small{color:var(--muted);margin-left:6px;font-size:12px;font-weight:400}.picrow{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr 52px 150px;align-items:center;min-width:340px;display:grid}.picrow>*{border-right:1px solid var(--line);min-width:0;padding:7px 10px}.picrow>:last-child{border-right:0}.picrow.ihead{background:var(--bg);color:var(--muted);font-size:12px;font-weight:600}.picrow .cell{color:var(--muted);justify-content:center;padding:7px 0;display:flex}.picrow input{outline-offset:6px;background:0 0;border:0;border-radius:0;padding:0}.picname{font-weight:600}.picact{justify-content:flex-end;gap:4px;display:flex}.picadd{gap:8px;margin-top:10px;display:flex}.grid.g3{grid-template-columns:repeat(3,1fr)}@media (width<=700px){.grid.g3{grid-template-columns:1fr}}label em{opacity:.8;font-style:normal;font-weight:400}.sheet .org{color:var(--muted);margin-top:1px;font-size:12px}.tag{letter-spacing:.02em;background:var(--bg);border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:0 6px;font-size:11px;font-weight:700;display:inline-block}.stepbtn{font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}button.stepbtn{cursor:pointer;border-radius:0}.steps li:has(button.stepbtn):hover{border-color:var(--brand);color:var(--ink)}.btn-group{gap:8px;display:flex}body{-webkit-font-smoothing:antialiased;background:var(--bg);font:14px/1.5 Inter,Segoe UI,system-ui,-apple-system,Roboto,sans-serif}main{max-width:1600px;padding:20px 28px 40px}main.narrow{max-width:none}header.page-head{background:0 0;border:0;align-items:flex-end;padding:26px 28px 0;position:static}.page-head h1{letter-spacing:-.01em;font-size:24px;font-weight:700;line-height:1.2}.page-head .sub{color:var(--muted);margin:4px 0 0;font-size:13px}.linkbtn{color:var(--muted);background:0 0;border:0;padding:4px 0;font-weight:500}.linkbtn:hover:not(:disabled){color:var(--brand);border-color:#0000}button{box-shadow:var(--shadow);border-radius:8px;padding:8px 14px;font-weight:500;transition:background .12s,border-color .12s,box-shadow .12s}button:hover:not(:disabled){border-color:var(--btn-line-h)}button.primary{box-shadow:0 1px 2px #1018281f,inset 0 1px #ffffff24}button.primary:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 88%,#fff);border-color:#0000}button.small{box-shadow:none;padding:4px 10px;font-size:12.5px}input,select,textarea{background:var(--card);border-color:var(--field-line);padding:9px 11px;transition:border-color .12s,box-shadow .12s}input:hover,select:hover,textarea:hover{border-color:var(--field-line-h)}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent);outline:0}input:disabled,select:disabled{background:var(--bg);color:var(--muted);cursor:not-allowed}label{color:var(--label);margin-bottom:5px;font-size:12.5px;font-weight:600}.page input::placeholder,.page textarea::placeholder{color:var(--ph)}.toolbar{margin-bottom:16px}.toolbar .search{background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2398a2b3' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 12px center;max-width:520px;padding-left:38px}.table-wrap{box-shadow:var(--shadow);border-color:var(--line);background:var(--card);border-radius:12px}table.sheet{font-size:13.5px}.sheet th{background:var(--th-bg);color:var(--th-ink);letter-spacing:.05em;border-color:var(--line);padding:11px 14px;font-size:11.5px;font-weight:600}.sheet td{border-color:var(--line-soft);padding:12px 14px}.sheet tbody tr:nth-child(2n) td{background:0 0}.sheet tbody tr:hover td{background:color-mix(in srgb,var(--brand) 4%,transparent)}.sheet td:nth-child(2){min-width:210px}.sheet .jno{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12.5px;font-weight:600}.sheet .cust{font-size:14px;font-weight:600}.sheet .org{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.4}.sheet .note{margin-top:3px}.sheet td a{color:var(--brand);font-weight:500;text-decoration:none}.sheet td a:hover{text-decoration:underline}.tag{letter-spacing:.04em;background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand);border:0;border-radius:999px;margin-right:4px;padding:1px 7px;font-size:10.5px;font-weight:700}.tag.t-kerajaan{background:var(--tag-gov-bg);color:var(--tag-gov)}.tag.t-swasta{background:var(--tag-biz-bg);color:var(--tag-biz)}.tag.t-sekolah{background:var(--tag-sch-bg);color:var(--tag-sch)}.sheet td.due{font-weight:500}.sheet td.due.late{font-weight:600}.row-actions button{box-shadow:none}.page{box-shadow:var(--shadow-lg);border-color:var(--line);border-radius:14px}.dlg{padding:28px 30px}.dlg h2{letter-spacing:-.01em;margin:0 0 14px;font-size:20px;font-weight:700}fieldset{border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 35%,var(--card));border-radius:12px;margin:0 0 18px;padding:18px 18px 20px}legend{color:var(--ink);letter-spacing:.01em;padding:0 8px;font-size:13px;font-weight:700}.grid{gap:16px}.row-end{border-top:1px solid var(--line-soft);margin-top:6px;padding-top:18px}.steps{margin-bottom:22px}.steps li{background:var(--card);box-shadow:var(--shadow);padding:7px 14px}.steps li.on{background:color-mix(in srgb,var(--brand) 8%,var(--card))}.empty-card{background:var(--card);border:1px dashed var(--dash);color:var(--muted);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:56px 20px;display:flex}.empty-card strong{color:var(--ink);font-size:15px}.empty-card button{margin-top:10px}.banner{border-radius:10px}.th-btn{box-shadow:none;background:0 0;border:0;padding:0;font-weight:600}.th-btn:hover:not(:disabled){color:var(--brand);border-color:#0000}.linkbtn{box-shadow:none;background:0 0}@media print{:root:not(#print){--bg:#f5f6f8;--card:#fff;--ink:#16202e;--muted:#667085;--line:#e4e7ec;--line-soft:#eef0f4;--brand:var(--accent);--danger:#c62828;--warn:#b26a00;--s-order:#8a93a6;--s-design:#7b4fd6;--s-approval:#d98a00;--s-production:#2554d6;--s-handover:#0e8a8a;--s-done:#1b7f4b;--shadow:0 1px 2px #1018280d,0 1px 3px #1018280f;--shadow-lg:0 4px 8px -2px #10182814,0 2px 4px -2px #1018280f;--field-line:#d5dae3;--field-line-h:#b8c0cf;--btn-line-h:#c7cdd8;--label:#475467;--ph:#98a2b3;--th-bg:#f9fafb;--th-ink:#475467;--dash:#cdd3de;--tag-gov-bg:#e6f4ee;--tag-gov:#18794e;--tag-biz-bg:#fdf1e0;--tag-biz:#a35c00;--tag-sch-bg:#f1eafd;--tag-sch:#6d3fc0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}.side-foot{border-top:1px solid var(--sb-line);margin-top:auto;padding-top:8px}.side-foot .side-section{align-items:center;gap:6px;padding-top:8px;display:flex}.seg{background:#ffffff0f;border-radius:9px;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.seg button{border-radius:7px;flex-direction:column;align-items:center;gap:3px;padding:6px 0 5px;font-size:11px;font-weight:500;line-height:1.1;display:flex;color:#9fb0cb!important}.seg button:hover{background:#ffffff0f;color:#fff!important}.seg button.on{background:var(--sb-accent);box-shadow:0 1px 3px #0000004d;color:var(--on-accent)!important}.sidebar.collapsed .side-foot .side-section{display:none}.sidebar button{box-shadow:none}.accent-label{color:var(--sb-muted);letter-spacing:.02em;padding:0 4px 6px;font-size:11px;font-weight:600;display:block}.swatches{flex-wrap:wrap;align-items:center;gap:7px;padding:0 2px;display:flex}.swatch{width:22px;height:22px;position:relative;background:var(--sw)!important;border-radius:50%!important;padding:0!important;box-shadow:inset 0 0 0 1px #ffffff40!important}.swatch:hover{transform:scale(1.1)}.swatch.on:after{content:"";opacity:.9;border:2px solid #fff;border-radius:50%;position:absolute;inset:-4px}.swatch.custom{overflow:hidden;background:conic-gradient(#f43f5e,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#f43f5e)!important}.swatch.custom input{opacity:0;cursor:pointer;border:0;width:40px;height:40px;padding:0;position:absolute;inset:-6px}.accent-reset{margin:8px 4px 0;font-size:11.5px;text-decoration:underline;color:var(--sb-muted)!important;background:0 0!important;padding:0!important}.accent-reset:hover{color:#fff!important}.sidebar.collapsed .accent-row{display:none}.sidebar{--on-accent:#fff}@supports (color:oklch(from red l c h)){.sidebar{--on-accent:oklch(from var(--sb-accent) clamp(0,(l - .62) * -1000,1) 0 0)}}.sidebar{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent}.side-item{min-height:35px}.side-section{padding-top:10px;padding-bottom:4px}.swatches{flex-wrap:nowrap;gap:6px}.swatch{flex:none;width:20px;height:20px}.accent-row{margin-top:8px}.accent-reset{margin-top:6px}.side-new{margin-bottom:6px}.seg{background:color-mix(in srgb,var(--sb-accent) 14%,#ffffff0a)}.sheet td.notecol{min-width:150px;max-width:260px}.sheet td.notecol .line{text-overflow:ellipsis;line-height:32px;display:block;overflow:hidden}.sheet .inote{color:var(--muted);font-size:13px}table.sheet.jobs{table-layout:auto;min-width:940px}.jobs td{vertical-align:top;padding:14px 16px}.jobs th{padding:11px 16px}.jobs th.c-actions{width:1%}.jobs .jno{color:var(--ink);letter-spacing:.01em;font-size:12.5px;font-weight:700}.prog{margin-top:8px}.prog-bar{background:var(--line);border-radius:999px;height:5px;overflow:hidden}.prog-bar span{background:var(--s-done);border-radius:999px;height:100%;display:block}.prog-txt{color:var(--muted);margin-top:4px;font-size:11.5px;display:block}.prog-none{color:var(--muted);margin-top:8px;font-size:11.5px}.jobs .cust{font-size:14.5px;font-weight:600;line-height:1.3}.jobs .org{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;font-size:12.5px;display:flex}.jobs .org .tag{margin:0}.jobs .where{color:var(--muted)}.jobs .event{background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand);border-radius:6px;margin-top:6px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.jobs .phone{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:12.5px;text-decoration:none;display:block}.jobs .phone:hover{color:var(--brand);text-decoration:underline}.pline,.dline{align-items:baseline;gap:8px;line-height:1.5;display:flex}.pline+.pline,.dline+.dline{margin-top:6px}.plabel,.dlabel{letter-spacing:.06em;text-transform:uppercase;width:44px;color:var(--muted);flex:none;font-size:10.5px;font-weight:700}.pline{font-size:13.5px;font-weight:600}.dline{font-size:13px;font-weight:500}.dline.soon{color:var(--warn);font-weight:600}.dline.late{color:var(--danger);font-weight:600}.ilist{margin:0;padding:0;list-style:none}.ilist li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:14px;padding:8px 0;display:flex}.ilist li:first-child{border-top:0;padding-top:0}.ilist li:last-child{padding-bottom:0}.itext{flex:1;min-width:0}.itop{align-items:baseline;gap:8px;display:flex}.jobs .iname{font-size:13.5px;font-weight:600}.iqty{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.imeta{color:var(--muted);margin-top:1px;font-size:12.5px}.jobs .inote{color:var(--ink);opacity:.8;white-space:normal;word-break:break-word;margin-top:3px;font-size:12.5px;font-style:italic}.jobs .stage-select{flex:none;align-self:flex-start}.addbtn{color:var(--muted);border-style:dashed}.jobs .c-actions{white-space:nowrap}.jobs .row-actions{display:table-cell}.jobs .row-actions button{margin:0 4px 0 0}.jobs tr.late-row td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.jobs .dtxt{white-space:nowrap}.jobs th.c-job{width:112px}.jobs th.c-people{width:128px}.jobs .c-cust{min-width:195px}.jobs td,.jobs th{padding-left:14px;padding-right:14px}.plabel,.dlabel{width:42px}.jobs .row-actions button{padding:4px 8px}.dcell{align-items:center;display:flex;position:relative;padding:0!important}.dcell input{box-shadow:none;background:0 0;border:0;border-radius:0;min-width:0;padding:9px 6px 9px 10px;font-size:13px}.dcell input:focus{box-shadow:inset 0 0 0 2px var(--brand);background:var(--bg)}.dcell.inherit input{color:var(--muted);font-style:italic}.dcell.own input{color:var(--ink);font-weight:600}.dcell .reset{width:26px;height:26px;color:var(--brand);box-shadow:none;border-radius:6px;flex:none;margin-right:4px;padding:0!important}.idates{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.ichip{background:var(--bg);border:1px solid var(--line);border-radius:6px;align-items:baseline;gap:5px;padding:1px 7px;font-size:12px;font-weight:600;display:inline-flex}.ichip .dlabel{width:auto;font-size:10px}.ichip.soon{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.ichip.late{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line))}.dcell{display:block;position:relative;padding:0!important}.dcell .dtext{white-space:nowrap;cursor:pointer;padding:9px 10px;font-size:13px;display:block}.dcell.own .dtext{color:var(--ink);padding-right:28px;font-weight:600}.dcell.inherit .dtext{color:var(--muted);font-style:italic}.dcell input.dpick{opacity:0;cursor:pointer;width:100%;height:100%;box-shadow:none;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.dcell:focus-within{box-shadow:inset 0 0 0 2px var(--brand);background:var(--bg)}.dcell .reset{z-index:2;width:22px;height:22px;position:absolute;top:50%;right:3px;transform:translateY(-50%);padding:0!important}.ichip .dlabel{width:auto}.dline .dlabel{width:82px}.jobs th.c-dates{width:270px}.jobs .c-items{min-width:240px}.ichip{white-space:nowrap}.ichip .dlabel{width:auto;margin-right:2px}.dp-trigger{text-align:left;background:var(--card);border:1px solid var(--field-line);width:100%;box-shadow:none;color:var(--ink);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;font-weight:500;display:flex}.dp-trigger:hover:not(:disabled){border-color:var(--field-line-h)}.dp-trigger:focus-visible,.dp-trigger[aria-expanded=true]{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent);outline:0}.dp-trigger.empty .dp-text{color:var(--ph);font-weight:400}.dp-ico{color:var(--muted);flex:none}.dp-trigger.compact{background:0 0;border:0;border-radius:0;justify-content:flex-start;padding:9px 10px;font-size:13px}.dp-trigger.compact:focus-visible,.dp-trigger.compact[aria-expanded=true]{box-shadow:inset 0 0 0 2px var(--brand)}.dcell.inherit .dp-trigger{color:var(--muted);font-style:italic}.dcell.own .dp-trigger{padding-right:28px;font-weight:600}.dp-pop{z-index:3500;background:var(--card);width:322px;color:var(--ink);border:1px solid var(--line);box-shadow:0 12px 32px #00000047,var(--shadow-lg);border-radius:14px;padding:12px;position:fixed}.dp-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.dp-head strong{font-size:14px}.dp-nav{width:30px;height:30px;box-shadow:none;background:0 0;border-color:#0000;padding:0;font-size:18px;line-height:1}.dp-nav:hover:not(:disabled){background:var(--bg);border-color:var(--line)}.dp-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.dp-wd{text-align:center;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:4px 0;font-size:10.5px;font-weight:700}.dp-day{height:46px;box-shadow:none;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:space-between;align-items:center;padding:5px 2px 4px;display:flex}.dp-day:hover:not(:disabled){background:var(--bg);border-color:var(--field-line)}.dp-num{font-size:13px;font-weight:600;line-height:1}.dp-day.out{opacity:.38}.dp-day:disabled{opacity:.22;cursor:not-allowed}.dp-day.today{box-shadow:inset 0 0 0 1.5px var(--brand)}.dp-day.lvl-some{background:color-mix(in srgb,var(--brand) 7%,transparent)}.dp-day.lvl-busy{background:color-mix(in srgb,var(--warn) 20%,transparent);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.dp-day.lvl-full{background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:color-mix(in srgb,var(--danger) 55%,transparent)}.dp-day.sel{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.dp-day.sel .dp-num{color:var(--brand-ink)}.dp-day:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.dp-counts{gap:3px;min-height:14px;display:flex}.dp-counts span{text-align:center;color:#fff;border-radius:4px;min-width:15px;padding:2px 4px;font-size:10px;font-weight:700;line-height:1}.dp-counts .c-d{background:var(--s-design)}.dp-counts .c-p{background:var(--s-production)}.dp-info{background:var(--bg);border-radius:8px;min-height:56px;margin-top:10px;padding:8px 10px;font-size:12.5px}.dp-info-date{margin-bottom:4px;font-weight:600}.dp-info-rows{flex-wrap:wrap;gap:4px 16px;display:flex}.dp-info-none{color:var(--muted)}.dp-info .c-d,.dp-info .c-p,.dp-legend .c-d,.dp-legend .c-p{align-items:center;gap:6px;display:inline-flex}.dp-info i,.dp-legend i{border-radius:3px;width:9px;height:9px;display:inline-block}.dp-info .c-d i,.dp-legend .c-d i{background:var(--s-design)}.dp-info .c-p i,.dp-legend .c-p i{background:var(--s-production)}.dp-foot{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:11.5px;display:flex}.dp-legend{gap:12px;display:flex}.dp-actions{gap:6px;display:flex}.jobs.simple .c-items{min-width:200px}.isum-n{font-size:13.5px;font-weight:600}.isum-stages{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.spill{background:color-mix(in srgb,var(--c) 14%,transparent);color:color-mix(in srgb,var(--c) 70%,var(--ink));border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.spill i{background:var(--c);border-radius:50%;width:7px;height:7px}.jobs.simple .row-actions button.primary{padding:4px 12px}.view .dlg{padding:26px 28px}.view-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.view-no{letter-spacing:.04em;color:var(--muted);font-size:12.5px;font-weight:700}.view-name{margin:2px 0 6px!important;font-size:24px!important}.view-sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13.5px;display:flex}.view-sub a{color:var(--brand);font-weight:500;text-decoration:none}.view-late{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-radius:999px;padding:3px 12px;font-size:12.5px;font-weight:700}.facts{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;margin:20px 0 26px;display:grid;overflow:hidden}.fact{background:var(--card);flex-direction:column;gap:3px;padding:12px 16px;display:flex}.fact-label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:700}.fact-value{font-size:14px;font-weight:600}.fact.soon .fact-value{color:var(--warn)}.fact.late .fact-value{color:var(--danger)}.fact-none{color:var(--muted);font-style:normal;font-weight:400}.view-items-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.view-items-head h3{margin:0;font-size:16px}.view-items-head h3 span{background:var(--bg);border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:600}.view-hint{color:var(--muted);font-size:12.5px}.unsaved{color:var(--warn);align-self:center;font-size:12.5px;font-weight:600}.itemrow .cell .stage-select{margin:0 6px}.stage-locked{color:var(--muted);font-size:12px;font-style:italic}.items-wrap.with-stage .itemrow{grid-template-columns:36px minmax(130px,3fr) minmax(78px,1fr) 58px minmax(105px,1.6fr) minmax(98px,1fr) minmax(104px,.8fr) minmax(104px,.8fr) 124px minmax(110px,1.6fr) 36px;min-width:1000px}.items-wrap.with-stage .addrow{min-width:1000px}.designs{border-top:1px solid var(--line);margin-top:34px;padding-top:24px}.dropzone{text-align:center;border:2px dashed var(--dash);background:color-mix(in srgb,var(--bg) 40%,var(--card));color:var(--muted);border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;transition:border-color .12s,background .12s;display:flex}.dropzone.over{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,var(--card));color:var(--ink)}.dz-text strong{color:var(--ink)}.dz-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.dz-for{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:500;display:flex}.dz-for select{width:auto;max-width:220px;padding:7px 10px}.dz-hint{font-size:12px}.uploads{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.uploads li{border:1px solid var(--line);background:var(--card);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.uploads li.err{border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}.up-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.up-bar{background:var(--line);border-radius:999px;flex:0 0 180px;height:6px;overflow:hidden}.up-bar span{background:var(--brand);height:100%;transition:width .15s;display:block}.up-pct{text-align:right;font-variant-numeric:tabular-nums;width:38px;color:var(--muted)}.up-msg{color:var(--danger);font-weight:500}.designs-empty{color:var(--muted);margin:14px 0 0;font-size:13.5px}.filegrid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:16px 0 0;padding:0;list-style:none;display:grid}.filecard{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.thumb{background:var(--bg);place-items:center;height:140px;text-decoration:none;display:grid;overflow:hidden}.thumb img{object-fit:contain;width:100%;height:100%}.thumb .ext{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);letter-spacing:.04em;border-radius:8px;padding:8px 14px;font-size:18px;font-weight:800}.fmeta{min-width:0;padding:10px 12px 6px}.fname{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.fsub{color:var(--muted);margin-top:2px;font-size:12px}.ftag{background:var(--bg);border:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;vertical-align:top;border-radius:6px;max-width:100%;margin-top:6px;padding:1px 8px;font-size:11.5px;font-weight:600;display:inline-block;overflow:hidden}.factions{gap:6px;margin-top:auto;padding:8px 12px 12px;display:flex}.btnlink{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;align-items:center;padding:4px 10px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.btnlink:hover{border-color:var(--btn-line-h)}.rowmenu-btn{vertical-align:middle;width:30px;height:30px;box-shadow:none;color:var(--muted);background:0 0;border-color:#0000;border-radius:8px;place-items:center;margin-left:2px;padding:0;display:inline-grid}.rowmenu-btn:hover:not(:disabled),.rowmenu-btn[aria-expanded=true]{background:var(--bg);border-color:var(--line);color:var(--ink)}.rowmenu{z-index:1000;background:var(--card);min-width:168px;color:var(--ink);border:1px solid var(--line);box-shadow:0 12px 28px #00000047,var(--shadow-lg);border-radius:12px;padding:6px;position:fixed}.rowmenu-item{width:100%;box-shadow:none;text-align:left;color:var(--ink);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:500;display:flex}.rowmenu-item:hover,.rowmenu-item:focus-visible{background:var(--bg);outline:0}.rowmenu-item.danger{color:var(--danger)}.rowmenu-item.danger:hover,.rowmenu-item.danger:focus-visible{background:color-mix(in srgb,var(--danger) 12%,transparent)}.rowmenu-item+.rowmenu-item{margin-top:2px}.prio{background:color-mix(in srgb,var(--c) 14%,transparent);color:color-mix(in srgb,var(--c) 75%,var(--ink));white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-flex}.prio i{background:var(--c);border-radius:50%;width:7px;height:7px}.prio-normal{font-weight:600}.jobs th.c-prio{width:112px}.prio-seg{border:1px solid var(--field-line);background:var(--card);border-radius:10px;grid-template-columns:repeat(4,auto);gap:4px;padding:4px;display:inline-grid}.prio-seg button{box-shadow:none;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:7px;padding:7px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.prio-seg button i{background:var(--c);border-radius:50%;width:8px;height:8px}.prio-seg button:hover:not(.on){background:var(--bg);color:var(--ink);border-color:#0000}.prio-seg button.on{background:color-mix(in srgb,var(--c) 16%,transparent);border-color:color-mix(in srgb,var(--c) 55%,transparent);color:color-mix(in srgb,var(--c) 80%,var(--ink))}@media (width<=560px){.prio-seg{grid-template-columns:repeat(2,auto)}}.modal-back{z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#05080e9e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--card);width:min(440px,100%);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 24px 60px #00000073}.modal h3{margin:0 0 8px;font-size:18px}.modal p{color:var(--muted);margin:0 0 16px;font-size:14px;line-height:1.5}.modal p strong{color:var(--ink)}.modal p.error{color:var(--danger);margin:8px 0 0;font-weight:600}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}button.danger-solid{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:600}button.danger-solid:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,#000);border-color:#0000}.prio-group{margin-bottom:26px}.prio-head{box-shadow:none;color:var(--ink);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;margin:0 0 10px;padding:4px 6px 4px 2px;display:flex}.prio-head:hover:not(:disabled){background:var(--bg);border-color:#0000}.prio-head .prio{padding:3px 12px;font-size:13.5px}.prio-count{color:var(--muted);font-size:13px;font-weight:500}.chev{color:var(--muted);transition:transform .15s}.chev.shut{transform:rotate(-90deg)}table.sheet.jobs.simple{table-layout:fixed;width:100%;min-width:940px}.jobs.simple th.c-job{width:120px}.jobs.simple th.c-cust{width:25%}.jobs.simple th.c-dates{width:262px}.jobs.simple th.c-actions{width:128px}.jobs.simple .c-cust,.jobs.simple .c-items{min-width:0}.jobs.simple .cust{overflow-wrap:anywhere}.rowmenu-heading{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:8px 10px 4px;font-size:10.5px;font-weight:700}.rowmenu-sep{background:var(--line);height:1px;margin:6px 4px}.rowmenu-label{flex:1}.rowmenu-check{color:var(--brand);font-weight:800}.rowmenu-item.checked{font-weight:700}.pdot{background:var(--c);border-radius:50%;flex:none;width:9px;height:9px;margin:0 3.5px}.toast{z-index:1500;background:var(--ink);color:var(--bg);border-radius:12px;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:13.5px;font-weight:500;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0006}.toast .small{color:var(--bg);border-color:color-mix(in srgb,var(--bg) 45%,transparent);background:0 0;font-weight:700}.toast .small:hover:not(:disabled){background:color-mix(in srgb,var(--bg) 15%,transparent);border-color:var(--bg)}.toast-x{box-shadow:none;color:var(--bg);opacity:.7;background:0 0;border:0;padding:2px 8px;font-size:18px;line-height:1}@media print{.toast{display:none}}.desg-head .avatar{background:color-mix(in srgb,var(--s-design) 22%,transparent);width:28px;height:28px;color:var(--s-design);border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:inline-grid}.desg-name{font-size:16px;font-weight:700}.desg-empty{border:1px dashed var(--dash);color:var(--muted);border-radius:12px;padding:18px 16px;font-size:13.5px}.jobs .c-job .prio{margin-top:6px;padding:1px 8px;font-size:11px}.readybtn{border:1px solid color-mix(in srgb,var(--s-done) 55%,var(--line));background:color-mix(in srgb,var(--s-done) 14%,transparent);color:color-mix(in srgb,var(--s-done) 75%,var(--ink));box-shadow:none;white-space:nowrap;border-radius:8px;flex:none;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-flex}.readybtn:hover:not(:disabled){background:var(--s-done);border-color:var(--s-done);color:#fff}.past-note{color:var(--muted);margin-top:8px;font-size:12px}.desg-actions{flex-direction:column;align-items:stretch;gap:6px;display:flex}.desg-actions button{width:100%}.avatar{background:color-mix(in srgb,var(--s-design) 22%,transparent);width:28px;height:28px;color:var(--s-design);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:inline-grid}.avatar.lg{width:46px;height:46px;font-size:19px}.dhome-sum{color:var(--muted);margin:0 0 18px;font-size:14px}.dhome-sum strong{color:var(--ink)}.dgrid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:16px;display:grid}.dcard{text-align:left;background:var(--card);border:1px solid var(--line);width:100%;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:18px;display:flex}.dcard:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:var(--shadow-lg)}.dcard.idle{opacity:.78}.dcard-top{align-items:center;gap:14px;display:flex}.dcard-name{font-size:17px;font-weight:700}.dcard-sub{color:var(--muted);margin-top:2px;font-size:13px}.dcard-go{color:var(--muted);margin-left:auto;font-size:26px;line-height:1}.dcard-jobs{margin:16px 0 0;padding:0;list-style:none}.dcard-jobs li{border-top:1px solid var(--line-soft);align-items:center;gap:10px;padding:7px 0;font-size:13.5px;display:flex}.dcard-jobs .pdot{margin:0}.dj-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.dj-n{color:var(--muted);flex:none;font-size:12px}.dj-more{color:var(--muted);font-size:12.5px}.dcard-due{background:var(--bg);color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:9px 12px;font-size:12.5px;display:flex}.dcard-due strong{color:var(--ink)}.dcard-due.soon strong{color:var(--warn)}.dcard-due.late strong{color:var(--danger)}.dwork-head{align-items:center;gap:14px;margin:0 0 20px;display:flex}.dwork-head h2{letter-spacing:-.01em;margin:0;font-size:24px}.dwork-head p{color:var(--muted);margin:2px 0 0;font-size:13.5px}.jobblock{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-bottom:18px;overflow:hidden}.jb-head{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 45%,var(--card));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;padding:14px 18px;display:flex}.jb-main{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.jb-no{color:var(--muted);font-size:12.5px;font-weight:700}.jb-name{font-size:16px}.jb-main .event{margin:0}.jb-dates{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 18px;font-size:13px;display:flex}.jb-dates strong{color:var(--ink)}.jb-dates .soon strong{color:var(--warn)}.jb-dates .late strong{color:var(--danger)}.worklist{margin:0;padding:0;list-style:none}.work{border-top:1px solid var(--line-soft);grid-template-columns:minmax(200px,1.1fr) minmax(280px,1.7fr) max-content;align-items:start;gap:20px;padding:18px;display:grid}.work:first-child{border-top:0}.work .iname{font-size:15.5px;font-weight:700}.work .imeta{font-size:13px}.work .inote{opacity:.85;white-space:normal;word-break:break-word;margin-top:6px;font-size:13px;font-style:italic}.work-due{color:var(--muted);margin-top:10px;font-size:12.5px}.work-due strong{color:var(--ink)}.work-due.soon strong{color:var(--warn)}.work-due.late strong{color:var(--danger)}.work-due em{font-style:normal}.minidrop{border:2px dashed var(--dash);color:var(--muted);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:border-color .12s,background .12s;display:flex}.minidrop.over{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,var(--card))}.minidrop button{color:var(--brand);align-items:center;gap:7px;font-weight:600;display:inline-flex}.upl{border:1px solid var(--line);border-radius:8px;align-items:center;gap:10px;margin-top:8px;padding:6px 10px;font-size:13px;display:flex}.upl.err{border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}.upl .up-bar{flex:0 0 120px}.wfiles{margin:10px 0 0;padding:0;list-style:none}.wfiles li{border-top:1px solid var(--line-soft);grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.wfiles li:first-child{border-top:0}.wthumb{background:var(--bg);border-radius:8px;place-items:center;width:42px;height:42px;text-decoration:none;display:grid;overflow:hidden}.wthumb img{object-fit:cover;width:100%;height:100%}.wthumb span{color:var(--brand);font-size:11px;font-weight:800}.wname{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.wsize{color:var(--muted);font-size:12px}.wdel{width:26px;height:26px;box-shadow:none;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:0;font-size:18px;line-height:1}.wdel:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-color:#0000}.work-act{justify-content:flex-end;display:flex}.readybtn.big{white-space:nowrap;padding:11px 18px;font-size:14px}.nofile{text-align:right;color:var(--warn);flex-direction:column;align-items:flex-end;gap:8px;font-size:12.5px;font-weight:600;display:flex}.nofile div{gap:6px;display:flex}@media (width<=980px){.work{grid-template-columns:1fr}.work-act,.nofile{justify-content:flex-start;align-items:stretch}}.wfiles li.wfile{border-top:1px solid var(--line-soft);padding:6px 0;display:block}.wfiles li.wfile:first-child{border-top:0}.wrow{grid-template-columns:42px minmax(0,1fr) auto auto auto;align-items:center;gap:10px;display:grid}.wmain{flex-direction:column;min-width:0;display:flex}.shared{color:var(--brand);margin-top:2px;font-size:11.5px;font-weight:600}.sharebtn{box-shadow:none}.sharebtn.on{border-color:var(--brand);color:var(--brand)}.sharebox{background:var(--bg);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 2px 52px;padding:10px 12px;display:flex}.sharebox-t{color:var(--muted);font-size:12px;font-weight:600}.chipcheck{border:1px solid var(--field-line);background:var(--card);color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:7px;margin:0;padding:4px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.chipcheck input{width:14px;height:14px;accent-color:var(--brand);margin:0;padding:0}.chipcheck.on{border-color:color-mix(in srgb,var(--brand) 60%,var(--line));background:color-mix(in srgb,var(--brand) 12%,var(--card));color:var(--ink)}.chipcheck:has(input:disabled){opacity:.75;cursor:not-allowed}.multi{border:1px solid color-mix(in srgb,var(--brand) 40%,var(--line));background:color-mix(in srgb,var(--brand) 5%,var(--card));border-radius:12px;flex-direction:column;gap:10px;margin:14px 18px 4px;padding:14px 16px;display:flex}.multi-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.multi-head strong{font-size:14px}.multi-head span{color:var(--muted);font-size:12.5px}.multi-items{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.linkbtn.tiny{color:var(--brand);padding:2px 6px;font-size:12px}.minidrop button:disabled{color:var(--muted)}.slot-title{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:11px;font-weight:700}.slot-note{color:var(--warn);margin:8px 0 0;font-size:12.5px;font-weight:600}.general{border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 40%,var(--card));flex-direction:column;gap:10px;margin:0;padding:16px 18px 18px;display:flex}.general-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.general-head strong{font-size:14px}.general-head span{color:var(--muted);font-size:12.5px}.general .wfiles{margin-top:2px}.atabs{border:1px solid var(--line);background:var(--card);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.atabs button{box-shadow:none;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;padding:8px 18px;font-size:14px;font-weight:600;display:inline-flex}.atabs button span{background:var(--bg);text-align:center;border-radius:999px;min-width:22px;padding:1px 7px;font-size:12px}.atabs button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);border-color:color-mix(in srgb,var(--brand) 50%,transparent);color:var(--ink)}.atabs button.on span{background:var(--brand);color:var(--brand-ink)}.ahint{color:var(--muted);margin:12px 0 18px;font-size:13.5px}.acards{margin:0;padding:0;list-style:none}.acard{border-top:1px solid var(--line-soft);grid-template-columns:minmax(190px,.8fr) minmax(260px,2.2fr) 190px;align-items:start;gap:22px;padding:18px;display:grid}.acard:first-child{border-top:0}.acard .iname{font-size:16px;font-weight:700}.acard .inote{white-space:normal;word-break:break-word;margin-top:6px;font-size:13px;font-style:italic}.acard-designs,.agrid{flex-wrap:wrap;gap:14px;display:flex}.adesign{color:var(--ink);border:1px solid var(--line);background:var(--bg);border-radius:12px;flex-direction:column;gap:6px;text-decoration:none;display:flex;overflow:hidden}.adesign:hover{border-color:var(--brand)}.adesign.img{max-width:100%}.adesign.img img{object-fit:contain;background:repeating-conic-gradient(var(--line-soft) 0 25%,transparent 0 50%) 50%/16px 16px;max-width:min(100%,520px);max-height:340px;display:block}.adesign span{text-overflow:ellipsis;white-space:nowrap;max-width:520px;padding:0 12px 10px;font-size:12.5px;font-weight:600;overflow:hidden}.adesign.doc{justify-content:center;align-items:flex-start;gap:4px;min-width:200px;padding:16px}.adesign.doc b{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);letter-spacing:.04em;border-radius:7px;padding:4px 10px;font-size:15px}.adesign.doc span{max-width:260px;padding:0}.adesign.doc em{color:var(--muted);font-size:12px;font-style:normal}.nodesign{border:1px dashed var(--dash);color:var(--warn);border-radius:12px;padding:18px 16px;font-size:13.5px;font-weight:600}.acard-act{flex-direction:column;gap:10px;display:flex}.approvebtn{border:1px solid var(--s-done);background:var(--s-done);color:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-size:15px;font-weight:700;display:inline-flex;box-shadow:0 1px 2px #0003}.approvebtn:hover:not(:disabled){background:color-mix(in srgb,var(--s-done) 85%,#000);border-color:#0000}.rejectbtn{border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line));color:var(--danger);box-shadow:none;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:700;display:inline-flex}.rejectbtn:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:var(--danger)}.reject-box label{margin-bottom:6px;font-size:12.5px}.reject-box textarea{resize:vertical;min-height:70px}.reject-btns{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.ageneral{border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 40%,var(--card));padding:12px 18px 16px}.ageneral summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:600}.ageneral .agrid{margin-top:12px}@media (width<=980px){.acard{grid-template-columns:1fr}.acard-act{flex-flow:wrap}.acard-act>button{flex:1}}.rejected{border:1px solid color-mix(in srgb,var(--danger) 50%,var(--line));background:color-mix(in srgb,var(--danger) 10%,transparent);border-radius:10px;flex-direction:column;gap:2px;margin-top:10px;padding:10px 12px;font-size:13px;display:flex}.rejected strong{color:var(--danger);letter-spacing:.03em;text-transform:uppercase;font-size:12px}.rejected span{white-space:pre-wrap;word-break:break-word}.agallery{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.gcard{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.gcover{width:100%;height:340px;box-shadow:none;cursor:zoom-in;background:#0b0e14;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.gcover img{object-fit:contain;width:100%;height:100%}.gcover:disabled{cursor:default}.gcover.none{background:var(--bg)}.gnone{text-align:center;color:var(--warn);padding:20px;font-size:13.5px;font-weight:600}.gdoc{background:color-mix(in srgb,var(--brand) 18%,transparent);color:var(--brand);letter-spacing:.04em;border-radius:12px;padding:10px 20px;font-size:28px;font-weight:800}.gbadge{color:#fff;background:#000000a6;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;position:absolute;top:10px;left:10px}.gopen{color:#fff;opacity:0;background:linear-gradient(#0000,#000000b3);padding:26px 12px 12px;font-size:13px;font-weight:700;transition:opacity .15s;position:absolute;inset:auto 0 0}.gcover:hover .gopen,.gcover:focus-visible .gopen{opacity:1}.gcap{padding:14px 16px 4px}.gname{align-items:baseline;gap:8px;display:flex}.gname strong{font-size:16px}.gname span{color:var(--muted);font-size:12.5px;font-weight:600}.gsub{color:var(--muted);margin-top:3px;font-size:12.5px}.gsub .pdot{margin:0 6px 0 0;display:inline-block}.gsub em{font-style:normal}.gnote{margin-top:6px;font-size:12.5px;font-style:italic}.gact{flex-direction:column;gap:8px;margin-top:auto;padding:12px 16px 16px;display:flex}.gact .approvebtn{padding:11px 16px}.gact .rejectbtn{padding:9px 16px}.viewer{z-index:3000;color:#e8ecf4;background:#090c11;flex-direction:column;font-family:inherit;display:flex;position:fixed;inset:0}.viewer button{color:inherit}.v-top{background:#0e131b;border-bottom:1px solid #ffffff1a;align-items:center;gap:14px;padding:10px 16px;display:flex}.v-close{width:38px;height:38px;box-shadow:none;background:0 0;border:1px solid #ffffff26;border-radius:10px;place-items:center;padding:0;display:grid}.v-close:hover{background:#ffffff1a;border-color:#ffffff4d}.v-title{flex-direction:column;flex:1;min-width:0;display:flex}.v-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.v-title strong em{color:#98a3b8;font-size:13px;font-style:normal;font-weight:600}.v-title span{color:#98a3b8;font-size:12.5px}.v-title .pdot{margin:0 5px 0 0;display:inline-block}.v-count{color:#98a3b8;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.v-main{flex:1;min-height:0;display:flex}.v-tools{background:#0e131b;border-right:1px solid #ffffff1a;flex-direction:column;gap:6px;width:86px;padding:12px 8px;display:flex;overflow-y:auto}.v-tools button{box-shadow:none;color:#cdd5e4;background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;font-size:11px;font-weight:600;display:flex}.v-tools button:hover:not(:disabled){background:#ffffff14}.v-tools button.on{color:#fff;background:#5b93ff38;border-color:#5b93ffb3}.v-tools button:disabled{opacity:.32;cursor:not-allowed}.v-sep{background:#ffffff1a;height:1px;margin:4px 2px}.v-colors{grid-template-columns:repeat(2,1fr);gap:7px;padding:2px 6px;display:grid}.v-colors button{background:var(--c);border:2px solid #ffffff40;border-radius:50%;width:26px;height:26px;padding:0}.v-colors button.on{border-color:#fff;box-shadow:0 0 0 2px #5b93ffe6}.v-widths{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.v-widths button{padding:6px 0;font-size:12px}.v-note{color:#98a3b8;margin:8px 2px 0;font-size:11px;line-height:1.35}.v-stage{flex:1;place-items:center;min-width:0;padding:12px;display:grid;position:relative;overflow:hidden}.v-box{background:repeating-conic-gradient(#1a2029 0 25%,#121820 0 50%) 50%/20px 20px;line-height:0;position:relative;box-shadow:0 8px 40px #0009}.v-box img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.v-box canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.v-box canvas.drawing{cursor:crosshair}.v-box canvas.tool-text{cursor:text}.v-text{background:#0000008c;border:2px dashed #fff;border-radius:6px;outline:0;min-width:150px;padding:2px 6px;font-weight:700;line-height:1.2;position:absolute}.v-pdf{background:#fff;border:0;border-radius:8px;width:100%;height:100%}.v-file{border:1px solid #ffffff26;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:30px;display:flex}.v-file b{color:#8fb0ff;background:#5b93ff33;border-radius:12px;padding:10px 22px;font-size:30px}.v-file em{color:#98a3b8;font-style:normal}.v-loading{color:#98a3b8;position:absolute}.v-nav{z-index:2;width:48px;height:64px;box-shadow:none;opacity:.75;background:#00000073;border:0;border-radius:12px;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.v-nav:hover{opacity:1;background:#000000b3}.v-nav.prev{left:10px}.v-nav.next{right:10px}.v-bottom{background:#0e131b;border-top:1px solid #ffffff1a;align-items:center;gap:18px;padding:10px 16px;display:flex}.v-strip{flex:1;gap:8px;min-width:0;padding:2px;display:flex;overflow-x:auto}.v-thumb{width:76px;height:56px;box-shadow:none;opacity:.7;background:#05070a;border:2px solid #0000;border-radius:9px;flex:none;padding:0;position:relative;overflow:hidden}.v-thumb:hover{opacity:1}.v-thumb.on{opacity:1;border-color:#5b93ff}.v-thumb img{object-fit:cover;width:100%;height:100%}.v-thumb b{color:#8fb0ff;font-size:13px}.v-dot{background:#ef4444;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;right:4px;box-shadow:0 0 0 2px #05070a}.v-act{flex:none;align-items:center;gap:10px;display:flex}.v-err{color:#ff8a80;max-width:260px;font-size:12.5px;font-weight:600}.v-save{box-shadow:none;background:0 0;border:1px solid #ffffff4d;border-radius:10px;padding:10px 16px;font-weight:700}.v-save:hover:not(:disabled){background:#ffffff1a}.viewer .approvebtn{color:#fff;padding:11px 24px;font-size:15px}.viewer .rejectbtn{color:#ff8a80;padding:10px 20px}.v-reject{flex-direction:column;gap:6px;width:min(440px,60vw);display:flex}.v-reject label{color:#cdd5e4;margin:0;font-size:12.5px;font-weight:600}.v-reject label em{color:#98a3b8;font-style:normal;font-weight:500}.v-reject textarea{resize:none;color:#e8ecf4;background:#05070a;border-color:#ffffff40}.markups{margin-top:12px}.ftag.mk{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,var(--line));color:var(--danger)}@media (width<=599px){.v-main{flex-direction:column}.v-tools{border-bottom:1px solid #ffffff1a;border-right:0;flex-direction:row;width:auto;overflow-x:auto}.v-tools button{min-width:58px}.v-bottom{flex-direction:column;align-items:stretch}.v-act{justify-content:flex-end}}@media print{.viewer{display:none}}.v-tools button{gap:1px;padding:5px 2px;font-size:10.5px}.v-tools .v-sep{margin:2px}.v-colors{gap:6px}.v-stage .v-box{will-change:transform;max-width:none;position:absolute;top:50%;left:50%}.v-box canvas.moving{cursor:grab}.v-box canvas.moving.grabbing{cursor:grabbing}.v-zoom{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e14d1;border:1px solid #ffffff2e;border-radius:12px;align-items:center;gap:4px;padding:5px;display:flex;position:absolute;bottom:16px;right:16px;box-shadow:0 6px 24px #00000080}.v-zoom button{min-width:34px;height:34px;box-shadow:none;color:#e8ecf4;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;padding:0 9px;font-size:12.5px;font-weight:700;display:grid}.v-zoom button:hover:not(:disabled){background:#ffffff1f}.v-zoom button.on{background:#5b93ff47;border-color:#5b93ffb3}.v-zoom button:disabled{opacity:.35;cursor:not-allowed}.v-pct{text-align:center;font-variant-numeric:tabular-nums;color:#cdd5e4;min-width:52px;font-size:13px;font-weight:700}.v-zsep{background:#ffffff2e;width:1px;height:20px;margin:0 3px}.v-box.paper{background:#fff}.v-box canvas.tool-eraser{cursor:crosshair}.v-pads{flex-direction:column;align-items:center;gap:4px;padding:0 2px;display:flex}.v-pads .v-lab{letter-spacing:.05em;text-transform:uppercase;color:#98a3b8;text-align:center;font-size:10px;font-weight:700;line-height:1.1}.v-pads div{grid-template-columns:repeat(3,1fr);gap:3px;width:100%;display:grid}.v-pads button{padding:6px 0;font-size:11.5px;font-weight:700}.v-tools{gap:2px;padding:6px 5px}.v-tools button{padding:4px 2px}.v-tools button svg{width:18px;height:18px}.v-colors button{width:22px;height:22px}.v-pads{gap:3px}.v-stage.white{background:#fff}.v-stage.white .v-box{background:#fff;box-shadow:0 0 0 1px #0000001a}.v-stage.white .v-box img{box-shadow:0 2px 16px #00000047}.v-stage.moving{cursor:grab}.v-stage.moving.grabbing{cursor:grabbing}.v-stage.drawing{cursor:crosshair}.v-stage.drawing.tool-text{cursor:text}.v-stage.white .v-loading{color:#667085}.v-box canvas{cursor:inherit}.dwork-fold{align-self:center;gap:6px;margin-left:auto;display:flex}.jb-toggle{min-width:0;box-shadow:none;text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.jb-toggle:hover:not(:disabled){border-color:#0000}.jb-toggle .chev{color:var(--muted);flex:none}.jb-head.folded{border-bottom:0}.jb-sum{color:var(--muted);font-size:12.5px;font-weight:600}.jb-back{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:700}.jobblock:has(.jb-head.folded){margin-bottom:10px}.jobs .csub{color:var(--muted);margin-top:2px;font-size:12.5px}.sentlist{flex-direction:column;gap:8px;margin:0;padding:6px 18px 14px;list-style:none;display:flex}.sentlist li{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.sent-main{flex-wrap:wrap;flex:1;align-items:baseline;gap:4px 8px;min-width:160px;display:flex}.sent-main em{color:var(--muted);font-style:normal}.sent-job{color:var(--muted);flex-basis:100%;font-size:12.5px}.sent-step{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.sent-step.client{background:color-mix(in srgb,var(--s-production) 16%,transparent);color:var(--s-production)}.sign-back{z-index:4000}.sign-card{background:var(--card);width:min(560px,100%);color:var(--ink);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;display:flex;box-shadow:0 24px 60px #00000080}.sign-card h2{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;font-size:16px;display:flex}.sign-card h2 span{color:var(--muted);font-size:12.5px;font-weight:500}.sign-sub{color:var(--muted);margin:0 0 6px;font-size:13.5px}.sign-card label{color:var(--muted);margin-top:4px;font-size:12.5px;font-weight:600}.sign-pad{border:1px dashed var(--dash);touch-action:none;background:#fff;border-radius:10px;position:relative;overflow:hidden}.sign-pad canvas{cursor:crosshair;touch-action:none;display:block}.sign-hint{color:#9aa3b2;pointer-events:none;place-items:center;font-size:15px;display:grid;position:absolute;inset:0}.sign-btns{align-items:center;gap:8px;margin-top:10px;display:flex}.sign-card .error{margin:0}.signs{flex-wrap:wrap;flex-basis:100%;gap:10px;margin-top:6px;display:flex}.signs figure{color:var(--muted);flex-direction:column;gap:2px;margin:0;font-size:11.5px;display:flex}.signs img{border:1px solid var(--line);background:#fff;border-radius:6px;width:auto;height:38px}.pitem{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 18px;list-style:none;display:flex}.pitem-top{flex-wrap:wrap;justify-content:space-between;gap:14px;display:flex}.pitem-side{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.ready{border-radius:999px;padding:3px 12px;font-size:12.5px;font-weight:700}.ready.ok{background:color-mix(in srgb,var(--s-done) 18%,transparent);color:var(--s-done)}.ready.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.checks{flex-direction:column;gap:3px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.checks li:before{content:"✓ ";font-weight:700}.checks li.ok{color:var(--muted)}.checks li.ok:before{color:var(--s-done)}.checks li.no{color:var(--danger);font-weight:600}.checks li.no:before{content:"✕ "}.pfiles ul,.pfiles-list{flex-direction:column;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.pfile{border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;padding:6px 8px;display:flex}.pthumb{background:var(--bg);width:44px;height:44px;color:var(--muted);border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.pthumb img{object-fit:cover;width:100%;height:100%}.pname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;overflow:hidden}.dlbtn{background:var(--accent);color:#fff;border-radius:9px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.dlbtn:hover{filter:brightness(1.1)}.general .pfiles-list{padding:0 18px 14px}.finishtick{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:center;gap:8px;margin-top:4px;padding:8px 12px;font-size:13.5px;font-weight:600;display:flex}.finishtick:hover{border-color:var(--s-done)}.finishtick input{width:18px;height:18px;accent-color:var(--s-done)}.finishtick em{color:var(--muted);font-style:normal;font-weight:500}.later-title{margin:26px 0 2px;font-size:15px}.later-sub{color:var(--muted);margin:0 0 10px;font-size:13px}.askform{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--accent) 6%,transparent);flex-direction:column;gap:8px;padding:14px 18px;display:flex}.askform label{font-size:13px;font-weight:600}.askform textarea,.askform select{width:100%}.askform-btns{justify-content:flex-end;gap:8px;display:flex}.reqlist{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;margin:0;padding:10px 18px;list-style:none;display:flex}.reqlist li{flex-wrap:wrap;align-items:center;gap:10px;font-size:13.5px;display:flex}.req-tag{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.req-tag.wait{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.req-tag.ok{background:color-mix(in srgb,var(--s-done) 18%,transparent);color:var(--s-done)}.req-msg{white-space:pre-wrap;word-break:break-word;flex:1;min-width:160px}.req-msg em{color:var(--muted);font-style:normal}.askbox{border:1px solid color-mix(in srgb,var(--warn) 55%,var(--line));background:color-mix(in srgb,var(--warn) 10%,transparent);border-radius:10px;flex-direction:column;gap:8px;margin:12px 18px 0;padding:12px 14px;display:flex}.ask-title{color:var(--warn);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:800}.ask{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ask-main{flex-direction:column;flex:1;gap:2px;min-width:200px;display:flex}.ask-msg{white-space:pre-wrap;word-break:break-word;font-size:14px;font-weight:600}.ask-meta,.ask-hint{color:var(--muted);font-size:12.5px}.ask-banner{border:1px solid color-mix(in srgb,var(--warn) 55%,var(--line));background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--warn);border-radius:10px;margin:0 0 14px;padding:10px 14px;font-size:13.5px;font-weight:700}.pitem{gap:8px;padding:12px 18px}.pitem-info{flex:1;min-width:0}.pitem-side{flex-flow:wrap;justify-content:flex-end;align-items:center;gap:14px}.pitem-side .finishtick{margin-top:0}.pfiles-list.tight{margin:0;padding:0}.sign-tabs{gap:6px;display:flex}.sign-tabs button{border:1px solid var(--line);background:0 0;border-radius:8px;flex:1;padding:6px 8px;font-size:13px;font-weight:600}.sign-tabs button.on{background:var(--accent-soft,color-mix(in srgb,var(--accent) 16%,transparent));border-color:var(--accent);color:var(--accent)}.sign-card input,.sign-card select,.sign-card textarea{width:100%}.printlink{border:1px solid var(--line);color:var(--ink);border-radius:9px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.printlink:hover{border-color:var(--accent);color:var(--accent)}a.v-save{align-items:center;text-decoration:none;display:inline-flex}.proofchip{border:1px solid var(--line);color:var(--muted);border-radius:8px;flex-direction:column;gap:1px;margin:0;padding:6px 10px;font-size:12px;display:flex}.proofchip a{color:var(--accent);font-weight:600}.printpage{flex-direction:column;gap:16px;max-width:900px;margin:0 auto;padding:18px 16px 48px;display:flex}.printbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.printhint{color:var(--muted);font-size:13px}.printmsg{color:var(--muted)}.printfiles{flex-direction:column;gap:6px;font-size:14px;display:flex}.printfiles a{color:var(--accent);font-weight:600}.sheetpage{color:#111;border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;gap:12px;min-height:277mm;padding:20px 22px;font-family:system-ui,sans-serif;display:flex}.sh-band{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#fff;background:#14232b;border-radius:6px;justify-content:space-between;align-items:flex-end;gap:12px;padding:12px 16px;display:flex}.sh-kicker{letter-spacing:.03em;text-transform:uppercase;font-size:17px;font-weight:700}.sh-sub{opacity:.8;margin-top:2px;font-size:11.5px}.sh-jobno{letter-spacing:.02em;font:700 24px ui-monospace,monospace}.sh-cust{flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:0 2px;font-size:15px;display:flex}.sh-cust span{color:#555;font-size:13px}.sh-specs span,.sh-notes span{text-transform:uppercase;letter-spacing:.06em;color:#666;font-size:9.5px;font-weight:600;display:block}.sh-item{border:1.2px solid #111;border-radius:6px;flex-direction:column;gap:8px;padding:10px 14px;display:flex}.sh-item-name{font-size:22px;font-weight:700;line-height:1.15}.sh-item-name em{color:#555;margin-left:8px;font-size:16px;font-style:normal;font-weight:500}.sh-specs{flex-wrap:wrap;gap:6px 28px;font-size:13px;display:flex}.sh-specs b{font-weight:600}.sh-notes{border-top:1px solid #ddd;padding-top:6px;font-size:13px}.sh-designs{flex-direction:column;flex:1;justify-content:center;gap:10px;min-height:0;display:flex}.sh-design{text-align:center;margin:0}.sh-design img{object-fit:contain;border:1px solid #ccc;max-width:100%;max-height:130mm}.sh-design figcaption{color:#555;margin-top:2px;font-size:10px}.sh-doc{border:1px dashed #888;padding:14px;font-size:13px}.sh-doc span{color:#555;font-size:12px}.sh-sign{break-inside:avoid;border:1.5px solid #111;border-radius:6px;flex-direction:column;gap:10px;margin-top:auto;padding:10px 14px 8px;display:flex}.sh-sign-head{flex-wrap:wrap;align-items:center;gap:4px 18px;font-size:13px;display:flex}.sh-sign-head b{letter-spacing:.06em;text-transform:uppercase;margin-right:auto;font-size:11.5px}.sh-lines{flex-direction:column;gap:12px;display:flex}.sh-lines>div{align-items:flex-end;gap:6px;display:flex}.sh-lines span{color:#555;white-space:nowrap;font-size:10.5px}.sh-lines i{border-bottom:1px solid #111;flex:1;height:18px}.sh-lines .three{gap:16px}.sh-lines .three>div{flex:1;align-items:flex-end;gap:6px;display:flex}.sh-lines .three>.sigcell{flex:1.5}.sh-lines .sigcell i{height:44px}.sh-foot{color:#666;text-align:center;font-size:10.5px}@media print{html,body,#root,.printpage{background:#fff!important}.printpage{max-width:none;padding:0}.sheetpage{border:0;border-radius:0;min-height:272mm;padding:0}@page{size:A4;margin:12mm}}.sign-f{flex-direction:column;gap:3px;min-width:0;display:flex}.sign-f label{margin:0!important}.sign-card input,.sign-card select{padding:7px 9px;font-size:14px}.sign-grid{grid-template-columns:1fr 1fr;gap:8px 10px;display:grid}.sign-grid .wide{grid-column:1/-1}@media (width<=520px){.sign-grid{grid-template-columns:1fr}}.sign-btns{margin-top:4px}.sh-designer{border:1.5px solid #111;border-radius:6px;align-items:baseline;gap:8px;margin-left:auto;padding:3px 10px;display:flex}.sh-designer span{text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:#555!important;font-size:10px!important}.sh-designer b{letter-spacing:.02em;font-size:16px;font-weight:700}.sendrow{gap:8px;display:flex}.sendrow .printlink{flex:1}button.printlink{cursor:pointer;background:0 0;gap:6px}.wabtn{color:#25a05a!important;border-color:#25a05a!important}.wabtn:hover{background:#25a05a1f!important}.wanote{color:var(--muted);text-align:center;font-size:12px}.wacopy{flex-direction:column;gap:6px;display:flex}.wacopy-row{gap:8px;display:flex}.wacopy-row .wabtn{white-space:nowrap;flex:1;padding:8px 6px;font-size:12.5px}.wacopy .wanote{text-align:left}.proofpick{border:1px solid var(--line);border-radius:9px;align-items:center;gap:10px;min-width:0;padding:6px 8px;display:flex}.proofpick.empty{color:var(--muted);border-style:dashed;flex-wrap:wrap;font-size:13px}.proofpick img{object-fit:cover;border:1px solid var(--line);border-radius:6px;width:auto;max-width:90px;height:44px}.proofpick .pp-doc{background:var(--bg);width:44px;height:44px;color:var(--muted);border-radius:6px;place-items:center;font-size:11px;font-weight:700;display:grid}.proofpick .pp-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.proofpick kbd{border:1px solid var(--line);background:var(--bg);border-radius:4px;padding:1px 5px;font:600 11px ui-monospace,monospace}.proofpick.empty input[type=file]{width:auto;padding:4px 6px;font-size:12px}.recent-aprv{margin-top:26px}a.linkchip{border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;padding:5px 10px;font-weight:600;text-decoration:none;display:inline-flex}a.linkchip:hover{border-color:var(--accent);color:var(--accent)}.pullform{border:1px solid color-mix(in srgb,var(--danger) 45%,var(--line));background:color-mix(in srgb,var(--danger) 6%,transparent);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.pullform label{font-size:13px;font-weight:600}.pullform label em{color:var(--muted);font-style:normal;font-weight:400}.pullform textarea{width:100%}.pullwrap{flex-basis:100%}.pull-card{width:min(480px,100%)}.pull-what{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.pull-what strong{color:var(--ink)}.sign-card textarea{width:100%}.pb-reason{white-space:pre-wrap;word-break:break-word;border-left:3px solid var(--danger);background:color-mix(in srgb,var(--danger) 6%,transparent);border-radius:0 8px 8px 0;flex-basis:100%;padding:6px 10px;font-size:13.5px}.pb-reason span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px;font-weight:700;display:block}.stage-badge{color:#fff;background:var(--c);white-space:nowrap;white-space:normal;text-align:center;border-radius:8px;max-width:100%;padding:4px 10px;font-size:12.5px;font-weight:600;line-height:1.2;display:inline-block}.items-wrap.ro .itemrow{grid-template-columns:36px minmax(140px,3fr) minmax(80px,1.2fr) 56px minmax(110px,1.8fr) minmax(112px,1fr) minmax(96px,.8fr) minmax(100px,.8fr) 150px minmax(110px,1.8fr);min-width:1010px}.items-wrap.ro .itemrow:not(.ihead):hover{background:0 0}.rocell{overflow-wrap:break-word;align-items:center;font-size:14px;display:flex}.items-wrap.ro .itemrow>.cell{padding:6px 10px}.rocell.strong{font-weight:600}.rocell.inherit{color:var(--muted)}.v-stage{touch-action:none}.ho-cust{color:var(--muted);font-size:13px}.ho-cust a{color:var(--accent);font-weight:600;text-decoration:none}.ho-method{background:color-mix(in srgb,var(--s-handover) 18%,transparent);color:var(--s-handover);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.sign-card .pull-what{margin:0}.camview{flex-direction:column;gap:8px;display:flex}.camview video{object-fit:cover;background:#000;border-radius:10px;width:100%;max-height:190px}.camview-btns{justify-content:flex-end;gap:8px;display:flex}.snapbtn{align-items:center;gap:6px;font-weight:600;display:inline-flex}.sign-card{max-height:calc(100dvh - 32px);overflow-y:auto}.ph{max-width:560px;padding:max(12px,env(safe-area-inset-top)) 14px max(24px,env(safe-area-inset-bottom));flex-direction:column;gap:12px;min-height:100dvh;margin:0 auto;display:flex}.ph-top{justify-content:space-between;align-items:center;display:flex}.ph-top h1{margin:0;font-size:24px}.ph-sub{color:var(--muted);font-size:14px}.ph-refresh{border-radius:12px;width:46px;height:46px;padding:0;font-size:22px}.ph-chips{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.ph-chips button{border:1px solid var(--line);background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:1px;min-height:52px;padding:8px 4px;font-size:14px;font-weight:600;display:flex}.ph-chips button span{color:var(--muted);font-size:12px;font-weight:700}.ph-chips button.on{background:color-mix(in srgb,var(--s-handover) 18%,transparent);border-color:var(--s-handover);color:var(--s-handover)}.ph-chips button.on span{color:inherit}.ph-search{border-radius:12px;width:100%;min-height:48px;padding:12px 14px;font-size:16px}.ph-empty{text-align:center;color:var(--muted);border:1px dashed var(--dash);border-radius:14px;padding:36px 12px}.ph-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ph-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:6px;padding:14px;display:flex}.ph-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ph-due{color:var(--muted);font-size:13px;font-weight:600}.ph-due.late{color:var(--danger)}.ph-due.soon{color:var(--warn)}.ph-item{font-size:20px;font-weight:700;line-height:1.2}.ph-item em{color:var(--muted);margin-left:8px;font-size:16px;font-style:normal;font-weight:500}.ph-meta{color:var(--muted);font-size:14px}.ph-note{border-left:3px solid var(--line);color:var(--muted);padding:6px 10px;font-size:14px}.ph-job{font-size:15px;font-weight:600}.ph-job span{color:var(--muted);margin-right:4px;font:600 12px ui-monospace,monospace}.ph-cust{color:var(--muted);font-size:14px}.ph-contact{gap:8px;margin-top:6px;display:flex}.ph-contact>a{flex:1}.ph-phone{text-align:center;color:var(--muted);margin-bottom:2px;font-size:13px}.ph-call,.ph-wa,.ph-go{text-align:center;border-radius:14px;justify-content:center;align-items:center;min-height:52px;padding:0 10px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.ph-call{border:1px solid var(--line);color:var(--ink)}.ph-wa{color:#25a05a;border:1px solid #25a05a}.ph-go{background:var(--s-done);color:#fff;border:0;width:100%}.ph-recent h2{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:8px 0;font-size:14px}.ph-recent ul{flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.ph-recent li span{color:var(--muted);font-size:13px;display:block}.ph-foot{text-align:center;margin-top:auto;padding-top:12px}.ph-foot a{color:var(--muted);font-size:13px}.ph-toast{left:50%;bottom:max(20px,env(safe-area-inset-bottom));background:var(--ink);color:var(--bg);z-index:5000;border-radius:12px;padding:12px 18px;font-weight:600;position:fixed;transform:translate(-50%)}@media (width<=700px){.sign-card input,.sign-card textarea,.sign-card select{font-size:16px}.sign-card{border-radius:14px;padding:14px}}@media (pointer:coarse){.pastehint{display:none}}@media (width<=520px){.sign-btns{flex-wrap:wrap}.sign-btns .approvebtn{flex:1 0 100%;order:-1;min-height:54px;font-size:16px}.sign-btns button:not(.approvebtn){flex:1;min-height:46px}.sign-btns>span{display:none}}.picpicker{flex-direction:column;gap:8px;display:flex}.picthumbs{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.picthumb{border:1px solid var(--line);background:var(--bg);border-radius:10px;width:72px;height:72px;position:relative;overflow:hidden}.picthumb img{object-fit:cover;width:100%;height:100%;display:block}.picthumb .pp-doc{width:100%;height:100%;color:var(--muted);place-items:center;font-size:11px;font-weight:700;display:grid}.picthumb button{color:#fff;background:#000000a6;border:0;border-radius:50%;width:24px;height:24px;padding:0;font-size:16px;line-height:1;position:absolute;top:2px;right:2px}.pic-count{color:var(--muted);font-size:12px}.filebtn{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.filebtn:hover{border-color:var(--accent)}.ph-chips.two{grid-template-columns:1fr 1fr}.pa-img{aspect-ratio:4/3;cursor:zoom-in;background:#090c11;border:0;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.pa-img img{object-fit:contain;width:100%;height:100%;display:block}.pa-none,.pa-doc{color:var(--muted);text-align:center;place-items:center;padding:12px;font-size:14px;font-weight:600;display:grid;position:absolute;inset:0}.pa-badge,.pa-open{color:#fff;background:#0009;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;position:absolute;bottom:8px}.pa-badge{left:8px}.pa-open{right:8px}.pa-actions{grid-template-columns:1fr 1.4fr;gap:8px;margin-top:6px;display:grid}.pa-approve,.pa-reject{border-radius:14px;min-height:54px;font-size:16px;font-weight:700}.pa-approve{background:var(--s-done);color:#fff;border:0}.pa-reject{border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line));color:var(--danger);background:0 0}.zv{z-index:6000;color:#fff;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.zv-top{padding:max(10px,env(safe-area-inset-top)) 12px 8px;background:#0009;align-items:center;gap:10px;display:flex}.zv-close{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:12px;width:44px;height:44px;padding:0;font-size:26px;line-height:1}.zv-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.zv-zoom{opacity:.8;font-size:13px}.zv-stage{touch-action:none;-webkit-user-select:none;user-select:none;flex:1;place-items:center;min-height:0;display:grid;overflow:hidden}.zv-stage img{object-fit:contain;transform-origin:50%;will-change:transform;-webkit-user-drag:none;width:100%;height:100%}.zv-doc{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:20px;display:flex}.zv-doc a{color:#9ad;font-weight:700}.zv-nav{padding:8px 12px max(12px,env(safe-area-inset-bottom));background:#0009;gap:10px;display:flex}.zv-nav button{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:12px;flex:1;min-height:50px;font-size:16px;font-weight:600}.zv-nav button:disabled{opacity:.35}.pa-markup{border:1px solid var(--accent);min-height:48px;color:var(--accent);background:0 0;border-radius:12px;margin-top:6px;font-size:15px;font-weight:700}@media (width<=599px){.viewer.compact .v-tools{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;justify-content:center;gap:4px;padding:6px 8px;overflow:visible}.viewer.compact .v-tools button{flex:1 0 14%;min-width:0;min-height:50px;padding:4px 2px;font-size:11px}.viewer.compact .v-tools .v-sep,.viewer.compact .v-tools .v-pads{display:none}.viewer.compact .v-colors,.viewer.compact .v-widths{flex-wrap:wrap;flex:1 0 100%;justify-content:center;gap:12px;display:flex}.viewer.compact .v-colors button{flex:none;min-width:44px;min-height:44px}.viewer.compact .v-widths button{flex:none;min-width:52px;min-height:44px}.viewer.compact .v-strip{display:none}.viewer.compact .v-zoom{padding:3px;top:8px;bottom:auto;right:8px}.viewer.compact .v-zoom button{min-width:40px;min-height:40px}.viewer.compact .v-bottom{padding:8px 10px max(10px,env(safe-area-inset-bottom))}.viewer.compact .v-act{width:100%}.viewer.compact .v-act button{flex:1;min-height:52px;font-size:16px}.viewer.compact .v-title{min-width:0}.viewer.compact .v-title *{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.viewer.compact .v-tools button{min-height:44px}.viewer.compact .v-colors,.viewer.compact .v-widths{flex-wrap:nowrap;flex:0 auto;gap:6px}.viewer.compact .v-colors button{width:34px;min-width:34px;height:34px;min-height:34px}.viewer.compact .v-widths button{min-width:40px;min-height:36px;padding:0 6px}.viewer.compact .v-lab{display:none}.viewer.compact .v-tools>button:nth-last-child(-n+2){flex:0 0 60px;min-height:40px}}@media (width>=700px){.ph{max-width:1000px}.ph-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}}.ph-tools{align-items:center;gap:8px;display:flex;position:relative}.tm{position:static}.tm-pop{z-index:3000;background:var(--card);width:min(300px,100vw - 28px);color:var(--ink);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 34px #00000059}.tm-title{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.tm-seg{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tm-seg button{border:1px solid var(--line);background:0 0;border-radius:10px;min-height:46px;font-size:14px;font-weight:600}.tm-seg button.on{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent);color:var(--accent)}.tm-sw{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tm-sw>button,.tm-custom{cursor:pointer;border:2px solid #0000;border-radius:50%;width:38px;height:38px;padding:0}.tm-sw>button.on,.tm-custom.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--card) inset}.tm-custom{background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);display:inline-block;position:relative;overflow:hidden}.tm-custom input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.tm-reset{color:var(--muted);background:0 0;border:0;align-self:flex-start;padding:6px 0;font-size:13px;text-decoration:underline}.signoff{margin-top:18px}.signoff h3{margin:0 0 8px;font-size:15px}.signoff table{border-collapse:collapse;width:100%;font-size:13px}.signoff th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px;font-size:11px}.signoff td{vertical-align:top;border-bottom:1px solid var(--line);padding:8px}.so-cell{flex-direction:column;gap:2px;min-width:0;display:flex}.so-cell img{border:1px solid var(--line);background:#fff;border-radius:4px;align-self:flex-start;width:auto;max-width:140px;height:34px}.so-cell span{color:var(--muted);font-size:12px}.so-cell a{color:var(--accent);font-size:12px;font-weight:600}.so-pics{flex-wrap:wrap;gap:4px;display:flex}.so-pics img{object-fit:cover;width:44px;height:44px!important}.so-none{color:var(--muted)}.print-only{display:none}@media print{.screen-only,.view .noprint{display:none!important}.print-only{display:block}.view .dlg{box-shadow:none;background:#fff;border:0;width:100%;max-width:none;padding:0}.view .page,.page.view{padding:0;box-shadow:none!important;background:#fff!important;border:0!important;border-radius:0!important}.view .dlg{box-shadow:none!important;border:0!important;border-radius:0!important}.jobdoc,.jobdoc *{box-shadow:none!important}.content,main.narrow,.view{max-width:none!important;margin:0!important;padding:0!important}.jobdoc,.jobdoc *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.jobdoc{color:#111;font-family:Helvetica Neue,Helvetica,Arial,Liberation Sans,sans-serif;font-size:10pt;line-height:1.35}.jd-head{border-bottom:2.5px solid #111;justify-content:space-between;align-items:flex-end;margin-bottom:12px;padding-bottom:6px;display:flex}.jd-org{letter-spacing:.18em;text-transform:uppercase;color:#555;font-size:8.5pt}.jd-title{letter-spacing:.01em;font-size:24pt;font-weight:700;line-height:1.05}.jd-no{text-align:right}.jd-no b{letter-spacing:.02em;font:700 22pt Courier New,ui-monospace,monospace;display:block}.jd-no span{color:#555;font-size:8.5pt}.jd-details{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:14px}.jd-details th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:#444;background:#efefef;border:1px solid #9a9a9a;width:11%;padding:6px 8px;font-size:7.5pt;font-weight:600}.jd-details td{overflow-wrap:anywhere;border:1px solid #9a9a9a;width:22.3%;padding:6px 8px;font-weight:600}.jd-section{text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid #111;margin-bottom:5px;padding-bottom:3px;font-size:9pt;font-weight:700}.jd-items{border-collapse:collapse;table-layout:fixed;width:100%;font-size:10pt}.jd-items th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:#333;background:#efefef;border:1px solid #9a9a9a;padding:6px 7px;font-size:7.5pt;font-weight:700}.jd-items td{vertical-align:top;overflow-wrap:anywhere;border:1px solid #9a9a9a;padding:7px}.jd-items tr{break-inside:avoid}.jd-items th:first-child{width:4%}.jd-items th:nth-child(2){width:24%}.jd-items th:nth-child(3){width:14%}.jd-items th:nth-child(4){width:6%}.jd-items th:nth-child(5){width:14%}.jd-items th:nth-child(6){width:10%}.jd-items th.pb,.jd-items td.pb{text-align:center;width:7%}.jd-sub{color:#555;margin-top:1px;font-size:8pt;font-weight:400}.jd-items.jd-kpi{font-size:8.5pt}.jd-items.jd-kpi th{padding:5px;font-size:6.5pt}.jd-items.jd-kpi td{padding:5px}.jd-items.jd-kpi th:first-child{width:14%}.jd-items.jd-kpi th:nth-child(2){width:9%}.jd-items.jd-kpi th:nth-child(3),.jd-items.jd-kpi th:nth-child(4),.jd-items.jd-kpi th:nth-child(5),.jd-items.jd-kpi th:nth-child(6){width:7%}.jd-items.jd-kpi th:nth-child(7),.jd-items.jd-kpi th:nth-child(8){width:14%}.jd-items.jd-kpi th:nth-child(9){width:11%}.jd-items.jd-kpi th:nth-child(10){width:10%}.jd-items th.pb{letter-spacing:.02em;padding-left:2px;padding-right:2px;font-size:6.5pt}.pbox{vertical-align:middle;border:1.5px solid #111;border-radius:2px;width:13px;height:13px;display:inline-block;position:relative}.pbox.on:after{content:"";border:2px solid #111;border-width:0 2px 2px 0;width:4px;height:9px;position:absolute;top:-1px;left:3.5px;transform:rotate(45deg)}.jd-foot{color:#666;border-top:1px solid #bbb;justify-content:space-between;padding-top:4px;font-size:8pt;display:flex;position:fixed;bottom:0;left:0;right:0}.jd-items,.jd-details{border-spacing:0;border-top:1px solid #9a9a9a;border-left:1px solid #9a9a9a;border-collapse:separate!important}.jd-items th,.jd-items td,.jd-details th,.jd-details td{border:1px solid #9a9a9a!important;border-top:0!important;border-left:0!important}@page{size:A4;margin:12mm 12mm 16mm}}.sh-org{letter-spacing:.14em;text-transform:uppercase;opacity:.8;margin-bottom:2px;font-size:10px}.view-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.view-actions button{min-height:40px}.designs-toggle{color:inherit;font:inherit;cursor:pointer;box-shadow:none;background:0 0;border:0;align-items:center;gap:8px;padding:4px 6px 4px 0;display:inline-flex}.designs-toggle h3{margin:0}.designs-toggle:hover .chev{color:var(--accent)}.dtabs{width:100%;margin:0 0 14px;display:flex}.dtabs button{flex:1;justify-content:center;position:relative}.tab-ask{background:var(--warn);border-radius:50%;width:9px;height:9px;position:absolute;top:6px;right:8px}.askjump{text-align:left;cursor:pointer;width:100%;margin-bottom:12px;display:block}.askjump:hover{filter:brightness(1.08)}.closeform{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;padding:14px 18px;display:flex}.closeform label{color:var(--muted);flex-direction:column;flex:220px;gap:5px;font-size:13px;font-weight:600;display:flex}.closeform input[type=text],.closeform input:not([type]){border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;border-radius:8px;padding:9px 11px;font-weight:400}.closeform input:disabled{opacity:.55}.closeform .closecheck{color:var(--ink);flex-direction:row;flex:100%;align-items:center;gap:8px;font-weight:500}.archlist{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.archlist li{background:var(--card);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;display:flex}.arch-main{flex:2 260px;min-width:0}.arch-sub{color:var(--muted);margin-top:3px;font-size:13px}.arch-inv{color:var(--muted);flex-direction:column;flex:180px;font-size:13px;display:flex}.arch-inv strong{color:var(--ink);font-size:14px}.closeform .closecheck{text-align:left;justify-content:flex-start}.closeform .closecheck input{flex:none;width:auto;margin:0}.closeform select{border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;border-radius:8px;padding:9px 11px;font-weight:400}.closelink{font-size:12.5px;font-weight:600}.closenote{color:var(--muted);flex:100%;margin:0;font-size:12.5px}.archbar{align-items:center;gap:10px;display:flex}.archbar .search{flex:1}.arch-tag{color:var(--danger,#c0392b)}.archlist li.cancelled .arch-main strong{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.gsub .gver{color:var(--ink);font-weight:700}.so-ver,.ver-sub{color:var(--muted);margin-top:2px;font-size:11.5px;font-weight:500;display:block}.dcard-alerts{flex-direction:column;gap:6px;margin-top:14px;display:flex}.dcard-alert{border:1px solid color-mix(in srgb,var(--warn) 55%,var(--line));background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--warn);border-radius:8px;padding:7px 10px;font-size:12.5px;font-weight:600}.prodwarn{border:1px solid color-mix(in srgb,var(--warn) 55%,var(--line));background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--warn);cursor:pointer;text-align:left;border-radius:8px;margin-top:6px;padding:6px 10px;font-size:13px;font-weight:600}.prodwarn:hover{background:color-mix(in srgb,var(--warn) 18%,transparent)}.loginpage{background:var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.logincard{background:var(--card);width:min(380px,100%);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;gap:12px;padding:28px;display:flex}.logincard h1{margin:0;font-size:20px}.logincard label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.login-brand{font-size:15px;font-weight:700}.login-brand small{color:var(--muted);font-size:12px;font-weight:500;display:block}.login-sub{color:var(--muted);margin:0;font-size:13px}.userform{grid-template-columns:1fr 1.3fr 130px 1.2fr auto;gap:8px;margin:14px 0;display:grid}.userrow{border-bottom:1px solid var(--line);grid-template-columns:1.3fr 1fr 110px 1.4fr minmax(190px,auto);min-width:760px;display:grid}.userrow>*{border-right:1px solid var(--line);align-items:center;min-width:0;padding:9px 10px;display:flex}.userrow>:last-child{border-right:0}.userrow.ihead{background:var(--bg);color:var(--muted);font-size:12px;font-weight:600}.userrow.off{opacity:.6}.userrow input,.userrow select{width:100%}.userrow .picact{justify-content:flex-end;gap:6px}@media (width<=800px){.userform{grid-template-columns:1fr 1fr}}.side-user{color:var(--sb-ink,inherit);flex-direction:column;gap:6px;padding:10px 4px 0;font-size:12.5px;display:flex}.side-user strong{font-size:13px;display:block}.side-user span{opacity:.75}.side-user .su-btns{flex-wrap:wrap;gap:6px;display:flex}.sidebar.collapsed .side-user{display:none}.readonly-note{background:var(--bg);border:1px solid var(--line);color:var(--muted);border-radius:8px;margin:0 0 14px;padding:9px 12px;font-size:13px}.page.ro .picact,.page.ro .picadd{display:none}.roleboxes{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.roleboxes label{white-space:nowrap;align-items:center;gap:5px;display:flex}.userform{grid-template-columns:1fr 1.2fr 1.6fr 1.2fr auto}.side-account{text-align:left;width:100%;color:var(--sb-ink);background:0 0;border-radius:10px;align-items:center;gap:10px;padding:8px 6px;display:flex}.side-account:hover{background:#ffffff12}.side-account .avatar{background:var(--sb-accent);width:32px;height:32px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.sa-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.sa-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sa-text small{color:var(--sb-muted);font-size:11.5px}.sidebar.collapsed .sa-text{display:none}.sidebar.collapsed .side-account{justify-content:center}.settings-modal{width:min(400px,100%);max-height:calc(100vh - 32px);overflow:auto}.set-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.set-head h3{margin:0}.set-body{flex-direction:column;gap:12px;display:flex}.set-who{align-items:center;gap:12px;display:flex}.set-who>div{flex-direction:column;min-width:0;display:flex}.set-who span{color:var(--muted);font-size:12.5px}.set-btns{flex-wrap:wrap;gap:8px;display:flex}.set-out{border-color:color-mix(in srgb,var(--danger) 50%,var(--line));color:var(--danger)}.set-pw{flex-direction:column;gap:8px;display:flex}.set-note{color:var(--muted);margin:0;font-size:13px}.tm-pop .set-body{gap:10px}.userform{background:var(--card);border:1px solid var(--line);border-radius:12px;grid-template-columns:minmax(120px,1fr) minmax(140px,1.2fr) minmax(130px,1fr) auto;align-items:center;gap:10px;margin:14px 0;padding:12px;display:grid}.userform .roleboxes{order:5;grid-column:1/-1}.userform>button{justify-self:end}.userrow{grid-template-columns:minmax(130px,1.2fr) minmax(100px,.9fr) minmax(170px,1.4fr) minmax(150px,1.1fr) 250px;align-items:stretch;gap:0;min-width:820px;display:grid}.userrow>*{border-right:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;min-width:0;padding:11px 12px;display:flex}.userrow>.ua{border-right:0;justify-content:flex-end}.userrow.ihead>*{padding:9px 12px}.userrow input{min-width:0}.userrow .picname{font-weight:600}.rolepills{gap:5px}.rolepill,.statuspill{border:1px solid var(--line);background:var(--bg);color:var(--ink);white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:11.5px;font-style:normal;font-weight:600}.rolepill.r-superuser{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}.rolepill.r-admin{background:color-mix(in srgb,var(--s-approval) 16%,transparent);border-color:color-mix(in srgb,var(--s-approval) 50%,var(--line))}.rolepill.r-designer{background:color-mix(in srgb,var(--s-design) 16%,transparent);border-color:color-mix(in srgb,var(--s-design) 50%,var(--line))}.rolepill.r-production{background:color-mix(in srgb,var(--s-production) 16%,transparent);border-color:color-mix(in srgb,var(--s-production) 50%,var(--line))}.statuspill.on{background:color-mix(in srgb,var(--s-done) 16%,transparent);border-color:color-mix(in srgb,var(--s-done) 50%,var(--line))}.statuspill.wait{background:color-mix(in srgb,var(--warn) 14%,transparent);border-color:color-mix(in srgb,var(--warn) 50%,var(--line));color:var(--warn)}.statuspill.off{color:var(--muted)}@media (width<=800px){.userform{grid-template-columns:1fr 1fr}}.kpi{flex-direction:column;gap:16px;display:flex}.kpi-periods{background:var(--card);border:1px solid var(--line);border-radius:10px;align-self:flex-start;gap:4px;padding:3px;display:inline-flex}.kpi-periods button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600}.kpi-periods button.on{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.kgrid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.kstat{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.kstat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.kstat-val{font-size:30px;line-height:1.1}.kstat-sub{color:var(--muted);font-size:12px}.kstat.good .kstat-val{color:var(--s-done)}.kstat.warn .kstat-val{color:var(--warn)}.kstat.bad .kstat-val{color:var(--danger)}.kcard{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:16px 18px}.kcard h3{margin:0 0 12px;font-size:15px}.kopen{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.kopen>div{background:var(--bg);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.kopen strong{font-size:22px}.kopen span{color:var(--muted);font-size:12px}.ktrend-bars{border-bottom:1px solid var(--line);align-items:flex-end;gap:3px;height:170px;padding-bottom:22px;display:flex}.kcol{flex-direction:column;flex:1;justify-content:flex-end;min-width:6px;height:100%;display:flex;position:relative}.kpair{flex:1;align-items:flex-end;gap:1px;display:flex}.kbar{border-radius:3px 3px 0 0;flex:1;min-height:0;display:block}.kbar.created{background:var(--s-design)}.kbar.finished{background:var(--s-done)}.klab{color:var(--muted);white-space:nowrap;font-size:10.5px;position:absolute;bottom:-20px;left:50%;transform:translate(-50%)}.klegend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12.5px;display:flex}.klegend span{align-items:center;gap:6px;display:inline-flex}.klegend .kbar{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.klegend .kmax{margin-left:auto}.ktable-wrap{overflow-x:auto}.ktable{border-collapse:collapse;width:100%;font-size:13.5px}.ktable th{text-align:right;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 10px;font-size:12px;font-weight:600}.ktable td{text-align:right;border-bottom:1px solid var(--line-soft);padding:10px}.ktable th:first-child,.ktable td:first-child{text-align:left}.ktable tr:last-child td{border-bottom:0}.knote{color:var(--muted);font-size:11.5px;font-weight:400}.kempty{color:var(--muted);margin:0;font-size:13px}.userrow{grid-template-columns:minmax(110px,1.1fr) minmax(90px,.8fr) minmax(150px,1.3fr) minmax(140px,1.1fr) minmax(130px,1fr) 250px;min-width:980px}.jobcounts{color:var(--muted);flex-direction:column;align-items:flex-start;gap:2px;font-size:12.5px}.jobcounts b{color:var(--ink);font-size:14px}.statuspill{white-space:normal;line-height:1.25}.set-roles{grid-template-columns:repeat(2,1fr)}.set-rolesel{width:100%;padding:9px 10px;font-size:14px;font-weight:600}.logbar{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:12px 0;display:flex}.logbar label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;font-weight:600;display:flex}.logbar .logq{flex:1;min-width:220px}.logbar .btnlink{border-radius:8px;align-self:flex-end;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none}.logcount{color:var(--muted);margin:2px 0 8px;font-size:12.5px}.logtable td,.logtable th{text-align:left}.logtable th,.logtable .nowrap{white-space:nowrap}.logtable .lognote{overflow-wrap:anywhere;max-width:320px}.logpager{justify-content:center;gap:8px;margin:14px 0;display:flex}.logpdf{border-radius:8px;align-self:flex-end;padding:8px 14px;font-size:13px;font-weight:600}.logprint{display:none}@media print{.logprint{color:#000;display:block}.logprint h2{margin:0 0 2px;font-size:14pt}.logprint p{color:#444;margin:0 0 8px;font-size:8.5pt}.logprint table{border-collapse:collapse;width:100%;font-size:7.5pt}.logprint th{text-align:left;text-transform:uppercase;background:#eee;border:1px solid #999;padding:3px 4px;font-size:7pt}.logprint td{vertical-align:top;overflow-wrap:anywhere;border:1px solid #bbb;padding:3px 4px}.logprint thead{display:table-header-group}.logprint tr{break-inside:avoid}}.sched-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.sched-bar input[type=date]{padding:7px 10px;font-weight:600}.sched-check{color:var(--muted);align-items:center;gap:6px;margin-left:6px;font-size:13px;display:flex}.sched-print{margin-left:auto}.sched-head h2{margin:0 0 2px;font-size:18px}.sched-head p{color:var(--muted);margin:0 0 12px;font-size:13.5px}.schedtable td,.schedtable th{text-align:left}.schedtable .nowrap{white-space:nowrap}.schedtable .schednote{overflow-wrap:anywhere;max-width:240px;font-style:italic}.schedtable .sched-tick{text-align:center;width:46px}.tickbox{border:1.5px solid var(--ink);border-radius:3px;width:15px;height:15px;display:inline-block}.sched-prod td:first-child{box-shadow:inset 3px 0 0 var(--s-production)}.sched-design td:first-child{box-shadow:inset 3px 0 0 var(--s-design)}@media print{.sched-head h2{color:#000;font-size:15pt}.sched-head p{color:#333;font-size:9pt}.sched-printed{float:right;display:inline}.schedtable{color:#000;font-size:8.5pt}.schedtable th{color:#000;border:1px solid #888;background:#eee!important}.schedtable td{border:1px solid #aaa;padding:4px 5px}.schedtable thead{display:table-header-group}.schedtable tr{break-inside:avoid}.tickbox{border-color:#000;width:13px;height:13px}}.dp-trigger.sched-date{flex:none;width:210px}.sched-bar input[type=checkbox]{flex:none;width:auto}.sched-check{white-space:nowrap}.sched-bar button{flex:none}.sched-sec{margin:0 0 22px}.sched-sec h3{margin:0 0 8px;font-size:15px}.sched-sec h3 span{color:var(--muted);margin-left:8px;font-size:12.5px;font-weight:500}.sched-none{border:1px solid var(--line);color:var(--muted);background:var(--card);border-radius:8px;margin:0;padding:12px 14px;font-size:13.5px}.schedtable{border:1px solid var(--field-line)}.schedtable th,.schedtable td{border:1px solid var(--field-line)!important}.schedtable th{background:var(--th-bg)}.schedtable .sched-n{text-align:center;color:var(--muted);width:34px}@media print{.sched-sec{break-inside:auto;margin-bottom:14px}.sched-sec h3{color:#000;font-size:11pt}.sched-sec h3 span{color:#444;font-size:9pt}.schedtable{border:1px solid #000}.schedtable th,.schedtable td{border:1px solid #000!important}.sched-none{color:#333;border:1px solid #888}}.sched .atabs{margin:0 0 14px}.sched-printed{display:none}@media print{.sched-printed{float:right;display:inline}}.prodtable .sched-m{text-align:center;width:58px;font-weight:700}.prodtable td.sched-m{color:var(--s-done);font-size:14px}.prodtable td:first-child{width:110px}@media print{.prodtable td.sched-m{color:#000}.prodtable td{padding:6px 5px}}.sched-head{margin:0 0 14px}.sched-co{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 2px;font-size:11px;font-weight:700}.sched-head h2{letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:22px}.sched-dateline{margin-top:2px;font-size:15px;font-weight:600}@media print{.sched-head{text-align:center;border-bottom:2px solid #000;margin-bottom:12px;padding-bottom:8px}.sched-co{color:#000;letter-spacing:.16em;font-size:10pt}.sched-head h2{color:#000;font-size:20pt}.sched-dateline{color:#000;font-size:12pt}.sched-printed{float:none;color:#444;margin-top:4px;font-size:8pt;display:block}.schedtable{font-size:8pt}.schedtable th,.schedtable td{padding:3px 4px}.prodtable .sched-m{width:10mm}.prodtable td:first-child{width:22mm}.tickbox{width:11px;height:11px}.sched .ktable-wrap{background:0 0!important;border:0!important;overflow:visible!important}.schedtable{table-layout:fixed;width:100%!important;min-width:0!important}.schedtable td,.schedtable th{overflow-wrap:anywhere;word-break:break-word;white-space:normal!important}.schedtable .schednote{max-width:none!important}.prodtable th:first-child{width:21mm}.prodtable th:nth-child(2){width:32mm}.prodtable th:nth-child(n+4):nth-child(-n+8){width:10mm}.schedtable{margin-right:1px;border-collapse:collapse!important;border:1px solid #000!important;width:calc(100% - 1.5px)!important}.schedtable th:last-child,.schedtable td:last-child{border-right:1px solid #000!important}.prodtable th:nth-child(n+4):nth-child(-n+8){letter-spacing:0;text-transform:none;padding-left:1px;padding-right:1px;font-size:6.5pt;width:8mm!important}.prodtable td.sched-m{padding-left:1px;padding-right:1px;font-size:10pt}.prodtable .knote{color:#222;font-size:6.5pt}.prodtable th:nth-child(9){width:38mm!important}}@media screen{.prodtable th:nth-child(n+4):nth-child(-n+8){width:50px}}@media print{.prodtable th:nth-child(n+4):nth-child(-n+8){font-size:6pt;word-break:keep-all!important;overflow-wrap:normal!important;width:10.5mm!important}.prodtable th:nth-child(9){width:34mm!important}}.sched-blank{display:none}@media print{.sched-blank{display:table-row}.schedtable tbody tr,.schedtable td{height:14.5mm}}.designtable td:first-child{width:110px}.designtable th:nth-child(4),.designtable th:nth-child(5){width:150px}@media print{.designtable th:first-child{width:24mm}.designtable th:nth-child(2){width:46mm}.designtable th:nth-child(4),.designtable th:nth-child(5){width:34mm}.designtable .knote{color:#222;font-size:6.5pt}}@media print{.prodtable th:nth-child(9){width:21mm!important}.prodtable th:nth-child(10){width:30mm!important}.prodtable td:nth-child(9){font-size:8pt}}.sched-move{white-space:nowrap;width:120px}.schedtable td.sched-move{padding:0}.schedtable td.sched-move .dp-trigger.compact{width:100%;min-height:38px;color:var(--accent);font-weight:600}.prodtable th:nth-child(9){width:auto}@media screen{.prodtable .knote{font-size:11.5px}}@media print{.prodtable th:first-child{width:27mm!important}.prodtable th:nth-child(9){width:36mm!important}.prodtable td:first-child .knote{color:#222;font-size:7pt}}.sched-itemline+.sched-itemline{border-top:1px dashed var(--line);margin-top:5px;padding-top:5px}@media print{.sched-itemline+.sched-itemline{border-top:1px dashed #888}}.sched-order{break-inside:avoid}@media print{.sched-order{break-inside:avoid}}.prodtable td[rowspan]{vertical-align:top}.taskdlg{flex-direction:column;gap:10px;width:min(440px,100%);display:flex}.taskdlg h3{margin:0}.taskdlg-sub{color:var(--muted);margin:0;font-size:13px}.taskdlg label{color:var(--muted);flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.taskdlg-btns{align-items:center;gap:8px;margin-top:6px;display:flex}.taskdlg-q{color:var(--danger);font-size:13px;font-weight:600}.sched-event td{background:var(--th-bg);letter-spacing:.01em;font-size:13px;font-weight:700;text-align:left!important;padding:5px 10px!important}@media print{.schedtable tbody tr.sched-event{height:7mm}.schedtable tr.sched-event td{height:7mm;font-size:9.5pt;text-align:left!important;background:#eee!important;padding:2px 5px!important}}.usage{flex-direction:column;gap:16px;display:flex}.usage-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.usage .kcard h3 .knote{margin-left:8px;font-weight:400}.usage-sub{color:var(--muted);margin:16px 0 8px;font-size:13px}.usage-note{color:var(--muted);margin:12px 0 0;font-size:12.5px}.usage .ktable th,.usage .ktable td{text-align:left}
