@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d1220;--bg-glow-warm:#f973161a;--bg-glow-cool:#8b5cf61f;--surface:#182033;--surface-raised:#1f2940;--surface-sunken:#111827;--border:#2a3550;--border-strong:#3a4766;--text:#e9ecf5;--text-muted:#8e98b3;--text-faint:#5f6983;--accent:#f97316;--accent-bright:#ff9a4d;--accent-soft:#f9731624;--violet:#8b5cf6;--violet-bright:#b794f6;--time:#7cb4ff;--danger:#f2616f;--success:#34d399;--role-satan:#ff8a95;--role-satan-bg:#f2616f2e;--role-demon:#ff9a4d;--role-demon-bg:#f973162e;--role-imp:#b794f6;--role-imp-bg:#8b5cf633;--role-sinner:#8e98b3;--role-sinner-bg:#8e98b32e;--row-active:#4a3159;--row-missed:#313662;--row-lost:#1f2940;--row-spawned:#5d2436;--frame-gold:#f7ce76cc;--frame-silver:#d4dae766;--font-sans:"Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm:8px;--radius:12px;--radius-lg:18px;--shadow:0 12px 32px #00000059}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}body:before{content:"";z-index:-1;background:linear-gradient(100deg,#0d1220f2 0%,#0d1220e0 45%,#0d1220bd 100%),linear-gradient(#0000 45%,#0d1220eb),url(/brand/start-hero.jpg) 50%/cover no-repeat;position:fixed;inset:0}button,input,select{font:inherit;color:inherit}h1,h2,p{margin:0}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.accent-time{color:var(--time);font-weight:600}.header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1220cc;position:sticky;top:0}.header__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:12px 24px;display:flex}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.brand__mark{border-radius:10px;box-shadow:0 0 24px #f9731659}.brand__title{letter-spacing:-.01em;font-size:19px;font-weight:800}.header__user{align-items:center;gap:12px;display:flex}.header__name{color:var(--text-muted);font-weight:600}.header__left{align-items:center;gap:14px;display:flex}.header__left .nav{margin-left:22px}.nav{gap:4px;display:flex}.nav__item{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:6px 12px;font-weight:600}.nav__item:hover{color:var(--text)}.nav__item[aria-current=true]{background:var(--surface-raised);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.header__name{color:var(--text-muted);align-items:center;gap:8px;font-weight:600;display:flex}.role-chip{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 10px;font-size:13px;font-weight:600;display:inline-flex}.role-chip--satan,.admin__select[data-role=satan],.admin__role[data-role=satan]{background-color:var(--role-satan-bg);color:var(--role-satan)}.role-chip--demon,.admin__select[data-role=demon],.admin__role[data-role=demon]{background-color:var(--role-demon-bg);color:var(--role-demon)}.role-chip--imp,.admin__select[data-role=imp],.admin__role[data-role=imp]{background-color:var(--role-imp-bg);color:var(--role-imp)}.role-chip--sinner,.admin__select[data-role=sinner],.admin__role[data-role=sinner]{background-color:var(--role-sinner-bg);color:var(--role-sinner)}.admin__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin__row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);grid-template-columns:minmax(0,1fr) auto 200px;align-items:center;gap:16px;padding:12px 16px;display:grid}.admin__name{overflow-wrap:anywhere;font-weight:700}.admin__date{color:var(--text-muted);overflow-wrap:anywhere;font-size:13px}.admin__select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);appearance:none;background-color:var(--surface-sunken);text-align:center;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%238e98b3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px;justify-self:end;min-width:160px;padding:8px 32px;font-weight:600}.admin__role{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);min-width:160px;color:var(--text-muted);text-align:center;justify-self:end;padding:8px 12px;font-weight:600}.no-access{text-align:center;flex-direction:column;gap:12px;max-width:560px;margin:10vh auto 0;display:flex}.no-access__text{color:var(--text-muted)}@media (width<=720px){.admin__row{grid-template-columns:minmax(0,1fr);gap:8px}.admin__select,.admin__role{justify-self:start}}.splash{text-align:center;color:var(--text-muted);padding:25vh 16px}.start{grid-template-columns:minmax(0,1fr) 380px;align-items:center;gap:64px;max-width:1100px;min-height:100vh;margin:0 auto;padding:48px 24px;display:grid}.start__game-logo{filter:drop-shadow(0 0 28px #f9731659);max-width:280px;height:auto}.start__guild{letter-spacing:.02em;align-items:center;gap:10px;margin-top:28px;font-size:15px;font-weight:700;display:flex}.start__title{letter-spacing:-.03em;margin-top:12px;font-size:clamp(34px,6vw,52px);font-weight:800}.start__features{color:var(--text-muted);flex-direction:column;gap:10px;margin:24px 0 0;padding:0;list-style:none;display:flex}.start__features li{gap:10px;display:flex}.start__features li:before{content:"◆";color:var(--accent)}.auth-card{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#182033e6;flex-direction:column;gap:16px;padding:24px;display:flex}.auth-card .segmented{width:100%}.auth-card .segmented__option{flex:1;justify-content:center}.auth-card__form{gap:14px}.field{flex-direction:column;gap:6px;display:flex}.checkbox{color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;display:flex}.checkbox input{width:16px;height:16px;accent-color:var(--accent)}.page{max-width:1200px;margin:0 auto;padding:32px 24px 64px}.page__heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;margin-bottom:24px;display:flex}.page__clock{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.page__clock-value{font-variant-numeric:tabular-nums;color:var(--time);font-size:30px;font-weight:700}.page__clock-label{color:var(--text-muted);font-size:12px}.page__title{letter-spacing:-.02em;font-size:clamp(26px,4vw,34px);font-weight:800}.page__subtitle{color:var(--text-muted);margin-top:4px}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#182033d9;padding:20px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar__group{flex-wrap:wrap;gap:12px;display:flex}.state{text-align:center;color:var(--text-muted);padding:32px 16px}.state--error{color:var(--danger)}.button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 14px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s,transform .1s;display:inline-flex}.button:hover:not(:disabled){border-color:var(--text-faint);background:var(--surface-raised)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:linear-gradient(180deg, var(--accent-bright), var(--accent));color:#1a0d02;border-color:#0000;box-shadow:0 4px 14px #f9731640}.button--primary:hover:not(:disabled){background:linear-gradient(180deg, #ffab6b, var(--accent-bright));border-color:#0000}.button--kill{color:#c2a0a9;background:#33212b;border-color:#76384880}.button--kill:hover:not(:disabled){color:#e0c2ca;background:#3d2733;border-color:#96465ab3}.button--ghost{color:var(--text-muted);background:0 0;border-color:#0000}.button--ghost:hover:not(:disabled){color:var(--text)}.button--icon{width:36px;padding:0;font-size:18px;line-height:1}.button--small{min-height:30px;padding:0 10px;font-size:13px}.button--block{width:100%}.segmented{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken);padding:4px;display:inline-flex}.segmented__option{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}.segmented__option:hover{color:var(--text)}.segmented__option[aria-checked=true]{background:var(--surface-raised);color:var(--text);box-shadow:inset 0 0 0 1px var(--border-strong)}.segmented__count{background:var(--border);text-align:center;border-radius:999px;min-width:22px;padding:0 6px;font-size:12px}.segmented__option[aria-checked=true] .segmented__count{background:var(--accent-soft);color:var(--accent-bright)}.icon{flex:none}.voice{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken);align-items:center;gap:8px;padding:4px 4px 4px 14px;display:flex}.voice:focus-within{border-color:var(--border-strong);background:var(--surface-raised)}.voice__select{cursor:pointer;background:0 0;border:0;padding:6px 4px 6px 0;font-weight:600}.voice__select:focus,.voice__select:focus-visible{outline:none}.voice__select option{background:var(--surface)}.voice__volume{width:88px;accent-color:var(--accent);cursor:pointer}.discord{border-radius:var(--radius-sm);opacity:.8;align-items:center;padding:6px 10px;transition:opacity .15s,background-color .15s;display:flex}.discord:hover{background:var(--surface-raised);opacity:1}.sound-banner{border-radius:var(--radius);background:var(--accent-soft);width:100%;color:var(--accent-bright);text-align:left;cursor:pointer;border:1px solid #f9731666;margin-bottom:12px;padding:10px 14px;font-weight:600}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:1px 8px;font-size:11px;font-weight:700;display:inline-flex}.badge--spawned{background:var(--danger);color:#2a0c12;animation:1.2s ease-in-out infinite pulse}.chip{border-radius:999px;padding:3px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip--danger{color:var(--danger);background:#f2616f26}.boss-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.boss-row{--row-color:var(--row-active);--frame:var(--frame-gold);border-radius:var(--radius);background:linear-gradient(90deg, var(--row-color), color-mix(in oklab, var(--row-color) 55%, var(--surface)));border:1px solid #ffffff0a;grid-template-columns:63px minmax(0,1fr) 128px 168px auto;align-items:center;gap:16px;padding:12px 16px;transition:border-color .2s;display:grid;position:relative}.boss-row:after{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--frame) 0%, transparent 20%);pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.boss-row--elite{--frame:var(--frame-silver)}.boss-row[data-state=spawned]{--row-color:var(--row-spawned);border-color:#f2616f8c;box-shadow:0 0 24px #f2616f40}.boss-row[data-state=missed]{--row-color:var(--row-missed)}.boss-row[data-state=lost]{--row-color:var(--row-lost)}.boss-row:hover{border-color:#ffffff1f}.avatar{object-fit:contain;object-position:center;filter:drop-shadow(0 2px 6px #00000073);width:63px;height:63px}.avatar--initials{border-radius:var(--radius-sm);color:#ffffffbf;background:#ffffff14;place-items:center;font-size:15px;font-weight:800;display:grid}.boss-row__info{min-width:0}.boss-row__name{flex-wrap:wrap;align-items:center;gap:8px;font-size:17px;font-weight:700;display:flex}.boss-row__meta{color:#e9ecf599;flex-wrap:wrap;gap:0 6px;font-size:13px;display:flex}.boss-row__dot{color:var(--text-faint)}.boss-row__cell{flex-direction:column;gap:4px;display:flex;position:relative}.comment-mark{cursor:help;font-size:9px;position:relative}.comment-mark:hover{background:#fff3}.comment-mark__text{z-index:5;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);width:max-content;max-width:260px;color:var(--text);text-align:left;white-space:normal;box-shadow:var(--shadow);opacity:0;visibility:hidden;padding:8px 12px;font-size:13px;font-weight:500;line-height:1.35;transition:opacity .12s,visibility .12s;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50%}.comment-mark:hover .comment-mark__text,.comment-mark:focus-visible .comment-mark__text{opacity:1;visibility:visible}.boss-row__clock,.boss-row__countdown{font-variant-numeric:tabular-nums;white-space:nowrap}.boss-row__clock{align-items:flex-start;gap:3px;font-size:18px;font-weight:500;display:inline-flex}.mark{background:#ffffff1f;border-radius:999px;justify-content:center;align-items:center;height:14px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.mark--missed{color:var(--accent-bright);cursor:help}.boss-row__countdown{font-size:20px;font-weight:700}[data-urgency=none] .boss-row__countdown{color:var(--text-faint)}.lost{font-family:var(--font-sans);color:var(--text-muted);font-size:15px;font-weight:600}[data-state=spawned] .boss-row__countdown{color:#ff96a1}[data-urgency=soon] .boss-row__countdown{color:var(--accent-bright)}[data-urgency=imminent] .boss-row__countdown{color:var(--accent-bright);text-shadow:0 0 12px #f9731699;animation:1s ease-in-out infinite pulse}.progress{background:#ffffff1a;border-radius:999px;height:3px;display:block;overflow:hidden}.progress__fill{background:linear-gradient(90deg, var(--frame), var(--accent-bright));width:100%;height:100%;transform:scaleX(var(--progress,0));transform-origin:0;transition:transform 1s linear;display:block}[data-state=lost] .progress{visibility:hidden}.boss-row__actions{justify-content:flex-end;gap:8px;display:flex}.menu{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-raised);min-width:200px;color:var(--text);box-shadow:var(--shadow);margin:0;padding:6px;position:fixed;inset:auto;translate:-100%}.menu__item{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:8px 12px;display:block}.menu__item:hover:not(:disabled){background:var(--border)}.menu__item--danger{color:var(--danger)}.menu__item:disabled{color:var(--text-faint);cursor:not-allowed}.dialog{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);width:min(640px,100vw - 32px);max-height:calc(100vh - 64px);color:var(--text);padding:0;box-shadow:0 24px 64px #0000008c}.dialog:focus,.dialog:focus-visible{outline:none}.dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050810b3}.dialog[open]{animation:.18s ease-out dialog-in}.dialog__body{flex-direction:column;max-height:calc(100vh - 66px);display:flex}.dialog__header{border-bottom:1px solid var(--border);padding:20px 56px 16px 24px;position:relative}.dialog__title{color:var(--violet-bright);font-size:20px;font-weight:800}.dialog__subtitle{color:var(--text-muted);margin-top:2px}.dialog__close{background:0 0;border-color:#0000;font-size:16px;position:absolute;top:16px;right:16px}.dialog__content{padding:20px 24px;overflow-y:auto}.form{flex-direction:column;gap:8px;display:flex}.form__label{color:var(--text-muted);font-size:13px;font-weight:600}.form__input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken);padding:10px 12px}.form__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.form__row{gap:12px;display:flex}.form__row .field{flex:1}.form__input--moment{letter-spacing:.04em;text-align:center;font-size:22px;font-weight:600}.form__hint{color:var(--text-muted);font-size:14px}.form__counter{color:var(--text-faint);align-self:flex-end;font-size:12px}.form__error{border-radius:var(--radius-sm);color:var(--danger);background:#f2616f1f;padding:8px 12px}.form__actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.history__head,.history__item{grid-template-columns:minmax(0,1fr) minmax(90px,auto) minmax(0,1fr);align-items:center;gap:12px;display:grid}.history__head{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);padding:0 14px 8px;font-size:11px;font-weight:700}.history__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.history__item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);padding:12px 14px}.history__author{color:var(--violet-bright);text-align:center;background:#8b5cf62e;border-radius:999px;justify-self:center;padding:2px 10px;font-size:13px;font-weight:600}.history__changed{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:6px;font-size:13px;display:flex}.history__head span:last-child{text-align:right}.history__head span:nth-child(2){text-align:center}.toast{z-index:20;border-radius:var(--radius);color:#ffd5da;max-width:calc(100vw - 32px);box-shadow:var(--shadow);background:#2a1620;border:1px solid #f2616f66;padding:12px 18px;animation:.2s ease-out toast-in;position:fixed;bottom:24px;left:50%;translate:-50%}@keyframes pulse{50%{opacity:.55}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes toast-in{0%{opacity:0;translate:-50% 8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=900px){.boss-row{grid-template-columns:55px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"avatar info info""avatar respawn countdown""actions actions actions";gap:10px 14px}.avatar{grid-area:avatar;align-self:start;width:55px;height:55px}.boss-row__info{grid-area:info}.boss-row__cell{grid-area:respawn}.boss-row__cell--countdown{grid-area:countdown}.boss-row__actions{grid-area:actions}.boss-row__actions .button:not(.button--icon){flex:1}.start{grid-template-columns:minmax(0,1fr);gap:32px;min-height:0}}@media (width<=520px){.header__inner,.page{padding-left:16px;padding-right:16px}.panel{padding:12px}.brand__title{font-size:17px}.toolbar,.toolbar__group,.segmented,.voice{width:100%}.segmented__option{flex:1;justify-content:center}.voice__select{flex:1}}
