:root{color-scheme:light;--font-sans: "Avenir Next", "Segoe UI", "Noto Sans JP", "Hiragino Sans", system-ui, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Consolas, monospace;--color-text-strong: #172b46;--color-text: #42556c;--color-text-muted: #5b6c80;--color-surface: #ffffff;--color-surface-subtle: #f1f5fa;--color-surface-page: #f6f7f9;--color-border: #dce3ec;--color-border-strong: #b7c5d6;--color-action: #235db5;--color-action-hover: #19488e;--color-action-contrast: #ffffff;--color-selected: #eaf1fc;--color-selected-text: #235db5;--color-focus: #235db5;--color-danger: #9f1239;--color-danger-surface: #fff1f2;--color-success: #14532d;--color-success-surface: #ecfdf3;--color-warning: #7c2d12;--color-warning-surface: #fff7ed;--color-team-blue: #174a8b;--color-team-red: #9f1239;--qs-ink: #f5f8ff;--qs-muted: #9eb0c9;--qs-page: #050b1b;--qs-panel: #0b1630;--qs-panel-strong: #101f3d;--qs-border: rgba(126, 166, 220, .34);--qs-blue: #54b8ff;--qs-blue-strong: #2578d6;--qs-red: #f05a64;--qs-amber: #f5b84b;--qs-success: #54d49a;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-control: 10px;--radius-panel: 18px;--shadow-panel: 0 4px 24px rgba(23, 43, 70, .045);--shadow-floating: 0 18px 42px rgba(15, 23, 42, .2);--focus-ring: 0 0 0 3px color-mix(in srgb, var(--color-focus) 72%, transparent);--tap-target: 44px;--motion-fast: .14s;--motion-standard: .18s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--z-navigation: 10;--z-overlay: 40;--ge-accent: #235db5;--ge-accent-soft: #eaf1fc;--ge-speaking: #24776c;--ge-speaking-soft: #eaf5f1;--ge-quiz: #765b26;--ge-quiz-soft: #fbf3df;--ge-content-width: 1200px}:root{font-family:var(--font-sans);background:var(--color-surface-page);color:var(--color-text-strong);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgba(37,99,235,.06),transparent 34%),linear-gradient(180deg,var(--color-surface) 0%,#f5f9fc 48%,#eef6f2 100%)}button,input,textarea,select{font:inherit}button{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-strong);min-height:var(--tap-target);padding:0 14px;border-radius:var(--radius-control);display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:700;transition:border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}button:hover{border-color:#8fb0d8;background:var(--color-surface-subtle)}button:not(:disabled):active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:var(--color-action);border-color:var(--color-action);color:var(--color-action-contrast)}button.primary:hover{background:var(--color-action-hover)}button.active{background:var(--color-selected);border-color:#7aa7e6;color:var(--color-selected-text)}button.text-button{border:0;background:transparent;min-height:auto;color:var(--color-selected-text);padding:0}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;box-shadow:var(--focus-ring)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,5vw,4.7rem);line-height:.95;letter-spacing:0;margin-bottom:20px}h2{font-size:1.25rem;margin-bottom:12px}h3{font-size:1rem;margin:20px 0 10px}p{color:var(--color-text);line-height:1.6}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid #e1e8f0;padding:10px 8px}th{color:#56657c;font-size:.78rem;text-transform:uppercase}input,textarea,select{width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text-strong);min-height:var(--tap-target);padding:10px 12px}input[aria-invalid=true]{border-color:#fb7185;background:#fff8f9}textarea{min-height:86px;resize:vertical}label{display:grid;gap:7px;color:var(--color-text);font-size:.9rem;font-weight:700}label.toggle-row{grid-template-columns:auto 1fr;align-items:center;min-height:42px}label.toggle-row input{width:18px;min-height:18px}.password-field{position:relative;display:block}.password-field input{padding-right:52px}.password-toggle{position:absolute;top:50%;right:6px;min-width:38px;min-height:34px;padding:0;transform:translateY(-50%)}.app-shell{min-height:100vh}.app-loading-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,440px);gap:44px;align-items:start;padding:64px clamp(24px,7vw,92px)}.panel,.metric{background:color-mix(in srgb,var(--color-surface) 96%,transparent);border:1px solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}.panel{padding:22px}.form-panel{display:grid;gap:16px}.controls-card{display:grid;gap:12px}.how-to-card{margin-top:18px}.error-text{border-radius:8px;padding:10px 12px;font-weight:800;margin:8px 0;color:#9f1239;background:#fff1f2;border:1px solid #fecdd3}small{color:#66758a;font-size:.82rem}@media(max-width:980px){.auth-layout{grid-template-columns:1fr}}.linked-join-code{display:grid;gap:5px;padding:14px;border:1px solid #b9dfc5;border-radius:10px;background:#eef8f1}.linked-join-code span{display:inline-flex;align-items:center;gap:6px;color:#40634b;font-weight:850}.linked-join-code strong{font-size:1.55rem;letter-spacing:.12em}.linked-join-code small{color:#54705b}.student-join-form button.primary{min-height:58px!important;padding:14px 20px;border-width:1px;border-radius:10px;font-size:1rem!important;line-height:1.2;font-weight:900;letter-spacing:.03em;text-transform:none!important}@media(max-width:760px){.student-join-form button.primary{min-height:56px}}.student-join-screen,.student-join-form,.student-join-form .join-field,.student-join-form input{min-width:0}.student-join-form input{width:100%}@media(max-width:980px){.student-join-screen{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.student-join-help,.student-join-form{width:min(620px,100%);max-width:100%;justify-self:center}}.student-join-help .controls-card{margin-top:10px;padding:20px}.controls-card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.controls-card-heading h2{margin:0;color:#f5f9ff;font-size:1.35rem}.controls-card-heading span{color:#8fa6c0;font-size:.76rem;font-weight:800}.student-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:16px}.student-control{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:9px;color:#cfe0f4;font-size:.84rem;line-height:1.25}.student-control kbd{display:inline-flex;min-height:26px;align-items:center;justify-content:center;border:1px solid rgba(126,166,220,.38);border-radius:6px;padding:4px 7px;background:#040d1fb8;color:#eaf4ff;font-family:inherit;font-size:.68rem;font-weight:900;white-space:nowrap}.student-join-form button.primary{min-height:58px;padding:14px 20px;border:1px solid #3bd39a;border-radius:10px;font-size:1rem;line-height:1.2;font-weight:900;letter-spacing:.03em;text-transform:none}.game-join-screen{display:grid!important;grid-template-columns:minmax(0,560px) minmax(300px,360px)!important;align-items:start!important;justify-content:center;gap:24px!important;width:min(1040px,calc(100% - 48px))!important;min-height:calc(100vh - 80px)!important;padding:56px 0!important;background:transparent!important}.game-join-screen .student-join-form{order:1;align-self:start;width:100%!important;max-width:none;gap:16px;border:1px solid rgba(126,166,220,.4);padding:32px!important}.game-join-screen .student-join-help{order:2;display:block!important;width:100%!important;max-width:none!important}.game-join-form-heading{display:grid;gap:8px;margin-bottom:4px;padding-bottom:20px;border-bottom:1px solid rgba(126,166,220,.2)}.game-join-form-heading .auth-kicker{font-size:.76rem;letter-spacing:.08em}.game-join-form-heading h1{margin:0;color:#fff;font-size:clamp(2.35rem,4vw,3.35rem);letter-spacing:-.055em;line-height:.96}.game-join-form-heading p{max-width:430px;margin:0;color:#9fb4ce;font-size:.95rem;line-height:1.5}.game-join-screen .controls-card{margin:0!important;border:1px solid rgba(126,166,220,.3);border-radius:16px;padding:24px;background:#0a1731b8;box-shadow:none}.game-join-screen .student-controls-grid{grid-template-columns:1fr;gap:0;margin-top:14px}.game-join-screen .student-control{min-height:42px;grid-template-columns:112px minmax(0,1fr);border-bottom:1px solid rgba(126,166,220,.13);font-size:.86rem}.game-join-screen .student-control:last-child{border-bottom:0}.game-join-screen .student-control kbd{width:fit-content;min-width:34px}@media(max-width:760px){.student-join-help .controls-card{padding:16px}.student-controls-grid{grid-template-columns:1fr;gap:8px}.student-join-form button.primary{min-height:56px}}@media(max-width:980px){.game-join-screen{grid-template-columns:minmax(0,1fr)!important;width:min(620px,calc(100% - 32px))!important;gap:16px!important;padding:36px 0 54px!important}.game-join-screen .student-join-form,.game-join-screen .student-join-help{width:100%!important}}@media(max-width:600px){.game-join-screen .student-join-form{padding:22px!important}.game-join-form-heading h1{font-size:2.35rem}.game-join-screen .controls-card{padding:18px}}body:has(.product-home),body:has(.quizstrike-page),body:has(.quizstrike-auth-layout),body:has(.student-join-screen:not(.game-layout)){background:radial-gradient(circle at 78% 14%,rgba(37,120,214,.18),transparent 34%),radial-gradient(circle at 8% 92%,rgba(240,90,100,.1),transparent 28%),var(--qs-page);color:var(--qs-ink)}body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{min-height:80px;height:auto;padding:8px clamp(18px,4vw,52px);border-bottom:1px solid rgba(122,166,221,.24);background:#050b1bd1;color:var(--qs-ink);box-shadow:0 12px 30px #0000002e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}body:has(.product-home) .top-actions,body:has(.quizstrike-page) .top-actions,body:has(.quizstrike-auth-layout) .top-actions,body:has(.student-join-screen:not(.game-layout)) .top-actions{gap:10px}body:has(.product-home) .top-actions button,body:has(.quizstrike-page) .top-actions button,body:has(.quizstrike-auth-layout) .top-actions button,body:has(.student-join-screen:not(.game-layout)) .top-actions button{min-height:48px;border:1px solid var(--qs-border);border-radius:10px;padding-inline:18px;background:#0c1c3ab8;color:var(--qs-ink);font-size:.92rem;font-weight:850;letter-spacing:.01em}body:has(.product-home) .top-actions button:hover,body:has(.quizstrike-page) .top-actions button:hover,body:has(.quizstrike-auth-layout) .top-actions button:hover,body:has(.student-join-screen:not(.game-layout)) .top-actions button:hover,body:has(.product-home) .top-actions button:focus-visible,body:has(.quizstrike-page) .top-actions button:focus-visible,body:has(.quizstrike-auth-layout) .top-actions button:focus-visible,body:has(.student-join-screen:not(.game-layout)) .top-actions button:focus-visible{border-color:var(--qs-blue);background:#235ba28c;color:#fff;box-shadow:0 0 0 3px #54b8ff2e}.eyebrow,.auth-kicker{border-color:#54b8ff85;border-radius:999px;background:#14407847;color:#9bd7ff;font-size:.72rem;letter-spacing:.12em}body:has(.product-home) button.primary,body:has(.quizstrike-page) button.primary,body:has(.quizstrike-auth-layout) button.primary,body:has(.student-join-screen:not(.game-layout)) button.primary{border-color:#3bd39a;background:#14825a;color:#fff;box-shadow:0 10px 26px #14825a33}body:has(.product-home) button.primary:hover,body:has(.quizstrike-page) button.primary:hover,body:has(.quizstrike-auth-layout) button.primary:hover,body:has(.student-join-screen:not(.game-layout)) button.primary:hover{border-color:#79f1bd;background:#199969;box-shadow:0 14px 32px #14825a4d;transform:translateY(-2px)}.auth-kicker{width:fit-content;border:0;padding:0;background:transparent;font-weight:900;text-transform:uppercase}.auth-visual-content .auth-kicker{margin-top:auto;color:#72d8ff}.student-join-help .how-to-card{border-color:#7ea6dc4d;background:#0a1934a8}.linked-join-code{border-color:#54b8ff6b;background:#15497a3d;color:#d9efff}@media(max-width:760px){body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{min-height:72px;padding-inline:14px}body:has(.product-home) .brand-button,body:has(.quizstrike-page) .brand-button,body:has(.quizstrike-auth-layout) .brand-button,body:has(.student-join-screen:not(.game-layout)) .brand-button{min-width:100px;min-height:56px}body:has(.product-home) .top-actions,body:has(.quizstrike-page) .top-actions,body:has(.quizstrike-auth-layout) .top-actions,body:has(.student-join-screen:not(.game-layout)) .top-actions{position:absolute;top:calc(100% + 8px);right:0;z-index:12;display:none;min-width:190px;padding:8px;border:1px solid var(--qs-border);border-radius:12px;background:#050e1ffa;box-shadow:0 20px 40px #00000059}body:has(.product-home) .top-actions[data-open=true],body:has(.quizstrike-page) .top-actions[data-open=true],body:has(.quizstrike-auth-layout) .top-actions[data-open=true],body:has(.student-join-screen:not(.game-layout)) .top-actions[data-open=true]{display:grid}body:has(.product-home) .top-actions button,body:has(.quizstrike-page) .top-actions button,body:has(.quizstrike-auth-layout) .top-actions button,body:has(.student-join-screen:not(.game-layout)) .top-actions button{width:100%;justify-content:flex-start}.site-home,.landing-section,.landing-final-cta,.quizstrike-route-hero,.quizstrike-auth-layout,.student-join-screen{width:min(100% - 32px,700px)}.student-join-screen{min-height:auto;padding:36px 0 54px}.student-join-help h1{font-size:clamp(3rem,14vw,4.7rem)}}@media(min-width:701px){.student-join-screen{align-items:center;padding:clamp(24px,10vh,96px) 28px 28px}}.student-join-screen{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:42vh 28px 28px;background-color:#ffffffc2;background-image:url(/assets/quizstrike-classroom-hero.png);background-size:cover;background-position:center;background-blend-mode:screen}.student-join-help{display:none}.student-join-form{width:min(460px,calc(100vw - 36px));display:grid;gap:12px;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.student-join-form input{min-height:116px;border:4px solid #080808;border-radius:2px;background:#fffffff5;color:#111;font-size:clamp(2rem,5vw,3.8rem);font-weight:850;text-align:center;text-transform:uppercase}.student-join-form input::placeholder{color:#999;opacity:1}.student-join-form button.primary{min-height:120px;border:6px solid #080808;border-radius:5px;background:#fff900;color:#050505;font-size:clamp(2.2rem,6vw,4rem);font-weight:950;text-transform:uppercase}@media(max-width:700px){.student-join-screen{align-items:center;padding:18px}.student-join-form input{min-height:92px}.student-join-form button.primary{min-height:94px}}.student-join-form{gap:16px;border:4px solid #080808;border-radius:10px;padding:18px;background:#fffffff5;box-shadow:0 22px 60px #040c183d}.student-join-form .join-field{display:grid;gap:7px}.join-field-label{color:#111;font-size:.86rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.student-join-form .join-field small{color:#4f5d69;font-size:.78rem;font-weight:700;line-height:1.35}.student-join-form input{min-height:84px;border-width:3px;font-size:clamp(1.65rem,4vw,2.6rem)}.student-join-form button.primary{min-height:92px;border-width:4px;font-size:clamp(1.9rem,5vw,3rem)}.student-join-tips{border:1px solid #cfe0ef;border-radius:8px;padding:8px 10px;background:#f6fbff}.student-join-tips summary{cursor:pointer;color:#164a70;font-size:.82rem;font-weight:900}.student-join-tips p{margin:7px 0 0;color:#4f5d69;font-size:.8rem;line-height:1.35}@media(max-width:780px){.student-join-screen{padding:24px 18px}.student-join-form{width:min(500px,100%)}.student-join-form input{min-height:70px}.student-join-form button.primary{min-height:76px}}@media(min-width:701px){.student-join-screen{align-items:center;padding:clamp(24px,7vh,72px) 28px 28px}}body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{flex-direction:row;align-items:center}body:has(.product-home) .brand-button,body:has(.quizstrike-page) .brand-button,body:has(.quizstrike-auth-layout) .brand-button,body:has(.student-join-screen:not(.game-layout)) .brand-button{width:auto;flex:0 0 auto;justify-content:center}body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{position:relative;z-index:20}body:has(.product-home),body:has(.quizstrike-page),body:has(.quizstrike-auth-layout),body:has(.student-join-screen:not(.game-layout)){background:var(--qs-page);color:var(--qs-ink)}body:has(.product-home) p,body:has(.quizstrike-page) p,body:has(.quizstrike-auth-layout) p,body:has(.student-join-screen:not(.game-layout)) p{color:var(--qs-muted)}body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{min-height:80px;height:auto;padding:8px clamp(18px,4vw,52px);border-bottom:1px solid rgba(122,166,221,.24);background:#050b1bf0;color:var(--qs-ink);box-shadow:0 12px 30px #0000002e}body:has(.product-home) .brand-button,body:has(.quizstrike-page) .brand-button,body:has(.quizstrike-auth-layout) .brand-button,body:has(.student-join-screen:not(.game-layout)) .brand-button{min-width:128px;min-height:62px;padding:0;border:0;background:transparent}body:has(.product-home) .top-actions button,body:has(.quizstrike-page) .top-actions button,body:has(.quizstrike-auth-layout) .top-actions button,body:has(.student-join-screen:not(.game-layout)) .top-actions button{min-height:48px;border:1px solid var(--qs-border);border-radius:10px;padding-inline:18px;background:#0c1c3ab8;color:var(--qs-ink);font-size:.92rem;font-weight:850}body:has(.product-home) .top-actions button:hover,body:has(.quizstrike-page) .top-actions button:hover,body:has(.quizstrike-auth-layout) .top-actions button:hover,body:has(.student-join-screen:not(.game-layout)) .top-actions button:hover,body:has(.product-home) .top-actions button:focus-visible,body:has(.quizstrike-page) .top-actions button:focus-visible,body:has(.quizstrike-auth-layout) .top-actions button:focus-visible{border-color:var(--qs-blue);background:#235ba28c;color:#fff}body:has(.product-home) button.primary,body:has(.quizstrike-page) button.primary,body:has(.quizstrike-auth-layout) button.primary,body:has(.student-join-screen:not(.game-layout)) button.primary{border-color:#3bd39a;background:#14825a;color:#fff}.auth-kicker{width:fit-content;color:#72d8ff;font-weight:900;text-transform:uppercase}.student-join-screen{min-height:calc(100vh - 80px);width:min(1180px,calc(100% - 48px));margin:0 auto;align-items:center;gap:clamp(24px,7vw,90px);padding:clamp(38px,7vh,86px) 0;background:transparent}.student-join-help{display:grid;align-content:center;gap:16px;max-width:550px}.student-join-help .quizstrike-logo{margin-bottom:12px}.student-join-help h1{margin:0;color:#fff;font-size:clamp(3.2rem,6vw,5.8rem);letter-spacing:-.06em}.student-join-help>p{margin:0;font-size:1.08rem;line-height:1.55}.student-join-form{align-self:center;width:min(480px,100%);gap:16px;border:1px solid rgba(126,166,220,.38);border-radius:18px;padding:clamp(22px,3vw,34px);background:#0a1731eb;box-shadow:0 24px 68px #0000004d}.student-join-form .join-field-label{color:#d7e6fa;font-size:.82rem}.student-join-form input{min-height:58px;border:1px solid rgba(126,166,220,.44);border-radius:10px;background:#040d1fe0;color:#fff;font-size:1.2rem;text-align:left}.student-join-form input::placeholder{color:#7589a5}.student-join-form .join-field small,.student-join-tips p{color:#8fa6c0}.student-join-tips{border-color:#7ea6dc47;background:#0f23468c}.student-join-tips summary{color:#bce5ff}@media(max-width:980px){.student-join-screen{grid-template-columns:1fr}.student-join-help{max-width:700px}.student-join-form{width:min(620px,100%);justify-self:center}}@media(max-width:760px){body:has(.product-home) .topbar,body:has(.quizstrike-page) .topbar,body:has(.quizstrike-auth-layout) .topbar,body:has(.student-join-screen:not(.game-layout)) .topbar{min-height:72px;padding-inline:14px}body:has(.product-home) .brand-button,body:has(.quizstrike-page) .brand-button,body:has(.quizstrike-auth-layout) .brand-button,body:has(.student-join-screen:not(.game-layout)) .brand-button{min-width:100px;min-height:56px}body:has(.product-home) .top-actions,body:has(.quizstrike-page) .top-actions,body:has(.quizstrike-auth-layout) .top-actions,body:has(.student-join-screen:not(.game-layout)) .top-actions{position:absolute;top:calc(100% + 8px);right:0;z-index:12;display:none;min-width:190px;padding:8px;border:1px solid var(--qs-border);border-radius:12px;background:#050e1ffa}body:has(.product-home) .top-actions[data-open=true],body:has(.quizstrike-page) .top-actions[data-open=true],body:has(.quizstrike-auth-layout) .top-actions[data-open=true],body:has(.student-join-screen:not(.game-layout)) .top-actions[data-open=true]{display:grid}body:has(.product-home) .top-actions button,body:has(.quizstrike-page) .top-actions button,body:has(.quizstrike-auth-layout) .top-actions button,body:has(.student-join-screen:not(.game-layout)) .top-actions button{width:100%;justify-content:flex-start}.site-home,.landing-section,.landing-final-cta,.quizstrike-route-hero,.quizstrike-auth-layout,.student-join-screen{width:min(100% - 32px,700px)}.student-join-screen{min-height:auto;padding:36px 0 54px}.student-join-help h1{font-size:clamp(3rem,14vw,4.7rem)}}@media(prefers-reduced-motion:reduce){body:has(.product-home) *,body:has(.quizstrike-page) *,body:has(.quizstrike-auth-layout) *,body:has(.student-join-screen:not(.game-layout)) *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.student-join-screen-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1320px;margin:0 auto;padding:16px clamp(16px,4vw,48px)}.student-join-screen-nav a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#dbeafe;font-size:.9rem;font-weight:800;text-decoration:none}.student-join-screen-nav a:focus-visible{outline:3px solid #54b8ff;outline-offset:4px;border-radius:6px}.student-join-screen-nav .quizstrike-logo{display:block;width:112px;line-height:0}.student-join-screen-nav img{display:block;width:100%;height:auto}.student-join-form .linked-join-code small{color:#b5c8e0}.student-join-form .linked-join-code>span{color:#9bd5ef}.student-join-form .linked-code-edit{justify-self:start;min-height:44px;margin-top:4px;padding:0 12px;background:#122748;color:#dbeafe;border-color:#436486;font-size:.85rem}.student-join-form .student-join-account-note{margin:0;color:#b5c8e0;font-size:.8rem;line-height:1.5;text-align:center}body[data-theme=gyakuteneigo]{background:var(--color-surface-page);color:var(--color-text-strong);font-family:var(--font-sans)}body[data-theme] .ge-site{min-height:100vh;font-family:var(--font-sans)}body[data-theme] .ge-site .app-shell:has(.quizstrike-auth-layout,.competition-hub-page,.competition-detail-page,.workspace){background:var(--color-surface-page)}body[data-theme] .ge-site :is(.product-hub-home,.speaking-app,.quizstrike-page,.competition-hub-page,.competition-detail-page,.quizstrike-auth-layout,.student-join-screen,.workspace){--hub-blue: var(--color-action);--hub-blue-dark: var(--color-action-hover);--hub-navy: var(--color-text-strong);--hub-muted: var(--color-text-muted);--hub-border: var(--color-border);--speaking-blue: var(--color-action);--speaking-blue-bright: var(--color-action);--speaking-navy: var(--color-text-strong);--speaking-muted: var(--color-text-muted);--speaking-line: var(--color-border);--speaking-cloud: var(--color-surface-subtle);--speaking-shadow: var(--shadow-panel);background:var(--color-surface-page);color:var(--color-text-strong);font-family:var(--font-sans)}body[data-theme] .ge-site :is(.quizstrike-page,.competition-hub-page,.competition-detail-page,.quizstrike-auth-layout,.student-join-screen){--qs-ink: var(--color-text-strong);--qs-muted: var(--color-text-muted);--qs-page: var(--color-surface-page);--qs-panel: var(--color-surface);--qs-panel-strong: var(--color-surface-subtle);--qs-border: var(--color-border);--qs-blue: var(--color-action);--qs-blue-strong: var(--color-action-hover)}body[data-theme] .ge-site :is(.product-hub-home,.speaking-app,.quizstrike-page,.competition-hub-page,.competition-detail-page,.quizstrike-auth-layout,.student-join-screen,.workspace) :is(h1,h2,h3){letter-spacing:-.035em;line-height:1.15;font-weight:750;text-shadow:none}body[data-theme] .ge-site .product-hub-topbar{position:relative;z-index:var(--z-navigation);display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:36px;min-height:80px;height:auto;padding:12px max(24px,calc((100vw - var(--ge-content-width)) / 2));border-bottom:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-strong);box-shadow:none}body[data-theme] .ge-site .product-hub-topbar .brand-button{flex:0 0 auto;min-width:0;min-height:44px;padding:0;border:0;background:transparent}body[data-theme] .ge-site .product-hub-topbar .gyakuteneigo-brand{width:172px}body[data-theme] .ge-site .product-hub-topbar .primary-nav{position:relative;display:flex;flex-direction:row;justify-content:flex-end;width:auto;flex:1}body[data-theme] .ge-site .product-hub-topbar .top-actions{position:static;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;width:100%;min-width:0;padding:0;border:0;background:transparent;box-shadow:none}body[data-theme] .ge-site .product-hub-nav-group{gap:6px;margin:0 auto}body[data-theme] .ge-site .product-hub-auth-group{gap:10px}body[data-theme] .ge-site .product-hub-topbar .top-actions button{min-height:44px;width:auto;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--color-text);font-size:.875rem;font-weight:650;text-transform:none;letter-spacing:0;box-shadow:none}body[data-theme] .ge-site .product-hub-topbar .top-actions button:is(:hover,[aria-current=page]){background:var(--color-selected);color:var(--color-action)}body[data-theme] .ge-site .product-hub-topbar .product-hub-login{min-width:80px;border-color:var(--color-border)!important;background:var(--color-surface)!important;color:var(--color-text-strong)!important}body[data-theme] .ge-site .product-hub-topbar .product-hub-get-started{min-width:120px;border-color:var(--color-action)!important;background:var(--color-action)!important;color:#fff!important}body[data-theme] .ge-site .product-hub-topbar .product-hub-get-started:hover{background:var(--color-action-hover)!important}body[data-theme] .ge-site .product-hub-topbar .nav-menu-toggle{display:none}body[data-theme] .ge-site .product-hub-home{padding:64px 0 28px}body[data-theme] .ge-site .product-hub-shell{width:min(var(--ge-content-width),calc(100% - 48px))}body[data-theme] .ge-site .product-hub-intro{margin-bottom:40px}body[data-theme] .ge-site .ge-eyebrow{display:block;margin-bottom:16px;color:var(--color-action);font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}body[data-theme] .ge-site .product-hub-intro h1{max-width:800px;margin:0 auto 20px;color:var(--color-text-strong);font-size:clamp(2.5rem,4.7vw,4.25rem);line-height:1.07;font-weight:750}body[data-theme] .ge-site .product-hub-intro>p{color:var(--color-text-muted);font-size:1.05rem}body[data-theme] .ge-site :is(.product-hub-card,.hub-classroom-entry,.product-hub-benefit-card){border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site .hub-classroom-entry{padding:24px 28px;margin-bottom:28px}body[data-theme] .ge-site .hub-classroom-entry h2{font-size:1.35rem}body[data-theme] .ge-site .product-hub-products{gap:24px}body[data-theme] .ge-site .product-hub-card{padding:28px}body[data-theme] .ge-site .product-hub-card h2{color:var(--color-text-strong);font-size:2rem}body[data-theme] .ge-site .product-hub-card-label{color:var(--ge-speaking);font-size:.7rem;font-weight:750;letter-spacing:.1em}body[data-theme] .ge-site .product-hub-quizstrike-card .product-hub-card-label{color:var(--ge-quiz)}body[data-theme] .ge-site .product-hub-card-description{color:var(--color-text-muted);font-size:.95rem}body[data-theme] .ge-site :is(.hub-code-submit,.product-hub-card-button){min-height:48px;border:1px solid var(--color-action);border-radius:var(--radius-control);background:var(--color-action);color:#fff;font-size:.9rem;font-weight:650;box-shadow:none}body[data-theme] .ge-site :is(.hub-code-submit,.product-hub-card-button):hover{background:var(--color-action-hover)}body[data-theme] .ge-site .hub-product-choice input:checked+span{border-color:var(--color-action);background:var(--color-selected);color:var(--color-action)}body[data-theme] .ge-site .product-hub-flow-number{background:var(--ge-speaking-soft);color:var(--ge-speaking)}body[data-theme] .ge-site .product-hub-quiz-title-row>svg{width:38px;color:var(--ge-quiz)}body[data-theme] .ge-site .product-hub-benefits{gap:16px;margin-top:24px}body[data-theme] .ge-site .product-hub-benefit-card{padding:20px;box-shadow:none}body[data-theme] .ge-site .product-hub-benefit-card strong{color:var(--color-text-strong);font-size:.9rem}body[data-theme] .ge-site .product-hub-footer{margin-top:32px;border-top:1px solid var(--color-border);padding-top:20px;color:var(--color-text-muted)}body[data-theme] .ge-site :is(.auth-form-panel,.student-join-form,.speaking-join-card,.speaking-prep-card,.speaking-empty-card,.speaking-student-info-card,.speaking-evaluation-card){border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);color:var(--color-text-strong);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site :is(.auth-form-heading h1,.student-join-help h1,.student-join-form h2){color:var(--color-text-strong);font-size:clamp(2rem,3.5vw,3rem);line-height:1.15}body[data-theme] .ge-site :is(.auth-form-panel,.student-join-screen) :is(p,small,label){color:var(--color-text-muted)}body[data-theme] .ge-site :is(.auth-form-panel,.student-join-form) input{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-text-strong)}body[data-theme] .ge-site :is(.auth-form-panel,.student-join-form) input::placeholder{color:var(--color-text-muted)}body[data-theme] .ge-site .auth-form-panel :is(.password-toggle,.server-wake-status){border-color:var(--color-border);background:var(--color-surface-subtle);color:var(--color-text)}body[data-theme] .ge-site .auth-form-panel .server-wake-status :is(strong,small){color:var(--color-text)}body[data-theme] .ge-site .auth-form-panel .text-button,body[data-theme] .ge-site .auth-form-panel .auth-kicker{color:var(--color-action)}body[data-theme] .ge-site :is(.quizstrike-auth-layout,.student-join-screen,.quizstrike-page,.workspace) button.primary,body[data-theme] .ge-site .speaking-app button.speaking-primary-button{border-color:var(--color-action);border-radius:var(--radius-control);background:var(--color-action);color:#fff;box-shadow:none}body[data-theme] .ge-site :is(.quizstrike-auth-layout,.student-join-screen,.quizstrike-page,.workspace) button.primary:hover,body[data-theme] .ge-site .speaking-app button.speaking-primary-button:hover{background:var(--color-action-hover)}body[data-theme] .ge-site .auth-visual{border-color:var(--color-border);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site .auth-visual-title{line-height:1.06}body[data-theme] .ge-site :is(.performance-home,.performance-shell,.speaking-page-shell,.speaking-home-page,.speaking-welcome,.speaking-join-page,.speaking-result-page){background:var(--color-surface-page)}body[data-theme] .ge-site .speaking-topbar{min-height:80px;border-bottom:1px solid var(--color-border);background:var(--color-surface);box-shadow:none}body[data-theme] .ge-site .speaking-app :is(.speaking-eyebrow,.speaking-card-kicker){color:var(--color-action)}body[data-theme] .ge-site .speaking-app :is(.speaking-join-card h1,.speaking-preactivity-copy h1,.speaking-result-hero h1){color:var(--color-text-strong)}body[data-theme] .ge-site .speaking-app :is(input,textarea,select):focus-visible,body[data-theme] .ge-site :is(.hub-classroom-entry,.auth-form-panel,.student-join-form) input:focus-visible{border-color:var(--color-focus);outline:2px solid var(--color-focus);outline-offset:3px;box-shadow:none}body[data-theme] .ge-site .app-shell:has(.workspace)>.product-hub-topbar{display:none}body[data-theme] .ge-site .workspace :is(.dashboard-brand-row,.sidebar,.teacher-page-topbar){border-color:var(--color-border);background:var(--color-surface);box-shadow:none}body[data-theme] .ge-site .workspace .main-panel{background:var(--color-surface-page)}body[data-theme] .ge-site .workspace :is(.panel,.metric,.teacher-action-card,.study-set-card){border-color:var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site .workspace .sidebar button.active{border-color:var(--color-border);background:var(--color-selected);color:var(--color-action)}body[data-theme] .ge-site .workspace .sidebar .sidebar-create-button{border-color:var(--color-action);background:var(--color-action);color:#fff;box-shadow:none}@media(max-width:1160px){body[data-theme] .ge-site .product-hub-topbar{gap:16px;padding:12px 24px}body[data-theme] .ge-site .product-hub-topbar .nav-menu-toggle{display:inline-flex;min-height:44px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-strong)}body[data-theme] .ge-site .product-hub-topbar .top-actions{position:absolute;top:calc(100% + 16px);right:0;display:none;width:min(320px,calc(100vw - 48px));padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:var(--shadow-floating)}body[data-theme] .ge-site .product-hub-topbar .top-actions[data-open=true]{display:grid;gap:12px}body[data-theme] .ge-site :is(.product-hub-nav-group,.product-hub-auth-group){display:grid;margin:0;width:100%}body[data-theme] .ge-site .product-hub-auth-group{grid-template-columns:1fr 1fr;padding-top:12px;border-top:1px solid var(--color-border)}body[data-theme] .ge-site .product-hub-topbar .product-hub-nav-link{width:100%;justify-content:flex-start}}@media(max-width:600px){body[data-theme] .ge-site .product-hub-topbar{min-height:72px;padding:10px 16px}body[data-theme] .ge-site .product-hub-topbar .gyakuteneigo-brand{width:152px}body[data-theme] .ge-site .product-hub-home{padding-top:36px}body[data-theme] .ge-site .product-hub-shell{width:calc(100% - 32px)}body[data-theme] .ge-site .product-hub-intro{margin-bottom:28px}body[data-theme] .ge-site .product-hub-intro h1{font-size:2.6rem}body[data-theme] .ge-site :is(.hub-classroom-entry,.product-hub-card){padding:20px}body[data-theme] .ge-site .product-hub-card h2{font-size:1.75rem}body[data-theme] .ge-site .product-hub-products{gap:20px}}@media(prefers-reduced-motion:reduce){body[data-theme] .ge-site *,body[data-theme] .ge-site *:before,body[data-theme] .ge-site *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}body[data-theme] .ge-site .performance-home{--performance-blue: var(--color-action);--performance-blue-dark: var(--color-action-hover);--performance-navy: var(--color-text-strong);--performance-muted: var(--color-text-muted);--performance-border: var(--color-border)}body[data-theme] .ge-site .performance-hero-copy{min-width:0}body[data-theme] .ge-site .performance-hero-actions{flex-wrap:wrap;gap:12px}body[data-theme] .ge-site .performance-hero-actions .performance-button{width:auto;min-width:0;max-width:100%}body[data-theme] .ge-site .performance-flow{border-color:var(--color-border);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site .performance-flow-heading>span{display:none}body[data-theme] .ge-site .performance-flow-heading h2{color:var(--color-text-strong)}body[data-theme] .ge-site .performance-flow-stage-copy strong{color:var(--color-text-strong);font-weight:650}body[data-theme] .ge-site .performance-flow-number{color:var(--ge-speaking);background:var(--ge-speaking-soft)}body[data-theme] .ge-site :is(.performance-orb,.performance-scribble),body[data-theme] .ge-site .performance-home:before,body[data-theme] .ge-site .performance-home:after,body[data-theme] .ge-site :is(.competition-hub-page,.competition-detail-page):before{display:none}body[data-theme] .ge-site .performance-shell{width:min(var(--ge-content-width),calc(100% - 48px))}body[data-theme] .ge-site :is(.performance-entry-card,.performance-benefit-card,.performance-flow-card){border-color:var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site :is(.performance-button-primary,.performance-entry-action-teacher,.performance-entry-action-student){border-color:var(--color-action);background:var(--color-action);color:#fff;box-shadow:none;border-radius:var(--radius-control)}body[data-theme] .ge-site :is(.performance-button-primary,.performance-entry-action-teacher,.performance-entry-action-student):hover{background:var(--color-action-hover)}body[data-theme] .ge-site .quiz-classroom-entry{padding-inline:max(24px,calc((100vw - var(--ge-content-width)) / 2));border-color:var(--color-border);background:var(--color-surface)}body[data-theme] .ge-site .quiz-classroom-entry :is(h2,.auth-kicker){color:var(--color-text-strong)}body[data-theme] .ge-site .quiz-classroom-entry p{color:var(--color-text-muted)}body[data-theme] .ge-site .quiz-classroom-entry .auth-kicker{color:var(--color-action)}body[data-theme] .ge-site .quiz-classroom-actions button{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text-strong)}body[data-theme] .ge-site :is(.quiz-classroom-actions,.competition-hub-page,.competition-detail-page) button.primary{border-color:var(--color-action);background:var(--color-action);color:#fff;font-weight:650;box-shadow:none}body[data-theme] .ge-site :is(.quiz-classroom-actions,.competition-hub-page,.competition-detail-page) button.primary:hover{background:var(--color-action-hover)}body[data-theme] .ge-site :is(.competition-hub-hero,.competition-hub-content){width:min(var(--ge-content-width),calc(100% - 48px))}body[data-theme] .ge-site .competition-hub-hero{min-height:560px;padding-block:56px}body[data-theme] .ge-site .competition-hub-hero h1{color:var(--color-text-strong);font-size:clamp(2.6rem,4.5vw,4rem);line-height:1.1;font-weight:750}body[data-theme] .ge-site .competition-hub-hero-copy>p{color:var(--color-text-muted);font-size:1rem}body[data-theme] .ge-site .competition-hub-kicker{color:var(--ge-quiz)}body[data-theme] .ge-site .competition-hub-hero-art{transform:none;border-color:var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site :is(.competition-hub-page,.competition-detail-page) :is(.secondary-button,.hero-rules-link){border-color:var(--color-border);background:var(--color-surface);color:var(--color-action);font-weight:650}body[data-theme] .ge-site :is(.competition-hub-page,.competition-detail-page) :is(.secondary-button,.hero-rules-link):hover{background:var(--color-selected)}body[data-theme] .ge-site :is(.competition-filter-bar,.competition-card,.competition-loading,.empty-browser,.featured-competition-card,.competition-guidance-grid article,.competition-overview-grid>article,.competition-detail-tabs,.competition-study-panel,.competition-bracket-panel){border-color:var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:var(--shadow-panel);color:var(--color-text)}body[data-theme] .ge-site :is(.competition-hub-page,.competition-detail-page) :is(.section-heading h2,.featured-copy h3,.competition-card h3,.competition-guidance-grid h3,.empty-browser strong,.competition-detail-hero-copy h1,.competition-overview-grid h3){color:var(--color-text-strong)}body[data-theme] .ge-site :is(.featured-copy,.competition-card-body,.competition-guidance-grid,.competition-detail-hero-copy) p{color:var(--color-text-muted)}body[data-theme] .ge-site .competition-filter-bar select{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text-strong)}body[data-theme] .ge-site :is(.competition-proof-row,.competition-card-topline,.featured-details,.detail-hero-meta){color:var(--color-text-muted)}body[data-theme] .ge-site .competition-proof-row svg{color:var(--color-success)}body[data-theme] .ge-site .competition-status-chip{color:var(--color-success);background:var(--color-success-surface)}body[data-theme] .ge-site .competition-notice.error{color:var(--color-danger);background:var(--color-danger-surface)}body[data-theme] .ge-site .competition-detail-tabs button{color:var(--color-text);background:var(--color-surface)}body[data-theme] .ge-site .competition-detail-tabs button.active{color:var(--color-action);background:var(--color-selected)}@media(max-width:700px){body[data-theme] .ge-site :is(.performance-shell,.competition-hub-hero,.competition-hub-content){width:calc(100% - 32px)}body[data-theme] .ge-site .competition-hub-hero{min-height:auto;padding-block:32px}body[data-theme] .ge-site .quiz-classroom-entry{padding-inline:16px}}body[data-theme] .ge-site .quizstrike-join-page{min-height:100vh;background:var(--color-surface-page);color:var(--color-text-strong)}body[data-theme] .ge-site .student-join-screen-nav{max-width:none;min-height:80px;padding:12px max(24px,calc((100vw - var(--ge-content-width)) / 2));border-bottom:1px solid var(--color-border);background:var(--color-surface)}body[data-theme] .ge-site .student-join-screen-nav a{color:var(--color-action)}body[data-theme] .ge-site .student-join-form :is(h1,.join-field-label){color:var(--color-text-strong)}body[data-theme] .ge-site .student-join-form h1{font-size:clamp(2rem,3.5vw,3rem)}body[data-theme] .ge-site .student-join-form .auth-kicker{color:var(--color-action)}body[data-theme] .ge-site .student-join-help .controls-card{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-panel)}body[data-theme] .ge-site .student-join-help :is(h2,.student-control){color:var(--color-text-strong)}body[data-theme] .ge-site .student-join-help :is(kbd,.student-control kbd){border-color:var(--color-border);background:var(--color-surface-subtle);color:var(--color-text)}body[data-theme] .ge-site .student-join-form .linked-join-code{border-color:var(--color-border);background:var(--color-selected);color:var(--color-text-strong)}body[data-theme] .ge-site .student-join-form .linked-join-code :is(span,small){color:var(--color-text)}body[data-theme] .ge-site .student-join-form .linked-code-edit{border-color:var(--color-border);background:var(--color-surface);color:var(--color-action)}body[data-theme] .ge-site :is(.auth-form-panel,.student-join-form) .error-text{color:var(--color-danger);background:var(--color-danger-surface)}body[data-theme] .ge-site .ge-language-picker{display:flex;align-items:center;gap:6px;color:var(--color-text-muted)}body[data-theme] .ge-site .ge-language-picker select{width:auto;min-height:44px;padding:8px 6px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text-strong);font-size:.8rem;font-weight:650;cursor:pointer}body[data-theme] .ge-site .ge-language-picker select:hover{border-color:var(--color-border)}body[data-theme] .ge-site .product-hub-auth-group{gap:8px}body[data-theme] .ge-site .product-hub-nav-group{gap:2px}body[data-theme] .ge-site .product-hub-topbar .top-actions{gap:16px}body[data-theme] .ge-site .product-hub-topbar .top-actions .product-hub-nav-link{padding-inline:10px}body[data-theme] .ge-site .product-hub-footer a{min-height:44px;display:inline-flex;align-items:center;color:var(--color-action);text-decoration:none}body[data-theme] .ge-site .product-hub-footer a:hover{text-decoration:underline}html[lang=ja] .ge-site :is(.public-homepage,.product-hub-homepage,.speaking-app,.auth-layout) :is(h1,h2,h3){letter-spacing:normal;line-height:1.4;line-break:strict;text-wrap:balance}body[data-theme] .ge-site .student-join-screen-nav .ge-language-picker,body[data-theme] .ge-site .speaking-student-topbar .ge-language-picker{margin-left:auto}body[data-theme] .ge-site .game-preferences-panel>.ge-language-picker{justify-content:space-between;margin-bottom:16px}@media(max-width:1160px){body[data-theme] .ge-site .product-hub-auth-group .ge-language-picker{grid-column:1 / -1;justify-content:space-between}body[data-theme] .ge-site .ge-language-picker select{flex:1;border-color:var(--color-border)}}
