.auth{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:72px 16px 40px;background:var(--bg);position:relative;overflow-x:hidden;overflow-y:auto;isolation:isolate;--auth-glow: 0 40px 100px -40px rgba(0, 0, 0, .9)}.auth:before{content:"";position:fixed;top:-6%;right:-6%;bottom:-6%;left:-6%;z-index:0;pointer-events:none;background:radial-gradient(46% 52% at 18% 8%,color-mix(in srgb,var(--neon) 18%,transparent),transparent 72%),radial-gradient(50% 56% at 86% 94%,color-mix(in srgb,var(--neon2) 14%,transparent),transparent 74%);animation:mxDriftA var(--dur-ambient) ease-in-out infinite alternate;will-change:transform}.auth:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--text) 5%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--text) 5%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at 50% 46%,#000 0%,transparent 68%);mask-image:radial-gradient(circle at 50% 46%,#000 0%,transparent 68%);animation:mxBreathe 18s ease-in-out infinite}.app--light .auth{--auth-glow: 0 30px 80px -36px rgba(26, 26, 46, .45)}.app--light .auth:before{background:radial-gradient(46% 52% at 18% 8%,color-mix(in srgb,var(--neon) 9%,transparent),transparent 72%),radial-gradient(50% 56% at 86% 94%,color-mix(in srgb,var(--neon2) 9%,transparent),transparent 74%)}.app--design-terminal .auth:after{background-image:repeating-linear-gradient(180deg,color-mix(in srgb,var(--text) 3%,transparent) 0 1px,transparent 1px 3px);background-size:auto;opacity:.45;animation:none}.auth__lang{position:absolute;top:16px;right:16px;z-index:20;display:flex;gap:2px;padding:3px;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface-solid) 85%,transparent)}.auth__lang-btn{min-width:34px;padding:6px 8px;border:0;border-radius:var(--r-xs);background:transparent;color:var(--text-dim);font-family:var(--ui-font);font-size:11px;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.auth__lang-btn:hover{color:var(--text);background:var(--surface-1)}.auth__lang-btn--active{color:var(--bg);background:var(--neon)}.app--light .auth__lang-btn--active{color:#fff}.auth__window{position:relative;z-index:10;width:100%;max-width:420px;background:linear-gradient(180deg,color-mix(in srgb,var(--neon) 7%,var(--surface-solid)),var(--surface-solid) 42%);border:var(--border-w) solid var(--border-strong);border-radius:var(--r-lg);padding:34px 36px 26px;box-shadow:var(--block-shadow),var(--auth-glow);animation:authAppear .72s var(--ease-spring)}.auth__window:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--neon),var(--neon2),var(--neon),transparent);background-size:200% 100%;background-repeat:no-repeat;opacity:.9;animation:mxLineSweep 6.5s ease-in-out infinite}@keyframes authAppear{0%{opacity:0;transform:translateY(28px) scale(.94);filter:blur(12px)}to{opacity:1;transform:none;filter:blur(0)}}.auth__window:after{content:"";position:absolute;right:14px;bottom:14px;width:10px;height:10px;border-right:var(--border-w) solid color-mix(in srgb,var(--neon) 45%,transparent);border-bottom:var(--border-w) solid color-mix(in srgb,var(--neon) 45%,transparent);pointer-events:none}.auth__logo{text-align:center;margin-bottom:26px}.auth__eyebrow{display:inline-block;margin-bottom:12px;padding:4px 10px;border:var(--border-w) solid color-mix(in srgb,var(--neon) 30%,transparent);border-radius:var(--r-full);background:var(--neon-ghost);color:var(--neon);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.auth__eyebrow:before{content:"";display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:currentColor;vertical-align:1px;animation:mxPulseDot 2.4s ease-in-out infinite}.auth__title{display:flex;align-items:flex-start;justify-content:center;gap:10px;font-size:44px;font-weight:900;letter-spacing:.06em;line-height:1;color:var(--neon)}.auth__title-name{background:linear-gradient(180deg,color-mix(in srgb,var(--text) 45%,var(--neon)),var(--neon));background-size:100% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:mxLetterIn .7s var(--ease-out) .14s backwards,mxTitleBreathe 12s ease-in-out .9s infinite alternate}.auth__title-version{margin-top:4px;padding:4px 8px;border:var(--border-w) solid color-mix(in srgb,var(--neon) 40%,transparent);border-radius:var(--r-sm);background:var(--neon-ghost);color:var(--neon);font-size:var(--fs-sm);font-weight:700;letter-spacing:.08em;animation:mxPopIn .52s var(--ease-spring) .34s backwards}.auth__subtitle{color:var(--text-muted);font-size:var(--fs-xs);letter-spacing:.24em;text-transform:uppercase;margin-top:12px;animation:mxListIn .56s var(--ease-out) .26s backwards}.auth__tabs{display:flex;gap:4px;padding:4px;margin-bottom:22px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-1);animation:mxListIn .56s var(--ease-out) .32s backwards}.auth__tab{flex:1;background:transparent;border:0;color:var(--text-muted);padding:10px;border-radius:var(--r-sm);cursor:pointer;font-size:var(--fs-md);font-weight:600;font-family:var(--ui-font);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.auth__tab:hover{color:var(--text);background:var(--surface-2)}.auth__tab--active{color:var(--neon);background:var(--neon-ghost);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--neon) 35%,transparent)}.auth__form{display:flex;flex-direction:column;gap:16px}.auth__field{display:flex;flex-direction:column;gap:7px}.auth__label{font-size:var(--fs-2xs);color:var(--text-soft);letter-spacing:.16em;text-transform:uppercase;transition:color var(--dur-fast) var(--ease-out),letter-spacing var(--dur-base) var(--ease-out)}.auth__field:focus-within .auth__label{color:var(--neon);letter-spacing:.2em}.auth__input{background:var(--surface-1);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:14px 15px;color:var(--text);font-size:var(--fs-lg);font-family:var(--ui-font);outline:none;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.auth__input::placeholder{color:var(--text-dim)}.auth__input:hover{border-color:var(--border-strong)}.auth__input:focus{border-color:var(--neon);background:var(--surface-2);box-shadow:0 0 0 3px var(--neon-ghost)}.auth__error{background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger);padding:11px 12px;border-radius:var(--r-md);font-size:var(--fs-sm);text-align:center;animation:authError .3s}@keyframes authError{0%{opacity:0;transform:translateY(-4px)}25%{opacity:1;transform:translate(-6px)}45%{transform:translate(5px)}65%{transform:translate(-3px)}85%{transform:translate(2px)}to{opacity:1;transform:none}}.auth__submit{margin-top:4px;background:linear-gradient(135deg,var(--neon),color-mix(in srgb,var(--neon) 60%,var(--neon2)));border:none;border-radius:var(--r-md);padding:16px;font-size:var(--fs-md);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bg);cursor:pointer;font-family:var(--ui-font);position:relative;overflow:hidden;isolation:isolate;box-shadow:0 12px 32px -16px color-mix(in srgb,var(--neon) 75%,transparent);transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.app--light .auth__submit{color:#fff}.auth__submit:after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:46%;pointer-events:none;background:linear-gradient(90deg,transparent,color-mix(in srgb,#ffffff 34%,transparent),transparent);transform:translate(-180%) skew(-18deg);opacity:0}.auth__submit:hover:not(:disabled):after{animation:mxSheen .78s var(--ease-out);opacity:1}.auth__submit:hover:not(:disabled){filter:brightness(1.08);transform:var(--lift);box-shadow:0 16px 40px -16px color-mix(in srgb,var(--neon) 85%,transparent)}.auth__submit:active:not(:disabled){transform:scale(.985)}.auth__submit:disabled{opacity:.6;cursor:default}.auth__secure{margin-top:20px;padding-top:16px;border-top:var(--border-w) solid var(--border-soft);text-align:center;font-size:var(--fs-2xs);letter-spacing:.06em;color:var(--text-dim);animation:mxListIn .56s var(--ease-out) .46s backwards}@media (max-width: 420px){.auth{padding:64px 12px 32px}.auth__window{padding:28px 20px 22px}.auth__eyebrow{margin-bottom:10px}.auth__title{font-size:36px}.auth__title-version{font-size:var(--fs-xs)}.auth__subtitle{letter-spacing:.14em}.auth__lang{top:12px;right:12px}}@media (max-height: 720px) and (min-width: 421px){.auth{padding-top:48px;padding-bottom:24px}.auth__window{padding:26px 32px 22px}.auth__logo{margin-bottom:20px}.auth__title{font-size:38px}.auth__form{gap:13px}.auth__input{padding:12px 14px}.auth__submit{padding:14px}}.cookie-consent{width:100%;max-width:460px;padding:24px 16px;display:flex;justify-content:center}.cookie-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .26s var(--ease-out) backwards}@keyframes cookieCardIn{0%{opacity:0;transform:translateY(18px) scale(.96);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}.cookie-card{position:relative;width:100%;max-width:460px;padding:28px 24px 24px;border-radius:var(--r-md);border:var(--border-w) solid var(--border-strong);background:linear-gradient(180deg,color-mix(in srgb,var(--neon) 6%,var(--surface-solid)),var(--surface-solid) 40%);color:var(--text);font-family:var(--ui-font);box-shadow:var(--block-shadow),0 24px 70px -30px #0000008c;animation:cookieCardIn .56s var(--ease-spring) 60ms backwards}.cookie-card:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--neon),var(--neon2),var(--neon),transparent);background-size:200% 100%;background-repeat:no-repeat;opacity:.9;animation:mxLineSweep 6.5s ease-in-out infinite}.cookie-card__title{margin:0 0 12px;font-size:20px;line-height:1.25}.cookie-card__text{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--text-soft)}.cookie-card__warning{margin:0 0 18px;padding:10px 12px;border-radius:var(--r-sm);border-left:3px solid var(--neon);background:color-mix(in srgb,var(--neon) 8%,transparent);font-size:13px;line-height:1.5;color:var(--text-muted)}.cookie-card__actions{display:flex;flex-wrap:wrap;gap:10px}.cookie-card__allow,.cookie-card__deny{flex:1 1 160px;padding:11px 16px;border-radius:var(--r-sm);font-family:var(--ui-font);position:relative;overflow:hidden;font-size:13px;font-weight:700;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out)}.cookie-card__allow:after,.cookie-card__deny:after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:46%;pointer-events:none;background:linear-gradient(90deg,transparent,color-mix(in srgb,#ffffff 30%,transparent),transparent);transform:translate(-180%) skew(-18deg);opacity:0}.cookie-card__allow:hover:after,.cookie-card__deny:hover:after{opacity:1;animation:mxSheen .76s var(--ease-out)}.cookie-card__allow{border:var(--border-w) solid var(--neon);background:var(--neon);color:var(--bg)}.app--light .cookie-card__allow{color:#fff}.cookie-card__allow:hover{background:color-mix(in srgb,var(--neon) 85%,var(--text))}.cookie-card__deny{border:var(--border-w) solid var(--border-strong);background:transparent;color:var(--text-muted)}.cookie-card__deny:hover{color:var(--text);border-color:var(--text-faint)}.cookie-card__hint{margin:14px 0 0;font-size:12px;line-height:1.45;color:var(--text-dim)}@media (max-width: 420px){.cookie-card{padding:20px 16px}.cookie-card__title{font-size:18px}}.home-3d{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;background:transparent;isolation:isolate}.home-3d:before{content:"";position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:0;pointer-events:none;background:radial-gradient(44% 48% at 18% 10%,color-mix(in srgb,var(--neon) 13%,transparent),transparent 72%),radial-gradient(48% 52% at 84% 90%,color-mix(in srgb,var(--neon2) 11%,transparent),transparent 74%);animation:mxDriftB var(--dur-ambient) ease-in-out infinite alternate;will-change:transform}.home-3d:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--text) 4%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--text) 4%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0%,transparent 70%);mask-image:radial-gradient(circle at 50% 50%,#000 0%,transparent 70%);animation:mxBreathe 20s ease-in-out infinite}.app--light .home-3d:before{background:radial-gradient(44% 48% at 18% 10%,color-mix(in srgb,var(--neon) 7%,transparent),transparent 72%),radial-gradient(48% 52% at 84% 90%,color-mix(in srgb,var(--neon2) 7%,transparent),transparent 74%)}.app--design-terminal .home-3d:after{background-image:repeating-linear-gradient(180deg,color-mix(in srgb,var(--text) 3%,transparent) 0 1px,transparent 1px 3px);background-size:auto;opacity:.45;animation:none}.home-3d__bg,.home-3d__particles{display:none}.home-3d__content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;height:100dvh;padding:30px 20px;transform:none!important}.home-3d__title-wrap{text-align:center;margin-bottom:30px}.home-3d__title{font-size:clamp(40px,7vw,80px);font-weight:900;letter-spacing:.05em;display:flex;align-items:center;justify-content:center;gap:5px}.home-3d__title-letter{display:inline-block;background:linear-gradient(180deg,color-mix(in srgb,var(--text) 45%,var(--neon)),var(--neon));-webkit-background-clip:text;background-clip:text;color:transparent;animation:mxLetterIn .76s var(--ease-out) backwards}.home-3d__title-letter:nth-child(1){animation-delay:60ms}.home-3d__title-letter:nth-child(2){animation-delay:.13s}.home-3d__title-letter:nth-child(3){animation-delay:.2s}.home-3d__title-letter:nth-child(4){animation-delay:.27s}.home-3d__title-version{font-size:.22em;color:var(--neon2);margin-left:10px;padding:4px 8px;border:var(--border-w) solid color-mix(in srgb,var(--neon2) 40%,transparent);border-radius:var(--r-sm);background:color-mix(in srgb,var(--neon2) 10%,transparent);font-weight:700;letter-spacing:.06em;cursor:pointer;animation:mxPopIn .52s var(--ease-spring) .38s backwards;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.home-3d__subtitle{position:relative;font-size:clamp(12px,1.5vw,18px);color:var(--text-soft);letter-spacing:.3em;text-transform:uppercase;margin-top:8px;padding-bottom:22px;animation:mxListIn .56s var(--ease-out) .3s backwards}.home-3d__subtitle:after{content:"";position:absolute;left:50%;bottom:0;width:72px;height:var(--border-w);transform:translate(-50%);transform-origin:center;background:linear-gradient(90deg,transparent,var(--neon),transparent);opacity:.6;animation:mxGrowX .64s var(--ease-out) .62s backwards}.home-3d__menu{display:flex;flex-direction:column;gap:12px;width:100%;max-width:380px}.home-3d__menu-item{position:relative;display:flex;align-items:center;gap:12px;padding:14px 22px;background:linear-gradient(90deg,color-mix(in srgb,var(--neon) 5%,var(--surface-solid)),var(--surface-solid) 60%);border:var(--border-w) solid var(--border);border-radius:var(--r-md);box-shadow:var(--block-shadow);cursor:pointer;overflow:hidden;transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);animation:mxListIn .62s var(--ease-out) backwards}.home-3d__menu-item:nth-child(1){animation-delay:.34s}.home-3d__menu-item:nth-child(2){animation-delay:.41s}.home-3d__menu-item:nth-child(3){animation-delay:.48s}.home-3d__menu-item:nth-child(n+4){animation-delay:.54s}.home-3d__menu-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--neon);transform:scaleY(0);transform-origin:top;transition:transform var(--dur-base) var(--ease-out)}.home-3d__menu-item:hover{border-color:color-mix(in srgb,var(--neon) 55%,var(--border));box-shadow:var(--block-shadow),0 10px 30px -18px var(--neon-strong);transform:var(--lift)}.home-3d__menu-item:hover:before{transform:scaleY(1)}.home-3d__menu-item:after{content:"";position:absolute;top:0;bottom:0;left:0;width:38%;pointer-events:none;background:linear-gradient(100deg,transparent,color-mix(in srgb,var(--neon) 12%,transparent),transparent);transform:translate(-260%) skew(-16deg);opacity:0}.home-3d__menu-item:hover:after{opacity:1;animation:mxSheen .9s var(--ease-out)}.app--design-terminal .home-3d__menu-item:after{display:none}.home-3d__menu-item--chat:before{background:var(--neon2)}.home-3d__menu-item--chat:hover{border-color:color-mix(in srgb,var(--neon2) 55%,var(--border));box-shadow:var(--block-shadow),0 10px 30px -18px color-mix(in srgb,var(--neon2) 45%,transparent)}.home-3d__menu-icon{font-size:24px;width:36px;text-align:center;transition:transform var(--dur-base) var(--ease-spring)}.home-3d__menu-item:hover .home-3d__menu-icon{transform:scale(1.12) rotate(-6deg)}.home-3d__menu-text{flex:1;font-size:16px;font-weight:600;color:var(--text);letter-spacing:.05em}.home-3d__menu-arrow{font-size:18px;color:var(--text-dim);transition:transform var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.home-3d__menu-item:hover .home-3d__menu-arrow{color:var(--text);transform:translate(5px)}.home-3d__menu-item:active{transform:var(--lift) scale(.99)}.home-3d__menu-item--characters:hover{border-color:var(--neon)}.home-3d__menu-item--chat:hover{border-color:var(--neon2)}.home-3d__menu-item--friends:hover{border-color:var(--neon)}@media (max-width: 600px){.home-3d__content{padding:20px 15px;justify-content:center}.home-3d__title-wrap{margin-bottom:20px}.home-3d__title{font-size:clamp(32px,10vw,50px)}.home-3d__menu{max-width:100%;padding:0 10px;gap:10px}.home-3d__menu-item{padding:12px 18px;gap:10px}.home-3d__menu-text{font-size:15px}.home-3d__menu-icon{font-size:22px;width:32px}}.beta-panel{position:fixed;bottom:20px;left:20px;z-index:9999;background:var(--surface-solid);border:var(--border-w) solid var(--border-strong);border-radius:var(--r-md);padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--block-shadow)}.beta-panel__header{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--neon);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.beta-panel__exit{background:none;border:var(--border-w) solid color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger);border-radius:var(--r-sm);padding:2px 8px;font-size:12px;cursor:pointer}.beta-panel__exit:hover{background:var(--danger-soft)}.beta-panel__button{padding:8px 12px;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text);font-size:13px;cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.beta-panel__button:hover{border-color:var(--neon);background:var(--surface-3)}.beta-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:10000;display:flex;align-items:center;justify-content:center}.beta-modal{background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);padding:30px;max-width:380px;width:100%;box-shadow:var(--block-shadow)}.beta-modal__title{color:var(--neon);font-size:22px;margin-bottom:8px}.beta-modal__description{color:var(--text-soft);font-size:14px;margin-bottom:20px}.beta-modal__form{display:flex;flex-direction:column;gap:12px}.beta-modal__input{padding:12px 16px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:16px;font-family:var(--ui-font);outline:none;text-transform:uppercase;letter-spacing:2px}.beta-modal__input:focus{border-color:var(--neon)}.beta-modal__error{padding:8px 12px;border-radius:var(--r-md);background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger);font-size:13px;text-align:center}.beta-modal__actions{display:flex;gap:10px}.beta-modal__cancel{flex:1;padding:12px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-soft);font-size:15px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.beta-modal__cancel:hover{border-color:var(--text-dim);color:var(--text)}.beta-modal__submit{flex:1;padding:12px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-size:15px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out)}.beta-modal__submit:hover{filter:brightness(1.1)}.chat-char-select{height:100vh;height:100dvh;padding:40px 20px;display:flex;flex-direction:column;max-width:800px;margin:0 auto;width:100%}.chat-char-select__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.chat-char-select__header h2{font-size:28px;font-weight:800;color:var(--neon)}.chat-char-select__create{padding:10px 24px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text);box-shadow:var(--block-shadow);font-family:var(--ui-font);font-size:15px;font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.chat-char-select__create:hover{border-color:var(--neon);background:var(--surface-2);transform:var(--lift)}.chat-char-select__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:15px}.chat-char-select__empty span{font-size:56px}.chat-char-select__empty p{font-size:16px}.chat-char-select__empty-btn{padding:14px 30px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:16px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.chat-char-select__empty-btn:hover{filter:brightness(1.1);transform:var(--lift)}.chat-char-select__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;flex:1;align-content:start;padding-bottom:20px}.chat-char-select__card{background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);padding:24px 20px;box-shadow:var(--block-shadow);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.chat-char-select__card:hover{border-color:var(--neon);background:var(--surface-2);transform:var(--lift)}.chat-char-select__card-icon{font-size:44px;margin-bottom:12px}.chat-char-select__card h3{font-size:18px;font-weight:700;color:var(--text);margin-bottom:6px}.chat-char-select__card p{font-size:13px;color:var(--text-muted);line-height:1.4;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-char-select__card-arrow{margin-top:12px;font-size:20px;color:var(--text-faint);transition:.3s}.chat-char-select__card:hover .chat-char-select__card-arrow{color:var(--neon);transform:translate(4px)}.chat-screen{display:flex;height:100vh;height:100dvh;background:var(--bg);overflow:hidden}.chat-main{flex:1;display:flex;flex-direction:column;background:var(--bg);position:relative}.chat-header{display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:var(--border-w) solid var(--border);background:var(--surface-solid);flex-shrink:0}.chat-header__back{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:20px;padding:6px 14px;cursor:pointer;transition:.3s}.chat-header__back:hover{border-color:var(--neon)}.chat-header__icon{font-size:28px}.chat-header__clock{font-size:var(--fs-sm);color:var(--text-dim);letter-spacing:.02em;flex-shrink:0;white-space:nowrap}.chat-header__name{font-size:var(--fs-lg);font-weight:600;color:var(--text);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header__menu-btn{padding:6px 14px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:18px;cursor:pointer;transition:.3s;z-index:10}.chat-header__menu-btn:hover{border-color:var(--border-strong);color:var(--text)}.chat-header__settings-btn{margin-left:auto;padding:6px 14px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:18px;cursor:pointer;transition:.3s;z-index:10}.chat-header__settings-btn:hover{border-color:var(--border-strong);color:var(--text)}.chat-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:9997;display:none;animation:overlayFade .25s ease-out}.chat-sidebar-overlay--visible{display:block}.chat-sidebar{position:fixed;top:0;right:0;width:360px;height:100vh;height:100dvh;background:var(--surface-solid);border-left:var(--border-w) solid var(--border);z-index:9998;transform:translate(100%);transition:transform var(--dur-slow) var(--ease-out);display:flex;flex-direction:column;padding:20px;overflow-y:auto}.chat-sidebar--open{transform:translate(0)}.chat-sidebar__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:var(--border-w) solid var(--border);margin-bottom:20px}.chat-sidebar__header h3{font-size:18px;font-weight:700;color:var(--text)}.chat-sidebar__close{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text-dim);width:36px;height:36px;font-size:18px;cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center}.chat-sidebar__close:hover{border-color:var(--border-strong);color:var(--text)}.chat-sidebar__section{margin-bottom:20px}.chat-sidebar__section label{display:block;font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.chat-sidebar__options{display:flex;flex-wrap:wrap;gap:6px}.chat-sidebar__options--grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.chat-sidebar__option{padding:8px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);background:transparent;color:var(--text-muted);font-size:13px;cursor:pointer;transition:.3s;text-align:center}.chat-sidebar__option:hover{border-color:var(--border-strong);color:var(--text-strong)}.chat-sidebar__option--active{border-color:var(--neon);color:var(--neon);background:color-mix(in srgb,var(--neon) 8%,transparent)}.chat-sidebar__option--active:hover{border-color:var(--neon);color:var(--neon)}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px 24px;display:flex;flex-direction:column;gap:12px;max-width:100vw;width:100%}.chat-empty-msg{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:10px}.chat-empty-msg span{font-size:48px}.chat-empty-msg p{font-size:16px}.chat-msg{display:flex;gap:var(--sp-3);max-width:100%;animation:msgAppear .25s ease-out}@keyframes msgAppear{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-msg--user{align-self:flex-end;max-width:var(--post-w-user)}.chat-msg--bot{align-self:flex-start;max-width:var(--post-w-ai)}.chat-msg-content{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0;max-width:100%}.chat-msg__stamp{font-size:var(--fs-xs);color:var(--text-dim);padding:0 var(--sp-1);letter-spacing:.02em}.chat-msg--user .chat-msg__stamp{text-align:right}.chat-msg-text{padding:var(--sp-4) var(--sp-5);border-radius:var(--r-lg);font-size:var(--fs-post-ai);line-height:var(--lh-post-ai);background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);color:var(--text);box-shadow:var(--block-shadow);word-wrap:break-word;overflow-wrap:anywhere;word-break:break-word;max-width:100%}.chat-msg--bot .chat-msg-text{background:var(--surface-solid);border-left:3px solid var(--neon2)}.chat-msg--user .chat-msg-text{padding:var(--sp-2) var(--sp-4);background:var(--neon);border-color:var(--neon);color:var(--on-accent);font-size:var(--fs-post-user);line-height:var(--lh-post-user);box-shadow:none;max-width:100%}.chat-msg--error .chat-msg-text{font-size:var(--fs-sm);line-height:var(--lh-base);border-left-color:var(--danger)}.chat-msg--typing .chat-msg-text{background:var(--surface-solid);border-color:var(--border-soft);padding:14px 20px;min-width:60px}.typing-dots{display:flex;gap:4px;justify-content:center;font-size:20px;letter-spacing:2px}.typing-dots span{animation:dotPulse 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,60%,to{opacity:.2;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-input-area{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-top:var(--border-w) solid var(--border);background:var(--surface-solid);flex-shrink:0}.chat-input-area__avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:var(--fs-md);font-weight:600;color:var(--text-soft);background:var(--surface-2);border:var(--border-w) solid var(--border-soft)}.chat-input-area__avatar img{width:100%;height:100%;object-fit:cover}.chat-input-area input{flex:1;padding:14px 18px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:var(--fs-md);outline:none;transition:border-color var(--dur-fast) var(--ease-out)}.chat-input-area input::placeholder{color:var(--text-dim)}.chat-input-area input:focus{border-color:var(--neon)}.chat-input-area input:disabled{opacity:.5}.chat-input-area__pcm{padding:0 var(--sp-4);border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:var(--fs-sm);font-family:var(--ui-font-mono);letter-spacing:.04em;cursor:pointer;flex-shrink:0;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.chat-input-area__pcm:hover{border-color:var(--neon);color:var(--neon)}.chat-input-area__send{padding:0 var(--sp-5);border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-size:var(--fs-2xl);cursor:pointer;flex-shrink:0;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.chat-input-area__send:hover:not(:disabled){filter:brightness(1.1);transform:var(--lift)}.chat-input-area__send:disabled{opacity:.4;cursor:not-allowed}.chat-sidebar__switch{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);cursor:pointer;font-size:var(--fs-sm);color:var(--text-muted);transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.chat-sidebar__switch:hover{border-color:var(--border-strong);color:var(--text)}.chat-sidebar__switch input{accent-color:var(--neon);width:16px;height:16px;cursor:pointer}.chat-wt{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2)}.chat-wt__row{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;font-size:var(--fs-sm);color:var(--text-muted)}.chat-wt__row>span{flex:1 1 auto;min-width:0}.chat-wt__row input,.chat-wt__row select{padding:6px var(--sp-2);border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:var(--fs-sm);font-family:inherit;outline:none}.chat-wt__row input[type=number]{width:64px}.chat-wt__row input:focus,.chat-wt__row select:focus{border-color:var(--neon)}.chat-wt__reset{align-self:flex-start;padding:var(--sp-2) var(--sp-3);border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-dim);font-size:var(--fs-sm);font-family:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.chat-wt__reset:hover{border-color:var(--danger);color:var(--danger)}.chat-chips{display:flex;justify-content:center;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:var(--border-w) solid var(--border);background:var(--surface-1);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;flex-shrink:0}.chat-chips::-webkit-scrollbar{display:none}.chat-chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:3px var(--sp-3);flex-shrink:0;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-full);background:var(--surface-solid);color:var(--text-dim);font:inherit;font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.chat-chip--accent{border-color:var(--neon-soft);color:var(--neon)}.chat-chip--warn{border-color:color-mix(in srgb,var(--warn) 35%,transparent);color:var(--warn)}.chat-chip:hover{border-color:var(--neon);color:var(--text)}.chat-chip__icon{font-size:var(--fs-sm);line-height:1}.chat-context-menu{position:fixed;background:var(--surface-solid-2);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:6px;min-width:180px;box-shadow:var(--block-shadow);z-index:10000;animation:contextAppear .15s ease-out}@keyframes contextAppear{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-context-menu__item{padding:10px 16px;border-radius:var(--r-sm);cursor:pointer;font-size:14px;color:var(--text-strong);transition:.2s;display:flex;align-items:center;gap:10px}.chat-context-menu__item:hover{background:var(--surface-2);color:var(--text)}.chat-msg-edit{width:100%;display:flex;flex-direction:column;gap:8px}.chat-msg-edit textarea{width:100%;padding:12px 16px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:15px;font-family:inherit;resize:vertical;outline:none;transition:border-color var(--dur-fast) var(--ease-out)}.chat-msg-edit textarea:focus{border-color:var(--neon)}.chat-msg-edit-actions{display:flex;gap:8px}.chat-msg-edit-actions button{padding:6px 16px;border:none;border-radius:var(--r-sm);font-family:var(--ui-font);font-size:13px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out)}.chat-msg-edit-actions button:first-child{background:var(--neon);color:var(--on-accent)}.chat-msg-edit-actions button:last-child{background:var(--surface-2);color:var(--text-soft)}.chat-msg-edit-actions button:last-child:hover{background:var(--border)}@media (max-width: 600px){.chat-char-select{padding:20px 14px}.chat-char-select__header h2{font-size:22px}.chat-char-select__grid{grid-template-columns:1fr 1fr}.chat-char-select__card{padding:18px 14px}.chat-char-select__card-icon{font-size:32px}.chat-messages{padding:14px 16px}.chat-msg--user{max-width:82%}.chat-msg--bot{max-width:94%}.chat-header__clock{display:none}.chat-input-area{padding:12px 16px}.chat-sidebar{width:100%;padding:16px;border-left:none}.chat-sidebar-overlay--visible{display:block}.chat-sidebar__options--grid{grid-template-columns:1fr 1fr}}@media (max-width: 400px){.chat-char-select__grid{grid-template-columns:1fr}.chat-header{padding:12px 16px}.chat-header__name{font-size:14px}}.chat-sidebar::-webkit-scrollbar{width:4px}.chat-sidebar::-webkit-scrollbar-track{background:transparent}.chat-sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chat-sidebar__data{display:flex;flex-direction:column;gap:8px}.chat-sidebar__data-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-sm)}.chat-sidebar__data-label{font-size:13px;color:var(--text-muted)}.chat-sidebar__data-value{font-size:13px;color:var(--text-dim);font-weight:500}.chat-sidebar__mechanics{display:flex;gap:8px}.chat-sidebar__mechanic-btn{flex:1;padding:10px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:.3s;text-align:center}.chat-sidebar__mechanic-btn:hover{border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.chat-sidebar__role-settings{display:flex;flex-direction:column;gap:8px}.chat-sidebar__role-setting{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-sm)}.chat-sidebar__role-setting span:first-child{font-size:13px;color:var(--text-muted)}.chat-sidebar__role-value{font-size:13px;color:var(--text-dim);font-weight:500}@media (max-width: 370px){.chat-screen{overflow:hidden}.chat-main{width:100%;min-width:0;overflow:hidden}.chat-header{padding:10px 8px;gap:6px;flex-wrap:nowrap}.chat-header__back{padding:4px 10px;font-size:16px;flex-shrink:0}.chat-header__icon{font-size:20px;flex-shrink:0}.chat-header__name{font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.chat-header__settings-btn,.chat-header__menu-btn{padding:4px 10px;font-size:var(--fs-md);flex-shrink:0}.chat-messages{padding:10px 8px;gap:var(--sp-2)}.chat-msg{gap:var(--sp-2)}.chat-msg-content{min-width:0;max-width:100%}.chat-msg-text{padding:var(--sp-3) var(--sp-4);word-wrap:break-word;overflow-wrap:anywhere;max-width:100%}.chat-msg__stamp{font-size:var(--fs-2xs)}.chat-empty-msg span{font-size:32px}.chat-empty-msg p{font-size:13px}.chat-input-area{padding:8px;gap:6px;flex-wrap:nowrap}.chat-input-area__avatar{width:32px;height:32px}.chat-input-area__pcm{padding:0 var(--sp-2);font-size:var(--fs-2xs)}.chat-input-area input{padding:8px 10px;font-size:var(--fs-sm);min-width:0;flex:1}.chat-input-area__send{padding:0 var(--sp-3);font-size:var(--fs-lg);flex-shrink:0}.chat-msg--typing .chat-msg-text{padding:10px 14px;min-width:40px}.typing-dots{font-size:16px;gap:2px}.chat-header__status{display:none}}@media (max-width: 300px){.chat-header__name{max-width:60px;font-size:11px}.chat-header__back{padding:2px 6px;font-size:14px}.chat-header__settings-btn{padding:2px 6px;font-size:12px}.chat-msg-text{font-size:var(--fs-sm);padding:6px 8px}.chat-input-area input{font-size:var(--fs-xs);padding:6px 8px}.chat-input-area__pcm{font-size:var(--fs-2xs);padding:0 var(--sp-1)}.chat-input-area__send{font-size:var(--fs-sm);padding:0 var(--sp-2)}}.chat-screen,.chat-main{max-width:100vw;overflow-x:hidden;width:100%}html,body,#root{overflow-x:hidden;max-width:100vw;width:100%}.pcm-panel{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:12px;padding:18px clamp(14px,4vw,48px) 24px;z-index:950;background:var(--surface-solid);overflow:hidden;animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.pcm-panel__header{display:flex;align-items:center;gap:16px;flex-shrink:0;padding-bottom:10px;border-bottom:var(--border-w) solid var(--border)}.pcm-panel__header h3{flex:1;min-width:0;font-size:15px;font-weight:700;color:var(--text)}.pcm-panel__close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-size:13px;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.pcm-panel__close:hover{border-color:var(--neon);color:var(--text)}.pcm-panel__stats{display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:12px;color:var(--text-dim)}.pcm-panel__mode{padding:3px 10px;border-radius:var(--r-full);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:10px;border:1px solid var(--border);color:var(--text-muted)}.pcm-panel__mode--pcm{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.pcm-panel__mode--transition{border-color:var(--border-strong);color:var(--text-soft)}.pcm-panel__hint{flex-shrink:0;margin:0;font-size:12px;line-height:1.45;color:var(--text-dim)}.pcm-panel__actions{display:flex;gap:8px;flex-shrink:0}.pcm-panel__btn{flex:1;padding:10px;background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text-muted);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.pcm-panel__btn:hover:not(:disabled){border-color:var(--neon);color:var(--text)}.pcm-panel__btn--danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.pcm-panel__btn--active{border-color:var(--neon);color:var(--neon)}.pcm-panel__btn:disabled{opacity:.4;cursor:not-allowed}.pcm-panel__note{flex-shrink:0;padding:8px 10px;font-size:12px;color:var(--text-muted);background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm)}.pcm-panel__legend{display:flex;flex-wrap:wrap;gap:14px;flex-shrink:0;font-size:11px;color:var(--text-dim)}.pcm-panel__legend-item:before{content:"■";margin-right:5px}.pcm-panel__legend-item--1:before{color:var(--neon2)}.pcm-panel__legend-item--2:before{color:var(--text-muted)}.pcm-panel__legend-item--0:before{color:var(--border-strong)}.pcm-panel__legend-item--empty:before{color:var(--text-faint)}.pcm-panel__list{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-auto-rows:min-content;align-content:start;gap:10px;padding-right:4px}.pcm-panel__list::-webkit-scrollbar{width:4px}.pcm-panel__list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.pcm-panel__empty{padding:24px 12px;text-align:center;font-size:12px;font-style:italic;color:var(--text-faint)}.pcm-cell{padding:10px 12px;background:var(--surface-1);border:1px solid var(--border-soft);border-left:3px solid var(--neon);border-radius:var(--r-md);animation:mxListIn var(--dur-slow) var(--ease-out) backwards}.pcm-cell--empty{display:flex;align-items:flex-start;min-height:58px;background:transparent;border:1px dashed var(--border-soft);border-left:3px dashed var(--border-soft);opacity:.6}.pcm-cell--empty .pcm-cell__addr{background:transparent;border-color:var(--border);color:var(--text-faint)}.pcm-cell--hidden{opacity:.45;border-left-color:var(--border-strong)}.pcm-cell__head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.pcm-cell__addr{flex-shrink:0;padding:1px 7px;border-radius:var(--r-sm);background:var(--neon-ghost);border:1px solid var(--neon-soft);color:var(--neon);font-family:var(--ui-font-mono);font-size:11px;font-weight:700}.pcm-cell--hidden .pcm-cell__addr{background:var(--surface-2);border-color:var(--border);color:var(--text-dim)}.pcm-cell__title{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pcm-cell__mask{flex-shrink:0;font-size:10px;color:var(--text-dim);white-space:nowrap}.pcm-cell__mask--1{color:var(--neon2)}.pcm-cell__mask--2{color:var(--text-muted)}.pcm-cell__tags{font-size:11px;color:var(--text-dim);margin-bottom:4px}.pcm-cell__summary{font-size:12px;line-height:1.45;color:var(--text-muted);white-space:pre-wrap}.pcm-cell__anchor{margin-top:6px;font-size:11px;color:var(--text-faint)}.chat-msg__anchor-wrap{position:relative;flex-shrink:0;align-self:center;display:inline-flex}.chat-msg__anchor{padding:0;background:none;border:none;font:inherit;font-size:12px;line-height:1;opacity:.55;cursor:pointer;transition:opacity var(--dur-base) var(--ease-out)}.chat-msg__anchor:hover,.chat-msg__anchor--active{opacity:1}.chat-msg__anchor-popup{position:absolute;left:0;bottom:calc(100% + 6px);z-index:30;display:flex;flex-direction:column;gap:4px;min-width:180px;max-width:280px;padding:8px 10px;background:var(--surface-solid);border:var(--border-w) solid var(--neon);border-radius:var(--r-sm);box-shadow:0 8px 30px #00000073;white-space:normal}.chat-msg__anchor-popup-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--neon)}.chat-msg__anchor-popup-item{font-size:12px;color:var(--text)}.chat-msg__anchor-popup-item b{color:var(--neon2);margin-right:4px}.chat-sidebar__mechanic-btn--active{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}@media (max-width: 720px){.pcm-panel{padding:12px 12px 20px;gap:10px}.pcm-panel__header{flex-wrap:wrap;gap:8px 12px}.pcm-panel__list{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}}.chat-scroll-down{position:sticky;bottom:12px;align-self:center;width:38px;height:38px;flex:0 0 auto;border-radius:50%;border:var(--border-w) solid var(--neon);background:var(--surface-solid);color:var(--neon);font-size:17px;line-height:1;cursor:pointer;box-shadow:var(--block-shadow);z-index:2}.chat-scroll-down:hover{background:var(--neon-ghost)}.chat-rmenu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:9997;display:none;animation:overlayFade .25s ease-out}.chat-rmenu-overlay--visible{display:block}.chat-rmenu{position:fixed;top:0;right:0;width:380px;max-width:100vw;height:100vh;height:100dvh;background:var(--surface-solid);border-left:var(--border-w) solid var(--border);z-index:9998;transform:translate(101%);transition:transform var(--dur-base) var(--ease-out);overflow-y:auto;overscroll-behavior:contain;padding:20px;display:flex;flex-direction:column;gap:var(--sp-4)}.chat-rmenu--open{transform:translate(0)}.chat-rmenu::-webkit-scrollbar{width:4px}.chat-rmenu::-webkit-scrollbar-track{background:transparent}.chat-rmenu::-webkit-scrollbar-thumb{background:var(--border)}.chat-rmenu__head{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);padding-bottom:var(--sp-4);border-bottom:var(--border-w) solid var(--border)}.chat-rmenu__head h3{font-size:var(--fs-lg);font-weight:700;color:var(--text)}.chat-rmenu__close{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:var(--fs-lg);line-height:1;padding:var(--sp-2) var(--sp-3);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.chat-rmenu__close:hover{border-color:var(--neon);color:var(--neon)}.chat-rmenu__section{display:flex;flex-direction:column;gap:var(--sp-3);padding-bottom:var(--sp-4);border-bottom:var(--border-w) solid var(--border-soft)}.chat-rmenu__section:last-child{border-bottom:none;padding-bottom:0}.chat-rmenu__section h4{font-size:var(--fs-md);font-weight:700;color:var(--text);text-align:center;letter-spacing:.04em}.chat-rmenu__yarn{width:120px;height:120px;align-self:center;overflow:visible}.chat-rmenu__yarn-base{fill:none;stroke:var(--border);stroke-width:6}.chat-rmenu__yarn-created{fill:none;stroke:var(--tier-rival);stroke-width:6;stroke-linecap:round}.chat-rmenu__yarn-updated{fill:none;stroke:var(--tier-love);stroke-width:6;stroke-linecap:round}.chat-rmenu__legend{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.chat-rmenu__legend li{display:flex;align-items:center;gap:var(--sp-2)}.chat-rmenu__dot{width:14px;height:14px;flex-shrink:0}.chat-rmenu__dot--created{background:var(--tier-rival)}.chat-rmenu__dot--updated{background:var(--tier-love)}.chat-rmenu__note{font-size:var(--fs-xs);color:var(--text-dim);text-align:center}.chat-rmenu__card{border:var(--border-w) solid var(--border-soft);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-muted)}.chat-rmenu__card b{color:var(--text)}.chat-rmenu__avg{color:var(--text-soft)}.chat-rmenu__rel{display:flex;gap:var(--sp-2);align-items:baseline;font-size:var(--fs-xs)}.chat-rmenu__rel-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-rmenu__rel-value{color:var(--neon);font-family:var(--ui-font-mono)}.chat-rmenu__rel-tier{color:var(--text-dim)}.chat-rmenu__empty{color:var(--text-dim);font-size:var(--fs-xs)}.chat-rmenu__hint{font-size:var(--fs-sm);color:var(--text-muted)}.chat-rmenu__muted{font-size:var(--fs-xs);color:var(--text-dim);text-align:center}.chat-rmenu__btn{padding:var(--sp-3);border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text);font:inherit;font-size:var(--fs-sm);letter-spacing:.04em;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.chat-rmenu__btn:hover:not(:disabled){border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.chat-rmenu__btn:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 600px){.chat-rmenu{width:100%;max-width:100%;padding:var(--sp-4)}.chat-rmenu__close{font-size:var(--fs-xl);padding:var(--sp-2) var(--sp-4)}}.mech-panel{display:flex;flex-direction:column;gap:8px;padding:14px;overflow-y:auto;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.mech-panel__head{display:flex;align-items:center;gap:10px}.mech-panel__head h3{flex:1;font-size:14px;color:var(--neon)}.mech-panel__close{background:none;border:none;color:var(--text-dim);font-size:15px;cursor:pointer}.mech-panel__hint{font-size:11px;line-height:1.45;color:var(--text-dim)}.mech-sub{font-size:12px;color:var(--text-soft);margin-top:6px}.mech-empty{font-size:12px;color:var(--text-faint);padding:6px 0}.mech-muted{font-size:11px;color:var(--text-faint)}.mech-val{font-size:12px;color:var(--text-muted);min-width:52px;text-align:right}.mech-row{display:flex;align-items:center;gap:8px}.mech-row--between{justify-content:space-between}.mech-input,.mech-row select{flex:1;min-width:0;padding:7px 10px;font:inherit;font-size:13px;background:var(--bg);color:var(--text);border:1px solid var(--border-soft);border-radius:var(--r-sm);outline:none}.mech-input:focus,.mech-row select:focus{border-color:var(--neon)}.mech-chips{display:flex;flex-wrap:wrap;gap:5px}.mech-chips button{padding:5px 9px;font:inherit;font-size:11px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-soft)}.mech-chips button:hover:not(:disabled){border-color:var(--neon);color:var(--neon)}.mech-chips button:disabled{opacity:.45;cursor:default}.mech-btn{align-self:flex-start;padding:7px 13px;font:inherit;font-size:12px;cursor:pointer;background:var(--neon-ghost);border:1px solid var(--neon);border-radius:var(--r-sm);color:var(--neon)}.mech-btn:disabled{opacity:.5;cursor:default}.mech-error{font-size:12px;color:var(--danger)}.mech-x{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:13px;padding:0 4px}.mech-x:hover{color:var(--danger)}.mech-rel{display:flex;flex-direction:column;gap:5px;padding:9px 11px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.mech-rel__top{display:flex;justify-content:space-between;gap:8px;font-size:12px}.mech-rel__who{color:var(--text);font-weight:600}.mech-rel__tier{color:var(--text-dim)}.mech-rel__mask{font-size:10px;color:var(--neon2)}.mech-gear{position:relative;display:flex;height:8px;border-radius:999px;overflow:visible;background:var(--bg);border:1px solid var(--border)}.mech-gear__seg{flex:1;height:100%}.mech-gear__seg:first-child{border-radius:999px 0 0 999px}.mech-gear__seg:last-child{border-radius:0 999px 999px 0}.mech-gear__seg--enemy{background:color-mix(in srgb,var(--danger) 70%,transparent)}.mech-gear__seg--rival{background:color-mix(in srgb,var(--warn) 70%,transparent)}.mech-gear__seg--acq{background:color-mix(in srgb,var(--text-faint) 55%,transparent)}.mech-gear__seg--friend{background:color-mix(in srgb,var(--neon2) 65%,transparent)}.mech-gear__seg--best{background:color-mix(in srgb,var(--neon) 70%,transparent)}.mech-gear__seg--love{background:color-mix(in srgb,#ff6ea9 80%,transparent)}.mech-gear__marker{position:absolute;top:-3px;width:3px;height:14px;border-radius:2px;background:var(--text);box-shadow:0 0 6px var(--neon);transform:translate(-1px)}.mech-event{display:flex;gap:8px;padding:6px 9px;font-size:11px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-sm)}.mech-event__delta{min-width:34px;font-weight:700;color:var(--text-dim)}.mech-event__delta.is-up{color:var(--neon2)}.mech-event__delta.is-down{color:var(--danger)}.mech-event__text{flex:1;color:var(--text-muted)}.mech-twist{padding:9px 11px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.mech-twist__event{font-size:12px;color:var(--text)}.mech-twist__cb{font-size:11px;color:var(--neon2);margin-top:3px}.mech-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px;background:#0009;animation:fadeIn var(--dur-fast) var(--ease-out) backwards}.mech-paper{width:620px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;gap:10px;padding:18px;overflow:hidden;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);box-shadow:0 20px 60px #0009;animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.mech-paper__actions{display:flex;align-items:center;gap:8px}.mech-paper__body{overflow-y:auto;padding-right:4px}.mech-paper__title{font-size:24px;font-weight:900;letter-spacing:.04em;text-align:center;color:var(--text);border-bottom:var(--border-w) solid var(--border);padding-bottom:8px}.mech-paper__date{text-align:center;font-size:11px;color:var(--text-faint);margin:6px 0 12px}.mech-paper__page{margin-bottom:14px}.mech-paper__page h4{font-size:13px;color:var(--neon);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}.mech-paper__page p{font-size:12px;line-height:1.5;color:var(--text-muted);white-space:pre-wrap}.mech-paper__archive{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border-top:var(--border-w) solid var(--border);padding-top:10px}.mech-paper__archive button{padding:4px 10px;font:inherit;font-size:11px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-soft)}.mech-paper__archive button.is-on{border-color:var(--neon);color:var(--neon)}.chat-mech-note{align-self:flex-start;margin:6px 0 0;padding:5px 11px;font-size:11px;color:var(--neon2);background:color-mix(in srgb,var(--neon2) 10%,transparent);border:1px solid color-mix(in srgb,var(--neon2) 35%,transparent);border-radius:var(--r-sm);animation:mxToastIn var(--dur-base) var(--ease-out) backwards}@media (max-width: 600px){.mech-paper{padding:14px}.mech-paper__title{font-size:19px}}.mech-wheel{display:block;margin:0 auto;max-width:100%;height:auto}.mech-wheel__gear{fill:none;stroke:var(--border);stroke-width:2}.mech-wheel__sector{stroke:var(--border-soft);stroke-width:1}.mech-wheel__sector--enemy{fill:var(--tier-enemy)}.mech-wheel__sector--rival{fill:var(--tier-rival)}.mech-wheel__sector--acq{fill:var(--tier-acq)}.mech-wheel__sector--friend{fill:var(--tier-friend)}.mech-wheel__sector--best{fill:var(--tier-best)}.mech-wheel__sector--love{fill:var(--tier-love)}.mech-wheel__label{fill:var(--text);font-family:inherit;font-size:12px}.mech-wheel__needle{fill:var(--text);stroke:var(--bg);stroke-width:1.5}.mech-wheel__needle--b{opacity:.6}.mech-wheel__needle--enemy{fill:var(--danger)}.mech-wheel__needle--rival{fill:var(--warn)}.mech-wheel__needle--love{fill:#ff6ea9}.mech-wheel__center-num{fill:var(--text);font-family:var(--ui-font-mono);font-size:28px;font-weight:700}.mech-wheel__center-num--b{font-size:17px;font-weight:400;fill:var(--text-soft)}.mech-wheel__center-tier{fill:var(--text-muted);font-family:inherit;font-size:12px}.mech-rgscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:940;background:var(--bg);overflow-y:auto;padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.mech-rgscreen__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding-bottom:var(--sp-3);border-bottom:var(--border-w) solid var(--border)}.mech-rgscreen__head h3{font-size:var(--fs-lg);font-weight:700;color:var(--text)}.mech-rgscreen__close{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:var(--fs-lg);line-height:1;padding:var(--sp-2) var(--sp-3);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.mech-rgscreen__close:hover{border-color:var(--neon);color:var(--neon)}.mech-rgscreen__error{padding:var(--sp-3);border:var(--border-w) solid var(--danger);color:var(--danger);font-size:var(--fs-sm)}.mech-rgscreen__grid{display:grid;grid-template-columns:240px minmax(300px,1fr) 240px;gap:var(--sp-4);align-items:start}.mech-rgscreen__center{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.mech-rgscreen__picks{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2)}.mech-pick{width:100%;padding:var(--sp-3);border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text);font:inherit;font-size:var(--fs-sm);cursor:pointer}.mech-pick:focus{border-color:var(--neon);outline:none}.mech-sheets{display:flex;flex-direction:column;gap:var(--sp-2)}.mech-sheets__empty{font-size:var(--fs-xs);color:var(--text-dim);padding:var(--sp-2)}.mech-sheetcard{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:var(--surface-1);min-width:0}.mech-sheetcard__avatar{width:34px;height:34px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-3);border:var(--border-w) solid var(--border);color:var(--text-soft);font-size:var(--fs-md);font-weight:600}.mech-sheetcard__name{font-size:var(--fs-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mech-rgscreen__feed{border:var(--border-w) solid var(--border-soft);background:var(--surface-1);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);max-height:220px;overflow-y:auto}.mech-rgscreen__feed-title{font-size:var(--fs-sm);color:var(--text-muted)}.mech-rgscreen__feed-empty{font-size:var(--fs-xs);color:var(--text-dim)}.mech-rgscreen__event{display:flex;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted)}.mech-rgscreen__delta{font-family:var(--ui-font-mono);flex-shrink:0}.mech-rgscreen__delta--up{color:var(--success)}.mech-rgscreen__delta--down{color:var(--danger)}.mech-rgscreen__event-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mech-rgscreen__event-time{flex-shrink:0;color:var(--text-dim)}@media (max-width: 900px){.mech-rgscreen{padding:var(--sp-4)}.mech-rgscreen__grid{grid-template-columns:1fr}.mech-rgscreen__center{order:1}.mech-sheets{order:2;display:grid;grid-template-columns:1fr 1fr}.mech-sheets__empty{grid-column:1 / -1}.mech-wheel{max-width:340px}}.syn-body{display:flex;flex-direction:column;gap:var(--sp-3)}.syn-body p{font-size:var(--fs-md);line-height:var(--lh-loose);color:var(--text-soft)}.syn-print{display:none}@media print{body *{visibility:hidden}.syn-print,.syn-print *{visibility:visible}.syn-print{display:block;position:absolute;top:0;right:0;bottom:0;left:0;padding:22mm 18mm;background:#fff;color:#000;font-family:Georgia,Times New Roman,serif;font-size:12pt;line-height:1.55}.syn-print h1{font-size:20pt;margin-bottom:8mm}.syn-print p{margin-bottom:4mm}@page{margin:0}}.account{height:100vh;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;text-align:center;padding:28px 20px;gap:18px}.profile-card{background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-xl);padding:40px;box-shadow:var(--block-shadow);display:inline-block;min-width:320px}.avatar-wrapper{position:relative;display:inline-block;margin-bottom:20px}.avatar{width:100px;height:100px;border-radius:50%;overflow:hidden;cursor:pointer;position:relative;border:var(--border-w) solid var(--border);transition:border-color var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center;font-size:50px;background:var(--surface-solid)}.avatar:hover{border-color:var(--neon)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:.3s;border-radius:50%}.avatar:hover .avatar-overlay{opacity:1}.avatar-overlay span{font-size:28px}.avatar-remove{position:absolute;top:-6px;right:-6px;width:28px;height:28px;border-radius:50%;border:none;background:var(--danger);color:var(--on-accent);font-size:14px;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center}.avatar-remove:hover{filter:brightness(1.1)}.avatar-remove:disabled{opacity:.4;cursor:not-allowed}.public-id{color:var(--neon);font-weight:600;font-family:var(--ui-font-mono);font-size:15px;background:var(--neon-ghost);padding:2px 10px;border-radius:var(--r-sm)}.account-error{margin-top:15px;padding:10px 14px;border-radius:var(--r-sm);background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);font-size:14px}.account-success{margin-top:15px;padding:10px 14px;border-radius:var(--r-sm);background:var(--success-soft);border:var(--border-w) solid color-mix(in srgb,var(--success) 25%,transparent);color:var(--success);font-size:14px}.logout-btn{margin-top:25px;padding:12px 35px;border:var(--border-w) solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:var(--r-md);background:transparent;color:var(--danger);font-family:var(--ui-font);font-size:16px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);width:100%}.logout-btn:hover{background:var(--danger-soft);border-color:var(--danger)}.account__header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.account__header h2{font-size:24px;font-weight:700;color:var(--text)}@media (max-width: 480px){.profile-card{min-width:auto;width:100%;padding:30px 20px}.avatar{width:80px;height:80px;font-size:40px}}.account-sessions{width:100%;max-width:680px;padding:20px;border-radius:var(--r-xl);border:var(--border-w) solid var(--border);background:var(--surface-solid);text-align:left}.account-sessions__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.account-sessions__title{margin:0;font-size:17px}.account-sessions__all{padding:7px 12px;border-radius:var(--r-sm);border:var(--border-w) solid var(--border-strong);background:transparent;color:var(--text-muted);font-family:var(--ui-font);font-size:12px;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.account-sessions__all:hover:not(:disabled){color:var(--text);border-color:var(--text-faint)}.account-sessions__all:disabled{opacity:.4;cursor:default}.account-sessions__mode{margin:10px 0 14px;font-size:12px;color:var(--text-dim)}.account-sessions__empty{margin:10px 0 0;font-size:13px;color:var(--text-dim)}.account-session{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:var(--border-w) solid var(--border-soft)}.account-session--current .account-session__device{color:var(--neon)}.account-session__device{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;font-weight:600}.account-session__badge{padding:2px 7px;border-radius:999px;border:var(--border-w) solid var(--neon);color:var(--neon);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.account-session__meta{margin-top:4px;font-size:12px;color:var(--text-dim)}.account-session__revoke{flex:0 0 auto;padding:7px 12px;border-radius:var(--r-sm);border:var(--border-w) solid var(--border-strong);background:transparent;color:var(--text-muted);font-family:var(--ui-font);font-size:12px;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.account-session__revoke:hover{color:var(--text);border-color:var(--text-faint)}.account-donators{margin-top:28px;padding-top:20px;border-top:var(--border-w) solid var(--border-soft)}.account-donators__title{margin:0 0 4px;font-size:18px}.account-donators__hint{margin:0 0 14px;color:var(--text-dim);font-size:12px}.account-donators__empty{margin:8px 0 0;color:var(--text-dim);font-size:13px}.account-donators__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.account-donator{display:flex;align-items:center;gap:10px;padding:10px 12px;border:var(--border-w) solid var(--border-soft);background:var(--surface-1)}.account-donator__rank{flex:0 0 24px;color:var(--text-dim);font-variant-numeric:tabular-nums}.account-donator__name{font-weight:600}.account-donator__note{color:var(--text-dim);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-donator__amount{margin-left:auto;color:var(--neon);font-weight:600;font-variant-numeric:tabular-nums}.account-donator__actions{display:flex;gap:6px}.account-donator__actions button{padding:4px 8px;border:var(--border-w) solid var(--border);background:transparent;color:var(--text-dim);font:inherit;font-size:11px;cursor:pointer}.account-donator__actions button:hover{color:var(--danger);border-color:var(--danger)}.account-donators__form{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.account-donators__form input{flex:1;min-width:120px;padding:8px 10px;border:var(--border-w) solid var(--border);background:var(--surface-1);color:var(--text);font:inherit;font-size:13px}.account-donators__form button{padding:8px 14px;border:var(--border-w) solid var(--neon);background:var(--neon);color:var(--on-accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.account-donators__form button[type=button]{background:transparent;color:var(--text-muted);border-color:var(--border-strong)}@media (max-width: 520px){.account-session{align-items:flex-start;flex-direction:column}.account-donator{flex-wrap:wrap}.account-donator__amount{margin-left:0}}.settings-wrapper{position:relative;height:100vh;height:100dvh;padding:15px;overflow:hidden}.settings-3d-bg{display:none}.settings{position:relative;z-index:10;max-width:600px;margin:0 auto;transform:none!important;padding:60px 20px 40px;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow-y:auto}.settings::-webkit-scrollbar{width:6px}.settings::-webkit-scrollbar-track{background:transparent}.settings::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--r-sm)}.settings::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.settings__title{font-size:28px;font-weight:800;margin-bottom:24px;color:var(--neon);letter-spacing:.02em;text-align:center}.app--design-terminal .settings__title:before{content:"$ ";color:var(--text-dim);font-weight:400}.settings__tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px;padding:6px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md)}.settings__tab{flex:1 1 auto;min-width:108px;padding:11px 12px;border-radius:var(--r-sm);border:var(--border-w) solid transparent;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;font-family:var(--ui-font);white-space:nowrap;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.settings__tab:hover{color:var(--text-strong);background:var(--surface-1)}.settings__tab--active{color:var(--neon);background:var(--neon-ghost);border-color:var(--neon)}.settings__section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin:20px 0 10px 4px}.settings__section-label:first-of-type{margin-top:0}.setting-row{display:flex;justify-content:space-between;align-items:center;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:14px 18px;margin-bottom:10px;box-shadow:var(--block-shadow);transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out);gap:12px}.setting-row:hover{border-color:var(--border-strong)}.setting-row__info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.setting-row__title{font-size:15px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px}.setting-row__desc{font-size:12px;color:var(--text-dim);line-height:1.4}.setting-row__warning{margin-top:7px;padding:7px 10px;border-radius:var(--r-sm);border-left:3px solid var(--neon);background:color-mix(in srgb,var(--neon) 8%,transparent);font-size:12px;line-height:1.4;color:var(--text-muted)}.setting-row__message{margin-top:7px;font-size:12px;line-height:1.4;color:var(--text-soft)}.setting-row input[type=checkbox],.settings__custom-item input[type=checkbox]{width:46px;height:26px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-2);border-radius:var(--r-full);border:var(--border-w) solid var(--border);cursor:pointer;transition:.3s;position:relative;flex-shrink:0;margin:0}.setting-row input[type=checkbox]:checked,.settings__custom-item input[type=checkbox]:checked{background:var(--neon);border-color:var(--neon)}.setting-row input[type=checkbox]:after,.settings__custom-item input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--on-accent);border-radius:var(--r-full);transition:.3s cubic-bezier(.4,0,.2,1)}.setting-row input[type=checkbox]:checked:after,.settings__custom-item input[type=checkbox]:checked:after{left:22px}.theme-selector{display:flex;gap:8px;flex-wrap:wrap}.theme-btn{width:40px;height:40px;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--surface-solid);cursor:pointer;font-size:18px;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center}.theme-btn:hover{border-color:var(--text-faint)}.theme-btn--active{border-color:var(--neon);background:var(--neon-ghost);transform:var(--lift)}.design-selector{display:flex;gap:8px;flex-wrap:wrap}.design-btn{padding:8px 14px;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text-muted);font-family:var(--ui-font);font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.design-btn:hover{border-color:var(--text-faint);color:var(--text)}.design-btn--active{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost);transform:var(--lift)}.settings__custom-form{display:flex;flex-direction:column;gap:12px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:16px;margin-bottom:14px}.settings__custom-form>input[type=text]{width:100%;padding:12px 16px;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out);font-family:inherit}.settings__custom-form>input[type=text]:focus{border-color:var(--neon)}.settings__custom-form>input[type=text]::placeholder{color:var(--text-dim)}.settings__custom-chance{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-soft)}.settings__custom-chance label{font-weight:500}.settings__custom-chance input{width:80px;padding:8px 12px;border-radius:var(--r-sm);border:var(--border-w) solid var(--border);background:var(--bg);color:var(--text);font-size:14px;outline:none;text-align:center;font-weight:600;transition:border-color var(--dur-fast) var(--ease-out)}.settings__custom-chance input:focus{border-color:var(--neon)}.settings__custom-add{padding:12px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:14px;font-weight:700;cursor:pointer;letter-spacing:.03em;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.settings__custom-add:hover:not(:disabled){filter:brightness(1.1);transform:var(--lift)}.settings__custom-add:disabled{opacity:.35;cursor:not-allowed}.settings__custom-empty{text-align:center;padding:30px 20px;color:var(--text-faint);font-size:13px;font-style:italic;background:var(--surface-solid);border:1px dashed var(--border);border-radius:var(--r-md)}.settings__custom-list{display:flex;flex-direction:column;gap:10px}.settings__custom-item{display:flex;align-items:flex-start;gap:12px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:14px;transition:border-color var(--dur-fast) var(--ease-out)}.settings__custom-item:hover{border-color:var(--border-strong)}.settings__custom-item--off{opacity:.4}.settings__custom-item--off .settings__custom-text-input{text-decoration:line-through}.settings__custom-item input[type=checkbox]{margin-top:4px}.settings__custom-info{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.settings__custom-text-input{width:100%;padding:8px 12px;border-radius:var(--r-sm);border:var(--border-w) solid var(--border);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out);font-family:inherit}.settings__custom-text-input:focus{border-color:var(--neon)}.settings__custom-chance-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.settings__custom-chance-row input{width:70px;padding:6px 10px;border-radius:var(--r-sm);border:var(--border-w) solid var(--border);background:var(--bg);color:var(--text);font-size:13px;outline:none;text-align:center;font-weight:600}.settings__custom-chance-row input:focus{border-color:var(--neon)}.settings__custom-remove{background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);border-radius:var(--r-sm);width:32px;height:32px;font-size:14px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);flex-shrink:0;display:flex;align-items:center;justify-content:center}.settings__custom-remove:hover{background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:var(--danger)}@media (max-width: 600px){.settings-wrapper{padding:10px}.settings{padding:60px 12px 30px}.settings__title{font-size:22px;margin-bottom:18px}.settings__tabs{padding:5px;gap:5px}.settings__tab{padding:10px 12px;font-size:13px}.setting-row{padding:12px 14px;margin-bottom:8px}.setting-row__title{font-size:14px}.setting-row__desc{font-size:11px}.theme-btn{width:36px;height:36px;font-size:16px}.settings__custom-form,.settings__custom-item{padding:12px}}@media (max-width: 400px){.settings__tabs{flex-direction:column}.settings__tab{width:100%}.theme-selector{gap:6px}.theme-btn{width:32px;height:32px;font-size:14px}}.settings__header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.settings__header .settings__title{margin-bottom:0;text-align:left;flex:1}.settings__hint{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin-bottom:16px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md)}.settings__hint-icon{flex-shrink:0;font-size:18px;line-height:1.4}.settings__hint p{margin:0;font-size:13px;line-height:1.5;color:var(--text-muted)}.settings__format{margin-bottom:16px;padding:12px 16px;font-size:12.5px;line-height:1.6;color:var(--text-dim);background:var(--surface-solid);border:1px dashed var(--border);border-radius:var(--r-md)}.settings__format code{padding:1px 6px;border-radius:var(--r-sm);background:var(--neon-ghost);border:1px solid var(--neon-soft);color:var(--neon);font-family:var(--ui-font-mono);font-size:12px;white-space:nowrap}.settings__dialogues{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.dialogue-card{display:flex;align-items:stretch;gap:8px;animation:mxListIn var(--dur-slow) var(--ease-out) backwards}.dialogue-card__preview{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:16px 20px;text-align:left;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);color:var(--text-muted);font-family:inherit;font-size:14px;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.dialogue-card__preview:hover{border-color:var(--neon);background:var(--surface-2)}.dialogue-card__pencil{flex-shrink:0;opacity:.7}.dialogue-card__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialogue-card__text--empty{color:var(--text-dim);font-style:italic}.dialogue-card__input{flex:1;min-width:0;padding:14px 18px;background:var(--bg);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);color:var(--text);font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;outline:none;transition:border-color var(--dur-base) var(--ease-out)}.dialogue-card__input:focus{border-color:var(--neon)}.dialogue-card--open .dialogue-card__input{border-color:var(--neon)}.dialogue-card__remove{flex-shrink:0;width:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:var(--border-w) solid transparent;border-radius:var(--r-md);color:var(--text-dim);font-size:16px;cursor:pointer;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.dialogue-card__remove:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent);background:var(--danger-soft)}.settings__dialogue-add{padding:14px;margin-bottom:12px;background:var(--surface-solid);border:1px dashed var(--border-strong);border-radius:var(--r-md);color:var(--text-muted);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.settings__dialogue-add:hover:not(:disabled){border-color:var(--neon);color:var(--text);transform:var(--lift)}.settings__dialogue-add:disabled{opacity:.35;cursor:not-allowed}.settings__dialogue-confirm{padding:16px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:15px;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:filter var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.settings__dialogue-confirm:hover:not(:disabled){filter:brightness(1.1);transform:var(--lift)}.settings__dialogue-confirm:active:not(:disabled){transform:scale(.99)}.settings__dialogue-confirm:disabled{opacity:.35;cursor:not-allowed}.settings__dialogue-confirm--saved{background:var(--success);color:#0a1a0a}.settings__dialogue-unsaved{margin-top:10px;text-align:center;font-size:12px;color:var(--text-dim)}.creator-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:9999;display:flex;align-items:center;justify-content:center;animation:overlayFade .2s ease-out}.creator-modal{background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);padding:32px;max-width:520px;width:100%;margin:20px;max-height:90vh;overflow-y:auto;box-shadow:var(--block-shadow);animation:modalSlide .25s cubic-bezier(.175,.885,.32,1.275)}.creator-modal::-webkit-scrollbar{width:4px}.creator-modal::-webkit-scrollbar-track{background:transparent}.creator-modal::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.creator-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.creator-modal__header h2{font-size:24px;font-weight:700;color:var(--neon)}.creator-modal__close{background:var(--surface-2);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);color:var(--text-muted);width:36px;height:36px;font-size:18px;cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center}.creator-modal__close:hover{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.creator-modal__form{display:flex;flex-direction:column;gap:16px}.creator-modal__field{display:flex;flex-direction:column;gap:6px}.creator-modal__field label{font-size:13px;font-weight:600;color:var(--text-soft);letter-spacing:.05em}.creator-modal__field input,.creator-modal__field textarea{background:var(--bg);border:var(--border-w) solid var(--border);border-radius:var(--r-md);padding:12px 16px;color:var(--text);font-size:15px;outline:none;transition:border-color var(--dur-fast) var(--ease-out);font-family:inherit;resize:vertical}.creator-modal__field input:focus,.creator-modal__field textarea:focus{border-color:var(--neon)}.creator-modal__field input::placeholder,.creator-modal__field textarea::placeholder{color:var(--text-faint)}.creator-modal__field--avatar{align-items:center}.creator-modal__field--avatar label{align-self:flex-start}.creator-modal__avatar-wrapper{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}.creator-modal__avatar{width:80px;height:80px;border-radius:50%;border:var(--border-w) dashed var(--border-strong);overflow:hidden;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out);flex-shrink:0;background:var(--surface-solid);position:relative}.creator-modal__avatar:hover{border-color:var(--neon)}.creator-modal__avatar img{width:100%;height:100%;object-fit:cover}.creator-modal__avatar-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);font-size:11px;gap:2px}.creator-modal__avatar-placeholder span{font-size:28px}.creator-modal__avatar-placeholder p{font-size:9px;margin:0;text-align:center;line-height:1.2}.creator-modal__avatar-remove{background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:50%;color:var(--danger);width:28px;height:28px;font-size:12px;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);display:flex;align-items:center;justify-content:center;flex-shrink:0}.creator-modal__avatar-remove:hover{background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:var(--danger)}.creator-modal__fandom-wrapper{display:flex;gap:8px;width:100%}.creator-modal__fandom-wrapper input{flex:1}.creator-modal__fandom-search-btn{padding:0 16px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text-muted);font-size:18px;cursor:pointer;transition:.3s;flex-shrink:0}.creator-modal__fandom-search-btn:hover{border-color:var(--neon);color:var(--text)}.creator-modal__fandom-search-input{display:flex;gap:8px}.creator-modal__fandom-search-input input{flex:1;background:var(--bg);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);padding:8px 12px;color:var(--text);font-size:14px;outline:none}.creator-modal__fandom-search-input input:focus{border-color:var(--neon)}.creator-modal__fandom-search-input button{padding:8px 16px;border:none;border-radius:var(--r-sm);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:13px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out)}.creator-modal__fandom-search-input button:hover{filter:brightness(1.1)}.creator-modal__fandom-results{margin-top:10px;display:flex;flex-direction:column;gap:4px;max-height:120px;overflow-y:auto}.creator-modal__fandom-result{padding:8px 12px;border-radius:var(--r-sm);cursor:pointer;transition:.2s;font-size:14px;color:var(--text-soft)}.creator-modal__fandom-result:hover{background:var(--surface-2);color:var(--text)}.creator-modal__fandom-empty{padding:10px 12px;color:var(--text-dim);font-size:14px;text-align:center}.creator-modal__error{padding:10px 14px;border-radius:var(--r-sm);background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);font-size:14px;text-align:center}.creator-modal__actions{display:flex;gap:12px;margin-top:6px}.creator-modal__btn{flex:1;padding:12px;border:none;border-radius:var(--r-md);font-family:var(--ui-font);font-size:15px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.creator-modal__btn--cancel{background:var(--surface-2);color:var(--text-soft);border:var(--border-w) solid var(--border-soft)}.creator-modal__btn--cancel:hover{background:var(--border)}.creator-modal__btn--submit{background:var(--neon);color:var(--on-accent)}.creator-modal__btn--submit:hover:not(:disabled){filter:brightness(1.1)}.creator-modal__btn--submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.creator-modal{padding:24px 18px;margin:12px;max-height:95vh}.creator-modal__header h2{font-size:20px}.creator-modal__avatar{width:64px;height:64px}.creator-modal__avatar-placeholder span{font-size:22px}.creator-modal__fandom-search{padding:8px}}.my-chars{height:100vh;height:100dvh;padding:80px 20px 20px;overflow-y:auto;background:var(--bg)}.my-chars__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.my-chars__header h2{font-size:28px;font-weight:800;color:var(--neon)}.my-chars__create-btn{padding:10px 24px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text);box-shadow:var(--block-shadow);font-family:var(--ui-font);font-size:15px;font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.my-chars__create-btn:hover{border-color:var(--neon);background:var(--surface-2);transform:var(--lift)}.my-chars__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:15px;height:60vh}.my-chars__empty span{font-size:56px}.my-chars__empty p{font-size:16px}.my-chars__empty-btn{padding:14px 30px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:16px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.my-chars__empty-btn:hover{filter:brightness(1.1);transform:var(--lift)}.my-chars__list{display:flex;flex-direction:column;gap:10px;max-width:700px;margin:0 auto}.my-chars__card{background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);padding:14px 18px;box-shadow:var(--block-shadow);transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out);cursor:pointer}.my-chars__card:hover{border-color:var(--border-strong);background:var(--surface-2);transform:var(--lift)}.my-chars__card--expanded{border-color:var(--neon);background:var(--neon-ghost)}.my-chars__card-main{display:flex;align-items:center;gap:14px}.my-chars__card-avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0;overflow:hidden;background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:24px}.my-chars__card-avatar img{width:100%;height:100%;object-fit:cover}.my-chars__card-info{flex:1;min-width:0}.my-chars__card-info h3{font-size:16px;font-weight:600;color:var(--text)}.my-chars__card-last-msg{font-size:13px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.my-chars__card-fandom{display:inline-block;font-size:10px;color:var(--text-dim);background:var(--surface-2);padding:1px 8px;border-radius:var(--r-sm);margin-top:2px}.my-chars__card-expand-icon{font-size:14px;color:var(--text-faint);flex-shrink:0;transition:color var(--dur-base) var(--ease-out)}.my-chars__card--expanded .my-chars__card-expand-icon{color:var(--neon)}.my-chars__card-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:var(--border-w) solid var(--border-soft);animation:actionsSlide var(--dur-base) var(--ease-out)}@keyframes actionsSlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.my-chars__card-btn{flex:1;padding:8px 12px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center;gap:6px}.my-chars__card-btn:hover{border-color:var(--border-strong);color:var(--text)}.my-chars__card-btn--chat:hover{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.my-chars__card-btn--edit:hover{border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.my-chars__card-btn--delete:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.my-chars__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:9999;display:flex;align-items:center;justify-content:center;animation:overlayFade .2s ease-out}.my-chars__modal{background:var(--surface-solid-2);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);padding:30px;max-width:400px;width:100%;margin:20px;box-shadow:var(--block-shadow);animation:modalSlide .25s cubic-bezier(.175,.885,.32,1.275)}.my-chars__modal h3{font-size:20px;color:var(--danger);margin-bottom:10px}.my-chars__modal p{font-size:15px;color:var(--text-soft);line-height:1.5}.my-chars__modal p strong{color:var(--text)}.my-chars__modal-actions{display:flex;gap:12px;margin-top:20px}.my-chars__modal-btn{flex:1;padding:12px;border:none;border-radius:var(--r-md);font-family:var(--ui-font);font-size:15px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.my-chars__modal-btn--cancel{background:var(--surface-2);color:var(--text-soft);border:var(--border-w) solid var(--border-soft)}.my-chars__modal-btn--cancel:hover{background:var(--border)}.my-chars__modal-btn--confirm{background:var(--danger);color:var(--on-accent)}.my-chars__modal-btn--confirm:hover{filter:brightness(1.1)}@media (max-width: 600px){.my-chars{padding:70px 14px 14px}.my-chars__header h2{font-size:22px}.my-chars__card{padding:12px 14px}.my-chars__card-avatar{width:40px;height:40px;font-size:20px}.my-chars__card-info h3{font-size:15px}.my-chars__card-btn{font-size:12px;padding:6px 10px}}@media (max-width: 400px){.my-chars__card-actions{flex-wrap:wrap}.my-chars__card-btn{flex:1 1 45%}}.new-chat{padding:16px;max-width:1200px;margin:0 auto}.new-chat__header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.new-chat__header h2{flex:1;min-width:0;font-size:18px;color:var(--text)}.new-chat__back{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-size:15px;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.new-chat__back:hover{border-color:var(--neon);color:var(--text)}.new-chat__counter{flex-shrink:0;padding:3px 10px;border:1px solid var(--border);border-radius:var(--r-full);font-size:12px;color:var(--text-dim)}.new-chat__hint{margin:0 0 16px;font-size:12px;color:var(--text-dim)}.new-chat__empty{padding:40px 12px;text-align:center;font-size:13px;color:var(--text-faint)}.new-chat__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.new-chat__manage{flex-shrink:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:17px;cursor:pointer;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-soft);transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.new-chat__manage:hover{border-color:var(--neon);color:var(--neon)}.new-chat__empty span{font-size:34px;display:block;margin-bottom:8px}.new-chat__empty p{margin:0 0 14px;color:var(--text-muted)}.new-chat__cta{padding:10px 18px;font:inherit;font-size:13px;cursor:pointer;background:var(--neon-ghost);border:var(--border-w) solid var(--neon);border-radius:var(--r-md);color:var(--neon);transition:transform var(--dur-fast) var(--ease-out)}.new-chat__cta:hover{transform:translateY(-1px)}@media (max-width: 900px){.new-chat__grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 560px){.new-chat{padding:12px}.new-chat__grid{grid-template-columns:repeat(2,1fr);gap:10px}}.new-chars{padding:16px;max-width:1200px;margin:0 auto}.new-chars__header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.new-chars__header h2{flex:1;min-width:0;font-size:18px;color:var(--text)}.new-chars__back{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-size:15px;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.new-chars__back:hover{border-color:var(--neon);color:var(--text)}.new-chars__counter{flex-shrink:0;padding:3px 10px;border:1px solid var(--border);border-radius:var(--r-full);font-size:12px;color:var(--text-dim)}.new-chars__to-chat{flex-shrink:0;padding:7px 12px;font:inherit;font-size:12px;cursor:pointer;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-soft);transition:border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.new-chars__to-chat:hover{border-color:var(--neon);color:var(--neon)}.new-chars__hint{margin:0 0 16px;font-size:12px;color:var(--text-dim)}.new-chars__empty{padding:40px 12px;text-align:center;font-size:13px;color:var(--text-faint)}.new-chars__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}@media (max-width: 1000px){.new-chars__grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 700px){.new-chars__grid{grid-template-columns:repeat(3,1fr);gap:10px}}@media (max-width: 460px){.new-chars{padding:12px}.new-chars__grid{grid-template-columns:repeat(2,1fr);gap:8px}}.new-chars--embedded{height:auto;padding:0}.hub{height:100vh;height:100dvh;overflow-y:auto;padding:20px 24px 40px;max-width:900px;margin:0 auto}.hub__header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.hub__header h2{font-size:22px;font-weight:800;color:var(--neon)}.hub__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.hub__tab{padding:9px 16px;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text-muted);font:inherit;font-weight:600;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.hub__tab:hover{color:var(--text);border-color:var(--text-faint)}.hub__tab--active{color:var(--neon);border-color:var(--neon);background:var(--neon-ghost)}.hub__create{width:100%;padding:14px;margin-bottom:16px;border-radius:var(--r-lg);border:var(--border-w) dashed var(--border-strong);background:var(--surface-2);color:var(--neon);font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.hub__create:hover{border-color:var(--neon);background:var(--neon-ghost)}.hub__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.hub__card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px;border-radius:var(--r-lg);border:var(--border-w) solid var(--border-soft);background:var(--surface-solid);color:var(--text);font:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.hub__card:hover{border-color:var(--neon);transform:var(--lift)}.hub__card-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;border:var(--border-w) solid var(--border);background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:var(--text-dim)}.hub__card-avatar img{width:100%;height:100%;object-fit:cover;display:block}.hub__card-name{font-size:13px;font-weight:600;text-align:center;word-break:break-word}.hub__card-kind{font-size:11px;color:var(--text-faint)}.hub__empty{grid-column:1 / -1;padding:24px 0;text-align:center;color:var(--text-muted);font-size:14px}.hub__error{margin-bottom:14px;padding:10px 14px;border-radius:var(--r-md);border:var(--border-w) solid var(--neon);color:var(--neon);font-size:13px}.hub__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.hub__modal{width:100%;max-width:440px;padding:20px;border-radius:var(--r-lg);border:var(--border-w) solid var(--border);background:var(--surface-solid);box-shadow:var(--block-shadow)}.hub__modal h3{margin-bottom:14px;font-size:17px;color:var(--neon)}.hub__modal input[type=text],.hub__modal input:not([type]){flex:1;padding:10px 12px;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--bg);color:var(--text);font:inherit}.hub__modal-actions{display:flex;gap:10px;justify-content:flex-end}.st-slot{position:relative}.st-slot__tools{position:absolute;top:4px;right:4px;display:flex;gap:2px;opacity:0;transition:opacity .15s}.st-slot:hover .st-slot__tools,.st-slot:focus-within .st-slot__tools{opacity:1}.st-slot__tools button{width:22px;height:22px;padding:0;font-size:12px;line-height:1;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);background:var(--surface-solid);color:var(--text-soft);cursor:pointer}.st-slot__tools button:hover{color:var(--text);background:var(--surface-2)}@media (hover: none){.st-slot__tools{opacity:1}}.st-fields{display:flex;flex-direction:column;gap:14px;margin:18px 0 32px;padding:16px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-1)}.st-fields__row{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-soft)}.st-fields__row input,.st-fields__row textarea{width:100%;padding:9px 11px;font:inherit;font-size:14px;color:var(--text);background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-sm);resize:vertical}.st-fields__row--narrow input{max-width:140px}.st-fields__inline{display:flex;gap:8px}.st-fields__search{flex:0 0 44px;font-size:16px;cursor:pointer;color:var(--text);background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-sm)}.st-fields__search:disabled{opacity:.6;cursor:default}.st-fields__hint{font-size:12px;color:var(--text-dim)}.st-fields__actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:4px}.st-fields__start,.st-fields__resume{padding:12px 20px;font:inherit;font-size:15px;cursor:pointer;border-radius:var(--r-sm);border:var(--border-w) solid transparent}.st-fields__start{background:var(--neon);color:var(--on-accent);font-weight:600}.st-fields__start:disabled{opacity:.6;cursor:default}.st-fields__resume{background:transparent;color:var(--text-soft);border-color:var(--border)}.st-fields__resume:hover{color:var(--text);background:var(--surface-2)}.story{position:relative;display:flex;flex-direction:column;height:100dvh;background:var(--bg);color:var(--text)}.story__header{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:var(--border-w) solid var(--border-soft);background:var(--surface-solid)}.story__title{flex:1;font-family:Georgia,Times New Roman,serif;font-size:17px;letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.story__fear{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-soft)}.story__fear-bar{display:block;width:90px;height:6px;border-radius:var(--r-full);background:var(--surface-3);overflow:hidden}.story__fear-bar i{display:block;height:100%;background:var(--warn);transition:width .35s ease}.story__fear--terror .story__fear-bar i{background:#ff8c42}.story__fear--panic .story__fear-bar i{background:var(--danger)}.story__checks{font-size:13px;color:var(--text-soft);white-space:nowrap}.story__gear{font-size:17px;background:none;border:none;cursor:pointer;color:var(--text-soft)}.story__error{margin:8px 14px 0;padding:9px 12px;font-size:13px;color:var(--danger);background:var(--danger-soft);border-radius:var(--r-sm)}.story__feed{flex:1;overflow-y:auto;padding:20px 14px 24px;display:flex;flex-direction:column;gap:18px}.story__empty{margin:auto;max-width:460px;text-align:center;color:var(--text-dim);font-size:14px;line-height:1.6}.story__scene{max-width:720px;margin:0 auto;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.75;color:var(--text);animation:story-fade .5s ease}.story__scene p{margin:0 0 12px}.story__scene-action{color:var(--text-soft);font-style:italic}.story__msg--user{display:flex;justify-content:flex-end}.story__action{max-width:70%;padding:8px 13px;font-size:14px;color:var(--text);background:var(--neon-soft);border:var(--border-w) solid var(--neon-ghost);border-radius:var(--r-md)}.story__roll{text-align:center;font-size:13px;color:var(--text-soft);letter-spacing:.3px}.story__roll--crit_success{color:var(--success)}.story__roll--crit_fail{color:var(--danger)}.story__thinking{text-align:center;font-size:14px;color:var(--text-dim);font-style:italic;animation:story-pulse 1.4s ease infinite}.story__down{position:absolute;right:16px;bottom:108px;width:36px;height:36px;border-radius:var(--r-full);border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text);cursor:pointer}.story__input{display:flex;gap:8px;padding:10px 14px 14px;border-top:var(--border-w) solid var(--border-soft);background:var(--surface-solid)}.story__input textarea{flex:1;padding:10px 12px;font:inherit;font-size:14px;color:var(--text);background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-sm);resize:none}.story__send{width:48px;font-size:17px;cursor:pointer;color:var(--on-accent);background:var(--neon);border:none;border-radius:var(--r-sm)}.story__send:disabled{opacity:.5;cursor:default}.story__sidebar{position:fixed;top:0;right:0;bottom:0;width:340px;max-width:92vw;padding:16px;overflow-y:auto;background:var(--surface-solid);border-left:var(--border-w) solid var(--border)}.story__sidebar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:15px;color:var(--text-strong)}.story__sidebar-head button{background:none;border:none;color:var(--text-soft);font-size:15px;cursor:pointer}.story__field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:13px;color:var(--text-soft)}.story__field input[type=number]{width:100px;padding:7px 9px;font:inherit;color:var(--text);background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-sm)}.story__field--switch label{display:flex;align-items:center;gap:8px;color:var(--text-soft);cursor:pointer}.story__hint{font-size:12px;color:var(--text-dim)}.story__segmented{display:flex;gap:6px}.story__segmented button,.story__panel-buttons button{padding:7px 12px;font:inherit;font-size:13px;cursor:pointer;color:var(--text-soft);background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-sm)}.story__segmented button.is-active{color:var(--text);border-color:var(--neon-strong);background:var(--neon-soft)}.story__panel-buttons{display:flex;gap:6px;flex-wrap:wrap}.story__events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.story__event{padding:8px 10px;font-size:12px;line-height:1.5;color:var(--text-soft);background:var(--surface-1);border-left:2px solid var(--border);border-radius:var(--r-sm)}.story__event b{display:block;color:var(--text);margin-bottom:2px}.story__event--fired{border-left-color:var(--neon)}.story__event--planned{border-left-color:var(--info)}.story__danger{width:100%;margin-top:8px;padding:11px;font:inherit;font-size:14px;cursor:pointer;color:var(--danger);background:var(--danger-soft);border:var(--border-w) solid transparent;border-radius:var(--r-sm)}.dice{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 14px;border-top:var(--border-w) solid var(--border-soft);background:var(--surface-1)}.dice__stage{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center;perspective:600px}.dice__value{position:absolute;font-family:Georgia,serif;font-size:30px;font-weight:700;color:var(--text);text-shadow:0 0 12px var(--neon-glow)}.dice__value--crit{color:var(--success)}.dice__value--fail{color:var(--danger)}.dice__check{text-align:center;font-size:13px;color:var(--text-soft)}.dice__check-skill b{color:var(--text)}.dice__check-reason{font-size:12px;color:var(--text-dim)}.dice__btn{padding:11px 22px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;color:var(--on-accent);background:var(--neon);border:none;border-radius:var(--r-sm)}.dice__btn:disabled{opacity:.6;cursor:default}.dice__hint{font-size:12px;color:var(--text-dim)}.dice-cube{position:relative;width:58px;height:58px;transform-style:preserve-3d;transform:rotateX(-24deg) rotateY(32deg)}.dice-cube__face{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid var(--neon-strong);background:var(--surface-solid-2);border-radius:var(--r-sm);box-shadow:0 0 14px var(--neon-ghost) inset}.dice-cube__face--0{transform:translateZ(29px)}.dice-cube__face--1{transform:rotateY(180deg) translateZ(29px)}.dice-cube__face--2{transform:rotateY(90deg) translateZ(29px)}.dice-cube__face--3{transform:rotateY(-90deg) translateZ(29px)}.dice-cube__face--4{transform:rotateX(90deg) translateZ(29px)}.dice-cube__face--5{transform:rotateX(-90deg) translateZ(29px)}.dice-cube--rolling{animation:dice-spin .95s cubic-bezier(.2,.8,.3,1)}@keyframes dice-spin{0%{transform:rotateX(-24deg) rotateY(32deg) scale(1)}50%{transform:rotateX(540deg) rotateY(720deg) scale(1.18)}to{transform:rotateX(1080deg) rotateY(1080deg) scale(1)}}.dice-three{position:relative;width:160px;height:160px}.dice-three__result{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:34px;font-weight:700;color:var(--text);text-shadow:0 0 14px var(--neon-glow)}@keyframes story-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes story-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.dice-cube--rolling,.story__scene,.story__thinking{animation:none}}.friends{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg);padding:20px;overflow:hidden}.friends__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:var(--border-w) solid var(--border);flex-shrink:0;gap:12px;flex-wrap:wrap}.friends__header h2{font-size:24px;font-weight:700;color:var(--neon)}.friends__header-actions{display:flex;gap:10px;flex-wrap:wrap}.friends__create-btn,.friends__join-btn,.friends__add-btn{padding:8px 18px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text-soft);font-family:var(--ui-font);font-size:14px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.friends__create-btn:hover{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.friends__join-btn:hover{border-color:var(--neon2);color:var(--neon2);background:color-mix(in srgb,var(--neon2) 8%,transparent)}.friends__add-btn:hover{border-color:var(--success);color:var(--success);background:var(--success-soft)}.friends__simulate-btn{padding:8px 18px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text-dim);font-family:var(--ui-font);font-size:12px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.friends__simulate-btn:hover{border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.friends__back{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text-dim);font-size:20px;padding:4px 14px;cursor:pointer;transition:.3s}.friends__back:hover{border-color:var(--neon);color:var(--text)}.friends__leave-btn{padding:6px 16px;border:var(--border-w) solid color-mix(in srgb,var(--danger) 20%,transparent);border-radius:var(--r-sm);background:transparent;color:var(--danger);font-family:var(--ui-font);font-size:13px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.friends__leave-btn:hover{background:var(--danger-soft);border-color:var(--danger)}.friends__tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:var(--border-w) solid var(--border);flex-shrink:0}.friends__tab{padding:10px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-size:14px;font-weight:500;cursor:pointer;transition:.3s}.friends__tab:hover{color:var(--text-soft)}.friends__tab--active{color:var(--text);border-bottom-color:var(--neon)}.friends__list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-top:12px}.friends__rooms{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-top:12px}.friends__friend{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);transition:border-color var(--dur-fast) var(--ease-out)}.friends__friend:hover{border-color:var(--border-strong)}.friends__avatar-box{position:relative;width:44px;height:44px;flex:none}.friends__friend-avatar{width:100%;height:100%;border-radius:var(--r-full);overflow:hidden;border:var(--border-w) solid var(--border);background:var(--surface-solid);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;color:var(--text-muted)}.friends__friend-avatar img{width:100%;height:100%;object-fit:cover;display:block}.friends__dm-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);margin-right:10px}.friends__dm-status--on{color:var(--online)}.friends__friend-info{flex:1}.friends__friend-info h4{font-size:15px;font-weight:600;color:var(--text)}.friends__friend-status{font-size:12px;display:inline-block;margin-right:10px}.friends__friend-status--online{color:var(--success)}.friends__friend-status--offline{color:var(--text-dim)}.friends__friend-status--pending{color:var(--warn)}.friends__friend-id{font-size:11px;color:var(--text-dim);font-family:var(--ui-font-mono)}.friends__friend-remove{background:none;border:none;color:var(--text-faint);font-size:14px;cursor:pointer;transition:.3s;padding:4px 8px}.friends__friend-remove:hover{color:var(--danger)}.friends__friend-accept{padding:2px 12px;border:var(--border-w) solid color-mix(in srgb,var(--success) 25%,transparent);border-radius:var(--r-sm);background:transparent;color:var(--success);font-size:12px;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);margin-right:6px}.friends__friend-accept:hover{background:var(--success-soft);border-color:var(--success)}.friends__friend-decline{padding:2px 12px;border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:var(--r-sm);background:transparent;color:var(--danger);font-size:12px;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.friends__friend-decline:hover{background:var(--danger-soft);border-color:var(--danger)}.friends__room{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.friends__room:hover{border-color:var(--border-strong);transform:translate(4px)}.friends__room-icon{font-size:32px}.friends__room-info{flex:1;min-width:0}.friends__room-info h3{font-size:16px;font-weight:600;color:var(--text)}.friends__room-info p{font-size:13px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friends__room-meta{display:flex;gap:12px;margin-top:4px;font-size:12px;color:var(--text-dim)}.friends__room-host{color:var(--warn)}.friends__room-arrow{font-size:18px;color:var(--text-faint);transition:.3s}.friends__room:hover .friends__room-arrow{color:var(--neon);transform:translate(4px)}.friends__messages{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:8px}.friends__msg{display:flex;flex-direction:column;padding:10px 14px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);max-width:80%}.friends__msg--me{align-self:flex-end;background:var(--neon-ghost);border-color:var(--neon-soft)}.friends__msg-actions{display:flex;gap:2px;margin-top:4px;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out)}.friends__msg:hover .friends__msg-actions{opacity:1;pointer-events:auto}@media (hover: none){.friends__msg-actions{opacity:.7;pointer-events:auto}}.friends__msg-actions button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:13px;line-height:1;padding:2px 4px;border-radius:var(--r-sm)}.friends__msg-actions button:hover{color:var(--neon);background:var(--surface-3)}.friends__msg-quote{display:flex;flex-direction:column;gap:1px;padding:4px 8px;margin-bottom:6px;border-left:3px solid var(--neon-soft);background:var(--surface-2);border-radius:var(--r-sm)}.friends__msg-quote-name{font-size:11px;font-weight:600;color:var(--neon)}.friends__msg-quote-text{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.friends__msg-edit{display:flex;gap:4px;align-items:center}.friends__msg-edit input{flex:1;min-width:120px;background:var(--surface-1);border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text);padding:4px 8px;font-size:14px}.friends__msg-edit button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px}.friends__msg-edited{color:var(--text-faint)}.friends__msg--deleted .friends__msg-text{color:var(--text-faint);font-style:italic}.friends__msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.friends__reaction{background:var(--surface-2);border:var(--border-w) solid var(--border);border-radius:var(--r-full);color:var(--text);cursor:pointer;font-size:12px;padding:1px 7px;line-height:1.6}.friends__reaction--mine{border-color:var(--neon);background:var(--neon-soft)}.friends__emoji-row{display:flex;gap:2px;margin-top:4px;padding:3px 6px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-full);width:fit-content}.friends__emoji-row button{background:none;border:none;cursor:pointer;font-size:16px;padding:2px;border-radius:var(--r-full)}.friends__emoji-row button:hover{background:var(--surface-3)}.friends__reply-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;border-top:var(--border-w) solid var(--border);background:var(--surface-2)}.friends__reply-bar-text{flex:1;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friends__reply-bar-name{color:var(--neon);font-weight:600;margin-right:6px}.friends__reply-bar button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px}.friends__msg--system{align-self:center;background:var(--surface-solid);border-color:var(--border);max-width:90%;text-align:center}.friends__msg-user{font-size:12px;font-weight:600;color:var(--neon)}.friends__msg--system .friends__msg-user{color:var(--text-dim)}.friends__msg-text{font-size:14px;color:var(--text);word-wrap:break-word}.friends__msg-time{font-size:10px;color:var(--text-faint);align-self:flex-end;margin-top:2px}.friends__input-area{display:flex;gap:10px;padding-top:12px;border-top:var(--border-w) solid var(--border);flex-shrink:0}.friends__input-area input{flex:1;padding:10px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out)}.friends__input-area input:focus{border-color:var(--neon)}.friends__input-area button{padding:0 18px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-size:18px;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.friends__input-area button:hover{filter:brightness(1.1);transform:var(--lift)}.friends__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-dim);gap:12px}.friends__empty span{font-size:48px}.friends__empty p{font-size:16px}.friends__empty-btn{padding:10px 24px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-family:var(--ui-font);font-size:14px;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.friends__empty-btn:hover{filter:brightness(1.1);transform:var(--lift)}.friends__success{padding:10px 14px;border-radius:var(--r-sm);background:var(--success-soft);border:var(--border-w) solid color-mix(in srgb,var(--success) 25%,transparent);color:var(--success);font-size:14px;margin-bottom:12px}.friends__error{padding:10px 14px;border-radius:var(--r-sm);background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);font-size:14px;margin-bottom:12px}.friends__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:9999;display:flex;align-items:center;justify-content:center;animation:overlayFade .2s ease-out}.friends__modal{background:var(--surface-solid-2);border:var(--border-w) solid var(--border);border-radius:var(--r-lg);padding:24px;max-width:420px;width:100%;margin:20px;box-shadow:var(--block-shadow);animation:modalSlide .25s ease-out}.friends__modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.friends__modal-header h3{font-size:18px;font-weight:700;color:var(--text)}.friends__modal-close{background:none;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);color:var(--text-dim);width:32px;height:32px;font-size:16px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.friends__modal-close:hover{border-color:var(--danger);color:var(--danger)}.friends__modal-body{display:flex;flex-direction:column;gap:12px}.friends__modal-body input,.friends__modal-body textarea{padding:10px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out);font-family:inherit}.friends__modal-body input:focus,.friends__modal-body textarea:focus{border-color:var(--neon)}.friends__modal-body textarea{resize:vertical}.friends__modal-actions{display:flex;gap:10px;margin-top:4px}.friends__modal-cancel,.friends__modal-confirm{flex:1;padding:10px;border:none;border-radius:var(--r-md);font-family:var(--ui-font);font-size:14px;font-weight:600;cursor:pointer;transition:filter var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.friends__modal-cancel{background:var(--surface-2);color:var(--text-muted)}.friends__modal-cancel:hover{background:var(--border)}.friends__modal-confirm{background:var(--neon);color:var(--on-accent)}.friends__modal-confirm:hover{filter:brightness(1.1)}.friends__rooms::-webkit-scrollbar,.friends__messages::-webkit-scrollbar,.friends__list::-webkit-scrollbar{width:4px}.friends__rooms::-webkit-scrollbar-track,.friends__messages::-webkit-scrollbar-track,.friends__list::-webkit-scrollbar-track{background:transparent}.friends__rooms::-webkit-scrollbar-thumb,.friends__messages::-webkit-scrollbar-thumb,.friends__list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}@media (max-width: 600px){.friends{padding:14px}.friends__header{flex-direction:column;align-items:stretch;gap:10px}.friends__header-actions{justify-content:stretch;flex-wrap:wrap}.friends__create-btn,.friends__join-btn,.friends__add-btn,.friends__simulate-btn{flex:1;text-align:center;font-size:12px;padding:6px 12px}.friends__room{padding:12px 16px}.friends__room-icon{font-size:24px}.friends__msg{max-width:92%}.friends__friend{padding:10px 14px;flex-wrap:wrap}.friends__friend-info{flex:1;min-width:100px}.friends__friend-accept,.friends__friend-decline{font-size:11px;padding:2px 8px}}.friends__search{flex-shrink:0;margin-bottom:12px}.friends__search input{width:100%;padding:10px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color var(--dur-fast) var(--ease-out)}.friends__search input:focus{border-color:var(--neon)}.friends__peer-id{font-size:12px;color:var(--text-dim);font-family:var(--ui-font-mono)}.friends__friend-actions{display:flex;align-items:center;gap:8px}.friends__friend-chat{position:relative;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:18px;padding:6px 12px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.friends__friend-chat:hover{border-color:var(--neon)}.friends__friend-chat--unread{background:var(--neon-ghost);border-color:var(--neon-soft)}.friends__friend-badge{position:absolute;top:-6px;right:-6px;background:var(--neon);color:var(--on-accent);border-radius:999px;min-width:20px;height:20px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 0 12px var(--neon-soft)}.friends__push{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:9999;background:linear-gradient(135deg,var(--neon),var(--neon2));color:#fff;padding:12px 24px;border-radius:14px;box-shadow:0 10px 40px var(--neon-soft);cursor:pointer;font-weight:600;font-size:14px;display:flex;align-items:center;gap:10px;animation:slideDown .3s ease-out;max-width:90vw}.friends__push-icon{font-size:20px}.friends__kind{display:flex;gap:8px}.friends__kind-btn{flex:1;padding:8px;font:inherit;cursor:pointer;background:var(--surface-2);color:var(--text-muted);border:var(--border-w) solid var(--border);border-radius:var(--r-md)}.friends__kind-btn--active{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.friends__room-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;overflow:hidden;border:var(--border-w) solid var(--border);background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:24px}.friends__room-avatar img{width:100%;height:100%;object-fit:cover;display:block}.friends__avatar-pick{display:flex;align-items:center;gap:12px}.friends__avatar-hint{font-size:12px;color:var(--text-faint)}@media (max-width: 600px){.friends__room-avatar{width:40px;height:40px;flex-basis:40px;font-size:20px}}.friends__room-code{font-family:var(--ui-font-mono);letter-spacing:.08em;color:var(--neon)}.friends__scroll-down{position:sticky;bottom:10px;align-self:center;width:36px;height:36px;flex:0 0 auto;border-radius:50%;border:var(--border-w) solid var(--neon);background:var(--surface-solid);color:var(--neon);font-size:16px;line-height:1;cursor:pointer;box-shadow:var(--block-shadow);z-index:2}.friends__scroll-down:hover{background:var(--neon-ghost)}.tg{height:100%;overflow-y:auto;padding:28px 20px 64px;background:var(--bg);color:var(--text)}.tg>*{max-width:1080px;margin-left:auto;margin-right:auto}.tg__head{display:flex;align-items:flex-start;gap:14px;padding-bottom:18px;border-bottom:var(--border-w) solid var(--border);margin-bottom:22px}.tg__back{flex:0 0 auto;padding:8px 12px;border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text-soft);font:inherit;font-size:var(--fs-sm);cursor:pointer}.tg__back:hover{color:var(--neon);border-color:var(--neon-strong)}.tg__title{flex:1;min-width:0}.tg__title h1{margin:0;font-size:var(--fs-2xl);color:var(--neon)}.tg__title p{margin:4px 0 0;color:var(--text-muted);font-size:var(--fs-sm)}.tg__badge{flex:0 0 auto;padding:5px 10px;border:var(--border-w) solid var(--border);color:var(--text-dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em}.tg__badge--on{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,transparent)}.tg__error{padding:10px 14px;margin-bottom:16px;border:var(--border-w) solid var(--danger);color:var(--danger);font-size:var(--fs-sm)}.tg__empty{padding:28px 16px;text-align:center;color:var(--text-dim);border:var(--border-w) dashed var(--border);font-size:var(--fs-sm)}.tg__muted{color:var(--text-dim);font-size:var(--fs-xs)}.tg__section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.tg__section-head h2,.tg__section-head h3{margin:0;font-size:var(--fs-xl)}.tg__primary{padding:9px 16px;border:var(--border-w) solid var(--neon);background:var(--neon);color:var(--on-accent);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer}.tg__primary:hover{filter:brightness(1.08)}.tg__primary:disabled{opacity:.5;cursor:default}.tg__primary--sm{padding:7px 12px;font-size:var(--fs-xs)}.tg__ghost{padding:8px 12px;border:var(--border-w) solid var(--border);background:transparent;color:var(--text-soft);font:inherit;font-size:var(--fs-sm);cursor:pointer}.tg__ghost:hover{color:var(--neon);border-color:var(--neon-strong)}.tg__ghost--sm{padding:6px 10px;font-size:var(--fs-xs)}.tg__danger{padding:6px 10px;border:var(--border-w) solid transparent;background:transparent;color:var(--text-dim);font:inherit;font-size:var(--fs-xs);cursor:pointer}.tg__danger:hover{color:var(--danger);border-color:var(--danger)}.tg__note{padding:12px 14px;border-left:3px solid var(--neon-2, var(--neon2));background:var(--surface-1);color:var(--text-muted);font-size:var(--fs-sm);margin:14px 0}.tg code{padding:1px 5px;background:var(--surface-3);color:var(--neon);font-family:var(--ui-font-mono);font-size:.92em}.tg__bind{border:var(--border-w) solid var(--border);background:var(--surface-solid);padding:24px}.tg__bind-steps{display:grid;gap:10px;margin-bottom:20px;font-size:var(--fs-md)}.tg__bind-steps b{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:var(--r-full);background:var(--neon);color:var(--on-accent);font-size:var(--fs-xs)}.tg__bind-steps a{color:var(--neon2)}.tg__bind-action{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.tg__code{display:flex;align-items:baseline;gap:10px;padding:8px 14px;border:var(--border-w) dashed var(--neon-strong);background:var(--neon-ghost)}.tg__code span{font-family:var(--ui-font-mono);font-size:28px;letter-spacing:.28em;color:var(--neon)}.tg__code small{color:var(--text-dim);font-size:var(--fs-xs)}.tg__chats{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.tg-chat{padding:14px;border:var(--border-w) solid var(--border);background:var(--surface-solid);display:flex;flex-direction:column;gap:8px}.tg-chat__top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.tg-chat__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-chat__state{flex:0 0 auto;padding:3px 7px;border:var(--border-w) solid var(--border);color:var(--text-dim);font-size:var(--fs-2xs);text-transform:uppercase}.tg-chat__state.is-bound{color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.tg-chat__meta{color:var(--text-dim);font-size:var(--fs-xs)}.tg-chat__actions{margin-top:auto;display:flex;gap:8px}.tg__tabs{display:flex;gap:4px;border-bottom:var(--border-w) solid var(--border);margin-bottom:18px;overflow-x:auto}.tg__tab{padding:9px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font:inherit;font-size:var(--fs-sm);cursor:pointer;white-space:nowrap}.tg__tab:hover{color:var(--text)}.tg__tab--active{color:var(--neon);border-bottom-color:var(--neon)}.tg-personas__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.tg-persona{padding:14px;border:var(--border-w) solid var(--border);background:var(--surface-solid);display:flex;flex-direction:column;gap:10px}.tg-persona__top{display:flex;align-items:center;gap:10px}.tg-persona__avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-full);background:var(--neon);color:var(--on-accent);font-weight:700}.tg-persona__name{font-weight:600}.tg-persona__type{color:var(--text-dim);font-size:var(--fs-xs)}.tg-persona__owner{color:var(--text-muted);font-size:var(--fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-persona__text{color:var(--text-soft);font-size:var(--fs-sm);line-height:var(--lh-base)}.tg-persona__actions{display:flex;gap:8px;margin-top:auto}.tg__list{display:flex;flex-direction:column;gap:8px}.tg-scene,.tg-restrict{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:12px 14px;border:var(--border-w) solid var(--border);background:var(--surface-solid)}.tg-scene__name{font-weight:600}.tg-scene__desc,.tg-restrict__meta{color:var(--text-dim);font-size:var(--fs-xs);margin-top:3px}.tg-scene__state{flex:0 0 auto;padding:3px 7px;font-size:var(--fs-2xs);text-transform:uppercase;border:var(--border-w) solid var(--border);color:var(--text-dim)}.tg-scene__state.is-active{color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.tg-restrict__text{font-size:var(--fs-sm)}.tg-restrict-form{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}.tg-restrict-form select,.tg-restrict-form input{padding:8px 10px;border:var(--border-w) solid var(--border);background:var(--surface-1);color:var(--text);font:inherit;font-size:var(--fs-sm)}.tg-restrict-form input{flex:1;min-width:200px}.tg-sub{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.tg-sub__card{padding:18px;border:var(--border-w) solid var(--border);background:var(--surface-solid)}.tg-sub__label{color:var(--text-dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em}.tg-sub__price{margin-top:8px;font-size:var(--fs-2xl);color:var(--neon)}.tg-sub__state{margin-top:6px;color:var(--danger);font-size:var(--fs-sm)}.tg-sub__state.is-on{color:var(--success)}.tg-sub__text{margin-top:12px;color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-base)}.tg-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px;background:#000000b3}.tg-modal__card{width:min(680px,100%);max-height:90dvh;overflow-y:auto;padding:20px;border:var(--border-w) solid var(--border-strong);background:var(--surface-solid)}.tg-modal__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.tg-modal__head h3{margin:0;font-size:var(--fs-xl)}.tg-modal__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.tg-form{display:flex;flex-direction:column;gap:14px}.tg-form label{display:flex;flex-direction:column;gap:5px}.tg-form label>span{color:var(--text-muted);font-size:var(--fs-xs)}.tg-form input,.tg-form textarea{padding:9px 11px;border:var(--border-w) solid var(--border);background:var(--surface-1);color:var(--text);font:inherit;font-size:var(--fs-sm)}.tg-form textarea{min-height:110px;resize:vertical;line-height:var(--lh-base)}.tg-form__row{display:grid;grid-template-columns:1fr 120px;gap:12px}.tg-form__check{flex-direction:row!important;align-items:center;gap:8px!important;color:var(--text-soft);font-size:var(--fs-sm)}.tg-form__check input{width:16px;height:16px}@media (max-width: 640px){.tg{padding:18px 12px 48px}.tg__head{flex-wrap:wrap}.tg__badge{order:3}.tg-form__row{grid-template-columns:1fr}}.hn{position:relative;height:100%;overflow-y:auto;padding:28px 20px 64px;background:radial-gradient(60% 50% at 50% 0%,rgba(255,122,26,.16),transparent 70%),radial-gradient(50% 50% at 85% 80%,rgba(155,92,255,.16),transparent 72%),#090510;color:#f6ecff}.hn__sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.hn__moon{position:absolute;top:6%;right:10%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle at 38% 35%,#fff6dc,#f0d9a8 55%,#c9a76a);box-shadow:0 0 70px #ffd69647;opacity:.85}.hn__fog{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background:radial-gradient(50% 30% at 20% 90%,rgba(255,122,26,.1),transparent 70%),radial-gradient(50% 30% at 80% 95%,rgba(155,92,255,.12),transparent 72%);filter:blur(8px);animation:hnDrift 28s ease-in-out infinite alternate}.hn__fog--b{animation-duration:38s;animation-direction:alternate-reverse;opacity:.7}.hn>:not(.hn__sky){position:relative;z-index:1;max-width:1080px;margin-left:auto;margin-right:auto}.hn__head{display:flex;align-items:flex-start;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(255,200,150,.16);margin-bottom:22px}.hn__back{flex:0 0 auto;padding:8px 12px;border:1px solid rgba(255,200,150,.2);background:#180e22d9;color:#f6ecff;font:inherit;font-size:14px;cursor:pointer}.hn__back:hover{color:#ff9a3c;border-color:#ff7a1a}.hn__intro{flex:1;min-width:0}.hn__intro h1{margin:0;font-size:30px;color:#ff8a2b;text-shadow:0 0 24px rgba(255,122,26,.35)}.hn__intro p{margin:6px 0 0;color:#f6ecff9e;font-size:14px;line-height:1.55;max-width:620px}.hn__score{flex:0 0 auto;display:flex;gap:10px}.hn__score>div{min-width:86px;padding:10px 14px;border:1px solid rgba(255,200,150,.18);background:#180e22cc;text-align:center}.hn__score span{display:block;color:#f6ecff73;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.hn__score b{display:block;margin-top:2px;font-size:24px;color:#ffb066}.hn__error{padding:10px 14px;margin-bottom:16px;border:1px solid #ff4757;color:#ff8a94;font-size:14px}.hn__body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.hn__field{border:1px solid rgba(255,200,150,.16);background:#140c1ed1;padding:16px}.hn__field-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;color:#f6ecff8c;font-size:13px}.hn__hints{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.hn__hint-card{padding:14px;border:1px solid rgba(255,200,150,.12);background:#00000038}.hn__hint-card b{display:block;color:#ffb066;font-size:14px;margin-bottom:4px}.hn__hint-card span{color:#f6ecff99;font-size:13px;line-height:1.45}.hn__legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,200,150,.1);color:#f6ecff99;font-size:13px}.hn__legend span{display:flex;align-items:center;gap:7px}.hn__dot{display:inline-block;border-radius:50%;background:#ff7a1a;box-shadow:0 0 10px #ff7a1a99}.hn__dot--big{width:16px;height:16px}.hn__dot--mid{width:11px;height:11px}.hn__dot--small{width:7px;height:7px}.hn__rank{border:1px solid rgba(255,200,150,.16);background:#140c1ed1;padding:16px}.hn__rank h2{margin:0 0 12px;font-size:18px;color:#ff8a2b}.hn__rank ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.hn__rank li{display:flex;align-items:center;gap:10px;padding:7px 8px;border-bottom:1px solid rgba(255,200,150,.07);font-size:13px}.hn__rank li.is-me{background:#ff7a1a1f;border-color:#ff7a1a59}.hn__rank-num{flex:0 0 24px;color:#f6ecff66;font-variant-numeric:tabular-nums}.hn__rank-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hn__rank-points{flex:0 0 auto;color:#ffb066;font-weight:600;font-variant-numeric:tabular-nums}.hn__rank-empty{color:#f6ecff66;font-size:13px}.hp-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1002;pointer-events:none;overflow:hidden}.hp-pumpkin{position:absolute;transform:translate(-50%,-50%);padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 0 10px rgba(255,122,26,.55));transition:transform .12s cubic-bezier(.16,1,.3,1)}.hp-pumpkin:hover{transform:translate(-50%,-50%) scale(1.12)}.hp-pumpkin:active{transform:translate(-50%,-50%) scale(.86)}.hp-pumpkin.hn-pumpkin--big{width:clamp(58px,6.6vw,92px)}.hp-pumpkin.hn-pumpkin--mid{width:clamp(40px,4.5vw,62px)}.hp-pumpkin.hn-pumpkin--small{width:clamp(26px,3vw,42px)}.hn-pumpkin__svg{width:100%;height:auto;display:block}.hn__burst{position:fixed;z-index:1500;pointer-events:none;color:#ffd39a;font-weight:700;font-size:18px;text-shadow:0 0 12px rgba(255,122,26,.9);animation:hnFloat .85s ease-out forwards}.hn__burst i{position:absolute;left:0;top:0;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:#ffc36b;box-shadow:0 0 8px #ff7a1a;animation:hnSpark .8s ease-out forwards}@keyframes hnDrift{0%{transform:translate3d(-2%,1%,0) scale(1)}50%{transform:translate3d(2%,-1%,0) scale(1.05)}to{transform:translate3d(-1%,2%,0) scale(1.02)}}@keyframes hnFloat{0%{opacity:1;transform:translate(-50%,-50%) scale(.8)}to{opacity:0;transform:translate(-50%,calc(-50% - 46px)) scale(1.2)}}@keyframes hnSpark{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateY(calc(-1 * var(--d))) scale(.2)}}@media (max-width: 860px){.hn__body{grid-template-columns:1fr}.hn__rank{order:-1}.hn__head{flex-wrap:wrap}.hn__score{width:100%}.hn__score>div{flex:1}.hn__moon{width:100px;height:100px}}@media (max-width: 640px){.hn{padding:18px 12px 48px}.hn__intro h1{font-size:24px}.hp-pumpkin.hn-pumpkin--big{width:54px}.hp-pumpkin.hn-pumpkin--mid{width:38px}.hp-pumpkin.hn-pumpkin--small{width:26px}}@media (prefers-reduced-motion: reduce){.hn__fog,.hn__burst,.hn__burst i{animation:none!important}}.support{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg);padding:20px;overflow:hidden}.support__header{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:var(--border-w) solid var(--border);flex-shrink:0;flex-wrap:wrap}.support__header h2{flex:1;min-width:0;font-size:22px;font-weight:700;color:var(--text)}.support__back{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text-dim);font-size:18px;padding:4px 14px;cursor:pointer;transition:.3s}.support__back:hover{border-color:var(--neon);color:var(--text)}.support__new-btn{padding:8px 18px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:var(--surface-solid);color:var(--text-soft);font-family:inherit;font-size:14px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.support__new-btn:hover{border-color:var(--neon);color:var(--neon)}.support__meta{display:flex;gap:8px;padding:10px 0;font-size:12px;color:var(--text-dim);flex-shrink:0}.support__list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-top:12px}.support__ticket{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.support__ticket:hover{border-color:var(--border-strong);transform:translate(4px)}.support__ticket-main{flex:1;min-width:0}.support__ticket-main h4{font-size:15px;font-weight:600;color:var(--text);margin:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support__ticket-cat{font-size:12px;color:var(--text-muted)}.support__ticket-time{font-size:11px;color:var(--text-faint)}.support__status{flex-shrink:0;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}.support__status--open{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.support__status--in_progress{border-color:var(--warn);color:var(--warn)}.support__status--answered{border-color:var(--neon2);color:var(--neon2)}.support__status--closed{border-color:var(--border);color:var(--text-dim)}.support__messages{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:10px}.support__msg{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:var(--r-md);max-width:80%;border:var(--border-w) solid var(--border);background:var(--surface-solid)}.support__msg--me{align-self:flex-end;background:var(--neon-ghost);border-color:var(--neon-soft)}.support__msg--support{align-self:flex-start;background:color-mix(in srgb,var(--neon2) 8%,var(--surface-solid));border-color:color-mix(in srgb,var(--neon2) 30%,transparent)}.support__msg-role{font-size:11px;font-weight:700;color:var(--text-muted)}.support__msg-text{font-size:14px;color:var(--text);white-space:pre-wrap;word-wrap:break-word}.support__msg-time{font-size:10px;color:var(--text-faint);align-self:flex-end}.support__msg-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.support__file-img img{max-width:180px;max-height:180px;border-radius:var(--r-sm);border:1px solid var(--border);display:block}.support__file-link{font-size:12px;color:var(--neon2);text-decoration:none;padding:4px 8px;border:1px solid var(--border);border-radius:var(--r-sm)}.support__form{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-top:16px}.support__label{font-size:12px;color:var(--text-dim);margin-top:8px}.support__input,.support__textarea{width:100%;padding:10px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);background:var(--bg);color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:border-color var(--dur-fast) var(--ease-out)}.support__input:focus,.support__textarea:focus{border-color:var(--neon)}.support__textarea{resize:vertical}.support__categories{display:flex;flex-wrap:wrap;gap:8px}.support__cat{padding:6px 14px;border:var(--border-w) solid var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-family:inherit;font-size:13px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.support__cat:hover{border-color:var(--neon);color:var(--text)}.support__cat--active{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.support__attach{display:flex;flex-direction:column;gap:8px;margin-top:4px}.support__attach-btn{align-self:flex-start;padding:6px 14px;border:var(--border-w) dashed var(--border);border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-family:inherit;font-size:13px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.support__attach-btn:hover:not(:disabled){border-color:var(--neon);color:var(--neon)}.support__attach-btn:disabled{opacity:.5;cursor:not-allowed}.support__attach-list{display:flex;flex-wrap:wrap;gap:8px}.support__attach-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-sm);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support__attach-chip button{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:12px}.support__attach-chip button:hover{color:var(--danger)}.support__composer{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:var(--border-w) solid var(--border)}.support__composer-row{display:flex;gap:10px}.support__composer-row textarea{flex:1;padding:10px 14px;border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-family:inherit;font-size:14px;resize:none;outline:none}.support__composer-row textarea:focus{border-color:var(--neon)}.support__send{padding:0 20px;border:none;border-radius:var(--r-md);background:var(--neon);color:var(--on-accent);font-size:18px;cursor:pointer}.support__send:disabled{opacity:.4;cursor:not-allowed}.support__close-ticket{align-self:flex-start;padding:6px 14px;border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);border-radius:var(--r-sm);background:transparent;color:var(--danger);font-family:inherit;font-size:13px;cursor:pointer}.support__close-ticket:hover{background:var(--danger-soft);border-color:var(--danger)}.support__closed-note{flex-shrink:0;padding:12px 14px;font-size:13px;color:var(--text-dim);background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-sm);text-align:center}.support__form-actions{display:flex;gap:10px;margin-top:8px}.support__btn{flex:1;padding:10px;border:none;border-radius:var(--r-md);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}.support__btn--ghost{background:var(--surface-2);color:var(--text-muted)}.support__btn--primary{background:var(--neon);color:var(--on-accent)}.support__btn:disabled{opacity:.5;cursor:not-allowed}.support__error{padding:10px 14px;border-radius:var(--r-sm);background:var(--danger-soft);border:var(--border-w) solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);font-size:14px;flex-shrink:0}.support__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-dim)}.support__empty span{font-size:48px}.support__list::-webkit-scrollbar,.support__messages::-webkit-scrollbar,.support__form::-webkit-scrollbar{width:4px}.support__list::-webkit-scrollbar-thumb,.support__messages::-webkit-scrollbar-thumb,.support__form::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}@media (max-width: 600px){.support{padding:14px}.support__msg{max-width:92%}}.rp{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg);padding:14px;overflow:hidden;position:relative}.rp__header{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:var(--border-w) solid var(--border);flex-shrink:0;position:relative}.rp__header h2{flex:1;min-width:0;font-size:20px;font-weight:700;color:var(--text)}.rp__back,.rp__menu-btn{background:none;border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text-dim);font-size:16px;padding:5px 13px;cursor:pointer}.rp__back:hover,.rp__menu-btn:hover{border-color:var(--neon);color:var(--text)}.rp__menu{position:absolute;top:46px;right:0;z-index:40;display:flex;flex-direction:column;min-width:200px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);overflow:hidden}.rp__menu button{text-align:left;padding:11px 14px;background:transparent;border:none;border-bottom:1px solid var(--border-soft);color:var(--text);font:inherit;cursor:pointer}.rp__menu button:hover{background:var(--neon-ghost);color:var(--neon)}.rp__error{margin-top:10px;padding:9px 12px;background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);color:var(--danger);border-radius:var(--r-sm);font-size:13px;flex-shrink:0}.rp__pane{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-top:12px}.rp__pane h3{color:var(--neon);font-size:16px}.rp__pane h4{color:var(--text);font-size:14px;margin-top:6px}.rp__muted{color:var(--text-dim);font-size:12px}.rp__loc{display:flex;flex-direction:column;gap:4px}.rp__loc-main{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg);color:var(--text);font:inherit;cursor:pointer;text-align:left}.rp__loc-main:hover{border-color:var(--neon)}.rp__subloc{display:flex;flex-wrap:wrap;gap:6px;padding-left:16px}.rp__subloc button{padding:6px 12px;font-size:12px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-muted)}.rp__subloc button:hover{border-color:var(--neon);color:var(--neon)}.rp__btn,.rp__btn-ghost{padding:8px 14px;font:inherit;cursor:pointer;border-radius:var(--r-md);border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text-soft);align-self:flex-start}.rp__btn:hover,.rp__btn-ghost:hover{border-color:var(--neon);color:var(--neon)}.rp__locbar{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:var(--border-w) solid var(--border);flex-shrink:0}.rp__locbar b{flex:1}.rp__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px 0}.rp__msg{display:flex;flex-direction:column;gap:3px;max-width:78%;padding:9px 13px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md)}.rp__msg--me{align-self:flex-end;background:var(--neon-ghost);border-color:var(--neon-soft)}.rp__msg--gm{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface-solid))}.rp__msg--ai{border-color:var(--neon2);background:color-mix(in srgb,var(--neon2) 8%,var(--surface-solid))}.rp__msg-who{font-size:11px;font-weight:700;color:var(--text-muted)}.rp__msg-text{font-size:14px;color:var(--text);white-space:pre-wrap;word-wrap:break-word}.rp__attach-img{max-width:200px;max-height:200px;border-radius:var(--r-sm);border:1px solid var(--border);margin-top:4px}.rp__event{align-self:center;color:var(--text-faint);font-size:12px;font-style:italic;padding:4px}.rp__inputbar,.rp__inputrow{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:var(--border-w) solid var(--border);flex-shrink:0;position:relative;flex-wrap:wrap}.rp__inputbar input,.rp__inputrow input{flex:1;min-width:120px;padding:10px 14px;background:var(--bg);color:var(--text);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-md);font:inherit;outline:none}.rp__inputbar input:focus,.rp__inputrow input:focus{border-color:var(--neon)}.rp__inputbar button,.rp__inputrow button{padding:8px 12px;font:inherit;cursor:pointer;background:var(--surface-solid);color:var(--text-soft);border:var(--border-w) solid var(--border);border-radius:var(--r-md)}.rp__inputbar button:hover,.rp__inputrow button:hover{border-color:var(--neon);color:var(--neon)}.rp__send{background:var(--neon)!important;border-color:var(--neon)!important;color:var(--on-accent)!important}.rp__gm{font-weight:700}.rp__person-circle{width:44px;height:44px;flex-shrink:0;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:2px solid var(--border);color:var(--text-dim);font-weight:700;cursor:pointer;padding:0}.rp__person-circle:hover{border-color:var(--neon)}.rp__person-circle img{width:100%;height:100%;object-fit:cover}.rp__person-card{position:absolute;left:0;bottom:56px;z-index:50;width:170px;padding:12px;display:flex;flex-direction:column;gap:8px;align-items:center;background:var(--surface-solid);border:var(--border-w) solid var(--neon);border-radius:var(--r-lg);box-shadow:0 12px 40px #00000080}.rp__person-face{width:110px;height:110px;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;font-size:11px;color:var(--text-faint);background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--r-md);cursor:pointer}.rp__person-face img{width:100%;height:100%;object-fit:cover}.rp__person-name{font-weight:600}.rp__person-nav{display:flex;gap:10px}.rp__person-nav button{padding:4px 14px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text)}.rp__emoji{position:absolute;bottom:56px;right:0;z-index:50;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;width:300px;padding:8px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);max-height:220px;overflow-y:auto}.rp__emoji button{font-size:18px;padding:3px;background:none;border:none;cursor:pointer}.rp__emoji button:hover{background:var(--neon-ghost);border-radius:var(--r-sm)}.rp__attach-chips{display:flex;gap:6px;flex-wrap:wrap;width:100%}.rp__attach-chips span{display:inline-flex;gap:5px;align-items:center;padding:3px 8px;font-size:12px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-sm)}.rp__attach-chips button{background:none;border:none;color:var(--text-faint);cursor:pointer;padding:0 8px}.rp__sheet{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--surface-solid);border:var(--border-w) solid var(--border-soft);border-radius:var(--r-lg)}.rp__sheet-head{display:flex;align-items:center;gap:10px}.rp__sheet-head img{width:40px;height:40px;object-fit:cover;border-radius:50%}.rp__sheet-body{margin:0;font-size:12px;color:var(--text-muted);white-space:pre-wrap}.rp__pill{font-size:10px;padding:2px 8px;border:1px solid var(--neon2);color:var(--neon2);border-radius:999px}.rp__row{display:flex;align-items:center;gap:8px;padding:6px 0}.rp__row span{flex:1}.rp__row button{padding:4px 10px;font-size:12px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text)}.rp__row button:hover{border-color:var(--neon)}.rp__messages::-webkit-scrollbar,.rp__pane::-webkit-scrollbar{width:4px}.rp__messages::-webkit-scrollbar-thumb,.rp__pane::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.rp__live{font-size:11px;color:var(--text-faint)}.rp__live--on{color:var(--neon2)}.rp__pill--open{border-color:var(--neon);color:var(--neon)}.rp__npcbar{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;flex-shrink:0}.rp__npc-act{padding:5px 11px;font-size:12px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-family:inherit}.rp__npc-act:hover:not(:disabled){border-color:var(--neon2);color:var(--neon2)}.rp__npc-act:disabled{opacity:.45;cursor:default}.rp__phone-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;background:#0000008c;padding:20px}.rp__phone{width:380px;max-width:100%;height:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-solid);border:var(--border-w) solid var(--neon);border-radius:var(--r-lg);box-shadow:0 20px 60px #0009}.rp__phone-top{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:var(--border-w) solid var(--border);flex-shrink:0}.rp__phone-tabs{display:flex;gap:4px;flex:1}.rp__phone-tabs button{flex:1;padding:6px 4px;font-size:12px;font-family:inherit;cursor:pointer;background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--r-sm)}.rp__phone-tabs button.is-on{border-color:var(--neon);color:var(--neon);background:var(--neon-ghost)}.rp__phone-close{background:none;border:none;color:var(--text-dim);font-size:16px;cursor:pointer}.rp__phone-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px}.rp__phone-body h4{color:var(--neon);font-size:13px;margin-top:8px}.rp__phone-thread{display:flex;flex-direction:column;gap:6px;flex:1;overflow-y:auto}.rp__phone-msg{align-self:flex-start;max-width:80%;padding:7px 11px;font-size:13px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);white-space:pre-wrap;word-wrap:break-word}.rp__phone-msg--me{align-self:flex-end;background:var(--neon-ghost);border-color:var(--neon-soft)}.rp__phone-msg--call{font-style:italic;color:var(--warn);border-color:var(--warn)}.rp__phone-thread-row{display:flex;align-items:center;gap:8px;width:100%;padding:9px 11px;font:inherit;text-align:left;cursor:pointer;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md);color:var(--text)}.rp__phone-thread-row b{flex-shrink:0}.rp__phone-thread-row .rp__muted{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp__phone-thread-row:hover{border-color:var(--neon)}.rp__badge{min-width:18px;padding:1px 6px;font-size:11px;text-align:center;background:var(--neon);color:var(--on-accent);border-radius:999px}.rp__phone-contacts{display:flex;flex-wrap:wrap;gap:6px}.rp__phone-contacts button{display:flex;align-items:center;gap:6px;padding:5px 10px;font:inherit;font-size:12px;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;color:var(--text-soft)}.rp__phone-contacts button:hover{border-color:var(--neon);color:var(--neon)}.rp__phone-contacts img{width:20px;height:20px;border-radius:50%;object-fit:cover}.rp__news{padding:10px 12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.rp__news-head{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:4px}.rp__news-body{font-size:13px;color:var(--text);white-space:pre-wrap}.rp__note{padding:10px 12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.rp__note-head{display:flex;justify-content:space-between;gap:8px}.rp__note-head button{background:none;border:none;color:var(--text-faint);cursor:pointer}.rp__note-body{font-size:12px;color:var(--text-muted);white-space:pre-wrap;margin-top:4px}.rp__admin-block{display:flex;flex-direction:column;gap:6px;padding:10px 12px;margin-bottom:4px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--r-md)}.rp__admin-block input,.rp__admin-block textarea,.rp__admin-block select{width:100%;padding:7px 10px;font:inherit;font-size:13px;background:var(--bg);color:var(--text);border:1px solid var(--border-soft);border-radius:var(--r-sm);outline:none}.rp__admin-block input:focus,.rp__admin-block textarea:focus,.rp__admin-block select:focus{border-color:var(--neon)}.rp__admin-block textarea{resize:vertical;font-family:inherit}.rp__check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer}.rp__check input{width:auto}.rp__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.rp{animation:mxScreenIn var(--dur-screen) var(--ease-out) backwards}.rp__msg{animation:mxListIn var(--dur-fast) var(--ease-out) backwards}.rp__msg--me .rp__msg-who{color:var(--neon)}.rp__msg--gm .rp__msg-who{color:var(--warn)}.rp__msg--ai .rp__msg-who{color:var(--neon2)}.rp__msg-who{letter-spacing:.02em;text-transform:uppercase}.rp__loc-main{transition:border-color var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.rp__loc-main:hover{transform:translateY(-1px);background:var(--surface-2)}.rp__loc-main:active{transform:scale(.995)}.rp__typing{align-self:flex-start;padding:8px 14px;font-size:12px;font-style:italic;color:var(--neon2);background:color-mix(in srgb,var(--neon2) 8%,var(--surface-solid));border:var(--border-w) solid color-mix(in srgb,var(--neon2) 35%,transparent);border-radius:var(--r-md);animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.rp__typing:after{content:"";display:inline-block;width:1em;text-align:left;animation:rpDots 1.2s steps(4,end) infinite}@keyframes rpDots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.rp__locbar{position:sticky;top:0;z-index:20;background:var(--bg)}.rp__event{letter-spacing:.04em}.rp__inputbar button:active:not(:disabled),.rp__inputrow button:active:not(:disabled),.rp__btn:active,.rp__btn-ghost:active{transform:scale(.96)}.rp__phone-top{background:var(--surface-2)}.rp__phone-tabs button{transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.rp__phone{animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.rp__phone-overlay{animation:fadeIn var(--dur-fast) var(--ease-out) backwards}@media (max-width: 600px){.rp{padding:10px}.rp__msg{max-width:90%}.rp__emoji{width:260px;grid-template-columns:repeat(7,1fr)}.rp__phone{height:88vh}}.rp__header-avatar{width:36px;height:36px;flex:0 0 36px;border-radius:50%;overflow:hidden;border:var(--border-w) solid var(--border);background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:18px}.rp__header-avatar img{width:100%;height:100%;object-fit:cover;display:block}.rp__banner{width:100%;height:132px;object-fit:cover;display:block;border-bottom:var(--border-w) solid var(--border)}.rp__about{border-bottom:var(--border-w) solid var(--border);background:var(--surface-2)}.rp__about-head{display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;-webkit-user-select:none;user-select:none}.rp__about-title{flex:1;min-width:0;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-dim)}.rp__about-toggle{color:var(--text-faint);font-size:12px}.rp__about-body{padding:0 14px 12px;display:flex;flex-direction:column;gap:10px}.rp__about-text{font-size:13px;line-height:1.5;color:var(--text-dim);white-space:pre-wrap;word-break:break-word}.rp__about-label{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}.rp__members{display:flex;flex-wrap:wrap;gap:6px}.rp__member{width:30px;height:30px;border-radius:50%;overflow:hidden;border:var(--border-w) solid var(--border);background:var(--surface-solid);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--text-dim)}.rp__member img{width:100%;height:100%;object-fit:cover;display:block}.rp__member--host{border-color:var(--warn)}.rp__member-box{position:relative;width:30px;height:30px;flex:none}.rp__admin-name{display:inline-flex;align-items:center;gap:6px}@media (max-width: 600px){.rp__banner{height:96px}}.rp__banner-thumb{width:120px;height:44px;object-fit:cover;border-radius:var(--r-sm);border:var(--border-w) solid var(--border)}.hw{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;overflow:hidden;color:#ff8a2b}.hw__fog{position:absolute;top:-15%;right:-10%;bottom:-25%;left:-10%;background:radial-gradient(60% 34% at 22% 100%,rgba(255,122,26,.14),transparent 70%),radial-gradient(58% 32% at 78% 100%,rgba(155,92,255,.16),transparent 72%),radial-gradient(70% 40% at 50% 108%,rgba(107,43,184,.16),transparent 74%);filter:blur(6px);animation:hwDrift 26s ease-in-out infinite alternate;will-change:transform}.hw__web{position:absolute;top:0;width:min(20vw,210px);height:min(20vw,210px);color:#d9c8ff;opacity:.2}.hw__web svg{width:100%;height:100%;display:block}.hw__web--tl{left:0}.hw__web--tr{right:0;transform:scaleX(-1)}.hw__bat{position:absolute;padding:0;margin:0;border:0;background:none;color:#ff9a3c;opacity:.55;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 0 8px rgba(255,122,26,.45));animation:hwFly 27s ease-in-out infinite;will-change:transform}.hw__bat:hover,.hw__bat:focus-visible{opacity:.9}.hw__bat-shape{width:100%;height:100%;display:block;fill:currentColor;animation:hwFlap .8s ease-in-out infinite alternate;transform-origin:50% 40%}.hw__burst{position:absolute;width:1px;height:1px;pointer-events:none}.hw__burst i{position:absolute;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#ffc36b;box-shadow:0 0 8px #ff7a1a;animation:hwSpark .8s ease-out forwards}@keyframes hwDrift{0%{transform:translate3d(-2%,1%,0) scale(1)}50%{transform:translate3d(2%,-1%,0) scale(1.04)}to{transform:translate3d(-1%,2%,0) scale(1.01)}}@keyframes hwFly{0%{transform:translateZ(0) rotate(-4deg)}25%{transform:translate3d(var(--sway),-16px,0) rotate(5deg)}50%{transform:translate3d(0,9px,0) rotate(-2deg)}75%{transform:translate3d(calc(var(--sway) * -.6),-7px,0) rotate(6deg)}to{transform:translateZ(0) rotate(-4deg)}}@keyframes hwFlap{0%{transform:scaleY(1)}to{transform:scaleY(.72)}}@keyframes hwSpark{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateY(calc(-1 * var(--d))) scale(.2)}}@media (prefers-reduced-motion: reduce){.hw__fog,.hw__bat,.hw__bat-shape,.hw__burst i{animation:none!important}}@media (max-width: 640px){.hw__web{width:110px;height:110px}.hw__bat{opacity:.4}}.amb{position:fixed;right:16px;bottom:calc(82px + env(safe-area-inset-bottom));z-index:900;font-family:var(--ui-font)}.amb__toggle{position:relative;width:42px;height:42px;display:grid;place-items:center;padding:0;border-radius:var(--r-full);border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text-soft);cursor:pointer;opacity:.62;transition:opacity var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.amb__toggle:hover,.amb__toggle:focus-visible,.amb--open .amb__toggle{opacity:1;color:var(--neon);border-color:var(--neon-strong)}.amb__toggle svg{width:20px;height:20px;fill:currentColor}.amb__dot{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:var(--r-full);background:var(--success);box-shadow:0 0 8px var(--success);animation:ambPulse 2.2s ease-in-out infinite}.amb__panel{position:absolute;right:0;bottom:52px;width:264px;padding:12px;border:var(--border-w) solid var(--border);background:var(--surface-solid);color:var(--text);animation:ambIn var(--dur-base) var(--ease-out)}.amb__title{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.amb__types{display:grid;grid-template-columns:1fr 1fr;gap:6px}.amb__type{padding:8px 6px;border:var(--border-w) solid var(--border);background:var(--surface-1);color:var(--text-soft);font:inherit;font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.amb__type:hover{color:var(--text);border-color:var(--border-strong)}.amb__type--on{color:var(--on-accent);background:var(--neon);border-color:var(--neon)}.amb__label{margin-top:12px;margin-bottom:6px;font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.amb__custom{display:flex;flex-direction:column;gap:6px}.amb__file input{display:none}.amb__file span{display:block;padding:7px 8px;text-align:center;border:var(--border-w) dashed var(--border-strong);color:var(--text-soft);font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.amb__file span:hover{color:var(--neon);border-color:var(--neon-strong)}.amb__url{display:flex;gap:4px}.amb__url input{flex:1;min-width:0;padding:6px 7px;border:var(--border-w) solid var(--border);background:var(--surface-1);color:var(--text);font:inherit;font-size:var(--fs-xs)}.amb__url button{padding:6px 8px;border:var(--border-w) solid var(--border);background:var(--surface-2);color:var(--text-soft);font:inherit;font-size:var(--fs-xs);cursor:pointer}.amb__url button:hover{color:var(--neon);border-color:var(--neon-strong)}.amb__now{margin-top:6px;font-size:var(--fs-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amb__now--on{color:var(--neon)}.amb__error{margin-top:6px;font-size:var(--fs-xs);color:var(--danger)}.amb__volume{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:var(--fs-xs);color:var(--text-muted)}.amb__volume input{flex:1;min-width:0;accent-color:var(--neon)}.amb__stop{width:100%;margin-top:10px;padding:7px;border:var(--border-w) solid var(--border);background:transparent;color:var(--text-muted);font:inherit;font-size:var(--fs-sm);cursor:pointer}.amb__stop:hover:not(:disabled){color:var(--danger);border-color:var(--danger)}.amb__stop:disabled{opacity:.4;cursor:default}@keyframes ambPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}@keyframes ambIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.amb__yt{position:fixed;right:16px;bottom:calc(140px + env(safe-area-inset-bottom));width:240px;height:135px;z-index:1003;border:1px solid var(--border-strong);background:#000;box-shadow:0 12px 40px #0000008c}.amb__yt iframe{width:100%;height:100%;display:block;border:0}.amb__yt-close{position:absolute;top:-10px;right:-10px;width:24px;height:24px;padding:0;border:1px solid var(--border-strong);border-radius:var(--r-full);background:var(--surface-solid);color:var(--text);font:inherit;line-height:1;cursor:pointer}.amb__yt-close:hover{color:var(--danger);border-color:var(--danger)}.amb--open .amb__yt{bottom:calc(310px + env(safe-area-inset-bottom))}@media (max-width: 640px){.amb{right:12px;bottom:calc(74px + env(safe-area-inset-bottom))}.amb__panel{width:min(264px,calc(100vw - 24px))}}@media (prefers-reduced-motion: reduce){.amb__dot,.amb__panel{animation:none}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0a0a1a;--neon: #ff2d95;--neon2: #8b5cf6;--text: #f0f0f0;--surface-1: rgba(255, 255, 255, .03);--surface-2: rgba(255, 255, 255, .05);--surface-3: rgba(255, 255, 255, .08);--surface-solid: #141428;--surface-solid-2: #1a1a2e;--border-soft: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .16);--text-muted: color-mix(in srgb, var(--text) 55%, transparent);--text-dim: color-mix(in srgb, var(--text) 35%, transparent);--text-faint: color-mix(in srgb, var(--text) 20%, transparent);--text-soft: color-mix(in srgb, var(--text) 65%, transparent);--text-strong: color-mix(in srgb, var(--text) 85%, transparent);--neon-ghost: color-mix(in srgb, var(--neon) 8%, transparent);--neon-soft: color-mix(in srgb, var(--neon) 14%, transparent);--neon-glow: color-mix(in srgb, var(--neon) 30%, transparent);--neon-strong: color-mix(in srgb, var(--neon) 55%, transparent);--r-xs: 0px;--r-sm: 0px;--r-md: 0px;--r-lg: 0px;--r-xl: 0px;--r-full: 999px;--border-w: 1px;--block-shadow: none;--lift: none;--ui-font: "Segoe UI", system-ui, sans-serif;--ui-font-mono: ui-monospace, "Cascadia Code", Consolas, monospace;--danger: #ff4757;--success: #00ff88;--warn: #ffd93d;--online: #22c55e;--info: var(--neon);--on-accent: #ffffff;--danger-soft: color-mix(in srgb, var(--danger) 14%, transparent);--success-soft: color-mix(in srgb, var(--success) 14%, transparent);--warn-soft: color-mix(in srgb, var(--warn) 14%, transparent);--shadow-1: none;--shadow-2: none;--shadow-3: none;--blur: 0px;--dur-press: .11s;--dur-fast: .16s;--dur-base: .24s;--dur-slow: .32s;--dur-screen: .42s;--stagger: 45ms;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-inout: cubic-bezier(.4, 0, .2, 1);--ease-pop: cubic-bezier(.175, .885, .32, 1.275);--ease-spring: cubic-bezier(.34, 1.42, .64, 1);--dur-ambient: 28s;--fs-2xs: 10px;--fs-xs: 11px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 30px;--lh-tight: 1.3;--lh-base: 1.5;--lh-loose: 1.7;--fs-post-user: var(--fs-md);--fs-post-ai: var(--fs-xl);--lh-post-user: var(--lh-base);--lh-post-ai: var(--lh-loose);--post-w-user: 62%;--post-w-ai: 88%;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--tier-enemy: color-mix(in srgb, var(--danger) 70%, transparent);--tier-rival: color-mix(in srgb, var(--warn) 70%, transparent);--tier-acq: color-mix(in srgb, var(--text-faint) 55%, transparent);--tier-friend: color-mix(in srgb, var(--neon2) 65%, transparent);--tier-best: color-mix(in srgb, var(--neon) 70%, transparent);--tier-love: color-mix(in srgb, #ff6ea9 80%, transparent)}html{overflow-x:clip}::selection{background:var(--neon-strong);color:var(--bg)}:focus-visible{outline:2px solid var(--neon);outline-offset:2px}html{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border:3px solid transparent;background-clip:padding-box;border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--neon) 50%,transparent);background-clip:padding-box}body{background:var(--bg);color:var(--text);font-family:var(--ui-font);min-height:100vh;min-height:100dvh;overflow:hidden;height:100vh;height:100dvh}#root{height:100vh;height:100dvh;overflow:hidden}.app{position:relative;height:100vh;height:100dvh;overflow:hidden}.app--light{--bg: #f0f0f5;--text: #1a1a2e;--neon: #ff2d95;--neon2: #8b5cf6;--surface-1: rgba(255, 255, 255, .6);--surface-2: rgba(255, 255, 255, .85);--surface-3: rgba(255, 255, 255, .95);--surface-solid: #ffffff;--surface-solid-2: #ffffff;--online: #16a34a;--border-soft: rgba(0, 0, 0, .05);--border: rgba(0, 0, 0, .09);--border-strong: rgba(0, 0, 0, .16);--shadow-1: 0 4px 16px rgba(26, 26, 46, .07);--shadow-2: 0 10px 30px rgba(26, 26, 46, .11);--shadow-3: 0 40px 80px rgba(26, 26, 46, .18);background:var(--bg);color:var(--text)}.app--cyan{--bg: #0a1a1a;--text: #e0f0f0;--neon: #00d4ff;--neon2: #00ffaa;--surface-solid: color-mix(in srgb, var(--bg) 90%, var(--neon));--surface-solid-2: color-mix(in srgb, var(--bg) 82%, var(--neon));background:var(--bg)}.app--sakura{--bg: #1a0a14;--text: #ffe0f0;--neon: #ffb7d5;--neon2: #ff6b9d;--surface-solid: color-mix(in srgb, var(--bg) 90%, var(--neon));--surface-solid-2: color-mix(in srgb, var(--bg) 82%, var(--neon));background:var(--bg)}.app--jungle{--bg: #0a1a0a;--text: #e0ffe0;--neon: #00ff44;--neon2: #00cc66;--surface-solid: color-mix(in srgb, var(--bg) 90%, var(--neon));--surface-solid-2: color-mix(in srgb, var(--bg) 82%, var(--neon));background:var(--bg)}.app--halloween{--bg: #0c0712;--text: #f6ecff;--neon: #ff7a1a;--neon2: #9b5cff;--surface-1: rgba(255, 210, 160, .04);--surface-2: rgba(255, 210, 160, .07);--surface-3: rgba(255, 210, 160, .1);--surface-solid: color-mix(in srgb, var(--bg) 88%, var(--neon2));--surface-solid-2: color-mix(in srgb, var(--bg) 80%, var(--neon2));--border-soft: rgba(255, 200, 150, .07);--border: rgba(255, 200, 150, .13);--border-strong: rgba(255, 200, 150, .22);background:var(--bg);color:var(--text)}.app--halloween .auth:before,.app--halloween .home-3d:before,.app--halloween .content:before{background:radial-gradient(44% 50% at 14% 6%,color-mix(in srgb,var(--neon) 17%,transparent),transparent 72%),radial-gradient(48% 54% at 86% 96%,color-mix(in srgb,var(--neon2) 15%,transparent),transparent 74%),radial-gradient(60% 40% at 50% 118%,color-mix(in srgb,#6b2bb8 13%,transparent),transparent 70%)}.app--sakura .auth:before,.app--sakura .home-3d:before,.app--sakura .content:before{opacity:.55}.app--sakura .auth__title-name,.app--sakura .home-3d__title-letter,.app--sakura .frontmenu__logo{background:linear-gradient(180deg,var(--neon),var(--neon2));-webkit-background-clip:text;background-clip:text;color:transparent}.app--design-flat{--r-xs: 0px;--r-sm: 0px;--r-md: 0px;--r-lg: 0px;--r-xl: 0px;--border-w: 1px;--block-shadow: none;--lift: none}.app--design-brutal{--r-xs: 0px;--r-sm: 0px;--r-md: 0px;--r-lg: 0px;--r-xl: 0px;--border-w: 2px;--block-shadow: 4px 4px 0 var(--neon-strong);--lift: translate(-3px, -3px)}.app--design-terminal{--r-xs: 0px;--r-sm: 0px;--r-md: 0px;--r-lg: 0px;--r-xl: 0px;--border-w: 1px;--block-shadow: none;--lift: none;--ui-font: var(--ui-font-mono);line-height:1.45}.app--design-flat *,.app--design-brutal *,.app--design-terminal *{-webkit-backdrop-filter:none;backdrop-filter:none}.burger{position:fixed;top:20px;left:20px;z-index:1000;width:50px;height:50px;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:var(--block-shadow);transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.burger:hover{border-color:var(--neon);background:var(--surface-2);transform:var(--lift)}.burger-line{width:22px;height:2px;background:var(--text);border-radius:0;transition:.3s}.burger:hover .burger-line{background:var(--neon)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:998;animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@keyframes modalSlide{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:none}}@keyframes mxScreenIn{0%{opacity:0}to{opacity:1}}@keyframes mxListIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes mxPopIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes mxToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes mxDriftA{0%{transform:translate3d(-2%,-1%,0) scale(1)}50%{transform:translate3d(2.5%,1.5%,0) scale(1.06)}to{transform:translate3d(-1%,2.5%,0) scale(1.02)}}@keyframes mxDriftB{0%{transform:translate3d(1.5%,2%,0) scale(1.03)}50%{transform:translate3d(-2.5%,-1.5%,0) scale(1)}to{transform:translate3d(2%,-2%,0) scale(1.05)}}@keyframes mxBreathe{0%,to{opacity:.72}50%{opacity:1}}@keyframes mxSheen{0%{transform:translate(-180%) skew(-18deg)}to{transform:translate(320%) skew(-18deg)}}@keyframes mxLineSweep{0%,to{background-position:0% 0}50%{background-position:100% 0}}@keyframes mxTitleBreathe{0%{background-position:50% 15%}to{background-position:50% 85%}}@keyframes mxPulseDot{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes mxLetterIn{0%{opacity:0;transform:translateY(.28em);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes mxMenuIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:none}}@keyframes mxGrowX{0%{transform:translate(-50%) scaleX(0)}to{transform:translate(-50%) scaleX(1)}}@keyframes mxShake{0%{opacity:0;transform:translateY(-4px)}25%{opacity:1;transform:translate(-6px)}45%{transform:translate(5px)}65%{transform:translate(-3px)}85%{transform:translate(2px)}to{opacity:1;transform:none}}.frontmenu{position:fixed;top:0;left:0;width:280px;height:100vh;height:100dvh;background:linear-gradient(180deg,color-mix(in srgb,var(--neon) 6%,var(--surface-solid)),var(--surface-solid) 38%);border-right:var(--border-w) solid var(--border);box-shadow:30px 0 80px -40px #000000e6;z-index:1001;display:flex;flex-direction:column;padding:20px;gap:8px;transform:translate(-100%);transition:transform .46s var(--ease-spring);overflow-y:auto}.frontmenu--open{transform:translate(0)}.frontmenu__header{position:relative;padding:6px 0 18px;margin-bottom:6px;text-align:center;border-bottom:var(--border-w) solid var(--border-soft)}.frontmenu__close{position:absolute;top:0;right:-2px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;padding:0 0 2px;background:transparent;border:var(--border-w) solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-family:var(--ui-font);font-size:20px;line-height:1;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.frontmenu__close:hover{color:var(--text);border-color:var(--neon);background:var(--neon-ghost)}.frontmenu__logo{font-size:20px;font-weight:900;letter-spacing:.3em;text-transform:uppercase;padding-left:.3em;background:linear-gradient(180deg,color-mix(in srgb,var(--text) 45%,var(--neon)),var(--neon));background-size:100% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:mxTitleBreathe 11s ease-in-out infinite alternate}.frontmenu__item{position:relative;background:transparent;border:var(--border-w) solid transparent;color:var(--text-soft);padding:14px 15px;border-radius:var(--r-md);cursor:pointer;overflow:hidden;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);font-size:15px;font-family:var(--ui-font);text-align:left}.frontmenu__item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--neon);transform:scaleY(0);transform-origin:top;transition:transform var(--dur-base) var(--ease-out)}.frontmenu__item:hover{border-color:color-mix(in srgb,var(--neon) 40%,transparent);background:var(--neon-ghost);color:var(--text);transform:translate(4px)}.frontmenu__item:hover:before{transform:scaleY(1)}.frontmenu__item--exit{margin-top:auto;border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.frontmenu__item--exit:hover{border-color:var(--danger);background:var(--danger-soft);transform:translate(4px)}.frontmenu--open .frontmenu__header{animation:mxMenuIn .36s var(--ease-out) backwards}.frontmenu--open .frontmenu__item{animation:mxMenuIn .42s var(--ease-out) backwards}.frontmenu--open .frontmenu__item:nth-of-type(1){animation-delay:40ms}.frontmenu--open .frontmenu__item:nth-of-type(2){animation-delay:70ms}.frontmenu--open .frontmenu__item:nth-of-type(3){animation-delay:.1s}.frontmenu--open .frontmenu__item:nth-of-type(4){animation-delay:.13s}.frontmenu--open .frontmenu__item:nth-of-type(5){animation-delay:.16s}.frontmenu--open .frontmenu__item:nth-of-type(6){animation-delay:.19s}.frontmenu--open .frontmenu__item:nth-of-type(7){animation-delay:.22s}.frontmenu--open .frontmenu__item:nth-of-type(8){animation-delay:.25s}.frontmenu--open .frontmenu__item:nth-of-type(n+9){animation-delay:.28s}.screen-back{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--surface-solid);border:var(--border-w) solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:20px;line-height:1;cursor:pointer;box-shadow:var(--block-shadow);transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.screen-back:hover{border-color:var(--neon);background:var(--surface-2);transform:var(--lift)}.screen-back:active{transform:scale(.95)}.content{position:relative;isolation:isolate;height:100vh;height:100dvh;overflow:hidden}.content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(42% 48% at 12% 4%,color-mix(in srgb,var(--neon) 9%,transparent),transparent 70%),radial-gradient(46% 52% at 88% 98%,color-mix(in srgb,var(--neon2) 8%,transparent),transparent 72%)}.app--light .content:before{background:radial-gradient(42% 48% at 12% 4%,color-mix(in srgb,var(--neon) 5%,transparent),transparent 70%),radial-gradient(46% 52% at 88% 98%,color-mix(in srgb,var(--neon2) 5%,transparent),transparent 72%)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.home-3d__particle,.home-3d__orb,.settings-orb,.auth:before,.auth:after,.home-3d:before,.home-3d:after,.auth__window:before,.cookie-card:before,.home-3d__menu-item:after{animation:none!important}.chat-screen,.chat-char-select,.my-chars,.account,.settings-wrapper,.friends,.home-3d__title-wrap,.my-chars__card,.beta-panel,.beta-modal,.beta-modal-overlay,.friends__success,.friends__error,.account-error,.account-success,.creator-overlay,.creator-modal,.friends__modal-overlay,.friends__modal,.my-chars__modal-overlay,.my-chars__modal{animation:fadeIn .18s ease-out backwards!important;animation-delay:0ms!important}}.app--simplified *{animation:none!important;transition:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;filter:none!important;box-shadow:none!important;transform:none!important;perspective:none!important;transform-style:flat!important}.app--simplified .home-3d__particles,.app--simplified .home-3d__orb,.app--simplified .home-3d__grid,.app--simplified .home-3d__bg{display:block!important}.app--simplified .home-3d__orb{filter:blur(60px);opacity:.35;animation:orbFloat 12s ease-in-out infinite}.app--simplified .home-3d__grid{animation:gridPulse 8s ease-in-out infinite}.app--simplified .home-3d__particle{animation:particleFloat linear infinite}.app--simplified .home-3d__menu-item{background:var(--surface-solid)!important;border:1px solid var(--border-strong)!important;transform:none!important}.app--simplified .home-3d__title-letter,.app--simplified .home-3d__title-version{background:none!important;-webkit-text-fill-color:var(--text)!important;color:var(--text)!important}.app--simplified .burger,.app--simplified .frontmenu{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.app--simplified .frontmenu{background:var(--bg)!important}.friends-placeholder{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;flex-direction:column;gap:20px}.friends-placeholder h2{font-size:32px}.friends-placeholder p{color:var(--text-muted);font-size:16px}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-30px)}to{opacity:1;transform:translate(-50%)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}img,video,svg{max-width:100%;height:auto}pre,code{max-width:100%;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.castle-wall{position:relative;background:radial-gradient(ellipse at 50% 40%,#ffd93d,#ff8c00 25%,#4a2d3a 60%,#0a0a12)}.castle-wall:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/textures/castle-lines.svg);background-size:600px 420px;background-repeat:repeat;pointer-events:none;mix-blend-mode:multiply;opacity:.85}.app-boot{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;height:100dvh;gap:20px;color:var(--text-muted);font-size:14px;letter-spacing:.2em;text-transform:uppercase}.app-boot__spinner{width:48px;height:48px;border:3px solid var(--neon-soft);border-top-color:var(--neon);border-radius:50%;animation:bootSpin 1s linear infinite}@keyframes bootSpin{to{transform:rotate(360deg)}}.app-boot{animation:fadeIn .32s var(--ease-out) backwards}.app-boot__spinner{box-shadow:0 0 28px -8px var(--neon-glow)}.chat-screen,.chat-char-select,.my-chars,.account,.settings-wrapper,.friends,.home-3d{animation:mxScreenIn var(--dur-screen) var(--ease-out) backwards}.my-chars__card{animation:mxListIn var(--dur-slow) var(--ease-out) backwards}.my-chars__card:nth-child(1){animation-delay:0ms}.my-chars__card:nth-child(2){animation-delay:45ms}.my-chars__card:nth-child(3){animation-delay:90ms}.my-chars__card:nth-child(4){animation-delay:135ms}.my-chars__card:nth-child(5){animation-delay:.18s}.my-chars__card:nth-child(6){animation-delay:225ms}.my-chars__card:nth-child(n+7){animation-delay:.27s}.beta-panel{animation:mxPopIn var(--dur-base) var(--ease-out) backwards}.beta-modal-overlay{animation:fadeIn var(--dur-fast) var(--ease-out) backwards}.beta-modal{animation:mxPopIn var(--dur-base) var(--ease-pop) backwards}.friends__success,.friends__error,.account-error,.account-success{animation:mxToastIn var(--dur-base) var(--ease-out) backwards}.char-card{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--surface-1);border:1px solid var(--border-soft);border-radius:var(--r-md);color:var(--text);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.char-card:hover{border-color:var(--neon);transform:translateY(-2px)}.char-card__photo{aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm)}.char-card__photo img{width:100%;height:100%;object-fit:cover}.char-card__photo-ph{font-size:12px;color:var(--text-faint)}.char-card__name{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-card__desc{font-size:12px;line-height:1.35;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.char-card--empty .char-card__photo--empty{border-style:dashed;background:transparent}.char-card--empty .char-card__photo--empty span{font-size:30px;line-height:1;color:var(--text-dim)}.presence-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:var(--r-full);background:var(--text-faint);border:2px solid var(--surface-solid);pointer-events:none}.presence-dot--on{background:var(--online)}.presence-dot--inline{position:static;display:inline-block;right:auto;bottom:auto;width:8px;height:8px;border-width:0}.char-card--empty:disabled{opacity:.35;cursor:not-allowed}
