:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f3f6f5;--bg-accent:#e6f0ee;--surface:#fff;--surface-2:#eef3f1;--surface-3:#e3ebe8;--border:#d6e0dc;--border-strong:#b9c8c2;--text:#13262a;--text-2:#33484c;--muted:#5f7378;--primary:#0f766e;--primary-strong:#0b5f59;--primary-contrast:#fff;--primary-soft:#d8f1ec;--primary-soft-2:#b7e4dc;--accent:#d97706;--accent-soft:#fdebcf;--danger:#be123c;--danger-soft:#fde4ea;--success:#047857;--success-soft:#d4f3e6;--warning:#b45309;--warning-soft:#fdebcf;--info:#1d4ed8;--info-soft:#dde7ff;--focus:#0f766e;--shadow-sm:0 1px 2px #13262a0f;--shadow:0 1px 2px #13262a0d, 0 4px 14px #13262a0f;--shadow-lg:0 12px 40px #13262a2e;--radius:14px;--radius-sm:10px;--radius-xs:7px;--tap:44px;--nav-h:calc(60px + env(safe-area-inset-bottom,0px));--header-h:60px;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--brand-gradient:linear-gradient(135deg, #0f766e 0%, #0e9f8b 55%, #f59e0b 140%);--hero-gradient:radial-gradient(1200px 400px at 10% -20%, #0f766e24, transparent 60%), radial-gradient(800px 300px at 95% -10%, #f59e0b1f, transparent 60%)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d1517;--bg-accent:#0f1c1e;--surface:#142022;--surface-2:#1b2a2d;--surface-3:#22353a;--border:#243639;--border-strong:#35494d;--text:#e8f0ee;--text-2:#c3d1cd;--muted:#8ea4a0;--primary:#2dd4bf;--primary-strong:#5eead4;--primary-contrast:#06201d;--primary-soft:#0f3a37;--primary-soft-2:#14534d;--accent:#fbbf24;--accent-soft:#3d2a07;--danger:#fb7185;--danger-soft:#4a1320;--success:#34d399;--success-soft:#0e3b2c;--warning:#fbbf24;--warning-soft:#3d2a07;--info:#93c5fd;--info-soft:#1b2f5c;--focus:#2dd4bf;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #0006, 0 6px 18px #00000059;--shadow-lg:0 16px 48px #0009;--brand-gradient:linear-gradient(135deg, #0f766e 0%, #14b8a6 55%, #f59e0b 140%);--hero-gradient:radial-gradient(1200px 400px at 10% -20%, #2dd4bf1f, transparent 60%), radial-gradient(800px 300px at 95% -10%, #fbbf241a, transparent 60%)}}*{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4{letter-spacing:-.01em;margin:0 0 .5rem;font-weight:700;line-height:1.25}h1{letter-spacing:-.02em;font-size:1.65rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0 0 .75rem}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}button,input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%}code{font-family:var(--mono);background:var(--surface-2);border-radius:5px;padding:.05rem .35rem;font-size:.9em}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:30;padding:calc(.5rem + env(safe-area-inset-top,0px)) 1rem .5rem;min-height:var(--header-h);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.app-header .brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:.6rem;font-size:1.08rem;font-weight:800;display:flex}.app-header .brand:hover{text-decoration:none}.brand-mark{background:var(--brand-gradient);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;box-shadow:0 4px 12px #0f766e59}.brand-mark svg{width:20px;height:20px}.brand-mark.lg{border-radius:16px;width:56px;height:56px}.brand-mark.lg svg{width:32px;height:32px}.app-header .brand .env{background:var(--accent-soft);color:var(--accent);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:.15rem .5rem;font-size:.66rem;font-weight:700}.app-header .spacer{flex:1}.header-user{color:var(--muted);align-items:center;gap:.6rem;font-size:.85rem;display:none}.avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary-strong);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.app-body{flex:1;min-height:0;display:flex}.app-main{min-width:0;padding:1.1rem 1rem calc(var(--nav-h) + 1.25rem);background-image:var(--hero-gradient);background-repeat:no-repeat;flex:1;width:100%;max-width:1160px;margin:0 auto}.sidebar{display:none}.tabbar{z-index:30;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);border-top:1px solid var(--border);padding:.25rem .25rem calc(.25rem + env(safe-area-inset-bottom,0px));grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:52px;color:var(--muted);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.68rem;font-weight:600;text-decoration:none;display:flex;position:relative}.tabbar a svg{width:24px;height:24px}.tabbar a.active{color:var(--primary)}.tabbar a.active:before{content:"";background:var(--primary-soft);z-index:-1;border-radius:10px;width:36px;height:30px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.tabbar a.active svg{position:relative}.btn-icon .badge-dot,.tabbar .badge-dot{background:var(--danger);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;right:9px}@media (width>=900px){.tabbar{display:none}.header-user{display:flex}.app-body{align-items:stretch}.sidebar{border-right:1px solid var(--border);background:var(--surface);width:240px;top:var(--header-h);height:calc(100vh - var(--header-h));flex-direction:column;flex-shrink:0;gap:.15rem;padding:1rem .75rem;display:flex;position:sticky;overflow-y:auto}.sidebar a{border-radius:var(--radius-sm);color:var(--text-2);min-height:var(--tap);align-items:center;gap:.65rem;padding:.6rem .8rem;font-weight:500;display:flex;position:relative}.sidebar a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.sidebar a svg{width:20px;height:20px;color:var(--muted)}.sidebar a.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:700}.sidebar a.active:before{content:"";background:var(--primary);border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:-.75rem}.sidebar a.active svg{color:var(--primary-strong)}.sidebar .section{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:1rem .8rem .35rem;font-size:.68rem;font-weight:700}.sidebar .account{align-items:center;gap:.6rem;min-width:0;padding:.4rem .8rem .6rem;display:flex}.sidebar .account .who{min-width:0;font-size:.85rem;line-height:1.3}.sidebar .account .who strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar .account .who span{color:var(--muted);font-size:.78rem}.app-main{padding:1.5rem 2rem 2.5rem}}.page-head{flex-wrap:wrap;align-items:flex-start;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.page-head>div:first-child{flex:260px;min-width:0}.page-head h1{flex:auto}.page-head .actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.page-intro{color:var(--muted);max-width:60ch}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.3rem;font-size:.82rem;display:flex}.breadcrumb a{color:var(--muted);font-weight:500}.subtle{color:var(--muted);font-size:.9rem}.small{font-size:.85rem}.mono{font-family:var(--mono)}.stack{flex-direction:column;gap:1rem;min-width:0;display:flex}.stack-sm{flex-direction:column;gap:.5rem;min-width:0;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;min-width:0;display:grid}.grid>*{min-width:0}.grid-2{grid-template-columns:minmax(0,1fr);gap:.85rem;display:grid}.grid-2>*{min-width:0}@media (width>=640px){.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.mt{margin-top:1rem}.mb{margin-bottom:1rem}.right{text-align:right}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.section-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.section-title h2{margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.72rem;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);min-width:0;padding:1.1rem}.card.compact{padding:.9rem}.card h2,.card h3{margin-bottom:.75rem}.card-link{color:inherit;text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s;display:block}.card-link:hover{border-color:var(--primary-soft-2);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.card-title{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;margin-bottom:.6rem;display:flex}.card-title>:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.card-accent{border-top:4px solid var(--primary)}.card-accent.accent-amber{border-top-color:var(--accent)}.kv{grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1rem;margin:0;font-size:.95rem;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;margin:0;font-weight:500}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,118px),1fr));gap:.6rem;min-width:0;display:grid}.stat{background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid #0000;min-width:0;padding:.65rem .8rem;position:relative}.stat .label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;display:flex}.stat .label svg{width:14px;height:14px}.stat .value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere;margin-top:.15rem;font-size:1.12rem;font-weight:700;line-height:1.2}.stat .sub{color:var(--muted);margin-top:.15rem;font-size:.75rem}.stat.danger{background:var(--danger-soft)}.stat.danger .value{color:var(--danger)}.stat.success{background:var(--success-soft)}.stat.success .value{color:var(--success)}.stat.warning{background:var(--warning-soft)}.stat.warning .value{color:var(--warning)}.stat.primary{background:var(--primary-soft)}.stat.primary .value{color:var(--primary-strong)}.stat.info{background:var(--info-soft)}.stat.info .value{color:var(--info)}.hero-card{background:var(--brand-gradient);color:#fff;border-radius:var(--radius);border:0;padding:1.1rem 1.2rem;box-shadow:0 10px 30px #0f766e40}.hero-card .eyebrow{color:#fffc}.hero-card h1{color:#fff;margin:.15rem 0 .25rem}.hero-card p{color:#ffffffd9;margin:0}.hero-card .hero-stats{flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:.9rem;display:flex}.hero-card .hero-stat .n{letter-spacing:-.02em;font-size:1.35rem;font-weight:800;line-height:1.1}.hero-card .hero-stat .l{color:#fffc;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}.hero-card .btn{color:#fff;background:#ffffff29;border-color:#ffffff59}.hero-card .btn:hover{background:#ffffff42}.property-card .occupancy{background:var(--surface-3);border-radius:999px;height:6px;margin:.6rem 0 .9rem;overflow:hidden}.property-card .occupancy>span{background:var(--primary);border-radius:999px;height:100%;display:block}.property-card .where{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.list{flex-direction:column;gap:.5rem;min-width:0;display:flex}.list-item{min-height:var(--tap);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:inherit;align-items:center;gap:.75rem;min-width:0;padding:.75rem .95rem;text-decoration:none;transition:border-color .12s,box-shadow .12s;display:flex}.list-item>svg{width:22px;height:22px;color:var(--primary);flex-shrink:0}a.list-item:hover,button.list-item:hover{border-color:var(--primary-soft-2);box-shadow:var(--shadow-sm);text-decoration:none}.list-item .main{flex:1;min-width:0}.list-item .title{overflow-wrap:anywhere;font-weight:600}.list-item .meta{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.list-item .trail{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-weight:600}.list-item .trail .small{color:var(--muted);font-weight:500}.list-item .lead{white-space:nowrap;background:var(--primary-soft);min-width:40px;height:40px;color:var(--primary-strong);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .55rem;font-size:.85rem;font-weight:700;display:inline-flex}.list-item .lead.danger{background:var(--danger-soft);color:var(--danger)}.list-item .lead.warning{background:var(--warning-soft);color:var(--warning)}.table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);max-width:100%;overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:.92rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .8rem}.table th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--surface-2);white-space:nowrap;font-size:.7rem;font-weight:700}.table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--surface-2) 45%, transparent)}.table tr:last-child td{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table tbody tr.selectable{cursor:pointer}.table tbody tr:hover td{background:var(--primary-soft)}.table tfoot td{background:var(--surface-2);font-weight:700}@media (width<=639px){.table-wrap.cards{background:0 0;border:0;overflow:visible}.table-wrap.cards table,.table-wrap.cards tbody,.table-wrap.cards tr,.table-wrap.cards td{width:100%;display:block}.table-wrap.cards thead,.table-wrap.cards tfoot{display:none}.table-wrap.cards tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);margin-bottom:.5rem;padding:.4rem .85rem}.table-wrap.cards tbody tr:nth-child(2n) td,.table-wrap.cards tbody tr:hover td{background:0 0}.table-wrap.cards td{text-align:right;border:0;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;min-width:0;padding:.35rem 0;display:flex}.table-wrap.cards td>*{min-width:0;max-width:100%}.table-wrap.cards td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:left;flex-shrink:0;font-size:.72rem;font-weight:700}.table-wrap.cards td.no-label{padding-top:.5rem;font-size:1rem;font-weight:700}.table-wrap.cards td.no-label:before{content:none}.table-wrap.cards td.num{text-align:right}.table-wrap.cards td.wide{text-align:left;flex-direction:column;align-items:stretch}.table-wrap.cards td.wide>*{width:100%}}.badge{background:var(--surface-3);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.12rem .55rem;font-size:.74rem;font-weight:700;line-height:1.5;display:inline-flex}.badge:before{content:"";opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.badge.plain:before{content:none}.badge.success{background:var(--success-soft);color:var(--success)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.warning{background:var(--warning-soft);color:var(--warning)}.badge.primary{background:var(--primary-soft);color:var(--primary-strong)}.amount-neg{color:var(--danger)}.amount-pos{color:var(--success)}.count-pill{background:var(--surface-3);min-width:24px;height:24px;color:var(--text-2);border-radius:999px;justify-content:center;align-items:center;padding:0 .45rem;font-size:.76rem;font-weight:700;display:inline-flex}.count-pill.danger{background:var(--danger);color:#fff}.count-pill.warning{background:var(--warning);color:#fff}.btn{min-height:var(--tap);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:.45rem;padding:0 1.05rem;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s,transform 80ms,box-shadow .12s;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--primary-soft-2);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast);box-shadow:0 2px 8px #0f766e4d}.btn.primary:hover{background:var(--primary-strong);border-color:var(--primary-strong)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{filter:brightness(.95)}.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.sm{border-radius:var(--radius-xs);min-height:36px;padding:0 .8rem;font-size:.88rem}.btn.block{width:100%}.btn-icon{width:var(--tap);height:var(--tap);border-radius:50%;padding:0;position:relative}.btn-icon svg{width:22px;height:22px}.form{flex-direction:column;gap:1rem;min-width:0;display:flex}.form h2{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.75rem;font-size:1rem}.field{flex-direction:column;gap:.35rem;min-width:0;display:flex}.field>label,.field .label{color:var(--text-2);font-size:.88rem;font-weight:600}.field .hint{color:var(--muted);font-size:.8rem}.field .error{color:var(--danger);align-items:center;gap:.3rem;font-size:.83rem;font-weight:600;display:flex}.field .error:before{content:"!";background:var(--danger);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:.7rem;display:inline-flex}.field.has-error .input{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.input,select.input,textarea.input{width:100%;min-height:var(--tap);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:.6rem .8rem;transition:border-color .12s,box-shadow .12s}.input::placeholder{color:var(--muted);opacity:.8}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.input:disabled{background:var(--surface-2);color:var(--muted)}textarea.input{resize:vertical;min-height:92px}select.input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px;padding-right:2.2rem}.input.money{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.input-group{align-items:center;gap:.5rem;min-width:0;display:flex}.input-group .prefix{color:var(--muted);min-width:1ch;font-weight:700}.checkbox{min-height:var(--tap);cursor:pointer;align-items:center;gap:.65rem;display:flex}.checkbox input{width:22px;height:22px;accent-color:var(--primary);flex-shrink:0}.radio-group{flex-wrap:wrap;gap:.5rem;display:flex}.radio-group label{border:1px solid var(--border-strong);cursor:pointer;background:var(--surface);border-radius:999px;align-items:center;gap:.45rem;min-height:40px;padding:.5rem .9rem;font-weight:500;transition:all .12s;display:inline-flex}.radio-group input{accent-color:var(--primary);margin:0}.radio-group label.checked{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong);font-weight:700}.form-actions{bottom:var(--nav-h);z-index:5;background:linear-gradient(to top, var(--bg) 65%, transparent);gap:.6rem;margin-top:.25rem;padding:.85rem 0 .25rem;display:flex;position:sticky}.form-actions .btn{flex:1}@media (width>=900px){.form-actions{justify-content:flex-end;bottom:0}.form-actions .btn{flex:0 auto;min-width:150px}}.form-error{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);border-left:4px solid var(--danger);padding:.8rem 1rem;font-size:.93rem;font-weight:500}.form-success{border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success);border-left:4px solid var(--success);padding:.8rem 1rem}.notice{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--text);border-left:4px solid var(--primary);padding:.8rem 1rem;font-size:.93rem;display:block}.notice.warning{background:var(--warning-soft);border-left-color:var(--warning)}a.notice:hover{filter:brightness(.98);text-decoration:none}.tabs{-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--border);scrollbar-width:none;gap:.15rem;max-width:100%;margin-bottom:1rem;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs a{min-height:var(--tap);color:var(--muted);border-bottom:3px solid #0000;flex-shrink:0;align-items:center;margin-bottom:-1px;padding:.7rem .9rem;font-size:.93rem;font-weight:600;display:inline-flex}.tabs a.active{color:var(--primary-strong);border-bottom-color:var(--primary)}.tabs a:hover{color:var(--text);text-decoration:none}.sheet-backdrop{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0814168c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-height:92vh;padding:.75rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-lg);border-radius:18px 18px 0 0;animation:.18s ease-out sheet-in;overflow-y:auto}@keyframes sheet-in{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:none}}.sheet:before{content:"";background:var(--border-strong);border-radius:999px;width:40px;height:4px;margin:0 auto .6rem;display:block}.sheet .form-actions{background:linear-gradient(to top, var(--surface) 65%, transparent);bottom:0}.sheet-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.6rem;display:flex}.sheet-head h2{margin:0;font-size:1.1rem}@media (width>=640px){.sheet-backdrop{align-items:center;padding:1rem}.sheet{border-radius:var(--radius);max-width:580px;padding-top:1rem}.sheet:before{display:none}}.toasts{left:50%;bottom:calc(var(--nav-h) + .75rem);z-index:60;flex-direction:column;gap:.5rem;width:min(92vw,420px);display:flex;position:fixed;transform:translate(-50%)}@media (width>=900px){.toasts{bottom:1.5rem}}.toast{border-radius:var(--radius-sm);background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);padding:.8rem 1rem;font-size:.93rem;font-weight:500}.toast.error{background:var(--danger);color:#fff}.toast.success{background:var(--success);color:#fff}.center-screen{background:var(--bg);background-image:radial-gradient(900px 500px at 15% 0,#0f766e38,#0000 60%),radial-gradient(700px 400px at 100% 100%,#f59e0b2e,#0000 60%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem 1rem;display:flex}.auth-card{width:100%;max-width:420px;box-shadow:var(--shadow-lg);border-color:color-mix(in srgb, var(--border) 60%, transparent);padding:1.5rem}.auth-card .logo{letter-spacing:-.02em;align-items:center;gap:.75rem;margin-bottom:1.25rem;font-size:1.35rem;font-weight:800;display:flex}.auth-card .logo small{color:var(--muted);letter-spacing:0;font-size:.78rem;font-weight:500;display:block}.auth-card h1{font-size:1.35rem}.qr{border-radius:var(--radius-sm);background:#fff;padding:.5rem;display:inline-block}.ageing{flex-direction:column;gap:.4rem;min-width:0;max-width:100%;display:flex}.ageing .bar{background:var(--surface-3);border-radius:999px;width:100%;height:8px;display:flex;overflow:hidden}.ageing .bar span{height:100%;display:block}.ageing .legend{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.25rem .75rem;font-size:.75rem;display:flex}.ageing .legend b{color:var(--text);font-weight:700}.ageing .legend .dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:.3rem;display:inline-block}.age-0{background:var(--primary)}.age-1{background:var(--accent)}.age-2{background:#ea580c}.age-3{background:var(--danger)}@media (prefers-color-scheme:dark){.age-2{background:#fb923c}}.ageing.hot .legend .hot b{color:var(--danger)}.divider{border:0;border-top:1px solid var(--border);margin:1rem 0}.filters{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:1rem;display:flex}.filters .field{flex:150px;min-width:0}.empty{text-align:center;color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 50%, transparent);padding:2rem 1rem}.empty strong{color:var(--text)}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;margin:1.5rem auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.unread{border-left:4px solid var(--primary)}.notif-body{white-space:pre-wrap;overflow-wrap:anywhere}details.panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}details.panel summary{cursor:pointer;min-height:var(--tap);align-items:center;padding:.75rem 1rem;font-weight:600;list-style:none;display:flex}details.panel summary::-webkit-details-marker{display:none}details.panel summary:after{content:"›";color:var(--muted);margin-left:auto;font-size:1.3rem;transition:transform .15s;transform:rotate(90deg)}details.panel[open] summary:after{transform:rotate(-90deg)}details.panel .panel-body{padding:0 1rem 1rem}.kpi-row{flex-wrap:wrap;gap:.75rem 1.5rem;display:flex}.pill-row{flex-wrap:wrap;gap:.35rem;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.input[type=file]{cursor:pointer;padding:.45rem .6rem}.input[type=file]::file-selector-button{font:inherit;border-radius:var(--radius-xs);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);cursor:pointer;margin-right:.75rem;padding:.35rem .8rem;font-weight:600}.input[type=file]::file-selector-button:hover{background:var(--surface-3)}
