:root{--paper:#edf0f3;--surface:#fff;--ink:#18283a;--muted:#5c6b7b;--line:#c5ced8;--accent:#d93a62;--ok:#17807a;--warn:#a8690a;--bad:#b3261e;--radius:14px;--radius-sm:8px;--pad:20px;--gap:18px;--fs:15px;--shadow:0 1px 2px #1018280d, 0 8px 24px -14px #1018282e;--display:"Bricolage Grotesque", "Noto Sans Lao", system-ui, sans-serif;--body:"IBM Plex Sans", "Noto Sans Lao", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--soft:color-mix(in srgb, var(--accent) 10%, transparent);--hair:color-mix(in srgb, var(--line) 70%, transparent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0f1822;--surface:#172331;--ink:#e6edf4;--muted:#93a3b4;--line:#2c3d50;--accent:#ff6b8e;--ok:#4cc7be;--warn:#e5a93b;--bad:#ff8a80;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--fs);-webkit-font-smoothing:antialiased;line-height:1.65}a{color:inherit;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px}a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}h1{font-family:var(--display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:27px;font-weight:700;line-height:1.3}h2{font-family:var(--display);margin:0 0 12px;font-size:17px;font-weight:700;line-height:1.4}p{margin:0 0 10px}::selection{background:color-mix(in srgb, var(--accent) 25%, transparent)}.muted{color:var(--muted)}.small{font-size:13px}.block{display:block}.strong{font-weight:600;text-decoration:none}.strong:hover{color:var(--accent)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13px}.nowrap{white-space:nowrap}.pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:72ch}.ico{flex:none;display:block}.shell{--side-bg:var(--surface);--side-ink:var(--ink);--side-muted:var(--muted);--side-line:var(--line);--side-hover:color-mix(in srgb, var(--ink) 6%, transparent);--side-on:color-mix(in srgb, var(--accent) 14%, transparent);--side-on-ink:var(--accent);grid-template-columns:252px minmax(0,1fr);min-height:100%;display:grid}.shell[data-sidebar=tinted]{--side-bg:color-mix(in srgb, var(--accent) 8%, var(--surface));--side-line:color-mix(in srgb, var(--accent) 18%, var(--line));--side-on:color-mix(in srgb, var(--accent) 20%, transparent)}.shell[data-sidebar=contrast]{--side-bg:color-mix(in srgb, var(--accent) 14%, #0a0f17);--side-ink:#e9eef5;--side-muted:#9aa8b8;--side-line:#ffffff1a;--side-hover:#ffffff12;--side-on:color-mix(in srgb, var(--accent) 34%, transparent);--side-on-ink:#fff}.side{background:var(--side-bg);height:100vh;color:var(--side-ink);border-right:1px solid var(--side-line);scrollbar-width:thin;flex-direction:column;gap:18px;padding:20px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{font-family:var(--display);align-items:center;gap:11px;padding:0 6px;font-size:18px;font-weight:700;line-height:1.25;text-decoration:none;display:flex}.brand small{font-family:var(--body);color:var(--side-muted);font-size:12px;font-weight:500;display:block}.logo{border-radius:calc(var(--radius-sm) + 2px);color:#fff;background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #000));width:38px;height:38px;box-shadow:0 6px 16px -6px color-mix(in srgb, var(--accent) 70%, transparent);flex:none;place-items:center;display:grid}.navtoggle{display:none}.sidenav ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.navlink{border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--side-ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:14.5px;text-decoration:none;transition:background .15s,color .15s;display:flex}.navlink .ico{color:var(--side-muted);transition:color .15s}.navlink .lbl{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.navlink:hover{background:var(--side-hover)}.navlink.on{background:var(--side-on);color:var(--side-on-ink);font-weight:600}.navlink.on .ico{color:var(--side-on-ink)}.navlink .ext{opacity:.6}.navlink.d1{padding-top:6px;padding-bottom:6px;font-size:14px}.grouphead{align-items:center;display:flex;position:relative}.grouphead>.navlink{padding-right:34px}.caret{width:26px;height:26px;color:var(--side-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:transform .2s,background .15s;display:grid;position:absolute;right:4px}.caret:hover{background:var(--side-hover)}.group.open>.grouphead .caret{transform:rotate(90deg)}.sub{border-left:1px solid var(--side-line);margin:2px 0 6px 19px!important;padding-left:10px!important}.badge{background:var(--accent);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:11.5px;font-weight:600;line-height:1.75}.who{border-top:1px solid var(--side-line);flex-direction:column;gap:10px;margin-top:auto;padding:14px 4px 0;font-size:13.5px;display:flex}.whohead{align-items:center;gap:10px;min-width:0;display:flex}.whoname{flex-direction:column;min-width:0;line-height:1.35;display:flex}.whoname strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whoname span{color:var(--side-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.avatar{background:var(--side-on);width:36px;height:36px;color:var(--side-on-ink);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.whoactions{gap:6px;display:flex}.whoactions form{flex:1}.whoactions .btn{width:100%;color:var(--side-ink);border-color:var(--side-line);justify-content:center}.main{gap:var(--gap);flex-direction:column;width:100%;min-width:0;padding:28px clamp(16px,2.5vw,36px) 56px;display:flex}.pagehead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;padding-bottom:2px;display:flex}.pagehead p{margin:4px 0 0}.pagehead .row{align-items:center}.card{background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius);padding:var(--pad);min-width:0;box-shadow:var(--shadow)}.card>h2:first-child{align-items:center;gap:8px;display:flex}.stack{gap:var(--gap);flex-direction:column;min-width:0;display:flex}.cols{gap:var(--gap);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;display:grid}.cols.wide-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.row{flex-wrap:wrap;gap:10px;display:flex}.row.center{align-items:center}.grid2{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.empty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.emptyicon{background:var(--soft);width:60px;height:60px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.pagehead.dash{align-items:center}.pagehead.dash p{margin-top:2px}.dashright{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.statline{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.statline li{background:var(--surface);border:1px solid var(--hair);color:var(--muted);border-radius:999px;align-items:baseline;gap:6px;padding:5px 12px;font-size:12.5px;display:inline-flex}.statline li:before{content:"";background:var(--k,var(--line));border-radius:50%;align-self:center;width:7px;height:7px}.statline strong{font-family:var(--display);color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px}.statline small{font-family:var(--body);color:var(--muted);font-size:12px;font-weight:500}.btn{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:8px 15px;font-size:14px;font-weight:500;line-height:1.4;text-decoration:none;transition:border-color .15s,background .15s,transform 50ms,box-shadow .15s;display:inline-flex}.btn:hover{border-color:var(--ink)}.btn:active{transform:translateY(1px)}.btn.small{padding:5px 10px;font-size:13px}.btn.ghost{background:0 0}.btn.ghost:hover{background:var(--side-hover,var(--soft))}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 6px 18px -8px color-mix(in srgb, var(--accent) 80%, transparent);border-color:#0000}.btn.primary:hover{background:color-mix(in srgb, var(--accent) 88%, #000)}.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn.bad{border-color:color-mix(in srgb, var(--bad) 60%, transparent);color:var(--bad);background:0 0}.btn.bad:hover{background:color-mix(in srgb, var(--bad) 10%, transparent)}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.iconbtn{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;transition:background .15s,color .15s;display:inline-grid}.iconbtn:hover:not(:disabled){background:var(--soft);color:var(--ink)}.iconbtn.bad:hover{color:var(--bad);background:color-mix(in srgb, var(--bad) 10%, transparent)}.iconbtn:disabled{opacity:.3;cursor:default}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{color:var(--muted);font-size:13px;font-weight:600}input,select,textarea{font:inherit;color:var(--ink);background:color-mix(in srgb, var(--paper) 60%, var(--surface));border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;padding:9px 11px;font-size:14.5px;transition:border-color .15s,box-shadow .15s,background .15s}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--ink) 35%, var(--line))}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--soft);outline:none}input:disabled,select:disabled,fieldset:disabled{opacity:.6}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}input[type=color]{cursor:pointer;max-width:120px;height:40px;padding:3px}input[type=range]{accent-color:var(--accent);box-shadow:none;background:0 0;border:0;padding:0}.colorbox{width:64px}textarea{resize:vertical;line-height:1.6}fieldset{border:0;min-width:0;margin:0;padding:0}legend{color:var(--muted);margin-bottom:8px;padding:0;font-size:13px;font-weight:600}.check{cursor:pointer;align-items:center;gap:9px;font-size:14px;display:flex}.toolbar{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.toolbar input{flex:220px;width:auto}.toolbar select{width:auto}.inlineform{border-top:1px dashed var(--line);flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;display:flex}.inlineform select{flex:140px;width:auto}.segmented{background:color-mix(in srgb, var(--paper) 70%, var(--surface));border:1px solid var(--hair);border-radius:calc(var(--radius-sm) + 4px);flex-wrap:wrap;align-self:flex-start;gap:4px;padding:4px;display:inline-flex}.segmented label{cursor:pointer;position:relative}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented span{border-radius:var(--radius-sm);color:var(--muted);padding:5px 14px;font-size:13.5px;font-weight:500;transition:background .15s,color .15s;display:block}.segmented input:checked+span{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.segmented input:focus-visible+span{outline:2px solid var(--accent)}.alert{border:1px solid var(--hair);border-left:4px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);align-items:center;gap:8px;margin:0;padding:10px 14px;display:flex}.alert.bad{border-left-color:var(--bad);background:color-mix(in srgb, var(--bad) 7%, var(--surface))}.alert.ok{border-left-color:var(--ok);background:color-mix(in srgb, var(--ok) 7%, var(--surface))}.tag{background:var(--soft);color:var(--accent);white-space:nowrap;vertical-align:middle;border-radius:999px;margin-left:6px;padding:0 7px;font-size:11px;font-weight:600;line-height:1.6;display:inline-block}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{--c:var(--accent);white-space:nowrap;color:color-mix(in srgb, var(--c) 75%, var(--ink));background:color-mix(in srgb, var(--c) 13%, transparent);border:1px solid color-mix(in srgb, var(--c) 30%, transparent);border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:600;line-height:1.7;display:inline-flex}.chip:before{content:"";background:var(--c);border-radius:50%;width:6px;height:6px}.side .chip{color:var(--side-ink)}.tablebox{margin:0 calc(var(--pad) * -1);padding:0 var(--pad);position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--hair);vertical-align:middle;padding:11px 12px}th{color:var(--muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;background:color-mix(in srgb, var(--paper) 50%, var(--surface));font-size:12px;font-weight:600}th:first-child{border-top-left-radius:var(--radius-sm)}th:last-child{border-top-right-radius:var(--radius-sm)}tbody tr{transition:background .12s}tbody tr:hover{background:color-mix(in srgb, var(--accent) 4%, transparent)}tbody tr:last-child td{border-bottom:0}tr.dim{opacity:.55}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}th.c,td.c{text-align:center}td.clip{text-overflow:ellipsis;white-space:nowrap;max-width:380px;overflow:hidden}.matrix td{padding:8px 12px}.matrix .yes{color:var(--ok);font-weight:700}.matrix .no{color:var(--line)}.deptname{align-items:center;gap:8px;display:inline-flex}.deptdot{background:var(--d,var(--accent));border-radius:3px;width:9px;height:9px}.bar{background:var(--hair);border-radius:99px;min-width:70px;height:6px;overflow:hidden}.bar i{border-radius:inherit;background:var(--ok);height:100%;display:block}.pill{white-space:nowrap;color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, transparent);border-radius:999px;align-items:center;gap:6px;padding:1px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill.s-routing,.pill.s-processing{color:var(--accent);background:var(--soft)}.pill.s-routing:before,.pill.s-processing:before{animation:1.4s ease-in-out infinite pulse}.pill.s-pending_approval{color:var(--warn);background:color-mix(in srgb, var(--warn) 13%, transparent)}.pill.s-completed{color:var(--ok);background:color-mix(in srgb, var(--ok) 13%, transparent)}.pill.s-rejected,.pill.s-failed{color:var(--bad);background:color-mix(in srgb, var(--bad) 12%, transparent)}@keyframes pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.pill:before{animation:none!important}}.filters{flex-wrap:wrap;gap:6px;display:flex}.filters a{border:1px solid var(--hair);background:var(--surface);color:var(--muted);border-radius:999px;padding:4px 13px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .15s}.filters a:hover{color:var(--ink);border-color:var(--line)}.filters a.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.log{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.log li{border-left:2px solid var(--hair);grid-template-columns:auto 1fr;gap:14px;padding:10px 0 10px 12px;font-size:14px;display:grid;position:relative}.log li:before{content:"";background:var(--surface);border:2px solid var(--line);border-radius:50%;width:8px;height:8px;position:absolute;top:17px;left:-5px}.log li.unread{font-weight:500}.log li.unread:before{background:var(--accent);border-color:var(--accent)}.log time,.timeline time{font-family:var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:2px;font-size:12px}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{border-left:2px solid var(--hair);flex-direction:column;padding:0 0 16px 18px;font-size:14px;display:flex;position:relative}.timeline li:last-child{border-left-color:#0000;padding-bottom:0}.timeline li:before{content:"";background:var(--line);width:10px;height:10px;box-shadow:0 0 0 3px var(--surface);border-radius:50%;position:absolute;top:4px;left:-6px}.timeline li.a-ai:before{background:var(--accent)}.timeline li.a-user:before{background:var(--ok)}.meta{border-top:1px solid var(--hair);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:16px 0 0;padding-top:14px;display:grid}.meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.meta dd{overflow-wrap:anywhere;margin:2px 0 0}.examples{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.examples button{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:color-mix(in srgb, var(--paper) 60%, var(--surface));border:1px dashed var(--line);border-radius:var(--radius-sm);padding:10px 12px;font-size:14px;transition:border-color .15s,background .15s}.examples button:hover{border-style:solid;border-color:var(--accent);background:var(--soft)}.reply{background:color-mix(in srgb, var(--accent) 5%, var(--surface));border-color:color-mix(in srgb, var(--accent) 25%, var(--hair))}.assignlist{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.assignlist li{border-bottom:1px solid var(--hair);align-items:center;gap:10px;padding:8px 0;display:flex}.assignlist li:last-child{border-bottom:0}.assignlist li>:nth-child(2){flex:1;min-width:0}.rolegrid{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(min(100%,520px),1fr));align-items:start;display:grid}.rolecard{--c:var(--accent);border-top:3px solid var(--c);padding:0;overflow:hidden}.rolecard>summary{padding:16px var(--pad);cursor:pointer;align-items:center;gap:12px;list-style:none;display:flex}.rolecard>summary::-webkit-details-marker{display:none}.rolecard>summary:hover{background:color-mix(in srgb, var(--c) 5%, transparent)}.rolecard[open]>summary{border-bottom:1px solid var(--hair)}.rolecard>.form,.rolecard>.dangerzone{padding:var(--pad)}.roledot{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--c) 18%, transparent);border:2px solid var(--c);flex:none;width:34px;height:34px}.rolename{flex-direction:column;flex:1;min-width:0;line-height:1.4;display:flex}.rolename small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rolemeta{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.rolemeta>span{align-items:center;gap:4px;display:inline-flex}.permgrid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.permgrid fieldset{border:1px solid var(--hair);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.permgrid legend{margin:0;padding:0 6px}.dangerzone{border-top:1px dashed var(--line);background:color-mix(in srgb, var(--bad) 4%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.menutree{padding:calc(var(--pad) * .6);flex-direction:column;gap:10px;display:flex}.menubranch{flex-direction:column;gap:4px;display:flex}.menuitem{border:1px solid var(--hair);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .15s}.menuitem.d1{margin-left:30px;position:relative}.menuitem.d1:before{content:"";border-left:1px solid var(--line);border-bottom:1px solid var(--line);border-bottom-left-radius:6px;width:12px;height:28px;position:absolute;top:-6px;left:-18px}.menuitem.off{opacity:.6}.menuitem[open]{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}.menuitem>summary{cursor:pointer;align-items:center;gap:12px;padding:9px 10px 9px 14px;list-style:none;display:flex}.menuitem>summary::-webkit-details-marker{display:none}.menuitem>summary>.ico{color:var(--accent)}.menulabel{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.menulabel small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menutags{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.menutags .tag{margin:0}.menuact,.menuact form{gap:2px;display:flex}.menuedit{border-top:1px solid var(--hair);background:color-mix(in srgb, var(--paper) 40%, var(--surface));border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:14px}.iconpick{flex-wrap:wrap;gap:6px;display:flex}.iconpick legend{width:100%}.iconpick label{cursor:pointer;position:relative}.iconpick input{opacity:0;pointer-events:none;position:absolute}.iconpick .ico{box-sizing:content-box;border-radius:var(--radius-sm);border:1px solid var(--hair);color:var(--muted);background:var(--surface);padding:8px;transition:all .15s}.iconpick label:hover .ico{color:var(--ink);border-color:var(--line)}.iconpick input:checked+.ico{color:#fff;background:var(--accent);border-color:var(--accent)}.iconpick input:focus-visible+.ico{outline:2px solid var(--accent);outline-offset:2px}.themeeditor{gap:var(--gap);flex-direction:column;display:flex}.presets{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.preset{border:1px solid var(--hair);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:8px;padding:10px;font-size:13.5px;font-weight:600;transition:all .15s;display:flex;position:relative}.preset:hover{border-color:var(--line)}.preset.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}.preset input{opacity:0;pointer-events:none;position:absolute}.preset:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.swatch{border:1px solid var(--hair);border-radius:6px;grid-template-columns:repeat(4,1fr);height:34px;display:grid;overflow:hidden}.savebar{z-index:5;border-radius:var(--radius);border:1px solid var(--hair);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;bottom:12px}.savebar>span{margin-right:auto}.login{background:var(--paper);grid-template-columns:minmax(0,1.15fr) minmax(380px,1fr);min-height:100%;display:grid}.loginart{color:#fff;isolation:isolate;background:linear-gradient(160deg,#0d1626 0%,#0a1020 55%,#070b16 100%);flex-direction:column;justify-content:space-between;gap:32px;padding:44px 56px;display:flex;position:relative;overflow:hidden}.loginart:after{content:"";z-index:-1;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 65% at 45% 45%,#000,#0000);mask-image:radial-gradient(75% 65% at 45% 45%,#000,#0000)}.lgin-glow{z-index:-1;filter:blur(70px);opacity:.55;border-radius:50%;animation:14s ease-in-out infinite alternate lgin-float;position:absolute}.lgin-glow.g1{background:color-mix(in srgb, var(--accent) 75%, #6366f1);width:460px;height:460px;top:-140px;right:-80px}.lgin-glow.g2{background:#2563eb;width:380px;height:380px;animation-delay:-7s;bottom:-150px;left:-110px}@keyframes lgin-float{to{transform:translate(-40px,30px)scale(1.08)}}.loginart .brand{font-size:17px}.loginart .brand small{color:#ffffff9e}.loginart .brand .logo{box-shadow:0 8px 24px -6px color-mix(in srgb, var(--accent) 70%, transparent)}.lgin-hero{max-width:560px}.lgin-kicker{letter-spacing:.02em;color:#ffffffd9;background:#ffffff12;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.lgin-kicker i{background:#34d399;border-radius:50%;width:7px;height:7px;animation:2s infinite pulse;box-shadow:0 0 0 4px #34d39933}.loginart h2{letter-spacing:-.02em;max-width:15ch;margin:0 0 16px;font-size:clamp(30px,3.4vw,46px);line-height:1.2}.loginart h2 em{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 60%, #fff), #93c5fd);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.loginart p{color:#ffffffb3;max-width:46ch;font-size:15.5px}.lgin-flow{flex-direction:column;align-items:flex-start;max-width:420px;margin-top:30px;display:flex}.lgin-node{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;animation:.6s both lgin-in;display:flex;box-shadow:0 12px 30px -16px #0009}.lgin-node b{font-size:14px;display:block}.lgin-node small{color:#fff9;font-size:12.5px;display:block}.lgin-node.req{color:#bfdbfe}.lgin-node.req b{color:#fff}.lgin-node.ai{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 22%, transparent), #ffffff0d);margin-left:36px;animation-delay:.25s}.lgin-orb{background:var(--accent);width:38px;height:38px;box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 60%, transparent);border-radius:12px;place-items:center;animation:2.4s infinite lgin-ring;display:grid}@keyframes lgin-ring{70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}.lgin-wire{background:#ffffff24;width:2px;height:22px;margin-left:34px;position:relative;overflow:hidden}.lgin-node.ai+.lgin-wire{margin-left:70px}.lgin-wire:after{content:"";background:linear-gradient(#0000,#93c5fd);width:2px;height:10px;animation:1.6s linear infinite lgin-drop;position:absolute;left:0}@keyframes lgin-drop{0%{top:-10px}to{top:100%}}.lgin-depts{flex-wrap:wrap;gap:8px;margin-left:52px;animation:.6s .5s both lgin-in;display:flex}.lgin-depts span{color:#ffffff8c;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.lgin-depts span.on{color:#fff;border-color:var(--c);background:color-mix(in srgb, var(--c) 18%, transparent);box-shadow:0 0 20px -6px var(--c)}.lgin-depts span.on .ico{color:var(--c)}@keyframes lgin-in{0%{opacity:0;transform:translateY(10px)}}.lgin-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.lgin-foot>small{color:#ffffff73}.loginfeat{flex-wrap:wrap;gap:8px;display:flex}.loginfeat span{color:#fffc;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;display:inline-flex}.loginpane{background:radial-gradient(60% 50% at 50% 0%, var(--soft), transparent 70%), var(--paper);place-items:center;padding:40px 24px;display:grid;position:relative}.login-card{background:var(--surface);border:1px solid var(--hair);border-radius:22px;flex-direction:column;gap:18px;width:100%;max-width:420px;padding:36px 34px;animation:.5s both lgin-in;display:flex;box-shadow:0 1px 2px #1018280d,0 30px 60px -30px #10182859}.lgin-badge{color:#fff;background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #6366f1));width:48px;height:48px;box-shadow:0 10px 24px -10px var(--accent);border-radius:14px;place-items:center;display:grid}.login-card h1{margin-bottom:4px;font-size:28px}.login-card>div>p{margin:0}.lgin-input{align-items:center;display:flex;position:relative}.lgin-input>.ico{color:var(--muted);pointer-events:none;transition:color .15s;position:absolute;left:13px}.lgin-input input{border-radius:12px;padding:12px 14px 12px 40px;font-size:15px}.lgin-input:focus-within>.ico{color:var(--accent)}.lgin-input:has(.lgin-eye) input{padding-right:46px}.lgin-eye{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;right:6px}.lgin-eye:hover,.lgin-eye[aria-pressed=true]{color:var(--accent);background:var(--soft)}.lgin-eye:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-card .lgin-submit{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 65%, #6366f1));box-shadow:0 12px 26px -12px var(--accent);border:0;border-radius:12px;justify-content:center;gap:8px;margin-top:4px;padding:13px;font-size:15.5px;transition:transform .15s,box-shadow .15s,filter .15s}.login-card .lgin-submit:hover{filter:brightness(1.06);box-shadow:0 16px 30px -12px var(--accent);transform:translateY(-1px)}.login-card .lgin-submit:active{transform:none}.login-card .lgin-submit:disabled{opacity:.75;cursor:progress;transform:none}.login-card .lgin-submit span{transition:transform .15s}.login-card .lgin-submit:hover span{transform:translate(3px)}.lgin-note{text-align:center;border-top:1px solid var(--hair);justify-content:center;align-items:flex-start;gap:6px;margin:2px 0 0;padding-top:14px;line-height:1.5;display:flex}@media (prefers-reduced-motion:reduce){.lgin-glow,.lgin-orb,.lgin-wire:after,.lgin-kicker i,.lgin-node,.lgin-depts,.login-card{animation:none!important}}.plan{background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}.plan svg{width:100%;min-width:760px;height:auto;display:block}.conn{stroke:var(--line);stroke-width:2px;fill:none;stroke-dasharray:5 6;stroke-linecap:round}.room rect.box{fill:color-mix(in srgb, var(--room,var(--surface)) 6%, var(--surface));stroke:color-mix(in srgb, var(--room,var(--line)) 50%, var(--line));stroke-width:1.5px;transition:stroke .2s}.room.busy rect.box{stroke:var(--room,var(--accent));stroke-width:2.5px}.room .t{font-family:var(--body);fill:var(--ink);font-size:15px;font-weight:700}.room .s{font-family:var(--body);fill:var(--muted);font-size:11.5px}.room .n{font-family:var(--mono);fill:var(--muted);font-size:10.5px}.bot .head,.bot .body{fill:var(--paper);stroke:var(--ink);stroke-width:1.5px}.bot .eye{fill:var(--ink)}.bot .ant{stroke:var(--ink);stroke-width:1.5px}.bot .tip{fill:var(--line)}.room.busy .bot .tip{fill:var(--accent)}.board rect{fill:none;stroke:var(--line);stroke-width:1.5px;stroke-dasharray:3 5}.board .bt{font-family:var(--body);fill:var(--ink);font-size:14px;font-weight:700}.board .num{font-family:var(--display);fill:var(--ink);font-variant-numeric:tabular-nums;font-size:40px;font-weight:700}.board .num.ok{fill:var(--ok)}.board .num.go{fill:var(--accent)}.board .num.warn{fill:var(--warn)}.board .lb{font-family:var(--body);fill:var(--muted);font-size:11.5px}.room .more{font-family:var(--mono);fill:var(--warn);font-size:12px;font-weight:500}.gate{font-family:var(--mono);fill:var(--muted);font-size:10.5px}.pkt rect{fill:var(--accent)}.pkt.wait rect{fill:var(--warn)}.pkt polyline{fill:none;stroke:var(--surface);stroke-width:1.4px}.pkt text{font-family:var(--mono);fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round;font-size:10px}.officeview{flex-direction:column;display:flex;position:relative}.officeview>.viewbar{z-index:3;pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:10px;left:10px;right:10px}.officeview>.viewbar .viewswitch{pointer-events:auto;background:color-mix(in srgb, var(--surface) 85%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.floorswitch button{padding:3px 12px}.viewswitch{background:var(--surface);border:1px solid var(--hair);border-radius:999px;align-self:flex-start;align-items:center;gap:4px;padding:4px;display:inline-flex}.viewswitch button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:3px 16px;font-size:13px;font-weight:600}.viewswitch button.on{background:var(--ink);color:var(--paper)}.viewswitch button:disabled{opacity:.5;cursor:not-allowed}.plan3d{border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow);background:radial-gradient(55% 60% at 18% 12%, color-mix(in srgb, var(--accent) 16%, transparent) 0%, transparent 70%), radial-gradient(50% 55% at 88% 92%, #38bdf824 0%, transparent 70%), linear-gradient(160deg, color-mix(in srgb, var(--surface) 92%, var(--line)) 0%, var(--surface) 50%, var(--paper) 100%);height:clamp(360px,min(52vw,100vh - 170px),1200px);position:relative;overflow:hidden}.plan3d:before{content:"";pointer-events:none;background-image:radial-gradient(color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1.4px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 75%,#000 30%,#0000 100%);mask-image:radial-gradient(80% 75%,#000 30%,#0000 100%)}.plan3d:after{content:"";pointer-events:none;box-shadow:inset 0 0 120px color-mix(in srgb, var(--paper) 70%, transparent);position:absolute;inset:0}.stage3d{cursor:grab;position:absolute;inset:0}.stage3d:active{cursor:grabbing}.stage3d canvas{touch-action:none;width:100%;height:100%;display:block}.loading3d{color:var(--muted);place-items:center;display:grid}.board3d{z-index:1;pointer-events:none;gap:6px;display:flex;position:absolute;bottom:12px;left:12px}.board3d div{background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--hair);border-radius:var(--radius-sm);flex-direction:column;align-items:flex-start;min-width:76px;padding:6px 12px;display:flex}.board3d strong{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.2}.board3d strong.go{color:var(--accent)}.board3d strong.warn{color:var(--warn)}.board3d strong.ok{color:var(--ok)}.board3d span{color:var(--muted);font-size:12px}.hint3d{z-index:1;color:var(--muted);pointer-events:none;background:color-mix(in srgb, var(--surface) 85%, transparent);border-radius:6px;margin:0;padding:1px 8px;font-size:12px;position:absolute;top:10px;right:10px}[data-density=compact] .navlink{padding-top:6px;padding-bottom:6px}[data-density=compact] th,[data-density=compact] td{padding:8px 10px}[data-density=comfortable] .navlink{padding-top:10px;padding-bottom:10px}[data-density=comfortable] th,[data-density=comfortable] td{padding:14px}@media (max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.side,.pagehead>div{min-width:0}.main{padding:18px 16px 40px}.cols,.cols.wide-left,.login{grid-template-columns:1fr}.loginart{gap:14px;padding:20px 20px 24px}.loginart h2{max-width:none;margin:0;font-size:24px}.lgin-flow,.lgin-foot,.loginart p{display:none}.loginpane{padding:24px 16px 40px}.login-card{border-radius:18px;padding:28px 22px}.plan3d{aspect-ratio:4/3;height:auto;min-height:300px}.board3d div{min-width:0;padding:4px 8px}.board3d strong{font-size:20px}.hint3d{display:none}.menuitem>summary{flex-wrap:wrap}.menutags{order:3;justify-content:flex-start;width:100%;padding-left:30px}.rolemeta .tag{display:none}}.icondot{color:var(--c);place-items:center;display:grid}.rolecard.off{opacity:.65}.rolecard>summary .menuact{margin-left:4px}code{font-family:var(--mono);background:var(--soft);border-radius:4px;padding:0 4px;font-size:.92em}.storyboard{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.storyboard li{border:1px solid var(--hair);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--paper) 40%, var(--surface));gap:12px;padding:10px 12px;display:flex}.storyboard li p{margin:2px 0;font-size:14px}.sbnum{background:var(--soft);width:28px;height:28px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.sbcaption{border-top:1px dashed var(--line);margin-top:14px;padding-top:12px}.player{border-radius:var(--radius-sm);background:#000;width:auto;max-width:100%;max-height:70vh;margin:12px auto;display:block}.filepick>span{align-items:center;gap:6px;display:flex}.filepick input[type=file]{border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--paper);padding:10px}.thumbs{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin:8px 0 12px;display:grid}.thumbs a{color:inherit;gap:4px;min-width:0;text-decoration:none;display:grid}.thumbs img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--paper);width:100%}.filelist{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.filelist li{align-items:center;gap:8px;min-width:0;display:flex}.filelist li .clip{flex:1;min-width:0}.designs{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:12px 0;display:grid}.designs figure{align-content:start;gap:8px;margin:0;display:grid}.designs img{object-fit:contain;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;height:auto;max-height:420px;display:block}.designs figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.olddesigns{margin-top:12px}.olddesigns summary{cursor:pointer}.dswatches{gap:6px;display:flex}.dswatch{border:1px solid var(--line);border-radius:6px;width:26px;height:26px}.bar.big{height:8px;margin:12px 0}.bar.big i{background:var(--accent);transition:width .6s}.sidehead{justify-content:space-between;align-items:center;gap:6px;display:flex}.sidehead .brand{min-width:0}.sidehead .brand .lbl{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.sidetoggle{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--side-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;transition:background .15s,color .15s,transform .2s;display:grid}.sidetoggle:hover{background:var(--side-hover);color:var(--side-ink)}.group:not(.open)>.sub{display:none}.shell{transition:grid-template-columns .2s}.whoactions .btn{gap:6px}@media (min-width:961px){.shell[data-side=collapsed]{grid-template-columns:72px minmax(0,1fr)}.shell[data-side=collapsed] .side{align-items:center;padding:16px 10px}.shell[data-side=collapsed] .lbl,.shell[data-side=collapsed] .caret,.shell[data-side=collapsed] .navlink .ext,.shell[data-side=collapsed] .whoname,.shell[data-side=collapsed] .who .chips{display:none}.shell[data-side=collapsed] .sidehead{flex-direction:column;gap:10px}.shell[data-side=collapsed] .brand{padding:0}.shell[data-side=collapsed] .sidetoggle{transform:scaleX(-1)}.shell[data-side=collapsed] .sidenav,.shell[data-side=collapsed] .sidenav ul{width:100%}.shell[data-side=collapsed] .navlink{justify-content:center;padding:10px 0;position:relative}.shell[data-side=collapsed] .grouphead>.navlink{padding-right:0}.shell[data-side=collapsed] .grouphead>button.navlink{display:none}.shell[data-side=collapsed] .group>.sub{border-left:0;border-top:1px solid var(--side-line);margin:4px 0!important;padding:4px 0 0!important;display:flex!important}.shell[data-side=collapsed] .navlink .badge{padding:0 5px;font-size:10px;line-height:1.6;position:absolute;top:3px;right:6px}.shell[data-side=collapsed] .who{align-items:center;width:100%;padding:12px 0 0}.shell[data-side=collapsed] .whohead{justify-content:center}.shell[data-side=collapsed] .whoactions{flex-direction:column;width:100%}.shell[data-side=collapsed] .whoactions .btn{justify-content:center;padding:7px 0}}@media (max-width:960px){.sidetoggle{display:none}}.side{gap:14px;padding:18px 12px 14px}.sidehead{border-bottom:1px solid var(--side-line);padding:2px 2px 12px}.sidenav{flex:1}.sidenav>ul{gap:3px}.navlink{border-radius:10px;padding:9px 11px;font-weight:500;position:relative}.navlink .ico{transition:color .15s,transform .15s}.navlink:hover .ico{color:var(--side-ink)}.navlink.on{background:linear-gradient(90deg, var(--side-on), color-mix(in srgb, var(--side-on) 35%, transparent));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}.navlink.on:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:-12px}.navlink.d1.on:before{border-radius:3px;width:3px;top:7px;bottom:7px;left:-11px}.grouphead>button.navlink{font-weight:600}.group.open>.grouphead>button.navlink{color:var(--side-ink)}.sub{border-left:2px solid var(--side-line);gap:1px!important;margin:3px 0 8px 21px!important;padding-left:10px!important}.navlink.d1{color:color-mix(in srgb, var(--side-ink) 82%, var(--side-muted))}.navlink.d1.on{color:var(--side-on-ink)}.badge{box-shadow:0 2px 8px -2px color-mix(in srgb, var(--accent) 70%, transparent)}.sidefoot{background:var(--side-hover);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px;font-size:13.5px;display:flex}.avatar{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #6366f1));color:#fff}.drawerclose,.scrim{display:none}.content{flex-direction:column;min-width:0;display:flex}.main{padding-top:22px}.topbar{z-index:30;background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(14px);border-bottom:1px solid var(--hair);align-items:center;gap:12px;min-height:64px;padding:10px clamp(16px,2.5vw,36px);display:flex;position:sticky;top:0}.topbar .tb-menu,.topbar .tb-brand{display:none}.tb-trail{min-width:0;color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;display:flex}.tb-trail>span{align-items:center;gap:6px;display:inline-flex}.tb-trail .cur{color:var(--ink);font-weight:600}.tb-trail .sep{opacity:.5}.tb-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.tb-actions form{display:contents}.tb-btn{border:1px solid var(--hair);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:12px;flex:none;place-items:center;text-decoration:none;transition:border-color .15s,color .15s,transform .15s,box-shadow .15s;display:grid;position:relative}.tb-btn:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, var(--line));box-shadow:0 4px 14px -6px color-mix(in srgb, var(--accent) 50%, transparent)}.tb-btn:focus-visible,.tb-account>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tb-dot{color:#fff;background:var(--accent);border:2px solid var(--paper);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:1;display:grid;position:absolute;top:-6px;right:-6px}.tb-account{position:relative}.tb-account>summary{cursor:pointer;border:1px solid var(--hair);background:var(--surface);border-radius:999px;align-items:center;gap:10px;padding:4px 12px 4px 4px;list-style:none;transition:border-color .15s;display:flex}.tb-account>summary::-webkit-details-marker{display:none}.tb-account>summary:hover,.tb-account[open]>summary{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}.tb-account .avatar{width:32px;height:32px;font-size:13px}.tb-who{flex-direction:column;min-width:0;max-width:170px;line-height:1.25;display:flex}.tb-who strong{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.tb-who small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.tb-caret{color:var(--muted);transition:transform .2s}.tb-account[open] .tb-caret{transform:rotate(180deg)}.tb-pop{z-index:40;background:var(--surface);border:1px solid var(--hair);border-radius:16px;flex-direction:column;gap:6px;width:290px;max-width:calc(100vw - 24px);padding:12px;animation:.16s ease-out dlg-in;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 50px -20px #10182866}.tb-pophead{border-bottom:1px solid var(--hair);align-items:center;gap:12px;min-width:0;margin-bottom:4px;padding:6px 6px 10px;display:flex}.tb-pophead>div{flex-direction:column;min-width:0;line-height:1.35;display:flex}.tb-pophead strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tb-pophead small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar.big{width:44px;height:44px;font-size:16px}.tb-pop .chips{padding:0 6px 6px}.tb-item{width:100%;font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;text-decoration:none;display:flex}.tb-item:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.tb-item .ico{color:var(--muted)}.tb-item.bad,.tb-item.bad .ico{color:var(--bad)}.tb-item.bad:hover{background:color-mix(in srgb, var(--bad) 9%, transparent)}@media (min-width:961px){.shell[data-side=collapsed] .sidefoot{background:0 0;justify-content:center;padding:6px}.shell[data-side=collapsed] .navlink.on:before{left:-10px}.shell[data-side=collapsed] .sidehead{border-bottom:0;padding-bottom:4px}}@media (max-width:960px){.side{z-index:50;border-right:1px solid var(--side-line);visibility:hidden;border-bottom:0;flex-flow:column;align-items:stretch;gap:14px;width:min(300px,86vw);height:100dvh;max-height:none;padding:16px 12px;transition:transform .25s,box-shadow .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.shell[data-drawer=open] .side{visibility:visible;transform:none;box-shadow:0 0 60px #00000059}.scrim{z-index:45;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;background:#080c1480;transition:opacity .25s;display:block;position:fixed;inset:0}.shell[data-drawer=open] .scrim{opacity:1;pointer-events:auto}html:has(.shell[data-drawer=open]){overflow:hidden}.drawerclose{background:var(--side-hover);width:36px;height:36px;color:var(--side-ink);cursor:pointer;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.sidenav{display:block}.topbar{gap:8px;min-height:58px;padding:8px 12px}.topbar .tb-menu{display:grid}.topbar .tb-brand{min-width:0;font-family:var(--display);align-items:center;gap:8px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.tb-brand>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tb-brand .logo{width:32px;height:32px}.tb-trail,.tb-who,.tb-caret{display:none}.tb-actions{gap:6px}.tb-btn{width:38px;height:38px}.tb-account>summary{padding:3px}.main{padding-top:16px}}@media (prefers-reduced-motion:reduce){.side,.scrim{transition:none!important}}.kbar{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 12px;display:flex}.kbar input:not([type=checkbox]){flex:240px;min-width:0}.kbar select{flex:0 200px}.kresults{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:8px;display:grid}.kresults h3{align-items:center;gap:6px;margin:0 0 6px;font-size:14px;display:flex}.kresults ol{gap:8px;margin:0;padding-left:20px;display:grid}.kresults li p{margin:2px 0 0}.card h2 .icon,.card h2 svg{vertical-align:-3px}.labels3d{pointer-events:none;--s:1;position:absolute;inset:0;overflow:hidden}.plate3d>div{font-size:calc(9.5px * var(--s));white-space:nowrap;color:var(--ink);background:linear-gradient(180deg, #ffffff29, #ffffff05 55%), color-mix(in srgb, var(--c) 14%, color-mix(in srgb, var(--surface) 42%, transparent));-webkit-backdrop-filter:blur(10px)saturate(1.5);backdrop-filter:blur(10px)saturate(1.5);box-shadow:inset 0 1px 0 #ffffff59, inset 0 0 0 1px color-mix(in srgb, var(--c) 30%, transparent), 0 .5em 1.4em #00000038;border:1px solid #ffffff47;border-radius:1.1em;align-items:center;gap:.6em;margin-bottom:.9em;padding:.5em .9em .5em .5em;line-height:1.2;transition:box-shadow .3s,border-color .3s;display:flex;position:relative}.plate3d>div:after{content:"";background:linear-gradient(var(--c), transparent);border-radius:2px;width:2px;height:.9em;position:absolute;bottom:-.9em;left:50%;translate:-50%}.plate3d.live>div{border-color:color-mix(in srgb, var(--c) 70%, #fff);box-shadow:inset 0 1px 0 #ffffff59, 0 0 1.4em color-mix(in srgb, var(--c) 60%, transparent), 0 .5em 1.4em #00000038}.plate3d .pbadge{color:#fff;background:linear-gradient(135deg, color-mix(in srgb, var(--c) 82%, #fff), color-mix(in srgb, var(--c) 72%, #000));border-radius:.8em;flex:none;place-items:center;width:3em;height:3em;display:grid;box-shadow:inset 0 1px #ffffff4d}.plate3d .pbadge svg{width:1.9em;height:1.9em}.plate3d .pbody{flex-direction:column;align-items:flex-start;gap:.15em;display:flex}.plate3d strong{font-family:var(--display,inherit);letter-spacing:.01em;font-size:1.3em;font-weight:700}.plate3d small{color:var(--muted);font-size:.85em}.plate3d .pchip{--k:var(--ok);background:color-mix(in srgb, var(--k) 18%, transparent);border:1px solid color-mix(in srgb, var(--k) 45%, transparent);border-radius:999px;align-items:center;gap:.4em;margin-top:.15em;padding:.12em .65em .12em .5em;font-size:.85em;font-weight:600;display:inline-flex}.plate3d .pchip:before{content:"";background:var(--k);border-radius:50%;width:.5em;height:.5em}.plate3d .pchip[data-kind=go]{--k:var(--accent)}.plate3d .pchip[data-kind=wait]{--k:var(--warn)}.tacts{align-items:center;gap:2px;display:inline-flex}.tacts form{display:contents}.ktable .kcell{flex-direction:column;gap:2px;min-width:260px;max-width:520px;display:flex}.ktable .kcell .small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ktags .tag{margin:2px 4px 0 0}.kind{color:#fff;background:var(--muted);vertical-align:1px;border-radius:4px;padding:0 6px;font-size:10.5px;font-weight:700;line-height:1.6;display:inline-block}.kind-pdf{background:#dc2626}.kind-excel{background:#16a34a}.kind-csv{background:#0d9488}.kind-learned{background:#7c3aed}.kind-link{background:#2563eb}.bad-text{color:var(--bad)}.pill.ok{color:var(--ok);background:color-mix(in srgb, var(--ok) 13%, transparent)}.pill.warn{color:var(--warn);background:color-mix(in srgb, var(--warn) 13%, transparent)}tr.sel{background:color-mix(in srgb, var(--accent) 8%, transparent)}.pager{justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;display:flex}.pager .muted{margin-right:auto}.btn.disabled{opacity:.45;pointer-events:none}.learncard{gap:var(--gap);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:start;display:grid}.learncard h2{margin-top:0}.learnform{flex-direction:column;gap:8px;display:flex}.learnform p{margin:0}@media (max-width:960px){.learncard{grid-template-columns:1fr}}.dialog[popover]{border:1px solid var(--hair);border-radius:var(--radius);background:var(--surface);width:min(720px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);padding:0;overflow:auto;box-shadow:0 24px 64px #00000059}.dialog[popover]:popover-open{animation:.16s ease-out dlg-in}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080c148c}.dialog>header{z-index:1;border-bottom:1px solid var(--hair);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex;position:sticky;top:0}.dialog>header h2{margin:0;font-size:18px}.dialog .dlgbody{padding:20px}@keyframes dlg-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.crumbs{color:var(--muted);margin:0 0 4px;font-size:13px}.groundpick{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.groundpick label{cursor:pointer;border:1px solid var(--hair);border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:6px;min-width:88px;padding:8px;font-size:13px;transition:border-color .15s,background .15s;display:flex}.groundpick label:hover{background:color-mix(in srgb, var(--accent) 5%, transparent)}.groundpick input{opacity:0;pointer-events:none;position:absolute}.groundpick label:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent)}.groundpick label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.gswatch{border-radius:8px;width:64px;height:44px;box-shadow:inset 0 0 0 1px #0000001f}.groundpick .btn{align-self:center;margin-left:auto}.avatarpick{border:1px solid var(--hair);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;padding:12px;display:grid}.avatarpick legend{color:var(--muted);padding:0 6px;font-size:13px;font-weight:600}.avatarpick>small{grid-column:1/-1}.avatarslot{align-items:center;gap:12px;display:flex}.avatarprev{width:84px;height:58px;color:var(--muted);border:3px solid color-mix(in srgb, var(--surface) 70%, #fff);background:#0b1220;border-radius:12px;flex:none;place-items:center;display:grid;overflow:hidden}.avatarprev img{object-fit:cover;object-position:50% 30%;width:100%;height:100%}.avatarctl{flex-direction:column;gap:6px;min-width:0;display:flex}.avatarctl input[type=file]{max-width:100%;font-size:13px}.plate3d .pbadge.photo{border:2px solid var(--c);background:#0b1220;padding:0;overflow:hidden}.plate3d .pbadge.photo img{object-fit:cover;object-position:50% 30%;width:100%;height:100%}.lift2d rect{fill:color-mix(in srgb, var(--accent) 10%, var(--surface));stroke:color-mix(in srgb, var(--accent) 55%, var(--line));stroke-width:1.5px}.lift2d text{fill:var(--accent);font-size:18px;font-weight:700}.floorname{fill:color-mix(in srgb, var(--ink) 18%, transparent);font-family:var(--display);font-size:64px;font-weight:700}.labels3d .floortag3d{font-family:var(--display);font-weight:700;font-size:calc(13px * var(--s,1));color:#fff;background:color-mix(in srgb, var(--accent) 88%, #000);padding:calc(3px * var(--s,1)) calc(10px * var(--s,1));white-space:nowrap;border-radius:999px;transform:translate(12px);box-shadow:0 4px 12px #00000040}.arranger{flex-direction:column;gap:14px;display:flex}.artools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.arfloors{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.arhint{flex-basis:100%;margin:0}.arfloor h2{margin:0 0 10px;font-size:16px}.argrid{grid-template-columns:minmax(240px, 1.6fr) repeat(var(--cols), minmax(118px, 1fr));grid-template-rows:64px 26px 64px;gap:6px;padding-bottom:4px;display:grid;overflow-x:auto}.arfixed{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--ink) 5%, transparent);border:1px dashed var(--hair);grid-area:1/1/4;grid-template-columns:1fr 1fr;align-content:center;gap:4px;padding:6px;display:grid;position:relative}.arfixed>span{text-align:center;background:var(--surface);border:1px solid var(--hair);border-radius:6px;padding:6px 2px;font-size:11px}.arfixed.empty{grid-template-columns:1fr;place-items:center;display:grid}.arfixed.empty>span{background:0 0;border:0}.arfixed.lobby{grid-template-columns:1fr;align-content:stretch}.arlobby{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:6px;height:100%;display:grid}.arlobby .arcell{min-height:64px}.arlobby .archip{gap:4px;padding:4px 6px;font-size:12px}.archip.service{border-style:dashed;border-width:2px}.arlift{z-index:1;color:var(--accent);background:var(--surface);border:1.5px solid var(--accent);white-space:nowrap;border-radius:6px;padding:2px 5px;font-size:11px;font-style:normal;font-weight:700;position:absolute;top:50%;right:-4px;transform:translate(50%,-50%)}.arcorridor{color:var(--muted);background:repeating-linear-gradient(90deg, color-mix(in srgb, var(--ink) 5%, transparent) 0 14px, transparent 14px 22px);border-radius:6px;grid-area:2/2/auto/-1;align-items:center;padding-left:40px;font-size:11px;display:flex}.arcell{font:inherit;border-radius:var(--radius-sm);border:1.5px dashed var(--hair);background:var(--surface);cursor:pointer;min-width:0;color:var(--muted);place-items:center;padding:4px;transition:border-color .15s,background .15s;display:grid}.arcell.full{background:0 0;border-style:solid;border-color:#0000}.arcell.target{border-color:color-mix(in srgb, var(--accent) 60%, var(--hair));background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.arcell:hover,.arcell:focus-visible{border-color:var(--accent)}.arempty{opacity:.5;font-size:20px}.archip{border-radius:var(--radius-sm);width:100%;height:100%;color:var(--ink);background:color-mix(in srgb, var(--c) 14%, var(--surface));border:1.5px solid color-mix(in srgb, var(--c) 55%, transparent);cursor:grab;align-items:center;gap:6px;padding:6px 8px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.archip .ico{color:var(--c);flex:none}.archip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.archip.picked{outline:3px solid var(--accent);outline-offset:1px}.archip.dragging{opacity:.45}.walls3d .plate3d{backface-visibility:hidden}.walls3d .plate3d>div{box-shadow:inset 0 3px 0 #ffffff59, inset 0 0 0 3px color-mix(in srgb, var(--c) 30%, transparent), 0 .4em 1.2em #00000038;background:linear-gradient(180deg, #ffffff38, #ffffff0a 55%), color-mix(in srgb, var(--c) 16%, color-mix(in srgb, var(--surface) 68%, transparent));-webkit-backdrop-filter:none;backdrop-filter:none;border-width:3px;border-radius:.8em;margin:0;font-size:56px}.walls3d .plate3d>div:after{display:none}.walls3d .plate3d .pchip{border-width:2px}.walls3d .plate3d .pbadge.photo{border-width:4px}.stepper{border:1px solid var(--hair);background:var(--surface);border-radius:999px;align-items:center;gap:6px;padding:3px;display:inline-flex}.stepper .iconbtn{border-radius:50%;width:30px;height:30px;font-size:18px;font-weight:700;line-height:1}.stepper strong{text-align:center;min-width:64px;font-size:14px}.warntext{color:var(--warn)}.tag.okt{background:color-mix(in srgb, var(--ok) 14%, transparent);color:var(--ok);margin-left:0}.tag.badt{background:color-mix(in srgb, var(--bad) 14%, transparent);color:var(--bad);margin-left:0}.fbsteps ol{gap:4px;margin:0 0 14px;padding-left:20px;display:grid}.fbform,.fbcopy{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:end;gap:10px 14px;display:grid}.fbform label,.fbcopy label,.fbsettings label:not(.check){flex-direction:column;gap:4px;font-size:13px;display:flex}.fbcopy{border-top:1px dashed var(--hair);margin-top:14px;padding-top:14px}.fbcopy input{font-family:var(--mono);background:var(--soft);font-size:12px}.fbcopy p{grid-column:1/-1;margin:0}.fbalt{margin-top:12px}.fbalt form{margin-top:8px}.fbpages{gap:12px;display:grid}.fbpage{border:1px solid var(--hair);border-radius:var(--radius-sm);padding:12px 14px}.fbpage.off{opacity:.6}.fbpage>header{align-items:center;gap:10px;display:flex}.fbpage>header>div{flex-direction:column;flex:1;min-width:0;display:flex}.fbpage img,.fbpic{object-fit:cover;background:var(--soft);border-radius:50%;flex:none;width:40px;height:40px}.fberr{white-space:pre-wrap;word-break:break-word;background:color-mix(in srgb, var(--bad) 7%, transparent);color:var(--bad);border-radius:8px;margin:6px 0;padding:8px 10px;font-size:12px}.fbsettings{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 14px;margin-top:8px;display:grid}.fbsettings .wide{grid-column:1/-1}.fbhead{align-items:center;gap:12px;display:flex}.fbhead img{object-fit:cover;border-radius:50%;width:48px;height:48px}.fbstats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.fbstats li{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--hair);box-shadow:var(--shadow);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;padding:12px 14px;display:grid}.fbstats li .ico{color:var(--accent);grid-row:1/3}.fbstats li strong{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:24px;line-height:1.1}.fbstats li span{color:var(--muted);font-size:12px}.fbstats li.warn{border-color:color-mix(in srgb, var(--warn) 55%, var(--hair))}.fbstats li.warn .ico,.fbstats li.warn strong{color:var(--warn)}.fbcols{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}@media (max-width:900px){.fbcols{grid-template-columns:1fr}}.fbpost{align-items:center;gap:10px;min-width:0;display:flex}.fbpost img,.fbpost .fbpic{object-fit:cover;border-radius:8px;flex:none;width:44px;height:44px}.fbpost a,.fbpost span{color:var(--ink)}.fbreviews{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fbreviews li{border-bottom:1px solid var(--hair);padding-bottom:10px}.fbreviews p{margin:4px 0 0;font-size:14px}.fbtabs{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.fbtabs h2{margin:0}.fbtabs .viewswitch a{color:var(--muted);border-radius:999px;padding:3px 14px;font-size:13px;font-weight:600;text-decoration:none}.fbtabs .viewswitch a.on{background:var(--ink);color:var(--paper)}.fbcomments{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fbcomments li{border:1px solid var(--hair);border-radius:var(--radius-sm);padding:10px 12px}.fbcomments li.needs{border-color:color-mix(in srgb, var(--bad) 50%, var(--hair));background:color-mix(in srgb, var(--bad) 4%, transparent)}.fbcmeta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fbcomments p{margin:4px 0}.fbon{display:block}.fbreply{border-left:3px solid var(--accent);background:var(--soft);border-radius:0 8px 8px 0;align-items:flex-start;gap:6px;margin:6px 0 0;padding:6px 10px;display:flex}.fbreplyform{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.fbreplyform input[name=text]{flex:1;min-width:200px}.fbinbox{grid-template-columns:minmax(220px,320px) 1fr;min-height:560px;padding:0;display:grid;overflow:hidden}@media (max-width:760px){.fbinbox{grid-template-columns:1fr}.fbthreads{max-height:260px}}.fbthreads{border-right:1px solid var(--hair);max-height:72vh;overflow-y:auto}.fbthread{color:var(--ink);border-bottom:1px solid var(--hair);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:grid}.fbthread:hover{background:var(--soft)}.fbthread.on{background:color-mix(in srgb, var(--accent) 10%, transparent)}.fbthread.needs strong{color:var(--bad)}.fbav{background:var(--soft);width:34px;height:34px;color:var(--accent);border-radius:50%;place-items:center;font-weight:700;display:grid}.fbtmeta{flex-direction:column;min-width:0;display:flex}.fbtmeta small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fbtside{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.fbtside .dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.fbtside .dot.warn{background:var(--bad)}.fbchat{flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.fbchathead{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fbchathead form{margin-left:auto}.fbmsgs{flex-direction:column;flex:1;gap:8px;max-height:58vh;padding:4px;display:flex;overflow-y:auto}.fbmsg{align-self:flex-start;max-width:75%}.fbmsg p{background:var(--soft);white-space:pre-wrap;word-break:break-word;border-radius:16px 16px 16px 4px;margin:0;padding:8px 12px}.fbmsg small{color:var(--muted);padding:0 6px;font-size:11px}.fbmsg.out{text-align:right;align-self:flex-end}.fbmsg.out p{background:var(--accent);color:#fff;text-align:left;border-radius:16px 16px 4px}.fbsend{align-items:flex-end;gap:8px;display:flex}.fbsend textarea{resize:vertical;flex:1}.ttbars{border-bottom:1px solid var(--hair);align-items:flex-end;gap:4px;height:160px;padding:8px 4px 22px;display:flex}.ttbars span{background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 45%, transparent));border-radius:6px 6px 2px 2px;flex:1;min-width:6px;position:relative}.ttbars span i{color:var(--muted);white-space:nowrap;font-size:10px;font-style:normal;position:absolute;bottom:-20px;left:50%;translate:-50%}.ttbars span:not(:nth-child(5n+1)):not(:last-child) i{display:none}.fbpost img.ttcover,.fbpost .ttcover{border-radius:6px;width:36px;height:50px}.pkt.social.fb rect{fill:#2563eb;stroke:#1d4ed8}.pkt.social.tt rect{fill:#111827;stroke:#ec4899}.pkt.social.wa rect{fill:#16a34a;stroke:#15803d}.pkt.social polyline{stroke:#fff}.demosteps{gap:4px;margin:0 0 8px;padding-left:20px;display:grid}.demolog{gap:6px;margin:0;padding:0;list-style:none;display:grid}.demolog li{background:var(--soft);border-radius:8px;padding:6px 10px;font-size:13.5px;line-height:1.5}.demolog li.new{background:color-mix(in srgb, var(--accent) 14%, var(--soft));animation:.6s ease-out demo-in}@keyframes demo-in{0%{opacity:0;transform:translateY(-4px)}}.chan{color:#fff;background:var(--muted);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.chan-fb{background:#2563eb}.chan-tt{background:#111827;box-shadow:inset 0 0 0 1px #ec4899}.chan-wa{background:#16a34a}.chan-staff{background:var(--accent)}.gardenform{flex-direction:column;gap:16px;display:flex}.treepick label{text-align:center;width:118px;line-height:1.35}.gswatch.tree{background:linear-gradient(160deg, color-mix(in srgb, var(--ok) 16%, var(--surface)), color-mix(in srgb, var(--ok) 6%, var(--surface)));place-items:center;font-size:26px;display:grid}.gardenopts{gap:18px}.gardenopts .btn{margin-left:auto}.seg{border:1px solid var(--hair);background:color-mix(in srgb, var(--paper) 60%, var(--surface));border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg label{cursor:pointer;position:relative}.seg input{opacity:0;pointer-events:none;position:absolute}.seg span{border-radius:8px;padding:5px 14px;font-size:13.5px;display:block}.seg label:has(input:checked) span{background:var(--surface);color:var(--accent);font-weight:600;box-shadow:0 1px 3px #1018281f}.seg label:has(input:focus-visible) span{outline:2px solid var(--accent)}html{scroll-padding-top:80px}.lgin-missing{min-height:100vh}.planuse{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.planrow{border:1px solid var(--hair);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:14px;display:flex}.planrow>.row{justify-content:space-between}.planrow.warn .bar i{background:var(--warn)}.planrow.full .bar i{background:var(--bad)}.planrow.full{border-color:color-mix(in srgb, var(--bad) 40%, var(--hair))}.dialog.wide[popover]{width:min(1040px,100vw - 32px)}.dialog>header small{display:block}.dialog h3{font-family:var(--display);margin:0 0 8px;font-size:15px}.dlgcols{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:24px;display:grid}.dlgcols>form{border-right:1px solid var(--hair);padding-right:24px}.dlgactions{justify-content:flex-end;gap:8px;padding-top:6px;display:flex}.dialog .stack{gap:18px}.effective>summary{cursor:pointer;color:var(--muted);font-size:14px;font-weight:600}.effective[open]>summary{margin-bottom:10px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rolecard.clickable{flex-direction:column;gap:10px;display:flex}.rolecard .rolehead{align-items:center;gap:10px;display:flex}.rolecard .rolehead .rolename{flex-direction:column;flex:1;min-width:0;display:flex}.menuitem.row-item{align-items:center;gap:12px;padding:9px 10px 9px 14px;display:flex}.menuitem.row-item>.ico{color:var(--accent)}.menuitem.row-item .menulabel{flex-direction:column;flex:1;min-width:0;display:flex}@media (max-width:960px){.menuitem.row-item{flex-wrap:wrap}}.menuact{align-items:center;gap:2px;display:flex}.menuact form{gap:2px;display:flex}@media (max-width:760px){.dlgcols{grid-template-columns:1fr}.dlgcols>form{border-right:0;border-bottom:1px solid var(--hair);padding-bottom:18px;padding-right:0}}.rstats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.rstat{border:1px solid var(--hair);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:2px;min-width:0;padding:14px 16px;display:flex}.rstat-label{color:var(--muted);font-size:13px}.rstat-value{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.2}.rstat.ok .rstat-value{color:var(--ok)}.rstat.warn .rstat-value{color:var(--warn)}.rstat.bad .rstat-value{color:var(--bad)}.rbars{margin:0}.rbars-plot{border-bottom:1px solid var(--line);align-items:stretch;gap:10px;height:220px;padding-top:4px;display:flex}.rbars-col{cursor:default;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;display:flex;position:relative}.rbars-bar{background:var(--accent);border-radius:4px 4px 0 0;width:min(44px,70%);transition:filter .15s}.rbars-col:hover .rbars-bar{filter:brightness(1.15)}.rbars-val{color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:12.5px;font-weight:600}.rbars-x{color:var(--muted);white-space:nowrap;font-size:12px;position:absolute;bottom:-24px}.rbars{padding-bottom:26px}.rbars-col[data-tip]:hover:after{content:attr(data-tip);z-index:2;white-space:nowrap;background:var(--ink);color:var(--surface);box-shadow:var(--shadow);border-radius:8px;padding:6px 10px;font-size:12.5px;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}.rcellcol{width:55%}.rcell{align-items:center;gap:10px;display:flex}.rcell-track{background:var(--hair);border-radius:99px;flex:1;min-width:60px;height:8px;overflow:hidden}.rcell-track>span{background:var(--accent);border-radius:99px;height:100%;display:block}.rusage{flex-direction:column;gap:4px;min-width:110px;display:flex}.rusage .rcell-track>span{background:var(--ok)}.rusage.warn .rcell-track>span{background:var(--warn)}.rusage.full .rcell-track>span{background:var(--bad)}.rdot{background:var(--c);vertical-align:1px;border-radius:50%;width:9px;height:9px;margin-right:8px;display:inline-block}.coname{flex-direction:column;min-width:0;display:flex}.limitgrid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}tr.off td{opacity:.55}.rbars.dense .rbars-plot{gap:3px;height:160px}.rbars.dense .rbars-bar{border-radius:3px 3px 0 0;width:100%}.rsub{font-family:var(--display);color:var(--muted);margin:18px 0 8px;font-size:14px}.ptabs{border:1px solid var(--hair);background:var(--surface);border-radius:12px;gap:4px;width:fit-content;max-width:100%;padding:4px;display:flex;overflow-x:auto}.ptabs a{color:var(--muted);white-space:nowrap;border-radius:9px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.ptabs a:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 5%, transparent)}.ptabs a[aria-current=page]{background:var(--accent);color:#fff;box-shadow:0 6px 14px -8px var(--accent)}.ptabs .count{background:color-mix(in srgb, currentColor 18%, transparent);border-radius:99px;padding:0 7px;font-size:12px}.pageskel{flex-direction:column;gap:14px;animation:.2s .12s both skel-in;display:flex}.skelrow{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.skel{border-radius:var(--radius-sm,10px);background:linear-gradient(90deg, var(--soft) 0%, color-mix(in srgb, var(--soft) 40%, var(--surface)) 50%, var(--soft) 100%) 0 0 / 200% 100%;animation:1.2s linear infinite skel-wave}.skel-title{width:min(320px,70%);height:34px}.skel-line{width:min(520px,90%);height:14px}.skel-box{height:92px}.skel-card{border-radius:var(--radius);height:320px}@keyframes skel-wave{to{background-position:-200% 0}}@keyframes skel-in{0%{opacity:0}}.main>:not([popover]){animation:.22s both page-in}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.main>:not([popover]),.pageskel,.skel{animation:none!important}}a,button,label,summary,select,input[type=checkbox],input[type=radio]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (pointer:coarse){.iconbtn.iconbtn{flex:none;width:40px;min-width:40px;height:40px}.viewswitch button,.floorswitch button{min-height:36px;padding-inline:14px}.menuact{gap:4px}input[type=checkbox],input[type=radio]{width:20px;height:20px}.check{min-height:36px}}input[type=file]{font:inherit;color:var(--muted);max-width:100%;font-size:13.5px}input[type=file]::file-selector-button{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;margin-right:12px;padding:8px 14px;font-weight:600;transition:background .15s,border-color .15s}input[type=file]::file-selector-button:hover{background:var(--soft);border-color:var(--accent)}.tablebox{background:linear-gradient(to right, var(--surface) 30%, transparent) left / 32px 100% no-repeat local, linear-gradient(to left, var(--surface) 30%, transparent) right / 32px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #00000038, transparent) left / 12px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #00000038, transparent) right / 12px 100% no-repeat scroll;-webkit-overflow-scrolling:touch}.rowlink{color:inherit;text-decoration:none}.rowlink:hover{color:var(--accent)}@media (max-width:640px){.reqtable thead{display:none}.reqtable,.reqtable tbody{display:block}.reqtable tr{border-bottom:1px solid var(--hair);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"no status""text text""meta date";gap:6px 12px;padding:13px 0;display:grid}.reqtable td{border:0;max-width:none;padding:0;display:block}.reqtable .rt-no{grid-area:no;font-size:12.5px}.reqtable .rt-status{grid-area:status;justify-self:end}.reqtable .rt-text{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:text;font-weight:500;display:-webkit-box;overflow:hidden}.reqtable .rt-user,.reqtable .rt-dept{color:var(--muted);grid-area:meta;font-size:12.5px}.reqtable .rt-user+.rt-dept{display:none}.reqtable .rt-date{color:var(--muted);grid-area:date;font-size:12px}.tablebox:has(.reqtable){background:0 0}.rstats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rstat{padding:12px 14px}.rstat-value{font-size:22px}}.dialog>.dangerzone{padding:14px 20px}.alert.warn{border-left-color:var(--warn);background:color-mix(in srgb, var(--warn) 8%, var(--surface))}.row.spread{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.row.spread h2{margin-bottom:4px}.balance{border-radius:var(--radius-sm);border:1px solid var(--hair);border-left:4px solid var(--ok);background:color-mix(in srgb, var(--ok) 6%, var(--surface));flex-wrap:wrap;align-items:center;gap:14px;margin:8px 0 12px;padding:12px 16px;display:flex}.balance.warn{border-left-color:var(--warn);background:color-mix(in srgb, var(--warn) 8%, var(--surface))}.balance.bad{border-left-color:var(--bad);background:color-mix(in srgb, var(--bad) 8%, var(--surface))}.balance-value{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:28px;line-height:1.1}.balance-sub{font-size:14px}td .balance{gap:10px;margin:0;padding:6px 10px}td .balance-value{font-size:18px}td .balance-sub{font-size:12.5px}.lowform{flex-wrap:wrap;align-items:flex-end;gap:10px}.lowform .field{max-width:260px;margin:0}.tb-lang{justify-content:center;align-items:center;min-width:40px;padding:0 9px;display:inline-flex;width:auto!important}.flag{width:24px;height:16px;box-shadow:0 0 0 1px color-mix(in srgb, var(--text,#000) 18%, transparent);border-radius:3px;flex:none;display:block}.loginpane{position:relative}.lgin-lang{z-index:2;position:absolute;top:16px;right:16px}.lgin-lang .btn{justify-content:center;min-width:48px}.formactions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.grid2>.span2{grid-column:1/-1}.form h3{margin:6px 0 0;font-size:15px}tfoot th{border-top:1px solid var(--line);font-weight:700}.payto{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.payto img{object-fit:contain;border:1px solid var(--hair);background:#fff;border-radius:12px;width:180px;height:180px;padding:8px}.payto dl{flex:1;grid-template-columns:auto 1fr;gap:6px 14px;min-width:220px;margin:0;display:grid}.payto dt{color:var(--muted);font-size:13.5px}.payto dd{overflow-wrap:anywhere;margin:0}.payto-note{flex-basis:100%;margin:0}.slipthumb{border:1px solid var(--hair);border-radius:10px;max-height:320px;display:block;overflow:hidden}.slipthumb img{width:100%;height:auto;display:block}.invcard{border:1px solid var(--hair);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.invcard.late{border-color:color-mix(in srgb, var(--bad) 45%, var(--hair))}.lgin-missing .payto{text-align:left;margin-top:8px}.invcard form.row{flex-wrap:wrap;align-items:flex-end;gap:10px}.field.grow{flex:240px}.card>.invcard,.card>details{margin-top:12px}
