/* Page chrome is Mathlooq; game colors and fullscreen logic stay original. */
body{margin:0}.back{font:900 15px "Nunito",sans-serif;text-decoration:none}.site-footer{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;padding:28px 16px;color:#777b85;font:14px "Source Sans 3",sans-serif;background:#fffaf8}.site-footer a{color:inherit}body>.teacher-guide{max-width:1232px;width:calc(100% - 48px);color-scheme:light}body>.teacher-guide h2,body>.teacher-guide h3{text-transform:none}.topbar .brand{letter-spacing:0;text-transform:none}.kasa-playing>.teacher-guide{margin-top:28px}.kasa-setup{--steel:#fffaf8;--plate:#fff;--plate2:#f5f3fa;--rivet:#e3dce8;--edge:#dcd5e5;--ink:#30323a;--dim:#666b78;--brass:#7c72b7;--brass2:#c2b4d9;--f-display:"Nunito",sans-serif;--f-body:"Source Sans 3",sans-serif;color-scheme:light;background:radial-gradient(circle at 8% 13%,#ffe0e4b8,transparent 25%),radial-gradient(circle at 91% 8%,#d2f4f7e6,transparent 28%),#fffaf8;font-family:"Source Sans 3",sans-serif}.kasa-setup .wrap{max-width:1280px;padding:30px 24px 40px}.kasa-setup .hero{display:block;text-align:center;margin:0}.hero .eyebrow{color:#7c72b7;display:inline-block;font:900 .77rem/1.2 "Nunito",sans-serif;letter-spacing:.14em;text-transform:uppercase}.hero h1{font-family:"Nunito",sans-serif;font-weight:900;letter-spacing:-.035em}.hero h1 em{color:#dc6d8b;font-style:normal}.hero>p{font-family:"Source Sans 3",sans-serif;font-weight:400;color:#666b78;margin:0 auto;max-width:700px}.hero-pills{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.hero-pills span{background:#ffffffd1;border:1px solid #e7dde2;border-radius:999px;box-shadow:0 5px 14px #30323a0a;font:800 .82rem "Nunito",sans-serif;padding:8px 12px}.kasa-start-shell{position:relative;background:linear-gradient(145deg,#e6f3f1,#eeebf8);border:1px solid #d1ccebcc;border-radius:26px;box-shadow:0 22px 58px #30323a1a;overflow:hidden}.start-toolbar{display:flex;justify-content:flex-end;padding:13px 16px;background:#fff;border-bottom:1px solid #e7dde2}.kasa-setup .icon-btn{background:#fff;border:1px solid #ddd3d8;border-radius:10px;color:#30323a;font:900 .78rem "Nunito",sans-serif;min-height:44px;padding:9px 11px}.kasa-start-shell .layer{position:relative;display:flex;justify-content:center;padding:24px 18px}.modal{text-align:center}.modal-icon{font-size:2.8rem}.modal-kicker{color:#7c72b7;display:block;font:900 .72rem "Nunito",sans-serif;letter-spacing:.12em;margin:7px 0;text-transform:uppercase}.modal h2{font-family:"Nunito",sans-serif;font-weight:900;margin:0 0 10px;letter-spacing:-.025em}.modal>p{font:600 1rem/1.55 "Nunito",sans-serif;color:#666b78;margin:0 auto 22px;max-width:500px}.setup-fields{text-align:left;font-size:16px}.setup-fields .field{margin-bottom:16px}.setup-fields .in{background:#fbfaff;border-color:#e3dfec;font-family:"Source Sans 3",sans-serif}.setup-fields .seg button{font-family:"Nunito",sans-serif;font-size:15px;background:#f7f6fb;border-color:#e5e1ed;color:#515168}.setup-fields .seg button[aria-pressed="true"]{background:#e9e0f4;border-color:#cab8df;color:#4e3e65}.setup-fields .hint{line-height:1.45}.modal-steps{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:19px 0}.modal-steps span{background:#f7f4f6;border-radius:13px;font:800 .79rem/1.3 "Nunito",sans-serif;padding:11px 7px}.modal-steps b{display:block;font-size:1.35rem;margin-bottom:4px}.start-btn{background:linear-gradient(135deg,#363944,#555969);border:0;border-radius:13px;box-shadow:0 10px 24px #30323a2e;color:#fff;font:900 .95rem "Nunito",sans-serif;padding:13px 22px}.modal .rules{margin-top:22px;text-align:left;font:15px/1.55 "Source Sans 3",sans-serif}.modal .rules summary{cursor:pointer;text-align:center;color:#7c72b7;font:800 15px "Nunito",sans-serif}.modal .rules ol{margin-top:16px}html:fullscreen body>.topbar,html:fullscreen .teacher-guide,html:fullscreen .site-footer{display:none}html:-webkit-full-screen body>.topbar,html:-webkit-full-screen .teacher-guide,html:-webkit-full-screen .site-footer{display:none}@media(max-width:620px){.kasa-setup .wrap{padding:22px 16px 30px}.kasa-start-shell{border-radius:19px}.kasa-start-shell .layer{padding:18px 12px}body>.teacher-guide{width:calc(100% - 32px)}}

/* Shared toolbar proportions, with the vault's existing dark colors. */
#restart{background:var(--plate2);border:1px solid var(--edge);border-radius:10px;color:var(--ink);font:900 .78rem "Nunito",sans-serif;min-height:44px;padding:9px 11px;box-shadow:none;transition:background .15s,border-color .15s}
#restart:hover{background:var(--plate);border-color:var(--brass)}
#restart:active{transform:none;box-shadow:none}

/* Preview of the actual vault behind the shared translucent opening layer. */
.kasa-start-preview{position:absolute;inset:70px 0 0;overflow:hidden;background:#151c22;padding:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;color:#eef2f5;pointer-events:none}
.kasa-start-preview .door{align-self:start;width:100%}
.kasa-start-preview .preview-locks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
.kasa-start-preview .preview-lock{background:linear-gradient(#26313b,#1d252d);border:2px solid #3b4956;border-radius:18px;padding:24px;color:#e6b450;font:700 26px "Chakra Petch",sans-serif;min-height:160px}
.kasa-start-preview .preview-lock small{display:block;color:#9aa8b4;font:16px "Nunito",sans-serif;margin-top:18px}
@media(max-width:620px){.kasa-start-preview{grid-template-columns:1fr}.kasa-start-preview .preview-locks{display:none}}

/* Keep the teacher guide on the opening page only. */
body.kasa-playing>.teacher-guide{display:none}
