@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;700;800&family=Space+Grotesk:wght@500;700&display=swap";:root{color:#102125;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff9ef;font-family:Outfit,sans-serif;font-weight:400;line-height:1.45}body{background:radial-gradient(45rem 45rem at -15% -10%,#b7e0c5b3,#0000),radial-gradient(35rem 35rem at 110% 0,#b8dbe5cc,#0000),#fff9ef;min-width:320px;min-height:100vh;margin:0}h1,h2,h3{font-family:Space Grotesk,sans-serif}:root{--ink:#102125;--surface:#fff9ef;--panel:#fffdf8;--accent:#ea7f33;--accent-deep:#ca5f16;--sky:#b8dbe5;--mint:#b7e0c5;--danger:#7a1d1d}*{box-sizing:border-box}.app-shell{width:min(1140px,100% - 2rem);margin:2rem auto 3rem}.app-shell.mobile-shell{width:min(760px,100% - .5rem);margin-top:.5rem;margin-bottom:1rem}.app-shell.desktop-shell{width:min(1140px,100% - 2rem)}.app-shell.workshop-shell{width:min(2400px,100vw - .5rem);margin-top:.5rem;margin-bottom:1.5rem}.app-header{background:linear-gradient(130deg,#b8dbe5cc,#fff9efe6);border:1px solid #10212529;border-radius:24px;margin-bottom:1.3rem;padding:2rem;animation:.5s ease-out rise;box-shadow:0 14px 40px #10212514}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent-deep);margin:0;font-weight:800}.app-header h1{margin:.5rem 0;font-size:clamp(1.8rem,3vw,3rem);line-height:1.06}.app-header p{max-width:60ch;margin:0}.header-utility-row{justify-content:flex-end;margin-top:1rem;display:flex}.header-utility-btn{color:var(--ink);font:inherit;cursor:pointer;cursor:pointer;background:#fffdf8eb;border:1px solid #1021252e;border-radius:999px;padding:.55rem .9rem;font-weight:700}.state-chip{background:#fffdf8;border:1px solid #10212533;border-radius:999px;align-items:center;width:100%;padding:.35rem .7rem;font-weight:700;display:inline-flex}.state-chip.awaitingPlayback{background:#fff0df;border-color:#ca5f1666}.state-chip.running{background:#e8f3ff;min-height:100%}.state-chip.complete{background:#eaf6ee;border-color:#2a794c59}.mode-chip{background:#fffdf8d9;border:1px dashed #1021253d;border-radius:999px;align-items:center;margin-top:.55rem;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.mode-chip.mobile{color:#2f4a9a}.mode-chip.desktop{color:#40545a}.workflow-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:0 0 1rem;display:grid}.desktop-workflow-tabs{margin-bottom:1.2rem}.care-routine-strip{background:linear-gradient(135deg,#fffcf6f5,#f3efe7f0);border:1px solid #1021251f;border-radius:18px;margin:0 0 1rem;padding:.9rem 1rem}.care-routine-header{margin-bottom:.7rem}.care-routine-header strong{color:#5f4724}.care-routine-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.care-routine-card{background:#ffffffb8;border:1px solid #1021251a;border-radius:14px;gap:.35rem;padding:.9rem .95rem;display:grid}.care-routine-card strong{font-size:.98rem}.care-routine-card p{color:#526265;margin:0;font-size:.82rem}.care-routine-card.coming-soon{opacity:.5;filter:grayscale(.2)}.care-routine-card.active{background:linear-gradient(145deg,#ffefdcf5,#fff9f0fa);border-color:#ca5f163d}.care-routine-badge{color:#5b676a;letter-spacing:.05em;text-transform:uppercase;background:#10212512;border-radius:999px;justify-self:start;padding:.2rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.care-routine-card.active .care-routine-badge{color:#8a4716;background:#ca5f161f}.language-simulator-card{background:linear-gradient(135deg,#eef6ffeb,#fffcf6f5);border:1px solid #1021251f;border-radius:18px;gap:.7rem;margin:0 0 1rem;padding:.9rem 1rem;display:grid}.language-simulator-copy{gap:.2rem;display:grid}.language-simulator-copy strong{color:#1d4b78}.language-simulator-copy span{color:#4c5d61;font-size:.84rem}.language-simulator-control{gap:.3rem;max-width:260px;display:grid}.language-simulator-control span{color:#35556f;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:800}.language-simulator-control select{width:100%;color:var(--ink);font:inherit;background:#fffdf8;border:1px solid #10212529;border-radius:10px;padding:.6rem .75rem;font-weight:700}.workflow-tab{color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #10212533;border-radius:12px;padding:.55rem .4rem;font-weight:700}.workflow-tab.active{color:#6f3206;background:linear-gradient(130deg,#f7dfc9,#ffd8b8);border-color:#ca5f1673}.desktop-step-layout{grid-template-columns:repeat(12,1fr)}.desktop-step-layout .calculator,.desktop-step-layout .songs{grid-column:span 12}.desktop-brush-layout{grid-template-columns:repeat(12,1fr)}.error-banner{color:var(--danger);background:#ffe4d4;border:1px solid #e8b69d;border-radius:12px;margin:0 0 1rem;padding:.85rem 1rem}.info-banner{color:#7f4f1d;background:#fff2dc;border:1px solid #ca5f1647;border-radius:12px;margin:0 0 1rem;padding:.85rem 1rem}.consent-banner{color:#194a73;background:#eef6ff;border:1px solid #24609c47;border-radius:12px;margin:0 0 1rem;padding:.85rem 1rem}.storage-banner{color:#3e347e;background:#f4f2ff;border:1px solid #4339873d;border-radius:12px;margin:0 0 1rem;padding:.85rem 1rem}.last-song-banner{color:#224f2a;background:#f0f8ef;border:1px solid #31783a3d;border-radius:12px;justify-content:space-between;align-items:center;gap:.7rem;margin:0 0 1rem;padding:.85rem 1rem;display:flex}.last-song-banner p{margin:0}.consent-actions{flex-wrap:wrap;gap:.55rem;margin-top:.55rem;display:flex}.privacy-link{color:#1f5c8f;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:.45rem;font-weight:700;text-decoration:underline}.layout-grid{grid-template-columns:repeat(12,1fr);gap:1rem;display:grid}.layout-grid.mobile-mode{gap:.75rem}.translation-workshop{gap:.75rem;display:grid}.translation-admin-bar.compact{grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);align-items:center;gap:.75rem;padding:.9rem 1rem;display:grid}.translation-admin-left,.translation-admin-center,.translation-admin-right{align-items:center;gap:.55rem;display:flex}.translation-admin-center{justify-content:center}.translation-admin-right{justify-content:flex-end}.translation-inline-control{gap:.2rem;min-width:180px;display:grid}.translation-inline-control span{text-transform:uppercase;letter-spacing:.05em;color:#516267;font-size:.72rem;font-weight:800}.translation-save-meta{text-align:right;gap:.1rem;display:grid}.translation-save-meta strong{color:#1d4b78}.translation-save-meta span{color:#607175;font-size:.78rem}.translation-workflow-tabs{flex-wrap:wrap;justify-content:center;gap:.55rem;display:flex}.translation-workflow-tab{color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #10212533;border-radius:12px;padding:.55rem .7rem;font-weight:700}.translation-workflow-tab.active{color:#6f3206;background:linear-gradient(130deg,#f7dfc9,#ffd8b8);border-color:#ca5f1673}.translation-selection-bar{background:linear-gradient(140deg,#fffdf8f5,#f3f7faeb);border:1px solid #1021251f;border-radius:16px;justify-content:space-between;align-items:center;gap:.55rem;padding:.5rem .65rem;display:flex}.translation-selection-bar.compact-meta{gap:.3rem;display:grid}.translation-search-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.55rem;display:grid}.translation-search-input{gap:.3rem;display:grid}.translation-selection-label{text-transform:uppercase;letter-spacing:.05em;color:#516267;margin-bottom:.2rem;font-size:.72rem;font-weight:800;display:block}.translation-selection-bar strong{color:#244252;word-break:break-word}.translation-selection-progress{color:#607175;margin-top:0;font-size:.74rem;display:block}.translation-selection-nav{gap:.45rem;display:flex}.translation-selection-nav.compact-nav{white-space:nowrap;gap:.35rem}.translation-workshop-header{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:start;gap:1rem;display:grid}.translation-workshop-kicker{text-transform:uppercase;letter-spacing:.12em;color:#1d4b78;margin:0 0 .35rem;font-size:.75rem;font-weight:800}.translation-workshop-toolbar{gap:.65rem;display:grid}.translation-workshop-status-row{grid-template-columns:repeat(3,max-content);justify-content:start;gap:.7rem;display:grid}.translation-stat{text-align:center;justify-content:center;align-items:center;gap:.4rem;display:flex}.translation-stat.compact{border-radius:14px;gap:.35rem;padding:.45rem .65rem}.translation-stat strong{color:#1d4b78;font-size:2rem;line-height:1}.translation-stat.compact strong{font-size:1.05rem}.translation-stat.compact span{color:#607175;white-space:nowrap;font-size:.74rem}.translation-workshop-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:1rem;display:grid}.translation-workshop-grid.admin-layout{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)}.translation-auth-card{gap:1rem;max-width:520px;display:grid}.translation-editor-panel{grid-auto-rows:max-content;align-content:start;gap:1rem;display:grid}.translation-editor-panel.full-height{min-height:calc(100vh - 5.6rem)}.translation-focus-card{background:linear-gradient(140deg,#fffdf8f5,#f3f7faeb);border:1px solid #1021251f;border-radius:16px;gap:.85rem;padding:.95rem;display:grid}.translation-focus-card.empty-state{text-align:center;color:#526366;place-content:center;min-height:180px}.translation-editor-section-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.translation-editor-section-header strong{color:#244252}.translation-editor-section-header span{color:#607175;font-size:.78rem}.translation-preview-raw{gap:.35rem;display:grid}.translation-preview-raw span{text-transform:uppercase;letter-spacing:.05em;color:#516267;font-size:.76rem;font-weight:800}.translation-preview-raw p{color:#385057;white-space:pre-wrap;background:#1021250a;border-radius:12px;margin:0;padding:.75rem .8rem}.translation-editor-controls{grid-template-columns:minmax(180px,.3fr) minmax(0,.7fr);align-content:start;gap:.55rem;display:grid}.translation-editor-controls.single-column{grid-template-columns:1fr}.translation-editor-actions{flex-wrap:wrap;gap:.55rem;display:flex}.translation-editor-actions.compact-actions{gap:.4rem}.translation-editor-actions.compact-actions .action-btn,.translation-editor-actions.compact-actions .translation-import-btn{border-radius:12px;flex:none;justify-content:center;align-self:flex-start;align-items:center;width:auto;min-height:calc(1em + 1.1rem);padding:.55rem .7rem;font-size:.78rem;line-height:1;display:inline-flex}.translation-editor-actions.sticky-actions{z-index:2;background:var(--panel);align-self:start;padding-bottom:.15rem;position:sticky;top:0}.translation-position-slider{gap:.2rem;display:grid}.translation-position-slider input[type=range]{accent-color:#ca5f16;width:100%;margin:0}.translation-import-btn{position:relative;overflow:hidden}.translation-import-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.translation-editor-list{gap:.8rem;max-height:980px;padding-right:.2rem;display:grid;overflow:auto}.translation-jump-list{gap:.55rem;max-height:min(42vh,520px);padding-right:.2rem;display:grid;overflow:auto}.translation-jump-item{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8eb;border:1px solid #1021251f;border-radius:14px;gap:.3rem;padding:.8rem .85rem;display:grid}.translation-jump-item strong{color:#244252;font-size:.88rem}.translation-jump-item span{color:#526366;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.translation-jump-item.active{background:linear-gradient(145deg,#ffefdcf5,#fff9f0fa);border-color:#ca5f165c;box-shadow:0 0 0 2px #ea7f3324}.translation-tri-layout{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.6rem;display:grid}.translation-column.preview-column{min-width:0;position:sticky;top:.75rem}.translation-copy-column{gap:.75rem;min-height:calc(100vh - 6.75rem);display:grid}.translation-copy-column-header{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.translation-copy-column-header strong{color:#244252}.translation-copy-column-header span{color:#607175;font-size:.78rem}.translation-copy-list{align-content:start;gap:.45rem;max-height:calc(100vh - 11rem);padding-right:.15rem;display:grid;overflow:auto}.translation-copy-item{color:#284046;width:100%;font:inherit;text-align:left;cursor:pointer;white-space:pre-wrap;background:#fffdf8eb;border:1px solid #1021251a;border-radius:14px;padding:.75rem .8rem;line-height:1.35}.translation-copy-item.active{background:linear-gradient(145deg,#ffefdcf5,#fff9f0fa);border-color:#ca5f165c;box-shadow:0 0 0 2px #ea7f3324}.translation-copy-item span{display:block}.translation-copy-empty{color:#526366;margin:0}.translation-entry{background:linear-gradient(140deg,#fffdf8f5,#f3f7faeb);border:1px solid #1021251f;border-radius:16px;gap:.65rem;padding:.95rem;display:grid}.translation-entry-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.translation-entry-header strong{color:#244252;font-size:.92rem}.translation-entry-header span{text-transform:uppercase;letter-spacing:.05em;color:#6a7b80;font-size:.72rem;font-weight:800}.translation-entry-reference,.translation-entry-editor{gap:.35rem;display:grid}.translation-entry-reference span,.translation-entry-editor span{text-transform:uppercase;letter-spacing:.05em;color:#516267;font-size:.76rem;font-weight:800}.translation-entry-reference p{color:#385057;white-space:pre-wrap;background:#1021250a;border-radius:12px;margin:0;padding:.7rem .8rem}.translation-entry-reference.current-editing-reference p{background:linear-gradient(145deg,#fff5e8f5,#fffcf7fa);border:1px solid #ca5f1624}.translation-entry-editor textarea{resize:vertical;width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #1021252e;border-radius:12px;padding:.75rem .8rem}.translation-preview-stage{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid;position:sticky;top:1rem}.workshop-phone-card{gap:.55rem;min-height:calc(100vh - 8.8rem);display:grid}.workshop-phone-meta{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.workshop-phone-meta strong{color:#1d4b78}.workshop-phone-meta span{color:#607175;font-size:.8rem}.workshop-phone-card.readonly-preview .workshop-phone-screen{pointer-events:none}.workshop-phone-card.readonly-preview .workshop-phone-tab{cursor:default}.workshop-phone-card.readonly-preview .workshop-phone-tab:disabled{opacity:1}.workshop-phone-shell{background:linear-gradient(#13293d,#091522 70%);border-radius:28px;width:100%;margin:0;padding:.7rem;box-shadow:0 18px 36px #1021252e}.workshop-copy-hit{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;padding:0;transition:border-color .16s,box-shadow .16s,background-color .16s;display:block}.workshop-copy-hit.readonly{cursor:default}.workshop-copy-hit:disabled{opacity:1}.workshop-copy-hit.inline-hit{justify-self:start;width:auto}.workshop-copy-hit.no-frame{border:0;border-radius:0}.workshop-copy-hit.active{background:linear-gradient(145deg,#ffefdcfa,#fff8edf0);border-color:#ca5f16bf;box-shadow:0 0 0 3px #ea7f333d}.workshop-copy-hit.no-frame.active{background:#fff1e1e6;border-radius:10px}.workshop-copy-action{justify-content:center;align-items:center;display:inline-flex}.workshop-copy-input{color:#6b7b7f;background:#fff;border:1px solid #10212529;border-radius:10px;padding:.6rem .7rem}.metric-hit,.option-hit,.legend-hit,.block-hit{width:100%}.workshop-phone-notch{background:#ffffff14;border-radius:999px;width:42%;height:18px;margin:0 auto .45rem}.workshop-phone-screen{background:linear-gradient(170deg,#b8dbe5eb,#fff9effa);border-radius:20px;gap:.55rem;min-height:560px;padding:.8rem;display:grid}.workshop-phone-hero{background:#fffdf8e6;border:1px solid #1021251f;border-radius:16px;gap:.35rem;padding:.8rem;display:grid}.workshop-phone-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#ca5f16;font-size:.72rem;font-weight:800}.workshop-phone-hero h3{margin:0;font-size:1.1rem;line-height:1.1}.workshop-phone-hero p{color:#496064;margin:0;font-size:.78rem}.workshop-phone-status-chip{background:#ffffffe6;border:1px solid #1021251f;border-radius:999px;justify-self:start;margin-top:.25rem;padding:.24rem .45rem;font-size:.68rem;font-weight:800}.workshop-phone-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;display:grid}.workshop-phone-tab{width:100%;color:var(--ink);font:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #10212533;border-radius:10px;padding:.38rem .35rem;font-size:.68rem;font-weight:800}.workshop-phone-tab.active{color:#6f3206;background:linear-gradient(130deg,#f7dfc9,#ffd8b8);border-color:#ca5f1659}.workshop-phone-tabs span{text-align:center;background:#ffffffb8;border:1px solid #1021251f;border-radius:10px;padding:.38rem .35rem;font-size:.68rem;font-weight:800}.workshop-preview-card{background:#fffdf8eb;border:1px solid #1021251f;border-radius:14px;gap:.4rem;padding:.72rem;display:grid}.workshop-preview-card strong{color:#244252}.workshop-preview-card p,.workshop-preview-card small{margin:0}.workshop-phone-shell.expanded{min-height:calc(100vh - 8.8rem)}.compact-hero h3{font-size:1.05rem}.workshop-preview-footer.compact{margin-top:auto}.workshop-preview-routine-grid{gap:.45rem;display:grid}.workshop-preview-routine-item{background:#1021250d;border-radius:14px;gap:.15rem;padding:.7rem .75rem;display:grid}.workshop-preview-routine-item span{letter-spacing:.05em;text-transform:uppercase;color:#6d7d82;font-size:.7rem;font-weight:800}.workshop-preview-routine-item.active{background:linear-gradient(145deg,#ffefdcf5,#fff9f0fa)}.workshop-preview-notice{border:1px solid #1021251f;border-radius:14px;gap:.45rem;padding:.7rem .75rem;font-size:.75rem;display:grid}.workshop-preview-notice p,.workshop-preview-notice strong{margin:0}.workshop-preview-notice.fallback{color:#1d4b78;background:#eef6ff}.workshop-preview-notice.storage{color:#3e347e;background:#f4f2ff}.workshop-preview-notice.analytics{color:#194a73;background:#eaf6ff}.workshop-preview-notice.session{color:#224f2a;background:#f0f8ef}.workshop-preview-notice.info{color:#7f4f1d;background:#fff2dc}.workshop-preview-notice.error{color:var(--danger);background:#ffe4d4}.workshop-preview-pill-row{flex-wrap:wrap;gap:.45rem;display:flex}.workshop-preview-pill-row span{background:#ffffffb8;border:1px solid #1021251f;border-radius:999px;padding:.3rem .5rem;font-size:.72rem;font-weight:800}.workshop-preview-slider{background:linear-gradient(90deg,#b8dbe5 20%,#24609c 20% 68%,#dce8ec 68%);border-radius:999px;height:.85rem}.workshop-preview-slider.soft{background:linear-gradient(90deg,#b7e0c5 16%,#2d8465 16% 58%,#dfe9e5 58%)}.workshop-preview-inputs p{color:#526366;margin:0;font-size:.82rem}.workshop-preview-next-step{background:#24609c14;border-radius:14px;gap:.35rem;padding:.7rem .75rem;display:grid}.workshop-preview-metric-grid{gap:.35rem;display:grid}.workshop-preview-metric-grid span{background:#1021250d;border-radius:12px;padding:.45rem .55rem;font-size:.78rem;font-weight:700}.workshop-preview-search{gap:.35rem;display:grid}.workshop-preview-search span{color:#516267;font-size:.75rem;font-weight:800}.workshop-preview-search input{color:#6b7b7f;background:#fff;border:1px solid #10212529;border-radius:10px;padding:.6rem .7rem}.workshop-preview-song{background:#1021250a;border-radius:14px;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem .8rem;display:flex}.workshop-preview-song div{gap:.15rem;display:grid}.workshop-preview-song span{font-weight:800}.workshop-preview-song small{color:#5b6b6f}.workshop-preview-song button,.workshop-preview-primary,.workshop-preview-secondary{font:inherit;border:0;border-radius:12px;padding:.55rem .8rem;font-weight:800}.workshop-preview-song button,.workshop-preview-primary{background:linear-gradient(130deg, var(--accent), var(--accent-deep));color:#fff}.workshop-preview-secondary{color:var(--ink);background:#fff;border:1px solid #10212529}.full-width{width:100%}.workshop-preview-video-frame{color:#fff;text-align:center;background:linear-gradient(#13293d,#091522 70%);border-radius:16px;place-items:center;min-height:132px;padding:1rem;font-weight:800;display:grid}.workshop-preview-selected-song{color:#536468;font-size:.8rem}.workshop-preview-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.workshop-preview-option-grid span{text-align:center;background:#1021250d;border-radius:12px;padding:.55rem;font-size:.75rem;font-weight:800}.workshop-preview-cue{background:#f6efe3;border:1px solid #1021251f;border-radius:12px;gap:.2rem;padding:.7rem .75rem;display:grid}.workshop-preview-cue.brushing{background:#eef6ff}.workshop-preview-guide-board{background:radial-gradient(circle at 30% 20%,#032047,#051635 70%);border-radius:18px;gap:.5rem;padding:.75rem;display:grid}.workshop-preview-mouth{background:radial-gradient(circle,#ffffffeb,#f5dfbee0 55%,#d6b286cc 100%);border-radius:999px;min-height:88px}.workshop-preview-guide-legend{color:#d7e6ff;justify-content:center;gap:.7rem;font-size:.72rem;display:flex}.workshop-preview-orientation{color:#536468;font-size:.76rem;font-weight:800}.workshop-preview-success{color:#2a794c;background:#b7e0c573;border:1px solid #2a794c2e;border-radius:16px;padding:.8rem .9rem;font-size:.82rem;font-weight:700}.workshop-preview-footer{background:#fffdf8e6;border:1px solid #1021251f;border-radius:18px;gap:.45rem;padding:.85rem .9rem;display:grid}.workshop-preview-footer p{margin:0;font-size:.78rem}.workshop-preview-footer-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.workshop-preview-footer-row span{font-size:.76rem;font-weight:700}.workshop-preview-footer-row button{font:inherit;background:#fff;border:1px solid #10212529;border-radius:999px;padding:.35rem .6rem;font-size:.72rem;font-weight:800}.workshop-modal-preview{background:#fffffff5;border:1px solid #1021251f;border-radius:18px;gap:.45rem;padding:.95rem;display:grid;box-shadow:0 10px 20px #10212514}.workshop-modal-preview.storage{background:#faf7fffa}.workshop-modal-preview strong,.workshop-modal-preview p{margin:0}.layout-grid.mobile-mode .player{order:2;grid-column:span 12}.layout-grid.mobile-mode .brush-actions-card{order:1;grid-column:span 12}.layout-grid.mobile-mode .calculator{order:2;grid-column:span 12}.layout-grid.mobile-mode .songs,.layout-grid.mobile-mode .guide{order:3;grid-column:span 12}.brush-actions-card{grid-column:span 12}.desktop-brush-layout .brush-actions-card{order:2;grid-column:span 4}.desktop-brush-layout .player{order:1;grid-column:span 4}.desktop-brush-layout .guide{order:3;grid-column:span 4}.brush-selected-song{color:#4f5f63;font-size:.9rem}.brush-next-song{color:#1d4b78;margin:-.35rem 0 .55rem;font-size:.82rem;font-weight:700}.brush-hand-picker{gap:.45rem;margin:.7rem 0 .9rem;display:grid}.brush-duration-picker{margin:0 0 .9rem}.brush-duration-picker select{width:100%;color:var(--ink);font:inherit;background:#fffdf8;border:1px solid #10212529;border-radius:10px;padding:.6rem .75rem;font-weight:700}.brush-duration-picker select:disabled{opacity:.65;cursor:not-allowed}.brush-duration-hint{color:#56666a;font-size:.8rem;font-weight:600}.brush-hand-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.brush-hand-btn{color:var(--ink);font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #10212529;border-radius:10px;padding:.55rem .8rem;font-weight:700}.brush-hand-btn.active{color:#1d4b78;background:linear-gradient(130deg,#dff1ff,#c7e6ff);border-color:#24609c59}.brush-cue-card{background:#f6efe3;border:1px solid #1021251f;border-radius:12px;gap:.25rem;margin:0 0 .9rem;padding:.8rem .9rem;display:grid}.brush-cue-card strong{color:#7a4a1e}.brush-cue-card.side-switch{background:#eef6ff;border-color:#24609c38}.brush-cue-card.side-switch strong,.brush-cue-card.brushing strong{color:#1d4b78}.brush-cue-card.halfway{background:#fff2dc;border-color:#ca5f1638}.brush-cue-card.complete{background:#ecf7ef;border-color:#2a794c38}.brush-cue-card.complete strong{color:#2a794c}.card{background:var(--panel);border:1px solid #10212526;border-radius:20px;padding:1.3rem;animation:.48s ease-out rise;box-shadow:0 14px 30px #1021250f}.card h2{margin:0 0 .25rem}.card p{margin:.2rem 0 .9rem}.calculator{grid-column:span 4}.songs{grid-column:span 5}.player{grid-column:span 3}.guide{grid-column:span 12}.controls-grid{gap:.75rem;display:grid}.calculator-overview{gap:.75rem;margin-bottom:.95rem;display:grid}.tooth-count-control{gap:.35rem}.profile-summary{background:linear-gradient(130deg,#dff1ffe6,#fff9efeb);border:1px solid #24609c2e;border-radius:14px;gap:.18rem;margin:0 0 1rem;padding:.8rem .9rem;display:grid}.profile-summary strong{color:#1d4b78;font-size:1rem}.profile-summary-age{color:#425b71;font-size:.86rem}.profile-summary-label{letter-spacing:.08em;text-transform:uppercase;color:#4b657d;font-size:.75rem}.teeth-growth-scale{background:#1021250a;border:1px solid #1021251a;border-radius:14px;gap:.55rem;margin:0 0 1rem;padding:.85rem .95rem;display:grid}.teeth-growth-header{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.teeth-growth-header strong{color:#1d4b78}.teeth-growth-track{background:linear-gradient(90deg,#b7e0c58c,#b8dbe5cc,#f7dfc9e6);border:1px solid #10212524;border-radius:999px;height:.95rem;position:relative;overflow:hidden}.teeth-growth-fill{background:linear-gradient(90deg,#24609c2e,#24609c6b);position:absolute;inset:0 auto 0 0}.teeth-growth-indicator{background:#1d4b78;border-radius:999px;width:4px;position:absolute;top:-.2rem;bottom:-.2rem;transform:translate(-2px);box-shadow:0 0 0 2px #ffffffa6}.teeth-growth-marker{background:#10212538;width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px)}.teeth-growth-labels{color:#56686c;grid-template-columns:repeat(9,minmax(0,1fr));font-size:.75rem;display:grid}.teeth-growth-labels span:first-child{text-align:left}.teeth-growth-labels span:nth-child(n+2):nth-child(-n+8){text-align:center}.teeth-growth-labels span:last-child{text-align:right}.teeth-age-band-list{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:.45rem;display:grid}.teeth-age-band{color:#526266;background:#fffdf8;border:1px solid #1021251a;border-radius:10px;gap:.1rem;padding:.45rem .55rem;font-size:.76rem;display:grid}.teeth-age-band strong{color:#1d4b78}.next-step-card{background:linear-gradient(130deg,#fff9eff5,#dff1ffd6);border:1px solid #24609c29;border-radius:14px;gap:.4rem;margin-top:1rem;padding:.85rem .95rem;display:grid}.next-step-btn{justify-self:start}.desktop-step-layout .calculator{padding:1.1rem}.desktop-step-layout .calculator-overview{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);align-items:start}.desktop-step-layout .controls-grid{gap:.55rem}.desktop-step-layout .teeth-growth-scale{gap:.4rem;padding:.75rem .85rem}.desktop-step-layout .teeth-age-band-list{grid-template-columns:repeat(5,minmax(0,1fr))}.desktop-step-layout .next-step-card{margin-top:.75rem}.slider-label-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.slider-value-badge{text-align:center;color:#6f3206;background:linear-gradient(130deg,#f7dfc9,#ffd8b8);border:1px solid #ca5f1647;border-radius:999px;min-width:2.5rem;padding:.18rem .55rem;font-size:.95rem}.tooth-range-input{appearance:none;z-index:2;background:0 0;width:100%;height:1.4rem;position:relative}.tooth-range-shell{padding:.15rem 0;display:block;position:relative}.tooth-range-input::-webkit-slider-runnable-track{background-color:#b8dbe5;background-image:linear-gradient(90deg,#ffffff47,#ffffff14);border:1px solid #24609c3d;border-radius:999px;height:.8rem}.tooth-range-input::-webkit-slider-thumb{appearance:none;background:#24609c;border:2px solid #fff;border-radius:999px;width:1.05rem;height:1.05rem;margin-top:-.18rem;box-shadow:0 2px 8px #10212533}.tooth-range-input::-moz-range-track{background-color:#b8dbe5;background-image:linear-gradient(90deg,#ffffff47,#ffffff14);border:1px solid #24609c3d;border-radius:999px;height:.8rem}.tooth-range-input::-moz-range-thumb{background:#24609c;border:2px solid #fff;border-radius:999px;width:1.05rem;height:1.05rem;box-shadow:0 2px 8px #10212533}.tooth-range-ticks{pointer-events:none;z-index:1;height:.8rem;position:absolute;top:50%;left:.52rem;right:.52rem;transform:translateY(-50%)}.tooth-range-tick{background:#12477d59;border-radius:999px;width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px)}.tooth-range-scale{pointer-events:none;height:1rem;margin:.32rem .52rem 0;display:block;position:relative;left:.52rem;right:.52rem}.tooth-range-scale-label{color:#102125d1;text-shadow:0 1px #ffffffa6;font-size:.72rem;font-weight:800;line-height:1;position:absolute;top:0;transform:translate(-50%)}.tooth-range-scale-caption{letter-spacing:.04em;text-transform:uppercase;color:#6e5a35;margin-top:.18rem;font-size:.72rem;font-weight:700;display:block}.slider-range-hint{color:#7b5d2d;margin-top:.25rem;font-size:.78rem;font-weight:700;display:block}.form-note{color:#485659;margin-top:.75rem;font-size:.86rem}.timer-note{color:#4f5f63;margin-top:.75rem;font-size:.84rem}label{gap:.4rem;font-size:.93rem;font-weight:700;display:grid}input[type=range],input[type=text],select{width:100%;font:inherit}input[type=text],select{background:#fff;border:1px solid #10212542;border-radius:10px;padding:.6rem .65rem}.bpm-pill{text-align:center;background:radial-gradient(circle at 30% 20%, var(--mint), var(--sky));border:1px solid #10212526;border-radius:16px;place-items:center;margin-top:1rem;padding:.8rem;display:grid}.bpm-pill .label{text-transform:uppercase;letter-spacing:.07em;font-size:.72rem}.bpm-pill strong{font-size:2.4rem;line-height:1}.bpm-pill[data-loading=true] strong{opacity:.5}.headline{font-size:1.08rem;font-weight:700}.action-btn,.song-list button{background:linear-gradient(130deg, var(--accent), var(--accent-deep));color:#fff;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;padding:.62rem .9rem;font-weight:700}.session-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.action-btn.secondary{color:var(--ink);background:#fff;border-color:#10212533}.action-btn.skip{background:linear-gradient(130deg,#236a8f,#1d506a);width:100%;margin-top:.6rem}.action-btn:hover,.song-list button:hover{transform:translateY(-1px)}.song-filters{gap:.75rem;display:grid}.song-note{color:#4d5d61;margin-top:-.2rem;font-size:.85rem}.action-btn.regen{background:linear-gradient(130deg,#2d8465,#205943);width:100%}.action-btn:disabled{opacity:.65;cursor:not-allowed}.song-list{gap:.55rem;max-height:380px;margin:1rem 0 0;padding:0;list-style:none;display:grid;overflow:auto}.song-list li{background:#fff;border:1px solid #10212524;border-radius:12px;justify-content:space-between;align-items:center;gap:.7rem;padding:.75rem;display:flex}.song-list li div{gap:.22rem;display:grid}.song-list li span{font-size:.9rem}.song-bpm{color:var(--accent-deep);font-weight:800}.player iframe,.player .player-frame{background:#111;border:0;border-radius:14px;width:100%;min-height:280px}.player-meta-row{align-items:center;gap:.5rem;margin:0 0 .55rem;display:flex}.player-restored-chip{color:#1d4b78;letter-spacing:.02em;background:#24609c1a;border:1px solid #24609c2e;border-radius:999px;align-items:center;min-height:1.8rem;padding:.25rem .65rem;font-size:.76rem;font-weight:700;display:inline-flex}.player-status{color:var(--accent-deep);font-weight:700}.player-sync-panel{background:#1021250a;border:1px solid #1021251a;border-radius:14px;gap:.55rem;margin:.75rem 0 .95rem;padding:.85rem .9rem;display:grid}.player-sync-copy{gap:.2rem;display:grid}.player-sync-copy strong{color:var(--accent-deep)}.player-sync-copy span,.player-sync-offset{color:#425255;font-size:.86rem}.player-sync-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.player-sync-actions .action-btn{padding:.58rem .7rem}.hand-orientation-panel{background:0 0;border:0;margin:0 0 .75rem;padding:0}.hand-orientation-header{gap:.15rem;margin-bottom:.75rem;display:grid}.visual-only-header{margin-bottom:.3rem}.hand-orientation-header strong{color:var(--accent-deep);font-size:1rem}.hand-orientation-header span:last-child{color:#425255;font-size:.88rem}.hand-orientation-board{max-width:300px;min-height:156px;box-shadow:none;background:radial-gradient(circle at 50% 24%,#ffffffb8,#faf1e2d6 58%,#efe1c7eb 100%);border:0;border-radius:18px;margin:0 auto;transition:border-color .18s,box-shadow .18s,opacity .18s;position:relative;overflow:hidden}.hand-orientation-board:before{content:"";pointer-events:none;background:linear-gradient(#fff3,#fff0);border:0;border-radius:18px;position:absolute;inset:8px 12px}.hand-orientation-board.running{border-color:#c96d1442}.hand-orientation-board.transition{border-color:#2e7ec257}.hand-orientation-board.complete{opacity:.62}.orientation-focus-halo{filter:blur(2px);pointer-events:none;background:radial-gradient(circle,#ffcd8b8c,#ffdeba2e 58%,#fff0 100%);border-radius:999px;width:46%;height:28%;transition:left .22s,top .22s,opacity .18s,transform .18s;position:absolute;top:18%;left:27%}.hand-orientation-board.transition .orientation-focus-halo{background:radial-gradient(circle,#9ad5ff80,#dcf0ff29 60%,#fff0 100%)}.hand-orientation-board.complete .orientation-focus-halo{opacity:.35}.hand-orientation-board.focus-top-right .orientation-focus-halo{top:18%;left:27%}.hand-orientation-board.focus-bottom-left .orientation-focus-halo,.hand-orientation-board.focus-bottom-right .orientation-focus-halo{top:60%;left:27%}.orientation-static-demo{pointer-events:none;z-index:2;justify-content:center;align-items:center;gap:.2rem;width:124px;height:38px;transition:left .22s,top .22s,opacity .18s;display:flex;position:absolute;top:28%;left:32%}.orientation-static-demo.focus-top-right{top:28%;left:68%}.orientation-static-demo.focus-bottom-left{top:72%;left:32%}.orientation-static-demo.focus-bottom-right{top:72%;left:68%}.orientation-static-demo.facing-left{flex-direction:row-reverse}.orientation-demo-hand{background:linear-gradient(#ffd8ba,#f0a36f);border-radius:999px 999px 12px 12px;width:18px;height:18px;box-shadow:inset 0 -3px 5px #9f603433}.orientation-demo-head{width:24px;height:22px;display:block;position:relative}.orientation-demo-bristles{background:linear-gradient(#f5fcff,#8fd1ff);border:1px solid #24609c3d;border-radius:6px;position:absolute;inset:2px 0;box-shadow:inset 0 -4px #24609c26}.orientation-demo-bristles:before{content:"";background:repeating-linear-gradient(90deg,#ffffffe6 0 2px,#7ac4ffbf 2px 4px);border-radius:4px;position:absolute;inset:3px 4px}.orientation-demo-neck{background:linear-gradient(90deg,#ffe0bf,#f6b066);border-radius:999px;width:10px;height:6px;position:absolute;top:8px;right:-6px}.orientation-demo-handle{background:linear-gradient(90deg,#ea7f33,#f6b066);border-radius:999px;width:62px;height:10px}.orientation-static-demo.transition{opacity:.9}.orientation-static-demo.complete{opacity:.5}.mouth-map{background:radial-gradient(circle at 30% 20%,#032047,#051635 70%);border-radius:24px;width:min(100%,360px);margin:0 auto;padding:.5rem}.mouth-map svg{width:100%;height:auto;display:block}.map-legend{color:#4f5e62;justify-content:center;gap:1rem;margin-top:.65rem;font-size:.82rem;display:flex}.map-legend span{align-items:center;gap:.4rem;display:inline-flex}.legend-dot{border-radius:999px;width:10px;height:10px;display:inline-block}.legend-dot.front{background:#ea7f33}.legend-dot.back{background:#39b5ff}.mouth-outline{fill:none;stroke:#c7dcff40;stroke-width:1.5px}.tooth-svg .tooth-body-base{fill:#d9bf97}.tooth-svg .tooth-face{transition:fill .22s,opacity .22s}.tooth-svg .front-face{fill:#ead6b4}.tooth-svg .back-face{fill:#d4b286}.tooth-svg .tooth-face.clean{fill:#fffdf8}.tooth-svg .tooth-face.active-surface{fill:#fff4df}.tooth-svg .tooth-outline{fill:none;stroke:#c4a885;stroke-width:1.2px}.tooth-svg .tooth-groove{fill:none;stroke:#9682698c;stroke-width:.9px}.active-brush-tail{pointer-events:none}.active-brush-tail.front{fill:#ea7f3342}.active-brush-tail.back{fill:#39b5ff42}.active-brush-tail.tail-1{opacity:.24}.active-brush-tail.tail-2{opacity:.16}.active-brush-tail.tail-3{opacity:.1}.active-brush-ball{filter:drop-shadow(0 0 8px #ffffff6b);pointer-events:none}.active-brush-ball.front{fill:#ea7f33}.active-brush-ball.back{fill:#39b5ff}.map-score{fill:#fff;font-size:34px;font-weight:800}.map-score-label{fill:#d7e6ff;font-size:12px}.guide-callout{background:#f6efe3;border:1px solid #1021251f;border-radius:12px;margin-top:.85rem;padding:.7rem .8rem;font-weight:700}.brush-hand-orientation{background:#1021250a;border:1px solid #1021251f;border-radius:12px;justify-items:center;gap:.45rem;margin-top:.75rem;padding:.75rem .85rem;display:grid}.brush-hand-orientation-title{letter-spacing:.08em;text-transform:uppercase;color:#4b657d;font-size:.74rem}.brush-hand-orientation-visual{justify-content:center;align-items:center;gap:.15rem;display:flex}.brush-hand-orientation.facing-left .brush-hand-orientation-visual{flex-direction:row-reverse}.brush-hand-orientation-hand{background:linear-gradient(#ffd8ba,#f0a36f);border-radius:11px 11px 10px 10px;width:26px;height:22px;position:relative;box-shadow:inset 0 -3px 5px #9f603433}.brush-hand-orientation-hand:before,.brush-hand-orientation-hand:after{content:"";background:linear-gradient(#ffd8ba,#f0a36f);position:absolute;box-shadow:inset 0 -2px 4px #9f60342e}.brush-hand-orientation-hand:before{border-radius:6px 6px 3px 3px;width:16px;height:8px;top:-4px;left:3px;box-shadow:0 0 #0000,5px 0 #f7ba8f,10px 0 #f5b180}.brush-hand-orientation-hand:after{border-radius:8px 8px 8px 4px;width:10px;height:12px;top:6px;right:-4px;transform:rotate(-28deg)}.brush-hand-orientation.facing-left .brush-hand-orientation-hand:after{left:-4px;right:auto;transform:rotate(28deg)}.brush-hand-orientation-handle{background:linear-gradient(90deg,#ea7f33,#f6b066);border-radius:999px;width:62px;height:10px}.brush-hand-orientation-neck{background:linear-gradient(90deg,#ffd1aa,#f4a86a);border-radius:999px;width:10px;height:6px}.brush-hand-orientation-head{width:26px;height:20px;display:block;position:relative}.brush-hand-orientation-bristles{background:linear-gradient(#f5fcff,#8fd1ff);border:1px solid #24609c3d;border-radius:8px 10px 10px 8px;position:absolute;inset:1px 0 1px 2px;box-shadow:inset 0 -4px #24609c26}.brush-hand-orientation-bristles:before{content:"";background:repeating-linear-gradient(90deg,#ffffffe6 0 2px,#7ac4ffbf 2px 4px);border-radius:4px;position:absolute;inset:3px 4px}.brush-hand-orientation-copy{display:none}.brush-success-banner{margin-top:.7rem}.orientation-callout{margin-top:.55rem}@media (width<=520px){.care-routine-grid{grid-template-columns:1fr}.language-simulator-control{max-width:none}.hand-orientation-board{max-width:260px;min-height:144px}.orientation-static-demo{width:106px;height:30px}.orientation-demo-head{width:20px;height:18px}.orientation-demo-handle{width:54px;height:8px}.orientation-demo-hand{width:15px;height:15px}.brush-hand-orientation-handle{width:54px;height:8px}.brush-hand-orientation-neck{width:8px;height:5px}.brush-hand-orientation-head{width:20px;height:18px}.brush-hand-orientation-hand{width:20px;height:17px}.brush-hand-orientation-hand:before{width:12px;height:6px;top:-3px;left:2px;box-shadow:0 0 #0000,3px 0 #f7ba8f,6px 0 #f5b180}.brush-hand-orientation-hand:after{width:7px;height:9px;top:5px}}@media (width<=980px){.translation-workshop-header,.translation-workshop-grid,.translation-workshop-status-row,.translation-editor-controls,.translation-search-row,.translation-tri-layout{grid-template-columns:1fr}.translation-column.preview-column{position:static}.translation-admin-bar.compact{grid-template-columns:1fr}.translation-selection-bar{flex-direction:column;align-items:stretch}.translation-selection-nav,.translation-admin-left,.translation-admin-center,.translation-admin-right{flex-wrap:wrap;justify-content:flex-start}.translation-selection-nav.compact-nav{white-space:normal}.translation-editor-panel.full-height,.workshop-phone-shell.expanded,.workshop-phone-card,.translation-jump-list{min-height:0;max-height:none}.translation-preview-stage{grid-template-columns:1fr;position:static}}.success-banner{background:linear-gradient(130deg,#b7e0c580,#fff9efe6);border:1px solid #10212524;border-radius:16px;margin-top:1rem;padding:.95rem 1rem;font-weight:700}.credit-strip{margin-top:1rem;padding:.9rem .15rem;font-size:.92rem}.credit-strip p{align-items:center;gap:.35rem;margin:0;display:flex}.credit-strip a{color:var(--accent-deep);font-weight:800}.privacy-controls{background:#1021250a;border:1px solid #1021252e;border-radius:999px;align-items:center;gap:.5rem;margin-top:.45rem;padding:.35rem .55rem;display:inline-flex}.privacy-toggle{color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:1px solid #1021253d;border-radius:999px;padding:.15rem .55rem;font-size:.82rem;font-weight:700}.privacy-modal-overlay{z-index:1000;background:#07111885;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.privacy-modal{background:#fffdf8;border:1px solid #10212529;border-radius:18px;width:min(640px,100%);max-height:90vh;padding:1.1rem 1.15rem;overflow:auto;box-shadow:0 22px 50px #10212552}.privacy-modal h2{margin:0 0 .45rem}.privacy-modal p{color:#2f3f43;margin:.5rem 0}.privacy-modal-actions{justify-content:flex-end;margin-top:.8rem;display:flex}.version-info{color:var(--ink);opacity:.6;margin-top:.4rem;font-size:.8rem}.version-info code{letter-spacing:.05em;background:#1021250f;border-radius:4px;padding:.2rem .4rem;font-family:Courier New,monospace;font-size:.85em}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=980px){.calculator,.songs,.player{grid-column:span 12}.song-list li{flex-direction:column;align-items:flex-start}.song-list li>div:last-child{justify-content:space-between;align-items:center;width:100%;display:flex}.action-btn,.song-list button{min-height:44px}.session-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.compact-mobile-actions .action-btn{min-height:0;padding:.52rem .6rem;font-size:.88rem}.player iframe,.player .player-frame{min-height:230px}.player.compact-mobile-frame iframe,.player.compact-mobile-frame .player-frame{min-height:156px}.player.compact-mobile-frame{padding-bottom:1rem}.player-restored-chip{font-size:.72rem}.mouth-map{width:min(100%,320px)}.last-song-banner{flex-direction:column;align-items:flex-start}}
