*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:#14213d;color:#fdf6e3;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:800;touch-action:manipulation;overscroll-behavior:none;user-select:none;-webkit-user-select:none}
#app{height:100%;height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}
#banner{position:fixed;top:0;left:0;right:0;z-index:9;background:#e63946;color:#fff;text-align:center;padding:8px;font-size:15px}
.c{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;gap:12px}
.sheep{font-size:84px;line-height:1}
.sub{margin:0;font-size:20px;opacity:.85;font-weight:700}
.lbl{font-size:18px;opacity:.7;text-transform:uppercase;letter-spacing:.1em}
.name{font-size:clamp(34px,11vw,52px);line-height:1.05;word-break:break-word;margin:0}
.btn{margin-top:18px;border:0;border-radius:18px;background:#ffb703;color:#14213d;font:inherit;font-size:22px;padding:16px 28px;min-height:56px}
.btn:active{transform:scale(.96)}
.top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px 6px;font-size:15px;min-height:56px}
.top .q{flex:1;font-size:16px;line-height:1.2;font-weight:700}
.top .t{font-size:30px;min-width:48px;text-align:right;color:#ffb703;font-variant-numeric:tabular-nums}
.opts{flex:1;display:grid;grid-template-columns:1fr;grid-auto-rows:1fr;gap:10px;padding:6px 10px 10px;min-height:0}
.o{position:relative;border:0;border-radius:18px;color:#fff;font:inherit;font-size:clamp(20px,6vw,28px);text-align:left;padding:10px 14px 10px 62px;display:flex;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.o b{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:40px;opacity:.9}
.o:active{filter:brightness(1.15)}
.o small{font-size:13px;font-weight:700;margin-top:4px}
.o.sel{outline:7px solid #fdf6e3;outline-offset:-7px}
.o.dim{opacity:.55}
.res{font-size:clamp(30px,9vw,44px);line-height:1.1;margin:0}
.res.win{color:#4ade80}.res.lose{color:#ff8a8a}.res.mid{color:#ffb703}
.stat{font-size:22px;margin:0}
.stat b{color:#ffb703}
