:root {--bg:#e3ddcd;--ink:#22332d;--line:#728478;--lcd:#dce6c5;--gold:#ddb27a;--muted:#5b7367}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0%,#e9e4d9,#c7c8b9 68%,#a8b5a9);color:var(--ink);font-family:Trebuchet MS,Arial,sans-serif;min-height:100vh}.page{max-width:670px;margin:0 auto;padding:17px 12px 22px}.studio-top{display:flex;align-items:center;justify-content:center;gap:14px;color:#314a3e;font-size:10px;letter-spacing:2px;font-weight:900;margin:4px 0 14px}.studio-top em{font-style:normal;opacity:.6}.logo-mark{font-size:27px;letter-spacing:-2px;font-weight:1000}.logo-dot{color:#c4814b}.handheld{width:min(100%,440px);margin:auto;border-radius:34px 34px 51px 34px;background:linear-gradient(130deg,#e3e9d6,#c6d3c0 50%,#a8bba9);padding:19px 21px 16px;border:2px solid #789381;box-shadow:0 5px 0 #9faf9f,0 18px 0 -4px #859b8a,0 28px 40px #314e3a55,inset 4px 4px 7px #fff9,inset -3px -2px 8px #617e6850}.shell-top{display:flex;justify-content:space-between;align-items:center;padding:2px 3px 14px}.brand{font-weight:1000;font-size:26px;letter-spacing:-2px;color:#294338}.brand-min{vertical-align:top;font-size:9px;letter-spacing:0}.brand small{font-size:10px;letter-spacing:2px;font-weight:800;margin-left:5px}.speakers{display:flex;gap:5px}.speakers i{width:5px;height:17px;background:#688779;border-radius:4px;transform:rotate(-17deg)}.bezel{background:linear-gradient(135deg,#2a3a35,#344e47);padding:16px 13px 10px;border-radius:14px 14px 25px 14px;box-shadow:inset 1px 2px 6px #122420,0 2px 1px #f4fae2}.screen{background:#d9e5c7;min-height:500px;border:5px solid #172c23;border-radius:5px;box-shadow:inset 0 0 13px #7f9b86;overflow:hidden;position:relative}.screen-head{height:28px;background:#243e33;color:#e1edd4;display:flex;align-items:center;justify-content:space-between;padding:0 9px;font-size:9px;font-weight:900;letter-spacing:.4px}.battery{display:inline-block;border:1px solid #d1e6cd;width:16px;height:8px;border-radius:2px;box-shadow:inset 0 0 0 2px #243e33;background:#c0d197;margin-right:3px}.screen-foot{display:flex;justify-content:space-between;color:#becdbb;padding:9px 4px 0;font-size:9px;letter-spacing:1.2px;font-weight:800}#view{padding:12px;min-height:464px}.intro{min-height:436px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px}.intro .stamp{font-size:12px;letter-spacing:3px;padding:6px 11px;border:2px solid currentColor;font-weight:900}.intro h1{font-family:Georgia,serif;font-size:52px;letter-spacing:-5px;margin:0}.intro p{max-width:280px;line-height:1.6;font-size:14px}.muted{color:#597263}.pixel-line{height:2px;background:repeating-linear-gradient(90deg,#627963 0,#627963 10px,transparent 10px,transparent 16px);width:90%;opacity:.6}.btn{background:#243e33;color:#eff2d9;border:1px solid #1b3229;padding:11px 14px;border-radius:7px;font-family:inherit;font-size:13px;font-weight:900;letter-spacing:.5px;box-shadow:0 3px 0 #14261e;cursor:pointer}.btn:active{transform:translateY(2px);box-shadow:0 1px 0 #14261e}.btn.alt{background:#d1dcc3;color:#2e493a;border-color:#899e8a;box-shadow:0 3px 0 #91a68f}.btn:disabled{opacity:.45;cursor:default}.btn-row{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.section-tag{font-size:10px;letter-spacing:1.8px;font-weight:900;text-transform:uppercase;margin:3px 0 9px}.library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.tape{height:155px;border:2px solid #445349;display:flex;flex-direction:column;align-items:center;justify-content:space-around;border-radius:8px 12px 12px 8px;position:relative;cursor:pointer;padding:12px 5px 10px;box-shadow:inset 4px 0 0 #ffffff33,3px 4px 0 #738a74;transition:transform .14s}.tape:hover{transform:translateY(-2px)}.tape:active{transform:translateY(2px)}.tape:before{content:'';position:absolute;width:49px;height:7px;border-radius:0 0 5px 5px;top:-2px;background:#294238}.tape em{font-style:normal;font-size:33px}.tape strong{font-size:16px;letter-spacing:.5px;text-align:center;line-height:1.1}.tape small{font-size:10px;font-weight:900}.tape.wake{background:#e9bc79;color:#573a23}.tape.sleep{background:#a5b3c6;color:#243a52}.tape.focus{background:#aac4a1;color:#2e5037}.tape.poker{background:#b68578;color:#402e2b}.tape-info{font-size:11px;text-align:center;line-height:1.45;margin:8px 0 5px;color:#466451}.screen h2{font-size:21px;margin:7px 0 4px;letter-spacing:-.5px}.screen p{font-size:13px;line-height:1.45}.topline{display:flex;gap:7px;justify-content:space-between;align-items:center;font-size:10px;font-weight:900;color:#4b6555}.topline .chapter{font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin:10px 0 9px;gap:5px}.stat{border:1px solid #9ba98e;padding:5px 4px;text-align:center;border-radius:4px;background:#ecf0d9;font-size:10px;font-weight:900}.stat b{display:block;font-size:17px;color:#304536}.board{width:100%;aspect-ratio:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr));gap:3px;padding:5px;background:#344d3e;border:2px solid #23382d;border-radius:8px;touch-action:pan-y}.cell{border:none;border-radius:6px;background:linear-gradient(150deg,#f8f3df,#d6dcc6);box-shadow:0 2px 0 #9dae9a;position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;min-width:0;min-height:0;touch-action:none;transition:background .18s}.cell .symbol{font-size:clamp(18px,5.8vw,32px);filter:drop-shadow(0 1px 1px #18332255);line-height:1;transform:translateY(-1px)}.cell.wake{background:linear-gradient(145deg,#ffefd8,#d5dabb)}.cell.sleep{background:linear-gradient(145deg,#e3e7e9,#bbc8d0)}.cell.block{background:#7e8c72;color:#273b30;box-shadow:inset 0 0 0 2px #425f47}.cell.block .symbol{filter:none}.cell.selected{outline:3px solid #e39b45;outline-offset:-3px;z-index:1;transform:scale(.96)}.cell.matched{animation:popout .29s ease-in both}.cell.new{animation:fallin .4s cubic-bezier(.16,.85,.25,1.2) both}.cell.hint{outline:2px dashed #ad8b49}.feedback{min-height:37px;padding:8px 10px;text-align:center;background:#d1dabe;border-radius:5px;margin:8px 0 5px;color:#314e3c;font-size:12px;font-weight:900}.feedback.punch{animation:tag .55s ease-out}@keyframes tag{0%{transform:scale(.86);opacity:.3}55%{transform:scale(1.04)}100%{transform:scale(1);opacity:1}}@keyframes popout{to{transform:scale(.2) rotate(14deg);opacity:0}}@keyframes fallin{from{transform:translateY(-25px) scale(.88);opacity:.1}to{transform:translateY(0);opacity:1}}.hinttext{color:#456455;font-size:11px;margin:8px 0;line-height:1.45}.stage-head{display:flex;gap:10px;align-items:center;margin:5px 0 11px}.stage-head .stage-icon{font-size:36px;background:#ebecd2;border:1px solid #92a48d;border-radius:11px;padding:10px}.stage-head .stage-title{flex:1}.stage-head small{display:block;font-size:10px;letter-spacing:.5px;opacity:.8}.overlay{position:absolute;inset:28px 0 0;background:#283e34e9;z-index:10;display:flex;align-items:center;justify-content:center;padding:17px}.modal{width:100%;border:3px solid #e9e0c3;background:#e9eddb;border-radius:11px;box-shadow:0 13px 0 #11241966;padding:22px 14px;text-align:center}.modal .hero{font-size:45px;margin-bottom:10px}.modal h2{font-size:24px;margin:4px 0 12px}.modal p{font-size:13px;max-width:310px;margin:10px auto 18px}.focus-pad{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:24px auto 13px;max-width:288px}.pad{aspect-ratio:1;border-radius:18px;border:3px solid #384d3d;cursor:pointer;box-shadow:0 5px 0 #1d3427;opacity:.86;transition:filter .1s,transform .1s}.pad:nth-child(1){background:#dc926b}.pad:nth-child(2){background:#84aeb5}.pad:nth-child(3){background:#ddbd68}.pad:nth-child(4){background:#8daa80}.pad.active{filter:brightness(1.5) saturate(1.35);transform:scale(1.05);box-shadow:0 0 15px #f0e9c8}.pad:disabled{cursor:default}.focus-progress{min-height:22px;font-size:12px;text-align:center;font-weight:900}.poker-rows{margin:14px 0}.hand-title{font-size:10px;letter-spacing:1.5px;font-weight:900;margin:10px 0 5px}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.card{border:1px solid #8d9a7c;min-width:0;min-height:87px;background:linear-gradient(135deg,#fffdf5,#eae8d7);border-radius:6px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:7px 2px;color:#293d35;font-family:Georgia,serif;cursor:pointer;box-shadow:0 3px 0 #8b988c}.card.red{color:#b4544b}.card .rank{font-size:18px;font-weight:bold}.card .suit{font-size:29px}.card.selected{outline:3px solid #cb9047;background:#fff4d5;transform:translateY(-3px)}.card small{font-size:9px;color:#45604e;font-family:Arial;font-weight:bold}.card:disabled{opacity:.6}.evaluate{margin:11px 0;padding:9px;background:#c5d6bc;border:1px solid #899f8a;font-size:12px;font-weight:900;text-align:center;border-radius:6px}.controls{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:23px 6px 12px;height:100px}.dpad{position:relative;width:102px;height:99px;filter:drop-shadow(2px 4px 1px #607865)}.dpad span{background:#36473e;position:absolute;border-radius:3px}.d-up,.d-down{width:33px;height:42px;left:34px}.d-up{top:1px}.d-down{bottom:1px}.d-left,.d-right{height:33px;width:42px;top:33px}.d-left{left:1px}.d-right{right:1px}.d-mid{width:33px;height:33px;top:33px;left:34px;background:#415749!important}.control-center{text-align:center;align-self:flex-end}.control-center>span{font-size:9px;color:#526e5c;letter-spacing:1.4px;font-weight:bold}.pills{display:flex;gap:6px;margin-top:7px}.pills button{font-size:9px;letter-spacing:1px;padding:7px 9px;background:#5d7065;color:#e5e8d5;border:0;border-radius:12px;transform:rotate(-10deg);cursor:pointer}.ab{width:107px;height:90px;position:relative}.ab>div{height:54px;background:#9cad9c;border-radius:35px;transform:rotate(-26deg);display:flex;align-items:center;justify-content:space-around;padding:4px}.ab span{display:grid;place-items:center;border-radius:50%;width:42px;height:42px;background:#b46f62;color:#f0e8cf;border:3px solid #98594e;box-shadow:1px 3px 1px #668171;font-weight:bold}.shell-bottom{border-top:1px solid #dce4d3;display:flex;align-items:center;justify-content:space-between;padding:11px 4px 0;font-size:10px;font-weight:900;letter-spacing:1.5px;color:#557260}.shell-bottom button{background:#304b3e;color:#d5e8cf;border:0;border-radius:6px;padding:9px 11px;font-size:10px;font-weight:900;cursor:pointer}.outside-note{text-align:center;font-size:10px;letter-spacing:1px;line-height:1.5;margin:25px auto 0;color:#3f5949;font-weight:900;max-width:410px}@media(max-width:450px){.page{padding:9px 5px 15px}.studio-top{font-size:9px;margin-bottom:10px}.handheld{padding:14px 13px;border-radius:22px 22px 37px 22px}.bezel{padding:11px 8px 8px}.screen{min-height:466px}.screen-head{font-size:8px}.screen-foot{font-size:7px}#view{padding:9px;min-height:438px}.tape{height:139px}.tape strong{font-size:14px}.controls{padding-top:14px}.cell .symbol{font-size:clamp(18px,6vw,28px)}.card{min-height:75px}.card .suit{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* R019 — rádio local e maior legibilidade no telefone */
.music-deck{margin:12px 2px 4px;background:#314b3e;border:1px solid #6c8c74;border-radius:12px;padding:9px 11px;color:#ebedd7;box-shadow:inset 0 2px 8px #15271c80}
.music-title{font-size:11px;min-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:900;letter-spacing:.25px}
.music-controls{display:flex;align-items:center;gap:8px;margin-top:5px}
.music-controls button{border:1px solid #9eaf96;background:#dfdfc4;color:#294136;border-radius:7px;font-weight:900;padding:9px 8px;font-size:11px;cursor:pointer;min-height:35px}
.music-controls button:disabled{opacity:.45;cursor:not-allowed}
.music-controls label{font-size:9px;font-weight:900;letter-spacing:1px}
.music-controls input{width:55px;min-width:30px;flex:1;accent-color:#bed09d}
.screen{transition:background .4s}
body:has(.cell.sleep) .screen{background:#c9d2d8;box-shadow:inset 0 0 16px #74869b}
body:has(.cell.sleep) .feedback{background:#ccd4d9;color:#2b4158}
body:has(.focus-pad) .screen{background:#d4dfc8}
body:has(.poker-rows) .screen{background:#d4d5bd}
.cell:focus-visible,.tape:focus-visible,.pad:focus-visible,.card:focus-visible,.btn:focus-visible,.music-controls button:focus-visible{outline:3px solid #da985a;outline-offset:2px}
@media(max-width:420px){.page{padding:8px 5px 16px}.handheld{padding:14px 12px 13px;border-radius:24px 24px 37px 28px}.bezel{padding:11px 8px 8px}.screen{min-height:485px}#view{padding:9px}.studio-top{font-size:8px;letter-spacing:1px;margin-bottom:8px}.studio-top em{display:none}.shell-top{padding-bottom:8px}.brand{font-size:24px}.cell .symbol{font-size:clamp(20px,6vw,29px)}.card .rank{font-size:17px}.screen-foot{font-size:8px}.music-title{font-size:10px}}
@media(prefers-reduced-motion:reduce){.cell,.tape{transition:none}.cell.matched,.cell.new,.feedback.punch{animation:none}}

/* R022 — Audio Studio: compact controls, safe mobile layout */
.mix-studio{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;background:#253e34;color:#f3edcc;border:1px solid #668871;border-radius:9px;padding:9px;margin:8px 2px}
.mix-studio>div{display:flex;gap:7px;align-items:center;justify-content:space-between}
.mix-studio label{font-weight:800;font-size:10px;letter-spacing:.6px}.mix-studio select{background:#e0e8cd;color:#21362b;border-radius:6px;padding:5px;max-width:122px}
.mix-studio input{width:75px;accent-color:#e3b767}.mix-studio small{grid-column:1/-1;font-size:10px;color:#d1e0d5;line-height:1.4}
@media(max-width:410px){.mix-studio{grid-template-columns:1fr}.mix-studio small{grid-column:1}.music-controls{flex-wrap:wrap}}
