.onboarding,.login-page{width:100%;max-width:900px;margin:0 auto}.onboarding-head{align-items:center;gap:14px;margin-bottom:20px;display:flex}.onboarding-head .page-title{margin:0}.onboarding-head .page-lead{margin:4px 0 0}.onboarding-mark{flex:none;width:44px;height:44px}.onboarding-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.onboarding-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.onboarding-step{align-items:flex-start;gap:18px;display:flex}.onboarding-step-body{flex:1;justify-items:start;gap:10px;min-width:0;display:grid}.onboarding-step-body>.field,.onboarding-step-body>.onboarding-lamps,.onboarding-step-body>.onboarding-error,.onboarding-step-body>.onboarding-actions{justify-self:stretch}.onboarding-step h2{font-size:var(--fs-lg);color:var(--text);align-items:center;gap:10px;margin:0;font-weight:650;display:flex}.onboarding-step p{margin:0;line-height:1.45}.onboarding-num{background:var(--accent);width:30px;height:30px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:750;display:grid}.onboarding-qr{font-size:var(--fs-sm);color:var(--muted);flex:none;justify-items:center;gap:6px;margin:0;display:grid}.onboarding-qr .qr-code{border-radius:var(--radius-sm)}.onboarding-code{word-break:break-all;resize:vertical;width:100%;min-height:96px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:17px;line-height:1.4}.onboarding-code[aria-invalid=true]{border-color:color-mix(in oklab, var(--danger) 60%, var(--border))}.onboarding-lamps{border:1px dashed var(--border);border-radius:var(--radius-md);padding:10px 14px}.onboarding-lamps summary{cursor:pointer;color:var(--text);align-items:center;min-height:32px;font-weight:600;display:flex}.onboarding-lamps[open] summary{margin-bottom:10px}.onboarding-lamp-choices{gap:8px;margin-bottom:10px;display:grid}.onboarding-choice{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.onboarding-choice input{width:20px;height:20px;min-height:auto;accent-color:var(--accent);flex:none;margin-top:2px}.onboarding-choice>span{gap:2px;display:grid}.onboarding-choice strong{color:var(--text)}.onboarding-error{border-radius:var(--radius-md);background:var(--danger-soft);border:1px solid color-mix(in oklab, var(--danger) 45%, var(--border));color:var(--text);justify-items:start;gap:10px;padding:12px 14px;display:grid}.onboarding-actions{flex-wrap:wrap;gap:10px;display:flex}.onboarding-actions .btn-primary{min-width:220px;font-size:18px}.onboarding-foot{text-align:center;margin-top:18px}.onboarding-link{color:var(--accent-ink);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:6px 2px;text-decoration:underline}.onboarding-wait{font-size:var(--fs-lg);align-items:center;gap:16px;line-height:1.45;display:flex}.onboarding-wait p,.onboarding-done p{margin:0}.onboarding-done{gap:12px;line-height:1.45;display:grid}.onboarding-big{font-size:var(--fs-xl);color:var(--text);font-weight:650}.onboarding-note{color:var(--warn)}.onboarding-spinner{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex:none;width:36px;height:36px;animation:.9s linear infinite onboarding-spin}@keyframes onboarding-spin{to{transform:rotate(360deg)}}@media (width<=600px){.onboarding-step{flex-direction:column}.onboarding-qr{align-self:center}.onboarding-actions .btn-primary{flex:1;min-width:0}}.roster{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.roster-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;min-height:150px;color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease);align-content:center;justify-items:center;gap:8px;padding:16px 10px;display:grid}.roster-tile:active{background:color-mix(in oklab, var(--accent) 14%, var(--surface))}@media (hover:hover){.roster-tile:hover{border-color:var(--accent)}}.roster-avatar{background:color-mix(in oklab, var(--accent) 28%, var(--surface-2));width:60px;height:60px;color:var(--text);border-radius:50%;place-items:center;font-size:22px;font-weight:700;display:grid}.roster-avatar-big{width:76px;height:76px;font-size:28px}.roster-name{text-align:center;overflow-wrap:anywhere;font-size:17px;font-weight:650;line-height:1.25}.roster-role{font-size:var(--fs-sm);color:var(--muted);text-align:center}.login-links{flex-wrap:wrap;gap:8px 22px;margin:20px 0 0;display:flex}.login-device{max-width:420px;font-size:var(--fs-md);margin-top:14px}.login-device p{margin:0}.login-pad{justify-items:center;gap:12px;max-width:360px;display:grid}.login-pad .keypad{width:100%}.login-person{justify-items:center;gap:6px;display:grid}.login-ask{font-size:var(--fs-lg);color:var(--text);text-align:center;margin:0}.login-error{color:var(--danger);font-size:var(--fs-lg);text-align:center;font-weight:650}.keypad[data-shake]{animation:login-shake .42s var(--ease)}@keyframes login-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}@media (prefers-reduced-motion:reduce){.keypad[data-shake],.onboarding-spinner{animation:none}}@media (width<=480px){.roster{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-tile{min-height:128px}.roster-avatar{width:52px;height:52px;font-size:19px}}.license-hint{gap:12px;max-width:640px;line-height:1.5;display:grid}.license-hint p{margin:0}.login-page:has(.login-pad):not(:has(.roster)){max-width:400px;padding-top:clamp(16px,8vh,96px)}.login-page:has(.login-pad):not(:has(.roster)){border:1px solid var(--border);background:var(--surface);max-width:420px;box-shadow:var(--shadow);border-radius:24px;margin:clamp(12px,4vh,40px) auto;padding:28px}.login-page .onboarding-head{text-align:center;flex-direction:column;gap:16px;margin-bottom:24px}.login-page .onboarding-mark{border-radius:14px;width:52px;height:52px}.login-page .page-title{letter-spacing:-.045em;font-size:28px}.login-ask{color:var(--text-2);font-size:14px;line-height:1.6}.login-pad .keypad{width:100%;max-width:320px}.login-pad .keypad-key{background:var(--surface-2);border-color:var(--border);border-radius:12px;font-weight:550}.login-pad .keypad-enter{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.login-device{border-top:1px solid var(--border);padding-top:16px}.onboarding-card{box-shadow:var(--shadow-sm);border-radius:18px;padding:24px}@media (width<=480px){.login-page:has(.login-pad):not(:has(.roster)){border-radius:18px;margin:8px auto;padding:20px 16px}.onboarding-card{padding:18px}}@media (width>=601px) and (height<=820px){.login-page:has(.login-pad):not(:has(.roster)){margin-block:0;padding:20px 24px}.login-page .onboarding-head{gap:10px;margin-bottom:8px}.login-page .onboarding-mark{width:40px;height:40px}.login-pad .keypad-key{min-height:56px}.login-page .login-links{margin-top:8px}}.onboarding-head .page-title{letter-spacing:-.035em}.onboarding-mark{filter:drop-shadow(0 6px 16px #00000038);border-radius:12px}.onboarding-card{background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 5%, var(--surface)), var(--surface) 60%);border-color:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.onboarding .btn,.login-page .btn{min-height:var(--control)}.onboarding-link{min-height:44px;color:var(--accent-ink)}.login-pad .keypad-key{border-radius:var(--radius-md);transition:background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.login-pad .keypad-key:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.login-pad .keypad-key{transition:none}.login-pad .keypad-key:active{transform:none}}.trial-welcome{box-sizing:border-box;max-width:560px;margin:0 auto;padding:24px 16px 32px}.trial-form{gap:16px;display:grid}.trial-form input:not([type=checkbox]){min-height:48px;font-size:1.125rem}.trial-check{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.trial-check input{flex:none;width:22px;height:22px;margin-top:2px}.trial-check>span{gap:2px;display:grid}.trial-key{letter-spacing:.08em;font-variant-numeric:tabular-nums;text-align:center;margin:8px 0;font-size:clamp(2.5rem,12vw,4rem);font-weight:700}.trial-next{gap:6px;margin:0;padding-left:1.25em;display:grid}.trial-wait{gap:12px;display:grid}.trial-wait p{margin:0}.trial-wait-venue{font-size:var(--fs-lg);overflow-wrap:anywhere}.trial-wait-state{border-radius:var(--radius-md);background:var(--accent-soft);color:var(--text-2);align-items:center;gap:10px;padding:10px 12px;font-weight:560;display:flex}.trial-wait-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 25%, transparent);animation:ts-trial-pulse 2.4s var(--ease) infinite;border-radius:50%;flex:none}.trial-wait-state[data-offline]{background:var(--surface-2);color:var(--muted)}.trial-wait-state[data-offline] .trial-wait-dot{background:var(--muted);animation:none}.trial-wait-message{border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--fs-md,1rem);overflow-wrap:anywhere;gap:4px;margin:0;padding:12px 14px;display:grid}@media (prefers-reduced-motion:reduce){.trial-wait-dot{animation:none}}.trial-badge{border-radius:var(--radius-sm);width:100%;min-width:0;color:var(--muted);font:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin:0;padding:6px 12px;display:flex}.trial-badge:focus-visible{box-shadow:var(--focus-ring);outline:none}.trial-badge-dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.trial-badge[data-over]{color:var(--danger)}.trial-badge[data-over] .trial-badge-dot{background:var(--danger)}.trial-badge-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.trial-badge-short{display:none}.sidebar .trial-badge{margin-top:auto}.sidebar .trial-badge+.sidebar-foot{margin-top:0}@media (width<=1180px) and (width>=768px){.sidebar .trial-badge{justify-content:center;padding:6px 2px}.sidebar .trial-badge-text{display:none}.sidebar .trial-badge-short{white-space:nowrap;font-size:11px;display:block}}.trial-badge[data-place=sheet]{font-size:var(--fs-sm);margin-top:8px;padding:10px 12px}.trial-details{gap:12px;max-width:420px;display:grid}.trial-details p{margin:0}.trial-details-state[data-over]{color:var(--danger);font-weight:600}.trial-details-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trial-details-key code{font-size:var(--fs-lg);letter-spacing:.08em;font-variant-numeric:tabular-nums;font-weight:700}.trial-details-foot{font-size:var(--fs-sm);color:var(--muted);border-top:1px solid var(--border);padding-top:12px}.trial-badge{border:1px solid color-mix(in oklab, var(--accent) 22%, var(--border));border-radius:var(--radius-md);background:var(--accent-soft);min-height:44px;color:var(--text-2);font-size:var(--fs-sm);transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);padding:8px 12px;font-weight:560}.trial-badge:hover{background:color-mix(in oklab, var(--accent) 24%, var(--surface));color:var(--text)}.trial-badge-dot{width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 25%, transparent);animation:ts-trial-pulse 2.4s var(--ease) infinite}.trial-badge[data-over]{background:var(--danger-soft);border-color:color-mix(in oklab, var(--danger) 35%, var(--border))}.trial-badge[data-over] .trial-badge-dot{box-shadow:0 0 0 3px color-mix(in oklab, var(--danger) 25%, transparent)}@keyframes ts-trial-pulse{50%{box-shadow:0 0 0 6px #0000}}.trial-welcome .onboarding-card{border-radius:var(--radius-lg);box-shadow:var(--shadow)}@media (prefers-reduced-motion:reduce){.trial-badge-dot{animation:none}.trial-badge{transition:none}}.trial-details-watch{border-top:1px solid var(--border);justify-items:start;gap:8px;padding-top:12px;display:grid}.trial-watch{gap:12px;max-width:440px;display:grid}.trial-watch p{margin:0}.trial-watch-qr{place-items:center;display:grid}.trial-watch-qr .qr-code{border:1px solid var(--border);border-radius:var(--radius-md);width:min(232px,70vw);height:auto}.trial-watch-link{align-items:center;gap:8px;display:flex}.trial-watch-link input{min-width:0;font-size:var(--fs-sm);color:var(--text-2);flex:auto}.trial-watch-facts{color:var(--text-2);font-size:var(--fs-sm);gap:4px;margin:0;padding-left:1.2em;display:grid}.trial-watch-status{font-weight:600}.trial-watch-error{color:var(--danger);font-weight:600}.watch-banner{border-color:color-mix(in oklab, var(--accent) 45%, transparent);background:color-mix(in oklab, var(--accent) 10%, var(--surface))}.watch-banner[data-stale]{border-color:color-mix(in oklab, var(--warn) 60%, transparent);background:color-mix(in oklab, var(--warn) 14%, var(--surface))}.login-shell>.watch-banner{width:100%;max-width:900px;margin:0 auto 16px}.watch-problem-detail{font-size:var(--fs-sm);overflow-wrap:anywhere;margin-top:8px}.link-banner{font-size:var(--fs-sm);padding-block:6px}.link-banner[data-tone=ok]{border-color:color-mix(in oklab, var(--felt-lit) 45%, transparent);background:color-mix(in oklab, var(--felt-lit) 10%, var(--surface))}.link-banner[data-tone=wait]{border-color:color-mix(in oklab, var(--warn) 50%, transparent);background:color-mix(in oklab, var(--warn) 10%, var(--surface))}.link-banner[data-tone=bad]{border-color:color-mix(in oklab, var(--danger) 55%, transparent);background:var(--danger-soft)}.login-shell>.link-banner{width:100%;max-width:900px;margin:0 auto 16px}.link-dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}[data-tone=ok]>.link-dot,.link-devices li[data-online]>.link-dot{background:var(--felt-lit)}[data-tone=wait]>.link-dot{background:var(--warn);animation:1.6s ease-in-out infinite ts-link-blink}[data-tone=bad]>.link-dot{background:var(--danger)}@keyframes ts-link-blink{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){[data-tone=wait]>.link-dot{animation:none}}.link-board-badge{z-index:50;border:1px solid color-mix(in oklab, var(--danger) 55%, transparent);border-radius:var(--radius-pill);background:var(--danger-soft);max-width:calc(100vw - 32px);color:var(--text);font-size:var(--fs-md);box-shadow:var(--shadow);align-items:center;gap:8px;padding:8px 14px;display:flex;position:fixed;bottom:16px;left:16px}.link-board-badge[data-tone=wait]{border-color:color-mix(in oklab, var(--warn) 50%, transparent);background:var(--warn-soft)}.link-views{flex-wrap:wrap;gap:8px;display:flex}.link-views .btn[data-on]{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.link-devices-title{font-size:var(--fs-md);margin:4px 0 0}.link-devices{gap:6px;margin:0;padding:0;list-style:none;display:grid}.link-devices li{font-size:var(--fs-sm);grid-template-columns:auto 1fr;align-items:center;column-gap:8px;display:grid}.link-device-name{overflow-wrap:anywhere;font-weight:600}.link-device-state{color:var(--text-2);grid-column:2}.trial-watch-note{color:var(--text-2)}
