.households-page{gap:24px;display:grid}.households-page .page-header{margin-bottom:0}.household-units,.household-residents,.household-policy{min-width:0;padding:24px}.household-section-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.household-section-heading h2{margin:0}.household-section-heading p{color:var(--text-muted);max-width:75ch;font-size:13px;line-height:1.7}.household-section-heading>svg{color:var(--text-muted);flex-shrink:0}.household-table{max-width:100%;overflow-x:auto}.household-table table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.household-table th,.household-table td{border-bottom:1px solid var(--border);vertical-align:middle;min-width:130px;padding:15px 12px}.household-table thead th{color:var(--text-muted);font-size:12px;font-weight:500}.household-table th small{color:var(--text-muted);margin-top:5px;font-weight:400;display:block}.household-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.household-edit,.household-preview{background:var(--surface-soft,#f6f7f4);border:1px solid var(--border);border-radius:8px;margin:20px 0;padding:22px}.household-edit p,.household-preview p,.household-policy>p{color:var(--text-muted);max-width:75ch;font-size:13px;line-height:1.8}.household-edit input:not([type=checkbox]),.household-edit select,.household-edit textarea,.household-filters input,.household-filters select,.household-policy-fields select,.household-preview input,.household-preview select{border:1px solid var(--border);background:var(--surface,#fff);width:100%;min-height:44px;color:var(--text);border-radius:6px;padding:10px 12px}.household-edit textarea{resize:vertical;min-height:112px;font:inherit}.household-bulk-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:16px;display:grid}.household-bulk-fields label span{color:var(--text-muted);font-weight:400}.household-bulk-preview{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.household-bulk-preview h4{margin:0 0 10px}.household-bulk-preview ol{max-height:260px;margin:0;padding-left:24px;font-size:13px;line-height:1.8;overflow:auto}.household-group-row th{background:var(--surface-soft,#f6f7f4);color:var(--text-muted);text-align:left;font-weight:600}.household-edit label,.household-filters label,.household-policy-fields label,.household-preview label{font-size:12px;font-weight:600;line-height:1.8;display:block}.household-checkbox{align-items:center;gap:10px;margin:18px 0;display:flex!important}.household-empty{color:var(--text-muted);padding:28px 0;font-size:13px;line-height:1.8}.household-empty svg{color:var(--text-muted)}.household-filters,.household-policy-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0;display:grid}.household-policy-fields label:last-child{grid-column:1/-1}.household-pagination{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;font-size:12px;display:flex}.household-pagination>span{margin-right:auto}.household-policy-note{font-size:13px;line-height:1.8}.household-preview .household-actions{margin-top:16px}.household-preview li{font-size:12px;line-height:1.9}.household-recovery{font-size:13px;line-height:1.8}.household-recovery button{margin:4px 8px 4px 0}@media (width<=650px){.household-units,.household-residents,.household-policy{padding:18px}.household-filters,.household-bulk-fields,.household-policy-fields{grid-template-columns:1fr}.household-edit,.household-preview{padding:16px}.household-pagination{flex-wrap:wrap}.household-pagination>span{width:100%}}.household-usage-period{margin-top:.35rem;display:block}@media (width<=650px){.household-table{overflow:visible}.household-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.household-table table,.household-table tbody{display:block}.household-table tbody tr{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:16px 0;display:grid}.household-table tbody th{grid-column:1/-1}.household-table th,.household-table td{overflow-wrap:anywhere;border:0;min-width:0;padding:7px 0}.household-table td:before{content:attr(data-label);color:var(--text-muted);margin-bottom:7px;font-size:11px;display:block}.household-table td:last-child{grid-column:1/-1}.household-table td:last-child:before{display:none}.household-table .button{min-height:44px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f2f3ef;--canvas-muted:#e9ede5;--surface:#fff;--surface-subtle:#f7f8f5;--forest:#174d3b;--forest-deep:#10392b;--lime:#c8f149;--text:#16201c;--text-muted:#65716a;--border:#d9dfd7;--danger:#9a3021;--danger-surface:#fce8e4;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--shadow-float:0 18px 50px #10392b1a;--sidebar-width:252px}@font-face{font-family:Jakarta;src:url(/fonts/plus-jakarta-sans-400.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Jakarta;src:url(/fonts/plus-jakarta-sans-600.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Jakarta;src:url(/fonts/plus-jakarta-sans-700.ttf)format("truetype");font-weight:700;font-display:swap}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--canvas);color:var(--text);font-synthesis:none;font-family:Jakarta,ui-sans-serif,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.auth-shell,.state-shell{justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.auth-card,.state-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);width:100%;max-width:440px;padding:36px}.brand-mark{background:var(--forest);border-radius:var(--radius-md);justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.brand-mark:before{border:2px solid var(--lime);content:"";border-radius:7px;width:16px;height:16px}.eyebrow{color:var(--forest);letter-spacing:.1em;margin:28px 0 6px;font-size:11px;font-weight:800}.auth-title,.state-title{letter-spacing:-.045em;margin:0;font-size:clamp(30px,4vw,40px);line-height:1.04}.auth-copy,.state-copy{color:var(--text-muted);margin:12px 0 28px;line-height:1.55}.auth-help{margin:18px 0 0;font-size:13px}.state-icon{color:var(--forest)}.spinning{animation:.75s linear infinite spin}.form-stack{gap:18px;display:grid}.field{gap:7px;display:grid}.field label{font-size:13px;font-weight:750}.field input{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);outline:none;min-height:48px;padding:0 13px}.field input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.form-error{background:var(--danger-surface);border-radius:var(--radius-sm);color:var(--danger);margin:0;padding:10px 12px;font-size:13px;line-height:1.4}.button{border-radius:var(--radius-sm);border:0;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-size:14px;font-weight:800;transition:background .16s,color .16s,opacity .16s,transform .16s;display:inline-flex}.button:focus-visible,.sidebar-link:focus-visible,.community-option:focus-visible,.menu-toggle:focus-visible{outline-offset:2px;outline:3px solid #c8f149c7}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--forest);color:var(--surface)}.button-primary:hover:not(:disabled){background:var(--forest-deep)}.button-primary:disabled{opacity:.58}.button-secondary{background:var(--surface);border:1px solid var(--border);color:var(--forest)}.button-secondary:hover{background:var(--surface-subtle)}.button-quiet{color:var(--text-muted);background:0 0}.button-quiet:hover{background:var(--canvas-muted);color:var(--forest)}.button-danger{background:var(--danger);color:var(--surface)}.button-danger:hover:not(:disabled){background:#762419}.button-danger:disabled{opacity:.5}.button-compact{min-height:36px;padding:0 11px;font-size:12px}.loader{border:2px solid #fff6;border-right-color:#0000;border-radius:50%;width:17px;height:17px;animation:.65s linear infinite spin}.loader-forest{border-color:#174d3b4d #0000 #174d3b4d #174d3b4d;width:15px;height:15px}.icon-button{background:var(--surface);border:1px solid var(--border);color:var(--forest);border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--surface-subtle);border-color:var(--forest)}.icon-button:active:not(:disabled){transform:translateY(1px)}.icon-button:focus-visible{outline-offset:2px;outline:3px solid #c8f149c7}@keyframes spin{to{transform:rotate(1turn)}}.admin-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{background:var(--forest);color:var(--surface);flex-direction:column;height:100vh;padding:26px 16px 18px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:11px;padding:0 10px 30px;display:flex}.sidebar-brand .brand-mark{background:var(--lime);width:32px;height:32px}.sidebar-brand .brand-mark:before{border-color:var(--forest);width:12px;height:12px}.sidebar-brand strong{letter-spacing:-.01em;font-size:14px}.sidebar-brand span{color:#cfe0cf;margin-top:2px;font-size:11px;display:block}.sidebar-close{color:var(--surface);background:0 0;border:0;justify-content:center;align-items:center;width:40px;height:40px;margin-left:auto;display:none}.sidebar-close:focus-visible{outline:3px solid var(--lime);outline-offset:2px}.sidebar-backdrop{display:none}.sidebar-nav{gap:4px;display:grid}.sidebar-link{color:#dce8d4;border-radius:10px;align-items:center;gap:11px;min-height:44px;padding:0 11px;font-size:14px;font-weight:700;text-decoration:none;transition:background .16s,color .16s;display:flex}.sidebar-link:hover{color:var(--surface);background:#ffffff17}.sidebar-link.active{background:var(--lime);color:var(--forest)}.sidebar-footer{border-top:1px solid #ffffff24;margin-top:auto;padding:16px 8px 0}.sidebar-user{color:#dce8d4;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sidebar-logout{color:var(--lime);margin-top:9px;padding:0;font-size:13px}.main-shell{min-width:0}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:76px;padding:0 42px;display:flex}.topbar-context{color:var(--text-muted);font-size:13px}.topbar-context strong{color:var(--text);margin-top:2px;font-size:15px;display:block}.topbar-actions{align-items:center;gap:10px;display:flex}.role-pill{background:var(--lime);color:var(--forest);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.community-select{appearance:none;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:9px;max-width:230px;min-height:36px;padding:0 30px 0 10px;font-size:13px;font-weight:700}.menu-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--forest);width:40px;height:40px;display:none}.page{max-width:1240px;margin:0 auto;padding:48px 42px 72px}.page-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.page-header h1{letter-spacing:-.05em;margin:0;font-size:clamp(32px,4vw,46px);line-height:1}.page-header p{color:var(--text-muted);max-width:540px;margin:9px 0 0;line-height:1.5}.overview-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:20px;display:grid}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:26px}.panel-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.panel-heading h2{letter-spacing:-.02em;margin:0;font-size:17px}.panel-heading span{color:var(--text-muted);font-size:12px}.resource-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.resource-group{min-width:0}.resource-group-heading{color:var(--forest);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 10px;font-size:12px;font-weight:800;display:flex}.resource-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.resource-list li{border-bottom:1px solid var(--border);align-items:center;gap:9px;min-height:50px;display:flex}.resource-list span{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.resource-empty{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.community-mark{background:var(--forest);border-radius:var(--radius-lg);color:var(--lime);justify-content:center;align-items:center;width:98px;height:98px;display:flex}.community-summary{align-items:center;gap:19px;display:flex}.community-summary h2{letter-spacing:-.035em;margin:0;font-size:23px}.community-summary p{color:var(--text-muted);margin:5px 0 0}.summary-all-link{color:var(--forest);text-underline-offset:3px;align-items:center;gap:6px;margin-top:22px;font-size:13px;font-weight:700;display:inline-flex}.summary-links{border-top:1px solid var(--border);margin-top:24px;display:grid}.summary-links a{border-bottom:1px solid var(--border);color:var(--forest);align-items:center;gap:12px;min-height:76px;padding:12px 0;text-decoration:none;display:flex}.summary-links a:hover{color:var(--forest-deep)}.summary-links a>span{flex:1;gap:3px;display:grid}.summary-links strong{font-size:14px}.summary-links small{color:var(--text-muted);font-size:12px;line-height:1.4}.summary-links a:focus-visible,.summary-all-link:focus-visible{outline:3px solid var(--forest);outline-offset:3px}.release-confirm{color:var(--text);align-items:flex-start;gap:9px;margin-top:14px;font-size:13px;font-weight:650;line-height:1.5;display:flex}.release-confirm input{accent-color:var(--forest);flex:none;width:18px;height:18px;margin:1px 0 0}.schedule-preview-note{color:var(--text-muted);margin:12px 0 0;font-size:12px}.inline-state{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;min-height:150px;font-size:14px;display:flex}.inline-state .loader{border-color:var(--forest);border-right-color:#0000}.placeholder-panel{max-width:620px}.placeholder-icon{background:var(--lime);border-radius:var(--radius-md);color:var(--forest);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.placeholder-panel h2{letter-spacing:-.03em;margin:17px 0 7px;font-size:22px}.placeholder-panel p{color:var(--text-muted);margin:0;line-height:1.55}.community-picker{gap:10px;margin-top:24px;display:grid}.community-option{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);text-align:left;justify-content:space-between;align-items:center;min-height:60px;padding:0 17px;font-weight:750;display:flex}.community-option:hover{border-color:var(--forest)}.resources-header{margin-bottom:28px}.resources-header .button{flex:none}.resource-feedback{background:var(--danger-surface);border-radius:var(--radius-md);color:var(--danger);align-items:center;gap:12px;margin-bottom:22px;padding:15px 16px;display:flex}.resource-feedback>div{gap:2px;margin-right:auto;display:grid}.resource-feedback strong{font-size:14px}.resource-feedback span{font-size:13px;line-height:1.4}.resource-feedback .button{flex:none}.resource-skeletons{gap:15px;display:grid}.resource-skeletons div{background:linear-gradient(90deg, var(--surface-subtle), var(--surface), var(--surface-subtle));border:1px solid var(--border);border-radius:var(--radius-md);height:118px;animation:1.2s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.58}}.resource-empty-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:18px;padding:28px;display:flex}.resource-empty-panel>svg{color:var(--forest);flex:none}.resource-empty-panel div{margin-right:auto}.resource-empty-panel h2{letter-spacing:-.02em;margin:0;font-size:18px}.resource-empty-panel p{color:var(--text-muted);max-width:520px;margin:5px 0 0;font-size:14px;line-height:1.5}.resource-sections{gap:34px;display:grid}.resource-section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:13px;padding-bottom:10px;display:flex}.resource-section-heading>div{color:var(--forest);align-items:center;gap:8px;display:flex}.resource-section-heading h2{letter-spacing:-.02em;margin:0;font-size:16px}.resource-section-heading span{background:var(--canvas-muted);color:var(--text-muted);border-radius:999px;justify-content:center;align-items:center;min-width:21px;height:21px;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.resource-cards{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:10px;display:grid}.resource-search{max-width:360px;margin:0 0 22px}.resource-search span{font-size:13px;font-weight:750}.resource-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:88px minmax(0,1fr) auto;gap:17px;padding:19px;transition:border-color .16s,box-shadow .16s;display:grid;overflow:hidden}.resource-card:hover{border-color:#b7c8b9;box-shadow:0 8px 26px #10392b0f}.resource-card.is-inactive{background:var(--surface-subtle)}.resource-card-main{min-width:0}.resource-card-title{align-items:center;gap:9px;min-width:0;display:flex}.resource-card-title h3{letter-spacing:-.018em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;overflow:hidden}.resource-card-main p{color:var(--text-muted);align-items:center;gap:4px;margin:7px 0 0;font-size:12px;display:flex}.resource-card-visual,.resource-visual-choice{color:var(--forest);background:var(--canvas-muted);justify-content:center;align-items:center;display:inline-flex}.resource-card-visual{border-radius:var(--radius-sm);min-height:88px}.visual-padel{background:linear-gradient(145deg,#e0ebc3,#94b880)}.visual-tennis{background:linear-gradient(145deg,#e6d9b1,#b9c69b)}.visual-room{background:linear-gradient(145deg,#dbe8df,#a8c8ba)}.visual-gym{background:linear-gradient(145deg,#d4ded6,#9cafaa)}.visual-pool{background:linear-gradient(145deg,#d4e9e6,#9bcac8)}.visual-garden{background:linear-gradient(145deg,#e5e9cd,#abc69a)}.visual-neutral{background:linear-gradient(145deg,#e3e5de,#c5cfc4)}.resource-card-main .resource-card-description{color:var(--text);margin-top:10px;font-size:13px;line-height:1.45;display:block}.resource-card-meta{flex-wrap:wrap;gap:5px 10px;margin-top:11px;display:flex}.resource-card-meta span{color:var(--text-muted);font-size:11px}.status-pill{letter-spacing:.035em;text-transform:uppercase;border-radius:999px;flex:none;padding:5px 7px;font-size:10px;font-weight:850}.status-pill.active{color:#3f5c0a;background:#e6f3c4}.status-pill.inactive{color:#5f6862;background:#e6e9e6}.resource-card-actions{align-items:center;gap:7px;display:flex}.resource-confirm{background:var(--danger-surface);border-top:1px solid #f1c9c0;grid-column:1/-1;justify-content:space-between;gap:14px;margin:0 -19px -19px;padding:13px 19px;display:flex}.resource-confirm>div:first-child{gap:2px;display:grid}.resource-confirm strong{color:var(--danger);font-size:13px}.resource-confirm span{color:#7a4c42;font-size:12px;line-height:1.35}.resource-confirm>div:last-child{flex:none;align-items:center;gap:4px;display:flex}.resource-type-empty{background:var(--surface-subtle);border-radius:var(--radius-md);color:var(--text-muted);padding:17px;font-size:13px}.resource-dialog-backdrop{z-index:50;background:#0f21186b;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0;overflow-y:auto}.resource-dialog{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);width:100%;max-width:650px;max-height:calc(100vh - 48px);padding:28px;overflow-y:auto}.resource-dialog-header{justify-content:space-between;align-items:start;margin-bottom:24px;display:flex}.resource-dialog-header .eyebrow{margin:0 0 6px}.resource-dialog-header h2{letter-spacing:-.035em;margin:0;font-size:25px;line-height:1.1}.resource-form{gap:18px;display:grid}.resource-form .field select,.resource-form .field textarea{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);width:100%;min-height:44px;padding:10px 12px}.resource-form .field textarea{resize:vertical;line-height:1.5}.resource-form-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.resource-visual-field{border:0;margin:0;padding:0}.resource-visual-field legend{margin-bottom:9px;font-size:13px;font-weight:750}.resource-visual-field small,.resource-type-field small{color:var(--text-muted);margin-top:8px;font-size:12px;line-height:1.4;display:block}.resource-visual-options{flex-wrap:wrap;gap:8px;display:flex}.resource-visual-choice{border-radius:var(--radius-sm);border:2px solid #0000;width:58px;height:54px}.resource-visual-choice[aria-pressed=true]{border-color:var(--forest);box-shadow:0 0 0 2px var(--surface) inset}.resource-advanced{border-top:1px solid var(--border);padding-top:14px}.resource-advanced summary{color:var(--forest);cursor:pointer;font-size:13px;font-weight:750}.resource-advanced .field{margin-top:14px}.resource-advanced a{color:var(--forest);margin-top:12px;font-size:13px;display:inline-block}.field small{color:var(--text-muted);font-size:12px;line-height:1.4}.resource-type-field{border:0;gap:8px;margin:0;padding:0;display:grid}.resource-type-field legend{margin-bottom:1px;padding:0;font-size:13px;font-weight:750}.resource-type-field label{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);align-items:center;gap:9px;min-height:48px;padding:0 13px;font-size:14px;font-weight:750;transition:border-color .16s,background .16s,color .16s;display:flex}.resource-type-field label.selected{color:var(--forest);background:#f3f9e4;border-color:#a6c56b}.resource-type-field input{accent-color:var(--forest);width:16px;height:16px;margin:0 1px 0 0}.active-toggle{background:var(--surface-subtle);border-radius:var(--radius-sm);align-items:start;gap:10px;padding:13px;display:flex}.active-toggle input{accent-color:var(--forest);width:17px;height:17px;margin:1px 0 0}.active-toggle span{gap:3px;display:grid}.active-toggle strong{font-size:13px}.active-toggle small{color:var(--text-muted);font-size:12px;line-height:1.35}.resource-dialog-actions{justify-content:flex-end;gap:9px;margin-top:3px;display:flex}.settings-form{gap:18px;max-width:760px;display:grid}.settings-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:27px}.rules-page{max-width:980px}.rules-status{background:var(--forest);border-radius:var(--radius-lg);color:#f5f1e5;align-items:center;gap:18px;padding:23px 27px;display:flex}.rules-status strong,.rules-status small{display:block}.rules-status strong{font-size:17px}.rules-status small{color:#cbd8cb;margin-top:5px}.rules-toolbar,.rules-actions{flex-wrap:wrap;align-items:center;gap:11px;margin:18px 0;display:flex}.rules-actions{border-top:1px solid var(--border);padding-top:20px}.rules-actions small{color:var(--text-muted);width:100%}.rules-editor{gap:16px;display:grid}.rules-editor .settings-section{gap:17px;display:grid}.rules-editor h2,.rules-history h2{margin:0;font-size:18px}.rules-editor textarea{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);font:inherit;resize:vertical;border-radius:10px;width:100%;min-height:110px;padding:13px;line-height:1.6}.rules-editor .field textarea{min-height:180px}.rules-editor textarea:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.rules-section-head{justify-content:space-between;align-items:center;display:flex}.rules-section-head div{gap:5px;display:flex}.rules-section-head button{background:var(--surface-subtle);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.rules-section-head button:disabled{opacity:.35}.rules-preview{background:var(--surface);border-radius:var(--radius-lg);white-space:pre-wrap;padding:clamp(22px,5vw,48px);line-height:1.8}.rules-preview>p{font-size:18px}.rules-preview section{border-top:1px solid var(--border);margin-top:26px;padding-top:24px}.rules-preview small{color:var(--forest);letter-spacing:.1em;font-weight:800}.rules-preview h2{margin:7px 0;font-size:24px}.rules-history{gap:12px;margin-top:24px;display:grid}.rules-history>div{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding-top:12px;display:flex}@media (width<=650px){.rules-history>div{flex-direction:column;align-items:flex-start}}.settings-section>header{align-items:start;gap:13px;margin-bottom:25px;display:flex}.settings-section-icon{background:var(--surface-subtle);color:var(--forest);border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.settings-section h2{letter-spacing:-.023em;margin:1px 0 0;font-size:18px}.settings-section header p{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.45}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.timezone-notice{border-left:3px solid var(--lime);color:var(--forest);background:#f2f7e7;align-items:start;gap:10px;margin:21px 0 0;padding:12px 13px;display:flex}.timezone-notice svg{flex:none;margin-top:1px}.timezone-notice p{margin:0;font-size:13px;line-height:1.45}.settings-form-error,.settings-success{margin:0}.settings-success{color:var(--forest);align-items:center;gap:7px;padding:0 2px;font-size:13px;font-weight:750;display:flex}.settings-success svg{color:#5e8513}.settings-actions{justify-content:flex-end;padding-top:4px;display:flex}.settings-skeletons{gap:18px;max-width:760px;display:grid}.settings-skeletons div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);height:238px;animation:1.2s ease-in-out infinite alternate pulse}.invitations-header{margin-bottom:28px}.invitations-header .button{flex:none}.invitation-action-error{margin-bottom:18px}.invitation-filters{gap:6px;margin:0 0 16px;padding-bottom:2px;display:flex;overflow-x:auto}.invitation-filters button{color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;min-height:34px;padding:0 12px;font-size:12px;font-weight:800}.invitation-filters button:hover{background:var(--canvas-muted);color:var(--forest)}.invitation-filters button.active{background:var(--forest);color:var(--surface)}.invitation-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.invitation-row{grid-template-columns:minmax(0,1fr) auto auto;gap:14px 24px;padding:20px 23px;display:grid}.invitation-row+.invitation-row{border-top:1px solid var(--border)}.invitation-main{align-items:start;gap:11px;min-width:0;display:flex}.invitation-main>div{min-width:0}.invitation-main h2{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.invitation-main p{color:var(--text-muted);margin:5px 0 0;font-size:12px;line-height:1.4}.invitation-status{letter-spacing:.035em;text-transform:uppercase;border-radius:999px;flex:none;padding:5px 7px;font-size:10px;font-weight:850}.invitation-status.pending{color:#3f5c0a;background:#e6f3c4}.invitation-status.used{color:#3d6251;background:#e8efeb}.invitation-status.expired{color:#7a5a17;background:#f6ead0}.invitation-status.revoked{color:#8b382b;background:#f5e2dd}.invitation-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px 13px;font-size:12px;display:flex}.invitation-actions{justify-content:flex-end;align-items:center;display:flex}.invitation-confirm{background:var(--danger-surface);border-top:1px solid #f1c9c0;grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;margin:0 -23px -20px;padding:13px 23px;display:flex}.invitation-confirm>div:first-child{gap:2px;display:grid}.invitation-confirm strong{color:var(--danger);font-size:13px}.invitation-confirm span{color:#7a4c42;font-size:12px;line-height:1.35}.invitation-confirm>div:last-child{flex:none;align-items:center;gap:4px;display:flex}.invitation-empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:18px;padding:28px;display:flex}.invitation-empty>svg{color:var(--forest);flex:none}.invitation-empty div{margin-right:auto}.invitation-empty h2{letter-spacing:-.02em;margin:0;font-size:18px}.invitation-empty p{color:var(--text-muted);max-width:520px;margin:5px 0 0;font-size:14px;line-height:1.5}.invitation-skeletons{border-radius:var(--radius-lg);gap:1px;display:grid;overflow:hidden}.invitation-skeletons div{background:var(--surface);border:1px solid var(--border);height:92px;animation:1.2s ease-in-out infinite alternate pulse}.invitation-dialog-copy{color:var(--text-muted);margin:-6px 0 22px;font-size:14px;line-height:1.5}.invitation-role-field{border:0;gap:8px;margin:0;padding:0;display:grid}.invitation-role-field legend{margin-bottom:1px;padding:0;font-size:13px;font-weight:750}.invitation-role-field label{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);align-items:start;gap:9px;min-height:59px;padding:11px 13px;font-size:14px;transition:border-color .16s,background .16s,color .16s;display:flex}.invitation-role-field label.selected{color:var(--forest);background:#f3f9e4;border-color:#a6c56b}.invitation-role-field input{accent-color:var(--forest);width:16px;height:16px;margin:2px 1px 0 0}.invitation-role-field span{gap:3px;display:grid}.invitation-role-field strong{font-size:13px}.invitation-role-field small{color:var(--text-muted);font-size:12px;line-height:1.3}.invitation-created-mark{color:#527511;background:#e6f3c4;border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;margin:-5px 0 17px;display:flex}.invitation-security-copy{background:var(--surface-subtle);color:var(--forest);align-items:center;gap:7px;margin:0 0 16px;padding:11px 12px;font-size:12px;font-weight:700;line-height:1.4;display:flex}.invitation-security-copy svg{flex:none}.invitation-link{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text-muted);word-break:break-all;max-height:90px;margin-bottom:14px;padding:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.45;overflow:auto}.members-header{margin-bottom:28px}.member-feedback{margin-bottom:18px}.member-success{color:var(--forest);align-items:center;gap:7px;margin:0 0 17px;font-size:13px;font-weight:750;display:flex}.member-success svg{color:#5e8513}.member-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.member-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px 24px;padding:20px 23px;display:grid}.member-row+.member-row{border-top:1px solid var(--border)}.member-identity{align-items:center;gap:12px;min-width:0;display:flex}.member-avatar{background:var(--canvas-muted);border:1px solid var(--border);color:var(--forest);border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:13px;font-weight:850;display:inline-flex;overflow:hidden}.member-avatar img{object-fit:cover;width:100%;height:100%}.member-identity>div:last-child{min-width:0}.member-identity h2{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.member-identity p{color:var(--text-muted);margin:5px 0 0;font-size:12px;line-height:1.4}.member-level{color:var(--forest);font-weight:800}.member-role-pill{letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:10px;font-weight:850;display:inline-flex}.member-role-pill.admin{color:#3f5c0a;background:#e6f3c4}.member-role-pill.member{color:#3d6251;background:#e8efeb}.member-actions{justify-content:flex-end;min-width:108px;display:flex}.member-actions>div{place-items:end;gap:5px;display:grid}.member-remove-button{color:var(--danger);background:0 0;border:0;min-height:26px;padding:0 4px;font-size:11px;font-weight:800}.member-remove-button:hover:not(:disabled){text-decoration:underline}.member-remove-button:focus-visible{outline-offset:2px;outline:3px solid #c8f149c7}.member-remove-button:disabled{color:#be8c84}.member-confirm{background:var(--danger-surface);border-top:1px solid #f1c9c0;grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;margin:0 -23px -20px;padding:13px 23px;display:flex}.member-confirm>div:first-child{gap:2px;display:grid}.member-confirm strong{color:var(--danger);font-size:13px}.member-confirm span{color:#7a4c42;font-size:12px;line-height:1.35}.member-confirm>div:last-child{flex:none;align-items:center;gap:4px;display:flex}.member-empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:18px;padding:28px;display:flex}.member-empty>svg{color:var(--forest);flex:none}.member-empty h2{letter-spacing:-.02em;margin:0;font-size:18px}.member-empty p{color:var(--text-muted);margin:5px 0 0;font-size:14px;line-height:1.5}.member-skeletons{border-radius:var(--radius-lg);gap:1px;display:grid;overflow:hidden}.member-skeletons div{background:var(--surface);border:1px solid var(--border);height:84px;animation:1.2s ease-in-out infinite alternate pulse}.schedules-stack{gap:22px;max-width:920px;display:grid}.community-padel-policy{gap:16px;display:grid}.community-padel-policy p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}.community-padel-policy>.button{justify-self:start}.community-padel-policy>fieldset{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.community-padel-policy>fieldset>legend{margin-bottom:12px;font-size:13px;font-weight:750}.community-padel-policy .booking-mode-choices{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.community-padel-policy>fieldset>label{gap:8px;max-width:420px;font-size:13px;display:grid}.community-padel-policy select{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;min-height:44px;padding:8px}.community-padel-policy small{color:var(--text-muted);line-height:1.4}.community-padel-policy .sessions-preview h3{margin:0;font-size:14px}.community-padel-policy .sessions-preview ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.community-padel-policy .sessions-preview li{overflow-wrap:anywhere;gap:5px;font-size:13px;line-height:1.5;display:grid}.community-padel-policy .sessions-preview label{align-items:start;gap:10px;font-size:13px;line-height:1.5;display:flex}.community-padel-policy input[type=checkbox]{accent-color:var(--forest);flex:none;width:18px;height:18px;margin-top:2px}.booking-rules-card,.resource-rules-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:27px}.booking-rules-card>header,.resource-rules-heading>div{align-items:start;gap:13px;display:flex}.booking-rules-card h2,.resource-rules-card h2{letter-spacing:-.023em;margin:1px 0 0;font-size:18px}.booking-rules-card header p,.resource-rules-heading p{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.45}.booking-rules-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:25px;display:grid}.number-rule-field{gap:7px;display:grid}.number-rule-field>span{font-size:13px;font-weight:750}.number-rule-field>div{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;min-height:48px;display:flex;overflow:hidden}.number-rule-field input{color:var(--text);background:0 0;border:0;outline:none;width:100%;min-width:0;min-height:46px;padding:0 8px 0 13px;font-size:16px;font-weight:800}.number-rule-field>div:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.number-rule-field small{border-left:1px solid var(--border);color:var(--text-muted);white-space:nowrap;padding:5px 11px;font-size:11px;font-weight:700}.schedule-card-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;display:flex}.schedule-dirty{color:var(--text-muted);margin-right:auto;font-size:12px;font-weight:750}.resource-rules-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.resource-rule-select select{appearance:none;background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--forest);min-height:42px;padding:0 33px 0 12px;font-size:13px;font-weight:800}.inactive-resource-note{color:var(--text-muted);margin:18px 0 0;font-size:12px;line-height:1.4}.resource-rules-form{gap:23px;margin-top:25px;display:grid}.resource-rule-context{background:var(--surface-subtle);align-items:center;gap:10px;padding:12px;display:flex}.resource-rule-icon{background:var(--forest);color:var(--lime);border-radius:10px;justify-content:center;align-items:center;width:35px;height:35px;display:inline-flex}.resource-rule-context div{gap:2px;display:grid}.resource-rule-context strong{font-size:14px}.resource-rule-context span{color:var(--text-muted);font-size:12px}.rule-mode{border:0;gap:8px;margin:0;padding:0;display:grid}.rule-mode legend{margin-bottom:1px;padding:0;font-size:13px;font-weight:750}.rule-mode label{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);align-items:start;gap:9px;min-height:59px;padding:11px 13px;font-size:14px;transition:border-color .16s,background .16s,color .16s;display:flex}.rule-mode label.selected{color:var(--forest);background:#f3f9e4;border-color:#a6c56b}.rule-mode input{accent-color:var(--forest);width:16px;height:16px;margin:2px 1px 0 0}.rule-mode span{gap:3px;display:grid}.rule-mode strong{font-size:13px}.rule-mode small{color:var(--text-muted);font-size:12px;line-height:1.3}.weekday-list{border-top:1px solid var(--border)}.weekday-row{grid-template-columns:112px minmax(0,1fr) auto;gap:12px;padding:15px 0;display:grid}.weekday-row+.weekday-row{border-top:1px solid var(--border)}.weekday-label h3{letter-spacing:-.01em;margin:0;font-size:14px}.weekday-label span{color:var(--text-muted);margin-top:3px;font-size:11px}.weekday-intervals{gap:7px;display:grid}.opening-interval{align-items:center;gap:7px;display:flex}.opening-interval>span{color:var(--text-muted);font-size:13px}.opening-interval input{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;min-height:34px;padding:0 7px}.opening-interval input:focus{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.midnight-button,.schedule-add-interval{color:var(--forest);background:0 0;border:0;min-height:30px;padding:0 5px;font-size:11px;font-weight:800}.midnight-button{border:1px solid var(--border);border-radius:8px}.midnight-button.active{background:var(--forest);border-color:var(--forest);color:var(--surface)}.schedule-remove-interval{flex:none;width:31px;height:31px}.schedule-add-interval{color:var(--forest);white-space:nowrap;align-self:start;text-decoration:underline}.always-open-note{border-left:3px solid var(--lime);color:var(--forest);background:#f2f7e7;margin:0;padding:12px 13px;font-size:13px;line-height:1.45}.durations-section{border-top:1px solid var(--border);gap:15px;padding-top:22px;display:grid}.durations-section h3{margin:0;font-size:15px}.durations-section>div>p{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.45}.duration-chips{flex-wrap:wrap;gap:7px;display:flex}.booking-mode-section .booking-mode{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-mode-section h4,.sessions-length h4{margin:0 0 8px;font-size:13px}.booking-mode-durations{gap:12px;display:grid}.booking-mode-durations h4{margin:4px 0 0}.sessions-editor{gap:16px;display:grid}.session-chip{background:var(--surface);border:1px solid var(--border);color:var(--forest);cursor:pointer;font:inherit;border-radius:999px;min-height:36px;padding:0 16px;font-size:13px;font-weight:800;transition:background .16s,border-color .16s,color .16s}.session-chip:hover{border-color:#a6c56b}.session-chip.selected{background:var(--forest);border-color:var(--forest);color:#fff}.sessions-preview{background:var(--surface-subtle);border-radius:var(--radius-sm);gap:12px;padding:16px;transition:opacity .16s;display:grid}.sessions-preview.is-stale{opacity:.6}.rules-review h4,.rules-review p{margin:0}.rules-review{line-height:1.5}.rules-affected-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rules-affected-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--forest);font-variant-numeric:tabular-nums;padding:9px 12px;font-size:13px}.rules-review label{align-items:flex-start;gap:9px;display:flex}.sessions-preview>header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sessions-preview>header h4{margin:0;font-size:14px}.sessions-preview>header span{color:var(--text-muted);font-size:12px}.session-list{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.session-list li{background:var(--surface);border:1px solid var(--border);color:var(--forest);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:750}.sessions-note{color:var(--text-muted);margin:0;font-size:12px}.durations-editor,.duration-choices{gap:10px;display:grid}.flexible-summary{color:var(--forest);margin:0;font-size:14px;font-weight:800}.booking-rules-stack{gap:20px;display:grid}.usage-limits-card{gap:18px;display:grid}.usage-type-tabs{justify-self:start}.usage-limit-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.usage-limit-card{border:1px solid var(--border);border-radius:var(--radius-sm);gap:10px;min-width:0;margin:0;padding:14px;display:grid}.usage-limit-card>legend{padding:0 4px;font-size:14px;font-weight:800}.usage-limit-card .rule-mode label{min-height:52px}.usage-limit-value-group{gap:10px;display:grid}.usage-limit-value{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.usage-stepper{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;display:inline-flex;overflow:hidden}.usage-stepper:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.usage-stepper button{color:var(--forest);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:38px;height:40px;display:inline-flex}.usage-stepper button:disabled{color:var(--text-muted);cursor:default;opacity:.5}.usage-stepper input{color:var(--text);font:inherit;text-align:center;background:0 0;border:0;outline:none;width:70px;height:40px;font-size:16px;font-weight:800}.usage-preview{gap:8px}.schedule-empty{background:var(--surface-subtle);align-items:center;gap:13px;margin-top:24px;padding:19px;display:flex}.schedule-empty svg{color:var(--forest);flex:none}.schedule-empty h3{margin:0;font-size:15px}.schedule-empty p{color:var(--text-muted);margin:4px 0 0;font-size:13px;line-height:1.4}.schedule-skeletons{gap:20px;max-width:920px;display:grid}.schedule-skeletons div,.resource-rules-skeleton div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);animation:1.2s ease-in-out infinite alternate pulse}.schedule-skeletons div:first-child{height:260px}.schedule-skeletons div:last-child{height:520px}.resource-rules-skeleton{gap:9px;margin-top:24px;display:grid}.resource-rules-skeleton div{border-radius:var(--radius-sm);height:53px}.schedule-discard-dialog{max-width:480px}.admin-bookings-section{border-top:1px solid var(--border);margin-top:14px;padding-top:42px}.admin-bookings-heading{margin-bottom:20px}.admin-bookings-heading .eyebrow{margin:0 0 7px}.admin-bookings-heading h2{letter-spacing:-.035em;margin:0;font-size:25px}.admin-bookings-heading p{color:var(--text-muted);margin:7px 0 0;font-size:14px;line-height:1.45}.booking-date-bar{background:var(--surface);border:1px solid var(--border);align-items:center;gap:9px;padding:10px;display:flex}.booking-date-bar>div{gap:2px;min-width:0;margin-right:auto;display:grid}.booking-date-bar>div span{color:var(--forest);letter-spacing:-.015em;font-size:15px;font-weight:850}.booking-date-bar>div small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.booking-date-input{background:var(--surface-subtle);border:1px solid var(--border);color:var(--forest);align-items:center;gap:7px;min-height:36px;padding:0 9px;display:flex}.booking-date-input input{color:var(--text);background:0 0;border:0;outline:none;min-width:126px}.booking-filters{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.booking-filters label{align-items:center;gap:7px;display:flex}.booking-filters label>span{color:var(--text-muted);font-size:12px;font-weight:750}.booking-filters select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;min-height:36px;padding:0 9px;font-size:13px}.booking-filters select:focus,.booking-date-input:focus-within{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.booking-feedback{margin:14px 0}.booking-list-loading{background:var(--surface-subtle);color:var(--text-muted);justify-content:center;align-items:center;gap:9px;min-height:82px;font-size:13px;display:flex}.booking-empty{background:var(--surface-subtle);color:var(--text-muted);align-items:center;gap:13px;min-height:108px;padding:19px;display:flex}.booking-empty svg{color:var(--forest);flex:none}.booking-empty h3{color:var(--text);margin:0;font-size:15px}.booking-empty p{margin:4px 0 0;font-size:13px;line-height:1.4}.booking-cards{gap:9px;display:grid}.booking-card{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;grid-template-columns:92px minmax(0,1fr) auto auto;align-items:center;gap:15px;width:100%;padding:16px 18px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.booking-card:hover{border-color:#a6c56b;transform:translateY(-1px);box-shadow:0 8px 26px #10392b0f}.booking-card:focus-visible{outline-offset:2px;outline:3px solid #c8f149c7}.booking-card.is-cancelled{background:var(--surface-subtle);opacity:.78}.booking-time{border-right:1px solid var(--border);gap:3px;display:grid}.booking-time strong{color:var(--forest);letter-spacing:-.025em;font-size:18px}.booking-time span{color:var(--text-muted);font-size:11px}.booking-card-main{min-width:0}.booking-card-main>div{align-items:center;gap:9px;min-width:0;display:flex}.booking-card-main h3{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.booking-card-main p{color:var(--text-muted);margin:5px 0 0;font-size:12px}.booking-card-main .booking-cancel-reason{color:var(--danger);margin:3px 0 0;font-size:11px;font-weight:750}.open-match-chip{color:#496b0d;white-space:nowrap;background:#f3f9e4;flex:none;padding:5px 7px;font-size:10px;font-weight:850;display:inline-flex}.booking-card-participants{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:7px;min-width:114px;font-size:11px;display:flex}.booking-avatar-stack{padding-left:4px;display:flex}.booking-avatar{background:var(--canvas-muted);border:2px solid var(--surface);color:var(--forest);border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;margin-left:-4px;font-size:10px;font-weight:850;display:inline-flex;overflow:hidden}.booking-avatar img{object-fit:cover;width:100%;height:100%}.booking-avatar-stack>span:last-child{background:var(--forest);border:2px solid var(--surface);color:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:-4px;font-size:9px;font-weight:850;display:inline-flex}.booking-status{letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:850}.booking-status.confirmed{color:#3f5c0a;background:#e6f3c4}.booking-status.cancelled{color:#5f6862;background:#e6e9e6}.booking-detail-dialog{max-width:580px}.booking-detail-overview{background:var(--surface-subtle);gap:9px;padding:14px;display:grid}.booking-detail-overview>div{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.booking-detail-overview svg{color:var(--forest);flex:none}.booking-detail-overview .booking-status{justify-self:start}.booking-detail-section{border-top:1px solid var(--border);padding:19px 0}.booking-detail-section h3{align-items:center;margin:0 0 11px;font-size:14px;display:flex}.booking-detail-section h3 span{background:var(--canvas-muted);color:var(--text-muted);border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:6px;padding:0 5px;font-size:10px;display:inline-flex}.booking-detail-people{gap:8px;display:grid}.booking-person{align-items:center;gap:9px;display:flex}.booking-person .booking-avatar{border-color:var(--surface);width:34px;height:34px;margin:0}.booking-person div{gap:2px;display:grid}.booking-person strong{font-size:13px}.booking-person span{color:var(--text-muted);font-size:11px}.booking-detail-muted,.open-match-detail p,.booking-cancelled-at{color:var(--text-muted);margin:0;font-size:13px;line-height:1.45}.open-match-detail p{color:var(--forest);font-weight:750}.booking-cancelled-at{background:var(--surface-subtle);margin:0;padding:11px 12px}.booking-detail-actions{justify-content:flex-end;margin-top:4px;display:flex}.booking-cancel-confirm{background:var(--danger-surface);gap:12px;width:100%;padding:14px;display:grid}.booking-cancel-confirm p{gap:3px;margin:0;display:grid}.booking-cancel-confirm strong{color:var(--danger);font-size:13px}.booking-cancel-confirm span{color:#7a4c42;font-size:12px;line-height:1.4}.booking-cancel-confirm>div{justify-content:flex-end;gap:7px;display:flex}.bookings-header{margin-bottom:22px}.subnav{border-bottom:1px solid var(--border);gap:4px;margin-bottom:26px;display:flex;overflow-x:auto}.subnav-link{color:var(--text-muted);border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:10px 12px 12px;font-size:14px;font-weight:750;text-decoration:none;transition:color .16s,border-color .16s}.subnav-link:hover{color:var(--forest)}.subnav-link.active{border-bottom-color:var(--forest);color:var(--forest)}.subnav-link:focus-visible{outline-offset:2px;outline:3px solid #c8f149c7}.bookings-card{max-width:920px}.booking-rules-fields.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.bookings-list-page .admin-bookings-section{border-top:0;margin-top:0;padding-top:0}.bookings-list-page .admin-bookings-heading .eyebrow{display:none}.release-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.95fr);align-items:start;gap:22px;max-width:1140px;display:grid}.release-strategies{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:24px 0 0;padding:0;display:grid}.release-strategies label{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;align-items:start;gap:11px;padding:14px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex;position:relative}.release-strategies label:hover{border-color:#b7c8b9}.release-strategies label.selected{color:var(--forest);background:#f3f9e4;border-color:#a6c56b;box-shadow:inset 0 0 0 1px #a6c56b}.release-strategies input{opacity:0;width:1px;height:1px;position:absolute}.release-strategies label:focus-within{outline-offset:2px;outline:3px solid #c8f149c7}.release-strategy-icon{background:var(--surface-subtle);color:var(--forest);border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.release-strategies label.selected .release-strategy-icon{background:var(--forest);color:var(--lime)}.release-strategies label>span:last-child{gap:3px;display:grid}.release-strategies strong{color:var(--text);font-size:14px}.release-strategies small{font-size:12px;line-height:1.35}.release-sentence{background:var(--surface-subtle);border-radius:var(--radius-md);gap:10px;margin-top:18px;padding:18px;display:grid}.release-sentence p{color:var(--text);margin:0;font-size:16px;font-weight:650;line-height:2.3}.inline-control{background:var(--surface);border:1px solid var(--border);color:var(--forest);vertical-align:baseline;border-radius:9px;outline:none;min-height:38px;margin:0 2px;padding:0 9px;font-size:15px;font-weight:800}.inline-control:focus{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.inline-number{text-align:center;width:76px}.release-hint{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;line-height:1.4;display:flex}.release-hint svg{color:var(--forest);flex:none}.release-card .form-error,.release-card .settings-success{margin-top:14px}.release-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:15px;padding:24px;transition:opacity .16s;display:grid;position:sticky;top:20px}.release-preview.is-stale{opacity:.6}.release-preview>header{gap:3px;display:grid}.release-preview h3{letter-spacing:-.02em;margin:0;font-size:16px}.release-preview>header span{color:var(--text-muted);font-size:11px}.release-now{margin:0;font-size:15px;line-height:1.45}.release-now strong{color:var(--forest)}.release-next{color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}.release-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:4px 0 0;padding:0;list-style:none;display:grid}.release-days li{border-radius:10px;place-items:center;gap:1px;min-height:54px;padding:6px 2px;display:grid;position:relative}.release-days li span:first-child{text-transform:uppercase;font-size:10px;font-weight:750}.release-days li strong{letter-spacing:-.02em;font-size:16px}.release-days li.open{color:var(--forest);background:#e6f3c4}.release-days li.closed{background:var(--surface-subtle);border:1px dashed var(--border);color:#9aa49d}.release-legend{gap:14px;display:flex}.release-legend span{color:var(--text-muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.release-legend span:before{content:"";border-radius:4px;width:10px;height:10px}.release-legend .open:before{background:#e6f3c4;border:1px solid #a6c56b}.release-legend .closed:before{background:var(--surface-subtle);border:1px dashed #b9c1ba}.release-upcoming h4{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 7px;font-size:11px}.release-upcoming ul{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.release-upcoming li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:10px;padding:9px 0;font-size:13px;display:flex}.release-upcoming li strong{color:var(--forest)}.release-upcoming li span{color:var(--text-muted);text-align:right;font-size:12px}.release-impact{color:#6f4f12;background:#fbf3e2;border-left:3px solid #d9a441;align-items:start;gap:9px;margin:0;padding:11px 12px;font-size:13px;line-height:1.45;display:flex}.release-impact svg{flex:none;margin-top:1px}.release-impact.neutral{background:var(--surface-subtle);border-left-color:var(--border);color:var(--text-muted)}.release-preview-skeleton{gap:9px;display:grid}.release-preview-skeleton div{background:var(--surface-subtle);border-radius:var(--radius-sm);height:46px;animation:1.2s ease-in-out infinite alternate pulse}.blocks-card{max-width:1040px}.blocks-heading{align-items:start;gap:13px;display:flex}.blocks-heading>div:nth-child(2){margin-right:auto}.blocks-heading .button{flex:none}.blocks-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 14px;display:flex}.blocks-toolbar .invitation-filters{margin:0}.blocks-filter{align-items:center;gap:8px;display:flex}.blocks-filter span{color:var(--text-muted);font-size:12px;font-weight:750}.blocks-filter select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;min-height:36px;padding:0 9px;font-size:13px}.blocks-card .settings-success,.blocks-card .form-error{margin:0 0 12px}.blocks-message{align-items:start;gap:2px;display:grid}.blocks-message span{color:var(--text-muted);font-size:12px;font-weight:600}.block-cancel-confirm{background:var(--danger-surface);border-left:3px solid var(--danger);gap:9px;padding:11px 12px;display:grid}.block-cancel-confirm p{color:var(--danger);margin:0;font-size:13px;font-weight:750}.block-cancel-confirm label{color:#7a4c42;cursor:pointer;align-items:start;gap:8px;font-size:13px;line-height:1.4;display:flex}.block-cancel-confirm input{accent-color:var(--danger);flex:none;width:16px;height:16px;margin:1px 0 0}.block-list{gap:9px;display:grid}.block-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:132px minmax(0,1fr) auto;align-items:start;gap:16px;padding:16px 18px;display:grid}.block-item.is-pending{box-shadow:0 0 0 3px var(--danger-surface);border-color:#f1c9c0}.block-when{border-right:1px solid var(--border);gap:3px;padding-right:12px;display:grid}.block-when strong{color:var(--forest);letter-spacing:-.015em;font-size:15px}.block-when span{color:var(--text-muted);font-size:12px;font-weight:700}.block-when em{background:var(--lime);color:var(--forest);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;justify-self:start;margin-top:3px;padding:3px 7px;font-size:10px;font-style:normal;font-weight:850}.block-main{gap:7px;min-width:0;display:grid}.block-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.block-title h3{letter-spacing:-.015em;margin:0;font-size:15px}.block-kind{letter-spacing:.035em;text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:850}.block-kind.kind-maintenance{color:#7a5410;background:#fbf0d9}.block-kind.kind-event{color:#3f5c0a;background:#e6f3c4}.block-kind.kind-closure{background:var(--danger-surface);color:var(--danger)}.block-kind.kind-other{color:#3d6251;background:#e8efeb}.block-resources{flex-wrap:wrap;gap:6px;display:flex}.block-resource{background:var(--surface-subtle);border:1px solid var(--border);color:var(--forest);border-radius:999px;align-items:center;gap:5px;min-height:26px;padding:0 9px;font-size:12px;font-weight:750;display:inline-flex}.block-resource button{color:var(--text-muted);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;margin-right:-5px;padding:0;display:inline-flex}.block-resource button:hover{background:var(--canvas-muted);color:var(--danger)}.block-note{background:var(--surface-subtle);color:var(--text-muted);margin:0;padding:7px 9px;font-size:12px;line-height:1.45}.block-meta{color:var(--text-muted);margin:0;font-size:11px}.drawer-backdrop{z-index:50;background:#0f21186b;justify-content:flex-end;display:flex;position:fixed;inset:0}.block-drawer{background:var(--surface);box-shadow:var(--shadow-float);grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-width:520px;height:100vh;display:grid}.block-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:start;padding:22px 24px 18px;display:flex}.block-drawer-header .eyebrow{margin:0 0 6px}.block-drawer-header h2{letter-spacing:-.03em;margin:0;font-size:22px}.block-drawer-body{align-content:start;gap:4px;padding:6px 24px 24px;display:grid;overflow-y:auto}.block-drawer-footer{border-top:1px solid var(--border);padding:14px 24px max(14px, env(safe-area-inset-bottom));justify-content:flex-end;gap:9px;display:flex}.block-step{border-bottom:1px solid var(--border);gap:11px;padding:18px 0;display:grid}.block-step:last-child{border-bottom:0}.block-step h3{letter-spacing:-.01em;margin:0;font-size:14px}.block-checks{border:0;flex-wrap:wrap;gap:7px;margin:0;padding:0;display:flex}.block-checks legend{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:7px;padding:0;font-size:11px;font-weight:800}.block-check{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:7px;min-height:36px;padding:0 12px 0 10px;font-size:13px;font-weight:700;display:inline-flex}.block-check:has(input:checked){color:var(--forest);background:#f3f9e4;border-color:#a6c56b}.block-check.all{border-style:dashed}.block-check input{accent-color:var(--forest);width:15px;height:15px;margin:0}.block-modes{background:var(--surface-subtle);border-radius:var(--radius-sm);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.block-modes.kinds{grid-template-columns:repeat(4,minmax(0,1fr))}.block-modes button{color:var(--text-muted);background:0 0;border:0;border-radius:8px;min-height:36px;font-size:13px;font-weight:750}.block-modes button.active{background:var(--surface);color:var(--forest);box-shadow:0 1px 3px #10392b1f}.block-modes button:focus-visible{outline-offset:1px;outline:3px solid #c8f149c7}.block-when-fields{flex-wrap:wrap;gap:10px;display:flex}.block-when-fields label,.block-text{gap:5px;display:grid}.block-when-fields span,.block-text>span{color:var(--text);justify-content:space-between;align-items:baseline;gap:6px;font-size:12px;font-weight:750;display:flex}.block-text small{color:var(--text-muted);font-size:11px;font-weight:600}.block-when-fields input,.block-when-fields select,.block-text input,.block-text textarea{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:9px;outline:none;min-height:40px;padding:0 10px;font-size:14px}.block-text textarea{resize:vertical;min-height:70px;padding:9px 10px}.block-when-fields input:focus,.block-when-fields select:focus,.block-text input:focus,.block-text textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.block-hint{color:var(--text-muted);margin:0;font-size:12px;line-height:1.45}.block-preview{gap:11px;display:grid}.block-preview-sentence{color:var(--forest);margin:0;font-size:15px;font-weight:750;line-height:1.45}.block-preview .settings-success{padding:0}.block-conflicts{background:#fbf3e2;border-left:3px solid #d9a441;gap:8px;padding:11px 12px;display:grid}.block-conflicts>p:first-child{color:#6f4f12;align-items:center;gap:7px;margin:0;font-size:13px;display:flex}.block-conflicts ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.block-conflicts li{gap:1px;font-size:12px;display:grid}.block-conflicts li strong{color:var(--text)}.block-conflicts li span{color:var(--text-muted)}.special-schedules{gap:18px;display:grid}.special-schedules .settings-success,.special-schedules .form-error{margin:0}.special-schedules .blocks-heading p{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.45}.block-step .schedule-add-interval{justify-self:start}.resource-dialog>.block-conflicts{margin-bottom:18px}.special-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.special-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:132px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 18px;display:grid}.special-main{gap:3px;min-width:0;display:grid}.special-main strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.015em;font-size:15px}.special-main span{color:var(--text-muted);font-size:12px;font-weight:650}.special-actions{gap:7px;display:flex}.special-copy{color:var(--forest);background:#f3f9e4;border-left:3px solid #a6c56b;margin:14px 0 0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.45}.special-intervals{gap:9px;display:grid}.special-interval{align-items:end;gap:10px;display:flex}.special-interval label{flex:1 1 0;gap:5px;min-width:0;display:grid}.special-interval span{color:var(--text);font-size:12px;font-weight:750}.special-interval select{background:var(--surface-subtle);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:9px;outline:none;min-height:40px;padding:0 10px;font-size:14px}.special-interval select:focus{border-color:var(--forest);box-shadow:0 0 0 3px #174d3b1f}.special-interval .icon-button{flex:none;margin-bottom:2px}.special-optional{color:var(--text-muted);font-size:11px;font-weight:650}@media (width<=900px){.admin-layout,.release-layout{grid-template-columns:1fr}.release-preview{position:static}.sidebar-backdrop{z-index:19;background:#0c20168c;border:0;width:100%;display:block;position:fixed;inset:0}.sidebar{box-shadow:var(--shadow-float);visibility:hidden;z-index:20;width:86vw;max-width:286px;height:100vh;transition:transform .2s;position:fixed;left:0;transform:translate(-105%)}.sidebar.open{visibility:visible;transform:translate(0)}.sidebar-close{display:inline-flex}.menu-toggle{place-items:center;display:inline-grid}.topbar{padding:0 24px}.page{padding:36px 24px 64px}}@media (width<=620px){.topbar{min-height:66px;padding:0 16px}.topbar-context{display:none}.page{padding:30px 16px 52px}.page-header{flex-direction:column;align-items:start;gap:12px;margin-bottom:24px}.overview-grid,.resource-columns{grid-template-columns:1fr}.panel{padding:20px}.auth-shell,.state-shell{padding:16px}.auth-card,.state-card{padding:28px 22px}.resources-header .button{width:100%}.resource-feedback{flex-wrap:wrap;align-items:start}.resource-feedback .button{margin-left:31px}.resource-empty-panel{flex-wrap:wrap;align-items:start}.resource-empty-panel .button{width:100%}.resource-cards{grid-template-columns:1fr}.resource-card{grid-template-columns:70px minmax(0,1fr);gap:13px}.resource-card-visual{min-height:70px}.resource-card-actions{grid-column:1/-1}.resource-form-pair{grid-template-columns:1fr}.resource-card-actions{justify-content:space-between}.resource-confirm{flex-direction:column;align-items:start}.resource-confirm>div:last-child{width:100%}.resource-confirm>div:last-child .button{flex:1}.resource-dialog-backdrop{align-items:end;padding:0}.resource-dialog{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:calc(100vh - 18px);padding:24px 18px max(24px, env(safe-area-inset-bottom));overflow-y:auto}.resource-dialog-actions{flex-direction:column-reverse}.resource-dialog-actions .button{width:100%}.settings-section{padding:21px 18px}.settings-fields{grid-template-columns:1fr}.settings-actions .button{width:100%}.booking-rules-card,.resource-rules-card{padding:21px 18px}.booking-rules-fields,.booking-rules-fields.two-columns,.release-strategies,.usage-limit-cards{grid-template-columns:1fr}.release-sentence{padding:14px}.blocks-heading{flex-wrap:wrap}.blocks-heading .button{width:100%}.block-item{grid-template-columns:1fr;gap:10px}.block-when{border-bottom:1px solid var(--border);border-right:0;padding:0 0 8px}.block-actions .button{width:100%}.block-drawer{max-width:none}.special-list li{grid-template-columns:1fr;gap:10px}.special-list .block-when{border-bottom:1px solid var(--border);border-right:0;padding:0 0 8px}.special-actions .button{flex:1 1 0}.block-modes.kinds{grid-template-columns:repeat(2,minmax(0,1fr))}.release-sentence p{font-size:15px}.resource-rules-heading{flex-direction:column}.resource-rule-select,.resource-rule-select select{width:100%}.weekday-row{grid-template-columns:1fr;gap:8px}.opening-interval{flex-wrap:wrap}.schedule-add-interval{justify-self:start}.schedule-card-actions{flex-direction:column;align-items:stretch}.booking-mode-section .booking-mode{grid-template-columns:1fr}.schedule-card-actions .button{width:100%}.booking-date-bar{flex-wrap:wrap}.booking-date-bar>div{order:-1;width:calc(100% - 2px)}.booking-date-input{flex:1}.booking-date-input input{width:100%;min-width:0}.booking-filters{grid-template-columns:1fr;display:grid}.booking-filters label{justify-content:space-between}.booking-filters select{min-width:190px}.booking-card{grid-template-columns:78px minmax(0,1fr);align-items:start}.booking-card-participants{grid-column:1/-1;justify-content:flex-start}.booking-status{justify-self:start}.booking-card .booking-status{grid-area:2/2}.booking-card-main>div{flex-direction:column;align-items:start;gap:5px}.booking-cancel-confirm>div{flex-direction:column-reverse}.booking-cancel-confirm .button,.invitations-header .button{width:100%}.invitation-empty{flex-wrap:wrap;align-items:start}.invitation-empty .button{width:100%}.invitation-row{grid-template-columns:1fr;gap:12px;padding:18px}.invitation-meta,.invitation-actions{justify-content:flex-start}.invitation-confirm{flex-direction:column;align-items:start;margin:0 -18px -18px;padding:13px 18px}.invitation-confirm>div:last-child{width:100%}.invitation-confirm>div:last-child .button{flex:1}.member-row{grid-template-columns:1fr;gap:12px;padding:18px}.member-role,.member-actions{justify-content:flex-start}.member-actions>div{place-items:start}.member-confirm{flex-direction:column;align-items:start;margin:0 -18px -18px;padding:13px 18px}.member-confirm>div:last-child{width:100%}.member-confirm>div:last-child .button{flex:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@font-face{font-family:Plus Jakarta Sans;src:url(/fonts/plus-jakarta-sans-600.ttf)format("truetype");font-weight:600;font-display:swap}.accept-shell{background:#f5f4ed;grid-template-columns:minmax(0,1fr) minmax(360px,480px);gap:clamp(32px,7vw,110px);min-height:100vh;padding:clamp(24px,6vw,90px);font-family:Plus Jakarta Sans,ui-sans-serif,sans-serif;display:grid}.accept-intro{align-self:center;max-width:620px}.accept-brand{color:var(--forest);align-items:center;gap:12px;margin-bottom:64px;font-size:22px;font-weight:800;text-decoration:none;display:inline-flex}.accept-intro h1{letter-spacing:-.055em;color:var(--forest);overflow-wrap:anywhere;margin:16px 0 24px;font-size:clamp(36px,5vw,66px);line-height:1.07}.accept-intro p{max-width:470px;line-height:1.65}.accept-role{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--forest);align-items:center;gap:12px;margin-top:32px;padding:20px 0;display:flex}.accept-note{color:var(--text-muted);font-size:13px}.accept-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-self:center;padding:clamp(24px,3vw,40px)}.accept-content h2{letter-spacing:-.04em;margin:0 0 24px;font-size:26px}.accept-details{border-bottom:1px solid var(--border);gap:14px;margin:0 0 24px;padding-bottom:20px;display:grid}.accept-details div{gap:4px;display:grid}.accept-details dt{color:var(--text-muted);font-size:12px}.accept-details dd{overflow-wrap:anywhere;margin:0;font-size:14px}.accept-modes{border-bottom:1px solid var(--border);gap:20px;margin-bottom:8px;display:flex}.accept-modes button{color:var(--text-muted);background:0 0;border:0;padding:10px 0;font-size:13px}.accept-modes button[aria-pressed=true]{color:var(--forest);box-shadow:0 3px 0 var(--forest)}.accept-shell button:focus-visible,.accept-shell a:focus-visible{outline:3px solid var(--forest);outline-offset:4px}.accept-error{margin-top:20px}.accept-login{color:var(--forest);margin-top:24px;font-size:13px;display:inline-block}@media (width<=760px){.accept-shell{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px 18px 40px}.accept-brand{margin-bottom:24px}.accept-intro h1{font-size:36px}.accept-role{margin-top:20px;padding:14px 0}.accept-note{margin-bottom:0}}.security-panel{border-top:1px solid var(--border);max-width:640px;margin-top:32px;padding:28px 0}.security-panel h2{margin:8px 0 12px}.security-panel p{line-height:1.65}.passkey-symbol{color:var(--forest)}.security-detail{color:var(--text-muted);font-size:13px}.security-panel label{gap:8px;margin:16px 0;display:grid}.security-panel input:not([type=checkbox]){border:1px solid var(--border);background:var(--surface);width:100%;color:inherit;border-radius:8px;padding:12px}.security-panel button{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:12px 16px;display:inline-flex}.security-primary,.authenticator-panel button{background:var(--forest);color:#fff;border:0;border-radius:8px}.security-panel .text-button{color:var(--forest);text-underline-offset:4px;background:0 0;border:0;text-decoration:underline}.passkey-list{padding:0;list-style:none}.passkey-list li{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.passkey-list li>span{overflow-wrap:anywhere;gap:8px;display:flex}.authenticator-panel{border-top:1px solid var(--border);padding-top:24px}.authenticator-qr{width:240px;max-width:100%;height:auto}.recovery-codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;list-style:none;display:grid}.security-panel .check{gap:8px;display:flex}.security-panel .error{color:var(--danger)}.passkey-login{width:100%;margin:20px 0 0}.security-panel button:disabled{opacity:.55;cursor:wait}.security-panel :focus-visible{outline:3px solid var(--lime);outline-offset:3px}.incidents-page{max-width:1040px}.incidents-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.incidents-totals>div{background:var(--forest);border-radius:var(--radius-md);color:var(--surface);flex-wrap:wrap;align-items:center;gap:9px;min-height:112px;padding:21px;display:flex}.incidents-totals strong{color:var(--lime);letter-spacing:-.04em;font-size:27px}.incidents-totals span{flex-basis:100%;font-size:13px}.incidents-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);text-align:left;justify-content:space-between;align-items:center;width:100%;min-height:72px;margin:8px 0;padding:15px 19px;display:flex}.incidents-row:hover,.incidents-row:focus-visible{border-color:var(--forest);outline:none}.incidents-row strong,.incidents-row small{display:block}.incidents-row small{color:var(--text-muted);margin-top:5px}.incidents-state,.incidents-overline{color:var(--forest);letter-spacing:.045em;font-size:12px;font-weight:800}.incidents-detail{gap:16px;max-width:760px;display:grid}.incidents-sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);gap:15px;max-width:760px;margin:18px 0;padding:28px;display:grid}.incidents-sheet h2{letter-spacing:-.025em;margin:0;font-size:22px}.incidents-sheet p{margin:0;line-height:1.55}.incidents-sheet small{color:var(--text-muted)}.incidents-sheet .field span{font-size:13px;font-weight:750}.incidents-sheet select,.incidents-sheet textarea{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);width:100%;min-height:46px;padding:12px}.incidents-sheet textarea{resize:vertical;min-height:98px}.incidents-booking{background:var(--canvas-muted);border-radius:var(--radius-sm);gap:5px;padding:14px;display:grid}.incidents-actions{flex-wrap:wrap;gap:10px;display:flex}.incidents-form fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);gap:16px;padding:16px;display:flex}.incidents-form legend{font-weight:750}.incidents-history{color:var(--text-muted);padding:16px}@media (width<=700px){.incidents-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.incidents-totals>div{padding:12px}.incidents-sheet{padding:20px}.incidents-form fieldset{flex-direction:column}}.summary-activity{margin-bottom:24px}.activity-heading,.activity-use-heading,.activity-created,.activity-footnote{justify-content:space-between;align-items:center;gap:24px;display:flex}.activity-heading{margin-bottom:24px}.activity-heading h2{letter-spacing:-.02em;margin:0;font-size:20px}.activity-heading p,.activity-created p,.activity-use-heading p{color:var(--text-muted);max-width:55ch;margin:7px 0 0;font-size:13px;line-height:1.5}.activity-heading .invitation-filters{flex-shrink:0;margin:0}.activity-created{border-block:1px solid var(--border);padding-block:20px}.activity-created h3,.activity-use-heading h3{margin:0;font-size:15px}.activity-created dl{gap:28px;margin:0;display:flex}.activity-created dl div{gap:5px;display:grid}.activity-created dt{color:var(--text-muted);font-size:12px}.activity-created dd{font-variant-numeric:tabular-nums;margin:0;font-size:24px;font-weight:750}.activity-use-heading{margin-top:28px}.activity-use-heading>strong{color:var(--forest);white-space:nowrap;font-size:18px}.activity-columns{grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:32px;margin-top:24px;display:grid}.activity-columns h4{margin:0 0 12px;font-size:13px}.activity-table-wrap{max-width:100%;overflow-x:auto}.billing-page h2{letter-spacing:-.025em;margin:0 0 8px;font-size:20px}.billing-overview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:22px;padding:28px;display:flex}.billing-overview .eyebrow{margin:0 0 7px}.billing-overview p:last-child{color:var(--text-muted);margin:0}.billing-emblem{background:var(--forest);color:#fff;border-radius:12px;flex:0 0 52px;justify-content:center;align-items:center;height:52px;display:flex}.billing-renewal{text-align:right;gap:4px;margin-left:auto;display:grid}.billing-renewal span,.billing-plans>p,.billing-portal p,.billing-invoices>p{color:var(--text-muted)}.billing-note{background:var(--surface);border-left:3px solid var(--forest);padding:14px 18px;line-height:1.5}.billing-plans,.billing-portal,.billing-invoices{border-bottom:1px solid var(--border);padding:30px 0}.billing-plan-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.billing-plan-actions .button,.billing-portal .button{align-items:center;gap:9px;display:inline-flex}.billing-portal{justify-content:space-between;align-items:center;gap:20px;display:flex}.billing-invoices table{border-collapse:collapse;width:100%;min-width:600px}.billing-invoices th,.billing-invoices td{border-bottom:1px solid var(--border);text-align:left;padding:12px 16px 12px 0}.billing-invoices th{color:var(--text-muted);font-size:12px;font-weight:600}@media (width<=720px){.billing-overview{flex-wrap:wrap;align-items:flex-start;padding:20px}.billing-renewal{border-top:1px solid var(--border);text-align:left;width:100%;margin-left:0;padding-top:16px}.billing-portal{flex-direction:column;align-items:flex-start}}.activity-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.activity-table th,.activity-table td{border-bottom:1px solid var(--border);text-align:right;vertical-align:middle;padding:12px 8px}.activity-table th:first-child{text-align:left;padding-left:0}.activity-table thead th{color:var(--text-muted);font-size:11px;font-weight:650}.activity-table th small{color:var(--text-muted);margin-top:4px;font-size:11px;font-weight:400;display:block}.activity-table td:last-child{white-space:nowrap}.activity-share{background:var(--canvas-muted);width:40px;height:6px;margin-right:8px;display:inline-block}.activity-share>span{background:var(--forest);height:100%;display:block}.activity-bands{margin:0}.activity-bands>div{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding:13px 0;font-size:13px;display:flex}.activity-bands dt{color:var(--text-muted)}.activity-bands dd{margin:0;font-weight:700}.activity-days{border-bottom:1px solid var(--border);margin-top:24px;padding-bottom:16px}.activity-days summary,.invitation-batch summary{color:var(--forest);cursor:pointer;padding-block:8px;font-size:14px;font-weight:750}.activity-days summary:focus-visible,.invitation-batch summary:focus-visible{outline:3px solid var(--forest);outline-offset:4px}.activity-day-bar{background:var(--forest);vertical-align:middle;height:6px;margin-right:12px;display:inline-block}.activity-days table{max-width:620px;margin-top:16px}.activity-days td{width:70%}.activity-footnote{align-items:flex-start;margin-top:18px}.activity-footnote p,.activity-empty{color:var(--text-muted);max-width:70ch;margin:0;font-size:12px;line-height:1.6}.activity-footnote .button{flex:none}.activity-empty{padding-block:24px}.invitation-batch{margin-bottom:28px}.invitation-batch summary{align-items:center;gap:10px;list-style:none;display:flex}.invitation-batch summary:after{content:"+";margin-left:auto}.invitation-batch[open] summary:after{content:"−"}.invitation-batch>p,.batch-result p{color:var(--text-muted);max-width:70ch;font-size:13px;line-height:1.6}.invitation-batch .field textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;resize:vertical;width:100%;padding:12px;line-height:1.6}.invitation-batch .field textarea:focus-visible{outline:3px solid var(--forest);outline-offset:2px}.invitation-batch>.form-error{margin-top:16px}.batch-result{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.batch-result h3{margin:0;font-size:16px}.batch-result .activity-table th,.batch-result .activity-table td{text-align:left;overflow-wrap:anywhere;white-space:normal}.batch-no-write{margin-bottom:0}@media (width<=1100px){.activity-created{flex-direction:column;align-items:flex-start;gap:16px}.activity-columns{grid-template-columns:minmax(0,1fr);gap:24px}}@media (width<=640px){.activity-heading,.activity-use-heading,.activity-footnote{flex-direction:column;align-items:flex-start;gap:14px}.activity-created dl{gap:24px}.activity-table{font-size:12px}.activity-table th,.activity-table td{padding-inline:5px}.activity-share{display:none}.summary-activity,.invitation-batch{padding:20px 16px}.batch-result table{min-width:0}}.batch-result .activity-table th:first-child{white-space:nowrap;min-width:2.5rem}.activity-peak{color:var(--text-muted);margin:20px 0 0;font-size:12px;line-height:1.6}.batch-confirm,.batch-recovery,.batch-history{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.batch-confirm{justify-items:start;gap:14px;display:grid}.batch-confirm p{margin:0}.batch-confirm label{align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;display:flex}.batch-confirm input{accent-color:var(--forest);flex:none;margin-top:5px}.batch-history h3,.batch-recovery h3{margin:0 0 10px;font-size:16px}.batch-history p,.batch-recovery p{color:var(--text-muted);max-width:70ch;font-size:13px;line-height:1.6}.batch-history ul{margin:0;padding:0;list-style:none}.batch-history li{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;font-size:13px;display:flex}.batch-result .button{white-space:normal}@media (width<=600px){.batch-result .activity-table th,.batch-result .activity-table td{padding:10px 5px;font-size:12px}.batch-confirm>.button{width:100%}.batch-result .batch-table-with-links,.batch-table-with-links tbody{width:100%;display:block}.batch-table-with-links thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.batch-table-with-links tr{border-bottom:1px solid var(--border);grid-template-columns:24px minmax(0,1fr);gap:5px 8px;padding:16px 0;display:grid}.batch-result .batch-table-with-links th,.batch-result .batch-table-with-links td{border:0;min-width:0;padding:0;font-size:13px;display:block}.batch-table-with-links th,.batch-table-with-links td:nth-child(n+3){grid-column:2}.batch-table-with-links td:empty{display:none}.batch-table-with-links .button{white-space:nowrap;min-height:44px;margin-top:6px}}
