@layer tokens{:root{--ground:#0d1017;--panel:#151a24;--raised:#1e2533;--rule:#283043;--rule-strong:#3b4661;--ink:#eef1f7;--ink-2:#aab4cc;--ink-3:#7c88a6;--azure:#2a5fc9;--azure-ink:#8fb2ff;--azure-wash:#142443;--gules:#c2352d;--gules-ink:#ff8a7f;--gules-wash:#3a1719;--or:#e8b42c;--or-ink:#f3c95a;--on-or:#17130a;--purpure:#7a4fc4;--purpure-ink:#c9adff;--purpure-wash:#241a3d;--mark-vert:#3d9a5b;--mark-tawny:#94613d;--mark-tenne:#d0662a;--mark-teal:#2a9d97;--mark-murrey:#c85a8e;--radius:4px;--radius-card:10px;--tap:52px;--column:560px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--dur-press:.12s;--dur-state:.2s;--dur-sheet:.28s;--dur-flip:.46s;--dur-moment:.42s;--dur-dawn:1.4s}}@layer base{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--ground);color:var(--ink);font:400 1rem/1.45 var(--font);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box}body{overscroll-behavior-y:none;min-height:100dvh;margin:0}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.01em;text-wrap:balance;font-size:1.375rem;font-weight:750;line-height:1.2}::selection{background:var(--azure);color:var(--ink)}:focus-visible{outline:2px solid var(--or);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}button,input,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none}.mark{flex:none;display:block}.screen{background-color:var(--ground);flex-direction:column;min-height:100dvh;display:flex;overflow-x:clip}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.top{z-index:2;min-height:52px;padding:env(safe-area-inset-top) max(.5rem, env(safe-area-inset-right), calc((100% - 560px) / 2 + .5rem)) 0 max(1rem, env(safe-area-inset-left), calc((100% - 560px) / 2 + 1rem));background:var(--ground);border-bottom:1px solid var(--rule);align-items:center;gap:.75rem;display:flex;position:sticky;top:0}.middle{flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:560px;margin:0 auto;padding:1rem 1rem 1.5rem;display:flex}.middle.center{text-align:center;justify-content:center;gap:1rem}.tray{z-index:2;width:100%;max-width:560px;padding:.75rem max(1rem, env(safe-area-inset-right)) calc(.75rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:var(--ground);border-top:1px solid var(--rule);flex-direction:column;gap:.5rem;margin:0 auto;display:flex;position:sticky;bottom:0}.stack{flex-direction:column;gap:.75rem;display:flex}.grow{flex:1;min-width:0}.label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);font-size:.75rem;font-weight:700}section>.label,.seats-head{margin-bottom:.5rem}.muted{color:var(--ink-2)}.small{font-size:.8125rem}.hint{color:var(--ink-2);margin-top:.5rem;font-size:.875rem}.error{color:var(--gules-ink)}.you{color:var(--ink-3);margin-left:.4rem;font-size:.75rem}.code-lg{letter-spacing:.18em;font-variant-numeric:tabular-nums;font-size:2.75rem;font-weight:800;line-height:1}.code-sm{letter-spacing:.16em;font-weight:750}.middle.wide{max-width:760px}.label.spaced{margin-top:1.25rem}}@layer components{button.row:disabled{color:inherit}button.row.link{justify-content:space-between}button.row:active:not(:disabled),.cheque:active{background:var(--raised)}button.band{text-align:left;width:100%;color:var(--ink)}.top-actions{flex:none;align-items:center;gap:.25rem;margin-left:auto;display:flex}.plate{border-radius:var(--radius);background:var(--or);width:100%;min-height:56px;color:var(--on-or);letter-spacing:.01em;transition:background-color var(--dur-press) ease, transform var(--dur-state) var(--ease-out), opacity var(--dur-state) var(--ease-out);border:0;padding:.75rem 1rem;font-size:1.0625rem;font-weight:750}.plate:active:not(:disabled){background:var(--or-ink);transform:translateY(1px)}.plate:disabled{background:var(--raised);color:var(--ink-3)}.plate.evil:not(:disabled){background:var(--gules);color:var(--ink)}.btn{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--panel);min-height:48px;transition:background-color var(--dur-press) ease, border-color var(--dur-press) ease;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:600;display:inline-flex}.btn:active:not(:disabled){background:var(--raised)}.btn:disabled{color:var(--ink-3);border-color:var(--rule)}.btn.small{min-height:44px;padding:.25rem .75rem;font-size:.875rem}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost[aria-pressed=true]{color:var(--ink);border-color:var(--rule-strong)}.btn.danger{color:var(--gules-ink)}.btn.danger.armed{background:var(--gules);border-color:var(--gules);color:var(--ink)}.btnrow{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.iconbtn{border-radius:var(--radius);width:44px;height:44px;color:var(--ink-2);background:0 0;border:0;place-items:center;display:inline-grid}.iconbtn:active{background:var(--raised)}.field{flex-direction:column;gap:.375rem;display:flex}.field>span{color:var(--ink-2);font-size:.875rem;font-weight:600}input:not([type]),input[type=text],select{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--panel);width:100%;min-height:52px;caret-color:var(--or);padding:.5rem .875rem;font-size:1.0625rem}input::placeholder{color:var(--ink-3)}input:focus,select:focus{border-color:var(--or);outline:none}.code-input{text-transform:uppercase;letter-spacing:.3em;font-weight:700}.joinrow{align-items:flex-end;gap:.5rem;display:flex}.joinrow .btn{min-height:52px}.toggle{border-bottom:1px solid var(--rule);cursor:pointer;align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.toggle.readonly{cursor:default}.toggle input{-webkit-appearance:none;appearance:none;border:1.5px solid var(--rule-strong);background:var(--panel) center / 16px no-repeat;width:22px;height:22px;cursor:inherit;border-radius:3px;flex:none;margin:.1rem 0 0}.toggle input:checked{border-color:var(--or);background-color:var(--or);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317130a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 9.5 17 19 7'/%3E%3C/svg%3E")}.toggle>span{flex-direction:column;gap:.125rem;display:flex}.toggle .muted{font-size:.875rem}.options{border-top:1px solid var(--rule)}.side{letter-spacing:.08em;text-transform:uppercase;margin-left:.5rem;font-size:.6875rem;font-weight:700}.side.good{color:var(--azure-ink)}.side.evil{color:var(--gules-ink)}.seats,.plain{margin:0;padding:0;list-style:none}.seats{border-top:1px solid var(--rule)}.row{width:100%;min-height:var(--tap);border:0;border-bottom:1px solid var(--rule);text-align:left;background:0 0;align-items:center;gap:.625rem;padding:.375rem .25rem;display:flex}.seatno{width:1.25rem;color:var(--ink-3);font-variant-numeric:tabular-nums;text-align:right;font-size:.8125rem}.seatname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.seats-head{justify-content:space-between;align-items:center;gap:.5rem;min-height:36px;display:flex}.seats-head .label{margin:0}.row.pick{transition:background-color var(--dur-press) ease, color var(--dur-press) ease;padding-inline-start:.5rem;padding-inline-end:.5rem}.row.pick:disabled{color:var(--ink-3)}.row.pick.chosen{background:var(--or);color:var(--on-or)}.row.pick.chosen .you,.row.pick.chosen .tag,.row.pick.chosen .away,.row.pick.chosen .crown,.row.pick.chosen .status,.row.pick.chosen .vote.no,.row.pick.chosen .vote.yes{color:var(--on-or);border-color:currentColor}.seat-tags{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:.375rem;max-width:62%;display:flex}.seat-tags:empty{display:none}.row.pick.chosen:active{background:var(--or-ink)}@media (hover:hover){.btn:hover:not(:disabled),button.row:hover:not(:disabled):not(.chosen),.cheque:hover,.iconbtn:hover{background:var(--raised)}.plate:hover:not(:disabled){background:var(--or-ink)}}.tag{border:1px solid var(--rule-strong);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);border-radius:3px;flex:none;padding:.0625rem .375rem;font-size:.6875rem;font-weight:700}.tag.good{color:var(--azure-ink);border-color:var(--azure)}.tag.evil{color:var(--gules-ink);border-color:var(--gules)}.status{color:var(--ink-2);flex:none;font-size:.8125rem}.crown{color:var(--or);display:inline-flex}.away{color:var(--ink-3);flex:none;align-items:center;gap:.25rem;font-size:.8125rem;display:inline-flex}.name{align-items:center;gap:.4rem;display:inline-flex}.phase{flex-direction:column;gap:.375rem;display:flex}.phase p{color:var(--ink-2);text-wrap:pretty}.verdict{border-radius:var(--radius);flex-direction:column;gap:.375rem;padding:1.25rem 1rem;display:flex}.verdict h1{font-size:1.625rem}.verdict h3{font-size:1.125rem;line-height:1.25}.verdict.small{margin-bottom:.5rem;padding:.875rem 1rem}.verdict.good{background:var(--azure)}.verdict.evil{background:var(--gules)}.band{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--panel);animation:lit var(--dur-state) var(--ease-out) both;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.75rem .875rem;display:flex}.band p,.band>span[role=status]{flex:14rem;font-weight:600}.band-hint{color:var(--ink-2);font-size:.8125rem}.band .secret{flex-basis:100%;font-size:1.125rem}.band.good{background:var(--azure-wash);border-color:var(--azure)}.band.evil{background:var(--gules-wash);border-color:var(--gules)}.band.warn{border-color:var(--or)}@keyframes lit{0%{opacity:0;transform:translateY(-4px)}}.pair{grid-template-columns:1fr 1fr;gap:.625rem;display:grid}.token{border-radius:var(--radius);letter-spacing:.02em;min-height:64px;transition:transform var(--dur-press) var(--ease-out), filter var(--dur-press) ease;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:800;display:inline-flex}.token:active:not(:disabled){filter:brightness(1.1);transform:translateY(1px)}.token:disabled{background:var(--panel);border-color:var(--rule);color:var(--ink-3)}.waiting{min-height:56px;color:var(--ink-2);align-items:center;gap:.5rem;display:flex}.chosen-line{justify-content:space-between;align-items:center;gap:.5rem;min-height:56px;display:flex}.chosen-line p{color:var(--ink-2)}.chosen-line .btn{white-space:nowrap;flex:none}.tray-row{grid-template-columns:auto 1fr;align-items:center;gap:.5rem;display:grid}.tray-row .btn{min-height:56px}.chosen-line strong{color:var(--ink)}.tray-note{color:var(--ink-2);text-align:center;font-size:.875rem}.linkmark{text-overflow:ellipsis;border:1px solid var(--rule-strong);min-width:0;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:.375rem;padding:.1875rem .5rem;font-size:.8125rem;font-weight:600;display:inline-flex;overflow:hidden}.linktext{text-overflow:ellipsis;min-width:0;overflow:hidden}.linkmark.offline{background:var(--raised);color:var(--ink)}.spinner{border:2px solid var(--rule-strong);border-top-color:var(--ink);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.notices{flex-direction:column;gap:.5rem;display:flex}.notice{border:1px solid var(--or);border-radius:var(--radius);background:var(--panel);align-items:center;gap:.5rem;padding:.25rem .25rem .25rem .875rem;display:flex}.notice span{flex:1}.sheet{border:1px solid var(--rule-strong);background:var(--panel);width:100%;max-width:560px;max-height:88dvh;color:var(--ink);overscroll-behavior:contain;border-bottom:0;border-radius:8px 8px 0 0;margin:0 auto;padding:0;position:fixed;top:auto;bottom:0;left:0;right:0;overflow:auto}.sheet[open]{animation:rise var(--dur-sheet) var(--ease-drawer)}.sheet::backdrop{background:#05070cbd}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}.sheet-body{padding:.5rem 1rem calc(1.25rem + env(safe-area-inset-bottom));flex-direction:column;gap:1rem;display:flex}.sheet-head{justify-content:space-between;align-items:center;min-height:48px;display:flex}.sheet-head h2{font-size:1.125rem}.rolecard{flex-direction:column;gap:1rem;display:flex}.rolecard .plain li{padding:.375rem 0}.masthead{flex-direction:column;gap:.625rem;display:flex}.title-row{align-items:center;gap:.75rem;display:flex}.emblem{flex:none}.masthead h1{letter-spacing:-.03em;font-size:3rem;font-weight:800;line-height:1}.lede{color:var(--ink-2);max-width:34ch;font-size:1.0625rem}.recent .row{color:var(--ink)}.lobby-head{flex-direction:column;gap:.5rem;display:flex}.explore{flex-direction:column;gap:.75rem;display:flex}.explore>.label{margin:0}.search{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--panel);min-height:52px;color:var(--ink-2);align-items:center;gap:.5rem;padding:0 .875rem;display:flex}.search:focus-within{border-color:var(--or)}.search input{min-width:0;min-height:50px;caret-color:var(--or);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:1.0625rem}.chips{scrollbar-width:none;gap:.375rem;padding-bottom:.125rem;display:flex;overflow-x:auto}.chip{border:1px solid var(--rule-strong);min-width:44px;min-height:44px;color:var(--ink-2);font-variant-numeric:tabular-nums;background:0 0;border-radius:999px;flex:none;padding:0 .875rem;font-weight:600}.chip[aria-pressed=true]{border-color:var(--or);color:var(--or-ink);box-shadow:inset 0 0 0 1px var(--or)}.chip:disabled{color:var(--ink-3);border-color:var(--rule)}.chip:disabled[aria-pressed=true]{color:var(--or-ink);border-color:var(--or)}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.gamecard{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--panel);width:100%;height:100%;color:var(--ink);text-align:left;transition:background-color var(--dur-state) var(--ease-out), border-color var(--dur-state) var(--ease-out);align-items:flex-start;gap:.875rem;padding:1rem;text-decoration:none;display:flex}.gamecard:active:not(:disabled){background:var(--raised)}.gamecard[aria-current=true]{border-color:var(--or)}.gamecard:disabled{color:var(--ink-3)}.gamecard-body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.gamecard-name{font-size:1.125rem;font-weight:750;line-height:1.25}.gamecard-meta{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.8125rem}.gamecard-blurb{color:var(--ink-2);font-size:.875rem}.gamecard-tags{flex-wrap:wrap;gap:.375rem;margin-top:.375rem;display:flex}.empty{color:var(--ink-2);flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem 0;display:flex}.back{min-height:44px;color:var(--ink-2);align-items:center;gap:.25rem;font-weight:600;text-decoration:none;display:inline-flex}a.row{color:var(--ink);text-decoration:none}.about{max-width:65ch;color:var(--ink-2);flex-direction:column;gap:.75rem;display:flex}.game-row{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.game-row .grow{flex-direction:column;display:flex}.btn.plain.armed{border-color:var(--or);color:var(--or-ink)}@media (hover:hover){.gamecard:hover:not(:disabled){background:var(--raised)}.chip:hover:not(:disabled){color:var(--ink)}}.tag.tanner{color:var(--purpure-ink);border-color:var(--purpure)}.side.tanner{color:var(--purpure-ink)}.verdict.tanner{background:var(--purpure)}.toggle>.stepper{flex-direction:row;flex:none;align-items:center;margin:-.625rem 0 -.625rem -.625rem;display:inline-flex}.stepper .count{text-align:center;font-variant-numeric:tabular-nums;min-width:1.25rem;font-weight:700}.clues li,.nightlog li{border-bottom:1px solid var(--rule);padding:.375rem 0}.nightlog li{color:var(--ink-2)}.verdict.neutral{background:var(--raised)}.verdict-you{font-weight:700}@starting-style{.tray .plate{opacity:0;transform:translateY(6px)}}.crest{flex:none;display:block}.crest-field{fill:var(--crest-field,var(--raised))}.crest.good{--crest-field:var(--azure)}.crest.evil{--crest-field:var(--gules)}.crest.tanner{--crest-field:var(--purpure)}.crest-charge{fill:var(--ink)}.crest-edge{fill:none;stroke:var(--ink);stroke-width:2px}.charge{fill:currentColor;flex:none}.role-head{border-radius:var(--radius);background:var(--raised);align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.role-head.good{background:var(--azure-wash)}.role-head.evil{background:var(--gules-wash)}.role-head.tanner{background:var(--purpure-wash)}.role-head h3{letter-spacing:-.01em;margin-top:.125rem;font-size:1.625rem;font-weight:800;line-height:1.15}.role-head .side-line{margin-top:.125rem;font-size:.875rem;font-weight:600}.role-head .side-line>span{white-space:nowrap}.role-head.good .side-line{color:var(--azure-ink)}.role-head.evil .side-line{color:var(--gules-ink)}.role-head.tanner .side-line{color:var(--purpure-ink)}.flip{perspective:1100px;position:relative}.flip-inner{transform-style:preserve-3d;transition:transform var(--dur-flip) var(--ease-in-out);display:grid}.flip.up .flip-inner{transform:rotateY(180deg)}.flip-face{border-radius:var(--radius-card);border:1.5px solid var(--rule-strong);-webkit-backface-visibility:hidden;backface-visibility:hidden;grid-area:1/1;min-height:280px}.flip-back{background:var(--panel) var(--card-back,none) center / var(--card-back-size,20px);box-shadow:inset 0 0 0 7px var(--panel), inset 0 0 0 8px var(--rule-strong);place-items:center;padding:1rem;display:grid}.flip-back-plate{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--ground);text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:.875rem 1.25rem;display:flex}.flip-back-plate span{color:var(--ink-2);font-size:.875rem}.flip-front{background:var(--panel);flex-direction:column;gap:1rem;padding:.875rem;display:flex;transform:rotateY(180deg)}.flip-hit{border-radius:var(--radius-card);background:0 0;border:0;position:absolute;top:0;bottom:0;left:0;right:0}.flip-hint{color:var(--ink-2);justify-content:center;align-items:center;gap:.375rem;margin-top:.5rem;font-size:.8125rem;display:flex}.gamecard.box{flex-direction:column;gap:0;padding:0;overflow:hidden}.gamecard.box .gamecard-body{padding:.875rem 1rem 1rem}.gamecard-title{align-items:center;gap:.625rem;display:flex}.banner{border-bottom:1px solid var(--rule-strong);width:100%;height:96px;display:block;position:relative;overflow:hidden}.banner.large{border:1px solid var(--rule-strong);border-radius:var(--radius);height:132px}.banner-avalon{grid-template-columns:1fr 1fr;display:grid}.banner-avalon .field-azure{background:var(--azure)}.banner-avalon .field-gules{background:var(--gules)}.banner-avalon .mini-cheque{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--ground);grid-template-columns:repeat(5,30px);display:grid;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.mini-cheque>span{height:40px;color:var(--ink-3);border-right:1px solid var(--rule-strong);place-items:center;display:grid}.mini-cheque>span:last-child{border-right:0}.mini-cheque>.won{background:var(--azure);color:var(--ink)}.mini-cheque>.lost{background:var(--gules);color:var(--ink)}.mini-cheque>.now{color:var(--ink);box-shadow:inset 0 0 0 2px var(--or)}.banner-werewolf{background:#12172e}.banner-werewolf .b-moon{fill:var(--ink);position:absolute;top:14px;right:22%}.banner-werewolf .b-star{fill:var(--ink-2);position:absolute}.b-star.b1{top:18px;left:14%}.b-star.b2{top:46px;left:38%}.b-star.b3{top:22px;right:9%}.banner-werewolf .b-village{--village:#070914;width:100%;height:36px;position:absolute;bottom:0;left:0}.nightlog,.history section{content-visibility:auto;contain-intrinsic-size:auto 240px}@media (prefers-reduced-motion:reduce){.plate,.token,.row.pick,.btn{transition-property:background-color,color,border-color,opacity}@starting-style{.tray .plate{transform:none}}.sheet[open]{animation:fade var(--dur-state) ease}.band{animation-name:fade}.spinner{border-top-color:var(--ink-2);animation:none}.flip-inner,.flip.up .flip-inner,.flip-front{transition:none;transform:none}.flip-face{-webkit-backface-visibility:visible;backface-visibility:visible;transition:opacity var(--dur-state) ease}.flip.up .flip-back,.flip:not(.up) .flip-front{opacity:0;visibility:hidden}}@keyframes fade{0%{opacity:0}}}@layer game;
