.app-version{padding:14px 24px 18px;text-align:right}.app-version button{all:unset;cursor:pointer;font-size:11.5px;color:var(--muted);opacity:.75;font-variant-numeric:tabular-nums;border-radius:4px;padding:2px 4px}.app-version button:hover{opacity:1;text-decoration:underline}.app-version button:focus-visible{opacity:1;outline:2px solid var(--muted);outline-offset:2px}@media print{.app-version{display:none}}.billing-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border-radius:10px;margin-bottom:14px;border:1px solid var(--border, #e4e4e7);background:var(--surface, #fff)}.billing-banner.trial{border-color:var(--accent, #ff7a59);background:color-mix(in srgb,var(--accent, #ff7a59) 8%,var(--surface, #fff))}.billing-banner.warn{border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,var(--surface, #fff))}.billing-inactive{max-width:640px;margin:40px auto}.billing-inactive h1{font-size:var(--text-xl, 1.4rem);margin-top:0}.billing-deletion{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,#f59e0b 12%,var(--surface, #fff))}.billing-page{max-width:920px}.billing-page h2{font-size:var(--text-lg, 1.1rem);margin:0 0 10px}.billing-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.billing-status{font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid var(--border, #e4e4e7);white-space:nowrap}.billing-status.st-Active,.billing-status.st-Complimentary{color:#137a47}.billing-status.st-PastDue,.billing-status.st-CancelPending{background:color-mix(in srgb,#f59e0b 14%,transparent)}.billing-status.st-Paused,.billing-status.st-Canceled{color:#b42323}.billing-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 20px;margin:8px 0 0}.billing-facts dt{font-size:12px;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.billing-facts dd{margin:2px 0 0;font-size:18px;font-weight:600}.billing-facts dd.xs{font-size:12px;font-weight:400}.billing-founding{margin:12px 0 0;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,#137a47 10%,var(--surface, #fff));color:#137a47;font-weight:600}.billing-note{padding:8px 12px;border-radius:8px;background:color-mix(in srgb,#2563eb 8%,var(--surface, #fff));font-size:14px}.billing-actions{margin-top:14px;flex-wrap:wrap}.billing-actions .spacer{flex:1}.billing-danger{color:#b42323}.billing-lines{width:100%;border-collapse:collapse}.billing-lines td,.billing-lines th{padding:6px 4px;border-bottom:1px solid var(--border, #e4e4e7);text-align:left}.billing-lines .num{text-align:right;white-space:nowrap}.billing-lines .total td{font-weight:700;border-bottom:0}.studio-tiers{display:grid;gap:8px}.studio-tier{display:grid;grid-template-columns:auto auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border, #e4e4e7);border-radius:8px;cursor:pointer}.studio-tier.on{border-color:var(--accent, #ff7a59)}.studio-suggestion{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-left:4px solid var(--accent, #ff7a59)}.studio-suggestion h2{margin:0 0 4px;font-size:var(--text-lg, 1.1rem)}.studio-suggestion p{margin:0}.legal-page{max-width:760px;margin:32px auto;padding:0 16px 48px;line-height:1.6}.legal-draft{padding:10px 14px;border-radius:8px;background:color-mix(in srgb,#f59e0b 14%,transparent);font-weight:600}.signup-card{max-width:480px;margin:48px auto}.admin-menu{margin-top:auto;border:1px solid rgb(240 180 90 / 35%);background:#f0b45a12;border-radius:var(--radius);padding:2px}.admin-menu+.side-foot{margin-top:var(--space-3)}.admin-toggle{width:100%;min-height:40px;display:flex;align-items:center;gap:var(--space-2);padding:8px var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:#fff;font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;text-align:left}.admin-toggle:hover{background:#ffffff12}.admin-toggle:focus-visible{outline:none;box-shadow:var(--focus)}.admin-toggle .admin-shield{color:#f0b45a;flex:none}.admin-toggle .admin-chevron{margin-left:auto;color:#a1a1aa;transition:transform .15s;flex:none}.admin-chip{font-size:10.5px;font-weight:600;letter-spacing:.04em;color:#1a1205;background:#f0b45a;padding:1px 7px;border-radius:999px}.admin-links{display:flex;flex-direction:column;gap:2px;padding:0 0 6px}.admin-section-toggle{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:var(--radius-sm)}.admin-section-toggle:hover{color:#fff}.admin-section-toggle:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}.admin-links h3{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#a1a1aa;margin:var(--space-2) var(--space-3) 2px 34px}.nav-link.admin-link{padding-left:34px}.nav-link.admin-link.active{background:#f0b45a2e;color:#fff}:root{--ink: #18181b;--ink-2: #3f3f46;--ink-3: #52525b;--muted: #71717a;--light: #f4f4f5;--surface: #ffffff;--border: #e4e4e7;--border-strong: #a1a1aa;--brand-primary: #18181b;--brand-accent: #ff7a59;--brand-accent-ink: #18181b;--brand-accent-soft: color-mix(in srgb, var(--brand-accent) 12%, white);--brand-accent-strong: #c2410c;--success: #1d7a46;--success-soft: #e3f4ea;--warning: #9a5b00;--warning-soft: #fdf1dc;--danger: #b42318;--danger-soft: #fdeceb;--info-soft: #e7f1fb;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--shadow: 0 1px 2px rgb(24 24 27 / 6%), 0 4px 12px rgb(24 24 27 / 6%);--shadow-lg: 0 12px 40px rgb(24 24 27 / 18%);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--mono: "Cascadia Code", "SFMono-Regular", Consolas, monospace;--text-xs: 12px;--text-sm: 13px;--text: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--sidebar-w: 248px;--focus: 0 0 0 3px color-mix(in srgb, var(--brand-accent) 45%, white);color-scheme:light}:root[data-theme=dark]{--ink: #f4f4f5;--ink-2: #d4d4d8;--ink-3: #a1a1aa;--muted: #a1a1aa;--light: #0f0f11;--surface: #18181b;--border: #27272a;--border-strong: #3f3f46;--brand-accent-soft: color-mix(in srgb, var(--brand-accent) 22%, #18181b);--brand-accent-strong: color-mix(in srgb, var(--brand-accent) 70%, white);--success-soft: #133a29;--warning-soft: #3a2c10;--danger-soft: #3d1a17;--info-soft: #16304a;--success: #5fd197;--warning: #f0b45a;--danger: #ff8a7f;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:var(--text);line-height:1.5;color:var(--ink);background:var(--light);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0 0 var(--space-3);line-height:1.25;color:var(--ink)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0 0 var(--space-3)}a{color:var(--brand-accent-strong)}img{max-width:100%}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--radius-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:var(--surface);padding:8px 12px}.skip-link:focus{left:8px}.shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.sidebar{background:var(--brand-primary);color:#e4e4e7;padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar .brand{display:flex;align-items:center;gap:var(--space-2);color:#fff;font-weight:700;padding:0 var(--space-2);text-decoration:none}.sidebar .brand img{height:28px}.sidebar .brand.has-logo{padding:2px var(--space-2) var(--space-1)}.sidebar .brand.has-logo img{height:auto}.nav-section{display:flex;flex-direction:column;gap:2px}.nav-section h2{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:#a1a1aa;margin:var(--space-2) var(--space-2) var(--space-1)}.nav-section-toggle{all:unset;box-sizing:border-box;width:100%;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.nav-section-toggle:hover{color:#fff}.nav-section-toggle:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}.nav-section-chevron{flex-shrink:0;transition:transform .15s}.nav-section-links{display:flex;flex-direction:column;gap:2px}.nav-link{color:#e4e4e7;text-decoration:none;padding:8px var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);display:flex;align-items:center;gap:var(--space-2)}.nav-link:hover{background:#ffffff12}.nav-link.active{background:var(--brand-accent);color:var(--brand-accent-ink);font-weight:600}.main{display:flex;flex-direction:column;min-width:0}.topbar{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.topbar .menu-toggle{display:none;margin-right:auto}.content{padding:var(--space-5);max-width:1280px;width:100%;margin:0 auto}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);z-index:50;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:none;box-shadow:var(--shadow-lg)}.topbar .menu-toggle{display:inline-flex}.content{padding:var(--space-4)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--light)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-accent-ink)}.btn-primary:hover{background:var(--brand-accent-strong)}.btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,white)}.btn-danger:hover{background:var(--danger-soft)}.btn-ghost{border-color:transparent;background:transparent}.btn-sm{min-height:28px;padding:0 var(--space-3);font-size:var(--text-xs)}.icon-btn{min-width:36px;padding:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow)}.card+.card{margin-top:var(--space-4)}.grid>.card+.card,.kpi-row>.card+.card,.row>.card+.card{margin-top:0}.card-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.card-title h2,.card-title h3{margin:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap}.page-header h1{margin:0}.page-header p{margin:var(--space-1) 0 0;color:var(--muted)}.page-header .actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.grid{display:grid;gap:var(--space-4)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid-3{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.grid-4{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.row-between{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.xs{font-size:var(--text-xs)}.spacer{flex:1}.field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.field label,.label{font-size:var(--text-sm);font-weight:600}.field .hint{font-size:var(--text-xs);color:var(--muted)}.field .error{font-size:var(--text-xs);color:var(--danger)}input[type=text],input[type=email],input[type=url],input[type=number],input[type=date],input[type=datetime-local],input[type=search],select,textarea,.input{font:inherit;font-size:var(--text-sm);color:var(--ink);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:8px 10px;min-height:36px;width:100%}textarea{min-height:96px;resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--brand-accent)}.check{display:flex;gap:var(--space-2);align-items:flex-start;font-size:var(--text-sm);cursor:pointer}.check input{margin-top:3px;width:16px;height:16px;accent-color:var(--brand-accent)}fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);margin:0 0 var(--space-3)}legend{font-size:var(--text-sm);font-weight:600;padding:0 var(--space-1)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 var(--space-4)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}table.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th,.table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.table th{background:var(--light);font-weight:600;white-space:nowrap}.table th button{all:unset;cursor:pointer;display:inline-flex;gap:4px;align-items:center}.table th button:focus-visible{box-shadow:var(--focus)}.table tr:last-child td{border-bottom:none}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:var(--text-xs);font-weight:600;background:var(--light);color:var(--ink-2);white-space:nowrap}.pill-success{background:var(--success-soft);color:var(--success)}.pill-warning{background:var(--warning-soft);color:var(--warning)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-info{background:var(--brand-accent-soft);color:var(--brand-accent-strong)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-3)}.alert-error{background:var(--danger-soft);color:var(--danger)}.error-text{color:var(--danger);font-size:var(--text-sm);margin:var(--space-2) 0 0}.hint.error-text{font-size:var(--text-xs);margin:0}.alert-info{background:var(--info-soft);color:var(--ink-2)}.alert-success{background:var(--success-soft);color:var(--success)}.alert-warning{background:var(--warning-soft);color:var(--warning)}.progress{height:8px;background:var(--light);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--brand-accent);border-radius:999px}.ring{position:relative;display:inline-grid;place-items:center}.ring svg{transform:rotate(-90deg)}.ring .ring-label{position:absolute;font-size:var(--text-xs);font-weight:700}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-4);overflow-x:auto}.tabs button{all:unset;cursor:pointer;padding:10px var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brand-accent)}.tabs button:focus-visible{box-shadow:var(--focus)}.modal-backdrop{position:fixed;inset:0;background:#18181b73;display:grid;place-items:center;z-index:100;padding:var(--space-4)}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column}.modal.wide{width:min(960px,100%)}.modal header,.modal footer{padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-3)}.modal header{border-bottom:1px solid var(--border);justify-content:space-between}.modal header h2{margin:0;font-size:var(--text-lg)}.modal footer{border-top:1px solid var(--border);justify-content:flex-end}.modal .modal-body{padding:var(--space-5);overflow-y:auto}.popover{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:360px;max-height:480px;overflow-y:auto;z-index:40}.popover-anchor{position:relative}.bell-btn{position:relative;font-size:16px}.bell-glyph{position:relative;display:inline-block;line-height:1}.bell-icon{display:inline-block;transform-origin:50% 2px}.bell-icon.ringing{animation:bell-jingle 1s ease-in-out}.bell-count{position:absolute;top:-7px;right:-9px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--danger);color:var(--surface);box-shadow:0 0 0 2px var(--surface);font-size:10px;font-weight:700;line-height:16px;text-align:center;pointer-events:none}@keyframes bell-jingle{0%,to{transform:rotate(0)}10%{transform:rotate(16deg)}20%{transform:rotate(-14deg)}30%{transform:rotate(11deg)}40%{transform:rotate(-9deg)}50%{transform:rotate(6deg)}60%{transform:rotate(-4deg)}70%{transform:rotate(2deg)}80%{transform:rotate(-1deg)}}@media(prefers-reduced-motion:reduce){.bell-icon.ringing{animation:none}}.course-card{display:flex;flex-direction:column;overflow:hidden;padding:0;text-decoration:none;color:inherit}.course-card .cover{aspect-ratio:16 / 7;background-color:var(--border);background-size:cover;background-position:center;background-repeat:no-repeat}.cover-thumb{flex:none;aspect-ratio:16 / 9;background-color:var(--border);background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:var(--radius-sm)}.cover-thumb.sm{width:64px}.cover-thumb.md{width:168px}.cover-thumb.lg{width:100%;max-width:360px}.cover-row{display:flex;gap:var(--space-4);align-items:flex-start}.cover-row>.cover-body{flex:1;min-width:0}.title-with-thumb{display:inline-flex;align-items:center;gap:var(--space-3)}@media(max-width:640px){.cover-row{flex-direction:column}.cover-row>.cover-thumb.md{width:100%;max-width:360px}}.course-card .body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);flex:1}.course-card h3{font-size:var(--text);margin:0}a.course-card:hover{border-color:var(--brand-accent)}.stat-tile{display:flex;flex-direction:column;gap:2px}.stat-tile .value{font-size:var(--text-2xl);font-weight:700;font-variant-numeric:tabular-nums}.stat-tile .label{font-size:var(--text-sm);color:var(--muted)}.player-head{margin-bottom:var(--space-4)}.player-head h1{font-size:var(--text-xl);margin:0;line-height:1.25}.player-back{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--muted);text-decoration:none;margin-bottom:var(--space-2);border-radius:var(--radius-sm)}.player-back:hover{color:var(--ink)}.player-back:focus-visible{box-shadow:var(--focus);outline:none}.player-progress{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);max-width:520px}.player-progress .progress{flex:1;background:var(--border)}.player-progress span{white-space:nowrap;font-variant-numeric:tabular-nums}.player{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--space-4);align-items:start}.player-outline{position:sticky;top:72px;padding:var(--space-2);display:flex;flex-direction:column;max-height:calc(100vh - 96px)}.outline-body{overflow-y:auto;min-height:0;padding:0 2px 2px}.outline-toggle{display:none}.outline-module+.outline-module{border-top:1px solid var(--border);margin-top:var(--space-2);padding-top:var(--space-1)}.outline-module h3{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm);margin:var(--space-2) var(--space-2) var(--space-1);color:var(--ink-2)}.outline-module-title{min-width:0}.outline-module-num{display:block;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.outline-module-count{flex:none;font-size:var(--text-xs);font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.outline-module-count.done{color:var(--success)}.outline-module-note{margin:0 var(--space-2) var(--space-1);font-size:var(--text-xs);color:var(--muted)}.outline-lesson{all:unset;box-sizing:border-box;width:100%;display:flex;gap:var(--space-2);align-items:flex-start;padding:8px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;position:relative;overflow-wrap:anywhere}.outline-lesson:hover{background:var(--light)}.outline-lesson[aria-current=true]{background:var(--brand-accent-soft);font-weight:600}.outline-lesson[aria-current=true]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--brand-accent)}.outline-lesson[aria-disabled=true]{color:var(--muted);cursor:not-allowed}.outline-lesson[aria-disabled=true]:hover{background:transparent}.outline-lesson:focus-visible{box-shadow:var(--focus)}.outline-lesson-meta{display:block;font-weight:400;margin-top:1px}.lesson-status{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);flex:none;display:grid;place-items:center;font-size:11px;margin-top:1px;box-sizing:border-box}.lesson-status.done{background:var(--success);border-color:var(--success);color:#fff}.lesson-status.partial{border-color:var(--brand-accent);background:conic-gradient(var(--brand-accent) 0 50%,transparent 50% 100%)}.lesson-status.locked{border-color:transparent;color:var(--muted)}.lesson-pane{min-width:0;display:flex;flex-direction:column;gap:var(--space-4)}.lesson-pane>.card+.card{margin-top:0}.lesson-card-head{align-items:flex-start;margin-bottom:var(--space-3)}.lesson-card-head h2{margin:0;line-height:1.3}.lesson-card-head h2:focus{outline:none}.lesson-eyebrow{font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;color:var(--muted);margin-bottom:4px}.lesson-intro{margin-bottom:var(--space-3)}.lesson-loading{min-height:320px;display:grid;place-items:center}.empty-lesson{text-align:center;padding:var(--space-6) var(--space-4)}.empty-lesson h2{margin:var(--space-2) 0}.empty-lesson h2:focus{outline:none}.empty-lesson-icon{width:48px;height:48px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:var(--light);color:var(--muted)}.lesson-nav{display:flex;justify-content:space-between;align-items:stretch;gap:var(--space-3)}.lesson-nav-btn{min-height:52px;gap:var(--space-3);max-width:min(48%,380px);text-decoration:none}.lesson-nav-next{margin-left:auto;text-align:right}.lesson-nav-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.lesson-nav-dir{font-size:var(--text-xs);font-weight:500;opacity:.75}.lesson-nav-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-nav-btn[aria-disabled=true]{opacity:.6;cursor:not-allowed}.lesson-nav-btn[aria-disabled=true]:hover{background:var(--surface)}.lesson-nav-end{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;text-align:right}.course-complete{text-align:center;padding:var(--space-6) var(--space-4)}.course-complete h2{margin:var(--space-3) 0 var(--space-2)}.course-complete p{max-width:520px;margin:0 auto var(--space-4)}.course-complete-mark{width:56px;height:56px;margin:0 auto;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:700;background:var(--success-soft);color:var(--success);animation:pop-in .36s cubic-bezier(.2,.9,.3,1.3) both}.confetti-canvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:9999}.course-complete-actions{display:flex;justify-content:center;gap:var(--space-2);flex-wrap:wrap}@keyframes pop-in{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.rich{line-height:1.65}.rich table{border-collapse:collapse}.rich td,.rich th{border:1px solid var(--border);padding:6px 10px}.rich blockquote{border-left:4px solid var(--brand-accent);margin:0;padding:var(--space-2) var(--space-4);background:var(--light)}.rich pre{background:var(--ink);color:#f4f4f5;padding:var(--space-3);border-radius:var(--radius-sm);overflow-x:auto}.text-lesson-body{max-height:70vh;overflow-y:auto;padding-right:var(--space-2)}.video-frame{position:relative;aspect-ratio:16 / 9;background:#000;border-radius:var(--radius);overflow:hidden}.video-frame>div,.video-frame iframe{position:absolute;inset:0;width:100%;height:100%}.video-overlay{position:absolute;inset:0;background:#18181be0;color:#fff;display:grid;place-items:center;padding:var(--space-5);z-index:5}.video-overlay .card{color:var(--ink);width:min(560px,100%)}.watch-bar{height:6px;background:var(--light);border-radius:999px;position:relative;overflow:hidden;margin-top:var(--space-2)}.watch-bar span{position:absolute;top:0;bottom:0;background:var(--brand-accent)}.pdf-frame{width:100%;height:75vh;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.side-panel textarea{min-height:140px}.quiz-question{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.quiz-question+.quiz-question{margin-top:var(--space-3)}.sortable-item{display:flex;align-items:center;gap:var(--space-2);padding:8px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:6px}.drag-handle{cursor:grab;color:var(--muted);background:none;border:none;padding:4px;font-size:16px}.quiz-start-notes{margin:0;padding-left:20px;color:var(--ink-2);font-size:var(--text-sm);line-height:1.7}.timer{font-variant-numeric:tabular-nums;font-weight:700}.timer.low{color:var(--danger)}@media(max-width:900px){.player{grid-template-columns:minmax(0,1fr)}.player-outline{position:static;max-height:none;padding:0}.outline-toggle{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;border-radius:var(--radius)}.outline-toggle:focus-visible{box-shadow:var(--focus)}.outline-toggle>span{display:flex;flex-direction:column;min-width:0}.outline-toggle-label{font-weight:600;font-size:var(--text-sm)}.outline-toggle-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-outline:not(.open) .outline-body{display:none}.player-outline.open .outline-body{padding:0 var(--space-2) var(--space-2);border-top:1px solid var(--border)}}@media(max-width:560px){.lesson-nav{flex-direction:column-reverse}.lesson-nav>span:empty{display:none}.lesson-nav-btn{max-width:none;width:100%;box-sizing:border-box;justify-content:space-between}.lesson-nav-next{margin-left:0}.lesson-nav-end{justify-content:flex-start;text-align:left;margin-left:0}.player-progress{max-width:none}}.builder{display:grid;grid-template-columns:340px 1fr;gap:var(--space-4);align-items:start}.builder-outline{position:sticky;top:72px;max-height:calc(100vh - 96px);overflow-y:auto}.outline-row{display:flex;align-items:center;gap:var(--space-1);padding:6px var(--space-2);border-radius:var(--radius-sm);background:var(--surface)}.outline-row.selected{background:var(--brand-accent-soft)}.outline-row .title-btn{all:unset;flex:1;cursor:pointer;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outline-row .title-btn:focus-visible{box-shadow:var(--focus)}.module-block{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2);margin-bottom:var(--space-3);background:var(--light)}.module-head{display:flex;align-items:center;gap:var(--space-1);padding:4px;font-weight:600}.timeline{position:relative;height:34px;background:var(--light);border-radius:var(--radius-sm);border:1px solid var(--border);cursor:crosshair}.timeline .marker{position:absolute;top:4px;width:14px;height:24px;margin-left:-7px;border-radius:4px;background:var(--brand-accent);border:none;cursor:pointer}@media(max-width:1000px){.builder{grid-template-columns:1fr}.builder-outline{position:static;max-height:none}}.editor{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface)}.editor-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:4px;border-bottom:1px solid var(--border);background:var(--light)}.editor-toolbar button{min-width:30px;height:28px;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;font-size:13px;font-weight:600;color:var(--ink)}.editor-toolbar button[aria-pressed=true]{background:var(--brand-accent-soft);border-color:var(--brand-accent)}.editor-content .ProseMirror{min-height:180px;padding:var(--space-3);outline:none}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}.badge-item{text-align:center;padding:var(--space-4) var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.badge-item .icon{display:flex;justify-content:center;align-items:flex-end;height:112px;margin:0 auto var(--space-2)}.badge-item .icon svg{display:block}.badge-item.locked>:not(.icon){opacity:.6}.profile-card{display:flex;gap:var(--space-4);align-items:center}.avatar{width:64px;height:64px;border-radius:50%;background:var(--brand-accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:22px;flex:none}.empty{text-align:center;padding:var(--space-6) var(--space-4);color:var(--muted)}.loading{padding:var(--space-6);text-align:center;color:var(--muted)}.toast-host{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:200}.toast{background:var(--ink);color:var(--surface);padding:10px 16px;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-size:var(--text-sm)}.toast.error{background:var(--danger)}.toast{max-width:min(420px,calc(100vw - 32px));display:flex;align-items:flex-start;gap:10px;animation:toast-in .18s ease-out}.toast-text{flex:1;min-width:0}.toast-close{flex:none;background:none;border:0;color:inherit;opacity:.7;cursor:pointer;font:inherit;font-size:16px;line-height:1;padding:1px 2px;margin:-1px -6px 0 0}.toast-close:hover,.toast-close:focus-visible{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.btn-spinner,.btn[aria-busy=true]:before{flex:none;width:14px;height:14px;border-radius:50%;box-sizing:border-box;border:2px solid currentColor;border-right-color:transparent;animation:loader-spin .8s linear infinite}.btn[aria-busy=true]:before{content:""}.btn[aria-busy=true]:has(.rp-spinner,.btn-spinner):before{content:none}label.btn[aria-disabled=true]{opacity:.8;cursor:progress}.btn-sm[aria-busy=true]:before{width:12px;height:12px}.btn[aria-busy=true],.btn[aria-busy=true]:disabled{opacity:.8;cursor:progress}@media(prefers-reduced-motion:reduce){.btn-spinner,.btn[aria-busy=true]:before{animation-duration:2.4s}}.toast.with-icon{display:flex;align-items:center;gap:10px;padding-left:10px}.toast-icon{flex:none;display:flex}.toast-icon svg{display:block}.splash{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;min-height:100dvh;display:grid;grid-template-rows:1fr auto;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;color:#fff;text-align:center;padding:var(--space-5) var(--space-4) 0;background:radial-gradient(900px 480px at 50% -8%,color-mix(in srgb,var(--brand-accent) 18%,transparent),transparent 65%),var(--brand-primary)}.splash:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgb(255 255 255 / 4.5%) 1px,transparent 1px) 0 0 / 44px 44px,linear-gradient(90deg,rgb(255 255 255 / 4.5%) 1px,transparent 1px) 0 0 / 44px 44px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 75%)}.splash-aurora{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}.splash-aurora span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.36;will-change:transform}.splash-aurora span:nth-child(1){width:560px;height:560px;left:-140px;top:-180px;background:var(--brand-accent);animation:aurora-a 22s ease-in-out infinite alternate}.splash-aurora span:nth-child(2){width:480px;height:480px;right:-160px;top:18%;background:#2dd4bf;opacity:.28;animation:aurora-b 26s ease-in-out infinite alternate}.splash-aurora span:nth-child(3){width:520px;height:420px;left:30%;bottom:-260px;background:var(--brand-accent);opacity:.3;animation:aurora-c 30s ease-in-out infinite alternate}@keyframes aurora-a{to{transform:translate(180px,120px) scale(1.15)}}@keyframes aurora-b{to{transform:translate(-200px,80px) scale(.9)}}@keyframes aurora-c{to{transform:translate(-160px,-90px) scale(1.2)}}.splash .card{color:var(--ink);width:100%;max-width:440px;padding:var(--space-6);border-radius:18px;box-shadow:var(--shadow-lg)}.signin-layout{width:100%;max-width:1080px;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;gap:56px}.signin-hero{display:none}@media(min-width:960px){.signin-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,420px);justify-items:stretch}.signin-hero{display:flex;flex-direction:column;gap:20px;padding-right:24px;text-align:left;animation:signin-rise .5s cubic-bezier(.2,.7,.2,1) both}}.signin-hero-logo{display:inline-flex;align-items:center;gap:12px;font-weight:700;font-size:17px;letter-spacing:-.01em;color:#fff}.signin-hero-logo svg{color:var(--brand-accent)}.signin-hero-title{margin:8px 0 0;font-size:clamp(40px,4.6vw,58px);line-height:1.04;font-weight:750;letter-spacing:-.035em;color:#fff}.signin-hero-title em{font-style:normal;background:linear-gradient(100deg,var(--brand-accent),color-mix(in srgb,var(--brand-accent) 35%,white) 55%,#99f6e4);-webkit-background-clip:text;background-clip:text;color:transparent}.signin-hero-sub{margin:0;max-width:460px;font-size:17px;line-height:1.55;color:#a1a1aa}.signin-hero-points{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:12px}.signin-hero-points li{display:flex;align-items:center;gap:12px;color:#d4d4d8;font-size:14.5px}.signin-hero-icon{flex:none;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;color:color-mix(in srgb,var(--brand-accent) 70%,white);background:#ffffff0f;border:1px solid rgb(255 255 255 / 10%)}.splash .signin-card{position:relative;overflow:hidden;max-width:420px;display:flex;flex-direction:column;gap:var(--space-3);padding:40px 34px 30px;border-radius:22px;box-shadow:0 0 0 1px #ffffff0f,0 30px 80px -20px #0000008c,0 0 120px -30px color-mix(in srgb,var(--brand-accent) 35%,transparent);animation:signin-rise .45s cubic-bezier(.2,.7,.2,1) .05s both}.signin-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--brand-accent) 20%,var(--brand-accent) 80%,transparent)}.signin-brand{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:var(--text-lg);letter-spacing:-.01em;margin-bottom:var(--space-1)}.signin-mark{display:inline-flex;color:var(--brand-accent)}.signin-title{font-size:26px;font-weight:700;margin:0;letter-spacing:-.025em}.signin-sub{color:var(--muted);margin:-4px 0 var(--space-2);font-size:var(--text-sm)}.signin-btn{position:relative;overflow:hidden;width:100%;min-height:48px;font-size:15px;gap:10px;border-radius:12px;box-shadow:0 8px 24px -8px color-mix(in srgb,var(--brand-accent) 60%,transparent),inset 0 1px #ffffff40;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.signin-btn svg{flex:none;background:#fff;padding:3px;border-radius:5px;box-sizing:content-box}.signin-btn:after{content:"";position:absolute;inset:0;transform:translate(-120%);pointer-events:none;background:linear-gradient(100deg,transparent 30%,rgb(255 255 255 / 45%),transparent 70%)}.signin-btn:hover{transform:translateY(-1px);box-shadow:0 12px 30px -8px color-mix(in srgb,var(--brand-accent) 60%,transparent),inset 0 1px #ffffff40}.signin-btn:hover:after{transform:translate(120%);transition:transform .7s ease}.signin-fine{margin:0;font-size:var(--text-xs);color:var(--muted)}.signin-foot{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--space-5) 0 20px;color:#a1a1aa;font-size:var(--text-xs)}.signin-foot a:not(.underhill-badge){color:inherit;text-decoration:none}.signin-foot a:not(.underhill-badge):hover{color:#fff;text-decoration:underline}@keyframes signin-rise{0%{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}.loader{display:flex;flex-direction:column;align-items:center;gap:18px;animation:signin-rise .4s ease both}.loader-orb{position:relative;width:96px;height:96px;display:grid;place-items:center}.loader-orb:before{content:"";position:absolute;inset:-18px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand-accent) 30%,transparent),transparent 70%);animation:loader-breathe 2.4s ease-in-out infinite}.loader-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 55%,var(--brand-accent) 85%,#fff 100%);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));animation:loader-spin 1.1s linear infinite}.loader-core{position:relative;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;color:var(--brand-accent);background:#ffffff0d;border:1px solid rgb(255 255 255 / 10%);animation:loader-bob 2.4s ease-in-out infinite}.loader-msg{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:#fff;animation:loader-msg .45s ease both}.loader-bar{position:relative;width:160px;height:3px;border-radius:3px;overflow:hidden;background:#ffffff1a}.loader-bar span{position:absolute;inset:0 auto 0 0;width:40%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--brand-accent),transparent);animation:loader-slide 1.4s ease-in-out infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes loader-breathe{0%,to{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}@keyframes loader-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes loader-msg{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes loader-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media(prefers-reduced-motion:reduce){.splash .signin-card,.signin-hero,.loader,.loader-msg,.splash-aurora span,.loader-orb:before,.loader-core{animation:none}.loader-ring,.loader-bar span{animation-duration:3s}.signin-btn,.signin-btn:after{transition:none}}@media(max-width:480px){.splash .signin-card{padding:32px 22px 24px;border-radius:18px}.signin-title{font-size:23px}}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.chart-box{height:320px}.perm-matrix td{text-align:center}.perm-matrix td:first-child,.perm-matrix th:first-child{text-align:left}.chip-list{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:4px;padding:3px 4px 3px 10px;border-radius:999px;background:var(--brand-accent-soft);font-size:var(--text-xs);font-weight:600}.chip button{border:none;background:transparent;cursor:pointer;font-size:14px;line-height:1;padding:0 4px;color:var(--ink-2)}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius);padding:var(--space-5);text-align:center;color:var(--muted)}.dropzone.over{border-color:var(--brand-accent);background:var(--brand-accent-soft)}.steps{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap}.steps li{list-style:none;font-size:var(--text-sm);color:var(--muted);padding:6px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--border)}.steps li[aria-current=step]{color:var(--brand-accent-ink);background:var(--brand-accent);border-color:var(--brand-accent);font-weight:600}.steps{padding:0;margin-top:0}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.from-underhill{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs, 12px);font-weight:600;color:var(--muted, #71717a);letter-spacing:.02em}.from-underhill-mark{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:5px;background:#18181b;color:#fafafa;font-size:11px;font-weight:700;box-shadow:inset 0 -2px #ff7a59,0 0 0 1px #fafafa40}.unread-dot{position:absolute;top:4px;right:2px;width:8px;height:8px;border-radius:50%;background:var(--brand-accent);box-shadow:0 0 0 2px var(--surface)}.drawer-backdrop{position:fixed;inset:0;background:#18181b59;z-index:60;display:flex;justify-content:flex-end}.drawer{width:min(440px,100vw);height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.drawer>header{padding:16px 18px;border-bottom:1px solid var(--border)}.drawer-body{overflow-y:auto;padding:8px 18px 24px}.announcement-list{list-style:none;margin:0;padding:0}.announcement-list>li{padding:16px 0 16px 12px;border-bottom:1px solid var(--border);border-left:3px solid transparent}.announcement-list>li.unread{border-left-color:var(--brand-accent)}.announcement-title{margin:0;font-size:var(--text-lg, 18px)}.announcement-image{max-width:100%;border-radius:var(--radius);border:1px solid var(--border)}.announcement-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 20px;background:var(--brand-accent-soft);border-bottom:1px solid var(--border);border-left:4px solid var(--brand-accent)}.announcement-banner-text{flex:1 1 280px;min-width:0}.announcement-banner-body>:first-child{margin-top:2px}.announcement-banner-body>:last-child{margin-bottom:0}.tenant-logo{display:inline-flex;align-items:center;max-width:100%;line-height:0}.tenant-logo img{display:block;max-width:100%;width:auto;height:auto;object-fit:contain}.tenant-logo.plate-light{background:#fff;padding:5px 8px;border-radius:8px}.tenant-logo.plate-dark{background:#18181b;padding:5px 8px;border-radius:8px}.sidebar .brand .tenant-logo{max-width:216px}.theme-select{display:inline-flex;flex-direction:column;gap:var(--space-1)}.theme-select select{max-width:260px}.theme-select.compact select{min-height:32px;padding:2px 8px;font-size:var(--text-xs);width:auto}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.swatch{display:flex;align-items:center;gap:8px;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);padding:6px 10px;border-radius:var(--radius-sm);font:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;text-align:left}.swatch:hover{background:var(--light)}.swatch.on{border-color:var(--brand-accent);box-shadow:var(--focus)}.swatch-dot{width:18px;height:18px;border-radius:999px;flex:none;box-shadow:inset 0 0 0 1px #00000026}.swatch-dot.custom{background:conic-gradient(#e11d48,#f59e0b,#16a34a,#0ea5e9,#7c3aed,#e11d48)}.color-field{display:flex;gap:8px;align-items:center}.color-field input[type=color]{width:44px;height:36px;padding:2px;flex:none}.color-field input[type=text]{max-width:120px;font-family:var(--mono);text-transform:uppercase}.brand-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px}.brand-preview{margin:0;display:grid;grid-template-columns:104px 1fr;grid-template-rows:1fr auto;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--light);color:var(--ink);min-height:150px;font-size:11.5px}.brand-preview figcaption{grid-column:1 / -1;padding:5px 10px;font-size:11px;color:var(--muted);border-top:1px solid var(--border);background:var(--surface)}.bp-side{background:var(--brand-primary);color:#e4e4e7;padding:10px 6px;display:flex;flex-direction:column;gap:3px}.bp-logo{display:flex;align-items:center;gap:5px;color:#fff;font-weight:700;font-size:11px;padding:0 4px 8px;min-height:22px;overflow:hidden}.bp-logo .tenant-logo{max-width:92px}.bp-logo .tenant-logo.plate-light,.bp-logo .tenant-logo.plate-dark{padding:3px 5px;border-radius:5px}.bp-item{padding:4px 6px;border-radius:5px}.bp-item.on{background:var(--brand-accent);color:var(--brand-accent-ink);font-weight:600}.bp-main{padding:12px}.bp-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px}.bp-title{font-weight:650}.bp-text{color:var(--muted)}.bp-link{color:var(--brand-accent-strong)}.bp-progress{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.bp-progress span{display:block;height:100%;background:var(--brand-accent)}.bp-button{display:inline-block;background:var(--brand-accent);color:var(--brand-accent-ink);padding:3px 9px;border-radius:6px;font-weight:600}.bp-pill{display:inline-block;background:var(--brand-accent-soft);color:var(--brand-accent-strong);padding:1px 7px;border-radius:999px;font-weight:600}.logo-tips{background:var(--info-soft);border-radius:var(--radius-sm);padding:10px 14px;font-size:var(--text-sm);color:var(--ink-2)}.logo-tips ul{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.logo-surfaces{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px}.logo-surface{margin:0;display:flex;flex-direction:column;gap:4px}.logo-surface-box{height:72px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;padding:12px}.logo-surface-box .tenant-logo{max-width:90%}.sidebar .brand svg{flex:none}.side-foot{margin-top:auto;padding:var(--space-3) var(--space-2) 0;border-top:1px solid rgb(255 255 255 / 10%)}.underhill-badge{display:inline-flex;align-items:center;justify-content:center;width:44px;height:32px;border-radius:8px;border:1px solid rgb(255 255 255 / 14%);color:#a1a1aa;transition:background .15s,border-color .15s,color .15s}.underhill-badge:hover{background:#ffffff12;border-color:#ffffff47;color:#fff}.underhill-badge svg{display:block}.league-me{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap;margin-bottom:var(--space-4)}.league-level{width:72px;height:72px;overflow:hidden;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--brand-accent-soft);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand-accent) 35%,transparent)}.league-me-main{flex:1 1 260px;min-width:0}.league-me-figures{display:flex;gap:var(--space-5);flex-wrap:wrap}.league-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--space-4);align-items:start}@media(max-width:1100px){.league-layout{grid-template-columns:minmax(0,1fr)}}.league-controls{align-items:flex-end}.league-controls .tabs{margin-bottom:0;flex:1 1 auto}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:2px;background:var(--surface)}.segmented button{all:unset;cursor:pointer;padding:5px 14px;border-radius:999px;font-size:var(--text-sm);font-weight:600;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.segmented button:focus-visible{box-shadow:var(--focus)}.league-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);align-items:end;padding:var(--space-4) var(--space-4) 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.podium-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;min-width:0}.podium-step .avatar{width:48px;height:48px;font-size:17px;margin-bottom:4px}.podium-step.place-1 .avatar{width:60px;height:60px;font-size:20px;box-shadow:0 0 0 3px #f5c542}.podium-step.place-2 .avatar{box-shadow:0 0 0 3px #b8bec7}.podium-step.place-3 .avatar{box-shadow:0 0 0 3px #d0925e}.podium-name{font-weight:700;font-size:var(--text-sm);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-block{width:100%;margin-top:var(--space-2);border-radius:var(--radius-sm) var(--radius-sm) 0 0;display:grid;place-items:center;font-weight:800;font-size:var(--text-xl);color:var(--ink-3);background:var(--light)}.podium-step.place-1 .podium-block{height:72px;background:color-mix(in srgb,#f5c542 28%,var(--surface));color:var(--ink)}.podium-step.place-2 .podium-block{height:52px;background:color-mix(in srgb,#b8bec7 30%,var(--surface))}.podium-step.place-3 .podium-block{height:38px;background:color-mix(in srgb,#d0925e 26%,var(--surface))}.podium-step.is-me .podium-name{color:var(--brand-accent-strong)}.league-table tr.is-me td{background:var(--brand-accent-soft)}.league-rank{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:50%;font-weight:700;font-size:var(--text-xs)}.league-rank.top-1{background:#f5c542;color:#18181b}.league-rank.top-2{background:#b8bec7;color:#18181b}.league-rank.top-3{background:#d0925e;color:#18181b}.avatar.sm{width:30px;height:30px;font-size:12px}.league-level-chip{display:inline-flex;gap:4px;align-items:center;font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:999px;background:var(--light);white-space:nowrap}@media(max-width:700px){.league-table .hide-sm{display:none}}.league-rules,.league-recent{list-style:none;margin:0;padding:0}.league-rules li{display:flex;justify-content:space-between;gap:var(--space-3);padding:6px 0;font-size:var(--text-sm);border-bottom:1px dashed var(--border)}.league-rules li:last-child{border-bottom:none}.league-rules b,.league-recent .pts{color:var(--success);font-variant-numeric:tabular-nums;white-space:nowrap}.league-recent{max-height:420px;overflow-y:auto}.league-recent li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--space-2);align-items:center;padding:7px 0;border-bottom:1px solid var(--border)}.league-recent li:last-child{border-bottom:none}.league-recent .icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent-soft);color:var(--brand-accent-strong)}.league-recent .icon svg,.league-level-chip svg,.pill svg,.stat-tile .label svg{display:block;flex:none}.stat-tile .label,.streak-value{display:inline-flex;align-items:center;gap:4px}.streak-value svg{color:var(--brand-accent)}.league-recent .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.stat-tile.points-tile{text-decoration:none;color:inherit}a.stat-tile.points-tile:hover{border-color:var(--brand-accent)}.sender-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-4)}.sender-step h3{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text);margin:0 0 var(--space-2)}.sender-step-n{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:var(--text-xs);font-weight:700;background:var(--light);border:1px solid var(--border);flex:none}.sender-step-n.done{background:var(--success-soft);color:var(--success);border-color:transparent}.sender-step p{margin:0 0 var(--space-2)}.sender-value{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.sender-value code,.sender-step code{font-family:var(--mono);font-size:var(--text-sm);overflow-wrap:anywhere}.sender-cmd{display:flex;align-items:flex-start;gap:var(--space-2)}.sender-cmd pre{flex:1;min-width:0;margin:0;padding:var(--space-2) var(--space-3);background:var(--light);border:1px solid var(--border);border-radius:var(--radius-sm);overflow-x:auto}.sender-cmd pre code{font-family:var(--mono);font-size:var(--text-xs);white-space:pre}.sender-checks{list-style:none;padding:0;margin:var(--space-3) 0 0;display:flex;flex-direction:column;gap:var(--space-2)}.sender-check{display:flex;gap:var(--space-2);align-items:flex-start;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm)}.sender-check-icon{font-weight:700;width:1.2em;text-align:center;flex:none}.sender-check.pass .sender-check-icon{color:var(--success)}.sender-check.fail .sender-check-icon,.sender-check.warn .sender-check-icon{color:var(--danger)}.sender-check.skipped .sender-check-icon{color:var(--muted)}.sender-check.proof{border-width:2px}.sender-check.proof.pass{border-color:var(--success)}.sender-check.proof.fail{border-color:var(--danger)}.cancel-reasons{border:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.cancel-reasons legend{font-weight:650;font-size:var(--text);padding:0;margin-bottom:var(--space-2)}.cancel-reason{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.cancel-reason:hover{background:var(--brand-accent-soft)}.cancel-reason.picked{border-color:var(--brand-accent);background:var(--brand-accent-soft)}.cancel-reason:focus-within{outline:2px solid var(--focus);outline-offset:1px}.cancel-count{align-self:flex-end}.cancel-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-3)}.cancel-reason input{width:16px;height:16px;margin:0;accent-color:var(--brand-accent);flex:none}.profile-menu{position:relative}.profile-button{display:inline-flex;align-items:center;gap:8px;padding:3px 10px 3px 3px;border-radius:999px;cursor:pointer;background:transparent;color:var(--ink);border:1px solid var(--border);font:inherit;font-size:var(--text-sm);font-weight:600;line-height:1}.profile-button:hover,.profile-button[aria-expanded=true]{background:var(--light);border-color:var(--border-strong)}.profile-button:focus-visible{outline:none;box-shadow:var(--focus)}.profile-avatar{position:relative;width:30px;height:30px;font-size:12px}.profile-dot{position:absolute;top:-1px;right:-1px;width:10px;height:10px;border-radius:50%;background:var(--brand-accent);box-shadow:0 0 0 2px var(--surface)}.profile-chev{color:var(--muted);transition:transform .15s}.profile-button[aria-expanded=true] .profile-chev{transform:rotate(180deg)}.profile-panel{position:absolute;right:0;top:calc(100% + 8px);width:300px;max-width:calc(100vw - 24px);z-index:40;padding:6px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.profile-who{display:flex;gap:12px;align-items:center;padding:10px 10px 8px}.profile-who>div{min-width:0}.profile-who strong{display:block;font-size:var(--text-sm)}.profile-who small{display:block;color:var(--muted);font-size:var(--text-xs);overflow-wrap:anywhere}.profile-role{display:inline-block;margin-top:4px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--brand-accent-soft);color:var(--brand-accent-strong)}.profile-org{padding:0 10px 8px;font-size:var(--text-xs);color:var(--muted)}.profile-sep{height:1px;background:var(--border);margin:4px}.profile-item{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:var(--text-sm);text-align:left;text-decoration:none;cursor:pointer;min-height:0}.profile-item:hover,.profile-item:focus-visible{background:var(--light);color:var(--ink);outline:none;text-decoration:none}.profile-item.signout{color:var(--danger)}.profile-item-count{margin-left:auto;min-width:20px;padding:0 6px;border-radius:999px;background:var(--brand-accent);color:var(--brand-accent-ink);font-size:11px;font-weight:700;text-align:center}.profile-group{display:flex;flex-direction:column;gap:6px;padding:6px 10px 8px}.profile-label{font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.profile-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;border-radius:9px;background:var(--light);border:1px solid var(--border)}.profile-seg button{padding:5px 4px;min-height:0;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer}.profile-seg button:hover{color:var(--ink)}.profile-seg button[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #00000026}.profile-seg button:focus-visible{outline:none;box-shadow:var(--focus)}@media(max-width:720px){.profile-button{padding:2px;border-color:transparent}.profile-button-name,.profile-chev{display:none}}.setup-steps{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.setup-step{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-2) 0;border-top:1px solid var(--border)}.setup-step:first-child{border-top:0}.setup-mark{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:var(--text-sm);background:var(--light);color:var(--ink-2)}.setup-step.next .setup-mark{background:var(--brand-accent);color:var(--brand-accent-ink)}.setup-step.done .setup-mark{background:var(--success-soft);color:var(--success)}.setup-step.done strong{color:var(--ink-2)}.setup-body{min-width:0}@media(max-width:600px){.setup-step{grid-template-columns:28px minmax(0,1fr);align-items:start}.setup-step>.btn{grid-column:2;justify-self:start}}.email-prefs{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius)}.email-prefs li+li{border-top:1px solid var(--border)}.email-pref{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);cursor:pointer}.email-pref input{margin-top:3px;flex:none;width:18px;height:18px}.email-pref>span{display:grid;gap:2px;min-width:0}.email-pref input:disabled{cursor:not-allowed}.email-pref-lock{margin-left:var(--space-2);font-size:var(--text-xs);font-weight:600;padding:1px 8px;border-radius:99px;border:1px solid var(--border);color:var(--muted)}.rp-page{max-width:1440px;margin:0 auto}.rp-brief-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:var(--space-4);align-items:start}@media(max-width:1000px){.rp-brief-layout{grid-template-columns:1fr}}.rp-avatar{position:relative;display:inline-grid;place-items:center;border-radius:50%;flex:none}.rp-avatar img,.rp-initials{border-radius:50%;object-fit:cover;display:grid;place-items:center;color:#fff;font-weight:700}.rp-avatar.speaking:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:3px solid var(--brand-accent);animation:rp-pulse 1.1s ease-in-out infinite}@keyframes rp-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.55}}.rp-picker-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3)}.rp-filters{display:flex;flex-wrap:wrap;gap:6px}.rp-filter{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;cursor:pointer;border:1px solid var(--border-strong);background:transparent;color:var(--ink-2);font:inherit;font-size:var(--text-sm);font-weight:600}.rp-filter:hover{border-color:var(--brand-accent);color:var(--ink)}.rp-filter.on{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-accent-ink)}.rp-filter-count{font-size:var(--text-xs);opacity:.7;font-weight:600}.rp-picker-stats{margin-left:auto}.rp-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);align-items:start}@media(max-width:1100px){.rp-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.rp-lanes{grid-template-columns:1fr}}.rp-lane{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius);background:#7f7f7f0f}.rp-lane-head{display:flex;align-items:baseline;gap:8px;padding:2px 4px 0}.rp-lane-head h2{margin:0;font-size:var(--text)}.rp-lane-dot{width:8px;height:8px;border-radius:50%;background:var(--tone);align-self:center;flex:none}.rp-lane-count{margin-left:auto;color:var(--ink-3);white-space:nowrap}.rp-lane-progress{height:3px;border-radius:999px;background:#7f7f7f2e;margin:0 4px 4px;overflow:hidden}.rp-lane-progress span{display:block;height:100%;background:var(--tone)}.rp-lane .rp-card{border-left:3px solid var(--tone)}.rp-lane-empty{padding:var(--space-4);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius)}.rp-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:var(--space-2);text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}a.rp-card:hover{border-color:var(--brand-accent);transform:translateY(-1px)}.rp-card-head{display:flex;gap:var(--space-3);align-items:center}.rp-card-title{display:flex;flex-direction:column;min-width:0;gap:1px}.rp-card-title h3{margin:0;font-size:var(--text);line-height:1.3}.rp-card-group{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--brand-accent-strong)}.rp-card-summary{margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rp-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto}.rp-card-score{margin-left:auto;font-size:var(--text-xs);color:var(--ink-3)}.rp-card-score strong{color:var(--ink)}.rp-card-score.passed,.rp-card-score.passed strong{color:var(--success)}.rp-card-meter{position:absolute;left:0;right:0;bottom:0;height:3px;background:transparent}.rp-card-meter span{display:block;height:100%;background:var(--brand-accent)}.rp-card-meter span.passed{background:var(--success)}.rp-brief-head{display:flex;gap:var(--space-3);align-items:center;margin-bottom:var(--space-3)}.rp-brief-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.rp-brief h3{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin:var(--space-3) 0 var(--space-1)}.rp-brief h3:first-child{margin-top:0}.rp-start{display:flex;flex-direction:column;gap:var(--space-3)}.rp-modes{margin:0}.rp-mode-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.rp-mode{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-strong);border-radius:999px;cursor:pointer;font-size:var(--text-sm);font-weight:600}.rp-mode input{position:absolute;opacity:0;width:1px;height:1px}.rp-mode.on{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-accent-ink)}.rp-mode.off{opacity:.5;cursor:not-allowed}.rp-mode:focus-within{box-shadow:var(--focus)}.rp-switches{display:flex;flex-direction:column;gap:6px}.rp-switch-row{display:flex;align-items:center;gap:6px}.rp-switch{all:unset;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:var(--text-sm)}.rp-switch:focus-visible{box-shadow:var(--focus);border-radius:999px}.rp-switch:disabled{opacity:.5;cursor:not-allowed}.rp-switch-knob{width:36px;height:20px;border-radius:999px;background:var(--border-strong);position:relative;transition:background .15s;flex:none}.rp-switch-knob:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}.rp-switch.on .rp-switch-knob{background:var(--brand-accent)}.rp-switch.on .rp-switch-knob:after{left:18px}.rp-tip{position:relative;display:inline-flex}.rp-tip-icon{cursor:help;color:var(--muted);font-size:14px;line-height:1;padding:2px;border-radius:50%}.rp-tip-icon:focus-visible{box-shadow:var(--focus);outline:none}.rp-tip-bubble{position:absolute;z-index:30;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);width:280px;background:var(--ink);color:var(--surface);font-size:var(--text-xs);line-height:1.45;padding:8px 10px;border-radius:6px;box-shadow:var(--shadow-lg)}.rp-camera-setup{display:grid;grid-template-columns:1fr 200px;gap:var(--space-3);align-items:start}.rp-cam-preview{width:200px;aspect-ratio:4 / 3;background:#000;border-radius:var(--radius-sm);object-fit:cover;transform:scaleX(-1)}.rp-audio-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;background:var(--light);border-radius:var(--radius-sm)}.rp-audio-line.warn{background:var(--warning-soft);color:var(--warning)}.rp-bars{display:inline-flex;gap:2px;align-items:flex-end;height:12px}.rp-bars i{width:4px;background:var(--border-strong);border-radius:1px}.rp-bars i:nth-child(1){height:5px}.rp-bars i:nth-child(2){height:8px}.rp-bars i:nth-child(3){height:12px}.rp-bars i.on{background:var(--success)}.rp-audio-panel{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3)}.rp-start-btn{min-height:44px;padding:0 28px;font-size:var(--text)}.rp-call{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);position:relative;max-width:1440px;margin:0 auto}.rp-call.with-help{grid-template-columns:minmax(0,1fr) 300px}@media(max-width:1000px){.rp-call.with-help{grid-template-columns:1fr}}.rp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.rp-tile{aspect-ratio:16 / 10;background:var(--brand-primary);border-radius:var(--radius-lg);display:grid;place-items:center;position:relative;overflow:hidden}.rp-tile-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.rp-tile-name{position:absolute;left:12px;bottom:10px;color:#fff;font-size:var(--text-sm);font-weight:600;background:#00000059;padding:2px 8px;border-radius:6px}.rp-transcript{list-style:none;margin:0;padding:var(--space-3);max-height:320px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:8px}.rp-transcript.static{max-height:none;border:none;padding:var(--space-2) 0 0}.rp-transcript li{display:flex;flex-direction:column;max-width:80%;font-size:var(--text-sm)}.rp-transcript li.rep{align-self:flex-end;text-align:right}.rp-transcript li>span:last-child{background:var(--light);padding:6px 10px;border-radius:10px}.rp-transcript li.rep>span:last-child{background:var(--brand-accent-soft)}.rp-transcript .who{font-size:var(--text-xs);color:var(--muted);margin-bottom:2px}.rp-help{align-self:start;position:sticky;top:72px}.rp-help-points{list-style:none;padding:0;margin:12px 0 0;font-size:var(--text-xs)}.rp-help-points li{padding:2px 0;color:var(--muted)}.rp-help-points li.done{color:var(--success)}.rp-thinking{width:10px;height:10px;border-radius:50%;background:var(--brand-accent);animation:rp-pulse .9s ease-in-out infinite}.rp-nudge{position:fixed;right:24px;bottom:24px;z-index:60;max-width:360px;display:flex;gap:8px;align-items:flex-start;background:var(--ink);color:var(--surface);padding:12px 14px;border-radius:var(--radius);box-shadow:var(--shadow-lg);font-size:var(--text-sm);animation:rp-slide-in .3s ease-out}.rp-nudge .btn{color:inherit}@keyframes rp-slide-in{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}.rp-results-head{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.rp-results-head .ring-label{font-size:var(--text-lg)}.rp-metric{margin-bottom:var(--space-4)}.rp-metric .progress{margin:4px 0 8px}.rp-points{list-style:none;padding:0;margin:0}.rp-points summary{cursor:pointer;font-size:var(--text-sm);padding:4px 0;display:flex;gap:8px;align-items:center}.rp-point-mark{width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;color:#fff;flex:none}.rp-point-mark.pass{background:var(--success)}.rp-point-mark.miss{background:var(--danger)}.rp-point-body{padding:0 0 8px 26px}.rp-point-body p{margin:4px 0}.rp-attempts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.rp-attempt-row{all:unset;box-sizing:border-box;width:100%;display:flex;gap:10px;align-items:center;padding:8px;border-radius:var(--radius-sm);cursor:pointer;flex-wrap:wrap}.rp-attempt-row:hover{background:var(--light)}.rp-attempt-row:focus-visible{box-shadow:var(--focus)}.rp-attempt-main{display:flex;flex-direction:column;flex:1;min-width:140px}.rp-score{font-weight:700;font-variant-numeric:tabular-nums;min-width:44px}.rp-score.pass{color:var(--success)}.rp-score.fail{color:var(--ink-3)}.rp-drawer-backdrop{position:fixed;inset:0;background:#18181b66;z-index:90;display:flex;justify-content:flex-end}.rp-drawer{width:min(520px,100%);height:100%;background:var(--surface);padding:var(--space-5);overflow-y:auto;box-shadow:var(--shadow-lg);animation:rp-slide-left .2s ease-out}@keyframes rp-slide-left{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}.rp-builder-page{max-width:1440px;margin:0 auto}.rp-builder{display:grid;grid-template-columns:200px minmax(0,1fr) 360px;gap:var(--space-4);align-items:start}@media(max-width:1200px){.rp-builder{grid-template-columns:180px minmax(0,1fr)}.rp-side{grid-column:1 / -1}}@media(max-width:800px){.rp-builder{grid-template-columns:1fr}}.rp-rail{position:sticky;top:72px;padding:var(--space-2)}.rp-rail ol{list-style:none;margin:0;padding:0}.rp-rail button{all:unset;box-sizing:border-box;width:100%;display:flex;gap:8px;align-items:center;padding:8px;border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.rp-rail button:hover{background:var(--light)}.rp-rail button[aria-current=step]{background:var(--brand-accent-soft);font-weight:600}.rp-rail button:focus-visible{box-shadow:var(--focus)}.rp-tick{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);display:grid;place-items:center;font-size:11px;flex:none}.rp-tick.done{background:var(--success);border-color:var(--success);color:#fff}.rp-step{position:sticky;top:72px}.rp-side{position:sticky;top:72px;max-height:calc(100vh - 96px);overflow:hidden}.rp-side>.card{flex:none}.rp-side>.rp-side-preview{flex:1 1 auto;min-height:0;overflow-y:auto}@media(max-width:1200px){.rp-side{position:static;max-height:none;overflow:visible}.rp-side>.rp-side-preview{overflow:visible}}@media(max-width:800px){.rp-rail,.rp-step{position:static}}.rp-missing{list-style:none;padding:0;margin:0}.rp-missing .btn{height:auto;min-height:0;padding:4px 0;white-space:normal;text-align:left;color:var(--danger);font-weight:500}.rp-start-option{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.rp-start-option h3{font-size:var(--text);margin-top:0}.rp-photo{display:flex;gap:var(--space-4);align-items:center;margin:var(--space-3) 0;flex-wrap:wrap}.rp-spinner-wrap{display:inline-flex;align-items:center;gap:8px}.rp-spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:rp-spin .8s linear infinite}@keyframes rp-spin{to{transform:rotate(360deg)}}:root{--rp-guide-w: 380px;--rp-who-customer: #c2410c;--rp-who-customer-soft: #fff1ec;--rp-who-rep: #1d5fa8;--rp-who-rep-soft: #e7f1fb;--rp-who-grader: #1d7a46;--rp-who-grader-soft: #e3f4ea;--rp-who-coach: #6d3fc0;--rp-who-coach-soft: #f1ebfb;--rp-who-photo: #52525b;--rp-who-photo-soft: #f4f4f5;--rp-guide-tab-bg: #18181b;--rp-guide-tab-ink: #ffffff}:root[data-theme=dark]{--rp-who-customer: #ffa48c;--rp-who-customer-soft: #3a211a;--rp-who-rep: #8cbcf0;--rp-who-rep-soft: #16304a;--rp-who-grader: #5fd197;--rp-who-grader-soft: #133a29;--rp-who-coach: #c3a6f5;--rp-who-coach-soft: #2a1f42;--rp-who-photo: #d4d4d8;--rp-who-photo-soft: #27272a;--rp-guide-tab-bg: #f4f4f5;--rp-guide-tab-ink: #18181b}.rp-guide{position:fixed;right:0;bottom:0;width:var(--rp-guide-w);max-width:100vw;z-index:15;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.rp-guide[hidden]{display:none}@media(min-width:1280px){.content:has(.rp-builder-page.rp-guide-on){max-width:none}.rp-builder-page.rp-guide-on{padding-right:calc(var(--rp-guide-w) + var(--space-2))}.rp-guide-on .rp-builder{grid-template-columns:180px minmax(0,1fr)}.rp-guide-on .rp-side{grid-column:1 / -1;position:static;max-height:none;overflow:visible;flex-direction:row;flex-wrap:wrap;align-items:flex-start}.rp-guide-on .rp-side>.card{flex:1 1 300px}.rp-guide-on .rp-side>.rp-side-preview{overflow:visible}.rp-guide{box-shadow:none}}.rp-guide-head{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--border)}.rp-guide-head h2{margin:2px 0 4px;font-size:var(--text-lg)}.rp-guide-eyebrow{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.rp-guide-intro{margin:0;font-size:var(--text-sm);color:var(--ink-2)}.rp-guide-prog{display:flex;gap:4px;margin:var(--space-3) 0 6px}.rp-guide-prog i{flex:1;height:4px;border-radius:2px;background:var(--border)}.rp-guide-prog i.done{background:var(--success)}.rp-guide-prog i.warn{background:var(--warning)}.rp-guide-tabs{display:flex;gap:4px;padding:var(--space-2) var(--space-4) 0;border-bottom:1px solid var(--border)}.rp-guide-tabs button{all:unset;cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:8px 10px;border-bottom:2px solid transparent;color:var(--muted)}.rp-guide-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brand-accent)}.rp-guide-tabs button:focus-visible{box-shadow:var(--focus);border-radius:4px}.rp-guide-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.rp-guide-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border)}.rp-guide-foot kbd{font:inherit;font-weight:600;border:1px solid var(--border-strong);border-radius:4px;padding:0 4px}.rp-guide-who{display:flex;gap:6px;flex-wrap:wrap}.rp-guide-chip{font-size:var(--text-xs);font-weight:600;padding:2px 8px 2px 6px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);color:var(--muted);opacity:.6}.rp-guide-chip:before{content:"";width:7px;height:7px;border-radius:50%;border:1.5px solid currentColor}.rp-guide-chip.on{opacity:1;border-color:transparent}.rp-guide-chip.on:before{background:currentColor}.rp-guide-chip.on.customer{color:var(--rp-who-customer);background:var(--rp-who-customer-soft)}.rp-guide-chip.on.rep{color:var(--rp-who-rep);background:var(--rp-who-rep-soft)}.rp-guide-chip.on.grader{color:var(--rp-who-grader);background:var(--rp-who-grader-soft)}.rp-guide-chip.on.coach{color:var(--rp-who-coach);background:var(--rp-who-coach-soft)}.rp-guide-chip.on.photo{color:var(--rp-who-photo);background:var(--rp-who-photo-soft)}.rp-guide-callout{border-radius:var(--radius-sm);padding:10px 12px;font-size:var(--text-sm)}.rp-guide-callout strong{display:block;font-size:var(--text-xs);margin-bottom:2px}.rp-guide-callout.warn{background:var(--warning-soft)}.rp-guide-callout.warn strong{color:var(--warning)}.rp-guide-callout.key{background:var(--info-soft)}.rp-guide-ex{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;font-size:var(--text-sm)}.rp-guide-ex>div{padding:9px 12px}.rp-guide-ex>div+div{border-top:1px solid var(--border)}.rp-guide-ex>div>span:first-child{display:block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}.rp-guide-ex .good>span:first-child{color:var(--success)}.rp-guide-ex .bad{background:var(--light);color:var(--ink-2)}.rp-guide-ex .bad>span:first-child{color:var(--danger)}.rp-guide-copy{margin-top:4px;padding-left:0;color:var(--brand-accent-strong)}.rp-guide-h{margin:0 0 6px;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.rp-guide-list{list-style:none;margin:0;padding:0}.rp-guide-list button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:var(--radius-sm);font-size:var(--text-sm)}.rp-guide-list button:hover{background:var(--light)}.rp-guide-list button[aria-current=true]{background:var(--brand-accent-soft);font-weight:600}.rp-guide-list button:focus-visible{box-shadow:var(--focus)}.rp-guide-dot{width:10px;height:10px;border-radius:50%;flex:none;border:2px solid var(--border-strong)}.rp-guide-dot.done{background:var(--success);border-color:var(--success)}.rp-guide-dot.warn{background:var(--warning);border-color:var(--warning)}.rp-guide-state{margin-left:auto;font-size:11px;color:var(--muted);font-weight:400}.rp-guide-state.warn{color:var(--warning);font-weight:600}.rp-guide-state.need{color:var(--danger);font-weight:600}.rp-guide-matrix-wrap{overflow-x:auto}.rp-guide-matrix{border-collapse:collapse;width:100%;font-size:var(--text-xs)}.rp-guide-matrix th,.rp-guide-matrix td{padding:5px 4px;text-align:center;border-bottom:1px solid var(--border)}.rp-guide-matrix th:first-child,.rp-guide-matrix td:first-child{text-align:left;padding-left:0}.rp-guide-matrix thead th{font-size:11px;font-weight:600;color:var(--muted)}.rp-guide-matrix tr.grp td{font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:12px;border-bottom:none}.rp-guide-matrix tr.cur td{background:var(--brand-accent-soft)}.rp-guide-matrix td button{all:unset;cursor:pointer}.rp-guide-matrix td button:focus-visible{box-shadow:var(--focus);border-radius:3px}.rp-guide-m{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none}.rp-guide-m.customer{background:var(--rp-who-customer)}.rp-guide-m.rep{background:var(--rp-who-rep)}.rp-guide-m.grader{background:var(--rp-who-grader)}.rp-guide-m.coach{background:var(--rp-who-coach)}.rp-guide-m.photo{background:var(--rp-who-photo)}.rp-guide-legend{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:var(--text-sm)}.rp-guide-legend li{display:flex;gap:8px;align-items:baseline}.rp-guide-tab{position:fixed;right:0;z-index:15;writing-mode:vertical-rl;transform:rotate(180deg);background:var(--rp-guide-tab-bg);color:var(--rp-guide-tab-ink);border:none;border-radius:0 8px 8px 0;padding:14px 8px;cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;display:flex;gap:8px;align-items:center;box-shadow:var(--shadow)}.rp-guide-tab:focus-visible{box-shadow:var(--focus);outline:none}.rp-guide-tab-count{writing-mode:horizontal-tb;transform:rotate(180deg);background:var(--brand-accent);color:var(--brand-accent-ink);border-radius:999px;font-size:11px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 5px}.rp-step .field.rp-guide-focus>label,.rp-step fieldset.rp-guide-focus>legend{color:var(--brand-accent-strong)}@media(max-width:700px){.rp-guide{top:auto!important;height:72vh;width:100%;border-left:none;border-top:1px solid var(--border);border-radius:16px 16px 0 0}.rp-guide-tab{top:auto!important;bottom:var(--space-4);right:var(--space-4);writing-mode:horizontal-tb;transform:none;border-radius:999px;padding:10px 16px}.rp-guide-tab-count{transform:none}}
