@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-greek.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}:root{--accent: #8a5cf5;--accent-hover: #7645e0;--accent-tint: color-mix(in srgb, #8a5cf5 12%, white);--accent-on-tint: color-mix(in srgb, #8a5cf5 78%, black);--page-bg: oklch(.98 .003 264);--sidebar-bg: oklch(.99 .002 264);--surface: oklch(1 0 0);--text: oklch(.18 .006 264);--text-body: oklch(.22 .006 264);--text-muted: oklch(.55 .008 264);--text-rolling: oklch(.7 .006 264);--border: oklch(.88 .008 264);--border-strong: oklch(.9 .008 264);--hover-bg: oklch(.96 .006 264);--cell-plate: oklch(.96 .006 264);--hover-bg-strong: oklch(.94 .01 264);--ink: oklch(.25 .006 264);--ink-muted: oklch(.3 .006 264);--ink-soft: oklch(.4 .008 264);--switch-track: oklch(.85 .008 264);--shadow-card: 0 1px 3px oklch(.2 .02 264 / .06);--shadow-popover: 0 8px 24px oklch(.2 .02 264 / .12);--sidebar-width: 240px;--term-bg: #f2f2f6;--term-bar: #e9e9ef;--term-line: #d8d8e1;--term-text: #26262e;--term-dim: #7b7b86;--term-accent: #6d43d8;--art-ink: #ffffff;--art-dark: #0b0b12;--node-row: #e0e0e8;--node-row-shadow: inset 0 1px 2px rgb(24 24 48 / .1);--node-row-text: #33333c;--node-row-dim: #7b7b86;--node-field: #ffffff;--node-field-border: #cfcfda;--node-cb-border: #b9b9c6;--node-wired: #e9defe;--node-wired-text: #5c34c4;--node-wired-strong: #47209f;--node-pin-text: #6b41cf;--node-pin-border: #c9b8ec;color-scheme:light}:root[data-theme=dark]{--page-bg: #000000;--sidebar-bg: #080808;--surface: #080808;--text: #ededed;--text-body: #dcdcdc;--text-muted: #8b8b93;--text-rolling: #5c5c63;--border: #1c1c1c;--border-strong: #2a2a2a;--hover-bg: oklch(.25 .006 264);--cell-plate: #171717;--hover-bg-strong: oklch(.31 .008 264);--ink: #ededed;--ink-muted: #cfcfd3;--ink-soft: #a6a6ac;--switch-track: oklch(.38 .006 264);--accent-tint: color-mix(in srgb, #8a5cf5 26%, #000);--accent-on-tint: color-mix(in srgb, #8a5cf5 48%, white);--shadow-card: 0 1px 3px rgba(0, 0, 0, .5);--shadow-popover: 0 8px 24px rgba(0, 0, 0, .65);--term-bg: #0e0e12;--term-bar: #16161c;--term-line: #212129;--term-text: #e2e2ea;--term-dim: #83838f;--term-accent: #b79bfa;--art-ink: #f2f2f5;--node-row: #09090d;--node-row-shadow: inset 0 1px 3px rgb(0 0 0 / .55);--node-row-text: #cfcfd6;--node-row-dim: #83838f;--node-field: #17171d;--node-field-border: #212129;--node-cb-border: #3a3a45;--node-wired: #1c1330;--node-wired-text: #c9b3fb;--node-wired-strong: #e3d5ff;--node-pin-text: #7d5fc9;--node-pin-border: #3a2f5e;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--page-bg);font-family:JetBrains Mono,monospace;font-weight:500;color:var(--text-body)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.app{display:flex;height:100vh;height:100dvh;width:100%;overflow:hidden;position:relative}.topbar{display:none}@media(min-width:768px){.stack-view-switch.stack-view-switch,.generator-stack--canvas .stack-dock .dock-cell .stack-view-switch,.sidebar-settings.sidebar-settings,.sidebar-logo-row.sidebar-logo-row{display:none}.topbar{position:fixed;top:0;left:0;right:0;height:var(--topbar-h);z-index:40;display:flex;align-items:center;gap:10px;padding-right:12px;background:var(--bar-bg);color:var(--bar-muted);border-bottom:1px solid var(--bar-line)}.app{padding-top:var(--topbar-h)}}:root{--topbar-h: 46px;--bar-bg: oklch(.938 .009 264);--bar-text: var(--text);--bar-muted: oklch(.44 .01 264);--bar-line: var(--border-strong);--bar-hover: rgba(0, 0, 0, .06);--bar-on-bg: var(--accent-tint);--bar-on-text: var(--accent-on-tint);--bar-accent: var(--accent)}:root[data-theme=dark]{--bar-bg: #111111;--bar-text: #f2f2f2;--bar-muted: #a8a8a8;--bar-line: #2e2e2e;--bar-hover: rgba(255, 255, 255, .09);--bar-on-bg: color-mix(in srgb, var(--accent) 30%, transparent);--bar-on-text: #ffffff;--bar-accent: color-mix(in srgb, var(--accent) 45%, #ffffff)}.topbar-mark{width:var(--sidebar-width-resized, var(--sidebar-width));flex-shrink:0;height:100%;display:flex;align-items:center;gap:9px;padding:0 12px 0 21px;border:0;border-right:1px solid var(--bar-line);background:none;font-family:inherit;color:var(--bar-text);cursor:pointer;text-align:left}.topbar-mark:hover .topbar-word{color:var(--bar-accent)}.topbar-logo{width:22px;height:22px;border-radius:5px;flex-shrink:0}.topbar-word{font-size:13px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-spacer{flex:1;min-width:8px}.topbar-sep{width:1px;height:20px;background:var(--bar-line);flex-shrink:0}.topbar-seg{margin-left:14px;display:flex;height:30px;border:1px solid var(--bar-line);border-radius:7px;overflow:hidden;flex-shrink:0}@media(min-width:1360px){.topbar-seg{position:absolute;left:50%;transform:translate(-50%);margin-left:0}}.topbar-seg-btn{font-family:inherit;font-size:11.5px;padding:0 11px;height:100%;border:0;border-right:1px solid var(--bar-line);background:transparent;color:var(--bar-muted);cursor:pointer}.topbar-seg-btn:last-child{border-right:0}.topbar-seg-btn:hover:not(:disabled){background:var(--bar-hover);color:var(--bar-text)}.topbar-seg-btn--on{background:var(--bar-on-bg);color:var(--bar-on-text);font-weight:700}.topbar-seg-btn:disabled{opacity:.4;cursor:not-allowed}.topbar-btn{font-family:inherit;font-size:11.5px;height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--bar-muted);cursor:pointer;white-space:nowrap}.topbar-btn:hover{background:var(--bar-hover);color:var(--bar-text)}.topbar-btn--on{background:var(--bar-on-bg);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--bar-on-text)}.topbar-btn--icon{padding:0 8px;gap:4px}.topbar-cog{width:21px;height:21px;flex-shrink:0}.topbar-glyph{font-size:12px;line-height:1;font-variant-emoji:text}.topbar-caret{font-size:9px;opacity:.7}.topbar-count{font-size:10px;font-weight:700;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center}.topbar-theme{display:inline-flex;align-items:center;gap:7px;margin-left:4px;flex-shrink:0;color:var(--bar-muted)}.topbar-theme .topbar-glyph{font-size:15px;line-height:1;transition:opacity .14s ease,color .14s ease}.topbar-pole{opacity:.34}.topbar-pole--on{opacity:1;color:var(--bar-text)}html.anims-off .topbar-theme .topbar-glyph{transition:none}@media(prefers-reduced-motion:reduce){.topbar-theme .topbar-glyph{transition:none}}.topbar-pop{position:absolute;top:calc(var(--topbar-h) - 4px);right:12px;width:340px;max-height:min(60vh,460px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;overscroll-behavior:contain;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-popover);padding:8px;z-index:41}.topbar-pop--fav{right:min(300px,calc(100% - 360px))}.topbar-pop--hist{right:min(196px,calc(100% - 360px))}.topbar-pop--note{right:min(104px,calc(100% - 360px))}.topbar-pop::-webkit-scrollbar{width:6px}.topbar-pop::-webkit-scrollbar-track{background:transparent}.topbar-pop::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.topbar-pop::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.topbar-pop--set{width:auto;padding:0;border:0;background:none;box-shadow:none;overflow:visible}.topbar-pop--set .popover{position:static}.topbar-pop-head{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 8px}.history-panel-subhead{padding:8px 6px 4px;border-top:1px solid var(--border);margin-top:4px}.history-panel-subhead:first-child{border-top:0;margin-top:0}.topbar-pop--note .notepad-textarea{width:100%}.hamburger{position:fixed;top:calc(16px + env(safe-area-inset-top,0px));left:16px;z-index:10;display:flex;align-items:center;justify-content:center;background:var(--page-bg);border:none;border-radius:12px;cursor:pointer;padding:12px 10px;font-family:inherit}.hamburger--history{left:auto;right:16px}.scrim{position:fixed;top:env(safe-area-inset-top,0px);bottom:env(safe-area-inset-bottom,0px);left:0;right:0;background:#fff9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:15;border:none;padding:0;opacity:0;pointer-events:none;transition:opacity .2s ease}.scrim--open{opacity:1;pointer-events:auto}:root[data-theme=dark] .scrim{background:#ffffff24}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;background:var(--sidebar-bg);border-right:1px solid var(--border-strong);padding:calc(21px + env(safe-area-inset-top,0px)) 13px calc(21px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:21px;position:relative;left:0;top:0;z-index:20;transform:translate(0);transition:transform .25s ease}.sidebar-logo-row{display:flex;align-items:center;gap:13px;padding:0 6px;background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left}.sidebar-logo-row img{width:26px;height:26px;object-fit:contain;display:block}.sidebar-title{font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--text)}.sidebar-section{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.sidebar-section-header{display:flex;flex-direction:column;gap:5px;flex-shrink:0}.sidebar-category-list{display:flex;flex-direction:column;flex:1;gap:5px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:oklch(.85 .008 264) transparent;overscroll-behavior:contain}.sidebar-category-list::-webkit-scrollbar{width:6px}.sidebar-related{display:flex;flex-direction:column;gap:5px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.sidebar-related-label{font-size:10px;letter-spacing:.12em;color:#6f7276;padding:0 2px;margin-bottom:2px}.sidebar-category-list::-webkit-scrollbar-track{background:transparent}.sidebar-category-list::-webkit-scrollbar-thumb{background:#cbced3;border-radius:3px}.sidebar-category-list::-webkit-scrollbar-thumb:hover{background:#a2a5aa}.eyebrow{font-size:10px;letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase}.sidebar-section-header>.eyebrow{padding:0 8px}.sidebar-search-wrap{position:relative;width:100%}.sidebar-search{width:100%;padding:8px 13px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--ink);font-family:inherit;font-weight:500;font-size:12px;outline:none}.sidebar-search-wrap .sidebar-search{padding-right:28px}.sidebar-search-clear{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:15px;line-height:1;cursor:pointer;padding:0}.sidebar-search-clear:hover{background:#dbdee3;color:var(--text)}.sidebar-search:focus{border-color:var(--accent)}.category-group{display:flex;flex-direction:column;min-width:0}.category-group-header{display:flex;align-items:center;gap:5px;padding:8px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.category-group-title{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.category-group-chevron{font-size:12px;line-height:1;color:var(--text-muted);transform:rotate(0);transition:transform .15s ease;flex-shrink:0}.category-group-chevron--open{transform:rotate(90deg)}.category-group-items{display:flex;flex-direction:column;gap:2px;margin:2px 0 6px 15px;padding-left:9px;border-left:1px solid var(--border);min-width:0}.vslide{display:grid;grid-template-rows:0fr;overflow:hidden;visibility:hidden;transition:grid-template-rows .28s ease,margin .28s ease,visibility 0s linear .28s}.vslide--open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .28s ease,margin .28s ease}.vslide--settled{overflow:visible}.vslide>*{min-height:0}.generator-block-slide{width:100%}.category-collapse{margin:0}.category-collapse--open{margin:2px 0 6px}.category-collapse>.category-group-items{margin-top:0;margin-bottom:0}.category-section{display:flex;flex-direction:column;margin-bottom:4px}.category-section-header{display:flex;align-items:center;gap:5px;padding:8px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.category-section-title{font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text)}.category-section-slide{margin:0 0 0 15px}.category-section-slide--open{margin:2px 0 6px 15px}.category-section-groups{display:flex;flex-direction:column;gap:5px;margin:0;padding-left:9px;border-left:1px solid var(--border);min-width:0}.category{display:flex;align-items:center;justify-content:space-between;gap:2px;padding:0 6px 0 10px;border-radius:6px}.category-main{flex:1;min-width:0;padding:8px 0;border:none;background:transparent;font-family:inherit;color:inherit;text-align:left;cursor:pointer}.category--soon .category-main{cursor:default}.category-label{display:flex;align-items:center;gap:5px;min-width:0}.category-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category--active{cursor:pointer;background:var(--accent-tint);color:var(--accent-on-tint)}.category--active .category-name{font-weight:700}.category--soon{cursor:default;color:#8d8f94}.category--soon .category-name{font-weight:500}.category--enabled{cursor:pointer;color:var(--ink-muted)}.category--enabled:hover{background:var(--hover-bg)}.category--enabled .category-name{font-weight:500}.soon-badge{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#7e8085;border:1px solid var(--border);border-radius:4px;padding:2px 5px}.category-add-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex-shrink:0;border:none;background:transparent;padding:0;border-radius:4px;cursor:pointer;font-family:inherit}.category-add-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.category-add-glyph{font-size:14px;line-height:1;font-weight:700;color:#b5b7bd;transition:color .15s ease,transform .1s ease}.category-add-btn:hover:not(:disabled) .category-add-glyph{color:var(--accent);transform:scale(1.15)}.category-add-btn:disabled{cursor:default}.category-add-btn:disabled .category-add-glyph{opacity:.4}.category-add-btn--in .category-add-glyph{color:var(--accent);font-size:12px}.category-add-btn--empty{pointer-events:none}.category-add-btn:hover .favorite-tooltip{opacity:1}.category-favorite-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex-shrink:0;border:none;background:transparent;padding:0;border-radius:4px;cursor:pointer}.category-favorite-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.favorite-btn.header-favorite{position:absolute;right:0;bottom:-25px;width:26px;height:26px;display:flex;align-items:center;justify-content:center}.header-favorite .favorite-heart{font-size:17.6px}.header-back{position:absolute;left:0;bottom:-25px;display:inline-flex;align-items:center;gap:3px;height:26px;padding:0 6px;max-width:calc(100% - 48px);border-radius:6px;font-size:12px;line-height:1;color:var(--text-muted);text-decoration:none;white-space:nowrap;overflow:hidden}.header-back:hover{color:var(--accent);background:var(--hover-bg)}.header-back-label{overflow:hidden;text-overflow:ellipsis}.header-back-chevron{font-size:15px;line-height:1;margin-top:-1px}.generator-block:not(.generator-block--lone) .header-back{bottom:-18px}.generator-block:not(.generator-block--lone) .header-favorite{bottom:-18px}.favorite-btn{position:relative;border:none;background:transparent;padding:0;cursor:pointer;font-family:inherit;font-size:inherit}.favorite-heart{font-size:13px;line-height:1;color:#b5b7bd;transition:color .15s ease,transform .1s ease}.favorite-btn:hover .favorite-heart{color:var(--accent);transform:scale(1.15)}.favorite-btn--active .favorite-heart{color:var(--accent)}.favorite-tooltip{position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:#151619;color:#fff;font-size:10px;font-weight:600;letter-spacing:.02em;padding:4px 8px;border-radius:5px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:30}.category-favorite-btn:hover .favorite-tooltip{opacity:1}.category-remove-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex-shrink:0;border:none;background:transparent;padding:0;border-radius:4px;cursor:pointer;color:#b5b7bd}.category-remove-glyph{font-size:15px;line-height:1}.category-remove-btn:hover{color:var(--ink-muted);background:var(--hover-bg-strong)}.category-remove-btn:hover .favorite-tooltip{opacity:1}.sidebar-footer{margin-top:auto;display:flex;align-items:center;gap:6px;padding:0 8px}.footer-link{font-size:11px;color:var(--text-muted);background:transparent;border:none;padding:0;cursor:pointer;font-family:inherit}.sidebar-ad{width:100%;max-height:90px;flex-shrink:0;overflow:hidden}.sidebar-collapse-all-btn{display:flex;align-items:center;gap:6px;width:100%;padding:4px 8px;border:none;border-radius:6px;background:transparent;color:var(--accent);font-size:11.5px;font-weight:500;font-family:inherit;cursor:pointer;flex-shrink:0}.sidebar-collapse-all-btn--idle{visibility:hidden}.sidebar-collapse-all-btn .sidebar-settings-icon{width:12px;height:12px}.sidebar-collapse-all-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.sidebar-settings{position:relative;flex-shrink:0}.sidebar-settings-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer}.sidebar-settings-btn:hover{background:var(--hover-bg);color:var(--text)}.sidebar-settings-icon{width:16px;height:16px;flex-shrink:0}.settings-popover.popover{top:auto;bottom:calc(100% + 8px);left:0;right:auto;width:250px;z-index:40;overscroll-behavior:contain}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-row+.settings-row{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.settings-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-row-label{font-size:13px;font-weight:600;color:var(--text)}.settings-row-hint{font-size:11px;color:var(--text-muted);line-height:1.4}.settings-row--stacked{flex-direction:column;align-items:stretch;gap:8px}.settings-row--stacked .settings-row-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.settings-row-value{font-size:12px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.settings-slider{width:100%;accent-color:var(--accent);cursor:pointer}.settings-reset-btn{align-self:flex-start;padding:6px 12px;font:inherit;font-size:12px;font-weight:600;color:var(--ink-muted);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;cursor:pointer}.settings-reset-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-on-tint);background:var(--accent-tint)}.settings-reset-btn:disabled{opacity:.55;cursor:default}.settings-switch{flex-shrink:0;width:36px;height:21px;border-radius:999px;border:none;background:var(--switch-track);padding:2px;cursor:pointer;display:flex;align-items:center;transition:background .15s ease}.settings-switch--on{background:var(--accent)}.settings-switch-knob{width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform .15s ease}.settings-switch--on .settings-switch-knob{transform:translate(15px)}.footer-link:hover{color:var(--accent)}.footer-link--active{color:var(--accent);font-weight:700}.footer-dot{font-size:11px;color:var(--border-strong)}.sidebar-resizer{display:none}@media(min-width:768px){.sidebar{width:var(--sidebar-width-resized, var(--sidebar-width));min-width:var(--sidebar-width-resized, var(--sidebar-width))}.sidebar-resizer{display:block;position:absolute;top:0;right:-5px;width:10px;height:100%;cursor:col-resize;z-index:30;touch-action:none;-webkit-user-select:none;user-select:none}.sidebar-resizer:hover,.sidebar-resizer:active{background:linear-gradient(to right,transparent 3.5px,var(--accent) 3.5px 6.5px,transparent 6.5px)}}@media(max-width:767.98px){.sidebar{position:fixed;transform:translate(-100%)}.sidebar--open{transform:translate(0)}.sidebar-search{font-size:16px}}.history-panel{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;background:var(--page-bg);padding:calc(20px + env(safe-area-inset-top,0px)) 14px calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:14px;position:relative}.panel-card{display:flex;flex-direction:column;gap:8px;min-height:0}.history-panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 8px;flex-shrink:0}.history-panel-toggle{display:flex;align-items:center;gap:6px;border:none;background:transparent;padding:6px 4px;margin:-6px -4px -6px auto;cursor:pointer;font-family:inherit}.history-panel-toggle .category-group-chevron{color:var(--text-muted)}.history-panel-clear{font-size:11px;color:var(--accent);cursor:pointer;background:transparent;border:none;font-family:inherit;padding:0}.stack-rail{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.stack-rail-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;max-height:22vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:oklch(.85 .008 264) transparent}.stack-rail-row{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;font-size:.8rem;color:var(--text)}.stack-rail-row:hover{background:var(--hover-bg)}.stack-rail-index{flex-shrink:0;width:16px;font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);text-align:right}.stack-rail-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-rail-remove{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:none;color:var(--text-muted);font-size:.95rem;line-height:1;cursor:pointer;opacity:.55}.stack-rail-remove:hover{opacity:1;background:var(--hover-bg);color:var(--accent)}.stack-rail-add{width:100%;padding:7px 8px;border:1px dashed var(--border-strong);border-radius:8px;background:none;color:var(--text-muted);font-family:inherit;font-size:.76rem;cursor:pointer}.stack-rail-add:hover:not(:disabled){border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--hover-bg)}.stack-rail-add:disabled{cursor:default;opacity:.5}.stack-rail-picker{display:flex;flex-direction:column;gap:6px}.stack-rail-search-row{display:flex;align-items:center;gap:6px}.stack-rail-search{flex:1;min-width:0}.stack-rail-options{display:flex;flex-direction:column;gap:1px;max-height:28vh;padding:3px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--border);border-radius:8px;background:var(--surface);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.stack-rail-options::-webkit-scrollbar{width:6px}.stack-rail-options::-webkit-scrollbar-track{background:transparent}.stack-rail-options::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.stack-rail-options .generator-picker-option{padding:5px 7px;font-size:.78rem;border-radius:6px}.favorites-rail{display:flex;flex-direction:column;gap:2px;max-height:30vh;overflow-y:auto;margin-bottom:6px;scrollbar-width:thin;scrollbar-color:oklch(.85 .008 264) transparent}.favorites-rail-row{display:flex;align-items:center;gap:4px}.favorites-rail-link{flex:1;min-width:0;padding:5px 6px;border-radius:6px;font-size:12.5px;font-weight:500;color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .15s ease,color .15s ease}.favorites-rail-link:hover{background:var(--hover-bg);color:var(--accent-on-tint)}.favorites-rail-remove{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:6px;background:transparent;color:var(--accent);font-size:12px;line-height:1;cursor:pointer;opacity:.75;transition:opacity .15s ease,background .15s ease}.favorites-rail-remove:hover{opacity:1;background:var(--hover-bg)}.history-panel-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:oklch(.85 .008 264) transparent}.history-panel-list::-webkit-scrollbar{width:6px}.history-panel-list::-webkit-scrollbar-track{background:transparent}.history-panel-list::-webkit-scrollbar-thumb{background:#cbced3;border-radius:3px}.history-panel-list--pinned{flex:none;max-height:240px}.history-panel-empty{font-size:12px;line-height:1.5;color:var(--text-muted);padding:0 8px}.notepad-section{flex-shrink:0;display:flex;flex-direction:column}.notepad-body{padding:4px 8px 10px;display:flex;flex-direction:column;gap:6px}.notepad-textarea{width:100%;min-height:150px;max-height:min(46vh,420px);resize:vertical;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 9px;font-family:inherit;font-size:12px;line-height:1.55;color:var(--text)}.notepad-textarea:focus{outline:none;border-color:var(--accent)}.notepad-textarea::placeholder{color:var(--text-muted)}.notepad-foot{display:flex;justify-content:flex-end}.note-btn-icon{width:17px;height:17px;color:var(--text-muted)}.note-btn:hover .note-btn-icon{color:var(--text)}.history-panel-entry{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:6px}.history-panel-entry:hover{background:var(--hover-bg)}.history-panel-entry-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.history-panel-generator{font-size:12px;font-weight:700;color:var(--accent);cursor:pointer;background:transparent;border:none;font-family:inherit;padding:0;text-align:left}.history-panel-time{font-size:10px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.history-panel-result{font-size:12px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-panel-result-row{display:flex;align-items:center;gap:4px}.history-panel-result-row .history-panel-result{flex:1;min-width:0}.history-panel-dropdown summary{display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none}.history-panel-dropdown summary::-webkit-details-marker{display:none}.history-panel-dropdown summary .history-panel-result{flex:1;min-width:0}.history-panel-more{font-size:10px;color:var(--text-muted);flex-shrink:0}.history-panel-pin-btn{width:22px;height:22px;flex-shrink:0;position:relative;border:none;border-radius:6px;background:transparent;color:#a2a5aa;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.history-panel-pin-btn:hover{background:var(--hover-bg-strong)}.pin-icon{position:relative;width:11px;height:12px}.pin-icon:before{content:"";position:absolute;top:0;right:0;width:8px;height:8px;border-radius:50%;background:currentColor}.pin-icon:after{content:"";position:absolute;bottom:0;left:1px;width:2px;height:8px;border-radius:1px;background:currentColor;transform:rotate(45deg)}.history-panel-pin-btn--active{color:var(--accent)}.history-panel-result-list{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.history-panel-result-item{font-size:12px;color:var(--ink-muted)}@media(max-width:767.98px){.history-panel{position:fixed;right:0;top:0;z-index:20;border-left:1px solid var(--border-strong);box-shadow:var(--shadow-popover);transform:translate(100%);transition:transform .25s ease}.history-panel--open{transform:translate(0)}}@media(min-width:768px){.history-panel{position:absolute;top:0;right:0;bottom:0;z-index:25;background:transparent;pointer-events:none;gap:10px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:oklch(.85 .008 264) transparent}.history-panel>*{pointer-events:auto}.panel-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-card);padding:8px 6px;flex-shrink:0}.panel-card--bare{background:transparent;border-color:transparent;box-shadow:none;padding:2px 6px}.panel-card--history:not(:has(.history-panel-list)){min-height:0;flex-shrink:0}.panel-card--history{flex-shrink:1;min-height:120px}.panel-card .favorites-rail{margin-bottom:0}}.main{flex:1;min-height:0;display:flex;align-items:safe center;justify-content:safe center;flex-wrap:wrap;align-content:safe center;padding:calc(24px + env(safe-area-inset-top,0px)) 24px calc(24px + env(safe-area-inset-bottom,0px));overflow:auto;scrollbar-width:thin;scrollbar-color:transparent transparent}.main{background-image:radial-gradient(var(--border-strong) 1px,transparent 1px);background-size:22px 22px}.main .header-intro,.main .home-tagline,.main .hub-about p{background:var(--page-bg);border-radius:9px;padding:3px 11px}@media(min-width:768px){.app{--panel-reserve: 0px}.history-panel{display:none}.main{padding-right:calc(24px + min(var(--sidebar-width-resized, var(--sidebar-width)) / 1.1,max(0px,calc((100vw - var(--sidebar-width-resized, var(--sidebar-width))) / 1.1 - 48px - 555px))))}}@media(min-width:768px){.main{zoom:1.1}}.main--scrolling{scrollbar-color:oklch(.85 .008 264) transparent}.main::-webkit-scrollbar{width:6px}.main::-webkit-scrollbar-track{background:transparent}.main::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.main--scrolling::-webkit-scrollbar-thumb{background:#cbced3}@media(max-width:767.98px){.main{overflow-x:hidden;touch-action:pan-y}.main--locked{overflow:hidden;touch-action:none}.sidebar,.history-panel{overscroll-behavior:contain}}.main--scrolling::-webkit-scrollbar-thumb:hover{background:#a2a5aa}.content{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:28px}.generator-block:not(.generator-block--lone) .content{gap:14px}.generator-block:not(.generator-block--lone) .content .button-row{margin-top:-4px}.generator-stack{width:100%;display:flex;flex-direction:column;align-items:center}.generator-loading{width:100%;min-height:360px;display:flex;flex-direction:column;align-items:center;gap:14px;padding-top:8px;box-sizing:border-box}.skeleton{border-radius:8px;background:var(--hover-bg-strong);background-image:linear-gradient(90deg,transparent 0%,oklch(1 0 0 / .55) 50%,transparent 100%);background-repeat:no-repeat;background-size:180px 100%;animation:skeleton-sweep 1.25s ease-in-out infinite}:root[data-theme=dark] .skeleton{background-image:linear-gradient(90deg,transparent 0%,oklch(1 0 0 / .08) 50%,transparent 100%)}@keyframes skeleton-sweep{0%{background-position:-180px 0}to{background-position:calc(100% + 180px) 0}}.skeleton-eyebrow{width:84px;height:11px;border-radius:4px}.skeleton-title{width:min(320px,70%);height:26px}.skeleton-card{width:100%;max-width:520px;aspect-ratio:1.618;min-height:150px;border-radius:14px}.skeleton-row{width:100%;max-width:440px;display:flex;gap:10px}.skeleton-generate{flex:1;height:51px;border-radius:10px}.skeleton-square{width:48px;height:51px;border-radius:10px;flex-shrink:0}html.anims-off .skeleton{animation:none}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.riddle-answer{display:flex;justify-content:center;min-height:40px;margin-top:-6px}.riddle-reveal-btn{padding:8px 18px;background:var(--accent-tint);border:1px solid var(--accent);border-radius:8px;color:var(--accent);font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.riddle-reveal-btn:hover{background:var(--accent);color:#fafcff}.riddle-answer-text{margin:0;text-align:center;font-size:16px;font-weight:600;color:var(--text);animation:fadeIn .2s ease}.riddle-answer-label{color:var(--text-muted);font-weight:700;margin-right:4px}.restored-card{width:100%;max-width:520px;background:var(--accent-tint);border:1px solid var(--accent);border-radius:10px;padding:12px 14px;margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.restored-card-header{display:flex;align-items:center;justify-content:space-between}.restored-card-header .eyebrow{color:var(--accent-on-tint)}.restored-card-dismiss{width:20px;height:20px;border:none;background:transparent;color:var(--accent-on-tint);font-size:16px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.restored-card-dismiss:hover{opacity:.7}.restored-card-body{display:flex;align-items:flex-start;gap:10px}.restored-card-result{flex:1;min-width:0;font-size:15px;font-weight:700;color:var(--ink);word-break:break-word}.restored-card-list{flex:1;min-width:0;margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.restored-card-list-item{font-size:13px;font-weight:600;color:var(--ink)}.generator-block{width:100%;position:relative;display:flex;flex-direction:column;align-items:center}.generator-block--lone{display:contents}.generator-block-top{width:100%;max-width:520px;position:relative;--divider-gap: 23px;--remove-btn-size: 28px}.generator-divider{width:100%;height:1px;background:var(--border);margin-top:var(--divider-gap);margin-bottom:20px}.generator-remove-btn{position:absolute;top:calc(var(--divider-gap) + .5px - (var(--remove-btn-size) / 2));right:0;width:var(--remove-btn-size);height:var(--remove-btn-size);border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.generator-remove-btn:hover{background:var(--hover-bg-strong);color:var(--ink-muted)}.generator-add{width:100%;max-width:520px;margin-top:28px;display:flex;flex-direction:column;align-items:center;position:relative}.generator-add--compact{margin-top:14px;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:10px}.generator-add-inline{position:relative;flex-shrink:0;display:flex;margin-left:auto}.generator-add-inline-btn{width:48px;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-family:inherit;font-size:22px;line-height:1;color:var(--accent)}.generator-add-inline-btn:hover:not(:disabled){background:var(--hover-bg-strong)}.generator-add-inline-btn:disabled{cursor:not-allowed;opacity:.45}.generator-add-inline-glyph{transform:translateY(1px)}.generator-add-inline .generator-picker{left:auto;right:0;transform:none}.save-preset-btn{font-family:inherit;font-size:13px;font-weight:600;color:var(--accent);background:var(--accent-tint);border:1px solid var(--accent);border-radius:20px;padding:8px 16px;cursor:pointer}.save-preset-btn:hover{background:var(--accent);color:#fff}.generator-stack-spacer{width:100%;height:50vh;flex-shrink:0}.generator-picker{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:200px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-popover);padding:12px;z-index:25}.generator-picker-label{font-size:11px;letter-spacing:.1em;color:#616368;margin-bottom:8px}.generator-picker--wide{width:250px}.generator-picker-search-wrap{margin-bottom:8px}@media(min-width:768px){.generator-picker-search-wrap .sidebar-search{font-size:13px}}.generator-picker-search-row{display:flex;align-items:stretch;gap:8px;margin-bottom:8px}.generator-picker-search-row .generator-picker-search-wrap{flex:1;min-width:0;margin-bottom:0}.generator-picker-random-btn{flex-shrink:0;width:32px;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center}.generator-picker-random-btn:hover{background:var(--hover-bg-strong);border-color:var(--accent)}.generator-picker-random-icon{width:18px;height:18px;display:block}.generator-picker-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;overscroll-behavior:contain}.generator-picker-list::-webkit-scrollbar{width:6px}.generator-picker-list::-webkit-scrollbar-track{background:transparent}.generator-picker-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.generator-picker-list::-webkit-scrollbar-thumb:hover{background:var(--ink-muted)}.generator-picker-list:after{content:"";position:sticky;bottom:-1px;height:34px;margin-top:-36px;flex-shrink:0;pointer-events:none;background:linear-gradient(to bottom,transparent,var(--surface));opacity:0;transition:opacity .18s ease}.generator-picker-list--more:after{opacity:1}.generator-picker-group+.generator-picker-group{margin-top:2px}.generator-picker-group-header{display:flex;align-items:center;gap:5px;width:100%;padding:6px 8px;border:none;border-radius:6px;background:transparent;cursor:pointer;font-family:inherit;text-align:left}.generator-picker-group-header:hover{background:var(--hover-bg)}.generator-picker-group-header .category-group-chevron{font-size:10px}.generator-picker-group-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7e8085}.generator-picker-group-items{display:flex;flex-direction:column;gap:2px;padding-left:8px}.generator-picker-option{display:block;width:100%;padding:7px 8px;text-align:left;font-family:inherit;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;border:none;border-radius:6px;background:transparent}.generator-picker-option:hover{background:var(--hover-bg);color:var(--accent)}.generator-picker-empty{padding:10px 8px;font-size:13px;color:var(--text-muted)}.save-preset-popover{width:220px;display:flex;flex-direction:column;gap:8px}.save-preset-input{width:100%;font-family:inherit;font-size:13px;color:var(--ink);background:var(--page-bg);border:1px solid var(--border-strong);border-radius:8px;padding:8px 10px}.save-preset-input:focus{outline:none;border-color:var(--accent)}.save-preset-error{font-size:11px;color:#cc272e}.save-preset-confirm{font-size:12px;color:var(--accent);font-weight:600}.save-preset-confirm-btn{font-family:inherit;font-size:13px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;padding:8px 10px;cursor:pointer}.save-preset-confirm-btn:hover{background:var(--accent-hover)}.save-preset-actions{display:flex;gap:8px}.save-preset-actions .save-preset-confirm-btn{flex:1}.save-preset-publish-btn{color:var(--accent);background:transparent;border:1px solid var(--accent)}.save-preset-publish-btn:hover{color:#fff}.save-preset-open-link{font:inherit;color:inherit;font-weight:inherit;background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}.save-preset-popover:has(.save-preset-actions .save-preset-publish-btn),.save-preset-popover:has(.save-preset-open-link){width:264px}.save-preset-note{margin:0;font-size:11px;line-height:1.5;color:var(--text-muted)}.header{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;width:100%;position:relative}.header img{width:32px;height:32px;object-fit:contain;display:block}.header-logo-btn{background:none;border:none;padding:0;margin:0;cursor:pointer;display:block;border-radius:8px;line-height:0}.header-logo-btn:hover img{opacity:.8}.header-logo-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.header-eyebrow{font-size:11px;letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.header-title{margin:0;font-size:clamp(22px,5vw,32px);line-height:1.25;font-weight:800;color:var(--text)}.header-title-accent{color:var(--accent)}.header-block-label{margin:0;font-size:clamp(15px,3vw,19px);line-height:1.3;font-weight:800;color:var(--text)}.header-intro{margin:0;max-width:480px;font-size:13px;line-height:1.5;font-weight:500;color:var(--text-muted)}.home-hero{width:100%;padding-top:clamp(48px,11vh,120px);display:flex;flex-direction:column;align-items:center}.header-title-rolling{display:inline-block;text-align:center;color:var(--accent);animation:fadeIn .3s ease;cursor:pointer;transition:scale .2s ease}.header-title-rolling:hover{scale:1.06}@media(prefers-reduced-motion:reduce){.header-title-rolling{animation:none}}.die-scene{width:48px;height:48px;display:flex;align-items:center;justify-content:center;perspective:320px}.die-scene--clickable{cursor:pointer;border-radius:10px}.die-scene--clickable:hover .die-cube{transform:rotateX(-16deg) rotateY(-22deg) scale(1.06)}.die-scene--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.die-scene--clickable .die-cube{transition:transform .2s ease}.die-cube{width:40px;height:40px;position:relative;transform-style:preserve-3d;transform:rotateX(-16deg) rotateY(-22deg)}.die-roll{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.34,1.1,.44,1)}.die-face{position:absolute;top:2.25px;right:2.25px;bottom:2.25px;left:2.25px;border-radius:8px;background:var(--accent);backface-visibility:hidden;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -5px 9px #10132c47}.die-face--front{transform:translateZ(20px)}.die-face--back{transform:rotateY(180deg) translateZ(20px)}.die-face--right{transform:rotateY(90deg) translateZ(20px)}.die-face--left{transform:rotateY(-90deg) translateZ(20px)}.die-face--top{transform:rotateX(90deg) translateZ(20px)}.die-face--bottom{transform:rotateX(-90deg) translateZ(20px)}.die-pips{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:5px;box-sizing:border-box}.die-cell{display:flex;align-items:center;justify-content:center}.die-dot{width:56%;height:56%;border-radius:50%;background:#fafcff;box-shadow:0 0 1px #10132c4d}:root[data-theme=dark] .die-dot{background:#000}@media(prefers-reduced-motion:reduce){.die-roll{transition:none}}.poly-scene{width:var(--scene-size, 160px);height:var(--scene-size, 160px);display:flex;align-items:center;justify-content:center;perspective:480px;margin:0 auto}.poly-scene>svg{width:100%;height:100%;display:block}@media(max-width:767.98px){.poly-scene{width:min(var(--scene-size, 160px),160px);height:min(var(--scene-size, 160px),160px)}.dice-overlay-value{font-size:48px}}.dice-result-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.dice-overlay-wrap{position:relative;display:inline-flex}.dice-overlay-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:72px;font-weight:700;color:#fafcff;text-shadow:0 2px 4px oklch(.2 .05 275 / .4);pointer-events:none}.dice-overlay-value--sm{font-size:32px}.dice-multi-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px}.home-tagline{margin:-14px 0 4px;text-align:center;font-size:13px;line-height:1.5;color:var(--text-muted);max-width:400px;text-wrap:balance}.home-search-row{width:100%;max-width:460px;display:flex;justify-content:center;gap:8px}@media(max-width:767.98px){.home-search-row{display:grid;grid-template-columns:1fr 1fr;max-width:none}}.home-search{width:100%;max-width:280px;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-family:inherit;font-weight:500;font-size:13px;outline:none;text-align:center}.home-search:focus{border-color:var(--accent)}@media(max-width:767.98px){.home-search{font-size:16px;max-width:none}}.home-random-btn{flex-shrink:0;min-width:0;padding:10px 16px;background:var(--accent);color:#fafcff;font-family:inherit;font-weight:700;font-size:13px;letter-spacing:.02em;white-space:nowrap;border:none;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.home-random-btn-short{display:none}@media(max-width:419.98px){.home-random-btn-long{display:none}.home-random-btn-short{display:inline}}.home-random-btn:hover{background:var(--accent-hover)}.home-random-btn:active{transform:scale(.98)}.generator-grid{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.generator-grid--cells{grid-template-columns:repeat(4,1fr);gap:8px}.home-drill-bar{display:flex;align-items:baseline;gap:14px;margin-bottom:12px}.home-drill-bar .home-cat-title{margin:0}.home-drill-back{border:none;background:transparent;color:var(--accent);font-size:12.5px;font-weight:500;font-family:inherit;cursor:pointer;padding:4px 6px;border-radius:6px}.home-drill-back:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.home-drill-all{margin-left:auto;color:var(--text-muted);font-size:12px;text-decoration:none}.home-drill-all:hover{color:var(--accent)}@media(max-width:767.98px){.generator-grid--cells{grid-template-columns:repeat(2,1fr)}}@media(max-width:767.98px){.generator-grid{grid-template-columns:repeat(2,1fr)}}.home-sections{width:100%;display:flex;flex-direction:column;gap:26px}.home-cat-section{display:flex;flex-direction:column;gap:12px}.home-cat-title{margin:0;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.home-no-results{color:var(--text-muted);font-size:14px}.home-cat-link{color:inherit;text-decoration:none}.home-cat-link:hover{color:var(--accent)}.home-cat-arrow{margin-left:4px;opacity:.6}.hub-crumbs{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.hub-crumbs a{color:var(--text-muted);text-decoration:none}.hub-crumbs a:hover{color:var(--accent)}.hub-crumb-current{color:var(--ink-soft)}.hub-count-row{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:0 0 4px}.hub-back-btn{grid-column:1;justify-self:start;display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-size:11.5px;font-weight:600;text-decoration:none;white-space:nowrap}.hub-back-btn:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}@media(max-width:767.98px){.hub-count-row{grid-template-columns:1fr;justify-items:center;gap:8px}.hub-back-btn{grid-column:auto;justify-self:start}}.hub-count{margin:0;font-size:12px;color:var(--text-muted)}.hub-about{width:100%;margin-top:28px;font-size:13px;line-height:1.65;color:var(--ink-muted)}.hub-about h2{margin:0 0 8px;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.hub-about p{margin:0 0 10px}.hub-about a{color:var(--accent)}.hub-other-links{display:flex;flex-wrap:wrap;gap:8px}.generator-tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;box-shadow:var(--shadow-card);padding:20px 12px 20px 14px;box-sizing:border-box;cursor:pointer;font-family:inherit;text-align:left;text-decoration:none;color:inherit;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease}.generator-tile:not(.generator-tile--soon):hover{background:var(--accent-tint);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 16px #2d29451f}.generator-tile:not(.generator-tile--soon):hover .generator-tile-name{color:var(--accent-on-tint)}.generator-tile--soon{cursor:default}.generator-tile--soon .generator-tile-name{color:#8d8f94}.generator-tile:not(.generator-tile--cell) .generator-tile-name:before{content:"›";color:var(--accent);font-weight:800;margin-right:7px}.generator-tile:not(.generator-tile--cell) .generator-tile-name{padding-left:calc(1ch + 7px);text-indent:calc(-1ch - 7px)}.generator-tile.generator-tile--create .generator-tile-name:before{content:"+"}.generator-grid--cells .generator-tile--create .generator-tile-name:before{content:"+";color:var(--accent);font-weight:800;margin-right:7px}.generator-tile--soon .generator-tile-name:before{color:#8d8f94}.generator-tile-name{font-size:14px;font-weight:600;color:var(--text)}.generator-grid--cells .generator-tile--cell{--cell-rise: 10px;--cell-strip: 6.5px;--cell-tab-end: 61.818px;position:relative;display:block;padding:calc(var(--cell-rise) + var(--cell-strip)) 0 0;text-align:left;background:none;border:0;border-radius:0;box-shadow:none}.cell-back,.cell-tab{position:absolute;background:var(--border-strong)}.cell-back:before,.cell-tab:before{content:"";position:absolute;z-index:1;background:var(--cell-plate)}.cell-tab{top:0;left:0;width:var(--cell-tab-end);height:13.636px;clip-path:path("M 9.091,0 L 49.571,0 A 4.545,4.545 0 0 1 53.153,1.747 L 58.236,8.253 A 4.545,4.545 0 0 0 61.818,10 L 61.818,13.636 L 0,13.636 L 0,9.091 A 9.091,9.091 0 0 1 9.091,0 Z")}.cell-tab:before{top:0;right:0;bottom:0;left:0;clip-path:path("M 9.091,1 L 50.353,1 A 3.545,3.545 0 0 1 53.147,3.363 L 57.448,8.869 A 5.545,5.545 0 0 0 61.818,11 L 61.818,13.636 L 1,13.636 L 1,9.091 A 8.091,8.091 0 0 1 9.091,1 Z")}.cell-back{inset:var(--cell-rise) 0 0;border-radius:0 10px 11px 11px}.cell-back:before{top:1px;right:1px;bottom:1px;left:1px;border-radius:0 9px 10px 10px}@supports not (clip-path: path("M 0,0 Z")){.cell-tab{height:var(--cell-rise);clip-path:none;border-radius:9px 5px 0 0}.cell-tab:before{top:1px;right:1px;bottom:-5px;left:1px;clip-path:none;border-radius:8px 4px 0 0}}.cell-front{position:relative;z-index:2;display:flex;flex-direction:column;gap:3px;height:100%;min-height:76px;padding:9px 10px 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:9px;box-shadow:var(--shadow-card)}.generator-grid--cells .generator-tile--cell .generator-tile-name{font-size:11px;line-height:1.25;letter-spacing:-.2px;padding-right:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cell-count{position:absolute;top:8px;right:9px;font-size:8.5px;font-weight:700;line-height:1;color:var(--accent)}.cell-examples{margin-top:auto;font-size:8px;line-height:1.4;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.generator-grid--cells .generator-tile--cell:hover{background:none;border-color:transparent;box-shadow:none}.generator-grid--cells .generator-tile--cell:hover .cell-back,.generator-grid--cells .generator-tile--cell:hover .cell-tab{background:var(--accent)}.generator-grid--cells .generator-tile--cell:hover .cell-back:before,.generator-grid--cells .generator-tile--cell:hover .cell-tab:before{background:var(--accent-tint)}.generator-grid--cells .generator-tile--cell:hover .cell-front{background:var(--accent-tint);border-color:var(--accent);box-shadow:0 6px 16px #2d29451f}.generator-grid--cells .generator-tile--cell:focus-visible{outline:none}.generator-grid--cells .generator-tile--cell:focus-visible .cell-front{outline:2px solid var(--accent);outline-offset:2px}.home-about{width:100%;max-width:640px;margin:32px auto 0;font-size:13px;line-height:1.65;color:var(--ink-muted);text-align:center}.home-about h2{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.home-about p{margin:0}.home-about a{color:var(--accent)}.site-footer{flex-basis:100%;width:100%;align-self:flex-end;margin-top:44px;padding:18px 16px 24px;border-top:1px solid var(--border);text-align:center;font-size:12px;color:var(--text-muted)}.site-footer-brand{margin:0 0 8px}.site-footer-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.site-footer-links a{color:var(--text-muted);text-decoration:none}.site-footer-links a:hover{color:var(--accent)}.result-card{width:100%;aspect-ratio:1.618;min-height:150px;background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;display:flex;align-items:center;justify-content:center;padding:24px;box-shadow:var(--shadow-card);position:relative}.result-card--compact{aspect-ratio:auto;min-height:90px;padding:14px}.result-card--compact .result-single-wrap{gap:4px}.result-card--compact .result-single{font-size:clamp(18px,4vw,23px)}.result-card--compact .result-caption{font-size:11px}.result-single-wrap{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;width:100%}.result-single{font-size:clamp(31px,6.75vw,47px);font-weight:700;color:var(--text);text-align:center;overflow-wrap:anywhere;animation:fadeIn .18s ease}.result-single--long{font-size:clamp(15px,2.9vw,21px);line-height:1.4;max-width:440px}.result-caption{font-size:14px;font-weight:500;color:var(--text-muted);text-align:center;animation:fadeIn .18s ease}.result-description-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;max-width:440px;width:100%}.result-description{max-width:440px;margin:0;font-size:14px;line-height:1.6;color:var(--text-muted);text-align:center;animation:fadeIn .18s ease}.result-description--clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.result-card--compact .result-description--clamped{-webkit-line-clamp:2}.result-description:not(.result-description--clamped){max-height:140px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.result-description:not(.result-description--clamped)::-webkit-scrollbar{width:6px}.result-description:not(.result-description--clamped)::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.result-card--compact .result-description:not(.result-description--clamped){max-height:80px}.result-description-toggle{display:inline-flex;align-items:center;gap:4px;border:none;background:none;padding:2px 4px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer}.result-description-toggle:hover{color:var(--accent)}.result-description-chevron{font-size:12px;line-height:1;transform:rotate(90deg);transition:transform .15s ease}.result-description-toggle[aria-expanded=true] .result-description-chevron{transform:rotate(-90deg)}.result-icon{height:calc(56px * var(--icon-scale, 1));width:auto;max-width:calc(90px * var(--icon-scale, 1));border-radius:5px;border:1px solid var(--border-strong);box-shadow:var(--shadow-card);object-fit:cover;display:block;animation:fadeIn .18s ease}.result-icon--sm{height:calc(26px * var(--icon-scale, 1));border-radius:3px;flex-shrink:0}.result-card--compact .result-icon{height:calc(34px * var(--icon-scale, 1))}.result-cell--icon{align-items:center}.eightball-stage{display:flex;justify-content:center;padding:8px 0}.eightball-stage+.button-row{margin-top:0}.eightball{width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#3a3a3f,#131316 45%,#050507);box-shadow:inset -14px -18px 34px #0009,0 14px 30px #11161f59;display:flex;align-items:center;justify-content:center}.eightball--shaking{animation:eightball-shake .7s ease-in-out}@keyframes eightball-shake{0%,to{transform:translate(0) rotate(0)}15%{transform:translate(-12px) rotate(-6deg)}30%{transform:translate(11px) rotate(5deg)}45%{transform:translate(-9px) rotate(-4deg)}60%{transform:translate(7px) rotate(3deg)}75%{transform:translate(-4px) rotate(-2deg)}90%{transform:translate(2px) rotate(1deg)}}.eightball-window{width:118px;height:118px;border-radius:50%;background:radial-gradient(circle at 50% 38%,#1d2f6b,#0a1230 62%,#05081c);border:4px solid #26262b;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center}.eightball-eight{font-size:56px;font-weight:800;color:#f2f2f5}.eightball-answer{color:#cdd8ff;font-size:14px;font-weight:700;line-height:1.25;text-transform:uppercase;letter-spacing:.02em;animation:eightball-float .5s ease}@keyframes eightball-float{0%{opacity:0;transform:translateY(10px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}.lottery-card{aspect-ratio:auto;min-height:150px}.lottery-lines{display:flex;flex-direction:column;gap:12px;align-items:center;width:100%}.lottery-line{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.lottery-ball{width:44px;height:44px;border-radius:50%;background:var(--bg);border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;color:var(--text);animation:fadeIn .18s ease}.lottery-ball--bonus{background:var(--accent);border-color:var(--accent);color:#fff}.lottery-formats{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.lottery-format-btn{padding:7px 12px;border:1px solid var(--border-strong);border-radius:9px;background:var(--surface);color:var(--text-body);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.lottery-format-btn--on{background:var(--accent);border-color:var(--accent);color:#fff}.lottery-format-hint,.team-count-hint{font-size:12px;color:var(--text-muted)}.lottery-custom{display:flex;align-items:center;gap:8px}.lottery-custom-field{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-muted)}.lottery-custom-input{width:72px}.lottery-custom-of{font-size:13px;color:var(--text-muted)}.team-input-wrap{width:100%;display:flex;flex-direction:column;gap:8px}.team-names-input{min-height:120px}.team-count-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.team-results{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.team-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;padding:14px;box-shadow:var(--shadow-card);animation:fadeIn .18s ease}.team-card-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.team-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:var(--text)}.result-media{display:flex;align-items:center;justify-content:center}.result-card--compact .result-media{max-height:132px}.result-card--compact .result-media>*{max-height:132px;max-width:100%}.angle-diagram,.fraction-pie{width:150px;height:150px;display:block;animation:fadeIn .18s ease}.fraction-slice{fill:var(--accent-tint);stroke:var(--surface);stroke-width:2.5;stroke-linejoin:round}.fraction-slice--filled{fill:var(--accent)}.constellation-chart-svg{width:min(300px,100%);height:auto;display:block;margin-bottom:4px;animation:fadeInStill .18s ease}@keyframes fadeInStill{0%{opacity:0}to{opacity:1}}.constellation-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:580px}.constellation-content .result-card--media{align-items:flex-start}.us-state-svg,.globe-svg{width:min(300px,100%);height:auto;display:block;margin-bottom:4px;animation:fadeInStill .18s ease}.chord-svg,.scale-keyboard-svg{height:auto;display:block;margin:0 auto 4px;animation:fadeInStill .18s ease}.chord-svg{width:min(230px,100%)}.scale-keyboard-svg{width:min(360px,100%)}.chordcard-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:440px}.scalecard-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:330px}.place-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:520px}.place-content .result-card--media{align-items:flex-start}.planet-card-svg,.cloud-card-svg,.shape-card-svg{width:min(300px,100%);height:auto;display:block;margin-bottom:4px;animation:fadeInStill .18s ease}.cloudcard-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:580px}.cloudcard-content .result-card--media{align-items:flex-start}.cloudcard-content .result-card--media .result-single{font-size:clamp(15px,3.25vw,22px)}.element-tile-svg{width:min(260px,100%);height:auto;display:block;margin-bottom:4px;animation:fadeInStill .18s ease}.element-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:540px}.element-content .result-card--media{align-items:flex-start}.chess-board-svg{width:300px;max-width:100%;height:auto;display:block;margin:0 auto 4px;animation:fadeInStill .18s ease}.chessboard-content .result-media{width:100%}.chessboard-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:620px}.chessboard-content .result-card--media{align-items:flex-start}.chessboard-content .result-card--media .result-single{font-size:clamp(16px,3.8vw,25px)}.chessboard-content .result-card--media .result-caption{min-height:42px}.chessboard-content .result-card--media .result-description--clamped{height:calc(3 * 1.6em)}@media(min-width:768px){.chess-board-svg{width:min(375px,100%)}.chessboard-content .result-card:not(.result-card--compact){min-height:705px}}.angle-ray{stroke:var(--text);stroke-width:3;stroke-linecap:round}.angle-arc{stroke:var(--accent);stroke-width:3}.angle-vertex{fill:var(--text)}.polygon-diagram{width:150px;height:150px;display:block;animation:fadeIn .18s ease}.polygon-outline{fill:#9475f21f;stroke:var(--accent);stroke-width:3;stroke-linejoin:round}.grid-diagram{width:150px;height:150px;display:block;animation:fadeIn .18s ease}.grid-line{stroke:var(--border);stroke-width:1}.grid-axis{stroke:var(--text);stroke-width:2}.grid-point{fill:var(--accent)}.result-answer-reveal{display:flex;justify-content:center;margin-top:10px}.tarot-card-svg{height:264px;width:auto;display:block;animation:fadeIn .18s ease;filter:drop-shadow(0 2px 6px oklch(.2 .02 264 / .14))}.tarot-content .result-card:not(.result-card--compact){aspect-ratio:auto;min-height:560px;padding:28px 24px}.tarot-content .result-card:not(.result-card--compact) .result-single{font-size:clamp(23px,4.95vw,34px)}.tarot-spread-card{align-items:flex-start}.tarot-spread{display:flex;justify-content:center;gap:18px;width:100%}.tarot-spread-slot{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px}.tarot-spread-slot .tarot-card-svg{height:186px}.tarot-spread--compact{gap:10px}.tarot-spread--compact .tarot-spread-slot .tarot-card-svg{height:116px}.tarot-spread--compact .tarot-spread-name{font-size:13px}.tarot-spread-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.tarot-spread-name{font-size:15px;font-weight:700;color:var(--text);text-align:center;line-height:1.3;animation:fadeIn .18s ease}.tarot-spread-desc{margin:0;font-size:12.5px;line-height:1.5;color:var(--text-muted);text-align:center;animation:fadeIn .18s ease}@media(max-width:560px){.tarot-spread{flex-direction:column;align-items:center;gap:24px}.tarot-spread-slot{width:100%;max-width:300px}}.reversed-btn{width:48px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-size:18px;color:var(--text-muted);font-family:inherit}.reversed-btn:hover{background:var(--hover-bg-strong)}.reversed-btn--active{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.result-swatch{width:110px;height:110px;border-radius:16px;border:1px solid var(--border-strong);box-shadow:inset 0 0 0 1px #ffffff1f,0 1px 3px #11161f1a;animation:fadeIn .18s ease}.result-swatch--sm{width:36px;height:36px;border-radius:4px;flex-shrink:0}.result-swatch--compact{width:56px;height:56px;border-radius:8px}.result-hex--compact{font-size:14px}.result-hex{font-size:clamp(15px,3vw,18px);font-weight:700;letter-spacing:.02em;color:var(--text)}.result-hex--lg{font-size:clamp(16px,3.4vw,20px)}.result-cell--swatch{align-items:center}.result-stack{width:100%;display:flex;flex-direction:column;gap:10px}.result-cell{width:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;box-shadow:var(--shadow-card);padding:16px 24px;box-sizing:border-box;display:flex;align-items:baseline;gap:10px;animation:fadeIn .18s ease}.result-cell-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.result-cell-body .result-caption{text-align:left;font-size:12px;animation:none}.result-row-idx{font-size:12px;color:#7e8085;width:20px;flex-shrink:0}.result-row-name{font-size:clamp(18px,3.4vw,24px);font-weight:700;color:var(--text);overflow-wrap:anywhere}.result-stack--compact{gap:4px}.result-cell--compact{padding:7px 14px;gap:8px}.result-cell--compact .result-row-idx{width:26px;font-size:11px}.result-cell--compact .result-row-name{font-size:14px}.result-cell--compact .result-cell-body{gap:0}.result-cell--compact .result-caption{font-size:10px}.result-cell--compact .result-icon--sm{height:calc(18px * var(--icon-scale, 1))}.result-cell--compact .result-swatch--sm{width:22px;height:22px;border-radius:3px}.result-cell--compact .result-hex{font-size:13px}.result-placeholder{font-size:clamp(20px,4.3vw,31px);color:var(--text-muted)}.result--rolling{color:var(--text-rolling);animation:none}@keyframes roll-tick-in{0%{opacity:.4;transform:translateY(2px)}to{opacity:1;transform:none}}.result-single.result--rolling{animation:roll-tick-in 32ms ease-out}html.anims-off .result-single.result--rolling{animation:none}@media(prefers-reduced-motion:reduce){.result-single.result--rolling{animation:none}}.button-row{width:100%;margin-top:-18px;display:flex;justify-content:center;gap:10px;position:relative;flex-wrap:wrap}.generate-btn{flex:1;padding:16px 0;background:var(--accent);color:#fafcff;font-family:inherit;font-weight:700;font-size:15px;letter-spacing:.02em;text-align:center;border:none;border-radius:10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .26s cubic-bezier(.34,1.56,.64,1)}.generate-btn:hover{background:var(--accent-hover)}.generate-btn:active,.generate-btn--pressed{transform:scale(.96);transition:transform .08s ease-out}.filter-btn{width:48px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;padding:0}.filter-btn:hover{background:var(--hover-bg-strong)}.filter-btn--active{background:var(--accent-tint)}.funnel-icon{width:16px;height:14px;background:#45484c;clip-path:polygon(0 0,100% 0,60% 55%,60% 100%,40% 100%,40% 55%)}.filter-btn--active .funnel-icon{background:var(--accent)}.count-badge{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:var(--accent);color:#fafcff;font-size:9px;display:flex;align-items:center;justify-content:center}.amount-btn{width:56px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;font-family:inherit;font-size:14px;color:var(--ink-muted);font-weight:700;padding:0;position:relative}.amount-btn:hover{background:var(--hover-bg-strong)}.amount-caret{font-size:9px;color:var(--text-muted)}.generate-all-btn{width:50px;height:50px;flex-shrink:0;background:var(--accent);border:none;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;position:relative}.generate-all-btn:hover{background:var(--accent-hover)}.generate-all-btn:active{transform:scale(.98)}.generate-all-face{width:30px;height:30px;border-radius:7px;background:#fafcff;display:flex;align-items:center;justify-content:center}.generate-all-icon{width:18px;height:18px;color:var(--accent)}.generate-all-label{display:none}.dedupe-btn{width:48px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;position:relative}.dedupe-btn:hover{background:var(--hover-bg-strong)}.dedupe-btn--active{background:var(--accent-tint);border-color:var(--accent)}.dedupe-icon{position:relative;width:14px;height:14px}.dedupe-icon:before,.dedupe-icon:after{content:"";position:absolute;width:9px;height:9px;border:1.4px solid oklch(.4 .008 264);border-radius:2px}.dedupe-icon:before{top:0;left:0}.dedupe-icon:after{bottom:0;right:0;background:var(--surface)}.dedupe-btn--active .dedupe-icon:before,.dedupe-btn--active .dedupe-icon:after{border-color:var(--accent)}.dedupe-btn--active .dedupe-icon:after{background:var(--accent-tint)}.dedupe-icon-slash{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;pointer-events:none}.dedupe-icon-slash:before{content:"";position:absolute;top:50%;left:-1px;right:-1px;height:1.6px;background:#45484c;transform:rotate(-45deg)}.dedupe-btn--active .dedupe-icon-slash:before{background:var(--accent)}.copy-btn{width:48px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;position:relative}.copy-btn:hover{background:var(--hover-bg-strong)}.copy-btn:disabled{cursor:not-allowed;opacity:.45}.copy-btn--copied{border-color:var(--accent);background:var(--accent-tint)}.copy-icon{position:relative;width:14px;height:14px}.copy-icon:before,.copy-icon:after{content:"";position:absolute;width:9px;height:9px;border:1.4px solid oklch(.4 .008 264);border-radius:2px}.copy-icon:before{top:0;left:0}.copy-icon:after{bottom:0;right:0;background:var(--surface)}.copy-btn:hover .copy-icon:after{background:var(--hover-bg-strong)}.copy-check{font-size:16px;font-weight:700;color:var(--accent);line-height:1}.share-setup-btn{width:48px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;color:var(--accent)}.share-setup-btn:hover{background:var(--hover-bg-strong)}.share-setup-btn--copied{border-color:var(--accent);background:var(--accent-tint)}.share-setup-icon{width:18px;height:18px}.share-stack-btn{color:var(--ink-muted);background:var(--surface);border-color:var(--border-strong)}.share-stack-btn:hover,.share-stack-btn--copied{border-color:var(--accent);background:var(--accent-tint);color:var(--accent-on-tint)}.share-setup-check{font-size:16px;font-weight:700;color:var(--accent);line-height:1}.copy-btn--compact{width:22px;height:22px;border:none;border-radius:6px;background:transparent}.copy-btn--compact:hover{background:var(--hover-bg-strong)}.copy-btn--compact.copy-btn--copied{background:var(--accent-tint)}.copy-btn--compact .copy-icon,.copy-btn--compact .copy-check{transform:scale(.75)}.amount-dropdown{position:absolute;top:calc(100% + 8px);right:0;--panel-width: 190px;width:var(--panel-width);background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:var(--shadow-popover);padding:12px;z-index:25;display:flex;flex-direction:column;gap:4px}.amount-input{text-align:center;font-weight:700}.amount-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:6px}.amount-option{display:block;width:100%;padding:6px 0;text-align:center;font-family:inherit;font-size:13px;font-weight:500;color:var(--ink-muted);cursor:pointer;border:none;border-radius:6px;background:var(--hover-bg)}.amount-option:hover{background:var(--hover-bg-strong)}.amount-option--selected{color:var(--accent-on-tint);background:var(--accent-tint);font-weight:700}.popover{position:absolute;top:calc(100% + 8px);right:0;--panel-width: 230px;width:var(--panel-width);background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-popover);padding:14px;z-index:25}.button-row>.popover,.button-row>.amount-dropdown{max-height:var(--popover-max-height, none);overflow-y:auto}.button-row .generator-add-inline>.generator-picker,.button-row .generator-add-inline>.generator-picker .generator-picker-list{max-height:none}.button-row>.popover{left:clamp(0px,var(--filter-trigger-left, 0px),max(0px,100% - var(--panel-width)));right:auto}.button-row>.amount-dropdown{left:clamp(0px,var(--amount-trigger-left, 0px),max(0px,100% - var(--panel-width)));right:auto}[data-popover-dock=true] .generator-add-inline>.generator-picker{position:fixed;top:var(--popover-dock-top);left:var(--popover-dock-left);right:auto;bottom:auto;transform:none;height:var(--popover-dock-height);max-height:var(--popover-dock-max-height);display:flex;flex-direction:column;overflow:hidden}[data-popover-dock=true] .generator-add-inline>.generator-picker .generator-picker-list{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.popover--wide{--panel-width: 260px}.popover--datetime{--panel-width: 320px}.popover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.popover-header .eyebrow{font-size:11px;letter-spacing:.1em;color:#616368}.popover-clear{font-size:11px;color:var(--accent);cursor:pointer;background:transparent;border:none;font-family:inherit;padding:0}.popover-list{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow:auto}.popover-row{display:flex;align-items:center;gap:9px;padding:6px 4px;cursor:pointer;border:none;border-radius:6px;background:transparent;font-family:inherit;width:100%;text-align:left}.popover-row:hover{background:var(--hover-bg)}.checkbox{width:15px;height:15px;border-radius:4px;border:1.5px solid oklch(.8 .008 264);background:var(--surface);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fafcff;font-size:10px;font-weight:700}.checkbox--checked{border-color:var(--accent);background:var(--accent)}.popover-row-label{font-size:13px;color:var(--ink)}.popover-letter-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.popover-clear--muted{color:#7e8085}.letter-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.letter-cell{font-family:inherit;font-size:12px;padding:5px 0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:center}.letter-cell:hover:not(:disabled){background:var(--hover-bg)}.letter-cell--active{background:var(--accent);border-color:var(--accent);color:#fafcff}.letter-cell--active:hover:not(:disabled){background:var(--accent)}.letter-cell:disabled{opacity:.3;cursor:default}.range-fields{display:flex;gap:8px;margin-bottom:10px}.range-field{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.range-field-label{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.range-input{width:100%;padding:7px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--ink);font-family:inherit;font-weight:500;font-size:13px;outline:none}.range-input:focus{border-color:var(--accent)}.places-row{display:flex;align-items:center;justify-content:space-between;padding:6px 4px 2px}.places-select{padding:4px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--ink);font-family:inherit;font-weight:500;font-size:13px;outline:none;cursor:pointer}.range-btn{flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;font-family:inherit;font-size:13px;color:var(--ink-muted);font-weight:700;padding:0 12px;position:relative;white-space:nowrap}.range-btn:hover{background:var(--hover-bg-strong)}.filter-btn:after,.amount-btn:after,.generate-all-btn:after,.dedupe-btn:after,.copy-btn:after,.history-panel-pin-btn:after,.range-btn:after,.gcell-key:after,.gcell-foot .generator-add-inline-btn:after,.gcell-foot .generate-btn[aria-label]:after,.gcell-bar-btn:after{content:attr(aria-label);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--bar-bg);color:var(--bar-text);border:1px solid var(--bar-line);font-size:11px;font-weight:600;letter-spacing:.02em;padding:5px 10px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:30}.filter-btn:hover:after,.amount-btn:hover:after,.generate-all-btn:hover:after,.dedupe-btn:hover:after,.copy-btn:hover:after,.history-panel-pin-btn:hover:after,.range-btn:hover:after,.gcell-key:hover:after,.gcell-foot .generator-add-inline-btn:hover:after,.gcell-foot .generate-btn[aria-label]:hover:after,.gcell-bar-btn:hover:after{opacity:1}.history-panel .copy-btn:after,.topbar-pop .copy-btn:after,.history-panel-pin-btn:after{left:auto;right:0;transform:none}.popover-subheader{margin:4px 0 6px}.popover-list--tight{max-height:none;margin-bottom:4px}.popover-divider{height:1px;background:var(--border);margin:12px 0}.text-filter-fields{display:flex;flex-direction:column;gap:8px}.popover-note{font-size:11px;line-height:1.5;color:var(--text-muted);margin-top:4px}.generate-btn:disabled{background:#d5d7dd;color:#6f7276;cursor:not-allowed}:root[data-theme=dark] .generate-btn:disabled{background:#1e1f22;color:#616367}.generate-btn:disabled:active{transform:none}.filter-empty-message{width:100%;max-width:360px;align-self:center;text-align:center;font-size:12px;color:var(--text-muted);margin-top:-8px}.history{width:100%;display:flex;flex-direction:column;gap:8px}.history-chips{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px}.eyebrow--hidden{visibility:hidden}.history-chip{flex-shrink:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:6px 12px;background:var(--hover-bg);border:1px solid var(--border);border-radius:20px;font-size:12px;color:var(--ink-soft)}.history-chip:hover{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-on-tint)}.history-chip--link{text-decoration:none;cursor:pointer}.history-chip--described{font:inherit;font-size:12px;line-height:inherit;text-align:left;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.history-chip--open{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-on-tint)}.history-tip{position:fixed;z-index:60;display:flex;flex-direction:column;gap:4px;width:max-content;max-width:min(320px,calc(100vw - 32px));padding:10px 12px;background:var(--surface);border:1px solid var(--accent);border-radius:10px;box-shadow:0 10px 24px #11161f2e;pointer-events:none;animation:history-tip-in .14s ease}.history-tip-name{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.history-tip-desc{font-size:12px;line-height:1.45;color:var(--ink-soft)}@keyframes history-tip-in{0%{opacity:0;transform:translateY(var(--tip-from, 4px))}}.history-tip--below{--tip-from: -4px}.generator-seo{width:100%;border-top:1px solid var(--border);padding-top:16px}.generator-seo-summary{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;font-weight:600;color:var(--text-muted);list-style:none}.generator-seo-summary::-webkit-details-marker{display:none}.generator-seo-summary:hover{color:var(--accent)}.generator-seo-chevron{font-size:12px;line-height:1;color:var(--text-muted);transform:rotate(0);transition:transform .15s ease;flex-shrink:0}.generator-seo[open] .generator-seo-chevron{transform:rotate(90deg)}.generator-seo-body{display:flex;flex-direction:column;gap:20px;margin-top:18px}.generator-seo-body h2{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.generator-seo-body p{margin:0;font-size:13px;line-height:1.6;color:var(--ink-muted)}.generator-seo-body p+p{margin-top:8px}.generator-seo-body a{color:var(--accent)}.generator-seo-faq-item{margin-top:12px}.generator-seo-faq-item:first-of-type{margin-top:0}.generator-seo-faq-q{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:4px}.generator-seo-faq-a{font-size:13px;line-height:1.6;color:var(--ink-muted)}.generator-seo-examples{columns:2;column-gap:20px;margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.7;color:var(--ink-muted)}.generator-seo-examples li{break-inside:avoid}@media(min-width:720px){.generator-seo-examples{columns:3}}.generator-related{width:100%;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.generator-related h2{margin:0 0 10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.generator-seo-related{display:flex;flex-wrap:wrap;gap:8px}.generator-seo-related-link{padding:6px 12px;background:var(--hover-bg);border:1px solid var(--border);border-radius:20px;font-size:12px;color:var(--ink-soft);text-decoration:none;cursor:pointer}.generator-seo-related-link:hover{background:var(--accent-tint);color:var(--accent-on-tint)}.generator-seo-hub-link{margin:10px 0 0;font-size:12px}.wiki-title-link{color:inherit;text-decoration:none}.wiki-title-link:hover{text-decoration:underline;color:var(--accent)}.wiki-thumbnail{max-width:160px;max-height:160px;border-radius:10px;border:1px solid var(--border-strong);box-shadow:var(--shadow-card);object-fit:cover;animation:fadeIn .18s ease}.wiki-extract{max-width:440px;margin:0;font-size:14px;line-height:1.6;color:var(--text-muted);text-align:center;animation:fadeIn .18s ease}.wiki-thumbnail--compact{max-width:64px;max-height:64px;border-radius:6px}.wiki-extract--compact{font-size:11px;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.doc-page{width:100%;max-width:560px;margin:0 auto;padding:48px 24px;display:flex;flex-direction:column;gap:20px}.doc-updated{margin:-8px 0 0;text-align:center;font-size:11px;color:var(--text-muted)}.doc-section{display:flex;flex-direction:column;gap:14px}.doc-section h2{margin:8px 0 0;font-size:13px;letter-spacing:.04em;color:var(--text)}.doc-section p{margin:0;font-size:13px;line-height:1.6;color:var(--ink-muted)}.doc-section a{color:var(--accent)}.doc-section code{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:12px;white-space:nowrap}.doc-back-link{align-self:center;margin-top:8px;background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;color:var(--accent);padding:0}.doc-back-link:hover{color:var(--accent-hover)}.content--decision-tool{max-width:720px}.content--decision-tool .generator-seo{max-width:560px;margin-left:auto;margin-right:auto}.wheel-card{width:100%;max-width:560px;margin:0 auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card);padding:12px;display:flex;align-items:center;justify-content:center}.wheel-stage{position:relative;width:max(340px,min(calc(100vh - 585px),92vw,520px));aspect-ratio:1;margin-top:4px}@media(max-width:719.98px){.wheel-stage{width:max(260px,min(calc(100vh - 720px),88vw,340px))}}.decision-tool-below{width:100%;max-width:560px;display:flex;flex-direction:column;align-items:center;gap:18px}@media(min-width:720px){.decision-tool-below{flex-direction:row;align-items:flex-start;justify-content:center;gap:24px}}.decision-tool-result-col{width:100%;max-width:280px;display:flex;flex-direction:column;gap:10px}.decision-tool-items-col{width:100%;max-width:320px;display:flex;flex-direction:column;gap:10px}@media(min-width:720px){.decision-tool-result-col{flex-shrink:0}.decision-tool-items-col{max-width:none;flex:1}}@media(max-width:719.98px){.decision-tool-below{gap:12px}.decision-tool-textarea{min-height:70px}.wheel-elimination-row{padding-top:6px}}.decision-tool-input-header{display:flex;align-items:center;justify-content:space-between}.clear-list-row{display:flex;justify-content:flex-end;margin-bottom:6px}.clear-list-row--with-label{justify-content:space-between;align-items:center;gap:12px}.clear-list-row .decision-tool-reset-btn:disabled{opacity:.4;cursor:not-allowed}.decision-tool-reset-btn{background:transparent;border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:600;color:var(--text-muted);cursor:pointer}.decision-tool-reset-btn:hover{background:var(--surface);color:var(--text)}.decision-tool-textarea{width:100%;min-height:92px;resize:vertical;padding:10px 13px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-family:inherit;font-weight:500;font-size:13px;line-height:1.5;outline:none}.decision-tool-textarea:focus{border-color:var(--accent)}@media(max-width:719.98px){.decision-tool-textarea{font-size:16px}}.wheel-elimination-row{padding:10px 2px 0}.wheel-prob-editor{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.wheel-prob-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.wheel-prob-row{display:flex;align-items:center;gap:8px}.wheel-prob-swatch{flex-shrink:0;width:12px;height:12px;border-radius:3px}.wheel-prob-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text)}.wheel-prob-field{flex-shrink:0;display:flex;align-items:center;gap:3px}.wheel-prob-input{width:54px;padding:5px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--ink);font-family:inherit;font-weight:600;font-size:13px;text-align:right;outline:none}.wheel-prob-input:focus{border-color:var(--accent)}.wheel-prob-percent{font-size:12px;color:var(--text-muted)}.wheel-prob-note{margin:8px 0 0;font-size:11px;color:var(--text-muted);line-height:1.4}@media(max-width:719.98px){.wheel-prob-input{font-size:16px}}.wheel-button-row{margin-top:6px}.wheel-pointer{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-top:22px solid var(--text);z-index:2}.wheel-svg{width:100%;height:100%;border-radius:50%;box-shadow:var(--shadow-popover);transition:transform 4.5s cubic-bezier(.17,.67,.12,.99)}.wheel-svg--no-anim{transition:none}.bottle-stage{position:relative;width:max(340px,min(calc(100vh - 585px),92vw,520px));aspect-ratio:1;margin-top:4px}@media(max-width:719.98px){.bottle-stage{width:max(260px,min(calc(100vh - 720px),88vw,340px))}}.bottle-ring{position:absolute;top:7%;right:7%;bottom:7%;left:7%;border:2px dashed var(--border-strong);border-radius:50%}.bottle-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transition:transform 4.5s cubic-bezier(.17,.67,.12,.99)}.bottle-svg--no-anim{transition:none}.bottle-player{position:absolute;transform:translate(-50%,-50%);max-width:88px;padding:4px 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:var(--shadow-card);transition:border-color .25s ease,background .25s ease,color .25s ease;z-index:1}.bottle-player--winner{border-color:var(--accent);background:var(--accent);color:#fff}.bottle-mode-note{margin:0;font-size:11px;color:var(--text-muted);line-height:1.4}.ladder-stage{width:100%;margin:0 auto}.ladder-svg{display:block;width:100%;height:auto}.ladder-rail{stroke:var(--border-strong);stroke-width:2.5;stroke-linecap:round}.ladder-rung{stroke:var(--border-strong);stroke-width:2;stroke-linecap:round}.ladder-path{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;opacity:.9;transition:opacity .25s ease}.ladder-path--anim{animation:ladder-draw .8s ease-in-out both}@keyframes ladder-draw{0%{stroke-dashoffset:var(--ladder-len)}to{stroke-dashoffset:0}}.ladder-path--dim{opacity:.12}.ladder-label{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;fill:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.ladder-label--active{fill:var(--accent)}.ladder-label--outcome{cursor:default;fill:var(--text-muted)}.palette-strip{display:flex;width:100%;height:148px;border-radius:10px;overflow:hidden;border:1px solid var(--border-strong)}.palette-swatch{flex:1;min-width:0;border:none;padding:0 4px 10px;display:flex;align-items:flex-end;justify-content:center;cursor:pointer;font:inherit}.palette-hex{font-size:11px;font-weight:600;letter-spacing:.02em;opacity:.85}.palette-swatch:hover .palette-hex{opacity:1;text-decoration:underline}.palette-controls{width:100%;display:flex;flex-direction:column;gap:10px;margin-top:14px}.palette-controls-row{display:flex;align-items:flex-start;gap:12px}.palette-controls-row .custom-field-label{min-width:52px;padding-top:7px}.palette-modes{flex-wrap:wrap}.history-chip--palette{display:flex;width:96px;height:24px;padding:0;overflow:hidden}.history-chip--palette span{flex:1}.scrambler-input-wrap{width:100%;display:flex;flex-direction:column;gap:6px;margin-top:14px}.scrambler-keep-row{margin-top:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:10px}@media(max-width:719.98px){.scrambler-input-wrap .custom-input{font-size:16px}}.unscramble-input{text-transform:uppercase;letter-spacing:.12em}.unscramble-loading{margin:10px 0 0;font-size:12px;color:var(--text-muted)}.unscramble-results{width:100%;margin-top:18px;display:flex;flex-direction:column;gap:14px}.unscramble-summary{margin:0;font-size:13px;font-weight:600;color:var(--text-muted)}.unscramble-group-title{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.unscramble-group--full .unscramble-group-title{color:var(--accent)}.unscramble-words{display:flex;flex-wrap:wrap;gap:6px}.unscramble-word{padding:3px 9px;background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;font-size:12.5px;line-height:1.5}.unscramble-group--full .unscramble-word{border-color:var(--accent);background:var(--accent-tint);color:var(--accent-on-tint);font-weight:600}.unscramble-drawn{margin:0 0 14px;font-size:13px;color:var(--text-muted)}.unscramble-drawn b{color:var(--accent-on-tint);font-size:15px}.unscramble-drawn span{font-size:12px}.unscramble-word--picked,.unscramble-group--full .unscramble-word--picked{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.card-draw-stage{--card-draw-max-height: max(300px, min( calc(100vh - 585px) , 60vh, 460px));display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.4vw,14px);perspective:1200px;max-width:560px;width:100%;margin:4px auto 0}@media(max-width:719.98px){.card-draw-stage{--card-draw-max-height: max(240px, min( calc(100vh - 720px) , 55vh, 320px))}}.card-draw-card{position:relative;flex:1 1 calc((100% - (var(--card-draw-count, 1) - 1) * clamp(6px,1.4vw,14px)) / var(--card-draw-count, 1));max-width:calc(var(--card-draw-max-height) * .714);aspect-ratio:.714;transform-style:preserve-3d;container-type:inline-size;transition:transform .45s cubic-bezier(.34,1.15,.64,1)}.card-draw-card--hiding{transition:transform .15s ease-out}.card-draw-card--no-anim{transition:none}.card-draw-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:clamp(4px,5.5cqi,16px);border:1px solid var(--border-strong);box-shadow:var(--shadow-card);backface-visibility:hidden;padding:clamp(6px,10cqi,20px);overflow:hidden}.card-draw-face--back{background:repeating-linear-gradient(45deg,oklch(1 0 0 / .12) 0 2px,transparent 2px 14px),repeating-linear-gradient(-45deg,oklch(1 0 0 / .12) 0 2px,transparent 2px 14px),var(--accent);border-color:var(--accent)}.card-draw-back-logo{width:34%}.card-draw-face--front{background:var(--surface);color:var(--text);transform:rotateY(180deg)}.card-draw-value{font-size:clamp(8px,7.2cqi,16px);font-weight:700;text-align:center;overflow-wrap:anywhere}.card-draw-remaining{padding:0 2px}.card-draw-button-row{margin-top:0}.card-draw-replacement-row{padding-top:2px}.content--decision-tool-solo .decision-tool-result-col{max-width:320px}.playing-card-front{padding:0;background:#fff}.playing-card-front--red{color:#c92e3b}.playing-card-front--black{color:#26292f}.playing-card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:.9;font-weight:800}.playing-card-corner--tl{top:7cqi;left:7cqi}.playing-card-corner--br{bottom:7cqi;right:7cqi;transform:rotate(180deg)}.playing-card-corner-rank{font-size:clamp(8px,15cqi,30px)}.playing-card-corner-suit{font-size:clamp(6px,12cqi,24px)}.playing-card-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:clamp(26px,52cqi,120px);line-height:1}.playing-card-joker{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3cqi}.playing-card-joker-star{font-size:clamp(22px,40cqi,90px);line-height:1}.playing-card-joker-label{font-size:clamp(8px,13cqi,28px);font-weight:800;letter-spacing:.12em}.poker-stage{display:flex;justify-content:center;gap:clamp(6px,1.4vw,12px);max-width:560px;width:100%;margin:4px auto 0}.poker-card{position:relative;flex:1 1 0;max-width:104px;aspect-ratio:.714;container-type:inline-size}.poker-face{transform:none}.poker-result{text-align:center;margin-top:18px;min-height:92px}.poker-result-name{font-size:clamp(22px,5vw,34px);font-weight:700}.poker-result-detail{margin-top:4px;font-size:14px;color:var(--ink);opacity:.75}.poker-result-odds{margin-top:4px;font-size:12px;color:var(--accent);letter-spacing:.04em}.poker-result-placeholder{font-size:15px;opacity:.45;padding-top:30px}.poker-button-row{margin-top:6px}.snowflake-stage{display:flex;justify-content:center;min-height:340px;margin:4px auto 0}.snowflake-card-svg,.rune-card-svg,.arms-card-svg,.mandala-card-svg,.fractal-card-svg,.monster-card-svg,.glass-card-svg,.dungeon-card-svg,.kaleido-card-svg,.spirograph-svg,.city-map-svg,.tessellation-svg,.flag-card-svg,.skychart-card-svg,.walk-card-svg,.island-card-svg,.system-card-svg{width:min(340px,88vw);max-width:100%;height:auto}.kaleido-spin-slow{animation:kaleido-rot 64s linear infinite}.kaleido-spin-counter{animation:kaleido-rot 42s linear infinite reverse}.spiro-spin{animation:kaleido-rot 90s linear infinite}@keyframes kaleido-rot{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.life-card{width:100%;max-width:600px;margin:4px auto 0;background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card);padding:12px;display:flex;flex-direction:column;gap:8px}.life-canvas{width:100%;height:auto;display:block;border-radius:10px;cursor:crosshair;touch-action:none}.life-status{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:11.5px;color:var(--text-muted)}.life-status-label{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.life-status-counts{flex-shrink:0;font-variant-numeric:tabular-nums}.life-controls{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;flex-wrap:wrap}.svg-copy-host{position:relative;display:inline-flex}.svg-copy-btn{position:absolute;right:9px;bottom:9px;padding:3px 7px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.08em;line-height:1.4;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 78%,transparent);border:1px solid var(--border-strong);border-radius:7px;cursor:pointer;opacity:.45;transition:opacity .15s ease,color .15s ease,border-color .15s ease;z-index:2}.svg-copy-host:hover .svg-copy-btn,.svg-copy-btn:focus-visible{opacity:1}.svg-copy-btn--copied{opacity:1;color:var(--accent);border-color:var(--accent)}.arms-blazon{margin:10px auto 0;max-width:380px;text-align:center;font-style:italic;font-size:13.5px;color:var(--text-muted);line-height:1.5}.maze-stage{display:flex;justify-content:center;min-height:340px;margin:4px auto 0}.maze-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card);padding:14px;display:flex;align-items:center;justify-content:center}.maze-svg{width:min(400px,86vw);max-width:100%;height:auto;display:block}.maze-solution-btn{display:block;margin:12px auto 0}.maze-size-row{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px;flex-wrap:wrap}.snowflake-placeholder{align-self:center;font-size:15px;opacity:.45}.snowflake-button-row{margin-top:14px}.card-draw-remaining-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}.coinflip-stage{--coinflip-max-height: max(220px, min( calc(100vh - 585px) , 50vh, 340px));display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.4vw,14px);perspective:1200px;max-width:480px;width:100%;margin:4px auto 0}@media(max-width:719.98px){.coinflip-stage{--coinflip-max-height: max(180px, min( calc(100vh - 720px) , 46vh, 260px))}}.coinflip-coin{position:relative;flex:1 1 calc((100% - (var(--coinflip-count, 1) - 1) * clamp(6px,1.4vw,14px)) / var(--coinflip-count, 1));max-width:var(--coinflip-max-height);aspect-ratio:1;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.34,1.15,.64,1);container-type:inline-size}.coinflip-coin--no-anim{transition:none}.coinflip-face,.cfnode-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:50%;backface-visibility:hidden;background:var(--accent);color:#fff;font-weight:800;line-height:1;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -5cqi 11cqi #28145a47}.coinflip-face{transform:translateZ(6cqi)}.coinflip-face--tails{transform:rotateY(180deg) translateZ(6cqi)}.coinflip-rim{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d}.coinflip-rim-layer,.cfnode-rim{position:absolute;top:1%;right:1%;bottom:1%;left:1%;border-radius:50%;background:color-mix(in srgb,var(--accent) 72%,#1b1230)}.plinko-board{position:relative;width:100%;aspect-ratio:100 / 140;margin:4px auto 0;background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card);overflow:hidden}.plinko-logo-bg{position:absolute;left:50%;top:43.4%;transform:translate(-50%,-50%);width:42%;height:auto;opacity:.1;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none}.plinko-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:1}.plinko-slots{position:absolute;left:0;right:0;bottom:0;height:var(--plinko-slots-height, 10%);display:flex;border-top:1px solid var(--border);container-type:inline-size;z-index:0}.plinko-slot{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:2px 3px;font-size:clamp(8px,15cqi,12px);font-weight:600;color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.plinko-slot+.plinko-slot{border-left:1px solid var(--border)}.plinko-speed{width:100%;display:flex;align-items:center;gap:10px}.plinko-speed label{flex-shrink:0}.plinko-speed-slider{flex:1;min-width:0;accent-color:var(--accent);cursor:pointer}.plinko-speed-value{flex-shrink:0;width:42px;text-align:right;font-size:12px;font-weight:700;color:var(--ink-muted);font-variant-numeric:tabular-nums}.plinko-items{width:100%;display:flex;flex-direction:column;gap:8px}.plinko-items-field{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.plinko-items-field:focus-within{border-color:var(--accent)}.plinko-odds-gutter{flex:0 0 auto;width:3.9em;box-sizing:border-box;padding:10px 8px 10px 11px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--accent) 7%,transparent);overflow:hidden;font-family:inherit;font-weight:600;font-size:13px;line-height:1.5;color:var(--accent);text-align:right;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none}.plinko-odds-cell{height:1.5em;overflow:hidden}.decision-tool-textarea.plinko-items-textarea{width:auto;flex:1 1 auto;min-width:0;border:none;border-radius:0;background:transparent;resize:none}@media(max-width:719.98px){.plinko-odds-gutter{font-size:16px}}.content.custom-builder{max-width:560px}.custom-field{display:flex;flex-direction:column;gap:6px}.custom-field-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.custom-field-optional{font-weight:500;text-transform:none;letter-spacing:0}.custom-input,.custom-textarea{width:100%;padding:10px 13px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--ink);font-family:inherit;font-weight:500;font-size:16px;line-height:1.4;outline:none}.custom-textarea{resize:vertical;min-height:56px}.custom-input:focus,.custom-textarea:focus{border-color:var(--accent)}.custom-items{display:flex;flex-direction:column;gap:16px}.custom-items-headleft{display:flex;align-items:center;gap:8px}.custom-item-count{font-size:12px;font-weight:700;color:var(--text-muted);background:var(--hover-bg);border-radius:10px;padding:1px 8px}.custom-dedupe-btn{border:none;background:transparent;color:var(--accent);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:2px 4px}.custom-dedupe-btn:hover{text-decoration:underline}.custom-weight-wrap{flex:0 0 82px;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.custom-weight-share{font-size:11px;color:var(--text-muted);padding-left:2px}.custom-scale-slider{width:100%;accent-color:var(--accent);cursor:pointer;margin-top:2px}.custom-scale-value{flex-shrink:0;width:42px;text-align:right;font-size:12px;font-weight:700;color:var(--ink-muted);font-variant-numeric:tabular-nums}.custom-preview-box{padding:10px 12px;border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface);font-weight:600;color:var(--text);word-break:break-word}.custom-drawmode{display:inline-flex;align-self:flex-start;max-width:100%;flex-wrap:wrap;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden}.custom-drawmode-btn{padding:8px 14px;border:none;background:var(--surface);color:var(--text-body);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.custom-drawmode-btn+.custom-drawmode-btn{border-left:1px solid var(--border-strong)}.custom-drawmode-btn--on{background:var(--accent);color:#fff}.custom-input--desc{font-weight:400;color:var(--ink-muted)}.custom-item-remove{flex-shrink:0;width:44px;height:44px;align-self:center;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-muted);font-size:18px;line-height:1;cursor:pointer}.custom-item-remove:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.custom-item-remove:disabled{opacity:.4;cursor:not-allowed}.custom-image-btn{flex:0 0 auto;display:inline-flex;align-items:center;padding:10px 12px;line-height:1.4;border:1px dashed var(--border-strong);border-radius:8px;background:transparent;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer}.custom-image-btn:hover{background:var(--accent-tint)}.custom-item-thumb{position:relative;flex:0 0 auto;width:36px;height:36px}.custom-item-thumb img{width:36px;height:36px;object-fit:cover;border-radius:8px;border:1px solid var(--border-strong)}.custom-item-thumb-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border:none;border-radius:50%;background:var(--text);color:var(--surface);font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.custom-input--mini{flex:1;min-width:120px;font-weight:400;font-size:13px}.custom-input--weight{width:82px;font-weight:400;font-size:13px}.custom-combo{display:flex;flex-direction:column;gap:6px;margin-top:12px}.custom-combo-list{display:flex;flex-wrap:wrap;gap:8px 16px}.custom-combo-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-body);cursor:pointer}.custom-add-btn{align-self:flex-start;margin-top:2px;padding:7px 12px;border:1px dashed var(--border-strong);border-radius:8px;background:transparent;color:var(--accent);font-family:inherit;font-weight:600;font-size:13px;cursor:pointer}.custom-add-btn:hover{background:var(--accent-tint)}.custom-cancel-btn,.custom-delete-btn{padding:10px 16px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-body);font-family:inherit;font-weight:600;font-size:14px;cursor:pointer}.custom-cancel-btn:hover{background:var(--hover-bg)}.custom-delete-btn{margin-left:auto;border-color:transparent;background:transparent;color:#c92e3b}.custom-delete-btn:hover{background:color-mix(in srgb,oklch(.55 .19 22) 12%,transparent)}.custom-builder-error{margin:0}.custom-example-chips{display:flex;flex-wrap:wrap;gap:6px}.custom-example-chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;font-weight:600;padding:5px 11px;border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.custom-example-chip:hover{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-on-tint)}.custom-slot-chips{display:flex;flex-wrap:wrap;gap:4px}.custom-slot-chip{border:1px solid var(--border);background:var(--hover-bg);color:var(--ink-soft);font-family:inherit;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.custom-slot-chip:hover{border-color:var(--accent);color:var(--accent-on-tint);background:var(--accent-tint)}.custom-slot-chip--own{border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-on-tint)}.custom-slot-chip--item{color:var(--accent);font-weight:700}.custom-tpl-editor{position:relative;display:flex;flex-wrap:wrap;align-items:center;row-gap:4px;cursor:text;min-height:43px}.custom-tpl-chprobe{position:absolute;visibility:hidden;pointer-events:none}.custom-tpl-text{border:none;outline:none;background:transparent;padding:0;margin:0;color:var(--ink);font:inherit;min-width:1ch}.custom-tpl-text::placeholder{color:var(--text-muted);opacity:.8}.custom-tpl-text--ph{font-size:12px}.custom-tpl-text--lead{width:2px;min-width:0;margin-left:-2px}.custom-tpl-text--lead+.custom-tpl-chip{margin-left:0}.custom-tpl-chip{display:inline-flex;align-items:center;gap:5px;margin:0 2px;padding:2px 7px;border:1px solid var(--border-strong);border-radius:6px;background:var(--hover-bg);color:var(--ink-soft);font-size:12px;font-weight:600;line-height:1.5;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;white-space:nowrap}.custom-tpl-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.custom-tpl-chip--dragging{opacity:.45;cursor:grabbing}.custom-tpl-chip--item{color:var(--accent);font-weight:700}.custom-tpl-chip-x{border:none;background:none;padding:0;color:inherit;opacity:.65;font-family:inherit;font-size:13px;line-height:1;cursor:pointer}.custom-tpl-chip-x:hover{opacity:1}.custom-tpl-caret{position:absolute;width:2px;border-radius:1px;background:var(--accent);pointer-events:none}.custom-slot-row{display:flex;flex-direction:column;gap:4px}.custom-slot-row-head{display:flex;gap:4px;align-items:center}.custom-slot-name{max-width:240px}.custom-slot-items{resize:vertical}.custom-norecent-input{width:52px;display:inline-block;text-align:center;padding:4px 6px}.elimination-bar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-muted)}.daily-note{font-size:12px;color:var(--text-muted)}.custom-stats{width:100%;max-width:520px;display:flex;flex-direction:column;gap:8px;padding:12px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-card);box-sizing:border-box}.custom-stats-head{display:flex;justify-content:space-between;align-items:center}.custom-stats-list{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.custom-stats-row{display:grid;grid-template-columns:minmax(0,180px) 1fr auto;align-items:center;gap:8px;font-size:12px}.custom-stats-name{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-stats-fill{height:8px;min-width:2px;border-radius:4px;background:color-mix(in srgb,var(--accent) 55%,transparent)}.custom-stats-count{color:var(--text-muted);font-variant-numeric:tabular-nums}.custom-stats-empty{font-size:12px;color:var(--text-muted)}.custom-qr{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 14px 12px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-card);box-sizing:border-box}.custom-qr-canvas{background:#fff;border-radius:6px}.custom-qr-hint,.custom-qr-error{font-size:12px;color:var(--text-muted);text-align:center;max-width:400px}.content.custom-builder--wide{max-width:980px}.builder-grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.builder-main,.builder-rail{min-width:0;display:flex;flex-direction:column;gap:14px}@media(min-width:1360px){.builder-grid{grid-template-columns:minmax(0,29fr) minmax(288px,20fr);gap:20px}.builder-rail{position:sticky;top:14px}}.builder-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-card);padding:16px;display:flex;flex-direction:column;gap:12px}.builder-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.builder-card-title{font-size:11px;letter-spacing:1.4px;font-weight:800;text-transform:uppercase;color:var(--text-muted)}.builder-card-sub{font-size:10.5px;color:var(--text-muted)}.builder-card-link{background:none;border:none;padding:0;font-family:inherit;font-size:11.5px;font-weight:600;color:var(--accent-on-tint);cursor:pointer}.custom-preview-reroll{line-height:0}.builder-preview-actions{display:flex;align-items:center;gap:12px}.custom-preview-box--batch{display:flex;flex-direction:column;gap:5px}.custom-preview-line{font-size:13px;line-height:1.45}.custom-variant-row{display:flex;gap:6px;align-items:flex-start;margin-top:6px}.custom-variant-row .custom-tpl-editor{flex:1;min-width:0}.custom-variant-remove{width:34px;height:34px;flex-shrink:0}.custom-variant-add{align-self:flex-start;margin-top:6px}.custom-listtools{position:relative;display:flex;align-items:center}.custom-listtools-pop{min-width:150px}.custom-preview-reroll-img{width:18px;height:18px;display:block}.custom-emoji-select{display:flex;flex-direction:column;gap:10px}.custom-emoji-btn{width:78px;display:flex;align-items:center;justify-content:space-between;gap:4px;cursor:pointer;text-align:left}.custom-emoji-value{font-size:16px;line-height:1}.custom-emoji-pop{border:1px solid var(--border);border-radius:10px;background:var(--hover-bg);padding:8px;display:flex;flex-direction:column;gap:8px}.custom-emoji-scroll{max-height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.custom-emoji-group-name{display:block;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.custom-emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(30px,1fr));gap:2px}.custom-emoji-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:none;border-radius:5px;background:transparent;padding:0;font-size:15px;line-height:1;cursor:pointer;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.custom-emoji-cell:hover{background:var(--surface)}.custom-emoji-cell--on{background:var(--accent-tint);outline:1px solid var(--accent)}.custom-emoji-foot{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border);padding-top:8px}.custom-emoji-any{flex:1;min-width:0;padding:6px 8px;font-size:12.5px}.builder-setrow.builder-setrow--stack{flex-direction:column;align-items:flex-start;gap:8px}.custom-accent-row{display:flex;gap:8px;flex-wrap:wrap}.custom-accent-swatch{width:24px;height:24px;border-radius:50%;border:1px solid var(--border-strong);padding:0;cursor:pointer}.custom-accent-swatch--default{background:#8a5cf5}.custom-accent-swatch--on{outline:2px solid var(--text);outline-offset:2px}.custom-cover-ctl{display:flex;align-items:center;gap:8px;flex-shrink:0}.custom-cover-thumb{display:block;width:72px;height:40px;object-fit:cover;border-radius:6px;border:1px solid var(--border-strong)}.custom-accent{--accent: var(--custom-accent);--accent-hover: color-mix(in srgb, var(--custom-accent) 82%, black);--accent-tint: color-mix(in srgb, var(--custom-accent) 12%, white);--accent-on-tint: color-mix(in srgb, var(--custom-accent) 78%, black)}:root[data-theme=dark] .custom-accent{--accent-tint: color-mix(in srgb, var(--custom-accent) 26%, #000);--accent-on-tint: color-mix(in srgb, var(--custom-accent) 48%, white)}.generator-tile--cover{position:relative;aspect-ratio:10 / 7;padding:0;overflow:hidden}.generator-tile-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.generator-tile-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;padding:8px 10px 8px 12px;background:#ffffffb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid rgb(255 255 255 / .5)}:root[data-theme=dark] .generator-tile-bar{background:#101016a8;border-top-color:#ffffff1a}.generator-tile-bar:before{content:"›";color:var(--accent);font-weight:800;margin-right:7px;flex-shrink:0}.generator-tile.generator-tile--cover .generator-tile-name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;font-size:13px;padding-left:0;text-indent:0;container-type:inline-size;text-overflow:ellipsis}.generator-tile.generator-tile--cover .generator-tile-name:before{content:none}.generator-tile-slide{display:inline-block;transform:translate(0)}.builder-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden}.builder-seg-btn{border:none;border-left:1px solid var(--border);background:var(--surface);padding:5px 10px;font-family:inherit;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer}.builder-seg-btn:first-child{border-left:none}.builder-seg-btn--on{background:var(--accent);color:#fff}.builder-seg-btn:disabled{opacity:.45;cursor:default}.builder-setrow{display:flex;justify-content:space-between;align-items:center;gap:10px}.builder-setrow-lbl{font-size:12.5px;font-weight:600;color:var(--text)}.builder-setrow-sub{display:block;font-size:10px;font-weight:500;color:var(--text-muted);margin-top:2px}.builder-addrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.builder-linkbtn{background:none;border:none;padding:2px 0;border-radius:0;font-family:inherit;font-size:12px;font-weight:600;color:var(--text-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.builder-linkbtn:hover{color:var(--accent-on-tint);background:none}.custom-fork-wrap{position:relative}.custom-fork-wrap .generator-picker{left:0;transform:none}.builder-formats{background:var(--hover-bg);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.custom-items--v2{display:flex;flex-direction:column;gap:7px}.custom-colhead{display:none}.custom-item-row2{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px;align-items:center}.custom-item-row2 .custom-item-remove{width:34px;height:34px}.custom-item-row2 .custom-input{padding:8px 10px}.custom-item-row2>:not(.custom-item-text):not(.custom-item-remove){grid-column:1 / -1}.custom-item-row2 .custom-item-remove{grid-row:1;grid-column:2}.custom-item-row2 .custom-image-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0;font-size:15px}.custom-item-row2 .custom-item-thumb,.custom-item-row2 .custom-item-thumb img{width:34px;height:34px}@media(min-width:768px){.custom-item-row2>:not(.custom-item-text):not(.custom-item-remove){grid-column:auto}.custom-item-row2 .custom-item-remove{grid-row:auto;grid-column:auto}.custom-colhead{display:grid;gap:6px;align-items:end}.custom-colhead span{font-size:10px;letter-spacing:.6px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.custom-items--notes .custom-item-row2,.custom-items--notes .custom-colhead{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 34px}.custom-items--details .custom-item-row2,.custom-items--details .custom-colhead{grid-template-columns:minmax(0,1fr) 34px minmax(0,130px) 86px 34px}.custom-items--notes.custom-items--details .custom-item-row2,.custom-items--notes.custom-items--details .custom-colhead{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 34px minmax(0,110px) 78px 34px}}.builder-toggles{display:flex;align-items:center;gap:6px}.builder-toggle-lbl{font-size:11px;font-weight:600;color:var(--text-muted)}.builder-toggle-lbl--second{margin-left:8px}.custom-cat-select{position:relative;min-width:0}.custom-cat-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer;text-align:left}.custom-cat-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-cat-placeholder{color:var(--text-muted)}.custom-cat-pop{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:220px;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:var(--shadow-popover);padding:8px;z-index:25;display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto}.custom-cat-pop .popover-row{padding:6px 8px}.custom-cat-new{margin-top:4px;padding:6px 8px;font-size:12.5px}.builder-savebar{position:sticky;bottom:0;z-index:30;width:100%;background:color-mix(in srgb,var(--page-bg) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--border-strong);padding:10px 2px calc(10px + env(safe-area-inset-bottom,0px))}.builder-savebar-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.builder-savebar .generate-btn{flex:0 0 auto;width:auto;padding:10px 26px}.builder-savebar-note{margin-left:auto;font-size:11px;color:var(--text-muted);text-align:right}.builder-savebar-error{margin-left:auto;font-size:12px;font-weight:600;color:#c92e3b;text-align:right}@media(max-width:767.98px){.builder-savebar-note{display:none}}.custom-slot-chip--more{background:transparent;border-style:dashed}.custom-genslot-box{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--hover-bg)}.custom-genslot-search{padding:6px 10px;font-size:13px;background:var(--surface)}.custom-genslot-list{display:flex;flex-wrap:wrap;gap:5px;max-height:180px;overflow-y:auto}.custom-genslot-list .custom-slot-chip{background:var(--surface)}.custom-genslot-empty{font-size:12px;color:var(--text-muted)}.custom-generator-page{width:100%;display:flex;flex-direction:column;align-items:center}.custom-manage-bar{width:100%;max-width:520px;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:14px 0 2px}.custom-manage-btn{font-variant-emoji:text;border:none;background:transparent;color:var(--text-muted);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:4px 6px}.custom-manage-btn:hover,.custom-manage-btn--accent{color:var(--accent)}.custom-manage-btn--accent:disabled{color:var(--text-muted);cursor:default}.category--action .category-name{color:var(--accent);font-weight:600}.custom-io-btn{padding:8px 14px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-body);font-family:inherit;font-weight:600;font-size:13px;cursor:pointer}.custom-io-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent);color:var(--accent)}.custom-io-btn:disabled{opacity:.45;cursor:default}.custom-io-hint{flex-basis:100%;font-size:12px;line-height:1.4;color:var(--text-muted)}.custom-io-example{flex-basis:100%;margin:0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--hover-bg);color:var(--ink-muted);font-family:inherit;font-size:11.5px;line-height:1.6;overflow-x:auto}.custom-io-hint--tight{margin-top:-2px}.custom-field-hint{font-size:12px;line-height:1.4;color:var(--text-muted);margin-top:2px}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.error-boundary-card{max-width:420px;display:flex;flex-direction:column;gap:12px;padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:14px;text-align:center}.error-boundary-card h1{font-size:20px;line-height:1.3}.error-boundary-card p{font-size:14px;line-height:1.5;color:var(--text-muted)}.error-boundary-card .generate-btn{flex:none;padding:14px 28px;margin-top:4px}@keyframes chip-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.history-chips .history-chip{animation:chip-slide-in .28s ease backwards}.history-chips .history-chip:nth-child(2){animation-delay:.04s}.history-chips .history-chip:nth-child(3){animation-delay:.08s}.history-chips .history-chip:nth-child(4){animation-delay:.12s}.history-chips .history-chip:nth-child(n+5){animation-delay:.16s}@keyframes heart-pop{0%{transform:scale(.4)}40%{transform:scale(1.35)}70%{transform:scale(.92)}to{transform:scale(1)}}@keyframes heart-spark{0%{transform:scale(.2);opacity:1}70%{opacity:1}to{transform:scale(1);opacity:0}}.favorite-btn--burst .favorite-heart{animation:heart-pop .45s cubic-bezier(.34,1.56,.64,1) both}.favorite-btn--burst:after{content:"";position:absolute;left:50%;top:50%;width:3px;height:3px;margin:-1.5px 0 0 -1.5px;border-radius:50%;background:transparent;pointer-events:none;box-shadow:0 -10px 0 var(--accent),9px -5px 0 var(--accent),9px 5px 0 var(--accent),0 10px 0 var(--accent),-9px 5px 0 var(--accent),-9px -5px 0 var(--accent);animation:heart-spark .45s ease-out both}@keyframes copy-check-in{0%{scale:0;opacity:0}60%{scale:1.3}to{scale:1;opacity:1}}.copy-btn--copied .copy-check{animation:copy-check-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes die-wobble{0%{transform:rotate(0)}25%{transform:rotate(-14deg)}55%{transform:rotate(10deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0)}}.sidebar-logo-row:hover img{animation:die-wobble .5s ease-in-out}@keyframes tile-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){html:not(.anims-off) .generator-grid .generator-tile:not(.generator-tile--in){opacity:0}}.generator-tile--in{animation:tile-in .32s ease backwards}@keyframes cat-item-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.category-collapse--open>.category-group-items>*{animation:cat-item-in .2s ease backwards}.category-collapse--open>.category-group-items>*:nth-child(2){animation-delay:.02s}.category-collapse--open>.category-group-items>*:nth-child(3){animation-delay:.04s}.category-collapse--open>.category-group-items>*:nth-child(4){animation-delay:.06s}.category-collapse--open>.category-group-items>*:nth-child(5){animation-delay:.08s}.category-collapse--open>.category-group-items>*:nth-child(6){animation-delay:.1s}.category-collapse--open>.category-group-items>*:nth-child(7){animation-delay:.12s}.category-collapse--open>.category-group-items>*:nth-child(n+8){animation-delay:.14s}html.anims-off .history-chips .history-chip,html.anims-off .copy-btn--copied .copy-check,html.anims-off .sidebar-logo-row:hover img,html.anims-off .generator-grid .generator-tile,html.anims-off .category-group-items>*,html.anims-off .favorite-btn--burst .favorite-heart{animation:none!important}html.anims-off .favorite-btn--burst:after{content:none}html.anims-off .generator-tile:not(.generator-tile--soon):hover{transform:none;box-shadow:var(--shadow-card)}html.anims-off .vslide{transition:none}@media(prefers-reduced-motion:reduce){.history-chips .history-chip,.copy-btn--copied .copy-check,.sidebar-logo-row:hover img,.generator-grid .generator-tile,.category-group-items>*,.favorite-btn--burst .favorite-heart{animation:none!important}.favorite-btn--burst:after{content:none}.generator-tile:not(.generator-tile--soon):hover{transform:none;box-shadow:var(--shadow-card)}.vslide{transition:none}}@keyframes result-pop{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.result-single:not(.result--rolling):not(.result-placeholder){animation:result-pop .32s cubic-bezier(.34,1.56,.64,1)}@keyframes result-row-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.result-cell .result-row-name:not(.result--rolling){animation:result-row-pop .22s ease-out backwards;animation-delay:min(calc(var(--row-i, 0) * 25ms),.3s)}html.anims-off .result-single:not(.result--rolling):not(.result-placeholder){animation:fadeIn .18s ease}html.anims-off .result-cell .result-row-name:not(.result--rolling){animation:none}html.anims-off .generate-btn{transition:none}html.anims-off .generate-btn:active,html.anims-off .generate-btn--pressed{transform:scale(.98);transition:none}@media(prefers-reduced-motion:reduce){.result-single:not(.result--rolling):not(.result-placeholder){animation:fadeIn .18s ease}.result-cell .result-row-name:not(.result--rolling){animation:none}.generate-btn{transition:none}.generate-btn:active,.generate-btn--pressed{transform:scale(.98);transition:none}}.tarot-flip-stage{perspective:1200px;height:264px;display:flex;justify-content:center}.tarot-flip-card{position:relative;height:100%;aspect-ratio:300 / 520;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.34,1.15,.64,1)}.tarot-flip-card--hiding{transition:transform .16s ease-out}.tarot-flip-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;backface-visibility:hidden}.tarot-flip-face--front{transform:rotateY(180deg)}.tarot-flip-face--front .tarot-card-svg{height:100%}.tarot-flip-face--back{border-radius:10px;border:1.5px solid #b79bfa;box-shadow:0 3px 10px #140a3c4d;color:#e3d5ff;background:radial-gradient(circle at 24% 18%,rgb(183 155 250 / .18) 0 2px,transparent 3px),radial-gradient(circle at 76% 30%,rgb(183 155 250 / .16) 0 1.6px,transparent 2.6px),radial-gradient(circle at 38% 72%,rgb(183 155 250 / .14) 0 1.6px,transparent 2.6px),radial-gradient(circle at 68% 84%,rgb(183 155 250 / .16) 0 2px,transparent 3px),linear-gradient(160deg,#2c2350,#171130)}.tarot-flip-back-mark{width:44%;height:auto;opacity:.92}@keyframes popover-in{0%{opacity:0;scale:.97}to{opacity:1;scale:1}}.popover,.amount-dropdown,.generator-picker,.stack-row-menu{animation:popover-in .14s ease-out;transform-origin:top center}[data-popover-dock=true] .generator-add-inline>.generator-picker{transform-origin:top left}.generator-grid--cells .generator-tile--cell .cell-tab,.generator-grid--cells .generator-tile--cell .cell-back{transition:transform .16s ease-out}.generator-grid--cells .generator-tile--cell:hover .cell-tab,.generator-grid--cells .generator-tile--cell:hover .cell-back,.generator-grid--cells .generator-tile--cell:focus-visible .cell-tab,.generator-grid--cells .generator-tile--cell:focus-visible .cell-back{transform:translateY(calc(-1px / 1.1))}.sidebar-category-list--searching .category{animation:cat-item-in .16s ease backwards}.sidebar-category-list--searching .category:nth-child(2){animation-delay:15ms}.sidebar-category-list--searching .category:nth-child(3){animation-delay:.03s}.sidebar-category-list--searching .category:nth-child(4){animation-delay:45ms}.sidebar-category-list--searching .category:nth-child(5){animation-delay:.06s}.sidebar-category-list--searching .category:nth-child(6){animation-delay:75ms}.sidebar-category-list--searching .category:nth-child(7){animation-delay:.09s}.sidebar-category-list--searching .category:nth-child(n+8){animation-delay:.105s}.result-card.result--stale,.result-stack.result--stale{opacity:.55}.result-card,.result-stack{transition:opacity .2s ease}@keyframes panel-section-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.history-panel-list .history-panel-entry,.history-panel-empty,.stack-rail>*{animation:panel-section-in .18s ease backwards}.history-panel-list .history-panel-entry:nth-child(2){animation-delay:.02s}.history-panel-list .history-panel-entry:nth-child(3){animation-delay:.04s}.history-panel-list .history-panel-entry:nth-child(4){animation-delay:.06s}.history-panel-list .history-panel-entry:nth-child(n+5){animation-delay:.08s}.stack-rail>*:nth-child(2){animation-delay:.04s}.stack-rail>*:nth-child(n+3){animation-delay:.08s}@keyframes restore-pulse{0%{box-shadow:0 0 0 0 var(--accent)}to{box-shadow:0 0 0 10px transparent}}.restored-card{animation:restore-pulse .65s ease-out}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s;animation-timing-function:ease}@keyframes tile-name-slide{0%,10%{transform:translate(0)}45%,70%{transform:translate(min(0px,calc(100cqw - 100%)))}to{transform:translate(0)}}html:not(.anims-off) .generator-tile--cover:hover .generator-tile-name{text-overflow:clip;transition:text-overflow 0s .4s}html:not(.anims-off) .generator-tile--cover:hover .generator-tile-slide{animation:tile-name-slide 4.8s ease-in-out .4s infinite}html.anims-off .popover,html.anims-off .amount-dropdown,html.anims-off .generator-picker,html.anims-off .stack-row-menu,html.anims-off .sidebar-category-list--searching .category,html.anims-off .history-panel-list .history-panel-entry,html.anims-off .history-panel-empty,html.anims-off .stack-rail>*,html.anims-off .restored-card{animation:none!important}html.anims-off .generator-grid--cells .generator-tile--cell .cell-tab,html.anims-off .generator-grid--cells .generator-tile--cell .cell-back,html.anims-off .generator-grid--cells .generator-tile--cell:hover .cell-tab,html.anims-off .generator-grid--cells .generator-tile--cell:hover .cell-back,html.anims-off .generator-grid--cells .generator-tile--cell:focus-visible .cell-tab,html.anims-off .generator-grid--cells .generator-tile--cell:focus-visible .cell-back{transition:none;transform:none}html.anims-off .result-card,html.anims-off .result-stack{transition:none}@media(prefers-reduced-motion:reduce){.popover,.amount-dropdown,.generator-picker,.stack-row-menu,.sidebar-category-list--searching .category,.history-panel-list .history-panel-entry,.history-panel-empty,.stack-rail>*,.restored-card{animation:none!important}.generator-grid--cells .generator-tile--cell .cell-tab,.generator-grid--cells .generator-tile--cell .cell-back,.generator-grid--cells .generator-tile--cell:hover .cell-tab,.generator-grid--cells .generator-tile--cell:hover .cell-back,.generator-grid--cells .generator-tile--cell:focus-visible .cell-tab,.generator-grid--cells .generator-tile--cell:focus-visible .cell-back{transition:none;transform:none}.result-card,.result-stack{transition:none}.generator-tile--cover:hover .generator-tile-slide{animation:none}.generator-tile--cover:hover .generator-tile-name{text-overflow:ellipsis}::view-transition-old(root),::view-transition-new(root){animation:none}}.stack-row-body{height:0;min-height:0;overflow:hidden;visibility:hidden}.stack-row-body--open{height:auto;overflow:visible;visibility:visible}.stack-row-body--open{padding:6px 0 16px}.generator-stack--rows .stack-row-body--open:not(.stack-row-body--primary) .header{display:none}.stack-row-body--primary{height:auto;overflow:visible;visibility:visible}.generator-stack--rows .stack-row-body--primary{max-width:520px;gap:0}.generator-stack--rows .stack-row-body--primary.stack-row-body--open{gap:14px}.generator-stack--rows .stack-row-body--primary>.content{display:contents}.generator-stack--rows .stack-row-body--primary .header{order:0}.generator-stack--rows .stack-row-body--primary>.stack-row{order:1}.generator-stack--rows .stack-row-body--primary .content>*:not(.header){order:2}.generator-stack--rows .stack-row-body--primary .header-block-label{display:none}.stack-row-body--primary:not(.stack-row-body--open) .content>*:not(.header){height:0;min-height:0;padding:0;border-width:0;overflow:hidden;visibility:hidden}.stack-row-body--primary:not(.stack-row-body--open) .content{gap:0}.generator-stack--rows .stack-row-body--primary .header{margin-bottom:45px}.generator-stack--rows .stack-row{margin-top:7px}.generator-stack--rows .stack-row-body--primary>.stack-row{margin-top:0;margin-bottom:7px}.stack-row{width:100%;max-width:520px;border:1px solid var(--term-line);border-radius:7px;background:var(--term-bg);overflow:visible;position:relative}.stack-row-bar{display:flex;align-items:center;gap:7px;padding:3px 4px 3px 9px;background:var(--term-bar);border-bottom:1px solid var(--term-line);border-radius:6px 6px 0 0;font-size:9.5px;letter-spacing:.11em;color:var(--term-dim)}.stack-row-ix{flex-shrink:0;font-variant-numeric:tabular-nums}.stack-row-bar-sp{flex:1}.stack-row-count{flex-shrink:0;font-variant-numeric:tabular-nums;text-transform:uppercase}.stack-row-name-wrap{position:relative;min-width:0;display:flex}.stack-row-name{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:230px;margin:-1px 0;padding:3px 6px;border:1px solid transparent;border-radius:4px;background:transparent;font-family:inherit;font-size:inherit;letter-spacing:inherit;color:inherit;text-align:left;cursor:pointer}.stack-row-name:hover,.stack-row-name--open{background:var(--surface);border-color:var(--term-line);color:var(--text)}.stack-row-name--fixed{cursor:default;padding-left:0}.stack-row-name--fixed:hover{background:transparent;border-color:transparent;color:inherit}.stack-row-caret{flex-shrink:0;font-size:8px;line-height:1;opacity:.85}.stack-row-name--open .stack-row-caret{color:var(--accent)}.stack-row-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}.stack-row-picker{left:0;top:calc(100% + 5px);transform:none;z-index:30}.stack-row-main{display:flex;align-items:center;gap:10px;width:100%;padding:8px 9px 8px 10px;border:0;border-radius:0 0 6px 6px;background:transparent;font-family:inherit;font-size:13.5px;text-align:left;cursor:pointer}.stack-row-main:hover{background:color-mix(in srgb,var(--term-line) 34%,transparent)}.stack-row--expanded{border-color:var(--accent)}.stack-row-chevron{flex-shrink:0;margin-left:auto;color:var(--term-dim)}.stack-row-result{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--term-text)}.stack-row-result--empty{color:var(--term-dim);font-style:italic}.stack-row-actions{flex-shrink:0;display:flex;align-items:center;gap:2px}.stack-row-icon{flex-shrink:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--term-dim);cursor:pointer;padding:0}.stack-row-icon svg{width:14px;height:14px}.stack-row-icon:hover{background:var(--surface);border-color:var(--term-line);color:var(--text)}.stack-row-lock--on,.stack-row-lock--on:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.stack-row-menu-wrap{position:relative;display:flex}.stack-row-menu-btn svg{width:17px;height:17px}.stack-row-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:148px;display:flex;flex-direction:column;padding:5px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:0 10px 28px #00000029}.stack-row-menu-item{padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);font-family:inherit;font-size:12.5px;text-align:left;cursor:pointer}.stack-row-menu-item:hover:not(:disabled){background:var(--hover-bg);color:var(--accent)}.stack-row-menu-item:disabled{color:var(--text-muted);opacity:.5;cursor:default}.stack-row-menu-item--danger{margin-top:4px;border-top:1px solid var(--border);border-radius:0 0 7px 7px;color:#cc272e}.stack-row-menu-item--danger:hover:not(:disabled){color:#cc272e;background:color-mix(in oklab,oklch(.55 .2 25) 10%,transparent)}.generator-block-lock{position:absolute;top:calc(var(--divider-gap) + .5px - (var(--remove-btn-size) / 2));right:calc(var(--remove-btn-size) + 6px);width:var(--remove-btn-size);height:var(--remove-btn-size);border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.generator-block-top--primary{position:absolute;top:0;left:50%;transform:translate(-50%);height:0}.generator-block-lock--primary{top:0;right:0}.generator-block-lock svg{width:14px;height:14px}.generator-block-lock:hover{background:var(--hover-bg-strong);color:var(--accent)}.generator-block-lock--on{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.generator-stack--rows .generator-block-top,.generator-stack--rows .generator-stack-spacer{display:none}.main:has(.generator-stack--rows){flex-direction:column;flex-wrap:nowrap}.main:has(.generator-stack--rows) .generator-stack--rows{flex:1 0 auto;justify-content:center}.main:has(.generator-stack--rows) .site-footer{align-self:stretch;flex-basis:auto}.stack-rows-foot{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:520px;margin-top:10px;position:relative}.stack-rows-foot .generator-add-inline{margin-left:0}.stack-view-btn{padding:7px 12px;border:1px solid var(--border-strong);border-radius:8px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:12px;cursor:pointer}.stack-view-btn:hover{border-color:var(--accent);color:var(--accent)}.stack-view-btn--on{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.stack-view-btn--tocanvas{padding:0 12px;text-align:center}.stack-view-switch{display:inline-flex;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden}.stack-view-switch .stack-view-btn{border:none;border-radius:0;border-right:1px solid var(--border-strong)}.stack-view-switch .stack-view-btn:last-child{border-right:none}.stack-view-switch .stack-view-btn:hover{border-color:var(--border-strong);background:var(--hover-bg)}.stack-view-switch .stack-view-btn--on,.stack-view-switch .stack-view-btn--on:hover{background:var(--accent-tint);color:var(--accent)}.stack-stage,.stack-world,.stack-dock,.stack-dock-keep,.stack-dock-look,.dock-cell{display:contents}@media(min-width:1280px)and (pointer:fine){.generator-stack--canvas{display:block;width:100%;height:100%;position:relative}.generator-stack--canvas .stack-stage{display:block;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;overflow:clip;background-image:radial-gradient(var(--border-strong) 1px,transparent 1px);cursor:grab}.generator-stack--canvas .stack-stage:active{cursor:grabbing}.generator-stack--canvas .stack-world{display:block;position:absolute;top:0;left:0;transform-origin:0 0}.generator-stack--canvas .stack-cell{position:absolute;top:0;left:0;background:var(--page-bg);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card);padding:0 16px 16px;cursor:default}.generator-stack--canvas .stack-cell:hover{z-index:3;border-color:var(--accent)}.generator-stack--canvas .stack-cell--rolled>.content,.generator-stack--canvas .stack-cell--rolled>.generator-block>.content{height:0;min-height:0;padding:0;border-width:0;overflow:hidden;visibility:hidden}.generator-stack--canvas .stack-cell--rolled{padding-bottom:0}.generator-stack--canvas .stack-cell-head{display:flex;align-items:center;gap:8px;padding:11px 2px 9px;-webkit-user-select:none;user-select:none;cursor:grab}.generator-stack--canvas .stack-cell-head:active{cursor:grabbing}.generator-stack--canvas .stack-cell-name{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.generator-stack--canvas .stack-cell-roll{margin-left:auto;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:2px 4px;font-family:inherit;line-height:1}.generator-stack--canvas .stack-cell-roll:hover{color:var(--accent)}.generator-stack--canvas .generator-divider{display:none}.generator-stack--canvas .generator-block-top{max-width:none;display:flex;align-items:center;gap:2px}.generator-stack--canvas .stack-cell-head{flex:1;min-width:0}.generator-stack--canvas .generator-block-lock,.generator-stack--canvas .generator-remove-btn{position:static;flex-shrink:0;width:26px;height:26px}.generator-stack--canvas .generator-block-top--primary{position:static;transform:none;height:auto;order:-1}.generator-stack--canvas .stack-dock{display:flex;align-items:stretch;gap:6px;position:absolute;left:calc(50% - max(0px,min(var(--sidebar-width-resized, var(--sidebar-width)) / 2 / 1.1,50% - var(--stack-dock-w, 780px) / 2 - 14px)));bottom:16px;transform:translate(-50%);z-index:6;width:max-content}.generator-stack--canvas .stack-rows-foot,.generator-stack--canvas .generator-add--compact{display:contents}.generator-stack--canvas .dock-cell{display:inline-flex;align-items:stretch;position:relative;height:34px;background:var(--surface);border:1px solid var(--border-strong);border-radius:9px;box-shadow:var(--shadow-popover)}.generator-stack--canvas .stack-dock-look{order:1}.generator-stack--canvas .dock-cell--run{background:none;border:none;box-shadow:none}.generator-stack--canvas .dock-cell--run .generate-all-btn{width:auto;height:100%;display:inline-flex;align-items:center;gap:8px;padding:0 13px;border:none;border-radius:9px;background:var(--accent);color:#fff;font-family:inherit;font-size:11.5px;font-weight:600;letter-spacing:.01em;box-shadow:var(--shadow-popover);cursor:pointer}.generator-stack--canvas .dock-cell--run .generate-all-btn:hover{background:var(--accent-hover)}.generator-stack--canvas .dock-cell--run .generate-all-face{width:18px;height:18px;border-radius:5px}.generator-stack--canvas .dock-cell--run .generate-all-icon{width:11px;height:11px}.generator-stack--canvas .dock-cell--run .generate-all-label{display:inline}.generator-stack--canvas .dock-cell--run .generate-all-btn:after{display:none}.generator-stack--canvas .dock-cell .generator-add-inline,.generator-stack--canvas .dock-cell .stack-tools{display:flex;align-items:stretch;position:static;margin:0}.generator-stack--canvas .dock-cell .generator-add-inline-btn,.generator-stack--canvas .dock-cell .stack-add-sentence,.generator-stack--canvas .dock-cell .stack-batch-btn,.generator-stack--canvas .dock-cell>.save-preset-btn,.generator-stack--canvas .dock-cell .stack-outputs-btn,.generator-stack--canvas .dock-cell .stack-view-btn,.generator-stack--canvas .dock-cell .stack-zoom-btn{display:inline-flex;align-items:center;width:auto;height:auto;min-width:0;margin:0;padding:0 9px;border:none;border-radius:0;background:transparent;box-shadow:none;color:var(--text-muted);font-family:inherit;font-size:11px;font-weight:500;line-height:1;cursor:pointer}.generator-stack--canvas .dock-cell .generator-add-inline-btn:hover,.generator-stack--canvas .dock-cell .stack-add-sentence:hover,.generator-stack--canvas .dock-cell .stack-batch-btn:hover,.generator-stack--canvas .dock-cell>.save-preset-btn:hover,.generator-stack--canvas .dock-cell .stack-outputs-btn:hover,.generator-stack--canvas .dock-cell .stack-view-btn:hover,.generator-stack--canvas .dock-cell .stack-zoom-btn:hover{background:var(--hover-bg);color:var(--text)}.generator-stack--canvas .dock-cell .stack-view-btn--on,.generator-stack--canvas .dock-cell .stack-view-btn--on:hover{color:var(--accent);background:var(--accent-tint)}.generator-stack--canvas .dock-cell .stack-view-switch{display:flex;align-items:stretch;border:none;border-radius:0;overflow:visible}.generator-stack--canvas .dock-cell .stack-zoom{display:flex;align-items:stretch;gap:0}.generator-stack--canvas .dock-cell .stack-zoom-level{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:0 2px;font-size:10.5px;border-left:1px solid var(--border-strong);border-right:1px solid var(--border-strong)}.generator-stack--canvas .dock-cell>*+*:not(.generator-picker):not(.save-preset-popover),.generator-stack--canvas .dock-cell .stack-view-switch .stack-view-btn+.stack-view-btn{border-left:1px solid var(--border-strong)}@media(max-width:1439.98px){.generator-stack--canvas .dock-cell .stack-zoom{display:none}}.generator-stack--canvas .dock-cell .generator-add-inline-btn,.generator-stack--canvas .stack-dock-keep>.save-preset-btn:first-child,.generator-stack--canvas .dock-cell .stack-view-switch .stack-view-btn:first-child{border-radius:8px 0 0 8px}.generator-stack--canvas .dock-cell .stack-add-sentence,.generator-stack--canvas .dock-cell .stack-batch-btn,.generator-stack--canvas .dock-cell .stack-view-btn--tocanvas,.generator-stack--canvas .stack-dock-look>.save-preset-btn:last-of-type{border-radius:0 8px 8px 0}.stack-zoom{display:inline-flex;align-items:center;gap:2px}.stack-zoom-btn{width:26px;height:26px;border:1px solid var(--border-strong);border-radius:7px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:13px;line-height:1;cursor:pointer}.stack-zoom-btn:hover{border-color:var(--accent);color:var(--accent)}.stack-zoom-level{font-size:11px;color:var(--text-muted);min-width:36px;text-align:center;font-variant-numeric:tabular-nums}.generator-stack--canvas .stack-wires{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}.stack-wire{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;opacity:.75}.stack-wire--drag{stroke-dasharray:5 5;opacity:.9}.generator-stack--canvas .stack-cell{z-index:2}.stack-wire-error{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:8;background:var(--surface);border:1px solid var(--accent);border-radius:999px;padding:7px 15px;font-size:12px;color:var(--text);box-shadow:var(--shadow-popover)}.stack-cell-out{position:absolute;top:50%;right:-23px;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);cursor:crosshair}.stack-cell-out--filled,.stack-cell-out:hover{background:var(--accent)}.generator-stack--canvas .tool-socket{position:absolute;left:-23px;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);cursor:crosshair}.generator-stack--canvas .tool-socket--filled{background:var(--accent)}.generator-stack--canvas .stack-dock .generator-picker,.generator-stack--canvas .stack-dock .save-preset-popover{top:auto;bottom:calc(100% + 10px)}.main:has(.generator-stack--canvas){display:block;padding:0;overflow:hidden;overflow:clip;background-image:none}.main:has(.generator-stack--canvas) .custom-generator-page{height:100%;align-items:stretch}.main:has(.generator-stack--canvas) .custom-manage-bar{max-width:none;flex-shrink:0;padding:0 calc(16px + var(--panel-reserve, 0px) / 1.1) 8px 16px;margin:0;position:relative;z-index:6}.custom-generator-page .generator-stack--canvas{flex:1;min-height:0;height:auto}.main:has(.generator-stack--canvas) .site-footer{display:none}.generator-stack--canvas .stack-cell:has(.node-body){width:300px!important;padding:0}.generator-stack--canvas .stack-cell:has(.node-body) .generator-block{min-width:0}.generator-stack--canvas .stack-cell:has(.node-body) .generator-block-top{padding:0 8px 0 4px}.generator-stack--canvas .stack-cell:has(.node-body) .stack-cell-head{height:31px;padding:0 2px 0 8px;gap:4px}.generator-stack--canvas .stack-cell:has(.node-body) .stack-cell-name{font-size:12.5px;text-transform:none;letter-spacing:0;color:var(--text)}.generator-stack--canvas .stack-cell-fav{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;cursor:pointer}.generator-stack--canvas .stack-cell-reroll{border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:2px 4px;font-family:inherit;font-size:13px;line-height:1}.generator-stack--canvas .stack-cell-reroll:hover{color:var(--accent)}.generator-stack--canvas .stack-cell:has(.node-body) .stack-cell-name{flex:1;min-width:0}.generator-stack--canvas .stack-cell:has(.node-body) .stack-cell-out{top:var(--node-out-y, 38px);right:-7px;transform:translateY(-50%)}.generator-stack--canvas .stack-cell--rolled:has(.node-body) .stack-cell-out{top:16px;transform:none}.generator-stack--canvas .stack-cell--rolled>.node-body,.generator-stack--canvas .stack-cell--rolled>.generator-block>.node-body{height:0;min-height:0;padding:0;border-width:0;overflow:hidden;visibility:hidden}.generator-stack--canvas .stack-cell:has(.node-body) .node-body>.node-sec:last-child,.generator-stack--canvas .stack-cell:has(.node-body) .node-body>.node-sec:last-child .node-sec-head{border-radius:0 0 13px 13px}}@media(max-width:767.98px){.stack-row-picker{width:min(260px,calc(100vw - 40px))}}.dice-roller-card{flex-direction:column;gap:12px;aspect-ratio:auto;min-height:150px}.dice-roller-empty{font-size:15px;color:var(--text-muted)}.dice-roll{display:flex;flex-direction:column;align-items:center;gap:10px}.dice-roll-total{font-size:clamp(40px,9vw,64px);font-weight:700;line-height:1;color:var(--accent-on-tint)}.dice-working{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 8px}.dice-term{display:inline-flex;align-items:center;gap:3px}.dice-term-op{margin-right:2px;color:var(--text-muted);font-size:14px}.dice-face{min-width:26px;padding:3px 5px;border:1px solid var(--border);border-radius:6px;background:var(--hover-bg);color:var(--text);font-size:13px;text-align:center;font-variant-numeric:tabular-nums}.dice-face--dropped{color:var(--text-muted);border-style:dashed;text-decoration:line-through;opacity:.6}.dice-term-label{margin-left:3px;font-size:11px;color:var(--text-muted)}.dice-flat{font-size:15px;color:var(--text);font-variant-numeric:tabular-nums}.dice-roll-list{width:100%;max-width:380px;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.dice-roll-line{display:flex;align-items:center;gap:10px}.dice-roll-line-total{flex-shrink:0;min-width:42px;font-size:20px;font-weight:700;color:var(--accent-on-tint);font-variant-numeric:tabular-nums;text-align:right}.dice-working--compact{justify-content:flex-start;gap:3px}.dice-working--compact .dice-face{min-width:22px;padding:1px 4px;font-size:11.5px}.dice-notation-wrap{width:100%;display:flex;flex-direction:column;gap:8px}.dice-notation-input{font-size:15px;letter-spacing:.02em}.dice-presets{display:flex;flex-wrap:wrap;gap:6px}.dice-notation-note{min-height:16px;font-size:12px;color:var(--text-muted)}.dice-notation-note--error{color:#cc272e}.bracket-wrap{display:flex;flex-direction:column;gap:10px;--bracket-bleed: max(0px, min(100px, (100vw - 1180px) / 2));width:calc(100% + 2 * var(--bracket-bleed));margin-inline:calc(-1 * var(--bracket-bleed))}.bracket-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bracket-summary{margin-right:auto;font-size:12px;color:var(--text-muted)}.bracket-sim-btn{padding:5px 10px;border:1px solid var(--border-strong);border-radius:8px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:11.5px;cursor:pointer}.bracket-sim-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.bracket-sim-btn:disabled{opacity:.45;cursor:default}.bracket-champion{display:flex;align-items:baseline;gap:10px;padding:10px 14px;border:1px solid var(--accent);border-radius:12px;background:var(--accent-tint)}.bracket-champion-label{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-on-tint)}.bracket-champion-name{font-size:19px;font-weight:700;color:var(--accent-on-tint);overflow-wrap:anywhere}.bracket-rounds{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px}.bracket-round{flex:0 0 auto;min-width:156px;display:flex;flex-direction:column;gap:6px}.bracket-round-label{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.bracket-round-matches{flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:6px}.bracket-match{position:relative;display:flex;flex-direction:column;gap:1px;padding:7px 8px 7px 26px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.bracket-match-id{position:absolute;left:7px;top:7px;font-size:9.5px;color:var(--text-muted)}.bracket-side{font-size:12.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-side--bye{color:var(--text-muted);font-style:italic}.bracket-side--pending{color:var(--text-muted)}.bracket-side--pick{display:block;width:100%;margin:-2px -4px;padding:2px 4px;border:0;border-radius:5px;background:transparent;color:inherit;font-family:inherit;font-size:12.5px;text-align:left;cursor:pointer}.bracket-side--pick:hover{background:var(--hover-bg);color:var(--accent)}.bracket-side--won{font-weight:700;color:var(--accent-on-tint)}.bracket-side--pick.bracket-side--won:hover{background:var(--accent-tint)}.bracket-side--out{color:var(--text-muted);opacity:.65}.bracket-match--played{border-color:var(--border-strong)}.bracket-match--walkover{border-style:dashed}@media(max-width:767.98px){.bracket-round{min-width:138px}}.shuffle-result{width:100%;display:flex;flex-direction:column;gap:8px}.shuffle-summary{font-size:12px;color:var(--text-muted)}.shuffle-list{margin:0;padding:6px 0;list-style:none;counter-reset:shuffle;display:flex;flex-direction:column;gap:2px;border:1px solid var(--border-strong);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-card);max-height:420px;overflow-y:auto}.shuffle-item{counter-increment:shuffle;display:flex;align-items:baseline;gap:10px;padding:5px 14px;font-size:14px;color:var(--text);overflow-wrap:anywhere}.shuffle-item:before{content:counter(shuffle) ".";flex-shrink:0;min-width:26px;text-align:right;color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.shuffle-options{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.shuffle-keep{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.shuffle-keep-input{width:66px;padding:6px 8px;font-size:13px;text-align:center}.shuffle-options .team-count-hint{margin-right:auto}.bingo-controls{width:100%;display:flex;flex-direction:column;gap:12px}.bingo-modes{display:flex;flex-wrap:wrap;gap:6px}.bingo-note{min-height:16px;font-size:12px;color:var(--text-muted)}.bingo-note--short{color:#cc272e}.bingo-cards{width:100%;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.bingo-card{flex:0 0 auto;display:flex;flex-direction:column;gap:5px}.bingo-card-title{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.bingo-grid{display:flex;flex-direction:column;gap:3px;padding:8px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.bingo-head,.bingo-row{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.bingo-head-cell{display:flex;align-items:center;justify-content:center;height:24px;font-size:15px;font-weight:700;color:var(--accent-on-tint)}.bingo-cell{aspect-ratio:1;width:48px;display:flex;align-items:center;justify-content:center;padding:2px;border:1px solid var(--border);border-radius:6px;background:var(--page-bg);color:var(--text);font-size:14px;line-height:1.15;text-align:center;overflow:hidden;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.bingo-grid--words .bingo-cell{aspect-ratio:auto;width:84px;height:62px;padding:3px;font-size:9.5px;line-height:1.25}.bingo-cell--free{border-color:var(--accent);background:var(--accent-tint);color:var(--accent-on-tint);font-size:9.5px;letter-spacing:.06em}@media(max-width:767.98px){.bingo-cell{width:44px}.bingo-grid--words .bingo-cell{width:60px;height:66px;font-size:8.5px}}.address-card,.lorem-card{width:100%;box-sizing:border-box;padding:18px 20px;border:1px solid var(--border-strong);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-card)}.address-placeholder,.lorem-placeholder{margin:0;color:var(--text-muted);font-size:14px;text-align:center}.address-list{margin:0;padding:0;list-style:none;counter-reset:address;display:flex;flex-direction:column;gap:14px;max-height:460px;overflow-y:auto}.address-entry{counter-increment:address;display:flex;flex-direction:column;font-size:14px;line-height:1.45;color:var(--text);overflow-wrap:anywhere}.address-list--single .address-entry:before{content:none}.address-entry:before{content:counter(address) ".";color:var(--text-muted);font-size:11px;letter-spacing:.04em;margin-bottom:2px}.address-line{display:block}.lorem-meta{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.lorem-card{max-height:520px;overflow-y:auto}.lorem-paragraph{margin:0 0 12px;font-size:14px;line-height:1.62;color:var(--text)}.lorem-paragraph:last-child{margin-bottom:0}.lorem-list{margin:0;padding-left:20px;font-size:14px;line-height:1.7;color:var(--text)}.char-card{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:14px;padding:22px 22px 18px;text-align:left;aspect-ratio:auto;min-height:150px}.char-empty{color:var(--text-muted);font-size:15px;text-align:center;padding:40px 0}.char-face{align-self:center;background:#16161c;border:1px solid #2e2e38;border-radius:12px;padding:10px 22px;font-size:24px;line-height:1.15;text-align:center;white-space:pre}.char-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:2px solid var(--border-strong);padding-bottom:10px}.char-name{font-size:24px;font-weight:700;color:var(--text);margin:0;overflow-wrap:anywhere}.char-ctl{display:inline-flex;gap:2px;flex-shrink:0}.char-ctl-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;padding:0}.char-ctl-btn svg{width:15px;height:15px}.char-ctl-btn:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.char-ctl-btn:disabled{opacity:.35;cursor:default}.char-ctl-btn--on{color:var(--accent)}.char-identity{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}.char-field{display:flex;align-items:baseline;gap:8px;padding:3px 0;min-width:0}.char-field-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;width:74px}.char-field-value{font-size:13.5px;font-weight:600;color:var(--text);flex:1;min-width:0;overflow-wrap:break-word}.char-field--locked{box-shadow:inset 2px 0 0 var(--accent);padding-left:8px;margin-left:-10px}.char-stats-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:-6px}.char-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.char-stat{display:flex;flex-direction:column;align-items:center;gap:1px;border:1px solid var(--border-strong);border-radius:8px;padding:8px 2px 6px;background:var(--surface)}.char-stat-ability{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--text-muted)}.char-stat-score{font-size:22px;font-weight:700;color:var(--text);line-height:1.1}.char-stat-mod{font-size:12px;font-weight:700;color:var(--accent-on-tint);background:var(--accent-tint);border-radius:999px;padding:0 7px}.char-stat-mod--neg{color:var(--text-muted);background:var(--hover-bg)}.char-stat-faces{display:flex;gap:3px;margin-top:3px}.char-stat-face{font-size:9.5px;font-weight:600;color:var(--text-muted)}.char-stat-face--dropped{text-decoration:line-through;opacity:.55}.char-derived{display:flex;flex-wrap:wrap;gap:6px}.char-derived-chip{font-size:11.5px;font-weight:600;color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:3px 10px}.char-derived-chip b{color:var(--text);font-weight:700}.char-cols{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;border-top:1px solid var(--border);padding-top:12px}.char-col{display:flex;flex-direction:column;gap:2px;min-width:0}.char-col .eyebrow{margin-bottom:4px}.char-col .char-field{flex-direction:column;align-items:stretch;gap:1px;position:relative;padding-right:56px}.char-col .char-field .char-ctl{position:absolute;right:0;top:3px}.char-col .char-field-label{width:auto}.char-col .char-field-value{font-weight:500}.char-blurb{font-size:12px;line-height:1.55;color:var(--text-muted);margin:8px 0 0}.char-options{display:flex;flex-direction:column;align-items:center;gap:10px}.char-physique{display:flex;flex-direction:column;gap:2px;margin-top:8px}.char-physique-meta{font-size:12.5px;font-weight:600;color:var(--text)}.char-physique-trait{font-size:11.5px;line-height:1.45;color:var(--text-muted)}.char-prof-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 0}.char-prof-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);width:74px;flex-shrink:0}.char-feature-list{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:12.5px;line-height:1.5;color:var(--text-muted)}.char-feature-list b{color:var(--text);font-weight:600}.char-feature-list li{display:flex;gap:8px;align-items:baseline}.char-feature-text{flex:1;min-width:0}.char-feature-list .char-ctl{align-self:flex-start}.char-feature-lv{flex-shrink:0;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--text-muted);border:1px solid var(--border);border-radius:5px;align-self:flex-start;margin-top:1px}.char-feature--new .char-feature-lv{color:var(--accent);border-color:var(--accent)}.char-levelup-btn{width:100%}.char-grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}@media(min-width:1360px){.char-grid{grid-template-columns:minmax(0,29fr) minmax(288px,20fr);gap:20px}.char-rail{position:sticky;top:14px}}.char-main,.char-rail{min-width:0;display:flex;flex-direction:column;gap:14px}.char-id-row{display:flex;gap:22px;align-items:flex-start}.char-id-col{width:168px;flex-shrink:0;display:flex;flex-direction:column;gap:10px}.char-id-actions{display:flex;flex-direction:column;gap:6px}.char-id-actions .generate-btn{width:100%;padding:11px 10px;font-size:14px}.char-id-actions .char-levelup-btn{padding:7px 8px;font-size:12px}.char-id-actions-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.char-id-actions-row>*{width:100%;min-width:0;justify-content:center;padding:7px 4px;font-size:12px}.char-portrait{width:168px;aspect-ratio:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#16161c;border:1px solid #2e2e38;border-radius:12px}.char-portrait .char-face{background:transparent;border:0;padding:0;font-size:32px}.char-stat-asi{font-size:9.5px;font-weight:700;color:var(--accent);vertical-align:super;margin-left:1px}.char-portrait-empty{color:#4a4a56;font-size:40px}.char-id-right{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.char-id-right .char-identity{display:flex;flex-direction:column;gap:4px}.char-story-card section.char-col,.char-kit-card section.char-col{display:grid;grid-template-columns:1fr 1fr;gap:16px 30px}.char-story-card .eyebrow,.char-kit-card .eyebrow,.char-kit-card .char-blurb{grid-column:1 / -1}.char-kit-card .char-blurb{margin:0}.char-rail .char-stats{grid-template-columns:repeat(3,1fr);gap:8px}.char-rail-actions .generate-btn{width:100%}.char-rail-actions-row{display:flex;gap:8px}.char-rail-actions-row>*{flex:1}.char-options--rail{align-items:stretch}.char-options--rail .dice-presets{flex-direction:column;align-items:stretch;width:100%}.char-options--rail .char-level-row{flex-direction:row;align-items:center}.char-wide-foot{margin-top:0}.char-wide-foot .generator-add-inline{margin-left:0}.char-wide-foot:empty{display:none}.char-level-badge{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:2px 9px;margin-left:auto;flex-shrink:0;white-space:nowrap}.char-level-row{align-items:center;flex-wrap:wrap;justify-content:center}.char-level-row .char-prof-label{width:100%;text-align:left}.char-level-row .lottery-format-btn{min-width:40px;text-align:center}.char-party{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.char-member{display:flex;flex-direction:column;gap:10px;min-width:0}.char-member-head{display:flex;gap:12px;align-items:flex-start}.char-portrait--small{width:92px;border-radius:10px}.char-portrait--small .char-face{font-size:17px;line-height:1.25}.char-member-id{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.char-member-role{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.char-member .char-name{font-size:18px}.char-member-line{font-size:12px;font-weight:600;color:var(--text);overflow-wrap:break-word}.char-member-line--dim{color:var(--text-muted);font-weight:500}.char-stats--mini .char-stat{padding:5px 1px 4px}.char-stats--mini .char-stat-score{font-size:15px}.char-member-facts{border-top:1px solid var(--border);padding-top:6px}.char-member-facts .char-field-label{width:58px}.char-member-facts .char-field-value{font-size:12.5px;font-weight:500}.char-member-actions{display:flex;gap:8px;margin-top:auto}.char-member-actions .custom-io-btn{flex:1}@media(max-width:1100px){.char-party{grid-template-columns:1fr}}@media(max-width:640px){.char-id-row{flex-direction:column;align-items:stretch}.char-id-col{width:100%}.char-portrait{align-self:center}.char-story-card section.char-col,.char-kit-card section.char-col{grid-template-columns:1fr;gap:10px}}@media(max-width:560px){.char-stats{grid-template-columns:repeat(3,1fr)}.char-identity,.char-cols{grid-template-columns:1fr}}.node-body{display:flex;flex-direction:column;width:100%;min-width:0;text-align:left}.node-term{background:var(--term-bg)}.node-term-bar{display:flex;align-items:center;gap:7px;height:26px;padding:0 8px 0 12px;background:var(--term-bar);border-bottom:1px solid var(--term-line)}.node-term-title{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--term-dim)}.node-term-meta{margin-left:auto;font-size:10px;color:var(--term-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-term-bar .copy-btn{width:20px;height:20px;flex-shrink:0}.node-term-bar .copy-btn:first-of-type{margin-left:auto}.node-term-bar .node-term-meta+.copy-btn{margin-left:0}.node-term-bar .copy-btn:hover{background:var(--term-line)}.node-term-bar .copy-icon:before,.node-term-bar .copy-icon:after{border-color:var(--term-dim)}.node-term-bar .copy-icon:after,.node-term-bar .copy-btn:hover .copy-icon:after{background:var(--term-bar)}.node-term-bar .note-btn-icon{color:var(--term-dim)}.node-term-bar .copy-btn--copied{background:transparent}.node-term-body{display:flex;flex-direction:column;gap:3px;padding:8px 10px 10px}.node-tline{display:flex;align-items:baseline;gap:9px;font-size:12.5px;line-height:1.5;min-width:0}.node-ln{flex:0 0 14px;text-align:right;font-size:10.5px;color:var(--term-dim);-webkit-user-select:none;user-select:none}.node-str{color:var(--term-accent);overflow-wrap:anywhere;min-width:0}.node-tline--rolling .node-str{color:var(--term-dim)}.node-tline-icon{width:16px;height:16px;object-fit:contain;align-self:center;flex-shrink:0}.node-dline{padding-left:23px;font-size:10.5px;line-height:1.55;color:var(--term-dim)}.node-term-empty{padding-left:23px;font-size:11.5px;color:var(--term-dim)}.node-term-grip{display:flex;align-items:center;gap:8px;height:15px;padding:0 10px;border-top:1px solid var(--term-line);cursor:row-resize;touch-action:none;-webkit-user-select:none;user-select:none}.node-term-grip-line{flex:1;height:3px;border-radius:2px;background:var(--node-cb-border)}.node-term-grip:hover .node-term-grip-line,.node-term-grip:active .node-term-grip-line,.node-term-grip:focus-visible .node-term-grip-line{background:var(--accent)}.node-term-grip:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.node-term-grip-count{flex-shrink:0;font-size:10.5px;color:var(--term-dim);font-variant-numeric:tabular-nums}.node-note{background:var(--term-bar);border-top:1px solid var(--term-line);color:var(--term-text);font-size:10.5px;line-height:1.5;padding:6px 12px}.node-vslot--math{padding:10px 12px}.node-vslot--math svg{display:block;height:148px;width:auto;max-width:100%}.node-reveal{display:flex;justify-content:center;padding:2px 12px 4px}.node-reveal-btn{border:1px solid var(--term-line);border-radius:7px;background:transparent;color:var(--term-accent);font:600 10.5px/1 var(--font-mono, "JetBrains Mono", monospace);letter-spacing:.04em;padding:5px 12px;cursor:pointer}.node-reveal-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.node-portstrip{display:flex;align-items:center;padding:4px 12px 5px;border-top:1px solid var(--term-line);position:relative}.node-portstrip-label{font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--term-dim)}.node-portstrip .node-sock--out{position:absolute;left:auto;right:-7px;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);box-sizing:border-box;cursor:crosshair}.node-portstrip .node-sock--out:hover{background:var(--accent)}.node-tline--wrap .node-str{white-space:normal;overflow-wrap:anywhere;line-height:1.55}.node-vslot--addr{justify-content:flex-start;padding:9px 12px}.node-addr{display:flex;flex-direction:column;gap:1px;width:100%;font-size:12px;line-height:1.5;color:var(--node-row-text)}.node-addr-first{font-weight:600}.node-vslot--cards{padding:10px 8px}.node-vslot--cards .card-draw-stage,.node-vslot--cards .poker-stage{max-width:100%;margin:0 auto;gap:6px}.node-vslot--cards .card-draw-card,.node-vslot--cards .poker-card{max-width:90px}.node-vslot--ticket{padding:10px 8px;flex-direction:column;gap:6px}.node-vslot--ticket .lottery-line{gap:5px}.node-vslot--ticket .lottery-ball{width:30px;height:30px;font-size:12px;border-width:2px}.node-brow--sw{cursor:pointer}.node-sw{position:relative;flex-shrink:0;margin-left:auto;width:26px;height:15px;border-radius:999px;background:var(--node-cb-border);transition:background .15s ease}.node-sw:after{content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#fff;transition:left .15s ease}.node-sw--on{background:var(--accent)}.node-sw--on:after{left:13px}html.anims-off .node-sw,html.anims-off .node-sw:after{transition:none}@media(prefers-reduced-motion:reduce){.node-sw,.node-sw:after{transition:none}}.node-choices{display:flex;flex-wrap:wrap;gap:4px;padding:1px 2px 2px}.node-choice{padding:3px 8px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:999px;color:var(--node-row-text);font:inherit;font-size:10.5px;cursor:pointer}.node-choice:hover{border-color:var(--accent)}.node-choice--on{background:var(--accent);border-color:var(--accent);color:#fff}.node-bingo{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;width:100%;font-variant-numeric:tabular-nums}.node-bingo-head{text-align:center;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--accent);padding-bottom:2px}.node-bingo-cell{aspect-ratio:1;display:grid;place-items:center;padding:0 2px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:4px;font-size:11.5px;line-height:1.1;color:var(--node-row-text);overflow:hidden;text-align:center;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.node-bingo-cell--free{background:var(--node-wired);color:var(--node-wired-text);font-size:9px;font-weight:700;letter-spacing:.06em}.node-vslot--bracket{padding:8px 6px;overflow-x:auto}.node-bracket{display:flex;gap:3px;align-items:stretch;width:100%}.node-bracket-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:space-around;gap:3px}.node-bracket-match{display:flex;flex-direction:column;gap:1px}.node-bracket-side{min-width:0;padding:1px 4px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:3px;font-size:8.5px;line-height:1.5;color:var(--node-row-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-bracket-side--won{background:var(--node-wired);border-color:transparent;color:var(--node-wired-text);font-weight:700}.node-sim-btn--wide{width:auto;min-width:96px;padding:0 9px}.node-vslot--ladder,.node-vslot--bottle{padding:8px 6px}.node-vslot--ladder .ladder-svg,.node-vslot--bottle .bottle-stage{width:100%;max-width:268px}.node-vslot--bottle .bottle-stage{margin:0 auto}.node-vslot--bottle .bottle-player{max-width:74px;padding:2px 7px;font-size:10.5px}.node-zones{display:flex;flex-direction:column;gap:4px;background:var(--term-bar);border-top:1px solid var(--term-line);padding:0 8px 7px}.node-zones--closed{padding-bottom:0}.node-zones-cap{display:flex;align-items:center;gap:6px;height:24px;padding:0 2px 0 4px;background:transparent;border:none;color:var(--term-dim);font:inherit;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;cursor:pointer}.node-zones-cap:hover{color:var(--term-text)}.node-zones-list{display:flex;flex-direction:column;gap:3px}.node-zrow{position:relative;display:flex;align-items:center;gap:8px;min-height:23px;padding:0 8px;background:var(--node-row);border-radius:6px;box-shadow:var(--node-row-shadow);color:var(--node-row-text);font-size:11.5px}.node-zrow-i{color:var(--node-row-dim);min-width:8px}.node-zrow-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-zrow-hit{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:9.5px;font-weight:700;font-variant-numeric:tabular-nums}.node-zrow-pct{color:var(--node-row-dim);font-variant-numeric:tabular-nums}.node-zrow--hit{background:var(--node-wired)}.node-zrow--hit .node-zrow-name{color:var(--node-wired-text);font-weight:600}.node-zrow .node-sock--out{position:absolute;left:auto;right:-14px;top:50%;transform:translateY(-50%);width:11px;height:11px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);box-sizing:border-box;cursor:crosshair}.node-zrow .node-sock--out:hover,.node-zrow .node-sock--out.node-sock--filled{background:var(--accent)}.node-vslot.node-vslot--board{display:block;width:100%;min-width:0;padding:0}.node-plinko-canvas{display:block;width:100%;aspect-ratio:100 / 132;background:var(--term-bg)}.node-slider{flex:1;min-width:0;margin-left:auto;accent-color:var(--accent);height:14px}.node-art{display:block;width:100%;min-width:0;border-top:1px solid var(--term-line);border-bottom:1px solid var(--term-line);background:var(--art-ink)}.node-art>svg,.node-art svg{display:block;width:100%;height:auto;max-width:100%}.node-art--dark{background:var(--art-dark)}.node-art--wide>svg{aspect-ratio:5 / 3}.node-art>canvas{display:block;width:100%;height:auto;touch-action:none}.node-generate-split{display:flex;border-top:1px solid var(--term-line)}.node-generate-split .node-generate{flex:1;border-top:0}.node-sim-btn{flex:0 0 auto;width:84px;white-space:nowrap;border:0;border-left:1px solid var(--term-line);background:var(--term-bar);color:var(--accent);font:600 11px/1 var(--font-mono, "JetBrains Mono", monospace);letter-spacing:.04em;cursor:pointer;padding:0}.node-sim-btn:hover:not(:disabled){background:var(--accent);color:#fff}.node-sim-btn:disabled{color:var(--term-dim);cursor:default}.node-brow--acts{display:flex;gap:6px;padding:5px 8px}.node-act{flex:1;border:1px solid var(--node-field-bd, var(--border-strong));border-radius:6px;background:var(--node-field, var(--surface));color:var(--node-row-text, var(--text));font:500 11px/1 var(--font-mono, "JetBrains Mono", monospace);padding:5px 0;cursor:pointer}.node-act:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.node-act:disabled{opacity:.45;cursor:default}.node-txt--seed{width:96px;text-align:right;letter-spacing:.04em}.node-vslot--globe{display:block;padding:0}.node-vslot--globe .globe-svg{width:100%;margin-bottom:0}.node-portstrip--band{display:block;padding:0;background:var(--term-bg)}.node-portstrip-cap{display:flex;align-items:center;gap:7px;width:100%;padding:5px 12px 6px;border:0;background:transparent;font:inherit;color:inherit;cursor:pointer}.node-portstrip-cap:hover{background:var(--node-row)}.node-portstrip-cap .node-chev{width:9px;height:6px;flex-shrink:0;color:var(--term-dim)}.node-portstrip--band .node-sock--out{top:13px;transform:none}.node-portstrip-body{padding:0 8px 8px}.node-sheet-sec{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--node-row-dim);margin:7px 0 3px 4px}.node-sheet-sec:first-child{margin-top:2px}.node-portstrip-body .char-field{align-items:flex-start;gap:6px;background:var(--node-row);border-radius:4px;padding:3px 5px 3px 7px;margin-bottom:2px;font-size:10.5px;line-height:1.45}.node-portstrip-body .char-field-label{flex:0 0 52px;font-size:8px;font-weight:600;letter-spacing:.08em;color:var(--node-row-dim);padding-top:2px}.node-portstrip-body .char-field-value{font-size:10.5px;color:var(--node-row-text);flex:1;min-width:0}.node-portstrip-body .char-field--locked{background:var(--node-wired)}.node-portstrip-body .char-field--locked .char-field-value{color:var(--node-wired-text)}.node-portstrip-body .char-ctl{gap:3px;padding-top:1px}.node-portstrip-body .char-ctl-btn{width:13px;height:13px;padding:0;color:var(--node-row-dim)}.node-portstrip-body .char-ctl-btn svg{width:13px;height:13px}.node-sheet-chips{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:3px}.node-sheet-chip{background:var(--node-row);border-radius:4px;padding:2px 6px;font-size:10px;color:var(--node-row-dim)}.node-sheet-chip b{color:var(--node-row-text);font-weight:600;font-variant-numeric:tabular-nums}.node-vslot.node-vslot--char{display:block;padding:9px 12px}.node-charpane{display:flex;gap:10px;align-items:flex-start}.node-charface{flex:0 0 auto}.node-charface .char-face{width:78px;font-size:13px;line-height:1.3;padding:8px 4px;border-radius:6px}.node-charstats{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;flex:1;min-width:0}.node-charstat{background:var(--node-row);border-radius:4px;padding:2px 4px;text-align:center}.node-charstat b{display:block;font-size:12px;color:var(--node-row-text);font-variant-numeric:tabular-nums}.node-charstat i{font-style:normal;font-size:8px;color:var(--accent);margin-left:2px}.node-charstat span{font-size:7.5px;letter-spacing:.08em;color:var(--node-row-dim)}.node-charmeta{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--node-row-dim)}.node-charmeta .char-ctl{margin-left:auto;gap:3px}.node-charmeta .char-ctl-btn{width:13px;height:13px;padding:0;color:var(--node-row-dim)}.node-charmeta .char-ctl-btn svg{width:13px;height:13px}.node-roster{display:flex;flex-direction:column;gap:3px}.node-roster-row{display:flex;gap:6px;font-size:10.5px;align-items:baseline}.node-roster-row b{color:var(--term-accent);font-weight:600;min-width:54px;font-size:9px;letter-spacing:.05em;text-transform:uppercase}.node-roster-row span{color:var(--node-row-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-brow--chips{align-items:center}.node-chips{display:flex;gap:3px;margin-left:auto}.node-chip-btn{background:var(--node-field);border:1px solid var(--node-field-border);border-radius:4px;padding:1px 6px;font:inherit;font-size:10px;line-height:1.5;color:var(--node-row-text);cursor:pointer}.node-chip-btn--on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.node-zrow-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.node-palette{display:flex;height:62px;border-top:1px solid var(--term-line)}.node-palette>span{flex:1;display:flex;align-items:flex-end;justify-content:center;padding-bottom:4px;font-size:8.5px;letter-spacing:.02em;min-width:0}.node-txt--bound{width:104px;text-align:right;letter-spacing:.02em}.node-str--seed{color:var(--term-dim)}.svg-copy-btn--compact{position:static;height:22px;padding:0 6px;border:none;border-radius:6px;background:transparent;color:var(--term-dim);font-size:9px;letter-spacing:.04em;opacity:1}.svg-copy-btn--compact:hover{background:var(--hover-bg-strong);color:var(--term-text)}.node-brow-group{display:contents}.node-brow-group--off>*{opacity:.42}.node-brow-group--off input,.node-brow-group--off .node-brow--btn{pointer-events:none}.node-brow--off{opacity:.42;cursor:default}.node-vslot{display:flex;justify-content:center;align-items:center;padding:12px 10px;background:var(--term-bg);border-top:1px solid var(--term-line)}.node-vslot--words{display:block;padding:9px 12px}.node-wgroup+.node-wgroup{margin-top:7px}.node-wgroup-title{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--node-row-dim);margin-bottom:3px}.node-wgroup--full .node-wgroup-title{color:var(--term-accent)}.node-wwords{display:flex;flex-wrap:wrap;gap:3px}.node-wword{background:var(--node-row);border-radius:4px;padding:1px 5px;font-size:10.5px;color:var(--node-row-text)}.node-wgroup--full .node-wword{background:var(--node-wired);color:var(--node-wired-text)}.node-wword--picked,.node-wgroup--full .node-wword--picked{background:var(--accent);color:#fff;font-weight:700}.node-wword--more{background:transparent}.node-dice{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:100%}.node-die{position:relative;display:inline-flex}.node-die--dropped{opacity:.38;filter:saturate(.6)}.node-die-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;font-style:normal;color:#fafcff;text-shadow:0 2px 4px oklch(.2 .05 275 / .4);pointer-events:none}.node-die-value--sm{font-size:20px}.node-vslot--wheel{overflow:visible;position:relative;display:block;height:398px;padding:0}.node-vslot--wheel .wheel-stage{position:absolute;top:22px;left:50%;transform:translate(-50%);width:360px;margin:0}.node-vslot--coins{overflow:hidden;padding:20px 12px}.cfnode-coins{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.cfnode-scene{display:inline-block;perspective:420px}.cfnode-coin{display:block;position:relative;width:112px;height:112px;transform-style:preserve-3d;container-type:inline-size;transition:transform 1.5s cubic-bezier(.3,.9,.4,1)}.cfnode-scene--sm .cfnode-coin{width:64px;height:64px}.cfnode-coin--no-anim{transition:none}.cfnode-face{transform:translateZ(3px)}.cfnode-face--back{transform:rotateX(180deg) translateZ(3px)}.popover-contains{width:100%;height:28px;padding:0 8px;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font:inherit;font-size:12px}.popover-contains:focus{outline:none;border-color:var(--accent)}.node-vslot--swatch{height:132px;padding:0;background:var(--term-bg);transition:background .18s ease}.node-cswatch{width:14px;height:14px;border-radius:3px;flex-shrink:0;align-self:center;box-shadow:inset 0 0 0 1px #ffffff24}.node-cfam{margin-left:auto;padding-left:8px;color:var(--term-dim);font-size:10px;white-space:nowrap}.node-vslot--8ball{padding:16px 10px}.node-vslot--8ball .eightball{width:168px;height:168px}.node-vslot--8ball .eightball-window{width:84px;height:84px}.node-vslot--8ball .eightball-answer{font-size:9px;line-height:1.25}.node-vslot--8ball .eightball-eight{font-size:34px}.node-live{padding:1px 5px;border:1px solid color-mix(in srgb,var(--term-accent) 55%,transparent);border-radius:3px;color:var(--term-accent);font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}a.node-str--link{text-decoration:none}a.node-str--link:hover{text-decoration:underline}.node-vslot--tarot{padding:14px 10px}.node-vslot--tarot .tarot-flip-stage,.node-vslot--tarot>.tarot-card-svg{height:224px}.node-tspread{display:flex;gap:10px;justify-content:center}.node-tspread-slot{display:flex;flex-direction:column;align-items:center;gap:5px;justify-content:flex-end}.node-tspread .tarot-card-svg{height:128px}.node-tspread-slot{min-height:128px}.node-tspread-label{font-size:8.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--term-dim)}.node-tspread-slot:has(.node-tspread-label){min-height:146px}.node-txt{margin-left:auto;width:116px;height:17px;padding:0 6px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:4px;color:var(--term-text);font:inherit;font-size:11px;text-align:left}.node-txt:focus{outline:none;border-color:var(--accent)}.node-txt[aria-invalid=true]{border-color:#c0453e}.node-swch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.node-brow-label--name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-num--pct{width:40px;flex-shrink:0}.node-pct-unit{color:var(--term-dim);font-size:10px}.node-wp-scroll{display:flex;flex-direction:column;gap:5px;max-height:208px;overflow-y:auto}.node-textarea{width:100%;min-height:64px;max-height:160px;resize:vertical;padding:6px 8px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:6px;color:var(--term-text);font:inherit;font-size:11.5px;line-height:1.5}.node-textarea:focus{outline:none;border-color:var(--accent)}.node-textarea:disabled{opacity:.65}.node-table{display:grid;grid-template-columns:auto 1fr}.node-table-k,.node-table-v{min-width:0;padding:4px 0;border-top:1px solid var(--term-line);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.node-table-k:first-child,.node-table-k:first-child+.node-table-v{border-top:none}.node-table-k{padding-right:9px;border-right:1px solid var(--term-line);color:var(--term-dim);font-size:11px}.node-table-v{padding-left:9px;color:var(--accent)}.node-table-v--none{color:var(--term-dim)}.node-ops{margin-left:auto;display:flex;gap:3px}.node-op{min-width:19px;height:17px;padding:0 3px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:4px;color:var(--term-text);font:inherit;font-size:10px;cursor:pointer}.node-op--on{background:var(--accent);border-color:var(--accent);color:#fff}.node-op:disabled{cursor:default;opacity:.65}.node-slider{margin-left:auto;width:104px;accent-color:var(--accent)}.node-mat{display:flex;flex-direction:column;gap:5px}.node-inputs{display:flex;flex-direction:column;gap:5px;background:var(--term-bar);border-top:1px solid var(--term-line);padding:0 8px 8px}.node-inputs--closed{padding-bottom:0}.node-inputs-cap{display:flex;align-items:center;gap:6px;height:26px;padding:0 2px 0 4px;background:transparent;border:none;color:var(--term-dim);font:inherit;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;cursor:pointer}.node-inputs-cap:hover{color:var(--term-text)}.node-brow{display:flex;align-items:center;gap:8px;min-height:25px;padding:0 8px;background:var(--node-row);border:none;border-radius:6px;box-shadow:var(--node-row-shadow);color:var(--node-row-text);font:inherit;font-size:11.5px;text-align:left}button.node-brow{cursor:pointer;width:100%}.node-brow-label{white-space:nowrap}.node-brow-value{margin-left:auto;display:flex;align-items:center;gap:5px;color:var(--term-dim);font-size:11px}button.node-brow:hover .node-brow-value{color:var(--term-text)}.node-brow--wired{background:var(--node-wired);color:var(--node-wired-text)}.node-brow--wired .node-brow-label{color:var(--node-wired-text)}.node-brow-value--wired{color:var(--node-wired-text);font-size:11px}.node-brow-value--wired b{font-weight:700;color:var(--node-wired-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.node-inputs-cap--pinned{cursor:default}.node-pin{margin-left:auto;font-size:8.5px;font-weight:700;letter-spacing:.1em;color:var(--node-pin-text);border:1px solid var(--node-pin-border);border-radius:999px;padding:1px 7px}.node-brow,.node-filter-wrap{position:relative}.node-sock{position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:11px;height:11px;border-radius:50%;background:var(--term-bg);border:2px solid var(--border-strong);cursor:crosshair;box-sizing:border-box;z-index:2}.node-sock:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.node-filter-wrap>.node-sock{top:12.5px}.node-sock--filled{background:var(--accent);border-color:var(--accent)}.node-sock:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.node-num{margin-left:auto;width:46px;height:17px;padding:0 5px;background:var(--node-field);border:1px solid var(--node-field-border);border-radius:4px;color:var(--term-text);font:inherit;font-size:11px;text-align:right}.node-num:focus{outline:none;border-color:var(--accent)}.node-cb{flex-shrink:0;width:13px;height:13px;border-radius:3.5px;border:1px solid var(--node-cb-border);background:var(--node-field);display:grid;place-items:center;color:#fff}.node-cb--on{background:var(--accent);border-color:var(--accent)}.node-filter-wrap{position:relative}.node-filter-wrap .popover{top:calc(100% + 6px);left:0;right:auto;--panel-width: 100%;min-width:200px;z-index:30}.node-generate{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:6px 0;background:transparent;border:none;border-top:1px solid var(--term-line);color:var(--accent);font:inherit;font-size:11.5px;font-weight:700;letter-spacing:.04em;cursor:pointer}.node-generate:hover:not(:disabled){background:var(--accent);color:#fff}.node-generate:disabled{opacity:.45;cursor:default}.node-die-face{flex:0 0 auto;width:16px;height:16px;border-radius:4.5px;background:var(--accent);color:#fff;display:grid;place-items:center}.node-die-face svg{display:block}.node-generate:hover:not(:disabled) .node-die-face{background:#fafcff;color:var(--accent)}.node-chev{width:10px;height:6px;flex-shrink:0}.node-chev--closed{transform:rotate(-90deg)}.node-sec{border-top:1px solid var(--border)}.node-sec-head{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;background:transparent;border:none;color:var(--text);font:inherit;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-align:left}.node-sec-head:hover{background:var(--hover-bg)}.node-sec-hint{margin-left:auto;font-size:11px;font-weight:600;letter-spacing:0;color:var(--text-muted)}.node-sec-body{display:flex;flex-direction:column;gap:10px;padding:2px 12px 12px}.node-about-txt{margin:0;font-size:11.5px;line-height:1.65;color:var(--text-body)}.node-fact{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--text-muted)}.node-fact b{color:var(--text);font-weight:700}.node-rel-cap{margin-top:2px;font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.node-chips{display:flex;flex-wrap:wrap;gap:6px}.node-chip{background:var(--accent-tint);color:var(--accent-on-tint);border:none;border-radius:999px;padding:3px 10px;font:inherit;font-size:10.5px;cursor:pointer}.node-chip:hover{background:var(--accent);color:#fff}.node-sec-body .generator-seo{margin:0}.node-sec-body .generator-seo-summary{font-size:10.5px}.node-sec-body .history{margin:0}.node-sec-body .history .eyebrow{display:none}.canvas-generator-hosts{height:0;min-height:0;overflow:hidden;visibility:hidden;width:300px}.canvas-generator-result{display:contents}.canvas-generator-result .result-single,.canvas-generator-result .result-row-name{white-space:pre-line}.canvas-generator-note{color:var(--text-dim);font-size:.78rem;line-height:1.5;margin:-2px 0 0;text-align:center}.batch-sheet{border:1px solid var(--border-strong);border-radius:12px;background:var(--sidebar-bg);display:flex;flex-direction:column;overflow:hidden;min-height:0}.generator-stack--canvas .batch-sheet{position:absolute;top:0;left:0;right:0;z-index:5;border-radius:0;border-top:none;max-height:calc(100% - 30px - var(--stack-dock-h, 34px));box-shadow:var(--shadow-popover)}.generator-stack:not(.generator-stack--canvas) .batch-sheet{margin:14px auto 0;width:100%;max-width:520px;max-height:460px}.batch-sheet-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--border)}.batch-sheet-actions{display:inline-flex;align-items:center;gap:6px}.batch-sheet-chev{display:inline-flex;align-items:center;margin-left:5px}.batch-sheet-chev--up{transform:rotate(180deg)}.batch-sheet--shut{border-bottom-width:1px}.batch-sheet--shut .batch-sheet-head{border-bottom:none}.batch-sheet-btn{font:inherit;font-size:.78rem;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;padding:7px 11px;cursor:pointer}.batch-sheet-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-tint)}.batch-sheet-btn:disabled{opacity:.45;cursor:default}.batch-sheet-btn--on{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.batch-sheet-close{flex:0 0 auto;width:24px;height:24px;display:grid;place-items:center;font:inherit;font-size:.8rem;line-height:1;color:var(--text-muted);background:none;border:none;border-radius:6px;cursor:pointer}.batch-sheet-close:hover{color:var(--accent);background:var(--accent-tint)}.batch-sheet-scroll{min-height:0;overflow:auto}.batch-sheet-table{border-collapse:collapse;width:100%;font-size:.76rem}.batch-sheet-table th,.batch-sheet-table td{text-align:left;vertical-align:top;padding:6px 12px;border-bottom:1px solid var(--border);white-space:pre-line}.batch-sheet-table thead th{position:sticky;top:0;z-index:1;background:var(--sidebar-bg);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.batch-sheet-table tbody tr:hover{background:var(--accent-tint)}.batch-sheet-n{color:var(--text-muted);font-variant-numeric:tabular-nums;width:1%}.batch-sheet-grip{flex:0 0 auto;display:flex;align-items:center;gap:10px;height:16px;padding:0 12px;border-top:1px solid var(--border);cursor:row-resize;touch-action:none;-webkit-user-select:none;user-select:none}.batch-sheet-grip-line{flex:1;height:3px;border-radius:2px;background:var(--border-strong)}.batch-sheet-grip:hover .batch-sheet-grip-line,.batch-sheet-grip:active .batch-sheet-grip-line,.batch-sheet-grip:focus-visible .batch-sheet-grip-line{background:var(--accent)}.batch-sheet-grip:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.batch-sheet-grip-count{flex-shrink:0;font-size:10.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}.content--cell{max-width:610px;gap:14px}@media(min-width:768px){.content--cell{zoom:.909091}}.content--cell .header{gap:10px}.content--cell .header img{width:36px;height:36px}.content--cell .header-eyebrow{display:none}.content--cell .header-title{font-size:32px}.content--cell .header-intro{font-size:13px;max-width:none;padding:3px 12px}.content--cell .header-back{position:static;align-self:flex-start;height:24px;margin:-4px 0 -6px;padding:0;max-width:100%;border-radius:0;font-weight:600}.content--cell .header-back:hover{background:transparent}@media(max-width:767.98px){.content--cell{max-width:none;width:calc(100% + 16px);margin-left:-8px;margin-right:-8px}.content--cell .header-title{font-size:22px}.content--cell .header-intro{font-size:12.5px}}@media(min-width:768px){.generator-block:not(.generator-block--lone) .generator-block-top{max-width:calc(610px / 1.1)}}.gcell{position:relative;width:100%;height:380px;--gcell-bar: 32px;--gcell-foot: 83px;--gcell-key: 35px;--gcell-gutter: 6px;--gcell-key-on: color-mix(in srgb, var(--accent) 12%, var(--surface))}:root[data-theme=dark] .gcell{--gcell-key-on: color-mix(in srgb, var(--accent) 30%, var(--surface))}@media(max-width:767.98px){.gcell{height:auto;aspect-ratio:1}}.gcell-frame{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;--gcell-gap: 10px;--gcell-radius: 14px}.gcell-bar{position:relative;display:flex;align-items:center;gap:8px;height:var(--gcell-bar);padding:0 8px 0 12px;background:var(--bar-bg);border:1px solid var(--border-strong);border-bottom:1px solid var(--bar-line);border-radius:var(--gcell-radius) var(--gcell-radius) 0 0;flex:0 0 auto;color:var(--bar-muted);font-size:10.5px}.gcell-bar-name{font-size:13.5px;font-weight:800;letter-spacing:.01em;color:var(--bar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gcell-bar-sp{flex:1}.gcell-bar-meta{font-weight:600;letter-spacing:.04em;white-space:nowrap}.gcell-bar .gcell-bar-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--gcell-bar);min-width:22px;width:auto;padding:0 3px;margin:0;border:none;border-radius:0;background:transparent;color:var(--bar-muted);cursor:pointer;font:inherit;line-height:1}.gcell-bar .gcell-bar-btn:hover,.gcell-bar .favorite-btn--active{color:var(--bar-accent)}.gcell-bar .favorite-btn .favorite-heart,.gcell-bar .favorite-btn:hover .favorite-heart,.gcell-bar .favorite-btn--active .favorite-heart{font-size:14px;color:inherit;transform:none}.gcell-bar .gcell-bar-btn .gcell-mark{width:14px;height:14px}.gcell-bar .share-setup-check{font-size:12px;color:var(--bar-accent)}.gcell-bar-btn:after{bottom:auto;top:calc(100% + 6px);left:auto;right:0;transform:none}.gcell-win{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;container-type:inline-size;background:var(--surface);border:1px solid var(--border-strong);border-top:none;border-radius:0 0 var(--gcell-radius) var(--gcell-radius)}.gcell-win .result-card,.gcell-win .result-card--compact{width:100%;height:100%;flex:1;min-height:0;aspect-ratio:auto;background:transparent;border:none;border-radius:0;box-shadow:none;padding:14px 18px}.gcell-win .result-single-wrap{gap:8px}.gcell-win .result-single{font-size:clamp(26px,11cqi,48px);line-height:1.05}.gcell-win .result-single--long{font-size:clamp(14px,3.6cqi,20px);line-height:1.4;max-width:44ch}.gcell-win .result-caption{font-size:clamp(10.5px,2.9cqi,13px)}.gcell-win .result-description{font-size:clamp(10.5px,2.9cqi,13px);line-height:1.5;max-width:38ch}.gcell-win .result-media,.gcell-win .result-media>*{max-height:120px;max-width:100%}.gcell-win .result-media{overflow:hidden}.gcell-win .result-card.result-card:not(.result-card--compact),.gcell-win .result-card--media.result-card--media{aspect-ratio:auto;min-height:0;padding:14px 18px;align-items:center}.gcell-win .result-card--media .result-caption.result-caption{min-height:0}.gcell-win .result-card--media .result-description--clamped.result-description--clamped{height:auto;-webkit-line-clamp:2}.gcell-win{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.gcell-win--multi{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;overscroll-behavior:contain}.gcell-win .result-stack{gap:0;padding:4px 14px 6px}.gcell-win .result-cell{background:transparent;border:none;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;padding:3px 6px;gap:10px;align-items:center}.gcell-win .result-cell:last-child{border-bottom:none}.gcell-win .result-row-idx{font-size:10px;color:var(--text-muted);width:22px;text-align:right;font-variant-numeric:tabular-nums}.gcell-win .result-row-name{font-size:13px;font-weight:700}.gcell-win .result-cell-body .result-caption{display:none}.gcell-win .result-icon--sm{width:18px;height:18px}.gcell-foot{flex:0 0 auto;display:flex;gap:var(--gcell-gutter);padding:var(--gcell-gutter);margin-top:var(--gcell-gap);border:1px solid var(--border-strong);border-radius:var(--gcell-radius);background:var(--bar-bg)}.gcell-foot .generate-btn{flex:0 0 28%;min-width:89px;margin:0;padding:0;border:none;border-radius:10px;background:linear-gradient(var(--accent),var(--accent-hover));box-shadow:0 0 0 1px var(--border-strong),inset 0 1px #ffffff47,inset 0 -2px #00000047;color:#fff;font-size:12.5px;font-weight:800;letter-spacing:.02em}.gcell-foot .generate-btn:hover{background:linear-gradient(var(--accent-hover),var(--accent-hover))}.gcell-foot .generate-btn:disabled{opacity:.45;cursor:default}.gcell-keys{flex:1;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:var(--gcell-key);box-shadow:0 0 0 1px var(--border-strong)}.gcell-key-slot,.gcell-foot .generator-add-inline{display:contents}.gcell-foot .gcell-key,.gcell-foot .generator-add-inline-btn{--key-bg: var(--surface);position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;min-width:0;margin:0;padding:0;font:inherit;font-size:13px;font-weight:700;color:var(--text-muted);background:var(--surface);border:none;border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);border-radius:0;box-shadow:none;cursor:pointer;transition:none;opacity:1}.gcell-keys>:nth-child(3n),.gcell-keys>:nth-child(3n) .generator-add-inline-btn{border-right:none}.gcell-keys>:nth-child(n+4),.gcell-keys>:nth-child(n+4) .generator-add-inline-btn{border-bottom:none}.gcell-keys{border-radius:10px}.gcell-keys>:nth-child(1),.gcell-keys>:nth-child(1) .generator-add-inline-btn{border-top-left-radius:10px}.gcell-keys>:nth-child(3),.gcell-keys>:nth-child(3) .generator-add-inline-btn{border-top-right-radius:10px}.gcell-keys>:nth-child(4),.gcell-keys>:nth-child(4) .generator-add-inline-btn{border-bottom-left-radius:10px}.gcell-keys>:nth-child(6),.gcell-keys>:nth-child(6) .generator-add-inline-btn{border-bottom-right-radius:10px}.gcell-foot .gcell-key:hover:not(:disabled),.gcell-foot .generator-add-inline-btn:hover:not(:disabled){--key-bg: color-mix(in srgb, var(--surface) 94%, var(--text));background:var(--key-bg);color:var(--text)}.gcell-foot .gcell-key--on,.gcell-foot .gcell-key--on:hover:not(:disabled),.gcell-foot .generator-add-inline-btn[aria-expanded=true],.gcell-foot .generator-add-inline-btn[aria-expanded=true]:hover:not(:disabled){--key-bg: var(--gcell-key-on);background:var(--key-bg);color:var(--term-accent)}.gcell-foot .gcell-key--active{color:var(--term-accent)}.gcell-foot .gcell-key:disabled,.gcell-foot .generator-add-inline-btn:disabled{color:color-mix(in srgb,var(--text-muted) 40%,transparent);background:var(--surface);cursor:default;opacity:1}.gcell-foot .generator-add-inline-glyph{font-size:24px;font-weight:800;line-height:1;transform:translateY(-1px)}.gcell-foot .copy-check{font-size:15px;color:var(--term-accent)}.gcell-mark{width:20px;height:20px;display:block;fill:none;stroke:none}.gcell-mark .f{fill:currentColor}.gcell-mark .d{opacity:.45}.gcell-mark .k{stroke:var(--key-bg);stroke-width:2}.gcell-mark .w{stroke:var(--key-bg);stroke-width:4.5}.gcell-mark .s{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.gcell-mark .c{stroke:var(--key-bg);stroke-width:2.2}.gcell-foot .gcell-amt{font-size:16px;font-weight:800}.gcell-foot .gcell-key--editing{--key-bg: var(--page-bg);background:var(--page-bg);box-shadow:inset 0 0 0 2px var(--accent);cursor:text}.gcell-amt-input{width:100%;height:100%;border:none;background:transparent;padding:0;margin:0;text-align:center;font:inherit;font-size:16px;font-weight:800;color:var(--text);outline:none}.gcell-key:after,.gcell-foot .generator-add-inline-btn:after,.gcell-foot .generate-btn[aria-label]:after{bottom:calc(100% + 6px)}.gcell-pop{position:absolute;left:0;right:0;top:var(--gcell-bar);bottom:calc(var(--gcell-foot) + 1px + var(--gcell-gap));width:auto;max-height:none;margin:0;transform:none;z-index:6;display:flex;flex-direction:column;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border:none;border-radius:0 0 var(--gcell-radius) var(--gcell-radius);box-shadow:none;padding:10px 16px 12px;color:var(--text);font-size:12px;overflow:hidden}.gcell-frame:has(.gcell-pop--filter) .gcell-win{opacity:.16}.gcell-pop-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px}.gcell-pop-head{display:flex;align-items:center;justify-content:space-between;height:22px;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--text-muted)}.gcell-pop .gcell-pop-clear{border:none;background:transparent;padding:0;margin:0;font:inherit;font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--accent);cursor:pointer}.gcell-pop .popover-clear--muted{color:var(--text-muted)}.gcell-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}.gcell-pop .gcell-check{display:flex;align-items:center;gap:8px;height:26px;width:100%;min-width:0;padding:0 4px;margin:0;border:none;border-radius:0;background:transparent;font:inherit;font-size:12px;color:var(--text-body);text-align:left;cursor:pointer}.gcell-pop .gcell-check:hover{background:var(--hover-bg)}.gcell-pop .gcell-check-box{position:relative;width:13px;height:13px;flex:0 0 auto;border:1px solid var(--border-strong);border-radius:0;background:var(--surface);display:block;margin:0}.gcell-pop .gcell-check--on .gcell-check-box{background:var(--accent);border-color:var(--accent)}.gcell-pop .gcell-check--on .gcell-check-box:after{content:"";position:absolute;left:4px;top:1px;width:3px;height:7px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.gcell-check-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:inherit}.gcell-pop-section{display:flex;flex-direction:column;gap:4px}.gcell-letters{display:grid;grid-template-columns:repeat(13,1fr);gap:3px}.gcell-pop .gcell-letter{height:24px;padding:0;border:1px solid var(--border);border-radius:0;background:var(--surface);font:inherit;font-size:11px;font-weight:700;color:var(--text-body);cursor:pointer}.gcell-pop .gcell-letter:hover:not(:disabled){background:var(--hover-bg)}.gcell-pop .gcell-letter:disabled{opacity:.3;cursor:default}.gcell-pop .gcell-letter--on,.gcell-pop .gcell-letter--on:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.gcell-pop .gcell-pop-input{width:100%;height:28px;padding:0 10px;border:1px solid var(--border-strong);border-radius:0;background:var(--page-bg);color:var(--text);font:inherit;font-size:12px;outline:none}.gcell-pop .gcell-pop-input:focus{border-color:var(--accent)}.gcell-settings{display:flex;flex-direction:column}.gcell-setting--row{display:flex;align-items:center;gap:10px;height:26px;padding:0 4px;font-size:12px;color:var(--text-body)}.gcell-setting-note{color:var(--text-muted);margin-left:auto}@media(max-width:767.98px){.gcell-pop{padding:8px 12px 10px}.gcell-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.gcell-letters{grid-template-columns:repeat(9,1fr)}}.gcell-frame .generator-picker{position:absolute;top:var(--gcell-bar);bottom:calc(var(--gcell-foot) + 1px + var(--gcell-gap));left:calc(52% + 3.76px);right:0;width:auto;height:auto;max-height:none;transform:none;margin:0;border:1px solid var(--border-strong);border-top:none;border-radius:0 0 var(--gcell-radius) 0;overflow:hidden;box-shadow:none;background:var(--surface);padding:10px 12px 8px;z-index:6;display:flex;flex-direction:column}.gcell-frame .generator-picker-label{display:none}.gcell-frame .generator-picker-search-row{margin-bottom:6px;gap:6px;align-items:center}.gcell-frame .generator-picker-search-wrap .sidebar-search{height:26px;padding:0 26px 0 10px;font-size:12px;border-radius:0;border-color:var(--border-strong);background:var(--page-bg)}.gcell-frame .generator-picker-random-btn{width:28px;height:28px;border:none;border-radius:0;background:transparent;padding:0}.gcell-frame .generator-picker-random-btn:hover{background:var(--hover-bg)}.gcell-frame .generator-picker-random-icon{width:28px;height:28px}.gcell-frame .generator-picker-list{flex:1;min-height:0;max-height:none}.gcell-frame .generator-picker-group-header{padding:5px 6px;font-size:10.5px}@media(max-width:767.98px){.gcell-frame .generator-picker{left:0;border-left:none}}.generator-stack--grid{display:flex;flex-direction:column;align-items:stretch;width:100%}.generator-stack--grid .generator-block:has(.gcell-frame) .header,.generator-stack--grid .generator-block:has(.gcell-frame) .generator-block-top{display:none}.generator-stack--grid .generator-block,.generator-stack--grid .generator-block-slide{width:auto;min-width:0}.generator-stack--grid .content--cell{max-width:none;width:100%}.generator-add-inline-word{display:none}.gcell-bar-pos{font-size:10px;font-weight:700;letter-spacing:.08em;margin-right:2px;flex:0 0 auto}.gcell-bar .gcell-bar-lock{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--gcell-bar);min-width:22px;padding:0 3px;margin:0;border:none;background:transparent;color:var(--bar-muted);cursor:pointer}.gcell-bar .gcell-bar-lock svg{width:14px;height:14px}.gcell-bar .gcell-bar-lock:hover,.gcell-bar .gcell-bar-lock--on{color:var(--bar-accent)}.gcell-bar .gcell-bar-menu-wrap{flex:0 0 auto}.gcell-bar .gcell-bar-menu .gcell-mark{width:15px;height:15px}.gcell-bar .stack-row-menu{top:calc(100% + 4px)}.stack-add-cell{position:relative;border:1px dashed var(--border-strong);border-radius:14px;box-sizing:border-box}.stack-add-cell .generator-add-inline-btn{border-radius:14px}.stack-add-cell .generator-add-inline{display:block;position:static;height:100%;margin:0}.stack-add-cell .generator-add-inline-btn{width:100%;height:100%;border:none;border-radius:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--text-muted);font-family:inherit;font-size:12px;cursor:pointer}.stack-add-cell .generator-add-inline-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent)}.stack-add-cell .generator-add-inline-glyph{font-size:28px;line-height:1;font-weight:700;color:var(--accent);transform:none}.stack-add-cell .generator-add-inline-word{display:inline}.stack-add-cell .generator-picker{position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-height:none;transform:none;margin:0;border-radius:14px;overflow:hidden;box-shadow:none;padding:10px 12px 8px;display:flex;flex-direction:column;z-index:6}.stack-add-cell .generator-picker-list{flex:1;min-height:0;max-height:none}.stack-add-cell .generator-picker-search-wrap .sidebar-search{border-radius:0;border-color:var(--border-strong);background:var(--page-bg)}.stack-cols,.stack-count{display:none}@media(min-width:768px){.main:has(.generator-stack--grid){padding:0;align-content:start;justify-content:start;align-items:start}.generator-stack--grid .stack-world{display:grid;grid-template-columns:repeat(var(--cols, 3),minmax(0,1fr));gap:calc(20px / 1.1);padding:calc(20px / 1.1);width:100%;box-sizing:border-box;align-items:start}.generator-stack--grid[data-cols="2"] .stack-world{--cols: 2}.generator-stack--grid[data-cols="1"] .stack-world{--cols: 1;grid-template-columns:calc(610px / 1.1);justify-content:center;position:relative;left:calc(-1 * var(--sidebar-width-resized, var(--sidebar-width)) / 2.2)}.generator-stack--grid .stack-add-cell{height:calc(380px / 1.1)}.generator-stack--grid .stack-dock{order:-1;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:calc(10px / 1.1);height:40px;padding:0 calc(20px / 1.1);width:100%;box-sizing:border-box;background:var(--page-bg);border-bottom:1px solid var(--border-strong)}.generator-stack--grid .stack-rows-foot{display:contents}.generator-stack--grid .stack-view-switch,.generator-stack--grid .stack-batch{display:none}.generator-stack--grid .generate-all-btn{width:auto;height:calc(30px / 1.1);padding:0 calc(16px / 1.1);gap:6px;border-radius:8px;color:#fff;font-family:inherit;font-size:11px;font-weight:700}.generator-stack--grid .generate-all-face{width:14px;height:14px;border-radius:3px}.generator-stack--grid .generate-all-icon{width:9px;height:9px}.generator-stack--grid .generate-all-label{display:inline}.generator-stack--grid .generate-all-label:after{content:" all"}.generator-stack--grid .generator-add--compact{margin:0;max-width:none;width:auto;display:flex;flex-wrap:nowrap;gap:calc(10px / 1.1);position:relative}.generator-stack--grid .stack-dock-keep{display:inline-flex;align-items:stretch;height:calc(30px / 1.1);border:1px solid var(--border-strong);border-radius:8px;background:var(--surface)}.generator-stack--grid .stack-dock-keep>:first-child{border-radius:7px 0 0 7px}.generator-stack--grid .stack-dock-keep>:last-child,.generator-stack--grid .stack-dock-keep>:last-child>button{border-radius:0 7px 7px 0}.generator-stack--grid .stack-dock-keep>button,.generator-stack--grid .stack-dock-keep>.stack-outputs>button{height:100%;margin:0;padding:0 12px;border:none;border-right:1px solid var(--border-strong);border-radius:0;background:transparent;color:var(--text);font-family:inherit;font-size:11px;font-weight:600;box-shadow:none;white-space:nowrap}.generator-stack--grid .stack-dock-keep>button:last-child{border-right:none}.generator-stack--grid .stack-dock-keep>button:hover,.generator-stack--grid .stack-dock-keep>.stack-outputs>button:hover{background:var(--hover-bg);color:var(--text)}.generator-stack--grid .stack-dock-keep>.stack-outputs{display:inline-flex;height:100%}.stack-cols{display:inline-flex;align-items:stretch;height:calc(30px / 1.1);border:1px solid var(--border-strong);border-radius:8px;background:var(--surface)}.stack-cols>:first-child{border-radius:7px 0 0 7px}.stack-cols>:last-child{border-radius:0 7px 7px 0}.stack-cols-lab{display:inline-flex;align-items:center;padding:0 12px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-right:1px solid var(--border-strong)}.stack-cols-btn{margin:0;padding:0 12px;border:none;border-right:1px solid var(--border-strong);background:transparent;color:var(--text);font-family:inherit;font-size:11px;font-weight:600;cursor:pointer}.stack-cols-btn:last-child{border-right:none}.stack-cols-btn:hover:not(:disabled){background:var(--hover-bg)}.stack-cols-btn--on,.stack-cols-btn--on:hover:not(:disabled){background:var(--bar-on-bg);color:var(--bar-on-text);font-weight:800}.stack-cols-btn:disabled{opacity:.4;cursor:default}.stack-count{display:inline;margin-left:auto;font-size:11px;letter-spacing:.04em;color:var(--text-muted);white-space:nowrap}}@media(max-width:767.98px){.generator-stack--grid .stack-world{display:flex;flex-direction:column;gap:14px;width:calc(100% + 16px);margin:0 -8px}.generator-stack--grid .content--cell{margin:0}.generator-stack--grid .stack-add-cell{height:44px}.stack-add-cell .generator-add-inline-btn{flex-direction:row;gap:8px}.stack-add-cell .generator-add-inline-glyph{font-size:20px}.stack-add-cell .generator-picker{inset:auto 0 auto 0;top:calc(100% + 8px);height:60vh;border:1px solid var(--border-strong)}}@media print{.char-options,.char-ctl,.history,.char-card{box-shadow:none}.char-options,.char-ctl,.history{display:none!important}.char-card{border-color:#000}.char-face,.char-face *,.char-portrait{background:transparent;border-color:#000;color:#000!important}.char-grid{grid-template-columns:1fr}.char-rail{position:static}.char-rail-roll,.char-rail-actions,.char-wide-foot,.char-member-actions{display:none!important}.char-member{break-inside:avoid}.char-member-role{color:#000}.builder-card{box-shadow:none;border-color:#000}.char-stat{border-color:#000}.char-stat-mod{background:transparent;color:#000}}@media print{.sidebar,.history-panel,.site-footer,.button-row,.bingo-controls,.generator-seo,.generator-related,.header,.filter-empty-message{display:none!important}.main,.content{max-width:none;padding:0;zoom:1;display:block;align-content:start;background-image:none}.bingo-cards{justify-content:flex-start}.bingo-cards{gap:18px}.bingo-grid{box-shadow:none;border-color:#000;break-inside:avoid}.bingo-cell{background:transparent;border-color:#000;color:#000}.bingo-cell--free{border-color:#000;color:#000}.bingo-head-cell{color:#000}}.generate-btn--armed{background:#cc272e}.generate-btn--armed:hover{background:#bb061e}.tool-block{gap:12px}.tool-result{width:100%;aspect-ratio:auto;padding:20px 22px;min-height:96px;display:flex;align-items:center;justify-content:center}.tool-value{font-size:17px;line-height:1.5;text-align:center;color:var(--text);white-space:pre-line}.tool-value--empty{color:var(--text-rolling)}.tool-template{width:100%;min-height:62px;max-height:200px;resize:vertical;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:13px;line-height:1.55;color:var(--text)}.tool-template:focus{outline:none;border-color:var(--accent)}.tool-template::placeholder{color:var(--text-muted)}.tool-template--static{min-height:0;color:var(--text-muted);white-space:pre-wrap}.tool-sockets{width:100%;display:flex;flex-direction:column;gap:4px}.tool-socket-row{position:relative;display:flex;align-items:center;gap:8px;font-size:12px;padding:3px 2px}.tool-socket{width:7px;height:7px;border-radius:50%;background:var(--border-strong);flex-shrink:0}.tool-socket--filled{background:var(--accent)}.tool-socket-name{font-family:inherit;color:var(--accent)}.tool-socket-from{margin-left:auto;color:var(--text-muted)}.stack-add-sentence,.stack-batch-btn{padding:7px 12px;border:1px dashed var(--border-strong);border-radius:8px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:12px;cursor:pointer}.stack-add-sentence:hover:not(:disabled),.stack-batch-btn:hover:not(:disabled){border-color:var(--accent);border-style:solid;color:var(--accent)}.stack-add-sentence:disabled,.stack-batch-btn:disabled{opacity:.45;cursor:default}.tool-field{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 9px;font-family:inherit;font-size:12px;color:var(--text)}.tool-field:focus{outline:none;border-color:var(--accent)}.tool-field:disabled{background:transparent;color:var(--text-muted)}.tool-field--row{width:auto;flex:1;min-width:0;padding:4px 7px;font-size:11px}.tool-field--num{width:78px;flex-shrink:0;font-variant-numeric:tabular-nums}.tool-op-row{width:100%;display:flex;align-items:center;gap:8px}.tool-ops{display:inline-flex;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden}.tool-op{border:none;border-right:1px solid var(--border-strong);background:transparent;color:var(--text-muted);font-family:inherit;font-size:12px;padding:6px 9px;cursor:pointer;min-width:30px}.tool-op:last-child{border-right:none}.tool-op:hover:not(:disabled){background:var(--hover-bg)}.tool-op--on,.tool-op--on:hover{background:var(--accent-tint);color:var(--accent)}.tool-slider{flex:1;min-width:0;accent-color:var(--accent)}.tool-note{font-size:11px;color:var(--text-muted);white-space:nowrap}.tool-note--bad{color:var(--accent);white-space:normal}.stack-tools{position:relative;display:inline-flex}.save-preset-output{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.save-preset-output select{flex:1;min-width:0;padding:5px 7px;background:var(--surface);border:1px solid var(--border-strong);border-radius:7px;color:var(--text);font-family:inherit;font-size:12px}.stack-canvas-note{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:4;max-width:62ch;margin:0;padding:7px 14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;box-shadow:var(--shadow-popover);color:var(--text-muted);font-size:12px;line-height:1.5;text-align:center}.stack-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0 24px 90px;text-align:center;pointer-events:none}.stack-empty-line{margin:0;font-size:15px;font-weight:600;color:var(--text)}.stack-empty-hint{margin:0;max-width:46ch;font-size:12.5px;line-height:1.6;color:var(--text-muted)}.stack-empty-hint b{color:var(--text);font-weight:600}.stack-outputs{position:relative;display:inline-flex}.stack-outputs-menu{width:300px;padding:8px;display:flex;flex-direction:column;gap:6px}.stack-outputs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.stack-outputs-list li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 7px;border-radius:6px;font-size:.76rem}.stack-outputs-list li:hover{background:var(--accent-tint)}.stack-outputs-name{color:var(--text-muted);white-space:nowrap}.stack-outputs-value{flex:1;min-width:0;text-align:right;color:var(--text);white-space:pre-line;overflow-wrap:anywhere}.stack-outputs-value--none{color:var(--text-muted)}.stack-outputs-copy{width:100%;justify-content:center}.stack-tools-menu{width:260px;padding:8px;display:flex;flex-direction:column;gap:1px}.stack-tool-option{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;border:none;background:transparent;border-radius:7px;padding:7px 9px;cursor:pointer;font-family:inherit}.stack-tool-option:hover{background:var(--hover-bg)}.stack-tool-name{font-size:12px;font-weight:700;color:var(--text)}.stack-tool-option:hover .stack-tool-name{color:var(--accent)}.stack-tool-blurb{font-size:11px;color:var(--text-muted);line-height:1.4}
