:root{color-scheme:light;--ls-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ls-color-canvas: #f7fbfa;--ls-color-surface: #ffffff;--ls-color-surface-raised: #ffffff;--ls-color-text: #10201e;--ls-color-text-strong: #071615;--ls-color-muted: #58716d;--ls-color-border: #d9e7e4;--ls-color-border-strong: #b6cbc7;--ls-color-brand-900: #084869;--ls-color-brand-700: #0b6585;--ls-color-brand-500: #26c6b5;--ls-color-brand-100: #e7f8f5;--ls-color-action: #1d4ed8;--ls-color-action-hover: #1e40af;--ls-color-success: #166534;--ls-color-warning: #92400e;--ls-color-danger: #991b1b;--ls-space-1: .25rem;--ls-space-2: .5rem;--ls-space-3: .75rem;--ls-space-4: 1rem;--ls-space-5: 1.5rem;--ls-space-6: 2rem;--ls-radius-sm: 5px;--ls-radius-md: 8px;--ls-radius-pill: 999px;--ls-shadow-sm: 0 8px 20px rgb(8 72 105 / 10%);--ls-shadow-md: 0 12px 32px rgb(8 72 105 / 12%);--ls-shadow-lg: 0 24px 72px rgb(7 22 21 / 24%);--ls-focus-ring: 0 0 0 3px rgb(38 198 181 / 35%);--color-ink: var(--ls-color-text);--color-muted: var(--ls-color-muted);--color-canvas: var(--ls-color-canvas);--color-surface: var(--ls-color-surface);--color-border: var(--ls-color-border);--color-border-strong: var(--ls-color-border-strong);--color-brand-dark: var(--ls-color-brand-900);--color-brand-light: var(--ls-color-brand-500);--color-soft-surface: var(--ls-color-brand-100);--color-error: var(--ls-color-danger);--color-danger: var(--ls-color-danger);--color-danger-soft: color-mix(in srgb, var(--ls-color-danger) 10%, var(--ls-color-surface));--color-warning: var(--ls-color-warning);--shadow-panel: var(--ls-shadow-lg);--shadow-control: var(--ls-shadow-sm);color:var(--ls-color-text);font-family:var(--ls-font-sans);font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--ls-color-canvas: #071615;--ls-color-surface: #10201e;--ls-color-surface-raised: #142b28;--ls-color-text: #eef8f6;--ls-color-text-strong: #ffffff;--ls-color-muted: #a7c0bb;--ls-color-border: #25443f;--ls-color-border-strong: #3b625c;--ls-color-brand-100: #123f3b;--ls-color-action: #8fb4ff;--ls-color-action-hover: #b3c9ff;--ls-color-success: #8de0a0;--ls-color-warning: #f1c46d;--ls-color-danger: #f2a0a0;--ls-shadow-sm: 0 8px 20px rgb(0 0 0 / 22%);--ls-shadow-md: 0 12px 32px rgb(0 0 0 / 28%);--ls-shadow-lg: 0 24px 72px rgb(0 0 0 / 42%)}}.ls-surface{border:1px solid var(--ls-color-border);border-radius:var(--ls-radius-md);background:var(--ls-color-surface);box-shadow:var(--ls-shadow-sm)}.ls-focus-ring:focus-visible{outline:0;box-shadow:var(--ls-focus-ring)}.ls-brand-mark{display:block;width:2.75rem;height:2.75rem;object-fit:contain}*{box-sizing:border-box}body{margin:0;min-width:320px}h1,h2,h3,p{margin-top:0}.brand-stack{display:inline-flex;align-items:center;justify-content:center;gap:.75rem}.brand-copy{display:grid;justify-items:center;text-align:center}.brand-name{display:inline-flex;align-items:baseline;gap:0;color:var(--color-brand-dark);font-weight:950;letter-spacing:-.02em;line-height:1}.brand-name-sub{color:var(--color-brand-light)}.brand-name-context,.brand-tagline,.eyebrow{color:var(--color-muted);font-weight:850;letter-spacing:.08em;text-transform:uppercase}button,input,select{font:inherit}button,a,input,select,[role=button]{-webkit-tap-highlight-color:transparent}label,fieldset{display:grid;gap:8px}label>span,legend{color:var(--ls-color-text-strong);font-size:.92rem;font-weight:800}fieldset{min-width:0;margin:0;padding:0;border:0}input,select{width:100%;min-height:46px;border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;background:var(--color-surface);color:var(--color-ink);box-shadow:0 1px #0848690a}input:hover,select:hover{border-color:#08486961}input[type=file]{padding:8px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(38,198,181,.34);outline-offset:2px}.form-error{margin:0;border:1px solid rgba(180,35,24,.28);border-radius:8px;padding:10px 12px;background:var(--color-danger-soft);color:var(--color-danger)}.form-message{margin:16px 0 0;border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;background:var(--color-soft-surface);color:var(--color-ink)}.flag-token,.flag-placeholder{color:#000;background:var(--flag-color, var(--color-soft-surface, var(--ls-color-brand-100)));line-height:1}.flag-token{display:inline-grid;place-items:center;width:34px;height:24px;flex:0 0 auto;border:1px solid rgba(8,72,105,.16);border-radius:6px;background:linear-gradient(135deg,#ffffffd1,#ffffff47),var(--flag-color, var(--color-soft-surface, var(--ls-color-brand-100)));font-size:.68rem;font-weight:900;letter-spacing:.04em;box-shadow:inset 0 0 0 1px #ffffff73}.flag-placeholder{position:relative;display:grid;width:1.75rem;height:1.35rem;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid var(--color-border-strong, var(--ls-color-border-strong));border-radius:5px;font-size:.66rem;font-weight:850}.flag-placeholder:before{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.22;content:""}.flag-placeholder span{position:relative;z-index:1}.flag-gb,.flag-en:before{--flag-color: linear-gradient(90deg, transparent 45%, #c8102e 45% 55%, transparent 55%), linear-gradient(0deg, transparent 43%, #c8102e 43% 57%, transparent 57%), linear-gradient(27deg, transparent 40%, #ffffff 40% 46%, #c8102e 46% 52%, #ffffff 52% 58%, transparent 58%), linear-gradient(153deg, transparent 40%, #ffffff 40% 46%, #c8102e 46% 52%, #ffffff 52% 58%, transparent 58%), linear-gradient(90deg, transparent 40%, #ffffff 40% 60%, transparent 60%), linear-gradient(0deg, transparent 38%, #ffffff 38% 62%, transparent 62%), #012169;background:var(--flag-color)}.flag-de,.flag-de:before{--flag-color: linear-gradient(#111111 0 33%, #dd0000 33% 66%, #ffce00 66%);background:var(--flag-color)}.flag-es,.flag-es:before{--flag-color: linear-gradient(#aa151b 0 25%, #f1bf00 25% 75%, #aa151b 75%);background:var(--flag-color)}.flag-dk,.flag-da:before{--flag-color: linear-gradient(90deg, transparent 30%, #ffffff 30% 43%, transparent 43%), linear-gradient(0deg, transparent 40%, #ffffff 40% 60%, transparent 60%), #c60c30;background:var(--flag-color)}.flag-se,.flag-sv:before{--flag-color: linear-gradient(90deg, transparent 28%, #fecc00 28% 42%, transparent 42%), linear-gradient(0deg, transparent 42%, #fecc00 42% 58%, transparent 58%), #006aa7;background:var(--flag-color)}.flag-fr,.flag-fr:before{--flag-color: linear-gradient(90deg, #0055a4 0 33%, #ffffff 33% 66%, #ef4135 66%);background:var(--flag-color)}.primary-action,.secondary-action,.danger-action,.text-action{min-height:46px;border-radius:8px;padding:10px 16px;font-weight:850;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.primary-action{border:1px solid var(--color-brand-dark);background:var(--color-brand-dark);color:#fff;box-shadow:0 12px 24px #08486938}.primary-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 28px #08486940}.secondary-action{border:1px solid rgba(8,72,105,.34);background:var(--color-surface);color:var(--color-brand-dark)}.secondary-action:hover:not(:disabled),.action-link:hover{border-color:var(--color-brand-dark);background:var(--color-soft-surface)}.danger-action{border:1px solid rgba(180,35,24,.52);background:var(--color-danger-soft);color:var(--color-danger)}.danger-action:hover:not(:disabled){border-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface))}.text-action{border:0;background:transparent;color:var(--color-brand-dark)}.action-link{display:inline-grid;place-items:center;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.58}:root{background:radial-gradient(circle at top left,rgba(38,198,181,.18),transparent 34rem),linear-gradient(135deg,var(--color-canvas) 0%,var(--color-soft-surface) 48%,var(--color-canvas) 100%)}h1{margin-bottom:0;color:var(--color-brand-dark);font-size:clamp(1.65rem,3vw,2.4rem);line-height:1;letter-spacing:0}h2{margin-bottom:8px;color:var(--color-ink);font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.12}h3{margin:0;color:var(--color-ink);font-size:1rem}.eyebrow{margin-bottom:6px;color:var(--color-brand-dark);font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.supporting-copy,.field-note,.token-status,.session-meta,.control-note{color:var(--color-muted)}.supporting-copy{max-width:46rem;margin-bottom:0}.session-meta{display:flex;align-items:center;gap:12px}.brand-header{display:grid;gap:.35rem}.brand-stack-horizontal{justify-content:center}.brand-stack-centered{display:inline-flex;align-items:center;justify-content:center;margin-bottom:18px}.topbar .brand-copy{justify-items:start;text-align:left}.brand-logo{width:58px;height:58px;border-radius:16px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(8,72,105,.16))}.auth-logo{width:86px;height:86px;object-fit:contain;filter:drop-shadow(0 16px 26px rgba(8,72,105,.16))}.brand-name{margin:0 0 4px;font-size:1.05rem}.brand-name-context{margin-left:.5rem;font-size:.72rem}.page-title{margin-top:0;margin-left:70px;color:var(--color-ink);font-size:clamp(1.25rem,2vw,1.75rem);font-weight:760}.app-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 40px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.token-status{display:grid;gap:2px;text-align:right;font-size:.9rem}.token-status time{color:var(--color-ink);font-weight:800}.status-card{border:1px solid rgba(8,72,105,.14);border-radius:8px;padding:10px 12px;background:#ffffffad;box-shadow:0 8px 22px #08486914}.panel{border:1px solid rgba(8,72,105,.13);border-radius:8px;background:#ffffffe6;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-panel,.panel{padding:24px}.auth-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:40px;align-items:center;min-height:430px}.auth-intro{max-width:520px}.panel-heading,.session-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.setup-panel{display:grid;gap:22px}.form-grid,.setup-fields,.thumbnail-card,.qr-panel,.button-stack{display:grid;gap:16px}.setup-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px;align-items:start}.language-select{position:relative;display:block}.language-select select{padding-left:62px}.language-select .flag-token{position:absolute;top:50%;left:12px;z-index:1;transform:translateY(-50%)}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.checkbox-label{display:flex;align-items:center;gap:10px;min-height:48px;border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;background:var(--color-surface);box-shadow:0 1px #0848690a}.checkbox-label:has(input:checked){border-color:#26c6b5bd;background:var(--color-soft-surface)}.checkbox-label input{width:auto;min-height:auto;accent-color:var(--color-brand-dark)}.event-selector{display:grid;gap:12px;border:1px solid rgba(8,72,105,.12);border-radius:8px;padding:14px;background:#fbfefd;box-shadow:var(--shadow-control)}.event-selector-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.event-selector-heading>div{min-width:0}.event-selector-heading span{display:block;font-weight:800}.event-options{display:grid;gap:8px}.event-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:48px;border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;background:var(--color-surface)}.event-option-selected{border-color:#26c6b5bd;background:var(--color-soft-surface)}.event-option-choice{display:contents}.event-option input{width:auto;min-height:auto;accent-color:var(--color-brand-dark)}.event-option strong,.event-option small{display:block;overflow-wrap:anywhere}.event-option small{margin-top:2px;color:var(--color-muted)}.event-edit-action{padding-inline:4px;white-space:nowrap}.thumbnail-card,.mic-card,.control-card,.qr-frame{border:1px solid rgba(8,72,105,.12);border-radius:8px;padding:16px;background:#fbfefd;box-shadow:var(--shadow-control)}.thumbnail-preview{display:grid;place-items:center;aspect-ratio:1;border:1px dashed rgba(8,72,105,.28);border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#26c6b514,#08486914),var(--color-surface);color:var(--color-muted);text-align:center;touch-action:none;-webkit-user-select:none;user-select:none}.thumbnail-preview-draggable{cursor:grab}.thumbnail-preview-draggable:active{cursor:grabbing}.thumbnail-preview img{width:100%;height:100%;object-fit:cover;pointer-events:none}.thumbnail-preview span,.thumbnail-preview strong{display:block}.thumbnail-preview strong{margin-top:4px;color:var(--color-ink)}.thumbnail-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.thumbnail-tools .field-note{margin:0}.compact-action{min-height:38px;padding:7px 12px}.active-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:24px;align-items:start}.session-summary{display:grid;gap:22px}.session-title-group{min-width:0}.session-title-group h2{margin-bottom:8px;overflow-wrap:anywhere}.session-meta{margin:0;flex-wrap:wrap;font-size:.92rem}.speaker-console{display:grid;grid-template-columns:minmax(260px,1.15fr) minmax(220px,.85fr);gap:16px}.mic-card,.control-card{display:grid;gap:14px;align-content:start}.control-note,.mic-card p{margin:6px 0 0;color:var(--color-muted)}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px;white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:.82rem;font-weight:850}.status-ready{background:var(--color-soft-surface);color:var(--color-brand-dark)}.status-active{background:color-mix(in srgb,var(--color-brand-light) 22%,var(--color-surface));color:var(--ls-color-success)}.status-paused{background:color-mix(in srgb,var(--color-warning) 16%,var(--color-surface));color:var(--color-warning)}.status-ended,.status-error{background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface));color:var(--color-danger)}.button-row,.button-grid{display:flex;flex-wrap:wrap;gap:10px}.button-grid>*{flex:1 1 110px}.mic-activity{position:relative;display:grid;place-items:center;min-height:260px;border-radius:8px;overflow:hidden;background:radial-gradient(circle at center,rgba(38,198,181,.2),transparent 48%),linear-gradient(135deg,var(--color-surface),var(--color-soft-surface))}.mic-activity:before,.mic-activity:after{position:absolute;top:22%;right:22%;bottom:22%;left:22%;content:"";border:1px solid rgba(38,198,181,.24);border-radius:999px}.mic-activity:after{top:34%;right:34%;bottom:34%;left:34%}.mic-circle{position:relative;z-index:1;display:grid;place-items:center;width:118px;height:118px;border-radius:999px;background:radial-gradient(circle,var(--color-brand-light),rgba(38,198,181,.22));box-shadow:0 0 0 18px #26c6b51a,0 20px 46px #26c6b542;transition:opacity .18s ease,transform 90ms linear}.mic-circle span{width:34px;height:34px;border-radius:999px;background:#ffffffdb;box-shadow:inset 0 -8px 12px #08486914}.mic-circle-paused{opacity:.36}.mic-circle-error{background:radial-gradient(circle,#b42318a3,#b423181f);box-shadow:0 0 0 18px #b423181a,0 20px 46px #b423182e}.qr-frame{padding:12px}.qr-code,.qr-placeholder{width:100%;aspect-ratio:1;border-radius:8px}.qr-code{display:block;border:1px solid var(--color-border);background:var(--color-surface);object-fit:contain}.qr-placeholder{display:grid;place-items:center;border:1px dashed rgba(8,72,105,.34);padding:20px;background:var(--color-soft-surface);color:var(--color-muted);text-align:center}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:20px;background:#10201e85}.dialog{width:min(100%,460px);border:1px solid rgba(255,255,255,.64);border-radius:8px;padding:24px;background:var(--color-surface);box-shadow:0 24px 72px #10201e47}.event-dialog{width:min(100%,760px);max-height:calc(100dvh - 40px);overflow:auto}.event-qr-section{display:grid;gap:12px}.event-qr-layout{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:14px;align-items:start}.event-qr-placeholder{min-height:180px}.dialog p{color:var(--color-muted)}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:20px}.qr-fullscreen{background:#10201ed6}.qr-dialog{display:grid;justify-items:center;width:min(100%,720px);text-align:center}.qr-code-large{width:min(72dvh,100%);max-width:560px}@media (prefers-color-scheme: dark){:root{--color-brand-dark: var(--ls-color-action);--color-brand-light: #5eead4;background:radial-gradient(circle at top left,rgba(94,234,212,.16),transparent 34rem),linear-gradient(135deg,var(--color-canvas) 0%,var(--color-soft-surface) 55%,#061816 100%)}.panel,.status-card{background:#0d2a27e6}input,select,.checkbox-label,.thumbnail-card,.mic-card,.control-card,.qr-frame,.dialog{background:var(--color-surface)}.mic-activity{background:radial-gradient(circle at center,rgba(94,234,212,.17),transparent 48%),linear-gradient(135deg,var(--color-soft-surface),var(--color-surface))}.checkbox-label:has(input:checked){background:var(--color-soft-surface)}}@media (max-width: 880px){.auth-panel,.active-layout,.setup-grid,.speaker-console{grid-template-columns:1fr}.auth-panel{align-items:start}}@media (max-width: 640px){.app-shell{width:min(100% - 20px,1180px);padding:18px 0 28px}.topbar,.panel-heading,.session-heading{display:grid}.brand-logo{width:50px;height:50px}.page-title{margin-left:62px}.auth-panel,.panel{padding:18px}.token-status{text-align:left}.mic-activity{min-height:220px}.event-selector-heading,.event-option,.event-qr-layout{grid-template-columns:1fr}.event-selector-heading{display:grid}.event-edit-action{justify-self:start}.dialog-actions{justify-content:stretch}.dialog-actions>*{flex:1 1 180px}.thumbnail-tools{grid-template-columns:1fr}}
