.home-scroll{--home-scrim: linear-gradient(to bottom, color-mix(in srgb, var(--bg-base) 82%, transparent) 0, color-mix(in srgb, var(--bg-base) 58%, transparent) 360px, color-mix(in srgb, var(--bg-base) 70%, transparent) 100%);flex:1;min-height:0;overflow-y:auto;background-image:var(--home-scrim);background-size:cover;background-position:center 32%;background-repeat:no-repeat;background-attachment:local}.home-board{--home-gap: 16px;--home-pad: 40px;--panel-bg: color-mix(in srgb, var(--bg-surface) 84%, transparent);position:relative;max-width:1280px;margin-inline:auto;padding:28px var(--home-pad) 48px;display:flex;flex-direction:column;gap:20px}.hero{position:relative;isolation:isolate}.hero-main{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}.hero-main h1{margin:0;max-width:22ch;font-family:var(--font-display);font-weight:600;font-size:clamp(1.75rem,1.1rem + 1.6vw,2.75rem);line-height:1.06;letter-spacing:-.03em;color:var(--text-primary);text-wrap:balance}.home-reference-guide{margin-top:28px;padding:24px 0;border-top:1px solid var(--border-default);color:var(--text-secondary);font-size:.9375rem;line-height:1.65}.home-reference-guide h2{margin:0 0 16px;color:var(--text-primary);font-family:var(--font-display);font-size:1.25rem}.home-reference-guide h3{margin:20px 0 6px;color:var(--text-primary);font-size:1rem}.home-reference-guide p{margin:0 0 10px;max-width:76ch}.home-reference-guide a{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px}.hero-description{margin:0;max-width:62ch;font-size:1rem;line-height:1.55;color:var(--text-secondary);text-wrap:pretty}.home-search-wrap{position:relative;z-index:5;width:100%;margin-top:10px}.home-search-wrap svg.search-icon{position:absolute;left:20px;top:50%;z-index:1;transform:translateY(-50%);pointer-events:none;color:var(--text-muted)}.home-search{display:block;width:100%;height:56px;padding:0 76px 0 52px;font:400 1.0625rem/1 var(--font-ui);color:var(--text-primary);background:color-mix(in srgb,var(--bg-surface) 90%,transparent);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 1px color-mix(in srgb,var(--text-primary) 6%,transparent) inset,0 14px 36px #00000047;outline:none;transition:border-color .18s ease-out,box-shadow .18s ease-out}.home-search{-webkit-appearance:none;appearance:none}.home-search::-webkit-search-cancel-button{-webkit-appearance:none}.home-search::placeholder{color:var(--text-muted)}.home-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light),0 14px 36px #00000047}.home-search-kbd{position:absolute;right:16px;top:50%;z-index:1;transform:translateY(-50%);padding:3px 8px;border-radius:var(--compact-radius);border:1px solid var(--border-strong);background:var(--bg-inset);font:600 .6875rem/1.2 var(--font-display);letter-spacing:.06em;color:var(--text-muted);pointer-events:none}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:30;display:none;overflow:hidden auto;max-height:min(420px,60vh);background:var(--bg-elevated, var(--bg-surface));border:1px solid var(--border-default);border-radius:var(--card-radius);box-shadow:var(--shadow-modal)}.search-results.open{display:block}.sr-empty{padding:24px;text-align:center;font-size:.875rem;color:var(--text-muted)}.sr-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border-subtle);color:inherit;text-decoration:none;cursor:pointer;transition:background .12s ease-out}.sr-item:last-child{border-bottom:none}.sr-item:hover,.sr-item:focus-visible{background:var(--bg-hover);outline:none}.sr-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--tag-bg);border:1px solid var(--chip-border);color:var(--text-muted)}.sr-icon .sr-nav-glyph{width:14px;height:14px}.sr-name{font:500 .875rem/1.4 var(--font-display);color:var(--text-primary)}.sr-name mark{background:rgba(var(--gold-rgb),.2);color:var(--gold);border-radius:2px;padding:0 1px}.sr-meta{font-size:.75rem;color:var(--text-muted)}.home-panels{display:grid;gap:var(--home-gap);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);align-items:stretch}.home-panel{min-width:0;display:flex;flex-direction:column;gap:14px;padding:18px 18px 20px;background:var(--panel-bg);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);border:1px solid var(--border-default);border-radius:14px;box-shadow:0 1px color-mix(in srgb,var(--text-primary) 5%,transparent) inset}.home-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:24px}.home-panel-title{margin:0;min-width:0;font:600 1.0625rem/1.3 var(--font-display);letter-spacing:-.01em;color:var(--text-primary)}.home-panel-title .alt-name{color:inherit;opacity:1}.home-panel-subtitle{margin:6px 0 0;font:600 .8125rem/1.4 var(--font-ui);color:var(--text-muted)}.home-panel-subtitle:empty{display:none}.home-panel-link,.hero-char-switch,.dash-link{flex-shrink:0;white-space:nowrap;font-size:.8125rem;font-weight:500;color:var(--accent-text);text-decoration:none;cursor:pointer}.home-panel-link:hover,.hero-char-switch:hover,.dash-link:hover{color:var(--text-primary)}.home-panel-count{font-size:.8125rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.home-sub-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:4px;padding-top:14px;border-top:1px solid var(--border-subtle)}.home-sub-head .home-panel-subtitle{margin:0}#char-card-mount{position:relative;display:flex;flex-direction:column;gap:14px}#char-card-mount:empty{min-height:243px}.char-card-dev-badge{display:none}.char-card-top{display:flex;align-items:center;gap:14px;min-width:0}.char-card-top>div:nth-child(2){min-width:0;flex:1 1 auto}.char-card-icon{width:52px;height:52px;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:14px;background:var(--bg-hover);border:1px solid var(--border-default);color:var(--text-muted)}.char-card-icon svg{width:24px;height:24px}.char-card-icon--dashed{border-style:dashed;border-color:var(--border-strong)}.char-card-name{font:700 1.125rem/1.3 var(--font-display);letter-spacing:-.01em;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-card-sub{margin-top:2px;font-size:.8125rem;line-height:1.45;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-card-big{margin-left:auto;text-align:right;flex-shrink:0}.char-card-big-val{font:700 1.25rem/1.2 var(--font-display);color:var(--text-primary);font-variant-numeric:tabular-nums}.char-card-big-val small{font-size:.8125rem;color:var(--text-muted)}.char-card-big-label{font-size:.75rem;color:var(--text-muted)}.char-card-stats{display:flex;flex-wrap:wrap;gap:4px 28px;padding:10px 0;border-block:1px solid var(--border-subtle)}.char-stat-tile{min-width:0}.char-stat-tile:nth-child(2),.char-stat-tile:nth-child(3){display:none}.char-stat-label{font-size:.75rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-stat-value{margin-top:1px;font:600 .9375rem/1.35 var(--font-display);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-card-actions{display:flex;gap:8px}.char-btn-primary,.char-btn-secondary{flex:1;min-height:44px;padding:0 12px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:var(--control-radius);font-size:.875rem;text-decoration:none;cursor:pointer;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .1s ease-out}.char-btn-primary{background:var(--accent);color:var(--accent-contrast);font-weight:700}.char-btn-primary:hover{background:var(--accent-hover)}.char-btn-secondary{border:1px solid var(--border-default);color:var(--text-secondary);font-weight:600}.char-btn-secondary:hover{border-color:var(--border-strong);color:var(--text-primary)}.char-btn-primary:active,.char-btn-secondary:active{transform:scale(.98)}.onboard-steps{display:flex;flex-direction:column}.onboard-step{display:flex;align-items:center;gap:12px;min-height:36px;border-top:1px solid var(--border-subtle)}.onboard-step:last-child{border-bottom:1px solid var(--border-subtle)}.onboard-step-num{width:18px;flex-shrink:0;font:600 .75rem/1 var(--font-display);color:var(--text-muted);font-variant-numeric:tabular-nums}.onboard-step-text{font-size:.8125rem;color:var(--text-secondary)}.char-card-mobile{display:none}.continue-list{display:flex;flex-direction:column;gap:2px;margin:0 -8px}.continue-item,.starter-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:7px 8px;border-radius:var(--control-radius);color:inherit;text-decoration:none;cursor:pointer;transition:background .15s ease-out}.continue-item:hover,.starter-item:hover,.continue-item:focus-visible,.starter-item:focus-visible{background:var(--bg-hover)}.continue-icon,.starter-icon{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:var(--compact-radius);color:var(--row-c, var(--text-muted));background:var(--bg-inset);border:1px solid var(--border-subtle)}.continue-icon svg,.starter-icon svg{width:16px;height:16px}.continue-body{min-width:0;flex:1 1 auto;display:flex;flex-direction:column}.continue-kicker{order:2;font-size:.75rem;line-height:1.4;color:var(--text-muted)}.continue-name{order:1;font:600 .875rem/1.35 var(--font-display);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.continue-sub{display:none}.starter-item .continue-sub{display:block;order:3;font-size:.75rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.starter-item .continue-kicker{display:none}.continue-time{flex-shrink:0;font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.starter-arrow{flex-shrink:0;color:var(--text-muted);transition:transform .18s ease-out,color .18s ease-out}.starter-item:hover .starter-arrow{color:var(--text-primary);transform:translate(2px)}.ref-group{display:flex;flex-direction:column;gap:8px}.ref-group .home-panel-subtitle{margin:0}.ref-chips{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}.ref-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:3px 10px;border:1px solid var(--border-default);border-radius:999px;background:color-mix(in srgb,var(--bg-inset) 80%,transparent);font-size:.8125rem;font-weight:500;line-height:1.3;color:var(--text-secondary);text-decoration:none;white-space:nowrap;transition:background .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .1s ease-out}.ref-chip[style*=--chip-c]:before{content:"";width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--chip-c)}.ref-chip:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.ref-chip:active{transform:scale(.97)}.lib-list{display:flex;flex-direction:column;gap:2px;margin:0 -8px}.lib-tile{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:5px 8px;border-radius:var(--control-radius);color:inherit;text-decoration:none;transition:background .15s ease-out}.lib-tile:hover,.lib-tile:focus-visible{background:var(--bg-hover)}.lib-glyph{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:var(--compact-radius);color:var(--tile-c, var(--text-muted));background:var(--bg-inset);border:1px solid var(--border-subtle);transition:border-color .18s ease-out}.lib-glyph .nav-art{width:18px;height:18px}.lib-tile:hover .lib-glyph{border-color:var(--border-strong)}.lib-text{min-width:0;flex:1 1 auto;display:flex;flex-direction:column}.lib-name{font:600 .9375rem/1.35 var(--font-display);color:var(--text-primary)}.lib-desc{font-size:.75rem;line-height:1.4;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-count{flex-shrink:0;min-width:5ch;text-align:right;font:600 .875rem/1 var(--font-display);color:var(--text-secondary);font-variant-numeric:tabular-nums}.lib-count:empty:after{content:"";display:inline-block;width:7px;height:7px;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);transform:rotate(-45deg);margin-right:4px}.lib-tile-dismiss{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;border-radius:var(--control-radius);display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer}.lib-tile-dismiss:hover{background:var(--bg-hover);color:var(--text-primary)}.home-board :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-search{caret-color:var(--accent)}.home-board ::selection{background:var(--accent-light);color:var(--text-primary)}.recent-modal-panel{max-width:460px;padding:22px 22px 20px}.recent-modal-title,.char-switch-title{margin:0 0 16px;font:700 1rem/1.3 var(--font-display);color:var(--text-primary)}.recent-modal-list,.char-switch-list{display:flex;flex-direction:column;gap:4px;max-height:60vh;overflow-y:auto}.recent-modal-list .continue-item{border:1px solid var(--border-subtle);background:var(--bg-surface)}.recent-modal-empty{margin:0;font-size:.875rem;color:var(--text-muted)}.char-switch-panel{max-width:440px;padding:22px 22px 20px}.char-switch-title{margin-bottom:4px}.char-switch-hint{margin:0 0 16px;font-size:.8125rem;color:var(--text-muted)}.char-switch-row{width:100%;display:flex;align-items:center;gap:12px;padding:10px 14px;text-align:left;border:1px solid var(--border-subtle);border-radius:var(--control-radius);background:var(--bg-surface);color:inherit;font-family:inherit;cursor:pointer;transition:border-color .15s ease-out,background .15s ease-out}.char-switch-row:hover{border-color:var(--border-default);background:var(--bg-hover)}.char-switch-row.is-active{border-color:var(--accent);background:var(--accent-light)}.char-switch-icon{width:32px;height:32px;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:var(--compact-radius);background:var(--bg-hover);border:1px solid var(--border-default);color:var(--text-muted)}.char-switch-icon svg{width:14px;height:14px}.char-switch-icon img{width:100%;height:100%;object-fit:cover}.char-switch-body{min-width:0;flex:1 1 auto}.char-switch-name{font:600 .875rem/1.35 var(--font-display);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-switch-sub{margin-top:2px;font-size:.75rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-switch-badge{flex-shrink:0;padding:3px 9px;border-radius:999px;font:700 .625rem/1 var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-text);background:var(--accent-light);border:1px solid var(--chip-border)}@media(min-width:769px){.lib-tile--dm{display:none}}@media(max-width:1180px){.home-board{--home-pad: 28px}.home-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.home-panel--library{grid-column:1 / -1}.home-panel--library .lib-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:8px}.home-panel--library .lib-desc{display:none}}@media(max-width:960px){.home-panel--library .lib-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:769px)and (max-width:900px){.home-panels{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.home-scroll{--home-scrim: linear-gradient(to bottom, color-mix(in srgb, var(--bg-base) 70%, transparent) 0, color-mix(in srgb, var(--bg-base) 82%, transparent) 360px, color-mix(in srgb, var(--bg-base) 90%, transparent) 100%);background-position:center top;background-attachment:scroll}.home-board{--home-pad: 16px;--home-gap: 12px;--panel-bg: color-mix(in srgb, var(--bg-surface) 92%, transparent);padding:20px var(--home-pad) 24px;gap:16px}.home-panel,.home-community,.home-search{-webkit-backdrop-filter:none;backdrop-filter:none}.hero-main{gap:8px}.hero-main h1{font-size:1.625rem;max-width:none}.hero-description{font-size:.9375rem}.home-search-wrap{margin-top:6px}.home-search{height:48px;padding:0 16px 0 44px;font-size:1rem;border-radius:12px}.home-search-wrap svg.search-icon{left:15px}.home-search-kbd{display:none}.search-results{max-height:min(320px,45dvh)}.home-panels{grid-template-columns:minmax(0,1fr)}.home-panel{padding:14px 14px 16px;gap:12px;border-radius:12px}.home-panel-title{font-size:1rem}.char-card-top,.char-card-stats,.char-card-actions,.onboard-steps{display:none}#char-card-mount:empty{min-height:55px}.char-card-mobile{display:flex;align-items:center;gap:12px}.char-card-mobile-avatar{width:44px;height:44px;border-radius:12px}.char-card-mobile-avatar svg{width:20px;height:20px}.char-card-mobile-avatar img{border-radius:12px}.char-card-mobile-body{min-width:0;flex:1 1 auto}.char-card-mobile-name{font:700 .9375rem/1.3 var(--font-display);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.char-card-mobile-sub{margin-top:2px;font-size:.75rem;line-height:1.4;color:var(--text-muted)}.char-card-mobile-actions{display:flex;gap:8px;flex-shrink:0}.char-card-mobile-btn{width:44px;height:44px;border-radius:var(--control-radius);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-default);background:var(--bg-inset);color:var(--text-secondary);text-decoration:none;cursor:pointer}.char-card-mobile-btn svg{width:16px;height:16px}.continue-list,.ref-chips{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;margin-inline:-14px;padding-inline:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:14px}.continue-list::-webkit-scrollbar,.ref-chips::-webkit-scrollbar{display:none}.continue-list{gap:8px}.ref-chips>li,.ref-chip{flex-shrink:0}.continue-item,.starter-item{flex:0 0 200px;scroll-snap-align:start;border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-inset) 80%,transparent)}.ref-chip{min-height:36px}.home-panel--library .lib-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4px}.lib-tile{gap:10px;min-height:48px;padding:6px 8px}.lib-glyph{width:28px;height:28px}.lib-desc{display:none}.lib-name{font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-count{min-width:0;font-size:.8125rem}}@media(max-width:520px){.home-panel--library .lib-list{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-transparency:reduce){html .home-board :is(.home-panel,.home-community){--panel-bg: var(--bg-surface)}.home-panel,.home-community,.home-search{-webkit-backdrop-filter:none;backdrop-filter:none}.home-search{background:var(--bg-surface)}}@media(prefers-contrast:more){html .home-board :is(.home-panel,.home-community){--panel-bg: var(--bg-surface)}.home-panel,.home-community{border-color:var(--border-strong)}}@media(prefers-reduced-motion:reduce){.home-board *,.home-board *:before{transition:none!important}.home-board :active{transform:none!important}}
