.ex-screen{z-index:50;background:hsl(var(--background));height:100dvh;color:hsl(var(--foreground));grid-template-rows:auto minmax(0,1fr) auto;animation:.22s both ex-in;display:grid;position:fixed;inset:0}.ex-screen:focus{outline:none}@keyframes ex-in{0%{opacity:0}}.ex-top{border-bottom:1px solid hsl(var(--border));background:linear-gradient(90deg, hsl(var(--card)), hsl(var(--primary) / .07));align-items:center;gap:10px;padding:10px 14px;display:flex}@media (min-width:640px){.ex-top{gap:16px;padding:12px 24px}}.ex-who{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.ex-photo{border:2px solid hsl(var(--border));background:hsl(var(--muted));width:48px;height:48px;color:hsl(var(--foreground));border-radius:12px;flex:none;place-items:center;font-size:15px;font-weight:900;display:grid;overflow:hidden}.ex-photo>img{object-fit:cover;width:100%;height:100%}@media (min-width:640px){.ex-photo{width:64px;height:64px;font-size:18px}}.ex-id{gap:1px;min-width:0;font-size:13px;display:grid}.ex-id>div{gap:8px;min-width:0;display:flex}.ex-id dt{color:hsl(var(--muted-foreground));flex:none;font-weight:600}.ex-id dt:after{content:" :"}.ex-id dd{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:hsl(var(--primary));font-weight:800;overflow:hidden}.ex-id dd[data-who=true]{color:hsl(var(--foreground))}.ex-id-more{display:none!important}@media (max-width:479px){.ex-id dt{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (min-width:640px){.ex-id{font-size:14px}.ex-id-more{display:flex!important}.ex-id dt{min-width:5.5rem}}.ex-clock{flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.ex-clock-label{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}@media (max-width:479px){.ex-clock-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.ex-timer{background:hsl(var(--primary));font-variant-numeric:tabular-nums;min-height:44px;color:hsl(var(--primary-foreground));border:1px solid #0000;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 16px;font-size:17px;font-weight:900;transition:color .2s,background-color .2s,border-color .2s;display:inline-flex}.ex-timer[data-low=true]{border-color:hsl(var(--destructive) / .5);background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.ex-body{min-height:0;display:grid;position:relative}.ex-main{min-height:0;padding:18px 14px 28px;overflow-y:auto}@media (min-width:640px){.ex-main{padding:26px 28px 36px}}.ex-question{gap:18px;max-width:56rem;margin:0 auto;animation:.28s cubic-bezier(.22,1,.36,1) both ex-slide;display:grid}@keyframes ex-slide{0%{opacity:0;transform:translate(12px)}}.ex-qhead{border-bottom:1px solid hsl(var(--border));flex-wrap:wrap;align-items:center;gap:8px 10px;padding-bottom:12px;display:flex}.ex-chip{border:1px solid hsl(var(--border));background:hsl(var(--card));min-height:30px;color:hsl(var(--foreground));border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.ex-chip>b[data-plus=true]{color:var(--color-emerald-700)}.ex-chip>b[data-minus=true]{color:var(--color-red-700)}.dark .ex-chip>b[data-plus=true]{color:var(--color-emerald-300)}.dark .ex-chip>b[data-minus=true]{color:var(--color-red-300)}.ex-status{border:1px solid hsl(var(--border));min-height:30px;color:hsl(var(--muted-foreground));border-radius:999px;align-items:center;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}@media (min-width:640px){.ex-status{margin-left:auto}}.ex-opt{border:1px solid hsl(var(--border));background:hsl(var(--card));text-align:left;width:100%;min-height:52px;color:hsl(var(--foreground));border-radius:14px;align-items:center;gap:12px;padding:10px 14px;font-size:15px;font-weight:600;transition:border-color .15s,background-color .15s,transform .12s;display:flex}.ex-opt:hover:not(:disabled){border-color:hsl(var(--primary) / .55);background:hsl(var(--primary) / .05)}.ex-opt:active:not(:disabled){transform:scale(.995)}.ex-opt:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.ex-opt:disabled{cursor:not-allowed;opacity:.8}.ex-opt[aria-checked=true]{border-color:hsl(var(--primary));background:hsl(var(--primary) / .1);box-shadow:inset 0 0 0 1px hsl(var(--primary))}.ex-opt-mark{border:2px solid hsl(var(--muted-foreground) / .6);background:hsl(var(--background));border-radius:999px;flex:none;width:22px;height:22px;position:relative}.ex-opt[data-multi=true] .ex-opt-mark{border-radius:6px}.ex-opt[aria-checked=true] .ex-opt-mark{border-color:hsl(var(--primary))}.ex-opt[aria-checked=true] .ex-opt-mark:after{content:"";border-radius:inherit;background:hsl(var(--primary));position:absolute;inset:3px}.ex-opt[data-multi=true][aria-checked=true] .ex-opt-mark:after{border-radius:2px}.ex-opt-id{flex:none;font-size:14px;font-weight:900}.ex-opt-id:after{content:")"}.ex-side{border-left:1px solid hsl(var(--border));background:hsl(var(--card));align-content:start;gap:14px;min-height:0;padding:16px;display:none;overflow-y:auto}.ex-side[data-open=true]{z-index:3;width:min(92vw,380px);animation:.28s cubic-bezier(.22,1,.36,1) both ex-sheet;display:grid;position:absolute;inset:0 0 0 auto;box-shadow:-24px 0 60px -30px #0009}@keyframes ex-sheet{0%{transform:translate(100%)}}.ex-backdrop{z-index:2;background:#00000080;animation:.2s both ex-in;position:absolute;inset:0}@media (min-width:1024px){.ex-body{grid-template-columns:minmax(0,1fr) 380px}.ex-side,.ex-side[data-open=true]{width:auto;box-shadow:none;animation:none;display:grid;position:static}.ex-backdrop{display:none}}.ex-key{color:hsl(var(--muted-foreground));gap:8px;font-size:13px;font-weight:700;display:grid}.ex-key>li{align-items:center;gap:10px;display:flex}.ex-legend{border:1px dashed hsl(var(--muted-foreground) / .55);border-radius:14px;grid-template-columns:1fr 1fr;gap:10px 8px;padding:12px}.ex-legend>li[data-wide=true]{grid-column:1/-1}.ex-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px;display:grid}.ex-grid>li{place-items:center;display:grid}.ex-q{border:1px solid hsl(var(--border));background:hsl(var(--muted));color:hsl(var(--foreground));border-radius:10px;place-items:center;font-size:13px;font-weight:800;transition:transform .15s,background-color .2s,border-color .2s,border-radius .2s;display:inline-grid;position:relative}.ex-q-key{flex:none;min-width:32px;height:32px;padding:0 6px}button.ex-q:hover{transform:translateY(-1px)}button.ex-q:active{transform:scale(.94)}.ex-q[data-status=answered]{border-color:var(--color-emerald-700);background:var(--color-emerald-700);color:var(--color-white);border-radius:14px 14px 4px 4px}.ex-q[data-status=not-answered]{border-color:var(--color-red-700);background:var(--color-red-700);color:var(--color-white);border-radius:4px 4px 14px 14px}.ex-q[data-status=marked]{border-color:var(--color-blue-700);background:var(--color-blue-700);color:var(--color-white);border-radius:999px}.ex-q[data-status=answered-marked]{border-color:var(--color-amber-400);background:var(--color-amber-400);color:var(--color-slate-950);border-radius:999px}.ex-q[data-status=answered-marked]:after{content:"";border:2px solid hsl(var(--card));background:var(--color-emerald-500);border-radius:999px;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.dark .ex-timer[data-low=true]{border-color:color-mix(in oklab, var(--color-red-400) 55%, transparent);background:color-mix(in oklab, var(--color-red-400) 16%, transparent);color:var(--color-red-300)}.ex-q-current{outline:2px solid hsl(var(--primary));outline-offset:2px}.ex-foot{border-top:1px solid hsl(var(--border));background:hsl(var(--card));padding:10px 14px max(10px, env(safe-area-inset-bottom));gap:8px;display:grid}@media (min-width:640px){.ex-foot{padding-left:24px;padding-right:24px}}.ex-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ex-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (min-width:900px){.ex-actions{flex-wrap:wrap;display:flex}}.ex-btn{letter-spacing:.02em;text-transform:uppercase;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0 16px;font-size:13px;font-weight:800;transition:filter .15s,transform .12s,background-color .15s;display:inline-flex}.ex-btn>svg{flex:none;width:16px;height:16px}.ex-btn:hover:not(:disabled){filter:brightness(1.08)}.ex-btn:active:not(:disabled){transform:scale(.98)}.ex-btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.ex-btn:disabled{cursor:not-allowed;opacity:.5}.ex-btn[data-kind=save],.ex-btn[data-kind=submit]{background:var(--color-emerald-700);color:var(--color-white)}.ex-btn[data-kind=clear]{border-color:hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground))}.ex-btn[data-kind=save-mark]{background:var(--color-amber-400);color:var(--color-slate-950)}.ex-btn[data-kind=mark]{background:var(--color-blue-700);color:var(--color-white)}.ex-btn[data-kind=submit]{margin-left:auto;padding:0 22px}.ex-pos{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}@media (max-width:479px){.ex-pos{display:none}.ex-btn{padding:0 10px;font-size:12px}}.ex-summary{gap:6px;display:grid}.ex-summary>div{border:1px solid hsl(var(--border));background:hsl(var(--muted) / .5);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:6px 8px 6px 14px;font-size:13px;font-weight:700;display:flex}.ex-summary>div[data-total=true]>dd{padding-right:8px;font-size:18px;font-weight:900}
