:root{font-family:system-ui,-apple-system,"Noto Sans Khmer",sans-serif;color:var(--tg-theme-text-color,#12263d);background:var(--tg-theme-bg-color,#f3f7fa);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}.app{max-width:640px;margin:auto;min-height:100dvh;padding-bottom:calc(78px + env(safe-area-inset-bottom))}
.topbar{display:flex;align-items:center;justify-content:space-between;background:#132d44;color:#fff;padding:14px 18px;position:sticky;top:0;z-index:2}.brand{display:flex;align-items:center;gap:10px}.brand strong{display:block;font-size:18px}.brand small{display:block;color:#bad0e3;font-size:11px}.logo{font-size:26px}.language{border:1px solid #86b2d0;border-radius:12px;background:#274966;color:#fff;padding:10px 14px;font-weight:700}
main{padding:18px;outline:none}.pill{display:inline-block;padding:6px 10px;border-radius:100px;background:#eaf3fb;color:#14588b;font-size:12px;font-weight:700}.eyebrow{font-size:12px;letter-spacing:.07em;text-transform:uppercase;opacity:.7}.hero{background:linear-gradient(120deg,#1b587e,#136d70);color:white;padding:25px;border-radius:20px;margin-bottom:20px}.hero h1{font-size:23px;margin:10px 0}.hero p{line-height:1.65;margin:0 0 18px;color:#e0f7f4}.hero button,.primary{background:#fff;color:#154d67;border:none;border-radius:12px;padding:12px 15px;font-weight:700;text-decoration:none;display:inline-block}
h1{font-size:22px;margin:6px 0 16px}h2{font-size:17px;margin:22px 0 12px}.muted{color:#657488;line-height:1.6}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.grade,.tile,.subject{border:1px solid #d7e3ec;background:var(--tg-theme-secondary-bg-color,#fff);border-radius:16px;color:inherit;cursor:pointer;text-align:left;box-shadow:0 2px 8px #132d440a}.grade{padding:13px;text-align:center}.grade small{font-size:11px;display:block;color:#68798b}.grade strong{font-size:25px}.tile{padding:17px;min-height:110px}.tile .emoji{font-size:28px;display:block;margin-bottom:8px}.tile strong{display:block;font-size:14px}.subjects{display:grid;gap:10px}.subject{padding:14px;display:flex;align-items:center;gap:12px;width:100%}.subject .emoji{font-size:25px}.subject .details{flex:1;min-width:0}.subject strong,.subject small{display:block}.subject small{font-size:12px;color:#66798a;margin-top:4px}.panel{border:1px solid #d7e3ec;background:var(--tg-theme-secondary-bg-color,#fff);border-radius:18px;padding:18px;margin:14px 0;line-height:1.6}.notice{border-left:4px solid #e5aa3b;background:#fff9ec;color:#6f541e;padding:14px;border-radius:8px;font-size:13px}.back{display:block;border:0;background:none;color:#156d91;font-weight:700;padding:8px 0;margin-bottom:10px}.link{display:inline-block;padding:12px 15px;background:#176887;color:#fff;text-decoration:none;border-radius:12px;font-weight:700;margin-top:10px}.tabs{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,640px);display:flex;background:var(--tg-theme-secondary-bg-color,#fff);border-top:1px solid #d7e3ec;padding:7px 4px calc(7px + env(safe-area-inset-bottom));z-index:3}.tabs button{flex:1;min-width:0;border:0;background:none;color:#607688;display:grid;justify-items:center;gap:3px;padding:7px 1px;font-size:10px}.tabs button span{font-size:20px}.tabs button.active{color:#147293;font-weight:800}.tag{font-size:11px;border-radius:8px;background:#e4f6ec;color:#24724f;padding:4px 6px;display:inline-block}.smallprint{font-size:12px;color:#647585;line-height:1.55}
@media(min-width:500px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
