:root{color-scheme:light;--bg: #edf7f1;--bg-grid: rgba(47, 143, 115, .05);--surface: rgba(255, 255, 255, .8);--surface-solid: #ffffff;--surface-soft: #e5f1ea;--surface-muted: #f5faf7;--text: #10261d;--muted: #5d7568;--faint: #81998c;--line: rgba(30, 78, 58, .14);--line-strong: rgba(30, 78, 58, .25);--accent: #2f8f73;--accent-strong: #256b58;--accent-soft: rgba(47, 143, 115, .14);--gold: #d7a32f;--danger: #d94645;--shadow: 0 18px 48px rgba(22, 62, 44, .11);--shadow-soft: 0 10px 28px rgba(22, 62, 44, .08);--brutal-shadow: 7px 7px 0 #10261d;--brutal-shadow-sm: 4px 4px 0 #10261d;--ink: #10261d;--mint-white: #edf7f1;--pop-yellow: #f4d84f;--pop-pink: #ff8db3;--pop-blue: #87c7ff;--radius: 8px;--radius-lg: 12px;--font: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif}[data-theme=dark]{color-scheme:dark;--bg: #082321;--bg-grid: rgba(142, 229, 188, .055);--surface: rgba(16, 55, 50, .82);--surface-solid: #103732;--surface-soft: #16463f;--surface-muted: #0b2e2a;--text: #f1f6ee;--muted: #bfd1c8;--faint: #91aaa0;--line: rgba(213, 238, 226, .15);--line-strong: rgba(213, 238, 226, .26);--accent: #6bd2a3;--accent-strong: #8ee5bc;--accent-soft: rgba(107, 210, 163, .13);--gold: #f2c85a;--danger: #ff7b72;--shadow: 0 20px 54px rgba(0, 0, 0, .36);--shadow-soft: 0 10px 30px rgba(0, 0, 0, .28);--brutal-shadow: 7px 7px 0 #000000;--brutal-shadow-sm: 4px 4px 0 #000000;--ink: #e7f0eb;--mint-white: #103732}*{box-sizing:border-box}html{min-width:320px;background:var(--bg);overflow-x:hidden}body{margin:0;width:100%;height:100vh;min-height:100vh;overflow:hidden;background:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(var(--bg-grid) 1px,transparent 1px),radial-gradient(circle at 18% 0%,rgba(255,225,105,.14),transparent 27rem),var(--bg);background-size:36px 36px,36px 36px,auto,auto;color:var(--text);font-family:var(--font);line-height:1.55}#app{min-height:100vh;overflow-x:clip}[data-theme=dark] body{background:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(var(--bg-grid) 1px,transparent 1px),radial-gradient(circle at 74% 0%,rgba(107,210,163,.13),transparent 30rem),var(--bg);background-size:36px 36px,36px 36px,auto,auto}body,button,input{font-family:var(--font)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.64}a{color:inherit;text-decoration:none}img,svg{display:block}.shell{width:min(1180px,calc(100% - 32px));max-width:100%;margin:0 auto}.app-main{min-height:0}.topbar{position:sticky;top:0;z-index:50;border-bottom:3px solid var(--ink);background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav-shell{display:flex;align-items:center;gap:22px;min-height:70px}.brand{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;font-weight:900}.brand img{width:36px;height:36px;border-radius:8px}.brand em{color:var(--muted);font-style:normal}.nav-links{display:flex;align-items:center;gap:6px;margin-left:auto}.nav-links a,.icon-btn,.nav-cta,.mobile-menu,.tab,.btn{min-height:40px;border-radius:var(--radius);font-weight:850}.nav-links a{display:inline-flex;align-items:center;padding:0 14px;color:var(--muted);font-size:14px}.nav-links a.router-link-active,.nav-links a:hover{background:var(--pop-yellow);color:var(--text);box-shadow:var(--brutal-shadow-sm)}.nav-actions{display:flex;align-items:center;gap:8px}.icon-btn,.mobile-menu{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:2px solid var(--ink);background:var(--mint-white);color:var(--text);padding:0 11px}.icon-btn:hover,.mobile-menu:hover{border-color:var(--line-strong);background:var(--surface-solid)}.icon-btn svg,.mobile-menu svg,.nav-cta svg,.btn svg,.mini-link svg{width:18px;height:18px;stroke-width:2.1}.nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid var(--ink);padding:0 15px;background:#14291f;color:#fff;box-shadow:var(--brutal-shadow-sm)}[data-theme=dark] .nav-cta{background:#e7f0eb;color:#10261d}.mobile-menu{display:none}.hero,.auth-page,.profile-page{padding:64px 0 54px}.hero-grid,.auth-layout,.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.92fr);gap:42px;align-items:start}.hero-grid{align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--accent-strong);font-size:13px;font-weight:900;text-transform:uppercase}.eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.hero h1,.auth-copy h1,.profile-head h1{margin:0;line-height:.98}.hero h1{font-size:clamp(48px,7vw,92px)}.hero h1 span{display:block;margin-top:8px;color:var(--muted);font-size:clamp(30px,4vw,56px)}.auth-copy h1,.profile-head h1{font-size:clamp(34px,5vw,56px)}.hero-lead,.auth-copy p,.profile-head p{max-width:640px;margin:22px 0 0;color:var(--muted);font-size:17px}.hero-actions,.profile-actions,.quick-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions{margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;padding:0 18px;color:var(--text);background:var(--surface-solid);box-shadow:var(--shadow-soft)}.btn.primary{background:linear-gradient(135deg,#2f5d50,#2f8f73);color:#fff}.btn.secondary{border-color:var(--line);background:var(--surface);box-shadow:none}.btn.danger{background:var(--danger);color:#fff}.btn.full{width:100%}.web-preview,.auth-card,.profile-card,.feature-card,.menu-card,.invite-card,.empty-state,.stat-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}.web-preview{overflow:hidden;min-height:430px;background:linear-gradient(135deg,rgba(47,93,80,.2),transparent 42%),var(--surface-solid);box-shadow:var(--shadow)}.preview-bar{display:flex;gap:7px;padding:16px;border-bottom:1px solid var(--line)}.preview-bar span{width:11px;height:11px;border-radius:50%;background:var(--line-strong)}.preview-body{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:center;padding:34px 28px}.preview-orbit{display:grid;place-items:center;width:112px;height:112px;border:1px solid var(--line-strong);border-radius:30px;background:var(--accent-soft);color:var(--accent-strong)}.preview-orbit svg{width:54px;height:54px}.preview-body strong{display:block;font-size:28px}.preview-body p{margin:8px 0 0;color:var(--muted)}.preview-lines{display:grid;gap:12px;padding:0 28px 32px}.preview-lines span{height:52px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted)}.preview-lines span:nth-child(2){width:86%}.preview-lines span:nth-child(3){width:72%}.section{padding:26px 0 68px}.feature-grid,.menu-grid,.stat-grid{display:grid;gap:14px}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.feature-card,.menu-card,.invite-card{padding:18px}.feature-icon,.menu-icon,.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:14px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-strong)}.feature-icon svg,.menu-icon svg,.empty-icon svg{width:22px;height:22px}.feature-card h3,.menu-card h3,.invite-card h3,.empty-state h2{margin:0;font-size:19px}.feature-card p,.menu-card p,.invite-card p,.empty-state p{margin:8px 0 0;color:var(--muted);font-size:14px}.auth-copy,.profile-head{position:sticky;top:98px}.auth-card,.profile-card,.empty-state{padding:24px}.tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:22px;padding:5px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.tab{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);background:transparent}.tab.active{background:var(--surface-solid);color:var(--text);box-shadow:var(--shadow-soft)}.form-grid{display:grid;gap:14px}.field{display:grid;gap:7px}.field>span:first-child{color:var(--muted);font-size:13px;font-weight:850}.input-wrap{display:flex;align-items:center;min-height:48px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted)}.input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.input-wrap svg{flex:0 0 auto;width:18px;height:18px;margin-left:13px;color:var(--faint)}.input-wrap input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);padding:0 13px}.code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.code-row .btn{min-width:126px;box-shadow:none}.mini-link{display:inline-flex;align-items:center;width:max-content;color:var(--accent-strong);font-weight:850}.form-foot{margin:18px 0 0;color:var(--muted);font-size:13px}.profile-stack{display:grid;gap:14px}.profile-summary{display:flex;align-items:center;gap:18px;margin-bottom:22px}.avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:86px;height:86px;padding:0;overflow:hidden;border:4px solid color-mix(in srgb,var(--surface-solid) 70%,transparent);border-radius:50%;background:linear-gradient(135deg,#2f5d50,#2f8f73);color:#fff;font-size:34px;font-weight:900;line-height:1;box-shadow:var(--shadow-soft)}.avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-name h2{margin:0;font-size:26px}.profile-name p{margin:4px 0 0;color:var(--muted)}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.stat-card{padding:16px}.stat-card strong{display:block;font-size:22px;line-height:1.2}.stat-card span{color:var(--muted);font-size:13px}.invite-head{display:flex;gap:12px;align-items:center}.invite-head>svg{width:38px;height:38px;padding:8px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-strong)}.invite-code{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:13px;border-radius:var(--radius);background:var(--surface-soft)}.invite-code span{color:var(--muted)}.invite-code strong{font-size:24px;letter-spacing:.08em}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}.settings-title h2{margin:0;font-size:20px}.settings-title svg{width:20px;height:20px;color:var(--accent-strong)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.settings-row:last-child{padding-bottom:0}.segmented{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.segmented button{min-height:32px;border:0;border-radius:6px;background:transparent;color:var(--muted);padding:0 10px;font-weight:850}.segmented button.active{background:var(--surface-solid);color:var(--text)}.empty-state{text-align:center}.empty-icon{margin-bottom:12px}.empty-state .btn{margin-top:18px}.hidden-input{display:none}.footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer p{margin:4px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:14px}.toast-host{position:fixed;right:18px;bottom:18px;z-index:100;display:grid;gap:10px}.toast{max-width:360px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);box-shadow:var(--shadow);text-align:left}.toast.error{border-color:color-mix(in srgb,var(--danger) 42%,var(--line))}.explore-page{padding:22px 0 72px}.explore-shell{display:grid;gap:18px}.brutal-card{border:3px solid var(--ink);border-radius:var(--radius);background:var(--mint-white);box-shadow:var(--brutal-shadow)}.btn.brutal{min-height:44px;border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--brutal-shadow-sm);color:var(--text);background:var(--surface-solid);transition:transform .16s ease,box-shadow .16s ease}.btn.brutal:hover,.category-pill:hover,.story-foot a:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.btn.brutal.yellow{background:var(--pop-yellow)}.btn.brutal.mint{background:#d9f7df}.btn.brutal.pink{background:var(--pop-pink)}.btn.brutal.dark{background:#10261d;color:#fff}[data-theme=dark] .btn.brutal.dark{background:#e7f0eb;color:#10261d}.gift-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;background:#dff6df}.gift-left,.section-kicker,.invite-head{display:flex;align-items:center;gap:10px}.gift-left svg,.section-kicker svg{width:22px;height:22px}.gift-left strong{font-size:16px}.explore-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px}.search-box{display:flex;align-items:center;gap:10px;min-height:56px;padding:0 16px}.search-box svg{width:22px;height:22px;color:var(--ink)}.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-weight:750}.category-strip{display:flex;gap:10px;overflow-x:auto;padding:4px 0 9px}.category-pill{flex:0 0 auto;min-height:40px;border:3px solid var(--ink);border-radius:999px;background:var(--mint-white);color:var(--text);padding:0 17px;font-weight:900;box-shadow:var(--brutal-shadow-sm)}.category-pill.active{background:var(--pop-yellow)}.explore-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:18px}.featured-world{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:space-between;min-height:360px;overflow:hidden;padding:22px;background:linear-gradient(135deg,rgba(244,216,79,.64),transparent 38%),linear-gradient(160deg,#d9f7df 0%,var(--mint-white) 62%)}.featured-mark{display:grid;place-items:center;width:88px;height:88px;border:3px solid var(--ink);border-radius:50%;background:var(--pop-yellow);box-shadow:var(--brutal-shadow-sm)}.featured-mark svg{width:42px;height:42px;color:#10261d}.section-kicker{grid-column:1 / -1;width:max-content;max-width:100%;border:3px solid var(--ink);border-radius:999px;background:#fff;color:#10261d;padding:7px 12px;font-size:13px;font-weight:950;text-transform:uppercase}.featured-copy{align-self:end;max-width:650px}.featured-copy span{display:block;color:#244235;font-weight:900}.featured-copy h1{margin:8px 0 0;color:#10261d;font-size:clamp(42px,7vw,86px);line-height:.95}.featured-copy p{max-width:560px;margin:14px 0 0;color:#244235;font-size:17px;font-weight:650}.featured-stats{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 14px}.featured-stats strong{border:3px solid var(--ink);border-radius:var(--radius);background:#fff;color:#10261d;padding:8px 12px;box-shadow:var(--brutal-shadow-sm)}.featured-world .btn{width:max-content}.creator-panel{display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:20px;background:#e6f5ea}.creator-panel h2{margin:0;font-size:clamp(28px,4vw,42px);line-height:1}.creator-panel p{margin:0;color:var(--muted);font-weight:700}.content-section{display:grid;gap:14px;margin-top:18px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-head h2{margin:0;font-size:clamp(24px,4vw,38px)}.section-head a,.section-head span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:900}.section-head svg{width:18px;height:18px}.multi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.multi-card{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:16px}.multi-card>svg{width:54px;height:54px;border:3px solid var(--ink);border-radius:var(--radius);background:var(--pop-yellow);color:#10261d;padding:11px}.multi-card h3,.story-card h3{margin:0;font-size:20px}.multi-card p,.story-card p{margin:6px 0;color:var(--muted);font-weight:650}.multi-card span{color:var(--accent-strong);font-weight:900}.story-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.story-card{display:grid;min-height:270px;padding:16px}.story-card.yellow{background:#f5edbb}.story-card.green{background:#d9f7df}.story-card.blue{background:#d8edff}.story-card.pink{background:#ffe0ea}.story-icon{display:grid;place-items:center;width:54px;height:54px;border:3px solid var(--ink);border-radius:var(--radius);background:#fff;color:#10261d;box-shadow:var(--brutal-shadow-sm)}.story-icon svg{width:27px;height:27px}.story-body{align-self:end}.story-foot{display:grid;gap:10px;align-self:end}.story-foot span{color:#244235;font-weight:900}.story-foot a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:3px solid var(--ink);border-radius:var(--radius);background:#fff;color:#10261d;font-weight:950;box-shadow:var(--brutal-shadow-sm)}.story-foot svg{width:18px;height:18px}.login-page-app{height:100%;min-height:0;overflow-y:auto;background:var(--bg);padding:24px 0}.login-landscape{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(390px,.74fr);gap:24px;align-items:stretch;min-height:min(620px,calc(100vh - 96px))}.login-brand-panel{position:relative;display:grid;place-items:center;overflow:hidden;min-height:100%;border-radius:22px;padding:46px;background:linear-gradient(135deg,#2f5d50,#2f8f73);text-align:center;box-shadow:0 18px 38px #36544938}.login-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.18;background-image:linear-gradient(90deg,rgba(238,246,240,.12) 1px,transparent 1px),linear-gradient(0deg,rgba(238,246,240,.1) 1px,transparent 1px);background-size:34px 34px}.login-brand-panel:after{content:"";position:absolute;right:-90px;bottom:-90px;width:260px;height:260px;border-radius:999px;background:#4e685e70}.login-brand-inner{position:relative;z-index:1;display:grid;justify-items:center}.login-brand-panel img{width:clamp(96px,13vw,148px);height:clamp(96px,13vw,148px);margin-bottom:24px}.login-brand-panel span{color:#cadbd3;font-size:13px;font-weight:900;letter-spacing:.16em}.login-brand-panel h1{margin:12px 0 0;color:#fff;font-size:clamp(36px,5vw,64px);line-height:1.02}.login-brand-panel p{margin:8px 0 0;color:#ffffffd1;font-size:17px}.login-card-app{align-self:center;padding:30px;border-radius:22px}.login-tabs-app{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-bottom:26px;border-bottom:1px solid #e5ece7}.login-tabs-app a{display:grid;place-items:center;min-height:48px;border-bottom:3px solid transparent;color:var(--faint);font-size:17px;font-weight:850}.login-tabs-app a.active{border-bottom-color:#2f5d50;color:#2f5d50}.login-reset-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.login-reset-head h2{margin:0}.login-reset-head a,.forgot-app{color:#2f5d50;font-weight:850}.login-form-app{display:grid;gap:16px}.login-field-app{display:grid;gap:8px}.login-field-app>span{color:var(--muted);font-size:13px;font-weight:850}.login-field-app>div,.login-code-app>span,.login-code-app{display:flex;align-items:center;min-height:52px;border:1px solid #e5e7eb;border-radius:14px;background:var(--surface-muted)}.login-field-app svg,.login-code-app svg{flex:0 0 auto;width:19px;height:19px;margin-left:14px;color:var(--faint)}.login-field-app input,.login-code-app input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);padding:0 14px}.login-code-app{display:flex;align-items:center;gap:0}.login-code-app>span{min-width:0;flex:1 1 auto;border:0;border-radius:0;background:transparent}.login-code-app button{min-height:52px;flex:0 0 auto;border:0;border-left:1px solid #e5e7eb;border-radius:0 14px 14px 0;background:#2f5d50;color:#fff;padding:0 16px;font-weight:850}.forgot-app{justify-self:end}.login-submit-app{min-height:54px;border:0;border-radius:14px;background:linear-gradient(135deg,#2f5d50,#2f8f73);color:#fff;font-size:18px;font-weight:900}.login-card-app>p{margin:18px 0 0;color:var(--faint);font-size:13px;text-align:center}[data-theme=dark] .login-card-app{background:var(--surface-solid)}[data-theme=dark] .login-brand-panel{background:linear-gradient(135deg,#1d2924,#2b3f36)}@media(max-width:940px){.mobile-menu{display:inline-flex}.nav-links{position:fixed;inset:64px 16px auto 16px;display:none;flex-direction:column;align-items:stretch;padding:10px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-solid);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links a{min-height:42px}.hero-grid,.auth-layout,.profile-layout{grid-template-columns:1fr}.auth-copy,.profile-head{position:static}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-grid,.multi-grid{grid-template-columns:1fr}.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-landscape{grid-template-columns:1fr}.hero-content{grid-template-columns:1fr;text-align:left}.login-brand-panel{min-height:320px}}@media(max-width:640px){.shell{width:min(100% - 24px,1180px)}.brand em,.nav-logout{display:none}.nav-shell{gap:10px;min-height:64px}.nav-actions{gap:6px}.nav-cta{padding:0 11px}.nav-cta span,.icon-btn span{display:none}.hero,.auth-page,.profile-page{padding-top:42px}.preview-body,.feature-grid,.stat-grid,.menu-grid{grid-template-columns:1fr}.profile-summary,.footer-inner{align-items:flex-start;flex-direction:column}.auth-card,.profile-card,.empty-state{padding:18px}.code-row{grid-template-columns:1fr}.settings-row,.invite-code,.gift-banner,.section-head{align-items:flex-start;flex-direction:column}.explore-toolbar,.story-grid{grid-template-columns:1fr}.featured-world{grid-template-columns:1fr;min-height:auto}.featured-mark{width:68px;height:68px}.featured-copy h1{font-size:44px}.hero-content{padding:30px 22px}.login-page-app{padding:22px 0 52px}.login-landscape{width:min(100% - 24px,1180px);gap:16px}.login-brand-panel{min-height:260px;padding:34px 18px;border-radius:24px}.login-card-app{padding:20px}.login-code-app{flex-direction:column}.login-code-app button{border-left:0;border-top:1px solid #e5e7eb;border-radius:0 0 14px 14px}}.app-frame{--sidebar-width: 252px;height:100vh;min-height:100vh;overflow-x:clip}.app-frame.sidebar-collapsed{--sidebar-width: 84px}.app-content{display:grid;grid-template-rows:72px minmax(0,1fr);width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));height:100vh;min-height:100vh;min-width:0;margin-left:var(--sidebar-width);overflow-x:hidden;overflow-y:hidden;transition:width .18s ease,max-width .18s ease,margin-left .18s ease}.app-content{scrollbar-width:none}.app-content::-webkit-scrollbar{width:0;height:0}.app-home,.login-page-app,.profile-page,.workshop-page,.models-page,.feedback-page,.recharge-page,.characters-page{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}.app-home::-webkit-scrollbar,.login-page-app::-webkit-scrollbar,.profile-page::-webkit-scrollbar,.workshop-page::-webkit-scrollbar,.models-page::-webkit-scrollbar,.feedback-page::-webkit-scrollbar,.recharge-page::-webkit-scrollbar,.characters-page::-webkit-scrollbar{width:10px}.app-home::-webkit-scrollbar-track,.login-page-app::-webkit-scrollbar-track,.profile-page::-webkit-scrollbar-track,.workshop-page::-webkit-scrollbar-track,.models-page::-webkit-scrollbar-track,.feedback-page::-webkit-scrollbar-track,.recharge-page::-webkit-scrollbar-track,.characters-page::-webkit-scrollbar-track{background:transparent}.app-home::-webkit-scrollbar-thumb,.login-page-app::-webkit-scrollbar-thumb,.profile-page::-webkit-scrollbar-thumb,.workshop-page::-webkit-scrollbar-thumb,.models-page::-webkit-scrollbar-thumb,.feedback-page::-webkit-scrollbar-thumb,.recharge-page::-webkit-scrollbar-thumb,.characters-page::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:var(--line-strong);background-clip:content-box}.app-main{width:100%;height:100%;min-height:0;overflow-x:hidden;overflow-y:hidden}.app-topbar{z-index:40;display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;height:72px;border-bottom:3px solid var(--ink);background:color-mix(in srgb,var(--mint-white) 94%,transparent);padding:0 22px}.explore-page{position:relative;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;background-image:url(/assets/background-light-Du4oy0qF.png);background-position:center;background-size:cover;color:#f6f2e8;padding:0;scrollbar-color:rgba(234,255,246,.38) transparent;scrollbar-width:thin}[data-theme=dark] .explore-page{background-image:url(/assets/background-black-Zlj999bZ.png)}.explore-page::-webkit-scrollbar{width:10px}.explore-page::-webkit-scrollbar-track{background:transparent}.explore-page::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#eafff661;background-clip:content-box}.app-frame:has(.explore-page){background-image:url(/assets/background-light-Du4oy0qF.png);background-position:center;background-size:cover}[data-theme=dark] .app-frame:has(.explore-page){background-image:url(/assets/background-black-Zlj999bZ.png)}[data-theme=light] .explore-copy{text-shadow:0 2px 18px rgba(255,255,255,.62)}[data-theme=light] .explore-copy h1,[data-theme=light] .explore-lead{color:#10261d}[data-theme=light] .explore-sub{color:#2f4d42}.app-frame:has(.explore-page) .explore-page{background-image:none}.app-frame:has(.explore-page) .app-topbar{border-color:#ffffff29;background:#08232166;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-frame:has(.explore-page) .app-sidebar{border-color:#ffffff2e;background:#032321b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-frame:has(.explore-page) .sidebar-brand strong,.app-frame:has(.explore-page) .mobile-brand span{color:#fff6e8}.app-frame:has(.explore-page) .sidebar-brand em,.app-frame:has(.explore-page) .sidebar-nav a,.app-frame:has(.explore-page) .sidebar-utility a{color:#fff6e8d1}.explore-shell{display:grid;grid-template-columns:minmax(0,1fr) 370px;grid-template-rows:minmax(0,1fr) auto;gap:clamp(14px,2vh,24px);height:100%;min-height:0;padding:clamp(14px,2.2vw,30px) clamp(18px,2.6vw,38px) clamp(14px,1.8vw,24px)}.explore-hero{display:grid;grid-template-columns:minmax(0,1fr);align-items:end;gap:0;grid-column:1;grid-row:1;align-self:end;min-height:0}.explore-copy{display:grid;justify-items:start;gap:14px;max-width:780px;padding-left:18px;padding-bottom:clamp(8px,2vh,28px);text-shadow:0 2px 20px rgba(0,0,0,.42)}.explore-pill,.explore-feature,.explore-panel,.explore-worlds{border:1px solid rgba(234,255,246,.24);border-radius:8px;background:#08232194;box-shadow:0 16px 34px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=light] .explore-pill,[data-theme=light] .explore-feature,[data-theme=light] .explore-panel,[data-theme=light] .explore-worlds{background:#092b2a75;border-color:#ffffff52}.explore-pill{display:inline-flex;align-items:center;gap:10px;min-height:32px;padding:0 11px;color:#f5f1e6;font-size:14px;font-weight:900}.explore-pill svg,.explore-pill img{width:18px;height:18px}.explore-pill img{object-fit:contain}.explore-copy h1{margin:0;color:#fbf5e8;font-family:Georgia,Times New Roman,serif;font-size:clamp(62px,6.2vw,112px);line-height:.92;letter-spacing:0}.explore-lead,.explore-sub{margin:0;color:#fff8ec}.explore-lead{max-width:650px;font-size:clamp(23px,2.1vw,34px);font-weight:950;line-height:1.25}.explore-sub{max-width:680px;color:#fff8ecdb;font-size:15px;font-weight:850;line-height:1.45}.explore-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.explore-primary,.explore-secondary,.continue-card a,.quick-grid a,.world-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border:1px solid rgba(255,255,255,.28);border-radius:8px;color:#f8f4e9;padding:0 18px;font-weight:950;text-decoration:none}.explore-primary,.explore-secondary{min-width:168px;min-height:62px;padding:0 30px;font-size:17px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;will-change:transform}.explore-primary{background:#f4d84f;color:#10261d;box-shadow:0 12px 24px #f4d84f3d}.explore-secondary{background:#0823219e}.explore-primary svg,.explore-secondary svg{width:20px;height:20px;transition:transform .16s ease}.explore-primary:hover,.explore-secondary:hover,.explore-primary:focus-visible,.explore-secondary:focus-visible{transform:translateY(-3px);border-color:#ffffff8f;box-shadow:0 18px 30px #00000047;outline:none}.explore-primary:hover,.explore-primary:focus-visible{box-shadow:0 18px 34px #f4d84f57}.explore-secondary:hover,.explore-secondary:focus-visible{background:#082321c2}.explore-primary:hover svg,.explore-secondary:hover svg,.explore-primary:focus-visible svg,.explore-secondary:focus-visible svg{transform:translate(2px) scale(1.08)}.explore-feature-list{display:grid;gap:9px}.explore-feature{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;min-height:52px;padding:7px 12px 7px 9px;color:#f4f0e6;font-weight:900}.explore-feature svg{width:30px;height:30px;border:2px solid rgba(255,255,255,.25);border-radius:8px;background:#f4d84f;color:#10261d;padding:6px}.explore-side{display:grid;align-self:end;grid-column:2;grid-row:1;gap:0;padding-bottom:clamp(8px,2vh,28px)}.explore-side .explore-panel:not(.continue-panel){display:none}.explore-panel{display:grid;gap:10px;padding:12px}.explore-panel header,.explore-worlds header{display:flex;align-items:center;justify-content:space-between;gap:12px}.explore-panel h2,.explore-worlds h2{display:inline-flex;align-items:center;gap:8px;margin:0;color:#fff6e8;font-size:18px;font-weight:950}.explore-panel header>a{display:inline-flex;align-items:center;gap:3px;color:#f4d84f;font-size:13px;font-weight:950;text-decoration:none}.explore-panel header svg{width:15px;height:15px}.continue-card{position:relative;display:grid;align-content:end;min-height:142px;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:8px;background-image:url(/assets/background-black-Zlj999bZ.png);background-position:50% 46%;background-size:cover;padding:12px}[data-theme=dark] .continue-card.empty{background-image:url(/assets/background-light-Du4oy0qF.png)}[data-theme=dark] .continue-card.empty strong,[data-theme=dark] .continue-card.empty span,[data-theme=dark] .continue-card.empty small{color:#10261d;text-shadow:0 2px 14px rgba(255,255,255,.58)}[data-theme=dark] .continue-card.empty{border-color:#10261d3d}.continue-card>svg{position:absolute;top:12px;left:12px;width:28px;height:28px;border-radius:8px;background:#f4d84f;color:#10261d;padding:6px}.continue-card strong,.continue-card span,.continue-card small{position:relative;z-index:1;text-shadow:0 2px 12px rgba(0,0,0,.58)}.continue-card strong{color:#fff6e8;font-size:19px}.continue-card span{color:#fff6e8d1;font-size:13px;font-weight:850}.continue-card small{display:inline-flex;align-items:center;gap:5px;color:#fff6e8c2;font-size:12px;font-weight:850}.continue-card small svg{width:14px;height:14px}.continue-card a{position:absolute;right:12px;bottom:12px;min-height:36px;background:#f4d84f;color:#10261d;padding:0 16px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-grid a{display:grid;gap:4px;min-height:58px;background:#ffffff12;padding:8px 10px;text-align:center}.quick-grid svg{justify-self:center;width:22px;height:22px;color:#8bd6ff}.quick-grid span{color:#fff6e8;font-size:13px;font-weight:950}.explore-worlds{grid-column:1 / -1;grid-row:2;display:grid;gap:10px;align-self:stretch;margin-top:0;padding:12px}.explore-worlds h2 svg{color:#f4d84f}.world-tabs{display:flex;gap:8px;overflow:hidden}.world-tabs button{min-height:34px;background:#ffffff0d;color:#fff6e8c7;padding:0 12px;font-size:13px}.world-tabs button.active{border-color:#f4d84f;color:#f4d84f}.world-tabs svg{width:16px;height:16px}.explore-world-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.explore-world-card{overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#042827b8;cursor:pointer;transition:border-color .15s,transform .15s,background .15s}.explore-world-card:hover,.explore-world-card:focus-visible{border-color:#f4d84fb8;background:#063230d1;transform:translateY(-2px);outline:none}.world-card-cover{position:relative;height:86px;background:linear-gradient(135deg,#f4d84f38,#0823218f),#082321c7;background-position:center;background-size:cover}.world-card-cover span{position:absolute;right:10px;bottom:7px;border-radius:6px;background:#f4d84f;color:#10261d;padding:2px 7px;font-size:12px;font-weight:950}.world-card-body{display:grid;align-content:start;gap:5px;min-height:88px;padding:9px}.world-card-tag{justify-self:start;border:1px solid rgba(244,216,79,.58);border-radius:6px;background:#f4d84f29;color:#f4d84f;padding:3px 8px;font-size:12px;font-weight:950}.world-card-body h3,.world-card-body p{overflow:hidden;margin:0}.world-card-body h3{color:#fff6e8;font-size:15px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.world-card-body p{display:-webkit-box;min-height:30px;color:#fff6e8b8;font-size:12px;font-weight:800;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.world-card-body small{display:inline-flex;align-items:center;align-self:end;gap:5px;margin-top:auto;color:#f4d84f;font-size:12px;font-weight:950}.world-card-body small svg{width:14px;height:14px}.explore-board-empty{grid-column:1 / -1;display:grid;place-items:center;min-height:150px;border:1px dashed rgba(255,255,255,.28);border-radius:8px;color:#fff6e8c7;font-weight:950}@media(max-width:1320px){.explore-shell{grid-template-columns:minmax(0,1fr) 320px}.explore-world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.explore-world-card:nth-child(n+4){display:none}}@media(max-width:980px){.explore-page{overflow-y:auto}.explore-shell{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;height:auto;min-height:100%;padding:22px}.explore-hero{grid-column:auto;grid-row:auto;grid-template-columns:1fr;min-height:560px}.explore-copy{padding-left:0}.explore-side{grid-column:auto;grid-row:auto;align-self:stretch}.explore-worlds{grid-column:auto;grid-row:auto;margin-top:0}}@media(max-width:640px){.explore-shell{padding:16px}.explore-copy h1{font-size:clamp(46px,15vw,64px)}.explore-lead{font-size:22px}.explore-actions,.explore-worlds header{align-items:stretch;flex-direction:column}.explore-primary,.explore-secondary{width:100%}.explore-world-grid,.quick-grid{grid-template-columns:1fr}.explore-world-card:nth-child(n+4){display:block}.world-tabs{flex-wrap:wrap}}.topbar-title{min-width:0}.topbar-title span{display:block;overflow:hidden;color:var(--text);font-size:22px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.topbar-actions-left{justify-content:flex-start;margin-right:auto}.topbar-actions-right{justify-content:flex-end;margin-left:auto}.auth-required-page{display:grid;place-items:center;align-content:center;gap:14px;height:100%;min-height:0;overflow:hidden;padding:24px;text-align:center}.auth-required-mark{display:grid;place-items:center;width:68px;height:68px;border:3px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;box-shadow:5px 5px 0 var(--ink)}.auth-required-mark svg{width:34px;height:34px;stroke-width:2.4}.auth-required-page .eyebrow{margin:4px 0 -6px}.auth-required-page h1{max-width:760px;margin:0;color:var(--text);font-size:clamp(38px,5vw,68px);line-height:1.02}.auth-required-page p:not(.eyebrow){max-width:560px;margin:0;color:var(--muted);font-size:16px;font-weight:850}.topbar-icon-btn,.topbar-auth-btn,.topbar-avatar-btn,.topbar-download-btn,.topbar-language{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:0 12px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.topbar-language-wrap{position:relative}.topbar-language{min-width:132px;background:#d9f7df;color:#10261d;padding:0 10px}.topbar-language-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:95;display:grid;gap:6px;width:100%;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:6px;box-shadow:5px 5px 0 var(--ink)}.topbar-language-menu button{min-height:38px;border:2px solid transparent;border-radius:6px;background:transparent;color:var(--text);font-weight:950;text-align:left;padding:0 10px}.topbar-language-menu button.active,.topbar-language-menu button:hover{border-color:var(--ink);background:var(--pop-yellow);color:#10261d}.topbar-language span{min-width:64px;text-align:center}.topbar-language svg:first-child{width:19px;height:19px}.topbar-language svg:last-child{width:16px;height:16px}.topbar-icon-btn svg,.topbar-auth-btn svg,.topbar-download-btn svg{width:19px;height:19px}.topbar-icon-btn.square{position:relative;width:42px;padding:0}.notice-trigger i{position:absolute;right:7px;top:7px;width:8px;height:8px;border:2px solid var(--surface-solid);border-radius:999px;background:var(--danger)}.topbar-auth-btn{position:relative;min-width:96px;overflow:hidden;border-color:#10261d;background:linear-gradient(135deg,rgba(255,255,255,.34),transparent 42%),#f4d84f;color:#10261d;box-shadow:4px 4px #10261d,0 12px 24px #f4d84f38;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.topbar-auth-btn:hover,.topbar-auth-btn:focus-visible{transform:translateY(-2px);box-shadow:5px 7px #10261d,0 16px 28px #f4d84f4d;filter:saturate(1.04);outline:none}.topbar-auth-btn:active{transform:translate(2px,2px);box-shadow:2px 2px #10261d,0 8px 18px #f4d84f2e}.topbar-avatar-btn{width:42px;padding:0;overflow:hidden;background:var(--pop-blue);color:#10261d}.topbar-avatar-btn img{width:100%;height:100%;object-fit:cover}.topbar-avatar-btn span{display:grid;place-items:center;width:100%;height:100%;font-size:16px}.topbar-download-btn{background:var(--pop-yellow);color:#10261d}[data-theme=dark] .topbar-auth-btn{background:#e7f0eb;color:#10261d}.notice-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;background:#08130f7a;padding:24px}.notice-modal{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1040px,100%);height:min(680px,calc(100vh - 48px));border:3px solid var(--ink);border-radius:8px;background:var(--mint-white);color:var(--text);box-shadow:9px 9px 0 var(--ink)}.notice-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:3px solid var(--ink);padding:14px 16px}.notice-read-all{min-height:42px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:0 12px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.notice-list-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.notice-list-actions span{color:var(--muted);font-size:13px;font-weight:900}.notice-list-actions .notice-read-all{min-height:34px;padding:0 10px;font-size:13px;box-shadow:3px 3px 0 var(--ink)}.notice-modal-head div{display:grid;gap:2px}.notice-modal-head strong{font-size:24px;line-height:1}.notice-modal-head span{color:var(--muted);font-size:13px;font-weight:850}.notice-modal-body{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:0}.notice-list-pane{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;min-height:0;border-right:3px solid var(--ink);padding:14px}.notice-search{display:flex;align-items:center;gap:9px;min-height:44px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:0 12px}.notice-search svg{width:18px;height:18px;color:var(--muted)}.notice-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-weight:850}.notice-list{display:grid;align-content:start;gap:10px;min-height:0;overflow-y:auto;padding-right:4px}.notice-list-item{display:grid;gap:5px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:12px;text-align:left}.notice-list-item.active,.notice-list-item:hover{background:var(--pop-yellow);color:#10261d;box-shadow:4px 4px 0 var(--ink)}.notice-list-item.unread{position:relative}.notice-list-item.unread:after{content:"";position:absolute;top:12px;right:12px;width:9px;height:9px;border:2px solid var(--surface-solid);border-radius:999px;background:var(--danger)}.notice-list-item span{width:max-content;border-radius:999px;background:#d9f7df;color:#10261d;padding:2px 8px;font-size:12px;font-weight:950}.notice-list-item strong{font-size:16px;line-height:1.25}.notice-list-item em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.notice-detail-pane{min-width:0;overflow-y:auto;padding:24px}.notice-detail-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.notice-detail-meta span{border:2px solid var(--ink);border-radius:999px;background:var(--pop-yellow);color:#10261d;padding:4px 10px;font-size:13px;font-weight:950}.notice-detail-meta em{color:var(--muted);font-style:normal;font-weight:850}.notice-detail-pane h2{margin:16px 0 12px;font-size:clamp(28px,4vw,48px);line-height:1.05}.notice-detail-pane p{margin:0;color:var(--text);font-size:16px;font-weight:750;line-height:1.8;white-space:pre-wrap}.notice-empty{display:grid;place-items:center;min-height:140px;color:var(--muted);font-weight:900;text-align:center}.locale-page-enter-active,.locale-page-leave-active{transition:opacity .18s ease,transform .18s ease}.locale-page-enter-from{opacity:0;transform:translateY(8px)}.locale-page-leave-to{opacity:0;transform:translateY(-6px)}::view-transition-old(root),::view-transition-new(root){animation-duration:1s;animation-timing-function:cubic-bezier(.22,1,.36,1);mix-blend-mode:normal}::view-transition-old(root){animation-name:theme-fade-out}::view-transition-new(root){animation-name:theme-reveal}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--theme-x, 100%) var(--theme-y, 0))}to{clip-path:circle(var(--theme-radius, 140vmax) at var(--theme-x, 100%) var(--theme-y, 0))}}@keyframes theme-fade-out{0%{opacity:1}to{opacity:1}}@media(prefers-reduced-motion:reduce){.locale-page-enter-active,.locale-page-leave-active,::view-transition-old(root),::view-transition-new(root){transition:none;animation:none}}.mobile-topbar,.sidebar-scrim{display:none}.app-sidebar{position:fixed;inset:0 auto 0 0;z-index:70;display:grid;grid-template-rows:auto 1fr;gap:20px;width:var(--sidebar-width);border-right:3px solid var(--ink);background:linear-gradient(90deg,rgba(16,38,29,.04) 1px,transparent 1px),linear-gradient(rgba(16,38,29,.04) 1px,transparent 1px),var(--mint-white);background-size:28px 28px;padding:22px 16px;transition:width .18s ease,padding .18s ease}[data-theme=dark] .app-sidebar{background:linear-gradient(90deg,rgba(231,240,235,.04) 1px,transparent 1px),linear-gradient(rgba(231,240,235,.04) 1px,transparent 1px),#082321}.sidebar-brand,.mobile-brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.sidebar-head{display:flex;align-items:center;gap:8px;min-width:0}.sidebar-brand{flex:1 1 auto;min-height:48px;gap:12px;min-width:0}.sidebar-brand img,.mobile-brand img{width:42px;height:42px}.sidebar-brand span{display:grid;align-content:center;justify-items:start;line-height:1.08;min-width:0}.sidebar-brand strong,.mobile-brand span{color:var(--text);font-size:22px;font-weight:950}.sidebar-brand em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.sidebar-collapse-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:34px;height:34px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text)}.sidebar-collapse-btn svg{width:18px;height:18px;stroke-width:2.35}.sidebar-collapse-btn:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--ink)}.app-sidebar.collapsed{padding-right:12px;padding-left:12px}.app-sidebar.collapsed .sidebar-head{justify-content:center}.app-sidebar.collapsed .sidebar-brand{justify-content:center;flex:0 0 auto;gap:0}.app-sidebar.collapsed .sidebar-brand span,.app-sidebar.collapsed .sidebar-nav a span,.app-sidebar.collapsed .sidebar-utility a span{display:none}.app-sidebar.collapsed .sidebar-collapse-btn{position:absolute;top:16px;right:-18px;background:var(--mint-white)}.app-sidebar.collapsed .sidebar-nav a,.app-sidebar.collapsed .sidebar-utility a{justify-content:center;padding:0}.app-sidebar .sidebar-nav,.app-sidebar .sidebar-utility{transition:opacity .18s ease,transform .18s ease}.app-sidebar.locale-changing .sidebar-nav,.app-sidebar.locale-changing .sidebar-utility{opacity:.78;transform:translateY(3px)}.sidebar-nav,.sidebar-utility{display:grid;align-content:start;gap:8px}.sidebar-nav{padding-top:8px}.sidebar-utility{border-top:3px solid var(--ink);padding-top:12px}.sidebar-nav a,.sidebar-utility a{display:flex;align-items:center;gap:12px;min-height:46px;border:2px solid transparent;border-radius:8px;color:var(--muted);padding:0 12px;font-size:15px;font-weight:900}.sidebar-nav a svg,.sidebar-utility a svg,.sidebar-icon-btn svg{width:20px;height:20px;stroke-width:2.25}.sidebar-nav a.active,.sidebar-nav a.router-link-active,.sidebar-nav a:hover,.sidebar-utility a.active,.sidebar-utility a.router-link-active,.sidebar-utility a:hover{border-color:var(--ink);background:var(--pop-yellow);color:#10261d;box-shadow:4px 4px 0 var(--ink)}.sidebar-nav a.active,.sidebar-nav a.router-link-active,.sidebar-utility a.active,.sidebar-utility a.router-link-active,.sidebar-nav a.active svg,.sidebar-nav a.router-link-active svg,.sidebar-utility a.active svg,.sidebar-utility a.router-link-active svg,.sidebar-nav a.active span,.sidebar-nav a.router-link-active span,.sidebar-utility a.active span,.sidebar-utility a.router-link-active span{color:#10261d!important}[data-theme=dark] .sidebar-nav a.active,[data-theme=dark] .sidebar-nav a.router-link-active,[data-theme=dark] .sidebar-nav a:hover,[data-theme=dark] .sidebar-utility a.active,[data-theme=dark] .sidebar-utility a.router-link-active,[data-theme=dark] .sidebar-utility a:hover{color:#10261d}.sidebar-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);font-weight:950}.sidebar-icon-btn:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--ink)}.login-page-app{padding:24px 0}.login-landscape{width:min(1180px,calc(100% - 42px));grid-template-columns:minmax(0,1fr) minmax(390px,.72fr);min-height:min(620px,calc(100vh - 96px))}.login-brand-panel{border:3px solid var(--ink);border-radius:8px;background:linear-gradient(90deg,rgba(237,247,241,.08) 1px,transparent 1px),linear-gradient(rgba(237,247,241,.08) 1px,transparent 1px),#365449;background-size:34px 34px;box-shadow:8px 8px 0 var(--ink)}[data-theme=dark] .login-brand-panel{background:linear-gradient(90deg,rgba(237,247,241,.08) 1px,transparent 1px),linear-gradient(rgba(237,247,241,.08) 1px,transparent 1px),#365449;background-size:34px 34px}.login-brand-panel:before,.login-brand-panel:after{display:none}.login-card-app{align-self:stretch;display:grid;align-content:center;background:var(--mint-white);padding:clamp(22px,3vw,36px)}.login-tabs-app{border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:4px}.login-tabs-app a{border:0;border-radius:6px}.login-tabs-app a.active{background:var(--pop-yellow);color:#10261d}.login-field-app>div,.login-code-app{border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid)}.login-code-app>span{border:0;border-radius:0;background:transparent;box-shadow:none}.login-submit-app{border:2px solid var(--ink);border-radius:8px;background:#10261d;box-shadow:4px 4px 0 var(--ink)}.login-code-app button{border:0;border-left:2px solid var(--ink);border-radius:0 8px 8px 0;background:#10261d;color:#fff;box-shadow:none}[data-theme=dark] .login-code-app button,[data-theme=dark] .login-submit-app{background:#e7f0eb;color:#10261d}.profile-layout{display:grid;grid-template-columns:1fr;gap:22px;width:min(1420px,calc(100% - 42px));max-width:100%}.profile-page{height:100%;overflow-y:auto;padding:24px 0}.profile-head{position:static;display:grid;gap:0;max-width:780px}.profile-head .eyebrow,.profile-head h1,.workshop-head .eyebrow,.workshop-head h1,.models-head .eyebrow,.models-head h1,.characters-head .eyebrow,.characters-head h1{display:none}.profile-head .eyebrow{margin:0}.profile-head h1{font-size:clamp(44px,5.2vw,76px)}.profile-head p{max-width:760px;margin:0;border-left:5px solid var(--ink);color:var(--muted);padding:4px 0 4px 14px;font-size:16px;font-weight:800}.profile-stack{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;align-items:stretch}.account-card{grid-column:span 5}.quota-card{grid-column:span 7}.subscription-card,.invite-panel,.security-card,.detail-card,.profile-link-card,.settings-card{grid-column:span 4}.detail-card{grid-column:span 6}.quota-card,.subscription-card,.security-card,.detail-card,.profile-link-card,.settings-card,.account-card,.invite-panel{display:grid;align-content:start;gap:18px}.profile-empty{width:min(680px,100%)}.account-card,.invite-panel,.settings-card,.quota-card,.subscription-card,.security-card,.detail-card,.profile-link-card{background:var(--surface-solid);padding:22px}.account-card{display:grid;gap:20px;position:relative}.member-badge{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;gap:6px;min-height:34px;border:2px solid var(--ink);border-radius:999px;background:var(--pop-yellow);color:#10261d;padding:0 12px;box-shadow:3px 3px 0 var(--ink);font-size:13px;font-weight:950}.member-badge svg{width:16px;height:16px}.member-badge+.profile-summary{padding-right:132px}.profile-summary{margin-bottom:0}.profile-actions{margin-top:0}.btn.compact{min-height:36px;padding:0 12px;font-size:13px}.btn.compact svg{width:16px;height:16px}.stat-grid{display:grid;gap:14px;margin-bottom:0}.stat-card{box-shadow:4px 4px 0 var(--ink)}.invite-code{border:2px solid var(--line-strong);border-radius:8px;margin:0}.invite-code strong{min-width:0;overflow-wrap:anywhere;text-align:right}.settings-row{border-top:2px solid var(--line)}.coin-value{display:inline-flex;align-items:center;gap:5px;min-width:0}.coin-value.right{justify-content:flex-end}.coin-value img{width:18px;height:18px;flex:0 0 auto}.security-status-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:start;border:3px solid var(--ink);border-radius:8px;background:var(--surface-muted);padding:14px;box-shadow:4px 4px 0 var(--ink)}.security-status-card>svg{width:46px;height:46px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:10px}.security-status-card div{display:grid;min-width:0;gap:3px}.security-status-card strong{font-size:16px}.security-status-card span{color:var(--text);font-size:20px;font-weight:950}.security-status-card p{margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:750;line-height:1.45}.security-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.security-action{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:0 12px;font:inherit;font-size:14px;font-weight:900;text-align:left;text-decoration:none;cursor:pointer}.security-action:hover{background:#d9f7df}.security-action svg{width:20px;height:20px}.quota-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quota-detail-item{display:grid;gap:4px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-muted);padding:14px;box-shadow:4px 4px 0 var(--ink)}.quota-detail-item.highlight{background:var(--pop-yellow);color:#10261d}.quota-detail-item.highlight strong,.quota-detail-item.highlight span{color:#10261d}.quota-detail-item strong{color:inherit;font-size:24px;line-height:1}.quota-detail-item span,.quota-note,.profile-link-card p{margin:0;color:var(--muted);font-size:14px;font-weight:750}.billing-actions{display:flex;flex-wrap:wrap;gap:10px}.subscription-state{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:3px solid var(--ink);border-radius:8px;background:var(--surface-muted);color:var(--text);padding:16px;box-shadow:4px 4px 0 var(--ink)}.subscription-state>div:first-child{display:grid;gap:4px;min-width:0}.subscription-state strong{color:var(--text);font-size:24px}.subscription-state span{color:var(--muted)}.subscription-discount{display:grid;gap:2px;min-width:92px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:8px 10px;text-align:center}.subscription-discount span{color:#10261db8;font-size:11px;font-weight:950}.subscription-discount strong{color:#10261d;font-size:18px;line-height:1}.detail-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-list{display:grid;gap:10px}.detail-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:2px solid var(--line-strong);border-radius:8px;background:var(--surface-muted);padding:12px}.detail-row>div{display:grid;min-width:0;gap:3px}.detail-row>div:last-child{text-align:right}.detail-row strong{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:14px;line-height:1.25}.detail-row span,.detail-empty{margin:0;color:var(--muted);font-size:13px;font-weight:750}.detail-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;background:#10261d6b;padding:24px}.detail-modal{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:16px;width:min(960px,100%);max-height:min(760px,calc(100vh - 48px));overflow:hidden;border:4px solid var(--ink);border-radius:8px;background:var(--surface-solid);box-shadow:8px 8px 0 var(--ink);padding:18px}.detail-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.detail-modal-head .eyebrow{margin:0 0 4px}.detail-modal-head h2{margin:0;font-size:28px}.modal-close-btn{display:inline-grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:3px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.modal-close-btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.modal-close-btn svg{width:20px;height:20px}.detail-filters{display:grid;grid-template-columns:minmax(0,1fr) 160px 160px;gap:10px}.detail-search{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px}.detail-search{min-height:42px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-muted);color:var(--text);padding:0 12px;font:inherit;font-weight:800}.detail-search input{min-width:0;border:0;outline:0;background:transparent;color:inherit;font:inherit}.custom-select{position:relative;min-width:0}.custom-select-button{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:42px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-muted);color:var(--text);padding:0 11px;font:inherit;font-weight:900;text-align:left;cursor:pointer}.custom-select-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-button svg{width:18px;height:18px;transition:transform .16s ease}.custom-select.open .custom-select-button svg{transform:rotate(180deg)}.custom-select-button:disabled{cursor:not-allowed;opacity:.65}.custom-select.compact .custom-select-button{min-height:36px;border-width:2px;font-size:13px}.workshop-toolbar .custom-select{min-width:130px}.workshop-toolbar .custom-select .custom-select-button{box-shadow:4px 4px 0 var(--ink);background:var(--surface-solid)}.custom-select-menu{position:absolute;top:calc(100% + 6px);right:0;left:0;z-index:30;display:grid;gap:4px;max-height:260px;overflow:auto;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:6px;box-shadow:4px 4px 0 var(--ink)}.custom-select-option{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;min-height:34px;border:0;border-radius:6px;background:transparent;color:var(--text);padding:0 8px;font:inherit;font-size:13px;font-weight:850;text-align:left;cursor:pointer}.custom-select-option:hover,.custom-select-option.selected{background:var(--pop-yellow);color:#10261d}.custom-select-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-option svg{width:15px;height:15px}.phone-change-form{display:grid;gap:14px}.phone-change-form label{display:grid;gap:8px}.phone-change-form label>span{color:var(--muted);font-size:13px;font-weight:950}.phone-change-form input{width:100%;min-height:44px;border:3px solid var(--ink);border-radius:8px;outline:0;background:var(--surface-muted);color:var(--text);padding:0 12px;font:inherit;font-weight:850}.phone-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.detail-table{display:grid;gap:8px;min-height:0;max-height:min(560px,calc(100vh - 220px));overflow:auto;overscroll-behavior:contain;padding-right:4px}.detail-table-row{display:grid;grid-template-columns:1fr 1fr .8fr 1fr 1.2fr;gap:10px;align-items:center;border:2px solid var(--line-strong);border-radius:8px;background:var(--surface-muted);padding:10px 12px;font-size:14px;font-weight:800}.detail-table-row.usage{grid-template-columns:.8fr minmax(0,1.4fr) .7fr .9fr 1.1fr}.detail-table-row.head{position:sticky;top:0;z-index:1;background:var(--pop-yellow);color:#10261d;font-weight:950}.detail-table-row span{min-width:0;overflow-wrap:anywhere}.workshop-page{height:100%;overflow-y:auto;padding:24px 0}.workshop-shell{display:grid;gap:22px;width:min(1420px,calc(100% - 42px));max-width:100%}.workshop-head{max-width:860px}.workshop-head .eyebrow{margin:0 0 10px}.workshop-head h1{margin:0;font-size:clamp(44px,5.2vw,76px);line-height:.98}.workshop-head p{max-width:760px;margin:0;border-left:5px solid var(--ink);color:var(--muted);padding:4px 0 4px 14px;font-size:17px;font-weight:800}.workshop-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.workshop-subnav{position:sticky;top:22px;display:grid;gap:10px}.workshop-subnav a{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-height:78px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:12px;box-shadow:5px 5px 0 var(--ink)}.workshop-subnav a.router-link-active{background:var(--pop-yellow);color:#10261d}.workshop-subnav svg{width:42px;height:42px;border:2px solid var(--ink);border-radius:8px;background:#d9f7df;color:#10261d;padding:9px}.workshop-subnav span{display:grid;min-width:0}.workshop-subnav strong{font-size:18px}.workshop-subnav em{overflow:hidden;color:color-mix(in srgb,var(--muted) 86%,var(--text));font-size:12px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.workshop-panel{min-height:560px;border:3px solid var(--ink);border-radius:8px;background:var(--mint-white);padding:20px;box-shadow:7px 7px 0 var(--ink)}.workshop-my-section{min-height:0}.my-works-toolbar{justify-content:flex-end}.workshop-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:18px;flex-wrap:wrap}.workshop-toolbar h2{margin:0;font-size:clamp(26px,3vw,38px);line-height:1}.workshop-period{display:flex;gap:8px;margin-bottom:10px}.workshop-sort{display:flex;gap:6px}.workshop-sort .btn{min-height:36px;padding:0 12px;font-size:13px;font-weight:850}.workshop-sort .btn.primary{background:var(--pop-yellow);color:#10261d;border-color:var(--ink);box-shadow:var(--brutal-shadow-sm)}.workshop-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:14px;border-top:3px solid var(--ink)}.workshop-page-info{color:var(--muted);font-size:13px;font-weight:850}.workshop-page-actions{display:flex;align-items:center;gap:6px}.workshop-page-actions .btn{min-height:36px;padding:0 12px;font-size:13px;font-weight:850}.workshop-search{display:flex;align-items:center;gap:10px;width:280px;min-height:38px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:0 10px;box-shadow:4px 4px 0 var(--ink)}.workshop-search svg{width:20px;height:20px;color:var(--muted)}.workshop-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-weight:850}.workshop-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.workshop-list-frame{position:relative;min-height:260px}.workshop-list-frame.loading .workshop-card-grid,.workshop-list-frame.loading .workshop-empty{opacity:.34;pointer-events:none}.workshop-loading-mask{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:220px;border:3px solid var(--ink);border-radius:8px;background:#f8fbf9c7;box-shadow:5px 5px 0 var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text)}[data-theme=dark] .workshop-loading-mask{background:#131a17b8}.workshop-loading-spinner{width:34px;height:34px;border:3px solid rgba(47,93,80,.22);border-top-color:var(--accent);border-radius:50%;animation:workshop-spin .8s linear infinite}@keyframes workshop-spin{to{transform:rotate(360deg)}}.spin{animation:workshop-spin .8s linear infinite}.workshop-world-card,.my-world-item{border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);box-shadow:5px 5px 0 var(--ink)}.workshop-world-card{overflow:hidden}.workshop-cover{display:flex;align-items:flex-end;justify-content:space-between;min-height:170px;border-bottom:3px solid var(--ink);background:linear-gradient(180deg,transparent,rgba(0,0,0,.28)),#d9f7df;background-position:center;background-size:cover;padding:14px}.workshop-cover svg{width:54px;height:54px;color:#10261d73}.workshop-cover span,.workshop-card-stat,.my-world-tags span{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:5px 10px;font-size:13px;font-weight:950}.workshop-card-body{display:grid;gap:10px;padding:16px}.workshop-card-body h3,.my-world-item h3{margin:0;font-size:22px;line-height:1.12}.workshop-card-body p,.my-world-item p{display:-webkit-box;min-height:44px;overflow:hidden;margin:0;color:var(--muted);-webkit-box-orient:vertical;-webkit-line-clamp:2}.workshop-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.workshop-card-stat,.workshop-rating-stars{align-items:center;min-width:0}.workshop-card-stat{flex-shrink:0}.workshop-card-stat svg,.my-world-tags svg{width:16px;height:16px}.workshop-rating-stars{display:inline-grid;grid-template-columns:auto minmax(18px,auto);align-items:center;justify-content:end;gap:6px;margin-left:auto;color:#d99b12;font-weight:950;line-height:1;white-space:nowrap}.workshop-rating-icons{display:inline-flex;align-items:center;gap:2px;line-height:0}.workshop-rating-icons svg{width:20px;height:20px;color:#d8b45a;fill:transparent;stroke-width:2.5}.workshop-rating-icons svg:not(.active){color:#b0a080;fill:transparent}.workshop-rating-icons svg.active{color:#d99b12;fill:currentColor}.workshop-rating-stars strong{color:var(--text);font-size:20px;font-weight:950;line-height:1;min-width:18px;text-align:left}.workshop-card-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px 14px 14px}.world-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;border:2.5px solid var(--ink);border-radius:8px;background:var(--surface-muted);color:var(--text);padding:6px 8px;font-size:12px;font-weight:850;cursor:pointer;transition:background .15s,transform .1s;box-shadow:2.5px 2.5px 0 var(--ink);text-decoration:none}.world-action-btn:hover{background:var(--pop-yellow);color:#10261d;transform:translate(-1px,-1px);box-shadow:3.5px 3.5px 0 var(--ink)}.world-action-btn:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.world-action-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:2.5px 2.5px 0 var(--ink)}.world-action-btn.subscribed{background:var(--pop-yellow);color:#10261d}.world-favorite-btn{border-color:#9c7415;background:#fff7d6;color:#6d4b05}.world-favorite-btn:hover{background:#ffe27a;color:#3e2a02}.world-favorite-btn.subscribed{background:#ffd34d;color:#3a2700}.world-favorite-btn svg{color:#d19812;fill:transparent;stroke-width:2.7}.world-favorite-btn.subscribed svg{fill:currentColor}.world-action-btn svg{width:16px;height:16px;flex-shrink:0}.world-action-btn span{white-space:nowrap}.workshop-empty{display:grid;place-items:center;min-height:300px;border:3px dashed var(--line-strong);border-radius:8px;color:var(--muted);font-size:18px;font-weight:900;text-align:center}.auth-empty{align-content:center;gap:14px}.auth-empty svg{width:54px;height:54px;color:var(--accent-strong)}.my-world-list{display:grid;gap:14px}.my-world-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:16px}.my-world-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.my-world-tags span:last-child{background:#d9f7df}.my-world-actions{display:inline-flex;align-items:center;gap:8px}.icon-edit,.icon-danger{display:grid;place-items:center;width:46px;height:46px;border:3px solid var(--ink);border-radius:8px;background:var(--danger);color:#fff;box-shadow:4px 4px 0 var(--ink)}.icon-edit{background:var(--pop-yellow);color:#10261d}.icon-edit:hover,.icon-danger:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.icon-edit:active,.icon-danger:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink)}.icon-edit svg,.icon-danger svg{width:20px;height:20px}.create-world-panel{min-height:0}.world-form{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:16px}.world-form-main,.world-form-side{display:grid;align-content:start;gap:14px}.world-form-side{border:3px solid var(--ink);border-radius:8px;background:color-mix(in srgb,var(--surface-solid) 88%,var(--mint-white));padding:14px;box-shadow:5px 5px 0 var(--ink)}.world-form label,.world-cover-field{display:grid;gap:8px}.world-form label>span,.world-field-head>span{color:var(--muted);font-size:13px;font-weight:950}.world-form input,.world-form textarea{width:100%;min-width:0;border:3px solid var(--ink);border-radius:8px;outline:0;background:var(--surface-solid);color:var(--text);padding:12px 14px;font:inherit;font-weight:800}.world-form textarea{resize:vertical}.world-form input:focus,.world-form textarea:focus,.world-form .custom-select.open .custom-select-button{box-shadow:4px 4px 0 var(--pop-yellow)}.world-form .custom-select-button{min-height:51px;background:var(--surface-solid);padding:0 14px}.world-tag-preview{display:flex;flex-wrap:wrap;gap:8px}.world-tag-preview span{border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:5px 10px;font-size:12px;font-weight:950}.world-field-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.world-field-head>span{min-width:0}.world-required-pill{display:inline-flex;align-items:center;min-height:26px;border:2px solid var(--ink);border-radius:999px;background:var(--pop-yellow);color:#10261d;padding:0 9px;font-size:12px;font-weight:950;white-space:nowrap}.world-mini-danger{border:2px solid var(--ink);border-radius:8px;background:#ffe3e3;color:var(--danger);padding:4px 10px;font-size:12px;font-weight:950;cursor:pointer}.world-cover-picker{display:grid;place-items:center;aspect-ratio:16 / 9;width:100%;overflow:hidden;border:3px dashed var(--ink);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-muted) 76%,transparent),transparent),var(--surface-solid);color:var(--muted);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.world-cover-picker:hover:not(:disabled){border-style:solid;box-shadow:4px 4px 0 var(--pop-yellow);transform:translate(-1px,-1px)}.world-cover-picker:disabled{cursor:wait;opacity:.7}.world-cover-picker img{width:100%;height:100%;object-fit:cover}.world-cover-picker span{display:inline-flex;align-items:center;gap:8px;min-height:42px;border:2px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:0 14px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.world-cover-picker svg{width:24px;height:24px}.world-cover-field small{color:var(--muted);font-size:12px;font-weight:850}.world-cover-field.missing .world-cover-picker{border-color:var(--danger);box-shadow:4px 4px color-mix(in srgb,var(--danger) 34%,var(--ink))}.world-cover-field.uploaded .world-cover-picker{border-style:solid}.world-cover-status{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:center;border:2px solid var(--line-strong);border-radius:8px;background:var(--surface-muted);color:var(--muted);padding:9px 10px;font-size:12px;font-weight:900;line-height:1.35}.world-cover-status svg{width:18px;height:18px}.world-cover-status.ok{border-color:var(--ink);background:#d9f7df;color:#10261d}.world-cover-status.warning{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,var(--surface-solid));color:var(--danger)}.sr-only-file{position:absolute;width:1px!important;height:1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.world-attr-panel{display:grid;grid-column:1 / -1;gap:12px;border:3px solid var(--ink);border-radius:8px;background:color-mix(in srgb,var(--surface-solid) 76%,var(--mint-white));padding:14px}.world-attr-head,.world-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.world-attr-head strong{display:block;color:var(--text);font-size:18px;font-weight:950}.world-attr-head span{color:var(--muted);font-size:12px;font-weight:900}.world-add-attr{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:3px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:0 14px;font-weight:950;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.world-add-attr svg{width:18px;height:18px}.world-attr-list{display:grid;gap:10px}.world-attr-item{display:grid;grid-template-columns:minmax(130px,.8fr) 150px minmax(220px,1.25fr) 44px;gap:10px;align-items:end}.world-attr-item input,.world-attr-item textarea,.world-attr-item .custom-select-button{border-width:2px}.world-attr-item .custom-select-menu{z-index:30}.world-attr-remove{width:44px;height:44px;border-width:2px;box-shadow:3px 3px 0 var(--ink)}.world-form-actions{grid-column:1 / -1;align-items:center;justify-content:flex-end;border-top:3px solid var(--ink);margin-top:2px;padding-top:14px}.world-cancel-edit{min-height:48px;padding:0 14px}.world-cancel-edit svg{width:18px;height:18px}.world-private-toggle{display:inline-flex!important;grid-template-columns:none!important;align-items:center;justify-content:center;gap:10px!important;min-height:48px;min-width:120px;width:auto;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:0 14px;font-size:14px;font-weight:950;box-shadow:3px 3px 0 var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.world-private-toggle input{width:18px;height:18px;min-width:18px;padding:0;accent-color:var(--accent-strong)}.world-private-toggle.active{background:var(--pop-yellow);color:#10261d}.world-form .login-submit-app{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:max-content;padding:0 22px}.world-form .login-submit-app:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.58}.world-form .login-submit-app svg{width:20px;height:20px}.world-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:grid;place-items:center;background:#10261d85;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:24px;overflow-y:auto}.world-detail-modal{position:relative;display:grid;width:min(860px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border:3px solid var(--ink);border-radius:8px;background:var(--mint-white);box-shadow:9px 9px 0 var(--ink)}.world-detail-close{position:absolute;top:14px;right:14px;z-index:5;display:grid;place-items:center;width:42px;height:42px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform .1s}.world-detail-close:hover{background:var(--pop-yellow);color:#10261d;transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.world-detail-close:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.world-detail-close svg{width:22px;height:22px}.world-detail-cover{display:flex;align-items:flex-end;justify-content:space-between;min-height:clamp(300px,42vh,460px);border-bottom:3px solid var(--ink);background:linear-gradient(180deg,transparent,rgba(0,0,0,.35)),#d9f7df;background-position:center;background-size:cover;padding:22px}.world-detail-cover svg{width:72px;height:72px;color:#10261d73}.world-detail-cover span{display:inline-flex;align-items:center;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:6px 12px;font-size:14px;font-weight:950}.world-detail-body{display:grid;gap:16px;padding:22px}.world-detail-body h2{margin:0;font-size:32px;line-height:1.1;padding-right:40px}.world-detail-desc{margin:0;color:var(--muted);font-size:15px;font-weight:800;line-height:1.55}.world-detail-tags{display:flex;flex-wrap:wrap;gap:6px}.world-detail-tag-pill{display:inline-block;border:2px solid var(--ink);border-radius:6px;background:var(--surface-muted);color:var(--text);padding:4px 10px;font-size:12px;font-weight:850}.world-detail-stats{display:flex;flex-wrap:wrap;gap:10px}.world-detail-stat{display:inline-flex;align-items:center;gap:6px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:8px 14px;font-weight:900}.world-detail-stat svg{width:18px;height:18px}.world-detail-stat strong{font-size:18px;font-weight:950}.world-detail-stat small{color:#10261da6;font-size:12px;font-weight:800}.world-detail-stat.rating-stat{background:transparent}.world-detail-stat.rating-stat strong{color:#b8860b;font-size:16px;letter-spacing:3px}.world-detail-stat.rating-stat small{color:#10261dc7}.world-detail-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:6px}.world-detail-action{flex:1 1 auto;min-height:44px;padding:8px 16px;font-size:14px}.world-detail-action svg{width:20px;height:20px}.world-detail-action span{font-size:14px}.world-detail-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:2px solid var(--line-strong);padding-top:14px}.world-detail-rating-label{color:var(--muted);font-size:14px;font-weight:850;white-space:nowrap}.world-detail-stars{display:flex;gap:4px}.world-detail-star{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:6px;background:transparent;color:#c4bba0;padding:0;font-size:28px;cursor:pointer;transition:color .12s,transform .1s;line-height:1}.world-detail-star:hover{transform:scale(1.18);color:#d9991a}.world-detail-star.active{color:#d9991a}.world-detail-star:disabled{cursor:not-allowed;opacity:.5;transform:none}.models-page,.feedback-page,.recharge-page{height:100%;overflow-y:auto;padding:24px clamp(18px,3vw,46px)}.models-shell,.feedback-shell,.recharge-shell{display:grid;gap:22px;width:min(1420px,100%);max-width:100%;margin:0 auto}.models-head{max-width:900px}.recharge-head{max-width:820px}.recharge-head h1{margin:6px 0 8px;color:var(--text);font-size:clamp(34px,5vw,64px);line-height:.95;letter-spacing:0}.recharge-head p:not(.eyebrow){color:var(--muted);font-size:16px;font-weight:750;line-height:1.6}.recharge-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.25fr);gap:18px;align-items:start;padding-top:4px}.recharge-panel{border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);box-shadow:5px 5px 0 var(--ink);padding:18px}.recharge-summary{display:grid;gap:12px}.recharge-sub-state{display:grid;gap:6px;border:2px solid var(--ink);border-radius:8px;background:#f7f2ff;padding:14px}.recharge-benefits{display:grid;gap:10px;border:2px solid var(--ink);border-radius:8px;background:#fff6d8;padding:14px}.recharge-benefits h2{margin:0 0 2px;color:var(--text);font-size:18px;font-weight:950}.recharge-benefit-row{display:grid;gap:3px;border-top:2px solid rgba(31,43,38,.12);padding-top:9px}.recharge-benefit-row:first-of-type{border-top:0;padding-top:0}.recharge-benefit-row strong{color:var(--text);font-size:14px;font-weight:950}.recharge-benefit-row span{color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}.recharge-sub-state span,.recharge-sub-state small{color:var(--muted);font-size:13px;font-weight:800}.recharge-sub-state strong{color:var(--text);font-size:18px;font-weight:950}.recharge-summary-item{display:grid;gap:8px;min-height:112px;border:2px solid var(--line-strong);border-radius:8px;background:#ffffff94;padding:14px}.recharge-summary-item.primary{background:#dff8e8}.recharge-summary-item.total{min-height:150px}.recharge-summary-item.total strong{font-size:42px}.recharge-balance-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recharge-balance-split>div{display:grid;gap:7px;border:2px solid var(--line-strong);border-radius:8px;background:#ffffff94;padding:12px}.recharge-balance-split span{color:var(--muted);font-size:13px;font-weight:800}.recharge-balance-split strong{display:flex;align-items:center;gap:7px;color:var(--text);font-size:20px;font-weight:950}.recharge-balance-split img{width:20px;height:20px}.recharge-summary-item svg{width:24px;height:24px}.recharge-summary-item span,.recharge-custom-field span,.recharge-web-notice,.recharge-record-row span,.recharge-record-row small{color:var(--muted);font-size:13px;font-weight:800}.recharge-summary-item strong{display:flex;align-items:center;gap:8px;color:var(--text);font-size:28px;font-weight:950}.recharge-summary-item strong img,.recharge-record-row strong img{width:24px;height:24px}.recharge-form-panel{display:grid;gap:16px}.recharge-mode-tabs{display:flex;gap:10px;border:2px solid var(--ink);border-radius:8px;background:var(--surface);padding:8px}.recharge-mode-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 1 0;min-height:46px;border:2px solid transparent;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:950}.recharge-mode-tabs button.active{border-color:var(--ink);background:#ffe36e;color:var(--text);box-shadow:3px 3px 0 var(--ink)}.recharge-section-title{display:flex;align-items:center;gap:10px}.recharge-section-title>span{margin-left:auto;color:var(--muted);font-size:13px;font-weight:850}.recharge-section-title h2{margin:0;color:var(--text);font-size:22px;font-weight:950}.recharge-section-title svg{width:23px;height:23px}.recharge-amount-grid,.recharge-channel-grid,.subscription-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.subscription-plan-card{display:grid;gap:8px;min-height:128px;border:2px solid var(--ink);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;padding:16px;text-align:left;font:inherit}.subscription-plan-card.active{background:#dff8e8;box-shadow:4px 4px 0 var(--ink)}.subscription-plan-card span{color:var(--muted);font-size:13px;font-weight:850}.subscription-plan-card strong{color:var(--text);font-size:32px;font-weight:950}.subscription-plan-card small{color:var(--muted);font-size:13px;font-weight:800}.recharge-amount-btn,.recharge-channel-btn,.recharge-refresh,.recharge-check-btn{border:2px solid var(--ink);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;font:inherit;font-weight:900}.recharge-amount-btn,.recharge-channel-btn{display:grid;gap:5px;min-height:88px;padding:14px;text-align:left}.recharge-amount-btn.active,.recharge-channel-btn.active{background:#ffe36e;box-shadow:4px 4px 0 var(--ink)}.recharge-amount-btn strong,.recharge-channel-btn strong{font-size:22px;font-weight:950}.recharge-amount-btn span,.recharge-channel-btn span{color:var(--muted);font-size:13px;font-weight:800}.recharge-channel-btn:disabled{cursor:not-allowed;opacity:.48}.recharge-custom-field{display:grid;gap:8px}.recharge-custom-field input{height:48px;border:2px solid var(--ink);border-radius:8px;background:var(--surface);color:var(--text);padding:0 12px;font-size:16px;font-weight:850;outline:none}.recharge-web-notice{margin:0;border:2px dashed var(--line-strong);border-radius:8px;padding:12px;line-height:1.55}.recharge-submit{width:100%;justify-content:center}.recharge-active-order{display:grid;gap:4px;border:2px solid var(--ink);border-radius:8px;background:#e9f7ff;padding:12px}.recharge-active-order strong{color:var(--text);font-weight:950}.recharge-active-order span{color:var(--muted);font-size:13px;font-weight:800}.qr-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.qr-modal{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;width:min(360px,90vw);background:var(--surface, #fff);border:2px solid var(--ink);border-radius:16px;padding:32px 28px 28px;box-shadow:0 20px 60px #00000040}.qr-modal__close{position:absolute;top:12px;right:12px;background:var(--surface-muted, #f0f0f0);border:2px solid var(--ink);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);transition:background .15s,transform .15s}.qr-modal__close:hover{background:var(--surface, #fff);transform:scale(1.08)}.qr-modal__icon{width:48px;height:48px;border-radius:12px;background:#07c160;color:#fff;display:flex;align-items:center;justify-content:center}.qr-modal__title{font-size:20px;font-weight:950;color:var(--text);margin:0}.qr-modal__subtitle{font-size:14px;color:var(--muted);margin:0;font-weight:600}.qr-modal__code-wrap{background:#fff;border:2px solid var(--ink);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:center}.qr-modal__canvas{width:220px!important;height:220px!important;display:block}.qr-modal__info{display:flex;align-items:center;gap:12px;font-size:14px}.qr-modal__order{color:var(--muted);font-weight:600;font-family:monospace;font-size:12px}.qr-modal__amount{color:var(--text);font-weight:950;font-size:18px}.qr-modal__hint{display:flex;align-items:center;gap:6px;font-size:13px;color:#07c160;font-weight:700;margin:0}.qr-modal-enter-active,.qr-modal-leave-active{transition:opacity .25s ease}.qr-modal-enter-active .qr-modal,.qr-modal-leave-active .qr-modal{transition:transform .25s ease,opacity .25s ease}.qr-modal-enter-from,.qr-modal-leave-to{opacity:0}.qr-modal-enter-from .qr-modal,.qr-modal-leave-to .qr-modal{transform:scale(.92) translateY(12px);opacity:0}[data-theme=dark] .qr-modal{background:var(--surface-muted);box-shadow:0 20px 60px #00000080}[data-theme=dark] .qr-modal__code-wrap{background:#fff}.recharge-records{display:grid;gap:12px}.recharge-records .recharge-section-title{justify-content:space-between;align-items:center}.recharge-view-more{display:flex;align-items:center;justify-content:center;width:100%;min-height:36px;padding:6px 12px;border:2px dashed var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:border-color .15s,color .15s}.recharge-view-more:hover{border-color:var(--ink);color:var(--text)}.recharge-refresh,.recharge-check-btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-size:13px}.recharge-refresh svg{width:16px;height:16px}.recharge-record-list{display:grid}.recharge-record-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:2px solid var(--line);padding:12px 0}.recharge-record-row:first-child{border-top:0}.recharge-record-row>div{display:grid;gap:4px}.recharge-record-row>div:last-child{justify-items:end;text-align:right}.recharge-record-row strong{color:var(--text);font-size:16px;font-weight:950}.recharge-record-row strong.positive{color:#1f8a5b}.recharge-record-row strong.negative{color:#a34820}.recharge-empty{margin:0;color:var(--muted);font-weight:850}[data-theme=dark] .recharge-panel{background:color-mix(in srgb,var(--surface-solid) 92%,#000)}[data-theme=dark] .recharge-sub-state{background:color-mix(in srgb,var(--surface-muted) 78%,#1f3440)}[data-theme=dark] .recharge-benefits{background:color-mix(in srgb,var(--surface-muted) 82%,#3f3312)}[data-theme=dark] .recharge-benefit-row{border-top-color:color-mix(in srgb,var(--ink) 18%,transparent)}[data-theme=dark] .recharge-summary-item,[data-theme=dark] .recharge-balance-split>div,[data-theme=dark] .recharge-mode-tabs,[data-theme=dark] .subscription-plan-card,[data-theme=dark] .recharge-amount-btn,[data-theme=dark] .recharge-channel-btn,[data-theme=dark] .recharge-refresh,[data-theme=dark] .recharge-check-btn,[data-theme=dark] .recharge-custom-field input{background:color-mix(in srgb,var(--surface-muted) 72%,#000)}[data-theme=dark] .recharge-summary-item.primary,[data-theme=dark] .subscription-plan-card.active{background:color-mix(in srgb,var(--accent) 18%,var(--surface-muted))}[data-theme=dark] .recharge-mode-tabs button.active,[data-theme=dark] .recharge-amount-btn.active,[data-theme=dark] .recharge-channel-btn.active{background:color-mix(in srgb,var(--gold) 72%,#3b2d07);color:#10261d}[data-theme=dark] .recharge-active-order{background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}[data-theme=dark] .recharge-web-notice{background:color-mix(in srgb,var(--surface-muted) 82%,#000)}[data-theme=dark] .recharge-record-row strong.positive{color:#8ee5bc}[data-theme=dark] .recharge-record-row strong.negative{color:#ff9b8f}@media(max-width:960px){.recharge-layout,.recharge-amount-grid,.recharge-channel-grid,.subscription-plan-grid{grid-template-columns:1fr}}.models-head .eyebrow{margin:0 0 10px}.models-head h1{margin:0;font-size:clamp(44px,5.2vw,76px);line-height:.98}.models-head p{max-width:800px;margin:0;border-left:5px solid var(--ink);color:var(--muted);padding:4px 0 4px 14px;font-size:17px;font-weight:800}.models-toolbar{display:flex;justify-content:flex-end}.model-config-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:16px;box-shadow:5px 5px 0 var(--ink)}.model-config-panel h2,.model-config-panel p{margin:0}.model-config-panel h2{font-size:21px}.model-config-panel p{color:var(--muted);font-size:14px;font-weight:800}.deduct-order-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.deduct-order-controls .custom-select{width:132px}.model-group-list{display:grid;gap:22px}.model-group-list.compact{gap:18px}.model-group{display:grid;gap:14px}.model-group h2{margin:0;font-size:clamp(26px,3vw,38px)}.model-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.model-card-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.model-card{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:16px;box-shadow:5px 5px 0 var(--ink)}.model-card.selectable{width:100%;cursor:pointer;color:inherit;font:inherit;text-align:left;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.model-card.selectable:hover,.model-card.selectable.selected{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}.model-card.selectable.selected{background:color-mix(in srgb,var(--pop-yellow) 22%,var(--surface-solid))}.model-card-grid.compact .model-card{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:12px;box-shadow:4px 4px 0 var(--ink)}.model-card-grid.compact .model-icon{width:42px;height:42px;border-width:2px}.model-card-grid.compact .model-icon img,.model-card-grid.compact .model-icon svg{width:24px;height:24px}.model-card-grid.compact .model-title-row h3{flex:1 1 auto;font-size:15px}.model-card-grid.compact .model-card-body{gap:6px}.model-card-grid.compact .model-card-body p{font-size:12px}.model-card-grid.compact .model-title-row span,.model-card-grid.compact .model-meta span{border-width:1px;padding:3px 8px;font-size:11px}.model-card-grid.compact .model-title-row span{min-width:58px;justify-content:center}.model-icon{display:grid;place-items:center;width:62px;height:62px;border:3px solid var(--ink);border-radius:8px;background:var(--mint-white)}.model-icon img,.model-icon svg{width:34px;height:34px;object-fit:contain}.model-card-body{display:grid;gap:8px;min-width:0}.model-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.model-title-row h3{flex:1 1 auto;min-width:0;margin:0;overflow-wrap:anywhere;font-size:20px;line-height:1.15}.model-title-row span,.model-meta span{display:inline-flex;align-items:center;gap:5px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:4px 8px;font-size:12px;font-weight:950;line-height:1;white-space:nowrap}.model-title-row span{flex:0 0 auto}.model-card-body p{margin:0;color:var(--muted);font-weight:800}.model-meta{display:flex;flex-wrap:wrap;gap:8px}.model-meta svg{width:14px;height:14px}.model-price-list{display:grid;gap:6px}.model-price-row{display:grid;grid-template-columns:44px minmax(0,.75fr) minmax(0,1fr);gap:6px;align-items:center;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface-muted);padding:6px 8px;font-size:12px}.model-price-row>span{color:var(--muted);font-weight:950}.model-price-row strong,.model-price-row em{display:inline-flex;align-items:center;gap:4px;min-width:0;color:var(--text);font-style:normal;font-weight:950}.model-price-row em{color:#2f5d50}.model-price-row img{width:15px;height:15px;flex:0 0 auto}.feedback-head{max-width:860px}.feedback-head .eyebrow{margin:0 0 8px;color:var(--muted);font-size:15px;font-weight:850}.feedback-head h1{margin:0;font-size:clamp(44px,5.2vw,76px);line-height:.98}.feedback-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.8fr);gap:20px;align-items:start}.feedback-form{display:grid;gap:14px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:24px;box-shadow:6px 6px 0 var(--ink)}.feedback-form h2{margin:0;font-size:15px;font-weight:950;color:var(--muted)}.feedback-form input,.feedback-form textarea{width:100%;border:3px solid var(--ink);border-radius:8px;outline:0;background:var(--surface-muted);color:var(--text);padding:12px 14px;font:inherit;font-weight:800;box-sizing:border-box}.feedback-form textarea{min-height:220px;resize:vertical}.feedback-form-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.feedback-priority{display:flex;align-items:center;gap:8px}.feedback-priority>span{color:var(--muted);font-size:13px;font-weight:850;white-space:nowrap}.feedback-priority .custom-select{min-width:120px}.feedback-char-count{color:var(--muted);font-size:12px;font-weight:800}.feedback-submit-btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;border:3px solid var(--ink);border-radius:8px;background:#10261d;color:#fff;padding:0 22px;font-size:16px;font-weight:900;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:transform .12s,box-shadow .12s}.feedback-submit-btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.feedback-submit-btn:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink)}.feedback-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:4px 4px 0 var(--ink)}.feedback-submit-btn svg{width:18px;height:18px}[data-theme=dark] .feedback-submit-btn{background:#e7f0eb;color:#10261d}.feedback-history{display:grid;gap:14px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:20px;box-shadow:6px 6px 0 var(--ink)}.feedback-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-history-head h2{margin:0;font-size:22px;line-height:1}.ticket-list{display:grid;gap:8px;max-height:560px;overflow-y:auto;padding-right:4px}.ticket-card{border:2.5px solid var(--ink);border-radius:8px;background:var(--mint-white);cursor:pointer;transition:transform .12s,box-shadow .12s;box-shadow:3px 3px 0 var(--ink)}.ticket-card:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.ticket-card-top{display:grid;grid-template-columns:42px minmax(0,1fr) 24px;gap:12px;align-items:center;padding:14px}.ticket-icon{width:42px;height:42px;border:2.5px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d;padding:9px;flex-shrink:0}.ticket-info{min-width:0}.ticket-info h3{margin:0;overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.ticket-meta{display:flex;align-items:center;gap:10px;margin-top:5px}.ticket-meta span{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:12px;font-weight:800}.ticket-meta svg{width:14px;height:14px}.ticket-status{border-radius:5px;padding:2px 8px;font-weight:900!important}.ticket-status.active{background:#d9f7df;color:#1a5e3c!important}[data-theme=dark] .ticket-status.active{background:#1a5e3c;color:#d9f7df!important}.ticket-chevron{width:22px;height:22px;color:var(--muted);transition:transform .2s}.ticket-card.expanded .ticket-chevron{transform:rotate(180deg)}.ticket-card-body{border-top:2px solid var(--line-strong);padding:14px}.ticket-card-body p{margin:0;color:var(--muted);font-size:14px;font-weight:800;line-height:1.6;white-space:pre-wrap}.feedback-empty{display:grid;place-items:center;min-height:200px;border:3px dashed var(--line-strong);border-radius:8px;color:var(--muted);font-size:16px;font-weight:900;text-align:center}.character-create-page{height:100%;overflow-y:auto;padding:24px 0}.character-create-shell{display:grid;gap:22px;width:min(1500px,calc(100% - 42px));max-width:100%}.character-create-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.character-create-head>div{max-width:900px}.character-create-head .eyebrow{margin:0 0 10px}.character-create-head h1{margin:0;font-size:clamp(42px,5vw,72px);line-height:.98}.character-create-head p:not(.eyebrow){max-width:760px;margin:12px 0 0;border-left:5px solid var(--ink);color:var(--muted);padding:4px 0 4px 14px;font-size:17px;font-weight:800}.character-create-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,.8fr);gap:18px;align-items:start}.create-panel{border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);padding:18px;box-shadow:6px 6px 0 var(--ink)}.world-panel{display:grid;gap:18px}.panel-title-row,.opening-toolbar,.attr-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.create-panel h2{display:flex;align-items:center;gap:8px;margin:0;font-size:22px;line-height:1.1}.create-panel h2 svg,.panel-title-row svg,.opening-toolbar svg{width:20px;height:20px}.btn.small{min-height:38px;padding:8px 12px;font-size:13px}.create-world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-height:456px;overflow:auto;padding:2px 6px 8px 2px}.create-world-option{display:grid;gap:10px;min-width:0;border:3px solid var(--ink);border-radius:8px;background:color-mix(in srgb,var(--surface-solid) 88%,var(--pop-yellow));color:var(--text);padding:10px;text-align:left;cursor:pointer}.create-world-option.selected,.opening-option.selected,.segmented button.selected{background:#d9f7df;box-shadow:4px 4px 0 var(--ink)}.create-world-cover{position:relative;display:grid;align-items:end;min-height:118px;overflow:hidden;border:3px solid var(--ink);border-radius:6px;background:#7dd3fc;background-size:cover;background-position:center;padding:8px}.create-world-cover svg{place-self:center;width:34px;height:34px}.create-world-cover em{width:fit-content;max-width:100%;border:2px solid var(--ink);border-radius:6px;background:var(--surface-solid);color:var(--text);padding:3px 7px;font-size:12px;font-style:normal;font-weight:900}.create-world-option strong,.opening-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.15}.create-world-option small,.opening-option span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;color:var(--muted);font-weight:750;line-height:1.45}.create-world-option small{-webkit-line-clamp:2}.opening-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.opening-option{display:grid;gap:8px;min-height:128px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:12px;text-align:left;cursor:pointer}.opening-option span{-webkit-line-clamp:4}.opening-option.custom{border-style:dashed}.opening-textarea{width:100%;min-height:130px;resize:vertical;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:12px;font:inherit;font-weight:750}.create-side{display:grid;gap:18px;position:sticky;top:18px}.attr-control,.form-line{display:grid;gap:8px;margin-top:14px}.attr-control span,.form-line>span{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase}.attr-control span strong{color:var(--text);font-size:15px;text-transform:none}.attr-control span em{border:2px solid var(--ink);border-radius:6px;background:var(--pop-yellow);color:#10261d;padding:2px 8px;font-style:normal;font-weight:950}.world-tag-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:2px}.world-tag-chip{display:inline-flex;align-items:center;gap:8px;min-height:34px;border:3px solid var(--ink);border-radius:2px;background:#f4d84f;color:#10261d;padding:0 4px 0 10px;font-size:13px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.world-tag-chip-x{display:grid;place-items:center;width:24px;height:24px;border:2px solid var(--ink);border-radius:2px;background:#fff8ec;color:#10261d;padding:0;font-size:16px;font-weight:950;line-height:1;cursor:pointer}.world-tag-chip-x:hover,.world-tag-chip-x:focus-visible{background:#ff7a7a;color:#fff;outline:none}.world-tag-input{margin-top:4px}.attr-control input[type=range]{width:100%;accent-color:#17966f}.form-line input,.form-line select{width:100%;min-height:44px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:8px 10px;font:inherit;font-weight:850}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.segmented button{min-height:42px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);font-weight:950;cursor:pointer}.confirm-panel dl{display:grid;gap:8px;margin:14px 0}.confirm-panel dl div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;border-bottom:2px solid color-mix(in srgb,var(--ink) 20%,transparent);padding-bottom:8px}.confirm-panel dt{color:var(--muted);font-weight:900}.confirm-panel dd{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.create-progress{display:flex;align-items:center;gap:8px;border:3px solid var(--ink);border-radius:8px;background:#e0f2fe;color:#10261d;padding:10px;font-size:13px;font-weight:900}.spin{animation:wl-spin .9s linear infinite}@keyframes wl-spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.character-create-layout{grid-template-columns:1fr}.create-side{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.create-side .create-panel{min-width:0}}@media(max-width:940px){.characters-head,.character-create-head{align-items:flex-start;flex-direction:column}.create-world-grid,.opening-grid,.create-side{grid-template-columns:1fr}.character-create-shell{width:min(100% - 24px,720px)}}.footer{margin-left:0}@media(max-width:1180px){.home-landscape,.home-bottom-grid{grid-template-columns:1fr}.account-card,.quota-card,.subscription-card,.invite-panel,.security-card,.detail-card,.profile-link-card,.settings-card{grid-column:1 / -1}.hero-content{grid-template-columns:minmax(0,1fr) minmax(230px,300px)}.home-side-stack{grid-template-columns:1fr 1fr;grid-template-rows:none}.home-side-stack .continue-row{grid-template-columns:1fr}.workshop-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.characters-grid{grid-template-columns:1fr}.model-card-grid,.model-card-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-layout{grid-template-columns:1fr}}@media(max-width:940px){.app-content{grid-template-rows:minmax(0,1fr);width:100%;max-width:100%;margin-left:0;padding-top:64px}.app-topbar{display:none}.notice-modal-layer{padding:12px}.notice-modal{height:calc(100vh - 24px)}.notice-modal-body{grid-template-columns:1fr}.notice-list-pane{border-right:0;border-bottom:3px solid var(--ink);max-height:260px}.mobile-topbar{position:fixed;inset:0 0 auto 0;z-index:80;display:flex;align-items:center;justify-content:space-between;height:64px;border-bottom:3px solid var(--ink);background:var(--mint-white);padding:0 14px}.mobile-brand img{width:36px;height:36px}.sidebar-scrim{position:fixed;top:64px;right:0;bottom:0;left:0;z-index:65;display:block;background:#00000061}.app-sidebar{top:64px;width:min(300px,calc(100vw - 34px));transform:translate(-105%);transition:transform .18s ease}.sidebar-collapse-btn{display:none}.app-sidebar.collapsed .sidebar-head{justify-content:flex-start}.app-sidebar.collapsed .sidebar-brand{justify-content:flex-start;flex:1 1 auto;gap:12px}.app-sidebar.collapsed .sidebar-brand span,.app-sidebar.collapsed .sidebar-nav a span,.app-sidebar.collapsed .sidebar-utility a span{display:grid}.app-sidebar.collapsed .sidebar-nav a,.app-sidebar.collapsed .sidebar-utility a{justify-content:flex-start;padding:0 12px}.app-sidebar.open{transform:translate(0)}.home-side-stack{grid-template-columns:1fr}.profile-head h1{font-size:clamp(38px,10vw,58px)}.workshop-layout{grid-template-columns:1fr}.workshop-subnav{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.workshop-subnav a{min-height:92px}.home-landscape .app-hero,.home-landscape .hero-content,.app-hero,.hero-content{min-height:460px}.hero-content{grid-template-columns:1fr}.hero-panel-web{align-self:end;width:min(100%,420px)}.login-landscape{grid-template-columns:1fr;min-height:0}.login-brand-panel{min-height:310px}}@media(max-width:640px){.app-home-shell,.login-landscape,.profile-layout{width:min(100% - 24px,1180px)}.home-brand strong{font-size:16px}.home-landscape .app-hero,.home-landscape .hero-content,.app-hero,.hero-content{min-height:380px}.hero-content{padding:24px 18px}.hero-content h1{font-size:clamp(38px,13vw,54px)}.hero-panel-web{display:none}.home-side-stack .home-section,.home-bottom-grid .home-section,.login-card-app{padding:16px}.profile-stack,.quota-detail-grid,.stat-grid{grid-template-columns:1fr}.member-badge{position:static;justify-self:start}.member-badge+.profile-summary{padding-right:0}.workshop-shell,.characters-shell{width:min(100% - 24px,1180px)}.workshop-subnav,.workshop-card-grid,.model-card-grid,.world-form,.world-form-row,.world-attr-item,.my-world-item{grid-template-columns:1fr}.workshop-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.model-card,.model-card-grid.compact,.model-config-panel,.detail-filters,.security-action-grid,.phone-code-row,.detail-table-row,.detail-table-row.usage{grid-template-columns:1fr}.deduct-order-controls{justify-content:stretch}.deduct-order-controls .custom-select,.deduct-order-controls .btn{width:100%}.detail-modal-backdrop{padding:12px}.detail-modal{max-height:calc(100vh - 24px);padding:14px}.world-detail-overlay{padding:12px}.world-detail-modal{max-height:calc(100vh - 24px)}.world-detail-body{padding:16px}.world-detail-body h2{font-size:24px}.world-detail-actions{flex-direction:column}.models-shell,.feedback-shell{width:min(100% - 24px,1180px)}.workshop-toolbar{align-items:stretch;flex-direction:column}.workshop-page-actions{flex-wrap:wrap}.workshop-pagination{align-items:flex-start;flex-direction:column}.my-world-tags{justify-content:flex-start}.world-form .login-submit-app{width:100%}.world-attr-head,.world-form-actions{align-items:stretch;flex-direction:column}.world-add-attr{justify-content:center}.invite-code strong{text-align:left}}.topbar-language-wrap{isolation:isolate}.topbar-language{min-width:136px;border-width:3px;background:var(--surface-solid);color:var(--text);padding:0 11px;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.topbar-language[aria-expanded=true]{transform:translate(2px,2px);background:var(--pop-yellow);color:#10261d;box-shadow:1px 1px 0 var(--ink)}.topbar-language-menu{top:calc(100% + 10px);right:auto;left:0;width:176px;gap:8px;border-width:3px;background:var(--mint-white);padding:8px;box-shadow:6px 6px 0 var(--ink)}.topbar-language-menu:before{content:"";position:absolute;top:-9px;left:24px;width:14px;height:14px;border-top:3px solid var(--ink);border-left:3px solid var(--ink);background:var(--mint-white);transform:rotate(45deg)}.topbar-language-menu button{position:relative;min-height:42px;border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);padding:0 12px;text-align:left;box-shadow:3px 3px 0 var(--ink)}.topbar-language-menu button.active,.topbar-language-menu button:hover{background:var(--pop-yellow);color:#10261d;transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink)}.notice-read-all{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.notice-read-all svg{width:16px;height:16px}.app-topbar{position:relative;justify-content:space-between}.login-page-app{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px;overflow-y:auto;padding:14px 0 12px}.login-landscape{width:min(1120px,calc(100% - 36px));gap:18px;align-self:center;min-height:min(540px,calc(100vh - 154px));max-height:calc(100vh - 154px)}.login-brand-panel{min-height:0;padding:28px}.login-brand-panel img{width:clamp(78px,9vw,112px);height:clamp(78px,9vw,112px);margin-bottom:14px}.login-brand-panel h1{margin-top:8px;font-size:clamp(32px,4.2vw,52px)}.login-brand-panel p{margin-top:6px;font-size:15px}.login-card-app{align-self:stretch;border:3px solid var(--ink);background:var(--surface-solid);box-shadow:7px 7px 0 var(--ink);padding:clamp(16px,1.8vw,22px)}.login-tabs-app{margin-bottom:14px;padding:3px}.login-tabs-app a{min-height:40px;font-size:15px}.login-reset-head{margin-bottom:14px}.login-form-app{gap:10px}.login-field-app{gap:5px}.login-field-app>span{font-size:12px}.login-field-app>div,.login-code-app>span{min-height:42px}.login-field-app svg,.login-code-app svg{width:17px;height:17px;margin-left:11px}.login-field-app input,.login-code-app input{padding:0 11px;font-size:14px}.login-code-app button{min-height:42px;padding:0 12px;font-size:13px}.forgot-app{margin-top:-2px;font-size:13px}.auth-agreement-check{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px;font-weight:850;line-height:1.55}.auth-agreement-check input{flex:0 0 auto;width:16px;height:16px;margin-top:3px;accent-color:#f4d84f}.auth-agreement-check button{border:0;background:transparent;color:#2f5d50;padding:0;font:inherit;font-weight:950;text-decoration:underline;text-underline-offset:3px}.auth-agreement-check button:hover,.auth-agreement-check button:focus-visible{color:#d7a32f;outline:none}[data-theme=dark] .auth-agreement-check{color:#f1f6eed1}[data-theme=dark] .auth-agreement-check button{color:#f4d84f}[data-theme=dark] .auth-agreement-check button:hover,[data-theme=dark] .auth-agreement-check button:focus-visible{color:#ffe27a}.login-submit-app{min-height:44px;font-size:16px}.login-card-app>p{margin-top:10px;font-size:12px;line-height:1.45}.auth-bottom-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 18px;width:min(1120px,calc(100% - 36px));margin:0 auto;border-top:1px solid color-mix(in srgb,var(--ink) 22%,transparent);background:color-mix(in srgb,var(--bg) 88%,transparent);padding:12px 4px 2px}.auth-bottom-bar>span{color:var(--muted);font-size:12px;font-weight:850}.auth-bottom-bar nav{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 16px}.auth-bottom-bar a{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:900;transition:color .14s ease,transform .14s ease}.auth-bottom-bar a:hover,.auth-bottom-bar a:focus-visible{color:var(--accent-strong);transform:translateY(-1px);outline:none}.auth-bottom-bar svg{width:14px;height:14px}.legal-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:160;display:grid;place-items:center;background:#0314129e;padding:24px}.legal-modal{width:min(560px,100%);border:3px solid var(--ink);border-radius:8px;background:var(--surface-solid);color:var(--text);box-shadow:8px 8px 0 var(--ink)}.legal-modal header{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:3px solid var(--ink);padding:14px 16px}.legal-modal h2{margin:0;font-size:20px}.legal-modal header button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:2px solid var(--ink);border-radius:8px;background:var(--pop-yellow);color:#10261d}.legal-modal header button svg{width:18px;height:18px}.legal-modal-body{display:grid;gap:12px;max-height:min(54vh,420px);overflow-y:auto;padding:16px}.legal-modal-body p{margin:0;color:var(--muted);font-size:14px;font-weight:750;line-height:1.8}[data-theme=dark] .legal-modal{background:#103732}[data-theme=dark] .legal-modal-body p{color:#f1f6eed6}.profile-head,.workshop-head,.models-head,.characters-head{margin-right:auto;margin-left:auto}.profile-head .eyebrow,.profile-head h1,.workshop-head .eyebrow,.workshop-head h1,.models-head .eyebrow,.models-head h1,.characters-head .eyebrow,.characters-head h1{text-align:center}@media(max-width:640px){.login-page-app{padding:12px 0}.login-landscape{width:min(100% - 24px,1180px);max-height:none}.login-code-app{flex-direction:column}.login-code-app button{border-left:0;border-top:2px solid var(--ink);border-radius:0 0 8px 8px}.auth-bottom-bar{width:min(100% - 24px,1180px)}.topbar-language-menu{right:-54px}}.brutal-action,.login-submit-app.brutal-action,.feedback-submit-btn.brutal-action{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:3px solid var(--ink);border-radius:2px;background:#f4d84f;color:#10261d;padding:0 20px;font:inherit;font-size:15px;font-weight:950;letter-spacing:0;text-decoration:none;cursor:pointer;box-shadow:5px 5px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.brutal-action svg{width:19px;height:19px;flex:0 0 auto}.brutal-action:hover,.brutal-action:focus-visible{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);outline:none}.brutal-action:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.brutal-action:disabled,.login-submit-app.brutal-action:disabled,.feedback-submit-btn.brutal-action:disabled{cursor:not-allowed;opacity:.58;transform:none;box-shadow:5px 5px 0 var(--ink)}.brutal-action--mint{background:#9de8c2}.brutal-action--yellow{background:#f4d84f}.brutal-action--ink,.feedback-submit-btn.brutal-action--ink{background:#10261d;color:#fff8ec}.brutal-action--login,.login-submit-app.brutal-action--login{background:#78d7ff;color:#10261d}.brutal-action--ghost{background:var(--surface-solid);color:var(--text)}.brutal-action--hero{min-width:188px;min-height:64px;border-width:4px;border-radius:2px;background:#f4d84f;color:#10261d;box-shadow:7px 7px #10261d}.brutal-action--hero-secondary{min-width:172px;min-height:64px;border-width:4px;background:#fff8ec;color:#10261d;box-shadow:7px 7px #10261d}.brutal-action--small{min-height:38px;padding:0 12px;font-size:13px;box-shadow:4px 4px 0 var(--ink)}.continue-card a{border:3px solid #10261d;border-radius:2px;box-shadow:4px 4px #10261d;font-weight:950}.character-create-page{padding:18px 0 24px}.character-create-shell{display:flex;flex-direction:column;gap:16px;width:min(1540px,calc(100% - 44px))}.character-create-toolbar{display:flex;align-items:center;justify-content:flex-start}.character-create-head{display:none}.character-create-layout{display:flex;align-items:flex-start;gap:18px}.world-panel{flex:1 1 auto;min-width:0;padding:24px}.create-side{flex:0 0 420px;display:flex;flex-direction:column;gap:18px;position:sticky;top:18px}.create-panel{border-width:4px;border-radius:2px;box-shadow:7px 7px 0 var(--ink)}.panel-title-row,.opening-toolbar,.attr-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.create-world-grid{display:flex;flex-wrap:wrap;gap:16px;max-height:none;overflow:visible;padding:6px}.create-world-option{flex:1 1 calc(33.333% - 16px);min-width:210px;max-width:calc(33.333% - 8px);border-width:4px;border-radius:2px;padding:14px;box-shadow:4px 4px 0 transparent}.create-world-option.selected{box-shadow:6px 6px 0 var(--ink)}.create-world-cover{min-height:150px;border-width:3px;border-radius:2px}.opening-grid{display:flex;flex-wrap:wrap;gap:14px}.opening-option{flex:1 1 calc(50% - 14px);min-width:280px;border-width:3px;border-radius:2px;box-shadow:4px 4px 0 transparent}.opening-option.selected{box-shadow:5px 5px 0 var(--ink)}.attr-control{border:3px solid var(--ink);border-radius:2px;background:color-mix(in srgb,var(--surface-solid) 86%,#9de8c2);padding:10px}.form-line input,.form-line select,.opening-textarea{border-width:3px;border-radius:2px}.personality-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.personality-picker button{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);padding:6px 8px;font:inherit;font-size:12px;font-weight:950;line-height:1.15;text-align:center;cursor:pointer;box-shadow:3px 3px 0 transparent}.personality-picker button.selected{background:#f4d84f;color:#10261d;box-shadow:3px 3px 0 var(--ink)}[data-theme=dark] .create-world-option.selected,[data-theme=dark] .opening-option.selected,[data-theme=dark] .segmented button.selected,[data-theme=dark] .personality-picker button.selected{border-color:#f2c85a;background:#f4d84f;color:#10261d;box-shadow:5px 5px #000000b8}[data-theme=dark] .create-world-option.selected strong,[data-theme=dark] .opening-option.selected strong,[data-theme=dark] .segmented button.selected,[data-theme=dark] .personality-picker button.selected{color:#10261d}[data-theme=dark] .create-world-option.selected small,[data-theme=dark] .opening-option.selected span{color:#365046}[data-theme=dark] .create-world-option.selected .create-world-cover em{border-color:#10261d;background:#fff8ecf0;color:#10261d}.create-submit{width:100%;margin-top:12px}@media(max-width:1180px){.character-create-layout{flex-direction:column}.create-side{position:static;flex:0 0 auto;width:100%}.create-world-option{max-width:none}}.characters-page{min-height:100%;height:100%;overflow-y:auto;background:var(--bg);padding:28px 0 42px}.characters-shell{display:grid;gap:18px;width:min(1240px,calc(100% - 42px))}.characters-hero{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:18px;align-items:center;border:3px solid var(--ink);border-radius:var(--radius);background:linear-gradient(135deg,#f4d84f94,#9de8c2a3),color-mix(in srgb,var(--surface-solid) 88%,transparent);padding:clamp(15px,2.2vw,22px);box-shadow:5px 5px 0 var(--ink)}[data-theme=dark] .characters-hero{background:linear-gradient(135deg,#15463ceb,#405528d1),#103732e6}.characters-kicker{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;border:2px solid var(--ink);border-radius:999px;background:color-mix(in srgb,var(--surface-solid) 82%,transparent);color:var(--text);padding:5px 10px;font-size:12px;font-weight:950}.characters-kicker svg{width:18px;height:18px}.characters-hero h1{margin:7px 0 0;color:var(--ink);font-size:clamp(34px,4.2vw,52px);line-height:1}[data-theme=dark] .characters-hero h1{color:var(--text)}.characters-hero p{max-width:620px;margin:8px 0 0;color:var(--muted);font-size:15px;font-weight:850}[data-theme=dark] .characters-hero p{color:var(--faint)}.characters-create-btn,.characters-secondary-btn,.character-play{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:3px solid var(--ink);border-radius:2px;padding:0 15px;font-weight:950;box-shadow:var(--brutal-shadow-sm);transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.characters-create-btn{background:var(--ink);color:var(--mint-white)}[data-theme=dark] .characters-create-btn{background:var(--pop-yellow);color:#10261d}.characters-secondary-btn{background:var(--surface-solid);color:var(--text)}.characters-create-btn:hover,.characters-secondary-btn:hover,.character-play:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.characters-create-btn svg,.characters-secondary-btn svg,.character-play svg{width:18px;height:18px}.characters-stage{min-height:min(430px,calc(100vh - 244px))}.characters-stage .characters-grid{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.characters-stage .character-card{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:220px minmax(0,1fr) auto;min-height:420px;overflow:hidden;border:3px solid var(--ink);border-radius:var(--radius-lg);background:var(--surface-solid);color:var(--text);box-shadow:var(--brutal-shadow);transition:transform .18s cubic-bezier(.4,0,.2,1),box-shadow .18s cubic-bezier(.4,0,.2,1)}.characters-stage .character-card:hover{transform:translate(3px,3px);box-shadow:3px 3px 0 var(--ink)}.character-cover{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-height:220px;overflow:hidden;background:linear-gradient(135deg,#f4d84f8c,#6bd2a380),var(--surface-soft);background-position:center;background-size:cover;padding:14px;border-bottom:3px solid var(--ink)}[data-theme=dark] .character-cover{background:linear-gradient(135deg,#15463cb3,#40552880),var(--surface-soft);background-position:center;background-size:cover}.character-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.45) 100%);pointer-events:none;z-index:1}.character-cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:inherit;background-size:cover;background-position:center;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:0}.character-card:hover .character-cover:before{transform:scale(1.06)}.character-cover>span{position:relative;z-index:2;min-width:0;max-width:calc(100% - 70px);overflow:hidden;border:2px solid rgba(255,255,255,.5);border-radius:999px;background:#ffffff2e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;padding:5px 12px;font-size:12px;font-weight:950;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.4)}.characters-stage .character-avatar{position:relative;z-index:2;display:grid;place-items:center;width:52px;height:52px;flex:0 0 auto;border:3px solid var(--ink);border-radius:var(--radius);background:var(--pop-yellow);color:#10261d;font-size:22px;font-weight:950;box-shadow:var(--brutal-shadow-sm);margin-bottom:-26px;align-self:flex-end}.character-card-foot,.characters-empty-state>div{display:flex;align-items:center}.characters-stage .character-body{display:grid;align-content:start;gap:10px;padding:34px 16px 10px}.characters-stage .character-body h3{margin:0;overflow-wrap:anywhere;color:var(--text);font-size:22px;line-height:1.15}.characters-stage .character-meta{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;margin-top:0}.characters-stage .character-meta span{border:2px solid var(--line-strong);border-radius:999px;background:var(--accent-soft);color:var(--text);padding:3px 9px;font-size:12px;font-weight:900}.characters-stage .character-body small{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;overflow:hidden;color:var(--faint);font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.characters-stage .character-body small svg{flex:0 0 auto;width:15px;height:15px;color:var(--gold)}.character-card-foot{align-self:end;gap:8px;border-top:3px solid var(--ink);padding:10px}.character-play{flex:1 1 auto;min-height:38px;border-width:3px;background:var(--pop-yellow);color:#10261d;padding:0 10px}.character-card:hover .character-play{background:var(--accent);color:#fff}.character-play svg,.character-delete svg{width:17px;height:17px}.character-delete{flex:0 0 42px;width:42px;height:38px;min-height:38px;border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--danger);padding:0;box-shadow:var(--brutal-shadow-sm);transition:transform .14s ease,box-shadow .14s ease}.character-delete:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.characters-empty-state{display:grid;place-items:center;align-content:center;justify-items:center;gap:16px;width:100%;margin:0 auto;min-height:min(480px,calc(100vh - 250px));border:3px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text);padding:clamp(24px,5vw,54px);text-align:center;box-shadow:var(--brutal-shadow)}.characters-empty-state .characters-empty-icon{display:grid;place-items:center;align-items:center;justify-content:center;margin:0 auto;width:78px;height:78px;border-radius:var(--radius);border:3px solid var(--ink);background:var(--pop-yellow);color:#10261d;box-shadow:var(--brutal-shadow-sm)}.characters-empty-icon svg{width:38px;height:38px}.characters-empty-state strong{color:var(--text);font-size:24px;font-weight:950}.characters-empty-state p{max-width:430px;margin:0;color:var(--muted);font-weight:850}.characters-empty-state>div:last-child{justify-content:center;flex-wrap:wrap;gap:10px;margin-top:4px}@media(max-width:1180px){.characters-stage .characters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:920px){.characters-stage .characters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.characters-stage .character-card{grid-template-rows:190px minmax(0,1fr) auto;min-height:380px}.character-cover{min-height:190px}}@media(max-width:640px){.characters-hero,.characters-stage .characters-grid{grid-template-columns:1fr}.characters-hero{align-items:start}.characters-create-btn{width:100%}.characters-stage .character-card{grid-template-rows:200px minmax(0,1fr) auto;min-height:360px}.character-cover{min-height:200px}}.characters-page{background:var(--bg);padding:22px 0 36px}.characters-shell{gap:18px;width:min(1240px,calc(100% - 42px))}.characters-hero{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:16px;align-items:center;border:0;border-bottom:3px solid var(--ink);border-radius:0;background:transparent;padding:0 0 16px;box-shadow:none}.characters-hero h1{margin:0;font-size:clamp(30px,3.8vw,46px)}.characters-hero p{max-width:620px;margin:8px 0 0;font-size:14px}.characters-stage{min-height:min(430px,calc(100vh - 200px))}.characters-stage.is-empty{display:grid;align-items:center;justify-items:stretch}.characters-stage .characters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.characters-stage .character-card{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:190px auto auto auto;gap:14px;min-height:0;overflow:hidden;border-radius:var(--radius);background:var(--surface-solid);padding:0 16px 16px;box-shadow:5px 5px 0 var(--ink)}.characters-stage .character-card.has-world-cover{border-color:var(--ink)}.character-cover{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-height:190px;margin:0 -16px;overflow:hidden;border-bottom:3px solid var(--ink);background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 58%,var(--surface-solid)),color-mix(in srgb,var(--accent) 48%,var(--surface-solid)));background-position:center;background-size:cover;padding:14px}.character-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(180deg,#00000005 30%,#00000094)}.character-cover:before{display:none}.character-cover>span{position:relative;z-index:1;max-width:calc(100% - 72px);overflow:hidden;border:2px solid rgba(255,255,255,.5);border-radius:999px;background:#ffffff2e;color:#fff;padding:5px 12px;font-size:12px;font-weight:950;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.36);white-space:nowrap}.character-head{display:grid;grid-template-columns:58px minmax(0,1fr) 38px;gap:12px;align-items:center}.characters-stage .character-avatar{position:relative;z-index:1;display:grid;place-items:center;overflow:hidden;width:58px;height:58px;margin:0;border:3px solid var(--ink);border-radius:var(--radius);background:linear-gradient(135deg,var(--pop-yellow),#9de8c2);color:#10261d;font-size:24px;font-weight:950;box-shadow:var(--brutal-shadow-sm)}.characters-stage .character-avatar img{width:100%;height:100%;object-fit:cover}.character-avatar-gen{position:absolute;right:-7px;bottom:-7px;display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:22px;border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff8ec;padding:0 6px;font-size:10px;font-weight:950;line-height:1;box-shadow:2px 2px 0 var(--pop-yellow)}.character-title-block{min-width:0}.character-title-block h3{margin:0;overflow-wrap:anywhere;color:var(--text);font-size:22px;line-height:1.15}.character-title-block p{margin:5px 0 0;overflow:hidden;color:var(--muted);font-size:13px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.characters-stage .character-body{display:grid;gap:9px;border-top:1px solid var(--line);padding:12px 0 0}.character-progress-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:12px;align-items:center}.character-progress-main{display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:14px;align-items:center;min-width:0}.character-profile-brief{min-width:0}.character-continue-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--pop-yellow);color:#10261d;padding:0 12px;font-size:13px;font-weight:950;line-height:1.1;white-space:nowrap;box-shadow:3px 3px 0 var(--ink);transition:transform .14s ease,box-shadow .14s ease}.character-continue-btn:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.character-continue-btn svg{width:16px;height:16px}.character-attrs{display:grid;grid-template-columns:repeat(2,76px);gap:7px;justify-content:end;min-width:160px}.character-attrs span{display:inline-flex;align-items:center;gap:5px;min-height:26px;max-width:100%;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-muted) 86%,var(--surface-solid));color:var(--text);padding:3px 8px;font-size:12px;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.character-attrs span:nth-child(1){background:color-mix(in srgb,#f4d84f 30%,var(--surface-solid))}.character-attrs span:nth-child(2){background:color-mix(in srgb,#9de8c2 34%,var(--surface-solid))}.character-attrs span:nth-child(3){background:color-mix(in srgb,#9ec5ff 34%,var(--surface-solid))}.character-attrs span:nth-child(4){background:color-mix(in srgb,#f7a8a8 30%,var(--surface-solid))}.character-attrs strong{color:var(--muted);font-size:11px;font-weight:950}.character-attrs .character-attrs-more{border-style:dashed;color:var(--muted)}.save-attr-preview,.save-detail-panel{display:flex;flex-wrap:wrap;gap:7px}.save-attr-preview span,.save-detail-panel span,.save-attrs-more{display:inline-flex;align-items:center;gap:5px;min-height:26px;max-width:100%;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-solid) 78%,var(--bg));color:var(--text);padding:3px 8px;font-size:12px;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.save-attr-preview strong,.save-detail-panel strong{color:var(--muted);font-size:11px;font-weight:950}.save-attrs-more{justify-content:center;min-width:74px;border-style:dashed;background:color-mix(in srgb,var(--gold) 16%,var(--surface-solid));color:var(--muted);cursor:pointer}.save-detail-panel{border-top:1px dashed var(--line-strong);margin-top:8px;padding-top:8px}.save-detail-panel span{background:var(--surface-solid)}.character-saves{display:grid;gap:10px;border-top:3px solid var(--ink);padding-top:12px}.character-saves-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.character-saves-head span{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:14px;font-weight:950}.character-saves-head svg{width:17px;height:17px;color:var(--accent-strong)}.character-saves-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:0 12px;font-size:12px;font-weight:950;line-height:1.1;white-space:nowrap;box-shadow:3px 3px 0 var(--ink);transition:transform .14s ease,box-shadow .14s ease}.character-saves-toggle:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.save-list{display:grid;gap:8px}.save-row{display:grid;grid-template-columns:1fr;gap:10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted);padding:10px}.save-row strong,.save-row span,.save-row p{display:block;min-width:0}.save-row strong{overflow:hidden;font-size:14px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.save-row span{margin-top:3px;color:#10261d;font-size:12px;font-weight:800}.save-row .save-badge{display:inline-flex;width:max-content;max-width:100%;border:2px solid var(--ink);border-radius:999px;background:var(--surface-solid);color:var(--text);padding:2px 8px;font-size:11px;font-weight:950}.save-row .save-badge.synced{background:#d9f7df;color:#10261d}.save-row .save-badge.cloud{background:#f4d84f;color:#10261d}.save-row p{display:-webkit-box;overflow:hidden;margin:6px 0 0;color:#10261d;font-size:12px;font-weight:750;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.save-actions{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;max-width:100%;overflow-x:auto;padding-bottom:2px}.save-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:32px;border:2px solid var(--line-strong);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-solid) 88%,var(--bg));color:var(--text);padding:0 8px;font-size:12px;font-weight:950;line-height:1.15;white-space:normal;box-shadow:2px 2px 0 var(--ink);transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease}.character-delete{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:0;box-shadow:3px 3px 0 var(--ink)}.save-actions button.danger,.character-delete{border-color:color-mix(in srgb,var(--danger) 68%,var(--ink));background:color-mix(in srgb,var(--danger) 12%,var(--surface-solid));color:var(--danger)}.save-actions button:hover,.character-delete:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.save-actions svg,.character-delete svg{flex:0 0 auto;width:16px;height:16px}.save-empty{display:grid;place-items:center;min-height:76px;border:2px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);font-size:13px;font-weight:900}@media(max-width:1180px){.characters-stage .characters-grid{grid-template-columns:1fr}}@media(max-width:640px){.characters-hero,.character-progress-row,.character-progress-main,.save-row{grid-template-columns:1fr}.characters-create-btn{width:100%}.character-delete{position:absolute;top:202px;right:14px}.character-continue-btn{width:100%}.character-attrs{grid-template-columns:repeat(2,minmax(72px,1fr));justify-content:start;min-width:0}.character-saves-head{align-items:flex-start;flex-direction:column}.save-actions button{flex:1 1 auto}}.save-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;background:#09121094;padding:22px}.save-modal{position:relative;display:grid;gap:14px;width:min(760px,100%);max-height:min(760px,calc(100vh - 44px));overflow:auto;border:3px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:18px;box-shadow:8px 8px 0 var(--ink)}.save-modal-close{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);box-shadow:3px 3px 0 var(--ink)}.save-modal-close svg{width:17px;height:17px}.save-modal-head{display:grid;gap:8px;border-bottom:3px solid var(--ink);padding:0 50px 14px 0}.save-modal-head strong,.save-modal-head span{display:block}.save-modal-head strong{font-size:14px;font-weight:950}.save-modal-head span{margin-top:3px;color:var(--muted);font-size:13px;font-weight:850}.save-modal-head h2{margin:0;color:var(--text);font-size:24px;line-height:1.15}.save-modal-list{display:grid;gap:10px}.save-modal-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;border-width:2px;background:var(--surface-muted)}.save-row-main{display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,auto);gap:14px;align-items:center;min-width:0}.save-row-info{min-width:0}.save-row-info>strong,.save-row-info>span,.save-row-info>p{display:block}.save-row-main .save-attr-preview{justify-content:flex-start;align-content:center;max-width:430px;margin-top:0}.save-modal-row .save-actions{flex-wrap:wrap;justify-content:flex-end;overflow-x:visible;padding-bottom:0}.save-modal-row .save-actions button{white-space:nowrap}.attr-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;background:#0912106b;padding:22px}.attr-modal{position:relative;display:grid;gap:14px;width:min(560px,100%);max-height:min(680px,calc(100vh - 44px));overflow:auto;border:3px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:18px;box-shadow:8px 8px 0 var(--ink)}.attr-modal-list{border-top:0;margin-top:0;padding-top:0}.delete-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:grid;place-items:center;background:#09121094;padding:22px}.delete-confirm-modal{position:relative;display:grid;gap:16px;width:min(460px,100%);border:3px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:18px;box-shadow:8px 8px 0 var(--ink)}.delete-confirm-modal>p{margin:0;color:var(--muted);font-size:14px;font-weight:750;line-height:1.65}.delete-confirm-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.delete-confirm-actions button{min-height:42px}.delete-confirm-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid color-mix(in srgb,var(--danger) 68%,var(--ink));border-radius:var(--radius);background:color-mix(in srgb,var(--danger) 16%,var(--surface-solid));color:var(--danger);padding:0 16px;font-size:14px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.delete-confirm-danger svg{width:16px;height:16px}.delete-confirm-danger:hover:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.delete-confirm-actions button:disabled{cursor:wait;opacity:.62}@media(max-width:640px){.save-modal{padding:14px}.save-modal-row,.save-row-main{grid-template-columns:1fr}.save-row-main .save-attr-preview{max-width:none}.delete-confirm-actions{display:grid;grid-template-columns:1fr}.delete-confirm-actions button,.delete-confirm-danger{width:100%}}.characters-page{background:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(var(--bg-grid) 1px,transparent 1px),color-mix(in srgb,var(--accent) 12%,var(--bg));background-size:36px 36px,36px 36px,auto}[data-theme=dark] .characters-page{background:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(var(--bg-grid) 1px,transparent 1px),color-mix(in srgb,var(--accent) 10%,var(--bg));background-size:36px 36px,36px 36px,auto}.characters-hero{border-bottom-color:var(--line-strong);color:var(--text)}[data-theme=dark] .characters-hero{background:transparent;border-bottom-color:var(--line-strong);box-shadow:none}.characters-hero h1{color:var(--text)}.characters-hero p{color:var(--muted)}.characters-stage .character-card,.save-row,.characters-empty-state{background:var(--surface-solid);color:var(--text)}[data-theme=dark] .characters-stage .character-card,[data-theme=dark] .save-row,[data-theme=dark] .characters-empty-state{background:var(--surface-solid)}[data-theme=dark] .character-title-block h3,[data-theme=dark] .character-saves-head span{color:#f6fbf4}[data-theme=dark] .character-title-block p,[data-theme=dark] .character-attrs strong,[data-theme=dark] .character-attrs .character-attrs-more{color:#d7e7df}[data-theme=dark] .characters-create-btn{background:var(--surface-solid);color:var(--text)}.characters-stage .characters-grid{max-width:1080px}.characters-stage .character-avatar{background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 62%,var(--surface-solid)),color-mix(in srgb,var(--accent) 48%,var(--surface-solid)));color:var(--text)}.character-avatar-gen{background:var(--ink);color:var(--mint-white);box-shadow:2px 2px 0 var(--gold)}.save-row .save-badge{align-items:center;min-height:22px;background:var(--surface-solid);color:#10261d;line-height:1.15;white-space:normal}.save-row .save-badge.synced{background:var(--accent-soft);color:var(--accent-strong)}.save-row .save-badge.cloud{background:color-mix(in srgb,var(--gold) 22%,var(--surface-solid));color:#10261d}.save-actions button{width:auto;min-width:0;max-width:none;min-height:32px;color:#10261d;background:color-mix(in srgb,var(--surface-solid) 88%,var(--bg));line-height:1.15;white-space:nowrap}.save-actions button:first-child{border-color:var(--ink);background:var(--pop-yellow);color:#10261d}.save-actions button.danger,.character-delete{border-color:color-mix(in srgb,var(--danger) 68%,var(--ink));background:color-mix(in srgb,var(--danger) 12%,var(--surface-solid));color:#10261d}.save-actions button span{overflow-wrap:normal;text-align:center;white-space:nowrap}[data-theme=dark] .character-attrs span{border-color:#ecf6ef57;background:#f5faf41c;color:#f6fbf4}[data-theme=dark] .character-attrs span:nth-child(1){background:#f4d84f33}[data-theme=dark] .character-attrs span:nth-child(2){background:#9de8c22e}[data-theme=dark] .character-attrs span:nth-child(3){background:#87c7ff2b}[data-theme=dark] .character-attrs span:nth-child(4){background:#ff8db329}[data-theme=dark] .save-actions button{border-color:#ecf6ef6b;background:#f5faf41a;color:#f6fbf4}[data-theme=dark] .save-actions button:first-child{border-color:#ffed8bdb;background:#f5faf41a;color:#f6fbf4}[data-theme=dark] .save-actions button.danger,[data-theme=dark] .character-delete{border-color:#ff8f8fad;background:#ff737324;color:#f6fbf4}[data-theme=dark] .save-row span:not(.save-badge){color:#f6fbf4}[data-theme=dark] .save-row p,[data-theme=dark] .save-row .save-badge,[data-theme=dark] .save-row .save-badge.synced,[data-theme=dark] .save-row .save-badge.cloud{color:#f6fbf4}@media(max-width:640px){.save-row{grid-template-columns:1fr}.save-actions{justify-content:flex-start;max-width:none}.save-actions button{flex:0 1 auto;max-width:none}}.world-panel .create-world-grid{max-height:820px;overflow-y:auto;overflow-x:hidden;padding-right:10px}.world-panel .create-world-option{height:auto;min-height:272px;overflow:hidden}.world-panel .create-world-option small{min-height:2.9em}.game-page{height:100%;overflow:hidden;background:linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px),linear-gradient(var(--bg-grid) 1px,transparent 1px),var(--bg);background-size:36px 36px,36px 36px,auto;padding:16px}.game-shell{display:grid;grid-template-columns:minmax(270px,320px) minmax(480px,1fr) minmax(280px,340px);gap:14px;height:100%;min-height:0}.game-left,.game-center,.game-right{min-height:0}.game-left,.game-right{display:grid;align-content:start;gap:12px;overflow-y:auto;padding:0 5px 6px 0}.game-center{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}.game-card,.game-story-head,.game-story,.game-options,.game-input,.game-empty{border:3px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);box-shadow:5px 5px 0 var(--ink)}.game-back,.game-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);padding:0 12px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.game-back svg,.game-save-btn svg{width:16px;height:16px}.game-save-btn.wide{width:100%;min-height:42px}.game-card{position:relative;display:grid;gap:12px;padding:14px}.game-card h2{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:16px}.game-card h2 svg{width:18px;height:18px;color:var(--accent-strong)}.game-identity{overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 20%,transparent),transparent),var(--surface-solid)}.game-identity.has-cover{min-height:210px;align-content:end;background-position:center;background-size:cover;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45)}.game-identity.has-cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0818162e,#081816c2),linear-gradient(90deg,rgba(8,24,22,.72),transparent 68%)}.game-identity>*{position:relative;z-index:1}.game-avatar{width:72px;height:72px;border:3px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);box-shadow:3px 3px 0 var(--ink);overflow:hidden}.game-avatar img{width:100%;height:100%;object-fit:cover}.game-identity>span,.game-story-head span,.game-options>span,.game-muted,.game-save-state{color:var(--muted);font-size:13px;font-weight:850}.game-identity h1{margin:0;font-size:28px;line-height:1.05}.game-meta-line{display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--text);font-size:13px;font-weight:900}.game-identity.has-cover>span,.game-identity.has-cover .game-meta-line{color:#ffffffdb}.game-meta-line svg{width:16px;height:16px;color:var(--gold)}.game-attr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-attr-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.game-attr-list.full{grid-template-columns:1fr}.game-status-card{gap:14px}.game-status-section{display:grid;gap:8px;border:2px solid var(--line-strong);border-radius:var(--radius);padding:10px}.game-status-section.basic{background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface-solid))}.game-status-section.world{background:color-mix(in srgb,var(--gold) 18%,var(--surface-solid))}.game-section-label{color:var(--muted);font-size:14px;font-weight:950}.game-attr{display:grid;gap:2px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);padding:8px}.game-attr.base{border-color:color-mix(in srgb,var(--accent) 32%,var(--line-strong));background:color-mix(in srgb,var(--accent-soft) 64%,var(--surface-solid))}.game-attr.world{border-color:color-mix(in srgb,var(--gold) 44%,var(--line-strong));background:color-mix(in srgb,var(--gold) 16%,var(--surface-solid))}.game-attr span{color:var(--muted);font-size:12px;font-weight:900}.game-attr strong{overflow:hidden;color:var(--text);font-size:14px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.game-situation-list,.game-list{display:grid;gap:8px}.game-situation-list article,.game-list article{display:grid;gap:3px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-muted) 82%,var(--surface-solid));padding:9px}.game-situation-list strong,.game-list strong{color:var(--text);font-size:14px;font-weight:950}.game-situation-list span,.game-list span,.game-list small{color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}.game-story-head{display:grid;gap:4px;padding:12px 14px}.game-story-head h2{margin:2px 0 0;font-size:22px}.game-story{display:grid;align-content:start;gap:12px;overflow-y:auto;padding:16px}.game-message{display:grid;gap:6px;max-width:820px}.game-message.user{justify-self:end;max-width:min(680px,82%)}.game-message>span{color:var(--muted);font-size:12px;font-weight:950}.game-message p{margin:0;border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);color:var(--text);padding:12px;font-size:15px;font-weight:750;line-height:1.75;white-space:pre-wrap}.game-message-image,.game-image-cue{width:min(520px,100%);border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-muted);box-shadow:3px 3px 0 var(--ink)}.game-message-image{max-height:520px;object-fit:cover}.game-image-cue{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;color:var(--muted);font-size:13px;font-weight:850}.game-image-cue svg{width:18px;height:18px;color:var(--accent-strong)}.game-message.user p{border-color:var(--ink);background:var(--pop-yellow);color:#10261d;font-weight:900}.game-message.loading p{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.game-message.loading svg{width:17px;height:17px}.game-options{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:10px}.game-options button{flex:0 0 auto;border:2px solid var(--ink);border-radius:999px;background:var(--surface-solid);color:var(--text);padding:7px 12px;font-size:13px;font-weight:900}.game-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px}.game-input textarea{resize:none;min-height:50px;max-height:140px;border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);color:var(--text);padding:10px;font:inherit;font-weight:800;outline:none}.game-input button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:120px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--accent);color:#fff;padding:0 14px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.game-input button svg{width:18px;height:18px}.game-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.game-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-solid);color:var(--text);font-size:13px;font-weight:950;box-shadow:2px 2px 0 var(--ink)}.game-tabs button.active{background:var(--pop-yellow);color:#10261d}.game-tabs svg{width:15px;height:15px}.game-side-panel{min-height:260px;max-height:min(440px,calc(100vh - 420px));overflow-y:auto}.game-function-panel{gap:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 58%),var(--surface-solid)}.game-option-list{display:grid;gap:8px}.game-option-list button{width:100%;min-height:max-content;border:2px solid var(--ink);border-radius:var(--radius);background:var(--pop-yellow);color:#10261d;padding:10px 11px;font-size:13px;font-weight:950;line-height:1.35;text-align:left;box-shadow:2px 2px 0 var(--ink);white-space:normal;overflow-wrap:anywhere;word-break:break-word}.game-option-list button:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.game-option-list button:disabled{transform:none}.game-function-panel .game-save-state{text-align:left}.game-menu-panel{gap:10px}.game-menu-group{display:grid;gap:7px;border:1px solid rgba(255,249,220,.08);border-radius:14px;background:#040c0a38;padding:7px}.game-menu-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;align-items:center;gap:9px;min-height:44px;border:0;border-radius:12px;background:#ffffff0b;color:#fff8dce0;padding:6px 9px;font:inherit;text-align:left}.game-menu-item:hover{background:#9fe6cf1f}.game-menu-item.danger{width:100%;grid-template-columns:34px minmax(0,1fr);color:#ffb6a8}.game-menu-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#9fe6cf1f;color:#9fe6cf}.game-menu-item:nth-child(2n) .game-menu-icon{background:#e4ca8021;color:#f3d47d}.game-menu-icon svg,.game-menu-item>svg{width:16px;height:16px}.game-menu-label{overflow:hidden;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.game-menu-item small{color:#ede5c694;font-size:12px;font-weight:850}.game-save-state{display:block;text-align:right}.game-empty{display:grid;place-items:center;gap:14px;min-height:320px;padding:28px}.game-empty strong{color:var(--text);font-size:24px;font-weight:950}[data-theme=dark] .game-card,[data-theme=dark] .game-story-head,[data-theme=dark] .game-story,[data-theme=dark] .game-options,[data-theme=dark] .game-input,[data-theme=dark] .game-empty,[data-theme=dark] .game-back,[data-theme=dark] .game-save-btn,[data-theme=dark] .game-tabs button{background:color-mix(in srgb,var(--surface-solid) 92%,#000)}[data-theme=dark] .game-back{border-color:#ffed8beb;background:var(--pop-yellow);color:#10261d}[data-theme=dark] .game-back svg{color:#10261d}[data-theme=dark] .game-attr,[data-theme=dark] .game-message p,[data-theme=dark] .game-image-cue,[data-theme=dark] .game-input textarea,[data-theme=dark] .game-situation-list article,[data-theme=dark] .game-list article{background:color-mix(in srgb,var(--surface-muted) 78%,#000)}[data-theme=dark] .game-status-section.basic,[data-theme=dark] .game-status-section.world,[data-theme=dark] .game-function-panel{background:color-mix(in srgb,var(--surface-solid) 88%,#000)}[data-theme=dark] .game-attr.base{background:color-mix(in srgb,var(--accent) 14%,var(--surface-muted))}[data-theme=dark] .game-attr.world{background:color-mix(in srgb,var(--gold) 13%,var(--surface-muted))}[data-theme=dark] .game-message.user p,[data-theme=dark] .game-tabs button.active{color:#10261d}@media(max-width:1180px){.game-page{overflow-y:auto}.game-shell{grid-template-columns:1fr;height:auto}.game-center{min-height:720px}.game-side-panel{max-height:none}.game-left,.game-right{overflow:visible;padding-right:0}}@media(max-width:640px){.game-page{padding:10px}.game-input{grid-template-columns:1fr}.game-input button{min-height:44px}.game-message.user{max-width:100%}.game-story-head{align-items:stretch}.game-save-btn{width:100%}.game-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}.game-page{position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(146,214,188,.04) 1px,transparent 1px),linear-gradient(rgba(146,214,188,.04) 1px,transparent 1px),radial-gradient(circle at 18% 12%,rgba(222,187,91,.18),transparent 26rem),radial-gradient(circle at 78% 7%,rgba(78,184,176,.15),transparent 30rem),linear-gradient(135deg,#071512,#10231d 48%,#08110f);background-size:34px 34px,34px 34px,auto,auto,auto;padding:18px}.game-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.34),transparent 18%,transparent 82%,rgba(0,0,0,.28)),linear-gradient(180deg,rgba(255,255,255,.035),transparent 22%,rgba(0,0,0,.22))}.game-shell{position:relative;z-index:1;grid-template-columns:minmax(286px,326px) minmax(520px,1fr) minmax(300px,360px);gap:16px;width:min(1780px,100%);margin:0 auto}.game-left,.game-right{gap:14px;scrollbar-width:thin}.game-center{gap:14px}.game-card,.game-story-head,.game-story,.game-input,.game-empty{border:1px solid rgba(228,202,128,.28);border-radius:16px;background:linear-gradient(180deg,#fffbe814,#fffbe806),#0a1815c7;color:#f6f1dc;box-shadow:0 18px 42px #00000057,inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.game-back,.game-save-btn{min-height:40px;border:1px solid rgba(228,202,128,.32);border-radius:12px;background:#fff9dc17;color:#f6f1dc;box-shadow:none}.game-back{min-width:118px;border:3px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-size:15px;box-shadow:3px 3px 0 var(--ink)}.game-back svg{color:#10261d}.game-back:hover,.game-save-btn:hover{background:#e6c47033}.game-card{padding:15px}.game-card h2{color:#f9e7a9;font-size:14px;letter-spacing:0}.game-card h2 svg{color:#9fe6cf}.game-identity{min-height:238px;border-color:#e6c47061;border-radius:18px;background:linear-gradient(145deg,#e8c45e2e,#69cdb80f),#0d211d}.game-identity.has-cover{min-height:250px;padding:18px}.game-identity.has-cover:before{background:linear-gradient(180deg,#040c0a1f,#040c0ad1),linear-gradient(90deg,#040c0ad6,#040c0a33 72%)}.game-avatar{width:78px;height:78px;border:1px solid rgba(249,231,169,.62);border-radius:18px;background:#fff8e01f;box-shadow:0 10px 26px #00000057}.game-identity>span,.game-story-head span,.game-muted,.game-save-state,.game-section-label{color:#ede5c6a3}.game-identity h1{color:#fff8dc;font-size:34px;text-shadow:0 8px 22px rgba(0,0,0,.42)}.game-meta-line{color:#fffae2d1}.game-meta-line svg{color:#dfbd61}.game-status-card,.game-situation-card,.game-function-panel{border-color:#9fe6cf38}.game-status-section{border:1px solid rgba(255,249,220,.1);border-radius:14px;padding:11px}.game-status-section.basic{background:linear-gradient(135deg,#6ad2b324,#ffffff08)}.game-status-section.world{background:linear-gradient(135deg,#e3b95824,#ffffff08)}.game-attr-list,.game-attr-list.compact{gap:9px}.game-attr{min-height:58px;border:1px solid rgba(255,249,220,.1);border-radius:13px;background:#ffffff0b;padding:9px 10px}.game-attr.base{background:#72deba1a}.game-attr.world{background:#e5be5c1a}.game-attr span{color:#ede5c694;font-size:12px}.game-attr strong{color:#fff8dc;font-size:15px}.game-situation-list article,.game-list article{border:1px solid rgba(255,249,220,.1);border-radius:14px;background:#ffffff0b;padding:11px}.game-situation-list strong,.game-list strong{color:#fff3c2}.game-situation-list span,.game-list span,.game-list small{color:#ede5c6ad}.game-story-head{border-color:#e4ca803d;padding:14px 18px}.game-story-head h2{color:#fff8dc;font-size:24px}.game-story{position:relative;overflow-y:auto;border-color:#e4ca8052;background:linear-gradient(180deg,#fff4ca1a,#fff4ca0a),linear-gradient(90deg,rgba(255,255,255,.035),transparent 22%,transparent 78%,rgba(255,255,255,.025)),#131f1bd6;padding:22px}.game-story:before{content:"";position:sticky;top:-22px;z-index:1;display:block;height:1px;margin-bottom:-1px;background:linear-gradient(90deg,transparent,rgba(236,202,112,.5),transparent)}.game-message{max-width:min(880px,92%)}.game-message>span{color:#ede5c68c}.game-message p{border:1px solid rgba(255,249,220,.14);border-radius:16px;background:linear-gradient(180deg,#fffae21f,#fffae20e);color:#f9f0d1;padding:14px 16px;font-size:15px;font-weight:650;box-shadow:0 10px 28px #00000038}.game-message.user{max-width:min(660px,82%)}.game-message.user p{border-color:#90e0c559;background:linear-gradient(135deg,#7fdbbd33,#7fdbbd14);color:#effff8}.game-message-image,.game-image-cue{border:1px solid rgba(228,202,128,.32);border-radius:16px;background:#ffffff0e;box-shadow:0 12px 30px #00000047}.game-input{grid-template-columns:minmax(0,1fr) 112px;border-color:#9fe6cf3d;padding:12px}.game-input textarea{min-height:58px;border:1px solid rgba(255,249,220,.12);border-radius:14px;background:#ffffff0f;color:#fff8dc;font-weight:650}.game-input textarea::placeholder{color:#ede5c673}.game-input button{min-width:0;border:1px solid rgba(159,230,207,.42);border-radius:14px;background:linear-gradient(135deg,#2d9d84,#1f7b75);color:#f7fffb;box-shadow:0 12px 24px #1d7b7538}.game-function-panel{border-color:#e4ca804d;background:linear-gradient(145deg,#e2b85221,#4abeab14),#0a1815cc}.game-option-list{counter-reset:action-option}.game-option-list button{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:9px;min-height:max-content;border:1px solid rgba(228,202,128,.38);border-radius:14px;background:linear-gradient(135deg,#e4ca802e,#9fe6cf14),#ffffff0e;color:#fff4c9;box-shadow:none;word-break:break-word;overflow-wrap:anywhere;white-space:normal}.game-option-list button:before{counter-increment:action-option;content:counter(action-option);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e4ca802e;color:#f9e7a9;font-size:12px;font-weight:950}.game-option-list button:hover{transform:translateY(-1px);border-color:#9fe6cf99;background:linear-gradient(135deg,#e4ca803d,#9fe6cf29),#ffffff13;box-shadow:0 10px 24px #0003}.game-tabs{padding:4px;border:1px solid rgba(255,249,220,.1);border-radius:14px;background:#040c0a52}.game-menu-panel{border-color:#9fe6cf33}.game-tabs button{min-height:38px;border:0;border-radius:11px;background:transparent;color:#ede5c69e;box-shadow:none}.game-tabs button.active{background:#9fe6cf24;color:#dbfff2}.game-side-panel{border-color:#9fe6cf33}.game-save-state{color:#ede5c685}[data-theme=dark] .game-card,[data-theme=dark] .game-story-head,[data-theme=dark] .game-story,[data-theme=dark] .game-input,[data-theme=dark] .game-empty,[data-theme=dark] .game-back,[data-theme=dark] .game-save-btn,[data-theme=dark] .game-tabs button{background:linear-gradient(180deg,#fffbe814,#fffbe806),#0a1815c7}[data-theme=dark] .game-tabs button{background:transparent}[data-theme=dark] .game-tabs button.active{background:#9fe6cf24;color:#dbfff2}@media(max-width:1180px){.game-page{overflow-y:auto}.game-shell{grid-template-columns:1fr;width:min(820px,100%)}.game-left{order:1}.game-right{order:2}.game-center{order:3;min-height:720px}.game-menu-panel{grid-row:auto}}@media(max-width:640px){.game-page{padding:10px}.game-card,.game-story-head,.game-story,.game-input{border-radius:14px}.game-identity,.game-identity.has-cover{min-height:220px}.game-identity h1{font-size:30px}.game-attr-list,.game-attr-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.game-story{padding:14px}.game-message,.game-message.user{max-width:100%}.game-input{grid-template-columns:1fr}.game-input button{min-height:48px}.game-menu-item{grid-template-columns:34px minmax(0,1fr) auto 14px}}.game-input textarea{border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);font-size:16px;font-weight:900;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 10%,transparent)}.game-input textarea::placeholder{color:var(--text);opacity:.72;font-weight:900}[data-theme=dark] .game-input textarea{background:color-mix(in srgb,var(--surface-solid) 92%,#000);color:var(--text)}[data-theme=dark] .game-input textarea::placeholder{color:var(--text);opacity:.74}.game-page{padding:14px}.game-shell{grid-template-columns:320px minmax(520px,1fr) 340px;gap:12px;width:min(1720px,100%);height:100%}.game-left,.game-right{gap:10px;overflow-y:auto;border:1px solid rgba(228,202,128,.18);border-radius:16px;background:#0a18156b;padding:10px}.game-center{min-height:0}.game-card,.game-story-head,.game-story,.game-input{border-width:1px;box-shadow:0 12px 32px #0000003d}.game-story{min-height:0}.game-status-section{padding:10px}.game-option-list button,.game-menu-item,.game-tabs button{min-width:0}@media(max-width:1180px){.game-shell{grid-template-columns:1fr;width:min(860px,100%);height:auto}.game-center{order:1;min-height:680px}.game-left{order:2}.game-right{order:3}.game-left,.game-right{overflow:visible}}.game-page{background:var(--bg);padding:14px}.game-page:before{display:none}.game-shell{grid-template-columns:minmax(300px,330px) minmax(520px,1fr) minmax(280px,320px);gap:12px}.game-shell.left-collapsed{grid-template-columns:48px minmax(520px,1fr) minmax(280px,320px)}.game-shell.right-collapsed{grid-template-columns:minmax(300px,330px) minmax(520px,1fr) 48px}.game-shell.left-collapsed.right-collapsed{grid-template-columns:48px minmax(520px,1fr) 48px}.game-left,.game-right{border:3px solid var(--ink);border-radius:2px;background:color-mix(in srgb,var(--surface-solid) 82%,var(--bg));padding:10px;box-shadow:5px 5px 0 var(--ink)}.game-shell.left-collapsed .game-left>:not(.game-side-head),.game-shell.right-collapsed .game-right>:not(.game-side-head){display:none}.game-shell.left-collapsed .game-left{padding:8px 5px}.game-shell.left-collapsed .game-side-head{justify-content:center}.game-shell.left-collapsed .game-back{display:none}.game-shell.left-collapsed .game-collapse-btn,.game-shell.right-collapsed .game-collapse-btn{min-width:32px;width:32px;padding:0}.game-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.game-collapse-btn,.game-log-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);font-weight:950;box-shadow:3px 3px 0 var(--ink)}.game-log-btn{padding:0 12px}.game-card,.game-story-head,.game-story,.game-input,.game-action-options{border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);box-shadow:5px 5px 0 var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none}.game-card,.game-card h2,.game-story-head,.game-story-head span,.game-muted,.game-section-label,.game-situation-list strong,.game-list strong,.game-menu-label,.game-tabs button,.game-message>span,.game-modal,.game-modal h2{color:var(--text)}.game-muted,.game-section-label,.game-story-head span,.game-message>span,.game-situation-list span,.game-list span,.game-list small,.game-feature-list span,.game-menu-item small,.game-modal-placeholder{color:var(--muted)}.game-card h2 svg,.game-saves-head svg,.game-meta-line svg{color:var(--accent-strong)}.game-identity,.game-identity.has-cover{min-height:210px;border-radius:2px;color:#fffdf0}.game-identity.has-cover:before{background:linear-gradient(180deg,#040c0a14,#040c0a7a)}.game-identity>span,.game-identity h1,.game-meta-line{color:#fffdf0;text-shadow:0 2px 7px rgba(0,0,0,.86)}.game-identity .game-meta-line svg{color:#f4d84f}.game-identity h1{font-size:32px}.game-status-section,.game-situation-list article,.game-list article,.game-feature-list article{border:2px solid var(--line-strong);border-radius:2px;background:color-mix(in srgb,var(--surface-muted) 82%,var(--surface-solid))}.game-status-section.effects{background:color-mix(in srgb,var(--gold) 14%,var(--surface-solid))}.game-feature-list{display:grid;gap:8px}.game-feature-list article{display:grid;gap:4px;padding:9px}.game-feature-list strong{color:var(--text);font-size:14px;font-weight:950}.game-feature-list span{color:var(--muted);font-size:13px;font-weight:800}.game-attr{border:2px solid var(--line-strong);border-radius:2px;background:var(--surface-solid)}.game-attr span{color:var(--muted)}.game-attr strong{color:var(--text)}.game-story-head{grid-template-columns:minmax(0,1fr) auto;align-items:center}.game-story-head h2{display:none}.game-story{display:grid;align-content:center;overflow-y:auto;padding:clamp(18px,3vw,34px)}.game-story:before{display:none}.game-message{max-width:min(860px,100%)}.game-message.latest-user{justify-self:start;opacity:.78}.game-message.latest-ai p,.game-message.assistant p{border:3px solid var(--line-strong);border-radius:2px;background:color-mix(in srgb,var(--surface-muted) 86%,var(--surface-solid));color:var(--text);box-shadow:none;font-size:18px;font-weight:850;line-height:1.75}.game-message.user p{border-radius:2px;color:#10261d}.game-action-options{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;box-sizing:border-box;min-width:0;min-height:0;width:100%;max-width:100%;height:100%;max-height:100%;overflow:hidden;overscroll-behavior:contain}.game-option-list button{height:auto}.game-action-options header{color:var(--text);font-size:14px;font-weight:950}.game-action-options .game-option-list{grid-template-columns:1fr;align-content:start;grid-auto-rows:max-content;min-height:0;height:100%;max-height:100%;overflow-y:scroll;overscroll-behavior:contain;padding-right:8px;scrollbar-gutter:stable;scrollbar-width:thin}.game-option-list button,.game-menu-item,.game-tabs button{border:3px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);box-shadow:3px 3px 0 var(--ink)}.game-menu-item svg,.game-tabs button svg{color:var(--accent-strong)}.game-menu-item.danger,.game-menu-item.danger .game-menu-label,.game-menu-item.danger svg{color:var(--danger)}.game-option-list button{min-height:84px;height:auto;box-sizing:border-box;max-width:100%;align-items:start;overflow:visible;padding-top:14px;padding-bottom:14px;text-align:left;word-break:break-word;overflow-wrap:anywhere;white-space:normal}.game-option-text{display:block;min-width:0;color:inherit;line-height:1.55;overflow:visible;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.game-option-list button:before{border-radius:2px;background:var(--pop-yellow);color:#10261d}.game-tabs{display:grid;grid-template-columns:repeat(3,1fr);border:0;border-radius:0;background:transparent;padding:0}.game-tabs button{min-height:42px;color:var(--text)}.game-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#0814119e;padding:22px}.game-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;width:min(1180px,calc(100vw - 44px));max-height:min(860px,calc(100vh - 44px));border:4px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);padding:16px;box-shadow:9px 9px 0 var(--ink)}.game-action-error-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;background:#0814119e;padding:22px}.game-action-error-modal{display:grid;gap:14px;width:min(520px,100%);border:4px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);padding:16px;box-shadow:9px 9px 0 var(--ink)}.game-action-error-modal header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:3px solid var(--ink);padding-bottom:12px}.game-action-error-modal h2{margin:0;font-size:22px}.game-action-error-modal header button{display:grid;place-items:center;width:38px;height:38px;border:3px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-size:24px;font-weight:950;line-height:1;box-shadow:3px 3px 0 var(--ink)}.game-action-error-body{display:grid;gap:10px}.game-action-error-body p{margin:0;white-space:pre-wrap;color:var(--text);font-size:16px;line-height:1.7;font-weight:800}.game-modal header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:3px solid var(--ink);padding-bottom:12px}.game-modal h2{margin:0;font-size:22px}.game-modal header button{display:grid;place-items:center;width:38px;height:38px;border:3px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-size:24px;font-weight:950;line-height:1;box-shadow:3px 3px 0 var(--ink)}.game-modal-body{min-height:0;overflow:auto}.game-modal:has(.game-map-stage){width:min(1320px,calc(100vw - 28px));max-height:calc(100vh - 28px)}.game-modal-panel{display:grid;gap:14px}.game-modal-section{display:grid;gap:10px}.game-modal-section h3{margin:0;font-size:16px;color:var(--text)}.game-modal-form{display:grid;gap:10px}.game-modal-form--grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));align-items:end}.game-modal-form label{display:grid;gap:6px;color:var(--text);font-weight:850}.game-modal-form label>span{font-size:13px;color:var(--muted)}.game-modal-form input,.game-modal-form select{min-height:38px;border:2px solid var(--ink);border-radius:2px;background:var(--surface-solid);color:var(--text);padding:0 10px;font-weight:800}.game-modal-form .game-color-setting{grid-template-columns:1fr auto;align-items:center}.game-modal-form .game-color-setting>span{grid-column:1 / -1}.game-modal-form input[type=color]{width:74px;min-height:38px;padding:3px;cursor:pointer}.game-modal-form button,.game-modal-actions button,.game-mini-danger{min-height:36px;border:2px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-weight:950;padding:0 12px;box-shadow:2px 2px 0 var(--ink)}.game-modal-actions button:disabled{cursor:progress;opacity:.62;transform:translate(2px,2px);box-shadow:none}.game-toggle-row{grid-template-columns:1fr auto;align-items:center}.game-toggle-row input{width:22px;min-height:22px}.game-modal-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:2px solid var(--line-strong);background:color-mix(in srgb,var(--surface-muted) 82%,var(--surface-solid));padding:10px}.game-modal-summary strong{color:var(--text)}.game-modal-summary span{color:var(--muted)}.game-modal-actions{display:flex;flex-wrap:wrap;gap:8px}.game-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.game-row-head strong,.game-row-head small{min-width:0}.game-npc-grid,.game-inventory-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.game-wide-panel{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:14px;min-height:min(620px,calc(100vh - 190px))}.game-modal-sidebar,.game-detail-pane{min-height:0;overflow:auto}.game-modal-sidebar{display:grid;align-content:start;gap:8px;border-right:2px solid var(--line-strong);padding-right:12px}.game-modal-kicker{color:var(--muted);font-size:12px;font-weight:950}.game-side-row{display:grid;gap:3px;width:100%;border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);color:var(--text);padding:10px;text-align:left}.game-side-row.active,.game-inventory-grid article.active{border-color:var(--ink);background:color-mix(in srgb,var(--pop-yellow) 28%,var(--surface-solid));box-shadow:2px 2px 0 var(--ink)}.game-side-row strong,.game-side-row span,.game-side-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-side-row span,.game-side-row small{color:var(--muted);font-size:12px}.game-detail-pane{display:grid;align-content:start;gap:12px}.game-detail-hero{display:flex;align-items:center;gap:12px;border-bottom:2px solid var(--line-strong);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 55%,transparent),transparent 68%),var(--surface-solid);padding:4px 2px 14px}.game-detail-avatar{display:grid;place-items:center;width:58px;height:58px;border:3px solid var(--ink);border-radius:var(--radius);background:var(--pop-yellow);color:#10261d;font-size:24px;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.game-detail-hero h3,.game-inventory-detail h3{margin:0;color:var(--text);font-size:22px}.game-detail-hero p,.game-inventory-detail p{margin:4px 0 0;color:var(--muted)}.game-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.game-detail-grid span{display:grid;gap:4px;border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);padding:9px}.game-detail-grid small{color:var(--muted);font-size:12px;font-weight:900}.game-detail-grid strong{min-width:0;overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis}.game-info-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-info-sections article{display:grid;gap:6px;border-radius:var(--radius);padding:10px}.game-info-sections article.appearance{border-left:4px solid var(--accent);background:color-mix(in srgb,var(--accent-soft) 46%,var(--surface-solid))}.game-info-sections article.personality{border-left:4px solid var(--pop-blue);background:color-mix(in srgb,var(--pop-blue) 18%,var(--surface-solid))}.game-info-sections article.current-state{border-left:4px solid var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--surface-solid))}.game-info-sections article.current-thought{border-left:4px solid var(--pop-pink);background:color-mix(in srgb,var(--pop-pink) 16%,var(--surface-solid))}.game-info-sections article.memory-summary,.game-info-sections article.memories{grid-column:1 / -1;border-top:2px solid var(--line-strong);background:transparent}.game-info-sections strong{color:var(--text);font-size:14px}.game-info-sections p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.game-inventory-panel{grid-template-columns:minmax(300px,.9fr) minmax(300px,1fr);grid-auto-rows:minmax(0,1fr);min-height:min(540px,calc(100vh - 220px))}.game-inventory-grid{align-content:start;overflow:auto;padding-right:4px}.game-inventory-grid article{cursor:pointer}.game-inventory-empty{grid-column:1 / -1;align-self:stretch;min-height:0}.game-inventory-detail{border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);padding:14px}.game-npc-card p,.game-details span{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.game-modal-attrs{gap:6px;margin-top:4px}.game-modal-attrs .game-attr{padding:6px 8px;box-shadow:none}.game-details{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:6px}.game-details summary{cursor:pointer;color:var(--text);font-size:13px;font-weight:950}.game-segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-muted);padding:5px}.game-segmented button{min-height:34px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-weight:950}.game-segmented button.active{background:var(--pop-yellow);color:#10261d;box-shadow:2px 2px 0 var(--ink)}.game-map-stage{position:relative;height:min(68vh,640px);min-height:420px;overflow:hidden;border:3px solid var(--ink);border-radius:var(--radius);background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 14%,transparent) 1px,transparent 1px),linear-gradient(color-mix(in srgb,var(--accent) 14%,transparent) 1px,transparent 1px),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--gold) 16%,transparent),transparent 62%),var(--surface-muted);background-size:32px 32px,32px 32px,auto,auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.game-map-stage.dragging{cursor:grabbing}.game-map-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:center}.game-map-zoom{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-muted);padding:5px}.game-map-zoom button{display:grid;place-items:center;width:34px;height:34px;border:2px solid var(--ink);border-radius:4px;background:var(--pop-yellow);color:#10261d;font-weight:950}.game-map-zoom strong{min-width:54px;text-align:center;font-size:13px}.game-map-canvas{position:relative;width:100%;height:100%;min-width:880px;min-height:540px;transform-origin:0 0;transition:transform .08s ease-out;will-change:transform}.game-map-point,.game-map-current{position:absolute;z-index:1;transform:translate(-50%,-50%);max-width:128px;border:2px solid var(--ink);border-radius:999px;background:var(--surface-solid);color:var(--text);padding:4px 8px;font-size:12px;font-weight:950;text-align:center;white-space:nowrap;box-shadow:2px 2px 0 var(--ink)}.game-map-point.npc{background:color-mix(in srgb,var(--pop-pink) 46%,var(--surface-solid))}.game-map-current{z-index:2;background:var(--pop-yellow);color:#10261d}.game-map-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.game-save-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.game-empty-large{display:grid;place-items:center;min-height:220px;margin:0;color:var(--muted);font-size:22px;font-weight:950;text-align:center}.game-import-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:2px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-weight:950;padding:0 12px;box-shadow:2px 2px 0 var(--ink);cursor:pointer}.game-import-btn input{display:none}.game-command-list{display:grid;gap:8px}.game-command-row{border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);overflow:hidden}.game-command-row summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;cursor:pointer;padding:10px}.game-command-row summary span,.game-command-row summary em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900}.game-command-row summary strong{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.game-command-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);padding:10px}.game-command-detail label{display:grid;gap:5px}.game-command-detail label span{color:var(--muted);font-size:12px;font-weight:950}.game-command-detail pre,.game-details pre{max-height:180px;overflow:auto;margin:0;border:1px solid var(--line);border-radius:4px;background:var(--surface-solid);color:var(--text);padding:8px;font-size:12px;white-space:pre-wrap;word-break:break-word}.game-command-detail button{justify-self:start;min-height:32px;border:2px solid var(--ink);border-radius:2px;background:var(--pop-yellow);color:#10261d;font-weight:950;padding:0 12px}.game-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.game-gallery-grid article{display:grid;gap:7px;border:2px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-muted);padding:8px}.game-gallery-grid strong,.game-gallery-grid span{min-width:0;overflow:hidden;text-overflow:ellipsis}.game-gallery-grid strong{color:var(--text);font-size:13px;white-space:nowrap}.game-gallery-grid span{color:var(--muted);font-size:12px;white-space:nowrap}.game-gallery-grid a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border:2px solid var(--ink);border-radius:4px;background:var(--pop-yellow);color:#10261d;font-size:13px;font-weight:950;box-shadow:2px 2px 0 var(--ink)}.game-mini-danger{background:#ff7a7a}.game-gallery-thumb{width:100%;height:112px;object-fit:cover;border:2px solid var(--ink);border-radius:4px}.game-gallery-thumb.empty{display:grid;place-items:center;background:var(--surface-solid);color:var(--muted);font-size:13px;font-weight:950}.game-model-list{display:grid;gap:8px}.game-model-list button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;border:2px solid var(--line-strong);border-radius:2px;background:var(--surface-solid);color:var(--text);padding:10px;text-align:left}.game-model-list button.selected{border-color:var(--ink);background:color-mix(in srgb,var(--pop-yellow) 28%,var(--surface-solid))}.game-model-list img{width:38px;height:38px;object-fit:contain}.game-model-list span{display:grid;gap:3px;min-width:0}.game-model-list small,.game-model-list em{color:var(--muted);font-style:normal}.game-modal-placeholder{display:grid;place-items:center;min-height:220px;border:3px dashed var(--line-strong);color:var(--muted);text-align:center}[data-theme=dark] .game-card,[data-theme=dark] .game-card h2,[data-theme=dark] .game-story-head,[data-theme=dark] .game-story-head span,[data-theme=dark] .game-muted,[data-theme=dark] .game-section-label,[data-theme=dark] .game-situation-list strong,[data-theme=dark] .game-list strong,[data-theme=dark] .game-menu-label,[data-theme=dark] .game-tabs button,[data-theme=dark] .game-message>span,[data-theme=dark] .game-modal,[data-theme=dark] .game-modal h2{color:var(--text)}[data-theme=dark] .game-muted,[data-theme=dark] .game-section-label,[data-theme=dark] .game-story-head span,[data-theme=dark] .game-message>span,[data-theme=dark] .game-situation-list span,[data-theme=dark] .game-list span,[data-theme=dark] .game-list small,[data-theme=dark] .game-feature-list span,[data-theme=dark] .game-menu-item small,[data-theme=dark] .game-modal-placeholder{color:var(--muted)}[data-theme=dark] .game-message.latest-ai p,[data-theme=dark] .game-message.assistant p,[data-theme=dark] .game-attr strong,[data-theme=dark] .game-feature-list strong{color:var(--text)}[data-theme=dark] .game-attr span{color:var(--muted)}.game-left{display:grid;grid-template-rows:auto auto minmax(0,1.55fr) minmax(72px,.45fr);align-content:stretch;overflow:hidden}.game-identity,.game-identity.has-cover{min-height:128px;gap:5px;padding:10px}.game-avatar{width:52px;height:52px}.game-identity>span{font-size:12px}.game-identity h1{font-size:24px;line-height:1}.game-meta-line{gap:5px;font-size:12px;line-height:1.15}.game-meta-line svg{width:14px;height:14px}.game-status-card{min-height:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain}.game-status-card,.game-situation-card{gap:4px;padding:6px}.game-status-section{gap:3px;border-width:1px;padding:4px}.game-status-card h2{font-size:18px;line-height:1;margin:0 0 2px}.game-situation-card h2{font-size:14px;line-height:1.1;margin:0}.game-status-card h2 svg,.game-situation-card h2 svg{width:16px;height:16px}.game-status-card h2 svg{width:18px;height:18px}.game-status-card .game-section-label{display:flex;align-items:center;min-height:18px;border-bottom:1px solid color-mix(in srgb,var(--line-strong) 72%,transparent);margin:0 0 2px;padding:0 0 2px;color:var(--text);font-size:13px;font-weight:950;line-height:1.1}.game-status-card .game-attr-list.compact{grid-template-columns:1fr;gap:3px}.game-status-card .game-attr{min-height:0;gap:3px;border:1px solid var(--line-strong);border-radius:2px;background:var(--surface-solid);box-shadow:none;padding:3px 6px}.game-status-card .game-attr.base{background:color-mix(in srgb,var(--accent-soft) 52%,var(--surface-solid))}.game-status-card .game-attr.world{background:color-mix(in srgb,var(--gold) 13%,var(--surface-solid))}.game-attr-head{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.game-attr-head span,.game-attr-head strong{min-width:0;line-height:1.2}.game-attr-head span{color:var(--muted);font-size:12px;font-weight:900}.game-attr-head strong{color:var(--text);font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-attr-bar{height:6px;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 24%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface-muted) 72%,var(--bg))}.game-attr-bar i{display:block;width:0;height:100%;border-right:1px solid color-mix(in srgb,var(--ink) 45%,transparent);background:linear-gradient(90deg,#57c98f,var(--pop-yellow))}.game-attr-bar.is-low i{background:linear-gradient(90deg,#e85242,#ff9b78)}.game-attr-bar.is-mid i{background:linear-gradient(90deg,#e3a42e,#f4d84f)}.game-attr-bar.is-high i{background:linear-gradient(90deg,#2fb178,#9de8c2)}.game-situation-card{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden}.game-situation-card>.game-muted,.game-situation-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.game-situation-list{gap:6px}.game-effects-card .game-situation-list{align-content:start;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:4px}.game-effects-card>.game-muted{display:grid;place-items:center;min-height:0;height:100%;margin:0;text-align:center}.game-situation-list article{gap:2px;padding:7px}.game-effects-card .game-situation-list article{min-height:34px;padding:5px 6px}.game-situation-list strong{font-size:13px}.game-situation-list span{font-size:12px;line-height:1.35}.game-right{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);align-content:stretch;overflow:hidden}.game-function-panel{min-height:0;overflow:hidden}.game-action-options{align-self:end;display:grid;grid-template-rows:auto minmax(0,1fr);box-sizing:border-box;min-width:0;min-height:0;width:100%;max-width:100%;height:100%;max-height:100%;overflow:hidden;overscroll-behavior:contain}.game-action-options .game-option-list{align-content:start;grid-auto-rows:max-content;min-height:0;height:100%;max-height:100%;overflow-y:scroll;overscroll-behavior:contain;padding-right:8px;scrollbar-gutter:stable;scrollbar-width:thin}.game-center{position:relative;grid-template-rows:minmax(0,1fr) auto}.game-log-side{min-height:34px;padding:0 10px;font-size:13px}.game-shell.right-collapsed .game-log-side{display:none}.game-story{align-content:start;gap:14px;padding:28px 24px 14px;scroll-padding-top:28px}.game-story-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:2px solid var(--line-strong);color:var(--muted);padding-bottom:8px;font-size:12px;font-weight:900}.game-story-meta span,.game-story-meta time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-rollback-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:none;border-radius:14px;background:#b4530914;color:#b45309;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;box-shadow:none;min-height:0}.game-rollback-btn:hover{background:#b4530929}.game-rollback-btn svg{width:14px;height:14px}[data-theme=dark] .game-rollback-btn{background:#f59e0b1f;color:#f59e0b}[data-theme=dark] .game-rollback-btn:hover{background:#f59e0b38}.game-thinking{display:grid;gap:0;min-height:72px;border:1px solid rgba(100,130,120,.18);border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#f0f8f599,#e6f2ed4d);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;max-width:min(880px,100%)}.game-thinking.expanded{min-height:220px;border-color:#2f5d504d}.game-thinking-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:30px;padding:5px 10px;background:none;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.game-thinking-toggle:hover{background:#2f5d500f}.game-thinking-chevron{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:transform .2s ease}.game-thinking.expanded .game-thinking-chevron{transform:rotate(180deg)}.game-thinking-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:#2f5d50;opacity:.7}.game-thinking-char-count{margin-left:auto;font-size:10px;font-weight:600;color:var(--muted);opacity:.6;font-variant-numeric:tabular-nums}.game-thinking-body{border-top:1px solid rgba(100,130,120,.12);display:block;min-height:168px;height:min(260px,30vh);max-height:min(320px,36vh);overflow-y:auto;overscroll-behavior:contain}.game-thinking-text{display:block;min-height:100%;margin:0;padding:10px 14px;white-space:pre-wrap;word-break:break-word;color:#4a6b60;font-family:SF Mono,Cascadia Code,Fira Code,JetBrains Mono,ui-monospace,monospace;font-size:11.5px;line-height:1.7;-moz-tab-size:2;tab-size:2}.game-thinking-summary{margin:0;min-height:34px;padding:0 10px 8px 30px;color:var(--muted);font-size:11px;opacity:.6}.game-text-flow{max-width:min(880px,100%);padding-top:6px;color:var(--text);font-size:17px;font-weight:820;line-height:1.82;white-space:pre-wrap}.game-text-flow p{margin:0 0 1em;border:0;background:transparent;box-shadow:none;padding:0}.game-text-flow p:last-child{margin-bottom:0}.game-text-user{color:var(--muted);font-size:14px}.game-text-stream{color:var(--text)}.game-quote-text{color:var(--game-quote-color, #9f2d55);font-weight:900}[data-theme=dark] .game-quote-text{color:var(--game-quote-color, #f0a0bd)}.game-story-image{display:grid;gap:8px;width:min(var(--game-image-max-width, 560px),100%);margin:16px 0 20px}.game-story-image img,.game-story-image-placeholder{width:100%;border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface-muted);box-shadow:3px 3px 0 var(--ink)}.game-story-image img{display:block;aspect-ratio:var(--game-image-aspect, auto);max-height:560px;object-fit:contain;cursor:zoom-in}.game-story-image-placeholder{display:grid;place-items:center;aspect-ratio:var(--game-image-aspect, 9 / 16);min-height:220px;padding:18px;color:var(--muted);font-size:15px;font-weight:950;text-align:center}.game-story-image figcaption{color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}.game-text-loading{display:block;margin-top:16px;padding:12px;color:#7f9287;font-size:13px}[data-theme=dark] .game-text-loading{color:#bdcdc5}[data-theme=dark] .game-thinking{background:linear-gradient(135deg,#192d26cc,#14231e80);border-color:#64a08c26}[data-theme=dark] .game-thinking.expanded{border-color:#64a08c40}[data-theme=dark] .game-thinking-toggle:hover{background:#64a08c14}[data-theme=dark] .game-thinking-label{color:#7fbfa8}[data-theme=dark] .game-thinking-body{border-top-color:#64a08c1f}[data-theme=dark] .game-thinking-text{color:#9dbfad}[data-theme=dark] .game-thinking-summary{color:#b4d2c380}.game-text-situation{display:grid;gap:6px;margin-top:14px;padding:10px 14px;background-color:#eef5f1;border-left:3px solid #2f5d50;border-radius:6px}.game-text-situation-label{color:#6d7f75;font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}.game-text-situation-list{display:grid;gap:0}.game-text-situation-item{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.05)}.game-text-situation-item:last-child{border-bottom:none;padding-bottom:0}.game-text-situation-item strong{color:#1f2b26;font-size:13px;font-weight:700;line-height:1.4}.game-text-situation-item span{color:#5f7268;font-size:12.5px;line-height:1.5}.game-text-situation-item small{color:#7f9287;font-size:11px;line-height:1.4}.game-input{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px}.game-input textarea{min-height:56px;height:56px;padding:9px 10px;line-height:1.45}.game-input button{min-height:56px;padding:0 14px}.game-send-stop{background:#2f5d50!important;border-color:#2f5d50!important;min-width:72px;padding:0 18px!important}.game-stop-icon{display:block;width:18px;height:18px;border-radius:3px;background:#fff}[data-theme=dark] .game-send-stop{background:#3a7a66!important;border-color:#3a7a66!important}@media(max-width:640px){.game-thinking-body{min-height:150px;height:min(240px,32vh);max-height:240px}.game-text-flow{font-size:16px}.game-text-situation-item strong,.game-text-situation-item span{font-size:12px}.game-text-situation-item small{font-size:10px}}@media(max-width:1180px){.game-shell,.game-shell.left-collapsed,.game-shell.right-collapsed,.game-shell.left-collapsed.right-collapsed{grid-template-columns:1fr}.game-shell.left-collapsed .game-left>:not(.game-side-head),.game-shell.right-collapsed .game-right>:not(.game-side-head){display:grid}.game-action-options .game-option-list{grid-template-columns:1fr}}@keyframes game-bar-shimmer{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}@keyframes game-section-glow{0%{box-shadow:0 0 #9fe6cf00}to{box-shadow:0 0 8px #9fe6cf1f}}.game-status-card>h2 svg{filter:drop-shadow(0 0 4px rgba(255,92,92,.35))}.game-status-card .game-section-label{position:relative;padding-bottom:6px;border-bottom:1px solid transparent;background-image:linear-gradient(var(--surface-solid),var(--surface-solid)),linear-gradient(90deg,var(--accent-strong),var(--gold),transparent);background-origin:border-box;background-clip:padding-box,border-box;font-size:12px;letter-spacing:.04em;text-transform:none}.game-status-card .game-status-section{border:1px solid color-mix(in srgb,var(--line-strong) 70%,transparent);border-radius:6px;padding:6px 8px 8px;transition:border-color .2s ease}.game-status-card .game-status-section:hover{border-color:color-mix(in srgb,var(--accent-strong) 30%,var(--line-strong))}.game-status-card .game-status-section.basic{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 38%,transparent),transparent 60%),var(--surface-solid)}.game-status-card .game-status-section.world{background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 10%,transparent),transparent 60%),var(--surface-solid)}.game-status-card .game-attr{position:relative;border:1px solid color-mix(in srgb,var(--line-strong) 60%,transparent);border-left:3px solid color-mix(in srgb,var(--muted) 35%,transparent);border-radius:4px;padding:5px 8px 6px;background:color-mix(in srgb,var(--surface-muted) 45%,var(--surface-solid));transition:border-color .18s ease,background .18s ease,transform .18s ease}.game-status-card .game-attr:hover{border-left-color:var(--accent-strong);background:color-mix(in srgb,var(--surface-muted) 62%,var(--surface-solid));transform:translate(2px)}.game-status-card .game-attr.base{border-left-color:color-mix(in srgb,var(--accent) 50%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--accent-soft) 28%,transparent),transparent 40%),var(--surface-solid)}.game-status-card .game-attr.base:hover{border-left-color:var(--accent)}.game-status-card .game-attr.world{border-left-color:color-mix(in srgb,var(--gold) 45%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 10%,transparent),transparent 40%),var(--surface-solid)}.game-status-card .game-attr.world:hover{border-left-color:var(--gold)}.game-attr-head{min-height:18px}.game-attr-head span{font-size:11px;letter-spacing:.02em}.game-attr-head strong{font-size:13px;font-variant-numeric:tabular-nums}.game-status-card .game-attr-bar{height:7px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-muted) 60%,var(--bg)),var(--bg));box-shadow:inset 0 1px 2px #0000002e;overflow:hidden}.game-status-card .game-attr-bar i{display:block;height:100%;border-radius:999px;transition:width .5s cubic-bezier(.22,1,.36,1);animation:game-bar-shimmer 2.8s ease-in-out infinite;position:relative}.game-status-card .game-attr-bar i:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.22) 50%,transparent 100%);animation:game-bar-shimmer 2s ease-in-out infinite .4s}.game-status-card .game-attr-bar.is-high i{background:linear-gradient(90deg,#1fa86e,#5ddb9a,#9de8c2)}.game-status-card .game-attr-bar.is-mid i{background:linear-gradient(90deg,#d4941a,#f0c845,#f7e08a)}.game-status-card .game-attr-bar.is-low i{background:linear-gradient(90deg,#d43c2f,#f07060,#ffa595);animation:game-bar-shimmer 1.6s ease-in-out infinite}.game-effects-card{gap:4px}.game-effects-card>h2 svg{filter:drop-shadow(0 0 3px rgba(228,202,128,.4))}.game-effects-card .game-situation-list article{border:1px solid color-mix(in srgb,var(--gold) 25%,var(--line-strong));border-radius:6px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 7%,transparent),transparent 50%),var(--surface-solid);padding:5px 7px;transition:border-color .18s ease,transform .18s ease}.game-effects-card .game-situation-list article:hover{border-color:color-mix(in srgb,var(--gold) 50%,var(--line-strong));transform:translateY(-1px)}.game-effects-card .game-situation-list strong{font-size:12px;color:var(--gold)}.game-effects-card .game-situation-list span{font-size:11px}[data-theme=dark] .game-page .game-left .game-side-head .game-back,[data-theme=dark] .game-page .game-left .game-side-head .game-back:visited,[data-theme=dark] .game-page .game-left .game-side-head .game-back:hover,[data-theme=dark] .game-page .game-left .game-side-head .game-back:focus-visible{border-color:#10261d;background:var(--pop-yellow);color:#10261d}[data-theme=dark] .game-page .game-left .game-side-head .game-back svg{color:#10261d;stroke:#10261d}[data-theme=dark] .game-text-situation{background-color:#24352e;border-left-color:#6f9a89}[data-theme=dark] .game-text-situation-label{color:#91a69b}[data-theme=dark] .game-text-situation-item{border-bottom-color:#ffffff0f}[data-theme=dark] .game-text-situation-item strong{color:#edf7f1}[data-theme=dark] .game-text-situation-item span{color:#c4d2cb}[data-theme=dark] .game-text-situation-item small{color:#91a69b}
