:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f7f9;color:#1d252d;--color-surface: #ffffff;--color-surface-subtle: #fbfcfd;--color-surface-muted: #f1f4f7;--color-border: #dfe5eb;--color-border-strong: #cfd8e3;--color-text: #1d252d;--color-text-muted: #647281;--color-accent: #0f766e;--color-accent-strong: #075e59;--color-accent-soft: #e7f5f2;--color-secondary: #29465b;--color-secondary-strong: #20384a;--color-warning: #92590d;--color-warning-soft: #fff4dc;--color-danger: #b91c1c;--color-danger-border: #fecaca;--color-focus: #8bd4cc;--color-danger-soft: #fef2f2;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--radius-sm: 7px;--radius-md: 8px;--shadow-sm: 0 1px 2px rgba(24, 36, 48, .06);--transition-fast: .16s ease-out;--color-overlay: rgba(29, 37, 45, .64);--radius-lg: 12px;--shadow-lg: 0 20px 50px rgba(24, 36, 48, .2);--font-size-xs: .76rem;--font-size-sm: .86rem;--font-size-md: 1rem;--font-size-lg: 1.15rem;--border-width: 1px;--font-weight-bold: 800;--font-weight-heavy: 900;--content-width-offer: 840px;--content-width-state: 600px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.shell{width:min(1440px,calc(100vw - 32px));margin:0 auto;padding:24px 0 40px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(420px,100%);display:grid;gap:14px}.login-password-field{display:grid;gap:6px;min-width:0}.login-password-control{position:relative;display:grid;min-width:0}.login-password-control input{padding-right:48px}.login-password-toggle{position:absolute;inset:0 0 0 auto;width:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:7px;background:transparent;color:#607080}.login-password-toggle:hover{background:#e7f5f2;color:#075e59}.login-password-toggle:focus-visible{outline:2px solid #8bd4cc;outline-offset:-2px;color:#075e59}.hosted-card-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:var(--space-5);background:var(--color-overlay)}.hosted-card-dialog{width:min(480px,100%);max-height:calc(100vh - (var(--space-5) * 2));padding:var(--space-5);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.hosted-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.hosted-card-security{display:inline-flex;align-items:center;min-height:calc(var(--space-5) + var(--space-1));padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-strong);font-size:.76rem;font-weight:800}.hosted-card-description{margin:var(--space-3) 0 var(--space-5);color:var(--color-text-muted);font-size:.88rem;line-height:1.5}.hosted-card-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.hosted-card-error{min-height:var(--space-4);margin:0;color:var(--color-danger);font-size:.82rem;font-weight:700}.hosted-card-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-1)}.hosted-card-dialog button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.top-actions{display:flex;align-items:end;gap:10px}.user-chip{min-height:40px;display:grid;align-content:center;padding:0 12px;border:1px solid #dfe5eb;border-radius:8px;background:#fff}.user-chip strong{font-size:.86rem}.user-chip span{color:#657382;font-size:.75rem}.academy-picker{min-width:min(340px,52vw)}.eyebrow{margin:0 0 4px;color:#607080;font-size:.78rem;font-weight:700;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1}h2{font-size:1rem}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric{display:flex;align-items:center;gap:12px;min-height:78px;padding:16px;background:#fff;border:1px solid #dfe5eb;border-radius:8px;box-shadow:0 1px 2px #1824300f}.metric svg{color:#0f766e}.metric span{display:block;color:#657382;font-size:.82rem}.metric strong{display:block;font-size:1.45rem}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tab,.icon-button,.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;color:#23313f;font-weight:700}.tab{padding:0 14px}.tab.active{border-color:#0f766e;background:#e7f5f2;color:#075e59}.icon-button{width:40px;padding:0}.primary{width:fit-content;padding:0 16px;border-color:var(--color-accent);background:var(--color-accent);color:var(--color-surface)}.secondary{padding:0 12px;border-color:var(--color-secondary);background:var(--color-secondary);color:var(--color-surface)}.primary,.secondary,.segment,.mini-button{transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.primary:hover:not(:disabled){border-color:var(--color-accent-strong);background:var(--color-accent-strong)}.secondary:hover:not(:disabled){border-color:var(--color-secondary-strong);background:var(--color-secondary-strong)}.segment:hover:not(:disabled),.mini-button:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent-strong)}.secondary.danger{border-color:#9f2d2d;background:#9f2d2d}.toast{margin-bottom:16px;padding:12px 14px;border:1px solid #a7d6bd;border-radius:8px;background:#eef9f1;color:#22543d;font-weight:700}.toast.error{border-color:#f0b8b8;background:#fff1f1;color:#8b1e1e}.workspace{display:grid;gap:16px}.two-column{grid-template-columns:minmax(320px,.85fr) minmax(360px,1.15fr)}.customer-workspace{grid-template-columns:minmax(420px,.95fr) minmax(380px,1.05fr);align-items:start}.three-column{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,390px);align-items:start}.portal-workspace{grid-template-columns:.9fr 1.15fr 1fr;align-items:start}.curriculum-workspace{grid-template-columns:minmax(300px,.95fr) minmax(340px,1fr) minmax(340px,1fr);align-items:start}.billing-workspace{align-items:start}.billing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.side-stack{display:grid;gap:16px}.panel{background:#fff;border:1px solid #dfe5eb;border-radius:8px;padding:18px;box-shadow:0 1px 2px #1824300f}.loading{min-height:180px;display:grid;place-items:center;color:#657382;font-weight:700}.panel-title{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:#1d252d}.panel-title svg{color:#b45309}.schedule-panel{overflow:hidden}.weekly-grid{overflow-x:auto;padding-bottom:4px}.timetable-grid{display:grid;grid-template-columns:72px repeat(7,max-content);border:1px solid #dfe5eb;border-radius:8px;background:#fff}.time-header,.day-header,.time-axis,.day-timeline{border-right:1px solid #e5eaf0}.time-header,.day-header{z-index:1;min-height:38px;padding:10px;background:#f5f7f9;color:#1d252d;font-size:.82rem;font-weight:900}.time-axis{position:relative;background:#fbfcfd}.time-tick{position:absolute;left:0;right:0;min-height:20px;padding:4px 8px 0;border-top:1px solid #eef2f5;color:#607080;font-size:.78rem;font-weight:900}.time-gap{position:absolute;left:0;right:0;display:grid;place-items:center;border-top:1px dashed #cfd8e3;border-bottom:1px dashed #cfd8e3;background:#f1f4f7;color:#7a8794;font-size:.68rem;font-weight:900}.day-timeline{position:relative;background:#fff}.day-timeline.has-overlap{background:#fbfcfd}.day-time-line,.day-gap{position:absolute;left:0;right:0;pointer-events:none}.day-time-line{z-index:0;border-top:1px solid #eef2f5}.day-gap{z-index:0;border-top:1px dashed #cfd8e3;border-bottom:1px dashed #cfd8e3;background:repeating-linear-gradient(135deg,rgba(223,229,235,.42) 0,rgba(223,229,235,.42) 5px,transparent 5px,transparent 10px)}.schedule-card{position:absolute;z-index:1;min-width:0;min-height:34px;padding:7px 34px 7px 8px;border:1px solid #dfe5eb;border-radius:8px;background:#fff;overflow:hidden}.schedule-card.assigned{border-color:#99d8aa;background:#effaf1}.schedule-card.assigned strong{color:#1f7a43}.schedule-card.editable{cursor:pointer}.schedule-card.editable:hover{border-color:#8bd4cc;box-shadow:0 2px 7px #0f766e1f}.schedule-card-body{display:grid;gap:2px;min-width:0}.schedule-card strong,.schedule-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-card strong{color:#0f766e;font-size:.86rem;line-height:1.1}.schedule-card span{color:#4c5a67;font-size:.74rem;line-height:1.15}.schedule-card.compact{padding-top:2px;padding-bottom:2px}.schedule-card.compact .schedule-card-body{gap:0}.schedule-card.compact strong{font-size:.78rem;line-height:1}.schedule-card.compact span{font-size:.68rem;line-height:1}.schedule-edit-button{position:absolute;top:5px;right:5px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;color:#29465b}.schedule-edit-button:hover,.schedule-edit-button:focus{border-color:#0f766e;color:#0f766e}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}.form-grid .panel-title,.form-grid button,.field-span{grid-column:1 / -1}.form-section-title{display:block;margin-bottom:8px;color:#4c5a67;font-size:12px;font-weight:800}.customer-workflow-form{align-items:start}.single-column{grid-template-columns:1fr}.form-actions{display:flex;flex-wrap:wrap;gap:8px}label{display:grid;gap:6px;color:#4c5a67;font-size:.82rem;font-weight:700}input,select,textarea{width:100%;min-height:40px;border:1px solid #cfd8e3;border-radius:7px;padding:0 10px;background:#fff;color:#1d252d}textarea{min-height:96px;padding:10px;line-height:1.45;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #8bd4cc;outline-offset:1px}.segmented-controls{display:flex;flex-wrap:wrap;gap:8px}.segment{min-height:38px;padding:0 12px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;color:#23313f;font-weight:800}.segment.active{border-color:#0f766e;background:#e7f5f2;color:#075e59}.customer-select{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(240px,1.1fr);gap:10px}.search-input{position:relative;display:block}.search-input svg{position:absolute;left:10px;top:50%;color:#607080;transform:translateY(-50%);pointer-events:none}.search-input input{padding-left:32px}.status-line{min-height:30px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.status-line .badge{white-space:normal}.waiver-signature-section{display:grid;gap:10px;padding:10px;border:1px solid #dfe5eb;border-radius:8px;background:#fbfcfd}.legal-document{display:grid;gap:14px;padding:clamp(12px,2vw,20px);border:1px solid #cfd8e3;border-radius:8px;background:#fff;color:#23313f}.legal-document-header{display:grid;gap:6px}.legal-document-header h3,.legal-document-terms h4{margin:0;color:#1d252d}.legal-document-header h3{font-size:1.05rem;line-height:1.35}.legal-document-metadata{display:flex;flex-wrap:wrap;gap:6px 14px;color:#4c5a67;font-size:.78rem;font-weight:800}.legal-document-terms{display:grid;gap:16px}.legal-document-terms section{display:grid;gap:8px}.legal-document-terms h4{font-size:.9rem;line-height:1.4}.legal-document-terms p{margin:0;color:#344454;font-size:.85rem;line-height:1.6}.legal-document-acknowledgement{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #9fb5c8;border-radius:7px;background:#f3f8fb;color:#23313f;line-height:1.5}.legal-document-acknowledgement input{width:auto;min-height:auto;margin-top:3px;flex:0 0 auto}.signature-pad{display:grid;gap:8px}.signature-canvas{width:100%;max-width:100%;min-height:160px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;cursor:crosshair;touch-action:none}.signature-canvas:focus{outline:2px solid #8bd4cc;outline-offset:1px}.signature-pad-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.list{display:grid;gap:10px;max-height:640px;overflow:auto;padding-right:2px}.row-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:64px;padding:12px;border:1px solid #e5eaf0;border-radius:8px;background:#fbfcfd}.row-card>*,.row-card div:first-child,.stack{min-width:0}.row-card strong,.row-card span{display:block;overflow-wrap:anywhere}.row-card span{color:#647281;font-size:.86rem}.row-actions,.split{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.row-actions{width:100%}.reschedule-field{flex:1 1 210px;min-width:min(210px,100%)}.reschedule-field input{min-width:0}.split{justify-content:space-between;width:100%}.stack{display:grid;align-items:start}.badge{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border-radius:999px;background:#edf2f7;color:#425466;font-size:.76rem;font-weight:800;white-space:nowrap}.badge.ok{background:#e4f6ea;color:#1f7a43}.badge.warn{background:#fff4dc;color:#92590d}.badge.warn.agenda-over{background:#fee2e2;color:#b91c1c}.agenda-warning{padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:.86rem;font-weight:800}.agenda-draft-row{display:grid;grid-template-columns:minmax(160px,1fr) 86px minmax(140px,.8fr) auto auto;gap:8px;align-items:center}.technique-tree-node{display:grid;gap:6px}.technique-components{display:grid;gap:6px;padding-left:10px;border-left:2px solid #e5eaf0}.technique-video,.technique-video-player{width:100%}.technique-video{display:grid;gap:8px}.technique-video input[type=file]{flex:1 1 180px;min-width:min(220px,100%)}.technique-video-player{max-height:240px;border-radius:8px;background:#111827}.curriculum-ai-panel{grid-column:1 / -1}.curriculum-ai-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:var(--space-5)}.curriculum-ai-section{display:grid;align-content:start;gap:var(--space-3);min-width:0}.curriculum-ai-section+.curriculum-ai-section{padding-left:var(--space-5);border-left:1px solid var(--color-border)}.curriculum-ai-heading{align-items:flex-start}.curriculum-ai-heading h3,.generated-result-heading h3{margin:0;color:var(--color-text);font-size:.94rem}.curriculum-ai-heading p,.generated-result-heading p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:.82rem;line-height:1.45}.curriculum-connection-form{padding-top:var(--space-1)}.field-help{color:var(--color-text-muted);font-size:.76rem;font-weight:600}.inline-status,.inline-error{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:.82rem;font-weight:700}.inline-error{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.curriculum-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.curriculum-section-heading .panel-title{margin-bottom:0}.generated-techniques{display:grid;gap:var(--space-3);margin:var(--space-4) 0;padding:var(--space-4) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.generated-result-heading{display:grid;gap:var(--space-2);padding:var(--space-3);border-left:3px solid var(--color-warning);background:var(--color-warning-soft)}.generated-result-heading>span:not(.badge){color:var(--color-warning);font-size:.8rem;font-weight:700}.generated-technique-list{display:grid;gap:var(--space-3);max-height:640px;overflow:auto;padding-right:var(--space-1)}.generated-technique-draft{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.component-fieldset{min-width:0;margin:0;padding:0;border:0}.component-fieldset legend{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:.82rem;font-weight:700}.technique-graph-explorer{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:var(--space-4);align-items:start}.technique-graph-main,.technique-graph-details{min-width:0}.technique-graph-toolbar,.technique-graph-legend,.technique-detail-links{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.technique-graph-toolbar{justify-content:space-between;margin-bottom:var(--space-2)}.technique-graph-legend{color:var(--color-text-muted);font-size:.78rem;font-weight:700}.technique-graph-legend span{display:inline-flex;gap:6px;align-items:center}.legend-swatch{display:inline-block;width:22px;height:4px;border-radius:999px}.legend-swatch.containment{background:var(--color-accent)}.legend-swatch.precedence{background:var(--color-warning)}.technique-graph-scroll{width:100%;max-height:640px;overflow:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);overscroll-behavior:contain}.technique-graph-scroll:focus-visible,.segment:focus-visible,.mini-button:focus-visible,.primary:focus-visible,.secondary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.technique-graph{display:block;min-width:100%}.technique-graph-edge{fill:none;stroke-width:2;pointer-events:none;transition:opacity var(--transition-fast),stroke-width var(--transition-fast)}.technique-graph-edge.containment{stroke:var(--color-accent)}.technique-graph-edge.precedence{stroke:var(--color-warning);stroke-dasharray:7 4}.technique-graph-arrowhead.containment{fill:var(--color-accent)}.technique-graph-arrowhead.precedence{fill:var(--color-warning)}.technique-graph-edge-hit-target{fill:none;stroke:transparent;stroke-width:8;pointer-events:stroke}.technique-graph-edge-control{cursor:pointer;transition:opacity var(--transition-fast)}.technique-graph-edge-control.selected .technique-graph-edge{stroke-width:4}.technique-graph-edge-control.dimmed,.technique-graph-node.dimmed{opacity:.28}.technique-graph-edge-control:focus-visible,.technique-graph-node:focus-visible{opacity:1;outline:none}.technique-graph-edge-control:focus-visible .technique-graph-edge{stroke-width:5}.technique-graph-node{cursor:pointer;transition:opacity var(--transition-fast)}.technique-graph-node-shape{stroke:var(--color-border-strong);stroke-width:1.5;filter:drop-shadow(var(--shadow-sm));transition:stroke-width var(--transition-fast)}.technique-graph-node-shape.component{fill:var(--color-surface)}.technique-graph-node-shape.composition{fill:var(--color-accent-soft);stroke:var(--color-accent)}.technique-graph-node.selected .technique-graph-node-shape{stroke:var(--color-secondary);stroke-width:4}.technique-graph-node:focus-visible .technique-graph-node-shape{stroke:var(--color-focus);stroke-width:5}.technique-graph-node-name{fill:var(--color-text);font-size:.82rem;font-weight:800;pointer-events:none}.technique-graph-node-meta{fill:var(--color-text-muted);font-size:.72rem;font-weight:700;pointer-events:none}.technique-graph-details{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.technique-graph-details h3,.technique-graph-details h4,.technique-graph-details p{margin:0}.technique-graph-details section{display:grid;gap:var(--space-2)}.technique-relationship-details{padding-top:var(--space-3);border-top:1px solid var(--color-border)}.technique-graph-empty{padding:var(--space-5);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:.86rem;line-height:1.5}@media(max-width:900px){.technique-graph-explorer{grid-template-columns:minmax(0,1fr)}}.setup-stack{display:grid;gap:14px;align-content:start}.compact-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;align-items:end}.compact-form.wide{grid-template-columns:1.2fr 1.2fr .8fr .7fr .7fr .7fr auto}.program-form{display:grid;gap:10px;padding-top:4px}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 8px;border:1px solid #dfe5eb;border-radius:7px;background:#fbfcfd}.check input{width:auto;min-height:auto}.inline-check{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #dfe5eb;border-radius:7px;background:#fbfcfd}.inline-check input{width:auto;min-height:auto}.mini-button{width:fit-content;display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 9px;border:1px solid #cfd8e3;border-radius:7px;background:#fff;color:#29465b;font-size:.78rem;font-weight:800}.compact-list{max-height:280px}.billing-list{max-height:none}.billing-row{align-items:stretch}.billing-actions{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end}.payment-method-summary{display:grid;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.access-pass-sales{display:grid;gap:var(--space-4)}.access-pass-preview,.access-pass-payment-result{display:grid;gap:6px;padding:12px;border:1px solid #b8dcd7;border-radius:8px;background:#f2faf8;color:#29465b}.access-pass-preview .form-section-title{margin:0}.access-pass-customer-history{display:grid;gap:8px;padding-top:var(--space-3);border-top:1px solid var(--color-border)}.access-pass-card{align-items:stretch}.ledger-items{display:grid;gap:8px}.ledger-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid #e5eaf0;border-radius:7px;background:#fff}.receipt-workspace{grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);align-items:start}.receipt-upload{position:sticky;top:16px}.receipt-help,.receipt-scope{color:#647281;font-size:.84rem;line-height:1.45}.receipt-scope{margin:-6px 0 16px}.receipt-status{margin:0}.receipt-loading{min-height:120px}.receipt-list{max-height:none}.receipt-card{gap:12px;padding:16px}.receipt-heading{align-items:flex-start}.receipt-total{flex:0 0 auto;font-size:.9rem}.receipt-merchant{display:grid;gap:3px}.receipt-metadata{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;padding:10px;border-radius:7px;background:#f1f4f7}.receipt-metadata strong{display:inline;color:#425466}.receipt-money{width:100%;display:grid;gap:5px;margin:0}.receipt-money div{display:flex;justify-content:space-between;gap:16px}.receipt-money dt,.receipt-money dd{margin:0;color:#647281;font-size:.86rem}.receipt-money-total{padding-top:6px;border-top:1px solid #dfe5eb;font-weight:900}.receipt-items{width:100%;display:grid;gap:6px;padding:10px;border:1px solid #e5eaf0;border-radius:7px;background:#fff}.receipt-item{display:flex;justify-content:space-between;gap:12px}.receipt-item span:last-child{flex:0 0 auto;text-align:right}.receipt-actions{padding-top:2px}.receipt-actions>span{font-size:.78rem}.receipt-image{width:min(100%,680px);max-height:680px;object-fit:contain;border:1px solid #dfe5eb;border-radius:8px;background:#fff}.receipt-ocr{width:100%;color:#425466;font-size:.86rem}.receipt-ocr summary{cursor:pointer;font-weight:800}.receipt-ocr pre{max-height:260px;margin:8px 0 0;padding:10px;overflow:auto;border:1px solid #e5eaf0;border-radius:7px;background:#fff;color:#1d252d;font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.payroll-workspace{gap:var(--space-4)}.payroll-workspace,.payroll-workspace>*,.payroll-control-grid>*{min-width:0}.payroll-loading,.payroll-load-error{display:grid;gap:var(--space-4);justify-items:start}.payroll-loading .loading{width:100%}.payroll-status{margin:0}.payroll-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.payroll-control-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-4);align-items:start}.payroll-section-heading,.payroll-invoice-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.payroll-section-heading{margin-bottom:var(--space-4)}.payroll-section-heading .panel-title,.payroll-generation-panel .panel-title{margin-bottom:var(--space-2)}.payroll-section-heading p,.payroll-generation-panel p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.payroll-table-wrap{width:100%;overflow-x:auto;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md)}.payroll-table{width:100%;min-width:max-content;border-collapse:collapse;font-variant-numeric:tabular-nums}.payroll-table th,.payroll-table td{padding:var(--space-3);border-bottom:var(--border-width) solid var(--color-border);text-align:left;white-space:nowrap}.payroll-table thead th{background:var(--color-surface-muted);color:var(--color-secondary);font-size:var(--font-size-xs);text-transform:uppercase}.payroll-table tbody th{color:var(--color-text)}.payroll-table tbody td{color:var(--color-text-muted);font-size:var(--font-size-sm)}.payroll-table tbody tr:last-child>*{border-bottom:0}.payroll-table tbody tr:hover{background:var(--color-surface-subtle)}.payroll-table tbody td.payroll-money{color:var(--color-text);font-weight:var(--font-weight-heavy)}.payroll-generation-panel{position:sticky;top:var(--space-4);display:grid;gap:var(--space-4);justify-items:start}.payroll-generation-panel .panel-title,.payroll-generation-panel p{width:100%}.payroll-invoice-list{display:grid;gap:var(--space-4)}.payroll-invoice-card{display:grid;gap:var(--space-4);padding:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.payroll-invoice-heading h3{margin:0 0 var(--space-1);color:var(--color-text);font-size:var(--font-size-lg)}.payroll-invoice-heading span,.payroll-line-items-heading span,.payroll-line-item span,.payroll-paid-state span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.payroll-invoice-total{display:grid;gap:var(--space-2);justify-items:end;color:var(--color-text);font-size:var(--font-size-lg);font-variant-numeric:tabular-nums}.payroll-invoice-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin:0;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.payroll-invoice-summary dt{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase}.payroll-invoice-summary dd{margin:0;color:var(--color-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.payroll-line-items{display:grid;border-top:var(--border-width) solid var(--color-border)}.payroll-line-items-heading,.payroll-line-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.payroll-line-items-heading{padding:var(--space-3) 0}.payroll-line-item{padding:var(--space-3) 0;border-top:var(--border-width) solid var(--color-border)}.payroll-line-item>div{display:grid;gap:var(--space-1);min-width:0}.payroll-line-item>strong{flex:0 0 auto;font-variant-numeric:tabular-nums}.payroll-payment-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:end;padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border)}.payroll-paid-state{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-strong)}.payroll-paid-state>div{display:grid;gap:var(--space-1)}.payroll-paid-state span{color:var(--color-accent-strong)}.payroll-empty{padding:var(--space-5);border:var(--border-width) dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:var(--font-size-sm)}@media(max-width:980px){.metrics,.two-column,.three-column,.schedule-workspace,.portal-workspace,.customer-workspace,.curriculum-workspace,.billing-metrics,.receipt-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-control-grid{grid-template-columns:1fr}.payroll-generation-panel{position:static}.compact-form,.compact-form.wide{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-ai-grid{grid-template-columns:1fr}.curriculum-ai-section+.curriculum-ai-section{padding-top:var(--space-5);padding-left:0;border-top:1px solid var(--color-border);border-left:0}}@media(max-width:680px){.shell{width:min(100vw - 20px,640px);padding-top:16px}.metrics,.two-column,.three-column,.schedule-workspace,.portal-workspace,.customer-workspace,.curriculum-workspace,.billing-metrics,.receipt-workspace,.form-grid,.compact-form,.compact-form.wide,.checks,.customer-select,.billing-actions,.agenda-draft-row{grid-template-columns:1fr}.hosted-card-overlay{padding:var(--space-3)}.hosted-card-dialog{max-height:calc(100vh - (var(--space-3) * 2));padding:var(--space-4)}.hosted-card-form{grid-template-columns:1fr}.receipt-upload{position:static}.receipt-metadata,.payroll-invoice-summary,.payroll-payment-actions{grid-template-columns:1fr}.topbar{align-items:flex-start}.top-actions{align-items:stretch;flex:1;flex-direction:column}.academy-picker{min-width:0}.tab{flex:1 1 calc(50% - 8px)}.row-card{align-items:flex-start;flex-direction:column}.row-actions{flex-wrap:wrap}.reschedule-field{flex-basis:100%;min-width:0}.list{max-height:none;overflow:visible;padding-right:0}.curriculum-section-heading{align-items:stretch;flex-direction:column}.curriculum-section-heading .segmented-controls,.curriculum-section-heading .segment{width:100%}.curriculum-section-heading .segment{flex:1}.inline-error{align-items:flex-start;flex-direction:column}.curriculum-prompt-section .form-actions>button{width:100%}.generated-technique-list{max-height:none;overflow:visible;padding-right:0}.ledger-item{align-items:flex-start;flex-direction:column}}.offer-staff-workspace{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start}.offer-intro,.offer-empty{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5}.offer-discount-fieldset{min-width:0;margin:0;padding:0;border:0}.offer-discount-fieldset legend{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.offer-discount-checks,.offer-slot-checks{grid-template-columns:1fr}.offer-discount-check,.offer-slot-check{min-height:auto;align-items:flex-start;padding:var(--space-3)}.offer-discount-check input,.offer-slot-check input{margin-top:var(--space-1);flex:0 0 auto}.discount-details{display:grid;gap:var(--space-1);min-width:0;color:var(--color-text)}.discount-details>span,.discount-details li{color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:1.45}.discount-details ul{display:grid;gap:var(--space-1);margin:0;padding-left:var(--space-4)}.compact-discount-details{padding:var(--space-2);border-left:var(--space-1) solid var(--color-accent);background:var(--color-accent-soft)}.offer-summary,.offer-enrollment-discounts,.offer-public-discounts{display:grid;gap:var(--space-2)}.offer-summary{padding:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.offer-summary>span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.offer-issued-panel{display:grid;gap:var(--space-3)}.offer-issued-panel .panel-title{margin-bottom:0}.offer-copy-status{margin:0}.enrollment-price-preview{display:grid;gap:var(--space-2)}.offer-public-shell{width:min(var(--content-width-offer),calc(100vw - (var(--space-5) * 2)));min-height:100vh;margin:0 auto;padding:var(--space-5) 0}.offer-public-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.offer-public-header h1,.offer-public-state h1{font-size:clamp(2rem,6vw,3.6rem)}.offer-expiry{padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.offer-progress{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2);margin:0 0 var(--space-5);padding:0;list-style:none}.offer-progress li{display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2);border-bottom:var(--space-1) solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.offer-progress li>span{display:inline-flex;align-items:center;justify-content:center;width:var(--space-5);height:var(--space-5);flex:0 0 auto;border-radius:var(--radius-sm);background:var(--color-surface-muted)}.offer-progress li.complete,.offer-progress li.current{border-color:var(--color-accent);color:var(--color-accent-strong)}.offer-progress li.complete>span,.offer-progress li.current>span{background:var(--color-accent-soft)}.offer-public-panel{display:grid;gap:var(--space-4)}.offer-public-panel>.panel-title{margin-bottom:0}.offer-public-error{margin-bottom:var(--space-4)}.offer-price-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.offer-price-summary>div{display:grid;gap:var(--space-1);padding:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.offer-price-summary span,.offer-facts dt{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.offer-price-summary strong{color:var(--color-text);font-size:var(--font-size-lg)}.offer-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0}.offer-facts>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--color-border)}.offer-facts dd{margin:0;color:var(--color-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-align:right}.offer-slot-check span{display:grid;gap:var(--space-1);color:var(--color-text)}.offer-slot-check small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.offer-final-summary{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);padding:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-text-muted)}.offer-final-summary strong{width:100%;color:var(--color-text)}.offer-public-state{width:min(var(--content-width-state),100%);margin:var(--space-5) auto;text-align:left}.offer-public-state>p{color:var(--color-text-muted);line-height:1.6}.offer-success{display:grid;gap:var(--space-3)}.offer-success>svg{color:var(--color-accent)}.signature-canvas{color:var(--color-text)}@media(max-width:980px){.offer-staff-workspace{grid-template-columns:1fr}.offer-progress{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.offer-public-shell{width:min(100vw - (var(--space-3) * 2),var(--content-width-offer));padding:var(--space-4) 0}.offer-public-header{align-items:flex-start;flex-direction:column}.offer-expiry{width:100%}.offer-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-price-summary,.offer-facts{grid-template-columns:1fr}.offer-public-panel .form-actions>button{width:100%}}
