
/* Layout: mucit atölyesi. Mavi kareli kâğıt zemin; açılışta makine rafı (seviye seçimi),
   seviyede iki sütun: solda deney masası (örtülü makine), sağda kayıt defteri + makineyi boyama. Bilinçli olarak tek (açık) görünüm.
   Renkler: sitenin Pastels for Easter kartelası + koyu eşleri. */
:root{
  --aura:#CEF4F8;--violet:#D1CCEB;--pink:#FED3D9;--derby:#FDF0D7;--mint:#C5EBD5;
  --paper:#ffffff;
  --ink:#2b3550;--ink-2:#5d6680;
  --accent:#6f66b0;--accent-d:#4f4790;
  --honey:#f4cf7f;--honey-d:#b8862c;
  --go:#3c8a62;--stop:#c0506b;
  --line:#e4dcef;
  --wood:#e8c99a;--wood-d:#c49a62;
  --display:"Nunito","Trebuchet MS",system-ui,sans-serif;
  --body:"Source Sans 3","Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{background:var(--aura);color:var(--ink)}
body{font-family:var(--body);font-size:16px;line-height:1.45;padding-inline:16px;padding-block:16px 40px;
  background-image:linear-gradient(rgba(111,102,176,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(111,102,176,.10) 1px,transparent 1px);
  background-size:28px 28px}
button{font:inherit;color:inherit}
p{margin:0}
h1,h2,h3,h4{margin:0;font-family:var(--display);line-height:1.05;text-wrap:balance}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.gm-app{max-width:1080px;margin:0 auto;display:grid;gap:16px}
.num{font-family:var(--display);font-weight:600;font-variant-numeric:tabular-nums}

/* Üst çubuk */
.top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.workshop-brand{display:flex;align-items:center;gap:12px}
.workshop-brand h1{font-size:clamp(30px,5vw,44px);font-weight:700;letter-spacing:-.5px}
.workshop-brand h1 span{color:var(--accent)}
.workshop-brand p{color:var(--ink-2);font-weight:800;font-size:14px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:999px;padding:7px 14px;background:var(--paper);font-family:var(--display);font-weight:600;font-size:16px;box-shadow:0 3px 0 var(--line);cursor:pointer}
.chip.static{cursor:default}
.chip .st{color:var(--honey-d)}

/* Düğmeler */
.btn{border:none;border-radius:16px;padding:11px 24px 13px;font-family:var(--display);font-weight:600;font-size:19px;cursor:pointer;background:var(--honey);color:var(--ink);box-shadow:0 5px 0 var(--honey-d);transition:transform .1s,box-shadow .1s;touch-action:manipulation}
.btn:hover{transform:translateY(-2px);box-shadow:0 7px 0 var(--honey-d)}
.btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--honey-d)}
.btn[disabled]{opacity:.45;cursor:default;transform:none;box-shadow:0 5px 0 var(--honey-d)}
.btn.sec{background:var(--paper);box-shadow:0 5px 0 var(--line),inset 0 0 0 2px var(--line)}
.btn.vio{background:var(--accent);color:#fff;box-shadow:0 5px 0 var(--accent-d)}
.btn.small{font-size:16px;padding:8px 14px 10px}
.link{background:none;border:none;color:var(--ink-2);font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:6px 0}

/* Raf (seviye seçimi) */
.howto{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:var(--paper);border-radius:22px;padding:14px;box-shadow:0 6px 0 var(--line)}
.howto div{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;font-weight:800;font-size:15px}
.howto .intro{grid-column:1/-1;font-weight:700;font-size:17px}
.howto i{font-style:normal;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--violet);color:var(--accent-d);font-family:var(--display);font-weight:700}
.shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 14px;background:var(--derby);border-radius:26px;padding:18px 16px 24px;box-shadow:0 8px 0 #f1dfbd}
.slot{position:relative;display:grid;gap:4px;justify-items:center;text-align:center;border:none;background:none;cursor:pointer;padding:6px 4px 14px;border-bottom:12px solid var(--wood);border-radius:0 0 4px 4px;box-shadow:0 6px 0 var(--wood-d)}
.slot svg{width:100%;max-width:150px;height:auto;transition:transform .15s}
.slot:hover svg{transform:translateY(-4px) rotate(-1deg)}
.slot b{font-family:var(--display);font-weight:600;font-size:17px}
.slot small{color:var(--ink-2);font-weight:800;font-size:13px}
.slot .stars{position:absolute;top:2px;right:6px}
.slot.locked{cursor:default}
.slot.locked svg{opacity:.45;filter:grayscale(.6)}
.slot.locked:hover svg{transform:none}
.stars{display:inline-flex;gap:1px}
.stars svg{width:18px;height:18px}
.shelf-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

/* Seviye ekranı */
.lvhead{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.lvhead .l{display:flex;align-items:center;gap:12px}
.lvhead h2{font-size:28px;font-weight:700}
.budget{display:flex;align-items:center;gap:10px;background:var(--paper);border-radius:999px;padding:6px 14px;box-shadow:0 3px 0 var(--line);font-weight:800}
.budget .bar{width:120px;height:10px;border-radius:999px;background:var(--line);overflow:hidden}
.budget .bar i{display:block;height:100%;background:var(--accent);transition:width .2s}
.note{background:#fff7d6;border-radius:4px 18px 18px 18px;padding:12px 16px;font-weight:700;box-shadow:0 4px 0 #f1e2a8;max-width:820px;color:var(--ink-2)}
.note b{color:var(--accent-d)}
.cols{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:16px;align-items:start}
.card{background:var(--paper);border-radius:24px;padding:16px;box-shadow:0 6px 0 var(--line);display:grid;gap:14px;min-width:0}
.card h3{font-size:20px;font-weight:600;display:flex;align-items:center;gap:8px}
.card h3 small{font-family:var(--body);font-weight:800;font-size:13px;color:var(--ink-2)}
.bench{background:linear-gradient(var(--paper) 74%,var(--derby) 74%);}
.machine{display:grid;place-items:center;min-height:250px}
.machine svg{width:100%;max-width:300px;height:auto;overflow:visible}
.runrow{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.lastres{text-align:center;font-weight:800;color:var(--ink-2);min-height:24px}
.lastres b{color:var(--ink)}
.shake{animation:shake .32s ease-in-out}
@keyframes shake{0%,100%{transform:none}20%{transform:translate(-4px,1px) rotate(-2deg)}40%{transform:translate(4px,-1px) rotate(2deg)}60%{transform:translate(-3px,0) rotate(-1deg)}80%{transform:translate(3px,0) rotate(1deg)}}
.pop{animation:pop .28s ease-out}
@keyframes pop{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}

/* Kayıt tablosu */
.tbl{width:100%;border-collapse:collapse;font-weight:800}
.tblwrap{overflow-x:auto}
.tbl th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);text-align:left;padding:4px 6px;border-bottom:2px solid var(--line);white-space:nowrap}
.tbl td{padding:7px 6px;border-bottom:1px dashed var(--line);vertical-align:middle}
.tbl tr.hit td{background:#fbf8ff}
.tbl .who{display:flex;align-items:center;gap:8px;white-space:nowrap}
.tbl .num{font-size:17px}
.tbl .rf{white-space:nowrap}
.tbl .rf small{display:block;color:var(--ink-2);font-family:var(--body);font-size:12px}
.tally{display:flex;flex-wrap:wrap;gap:3px 6px;align-items:center;min-width:90px;max-width:220px}
.tally svg{height:16px;width:auto}
.tally em{font-style:normal;color:var(--ink-2);font-size:13px}
.total{display:flex;justify-content:space-between;gap:10px;font-weight:800;color:var(--ink-2);flex-wrap:wrap}
.total b{color:var(--ink)}

/* Boyama */
.palette{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.paint{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:999px;padding:6px 14px 6px 6px;background:var(--paper);box-shadow:inset 0 0 0 2px var(--line);font-weight:800;cursor:pointer}
.paint[aria-pressed="true"]{box-shadow:inset 0 0 0 3px var(--accent);background:#f7f5fc}
.paint .sw{width:26px;height:26px;border-radius:50%;display:grid;place-items:center}
.build{display:grid;place-items:center}
.build svg{width:100%;max-width:290px;height:auto}
.unit{cursor:pointer}
.unit:hover{filter:brightness(1.05)}
.unit:focus{outline:none}
.unit:focus-visible{stroke:var(--accent);stroke-width:4}
.mine{font-weight:800;color:var(--ink-2);text-align:center}
.mine b{color:var(--ink)}
.openrow{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.warn{color:var(--stop);font-weight:800}

/* Adımlar ve görev */
.steps{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.steps li{display:flex;align-items:center;gap:8px;background:var(--paper);border-radius:999px;padding:5px 14px 5px 5px;font-weight:800;color:var(--ink-2);box-shadow:0 3px 0 var(--line)}
.steps li i{font-style:normal;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--line);font-family:var(--display);font-weight:700;color:var(--ink-2)}
.steps li.now{color:var(--ink);box-shadow:0 3px 0 var(--accent),inset 0 0 0 2px var(--accent)}
.steps li.now i{background:var(--accent);color:#fff}
.steps li.done i{background:var(--go);color:#fff}
.goal{background:var(--paper);border-radius:22px;padding:14px 18px;box-shadow:0 6px 0 var(--line);display:grid;gap:4px;border-left:8px solid var(--honey)}
.goal .tag{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--honey-d)}
.goal .q{font-family:var(--display);font-weight:600;font-size:clamp(20px,3vw,26px);line-height:1.15}
.goal p{font-weight:700}
.goal .hl{color:var(--stop)}
.goal .ok2{color:var(--go)}
.q2{font-family:var(--display);font-weight:600;font-size:19px}
.mini{font-weight:700;color:var(--ink-2);font-size:14px}
.next{display:grid;gap:8px;justify-items:end;text-align:right}
.tbl tfoot td{font-weight:900;border-bottom:none;padding-top:9px}
.explain{background:var(--derby);border-radius:16px;padding:12px 14px;font-weight:700}
.explain span{display:block;margin-top:6px;color:var(--ink-2)}
.worth{font-weight:700;display:grid;gap:6px}
.worth div{display:flex;flex-wrap:wrap;gap:4px 6px}
.worth span{background:var(--violet);border-radius:8px;padding:0 7px;font-family:var(--display);font-weight:600;font-size:14px}
.cmpl{display:grid;gap:8px}
.crow .who{display:flex;align-items:center;gap:6px;font-weight:800;white-space:nowrap}
.crow{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
.cb{display:grid;gap:3px;min-width:0}
.cb div{position:relative;height:22px;background:#f4f2f9;border-radius:6px;overflow:hidden}
.cb i{position:absolute;left:0;top:0;bottom:0;border-radius:6px;transition:width .25s}
.cb span{position:relative;font-size:13px;font-weight:800;padding-left:8px;line-height:22px;white-space:nowrap}
.badge{font-family:var(--display);font-weight:600;font-size:14px;border-radius:999px;padding:2px 10px;background:var(--line);color:var(--ink-2);white-space:nowrap}
.badge.ok{background:var(--mint);color:var(--go)}
.hintbox{background:#fff7d6;border-radius:14px;padding:10px 14px;font-weight:700}
/* Açılış (sonuç) */
.reveal{display:grid;gap:16px}
.rhead{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.rhead h2{font-size:32px;font-weight:700}
.bigstars{display:flex;gap:6px}
.bigstars svg{width:46px;height:46px}
.bigstars svg:nth-child(2){transform:translateY(-8px)}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pair figure{margin:0;display:grid;gap:6px;justify-items:center;text-align:center;background:var(--paper);border-radius:20px;padding:12px;box-shadow:inset 0 0 0 2px var(--line)}
.pair figcaption{font-family:var(--display);font-weight:600;font-size:18px}
.pair svg{width:100%;max-width:230px;height:auto}
.cmp{display:grid;gap:10px}
.cmp .row{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;font-weight:800}
.cmp .bars{display:grid;gap:3px}
.cmp .b{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2)}
.cmp .b i{display:block;height:12px;border-radius:6px;min-width:3px}
.cmp .b span{white-space:nowrap}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;font-weight:800;color:var(--ink-2)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:22px;height:10px;border-radius:5px;display:inline-block}
.chart svg{width:100%;height:auto;display:block}
.lesson{background:var(--mint);border-radius:18px;padding:12px 16px;font-weight:700;display:grid;gap:6px}
.lesson b{color:var(--go)}
.simtbl{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.simtbl span{background:#fff;border-radius:10px;padding:4px 10px;font-weight:800}
.simtbl span.me{box-shadow:inset 0 0 0 2px var(--go)}
.ractions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

@media (max-width:820px){
  .cols{grid-template-columns:1fr}
  .shelf{grid-template-columns:repeat(2,minmax(0,1fr))}
  .howto{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
  body{padding-inline:12px}
  .howto{grid-template-columns:1fr}
  .pair{grid-template-columns:1fr}
  .cmp .row{grid-template-columns:1fr}
  .budget .bar{width:70px}
  .lvhead h2{font-size:23px}
  .tbl{font-size:14px}
  .tbl th{font-size:10px;padding:4px 3px;letter-spacing:.02em}
  .tbl td{padding:6px 3px}
  .tbl .nm{display:none}
  .tally{min-width:0;max-width:96px;gap:2px 4px}
  .tally svg{height:13px}
  .tbl .num{font-size:15px}
  .card h3{flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Mathlooq page and game theme. */
[hidden]{display:none!important}
:root{--aura:#e6f3ee;--violet:#e8e2f4;--pink:#f4dce4;--derby:#faf1dc;--mint:#dfefe3;--ink:#30323a;--ink-2:#606473;--accent:#847a9f;--accent-d:#64577e;--line:#e8e3ec;--honey:#f0dfb5;--honey-d:#c8af7b;--go:#53866b;--stop:#b96c85;--display:"Nunito",sans-serif;--body:"Source Sans 3",sans-serif}
html,body{margin:0;background:#fffaf8}
body{padding:0;background-image:none;font-family:var(--body)}
main{max-width:1180px;margin:auto;padding:28px 18px 48px}
.hero{text-align:center;padding:0 12px 2px}.eyebrow{font:800 13px Nunito,sans-serif;color:#648c83;letter-spacing:.1em;text-transform:uppercase}
.hero h1{font-weight:900;color:var(--ink)}.hero h1 em{font-style:normal;color:#bd7a91}.hero>p{max-width:720px;margin:0 auto;color:var(--ink-2)}
.hero-pills{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.hero-pills span{background:#fff;border:1px solid #e5e5df;padding:6px 13px;border-radius:999px;font-size:14px;font-weight:700}
.game-shell{background:linear-gradient(130deg,#f3f8f1,#f9f4fa);border:1px solid #e5e1e7;border-radius:26px;box-shadow:0 12px 34px #44405009;overflow:hidden;position:relative}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid #e8e4ea;background:#ffffffb0;font:800 17px Nunito,sans-serif}
.tools{display:flex;gap:8px;align-items:center}.tool{font:800 15px Nunito,sans-serif;background:#fff;border:1px solid #ddd9e3;border-radius:12px;padding:10px 15px;cursor:pointer}
.gm-app{padding:20px;max-width:none;gap:16px}
.workshop-brand h2{font-size:26px;font-weight:900}.workshop-brand p{color:var(--ink-2);font-size:15px}
.btn{font-family:Nunito,sans-serif;font-weight:800;background:#efdde3;color:#654454;border:1px solid #dcb7c4;box-shadow:0 2px 0 #d7bdc7;border-radius:12px}
.btn.vio{background:#c48098;border-color:#b9718a;box-shadow:0 2px 0 #a66d81}.btn.sec{border-color:#e0dce7;box-shadow:0 2px 0 #e2dce8}
.btn:hover{transform:translateY(-1px);box-shadow:0 3px 0 #d7bdc7}.btn:active{transform:translateY(1px);box-shadow:none}.btn[disabled]{box-shadow:none}
.chip{border:1px solid #e5dfea;box-shadow:none;font-family:Nunito,sans-serif;font-weight:800;font-size:15px}.howto,.card,.goal{box-shadow:none;border:1px solid #e5dfea}
.shelf{background:#faf4e8;border:1px solid #e9dfc9;box-shadow:none}.slot{border-bottom-color:#e5d4ba;box-shadow:0 3px 0 #c9b799}.slot b{font-weight:900}
.steps li{box-shadow:none;border:1px solid #e3dde9;font-size:14px}.steps li.now{box-shadow:none;border-color:#a799ba;background:#eee8f6}
.goal{border-left:5px solid #e7cf98}.note{box-shadow:none;background:#fcf3df;border:1px solid #eedfbe;border-radius:14px}.explain,.lesson{border:1px solid #e7dcc4}.bench{background:linear-gradient(#fff 78%,#faf3e4 78%)}
.pair figure{box-shadow:none;border:1px solid #e4dfea}.paint{font-family:var(--display);border-radius:12px;padding:8px 12px}
.teacher-guide{margin-top:34px;border:1px solid #e5e3e7;border-radius:24px;background:#fff;padding:24px}.teacher-guide__eyebrow{font:800 12px Nunito,sans-serif;letter-spacing:.12em;color:#76928a}.teacher-guide h2{font-size:28px;margin:8px 0}.teacher-guide p{color:#626572;line-height:1.55}.teacher-guide__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.teacher-guide h3{font-size:18px;margin-bottom:8px}
footer{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;padding:24px 16px;border-top:1px solid #ebe5e8;color:#767780;font-size:13px}footer a{color:inherit}
.gm-views{display:flex;justify-content:center;gap:8px;padding:6px 12px;flex-shrink:0}.gm-views button{border:1px solid #dcd5e5;border-radius:12px;background:white;font:800 22px Nunito,sans-serif;padding:7px 15px;min-height:52px;cursor:pointer}.gm-views button[aria-pressed=true]{background:#e7e0f1;border-color:#9e8caf}
@media(max-width:700px){main{padding:22px 10px 32px}.gm-app{padding:12px}.teacher-guide{padding:18px}.teacher-guide__grid{grid-template-columns:1fr}.workshop-brand h2{font-size:23px}.toolbar{padding:10px 12px}}
/* Classroom layouts: additional explanations remain reachable through views. */
.gm-shell.is-classroom[data-gm-view=comparison] .rhead{display:none}
.gm-shell.is-classroom[data-gm-view=ratios] .worth,.gm-shell.is-classroom[data-gm-view=ratios] .q2{display:none}
.gm-shell.is-classroom .tbl td{padding:4px 6px}
.gm-shell.is-classroom .toolbar{padding:5px 12px;flex-shrink:0}.gm-shell.is-classroom .toolbar>strong{display:none}.gm-shell.is-classroom .tools{margin-left:auto}.gm-shell.is-classroom .tool,.gm-shell.is-classroom .btn,.gm-shell.is-classroom .chip{min-height:52px;font-size:22px;padding:8px 14px}
.gm-shell.is-classroom .gm-app{display:flex;flex-direction:column;flex:1;min-height:0;gap:8px;padding:8px 12px;overflow:hidden}
.gm-shell.is-classroom .lvhead{flex-shrink:0}.gm-shell.is-classroom .lvhead h2{font-size:24px}.gm-shell.is-classroom .budget{font-size:22px;box-shadow:none}.gm-shell.is-classroom .steps{display:none}
.gm-shell.is-classroom .card{padding:10px;gap:6px;min-height:0;box-shadow:none;display:flex;flex-direction:column}.gm-shell.is-classroom .card h3{font-size:24px}.gm-shell.is-classroom .card h3 small{font-size:22px}
.gm-shell.is-classroom .cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);flex:1;min-height:0;gap:10px;align-items:stretch}
.gm-shell.is-classroom .goal{padding:8px 12px;gap:4px;flex-shrink:0}.gm-shell.is-classroom .goal .q,.gm-shell.is-classroom .q2{font-size:32px}.gm-shell.is-classroom .goal .tag{display:none}
.gm-shell.is-classroom p,.gm-shell.is-classroom .mini,.gm-shell.is-classroom .link,.gm-shell.is-classroom .mine,.gm-shell.is-classroom .tbl,.gm-shell.is-classroom .tbl th,.gm-shell.is-classroom .tbl .num,.gm-shell.is-classroom .tbl .rf small{font-size:22px;line-height:1.2}
.gm-shell.is-classroom .tbl td{padding:4px 6px}.gm-shell.is-classroom .tbl th{letter-spacing:0;text-transform:none;white-space:normal}.gm-shell.is-classroom .tblwrap{overflow:visible}.gm-shell.is-classroom .tally{max-width:none}.gm-shell.is-classroom .tally svg{height:22px}.gm-shell.is-classroom .next{margin-top:auto;gap:4px}.gm-shell.is-classroom .machine,.gm-shell.is-classroom .build{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.gm-shell.is-classroom .machine svg,.gm-shell.is-classroom .build svg{height:100%;max-height:100%;width:auto;max-width:100%;min-height:0}
.gm-shell.is-classroom .palette{gap:6px}.gm-shell.is-classroom .paint{font-size:28px;min-height:52px;padding:6px 10px}.gm-shell.is-classroom .lastres{font-size:22px}.gm-shell.is-classroom .runrow{flex-shrink:0}.gm-shell.is-classroom .openrow{flex-shrink:0}.gm-shell.is-classroom .warn:empty{display:none}
.gm-shell.is-classroom .howto{font-size:22px;padding:10px;gap:8px}.gm-shell.is-classroom .howto div,.gm-shell.is-classroom .howto .intro{font-size:22px;line-height:1.2}.gm-shell.is-classroom .shelf{flex:1;min-height:0;padding:12px;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.gm-shell.is-classroom .slot{min-height:0;padding:4px}.gm-shell.is-classroom .slot svg{max-height:100%;height:auto;max-width:200px;min-height:0}.gm-shell.is-classroom .slot b{font-size:28px}.gm-shell.is-classroom .slot small{font-size:22px}.gm-shell.is-classroom .workshop-brand p{font-size:22px}.gm-shell.is-classroom .top{flex-shrink:0}
.gm-shell.is-classroom[data-gm-view=experiment] .goal>p:not(.q),.gm-shell.is-classroom[data-gm-view=experiment] .note{display:none}
.gm-shell.is-classroom[data-gm-view=info] .cols{display:none}.gm-shell.is-classroom[data-gm-view=info] .goal{flex:1;justify-content:center}.gm-shell.is-classroom[data-gm-view=info] .note{font-size:22px}
.gm-shell.is-classroom[data-gm-view=paint] .explain,.gm-shell.is-classroom[data-gm-view=paint] .worth,.gm-shell.is-classroom[data-gm-view=paint] .cmpl,.gm-shell.is-classroom[data-gm-view=paint] .hintbox{display:none}
.gm-shell.is-classroom[data-gm-view=paint] .cols>.card:nth-child(2)>.mini{display:none}
.gm-shell.is-classroom[data-gm-view=ratios] .build,.gm-shell.is-classroom[data-gm-view=ratios] .palette,.gm-shell.is-classroom[data-gm-view=ratios] .cols>.card:nth-child(2)>.mini,.gm-shell.is-classroom[data-gm-view=ratios] .hintbox,.gm-shell.is-classroom[data-gm-view=ratios] .explain{display:none}
.gm-shell.is-classroom .worth span,.gm-shell.is-classroom .cb span,.gm-shell.is-classroom .badge{font-size:22px}.gm-shell.is-classroom .cb div{height:30px}.gm-shell.is-classroom .cb span{line-height:30px}.gm-shell.is-classroom .crow{gap:6px}.gm-shell.is-classroom .crow .who{font-size:22px}.gm-shell.is-classroom .cmpl{gap:10px}
.gm-shell.is-classroom[data-gm-view=help] .cols>.card:first-child .tblwrap,.gm-shell.is-classroom[data-gm-view=help] .cols>.card:nth-child(2)>:not(h3):not(.mini):not(.worth):not(.hintbox):not(.openrow):not(.warn){display:none}
.gm-shell.is-classroom .hintbox{font-size:22px;line-height:1.2}.gm-shell.is-classroom .explain{font-size:22px;line-height:1.2}
.gm-shell.is-classroom .reveal{flex:1;min-height:0}.gm-shell.is-classroom .rhead{flex-shrink:0}.gm-shell.is-classroom .rhead h2{font-size:32px}.gm-shell.is-classroom .bigstars svg{width:30px;height:30px}.gm-shell.is-classroom .pair{flex:1;min-height:0}.gm-shell.is-classroom .pair figure{min-height:0;padding:8px}.gm-shell.is-classroom .pair svg{height:100%;width:auto;max-height:100%;max-width:100%;min-height:0}.gm-shell.is-classroom .pair figcaption{font-size:28px}.gm-shell.is-classroom .ractions{margin-top:auto;flex-shrink:0}
.gm-shell.is-classroom .cmp{flex:1;align-content:center}.gm-shell.is-classroom .cmp .row{grid-template-columns:150px 1fr}.gm-shell.is-classroom .cmp .b{font-size:22px;line-height:1.2}.gm-shell.is-classroom .cmp .b i{height:18px}.gm-shell.is-classroom .lesson{font-size:22px;line-height:1.2;gap:8px}.gm-shell.is-classroom .simtbl span{font-size:22px}.gm-shell.is-classroom .legend{font-size:22px}
.gm-shell.is-classroom[data-gm-view=machines] .cmp,.gm-shell.is-classroom[data-gm-view=machines] .reveal>.card,.gm-shell.is-classroom[data-gm-view=machines] .lesson{display:none}
.gm-shell.is-classroom[data-gm-view=comparison] .pair,.gm-shell.is-classroom[data-gm-view=comparison] .reveal>.card,.gm-shell.is-classroom[data-gm-view=comparison] .lesson{display:none}
.gm-shell.is-classroom[data-gm-view=chart] .pair,.gm-shell.is-classroom[data-gm-view=chart] .cmp,.gm-shell.is-classroom[data-gm-view=chart] .lesson{display:none}
.gm-shell.is-classroom[data-gm-view=lesson] .pair,.gm-shell.is-classroom[data-gm-view=lesson] .cmp,.gm-shell.is-classroom[data-gm-view=lesson] .reveal>.card{display:none}
.gm-shell.is-classroom[data-gm-view=chart] .reveal>.card{flex:1;min-height:0}.gm-shell.is-classroom .chart{flex:1;min-height:0}.gm-shell.is-classroom .chart svg{height:100%;max-height:100%;width:100%}
@media(orientation:portrait){.gm-shell.is-classroom .shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.gm-shell.is-classroom .cols{grid-template-columns:1fr 1fr}.gm-shell.is-classroom .howto{grid-template-columns:1fr}.gm-shell.is-classroom .pair{grid-template-columns:1fr 1fr}}

.tally-guide{display:none}
.gm-shell.is-classroom[data-gm-view=info] .tally-guide{display:block}
.gm-shell.is-classroom[data-gm-view=experiment] .card>.mini,.gm-shell.is-classroom[data-gm-view=experiment] .next>.mini{display:none}

.gm-shell.is-classroom .tally em{font-size:22px}
.gm-shell.is-classroom[data-gm-view=lesson] .rhead{display:none}

/* Existing Mathlooq entry typography and start-card structure. */
.hero .eyebrow{color:#7c72b7;display:inline-block;font:900 .77rem/1.2 Nunito,sans-serif;letter-spacing:.14em;text-transform:uppercase}
#startLayer.layer{align-items:center;display:none;inset:0;justify-content:center;padding:18px;position:absolute;z-index:40}
#startLayer.layer.show{display:flex}
#startLayer .modal{text-align:center}
#startLayer .modal-icon{font-size:2.8rem}
#startLayer .modal-kicker{color:#7c72b7;display:block;font:900 .72rem Nunito,sans-serif;letter-spacing:.12em;margin:7px 0;text-transform:uppercase}
#startLayer h2{font-family:Nunito,sans-serif;font-weight:900;margin:0 0 10px}
#startLayer p{color:#666b78;font:600 1rem/1.55 Nunito,sans-serif;margin:0 auto 17px;max-width:500px}
#startLayer .modal-steps{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:19px 0}
#startLayer .modal-steps span{background:#f7f4f6;border-radius:13px;font:800 .79rem/1.3 Nunito,sans-serif;padding:11px 7px}
#startLayer .modal-steps b{display:block;font-size:1.35rem;margin-bottom:4px}
#startLayer .start-btn{background:linear-gradient(135deg,#363944,#555969);border:0;border-radius:13px;box-shadow:0 10px 24px rgba(48,50,58,.18);color:#fff;cursor:pointer;font:900 .95rem Nunito,sans-serif;min-height:52px;padding:13px 22px}
#startLayer .start-btn:focus-visible{outline:3px solid #dc6d8b;outline-offset:3px}
@media(max-width:620px){#startLayer .modal-steps{grid-template-columns:1fr}#startLayer .modal-steps span{display:flex;align-items:center;gap:9px;text-align:left}#startLayer .modal-steps b{margin:0}}

.gm-shell.is-starting:not(.is-fullscreen) .gm-app{max-height:550px;min-height:500px;overflow:hidden}
@media(max-width:620px){.gm-shell.is-starting:not(.is-fullscreen) .gm-app{min-height:590px;max-height:590px}}
