
.pat{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;font-size:30px;line-height:1.2;direction:ltr;margin:12px 0}
.pat .bx{min-width:46px;height:46px;border:4px dashed var(--pur);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--pur);font-size:26px;font-weight:700}
.eqn.sq{font-size:40px;flex-wrap:nowrap;direction:ltr;gap:5px}
.eqn.sq i{font-style:normal;color:#7C3AED}
.eqn.sq .bx{min-width:52px;height:54px}
@media (max-width:400px){.eqn.sq{font-size:36px}.eqn.sq .bx{min-width:46px;height:50px}}

.pw{display:block;margin:2px auto 0;max-width:100%;height:auto}
.pwc{max-width:300px;margin-top:2px}
.fam{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;max-width:330px;margin:6px auto;font-size:24px;font-weight:700;direction:ltr}
.fam div{background:#F5F3FF;border-radius:12px;padding:6px 4px;white-space:nowrap}
.fam div.cur{background:#FEF9C3;outline:3px solid #FACC15}
.fam .bx{display:inline-flex;min-width:34px;height:34px;border:3px dashed var(--pur);border-radius:10px;align-items:center;justify-content:center;color:var(--pur);vertical-align:middle}

/* v3: bigger, clearer text and pictures (her notes 10:40/10:42) */
.qcard{padding:16px 12px 18px}
.qt{font-size:26px;line-height:1.5;color:#1E1B4B;margin:2px 0 12px}
.qt .rd,.qt span{font-weight:800}
.qt .num{font-size:30px}
.playb{width:42px!important;height:42px!important;font-size:18px!important}
.eqn{font-size:48px}
.opt{font-size:38px;min-width:78px;min-height:72px;border-radius:22px}
.opt.txt{font-size:23px}
.opt.grp{font-size:28px;max-width:160px}
.qcard .ls{background:#FFF7ED}
.qcard .ls p{font-size:23px;line-height:1.85;color:#1E1B4B;font-weight:600}
.ls p{font-size:21px;line-height:1.7}
.objs{font-size:48px;gap:6px;max-width:350px}
.objs.sm{font-size:38px}
.big{font-size:66px}
.frame{grid-template-columns:repeat(5,42px);grid-template-rows:repeat(2,42px);gap:5px;border-width:5px}
.frame i{border-width:3px}
.tap{font-size:40px;gap:8px;max-width:350px}
.tap button{font-size:40px;width:64px;height:64px}
.dz{font-size:28px}
.nl{max-width:380px}
.pw{width:300px}
.pwc{font-size:34px;direction:ltr;gap:5px}
.fam{font-size:27px}
.chart span{font-size:17px}
.astro-say .bub{font-size:18px}
.fb{font-size:21px;font-weight:800}
@media (max-width:400px){.opt{min-width:72px}}

.dcard{display:flex;gap:10px;justify-content:center;margin:8px 0}
.hands{display:flex;gap:6px;justify-content:center;direction:ltr;margin:6px 0}
.opt.pic{min-height:96px;padding:6px 8px;background:#F5F3FF}
.opt.pic .mini{display:inline-block;transform:scale(.55);transform-origin:center;margin:-34px -40px}
.opt.pic .mini .dcard{margin:0}

/* v5: counting containers (no cutlery), titles never clipped on small/zoomed phones */
html,body{max-width:100%;overflow-x:hidden}
#app{max-width:100%;box-sizing:border-box}
.qcard,.panel,.wcard{box-sizing:border-box;max-width:100%}
.qt{flex-wrap:wrap;font-size:clamp(19px,6.6vw,26px);row-gap:4px}
.qt>span{flex:1 1 0;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal;white-space:normal;text-align:center}
.qt .num{font-size:1.12em}
.qt .playb{flex:0 0 auto}
.qhead{flex-wrap:wrap;justify-content:center;max-width:100%}
.qhead .pill{white-space:nowrap}
.qhead .qbar{min-width:60px;flex:1 1 60px}
.fb,.astro-say .bub,.res h2,.res p{overflow-wrap:anywhere;max-width:100%}
.btn{max-width:100%;white-space:normal}
.row{flex-wrap:wrap;max-width:100%}
.opts,.choices{flex-wrap:wrap;max-width:100%}
.eqn{font-size:clamp(32px,12vw,48px);max-width:100%;flex-wrap:wrap}
.opt{font-size:clamp(28px,9.5vw,38px);min-width:min(78px,20vw)}
.objs{max-width:100%}
.nl,.pw,svg{max-width:100%}
.cont{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:min(300px,88%);margin:12px auto 14px}
.cont .cobj{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;font-size:52px;line-height:1.1;max-width:100%}
.cont .cobj.s2{font-size:44px}
.cont .cobj.s3{font-size:36px}
.cont-plate{min-height:150px;padding:26px 36px;border-radius:50%;background:radial-gradient(ellipse at center,#fff 0 55%,#DBEAFE 56% 62%,#fff 63%);border:7px solid #60A5FA;box-shadow:0 7px 0 #BFDBFE}
.cont-basket{min-height:118px;margin-top:58px;padding:18px 16px 22px;border-radius:14px 14px 50px 50px;background:repeating-linear-gradient(45deg,#FBBF24 0 11px,#F59E0B 11px 22px);border:6px solid #92400E}
.cont-basket:before{content:"";position:absolute;z-index:0;left:20%;right:20%;top:-60px;height:66px;border:8px solid #92400E;border-bottom:0;border-radius:90px 90px 0 0}
.cont-box{min-height:120px;margin-top:30px;padding:18px 14px;border-radius:6px;background:#E9B47E;border:6px solid #9A5B2B;box-shadow:inset 0 10px 0 #D39A62}
.cont-box:before,.cont-box:after{content:"";position:absolute;top:-30px;width:46%;height:24px;background:#D39A62;border:5px solid #9A5B2B}
.cont-box:before{left:-4px;transform:skewX(-20deg)}
.cont-box:after{right:-4px;transform:skewX(20deg)}
.cont-tank{min-height:130px;padding:18px 14px 28px;border-radius:14px 14px 24px 24px;background:linear-gradient(#E0F2FE,#7DD3FC);border:6px solid #0369A1;box-shadow:inset 0 -18px 0 #FDE68A}
.cont.mini{display:inline-block;width:62px;min-height:0;height:34px;padding:0;margin:4px;border-width:4px;box-shadow:0 3px 0 #BFDBFE;vertical-align:middle}
.dz .cont.mini{width:56px;height:30px}
.pl0{display:inline-flex;align-items:center;gap:6px;direction:ltr}
.pl0 .cont.mini{width:70px;height:38px}
.pl0 b{font-size:26px;color:#1E1B4B}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.frame{grid-template-columns:repeat(5,min(42px,11.5vw));grid-template-rows:repeat(2,min(42px,11.5vw))}

/* v6 quality pass (Oct 30): contrast, per-child profiles, grown-up lock, no-sound prompt, landscape */
.btn.pk{color:#1E1B4B}
.nosnd{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom));z-index:9000;border:0;border-radius:999px;background:#FACC15;color:#1E1B4B;font:800 19px/1.2 "Baloo Bhaijaan 2",sans-serif;padding:12px 20px;box-shadow:0 6px 18px rgba(0,0,0,.45);cursor:pointer;animation:nsp 1.4s ease-in-out infinite;white-space:nowrap;max-width:94vw}
@keyframes nsp{0%,100%{box-shadow:0 6px 18px rgba(0,0,0,.45)}50%{box-shadow:0 0 0 6px rgba(250,204,21,.35),0 6px 18px rgba(0,0,0,.45)}}
.kids{display:flex;flex-direction:column;gap:10px}
.kid{display:flex;align-items:center;gap:12px;width:100%;font:inherit;font-size:21px;border:0;border-radius:20px;background:#fff;color:#1E1B4B;padding:10px 14px;box-shadow:0 5px 0 rgba(0,0,0,.25);cursor:pointer;text-align:right}
.kid .ke{font-size:32px}.kid b{flex:1}.kid .ks{font-size:17px;color:#92400E;font-weight:800}
.kid.add{background:rgba(255,255,255,.12);color:#fff;border:2px dashed rgba(255,255,255,.5);box-shadow:none}
.btn.hold{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
.btn.hold .holdbar{position:absolute;right:0;bottom:0;height:5px;width:0;background:#FACC15;border-radius:3px}
.hhint{position:fixed;left:50%;top:18%;transform:translateX(-50%);z-index:9500;background:#1E1B4B;color:#fff;border:2px solid #FACC15;border-radius:16px;padding:10px 16px;font-weight:800;font-size:17px;box-shadow:0 8px 20px rgba(0,0,0,.4);text-align:center;max-width:90vw}
@media (orientation:landscape) and (max-height:560px){
 .top{margin-bottom:4px}.top h1{font-size:18px}.top small{display:none}.top .lg{width:28px;height:30px}
 .qhead{margin:2px 0 4px}
 .qcard{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"qt qt" "qb qx" "fb fb" "nx nx";align-items:center;column-gap:12px;min-height:0;padding:8px 10px 10px}
 .qcard>.qt{grid-area:qt;font-size:21px;margin:0 0 4px}
 .qcard>#qb{grid-area:qb;min-width:0}
 .qcard>#qx{grid-area:qx;min-width:0}
 .qcard>#qx:only-child,.qcard>#qb:empty+#qx{grid-column:1/-1}
 .qcard>.fb{grid-area:fb;margin:4px 0 0;min-height:0}
 .qcard>.row{grid-area:nx;margin-top:4px!important}
 .qcard .opts{gap:8px}
 .qcard .opt{min-height:56px;font-size:30px}
 .qcard .big{font-size:56px}
 .qcard .cont{transform:scale(.8);transform-origin:center top;margin-bottom:-30px}
 .astro-say{display:none}
 .foot{display:none}
}
