@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap";:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-canvas-base:#f8f7f4;--bg-canvas:var(--bg-canvas-base);--bg-panel:#fff;--bg-panel-solid:#fff;--bg-panel-border:#e3e2dc;--border-solid:#e3e2dc;--text-primary:#3c3a35;--text-secondary:#5c5a52;--text-muted:#6f6b62;--color-action:#2e6c4d;--color-action-hover:#1e4d35;--color-action-glow:#2e6c4d1f;--color-action-container:#2e6c4d1a;--color-action-on-container:#0f3521;--color-accent:#866819;--color-accent-hover:#695213;--color-accent-glow:#8c6e1a1f;--color-accent-container:#8c6e1a1a;--color-accent-on-container:#3d2f00;--color-destructive:#b3261e;--color-destructive-hover:#8c1d18;--color-destructive-glow:#b3261e1f;--color-destructive-container:#b3261e1a;--color-destructive-on-container:#410e0b;--color-success:#1b6b3e;--color-warning:#8a5a00;--color-success-container:#1b6b3e1a;--color-success-on-container:#042d17;--bg-glow-1:#2e6c4d14;--bg-glow-2:#c49a6214;--shadow-sm:0 1px 2px #00000014, 0 1px 1px #0000000a;--shadow-md:0 4px 10px #00000014, 0 1px 3px #0000000a;--shadow-lg:0 12px 24px #0000001f, 0 2px 8px #0000000f;--radius-sm:8px;--radius-md:16px;--radius-lg:28px;--radius-pill:9999px;--transition-smooth:all .3s cubic-bezier(.34, 1.56, .64, 1);--glass-blur:none;--input-bg:#00000008;--color-on-action:#fff;--color-on-success:#fff;--color-on-destructive:#fff;--stage-enquiry-received:#6b7f76;--stage-extended-form-sent:#8c6e1a;--stage-extended-form-complete:#5b7f63;--stage-assessment-booked:#3f7a63;--stage-assessment-complete:#2e6c4d;--stage-agreement-sent:#a07d20;--stage-agreement-accepted:#2b6449;--stage-portal-invite-sent:#b08829;--stage-portal-active:#256b4f;--stage-onboarding-complete:#1b6b3e}@media (prefers-color-scheme:dark){:root{--bg-canvas-base:#0c0e0d;--bg-canvas:var(--bg-canvas-base);--bg-panel:#1a1c1b;--bg-panel-solid:#1a1c1b;--bg-panel-border:#ffffff14;--border-solid:#2c2e2d;--text-primary:#cdceca;--text-secondary:#939690;--text-muted:#84877f;--color-action:#8cd6ad;--color-action-hover:#b4ebcd;--color-action-glow:#8cd6ad26;--color-action-container:#8cd6ad1f;--color-action-on-container:#d2f8e4;--color-accent:#dbab6f;--color-accent-hover:#f1cca3;--color-accent-glow:#dbab6f26;--color-accent-container:#dbab6f1f;--color-accent-on-container:#ffe2c2;--color-destructive:#f2b8b5;--color-destructive-hover:#f9dedc;--color-destructive-glow:#f2b8b526;--color-destructive-container:#f2b8b51f;--color-destructive-on-container:#f9dedc;--color-success:#8be1b5;--color-warning:#f0c274;--color-success-container:#8be1b51f;--color-success-on-container:#d6fae9;--bg-glow-1:#8cd6ad0d;--bg-glow-2:#dbab6f0d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 10px #0006, 0 1px 3px #0003;--shadow-lg:0 12px 24px #00000080, 0 2px 8px #0000004d;--input-bg:#00000040;--color-on-action:#06281a;--color-on-success:#06281a;--color-on-destructive:#601410;--stage-enquiry-received:#9aaea4;--stage-extended-form-sent:#dbab6f;--stage-extended-form-complete:#a3cbaf;--stage-assessment-booked:#8fd3b4;--stage-assessment-complete:#8cd6ad;--stage-agreement-sent:#e5bd8a;--stage-agreement-accepted:#7fcfa5;--stage-portal-invite-sent:#f1cca3;--stage-portal-active:#86dcb0;--stage-onboarding-complete:#8be1b5}}:root[data-theme=dark]{--bg-canvas-base:#0c0e0d;--bg-canvas:var(--bg-canvas-base);--bg-panel:#1a1c1b;--bg-panel-solid:#1a1c1b;--bg-panel-border:#ffffff14;--border-solid:#2c2e2d;--text-primary:#cdceca;--text-secondary:#939690;--text-muted:#84877f;--color-action:#8cd6ad;--color-action-hover:#b4ebcd;--color-action-glow:#8cd6ad26;--color-action-container:#8cd6ad1f;--color-action-on-container:#d2f8e4;--color-accent:#dbab6f;--color-accent-hover:#f1cca3;--color-accent-glow:#dbab6f26;--color-accent-container:#dbab6f1f;--color-accent-on-container:#ffe2c2;--color-destructive:#f2b8b5;--color-destructive-hover:#f9dedc;--color-destructive-glow:#f2b8b526;--color-destructive-container:#f2b8b51f;--color-destructive-on-container:#f9dedc;--color-success:#8be1b5;--color-warning:#f0c274;--color-success-container:#8be1b51f;--color-success-on-container:#d6fae9;--bg-glow-1:#8cd6ad0d;--bg-glow-2:#dbab6f0d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 10px #0006, 0 1px 3px #0003;--shadow-lg:0 12px 24px #00000080, 0 2px 8px #0000004d;--input-bg:#00000040;--color-on-action:#06281a;--color-on-success:#06281a;--color-on-destructive:#601410;--stage-enquiry-received:#9aaea4;--stage-extended-form-sent:#dbab6f;--stage-extended-form-complete:#a3cbaf;--stage-assessment-booked:#8fd3b4;--stage-assessment-complete:#8cd6ad;--stage-agreement-sent:#e5bd8a;--stage-agreement-accepted:#7fcfa5;--stage-portal-invite-sent:#f1cca3;--stage-portal-active:#86dcb0;--stage-onboarding-complete:#8be1b5}:root[data-theme=light]{--bg-canvas-base:#f8f7f4;--bg-canvas:var(--bg-canvas-base);--bg-panel:#fff;--bg-panel-solid:#fff;--bg-panel-border:#e3e2dc;--border-solid:#e3e2dc;--text-primary:#3c3a35;--text-secondary:#5c5a52;--text-muted:#6f6b62;--color-action:#2e6c4d;--color-action-hover:#1e4d35;--color-action-glow:#2e6c4d1f;--color-action-container:#2e6c4d1a;--color-action-on-container:#0f3521;--color-accent:#866819;--color-accent-hover:#695213;--color-accent-glow:#8c6e1a1f;--color-accent-container:#8c6e1a1a;--color-accent-on-container:#3d2f00;--color-destructive:#b3261e;--color-destructive-hover:#8c1d18;--color-destructive-glow:#b3261e1f;--color-destructive-container:#b3261e1a;--color-destructive-on-container:#410e0b;--color-success:#1b6b3e;--color-warning:#8a5a00;--color-success-container:#1b6b3e1a;--color-success-on-container:#042d17;--bg-glow-1:#2e6c4d14;--bg-glow-2:#c49a6214;--shadow-sm:0 1px 2px #00000014, 0 1px 1px #0000000a;--shadow-md:0 4px 10px #00000014, 0 1px 3px #0000000a;--shadow-lg:0 12px 24px #0000001f, 0 2px 8px #0000000f;--input-bg:#00000008;--color-on-action:#fff;--color-on-success:#fff;--color-on-destructive:#fff;--stage-enquiry-received:#6b7f76;--stage-extended-form-sent:#8c6e1a;--stage-extended-form-complete:#5b7f63;--stage-assessment-booked:#3f7a63;--stage-assessment-complete:#2e6c4d;--stage-agreement-sent:#a07d20;--stage-agreement-accepted:#2b6449;--stage-portal-invite-sent:#b08829;--stage-portal-active:#256b4f;--stage-onboarding-complete:#1b6b3e}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-canvas-base);background:radial-gradient(circle at 10% 20%, var(--bg-glow-1) 0%, transparent 40%), radial-gradient(circle at 90% 80%, var(--bg-glow-2) 0%, transparent 40%), var(--bg-canvas-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;min-height:100vh;line-height:1.5;transition:background-color .3s,color .3s;position:relative;overflow-x:hidden}body:before{content:"";background:radial-gradient(circle, var(--bg-glow-1) 0%, transparent 70%);filter:blur(80px);z-index:-2;pointer-events:none;border-radius:50%;width:50vw;height:50vw;animation:25s ease-in-out infinite alternate float1;position:fixed;top:-10%;left:-10%}body:after{content:"";background:radial-gradient(circle, var(--bg-glow-2) 0%, transparent 70%);filter:blur(80px);z-index:-2;pointer-events:none;border-radius:50%;width:50vw;height:50vw;animation:25s ease-in-out infinite alternate float2;position:fixed;bottom:-10%;right:-10%}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text-primary);font-weight:600;line-height:1.25}h1{margin-bottom:1.5rem;font-size:2.25rem}h2{margin-bottom:1.25rem;font-size:1.75rem}h3{margin-bottom:1rem;font-size:1.25rem}.glass-panel{background:var(--bg-panel);border:1px solid var(--bg-panel-border);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-smooth);padding:1.75rem}.glass-panel:hover{box-shadow:var(--shadow-lg)}:root[data-theme=dark] .glass-panel:hover{border-color:#ffffff26}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .glass-panel:hover{border-color:#ffffff26}}.btn{font-family:var(--font-sans);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.6rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none}.btn:disabled:hover,.btn[aria-disabled=true]:hover{box-shadow:none;transform:none}.btn-primary:disabled:hover{background-color:var(--color-action)}.btn-destructive:disabled:hover{background-color:var(--color-destructive)}.btn-primary{background-color:var(--color-action);color:var(--color-on-action);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-action-hover);box-shadow:0 4px 12px var(--color-action-glow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-sm{gap:.35rem;padding:.42rem .9rem;font-size:.8rem;font-weight:600}.btn-xs{border-radius:var(--radius-sm,6px);justify-content:center;align-items:center;gap:.25rem;padding:.22rem .55rem;font-size:.72rem;font-weight:500;line-height:1.2;display:inline-flex}.btn-secondary{border:1px solid var(--border-solid);color:var(--text-primary);background-color:#00000008}.btn-secondary:hover{border-color:var(--text-secondary);background-color:#0000000f;transform:translateY(-2px)}:root[data-theme=dark] .btn-secondary{background-color:#0003}:root[data-theme=dark] .btn-secondary:hover{background-color:#ffffff0d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-secondary{background-color:#0003}:root:not([data-theme=light]) .btn-secondary:hover{background-color:#ffffff0d}}.btn-destructive{background-color:var(--color-destructive);color:var(--color-on-destructive)}.btn-destructive:hover{background-color:var(--color-destructive-hover);box-shadow:0 4px 12px var(--color-destructive-glow);transform:translateY(-2px)}.btn-destructive:active{transform:translateY(0)}.btn-icon{border-radius:var(--radius-pill);border:1px solid var(--bg-panel-border);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);-webkit-backdrop-filter:var(--glass-blur);background:#ffffff1a;padding:.6rem}.btn-icon:hover{color:var(--text-primary);background-color:#fff3;transform:scale(1.05)}.form-group{text-align:left;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-secondary);padding-left:.25rem;font-size:.875rem;font-weight:600}.input-field{font-family:var(--font-sans);border-radius:var(--radius-md);border:1px solid var(--border-solid);background-color:var(--input-bg);color:var(--text-primary);transition:var(--transition-smooth);box-sizing:border-box;outline:none;width:100%;min-width:0;padding:.8rem 1.2rem;font-size:1rem}.input-field:focus{border-color:var(--color-action);box-shadow:0 0 0 4px var(--color-action-glow);background-color:var(--bg-panel);transform:translateY(-1px)}.spinner{animation:2s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.quick-exit-fab{z-index:9999;color:#b3261e;-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-md);letter-spacing:.02em;cursor:pointer;transition:var(--transition-smooth);background-color:#b3261e26;border:1px solid #b3261e4d;border-radius:16px;align-items:center;gap:.5rem;padding:.9rem 1.6rem;font-size:.9rem;font-weight:700;text-decoration:none;display:flex;position:fixed;bottom:2rem;right:2rem}:root[data-theme=dark] .quick-exit-fab{color:#f2b8b5;background-color:#f2b8b526;border-color:#f2b8b54d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .quick-exit-fab{color:#f2b8b5;background-color:#f2b8b526;border-color:#f2b8b54d}}.quick-exit-fab:hover{color:#fff;box-shadow:var(--shadow-lg);background-color:#b3261e;border-color:#8c1d18;transform:translateY(-4px)scale(1.02)}:root[data-theme=dark] .quick-exit-fab:hover{color:#fff;background-color:#b3261e;border-color:#8c1d18}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .quick-exit-fab:hover{color:#fff;background-color:#b3261e;border-color:#8c1d18}}.quick-exit-fab:active{transform:translateY(-2px)scale(1)}.notification-fab{z-index:9998;cursor:pointer;width:3.5rem;height:3.5rem;color:var(--color-action);background-color:var(--bg-panel-solid);border:1px solid var(--border-solid);box-shadow:var(--shadow-md);transition:var(--transition-smooth);border-radius:16px;justify-content:center;align-items:center;display:flex;position:fixed;top:2rem;right:2rem}.notification-topbar-btn{width:2.5rem;height:2.5rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.notification-topbar-btn:hover,.notification-topbar-btn[aria-expanded=true]{background:var(--input-bg);color:var(--color-action)}.app-shell-topbar-actions{align-items:center;display:flex}.notification-fab:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.notification-fab:active{transform:translateY(-2px)scale(1)}.notification-fab-badge{background:var(--color-destructive);min-width:18px;height:18px;color:var(--color-on-destructive);border:2px solid var(--bg-panel-solid);box-sizing:content-box;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px}.notification-topbar-btn .notification-fab-badge{top:1px;right:1px}.dialog-overlay{z-index:10000;background-color:#0c0e0d80;justify-content:center;align-items:center;padding:1.5rem;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.dialog-content{border-radius:var(--radius-lg);width:90%;max-width:480px;max-height:calc(100vh - 3rem);box-shadow:var(--shadow-lg);animation:.35s cubic-bezier(.34,1.56,.64,1) slideUp;overflow-y:auto;background:var(--bg-panel-solid)!important;-webkit-backdrop-filter:none!important;border:1px solid var(--border-solid)!important}:is(.dialog-content:has(.dialog-actions),.dialog-content:has(.modal-actions),.modal-content:has(.dialog-actions),.modal-content:has(.modal-actions)){padding-bottom:0}.modal-header,.dialog-header{z-index:2;background:var(--bg-panel-solid);border-bottom:1px solid var(--bg-panel-border);position:sticky;top:0}:is(.modal-content:has(.modal-header),.modal-content:has(.dialog-header),.dialog-content:has(.modal-header),.dialog-content:has(.dialog-header)){padding-top:0}.dialog-actions{background:var(--bg-panel-solid);border-top:1px solid var(--bg-panel-border);z-index:1;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;margin-left:-2rem;margin-right:-2rem;padding:1rem 2rem;display:flex;position:sticky;bottom:0}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem .75rem;display:flex}.modal-body{padding:0 1.5rem 1rem}.modal-footer{background:var(--bg-panel-solid);border-top:1px solid var(--bg-panel-border);padding:.85rem 1.5rem 1.25rem;position:sticky;bottom:0}.modal-overlay{z-index:10000;background-color:#0c0e0d80;justify-content:center;align-items:center;padding:1.5rem;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-lg);width:90%;max-width:480px;max-height:calc(100vh - 3rem);box-shadow:var(--shadow-lg);padding:1.75rem;animation:.35s cubic-bezier(.34,1.56,.64,1) slideUp;overflow-y:auto;background:var(--bg-panel-solid)!important;-webkit-backdrop-filter:none!important;border:1px solid var(--border-solid)!important}.modal-actions{background:var(--bg-panel-solid);border-top:1px solid var(--bg-panel-border);z-index:1;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin:0 -1.75rem;padding:1rem 1.75rem;display:flex;position:sticky;bottom:0}.btn-close{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;padding:.35rem;display:inline-flex}.btn-close:hover{color:var(--text-primary);background-color:#0000000f}:root[data-theme=dark] .btn-close:hover{background-color:#ffffff14}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-close:hover{background-color:#ffffff14}}.input-label{color:var(--text-secondary);margin-bottom:.4rem;font-size:.8rem;font-weight:600;display:block}.tab-btn{white-space:nowrap;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-bottom:2px solid #0000;flex:none}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--color-action);border-bottom-color:var(--color-action)}div:has(>.tab-btn){scrollbar-width:thin;-webkit-overflow-scrolling:touch;overflow-x:auto}.master-detail{grid-template-columns:1fr 2fr;align-items:start;gap:2rem;display:grid}@media (width<=900px){.master-detail{grid-template-columns:1fr;gap:1.25rem}}.auth-screen{background-color:var(--bg-canvas);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}@media (width<=640px),(height<=760px){.auth-screen{justify-content:flex-start;padding-top:clamp(2rem,9vh,5rem)}}.drawer-overlay{z-index:10000;background-color:#0c0e0d80;justify-content:flex-end;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--bg-panel-solid);border-left:1px solid var(--border-solid);width:min(480px,100%);height:100%;box-shadow:var(--shadow-lg);flex-direction:column;animation:.3s cubic-bezier(.32,.72,0,1) slideInRight;display:flex}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{border-bottom:1px solid var(--bg-panel-border);flex:none;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 1.75rem 1rem;display:flex}.drawer-title{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:600}.drawer-subtitle{color:var(--text-secondary);margin:.25rem 0 0;font-size:.8rem}.drawer-body{flex-direction:column;flex:auto;gap:1rem;min-height:0;padding:1.25rem 1.75rem;display:flex;overflow-y:auto}.drawer-footer{border-top:1px solid var(--bg-panel-border);flex:none;justify-content:flex-end;gap:.75rem;padding:1rem 1.75rem 1.5rem;display:flex}@media (width<=560px){.drawer-panel{border-left:none;width:100%}}@media (prefers-reduced-motion:reduce){.drawer-panel,.modal-content,.dialog-content{animation:none}}.app-shell{box-sizing:border-box;width:100%;min-height:100vh;display:flex}.app-shell-sidebar{background:var(--bg-panel);border:1px solid var(--bg-panel-border);width:260px;-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:150;transition:var(--transition-smooth);flex-direction:column;flex-shrink:0;padding:2rem 1.25rem;display:flex;position:fixed;top:1.25rem;bottom:1.25rem;left:1.25rem}.app-shell-brand{color:var(--text-primary);letter-spacing:-.02em;padding:0 .75rem 1.75rem;font-size:1.35rem;font-weight:700}.app-shell-sidebar-nav{flex-direction:column;flex:1;gap:.4rem;display:flex;overflow-y:auto}.app-shell-sidebar-footer{border-top:1px solid var(--bg-panel-border);margin-top:auto;padding-top:1rem}.app-shell-nav-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:1.25rem 0 .35rem;padding:0 .75rem;font-size:.68rem;font-weight:600}.app-shell-nav-heading:first-child{margin-top:0}.app-shell-nav-link{border-radius:var(--radius-pill);color:var(--text-secondary);transition:var(--transition-smooth);z-index:1;align-items:center;gap:.75rem;padding:.8rem 1.2rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex;position:relative;overflow:hidden}.app-shell-nav-link:before{content:"";border-radius:var(--radius-pill);background-color:var(--color-action-container);z-index:-1;opacity:0;transition:var(--transition-smooth);position:absolute;inset:0;transform:scaleX(.85)scaleY(.75)}.app-shell-nav-link:hover{color:var(--text-primary)}.app-shell-nav-link:hover:before{opacity:.5;transform:scaleX(1)scaleY(1)}.app-shell-nav-link.active{color:var(--color-action-on-container)}.app-shell-nav-link.active:before{opacity:1;transform:scaleX(1)scaleY(1)}.app-shell-body{flex-direction:column;flex:1;min-width:0;margin-left:300px;display:flex}.app-shell-topbar{border-bottom:1px solid var(--bg-panel-border);background:var(--bg-panel);-webkit-backdrop-filter:var(--glass-blur);z-index:100;justify-content:space-between;align-items:center;padding:1.2rem 2rem;display:none;position:sticky;top:0}.app-shell-brand-mobile{color:var(--text-primary);letter-spacing:-.02em;font-size:1.2rem;font-weight:700}.app-shell-main{box-sizing:border-box;flex:1;width:100%;padding:2rem 2.5rem}.app-shell-main>*>:first-child{padding-right:4.25rem}@media (width<=768px){.app-shell-main>*>:first-child{padding-right:0}}@media (width>=769px){body.has-quick-exit .app-shell-main{padding-bottom:6rem}}.app-shell-tabbar,.app-shell-more-sheet-backdrop{display:none}.modal-content::-webkit-scrollbar-track{margin-block:var(--radius-lg)}.dialog-content::-webkit-scrollbar-track{margin-block:var(--radius-lg)}.glass-panel::-webkit-scrollbar-track{margin-block:var(--radius-lg)}.modal-content,.dialog-content{scrollbar-gutter:stable}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-panel-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}table{border-collapse:collapse;width:100%;margin-bottom:1.5rem}th{text-align:left;color:var(--text-secondary);border-bottom:2px solid var(--bg-panel-border);padding:1rem 1.25rem;font-size:.9rem;font-weight:600}td{border-bottom:1px solid var(--bg-panel-border);color:var(--text-primary);padding:1.1rem 1.25rem;font-size:.95rem}tr:hover td{background-color:#ffffff08}@media (width<=768px){.app-shell-sidebar{display:none}.app-shell-body{margin-left:0}.app-shell-topbar{gap:.75rem;padding:.85rem 1.25rem;display:flex}.app-shell-brand-mobile{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:1.05rem;display:block;overflow:hidden}.app-shell-topbar .role-switcher-container{flex:none;min-width:0;max-width:58%}.app-shell-topbar .role-switcher-container>button{max-width:100%}.app-shell-main{padding:1.5rem 1.25rem calc(6rem + env(safe-area-inset-bottom))}.app-shell-tabbar{background:var(--bg-panel);border-top:1px solid var(--bg-panel-border);-webkit-backdrop-filter:var(--glass-blur);z-index:200;padding:.75rem .5rem calc(.75rem + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000000d}.app-shell-tab{min-width:0;color:var(--text-secondary);text-align:center;cursor:pointer;font-size:.7rem;font-weight:600;line-height:1.15;font-family:var(--font-sans);transition:var(--transition-smooth);background:0 0;border:none;flex-direction:column;flex:1 1 0;justify-content:flex-start;align-items:center;gap:.3rem;text-decoration:none;display:flex}.app-shell-tab>span{overflow-wrap:anywhere;width:100%;display:block}.app-shell-tab svg{box-sizing:content-box;border-radius:var(--radius-pill);transition:var(--transition-smooth);background-color:#0000;padding:4px 14px}.app-shell-tab:hover svg{background-color:#ffffff1a}.app-shell-tab.active svg{background-color:var(--color-action-container);color:var(--color-action-on-container)}.app-shell-tab.active{color:var(--color-action-on-container)}.quick-exit-fab{bottom:calc(5.5rem + env(safe-area-inset-bottom));border-radius:50%;justify-content:center;gap:0;width:3.25rem;height:3.25rem;padding:0;right:1rem}.quick-exit-fab-label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell-more-sheet-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:300;background:#0c0e0d99;justify-content:center;align-items:flex-end;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.app-shell-more-sheet{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);padding:1.5rem 1rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));border-bottom:none;flex-direction:column;gap:.4rem;animation:.3s cubic-bezier(.34,1.56,.64,1) slideUp;display:flex;background:var(--bg-panel-solid)!important;-webkit-backdrop-filter:none!important;border:1px solid var(--border-solid)!important}.app-shell-more-sheet-item{border-radius:var(--radius-pill);color:var(--text-primary);text-align:left;cursor:pointer;width:100%;font-size:.95rem;font-weight:500;font-family:var(--font-sans);transition:var(--transition-smooth);background:0 0;border:none;align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;display:flex}.app-shell-more-sheet-item:hover{background-color:var(--color-action-container);color:var(--color-action-on-container)}}@keyframes float1{0%{transform:translate(0)scale(1)}to{transform:translate(8%,8%)scale(1.1)}}@keyframes float2{0%{transform:translate(0)scale(1.1)}to{transform:translate(-8%,-8%)scale(.9)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.glass-panel[style*="position: absolute"],.glass-panel[style*=position\:absolute],.glass-panel[style*="position: fixed"],.glass-panel[style*=position\:fixed],[style*="position: fixed"]>.glass-panel,.role-switcher-container .glass-panel,.app-shell-sidebar-footer .glass-panel,.app-shell-topbar .glass-panel,.notification-panel{background:var(--bg-panel-solid)!important;-webkit-backdrop-filter:none!important;box-shadow:var(--shadow-md)!important;border:1px solid var(--border-solid)!important}.app-shell-sidebar,.app-shell-topbar,.app-shell-tabbar{background:var(--bg-panel-solid)!important;-webkit-backdrop-filter:none!important;border-color:var(--border-solid)!important}.input-field,.input-field:focus,select.input-field,textarea.input-field{background-color:var(--bg-panel-solid)!important}select.input-field option{background-color:var(--bg-panel-solid);color:var(--text-primary)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass-panel,.modal-content,.dialog-content,.drawer-panel,.app-shell-more-sheet{border-color:var(--border-solid);background:var(--bg-panel-solid)!important}.app-shell-sidebar,.app-shell-topbar,.app-shell-tabbar{background:var(--bg-panel-solid)!important;border-color:var(--border-solid)!important}.modal-overlay,.dialog-overlay,.drawer-overlay,.app-shell-more-sheet-backdrop{background-color:#0c0e0dcc!important}}@media (width<=768px){.glass-panel,.modal-content,.dialog-content,.drawer-panel{background:var(--bg-panel-solid);border-color:var(--border-solid)}}.animate-item{animation:.4s cubic-bezier(.16,1,.3,1) both slideUp}.calendar-grid{gap:1rem;width:100%;display:grid}.schedule-slot.is-bookable,.hour-slot-container.is-empty:not(.is-past){cursor:pointer}.schedule-slot.is-bookable:hover,.hour-slot-container.is-empty:not(.is-past):hover{background:var(--color-action-container)!important;border:1px solid var(--color-action)!important}.cal-head{z-index:3;background:var(--bg-panel-solid);position:sticky;top:0}.cal-head-corner{border-bottom:1px solid var(--bg-panel-border)}.cal-cell.is-bookable{cursor:pointer;border-radius:var(--radius-sm)}.cal-cell.is-bookable:hover,.cal-cell.is-bookable:focus-visible{outline:1px solid var(--color-action);outline-offset:-1px;background:var(--color-action-container)!important}.cal-cell-plus{color:var(--text-muted);opacity:0;pointer-events:none;transition:opacity .12s;display:inline-flex;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.cal-cell.is-bookable:hover .cal-cell-plus,.cal-cell.is-bookable:focus-visible .cal-cell-plus{opacity:1}@media (hover:none){.cal-cell-plus{opacity:.4}}.schedule-slot.is-bookable:hover .btn-icon{opacity:1!important}.schedule-event{cursor:pointer;outline-offset:-2px;outline:2px solid #0000;transition:transform .15s,box-shadow .15s,outline-color .15s}.schedule-event:hover{box-shadow:var(--shadow-md);outline-color:var(--color-action);z-index:5;transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.schedule-event,.schedule-event:hover{transition:none;transform:none}}.calendar-container{flex-direction:column;gap:1rem;display:flex}.calendar-page-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:50vh;display:flex}.calendar-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.calendar-page-title{margin:0 0 .25rem;font-size:1.5rem}.calendar-page-subtitle{color:var(--text-secondary);margin:0}.calendar-new-wrap{position:relative}.calendar-new-menu{z-index:50;flex-direction:column;gap:.25rem;width:200px;padding:.4rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.calendar-new-item{text-align:left;cursor:pointer;border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:0 0;border:none;align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.85rem;transition:background-color .12s;display:flex}.calendar-new-item:hover{background-color:var(--input-bg)}.calendar-banner-success{color:var(--color-success);border-left:3px solid var(--color-success);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.calendar-banner-error,.calendar-banner-clash{color:var(--color-destructive);border-left:3px solid var(--color-destructive);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.calendar-controls-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.calendar-nav-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.calendar-nav-label{margin-left:.25rem;font-size:.9rem;font-weight:700}.calendar-filters-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.calendar-filter-select{width:auto;min-width:8rem;padding:.35rem .55rem;font-size:.8rem}.calendar-view-toggle{gap:.25rem;display:flex}.calendar-room-col-header{text-align:center;border-bottom:1px solid var(--bg-panel-border);margin-bottom:.4rem;padding-bottom:.4rem}.calendar-room-name{font-size:.9rem;font-weight:700;line-height:1.3}.calendar-room-status{color:var(--text-secondary);font-size:.72rem}.calendar-room-closure{color:var(--color-destructive);margin-top:.15rem;font-size:.7rem}.calendar-room-hour-label{color:var(--text-muted);font-size:.65rem;position:absolute;top:2px;left:4px}.calendar-gutter-hour{color:var(--text-secondary);font-variant-numeric:tabular-nums;text-align:right;border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm);padding-top:1px;padding-right:.45rem;font-size:.72rem}.calendar-day-header{text-align:center;border-bottom:1px solid var(--bg-panel-border);padding-bottom:.4rem}.calendar-day-weekday{font-size:.85rem;font-weight:700;line-height:1.3}.calendar-day-date{font-size:.8rem;font-weight:500;line-height:1.3}.calendar-closure-tag{margin-top:.15rem;font-size:.68rem}.calendar-leave-tag{color:var(--color-accent);margin-top:.15rem;font-size:.66rem}.calendar-agenda-day-header{border-bottom:1px solid var(--bg-panel-border);justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}.calendar-agenda-day-title{margin:0;font-size:.95rem;font-weight:700}.calendar-agenda-day-title span{font-weight:500}.calendar-agenda-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.calendar-agenda-item-btn{text-align:left;cursor:pointer;border-radius:var(--radius-sm);align-items:center;gap:.6rem;width:100%;min-height:2.75rem;padding:.5rem .6rem;transition:transform .12s,box-shadow .12s;display:flex}.calendar-agenda-item-btn:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.calendar-agenda-time{font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0;font-size:.78rem}.calendar-agenda-title{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:500;display:block;overflow:hidden}.calendar-agenda-subtitle{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;display:block;overflow:hidden}.calendar-dialog-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.calendar-dialog-title{margin:0;font-size:1.2rem}.calendar-dialog-details{color:var(--text-secondary);flex-direction:column;gap:.35rem;margin-bottom:1.25rem;font-size:.85rem;display:flex}@media (width<=640px){.calendar-controls-bar{flex-direction:column;align-items:stretch}.calendar-nav-group,.calendar-filters-group{justify-content:space-between}.calendar-filter-select{flex:1;min-width:0}}.schedule-grid{grid-template-columns:repeat(var(--sched-cols,1), minmax(var(--sched-col-min,190px), 1fr));gap:.75rem;display:grid}@media (width<=768px){.calendar-grid{gap:.5rem!important}.calendar-grid,.schedule-grid{grid-template-columns:1fr!important;min-width:0!important;overflow-x:visible!important}.schedule-grid-scroller{overflow-x:visible!important}.calendar-day-col.no-events>div:not(:first-child){display:none!important}.calendar-day-col.no-events{opacity:.6}.calendar-day-col.no-events>div:first-child{border-bottom:none;padding:.25rem .5rem;font-size:.78rem}}.wizard-container{border-radius:var(--radius-lg);width:95%;max-width:800px;height:90vh;max-height:550px;box-shadow:var(--shadow-lg);flex-direction:column;animation:.35s cubic-bezier(.34,1.56,.64,1) slideUp;display:flex;position:relative;overflow:hidden;background:var(--bg-panel-solid)!important;border:1px solid var(--border-solid)!important}.wizard-body{flex:1;min-height:0;display:flex}.wizard-sidebar{background-color:var(--input-bg);border-right:1px solid var(--border-solid);flex-direction:column;gap:1.5rem;width:35%;padding:1.5rem;display:flex;overflow-y:auto}.wizard-main{flex-direction:column;width:65%;min-height:0;display:flex;position:relative;background:var(--bg-panel-solid)!important}.wizard-content{flex:1;padding:1.5rem;overflow-y:auto}.wizard-footer{border-top:1px solid var(--border-solid);background-color:var(--bg-panel-solid);z-index:10;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex;position:sticky;bottom:0}.wizard-close-btn{z-index:20;position:absolute;top:1rem;right:1rem}@media (width<=768px){.wizard-container{height:95vh;max-height:none}.wizard-body{flex-direction:column}.wizard-sidebar{border-right:none;border-bottom:1px solid var(--border-solid);gap:.5rem;width:100%;max-height:150px;padding:1rem}.wizard-main{flex:1;width:100%}.wizard-content{padding:1rem}.wizard-footer{padding:.75rem 1rem}}.setting-switch{border-radius:var(--radius-pill);background:var(--bg-panel-border);cursor:pointer;width:46px;height:26px;transition:var(--transition-smooth);border:none;flex:none;align-items:center;margin-top:.1rem;padding:3px;display:inline-flex}.setting-switch[data-on=true]{background:var(--color-action)}.setting-switch:disabled{opacity:.5;cursor:default}.setting-switch:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.setting-switch-knob{width:20px;height:20px;transition:var(--transition-smooth);background:#fff;border-radius:50%;transform:translate(0);box-shadow:0 1px 3px #0000004d}.setting-switch[data-on=true] .setting-switch-knob{transform:translate(20px)}.page-tabs{display:none}.page-tab-select{width:100%;display:block}@media (width>=768px){.page-tabs{border-bottom:1px solid var(--bg-panel-border);gap:.25rem;display:flex}.page-tabs .tab-btn{padding:.6rem 1.1rem;font-size:.9rem}.page-tab-select{display:none}}.dropdown-anchor{position:relative}.dropdown-menu{z-index:50;background:var(--bg-panel-solid);border:1px solid var(--border-solid);-webkit-backdrop-filter:none;flex-direction:column;gap:.25rem;width:220px;max-width:calc(100vw - 2rem);padding:.4rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.schedule-day-head{padding:.5rem .5rem .6rem}.schedule-day-head-arrow{display:none}.schedule-day-head-date{pointer-events:none}.schedule-day-head-nav{justify-content:space-between;align-items:center;gap:.5rem;display:flex;position:relative}.schedule-day-head-arrow{flex:none}.schedule-day-head-date{cursor:pointer;color:inherit;font:inherit;border-radius:var(--radius-sm);text-align:center;background:0 0;border:none;flex:1;padding:.15rem .25rem}.schedule-day-head-date:hover{background:var(--input-bg)}.schedule-date-picker{z-index:60;background:var(--bg-panel-solid);border:1px solid var(--border-solid);-webkit-backdrop-filter:none;align-items:center;gap:.5rem;width:max-content;max-width:calc(100vw - 2rem);padding:.5rem;display:flex;position:absolute;top:calc(100% + .4rem);left:50%;transform:translate(-50%)}.schedule-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.schedule-toolbar-views.schedule-views-mobile{display:none}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.schedule-toolbar-nav{align-items:center;gap:.5rem;display:flex}.schedule-toolbar-range{margin-left:.5rem;font-weight:600}.schedule-toolbar-views{gap:.25rem;display:flex}@media (width<=768px){.dropdown-menu{left:0;right:auto}.schedule-toolbar{display:none}.schedule-toolbar-views.schedule-views-mobile{gap:.25rem;display:flex}.schedule-header{gap:.75rem}.schedule-header-title{flex-basis:100%}.schedule-day-head-arrow{display:inline-flex}.schedule-day-head-date{pointer-events:auto}.schedule-day-head{top:var(--app-topbar-height,76px);z-index:5;background:var(--bg-panel-solid);border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:-.5rem -.5rem 0;padding:.6rem .5rem;position:sticky}.schedule-toolbar{gap:.6rem}.schedule-toolbar-range{text-align:center;flex-basis:100%;order:3;margin-left:0}}.schedule-event-projected{background:var(--bg-panel-solid);border:1px dashed var(--bg-panel-border);border-left:4px dashed var(--text-muted);color:var(--text-secondary)}.app-shell-legal{border-top:1px solid var(--bg-panel-border);color:var(--text-muted);justify-content:center;align-items:center;gap:.5rem;margin-top:3rem;padding-top:1.25rem;font-size:.75rem;display:flex}.app-shell-legal a{color:var(--text-muted);text-decoration:none}.app-shell-legal a:hover{color:var(--color-action);text-decoration:underline}.toggle{cursor:pointer;align-items:flex-start;gap:.65rem;display:flex;position:relative}.toggle.is-disabled{cursor:not-allowed;opacity:.55}.toggle-trailing{justify-content:space-between}.toggle-input{opacity:0;width:2.4rem;height:1.35rem;cursor:inherit;margin:0;position:absolute}.toggle-switch{background:var(--bg-panel-border);border-radius:999px;flex-shrink:0;width:2.4rem;height:1.35rem;margin-top:.1rem;transition:background .18s;position:relative}.toggle-switch.is-on{background:var(--color-action)}.toggle-knob{background:#fff;border-radius:50%;width:1.03rem;height:1.03rem;transition:transform .18s;position:absolute;top:.16rem;left:.16rem;box-shadow:0 1px 2px #0003}.toggle-switch.is-on .toggle-knob{transform:translate(1.05rem)}.toggle-input:focus-visible+.toggle-switch,.toggle-input:focus-visible~.toggle-text+.toggle-switch{outline:2px solid var(--color-action);outline-offset:2px}.toggle-text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.toggle-label{font-size:.9rem;line-height:1.4}.toggle-description{color:var(--text-muted);font-size:.78rem;line-height:1.5}@media (prefers-reduced-motion:reduce){.toggle-switch,.toggle-knob{transition:none}}.recon-table{border-collapse:collapse;width:100%;min-width:44rem;font-size:.85rem}.recon-table td:first-child,.recon-table th:first-child{width:12rem}@media (width<=768px){.recon-table{min-width:0;display:block}.recon-table thead{display:none}.recon-table tbody,.recon-table tr,.recon-table td{width:100%;display:block}.recon-table tr{padding:.5rem 0}.recon-table td{text-align:left!important;white-space:normal!important;min-width:0!important;max-width:none!important;padding:.3rem .9rem!important}}.dashboard-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@media (width>=900px){.dashboard-grid{grid-template-columns:minmax(19rem,23rem) minmax(0,1fr)}.dashboard-today{max-height:calc(100vh - 2rem);position:sticky;top:1rem;overflow-y:auto}}@media (height>=480px){.recon-apply{z-index:5;background:var(--bg-panel-solid,var(--bg-panel));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;bottom:.75rem;box-shadow:0 -2px 16px #0000001f}}.ledger-page{flex-direction:column;gap:1.25rem;display:flex}.ledger-page-title{margin:0}.ledger-page-subtitle{color:var(--text-secondary);margin:.25rem 0 0}.ledger-page-error{border-left:4px solid var(--color-destructive);padding:.9rem 1.2rem;font-size:.85rem}.ledger-page-loading{justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.ledger-banner-error{border-left:4px solid var(--color-destructive);padding:.85rem 1.1rem;font-size:.85rem}.ledger-banner-success{border-left:4px solid var(--color-success);padding:.85rem 1.1rem;font-size:.85rem}.ledger-container{flex-direction:column;gap:1rem;display:flex}.ledger-tabs-nav{border-bottom:1px solid var(--bg-panel-border);flex-wrap:wrap;gap:1.5rem;display:flex}.ledger-tab-btn{padding:.75rem .5rem;font-size:.95rem;font-weight:600}.ledger-billing-chips{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ledger-chip-alert{border-color:var(--color-destructive)!important;color:var(--color-destructive)!important}.ledger-filter-grid{grid-template-columns:minmax(220px,2fr) minmax(170px,1fr) minmax(170px,1fr);align-items:center;gap:.6rem;display:grid}.ledger-filter-grid-scoped{grid-template-columns:minmax(220px,2fr) minmax(170px,1fr)}@media (width<=680px){.ledger-filter-grid,.ledger-filter-grid-scoped{grid-template-columns:1fr}}.ledger-search-wrap{position:relative}.ledger-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.ledger-search-input{padding-left:2.1rem}.ledger-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.ledger-filter-count{color:var(--text-secondary);font-size:.8rem}.ledger-bulk-bar{border-left:3px solid var(--color-action);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.ledger-bulk-count{font-size:.82rem}.ledger-bulk-status{color:var(--text-secondary);font-size:.8rem}.ledger-bulk-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.ledger-table-wrap{padding:.25rem .5rem;overflow-x:auto}.ledger-table{border-collapse:collapse;width:100%;min-width:54rem}.ledger-table-scoped{min-width:44rem}.ledger-table-head-row{border-bottom:1px solid var(--bg-panel-border);text-align:left}.ledger-th{color:var(--text-secondary);border-bottom:1px solid var(--bg-panel-border);text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.65rem .6rem;font-size:.78rem;font-weight:600}.ledger-th-checkbox{width:2.5rem}.ledger-th-actions{text-align:right;width:3.5rem}.ledger-th-actions-wide{width:9rem}.ledger-th-sortable{cursor:pointer;transition:color .15s}.ledger-th-sortable:hover{color:var(--text-primary)}.ledger-th-content{align-items:center;gap:.35rem;display:inline-flex}.ledger-sort-icon{flex-shrink:0}.ledger-sort-icon.active{color:var(--color-action)}.ledger-sort-icon.muted{color:var(--text-muted);opacity:.45}.ledger-th-sortable:hover .ledger-sort-icon.muted{opacity:.85}.ledger-td{vertical-align:middle;border-bottom:1px solid var(--bg-panel-border);padding:.6rem;font-size:.82rem}.ledger-empty-cell{text-align:center;color:var(--text-muted);padding:2.5rem 1rem}.ledger-loading-cell{text-align:center;color:var(--text-secondary);padding:3rem 1rem}.ledger-loading-inner{align-items:center;gap:.6rem;display:inline-flex}.ledger-cell-nowrap{white-space:nowrap}.ledger-date-primary{font-weight:600}.ledger-time-sub{color:var(--text-muted);font-size:.74rem}.ledger-client-name{font-weight:500}.ledger-client-link{color:var(--text-primary);font-weight:500;text-decoration:none;transition:color .15s}.ledger-client-link:hover{color:var(--color-action);text-decoration:underline}.ledger-room-tag{color:var(--text-secondary);background:var(--bg-canvas,#0000000a);border-radius:var(--radius-sm,4px);border:1px solid var(--border-solid,#00000014);margin-top:.2rem;padding:.1rem .4rem;font-size:.72rem;line-height:1.2;display:inline-block}:root[data-theme=dark] .ledger-room-tag{background:#ffffff0d;border-color:#ffffff1a}.ledger-row{transition:background-color .12s}.ledger-row:hover{background-color:#00000005}:root[data-theme=dark] .ledger-row:hover{background-color:#ffffff08}.ledger-status-select{border-radius:var(--radius-sm,6px);border:1px solid var(--border-solid);background:var(--bg-canvas,#00000008);cursor:pointer;outline:none;min-width:7.2rem;padding:.25rem .45rem;font-size:.78rem;font-weight:600}.ledger-status-select:focus{border-color:var(--color-action)}.ledger-status-select[data-status=attended],.ledger-status-select[data-status=confirmed]{color:var(--color-success)}.ledger-status-select[data-status=scheduled]{color:var(--color-action)}.ledger-status-select[data-status=dna]{color:var(--color-accent)}.ledger-status-select[data-status=cancelled]{color:var(--text-muted)}.ledger-billing-group{flex-direction:column;align-items:flex-start;gap:.22rem;display:flex}.ledger-billing-meta{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.ledger-billing-amount{color:var(--text-muted);font-size:.72rem}.ledger-billing-label{font-size:.76rem}.ledger-billing-alert{color:var(--color-destructive);align-items:center;gap:.2rem;margin-top:.2rem;font-size:.72rem;display:flex}.ledger-billing-claimed{color:var(--text-muted);font-size:.7rem}.ledger-invoice-link{font:inherit;color:var(--color-action);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-flex}.ledger-invoice-link:hover{color:var(--color-action-hover);text-decoration:underline}.ledger-pill{border-radius:var(--radius-pill);text-transform:capitalize;padding:.15rem .45rem;font-size:.7rem;font-weight:600;line-height:1.2;display:inline-block}.ledger-pill-paid{background:var(--color-success-container);color:var(--color-success)}.ledger-pill-issued,.ledger-pill-sent{background:var(--color-action-container);color:var(--color-action)}.ledger-pill-overdue{background:var(--color-destructive-container);color:var(--color-destructive)}.ledger-pill-void{color:var(--text-muted);background:#0000000f}.ledger-pill-draft{background:var(--color-accent-container);color:var(--color-accent)}.ledger-cell-actions{align-items:center;gap:.35rem;margin-top:.25rem;display:flex}.ledger-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.ledger-load-more{justify-content:center;align-items:center;gap:.75rem;padding:1rem .5rem .25rem;display:flex}.ledger-load-all-btn{color:var(--text-muted)}.legal-page{max-width:38rem;color:var(--text-primary);margin:0 auto;padding:2rem 1.25rem 5rem;font-size:1rem;line-height:1.65}.legal-nav{margin-bottom:2rem}.legal-back{color:var(--text-secondary);align-items:center;gap:.4rem;font-size:.875rem;text-decoration:none;display:inline-flex}.legal-back:hover{color:var(--color-action)}.legal-h1{align-items:center;gap:.5rem;margin:0 0 1.25rem;font-size:1.75rem;font-weight:600;line-height:1.25;display:flex}.legal-h2{margin:2.5rem 0 .75rem;font-size:1.2rem;font-weight:600}.legal-h3{color:var(--text-secondary);margin:1.75rem 0 .5rem;font-size:1rem;font-weight:600}.legal-paragraph{margin:0 0 1rem}.legal-list{margin:0 0 1rem;padding-left:1.25rem}.legal-list li{margin-bottom:.4rem}.legal-rule{border:0;border-top:1px solid var(--bg-panel-border);margin:2rem 0}.legal-body a{color:var(--color-action)}.legal-muted{color:var(--text-muted);font-size:.875rem}.legal-table-wrap{border:1px solid var(--bg-panel-border);border-radius:var(--radius-sm,.5rem);margin:0 0 1.25rem;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;min-width:30rem;font-size:.875rem}.legal-table th,.legal-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--bg-panel-border);padding:.6rem .75rem}.legal-table th{background:var(--bg-canvas-base);font-weight:600}.legal-table tr:last-child td{border-bottom:0}.legal-footer{border-top:1px solid var(--bg-panel-border);margin-top:3rem;padding-top:1.5rem;font-size:.875rem}.legal-footer p{margin:0 0 .5rem}.legal-unavailable{border:1px solid var(--bg-panel-border);border-radius:var(--radius-sm,.5rem);background:var(--bg-panel);padding:1.5rem}.legal-admin-note{border-radius:var(--radius-sm,.5rem);background:var(--color-accent-container);color:var(--color-accent-on-container);margin-top:1.5rem;padding:1rem;font-size:.875rem}.collection-notice{border:1px solid var(--bg-panel-border);border-radius:var(--radius-sm,.5rem);background:var(--bg-canvas-base);color:var(--text-secondary);font-size:.8125rem}.collection-notice>summary{cursor:pointer;align-items:center;gap:.45rem;padding:.6rem .75rem;font-weight:500;list-style:none;display:flex}.collection-notice>summary::-webkit-details-marker{display:none}.collection-notice[open]>summary{border-bottom:1px solid var(--bg-panel-border)}.collection-notice-body{flex-direction:column;gap:.6rem;padding:.75rem;line-height:1.55;display:flex}.collection-notice-body p{margin:0}.collection-notice-body a{color:var(--color-action)}
