@font-face{font-family:inter;src:url(../media/Inter-s.p.1861z85gr8htb.ttf)format("truetype");font-display:swap;font-weight:100 900}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}._8iBjwq_className{font-family:inter,inter Fallback}._8iBjwq_variable{--font-inter:"inter", "inter Fallback"}
:root{--primary:#0a2540;--primary-2:#0d3256;--accent:#4f46e5;--accent-focus:#635bff;--bg:#f7f9fc;--card:#fff;--elevated:#f0f4f8;--input-fill:#f5f8fa;--text:#0a2540;--text-2:#425466;--muted:#606f84;--positive:#047857;--positive-l:#ecfdf5;--negative:#be123c;--negative-l:#fff1f2;--neutral:#ffab00;--neutral-l:#fff8e6;--neutral-s:#b87400;--divider:#e3e8ef;--border:#d8e0e8;--shadow-l:#0a25400a;--shadow-e:#0a254020;--user-bg:#e8f5f0;--user:#059669;--inv-bg:#ede9fe;--inv:#7c3aed;--wd-bg:#e0f2fe;--wd:#0284c7;--dep-bg:#fef3c7;--dep:#d97706;--gutter:16px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (min-width:700px){:root{--gutter:24px}}@media (min-width:1180px){:root{--gutter:32px}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-inter), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;min-height:100dvh;font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent-focus);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.icon{fill:currentColor;flex:none;display:inline-block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.stagger>*{animation:.5s cubic-bezier(.215,.61,.355,1) both rise;animation-delay:calc(var(--i,0) * 60ms)}.page{animation:.35s cubic-bezier(.215,.61,.355,1) both slideIn}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.appbar{z-index:20;background:var(--card);height:56px;box-shadow:0 .5px 0 var(--divider);grid-template-columns:56px 1fr 56px;align-items:center;display:grid;position:sticky;top:0}.appbar h1{text-align:center;letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:17px;font-weight:600;overflow:hidden}.icon-btn{width:48px;height:48px;color:var(--text);border-radius:50%;justify-self:center;place-items:center;transition:background .15s;display:grid}.icon-btn:hover{background:#0a25400f}.appbar-actions{justify-content:flex-end;padding-right:4px;display:flex}.dash-header{z-index:20;background:var(--card);box-shadow:0 2px 8px var(--shadow-l);align-items:center;padding:16px 12px 16px 20px;display:flex;position:sticky;top:0}.dash-header .logo{flex:1;justify-content:center;padding-left:36px;display:flex}.dash-header .logo img{object-fit:contain;border-radius:12px;width:42px;height:42px}.dash-header .logout{color:var(--muted);border-radius:12px;padding:10px;display:grid}.dash-header .logout:hover{background:#0a25400d}.body{max-width:calc(1180px + var(--gutter) * 2);padding:0 var(--gutter);margin:0 auto}.body-pad{padding-top:16px;padding-bottom:96px}.dash{padding:12px var(--gutter) 30px}.section-label{letter-spacing:.6px;color:var(--muted);text-transform:uppercase;margin:0 0 10px 4px;font-size:11.5px;font-weight:700}.section-head{justify-content:space-between;align-items:center;margin:22px 0 10px;display:flex}.section-head .section-label{margin:0 0 0 4px}.summary-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:452px){.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:678px){.summary-grid{grid-template-columns:repeat(3,1fr)}}.menu-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:708px){.menu-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1054px){.menu-grid{grid-template-columns:repeat(3,1fr)}}.summary-card{background:var(--card);border:1px solid var(--divider);border-radius:16px;min-width:0;padding:16px;transition:background .15s,transform .15s,box-shadow .15s;display:block}a.summary-card:hover{box-shadow:0 6px 16px var(--shadow-l);background:#fbfcfe;transform:translateY(-2px)}a.summary-card:active{transform:translateY(0)}.summary-card .label{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.summary-card .label span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.summary-card .value{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin-top:10px;font-size:20px;font-weight:700;overflow:hidden}.summary-card .detail{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.menu-card{background:var(--tint-bg);border:1px solid color-mix(in srgb, var(--tint) 15%, transparent);box-shadow:0 4px 12px color-mix(in srgb, var(--tint) 8%, transparent);border-radius:18px;align-items:center;gap:16px;min-width:0;padding:20px;transition:transform .15s,box-shadow .15s,background .15s;display:flex}.menu-card:hover{box-shadow:0 8px 20px color-mix(in srgb, var(--tint) 16%, transparent);transform:translateY(-2px)}.menu-card:active{background:color-mix(in srgb, var(--tint) 6%, var(--tint-bg));transform:scale(.99)}.menu-card .avatar{background:color-mix(in srgb, var(--tint) 15%, transparent);width:52px;height:52px;color:var(--tint);border-radius:14px;flex:none;place-items:center;display:grid}.menu-card .text{flex:1;min-width:0}.menu-card .title{white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.menu-card .subtitle{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:13px;overflow:hidden}.menu-card .chev{color:color-mix(in srgb, var(--tint) 60%, transparent)}.badge{background:var(--negative);color:#fff;border-radius:10px;padding:3px 8px;font-size:12px;font-weight:700}.t-user{--tint:var(--user);--tint-bg:var(--user-bg)}.t-inv{--tint:var(--inv);--tint-bg:var(--inv-bg)}.t-wd{--tint:var(--wd);--tint-bg:var(--wd-bg)}.t-dep{--tint:var(--dep);--tint-bg:var(--dep-bg)}.search{padding:12px 0 8px}.search-box{position:relative}.search-box .icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-box input{border:1px solid var(--border);background:var(--card);width:100%;height:48px;font:inherit;color:var(--text);border-radius:14px;outline:none;padding:0 44px 0 48px;font-size:15px}.search-box input::-webkit-search-cancel-button{display:none}.search-box input::placeholder{color:var(--muted);font-size:14px}.search-box input:focus{border-color:var(--accent);box-shadow:inset 0 0 0 .6px var(--accent)}.search-box .clear{width:40px;height:40px;color:var(--muted);border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;right:4px}.count-row{color:var(--muted);align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:500;display:flex}.only-wide{display:none}@media (min-width:1180px){.only-wide{display:block}.only-narrow{display:none}}.list{padding-top:4px}.row-card{background:color-mix(in srgb, var(--tint-bg) 50%, transparent);border:1px solid color-mix(in srgb, var(--tint) 10%, transparent);border-radius:16px;align-items:center;gap:14px;min-width:0;margin-bottom:10px;padding:16px;transition:background .15s,transform .15s,box-shadow .15s;display:flex}a.row-card:hover{background:color-mix(in srgb, var(--tint-bg) 80%, transparent);box-shadow:0 4px 12px var(--shadow-l);transform:translateY(-1px)}a.row-card:active{transform:translateY(0)}.row-card .avatar{background:color-mix(in srgb, var(--tint) 12%, transparent);width:48px;height:48px;color:var(--tint);border-radius:14px;flex:none;place-items:center;display:grid}.row-card .text{flex:1;min-width:0}.row-card .title{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.row-card .subtitle{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:13px;overflow:hidden}.row-card .end{text-align:right;flex:none}.row-card .amount{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.row-card .chev{color:color-mix(in srgb, var(--tint) 50%, transparent)}.table-head,.table-row{align-items:center;gap:12px;padding:0 16px;display:grid}.table-head{border-bottom:1.4px solid var(--divider);letter-spacing:.4px;color:var(--muted);padding-top:12px;padding-bottom:12px;font-size:11.5px;font-weight:700}.table-row{border-bottom:1px solid var(--divider);color:var(--text-2);padding-top:14px;padding-bottom:14px;font-size:13.5px;transition:background .12s}a.table-row:hover{background:#0a254009}.table-row>*,.table-head>*{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.table-row .strong{color:var(--text);font-weight:600}.table-row .chev{color:#606f8499;justify-self:end}.end{text-align:right}.status{background:var(--s-bg);color:var(--s);border-radius:6px;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.status.pending{--s:var(--neutral-s);--s-bg:var(--neutral-l)}.status.paid{--s:var(--positive);--s-bg:var(--positive-l)}.contract-chip{color:var(--accent);font-variant-numeric:tabular-nums;background:#4f46e514;border-radius:6px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-block}.meta{color:var(--muted);font-size:11px}.chips{align-items:center;gap:8px;padding:8px 0 12px;display:flex}.chips .scroll{scrollbar-width:none;flex:1;gap:8px;display:flex;overflow-x:auto}.chip{background:var(--card);color:var(--text-2);white-space:nowrap;border:1px solid #d8e0e866;border-radius:20px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:background .22s,color .22s;display:inline-flex}.chip .n{background:var(--elevated);color:var(--muted);border-radius:10px;padding:2px 6px;font-size:11px;font-weight:600}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.chip.active .n{color:#fff;background:#00000038}.sort-btn{background:var(--card);color:var(--accent);border:1px solid #d8e0e866;border-radius:12px;flex:none;align-items:center;gap:4px;padding:8px 10px;font-size:12px;font-weight:600;display:inline-flex}.list-toolbar{z-index:15;background:var(--bg);margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);box-shadow:0 1px 0 var(--divider);position:sticky;top:56px}.list-toolbar .search{padding-bottom:0}.list-toolbar .chips{padding:10px 0}.list-toolbar .table-head{border-bottom:0;border-top:1px solid var(--divider)}.list-summary{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:12px 4px 8px;font-size:12.5px;display:flex}.list-summary strong{color:var(--text);font-weight:700}.sort-select{height:36px;padding:0 10px;position:relative}.sort-select select{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;font-weight:600}.sort-select select:focus-visible{outline:none}.sort-select:focus-within{outline:2px solid var(--accent-focus);outline-offset:1px}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 0 104px;display:flex}.pager-info{color:var(--muted);align-items:center;gap:10px;font-size:12.5px;display:flex}.pager-size select{border:1px solid var(--border);background:var(--card);height:32px;color:var(--text-2);font:inherit;cursor:pointer;border-radius:10px;padding:0 8px;font-size:12.5px}.pager-pages{align-items:center;gap:4px;display:flex}.pager-pages button{background:var(--card);border:1px solid var(--border);min-width:36px;height:36px;color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;padding:0 8px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s;display:inline-grid}.pager-pages button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pager-pages button[aria-current=page]{background:var(--accent);border-color:var(--accent);color:#fff}.pager-pages button:disabled{opacity:.4}.pager-pages .gap{text-align:center;min-width:20px;color:var(--muted)}.pager-of{color:var(--text-2);padding:0 8px;font-size:13px;font-weight:600;display:none}@media (max-width:699px){.pager{justify-content:center}.pager-pages .n,.pager-pages .gap{display:none}.pager-of{display:inline}}.mini-stats{grid-template-columns:1fr 2fr 1fr;gap:10px;padding-top:16px;display:grid}.mini-stat{background:var(--card);box-shadow:0 2px 8px var(--shadow-l);border:1px solid #d8e0e84d;border-radius:14px;min-width:0;padding:14px 12px}.mini-stat .ic{background:var(--s-bg);color:var(--s);border-radius:8px;padding:6px;display:inline-grid}.mini-stat .v{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin-top:8px;font-size:16px;font-weight:700;overflow:hidden}.mini-stat .l{color:var(--muted);margin-top:2px;font-size:11px}.wd-card{background:var(--card);box-shadow:0 2px 10px var(--shadow-l);border:1px solid #d8e0e840;border-radius:16px;margin-bottom:10px;padding:16px}.wd-card.pending{border-color:#ffab0059}.wd-card .top{align-items:flex-start;gap:12px;display:flex}.wd-card .initials{width:44px;height:44px;color:var(--s);background:color-mix(in srgb, var(--s) 14%, transparent);border-radius:12px;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.wd-card.pending .initials{--s:var(--neutral)}.wd-card.paid .initials{--s:var(--positive)}.wd-card .who{flex:1;min-width:0}.wd-card .name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.wd-card .line{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:6px;display:flex}.wd-card .amount{text-align:right;font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.wd-card .paid-at{color:var(--positive);text-align:right;margin-top:2px;font-size:11.5px;font-weight:600}.wd-card .note{color:var(--text-2);margin:10px 0 0 56px;font-size:12.5px;line-height:1.45}.wd-card .actions{border-top:1px solid var(--divider);justify-content:flex-end;gap:8px;margin-top:12px;padding-top:12px;display:flex}.profile{color:#fff;background:linear-gradient(90deg,#0a2540,#0d3256);border-radius:18px;align-items:center;gap:16px;padding:20px;display:flex;box-shadow:0 6px 16px #0a25404d}.profile .avatar{background:#ffffff26;border-radius:16px;flex:none;place-items:center;width:56px;height:56px;display:grid}.profile .name{font-size:18px;font-weight:600}.profile .sub{font-variant-numeric:tabular-nums;margin-top:4px;font-size:14px}.total-card{color:#fff;background:linear-gradient(135deg,#635bff,#4b43d6);border-radius:18px;margin-top:16px;padding:20px;box-shadow:0 8px 18px #4f46e547}.total-card .head{letter-spacing:.2px;align-items:center;gap:12px;font-size:14px;font-weight:600;display:flex}.total-card .head .ic{background:#4b43d633;border-radius:12px;padding:9px;display:grid}.total-card .amount{letter-spacing:-.5px;font-variant-numeric:tabular-nums;margin-top:16px;font-size:30px;font-weight:700}.total-card .foot{opacity:.9;margin-top:6px;font-size:13px}.info-grid{grid-template-columns:1fr;gap:12px;margin-top:16px;display:grid}@media (min-width:700px){.info-grid{grid-template-columns:repeat(2,1fr)}}.info-row{background:var(--card);border:1px solid #d8e0e84d;border-radius:14px;align-items:center;gap:14px;padding:16px;display:flex}.info-row .icon{color:var(--muted)}.info-row .l{color:var(--muted);font-size:11px;font-weight:500}.info-row .v{font-variant-numeric:tabular-nums;margin-top:3px;font-size:15px;font-weight:500}.detail-cols{grid-template-columns:1fr;gap:0 24px;display:grid}@media (min-width:1180px){.detail-cols{grid-template-columns:1fr 1fr}}.danger-zone{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.form{max-width:560px;margin:0 auto;padding:16px 0 40px}.form-hint{color:var(--muted);margin:-6px 4px 16px;font-size:12.5px;line-height:1.45}.field{--f-bg:var(--card);--f-outer:var(--bg);margin-bottom:16px;position:relative}.field.fill{--f-bg:var(--input-fill);--f-outer:#fff}.field .f-icon{color:var(--muted);pointer-events:none;position:absolute;top:17px;left:14px}.field input,.field select,.field textarea{border:1px solid var(--border);background:var(--f-bg);width:100%;height:56px;font:inherit;color:var(--text);appearance:none;border-radius:14px;outline:none;padding:0 16px 0 48px;font-size:15px;display:block}.field textarea{resize:vertical;height:auto;min-height:96px;padding-top:18px;padding-bottom:12px;line-height:1.5}.field select{cursor:pointer;padding-right:40px}.field .caret{border:5px solid #0000;border-top-color:var(--muted);pointer-events:none;width:0;height:0;position:absolute;top:22px;right:16px}.field input:focus,.field select:focus,.field textarea:focus{border:2px solid var(--accent);padding-left:47px}.field label{color:var(--text-2);pointer-events:none;white-space:nowrap;background:linear-gradient(to bottom, transparent 50%, var(--f-bg) 50%);margin-left:-4px;padding:0 4px;font-size:15px;transition:all .15s cubic-bezier(.4,0,.2,1);position:absolute;top:18px;left:48px}.field.float label,.field input:focus~label,.field input:not(:placeholder-shown)~label,.field textarea:focus~label,.field textarea:not(:placeholder-shown)~label{background:linear-gradient(to bottom, var(--f-outer) 50%, var(--f-bg) 50%);font-size:12px;top:-8px;left:14px}.field:focus-within label{color:var(--accent)}.field input::placeholder,.field textarea::placeholder{color:#0000}.field input:focus::placeholder{color:var(--muted)}.field .suffix{width:48px;height:48px;color:var(--muted);border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;right:4px}.field.has-suffix input{padding-right:52px}.field.error input,.field.error select,.field.error textarea{border-color:var(--negative)}.field.error label{color:var(--negative)!important}.field .err{color:var(--negative);margin:6px 0 0 16px;font-size:12px}.field .help{color:var(--muted);margin:6px 0 0 16px;font-size:12px}.picker{position:relative}.picker-list{z-index:20;background:var(--card);border:1px solid var(--border);border-radius:14px;max-height:320px;margin:0;padding:6px;list-style:none;position:absolute;top:60px;left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #0a25401f}.picker-list li{cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:15px;display:flex}.picker-list li.active{background:var(--elevated)}.picker-list .name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.picker-list .tc{color:var(--muted);flex:none;font-size:13px}.picker-list .picker-empty,.picker-list .picker-more{cursor:default;color:var(--muted);justify-content:center;font-size:13px}.field input[type=date]{padding-right:12px}.field input[type=date]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}.form-section{justify-content:space-between;align-items:center;margin:8px 0 14px 4px;display:flex}.toggle-row{background:var(--card);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;font-size:14px;font-weight:500;display:flex}.switch{background:var(--border);border-radius:13px;flex:none;width:44px;height:26px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(18px)}.seg{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.seg button{border:1px solid var(--border);background:var(--card);height:48px;color:var(--text-2);border-radius:14px;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.seg button[aria-pressed=true].pending{background:var(--neutral-l);border-color:var(--neutral);color:var(--neutral-s)}.seg button[aria-pressed=true].paid{background:var(--positive-l);border-color:var(--positive);color:var(--positive)}.btn-primary{background:var(--accent);color:#fff;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;height:54px;font-size:16px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn-primary:hover:not(:disabled){background:#4338ca;box-shadow:0 4px 12px #4f46e540}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.6}.form-actions{align-items:stretch;gap:10px;display:flex}.form-actions .btn-primary{flex:1}.form-actions .btn.outline{border-radius:14px;flex:none;height:54px;padding:0 22px}.btn{white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-size:14px;font-weight:600;transition:background .15s;display:inline-flex}.btn.filled{background:var(--accent);color:#fff}.btn.filled:hover{background:#4338ca}.btn.danger{background:var(--negative);color:#fff}.btn.text{color:var(--accent)}.btn.text:hover{background:#4f46e512}.btn.text.muted{color:var(--muted)}.btn.text.neg{color:var(--negative)}.btn.text.neg:hover{background:var(--negative-l)}.btn.outline{background:var(--card);color:var(--text-2);border:1px solid #d8e0e8cc}.btn.outline:hover{background:var(--elevated)}.btn.positive{background:var(--positive-l);color:var(--positive)}.btn.positive:hover{background:#d1fae5}.btn.small{border-radius:10px;height:34px;padding:0 12px;font-size:13px}.btn:disabled{opacity:.55}.fab{z-index:30;background:var(--accent);color:#fff;border-radius:16px;place-items:center;width:56px;height:56px;transition:background .15s,box-shadow .15s;display:grid;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 10px #0000002e,0 2px 4px #0000001f}.fab:hover{background:#4338ca;transform:translateY(-2px);box-shadow:0 8px 18px #00000038}.fab:active{transform:translateY(0)}@media (min-width:1180px){.fab{bottom:32px;right:32px}}.spinner{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}.spinner.dark{border-color:var(--divider);border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}.state{text-align:center;flex-direction:column;align-items:center;padding:48px 24px;display:flex}.state-fill{justify-content:center;min-height:50vh}.state .ic{color:#606f8466}.state .err-ic{background:var(--negative-l);color:var(--negative);border-radius:50%;padding:22px;display:grid}.state h2{margin:14px 0 0;font-size:15px;font-weight:600}.state p{max-width:380px;color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.45}.state .act{margin-top:16px}.skel{background:linear-gradient(90deg,#eef2f6 25%,#f6f8fb 37%,#eef2f6 63%) 0 0/400% 100%;border-radius:16px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.scrim{z-index:50;background:#00000073;place-items:center;padding:24px;animation:.15s both fade;display:grid;position:fixed;inset:0}.dialog{background:var(--card);width:100%;max-width:400px;box-shadow:0 12px 32px var(--shadow-e);border-radius:20px;padding:24px 24px 16px;animation:.2s cubic-bezier(.215,.61,.355,1) both rise}.dialog h2{margin:0;font-size:18px;font-weight:600}.dialog p{color:var(--text-2);margin:14px 0 0;font-size:14px;line-height:1.55}.dialog .actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.toasts{z-index:60;gap:8px;width:min(560px,100% - 32px);display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.toast{background:var(--primary);color:#fff;border-radius:12px;padding:14px 16px;font-size:14px;line-height:1.4;animation:.25s cubic-bezier(.215,.61,.355,1) both rise;box-shadow:0 6px 16px #0003}.toast.error{background:var(--negative)}.toast.success{background:var(--positive)}.login{background:linear-gradient(135deg,#0a2540,#0d3256,#103d6b);place-items:center;min-height:100dvh;padding:24px 28px;display:grid}.login-inner{flex-direction:column;align-items:center;width:100%;max-width:420px;animation:.8s cubic-bezier(.215,.61,.355,1) both rise;display:flex}.login-logo{background:#fff;border-radius:20px;place-items:center;width:80px;height:80px;display:grid;overflow:hidden;box-shadow:0 8px 20px #0003}.login-logo img{object-fit:contain;width:100%;height:100%}.login h1{letter-spacing:-.5px;color:#fff;margin:20px 0 0;font-size:28px;font-weight:700}.login .tag{letter-spacing:.5px;color:#fff9;margin-top:6px;font-size:15px}.login-card{background:#fff;border-radius:24px;width:100%;margin-top:48px;padding:28px;box-shadow:0 12px 30px #00000026}.login-card h2{text-align:center;margin:0;font-size:22px;font-weight:700}.login-card .sub{text-align:center;color:var(--muted);margin:8px 0 28px;font-size:14px}.login-card .sub .icon{vertical-align:-3px}.login-card .field{margin-bottom:18px}.login-card .btn-primary{margin-top:10px}.login .foot{color:#fff6;margin-top:24px;font-size:12px}
