@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-vietnamese-500-normal-GOH_-EGq.woff2) format("woff2"),url(/assets/fraunces-vietnamese-500-normal-B-KbxExq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-ext-500-normal-Z5DV8IzT.woff2) format("woff2"),url(/assets/fraunces-latin-ext-500-normal-BMcFk1Xs.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2) format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2) format("woff2"),url(/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2) format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=dark]{--bg: #121317;--surface-1: #17191E;--surface-2: #1A1C21;--surface-3: #1F2229;--border: #2A2D35;--border-strong: #3A3E48;--ink: #ECE8DF;--ink-bright: #F4F0E6;--ink-muted: #9AA0AC;--ink-faint: #5A606C;--accent: #E0A458;--accent-hover: #F0BF7E;--accent-tint: #2A2418;--on-accent: #1A1300;--success: #8FD4AE;--success-tint: #1F3A2E;--danger: #F2A8A0;--danger-tint: #2B1A1A;--danger-border: #5A2E2E;--secret: #B7B0E0;--secret-tint: #1C1B26;--secret-border: #5C5680;--ambient: #6FB7B0;--info: #9EC3E0;--info-tint: #1F2A33;--coin-gold: #D9B45A;--coin-silver: #B8BEC8;--coin-copper: #C98A63}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-2xl: 14px;--radius-pill: 999px;--touch-target: 44px;--header-h: 64px;--footer-audio-h: 84px;--panel-scenes-w: 300px;--panel-chat-w: 360px;--font-display: Fraunces, Georgia, serif;--font-sans: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}.display-xl{font-family:var(--font-display);font-size:48px;line-height:1.1;font-weight:600}.display-lg{font-family:var(--font-display);font-size:34px;line-height:1.15;font-weight:600}.display-md{font-family:var(--font-display);font-size:28px;line-height:1.2;font-weight:600}.heading{font-family:var(--font-display);font-size:20px;line-height:1.3;font-weight:600}.title{font-family:var(--font-sans);font-size:15px;line-height:1.4;font-weight:600}.body-lg{font-family:var(--font-sans);font-size:16px;line-height:1.65;font-weight:400}.body{font-family:var(--font-sans);font-size:14px;line-height:1.5;font-weight:400}.caption{font-family:var(--font-sans);font-size:12px;line-height:1.4;font-weight:400}.label-caps{font-family:var(--font-sans);font-size:11px;line-height:1.3;font-weight:600;letter-spacing:1px}.mono{font-family:var(--font-mono);font-size:13px;line-height:1.4;font-weight:500}.ljdr-root{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:14px;line-height:1.5}.ljdr-btn{box-sizing:border-box;height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-strong);background:transparent;color:var(--ink);font:500 14px/1 var(--font-sans);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer}.ljdr-btn:hover{background:var(--surface-3)}.ljdr-btn:focus-visible,.ljdr-chip:focus-visible,.ljdr-tab:focus-visible,.ljdr-stat:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ljdr-btn--lg{height:var(--touch-target)}.ljdr-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.ljdr-btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.ljdr-btn--danger{background:var(--danger-tint);border-color:var(--danger-border);color:var(--danger)}.ljdr-btn--danger:hover{background:var(--danger-tint);filter:brightness(1.15)}.ljdr-btn--icon{width:var(--touch-target);height:var(--touch-target);padding:0}.ljdr-btn svg{width:18px;height:18px}.ljdr-chip{box-sizing:border-box;height:36px;padding:0 14px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:transparent;color:var(--ink);font:400 13px/1 var(--font-sans);cursor:pointer}.ljdr-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-tint);color:var(--accent);font-weight:600}.ljdr-field{display:flex;flex-direction:column;gap:6px}.ljdr-field__label{font-size:13px;color:var(--ink-muted)}.ljdr-input{box-sizing:border-box;height:var(--touch-target);padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--bg);color:var(--ink);font:400 14px var(--font-sans)}.ljdr-input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.ljdr-input--mono{font-family:var(--font-mono)}.ljdr-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border)}.ljdr-tab{height:var(--touch-target);padding:0 18px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--ink-muted);font:400 14px var(--font-sans);cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2)}.ljdr-tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--ink);font-weight:600}.ljdr-count{min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;border-radius:10px;background:var(--accent);color:var(--on-accent);font:600 12px/20px var(--font-sans);text-align:center}.ljdr-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-5)}.ljdr-caps{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--ink-muted)}.ljdr-gauge{height:8px;border-radius:4px;background:var(--border);overflow:hidden}.ljdr-gauge>span{display:block;height:100%;border-radius:inherit;background:var(--success)}.ljdr-gauge--xp>span,.ljdr-gauge--music>span{background:var(--accent)}.ljdr-gauge--ambient>span{background:var(--ambient)}.ljdr-gauge--thin{height:4px;border-radius:2px}.ljdr-roll{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-3);border:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.ljdr-roll__meta{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-muted)}.ljdr-roll__formula,.ljdr-roll__detail{font-family:var(--font-mono)}.ljdr-roll__line{display:flex;align-items:baseline;gap:10px}.ljdr-roll__detail{font-size:13px;color:var(--ink-muted)}.ljdr-roll__total{font-family:var(--font-display);font-size:28px;font-weight:600;color:var(--ink)}.ljdr-roll__tag{font-size:12px}.ljdr-roll--crit .ljdr-roll__total,.ljdr-roll--crit .ljdr-roll__tag{color:var(--success)}.ljdr-roll--fumble .ljdr-roll__total,.ljdr-roll--fumble .ljdr-roll__tag{color:var(--danger)}.ljdr-roll--secret{background:var(--secret-tint);border:1px dashed var(--secret-border)}.ljdr-roll--secret .ljdr-roll__meta{color:var(--secret)}.ljdr-stat{box-sizing:border-box;min-height:56px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;font-family:var(--font-sans)}.ljdr-stat__name{font-size:11px;color:var(--ink-muted);font-weight:600;letter-spacing:.5px}.ljdr-stat__mod{font-size:16px;font-weight:600}.ljdr-stat__score{font-family:var(--font-mono);font-size:13px;color:var(--ink-muted)}.ljdr-stat--lg .ljdr-stat__mod{font-family:var(--font-display);font-size:30px}.ljdr-stat[aria-pressed=true]{border-color:var(--accent);background:var(--accent-tint)}.ljdr-stat[aria-pressed=true] .ljdr-stat__name{color:var(--accent)}.ljdr-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-pill);font:500 12px/1.4 var(--font-sans);background:var(--border);color:var(--ink)}.ljdr-badge--bank{background:var(--info-tint);color:var(--info)}.ljdr-badge--gm{background:var(--accent-tint);color:var(--accent)}.ljdr-badge--live{background:var(--success-tint);color:var(--success);padding:6px 12px;font-size:13px}.ljdr-badge--live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success)}.ljdr-badge--secret{background:var(--secret-tint);color:var(--secret)}.ljdr-secret{padding:14px var(--space-4);border-radius:var(--radius-lg);border:1px dashed var(--secret-border);background:var(--secret-tint);display:flex;flex-direction:column;gap:6px}.ljdr-secret__label{font-size:12px;font-weight:600;letter-spacing:.5px;color:var(--secret);display:flex;align-items:center;gap:var(--space-2)}.ljdr-secret__body{font-size:15px;color:var(--ink)}html,body,#root{height:100%;margin:0}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:calc(var(--space-1) / 2) solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:var(--ink-muted)}::-webkit-scrollbar-corner{background:transparent}body{background:var(--bg)}input[type=range]{appearance:none;-webkit-appearance:none;background:transparent;height:var(--space-6);margin:0;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:var(--space-1);border-radius:var(--radius-pill);background:linear-gradient(to right,var(--accent) var(--fill, 0%),var(--surface-3) var(--fill, 0%))}input[type=range]::-moz-range-track{height:var(--space-1);border-radius:var(--radius-pill);background:var(--surface-3)}input[type=range]::-moz-range-progress{height:var(--space-1);border-radius:var(--radius-pill);background:var(--accent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--space-4);height:var(--space-4);margin-top:calc((var(--space-1) - var(--space-4)) / 2);border-radius:50%;background:var(--ink-bright);border:2px solid var(--accent)}input[type=range]::-moz-range-thumb{width:var(--space-3);height:var(--space-3);border-radius:50%;background:var(--ink-bright);border:2px solid var(--accent)}input[type=range]:hover::-webkit-slider-thumb{background:var(--accent-hover)}input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}a{color:var(--accent)}a:hover{color:var(--accent-hover)}a.ljdr-btn{text-decoration:none;color:var(--ink)}a.ljdr-btn--primary,a.ljdr-btn--primary:hover{color:var(--on-accent)}.ljdr-btn:disabled{opacity:.5;cursor:not-allowed}select.ljdr-input{cursor:pointer}.app-shell{min-height:100%;display:flex;flex-direction:column}.app-center{padding:var(--space-8);text-align:center}.app-header{height:var(--header-h);padding:0 var(--space-6);display:flex;align-items:center;gap:var(--space-6);border-bottom:1px solid var(--border);background:var(--surface-1);flex-shrink:0}.app-logo{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--ink);text-decoration:none}a.app-logo:hover{color:var(--ink)}.app-logo__accent{color:var(--accent)}.app-divider{width:1px;align-self:stretch;margin:var(--space-4) 0;background:var(--border)}.app-page{width:100%;max-width:calc(var(--panel-chat-w) * 3);margin:0 auto;padding:var(--space-8)}.app-narrow{max-width:calc(var(--panel-chat-w) * 1.5);margin:0 auto}.app-stack{display:flex;flex-direction:column;gap:var(--space-4)}.app-stack--tight{gap:var(--space-1)}.app-stack--loose{gap:var(--space-8)}.app-row{display:flex;align-items:center;gap:var(--space-2)}.app-row--between{justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.app-grow{flex-grow:1;min-width:0}.app-muted{color:var(--ink-muted)}.app-link-plain{color:var(--ink);text-decoration:none}.app-link-plain:hover{color:var(--accent-hover)}.app-form-row{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.app-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--panel-chat-w)),1fr));gap:var(--space-6);align-items:start}.app-list{display:flex;flex-direction:column;gap:var(--space-2)}.app-list-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.app-list-row:last-child{border-bottom:none}.app-table-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.app-avatar{width:34px;height:34px;border-radius:50%;background:var(--surface-3);color:var(--ink);border:2px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0;object-fit:cover}.app-avatar--online{border-color:var(--success)}.app-alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--danger-border);background:var(--danger-tint);color:var(--danger)}.app-login{min-height:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.app-login__card{width:100%;max-width:calc(var(--panel-chat-w) * 1.2)}.app-room{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-room__body{flex-grow:1;min-height:0;display:flex}.app-room__center{flex-grow:1;min-width:0;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.app-stage{flex-grow:1;min-height:0;border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--surface-1);display:flex;align-items:center;justify-content:center;padding:var(--space-6);text-align:center;position:relative;overflow:hidden}.app-panel{flex-shrink:0;background:var(--surface-1);display:flex;flex-direction:column;min-height:0}.app-panel--scenes{width:var(--panel-scenes-w);border-right:1px solid var(--border)}.app-panel--chat{width:var(--panel-chat-w);border-left:1px solid var(--border)}.app-panel__title{padding:var(--space-5) var(--space-5) var(--space-3)}.app-panel__pad{padding:0 var(--space-5)}.app-chat{flex-grow:1;min-height:0;display:flex;flex-direction:column}.app-chat__list{flex-grow:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.app-chat__composer{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-3)}.app-message-text{overflow-wrap:anywhere;white-space:pre-wrap}.app-select-compact{flex-grow:1;min-width:0}.app-dice-row{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-1)}.app-dice-row .ljdr-chip{padding:0}.app-mono{font-family:var(--font-mono)}.app-wrap{flex-wrap:wrap}.app-full{width:100%}.app-error{color:var(--danger)}.ljdr-roll__line{flex-wrap:wrap}.app-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app-panel__head{padding:var(--space-5) var(--space-5) var(--space-3)}.app-panel__foot{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.app-scene-list{padding:0 var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;min-height:0}.app-scene-item{display:flex;align-items:center;gap:var(--space-1);border-radius:var(--radius-lg);border:1px solid transparent}.app-scene-item--live{background:var(--accent-tint);border-color:var(--accent)}.app-scene-item--drag{opacity:.5}.app-scene-item__grip{color:var(--ink-muted);cursor:grab;display:flex}.app-scene-item__main{flex-grow:1;min-width:0;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border:none;background:transparent;color:var(--ink);text-align:left;cursor:pointer;border-radius:var(--radius-lg);font:inherit}.app-scene-item__main:hover{background:var(--surface-3)}.app-scene-item--live .app-scene-item__main:hover{background:transparent}.app-scene-item__main:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-scene-item__thumb{width:72px;height:var(--touch-target);border-radius:var(--radius-sm);background:var(--surface-3);flex-shrink:0;object-fit:cover}.app-scene-item__title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-scene-item--live .app-scene-item__title{font-weight:600}.app-scene-item__edit{border-color:transparent;color:var(--ink-muted)}.app-accent{color:var(--accent)}.app-stage--scene{padding:0}.app-stage--black{background:var(--bg)}.app-stage--preview{flex-grow:0;aspect-ratio:16 / 9}.app-scene{position:absolute;inset:0;margin:0;animation:app-fade .4s ease-out}.app-scene__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.app-scene__caption{position:absolute;left:var(--space-6);right:var(--space-6);bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-1);text-align:left;color:var(--ink-bright)}.app-scene__title{color:var(--ink-bright)}.app-scene__img+.app-scene__caption{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg) 72%,transparent);width:fit-content;max-width:calc(100% - 2 * var(--space-6))}.app-scene__badge{position:absolute;top:var(--space-4);left:var(--space-4)}@keyframes app-fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.app-scene{animation:none}}.app-player-stage{flex-grow:1;min-height:0;display:flex;flex-direction:column}.app-player-stage--full{background:var(--bg)}.app-player-stage--full .app-stage{border:none;border-radius:0}.app-float{position:absolute;z-index:2}.app-float.ljdr-btn,.app-float .ljdr-btn{background:var(--bg)}.app-float--tr{top:var(--space-4);right:var(--space-4)}.app-float--tc{top:var(--space-4);left:50%;transform:translate(-50%)}.app-float--br{bottom:var(--space-4);right:var(--space-4)}.app-float-roll{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--bg);border:1px solid var(--border)}.app-float-chat{right:var(--space-4);bottom:calc(var(--touch-target) + var(--space-6));width:var(--panel-chat-w);height:60%;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface-1);display:flex;flex-direction:column;overflow:hidden}.app-kbd{font:500 11px var(--font-mono);padding:2px var(--space-1);border-radius:var(--radius-sm);border:1px solid var(--border-strong);color:var(--ink-muted)}.app-badge-host{position:relative}.app-badge-dot{position:absolute;top:calc(-1 * var(--space-1));right:calc(-1 * var(--space-1))}.app-dialog{width:min(100% - 2 * var(--space-8),calc(var(--panel-chat-w) * 2.6));max-height:calc(100vh - 2 * var(--space-8));padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface-2);color:var(--ink)}.app-dialog::backdrop{background:color-mix(in srgb,var(--bg) 80%,transparent)}.app-dialog__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--panel-scenes-w)),1fr));gap:var(--space-6)}.app-fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.app-textarea{height:auto;min-height:calc(var(--touch-target) * 2);padding:var(--space-3);resize:vertical;font-family:var(--font-sans)}.app-file-btn{width:fit-content}.app-file-btn:focus-within{outline:2px solid var(--accent);outline-offset:2px}.app-thumb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);max-height:calc(var(--touch-target) * 4);overflow-y:auto}.app-thumb{aspect-ratio:16 / 10;padding:0;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink-muted);overflow:hidden;cursor:pointer;font:400 12px var(--font-sans)}.app-thumb img{width:100%;height:100%;object-fit:cover;display:block}.app-thumb[aria-pressed=true]{border:2px solid var(--accent)}.app-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-range{display:flex;flex-direction:column;gap:var(--space-1)}.app-range input{accent-color:var(--accent);min-height:var(--touch-target)}.app-nav{display:flex;gap:var(--space-1)}.app-nav__link{height:40px;padding:0 var(--space-3);display:inline-flex;align-items:center;border-radius:var(--radius-md);color:var(--ink-muted);text-decoration:none;font-size:14px}.app-nav__link:hover{color:var(--ink);background:var(--surface-3)}.app-nav__link--active{color:var(--ink);background:var(--surface-3);font-weight:600}.app-nav__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-panel--share{width:var(--panel-chat-w);border-left:1px solid var(--border);overflow-y:auto}.app-panel__body{padding:var(--space-5)}.app-scroll{overflow-y:auto}.app-doc-editor{width:100%;max-width:calc(var(--panel-chat-w) * 2);margin:0 auto}.app-doc-item{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);min-height:var(--touch-target);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.app-doc-item:hover{background:var(--surface-3)}.app-doc-item--active{background:var(--accent-tint);border-color:var(--accent)}.app-doc-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-doc-item__icon{color:var(--ink-muted);display:flex}.app-doc-image{max-width:100%;max-height:60vh;border-radius:var(--radius-lg);object-fit:contain;align-self:flex-start}.app-block{display:flex;flex-direction:column;gap:var(--space-2)}.app-input-display{font-family:var(--font-display);font-size:20px;font-weight:600}.app-btn-sm{height:32px;padding:0 var(--space-2);font-size:13px}.app-btn-secret{border-style:dashed;border-color:var(--secret-border);color:var(--secret)}.app-check-row{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-target);cursor:pointer}.app-check-row input{width:18px;height:18px;accent-color:var(--accent)}.app-hr{border:none;border-top:1px solid var(--border);margin:0;width:100%}.app-success{color:var(--success)}.app-fit{width:fit-content;align-self:flex-start}.app-rich{display:flex;flex-direction:column;gap:var(--space-3)}.app-menu-host{position:relative}.app-menu{position:absolute;right:0;top:calc(100% + var(--space-1));z-index:5;min-width:calc(var(--panel-scenes-w) * .7);padding:var(--space-1);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-2);display:flex;flex-direction:column}.app-menu__item{width:100%;display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--ink);cursor:pointer;font:inherit;text-align:left}.app-menu__item:hover,.app-menu__item:focus-visible{background:var(--surface-3);outline:none}.app-toast{position:fixed;top:calc(var(--header-h) + var(--space-4));left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-lg);border:1px dashed var(--secret-border);background:var(--secret-tint);color:var(--ink)}.app-audio-bar{height:var(--footer-audio-h);flex-shrink:0;padding:0 var(--space-6);display:flex;align-items:center;gap:var(--space-6);border-top:1px solid var(--border);background:var(--surface-1)}.app-audio-channel{width:calc(var(--panel-chat-w) * 1.1);display:flex;align-items:center;gap:var(--space-2)}.app-ambient{color:var(--ambient)}.app-nowrap{white-space:nowrap;flex-wrap:nowrap}.app-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.app-btn-quiet{border-color:transparent;color:var(--ink-muted)}.app-btn-quiet[aria-pressed=true]{color:var(--accent)}.app-volume{width:calc(var(--space-8) * 3)}.app-menu-host--up .app-menu{top:auto;bottom:calc(100% + var(--space-1))}.app-gate{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg) 85%,transparent)}.app-gate__card{max-width:calc(var(--panel-chat-w) * 1.2);text-align:center;align-items:center}.app-dialog--wide{width:min(100% - 2 * var(--space-8),calc(var(--panel-chat-w) * 3))}.app-lib{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:var(--space-6);align-items:start}.app-lib__files{max-height:calc(var(--touch-target) * 8);overflow-y:auto}.app-track{min-height:var(--touch-target);border-bottom:1px solid var(--border)}.app-sheet-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(var(--panel-chat-w) * 1.05)),1fr));gap:var(--space-5);align-items:start}.app-sheet-section--stats,.app-sheet-section--wide{grid-column:1 / -1}.app-sheet-section,.app-sheet-grid>*{min-width:0}.app-sheet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--panel-scenes-w) * .55),1fr));gap:var(--space-4);align-items:end}.app-span-2{grid-column:span 2}.app-span-full{grid-column:1 / -1}.app-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--panel-scenes-w) * .45),1fr));gap:var(--space-3)}.app-stat{display:flex;flex-direction:column;gap:var(--space-1)}.app-stat .ljdr-stat{min-height:calc(var(--touch-target) * 2.2)}.app-stat__input{height:32px;text-align:center}.ljdr-stat:disabled{cursor:default}.app-list-lines{display:flex;flex-direction:column}.app-list-line{display:flex;align-items:center;gap:var(--space-1);border-bottom:1px solid var(--border)}.app-list-line:last-child{border-bottom:none}.app-mark{width:32px;height:32px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--accent);cursor:pointer;font-size:14px}.app-mark:disabled{cursor:default;color:var(--ink-muted)}.app-mark:not(:disabled):hover{background:var(--surface-3)}.app-list-line__main{flex-grow:1;min-height:40px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.app-list-line__main:hover:not(:disabled){background:var(--surface-3)}.app-list-line__main:disabled{cursor:default}.app-list-line__value{font-family:var(--font-mono);font-weight:500}.app-mark:focus-visible,.app-list-line__main:focus-visible,.app-value--roll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-value{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-3);border:1px solid var(--border);color:var(--ink);text-align:left;font:inherit}.app-value--roll{cursor:pointer;border-color:var(--border-strong)}.app-value--roll:hover{border-color:var(--accent)}.app-gauge-field{display:flex;flex-direction:column;gap:var(--space-2)}.app-gauge-field__num{align-items:baseline}.app-gauge-input{width:calc(var(--space-8) * 2.5);height:40px;font-size:20px}.app-table{width:100%;border-collapse:collapse}.app-table th{text-align:left;font-size:12px;font-weight:500;color:var(--ink-muted);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border)}.app-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border);vertical-align:middle}.app-table-wrap{max-width:100%;overflow-x:auto}.app-cell{height:36px;width:100%;min-width:calc(var(--space-8) * 1.5)}.app-cell-roll{flex-wrap:wrap;gap:var(--space-1)}.app-cell-roll>.app-cell{flex:1 1 calc(var(--space-8) * 2)}.app-sheet-hero{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap}.app-portrait{width:calc(var(--touch-target) * 2.5);height:calc(var(--touch-target) * 2.5);border-radius:var(--radius-xl);background:var(--surface-3);border:1px solid var(--border);object-fit:cover;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--ink-muted);overflow:hidden}.app-portrait--sm{width:56px;height:56px;border-radius:var(--radius-lg)}.app-xp{width:calc(var(--panel-chat-w) * .9)}.app-pill{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:calc(var(--touch-target) * 1.8);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-3);border:1px solid var(--border);gap:2px}.app-name-input{font-family:var(--font-display);font-size:34px;font-weight:600;background:transparent;border:1px solid transparent;color:var(--ink);border-radius:var(--radius-md);padding:0 var(--space-2);margin-left:calc(-1 * var(--space-2));width:100%;max-width:calc(var(--panel-chat-w) * 1.6)}.app-name-input:hover{border-color:var(--border)}.app-name-input:focus{outline:2px solid var(--accent)}.app-mini{padding:var(--space-4);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-3)}.app-mini__stats{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-1)}.app-mini__stats .ljdr-stat{min-height:48px;padding:0}.app-quick{display:flex;flex-wrap:wrap;gap:var(--space-1)}.app-quick .ljdr-chip{height:32px;font-size:12px}.app-char-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.app-page--wide{max-width:calc(var(--panel-chat-w) * 3.6)}.app-select-inline{width:auto;height:40px}.app-check-pill{cursor:pointer}.app-check-pill input{width:20px;height:20px;accent-color:var(--accent)}.app-pre{white-space:pre-line}.app-formula{position:relative}.app-formula__list{left:0;right:auto;top:calc(var(--touch-target) + var(--space-6));max-height:calc(var(--touch-target) * 6);overflow-y:auto}.app-menu__item--active{background:var(--surface-3)}.app-block-btn{width:100%;min-height:40px;padding:0 var(--space-3);display:flex;align-items:center;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--ink);cursor:grab;font:inherit;text-align:left}.app-block-btn:hover{border-color:var(--accent)}.app-block-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-ed-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface-1)}.app-ed-section--active{border-color:var(--accent)}.app-ed-section__title{border:none;background:transparent;cursor:pointer;padding:var(--space-1) 0}.app-ed-section__title:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-ed-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--panel-scenes-w) * .6),1fr));gap:var(--space-2)}.app-ed-items--list{grid-template-columns:1fr 1fr}.app-ed-item{width:100%;min-height:var(--touch-target);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink);cursor:grab;font:inherit;text-align:left}.app-ed-item--active{border-color:var(--accent);background:var(--accent-tint)}.app-ed-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-ed-drop{padding:var(--space-3);border-radius:var(--radius-md);border:1px dashed var(--border-strong);color:var(--ink-muted);text-align:center;font-size:13px}.app-num{width:calc(var(--space-8) * 2)}.app-inventory{display:grid;grid-template-columns:minmax(0,1fr) var(--panel-chat-w);gap:var(--space-6);align-items:start}@media(max-width:1100px){.app-inventory{grid-template-columns:1fr}}.app-coins{align-items:stretch}.app-coin{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-2);border:1px solid var(--border)}.app-coin input{width:calc(var(--space-8) * 2.5);height:36px}.app-coin--gold label{color:var(--coin-gold)}.app-coin--silver label{color:var(--coin-silver)}.app-coin--copper label{color:var(--coin-copper)}.app-load{min-width:calc(var(--panel-scenes-w) * .8);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-2);border:1px solid var(--border);justify-content:center}.app-inv-pending td{opacity:.75}.app-secret-text{color:var(--secret)}.app-bank-results{max-height:calc(var(--touch-target) * 7);overflow-y:auto}.app-checkbox{width:20px;height:20px;accent-color:var(--accent)}.app-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(var(--panel-scenes-w) * .9)),1fr));gap:var(--space-5)}.app-plan{min-height:calc(var(--touch-target) * 6)}.app-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--panel-scenes-w) * .6),1fr));gap:var(--space-4)}.app-footer{display:flex;gap:var(--space-5);justify-content:center;flex-wrap:wrap;padding:var(--space-6);border-top:1px solid var(--border);font-size:13px}.app-footer a{color:var(--ink-muted)}.app-footer a:hover{color:var(--ink)}.app-login{flex-direction:column;gap:var(--space-6)}.app-sheet-dialog{width:min(100% - 2 * var(--space-6),calc(var(--panel-chat-w) * 3.8));height:calc(100vh - 2 * var(--space-6));max-height:none;padding:0;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--bg);color:var(--ink);overflow:hidden}.app-sheet-dialog::backdrop{background:color-mix(in srgb,var(--bg) 70%,transparent)}.app-sheet-embedded{height:100%;display:flex;flex-direction:column}.app-sheet-embedded>main{flex-grow:1;overflow-y:auto;overflow-x:hidden}.app-folder{border-top:1px solid var(--border);padding-top:var(--space-2)}.app-folder>summary{cursor:pointer;min-height:40px;display:flex;align-items:center;gap:var(--space-2);list-style:none}.app-folder>summary::-webkit-details-marker{display:none}.app-folder>summary:before{content:"▸";color:var(--ink-muted)}.app-folder[open]>summary:before{content:"▾"}.app-folder>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-folder-input{width:calc(var(--space-8) * 4.5);height:36px}.app-link-btn{border:none;background:transparent;padding:0;text-align:left;cursor:pointer;font:inherit}.app-icon{display:inline-block;flex-shrink:0;width:var(--space-6);height:var(--space-6);background-color:currentColor;-webkit-mask:var(--icon-url) center / contain no-repeat;mask:var(--icon-url) center / contain no-repeat;vertical-align:middle}.app-icon--sm{width:var(--space-4);height:var(--space-4)}.app-icon--lg{width:var(--space-8);height:var(--space-8)}.app-icon--xl{width:calc(var(--space-8) * 2);height:calc(var(--space-8) * 2)}.app-icon-slot{display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.app-icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-target);min-height:var(--touch-target);padding:0;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--accent);cursor:pointer}.app-icon-btn:hover{border-color:var(--border-strong);background:var(--surface-3);color:var(--accent-hover)}.app-icon-btn:focus-visible,.app-icon-choice:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-icon-dialog{text-align:left;width:min(100% - 2 * var(--space-6),calc(var(--panel-chat-w) * 2.4));max-height:calc(100vh - 2 * var(--space-6));padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface-1);color:var(--ink);overflow-y:auto}.app-icon-dialog::backdrop{background:color-mix(in srgb,var(--bg) 70%,transparent)}.app-icon-current{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--touch-target) * 1.2);height:calc(var(--touch-target) * 1.2);border-radius:var(--radius-lg);background:var(--surface-3);color:var(--accent)}.app-icon-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--touch-target) * 1.3),1fr));gap:var(--space-2)}.app-icon-choice{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-2);color:var(--ink);cursor:pointer}.app-icon-choice:hover{border-color:var(--border-strong);color:var(--accent-hover)}.app-icon-choice[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-tint);color:var(--accent)}.app-table td.app-cell-icon{width:var(--touch-target);padding-left:0;padding-right:0;text-align:center}.app-portrait--icon{color:var(--accent)}.app-chip-icon,.app-quick .ljdr-chip{display:inline-flex;align-items:center;gap:var(--space-1)}.app-bank-group+.app-bank-group{margin-top:var(--space-4)}
