:root{--ui-bg:#0b0d10;--ui-surface:#101215f5;--ui-surface-solid:#101215;--ui-surface-muted:#be97520e;--ui-surface-control:#1d2024;--ui-surface-control-hover:#282c31;--ui-surface-control-muted:#171a1e;--ui-text:#e8ecf1;--ui-text-soft:#d8dfe7;--ui-text-muted:#e8ecf1a3;--ui-accent-rgb:190, 151, 82;--ui-accent:#be9752;--ui-accent-text:#f1ddb2;--ui-border:#be975242;--ui-border-soft:#be975229;--ui-border-accent:rgba(var(--ui-accent-rgb), .44);--ui-radius-panel:16px;--ui-radius-card:8px;--ui-radius-control:8px;--ui-shadow-panel:0 20px 50px #00000080;--ui-shadow-frame:0 20px 50px #00000080, inset 0 0 40px #ffffff08;--ui-shadow-strong:0 18px 60px #000000a6;--ui-backdrop:#0000008c;--ui-backdrop-strong:#0009;--ui-backdrop-blur:blur(2px);--ui-panel-texture:none;--ui-frame-border-image:none;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--ui-text);background:var(--ui-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}a{color:inherit}body{min-width:320px;min-height:100vh;margin:0;display:block}html,body{background:var(--ui-bg);overflow-x:hidden}button,input,select,textarea{font:inherit}.collections-overlay{z-index:2000;background:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop-blur);backdrop-filter:var(--ui-backdrop-blur);justify-content:center;align-items:center;padding:16px;animation:.14s ease-out collectionsFadeIn;display:flex;position:fixed;inset:0}.collections-overlay--closing{animation:.14s forwards collectionsFadeOut}.collections-panel{background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:12px;width:min(900px,92vw);max-height:min(80vh,800px);padding:16px;overflow:auto;box-shadow:0 20px 60px #0009}.collections-frame{--collection-neutral-border:#e8ecf11c;--collection-neutral-fill:#e8ecf106;border-radius:var(--ui-radius-panel);width:min(980px,100%);height:min(82svh,760px);color:var(--ui-text);background:radial-gradient(700px 260px at 50% -10%, rgba(var(--ui-accent-rgb), .06), transparent 68%), var(--ui-panel-texture), var(--ui-surface);border:1px solid var(--ui-border);border-image:var(--ui-frame-border-image);box-shadow:var(--ui-shadow-frame);grid-template-rows:auto minmax(0,1fr) auto;animation:.16s ease-out collectionsPopIn;display:grid;position:relative;overflow:hidden}.collections-frame--closing{animation:.16s forwards collectionsPopOut}.collections-header{border-bottom:1px solid var(--ui-border-soft);background:rgba(var(--ui-accent-rgb), .045);grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:64px;padding:12px 14px;display:grid}.collections-header-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.collections-scope{min-width:170px;position:relative}.collections-scope-trigger{justify-content:space-between;gap:12px;min-width:170px}.collections-scope-caret{opacity:.75;font-size:12px}.collections-scope-menu{border:1px solid var(--collection-neutral-border);background:var(--ui-surface-solid);z-index:5;border-radius:10px;min-width:100%;padding:6px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 40px #00000073}.collections-scope-option{width:100%;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px}.collections-scope-option:hover,.collections-scope-option.is-active{background:rgba(var(--ui-accent-rgb), .12);color:var(--ui-accent-text)}.collections-scope-option:focus,.tab:focus,.close-btn:focus,.category-row:focus,.entry-row:focus,.collection-card:focus,.achievement-mobile-back:focus,.footer-btn:focus{outline:none}.collections-scope-option:focus-visible,.tab:focus-visible,.close-btn:focus-visible,.category-row:focus-visible,.entry-row:focus-visible,.collection-card:focus-visible,.achievement-mobile-back:focus-visible,.footer-btn:focus-visible{border-color:rgba(var(--ui-accent-rgb), .86);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .2)}.collections-title{letter-spacing:0;color:var(--ui-text);font-size:21px;font-weight:700}.collections-account-note{color:var(--ui-text-muted);margin:3px 0 0;font-size:12px;line-height:1.35}.collections-tabs{gap:10px;display:flex}.tab{border:1px solid var(--collection-neutral-border);background:var(--ui-surface-control);color:var(--ui-text);cursor:pointer;border-radius:8px;padding:10px 14px;transition:background .16s,border-color .16s,color .16s}.tab:hover{border-color:rgba(var(--ui-accent-rgb), .42);background:var(--ui-surface-control-hover)}.tab.is-active{border-color:rgba(var(--ui-accent-rgb), .72);background:rgba(var(--ui-accent-rgb), .14);color:var(--ui-accent-text)}.close-btn{border-radius:var(--ui-radius-control);border:1px solid var(--collection-neutral-border);background:var(--ui-surface-control-muted);width:40px;height:40px;color:var(--ui-text);cursor:pointer;place-items:center;padding:0;font-size:16px;font-weight:700;line-height:1;transition:background .16s,border-color .16s;display:grid}.close-btn:hover{border-color:rgba(var(--ui-accent-rgb), .62);background:var(--ui-surface-control-hover)}.collections-main{grid-template-columns:360px 1fr;min-height:0;display:grid;position:relative;overflow:hidden}.collections-left{border-right:1px solid var(--ui-border-soft);background:rgba(var(--ui-accent-rgb), .035);scrollbar-gutter:stable;min-height:0;padding:14px;overflow:auto}.collections-left,.collections-right,.collections-footer{scrollbar-color:rgba(var(--ui-accent-rgb), .32) rgba(var(--ui-accent-rgb), .06);scrollbar-width:thin}.category-row{border:1px solid var(--collection-neutral-border);background:var(--collection-neutral-fill);cursor:pointer;text-align:left;border-radius:8px;grid-template-columns:46px 1fr 18px;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:12px;transition:background .16s,border-color .16s,transform .16s;display:grid}.category-row:hover{border-color:rgba(var(--ui-accent-rgb), .34);background:rgba(var(--ui-accent-rgb), .065);transform:translateY(-1px)}.category-row.is-active{border-color:var(--ui-border-accent);background:rgba(var(--ui-accent-rgb), .1)}.category-row.is-active .cat-icon{border-color:rgba(var(--ui-accent-rgb), .32);background:rgba(var(--ui-accent-rgb), .08)}.cat-icon{border:1px solid var(--collection-neutral-border);background:#e8ecf109;border-radius:8px;place-items:center;width:46px;height:46px;font-size:20px;display:grid}.cat-title{color:var(--ui-text);font-weight:700}.cat-sub{opacity:.85;margin-top:2px;font-size:13px}.cat-chevron{opacity:.8;font-size:18px}.collections-total{border-radius:var(--ui-radius-control);border:1px solid var(--collection-neutral-border);background:var(--collection-neutral-fill);color:var(--ui-text-soft);margin-top:12px;padding:12px}.collections-block{margin-bottom:12px}.collections-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.collections-summary-block{border:1px solid var(--collection-neutral-border);background:var(--collection-neutral-fill);border-radius:8px;gap:4px;padding:12px;display:grid}.collections-summary-label{color:var(--ui-text-muted);letter-spacing:.4px;text-transform:uppercase;font-size:12px}.collections-summary-block strong{color:var(--ui-accent-text);font-size:20px;line-height:1.1}.entry-list{border:1px solid var(--collection-neutral-border);background:var(--collection-neutral-fill);border-radius:8px;margin-top:12px;padding:12px}.entry-list-title{opacity:.8;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;font-size:12px}.achievements-recent__list{gap:8px;display:grid}.recent-unlock-card{border:1px solid var(--ui-border-soft);cursor:pointer;width:100%;color:var(--ui-text);font:inherit;text-align:left;background:#101215b8;border-radius:8px;padding:10px 12px;transition:border-color .16s,background-color .16s,transform .16s,box-shadow .16s}.recent-unlock-card.is-selected{border-color:rgba(var(--ui-accent-rgb), .52);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .18), 0 0 20px rgba(var(--ui-accent-rgb), .08)}.recent-unlock-card:hover{border-color:rgba(var(--ui-accent-rgb), .32);background:rgba(var(--ui-accent-rgb), .08);transform:translateY(-1px)}.recent-unlock-card:focus-visible{border-color:rgba(var(--ui-accent-rgb), .42);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .24), 0 0 18px rgba(var(--ui-accent-rgb), .1);outline:none}.recent-unlock-topline{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.recent-unlock-title{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.recent-unlock-meta{color:var(--ui-text-muted);flex-wrap:wrap;gap:4px 7px;font-size:12px;display:flex}.recent-unlock-meta span+span:before,.achievement-list-meta span+span:before{color:rgba(var(--ui-accent-rgb), .5);content:"/";margin-right:7px}.entry-list-empty{color:var(--ui-text-muted);padding:10px 8px;font-size:13px}.entry-row{width:100%;color:var(--ui-text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:10px 8px;transition:background .16s,border-color .16s;display:flex}.achievement-list-copy{gap:2px;min-width:0;display:grid}.achievement-list-copy .entry-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.achievement-list-meta{color:var(--ui-text-muted);flex-wrap:wrap;font-size:11px;display:flex}.entry-row:hover{border-color:rgba(var(--ui-accent-rgb), .2);background:rgba(var(--ui-accent-rgb), .045)}.entry-row.is-active{border-color:rgba(var(--ui-accent-rgb), .34);background:rgba(var(--ui-accent-rgb), .08)}.entry-dot{background:rgba(var(--ui-accent-rgb), .18);border-radius:999px;width:10px;height:10px}.entry-dot.ok{background:var(--ui-accent);box-shadow:0 0 9px rgba(var(--ui-accent-rgb), .28)}.entry-dot.locked{background:#e8ecf138}.entry-name.locked{opacity:.6}.collections-right{scrollbar-gutter:stable;background:#0a0b0d57;min-height:0;padding:14px;overflow:auto}.collection-album{align-content:start;gap:16px;min-height:100%;display:grid}.collection-album__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.collection-album__heading p{color:var(--ui-text-muted);margin:5px 0 0;font-size:13px}.collection-album__heading>strong{color:var(--ui-accent-text);flex:none;font-size:20px}.collection-album__heading>strong span{color:var(--ui-text-muted);font-size:14px}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.collection-card{border:1px solid var(--collection-neutral-border);border-radius:var(--ui-radius-card);min-width:0;color:var(--ui-text);cursor:pointer;font:inherit;text-align:left;background:#08090b7a;padding:7px;transition:border-color .16s,background-color .16s,transform .16s;position:relative;overflow:hidden}.collection-card:hover{border-color:rgba(var(--ui-accent-rgb), .42);background:rgba(var(--ui-accent-rgb), .055);transform:translateY(-1px)}.collection-card.is-active{border-color:rgba(var(--ui-accent-rgb), .72);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .12)}.collection-card__portrait{aspect-ratio:4/3;background:radial-gradient(circle at 50% 42%, rgba(var(--ui-accent-rgb), .12), transparent 40%), #0a0b0d;border-radius:5px;place-items:center;width:100%;display:grid;overflow:hidden}.collection-card__portrait img{object-fit:cover;width:100%;height:100%;display:block}.collection-card.is-locked .collection-card__portrait{background:radial-gradient(circle at 50% 48%,#e8ecf112,#0000 34%),linear-gradient(145deg,#111317,#08090b);border:1px dashed #e8ecf11c}.collection-card__unknown{color:#e8ecf14d;text-shadow:0 8px 22px #0009;font-size:34px;font-weight:800}.collection-card__symbol{filter:saturate(.7);font-size:32px}.collection-card__name{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;justify-content:space-between;align-items:center;gap:6px;padding:9px 3px 3px;font-size:13px;font-weight:700;display:flex;overflow:hidden}.collection-card__chevron{color:var(--ui-accent);flex:none;font-size:15px}.collection-card.is-locked .collection-card__name{color:var(--ui-text-muted)}.collection-card__marker{background:var(--ui-accent);width:6px;height:6px;box-shadow:0 0 10px rgba(var(--ui-accent-rgb), .5);border-radius:50%;position:absolute;bottom:9px;right:9px}.collection-detail-layer{z-index:4;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#040507d1;place-items:center;padding:18px;display:grid;position:absolute;inset:0;overflow:auto}.collection-detail{border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);background:radial-gradient(520px 220px at 50% 0%, rgba(var(--ui-accent-rgb), .08), transparent 68%), var(--ui-surface-solid);width:min(620px,100%);max-height:100%;box-shadow:var(--ui-shadow-strong);padding:14px;overflow:auto}.collection-detail__header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.collection-detail__header span{color:var(--ui-accent);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.collection-detail__header h3{color:var(--ui-text);margin:4px 0 0;font-size:22px}.collection-detail__header button{border:1px solid var(--collection-neutral-border);border-radius:var(--ui-radius-control);background:var(--ui-surface-control-muted);width:38px;height:38px;color:var(--ui-text);cursor:pointer;font:inherit;flex:none;place-items:center;padding:0;font-weight:700;display:grid}.collection-detail__header button:hover{border-color:rgba(var(--ui-accent-rgb), .62);background:var(--ui-surface-control-hover)}.collection-detail__visual{aspect-ratio:16/9;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:radial-gradient(circle at 50% 45%,#e8ecf112,#0000 34%),#090a0c;place-items:center;width:100%;max-height:320px;display:grid;overflow:hidden}.collection-detail__visual img{object-fit:cover;width:100%;height:100%;display:block}.collection-detail__visual>span{color:#e8ecf14d;font-size:56px;font-weight:800}.collection-detail__visual>.collection-detail__symbol{color:var(--ui-text-soft);filter:saturate(.72);font-size:54px}.collection-detail>p{color:var(--ui-text-soft);margin:14px 2px 2px;line-height:1.6}.collection-detail.is-locked{border-style:dashed}.collection-detail__hint{border:1px solid rgba(var(--ui-accent-rgb), .2);border-radius:var(--ui-radius-card);background:rgba(var(--ui-accent-rgb), .055);margin-top:14px;padding:10px 12px}.collection-detail__hint>span{color:var(--ui-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.collection-detail__hint p{color:var(--ui-accent-text);margin:5px 0 0;line-height:1.5}.detail-card{border:1px solid var(--ui-border-soft);background:radial-gradient(520px 220px at 50% 0%, rgba(var(--ui-accent-rgb), .045), transparent 70%), #101215a8;border-radius:8px;grid-template-rows:auto auto minmax(72px,auto) auto;gap:10px;min-height:100%;padding:14px;display:grid}.detail-card.is-locked{grid-template-rows:auto minmax(220px,1fr) auto}.achievement-detail-card{grid-template-rows:auto auto minmax(120px,auto) auto}.achievement-mobile-back{display:none}.detail-title{color:var(--ui-text);font-size:22px;font-weight:800}.achievement-detail-visual{aspect-ratio:16/9;border:1px solid var(--ui-border-soft);background:radial-gradient(420px 220px at 50% 0%, rgba(var(--ui-accent-rgb), .07), transparent 60%), #08090b6b;border-radius:8px;justify-self:center;place-items:center;width:min(100%,560px);min-height:0;max-height:240px;display:grid;overflow:hidden}.achievement-detail-visual-image{object-fit:cover;width:100%;height:100%;display:block}.achievement-detail-visual.is-locked{border-style:dashed;border-color:rgba(var(--ui-accent-rgb), .18)}.achievement-detail-visual-mark{border-radius:var(--ui-radius-panel);width:72px;height:72px;color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .08);place-items:center;font-size:34px;font-weight:700;display:grid;box-shadow:0 14px 32px #00000047}.achievement-detail-body{border:1px solid var(--ui-border-soft);background:#08090b4d;border-radius:8px;align-content:start;gap:8px;padding:14px;display:grid}.achievement-detail-textmeta{color:var(--ui-text-muted);letter-spacing:.5px;text-transform:uppercase;font-size:12px}.achievement-detail-body p{color:var(--ui-text-soft);margin:0;line-height:1.6}.detail-image{aspect-ratio:16/9;border:1px solid var(--ui-border-soft);background:#00000040;border-radius:8px;justify-self:center;width:min(100%,560px);max-height:280px;overflow:hidden}.detail-image img{object-fit:cover;width:100%;height:100%;display:block}.detail-body{white-space:pre-wrap;color:var(--ui-text-soft);margin:0;font-family:inherit;line-height:1.45}.detail-locked{border:1px dashed rgba(var(--ui-accent-rgb), .18);min-height:220px;color:var(--ui-text-muted);text-align:center;background:#0003;border-radius:8px;align-content:center;justify-items:center;gap:10px;padding:24px;display:grid}.detail-locked-mark{border-radius:var(--ui-radius-card);width:46px;height:46px;color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .08);place-items:center;font-size:24px;font-weight:800;display:grid}.detail-locked strong{color:var(--ui-text)}.detail-locked p{max-width:420px;margin:0;line-height:1.5}.detail-footer{border-top:1px solid var(--ui-border-soft);gap:8px;padding-top:8px;display:grid}.detail-progress{opacity:.9;font-size:13px}.detail-hint{border:1px solid rgba(var(--ui-accent-rgb), .2);background:rgba(var(--ui-accent-rgb), .06);border-radius:8px;padding:8px 10px}.hint-label{opacity:.8;letter-spacing:.4px;text-transform:uppercase;font-size:12px}.hint-text{color:var(--ui-accent-text);margin-top:6px}.collections-footer{border-top:1px solid var(--ui-border-soft);background:rgba(var(--ui-accent-rgb), .035);scrollbar-width:thin;align-items:center;gap:10px;min-height:64px;padding:12px 14px;display:flex;overflow-x:auto}.footer-btn{border:1px solid var(--collection-neutral-border);background:var(--ui-surface-control-muted);color:var(--ui-text);cursor:pointer;white-space:nowrap;border-radius:8px;flex:none;padding:10px 12px;transition:background .16s,border-color .16s,color .16s}.footer-btn:hover{border-color:rgba(var(--ui-accent-rgb), .4);background:var(--ui-surface-control-hover)}.footer-btn.is-active{border-color:var(--ui-border-accent);background:rgba(var(--ui-accent-rgb), .1);color:var(--ui-accent-text)}@keyframes collectionsFadeIn{0%{opacity:0}to{opacity:1}}@keyframes collectionsFadeOut{0%{opacity:1}to{opacity:0}}@keyframes collectionsPopIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes collectionsPopOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.985)}}@media (width>=861px){.collections-footer{display:none}}@media (width<=860px){.collections-overlay{padding:10px}.collections-frame{height:calc(100svh - 20px)}.collections-header{grid-template-columns:1fr auto}.collections-title{font-size:24px}.collections-header-controls{order:3;grid-column:1/-1;width:100%}.collections-scope{flex:170px;min-width:0}.collections-scope-trigger{width:100%;min-width:0}.collections-tabs{flex:auto}.collections-tabs .tab{flex:1 1 0}.collections-main{grid-template-columns:1fr}.collections-main--codex .collections-left,.collections-main--achievements.is-achievement-detail .collections-left{display:none}.collections-main--achievements.is-achievement-list .collections-left{border-right:0;display:block}.collections-main--achievements.is-achievement-list .collections-right{display:none}.collections-main--achievements.is-achievement-detail .collections-right{display:block}.achievement-mobile-back{border:1px solid var(--collection-neutral-border);border-radius:var(--ui-radius-control);background:var(--ui-surface-control-muted);width:fit-content;color:var(--ui-text-soft);cursor:pointer;padding:7px 10px;display:inline-flex}.achievement-mobile-back:hover{border-color:rgba(var(--ui-accent-rgb), .42);background:var(--ui-surface-control-hover);color:var(--ui-text)}.collections-summary{grid-template-columns:1fr}}@media (width<=520px){.collections-overlay{padding:6px}.collections-frame{height:calc(100svh - 12px)}.collections-header{gap:10px;min-height:0;padding:10px}.collections-title{min-width:0;font-size:20px}.collections-account-note{font-size:11px}.collections-header-controls,.collections-tabs{gap:8px}.tab,.footer-btn,.collections-scope-option{padding:9px 10px}.collections-tabs{width:100%}.collections-scope{flex-basis:100%}.collections-footer{padding:8px 10px}.collections-right,.detail-card{padding:10px}.detail-title{font-size:20px}.detail-locked{min-height:180px;padding:18px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.collection-detail-layer{padding:8px}.collection-detail{padding:10px}}.catalog-book-card{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:linear-gradient(180deg, #1c1711f5, #101113fa), var(--ui-surface);flex-direction:column;min-width:0;display:flex;overflow:hidden;box-shadow:0 14px 32px #00000057}.catalog-book-card img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.catalog-book-card__body{flex-direction:column;flex:1;padding:1rem;display:flex}.catalog-book-card__tag{color:var(--ui-accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .55rem;font-size:.72rem;font-weight:700}.catalog-book-card__tag--comingSoon{color:var(--ui-text-muted)}.catalog-book-card h3{color:var(--ui-text);margin:0 0 .5rem;font-size:1.25rem}.catalog-book-card__description{min-height:3.2em;color:var(--ui-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.catalog-book-card__run{color:var(--ui-text-soft);margin:auto 0 .65rem;font-size:.78rem;font-weight:700}.catalog-book-card__run:before{content:"";vertical-align:.08em;background:currentColor;border-radius:50%;width:.4rem;height:.4rem;margin-right:.4rem;display:inline-block}.catalog-book-card__run--completed{color:var(--ui-accent)}.catalog-book-card__run--dead{color:#b9877f}.catalog-book-card__action{border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);background:var(--ui-surface-control);width:100%;min-height:42px;color:var(--ui-text);cursor:pointer;font:inherit;letter-spacing:.06em;text-transform:uppercase;justify-content:center;align-items:center;margin-top:auto;font-size:.84rem;font-weight:700;text-decoration:none;transition:background-color .18s,border-color .18s;display:inline-flex}.catalog-book-card__action:hover{border-color:rgba(var(--ui-accent-rgb), .62);background:var(--ui-surface-control-hover)}.catalog-book-card__action:focus-visible{outline:2px solid rgba(var(--ui-accent-rgb), .72);outline-offset:2px}.catalog-book-card__action:disabled{color:var(--ui-text-muted);cursor:not-allowed;opacity:.72}.frame-shell{border-radius:calc(var(--ui-radius-panel) + 2px);background:var(--ui-panel-texture), #101215f0;border:1px solid var(--ui-border);border-image:var(--ui-frame-border-image);box-shadow:var(--ui-shadow-strong), inset 0 0 42px rgba(var(--ui-accent-rgb), .035);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden}.frame-inner{padding:16px;position:relative}.frame-gold{border-color:rgba(var(--ui-accent-rgb), .45);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .18), 0 0 24px rgba(var(--ui-accent-rgb), .18), var(--ui-shadow-strong)}.frame-dark{background:var(--ui-panel-texture), #0a0b0df5}.frame-arcane{border-color:rgba(var(--ui-accent-rgb), .45);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .18), 0 0 24px rgba(var(--ui-accent-rgb), .18), 0 18px 60px #000000a6}.panelShellBackdrop{z-index:2000;background:var(--ui-backdrop);-webkit-backdrop-filter:var(--ui-backdrop-blur);backdrop-filter:var(--ui-backdrop-blur);justify-content:center;align-items:center;padding:18px;animation:.14s ease-out dgbFadeIn;display:flex;position:fixed;inset:0}.panelShell{max-height:calc(100svh - 36px);animation:.16s ease-out dgbPopIn;overflow:hidden}.panelShell>.frame-inner{box-sizing:border-box;max-height:inherit;flex-direction:column;min-height:0;display:flex}.panelShell--sm{width:min(520px,92vw)}.panelShell--md{width:min(720px,92vw)}.panelShell--lg{width:min(980px,94vw)}.panelShellHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.panelShellTitle{min-width:0;margin:0;font-size:20px;font-weight:700}.panelShellHeaderActions{flex:none;justify-content:flex-end;align-items:center;gap:10px;display:inline-flex}.panelShellCurrency{border:1px solid rgba(var(--ui-accent-rgb), .18);min-height:30px;color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .08);border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:14px;font-weight:800;line-height:1;display:inline-flex}.panelShellCurrencyIcon{width:11px;height:11px;box-shadow:0 0 10px rgba(var(--ui-accent-rgb), .45);background:radial-gradient(circle at 35% 30%,#fff1ba,#d59a2a 58%,#6f4311);border-radius:50%}.panelShellClose{border-radius:var(--ui-radius-control);background:var(--ui-surface-control-muted);border:1px solid var(--ui-border);width:36px;height:36px;color:var(--ui-text);cursor:pointer;place-items:center;padding:0;font-size:15px;font-weight:700;line-height:1;display:grid}.panelShellClose:hover{background:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .62)}.panelShellBody{overscroll-behavior:contain;min-height:0;padding-top:6px;padding-right:4px;overflow:hidden auto}.panelShellBody--character{overflow:hidden auto}.panelShellBody--inventory{padding-right:0;overflow:visible}.panelShellBody{scrollbar-width:thin;scrollbar-color:rgba(var(--ui-accent-rgb), .34) rgba(var(--ui-accent-rgb), .08)}.panelShellBody::-webkit-scrollbar{width:10px}.panelShellBody::-webkit-scrollbar-track{background:rgba(var(--ui-accent-rgb), .08);border-radius:999px}.panelShellBody::-webkit-scrollbar-thumb{background:rgba(var(--ui-accent-rgb), .34);border-radius:999px}.panelShellBody::-webkit-scrollbar-thumb:hover{background:rgba(var(--ui-accent-rgb), .48)}@media (width<=720px){.panelShellBackdrop{align-items:stretch;padding:10px}.panelShell,.panelShell--sm,.panelShell--md,.panelShell--lg{width:100%;max-height:calc(100svh - 20px)}.panelShellHeader{gap:10px;margin-bottom:8px}.panelShellTitle{min-width:0;font-size:18px}.panelShellHeaderActions{gap:8px}.panelShellCurrency{min-height:28px;padding:4px 8px;font-size:13px}.panelShellClose{flex:none}.panelShellBody{padding-right:4px;overflow-y:auto}.panelShellBody--character{overflow:hidden auto}.panelShellBody--inventory{padding-right:0;overflow:visible}}@media (width<=420px){.panelShellBackdrop{padding:6px}.panelShell,.panelShell--sm,.panelShell--md,.panelShell--lg{max-height:calc(100svh - 12px)}.panelShellBody{padding-right:0}}@keyframes dgbFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dgbFadeOut{0%{opacity:1}to{opacity:0}}@keyframes dgbPopIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dgbPopOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(6px)scale(.97)}}.panelShellBackdrop--closing{animation:.14s forwards dgbFadeOut}.panelShell--closing{animation:.16s forwards dgbPopOut}.top-nav{color:#fff;z-index:1000;justify-content:center;align-items:center;width:100%;padding:.85rem 2rem;transition:background-color .25s,box-shadow .25s,-webkit-backdrop-filter .25s,backdrop-filter .25s,border-color .25s;display:flex;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1400px;display:flex}.nav-left{align-items:center;display:flex}.nav-brand{color:#f5f5f5;letter-spacing:0;white-space:nowrap;align-items:center;gap:.65rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.nav-logo{cursor:pointer;height:40px;transition:opacity .2s,transform .2s}.nav-logo:hover{opacity:.9;transform:translateY(-1px)}.nav-links{align-items:center;gap:1.6rem;display:flex}.nav-links a{color:#fff;letter-spacing:.3px;opacity:.9;font-weight:500;text-decoration:none;transition:color .2s,opacity .2s,transform .2s}.nav-links a:hover{color:var(--ui-accent-text);opacity:1;transform:translateY(-1px)}.nav-link--active{color:var(--ui-accent-text);opacity:1}.nav-auth{align-items:center;gap:.7rem;min-width:0;display:flex}.login-button{background-color:var(--ui-surface-control);min-height:40px;color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;white-space:nowrap;border-radius:8px;padding:.5rem 1rem;font-size:.95rem;font-weight:700}.login-button:hover{background-color:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .65);transform:translateY(-1px)}.dropdown-wrapper{display:none;position:relative}.dropdown-toggle{background-color:var(--ui-surface-control);color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;white-space:nowrap;border-radius:8px;place-items:center;padding:.45rem .9rem;display:grid}.dropdown-toggle:hover{background-color:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .65);transform:translateY(-1px)}.dropdown-menu{background-color:var(--ui-surface-solid);z-index:1001;border:1px solid #ffffff0d;border-radius:8px;min-width:180px;padding:.5rem;position:absolute;top:120%;right:0;box-shadow:0 0 12px #000000a6}.dropdown-menu a{color:#fff;opacity:.9;border-radius:4px;padding:.45rem .9rem;font-size:.9rem;text-decoration:none;transition:background-color .2s,opacity .2s;display:block}.dropdown-menu a:hover{background-color:var(--ui-surface-control-hover);opacity:1}.nav-button{background-color:var(--ui-surface-control);min-height:40px;color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.95rem;font-weight:700;display:inline-flex}.nav-button--icon,.dropdown-toggle{width:40px;min-width:40px;height:40px;padding:0}.nav-icon{fill:currentColor;width:20px;height:20px}.nav-button--settings{margin-left:.6rem;position:relative}.nav-button--settings:before{content:"";background:#ffffff1f;width:1px;position:absolute;top:7px;bottom:7px;left:-.65rem}.nav-button:hover{background-color:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .65);transform:translateY(-1px)}.login-button:focus,.dropdown-toggle:focus,.nav-button:focus{outline:none}.login-button:focus-visible,.dropdown-toggle:focus-visible,.nav-button:focus-visible{border-color:rgba(var(--ui-accent-rgb), .9);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .24), 0 0 20px rgba(var(--ui-accent-rgb), .16)}.nav-preview-button{display:none}.top-nav--realm-global{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(var(--ui-accent-rgb), .12);background:linear-gradient(#0e0a06f0,#0c0805d6);box-shadow:0 14px 30px #000c}.top-nav--realm-dark{border-bottom:1px solid rgba(var(--ui-accent-rgb), .12);background:linear-gradient(#090a0cfa,#060709fa);box-shadow:0 0 16px #000000d9}.top-nav--realm-kids{background:linear-gradient(#141828f0,#0c1020f0);border-bottom:1px solid #b4d2ff4d;box-shadow:0 0 14px #000000b3}.top-nav--variant-home .nav-links a{font-size:.95rem}.top-nav--variant-game{padding-top:.7rem;padding-bottom:.7rem}@media (width<=768px){.top-nav{padding:.7rem .85rem}.nav-logo{height:34px}.nav-brand span{display:none}.nav-links{gap:1.1rem}.nav-auth{scrollbar-width:none;gap:.5rem;margin-block:-6px;padding-block:6px;overflow-x:auto}.nav-auth::-webkit-scrollbar{display:none}.login-button,.dropdown-toggle,.nav-button{min-height:38px;padding:.45rem .75rem;font-size:.86rem}.nav-button--icon,.dropdown-toggle{width:38px;min-width:38px;height:38px;padding:0}.nav-button--settings{margin-left:.35rem}.nav-button--settings:before{left:-.4rem}}@media (width<=560px){.nav-links{display:none}.dropdown-wrapper{display:block}.nav-left{flex:none}}.public-footer{border-top:1px solid var(--ui-border-soft);background:linear-gradient(180deg, #0a0b0df5, #050608fa), var(--ui-bg);color:var(--ui-text-muted)}.public-footer__inner{grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr) auto;align-items:start;gap:24px;width:min(1180px,100vw - 32px);margin:0 auto;padding:28px 0;display:grid}.public-footer__brand{color:var(--ui-text);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:15px;font-weight:800;text-decoration:none;display:inline-flex}.public-footer p{max-width:420px;margin:0;font-size:14px;line-height:1.6}.public-footer__links{flex-wrap:wrap;gap:10px 18px;display:flex}.public-footer__links a{color:var(--ui-text-soft);font-size:14px;font-weight:700;text-decoration:none}.public-footer__links a:hover{color:var(--ui-accent-text)}.public-footer__meta{color:var(--ui-text-muted);text-align:right;font-size:13px}@media (width<=820px){.public-footer__inner{grid-template-columns:1fr}.public-footer__meta{text-align:left}}.homepage{background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .055), transparent 36%), radial-gradient(1000px 520px at 72% -8%, #58626e12, transparent 62%), linear-gradient(180deg, #0d0f12 0%, #08090b 100%);min-height:100vh;color:var(--ui-text)}.homepage-main{width:min(1180px,100vw - 32px);margin:0 auto;padding:3rem 0 4.5rem}.page-title{text-align:center;margin:0 auto 2.5rem}.eyebrow{color:var(--ui-accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .65rem;font-size:.78rem;font-weight:700}.page-title h1{letter-spacing:.1em;text-transform:uppercase;margin:0 0 .65rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:800}.page-subtitle{max-width:720px;color:var(--ui-text-muted);margin:0 auto;font-size:1rem;line-height:1.7}.section-shell{margin-top:3rem}.section-heading{text-align:center;margin-bottom:1.4rem}.section-heading h2{margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}.section-subtitle{max-width:760px;color:var(--ui-text-muted);margin:.7rem auto 0;line-height:1.6}.btn{cursor:pointer;text-transform:uppercase;letter-spacing:.08em;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:.78rem 1.9rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:background-color .18s,border-color .18s,transform .15s,box-shadow .18s,color .18s;display:inline-flex}.btn-primary{background-color:var(--ui-surface-control);border-color:var(--ui-border);color:var(--ui-text)}.section-heading--with-action{text-align:left;justify-content:space-between;align-items:end;gap:1rem;display:flex}.section-link{color:var(--ui-accent-text);font-size:.88rem;font-weight:700;text-decoration:none}.section-link:hover{color:var(--ui-text)}.project-status{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:-.6rem auto 2rem;display:grid}.project-status__item{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:radial-gradient(260px 90px at 0% 0%, rgba(var(--ui-accent-rgb), .07), transparent 72%), var(--ui-surface);align-content:start;gap:.35rem;min-height:92px;padding:1rem;display:grid}.project-status__item strong{color:var(--ui-accent-text);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.project-status__item span{color:var(--ui-text-muted);line-height:1.45}.btn-primary:hover{background-color:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .65);transform:translateY(-1px);box-shadow:0 8px 22px #0000008c}.btn-secondary{background-color:var(--ui-surface-control-muted);border-color:var(--ui-border);color:var(--ui-text-soft)}.btn:focus{outline:none}.btn:focus-visible{border-color:rgba(var(--ui-accent-rgb), .9);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .24), 0 0 20px rgba(var(--ui-accent-rgb), .14)}.btn-secondary:hover{background-color:var(--ui-surface-control-hover);border-color:rgba(var(--ui-accent-rgb), .56);transform:translateY(-1px);box-shadow:0 6px 18px #00000080}.btn-secondary:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.btn-sm{letter-spacing:.07em;width:100%;padding:.55rem 1.4rem;font-size:.85rem;font-weight:600}.free-book{background:radial-gradient(520px 180px at 0% 0%, rgba(var(--ui-accent-rgb), .08), transparent 72%), linear-gradient(180deg, #161616fa, #0d0e10f5), var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:18px;justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem 2.2rem;display:flex;box-shadow:0 0 24px #00000080}.free-book-copy{max-width:720px}.free-book-kicker{color:var(--ui-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .6rem;font-size:.82rem;font-weight:700}.free-book h2{margin:0 0 .55rem;font-size:clamp(2rem,4vw,2.7rem)}.free-book-text{color:var(--ui-text-soft);margin:0;font-size:1rem;line-height:1.7}.free-book-actions{flex-shrink:0;justify-content:center;display:flex}.available-gamebooks{color:var(--ui-text)}.gamebook-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem;display:grid}.gamebook-grid--continue{grid-template-columns:repeat(auto-fill,minmax(280px,380px));justify-content:start}.library-invitation{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-panel);background:radial-gradient(480px 160px at 50% 0%, rgba(var(--ui-accent-rgb), .07), transparent 72%), var(--ui-surface);padding:2.25rem 1.25rem}.library-invitation .section-heading{margin:0}.library-invitation__action{margin-top:1.25rem}.news-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem;display:grid}.news-card,.about-panel{background:var(--ui-surface);border:1px solid var(--ui-border-soft);border-radius:16px;padding:1.4rem;box-shadow:0 0 20px #00000047}.news-card h3,.about-panel p:first-child{margin-top:0}.news-card p,.about-panel p{color:var(--ui-text-muted);margin-bottom:0;line-height:1.7}.about-panel{max-width:960px;margin:0 auto}.about-panel p+p{margin-top:1rem}@media (width<=900px){.homepage-main{width:min(100vw - 24px,1180px);padding:2rem 0 3rem}.free-book{flex-direction:column;align-items:flex-start}.free-book-actions{justify-content:flex-start;width:100%}.book-card-actions{width:100%}.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.page-title{margin-bottom:2rem}.gamebook-grid,.project-status,.news-grid{grid-template-columns:1fr}.section-heading--with-action{flex-direction:column;align-items:flex-start}.free-book,.news-card,.about-panel{padding:1.15rem}.book-card-actions--compact{grid-template-columns:1fr}}.library-page{background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .055), transparent 34%), linear-gradient(180deg, #0d0f12 0%, #08090b 100%);min-height:100vh;color:var(--ui-text)}.library-page__main{width:min(1180px,100vw - 32px);min-height:calc(100vh - 250px);margin:0 auto;padding:3rem 0 4.5rem}.library-page__heading{max-width:680px;margin-bottom:2rem}.library-page__heading h1{margin:0;font-size:clamp(2.25rem,5vw,3.6rem)}.library-page__heading>p:last-child{color:var(--ui-text-muted);margin:.65rem 0 0;line-height:1.6}.library-tabs{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-control);background:#08090bb3;gap:.35rem;padding:.3rem;display:inline-flex}.library-tabs__button{min-height:40px;color:var(--ui-text-muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:.5rem 1rem;font-weight:700}.library-tabs__button:hover{color:var(--ui-text)}.library-tabs__button.is-active{border-color:var(--ui-border);background:var(--ui-surface-control);color:var(--ui-accent-text)}.library-tabs__button:focus-visible{outline:2px solid rgba(var(--ui-accent-rgb), .7);outline-offset:2px}.library-catalog{margin-top:2rem}.library-catalog__heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.library-catalog__heading h2{margin:0;font-size:1.35rem}.library-catalog__heading span{color:var(--ui-text-muted);font-size:.82rem}.library-catalog__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;display:grid}.library-catalog__empty{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-panel);background:var(--ui-surface);text-align:center;padding:2rem}.library-catalog__empty h3{margin:0}.library-catalog__empty p{color:var(--ui-text-muted)}.library-catalog__empty button{border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);background:var(--ui-surface-control);min-height:42px;color:var(--ui-text);cursor:pointer;font:inherit;padding:.55rem 1rem;font-weight:700}@media (width<=640px){.library-page__main{width:min(100vw - 24px,1180px);padding:2rem 0 3rem}.library-tabs{grid-template-columns:1fr 1fr;width:100%;display:grid}.library-catalog__grid{grid-template-columns:1fr}}:root{--headerH:56px;--footerH:44px;--accentGold:var(--ui-accent-rgb)}html,body{height:100%;margin:0}*,:before,:after{box-sizing:border-box}.game-header{z-index:1500;height:var(--headerH);box-sizing:border-box;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(var(--ui-accent-rgb), .16);background:#08090bf0;position:sticky;top:0}.game-header-inner{justify-content:space-between;align-items:center;max-width:1200px;height:100%;margin:0 auto;padding:0 16px;display:flex}.gh-left{align-items:center;gap:8px;min-width:0;display:flex}.gh-right{scrollbar-width:none;align-items:center;gap:8px;min-width:0;margin-block:-8px;padding-block:8px;display:flex;overflow-x:auto}.gh-right::-webkit-scrollbar{display:none}.gh-action-group{flex:none;align-items:center;gap:8px;display:flex}.gh-action-group--system{border-left:1px solid rgba(var(--ui-accent-rgb), .18);margin-left:4px;padding-left:12px}.gh-logo{object-fit:contain;border-radius:6px;width:26px;height:26px}.gh-title{opacity:.9;font-weight:600}.gh-link{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.gh-link:hover .gh-title{opacity:1}.tb-btn{border-radius:var(--ui-radius-control);background:var(--ui-surface-control);color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;white-space:nowrap;will-change:transform, box-shadow;padding:8px 12px;transition:transform .12s,box-shadow .16s,border-color .16s,background .16s,filter .16s;position:relative}.tb-btn:hover{background:var(--ui-surface-control-hover);border-color:rgba(var(--accentGold), .85);box-shadow:0 0 0 1px rgba(var(--accentGold), .22), 0 0 18px rgba(var(--accentGold), .18), 0 0 38px rgba(var(--accentGold), .1);filter:brightness(1.03);transform:translateY(-1px)}.tb-btn:focus{outline:none}.tb-btn:focus-visible{border-color:rgba(var(--accentGold), .9);box-shadow:0 0 0 2px rgba(var(--accentGold), .24), 0 0 20px rgba(var(--accentGold), .16)}.tb-btn:active{transform:translateY(0)scale(.99)}.tb-btn:disabled,.tb-btn:disabled:hover{opacity:.45;cursor:not-allowed;filter:none;box-shadow:none;background:var(--ui-surface-control);border-color:#ffffff1a;transform:none}.tb-btn--active{border-color:rgba(var(--accentGold), .95);background:linear-gradient(180deg, rgba(var(--accentGold), .18), rgba(var(--accentGold), .06));box-shadow:0 0 0 1px rgba(var(--accentGold), .35), 0 0 22px rgba(var(--accentGold), .22), 0 0 48px rgba(var(--accentGold), .14)}.tb-btn--icon{place-items:center;width:42px;min-width:42px;height:42px;padding:0;display:grid}.tb-btn--settings{color:var(--ui-accent-text)}.tb-btn--feedback{border-color:rgba(var(--ui-accent-rgb), .42);background:rgba(var(--ui-accent-rgb), .1);color:var(--ui-accent-text);font-weight:700}.tb-btn__gear{fill:currentColor;width:20px;height:20px;display:block}.hp-indicator{border:1px solid rgba(var(--ui-accent-rgb), .22);background:rgba(var(--ui-accent-rgb), .08);min-width:84px;color:var(--ui-accent-text);border-radius:8px;justify-content:center;align-items:center;padding:8px 10px;font-size:13px;font-weight:600;display:inline-flex}.hp-indicator.is-critical{color:#ffd6d6;background:#dc585824;border-color:#dc585873;box-shadow:0 0 20px #dc585826}@media (width<=720px){.game-header-inner{gap:10px;padding:0 10px}.gh-title{display:none}.gh-right,.gh-action-group{gap:6px}.gh-action-group--system{margin-left:0;padding-left:8px}.tb-btn{padding:8px 10px;font-size:13px}.tb-btn--icon{width:40px;min-width:40px;height:40px}}.game-container{height:calc(100vh - var(--headerH) - var(--footerH) - 2px);background:radial-gradient(circle at top, rgba(var(--ui-accent-rgb), .055), transparent 38%), radial-gradient(1200px 620px at 72% -12%, #58626e14, transparent 60%), radial-gradient(800px 400px at 10% 110%, #be975214, transparent 60%), linear-gradient(180deg, #0d0f12 0%, #08090b 100%);color:var(--ui-text);box-sizing:border-box;justify-content:center;align-items:center;padding:16px;display:flex;overflow:hidden}.scene-card{background:linear-gradient(180deg, #121418f0, #0b0d10f5), var(--ui-surface);border:1px solid var(--ui-border-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;width:100%;max-width:1000px;max-height:100%;padding:16px 18px;overflow:auto;box-shadow:0 12px 40px #00000059}.scene-card-actions{justify-content:flex-end;margin-bottom:10px;display:flex}.context-btn{border:1px solid rgba(var(--accentGold), .36);background:linear-gradient(180deg, rgba(var(--accentGold), .16), rgba(var(--accentGold), .06));color:#f2e4c7;cursor:pointer;border-radius:8px;padding:10px 14px;font-weight:600;transition:transform .12s,box-shadow .16s,border-color .16s,background .16s}.context-btn:hover{border-color:rgba(var(--accentGold), .7);box-shadow:0 0 0 1px rgba(var(--accentGold), .22), 0 0 16px rgba(var(--accentGold), .16);transform:translateY(-1px)}.topbar{justify-content:flex-end;gap:8px;margin-bottom:10px;display:flex}.scene-media{aspect-ratio:16/7.3;background:#111;border-radius:12px;width:100%;margin-bottom:12px;position:relative;overflow:hidden}.scene-image{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.scene-title{letter-spacing:.2px;margin:0 0 6px;font-size:24px;line-height:1.25}.scene-text{color:#d8dfe7;white-space:pre-line;margin:0 0 14px;font-size:16px;line-height:1.55}.scene-text p{margin:0}.scene-text p+p{margin-top:12px}.options-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=640px){.options-grid{grid-template-columns:1fr 1fr}}@media (width<=900px){.game-container{height:auto;min-height:calc(100vh - var(--headerH) - var(--footerH) - 2px);min-height:calc(100svh - var(--headerH) - var(--footerH) - 2px);align-items:flex-start;overflow:visible}.scene-card{max-height:none;overflow:visible}}@media (width<=520px) and (orientation:portrait){:root{--mobileBottomSafe:92px}.game-container{padding:10px 8px calc(var(--mobileBottomSafe) + env(safe-area-inset-bottom))}.scene-card{border-radius:14px;padding:10px}.scene-card-actions{margin-bottom:8px}.scene-media{aspect-ratio:16/9;max-height:34svh;margin-bottom:10px}.scene-title{font-size:21px}.scene-text{margin-bottom:12px;font-size:15px;line-height:1.48}.options-grid{padding-bottom:calc(var(--mobileBottomSafe) + env(safe-area-inset-bottom));scroll-margin-bottom:calc(var(--mobileBottomSafe) + env(safe-area-inset-bottom));gap:8px}.option-button{min-height:48px;padding:9px 10px;font-size:14px}}.option-button{width:100%;color:var(--ui-text);background:linear-gradient(180deg, var(--ui-surface-control), var(--ui-surface-control-muted) 70%);border:1px solid var(--ui-border);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:15px;transition:transform .12s,box-shadow .12s,border-color .12s;display:inline-flex}.option-button:hover{border-color:rgba(var(--accentGold), .62);transform:translateY(-1px);box-shadow:0 8px 20px #00000059}.option-button:focus{outline:none}.option-button:focus-visible{border-color:rgba(var(--accentGold), .86);box-shadow:0 0 0 2px rgba(var(--accentGold), .24), 0 0 22px rgba(var(--accentGold), .16)}.option-button:active{box-shadow:none;transform:translateY(0)}.option-button--disabled,.option-button--disabled:hover{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.option-index{background:rgba(var(--accentGold), .1);width:28px;height:28px;color:var(--ui-accent-text);border-radius:8px;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.option-copy{flex-direction:column;align-items:flex-start;gap:1px;display:flex}.option-requirement{color:var(--ui-text-muted);font-size:11px}.modal-backdrop{background:var(--ui-backdrop-strong);z-index:2000;justify-content:center;align-items:center;padding:14px;animation:.14s ease-out dgbFadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--ui-surface-solid);width:min(92vw,560px);max-height:min(82svh,760px);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-panel);box-shadow:var(--ui-shadow-panel);transform-origin:50%;padding:16px;animation:.16s ease-out dgbPopIn;overflow:auto}.modal-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.modal-header h3{overflow-wrap:anywhere;min-width:0;margin:0}.modal-close{background:var(--ui-surface-control-muted);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);cursor:pointer;padding:4px 8px;transition:transform .12s,box-shadow .16s,border-color .16s,background .16s}.modal-close:hover{background:var(--ui-surface-control-hover);border-color:rgba(var(--accentGold), .65);box-shadow:0 0 12px rgba(var(--accentGold), .12)}.modal-close:active{transform:scale(.98)}.modal-body{font-size:14px;line-height:1.6}.inv-list{margin:0;padding:0;list-style:none}.inv-list li{border-bottom:1px solid #ffffff0f;justify-content:space-between;padding:6px 0;display:flex}.flag-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.stat-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.muted{opacity:.7;margin-top:8px}.options-actions{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.options-actions>button{background:var(--ui-surface-control-muted);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);cursor:pointer;padding:8px 10px;font-size:14px}.options-actions>button:hover{background:var(--ui-surface-control-hover)}.options-actions>button:disabled,.options-actions>button:disabled:hover{background:rgba(var(--ui-accent-rgb), .04);color:#e8ecf16b;border-color:rgba(var(--ui-accent-rgb), .1);cursor:not-allowed;box-shadow:none}.options-actions>button.options-danger{color:#ffd6d6;border-color:#dc585852}.options-actions>button.options-danger:hover{background:#dc585829;border-color:#dc58588a}.account-save-notice{left:50%;bottom:calc(var(--footerH) + 14px);z-index:1900;border:1px solid rgba(var(--accentGold), .28);border-radius:var(--ui-radius-control);width:min(92vw,520px);color:var(--ui-accent-text);box-shadow:var(--ui-shadow-panel);text-align:center;background:#101215f0;padding:10px 12px;position:fixed;transform:translate(-50%)}.account-save-backdrop{z-index:3000}.account-save-conflict{width:min(92vw,520px)}.account-save-conflict p{margin-top:0}.account-save-choices{gap:10px;margin-top:14px;display:grid}.account-save-choices button{border-radius:var(--ui-radius-control);border:1px solid rgba(var(--accentGold), .28);background:var(--ui-surface-control);width:100%;color:var(--ui-text);cursor:pointer;text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:12px;display:grid}.account-save-choices button:hover{border-color:rgba(var(--accentGold), .68);background:var(--ui-surface-control-hover)}.account-save-choices button:disabled{cursor:not-allowed;opacity:.6}.account-save-choices button>span{min-width:0;color:var(--ui-text-muted);overflow-wrap:anywhere;font-size:12px}.account-save-choice-title{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;display:flex}.account-save-choice-title strong{color:var(--ui-text);font-size:14px}.account-save-choice-badge{background:rgba(var(--accentGold), .14);color:var(--ui-accent-text);text-transform:uppercase;border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:700}.options-section h3{margin:0 0 4px;font-size:16px}.options-section+.options-section{border-top:1px solid #ffffff14;margin-top:14px;padding-top:12px}.options-danger-zone{border-radius:var(--ui-radius-card);background:#5018181a;border:1px solid #dc585833;padding:12px}.options-confirm{background:#50181838;border:1px solid #dc58585c;border-radius:10px;margin:12px 0;padding:12px}.options-confirm strong{margin-bottom:4px;display:block}.options-confirm p{color:#ffffffc2;margin:0 0 10px;font-size:14px;line-height:1.45}.feedback-panel{gap:12px;display:grid}.feedback-field{gap:6px;display:grid}.feedback-field span,.feedback-check{color:var(--ui-text-muted);font-size:13px;font-weight:700}.feedback-field input,.feedback-field select,.feedback-field textarea{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-control);width:100%;color:var(--ui-text);font:inherit;background:#00000042}.feedback-field select option{color:#f2ead8;background:#101114}.feedback-field input,.feedback-field select{min-height:40px;padding:8px 10px}.feedback-field textarea{resize:vertical;min-height:132px;padding:10px;line-height:1.45}.feedback-field input:focus,.feedback-field select:focus,.feedback-field textarea:focus{border-color:rgba(var(--ui-accent-rgb), .8);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .18);outline:none}.feedback-check{align-items:flex-start;gap:9px;line-height:1.4;display:flex}.feedback-check input{accent-color:var(--ui-accent-text);margin-top:2px}.feedback-actions{flex-wrap:wrap;gap:8px;display:flex}.feedback-actions .tb-btn{text-decoration:none}.feedback-success,.feedback-error{border-radius:var(--ui-radius-card);margin:-2px 0 0;padding:9px 10px;font-size:13px;font-weight:700}.feedback-success{color:#d7ffe5;background:#5ad28c1a;border:1px solid #5ad28c59}.feedback-error{color:#ffd8d8;background:#dc58581a;border:1px solid #dc58585c}.feedback-help{color:var(--ui-text-muted);margin:-4px 0 0;font-size:13px;line-height:1.45}.feedback-preview{color:var(--ui-text-muted);border-top:1px solid #ffffff14;padding-top:10px}.feedback-preview summary{cursor:pointer;font-weight:700}.feedback-preview pre{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);max-height:180px;color:var(--ui-text-soft);white-space:pre-wrap;overflow-wrap:anywhere;background:#0000003d;margin:8px 0 0;padding:10px;overflow:auto}.map-image{border-radius:10px;width:100%;height:auto}.game-footer{height:var(--footerH);box-sizing:border-box;border-top:1px solid rgba(var(--ui-accent-rgb), .12);background:#08090be6;align-items:center;display:flex}.game-footer-inner{opacity:.7;width:100%;max-width:1200px;margin:0 auto;padding:0 16px;font-size:12px}.combat-card{width:min(92vw,640px)}.check-card{width:min(92vw,560px)}.check-prompt{color:var(--ui-text-soft);margin:0 0 14px;line-height:1.5}.check-roll-stage{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:var(--ui-surface-muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:8px 0 12px;padding:12px;display:grid}.check-roll-stage:before{content:none}.check-target,.check-bonus{gap:4px;min-width:0;display:grid}.check-bonus{text-align:right}.check-target span,.check-bonus span{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.check-target strong{color:var(--ui-accent-text);font-size:32px;line-height:1}.check-bonus strong{color:var(--ui-text);font-size:26px;line-height:1}.check-roll-button{min-width:112px}.check-result-total{color:var(--ui-text-soft);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.check-result-total span{font-weight:800}.check-result-total strong{font-size:22px}.check-result.is-success .check-result-total strong{color:#50d88d}.check-result.is-fail .check-result-total strong{color:#ff8b8b}.check-actions{margin-bottom:0}.check-shortcut{color:var(--ui-text-muted);font-size:13px}.combat-enemy-image{aspect-ratio:16/9;border:1px solid var(--ui-border-soft);background:#0000003d;border-radius:8px;width:100%;max-height:260px;margin-bottom:12px;overflow:hidden}.combat-enemy-image img{object-fit:cover;width:100%;height:100%;display:block}.combat-stats{gap:8px;margin-bottom:10px;display:grid}.cs-row{grid-template-columns:minmax(68px,96px) minmax(0,1fr) minmax(58px,auto);align-items:center;gap:8px;display:grid}.cs-label{opacity:.9;overflow-wrap:anywhere;min-width:0;font-weight:600}.cs-num{text-align:right;opacity:.9}.cs-bar{background:#ffffff14;border-radius:999px;height:10px;overflow:hidden}.cs-hp{background:linear-gradient(90deg,#36d399,#19c37d);height:100%}.cs-hp.enemy{background:linear-gradient(90deg,#ff6b6b,#ff4d4f)}.combat-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin:8px 0 12px;display:flex}.game-result-panel{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:var(--ui-surface-muted);margin-top:10px;padding:10px 12px}.combat-log{max-height:200px;overflow:auto}.combat-log ul{margin:0;padding-left:18px}.combat-log li{margin:4px 0}.challenge-card{width:min(92vw,620px)}.challenge-prompt{color:var(--ui-text-soft);margin:0 0 14px;line-height:1.55}.challenge-prompt p{margin:5px 0 0}.challenge-kicker{color:var(--ui-accent-text);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.challenge-choice-list{gap:10px;display:grid}.challenge-choice{border-radius:var(--ui-radius-card);border:1px solid var(--ui-border-soft);background:var(--ui-surface-muted);width:100%;color:var(--ui-text);cursor:pointer;text-align:left;gap:5px;padding:12px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s;display:grid}.challenge-choice:hover{border-color:var(--ui-border-accent);background:rgba(var(--ui-accent-rgb), .08);transform:translateY(-1px)}.challenge-choice:disabled{cursor:not-allowed;opacity:.65;transform:none}.challenge-choice.is-selected{border-color:rgba(var(--ui-accent-rgb), .7);background:rgba(var(--ui-accent-rgb), .12);box-shadow:0 0 18px rgba(var(--ui-accent-rgb), .08);opacity:1}.challenge-choice-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.challenge-choice-title{font-weight:700}.challenge-choice-badge{background:rgba(var(--ui-accent-rgb), .16);color:var(--ui-accent-text);text-transform:uppercase;border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:800}.challenge-choice-description{color:var(--ui-text-muted);line-height:1.45}.challenge-result{color:var(--ui-accent-text);gap:3px;margin-top:12px;display:grid}.challenge-result--success{color:#d7ffe5;background:#5ad28c1a;border-color:#5ad28c59}.challenge-result--fail{color:#ffd8d8;background:#dc58581a;border-color:#dc58585c}.sequence-progress{color:var(--ui-text-muted);justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.sequence-track{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;min-height:54px;margin-bottom:12px;padding:10px;display:grid}.sequence-slot{border:1px dashed var(--ui-border-soft);min-width:0;color:var(--ui-text-muted);background:#ffffff0a;border-radius:9px;align-items:center;gap:8px;padding:8px 9px;font-size:13px;font-weight:700;display:flex}.sequence-slot.is-filled{border-style:solid;border-color:rgba(var(--ui-accent-rgb), .35);background:rgba(var(--ui-accent-rgb), .1);color:var(--ui-accent-text)}.sequence-slot-index{width:22px;height:22px;color:inherit;background:#ffffff14;border-radius:999px;flex:none;place-items:center;font-size:12px;display:grid}.signal-stage{gap:10px;margin-bottom:12px;display:grid}.signal-round{gap:4px;display:grid}.signal-round span{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.signal-round strong{color:var(--ui-text);line-height:1.45}.signal-answer-track{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.signal-answer{border:1px dashed var(--ui-border-soft);min-width:0;min-height:42px;color:var(--ui-text-muted);background:#ffffff0a;border-radius:9px;align-items:center;gap:8px;padding:8px 9px;font-size:13px;font-weight:700;display:flex}.signal-answer.is-filled{border-style:solid;border-color:rgba(var(--ui-accent-rgb), .35);background:rgba(var(--ui-accent-rgb), .1);color:var(--ui-accent-text)}.signal-token-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.signal-token{min-height:76px}.tracking-status{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;font-weight:800;display:flex}.tracking-clue-image{aspect-ratio:16/8}.tracking-clue-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:10px}.tracking-clue-button{min-height:92px}.tracking-notes{gap:6px;margin:0 0 12px;display:grid}.tracking-notes p{color:var(--ui-text-soft);margin:0;line-height:1.45}.clue-assembly-image{aspect-ratio:16/7}.clue-assembly-status{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;font-weight:800;display:flex}.clue-assembly-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:10px}.clue-assembly-card{min-height:118px}.clue-assembly-picked{gap:4px;margin:0 0 12px;display:grid}.clue-assembly-picked span{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.clue-assembly-picked strong{color:var(--ui-accent-text);line-height:1.4}.timing-stage{gap:10px;margin-bottom:12px;display:grid}.timing-meter{border:1px solid var(--ui-border-soft);background:linear-gradient(90deg,#ffffff0d,#0000),#0000004d;border-radius:999px;height:22px;position:relative;overflow:hidden}.timing-zone{background:#5ad28c57;border-radius:999px;position:absolute;inset-block:3px;box-shadow:0 0 16px #5ad28c38}.timing-marker{background:var(--ui-accent-text);width:4px;height:100%;box-shadow:0 0 14px rgba(var(--ui-accent-rgb), .38);border-radius:999px;position:absolute;top:50%;transform:translate(-50%,-50%)}.timing-scale{color:var(--ui-text-muted);justify-content:space-between;gap:10px;font-size:12px;font-weight:700;display:flex}.timing-stop-button{min-width:112px}.dice-stage{gap:12px;margin-bottom:12px;display:grid}.dice-summary strong{color:var(--ui-accent-text)}.dice-duel-status{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:800;display:flex}.dice-duel-status strong{color:var(--ui-accent-text);letter-spacing:0;text-transform:none;font-size:14px}.dice-duel-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dice-hand{gap:6px;display:grid}.dice-hand>span{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.dice-tray{border:1px solid rgba(var(--ui-accent-rgb), .18);border-radius:var(--ui-radius-card);background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .12), transparent 55%), #00000038;grid-template-columns:repeat(auto-fit,minmax(48px,64px));justify-content:center;gap:10px;padding:12px;display:grid}.dice-face{aspect-ratio:1;border:1px solid var(--ui-border-soft);color:var(--ui-text-muted);background:linear-gradient(145deg,#ffffff1a,#0000),#0e0e0ee6;border-radius:8px;place-items:center;font-size:26px;font-weight:900;display:grid;box-shadow:inset 0 0 16px #00000059}.dice-face.is-rolled{border-color:rgba(var(--ui-accent-rgb), .55);background:linear-gradient(145deg, rgba(var(--ui-accent-rgb), .22), transparent), #1b1710f5;color:var(--ui-accent-text);box-shadow:inset 0 0 16px #00000061, 0 0 18px rgba(var(--ui-accent-rgb), .1)}.dice-round-note{color:var(--ui-text-soft);text-align:center;margin:0;font-weight:700}.trap-card{width:min(92vw,620px)}.trap-status{color:var(--ui-text-muted);justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.trap-feedback{min-height:24px;color:var(--ui-text-soft);text-align:center;margin:0 0 12px}.trap-card.is-correct .trap-feedback{color:var(--ui-accent-text)}.trap-card.is-mistake .trap-feedback{color:#e8b9b3}.trap-action-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.trap-action{min-height:76px}.state-puzzle-status{color:var(--ui-text-muted);justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.state-puzzle-help{color:var(--ui-text-muted);margin:0 0 12px;font-size:13px;line-height:1.45}.state-puzzle-clue-image{aspect-ratio:16/7;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:#0000003d;width:100%;margin-bottom:12px;overflow:hidden}.state-puzzle-clue-image img{object-fit:cover;width:100%;height:100%;display:block}.state-puzzle-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.state-puzzle-piece{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:var(--ui-surface-muted);min-height:122px;color:var(--ui-text);cursor:pointer;text-align:left;align-content:start;gap:7px;padding:12px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s;display:grid}.state-puzzle-piece:hover{border-color:var(--ui-border-accent);background:rgba(var(--ui-accent-rgb), .08);transform:translateY(-1px)}.state-puzzle-piece:focus{outline:none}.state-puzzle-piece:focus-visible{border-color:rgba(var(--ui-accent-rgb), .9);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .24), 0 0 20px rgba(var(--ui-accent-rgb), .16)}.state-puzzle-piece:disabled{cursor:not-allowed;opacity:.76;transform:none}.state-puzzle-piece-label{color:var(--ui-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.state-puzzle-state{border:1px solid rgba(var(--ui-accent-rgb), .32);background:rgba(var(--ui-accent-rgb), .1);min-height:34px;color:var(--ui-accent-text);border-radius:9px;justify-content:center;align-items:center;padding:7px 9px;font-size:15px;font-weight:800;display:inline-flex}.gesture-status{color:var(--ui-text-muted);justify-content:space-between;gap:16px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.gesture-timer{color:var(--ui-text-muted);text-transform:uppercase;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:10px;font-size:12px;font-weight:800;display:grid}.gesture-timer-track{border:1px solid var(--ui-border-soft);background:#ffffff0f;border-radius:999px;height:8px;overflow:hidden}.gesture-timer-track span{border-radius:inherit;background:var(--ui-accent-text);height:100%;box-shadow:0 0 10px rgba(var(--ui-accent-rgb), .26);transition:width .12s linear;display:block}.gesture-timer strong{min-width:28px;color:var(--ui-accent-text);text-align:right}.gesture-pad{aspect-ratio:16/9;touch-action:none;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);cursor:crosshair;background:#00000047;width:100%;display:block;overflow:hidden}.gesture-pad-bg{fill:#ffffff06}.gesture-guide{fill:none;stroke:rgba(var(--ui-accent-rgb), .28);stroke-dasharray:3 3;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px}.gesture-start{fill:var(--ui-accent-text);filter:drop-shadow(0 0 5px rgba(var(--ui-accent-rgb), .35))}.gesture-drawn{fill:none;stroke:var(--ui-accent-text);stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;filter:drop-shadow(0 0 7px rgba(var(--ui-accent-rgb), .28))}.gesture-score{color:var(--ui-text-muted);text-transform:uppercase;justify-content:space-between;gap:12px;margin:10px 0 0;font-size:12px;font-weight:800;display:flex}.gesture-score strong{color:var(--ui-accent-text)}.lockpick-card{width:min(92vw,560px)}.lockpick-status{color:var(--ui-text-muted);justify-content:space-between;gap:16px;font-size:12px;font-weight:700;display:flex}.lockpick-tension-status{margin-top:5px}.lockpick-track{justify-content:center;gap:8px;margin:12px auto 18px;display:flex}.lockpick-pin{border:1px solid var(--ui-border-soft);background:var(--ui-surface-muted);border-radius:2px;width:34px;height:7px;transition:background .16s,border-color .16s,box-shadow .16s}.lockpick-pin.is-set{border-color:rgba(var(--ui-accent-rgb), .72);background:var(--ui-accent-text);box-shadow:0 0 10px rgba(var(--ui-accent-rgb), .28)}.lockpick-cylinder{border:1px solid var(--ui-border-accent);background:radial-gradient(circle at 38% 32%, #ffffff14, transparent 35%), var(--ui-surface-muted);border-radius:50%;place-items:center;width:88px;height:88px;margin:0 auto;display:grid;box-shadow:inset 0 0 18px #00000080,0 8px 20px #00000047}.lockpick-keyway{background:#000000b8;border-radius:9px 9px 4px 4px;width:18px;height:38px;position:relative}.lockpick-keyway:after{content:"";background:inherit;border-radius:2px;width:30px;height:10px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.lockpick-feedback{min-height:24px;color:var(--ui-text-soft);text-align:center;margin:14px 0}.lockpick-card.is-correct .lockpick-feedback{color:var(--ui-accent-text)}.lockpick-card.is-mistake .lockpick-feedback{color:#e8b9b3}.lockpick-card.is-hint .lockpick-feedback,.lockpick-card.is-eased .lockpick-feedback{color:var(--ui-accent-text)}.lockpick-controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lockpick-direction{justify-content:center;align-items:center;gap:9px;min-height:48px;display:inline-flex}.lockpick-card.is-correct .lockpick-cylinder{animation:.18s ease-out lockpick-settle}.lockpick-card.is-mistake{animation:.18s ease-out lockpick-resist}@keyframes lockpick-settle{50%{border-color:var(--ui-accent-text);box-shadow:0 0 18px rgba(var(--ui-accent-rgb), .22)}}@keyframes lockpick-resist{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.lockpick-card.is-correct .lockpick-cylinder,.lockpick-card.is-mistake{animation:none}}.no-images .scene-media{display:none}input[type=range]{accent-color:#5aa7ff}.panel-closing,.modal-card.modal-closing{animation:.16s forwards dgbPopOut}@media (width<=520px){.modal-backdrop{align-items:center;padding:8px}.modal-card,.combat-card{width:100%;max-height:calc(100svh - 16px);padding:12px}.check-card{max-height:calc(100svh - 16px)}.check-card .modal-header{margin-top:0}.check-prompt{margin-bottom:10px}.check-roll-stage{gap:8px;padding:10px 14px}.combat-enemy-image{max-height:180px}.cs-row{grid-template-columns:1fr auto;gap:5px 8px}.cs-label{grid-column:1/-1}.combat-log{max-height:32svh}.dice-duel-status{flex-direction:column;align-items:flex-start;gap:4px}.dice-duel-board,.stat-grid{grid-template-columns:1fr}.options-actions>button{flex:170px}.account-save-choices button,.challenge-choice{min-height:48px}.account-save-choices button,.challenge-choice-topline{align-items:flex-start}.account-save-choices button{flex-direction:column}.account-save-notice{bottom:12px}.sequence-progress{flex-direction:column;gap:3px}.challenge-choice-badge{align-self:flex-start}.sequence-track{grid-template-columns:1fr}.sequence-slot{min-height:42px}.combat-actions .tb-btn{flex:110px}}@media (width<=520px) and (orientation:portrait){.check-card{width:min(100%,420px)}.check-roll-stage{text-align:center;grid-template-columns:1fr;justify-items:center}.check-bonus{text-align:center}.check-target strong{font-size:34px}.check-result-total{flex-direction:column;align-items:flex-start;gap:2px}}@media (height<=520px) and (orientation:landscape){.modal-backdrop{padding:6px}.modal-card,.combat-card{max-height:calc(100svh - 12px);padding:10px}.combat-enemy-image{max-height:120px;margin-bottom:8px}.combat-stats{gap:6px;margin-bottom:8px}.combat-actions{margin:6px 0 8px}.combat-log{max-height:28svh}.check-card{width:min(96vw,620px)}.check-roll-stage{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;max-width:520px;padding:8px 12px}.check-target strong{font-size:30px}.check-result{margin-top:6px;padding:8px 10px}}@media (hover:none) and (pointer:coarse){.challenge-choice:hover,.context-btn:hover,.option-button:hover,.tb-btn:hover{transform:none}}.dev-panel{z-index:10000;flex-direction:column;align-items:flex-end;gap:8px;width:min(320px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.dev-panel__toggle,.dev-panel button,.dev-panel select,.dev-panel input{font:inherit}.dev-panel__toggle{border:1px solid var(--ui-border-soft);color:var(--ui-text);cursor:pointer;background:#101215f0;border-radius:9px;padding:8px 12px;font-size:13px}.dev-panel__body{border:1px solid var(--ui-border-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0e11f5;border-radius:12px;width:100%;max-height:min(72vh,760px);padding:12px;overflow-y:auto;box-shadow:0 18px 44px #00000052}.dev-panel__section+.dev-panel__section{border-top:1px solid var(--ui-border-soft);margin-top:12px;padding-top:12px}.dev-panel__label{letter-spacing:.08em;text-transform:uppercase;color:var(--ui-accent);margin:0 0 6px;font-size:11px;font-weight:700}.dev-panel__meta{color:var(--ui-text-soft);flex-wrap:wrap;gap:10px;margin:6px 0 8px;font-size:13px;display:flex}.dev-panel__body strong{margin-bottom:6px;display:block}.dev-panel__body label{gap:6px;margin-top:8px;font-size:12px;display:grid}.dev-panel__body select,.dev-panel__body input{border:1px solid var(--ui-border-soft);background:var(--ui-surface-control-muted);width:100%;color:var(--ui-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:7px;margin-top:4px;padding:7px 9px;font-size:13px}.dev-panel__body select option{background:var(--ui-surface-solid);color:var(--ui-text)}.dev-panel__body button{border:1px solid var(--ui-border-soft);background:var(--ui-surface-control);color:var(--ui-text);cursor:pointer;border-radius:7px;margin-top:8px;padding:7px 9px;font-size:13px;line-height:1.2}.dev-panel__inline-action{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:8px;margin-top:8px;display:grid}.dev-panel__inline-action button,.dev-panel__inline-action input{margin-top:0}.dev-panel__inline-action button{padding:7px 9px}.dev-panel__body button.dev-panel__danger{color:#ffe4e4;background:linear-gradient(#4a1717,#341111);border-color:#e05c5c85}.dev-panel__body button.dev-panel__danger:hover{background:linear-gradient(#5b1c1c,#401313)}.dev-panel__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.dev-panel__flags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.dev-panel__suggest-wrap{position:relative}.dev-panel__suggestions{z-index:2;background:var(--ui-surface-solid);border:1px solid #d3b46e57;border-radius:8px;max-height:210px;padding:5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 28px #0000005c}.dev-panel__suggestions button{text-align:left;background:0 0;border-color:#0000;justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:0;padding:7px 8px;display:flex}.dev-panel__suggestions button:hover{background:#d3b46e1f}.dev-panel__suggestions span{color:#ffffff75;font-size:10px}.dev-panel .dev-flag{background:#d3b46e1f;border-color:#d3b46e52;margin-top:0;padding:6px 10px;font-size:12px}.dev-panel .dev-flag.is-active{color:#d8ffe8;background:#46aa7033;border-color:#46aa7085}.dev-panel .dev-flag:disabled{cursor:default;opacity:.8}.dev-panel__subhead{color:#ffffffb8;margin:10px 0 6px;font-size:12px;font-weight:700}.dev-panel__list{color:#ffffffd1;gap:4px;margin-bottom:8px;font-size:12px;display:grid}.dev-panel__flag-table{gap:6px;max-height:220px;padding-right:2px;display:grid;overflow:auto}.dev-panel__flag-row{grid-template-columns:52px 52px minmax(0,1fr);align-items:center;gap:6px;display:grid}.dev-panel__flag-row .dev-flag{padding:5px 6px}.dev-panel__flag-row span{overflow-wrap:anywhere;color:#ffffffe0;min-width:0;font-size:12px}.dev-panel__flag-row small{color:#ffffff7a;margin-top:1px;font-size:10px;display:block}.dev-panel__snapshot{color:#ffffffd1;white-space:pre-wrap;overflow-wrap:anywhere;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:8px;max-height:220px;margin:8px 0 0;padding:8px;font-size:11px;line-height:1.4;overflow:auto}.dev-panel__telemetry{gap:6px;max-height:240px;margin-top:8px;display:grid;overflow:auto}.dev-panel__telemetry-row{background:#ffffff0a;border:1px solid #ffffff14;border-radius:7px;gap:3px;padding:7px;display:grid}.dev-panel__telemetry-row strong{color:#f2f4f8;margin:0;font-size:12px}.dev-panel__telemetry-row span{color:#ffffff94;font-size:11px}.dev-panel__telemetry-row code{color:#ffffffc2;white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px}.character-content{grid-template-columns:minmax(190px,.75fr) minmax(210px,.8fr) minmax(340px,1.45fr);grid-template-areas:"health gear inventory""stats gear inventory";gap:14px 22px;padding:0;display:grid}.character-stat-card span,.character-gear-card span{color:var(--ui-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.character-section{gap:7px;display:grid}.character-section--health{grid-area:health}.character-section--stats{grid-area:stats}.character-section--gear{grid-area:gear}.character-section--inventory{grid-area:inventory;align-content:start;min-width:0}.character-section--inventory .inventory-content--scrollable{max-height:none;padding-right:0;overflow:visible}.character-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.character-section-heading h3{color:var(--ui-text);letter-spacing:.01em;margin:0;font-size:14px}.character-section-heading strong{color:var(--ui-accent-text)}.character-hp-bar{background:rgba(var(--ui-accent-rgb), .08);border-radius:999px;height:6px;overflow:hidden}.character-hp-bar span{border-radius:inherit;background:linear-gradient(90deg,#36d399,#19c37d);min-width:4px;height:100%;display:block}.character-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;display:grid}.character-stat-card,.character-gear-card{background:0 0;border:0;border-radius:0}.character-stat-card{border-bottom:1px solid rgba(var(--ui-accent-rgb), .12);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:1px 8px;padding:5px 0;display:grid}.character-stat-card strong{color:var(--ui-text);font-size:19px;line-height:1.1}.character-stat-card small,.character-gear-card small{color:var(--ui-text-muted);grid-column:1/-1;line-height:1.35}.character-equipment{gap:0;display:grid}.character-gear-card{border-bottom:1px solid rgba(var(--ui-accent-rgb), .12);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-height:48px;padding:5px 0;display:grid}.character-gear-card .item-icon-wrapper{margin:0}.character-gear-card .item-icon,.character-empty-icon{box-sizing:border-box;width:34px;height:34px}.character-gear-card strong{color:var(--ui-text);margin-top:1px;display:block}.character-empty-icon{border:1px dashed rgba(var(--ui-accent-rgb), .18);color:var(--ui-text-muted);background:0 0;border-radius:4px;place-items:center;font-weight:800;display:grid}@media (width<=820px){.character-content{grid-template-columns:minmax(0,1fr) minmax(220px,.9fr);grid-template-areas:"health gear""stats gear""inventory inventory"}}@media (width<=520px){.character-content{grid-template-columns:1fr;grid-template-areas:"health""stats""gear""inventory"}.character-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.item-icon-wrapper{margin:5px;display:inline-block;position:relative}.item-icon{cursor:pointer;border:1px solid #888;border-radius:4px;width:48px;height:48px}.item-icon--fallback{color:#f1e7cf;letter-spacing:0;background:linear-gradient(135deg,#e8d9b424,#74b5a424),#1f1b18;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.tooltip{visibility:hidden;color:#fff;text-align:left;z-index:1;opacity:0;background-color:#222;border-radius:6px;width:200px;padding:6px;font-size:12px;transition:opacity .2s;position:absolute;top:55px;left:0}.item-icon-wrapper:hover .tooltip{visibility:visible;opacity:1}.inventory-content{width:100%}.inventory-content--scrollable{scrollbar-width:thin;scrollbar-color:rgba(var(--ui-accent-rgb), .34) transparent;max-height:min(62vh,520px);padding-right:2px;overflow:hidden auto}.inventory-content--scrollable::-webkit-scrollbar{width:8px}.inventory-content--scrollable::-webkit-scrollbar-track{background:0 0}.inventory-content--scrollable::-webkit-scrollbar-thumb{background:rgba(var(--ui-accent-rgb), .34);border-radius:999px}.inventory-grid{grid-template-columns:repeat(auto-fill,50px);gap:6px;display:grid}.inventory-item-card{cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:50px;height:50px;padding:0;display:grid;position:relative}.inventory-item-card:hover .item-icon,.inventory-item-card:focus-visible .item-icon{border-color:rgba(var(--ui-accent-rgb), .42);box-shadow:0 0 0 1px rgba(var(--ui-accent-rgb), .28)}.inventory-item-card:focus-visible{outline:none}.inventory-item-card--equipped .item-icon{border-color:rgba(var(--ui-accent-rgb), .46);box-shadow:inset 0 0 0 2px rgba(var(--ui-accent-rgb), .18)}.inventory-item-card--selected .item-icon{border-color:rgba(var(--ui-accent-rgb), .42);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .28)}.inventory-item-card .item-icon-wrapper{margin:0}.inventory-item-card .item-icon{box-sizing:border-box;width:50px;height:50px}.inventory-quantity{color:#fff3cf;text-align:center;text-shadow:0 1px 2px #000;background:#0a0806d1;border:0;border-radius:3px;min-width:14px;padding:1px 3px;font-size:11px;font-weight:700;line-height:1.1;position:absolute;bottom:2px;right:2px}.inventory-equipped-marker{background:var(--ui-accent-text);width:8px;height:8px;box-shadow:0 0 10px rgba(var(--ui-accent-rgb), .8);border-radius:50%;position:absolute;top:5px;right:5px}.inventory-action-button{border:1px solid rgba(var(--ui-accent-rgb), .22);background:rgba(var(--ui-accent-rgb), .075);min-height:24px;color:var(--ui-text);cursor:pointer;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700;line-height:1}.inventory-action-button:hover{background:var(--ui-surface-control-hover)}.inventory-action-button:disabled,.inventory-action-button:disabled:hover{opacity:.45;cursor:not-allowed;background:rgba(var(--ui-accent-rgb), .04)}.inventory-action-button--quiet{color:var(--ui-text-muted);background:0 0}.inventory-action-button--quiet:hover{color:var(--ui-text)}.inventory-detail{border:1px solid rgba(var(--ui-accent-rgb), .18);border-radius:var(--ui-radius-card);background:radial-gradient(280px 120px at 0% 0%, rgba(var(--ui-accent-rgb), .08), transparent 72%), rgba(var(--ui-accent-rgb), .04);justify-content:space-between;align-items:center;gap:14px;margin-top:10px;padding:10px;display:flex}.inventory-detail-main{grid-template-columns:auto minmax(0,1fr);gap:10px;min-width:0;display:grid}.inventory-detail-main .item-icon-wrapper{margin:0}.inventory-detail-heading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inventory-detail-heading h3{color:var(--ui-text);margin:0;font-size:16px;line-height:1.2}.inventory-detail-heading span,.inventory-detail-bonuses span{min-height:20px;color:var(--ui-text-muted);background:rgba(var(--ui-accent-rgb), .085);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 7px;font-size:12px;font-weight:700;display:inline-flex}.inventory-detail p{color:var(--ui-text-soft);margin:6px 0 0;font-size:13px;line-height:1.4}.inventory-detail-bonuses{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.inventory-detail-bonuses span{color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .1)}.inventory-use-reason{color:var(--ui-text-muted);margin-top:7px;display:block}.inventory-detail-actions{flex:none;align-items:center;gap:8px;display:inline-flex}@media (width<=520px){.inventory-content--scrollable{max-height:calc(100svh - 120px)}.inventory-grid{grid-template-columns:repeat(auto-fill,50px)}.inventory-item-card{min-height:50px}.inventory-detail{flex-direction:column;align-items:stretch}.inventory-detail-actions,.inventory-detail-actions .inventory-action-button{width:100%}}.popup-overlay{background:var(--ui-backdrop);width:100%;height:100%;-webkit-backdrop-filter:var(--ui-backdrop-blur);backdrop-filter:var(--ui-backdrop-blur);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.popup-window{background:var(--ui-panel-texture), var(--ui-surface);border:1px solid var(--ui-border);border-radius:12px;flex-direction:column;align-items:center;max-width:90%;max-height:90%;padding:1.5rem;display:flex}.popup-image{object-fit:contain;border:1px solid var(--ui-border-soft);border-radius:8px;width:100%;max-height:400px;margin-bottom:1rem}.popup-close{background:var(--ui-surface-control-muted);color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;border-radius:6px;padding:.5rem 1.25rem;transition:background-color .2s}.popup-close:hover{background:var(--ui-surface-control-hover)}.shop-content{scrollbar-width:thin;scrollbar-color:rgba(var(--ui-accent-rgb), .34) transparent;max-height:min(68vh,560px);padding-right:4px;overflow:hidden auto}.shop-content::-webkit-scrollbar{width:8px}.shop-content::-webkit-scrollbar-track{background:0 0}.shop-content::-webkit-scrollbar-thumb{background:rgba(var(--ui-accent-rgb), .34);border-radius:999px}.shop-grid{gap:8px;margin-top:10px;display:grid}.shop-tabs{border:1px solid var(--ui-border-soft);background:rgba(var(--ui-accent-rgb), .04);border-radius:999px;gap:4px;margin-top:12px;padding:4px;display:inline-flex}.shop-tab{min-height:30px;color:var(--ui-text-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 14px;font-weight:800}.shop-tab:hover{color:var(--ui-text)}.shop-tab--active{color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .14)}.shop-item{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:rgba(var(--ui-accent-rgb), .045);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.shop-item--locked{opacity:.72;border-color:rgba(var(--ui-accent-rgb), .1)}.shop-item-main{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.shop-item-main .item-icon-wrapper{margin:0}.shop-item-copy{min-width:0}.shop-item-heading{justify-content:space-between;align-items:start;gap:10px;display:flex}.shop-item-heading strong{min-width:0;color:var(--ui-text);overflow-wrap:anywhere;font-size:16px;line-height:1.2}.shop-item p{margin:5px 0 0;font-size:13px;line-height:1.35}.shop-price{border:1px solid rgba(var(--ui-accent-rgb), .18);min-height:22px;color:var(--ui-accent-text);background:rgba(var(--ui-accent-rgb), .08);border-radius:999px;flex:none;align-items:center;gap:5px;padding:3px 8px;font-size:13px;font-weight:800;line-height:1;display:inline-flex}.shop-coin{width:9px;height:9px;box-shadow:0 0 8px rgba(var(--ui-accent-rgb), .45);background:radial-gradient(circle at 35% 30%,#fff1ba,#d59a2a 58%,#6f4311);border-radius:50%}.shop-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.shop-tags span{min-height:20px;color:var(--ui-text-muted);background:rgba(var(--ui-accent-rgb), .085);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 7px;font-size:12px;font-weight:700;display:inline-flex}.shop-action{border:1px solid rgba(var(--ui-accent-rgb), .22);background:rgba(var(--ui-accent-rgb), .075);min-height:30px;color:var(--ui-text);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:700}.shop-action:hover{background:var(--ui-surface-control-hover)}.shop-action:disabled,.shop-action:disabled:hover{opacity:.6;cursor:not-allowed;background:rgba(var(--ui-accent-rgb), .04)}.shop-empty{border:1px dashed rgba(var(--ui-accent-rgb), .18);border-radius:var(--ui-radius-card);color:var(--ui-text-muted);background:rgba(var(--ui-accent-rgb), .03);margin:0;padding:16px}.muted{opacity:.75}@media (width<=520px){.shop-content{max-height:calc(100svh - 120px)}.shop-tabs{grid-template-columns:1fr 1fr;display:grid}.shop-item{grid-template-columns:1fr;align-items:stretch}.shop-action{width:100%}}.scene-art{aspect-ratio:16/9;border-radius:12px;width:100%;overflow:hidden}.scene-art__img{width:100%;height:100%;display:block}.scene-art__fallback{color:#f0e2c2;text-align:center;background:linear-gradient(135deg,#dabe7829,#5a969124),#171513;place-items:center;width:100%;height:100%;padding:24px;display:grid}.scene-art__fallback span{max-width:36ch;font-size:16px;font-weight:700}.scene-art--cover .scene-art__img{object-fit:cover;object-position:center}.scene-art--contain .scene-art__img{object-fit:contain;background:#00000040}.scene-art--top .scene-art__img{object-position:top}.scene-art--center .scene-art__img{object-position:center}.scene-art--bottom .scene-art__img{object-position:bottom}@media (width<=768px){.scene-art{aspect-ratio:4/3}}.landing-page{background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .12), transparent 42%), #080604;min-height:100vh;color:var(--ui-text);flex-direction:column;display:flex;overflow:hidden}.landing-content-wrapper{flex:1;display:flex}.landing-split{flex:1;display:flex;position:relative;overflow:hidden}.landing-half{cursor:pointer;background-position:50%;background-size:cover;border:none;flex:1;margin:0;padding:0;position:relative;overflow:hidden;transform:translateZ(0)}.landing-half--left{background-image:url(/dark_fantasy.png)}.landing-half--right{background-image:url(/cozy_tales.png)}.landing-half-overlay{background:radial-gradient(circle at 50% 40%,#281c1014,#070503c7),linear-gradient(#18120c14,#070503ad);transition:opacity .22s,filter .22s;position:absolute;inset:0}.landing-half-text{text-align:left;z-index:1;max-width:520px;position:absolute;bottom:14%;left:10%}.landing-half-text h1{letter-spacing:.5px;color:var(--ui-text);text-shadow:0 0 18px rgba(var(--ui-accent-rgb), .22);margin:.35rem 0 .45rem;font-size:2.6rem}.landing-half-text p{opacity:.92;margin:0;font-size:1rem}.landing-badge{border:1px solid rgba(var(--ui-accent-rgb), .44);color:var(--ui-accent-text);letter-spacing:.4px;background:#16100a94;border-radius:999px;padding:.25rem .55rem;font-size:.8rem;display:inline-block}.landing-badge--warn{border-color:rgba(var(--ui-accent-rgb), .68);color:var(--ui-accent-text)}.landing-badge--unavailable{color:var(--ui-text-soft);letter-spacing:.08em;text-transform:uppercase;background:#08090bc7;border-color:#e8ecf157;padding:.38rem .72rem;font-weight:800}.landing-coming-soon,.landing-cta-text{color:var(--ui-accent-text);margin-top:.65rem;font-size:.88rem;font-weight:700;display:inline-block}.landing-half--disabled{cursor:default;filter:saturate(.55)brightness(.68)}.landing-half--disabled .landing-half-overlay{background:linear-gradient(#08090b33,#08090bcc),#08090b47}.landing-half--disabled .landing-coming-soon{color:var(--ui-text-soft)}.landing-half:not(:disabled):hover{background-size:108%}.landing-half:not(:disabled):hover .landing-half-overlay{opacity:.75;filter:contrast(1.05)}.landing-half:focus-visible{outline:2px solid rgba(var(--ui-accent-rgb), .86);outline-offset:-2px;box-shadow:inset 0 0 0 3px rgba(var(--ui-accent-rgb), .2)}.landing-fracture{pointer-events:none;justify-content:center;display:flex;position:absolute;inset:0}.landing-fracture-svg{opacity:.95;width:120px;height:100%;filter:drop-shadow(0 0 18px rgba(var(--ui-accent-rgb), .34))}.fracture-glow{fill:none;stroke:rgba(var(--ui-accent-rgb), .42);stroke-width:10px;stroke-linecap:round;stroke-linejoin:round;opacity:.55}.fracture-line{fill:none;stroke:#f4d69ee0;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.fracture-shard{fill:none;stroke:rgba(var(--ui-accent-rgb), .48);stroke-width:2px;stroke-linecap:round;opacity:.9}@media (width<=768px){.landing-split{flex-direction:column}.landing-half-text{max-width:85%;bottom:16%;left:8%}.landing-half-text h1{font-size:2.1rem}.landing-fracture{align-items:center}.landing-fracture-svg{opacity:.6;width:min(72vw,360px);height:26px;filter:drop-shadow(0 0 10px rgba(var(--ui-accent-rgb), .22));transform:none}.fracture-glow{stroke-width:18px;opacity:.22}.fracture-line{stroke-width:5px;stroke-dasharray:24 18;opacity:.5}.fracture-shard{display:none}}.feedback-page{background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .1), transparent 38%), var(--ui-bg);min-height:100vh;color:var(--ui-text);flex-direction:column;display:flex}.feedback-page__main{flex:1;gap:24px;width:min(920px,100vw - 32px);margin:0 auto;padding:56px 0 64px;display:grid}.feedback-page__intro{gap:10px;display:grid}.feedback-page__kicker{color:var(--ui-accent-text);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.feedback-page__intro h1{margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.feedback-page__intro p{max-width:760px;color:var(--ui-text-soft);margin:0;font-size:18px;line-height:1.65}.feedback-page__panel{gap:14px;display:grid}.feedback-page__field{gap:6px;display:grid}.feedback-page__field span{color:var(--ui-text-muted);font-size:13px;font-weight:800}.feedback-page__field input,.feedback-page__field select,.feedback-page__field textarea{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-control);width:100%;color:var(--ui-text);font:inherit;background:#00000042}.feedback-page__field select option{color:#f2ead8;background:#101114}.feedback-page__field input,.feedback-page__field select{min-height:42px;padding:8px 10px}.feedback-page__field textarea{resize:vertical;min-height:160px;padding:10px;line-height:1.5}.feedback-page__field input:focus,.feedback-page__field select:focus,.feedback-page__field textarea:focus{border-color:rgba(var(--ui-accent-rgb), .8);box-shadow:0 0 0 2px rgba(var(--ui-accent-rgb), .18);outline:none}.feedback-page__actions{flex-wrap:wrap;gap:10px;display:flex}.feedback-page__button{border:1px solid var(--ui-border);border-radius:var(--ui-radius-control);background:var(--ui-surface-control);min-height:40px;color:var(--ui-text);cursor:pointer;font:inherit;justify-content:center;align-items:center;padding:8px 12px;font-weight:800;text-decoration:none;display:inline-flex}.feedback-page__button:hover{border-color:rgba(var(--ui-accent-rgb), .75);background:var(--ui-surface-control-hover)}.feedback-page__button:disabled{opacity:.55;cursor:not-allowed}.feedback-page__button--primary{border-color:rgba(var(--ui-accent-rgb), .42);background:rgba(var(--ui-accent-rgb), .1);color:var(--ui-accent-text)}.feedback-page__status{color:var(--ui-text-muted);margin:0}.feedback-page__success,.feedback-page__error{border-radius:var(--ui-radius-card);margin:-2px 0 0;padding:10px 12px;font-size:14px;font-weight:700}.feedback-page__success{color:#d7ffe5;background:#5ad28c1a;border:1px solid #5ad28c59}.feedback-page__error{color:#ffd8d8;background:#dc58581a;border:1px solid #dc58585c}.feedback-page__help{color:var(--ui-text-muted);margin:-4px 0 0;font-size:14px;line-height:1.5}.feedback-page__preview{border-top:1px solid var(--ui-border-soft);color:var(--ui-text-muted);padding-top:12px}.feedback-page__preview summary{cursor:pointer;font-weight:800}.feedback-page__preview pre{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);max-height:220px;color:var(--ui-text-soft);white-space:pre-wrap;overflow-wrap:anywhere;background:#0000003d;margin:8px 0 0;padding:12px;overflow:auto}@media (width<=640px){.feedback-page__main{padding:36px 0 48px}}.legal-page{background:radial-gradient(circle at 50% 0%, rgba(var(--ui-accent-rgb), .1), transparent 38%), var(--ui-bg);min-height:100vh;color:var(--ui-text);flex-direction:column;display:flex}.legal-main{flex:1;width:min(920px,100vw - 32px);margin:0 auto;padding:56px 0 64px}.legal-document{gap:18px;display:grid}.legal-kicker{color:var(--ui-accent-text);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.legal-document h1{color:var(--ui-text);margin:0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.legal-updated{color:var(--ui-text-muted);margin:0;font-size:14px;font-weight:700}.legal-intro{max-width:760px;color:var(--ui-text-soft);margin:0 0 10px;font-size:18px;line-height:1.65}.legal-document section{border-top:1px solid var(--ui-border-soft);padding-top:18px}.legal-document h2{color:var(--ui-text);margin:0 0 8px;font-size:20px}.legal-document p{color:var(--ui-text-soft);margin:0 0 10px;line-height:1.7}.legal-note{border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-card);background:var(--ui-surface-muted);padding:12px 14px}@media (width<=640px){.legal-main{padding:36px 0 48px}}.unlock-toast{--toast-accent-rgb:var(--ui-accent-rgb);--toast-accent-text:var(--ui-accent-text);--toast-bg-top:#101620f0;--toast-bg-bottom:#080c12f0;--toast-icon-bg:#0b0f16c7;--toast-shine-a:rgba(var(--ui-accent-rgb), .14);--toast-shine-b:#ffffff0f;opacity:0;pointer-events:none;z-index:9999;transition:opacity .22s,transform .22s;position:fixed;top:18px;left:50%;transform:translate(-50%)translateY(-18px)}.unlock-toast.is-visible{opacity:1;transform:translate(-50%)translateY(0)}.unlock-toast__frame{background:linear-gradient(180deg, var(--toast-bg-top), var(--toast-bg-bottom));border:1px solid rgba(var(--toast-accent-rgb), .35);border-radius:12px;align-items:center;gap:12px;min-width:320px;max-width:720px;padding:10px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000008c,inset 0 0 0 1px #00000059}.unlock-toast--generic{--toast-accent-rgb:116, 138, 166;--toast-accent-text:#dbe7f7f0;--toast-bg-top:#0f141df0;--toast-bg-bottom:#080c12f0;--toast-icon-bg:#0d121bc2;--toast-shine-a:#748aa621;--toast-shine-b:#ffffff0a}.unlock-toast--achievement{--toast-accent-rgb:var(--ui-accent-rgb);--toast-accent-text:var(--ui-accent-text);--toast-bg-top:#181613f5;--toast-bg-bottom:#0a0c10f2;--toast-icon-bg:#221b0fc7;--toast-shine-a:rgba(var(--ui-accent-rgb), .24);--toast-shine-b:#fff4d612}.unlock-toast--bestiary{--toast-accent-rgb:117, 149, 175;--toast-accent-text:#d8e6f4fa;--toast-bg-top:#11171cf0;--toast-bg-bottom:#0a0e12f0;--toast-icon-bg:#0e1318c7;--toast-shine-a:#7595af33;--toast-shine-b:#e1eefa0d}.unlock-toast--artifact,.unlock-toast--lore{--toast-accent-rgb:105, 170, 166;--toast-accent-text:#d2f1ecf5;--toast-bg-top:#0c171bf0;--toast-bg-bottom:#080d12f0;--toast-icon-bg:#0b1415cc;--toast-shine-a:#69aaa62e;--toast-shine-b:#d4fff40d}.unlock-toast--item{--toast-accent-rgb:142, 157, 176;--toast-accent-text:#e0e8f2f0;--toast-bg-top:#0f141cf0;--toast-bg-bottom:#080c12f0;--toast-icon-bg:#0d1118c7;--toast-shine-a:#8e9db01f;--toast-shine-b:#ffffff0a}.unlock-toast__icon-wrap{border:1px solid rgba(var(--toast-accent-rgb), .35);background:var(--toast-icon-bg);width:42px;height:42px;box-shadow:0 0 18px rgba(var(--toast-accent-rgb), .18);border-radius:10px;flex:0 0 42px;place-items:center;display:grid}.unlock-toast__icon{object-fit:contain;filter:drop-shadow(0 2px 6px #0009);width:28px;height:28px}.unlock-toast__icon-wrap--fallback{color:var(--toast-accent-text);letter-spacing:.02em;font-size:12px;font-weight:800}.unlock-toast__text{flex-direction:column;gap:2px;min-width:0;display:flex}.unlock-toast__title{letter-spacing:.06em;text-transform:uppercase;color:var(--toast-accent-text);font-size:12px}.unlock-toast__subtitle{color:#f5f5f5f2;white-space:nowrap;text-overflow:ellipsis;max-width:620px;font-size:15px;font-weight:600;overflow:hidden}.unlock-toast__shine{background:radial-gradient(circle at 20% 30%, var(--toast-shine-a), transparent 40%), radial-gradient(circle at 80% 70%, var(--toast-shine-b), transparent 45%);opacity:.8;pointer-events:none;animation:1.8s ease-in-out infinite unlockToastPulse;position:absolute;inset:-40px -80px}@keyframes unlockToastPulse{0%,to{opacity:.65;transform:translateY(0)}50%{opacity:.95;transform:translateY(2px)}}@media (width<=520px){.unlock-toast{width:min(100% - 20px,420px);top:10px;bottom:auto;transform:translate(-50%)translateY(-14px)}.unlock-toast.is-visible{transform:translate(-50%)translateY(0)}.unlock-toast__frame{border-radius:10px;gap:10px;width:100%;min-width:0;padding:9px 11px}.unlock-toast__icon-wrap{flex-basis:34px;width:34px;height:34px}.unlock-toast__icon{width:23px;height:23px}.unlock-toast__title{font-size:11px}.unlock-toast__subtitle{max-width:none;font-size:13px}}
