header nav{flex-wrap:wrap}header nav form{margin:0}header nav button{padding:.4rem .7rem;min-height:40px}select,input,textarea{max-width:100%;font:inherit}input:not([type=checkbox]):not([type=file]),textarea{width:100%;background:#10182e;color:#f3f6ff;border:1px solid #60708f;border-radius:10px;padding:.8rem}label{display:block}input[type=checkbox]{width:20px;height:20px;vertical-align:middle}select{white-space:normal}button,.button{min-height:44px}audio{width:100%;margin-top:20px}.game-grid,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.game-icon{font-size:3.5rem;color:#75d8ff}.game-grid .mode{padding:28px}.edit-form{padding:20px 0}.edit-form label{margin-bottom:16px}.edit-form fieldset{margin:16px 0;border:1px solid #465271}.login-card{max-width:520px;margin:30px auto}.login-card label{margin:20px 0}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.tabs [aria-pressed=true]{border-color:#75d8ff;background:#17374e}.word-bank{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 0}.letter-spaces{font-family:monospace;font-size:1.7rem;letter-spacing:.15rem;overflow-wrap:anywhere}#beeAnswer{font-size:1.7rem;margin:8px 0 16px}#beeFeedback{padding:20px;border-radius:12px;margin:20px 0}.timer{font-size:1.5rem;color:#ffc878}.bar label{min-width:130px}.bar input[type=number]{max-width:150px}summary{cursor:pointer;overflow-wrap:anywhere}.order-row{grid-template-columns:auto 80px minmax(0,1fr)}.report-grid>*{min-width:0}.main-table-wrap{max-width:100%}.main-piece-table td{overflow-wrap:anywhere}header a{white-space:normal}#beeHint{white-space:pre-wrap}#beeReview p{padding:12px}.error{border-color:#ff929b}body{overflow-wrap:break-word}@media(max-width:650px){main{padding:16px}.game-grid,.form-grid{grid-template-columns:1fr}.word-bank{grid-template-columns:repeat(2,minmax(0,1fr))}header{align-items:flex-start;gap:14px}header nav{gap:10px}.bar{align-items:stretch}.bar>*{max-width:100%}.order-row{grid-template-columns:75px 60px minmax(0,1fr);gap:8px}.main-piece-table{min-width:0}.main-piece-table th,.main-piece-table td{padding:8px}.composer-chip{font-size:.9rem;white-space:normal}.main-piece-table select{min-width:50px;padding:7px}.panel{padding:18px}}@media print{header,footer,.tabs{display:none!important}}
/* 2.1 — a quieter, consistent learning workspace */
:root{--bg:#0c1220;--surface:#151e30;--surface-raised:#1b2840;--border:#2d3b52;--text:#eef3ff;--muted:#a8b5cb;--accent:#78e0c8;--violet:#bea7ff;--gold:#efc987;color-scheme:dark}
body{background:radial-gradient(ellipse at 85% 0,rgba(111,81,190,.1),transparent 42%),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;color:var(--text);overflow-wrap:anywhere;animation:none}body::before,body::after{display:none!important}.app-shell{width:min(1200px,100%);max-width:1200px;padding:0 32px;margin:auto}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0;border-bottom:1px solid var(--border);margin:0}.brand{font-size:18px;color:var(--text);font-weight:750;letter-spacing:-.4px;text-decoration:none;display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:#213d3b;border-radius:11px;color:var(--accent);font-size:24px}.back-games{font-size:14px;color:var(--muted);text-decoration:none}.back-games:hover{color:var(--text)}.game-navigation{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border);margin:0 0 8px;min-width:0}.game-label{font-size:14px;font-weight:700;white-space:nowrap;color:var(--accent)}.spelling-accent .game-label{color:var(--violet)}.game-navigation nav{display:flex;align-items:center;gap:6px;overflow:auto;min-width:0;max-width:100%;padding:2px}.game-navigation nav a{font-size:13px;font-weight:600;white-space:nowrap;text-decoration:none;padding:9px 12px;border-radius:8px;color:var(--muted)}.game-navigation nav a[aria-current]{color:var(--text);background:#26344a}.game-navigation nav a:hover{background:#1d2a3f;color:var(--text)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:40px 0 26px}.page-heading h1{font-size:clamp(28px,3.8vw,42px);line-height:1.16;letter-spacing:-1.2px;margin:8px 0 10px}.page-heading p{margin:0;color:var(--muted);max-width:650px}.page-heading.compact{padding:28px 0 20px}.page-heading.compact h1{font-size:30px}.eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--accent);font-weight:700}.breadcrumb{font-size:13px;color:var(--muted);text-decoration:none}.hero{padding:24px 0}.hero h1{font-size:32px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;margin:0 0 22px;box-shadow:none}.panel h1{font-size:32px;letter-spacing:-.8px}.panel h2{font-size:23px;letter-spacing:-.5px;margin-top:0}.panel h3{font-size:18px}.muted,small{color:var(--muted)}a{color:var(--accent)}button,.button{border-radius:10px;padding:11px 17px;min-height:44px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font:inherit;font-size:14px;font-weight:650;box-shadow:none;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}button:hover,.button:hover{transform:none;border-color:#6a829c;background:#263951}button:disabled{cursor:default;opacity:.45}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#0b2923;background-image:none}.primary:hover{background:#a1efd9!important;color:#0b2923}.secondary{background:transparent!important}.text-button{border:0;background:transparent;padding:8px;color:var(--muted);font-size:13px}.text-button:hover{background:transparent;color:var(--text)}.wide-button{width:100%;justify-content:center}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dashboard-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card,.mode-card{display:flex;flex-direction:column;position:relative;min-width:0;background:var(--surface);border:1px solid var(--border);padding:28px;border-radius:18px;overflow:hidden}.game-card h2{font-size:29px;letter-spacing:-.7px;margin:9px 0}.game-card p,.mode-card p{color:var(--muted);margin:0 0 20px}.game-card .button,.mode-card .button{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.game-card .card-icon{font-size:45px;line-height:1;width:76px;height:76px;display:grid;place-items:center;background:#203d3e;border:1px solid #315858;border-radius:20px;color:var(--accent);margin-bottom:28px}.spelling-card .card-icon{color:var(--violet);background:#352b4a;border-color:#53456b}.spelling-card .primary{background:var(--violet);border-color:var(--violet);color:#231d33}.card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.card-tags span,.badge{display:inline-block;font-size:11px;line-height:1.4;font-weight:650;background:#203b3b;color:var(--accent);border-radius:6px;padding:5px 8px}.card-tags span{color:var(--muted);background:#212e42}.badge.purple{background:#352b4b;color:#cbb7fa}.badge.gold{background:#403629;color:var(--gold)}.mode-card .badge{align-self:flex-start;margin-bottom:20px}.mode-card h2{font-size:26px;margin:0 0 12px;letter-spacing:-.6px}.mode-number{position:absolute;right:22px;top:19px;color:#34435c;font-size:38px;font-weight:750;line-height:1}.feature-list{list-style:none;padding:0;margin:0 0 28px;font-size:14px}.feature-list li{margin:9px 0;color:#d6dfed;padding-left:20px;position:relative}.feature-list li::before{content:'✓';position:absolute;left:0;color:var(--accent)}.library-summary{font-size:13px;color:var(--muted);margin:0 0 18px;display:flex;gap:10px;align-items:center}.library-summary::before{content:'';width:7px;height:7px;background:var(--accent);border-radius:50%}.quiet-note{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:22px 0;font-size:13px;color:var(--muted)}.app-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--border);margin:44px 0 0;padding:22px 0;font-size:12px;color:var(--muted)}.app-footer div{display:flex;align-items:center;gap:18px}.app-footer a{color:var(--muted);text-decoration:none}.app-footer small{margin-left:6px;font-size:10px}.app-footer form{margin:0}.settings-tabs{display:flex;gap:4px;margin:0 0 20px;border-bottom:1px solid var(--border);padding-bottom:12px;overflow:auto}.settings-tabs button{background:transparent;border-color:transparent;white-space:nowrap;color:var(--muted)}.settings-tabs button[aria-pressed=true]{background:#25364a;color:var(--text)}.library-panel{padding:0 22px 16px}.library-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--border)}.search-field{flex:1;min-width:180px;margin:0}.library-list{margin-bottom:16px}.library-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--border)}.library-info{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.library-info strong{font-size:15px;font-weight:650;overflow-wrap:anywhere}.library-info small{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.source-tag{font-size:10px;color:var(--accent)}.position-controls{display:flex;gap:4px;align-items:center}.position-label{font-size:11px;min-width:18px;text-align:center;color:var(--muted)}.icon-button{padding:8px;width:38px;height:44px;display:inline-grid;place-items:center;background:transparent;font-size:18px}.storage-note{font-size:12px;color:var(--muted);max-width:800px;margin-top:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.section-heading p{color:var(--muted);margin-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}label{display:block;font-size:13px;font-weight:600;color:#cdd8e9}label small{display:block;font-weight:400;font-size:11px;margin-top:6px}input:not([type=checkbox]):not([type=range]),textarea,select{display:block;background:#101928;color:var(--text);border:1px solid #34475e;border-radius:9px;font:inherit;font-size:15px;min-height:46px;width:100%;padding:11px 13px;margin-top:7px;box-sizing:border-box}input[type=file]{font-size:12px!important;padding:10px!important;overflow:hidden}input[type=checkbox]{accent-color:var(--accent);width:20px;height:20px;cursor:pointer;flex:none}input[type=range]{width:100%;accent-color:var(--accent);margin-top:20px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}output{font-size:12px;color:var(--accent);float:right}.toggle-line{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}.toggle-line small{color:var(--muted)}.check-grid{display:flex;flex-wrap:wrap;gap:12px 20px}.check-grid label{display:flex;align-items:center;gap:7px}.editor-dialog{color:var(--text);background:var(--surface);border:1px solid #435570;border-radius:18px;width:min(620px,calc(100% - 28px));max-height:88dvh;margin:auto;padding:26px;box-shadow:0 24px 100px #0009;overflow:auto}.editor-dialog::backdrop{background:#050b16bc;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.dialog-heading h2{font-size:24px;letter-spacing:-.6px;margin:0}.editor-dialog form>label,.editor-dialog .form-grid{margin-bottom:18px}.dialog-actions{display:flex;justify-content:space-between;gap:14px;padding-top:20px;margin-top:8px;border-top:1px solid var(--border)}.advanced-fields{border-top:1px solid var(--border);padding:14px 0}.advanced-fields summary{font-size:13px;color:var(--muted);margin-bottom:12px}.advanced-fields label{margin:14px 0}.advanced-fields fieldset{border:1px solid var(--border);border-radius:10px;margin:14px 0}.hint-card{background:#111a2c;border:1px solid var(--border);border-radius:12px;padding:20px;margin-top:28px}.hint-card h3{margin-top:0}.hint-card p{font-size:14px;margin-bottom:0}.empty-state{text-align:center;padding:30px;color:var(--muted)}.notice{background:#173c34;border:1px solid #356d5e;border-radius:10px;padding:14px;font-size:14px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.practice-setup,.spelling-stage{max-width:640px;margin-left:auto;margin-right:auto}.practice-setup h2{margin-top:15px}.round-options{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0;align-items:center}.stage-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.spelling-stage{text-align:center}.spelling-stage form{text-align:left;margin:25px 0 18px}.listening-orb{width:84px;height:84px;display:grid;place-items:center;background:linear-gradient(135deg,#293d45,#3c2b51);border:1px solid #54617d;border-radius:26px;font-size:30px;font-weight:700;color:var(--violet);margin:28px auto 20px}.hear-button{min-width:190px}.timer{font-size:13px;font-weight:650;color:var(--gold)}#beeAnswer{font-size:27px;letter-spacing:1px;margin-bottom:18px;text-align:center}#beeSpaces{font-size:25px;line-height:1.5;letter-spacing:4px;text-align:center;margin:14px 0}.hint-controls{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.spelling-stage #beeSpeechStatus{font-size:13px;color:var(--muted);min-height:20px}.answer-correct,.answer-wrong{border-radius:10px;padding:14px;font-size:14px}.answer-correct{background:#163a31;color:#c9f2df;border:1px solid #2d6350}.answer-wrong{background:#422a32;color:#ffdde1;border:1px solid #77414d}.listening-panel{max-width:900px;margin:auto}.listening-panel .bar{display:grid;grid-template-columns:2fr 1fr;gap:20px}.listening-panel h2#songTitle{margin:28px 0 4px}.reveal-grid{gap:14px;max-width:600px;margin:22px auto}.reveal-grid .art{height:160px;aspect-ratio:auto;border-radius:12px}.reveal-grid h3{font-size:14px;margin:8px 0 2px}.reveal-grid small,.credits{font-size:10px}.reveal-grid .symbol{font-size:55px}.reveal-grid img{object-fit:cover}.main-controls{position:static}.main-piece-table select{width:auto;min-width:58px}.main-piece-table th{font-size:11px;color:var(--muted)}.composer-chip{font-size:13px;padding:10px 12px;white-space:normal}.main-controls h2{margin-top:12px}.main-bank{gap:8px}.main-composer-cell .composer-remove{font-size:14px}.progress-stat{background:var(--surface);border:1px solid var(--border)}.history-card{display:flex;justify-content:space-between;align-items:center;gap:20px}.history-card h2{font-size:18px}.hide{display:none!important}
@media(max-width:950px){.game-navigation{display:block}.game-navigation nav{margin-top:10px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid:not(.two) .mode-card:last-child{grid-column:1/-1}.page-heading{padding-top:30px}.mode-card,.game-card{padding:23px}}
@media(max-width:600px){body{font-size:15px}.app-shell{padding:0 16px}.app-header{padding:18px 0}.brand{font-size:16px}.back-games{font-size:12px}.game-navigation nav{margin-right:-16px;padding-right:16px}.page-heading{display:flex;align-items:flex-start;flex-direction:column;gap:16px;padding:26px 0 22px}.page-heading h1{font-size:30px}.page-heading>.button,.page-heading>button{align-self:flex-start}.dashboard-grid,.dashboard-grid.two{grid-template-columns:1fr;gap:14px}.dashboard-grid:not(.two) .mode-card:last-child{grid-column:auto}.game-card,.mode-card{padding:24px}.game-card .card-icon{height:60px;width:60px;font-size:35px;margin-bottom:20px}.panel{padding:20px;border-radius:14px}.library-panel{padding:0 16px 12px}.library-row{grid-template-columns:20px minmax(0,1fr) auto;gap:12px;position:relative}.library-row .position-controls{grid-column:2;grid-row:2;justify-content:flex-start}.library-row>button:last-child{grid-column:3;grid-row:1/3}.word-row{grid-template-columns:20px minmax(0,1fr) 36px 55px;gap:10px}.word-row>button:last-child{grid-column:4;grid-row:1;padding:8px 11px}.word-row>.icon-button{grid-column:3;grid-row:1}.library-info strong{font-size:14px}.library-toolbar .search-field{flex-basis:100%;min-width:0}.library-toolbar .button{font-size:12px;padding:9px 12px}.section-heading{display:block}.section-heading button{margin-top:18px}.form-grid{grid-template-columns:1fr}.editor-dialog{padding:20px;width:calc(100% - 24px)}.round-options{grid-template-columns:1fr}.round-options .toggle-line{padding:0}.listening-panel .bar{grid-template-columns:1fr}.listening-panel .bar:has(#previousSong){display:flex}.reveal-grid .art{height:125px}.main-piece-table td{font-size:12px;padding:7px}.main-piece-table select{font-size:14px;padding:8px}.main-match-layout{display:block}.composer-drop{min-width:0}.main-composer-cell{width:36%}.main-piece-table{table-layout:fixed;min-width:0}.main-piece-table th:first-child{width:65px}.composer-chip{font-size:12px;padding:9px}.history-card{display:block}.history-card button{margin-top:10px}.app-footer{margin-top:30px;padding:18px 0}.dialog-actions{flex-wrap:wrap}.game-navigation nav a{padding:9px 10px}.spelling-stage .hint-controls button{font-size:12px}}
@media print{.app-header,.game-navigation,.app-footer,.page-heading,.settings-tabs{display:none!important}.app-shell{width:100%;padding:0}.panel{background:white;color:black;border:0}.hide{display:none!important}}
.library-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:14px 0}.library-pagination>span{font-size:12px;color:var(--muted);margin-right:auto}.library-pagination button{font-size:12px;padding:8px 12px}.bulk-controls{display:flex;gap:4px}.bulk-controls button{font-size:12px;min-height:40px;padding:6px 8px}.game-navigation nav,.settings-tabs{flex-wrap:nowrap}.settings-tabs button{flex:none}@media(max-width:600px){.library-pagination{flex-wrap:wrap}.library-pagination button{padding:8px 10px}}

.study-choices{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}#studyVideo{display:block;width:100%;max-height:65vh;background:#000;border-radius:12px}#studyPlayerWrap{min-width:0}#studyPanel{margin-top:1rem}

#uploadResults{padding-left:1.25rem;max-height:22rem;overflow:auto;overflow-wrap:anywhere}#uploadResults li{margin:.5rem 0}#studyFolder{max-width:100%}

.recording-card{padding:1rem;background:rgba(255,255,255,.04);border:1px solid var(--line,#344157);border-radius:12px;margin:.6rem 0 1rem}.recording-card h3{font-size:1rem;margin:0 0 .5rem}.recording-card audio{width:100%;margin:.5rem 0}.recording-card .bar{flex-wrap:wrap}.recording-card button{min-height:42px}.recording-card p{font-size:.9rem}#wordEditor{max-height:90dvh;overflow-y:auto}

.recording-card input[type=file]{max-width:100%}.recording-card small{display:block;margin-top:.4rem}#bulkAudioRows{max-height:55vh;overflow:auto}#bulkAudioDialog{max-height:90dvh;overflow-y:auto}
