:root{--ink: #0d1216;--ink-2: #141c22;--ink-3: #1b252d;--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .22);--line-soft: rgba(255, 255, 255, .055);--text: #eef4f6;--text-dim: #9fb1b8;--text-faint: #67787f;--accent: #43d6a8;--accent-ink: #05201a;--danger: #ff7a6b;--warn: #ffcd6b;--radius: 14px;--radius-sm: 9px;--bar-height: 56px;--font: "Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;padding:0;height:100%;background:var(--ink);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}#portal{display:flex;flex-direction:column;min-height:100%}#portal.portal--game{height:100%}.bar{flex:0 0 auto;height:var(--bar-height);display:flex;align-items:center;gap:12px;padding:0 clamp(12px,3vw,28px);border-bottom:1px solid var(--line);background:var(--ink-2)}.bar__brand{font-weight:700;letter-spacing:.12em;font-size:15px;color:var(--text);background:none;border:0;padding:6px 4px;cursor:pointer;font-family:inherit}.bar__back{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--ink-3);color:var(--text);border-radius:var(--radius-sm);padding:7px 13px;font:inherit;font-size:14px;cursor:pointer}.bar__back:hover{border-color:var(--line-strong)}.bar__title{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar__status{color:var(--text-dim);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:32ch}.bar__spacer{flex:1 1 auto}.profile{display:flex;align-items:center;gap:10px;min-width:0}.profile__avatar{width:30px;height:30px;border-radius:50%;background:var(--ink-3);border:1px solid var(--line);display:grid;place-items:center;font-size:13px;font-weight:700;color:var(--accent);flex:0 0 auto;overflow:hidden}.profile__avatar img{width:100%;height:100%;object-fit:cover}.profile__lines{min-width:0}.profile__name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:18ch}.profile__state:empty{display:none}.profile__state{font-size:12px;color:var(--text-faint)}.silhouette{width:62%;height:62%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;color:var(--text-dim)}.bar>.lang[hidden]{display:none}.page{flex:1 1 auto;min-height:0;position:relative}.page--game{overflow:hidden}.catalog{padding:clamp(18px,4vw,40px);max-width:1180px;margin:0 auto}.catalog__heading{margin:0 0 22px;font-size:clamp(20px,3vw,26px)}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.card{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-2);text-align:left}.card__cover{aspect-ratio:16 / 10;border-radius:var(--radius-sm);background:linear-gradient(150deg,var(--ink-3),#0b1014);display:grid;place-items:center;font-size:34px;font-weight:700;color:var(--accent);letter-spacing:.04em;overflow:hidden}.card__cover img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .22s ease-out}.card__cover img.is-shown{opacity:1}@media(prefers-reduced-motion:reduce){.card__cover img{transition:none}}.card__name{margin:0;font-size:17px;font-weight:600}.card__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text-dim)}.tag{border:1px solid var(--line);border-radius:999px;padding:2px 9px;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--text-dim)}.tag--unavailable{border-color:#ff7a6b66;color:var(--danger)}.card__reason{margin:0;font-size:12px;color:var(--text-faint);min-height:1.2em}.card__play{margin-top:auto;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font:inherit;font-weight:700;font-size:14px;padding:10px 14px;cursor:pointer}.card__play:disabled{background:var(--ink-3);color:var(--text-faint);cursor:not-allowed}.empty{border:1px dashed var(--line);border-radius:var(--radius);padding:40px 24px;text-align:center;color:var(--text-dim)}.slot-wrap,.game-slot{position:absolute;inset:0}.overlay{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:var(--ink);z-index:2}.overlay__inner{max-width:34rem;text-align:center}.overlay__inner h2{margin:0 0 8px;font-size:20px}.overlay__inner p{margin:0 0 18px;color:var(--text-dim);font-size:14px}.overlay__actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.button{border:1px solid var(--line);background:var(--ink-3);color:var(--text);border-radius:var(--radius-sm);padding:9px 16px;font:inherit;font-size:14px;cursor:pointer}.button--primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:700}.spinner{width:26px;height:26px;margin:0 auto 14px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:560px){.bar{gap:8px}.profile__name{display:none}.bar__status{max-width:14ch}}.profile-page{max-width:640px;margin:0 auto;padding:24px 16px 64px;display:flex;flex-direction:column;gap:16px}.profile-page__rest{min-height:8px}.profile-card{padding:20px;display:flex;flex-direction:column;gap:18px}.profile-card__header{display:flex;align-items:center;gap:14px;min-width:0}.profile-card__avatar{width:56px;height:56px;flex:0 0 auto;border-radius:50%;overflow:hidden;background:var(--ink-3);border:1px solid var(--line);display:grid;place-items:center;font-size:20px;font-weight:700;color:var(--accent)}.profile-card__avatar img{width:100%;height:100%;object-fit:cover}.profile-card__name{margin:0;font-size:20px;font-weight:650;overflow-wrap:anywhere}.profile-card__state{margin:2px 0 0;font-size:13px;color:var(--text-dim)}.profile-card__fields{margin:0;display:grid;grid-template-columns:minmax(7rem,10rem) 1fr;gap:10px 16px;align-items:center;font-size:14px}.profile-card__fields dt,.profile-card__fields label{color:var(--text-dim)}.profile-card__fields dd{margin:0;overflow-wrap:anywhere}.profile-card__empty{color:var(--text-faint)}.profile-card__fields input{width:100%;box-sizing:border-box;padding:8px 10px;background:var(--ink-3);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit}.profile-card__fields input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--line-strong)}.profile-card__fields input:disabled{opacity:.6}.profile-card__error{margin:0;padding:10px 12px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid var(--danger);color:var(--text);font-size:13px}.profile-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.profile-card__external{margin-left:auto;display:flex;gap:8px}.profile{appearance:none;background:none;border:1px solid transparent;border-radius:var(--radius-sm);padding:4px 8px;color:inherit;font:inherit;text-align:left;cursor:pointer}.profile:hover{border-color:var(--line);background:#ffffff08}.profile:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(max-width:480px){.profile-card__fields{grid-template-columns:1fr;gap:4px}.profile-card__fields dt,.profile-card__fields label{margin-top:8px}.profile-card__external{margin-left:0;width:100%}}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#03070aa8;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom))}.modal{width:min(380px,100%);max-height:100%;overflow:auto;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 60px #00000073}.modal:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal__body{padding:22px 20px}.account-panel{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.account-panel__avatar{width:64px;height:64px;border-radius:50%;background:var(--ink-3);border:1px solid var(--line);display:grid;place-items:center}.account-panel__heading{margin:0;font-size:17px;font-weight:650}.account-panel__lede{margin:0;color:var(--text-dim);font-size:14px;max-width:32ch}.account-panel__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px}.account-panel__actions .button{min-height:40px}.account-card{display:flex;flex-direction:column;gap:16px}.account-card__identity{display:flex;align-items:flex-start;gap:14px;min-width:0}.account-card__avatar{width:52px;height:52px;flex:0 0 auto;border-radius:50%;overflow:hidden;background:var(--ink-3);border:1px solid var(--line);display:grid;place-items:center;font-size:18px;font-weight:700;color:var(--accent)}.account-card__avatar img{width:100%;height:100%;object-fit:cover}.account-card__details{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.account-card__name{margin:0;font-size:16px;font-weight:650;overflow-wrap:anywhere}.account-card__email{margin:0;font-size:13px;color:var(--text-dim);overflow-wrap:anywhere}.account-card__actions{display:flex;justify-content:flex-end}.account-card__actions .button{min-height:36px}.button--link{appearance:none;background:none;border:none;padding:4px 0;margin-top:4px;color:var(--accent);font:inherit;font-size:13px;cursor:pointer}.button--link:hover{text-decoration:underline}.page>.account-panel{max-width:640px;margin:0 auto;padding:48px 16px 64px}.account-panel--auth{align-items:stretch;text-align:left}.account-panel--auth .account-panel__heading{text-align:center}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-form__field{display:flex;flex-direction:column;gap:6px}.auth-form__field label{font-size:13px;color:var(--text-dim)}.auth-form__field input{width:100%;box-sizing:border-box;padding:9px 10px;background:var(--ink-3);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit}.auth-form__field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--line-strong)}.auth-form__field input:disabled{opacity:.6}.auth-form__hint{margin:-6px 0 0;font-size:12px;color:var(--text-faint)}.auth-form__error{margin:0;padding:10px 12px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid var(--danger);color:var(--text);font-size:13px}.auth-form .button--primary{min-height:40px}.auth-form__switch{margin:4px 0 0;text-align:center;font-size:13px;color:var(--text-dim)}.profile-card__sectionHeading{margin:0;font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.profile-card__account{display:flex;flex-direction:column;gap:8px}.profile-card__readonly{color:var(--text)}.prose{padding:clamp(18px,4vw,40px);max-width:720px;margin:0 auto}.prose__heading{margin:0 0 14px;font-size:clamp(20px,3vw,26px)}.prose__paragraph{margin:0 0 14px;color:var(--text-dim);font-size:15px;line-height:1.65}.prose__section{margin:0 0 26px}.prose__subheading{margin:0 0 10px;font-size:clamp(17px,2.4vw,20px)}.prose__lead{color:var(--text)}.prose__motto{color:var(--text);font-weight:600}.prose__contact a{color:var(--accent)}.prose__notes .prose__paragraph,.prose__updated{font-size:13px;color:var(--text-faint)}.prose__list{margin:0 0 14px;padding-inline-start:22px;color:var(--text-dim);font-size:15px;line-height:1.65}.prose__item{margin:0 0 4px}.site-footer{flex:0 0 auto;border-top:1px solid var(--line-soft);background:var(--ink-2)}.site-footer__inner{max-width:1180px;margin:0 auto;padding:18px clamp(18px,4vw,40px) 20px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.site-footer__copyright{margin:0;color:var(--text-faint);font-size:13px}.site-footer__nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px 10px}.site-footer__dot{color:var(--text-faint);font-size:13px}.site-footer__link{color:var(--text-dim);font-size:13px;text-decoration:none;padding:6px 2px;border-radius:var(--radius-sm)}.site-footer__link:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.site-footer__button{background:none;border:0;font:inherit;font-size:13px;cursor:pointer}@media(max-width:560px){.site-footer__dot{display:none}.site-footer__nav{gap:0 18px}}.lang{position:relative;display:inline-flex}.lang__trigger{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-dim);cursor:pointer}.lang__trigger:hover,.lang__trigger[aria-expanded=true]{background:#ffffff0f;color:var(--text)}.lang__icon,.lang__glyph,.lang__close,.lang__check{flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.lang__icon{width:15px;height:15px;color:var(--text-dim)}.lang__glyph{width:22px;height:22px;color:inherit;stroke-width:32}.lang__close{width:16px;height:16px}.modal:has(.lang-picker){width:min(720px,100%)}.modal:has(.lang-picker) .modal__body{padding:18px 18px 16px}.lang-picker{display:flex;flex-direction:column;gap:12px}.lang-picker__header{display:flex;align-items:center;justify-content:space-between}.lang-picker__heading{margin:0;font-size:18px;line-height:1.3}.lang-picker__close{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-dim);cursor:pointer}.lang-picker__close:hover{background:#ffffff0f;color:var(--text)}.lang-picker__search{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ink-3);color:var(--text);font:inherit;font-size:15px}.lang-picker__search:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.lang-picker__list{max-height:min(56vh,460px);overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding-right:2px}.lang-picker__areaname{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.lang-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:2px}.lang-picker__none{margin:8px 0;font-size:14px;color:var(--text-dim)}.lang__option{display:flex;align-items:center;gap:8px;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-dim);font:inherit;font-size:14px;text-align:start;cursor:pointer}.lang__option[hidden],.lang-picker__area[hidden],.lang-picker__none[hidden]{display:none}.lang__option:hover{background:#ffffff0f;color:var(--text)}.lang__option:focus-visible{outline-offset:-2px}.lang__option--checked{color:var(--text)}.lang__check{width:14px;height:14px;color:var(--accent);opacity:0}.lang__option--checked .lang__check{opacity:1}@media(max-width:560px){.lang-picker__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.nf{position:relative;overflow:hidden;flex:1 1 auto;min-height:460px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(12px,3.4vw,34px);padding:24px clamp(16px,4vw,40px) 32px;background:radial-gradient(ellipse 70% 55% at 50% 38%,rgba(86,64,190,.28),transparent 70%),radial-gradient(ellipse 90% 70% at 20% 100%,rgba(20,60,90,.35),transparent 70%),#070b14}.nf__sky{position:absolute;inset:0;pointer-events:none}.nf__layer{position:absolute;inset:-60px;will-change:transform}.nf__stars{position:absolute;top:0;left:0;border-radius:50%;animation:nf-twinkle 3.4s ease-in-out infinite}.nf__stars--1{animation-duration:4.7s;animation-delay:-1.3s}.nf__stars--2{animation-duration:6.1s;animation-delay:-3.1s}.nf__layer--near .nf__stars{animation-duration:2.6s}@keyframes nf-twinkle{0%,to{opacity:1}50%{opacity:.25}}.nf__shooting{position:absolute;inset:0}.nf__streak{position:absolute;width:130px;height:2px;border-radius:2px;background:linear-gradient(90deg,#fff,#fff0);box-shadow:-1px 0 6px 1px #ffffff8c;opacity:0;transform:rotate(-28deg);transform-origin:0 50%;animation:nf-shoot 1.3s ease-in forwards}@keyframes nf-shoot{0%{opacity:1;transform:translate(0) rotate(-28deg)}65%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(-28deg)}}.nf__scene{position:relative;font-size:clamp(110px,24vw,250px);display:flex;align-items:center;justify-content:center;gap:0;will-change:transform}.nf__digit{display:block;height:.675em;width:auto;overflow:visible;color:var(--accent);filter:drop-shadow(0 0 16px rgba(67,214,168,.38));animation:nf-float 6.5s ease-in-out infinite}.nf__digit--b{animation-duration:7.7s;animation-delay:-2.4s}@keyframes nf-float{0%,to{transform:translateY(-9px) rotate(-1.5deg)}50%{transform:translateY(10px) rotate(1.5deg)}}.nf__zero{display:block;width:1.742em;margin:0 -.186em;position:relative;z-index:1;animation:nf-float 8.6s ease-in-out infinite;animation-delay:-4.1s}.nf__planet{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 0 28px rgba(130,110,255,.35))}.nf__blink{animation:nf-blink 1.6s steps(1) infinite}.nf__glow,.nf__halo{opacity:0}.nf__satellite--sos .nf__blink{animation:none;opacity:.12;transform-box:fill-box;transform-origin:center}.nf__satellite--sos.nf__satellite--on .nf__blink{opacity:1;fill:#fff2ee;transform:scale(1.4);filter:drop-shadow(0 0 1.5px #ff3b2e)}.nf__satellite--sos.nf__satellite--on .nf__glow{opacity:.9}.nf__satellite--sos.nf__satellite--on .nf__halo{opacity:.28}.nf__words{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.nf__heading{margin:0;font-size:clamp(22px,3.4vw,32px)}.nf__detail{margin:0;max-width:46ch;color:var(--text-dim);font-size:15px;line-height:1.5}.nf__back{margin-top:8px;padding:11px 24px;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.nf__back:hover{filter:brightness(1.08)}.nf--still *,.nf--still *:before,.nf--still *:after{animation:none!important}@media(prefers-reduced-motion:reduce){.nf *,.nf *:before,.nf *:after{animation:none!important}}@media(max-width:560px){.nf{min-height:520px}}.page:has(>.nf){display:flex;flex-direction:column;background:#070b14}.modal:has(.consent){width:min(440px,100%)}.consent{display:flex;flex-direction:column;gap:10px}.consent__heading{margin:0 0 4px;font-size:18px;line-height:1.3}.consent__text,.consent__note{margin:0;font-size:14px;line-height:1.5;color:var(--text-dim)}.consent__note{font-size:13px;color:var(--text-faint)}.consent__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.consent__choice{min-height:44px;font-weight:600}.consent__choice:hover{border-color:var(--line-strong);color:var(--text)}@media(max-width:360px){.consent__actions{grid-template-columns:1fr}}
