/* Deadline Mini Game – tách biệt, chỉ dùng biến màu của ứng dụng */
.mg-ov{position:fixed;inset:0;z-index:9999;background:rgba(10,17,32,.45);display:grid;place-items:center;padding:12px;animation:mgf .18s ease-out}
.mg-box{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);width:min(400px,100%);padding:14px;display:flex;flex-direction:column;gap:10px;touch-action:none;user-select:none;-webkit-user-select:none}
.mg-hd{display:flex;justify-content:space-between;align-items:center;gap:8px}
.mg-hd b{font-size:1em}.mg-hd .mg-x{display:flex;gap:6px}
.mg-btn{border:1px solid var(--line);background:var(--card2);border-radius:10px;min-height:40px;min-width:40px;padding:0 12px;cursor:pointer}
.mg-btn:active{transform:scale(.96)}
.mg-field{position:relative;height:210px;border:1px dashed var(--line);border-radius:12px;background:var(--bg);overflow:hidden;cursor:pointer}
.mg-hero{position:absolute;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;border:2px solid var(--text);border-radius:50% 50% 46% 46%;background:var(--card);will-change:transform}
.mg-hero:before,.mg-hero:after{content:"";position:absolute;top:12px;width:4px;height:4px;border-radius:50%;background:var(--text)}
.mg-hero:before{left:8px}.mg-hero:after{right:8px}
.mg-item{position:absolute;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;color:var(--accent);animation:mgp 1.4s ease-in-out infinite}
.mg-item svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}
.mg-bar{height:3px;background:var(--line);border-radius:3px;overflow:hidden}.mg-bar i{display:block;height:100%;width:100%;background:var(--accent);transform-origin:left}
.mg-msg{text-align:center;min-height:2.6em;color:var(--muted)}.mg-msg b{display:block;color:var(--text);font-size:1.05em}
.mg-pad{display:none;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,44px);gap:6px;justify-content:center}
.mg-pad .mg-btn{padding:0}.mg-pad [data-d=u]{grid-column:2}.mg-pad [data-d=l]{grid-row:2;grid-column:1}.mg-pad [data-d=d]{grid-row:2;grid-column:2}.mg-pad [data-d=r]{grid-row:2;grid-column:3}
@media(pointer:coarse){.mg-pad{display:grid}}
.mg-hint{font-size:.82em;color:var(--muted);text-align:center}
@keyframes mgf{from{opacity:0}}@keyframes mgp{50%{transform:scale(1.15)}}
@media(prefers-reduced-motion:reduce){.mg-ov,.mg-item{animation:none}}
