*{box-sizing:border-box} :root{--bg:#f4f5f2;--surface:#fff;--soft:#f7f8f6;--text:#171a1f;--muted:#707780;--line:#e4e7e3;--dark:#20242b;--blue:#526ee8;--blue-soft:#edf0ff;--green:#248b5c;--green-soft:#eaf7f0;--red:#c84848;--red-soft:#fff0f0;--amber:#b47718;--amber-soft:#fff6de;--shadow:0 18px 60px rgba(25,30,37,.08);--radius:24px}
html{min-height:100%;background:var(--bg);scroll-behavior:smooth} body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at 8% -8%,rgba(82,110,232,.09),transparent 28%),radial-gradient(circle at 95% 12%,rgba(36,139,92,.06),transparent 28%),var(--bg)}
a{color:inherit;text-decoration:none} button,input,select{font:inherit} button{border:0} input,select{outline:none} input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(82,110,232,.2);outline-offset:2px}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:.82rem}.danger-text{color:var(--red)!important}.span-2{grid-column:span 2}.kicker{display:block;color:var(--blue);font-size:.73rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.mode-tag{display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;background:var(--blue-soft);color:var(--blue);font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.logo-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#5c78ef,#4059cc);color:#fff;font-size:1.25rem;font-weight:900;box-shadow:0 10px 24px rgba(82,110,232,.22)}.logo-mark.dark{background:var(--dark)}
.site-header,.admin-header{width:min(1180px,calc(100% - 36px));height:82px;margin:0 auto;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:11px;min-width:max-content}.brand>span:last-child,.auth-brand>div{display:grid;gap:1px}.brand strong,.auth-brand strong{font-size:.98rem}.brand small,.auth-brand small{color:var(--muted);font-size:.72rem}.main-nav,.admin-nav{display:flex;align-items:center;gap:6px;margin-left:auto}.main-nav a,.admin-nav a{padding:10px 13px;border-radius:12px;color:var(--muted);font-size:.88rem;font-weight:700}.main-nav a:hover,.main-nav a.active,.admin-nav a:hover,.admin-nav a.active{color:var(--text);background:rgba(255,255,255,.72)}.user-bubble,.user-login-bubble{display:flex;align-items:center;gap:10px;padding:7px 12px 7px 7px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.82);box-shadow:0 8px 28px rgba(25,30,37,.05)}.user-bubble>span,.avatar-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--dark);color:#fff;font-size:.8rem;font-weight:900}.user-bubble>div,.user-login-bubble>div{display:grid}.user-bubble strong,.user-login-bubble strong{font-size:.8rem}.user-bubble small,.user-login-bubble small{font-size:.68rem;color:var(--muted)}
.page-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:46px 0 70px}.narrow-page{max-width:760px}.landing-shell{padding-top:54px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:56px;min-height:600px}.hero-copy h1,.section-head h1,.dashboard-hero h1,.admin-title h1,.lesson-hero h1,.game-header h1{margin:0;letter-spacing:-.055em;line-height:.97}.hero-copy h1{font-size:clamp(3rem,6vw,5.8rem);max-width:780px}.hero-copy>p{max-width:680px;margin:24px 0 0;color:var(--muted);font-size:1.07rem;line-height:1.7}.hero-actions,.button-row,.setup-actions,.game-controls,.winner-actions,.profile-actions,.form-actions,.save-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.hero-actions{margin-top:28px}.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.hero-badges span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.65);color:var(--muted);font-size:.73rem;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:14px;font-weight:850;cursor:pointer;transition:transform .16s ease,opacity .16s ease,background .16s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn.primary{color:#fff;background:var(--blue)}.btn.dark{color:#fff;background:var(--dark)}.btn.soft{background:#ecefeb;color:var(--text)}.btn.ghost{background:transparent;color:var(--muted)}.btn.danger{background:var(--red);color:#fff}.btn.compact{min-height:40px;padding:0 13px}.btn.tiny{min-height:34px;padding:0 11px;font-size:.78rem}.text-link,.back-link{color:var(--blue);font-size:.84rem;font-weight:800}.back-link{display:inline-flex;margin-bottom:18px}.hero-visual{position:relative;min-height:480px;border-radius:36px;background:linear-gradient(145deg,#20242b,#101318);box-shadow:0 35px 90px rgba(21,25,32,.2);overflow:hidden;padding:34px;color:#fff}.hero-visual:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,rgba(82,110,232,.35),transparent 45%);animation:floatGlow 8s ease-in-out infinite alternate}.hero-note{position:relative;z-index:2;display:grid;place-items:center;width:160px;height:160px;margin:38px auto 16px;border:1px solid rgba(255,255,255,.16);border-radius:42px;background:rgba(255,255,255,.08);font-size:5rem;font-weight:950}.hero-wave{position:relative;z-index:2;height:90px;display:flex;align-items:center;justify-content:center;gap:9px}.hero-wave i{width:7px;border-radius:99px;background:#92a3ff;animation:wave 1.1s ease-in-out infinite alternate}.hero-wave i:nth-child(1),.hero-wave i:nth-child(7){height:20%}.hero-wave i:nth-child(2),.hero-wave i:nth-child(6){height:48%;animation-delay:.1s}.hero-wave i:nth-child(3),.hero-wave i:nth-child(5){height:72%;animation-delay:.2s}.hero-wave i:nth-child(4){height:100%;animation-delay:.3s}.mini-piano{position:absolute;left:30px;right:30px;bottom:70px;height:92px;display:flex;gap:2px}.mini-piano span{flex:1;background:#fff;border-radius:0 0 7px 7px}.mini-piano b{position:relative;z-index:2;width:24px;height:58px;margin:0 -13px;background:#1b1e24;border-radius:0 0 5px 5px}.hero-status{position:absolute;left:34px;bottom:26px;display:flex;align-items:center;gap:8px;color:#cdd2db;font-size:.72rem}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#64dc9c;box-shadow:0 0 0 0 rgba(100,220,156,.5);animation:pulse 1.7s infinite}.feature-section,.games-preview-section{padding:70px 0}.section-head{text-align:center;max-width:760px;margin:0 auto 30px}.section-head.left{text-align:left;margin:0 0 34px;max-width:850px}.section-head h2{margin:0;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.045em}.section-head h1{font-size:clamp(2.7rem,5vw,4.7rem)}.section-head p,.intro-head p{color:var(--muted);line-height:1.7}.feature-grid{display:grid;gap:16px}.feature-grid.three{grid-template-columns:repeat(3,1fr)}.feature-card,.mode-card,.panel,.lesson-card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.9);box-shadow:var(--shadow)}.feature-card{padding:28px}.feature-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--soft);color:var(--muted);font-size:.76rem;font-weight:900}.feature-card h3{margin:34px 0 10px;font-size:1.25rem}.feature-card p,.mode-card p{margin:0;color:var(--muted);line-height:1.55}.game-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mode-card{display:flex;flex-direction:column;min-height:280px;padding:24px;transition:transform .18s ease,box-shadow .18s ease}.mode-card.interactive:hover{transform:translateY(-4px);box-shadow:0 26px 70px rgba(25,30,37,.12)}.mode-card.dark{background:linear-gradient(145deg,#252930,#15181d);color:#fff;border-color:#2b3038}.mode-card.dark p{color:#aeb5c0}.mode-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;margin-bottom:38px;background:var(--blue-soft);color:var(--blue);font-weight:950;font-size:1.25rem}.dark .mode-icon{background:rgba(255,255,255,.09);color:#fff}.mode-card h3{margin:9px 0 10px;font-size:1.3rem}.card-link{margin-top:auto;padding-top:20px;color:var(--blue);font-size:.83rem;font-weight:900}.dark .card-link{color:#a8b6ff}
.dashboard-hero,.admin-title,.game-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.dashboard-hero h1,.admin-title h1{font-size:clamp(2.5rem,5vw,4.6rem)}.dashboard-hero p,.admin-title p,.game-header p{margin:12px 0 0;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-grid article{padding:22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.82)}.stat-grid span{display:block;color:var(--muted);font-size:.75rem;font-weight:800;margin-bottom:8px}.stat-grid strong{font-size:2rem;letter-spacing:-.04em}.dashboard-section{margin-top:52px}.section-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.section-row h2{margin:0;font-size:1.75rem;letter-spacing:-.035em}.section-note{color:var(--muted);font-size:.78rem}.dashboard-games .mode-card{min-height:300px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{padding:24px}.lesson-progress>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.lesson-progress strong{font-size:1.5rem}.lesson-progress span{color:var(--muted);font-size:.78rem}.progress-track{height:8px;overflow:hidden;border-radius:999px;background:#e9ece8}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#8193ef);transition:width .25s ease}.lesson-progress .progress-track{margin-top:12px}.activity-list{display:grid}.activity-list>div{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.activity-list>div:last-child{border-bottom:0}.activity-list span{display:grid;gap:3px}.activity-list small{color:var(--muted)}.empty-state,.empty-cell{padding:28px;text-align:center;color:var(--muted)}
.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lesson-card{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:24px;min-height:220px;transition:transform .18s ease}.lesson-card:hover{transform:translateY(-2px)}.lesson-card.done{border-color:rgba(36,139,92,.28)}.lesson-order{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:var(--soft);font-weight:900;color:var(--muted)}.lesson-card h2{margin:12px 0 8px;font-size:1.35rem}.lesson-card p{margin:0;color:var(--muted);line-height:1.55}.lesson-card.done .card-link{color:var(--green)}.lesson-page{max-width:900px}.lesson-hero{display:grid;grid-template-columns:1fr;gap:24px;padding:34px;border-radius:30px;background:linear-gradient(145deg,#20242b,#12151a);color:#fff}.lesson-hero h1{font-size:clamp(2.8rem,6vw,5.4rem);margin-top:10px}.lesson-hero p{max-width:700px;color:#bcc2cb;line-height:1.7}.lesson-index{margin-left:10px;color:#8f97a5;font-size:.72rem;font-weight:900}.lesson-formula{padding:18px 20px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.06);font-weight:850;letter-spacing:.03em}.lesson-content{padding:20px 0}.lesson-content>section{padding:28px 4px;border-bottom:1px solid var(--line)}.lesson-content h2{margin:0 0 12px;font-size:1.55rem}.lesson-content p{margin:0;color:var(--muted);line-height:1.8;font-size:1.02rem}.practice-tip{margin-top:20px;padding:28px!important;border:1px solid var(--line)!important;border-radius:24px;background:#fff}.practice-tip .btn{margin-top:18px}.lesson-footer-actions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:28px}.lesson-footer-actions>div:last-child{text-align:right}
.auth-page{display:grid;place-items:center;padding:32px}.auth-shell{width:min(460px,100%)}.auth-shell.wide{width:min(820px,100%)}.auth-brand{display:flex;align-items:center;gap:11px;margin:0 auto 18px;width:max-content}.auth-card{padding:32px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.94);box-shadow:var(--shadow)}.auth-card h1{margin:0;font-size:2.45rem;letter-spacing:-.05em}.auth-card>p{color:var(--muted);line-height:1.6}.auth-actions{display:flex;gap:10px;margin-top:22px}.form-grid{display:grid;gap:15px}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid label,.mic-drawer label,.audio-sliders label{display:grid;gap:7px}.form-grid label>span,.mic-drawer label>span,.audio-sliders label>span{font-size:.8rem;font-weight:800;color:#555d67}.form-grid input,.form-grid select,.filter-bar input,.filter-bar select,.mic-drawer select{width:100%;height:48px;border:1px solid var(--line);border-radius:14px;background:var(--soft);padding:0 13px;color:var(--text)}.form-grid label small{color:var(--muted);font-size:.72rem}.form-divider{grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.form-divider span{color:var(--muted);font-size:.73rem}.alert{padding:13px 15px;border-radius:14px;margin:14px 0;font-size:.86rem;font-weight:700}.alert.danger{background:var(--red-soft);color:#9c3434}.alert.success{background:var(--green-soft);color:#187248}.alert.warn{background:var(--amber-soft);color:#87570f}.profile-actions{margin-top:14px}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:20px;border:1px solid #f0cccc;border-radius:18px;background:#fff5f5}.danger-zone p{margin:4px 0 0;color:var(--muted);font-size:.8rem}.info-callout{margin-top:16px;padding:18px;border-radius:18px;background:#edf0ff}.info-callout p{margin:5px 0 0;color:#58627a;line-height:1.55}
.game-shell{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:34px 0 70px}.game-header h1{font-size:clamp(2.6rem,5vw,4.8rem);margin-top:7px}.game-top-actions{display:flex;gap:8px}.game-setup{padding:26px}.game-options{margin:24px 0 20px}.setup-note{margin-top:16px;padding:14px 16px;border-radius:15px;background:var(--soft);color:var(--muted);font-size:.82rem;line-height:1.55}.setup-note strong{color:var(--text)}.status-chip{display:inline-flex;align-items:center;width:max-content;padding:8px 11px;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.04em}.status-chip.idle{background:#ecefeb;color:#707780}.status-chip.ok{background:var(--green-soft);color:var(--green)}.status-chip.warn{background:var(--amber-soft);color:var(--amber)}.status-chip.danger{background:var(--red-soft);color:var(--red)}.play-panel{padding:4px 0}.game-progress-row{display:grid;grid-template-columns:125px 1fr 100px;align-items:center;gap:14px;color:var(--muted);font-size:.75rem;font-weight:800}.game-progress-row .progress-track{height:7px}.challenge-stage{position:relative;margin-top:24px;min-height:300px;padding:42px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line);border-radius:30px;background:rgba(255,255,255,.92);box-shadow:var(--shadow);transition:background .25s ease,color .25s ease}.challenge-main{font-size:clamp(4rem,12vw,8rem);font-weight:950;letter-spacing:-.06em;line-height:.9;margin:18px 0 14px}.challenge-hint{color:var(--muted);font-weight:700}.memory-countdown{position:absolute;right:24px;top:24px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--dark);color:#fff;font-weight:900}.challenge-stage.memory-hidden{background:#060708;border-color:#12151a;color:#fff}.challenge-stage.memory-hidden:after{content:"MEMÓRIA";color:#414750;font-size:.72rem;letter-spacing:.18em;font-weight:900}.note-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:16px 0}.note-slot{min-width:72px;padding:10px 13px;border:1px dashed #cfd4cf;border-radius:13px;background:#fafbfa;color:var(--muted);font-weight:900;text-align:center}.note-slot.done{border-style:solid;border-color:rgba(36,139,92,.24);background:var(--green-soft);color:var(--green)}.note-slots.large .note-slot{min-width:86px}.feedback-panel{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:16px;padding:15px;border-radius:20px;border:1px solid transparent;background:#eef0ee}.feedback-panel.correct{background:var(--green-soft);border-color:rgba(36,139,92,.22)}.feedback-panel.wrong{background:var(--red-soft);border-color:rgba(200,72,72,.22)}.detected-note{display:grid;place-items:center;width:82px;height:82px;border-radius:22px;background:rgba(255,255,255,.78);font-size:1.7rem;font-weight:950}.feedback-panel strong{display:block;margin-bottom:4px}.feedback-panel p{margin:0;color:var(--muted);font-size:.86rem}.live-readout{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}.live-readout>div{padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.7)}.live-readout span{display:block;color:var(--muted);font-size:.67rem;font-weight:800;margin-bottom:5px}.live-readout b{font-size:.8rem}.tune-block{margin:16px 0}.tune-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.68rem;margin-bottom:6px}.tune-meter{position:relative;height:16px;border-radius:99px;background:linear-gradient(90deg,#f3c9c9,#e3f4e9 42%,#e3f4e9 58%,#f3c9c9)}.tune-meter i{position:absolute;left:50%;top:2px;width:3px;height:12px;border-radius:99px;background:var(--green)}.tune-meter b{position:absolute;left:50%;top:-4px;width:8px;height:24px;border-radius:99px;background:var(--dark);transform:translateX(-50%);transition:left .08s linear}.game-controls{margin-top:16px}.winner-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:rgba(15,18,22,.46);backdrop-filter:blur(12px)}.winner-card{width:min(560px,100%);padding:38px;border-radius:30px;background:#fff;text-align:center;box-shadow:0 35px 100px rgba(0,0,0,.18)}.winner-stars{display:block;margin-bottom:12px;color:#d69a31;letter-spacing:.25em;font-size:1.4rem}.winner-card h2{margin:0;font-size:3rem;letter-spacing:-.05em}.winner-card>p{color:var(--muted)}.winner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0}.winner-stats>div{padding:14px;border-radius:16px;background:var(--soft)}.winner-stats span{display:block;color:var(--muted);font-size:.68rem;font-weight:800}.winner-stats strong{font-size:1.35rem}.winner-actions{justify-content:center}.mic-drawer{position:fixed;z-index:100;right:18px;top:18px;bottom:18px;width:min(410px,calc(100% - 36px));overflow:auto;padding:24px;border-radius:26px;background:#fff;box-shadow:0 30px 90px rgba(17,20,26,.28)}.drawer-backdrop{position:fixed;z-index:99;inset:0;background:rgba(15,18,22,.3);backdrop-filter:blur(4px)}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.drawer-head h2{margin:0}.icon-close{width:38px;height:38px;border-radius:12px;background:var(--soft);font-size:1.4rem;cursor:pointer}.mic-drawer label{margin-top:18px}.mic-drawer input[type=range],.audio-sliders input[type=range]{width:100%;accent-color:var(--blue)}.drawer-actions{display:grid;gap:8px;margin-top:22px}.meter-card{margin:18px 0;padding:16px;border-radius:18px;background:var(--soft)}.meter-card>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.signal-bar{position:relative;height:12px;border-radius:99px;background:#dfe3df;overflow:visible}.signal-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--green),#e5b246);width:0}.signal-bar b{position:absolute;top:-4px;width:3px;height:20px;border-radius:99px;background:var(--red)}.meter-card small{display:block;margin-top:10px;color:var(--muted);line-height:1.45}
.mic-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.mic-control-panel,.diagnostic-panel{padding:26px}.meter-card.big{margin-top:22px}.signal-bar.tall{height:18px}.audio-sliders{display:grid;gap:22px;margin-top:24px}.audio-sliders small{color:var(--muted);line-height:1.45}.save-row{margin-top:24px}.detected-hero{display:flex;align-items:center;gap:18px;margin:22px 0;padding:20px;border-radius:22px;background:linear-gradient(145deg,#20242b,#12151a);color:#fff}.detected-hero>div:first-child{display:grid;place-items:center;width:112px;height:112px;border-radius:28px;background:rgba(255,255,255,.09);font-size:3rem;font-weight:950}.detected-hero>div:last-child{display:grid;gap:6px}.detected-hero span{color:#c8ced7}.detected-hero strong{font-size:1.7rem}.diagnostic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.diagnostic-grid>div{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--soft)}.diagnostic-grid span{display:block;color:var(--muted);font-size:.68rem;font-weight:800;margin-bottom:6px}.diagnostic-grid strong{font-size:.85rem}.filter-explainer{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.filter-explainer h3{margin-top:0}.filter-list{display:grid;gap:10px}.filter-list>div{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid var(--line)}.filter-list span{color:var(--muted);font-size:.8rem;line-height:1.45}
.admin-page{background:#f2f3f1}.admin-header{width:min(1240px,calc(100% - 36px))}.admin-nav{margin-left:auto}.admin-profile{display:flex;align-items:center;gap:9px}.admin-profile>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--dark);color:#fff;font-weight:900}.admin-profile>div{display:grid}.admin-profile strong{font-size:.78rem}.admin-profile a{color:var(--red);font-size:.68rem;font-weight:800}.admin-shell{width:min(1200px,calc(100% - 32px));margin:0 auto;padding:42px 0 70px}.narrow-admin{max-width:860px}.admin-stats{margin-bottom:20px}.filter-bar{display:grid;grid-template-columns:1fr 190px auto;gap:9px;margin:18px 0}.table-panel{padding:0;overflow:hidden}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:.82rem}.admin-table th{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;background:#fafbfa}.admin-table td>small{display:block;color:var(--muted);margin-top:4px}.row-actions{text-align:right!important}.admin-footer{width:min(1200px,calc(100% - 32px))}.master-auth{background:#171a1f}.master-auth .auth-card{box-shadow:0 30px 90px rgba(0,0,0,.35)}
.site-footer{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:24px 0 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:.72rem}
body.memory-game-page.memory-active{background:#050607;color:#fff}.memory-active .site-header .brand small,.memory-active .main-nav a,.memory-active .user-bubble small,.memory-active .game-header p,.memory-active .back-link{color:#8e96a2}.memory-active .site-header{border-color:#222}.memory-active .main-nav a.active,.memory-active .main-nav a:hover{background:#14171b;color:#fff}.memory-active .user-bubble{background:#111419;border-color:#282d34}.memory-active .user-bubble>span{background:#fff;color:#111}.memory-active .game-header h1,.memory-active .game-header .kicker{color:#fff}.memory-active .challenge-stage{background:#090b0e;border-color:#1d2229;color:#fff}.memory-active .challenge-hint{color:#808894}.memory-active .mode-tag{background:#171b21;color:#aeb9ff}.memory-active .live-readout>div,.memory-active .feedback-panel.neutral{background:#101317;border-color:#222830;color:#fff}.memory-active .feedback-panel p,.memory-active .live-readout span,.memory-active .tune-labels{color:#8f98a4}.memory-active .note-slot{background:#101317;border-color:#30363e}.memory-active .site-footer{border-color:#1d2229;color:#6d7580}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(100,220,156,0)}100%{box-shadow:0 0 0 0 rgba(100,220,156,0)}}@keyframes wave{from{transform:scaleY(.6);opacity:.65}to{transform:scaleY(1.15);opacity:1}}@keyframes floatGlow{from{transform:translate(-4%,-3%)}to{transform:translate(7%,5%)}}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-visual{min-height:430px}.game-card-grid{grid-template-columns:1fr 1fr}.feature-grid.three{grid-template-columns:1fr}.mic-layout{grid-template-columns:1fr}.live-readout{grid-template-columns:repeat(3,1fr)}.site-header,.admin-header{height:auto;padding:15px 0;flex-wrap:wrap}.main-nav,.admin-nav{order:3;width:100%;margin:0;overflow:auto}.user-bubble,.user-login-bubble{margin-left:auto}.admin-profile{margin-left:auto}}
@media(max-width:720px){.page-shell,.game-shell,.admin-shell{width:min(100% - 20px,1120px);padding-top:24px}.hero-copy h1{font-size:3.2rem}.hero-grid{gap:28px}.hero-visual{min-height:360px}.hero-note{width:120px;height:120px;font-size:3.8rem}.game-card-grid,.lesson-grid,.two-col,.stat-grid{grid-template-columns:1fr}.dashboard-hero,.admin-title,.game-header,.section-row{align-items:flex-start;flex-direction:column}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.span-2{grid-column:auto}.form-divider{grid-column:auto;align-items:flex-start;flex-direction:column;gap:5px}.game-progress-row{grid-template-columns:1fr}.game-progress-row .progress-track{order:3;grid-column:1/-1}.challenge-stage{min-height:250px;padding:30px 18px}.challenge-main{font-size:4.4rem}.live-readout{grid-template-columns:1fr 1fr}.feedback-panel{grid-template-columns:64px 1fr}.detected-note{width:64px;height:64px;border-radius:18px;font-size:1.35rem}.lesson-hero{padding:25px}.lesson-hero h1{font-size:3rem}.lesson-footer-actions{grid-template-columns:1fr;gap:10px}.lesson-footer-actions>div:last-child{text-align:left}.winner-card{padding:28px 20px}.winner-card h2{font-size:2.3rem}.winner-stats{grid-template-columns:1fr 1fr 1fr}.filter-bar{grid-template-columns:1fr}.site-footer{flex-direction:column}.auth-page{padding:16px}.auth-card{padding:24px}.admin-table{min-width:680px}}

/* v3.1 Master / catálogo / versões */
.admin-game-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-game-card{min-width:0}.game-admin-heading{display:flex;align-items:center;gap:14px;margin-bottom:4px}.game-admin-heading .mode-icon{margin:0;flex:0 0 auto}.game-admin-heading h2{margin:3px 0 0;font-size:1.35rem}.game-admin-heading .btn{margin-left:auto}.check-line{display:flex!important;align-items:center;gap:9px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}.check-line input{width:auto!important}.check-line span{margin:0!important}.admin-test-grid{margin-bottom:20px}.admin-test-notes{margin-top:18px}.admin-test-notes h2{margin:6px 0 10px}.version-badge{min-width:132px;padding:13px 16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow);text-align:right}.version-badge span{display:block;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.09em}.version-badge strong{display:block;margin-top:3px;font-size:1.45rem}.admin-inner-title{padding:20px 20px 0}.premium-access-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.premium-access-item{display:flex!important;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:var(--soft)}.premium-access-item input{width:auto!important}.premium-access-item>span{display:grid!important;gap:2px!important}.premium-access-item small{color:var(--muted)}.locked-game{position:relative;opacity:.82}.locked-game:after{content:"🔒";position:absolute;right:20px;top:20px;font-size:1.15rem}.locked-game-footer{display:grid;gap:5px;margin-top:auto;padding-top:20px}.locked-game-footer strong{font-size:1.05rem}.locked-game-footer span{color:var(--muted);font-size:.76rem}.dark .locked-game-footer span{color:#aeb5c0}.test-mode-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:12px 16px;border:1px solid #d8dce8;border-radius:16px;background:#eef1ff;color:#323a59}.test-mode-banner strong{font-size:.82rem}.test-mode-banner span{font-size:.75rem;color:#67708e}.admin-test-header{border-bottom:1px solid var(--line)}
@media(max-width:980px){.admin-game-grid{grid-template-columns:1fr}.admin-nav{gap:3px}.admin-nav a{padding:9px 10px;font-size:.8rem}}
@media(max-width:720px){.premium-access-list{grid-template-columns:1fr}.test-mode-banner{align-items:flex-start;flex-direction:column}.version-badge{text-align:left}.game-admin-heading{align-items:flex-start;flex-wrap:wrap}.game-admin-heading .btn{margin-left:0}}
.admin-quick-panel{margin-bottom:20px}.admin-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.admin-quick-grid a{display:grid;gap:5px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--soft);transition:transform .16s ease,background .16s ease}.admin-quick-grid a:hover{transform:translateY(-2px);background:#fff}.admin-quick-grid strong{font-size:.9rem}.admin-quick-grid span{color:var(--muted);font-size:.72rem;line-height:1.35}.system-health{margin-top:16px}
@media(max-width:980px){.admin-quick-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.admin-quick-grid{grid-template-columns:1fr}}
.diagnostic-log{margin:0;max-height:430px;overflow:auto;padding:18px;border-radius:16px;background:#11151b;color:#dfe5ee;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}.admin-quick-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
