*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{color:#f4f6f8;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:#0e1116;margin:0;font-family:system-ui,-apple-system,sans-serif;overflow:hidden}main{--cols:2;--rows:2;grid-template-columns:repeat(var(--cols), 1fr);grid-template-rows:repeat(var(--rows), 1fr);height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));gap:24px;display:grid}@media (width>=800px){main{gap:32px;padding:32px}}.choice{color:#fff;width:100%;height:100%;min-height:0;font-size:clamp(1.5rem, calc(36vmin / max(var(--cols), var(--rows))), 7rem);letter-spacing:.02em;cursor:pointer;touch-action:manipulation;border:0;border-radius:28px;font-weight:750;transition:transform .12s,filter .12s,opacity .16s}.choice:active:not(:disabled){transform:scale(.985)}.choice:disabled{cursor:default;opacity:.55}.choice.is-saved{opacity:1;filter:brightness(1.08)}.choice-label{padding:0 8px;line-height:1.05;display:block}.choice-word{font-size:clamp(1.25rem, calc(18vmin / max(var(--cols), var(--rows))), 4rem)}.toast{top:max(16px, env(safe-area-inset-top));background:#1b1f27;border-radius:999px;margin:0;padding:8px 14px;font-size:.95rem;position:fixed;left:50%;transform:translate(-50%)}.camera{z-index:10;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.camera video{object-fit:cover;background:#000;flex:1;width:100%;min-height:0}.camera-bar{padding:16px max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));gap:12px;display:flex}.camera-bar button{color:#fff;background:#2a2f3a;border:0;border-radius:16px;flex:1;padding:16px;font-size:1.1rem;font-weight:650}.camera-snap{background:#e85d4c}body:has(.admin){-webkit-user-select:auto;user-select:auto;height:auto;overflow:auto}#root:has(.admin){height:auto}.admin{min-height:100dvh;padding:20px max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left))}.admin-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.admin-note,.admin-status{color:#c5ccd6;margin:0 0 16px;font-size:.95rem}.admin-bar .admin-note{margin:0}.admin-actions{gap:8px;display:flex}.admin-actions button{color:#fff;cursor:pointer;background:#2a2f3a;border:0;border-radius:10px;padding:8px 14px;font-size:.9rem;font-weight:650}.admin-actions button:disabled{opacity:.45;cursor:default}.admin-danger{background:#e85d4c}.admin-count{color:#8b939e}.admin-table-wrap{overflow-x:auto}.admin table{border-collapse:collapse;width:100%;font-size:.82rem}.admin th,.admin td{text-align:left;vertical-align:top;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #2a2f3a;max-width:28rem;padding:8px 10px;overflow:hidden}.admin th{color:#8b939e;background:#0e1116;font-weight:650;position:sticky;top:0}.admin td{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.note{z-index:10;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:#0e1116;flex-direction:column;gap:12px;display:flex;position:fixed;inset:0}.note textarea{resize:none;width:100%;min-height:0;font:inherit;color:#f4f6f8;background:#1b1f27;border:0;border-radius:20px;outline:none;flex:1;padding:16px;font-size:1.15rem}.note-bar{gap:12px;display:flex}.note-bar button{color:#fff;background:#2a2f3a;border:0;border-radius:16px;flex:1;padding:16px;font-size:1.1rem;font-weight:650}.note-save{background:#2f8fde}
