/* IZI Class — Gamification v1.2: dùng bảng màu gốc của web (--puce, --auburn, --gold, --teal, --vanilla, --edge) */
.gm-strip{display:flex;gap:6px;list-style:none;margin:0;padding:2px 2px 6px;overflow-x:auto;scroll-snap-type:x proximity}
.gm-strip li{flex:1 0 82px;min-width:82px;display:grid;justify-items:center;gap:2px;text-align:center;scroll-snap-align:start;padding:6px 4px;border:2px solid var(--edge);border-radius:16px;background:var(--paper);opacity:.55}
.gm-strip li.done{opacity:1;border-color:var(--teal)}.gm-strip li.now{opacity:1;border-color:var(--gold);background:var(--vanilla);box-shadow:0 3px 0 var(--gold)}
.gm-strip b{font-size:11px;color:var(--puce);line-height:1.15}.gm-strip small{font-size:10px;color:var(--soft);font-weight:700}
.gm-mini{width:62px;height:58px;overflow:hidden;position:relative}.gm-mini svg{position:absolute;width:150%;max-width:none;height:auto;left:-25%;top:-14%}.gm-strip li.now .gm-mini{width:72px;height:68px}
.gm-fruit{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:2px solid var(--edge);border-radius:20px;padding:10px 14px;text-align:left}
.gm-fruit-n{display:flex;align-items:center;gap:8px}.gm-fruit-n span{font-size:30px}.gm-fruit-n b{font-family:var(--head);font-size:30px;color:var(--puce);line-height:1}.gm-fruit-n small{color:var(--soft);font-weight:800}
.gm-fruit-act{display:grid;gap:4px;justify-items:end;text-align:right}.gm-fruit-act small{font-size:11.5px;color:var(--soft);font-weight:700;max-width:230px}
.gm-miles{display:flex;justify-content:space-between;list-style:none;margin:0;padding:0;gap:4px}
.gm-miles li{flex:1;display:grid;justify-items:center;gap:2px;font-size:11px;color:#b9a58c;font-weight:800}.gm-miles li i{width:18px;height:18px;border-radius:50%;border:2px solid var(--edge);background:#fff;display:block}
.gm-miles li.on{color:var(--teal)}.gm-miles li.on i{background:var(--gold);border-color:var(--puce)}.gm-miles small{font-size:10px;font-weight:700}
.gm-reqs{margin:0;padding:8px 12px;list-style:none;background:var(--vanilla);border:2px solid var(--gold);border-radius:14px;font-size:13px;font-weight:800;color:var(--puce);text-align:left}
#gmToasts{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);display:grid;gap:8px;z-index:100000;width:min(92vw,360px)}
.gm-toast{background:var(--puce);color:var(--vanilla);border:2px solid var(--gold);border-radius:18px;padding:10px 16px;box-shadow:0 8px 24px #0003;display:grid;gap:2px;animation:gmIn .3s ease;transition:opacity .4s}.gm-toast b{font-family:var(--head);font-size:22px;color:var(--gold)}.gm-toast span{font-size:13px;font-weight:700}.gm-toast.out{opacity:0}
@keyframes gmIn{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.gm-dlg{position:fixed;inset:0;background:#2b0a0c88;display:grid;place-items:center;z-index:99999;padding:14px}.gm-dlg>section{position:relative;background:var(--paper);border:2px solid var(--edge);border-radius:22px;padding:18px 20px;width:min(94vw,440px);max-height:90vh;overflow:auto;display:grid;gap:10px;text-align:center}
.gm-wide>section{width:min(96vw,760px);text-align:left}.gm-dlg h3{margin:0;font-family:var(--head);color:var(--puce)}.gm-dlg label{display:grid;gap:4px;text-align:left;font-weight:800;color:var(--puce);font-size:14px}.gm-dlg input[type=number],.gm-dlg input[type=text]{padding:10px;border:2px solid var(--edge);border-radius:12px;font-size:16px}
.gm-x{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:26px;cursor:pointer;color:var(--puce)}.gm-btns{display:flex;gap:8px;justify-content:center}.gm-err{color:var(--auburn);font-weight:800;margin:0}.gm-big-tree{max-width:200px;margin:0 auto}
.gm-staff-card{display:flex;align-items:center;gap:12px;background:var(--vanilla);border:2px solid var(--gold);border-radius:18px;padding:10px 14px;margin:0 0 14px}.gm-staff-card span{font-size:28px}.gm-staff-card div{flex:1}.gm-staff-card small{display:block;color:var(--soft);font-weight:700}
.gm-badge{display:inline-block;min-width:20px;padding:0 6px;border-radius:99px;background:var(--auburn);color:#fff;font-style:normal;font-size:12px;margin-left:6px}
.gm-tabs{display:flex;gap:6px;flex-wrap:wrap}.gm-tabs button{border:2px solid var(--edge);background:#fff;border-radius:99px;padding:5px 12px;font-weight:800;color:var(--soft);cursor:pointer}.gm-tabs button.on{background:var(--vanilla);border-color:var(--gold);color:var(--puce)}
.gm-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:2px solid var(--edge);border-radius:16px;padding:10px 12px;background:#fff;flex-wrap:wrap}.gm-row small{display:block;color:var(--soft);font-weight:700}.gm-row-act{display:flex;gap:6px}.gm-empty{color:var(--soft);font-weight:700}
@media (max-width:560px){.gm-fruit{flex-direction:column;align-items:stretch}.gm-fruit-act{justify-items:stretch;text-align:left}.gm-fruit-act small{max-width:none}}
@media (prefers-reduced-motion:reduce){.gm-toast{animation:none}.stu-xp-bar i{transition:none}}
