@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--brand:#2563eb;--on-brand:#fff;--brand-hover:color-mix(in oklab, var(--brand) 86%, black);--brand-text:color-mix(in oklab, var(--brand) 84%, black);--brand-soft:color-mix(in oklab, var(--brand) 11%, transparent);--brand-ring:color-mix(in oklab, var(--brand) 40%, transparent);--bg:#f1f5fd;--bg-glow-1:color-mix(in oklab, var(--brand) 22%, transparent);--bg-glow-2:#38bdf833;--surface:#ffffffb8;--surface-strong:#ffffffeb;--surface-solid:#fff;--surface-sunken:#1437820d;--border:#14326e1f;--border-strong:#14326e3d;--text:#0e1a33;--text-muted:#51607c;--text-faint:#7b88a3;--success:#0a7d54;--success-soft:#10966421;--warning:#9a5b07;--warning-soft:#d98c142b;--caution:#7a6200;--caution-soft:#eabe1433;--danger:#c8283a;--danger-soft:#d22d3c1c;--on-danger:#fff;--shadow-sm:0 1px 2px #0f28640f, 0 2px 8px -2px #0f286414;--shadow-md:0 14px 34px -16px #143c964d, 0 2px 6px #0f28640d;--shadow-lg:0 32px 72px -24px #0f2d786b;--glass-blur:blur(18px) saturate(160%);--radius-sm:8px;--radius:14px;--radius-lg:22px;--ease:cubic-bezier(.2, .8, .2, 1);--speed:.18s;--sidebar-width:256px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-hover:color-mix(in oklab, var(--brand) 84%, white);--brand-text:color-mix(in oklab, var(--brand) 55%, white);--brand-soft:color-mix(in oklab, var(--brand) 24%, transparent);--brand-ring:color-mix(in oklab, var(--brand) 55%, transparent);--bg:#070c18;--bg-glow-1:color-mix(in oklab, var(--brand) 30%, transparent);--bg-glow-2:#38bdf81a;--surface:#121c32a3;--surface-strong:#141f38f0;--surface-solid:#121c33;--surface-sunken:#96b4ff12;--border:#96b4ff26;--border-strong:#96b4ff4d;--text:#e9eefb;--text-muted:#a5b1cd;--text-faint:#7886a5;--success:#45d39a;--success-soft:#45d39a26;--warning:#f2b755;--warning-soft:#f2b75526;--caution:#f0d264;--caution-soft:#f0d26424;--danger:#ff7481;--danger-soft:#ff748126;--on-danger:#2a0509;--shadow-sm:0 1px 2px #0006, 0 2px 8px -2px #0006;--shadow-md:0 16px 40px -18px #000000bf, 0 2px 6px #0000004d;--shadow-lg:0 34px 80px -24px #000000d9}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh;font-family:var(--font-sans);color:var(--text);background:radial-gradient(58rem 38rem at 8% -12%, var(--bg-glow-1), transparent 62%), radial-gradient(46rem 34rem at 108% 4%, var(--bg-glow-2), transparent 60%), var(--bg);-webkit-font-smoothing:antialiased;transition:background-color .3s var(--ease), color .3s var(--ease);background-attachment:fixed;margin:0;font-size:.9375rem;line-height:1.5}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;line-height:1.2}a{color:var(--brand-text);text-underline-offset:3px;text-decoration-thickness:1px}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}::selection{background:var(--brand-ring)}.muted{color:var(--text-muted)}.num{text-align:right;font-variant-numeric:tabular-nums}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--brand);color:var(--on-brand);transition:transform var(--speed) var(--ease);padding:.6rem 1rem;font-weight:600;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.icon{flex:none}.glass{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.btn{white-space:nowrap;cursor:pointer;min-height:2.5rem;transition:transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease), background-color var(--speed) var(--ease), border-color var(--speed) var(--ease);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn-primary{background:var(--brand);color:var(--on-brand);box-shadow:0 8px 18px -8px var(--brand-ring)}.btn-primary:hover{background:var(--brand-hover);box-shadow:0 12px 24px -8px var(--brand-ring)}.btn-ghost{background:var(--surface-sunken);border-color:var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--border-strong)}.btn-danger{background:var(--danger);color:var(--on-danger)}.btn-danger-ghost{color:var(--danger);background:0 0}.btn-danger-ghost:hover{background:var(--danger-soft)}.btn-block{width:100%}.btn-icon{width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;transition:background-color var(--speed) var(--ease), color var(--speed) var(--ease), transform var(--speed) var(--ease);background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:inline-grid}.btn-icon:hover{background:var(--surface-sunken);color:var(--text)}.btn-icon:active{transform:scale(.92)}.btn-icon.is-danger:hover{background:var(--danger-soft);color:var(--danger)}.btn:disabled,.btn-icon:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.is-busy{color:#0000;pointer-events:none;position:relative}.btn.is-busy:after{content:"";border:2px solid var(--on-brand);border-right-color:#0000;border-radius:50%;width:1.1rem;height:1.1rem;animation:.7s linear infinite spin;position:absolute}.field{flex-direction:column;gap:.35rem;min-width:0;display:flex}.field-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.field-hint{color:var(--text-faint);font-size:.78rem}.input,.field input:not([type=checkbox],[type=color],[type=file]),.field select,.field textarea{border:1px solid var(--border-strong);background:var(--surface-solid);width:100%;min-height:2.5rem;color:var(--text);transition:border-color var(--speed) var(--ease), box-shadow var(--speed) var(--ease);border-radius:10px;padding:.5rem .75rem}.field textarea{resize:vertical;min-height:4.5rem}.input:hover,.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--text-faint)}.input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring);outline:none}.input::placeholder,.field input::placeholder,.field textarea::placeholder{color:var(--text-faint)}.field input[type=color]{border:1px solid var(--border-strong);background:var(--surface-solid);cursor:pointer;border-radius:10px;width:3rem;height:2.5rem;padding:.2rem}input[type=file]{max-width:100%;color:var(--text-muted);font-size:.86rem}input[type=file]::file-selector-button{border:1px solid var(--border);background:var(--surface-sunken);min-height:2.5rem;color:var(--text);font:inherit;cursor:pointer;border-radius:10px;margin-right:.75rem;padding:0 1rem;font-weight:600}.field-check{flex-direction:row;align-items:center;gap:.6rem;min-height:2.5rem}.field-check input{width:1.1rem;height:1.1rem;accent-color:var(--brand)}.field-check .field-label{color:var(--text);font-size:.9rem}.input-affix{align-items:stretch;display:flex}.input-affix input{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.input-affix span{border:1px solid var(--border-strong);background:var(--surface-sunken);color:var(--text-muted);white-space:nowrap;border-left:0;border-radius:0 10px 10px 0;align-items:center;padding:0 .75rem;font-size:.85rem;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;display:grid}.field-full{grid-column:1/-1}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:10px;margin:0;padding:.6rem .8rem;font-size:.86rem;font-weight:500}.form-note{background:var(--brand-soft);color:var(--text);border-radius:10px;padding:.6rem .8rem;font-size:.86rem}@media (width<=560px){.form-grid{grid-template-columns:minmax(0,1fr)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}@keyframes pop-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}@keyframes fade-out{to{opacity:0;transform:translateY(6px)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes drop-pop{0%{box-shadow:0 0 0 4px var(--brand-ring);transform:scale(1.04)}to{transform:none}}.view-enter>*{animation:rise-in .34s var(--ease) both}.view-enter>:nth-child(2){animation-delay:50ms}.view-enter>:nth-child(3){animation-delay:.1s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}.card{padding:1.25rem}.card-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.card-head h2{font-size:1.02rem;font-weight:600}.card-head p{margin-top:.2rem;font-size:.84rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}@media (width<=760px){.grid{grid-template-columns:minmax(0,1fr)}}.grid .span-all{grid-column:1/-1}.badge{background:var(--surface-sunken);color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.18rem .6rem;font-size:.78rem;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.badge-success{background:var(--success-soft);color:var(--success)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-info{background:var(--brand-soft);color:var(--brand-text)}.facts{grid-template-columns:auto 1fr;gap:.55rem 1.25rem;margin:0;font-size:.92rem;display:grid}.facts dt{color:var(--text-muted)}.facts dd{overflow-wrap:anywhere;margin:0;font-weight:500}.welcome{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1.4rem 1.5rem;display:flex}.welcome h2{font-size:1.35rem;font-weight:700}.welcome p{margin-top:.25rem}.roadmap{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.roadmap li{border:1px solid var(--border);background:var(--surface-solid);border-radius:12px;align-items:center;gap:.7rem;padding:.65rem .8rem;font-weight:500;display:flex}.roadmap .icon{color:var(--brand-text)}.roadmap .badge{margin-left:auto}.empty{color:var(--text-muted);text-align:center;place-items:center;gap:.6rem;padding:3.5rem 1.5rem;display:grid}.empty h2,.empty h3{color:var(--text);font-size:1.15rem;font-weight:600}.empty-icon{background:var(--brand-soft);width:3.5rem;height:3.5rem;color:var(--brand-text);border-radius:16px;place-items:center;display:grid}.skeleton{background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--border) 50%, var(--surface-sunken) 75%);background-size:200% 100%;border-radius:6px;height:1rem;animation:1.4s linear infinite shimmer}.spinner-page{min-height:100dvh;color:var(--text-muted);place-items:center;display:grid}.spinner{border:3px solid var(--border-strong);border-top-color:var(--brand);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}.table-card{overflow:hidden}.table-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:1.1rem 1.25rem .9rem;display:flex}.table-head h2{font-size:1.02rem;font-weight:600}.table-head p{margin-top:.2rem;font-size:.84rem}.table-message{margin:0 1.25rem .9rem}.table-wrap{position:relative;overflow-x:auto}.data{border-collapse:collapse;width:100%;font-size:.9rem}.data th{border-bottom:1px solid var(--border);color:var(--text-muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:.8rem 1rem;font-size:.72rem;font-weight:600}.data td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.75rem 1rem}.data th:first-child,.data td:first-child{padding-left:1.25rem}.data th:last-child,.data td:last-child{padding-right:1.25rem}.data tbody tr{transition:background-color var(--speed) var(--ease)}.data tbody tr:hover{background:var(--surface-sunken)}.data[aria-busy=true] tbody{opacity:.55}.data .actions{text-align:right;white-space:nowrap}.cell-main{font-weight:600}.cell-sub{color:var(--text-muted);font-size:.8rem;font-weight:400;display:block}.cell-error{max-width:22rem;color:var(--danger);overflow-wrap:anywhere}.table-foot{border-top:1px solid var(--border);color:var(--text-muted);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1.25rem;font-size:.84rem;display:flex}.pager{gap:.4rem;display:flex}.badge-warning{background:var(--warning-soft);color:var(--warning)}.btn-small{min-height:2rem;padding:0 .7rem;font-size:.82rem}.plain-fieldset,.chip-group{border:0;min-width:0;margin:0;padding:0}.chip-group legend{margin-bottom:.45rem;padding:0}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip-check{cursor:pointer;display:inline-flex;position:relative}.chip-check input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip-check span{border:1px solid var(--border-strong);background:var(--surface-solid);color:var(--text);transition:background-color var(--speed) var(--ease), border-color var(--speed) var(--ease), transform var(--speed) var(--ease);border-radius:999px;padding:.38rem .85rem;font-size:.86rem;font-weight:500}.chip-check:hover span{border-color:var(--brand);transform:translateY(-1px)}.chip-check input:checked+span{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.chip-check input:focus-visible+span{outline:2px solid var(--brand);outline-offset:2px}.chip-group:disabled .chip-check{cursor:default;opacity:.7}.field-error{color:var(--danger);font-size:.8rem;font-weight:500}.stack{justify-items:start;gap:1rem;display:grid}.stack>.plain-fieldset,.stack>.form-error,.stack>.form-note{justify-self:stretch}.dialog-backdrop{z-index:50;animation:rise-in .16s var(--ease);background:#070e2080;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.dialog{border-radius:var(--radius-lg);background:var(--surface-strong);width:min(26rem,100%);box-shadow:var(--shadow-lg);animation:pop-in .22s var(--ease);gap:.75rem;padding:1.5rem;display:grid}.dialog h2{font-size:1.1rem;font-weight:600}.dialog p{color:var(--text-muted)}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;margin-top:.5rem;display:flex}.empty-icon.is-success{background:var(--success-soft);color:var(--success)}.table-tools{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.search{align-items:center;gap:.25rem;display:flex}.search .input,.table-tools select.input,.table-filters select.input{border:1px solid var(--border-strong);background:var(--surface-solid);width:min(17rem,62vw);min-height:2.5rem;color:var(--text);font:inherit;border-radius:10px;padding:0 .75rem;font-size:.9rem}.search .input:focus,.table-tools select.input:focus,.table-filters select.input:focus{border-color:var(--brand);outline:2px solid var(--brand-ring);outline-offset:1px}.table-tools .field-check,.table-filters .field-check{cursor:pointer;display:inline-flex}.table-filters{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;padding:0 1.25rem .9rem;display:flex}.chip-group.table-filters{display:block}.form-note.table-message{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.badge-inline{vertical-align:middle;margin-left:.5rem;padding:.05rem .5rem;font-size:.68rem}.badge-inline:before{content:none}.nowrap{white-space:nowrap}.row-actions{white-space:normal;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.data .cell-list{min-width:11rem}.field-static{overflow-wrap:anywhere;padding:.3rem 0;font-weight:500}.dialog-form{width:min(34rem,100%);max-height:calc(100dvh - 2rem);overflow-y:auto}.dialog-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dialog-form .stack{justify-items:stretch}.chip-group>.field-check{cursor:pointer;min-height:2rem;margin-bottom:.4rem;display:flex}.chip-group>.field-hint{display:block}.roles{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.role-list{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.list-heading{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin:1rem 0 .35rem;padding:0 .75rem;font-size:.72rem;font-weight:600}.card-head+.list-heading{margin-top:0}.list-empty{padding:.2rem .75rem;font-size:.84rem}.role-add{margin-top:.9rem}.role-item{border-radius:var(--radius-sm);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color var(--speed) var(--ease), border-color var(--speed) var(--ease);background:0 0;border:1px solid #0000;padding:.55rem .75rem;display:block}.role-item:hover{background:var(--surface-sunken)}.role-item.is-current{border-color:var(--brand);background:var(--brand-soft)}.role-item:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.permission-groups{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.1rem 1.5rem;display:grid}.permission-group{border:0;min-width:0;margin:0;padding:0}.permission-group legend{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem;padding:0;font-size:.72rem;font-weight:600}.permission-group .field-check{min-height:2rem;display:flex}.stack>.dialog-actions{justify-self:stretch}@media (width<=860px){.roles{grid-template-columns:minmax(0,1fr)}}.changes{gap:.2rem;max-width:34rem;margin:0;font-size:.84rem;display:grid}.changes>div{flex-wrap:wrap;gap:0 .4rem;display:flex}.changes dt{color:var(--text-muted)}.changes dd{overflow-wrap:anywhere;margin:0}.change-added,.change-removed{display:block}.change-added{color:var(--success)}.change-removed{color:var(--danger)}.back-link{align-items:center;gap:.3rem;margin-bottom:.35rem;font-size:.84rem;display:inline-flex}.inline-state{padding:1.25rem}.segmented{border:1px solid var(--border-strong);border-radius:10px;display:inline-flex;overflow:hidden}.segmented button{background:var(--surface-solid);min-height:2.5rem;color:var(--text-muted);font:inherit;cursor:pointer;transition:background-color var(--speed) var(--ease), color var(--speed) var(--ease);border:0;padding:0 .9rem;font-size:.88rem;font-weight:600}.segmented button[aria-pressed=true]{background:var(--brand);color:var(--on-brand)}.segmented button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.suggestion-groups{gap:.5rem;padding:0 1.25rem 1rem;display:grid}.suggestion-groups[aria-busy=true]{opacity:.55}.suggestion-group>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 0 .35rem;display:flex}.suggestion-group h3{font-size:.92rem;font-weight:600}.suggestion-group ul{margin:0;padding:0;list-style:none}.suggestion-group li{flex-wrap:wrap;align-items:center;gap:.25rem .8rem;min-height:2.6rem;padding:.1rem 0;font-size:.86rem;display:flex}.suggestion-group li .field-check{cursor:pointer;flex:14rem;min-height:2.2rem;display:inline-flex}.input.price-input{width:9rem;min-height:2.2rem;padding:0 .6rem}.table-card-open{overflow:visible}.selection-bar{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--border);background:var(--surface-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;display:flex;position:sticky;bottom:0}.category-tree{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.category-tree ul{border-left:2px solid var(--border);gap:.3rem;margin:.3rem 0 0 .5rem;padding:0 0 0 .75rem;list-style:none;display:grid}.category-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.category-edit{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.category-edit .input{flex:12rem;width:auto;min-height:2.2rem}.table-summary{color:var(--text-muted);margin:0 1.25rem .75rem;font-size:.86rem;font-weight:600}.data tr.is-struck td{color:var(--text-muted)}.data tr.is-struck .cell-main,.data tr.is-struck td.num{text-decoration:line-through}.card-actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.pos{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (width<=980px){.pos{grid-template-columns:minmax(0,1fr)}}.pos .card-head .input{width:auto;max-width:14rem}.pos-search{margin-bottom:.9rem}.pos-search .input{flex:1}.pos-empty{margin:.6rem 0 0;font-size:.86rem}.pos-products{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.pos-product{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);width:100%;height:100%;min-height:5.2rem;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--speed) var(--ease), background-color var(--speed) var(--ease);align-content:start;gap:.15rem;padding:.65rem .75rem;display:grid}.pos-product:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.pos-product:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.pos-product:disabled{cursor:not-allowed;opacity:.6}.pos-product .cell-main{overflow-wrap:anywhere}.pos-product-price{color:var(--brand-text);font-variant-numeric:tabular-nums;font-weight:700}.pos-product .is-out{color:var(--danger)}.pos-cart{justify-items:stretch}.cart-lines{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.cart-lines li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 5.5rem minmax(5.5rem,auto) auto;align-items:center;gap:.5rem;padding-bottom:.5rem;display:grid}.cart-line-name{min-width:0;display:grid}.cart-line-name .cell-main{overflow-wrap:anywhere}.cart-quantity{text-align:right;min-height:2.3rem;padding-inline:.5rem}.cart-line-total{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}@media (width<=480px){.cart-lines li{grid-template-columns:minmax(0,1fr) 4.5rem auto}.cart-line-total{text-align:left;grid-column:1/3}}.cart-customer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cart-customer-picker .search{flex-wrap:wrap;gap:.5rem;display:flex}.cart-customer-picker .search .input{flex:12rem}.customer-matches{border:1px solid var(--border);border-radius:var(--radius-sm);gap:.2rem;margin:.4rem 0 0;padding:.3rem;list-style:none;display:grid}.customer-matches li.muted{padding:.4rem .75rem;font-size:.86rem}.cart-totals,.receipt-totals,.receipt-meta{grid-template-columns:1fr auto;gap:.3rem 1rem;margin:0;display:grid}.cart-totals dd,.receipt-totals dd,.receipt-meta dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.cart-total,.receipt-total{font-size:1.15rem;font-weight:700}.cart-totals .is-short{color:var(--danger);font-weight:600}.cart-lines.with-discount li{grid-template-columns:minmax(0,1fr) 4.8rem 5.8rem minmax(5.5rem,auto) auto}@media (width<=480px){.cart-lines.with-discount li{grid-template-columns:4.5rem 5.5rem minmax(0,1fr) auto}.cart-lines.with-discount .cart-line-name{grid-column:1/-1}.cart-lines.with-discount .cart-line-total{text-align:right;grid-column:auto}}.cart-actions{flex-wrap:wrap;gap:.6rem;display:flex}.cart-actions .btn-primary{flex:12rem}.summary-due,.cell-sub.is-short{color:var(--danger)}.payment-line{border:1px solid var(--border);border-radius:.75rem;min-width:0;margin:0;padding:.6rem .75rem .75rem}.payment-line legend{align-items:center;gap:.6rem;padding:0 .35rem;font-size:.85rem;font-weight:600;display:flex}.payment-line-amount{font-variant-numeric:tabular-nums;color:var(--text-muted)}.payment-add{place-self:flex-start start}.schedule-lines,.count-lines{gap:.45rem;margin:.5rem 0;padding:0;list-style:none;display:grid}.schedule-lines li{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(4.5rem,auto) auto;align-items:center;gap:.5rem;display:grid}.schedule-lines .payment-line-amount,.count-worth{text-align:right;font-variant-numeric:tabular-nums}.count-lines li{grid-template-columns:minmax(5.5rem,1fr) auto 5.5rem minmax(5.5rem,1fr);align-items:center;gap:.5rem;display:grid}.count-worth{color:var(--text-muted)}.payment-credit{align-self:end;margin:0}.chart{--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--chart-plot-height:200px;margin:0;padding:0 1.25rem 1rem}:root[data-theme=dark] .chart{--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70}.chart .series-1{background:var(--series-1)}.chart .series-2{background:var(--series-2)}.chart .series-3{background:var(--series-3)}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;margin-bottom:.75rem;display:flex}.chart-title{font-size:.9rem;font-weight:600}.chart-legend{color:var(--text-muted);flex-wrap:wrap;gap:.3rem 1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.chart-legend li{align-items:center;gap:.4rem;display:inline-flex}.chart-swatch{border-radius:2px;width:.7rem;height:.7rem}.chart-scroll{overflow-x:auto}.chart-plot{padding-top:.6rem;padding-left:3rem;position:relative}.chart-grid{height:var(--chart-plot-height);position:absolute;top:.6rem;left:3rem;right:0}.chart-grid span{border-top:1px solid var(--border);position:absolute;left:0;right:0}.chart-grid i{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:.5rem;font-size:.72rem;font-style:normal;position:absolute;right:100%;transform:translateY(-50%)}.chart-columns,.chart-axis{margin:0;padding:0;list-style:none;display:flex;position:relative}.chart-columns{height:var(--chart-plot-height);border-bottom:1px solid var(--border-strong)}.chart-columns li,.chart-axis li{flex:1 0 14px;min-width:0}.chart-columns li{outline-offset:-2px;justify-content:center;align-items:flex-end;display:flex;position:relative}.chart-columns li:before{content:"";border-radius:4px 4px 0 0;width:min(100%,3.5rem);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.chart-columns li:hover:before,.chart-columns li:focus-visible:before,.chart-bars li:hover,.chart-bars li:focus-visible{background:var(--surface-sunken)}.chart-stack{flex-direction:column-reverse;gap:2px;width:min(24px,100% - 4px);min-height:2px;display:flex;position:relative}.chart-seg{-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:1 1 0;min-height:1px}.chart-stack .chart-seg:last-child{border-radius:4px 4px 0 0}.chart-axis li{color:var(--text-faint);text-align:center;white-space:nowrap;padding-top:.35rem;font-size:.72rem;overflow:visible}.chart-bars{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.chart-bars li{border-radius:6px;grid-template-columns:minmax(6rem,12rem) minmax(0,1fr);align-items:center;gap:.75rem;padding:.3rem .4rem;display:grid;position:relative}.chart-bar-label{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.chart-bar-track{align-items:center;gap:.5rem;min-width:0;display:flex}.chart-bar-stack{gap:2px;min-width:2px;height:16px;display:flex}.chart-bar-stack .chart-seg:last-child{border-radius:0 4px 4px 0}.chart-bar-value{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem}.chart-tip{z-index:2;border:1px solid var(--border);background:var(--surface-solid);min-width:10rem;box-shadow:var(--shadow-md);pointer-events:none;white-space:nowrap;border-radius:10px;gap:.2rem;padding:.5rem .65rem;font-size:.78rem;display:none;position:absolute;top:.25rem;left:50%;transform:translate(-50%)}.chart-columns li.is-start .chart-tip{left:0;transform:none}.chart-columns li.is-end .chart-tip{left:auto;right:0;transform:none}.chart-bars .chart-tip{top:100%;left:12.75rem;transform:none}.chart-columns li:hover .chart-tip,.chart-columns li:focus-visible .chart-tip,.chart-bars li:hover .chart-tip,.chart-bars li:focus-visible .chart-tip{display:grid}.chart-tip-title{color:var(--text-muted)}.chart-tip-row{align-items:center;gap:.4rem;display:flex}.chart-tip-row span{color:var(--text-muted)}.chart-tip-total{border-top:1px solid var(--border);padding-top:.2rem}.chart-key{border-radius:1px;width:.75rem;height:2px}@media (forced-colors:active){.chart-seg,.chart-swatch,.chart-key{forced-color-adjust:none}}@media (width<=640px){.chart-bars li{grid-template-columns:minmax(0,1fr);gap:.2rem}.chart-bars .chart-tip{left:.4rem}}.setting-toggle{cursor:pointer;align-items:flex-start;gap:.6rem;display:flex}.setting-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--brand);flex:none;margin-top:.15rem}.setting-toggle>span{gap:.15rem;display:grid}.setting-toggle .field-label{color:var(--text);font-size:.9rem}.report-sheet-head{display:none}.report-sheet tfoot th,.report-sheet tfoot td{border-top:2px solid var(--border);font-weight:700}.report-sheet tbody th,.report-sheet tfoot th{color:var(--text);font-size:inherit;letter-spacing:0;text-align:left;text-transform:none;padding-top:.75rem;padding-bottom:.75rem;font-weight:600}.report-sheet .data th,.report-sheet .data td{padding-left:.6rem;padding-right:.6rem}.report-sheet .data thead th{white-space:normal}.report-sheet .data th:first-child,.report-sheet .data td:first-child{padding-left:1.25rem}.report-sheet .data th:last-child,.report-sheet .data td:last-child{padding-right:1.25rem}.table-filters input[type=date].input{width:auto;min-height:2.5rem;font-size:.9rem}.return-lines,.reminder-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.return-lines li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 6rem;align-items:center;gap:.6rem;padding-bottom:.5rem;display:grid}.return-lines li>span,.reminder-list li{min-width:0;display:grid}.reminder-list li{border-bottom:1px solid var(--border);padding-bottom:.5rem}.receipt-returned{font-style:italic}.held-register{border:1px solid var(--border);background:var(--surface-raised,transparent);border-radius:.9rem;gap:.75rem;margin:0 1.25rem 1rem;padding:1rem 1.1rem;display:grid}.held-register h3{margin:0;font-size:1.05rem}.held-register-cash{text-align:right;margin:0;display:grid}.held-register-cash strong{font-variant-numeric:tabular-nums;font-size:1.35rem}.journal-line{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem}.journal-line>span:first-child{min-width:0;display:grid}.journal-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.journal-amount.is-short{color:var(--danger)}.desk-waiting-head{align-items:center;margin:1rem 0 .35rem}.desk-waiting-head .list-heading{margin:0}.desk-item{grid-template-columns:1fr auto;gap:0 .75rem;display:grid}.desk-item .cell-sub{grid-column:1/-1}.desk-item-total{font-variant-numeric:tabular-nums;font-weight:600}.receipt{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:#111;background:#fff;gap:.7rem;width:min(21rem,100%);margin-inline:auto;padding:1rem;font-size:.86rem;display:grid}.receipt .cell-sub{color:#444}.receipt-head{text-align:center;gap:.1rem;display:grid}.receipt-head strong{font-size:1.05rem}.receipt-meta{border-block:1px dashed #999;padding-block:.5rem}.receipt-lines{border-collapse:collapse;width:100%}.receipt-lines td{vertical-align:top;padding:.25rem 0}.receipt-lines td.num{white-space:nowrap;padding-left:.75rem}.receipt-totals{border-top:1px dashed #999;padding-top:.5rem}.receipt-kind{letter-spacing:.08em;text-align:center;margin:0;font-weight:700}.receipt-number{letter-spacing:.04em;text-align:center;margin:0;font-size:1.6rem;font-weight:800}.receipt-totals dt .cell-sub,.receipt-totals .cell-sub{font-weight:400;display:block}.receipt-due{color:#b00020;font-weight:700}.receipt-cancelled{color:#b00020;letter-spacing:.08em;text-align:center;border:2px solid #b00020;margin:0;padding:.3rem;font-weight:700}.receipt-note,.receipt-thanks{text-align:center;margin:0}.receipt-note{color:#444;font-size:.8rem}@media print{body *{visibility:hidden}.receipt,.receipt *,.report-sheet,.report-sheet *{visibility:visible}.report-sheet{width:100%;margin:0;font-size:9pt;position:absolute;top:0;left:0}.report-sheet-head{gap:1mm;margin-bottom:4mm;font-size:11pt;display:grid}.report-sheet .table-wrap{overflow:visible}.receipt{border:0;width:76mm;margin:0;padding:2mm;font-size:10pt;position:absolute;top:0;left:0}}.is-short{color:var(--danger)}.welcome-tools{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.welcome-tools select.input{width:auto;min-width:11rem}.dashboard-figures{margin-bottom:1rem}.dashboard-figures[aria-busy=true]{opacity:.7}.dashboard-error{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.skeleton-card{min-height:7rem;margin-bottom:1rem}.kpis{grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.kpi{align-content:start;gap:.2rem;padding:.9rem 1rem;display:grid}.kpi-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.kpi-value{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700;line-height:1.2}.kpi-sub{color:var(--text-muted);font-size:.78rem}.kpis-inline{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:0 1.25rem 1rem;padding:.25rem 0}.kpis-inline .kpi{padding:.6rem 0}.card .chart{padding:0}.report-sheet>.chart{margin-top:.5rem}.alert-list,.purchase-payments{margin:0;padding:0;list-style:none;display:grid}.alert-list li,.purchase-payments li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem 0;font-size:.9rem;display:flex}.alert-list li:last-child,.purchase-payments li:last-child{border-bottom:0}.purchase-lines{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.purchase-lines li{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 7rem 9rem minmax(6.5rem,auto) auto;align-items:end;gap:.5rem .75rem;padding-bottom:.6rem;display:grid}.purchase-line-name{align-self:center;min-width:0}.purchase-line-field{gap:.2rem;min-width:0;display:grid}.purchase-line-field .field-label{font-size:.75rem}.form-after-grid{margin-top:1rem}.notification-bell{position:relative}.notification-count{background:var(--danger);min-width:1.15rem;height:1.15rem;color:var(--on-danger);text-align:center;border-radius:999px;padding:0 .3rem;font-size:.68rem;font-weight:700;line-height:1.15rem;position:absolute;top:-.15rem;right:-.15rem}.notification-list{margin:0;padding:0;list-style:none}.notification-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.9rem 1.25rem;display:flex}.notification-item.is-unread{background:var(--brand-soft)}.notification-body{gap:.3rem;min-width:0;display:grid}.notification-body .badge{justify-self:start}.notification-text{overflow-wrap:anywhere;margin:0}.notification-item.is-unread .notification-text{font-weight:600}.notification-preferences{border-top:1px solid var(--border);padding:1rem 1.25rem}@media (width<=640px){.notification-item{flex-direction:column}}.badge-row{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;display:flex}.purchase-line-lot{grid-column:1/-1;grid-template-columns:11rem 12rem;gap:.5rem .75rem;display:grid}.purchase-line-total{text-align:right;white-space:nowrap;padding-bottom:.55rem;font-weight:600}.dialog-wide{width:min(46rem,100%)}.chart-bar-label{grid-template-columns:minmax(0,1fr);display:grid}.chart-bar-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chart-bar-detail{color:var(--text-muted);font-size:.76rem}.card .chart-bars li{grid-template-columns:minmax(6rem,45%) minmax(0,1fr)}.purchase-total{border-top:1px solid var(--border);justify-content:flex-end;align-items:baseline;gap:.75rem;margin:0;padding-top:.6rem;display:flex}.purchase-total strong{font-variant-numeric:tabular-nums;font-size:1.15rem}@media (width<=640px){.purchase-lines li{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.purchase-line-name{grid-column:1/-1}.purchase-line-total{text-align:left;grid-column:1/3;padding-bottom:0}.purchase-line-lot{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media print{.kpis-inline{margin:0 0 4mm}}.dialog-form .list-heading{padding:0}.method-note{border-left:3px solid var(--brand);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-muted);gap:.2rem;margin:0 1.25rem 1rem;padding:.7rem .9rem;font-size:.84rem;line-height:1.45;display:grid}.method-note strong{color:var(--text)}.segmented .count{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:.15rem;font-size:.78em}.segmented button[aria-pressed=true] .count{color:inherit;opacity:.85}.analysis-facts{grid-template-columns:minmax(6.5rem,max-content) minmax(0,1fr);align-items:baseline}@media (width<=640px){.analysis-facts{grid-template-columns:minmax(0,1fr);gap:.15rem}.analysis-facts dd{margin-bottom:.5rem}}@media (width<=760px){.segmented{flex-wrap:wrap;max-width:100%}.segmented button{white-space:nowrap;flex:auto}}.dialog-form .stack{grid-template-columns:minmax(0,1fr)}.dialog-form .stack>*{min-width:0;max-width:100%}@media (width<=640px){.chart-axis li:nth-child(2n){visibility:hidden}}.section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-size:.82rem;font-weight:600}.danger-zone{border:1px solid var(--danger);border-radius:var(--radius);background:var(--danger-soft);padding:1rem}.danger-zone .section-title{color:var(--danger)}.section-title+.field-hint{margin-bottom:.75rem}.card-note{margin-top:.75rem;font-size:.85rem}.dialog-form .alert-list li:has(.changes){flex-wrap:wrap}.dialog-form .alert-list .changes{flex-basis:100%}.page-stack{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.subscription-body{grid-template-columns:minmax(0,1fr);justify-items:stretch}.subscription-body .usage-list{max-width:34rem}.usage-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.usage-list li{grid-template-columns:minmax(7rem,1fr) auto;align-items:center;gap:.25rem .75rem;display:grid}.usage-label{color:var(--text-muted);font-size:.9rem}.usage-value{font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;font-weight:500;display:inline-flex}.usage-bar{background:var(--border);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.usage-bar>span{border-radius:inherit;background:var(--brand);height:100%;display:block}.usage-bar>span.is-full{background:var(--warning)}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-top:.75rem;display:flex}.inline-form .field{flex:14rem}.product-cell{align-items:center;gap:.75rem;min-width:0;display:flex}.product-image{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-faint);object-fit:cover;flex:none;place-items:center;display:inline-grid}.product-image-thumbnail{width:40px;height:40px}.product-image-full{object-fit:contain;background:var(--surface-solid);width:9rem;height:9rem}.product-image.is-empty{border-style:dashed}.product-photo-body{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.product-photo-actions{flex:12rem;justify-items:start;gap:.5rem;min-width:0;display:grid}.serial-choice{gap:.5rem;display:grid}.serial-choice .chips{max-height:11rem;padding:.15rem;overflow-y:auto}.serial-choice .chip-check span,.serial-number,.serial-list{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.cart-line-serials,.return-line-serials,.purchase-line-serials{grid-column:1/-1;min-width:0}.serial-history{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.serial-history li{border-bottom:1px solid var(--border);justify-items:start;gap:.2rem;padding-bottom:.6rem;display:grid}.list-heading+.section-hint{margin:-.35rem 0 .75rem}.field-hint.is-proposed{color:var(--brand);font-weight:600}.pairing-pin{justify-items:start;gap:.25rem;margin-bottom:1rem;display:grid}.pairing-pin-code{font-variant-numeric:tabular-nums;letter-spacing:.12em;font-size:2.4rem;font-weight:700}.brand{min-width:0;color:var(--text);letter-spacing:-.01em;align-items:center;gap:.7rem;font-size:1.02rem;font-weight:700;text-decoration:none;display:flex}.brand img{border-radius:10px;width:2.25rem;height:2.25rem}.toolbar-actions{align-items:center;gap:.25rem;display:inline-flex}.lang-toggle{grid-auto-flow:column;gap:.35rem;width:auto;padding:0 .6rem;font-size:.8rem;font-weight:700}.shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100dvh;display:grid}.sidebar{z-index:30;border-width:0 1px 0 0;border-radius:0;flex-direction:column;gap:1.25rem;height:100dvh;padding:1.1rem .85rem;display:flex;position:sticky;top:0}.sidebar .brand{padding:.25rem .4rem}.nav{flex:1;overflow-y:auto}.nav ul{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.nav a{color:var(--text-muted);transition:background-color var(--speed) var(--ease), color var(--speed) var(--ease), transform var(--speed) var(--ease);border-radius:10px;align-items:center;gap:.75rem;padding:.6rem .75rem;font-weight:500;text-decoration:none;display:flex;position:relative}.nav a:hover{background:var(--surface-sunken);color:var(--text);transform:translate(2px)}.nav a[aria-current=page]{background:var(--brand-soft);color:var(--brand-text);font-weight:600}.nav a[aria-current=page]:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;position:absolute;top:22%;bottom:22%;left:-.85rem}.sidebar-foot{border-top:1px solid var(--border);align-items:center;gap:.6rem;padding:.75rem .4rem 0;display:flex}.avatar{background:var(--brand-soft);width:2.25rem;height:2.25rem;color:var(--brand-text);border-radius:50%;flex:none;place-items:center;font-size:.82rem;font-weight:700;display:grid}.user-meta{flex:1;min-width:0;line-height:1.25}.user-meta strong,.user-meta span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-meta strong{font-size:.88rem}.user-meta span{color:var(--text-muted);font-size:.78rem}.content{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;box-shadow:none;border-width:0 0 1px;border-radius:0;align-items:center;gap:.75rem;padding:.75rem 1.5rem;display:flex;position:sticky;top:0}.topbar h1{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:1.3rem;font-weight:700;overflow:hidden}.menu-toggle{display:none}.view{outline:none;flex:1;width:100%;max-width:1440px;margin:0 auto;padding:1.5rem}.scrim{display:none}@media (width<=1023px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{width:min(var(--sidebar-width), 84vw);background:var(--surface-strong);transition:transform .28s var(--ease);position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.shell.is-nav-open .sidebar{box-shadow:var(--shadow-lg);transform:none}.shell.is-nav-open .scrim{z-index:25;background:#070e2073;border:0;display:block;position:fixed;inset:0}.menu-toggle{display:inline-grid}.topbar{padding:.6rem 1rem}.topbar h1{font-size:1.12rem}.view{padding:1rem}}.auth-page{flex-direction:column;min-height:100dvh;display:flex}.site-header{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1160px;margin:0 auto;padding:1.1rem 1.5rem;display:flex}.auth{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,27rem);align-items:center;gap:3.5rem;width:100%;max-width:1160px;margin:0 auto;padding:1.5rem 1.5rem 3rem;display:grid}.auth-intro{animation:rise-in .5s var(--ease) both}.eyebrow{background:var(--brand-soft);color:var(--brand-text);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.auth-intro h1{letter-spacing:-.03em;margin-top:1rem;font-size:clamp(2rem,4.4vw,3.1rem);font-weight:700;line-height:1.08}.lead{max-width:34rem;color:var(--text-muted);margin-top:1rem;font-size:1.05rem}.checklist{gap:.6rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.checklist li{color:var(--text-muted);align-items:center;gap:.6rem;display:flex}.checklist .icon{background:var(--brand-soft);color:var(--brand-text);border-radius:50%;padding:3px}.auth-card{border-radius:var(--radius-lg);animation:pop-in .52s var(--ease) both;gap:1.1rem;padding:2rem;display:grid}.auth-card h2{font-size:1.3rem;font-weight:700}.auth-card form{gap:.9rem;display:grid}.dev-hint{border-top:1px solid var(--border);gap:.5rem;padding-top:1rem;font-size:.86rem;display:grid}.dev-hint code{font-size:.84rem}@media (width<=900px){.auth{grid-template-columns:minmax(0,1fr);gap:2rem;max-width:32rem}.auth-card{padding:1.5rem}}.centered-page{place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.centered-page .glass{border-radius:var(--radius-lg);max-width:30rem}.signup{gap:1.5rem;width:100%;max-width:46rem;margin:0 auto;padding:1rem 1.5rem 3rem;display:grid}.signup-intro{animation:rise-in .5s var(--ease) both}.signup-intro h1{letter-spacing:-.025em;margin-top:.9rem;font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:700;line-height:1.12}.signup-card{border-radius:var(--radius-lg);animation:pop-in .52s var(--ease) both;justify-items:start;gap:1.1rem;padding:1.75rem;display:grid}.signup-card h2{font-size:1.05rem;font-weight:600}.signup-card .form-grid,.signup-card .form-error{justify-self:stretch}.centered{flex:1;place-items:center;padding:1.5rem;display:grid}.notice-card{border-radius:var(--radius-lg);text-align:center;width:min(30rem,100%);animation:pop-in .42s var(--ease) both;justify-items:center;gap:.9rem;padding:2.25rem 2rem;display:grid}.notice-card h1{font-size:1.4rem;font-weight:700}.notice-card .dev-hint{justify-items:center;width:100%}.inline-form{text-align:left;gap:.75rem;width:100%;display:grid}.user-link{border-radius:var(--radius-sm);min-width:0;color:inherit;transition:background-color var(--speed) var(--ease);flex:1;align-items:center;gap:.6rem;padding:.25rem;text-decoration:none;display:flex}.user-link:hover,.user-link.active{background:var(--surface-sunken)}.user-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.local-gate{display:contents}.local-lost{z-index:1000;background:color-mix(in oklab, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.local-lost .notice-card{outline:none;max-width:32rem}.local-lost-retry{text-align:left;justify-content:center;align-items:center;gap:.6rem;display:flex}.local-lost-retry .spinner{width:1rem;height:1rem}.empty-icon.is-danger{background:var(--danger-soft);color:var(--danger)}.local-banner{border-radius:var(--radius-sm);border:1px solid #0000;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0 0 1rem;padding:.6rem .9rem;font-size:.9rem;font-weight:600;display:flex}.local-banner>svg{flex:none}.local-banner-text{flex:14rem;min-width:0}.local-banner-shop{opacity:.8;margin-left:auto;font-weight:500}.local-banner.is-online{background:var(--success-soft);color:var(--success)}.local-banner.is-offline{background:var(--caution-soft);color:var(--caution)}.local-banner.is-warning{background:var(--warning-soft);color:var(--warning);border-color:var(--warning)}.local-banner.is-blocked{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}
