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