.species-option-grid .option-card{min-height:10.5rem}.species-choice-panel{background:#0819166b;border:1px solid #789d8e52;border-radius:1rem;margin:1.25rem 0;padding:1rem}.species-choice-panel legend{padding:0 .45rem;font-weight:700}.species-choice-panel select,.species-choice-panel input,.roll-controls select{width:100%;min-height:2.65rem;margin-top:.35rem}.species-preview{background:#244e4238;border-left:3px solid #7ad6b1;border-radius:.7rem;margin:1rem 0 1.5rem;padding:1rem}.species-preview h4{margin-top:0}.species-preview details{border-bottom:1px solid #ffffff14;padding:.55rem 0}.species-preview details:last-child{border-bottom:0}.species-preview summary,.runtime-feature summary{cursor:pointer;font-weight:700}.species-wiki{grid-template-columns:minmax(10rem,.28fr) minmax(0,1fr);gap:1rem;margin:1.5rem 0;display:grid}.species-wiki-index,.species-wiki-entry{background:#0716138f;border:1px solid #789d8e47;border-radius:1rem}.species-wiki-index{align-self:start;gap:.4rem;padding:1rem;display:grid;position:sticky;top:1rem}.species-wiki-index h3{margin:0 0 .5rem}.species-wiki-index button{text-align:left;background:0 0;border:1px solid #0000;border-radius:.65rem;width:100%;padding:.7rem .8rem}.species-wiki-index button.selected{background:#7ad6b121;border-color:#7ad6b180}.species-wiki-entry{padding:clamp(1rem,2vw,1.6rem)}.species-wiki-entry>h3{margin-bottom:.35rem;font-size:clamp(1.55rem,3vw,2.2rem)}.species-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;display:grid}.species-facts div{background:#ffffff0a;border-radius:.7rem;padding:.8rem}.species-facts dt{letter-spacing:.08em;text-transform:uppercase;opacity:.68;font-size:.76rem}.species-facts dd{margin:.25rem 0 0;font-weight:700}.catalog-choice-reference{background:#698e811a;border-radius:.75rem;margin:1rem 0;padding:1rem}.catalog-choice-reference h4{margin-top:0}.catalog-choice-reference ul{columns:2;margin-bottom:0}.trait-entry-list{gap:.8rem;margin-top:1.2rem;display:grid}.trait-entry{background:#ffffff06;border:1px solid #ffffff17;border-radius:.8rem;padding:1rem}.trait-entry-heading,.runtime-feature-heading{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.trait-entry-heading h4,.runtime-feature-heading h4{margin:0}.trait-entry-heading>span,.runtime-feature-heading span{letter-spacing:.05em;text-transform:uppercase;background:#7ad6b11f;border-radius:999px;padding:.2rem .45rem;font-size:.72rem}.mechanic-chip-row{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;display:flex}.mechanic-chip-row span{background:#537c992e;border-radius:.45rem;padding:.35rem .55rem;font-size:.78rem}.species-runtime-panel,.roll-panel,.activity-panel{grid-column:1/-1}.runtime-feature-list{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.8rem;display:grid}.runtime-feature{background:#06141161;border:1px solid #789d8e42;border-radius:.8rem;flex-direction:column;gap:.65rem;padding:.95rem;display:flex}.runtime-feature p{margin:0}.runtime-feature-heading strong{text-align:center;background:#7ad6b124;border-radius:.55rem;min-width:3.5rem;padding:.35rem .5rem}.mechanic-summary{color:#bdebd9;font-weight:650}.feature-actions,.rest-controls,.roll-controls{flex-wrap:wrap;align-items:end;gap:.55rem;display:flex}.feature-actions{margin-top:auto}.feature-actions button,.rest-controls button,.roll-controls button{min-height:2.45rem}.rest-controls{margin-top:1rem}.roll-controls label{flex:15rem}.roll-result{background:#7ad6b114;border-left:3px solid #7ad6b1;border-radius:.6rem;gap:.3rem;margin-top:.9rem;padding:.9rem;display:grid}.roll-result strong{font-size:1.35rem}.activity-panel ol{gap:.55rem;padding-left:1.4rem;display:grid}.activity-panel li{padding-left:.25rem}.activity-panel li span{opacity:.82;margin-top:.15rem;display:block}@media (width<=800px){.species-wiki{grid-template-columns:1fr}.species-wiki-index{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.species-wiki-index .eyebrow,.species-wiki-index h3{grid-column:1/-1}.species-facts{grid-template-columns:1fr}.catalog-choice-reference ul{columns:1}}.pdf-sheet-page{isolation:isolate;background:#fff;width:100%;position:relative;overflow:hidden;box-shadow:0 18px 50px #080f163d;container-type:inline-size}.pdf-sheet-page canvas{background:#fff;display:block;position:absolute;inset:0;width:100%!important;height:100%!important}.pdf-sheet-tint,.pdf-field-layer{position:absolute;inset:0}.pdf-sheet-tint{z-index:1;pointer-events:none;background:color-mix(in srgb, var(--accent) 24%, transparent);mix-blend-mode:color;display:none}:root[data-official-sheet-treatment=themed] .pdf-sheet-tint{display:block}.pdf-field-layer{z-index:2}.pdf-field{left:var(--field-x);top:var(--field-y);width:var(--field-width);height:var(--field-height);box-sizing:border-box;color:#111;min-width:0;min-height:0;font-family:Arial,Helvetica,sans-serif;font-size:calc(var(--field-font-size) * 1cqw);text-align:var(--field-align);resize:none;background:#ffffffb3;border:1px solid #0000;border-radius:.18em;outline:0;padding:.08em .25em;font-weight:600;line-height:1.12;position:absolute;overflow:hidden}.pdf-field.read-only{pointer-events:none;background:0 0}.pdf-field:hover:not(.read-only){border-color:color-mix(in srgb, var(--accent) 58%, transparent);background:#ffffffe6}.pdf-field:focus{z-index:4;border-color:var(--accent);box-shadow:0 0 0 .22cqw color-mix(in srgb, var(--accent) 25%, transparent);background:#fffffff7;overflow:auto}.pdf-field[type=number]{appearance:textfield}.pdf-field[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.pdf-field[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.pdf-render-error{z-index:5;border:1px solid var(--danger);background:var(--danger-soft);color:var(--danger);place-items:center;margin:0;display:grid;position:absolute;inset:1rem}@media print{.pdf-sheet-page{break-after:page;box-shadow:none}.pdf-field{box-shadow:none!important;background:0 0!important;border:0!important}.pdf-sheet-tint{display:none!important}}.srd-workspace{width:100%;margin:1.5rem 0 4rem}.redesigned-sheet-toolbar{border:1px solid var(--line);background:var(--surface-translucent);box-shadow:0 14px 34px var(--shadow-color);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:1.25rem;grid-template-columns:minmax(16rem,.8fr) minmax(34rem,2fr);align-items:end;gap:1.5rem;margin-bottom:1.25rem;padding:1.25rem;display:grid}.redesigned-sheet-toolbar h2,.redesigned-sheet-toolbar p{margin-top:0}.visual-layout-picker{border:0;grid-template-columns:repeat(5,1fr);gap:.55rem;margin:0;padding:0;display:grid}.visual-layout-picker legend{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:.78rem;font-weight:800}.visual-layout-picker label{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:.9rem;min-height:6rem;padding:.75rem;display:flex;position:relative}.visual-layout-picker label.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.visual-layout-picker input{opacity:0;pointer-events:none;position:absolute}.visual-layout-picker span{flex-direction:column;gap:.3rem;display:flex}.visual-layout-picker small{color:var(--ink-soft);line-height:1.35}.custom-sheet{grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;display:grid}.custom-sheet>section,.custom-sheet>nav{min-width:0}.custom-hero,.custom-panel,.compact-sheet-nav{border:1px solid var(--line);background:var(--surface-translucent);box-shadow:0 12px 30px var(--shadow-color);border-radius:1.1rem}.custom-hero{background:linear-gradient(110deg, var(--accent-soft), transparent 46%), var(--surface-translucent);grid-column:1/-1;grid-template-columns:minmax(18rem,1fr) 1.4fr;gap:1rem;padding:1.25rem;display:grid;overflow:hidden}.custom-hero label{flex-direction:column;gap:.35rem;display:flex}.custom-hero label span,.custom-panel-heading .eyebrow{color:var(--accent-strong);letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:800}.custom-hero input{border:0;border-bottom:2px solid var(--accent);background:0 0;border-radius:0;padding:.35rem 0;font:700 1.75rem Georgia,serif}.custom-hero>div{flex-wrap:wrap;place-content:center flex-end;gap:.5rem;display:flex}.custom-hero>div span,.custom-spell-tags span{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--line));background:var(--accent-soft);border-radius:999px;padding:.4rem .65rem}.custom-panel{padding:1rem}.custom-panel-heading h3,.custom-panel-heading p{margin:0}.custom-combat-strip{grid-column:1/-1;grid-template-columns:.8fr 1.9fr 1fr .8fr 1fr;gap:.75rem;display:grid}.stat-orb{border:1px solid var(--line);background:var(--surface-soft);text-align:center;border-radius:1rem .3rem;justify-content:center;align-items:center;min-height:7.2rem;padding:.65rem;display:flex}.stat-orb label{letter-spacing:.055em;text-transform:uppercase;flex-direction:column;gap:.35rem;font-size:.75rem;font-weight:800;display:flex}.stat-orb input{text-align:center;background:0 0;border:0;width:100%;padding:.25rem;font-size:1.45rem;font-weight:800}.health-orb{grid-template-columns:1fr auto 1fr;display:grid}.custom-abilities{grid-column:span 5}.custom-actions{grid-column:span 7}.custom-ability-grid{grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:.8rem;display:grid}.custom-ability-grid label{border:1px solid var(--line);background:var(--surface-soft);border-radius:.85rem;grid-template-columns:1fr auto;gap:.25rem .5rem;padding:.75rem;display:grid}.custom-ability-grid input{background:0 0;border:0;grid-column:1/-1;width:100%}.custom-actions textarea{width:100%;min-height:12rem;margin-top:.8rem}.custom-spell-tags{flex-wrap:wrap;gap:.4rem;margin-top:.65rem;font-size:.78rem;display:flex}.custom-rules{grid-column:1/-1}.custom-training,.custom-inventory,.custom-story{grid-column:span 6}.custom-story{grid-column:1/-1}.custom-two-column-fields{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:.75rem;display:grid}.custom-two-column-fields label{min-width:0;color:var(--ink-soft);letter-spacing:.055em;text-transform:uppercase;flex-direction:column;gap:.35rem;font-size:.78rem;font-weight:800;display:flex}.custom-two-column-fields textarea{width:100%;min-height:9rem;color:var(--ink);letter-spacing:normal;text-transform:none;font-size:.92rem;font-weight:400}.layout-table .custom-combat-strip{order:1}.layout-table .custom-actions{order:2;grid-column:span 8}.layout-table .custom-abilities{order:3;grid-column:span 4}.layout-table .custom-rules{order:4}.layout-table .custom-training,.layout-table .custom-inventory,.layout-table .custom-story{order:5}.layout-cards .custom-combat-strip,.layout-cards .custom-actions,.layout-cards .custom-abilities,.layout-cards .custom-training,.layout-cards .custom-inventory,.layout-cards .custom-story{grid-column:span 4}.layout-cards .custom-rules{grid-column:span 8}.compact-sheet-nav{z-index:5;grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:.35rem;padding:.45rem;display:none;position:sticky;top:.5rem}.compact-sheet-nav button{border:0}.compact-sheet-nav button[aria-pressed=true]{background:var(--accent);color:#fff}.layout-compact .compact-sheet-nav{display:grid}.layout-compact>[data-compact-group]{grid-column:1/-1}.layout-compact.compact-active-combat [data-compact-group]:not([data-compact-group=combat]),.layout-compact.compact-active-actions [data-compact-group]:not([data-compact-group=actions]),.layout-compact.compact-active-rules [data-compact-group]:not([data-compact-group=rules]),.layout-compact.compact-active-story [data-compact-group]:not([data-compact-group=story]){display:none}:root[data-density=condensed] .custom-panel,:root[data-density=condensed] .custom-hero{padding:.75rem}:root[data-density=condensed] .custom-sheet{gap:.65rem}@media (width<=1050px){.redesigned-sheet-toolbar{grid-template-columns:1fr}.visual-layout-picker{grid-template-columns:repeat(3,1fr)}.custom-abilities,.custom-actions,.custom-training,.custom-inventory,.layout-cards .custom-rules,.layout-cards .custom-panel{grid-column:1/-1}}@media (width<=680px){.srd-workspace{width:100%}.visual-layout-picker{grid-template-columns:1fr 1fr}.visual-layout-picker label{min-height:auto}.custom-hero,.custom-combat-strip,.custom-ability-grid,.custom-two-column-fields{grid-template-columns:1fr}.custom-hero>div{justify-content:flex-start}.health-orb{grid-template-columns:1fr auto 1fr}}.sheet-workspace-shell{width:100%;margin:0}.compact-sheet-toolbar{z-index:20;border-block:1px solid var(--line);background:color-mix(in srgb, var(--surface-translucent) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:space-between;align-items:center;gap:1rem;min-height:3.75rem;padding:.55rem clamp(.75rem,2vw,1.5rem);display:flex;position:sticky;top:0}.compact-sheet-toolbar h2,.compact-sheet-toolbar p{margin:0}.sheet-toolbar-actions{flex-wrap:wrap;gap:.4rem;display:flex}.sheet-toolbar-actions button{border-radius:999px;min-height:2.25rem;padding:.35rem .7rem}.sheet-toolbar-actions button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.sheet-workspace{background:var(--app-background);grid-template-columns:minmax(13.5rem,17rem) minmax(0,1fr) minmax(17rem,22rem);min-height:calc(100vh - 8rem);display:grid}.sheet-left-rail,.sheet-right-rail{background:var(--surface);align-self:start;max-height:calc(100vh - 3.75rem);position:sticky;top:3.75rem;overflow:auto}.sheet-left-rail{border-right:1px solid var(--line);padding:1rem}.sheet-right-rail{border-left:1px solid var(--line)}.sheet-workspace.left-collapsed{grid-template-columns:0 minmax(0,1fr) minmax(17rem,22rem)}.sheet-workspace.right-collapsed{grid-template-columns:minmax(13.5rem,17rem) minmax(0,1fr) 0}.sheet-workspace.left-collapsed.right-collapsed{grid-template-columns:0 minmax(0,1fr) 0}.sheet-workspace.left-collapsed .sheet-left-rail,.sheet-workspace.right-collapsed .sheet-right-rail{visibility:hidden;border:0;padding:0;overflow:hidden}.compact-layout-select{gap:.35rem;font-weight:750;display:grid}.compact-layout-select select{width:100%;min-height:2.6rem}.layout-description,.ruleset-caution{color:var(--ink-soft);font-size:.88rem;line-height:1.45}.ruleset-caution{border:1px solid color-mix(in srgb, var(--warning) 42%, var(--line));background:color-mix(in srgb, var(--warning) 9%, var(--surface));border-radius:.65rem;padding:.7rem}.rail-control-group{border:0;margin:1rem 0 0;padding:0}.rail-control-group legend{margin-bottom:.45rem;font-weight:750}.rail-button-grid{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.rail-button-stack{gap:.35rem;display:grid}.rail-button-grid button,.rail-button-stack button{min-height:2.35rem;padding:.35rem .5rem}.rail-button-grid button[aria-pressed=true],.rail-button-stack button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.rail-quick-links{gap:.4rem;margin-top:1.25rem;display:grid}.rail-quick-links a{border:1px solid var(--line);color:var(--accent-strong);border-radius:.55rem;padding:.55rem .65rem;text-decoration:none}.sheet-center-stage{background:linear-gradient(var(--paper-grid) 1px, transparent 1px), linear-gradient(90deg, var(--paper-grid) 1px, transparent 1px), color-mix(in srgb, var(--app-background) 88%, var(--accent-soft));background-size:24px 24px;min-width:0;padding:clamp(.65rem,1.5vw,1.5rem)}.official-page-single,.official-page-spread{justify-content:center;align-items:start;gap:clamp(.75rem,1.3vw,1.25rem);width:100%;display:grid}.official-page-single{grid-template-columns:minmax(0,min(100%,64rem))}.official-page-spread{grid-template-columns:repeat(2,minmax(0,1fr))}.official-page-frame{min-width:0;position:relative}.page-badge{z-index:8;color:#fff;pointer-events:none;background:#0c1115c7;border-radius:999px;padding:.25rem .5rem;font-size:.75rem;position:absolute;top:.5rem;right:.5rem}.custom-sheet-stage{width:min(100%,110rem);margin-inline:auto}.sheet-inspector{background:var(--surface);min-height:100%}.inspector-tabs{z-index:2;border-bottom:1px solid var(--line);background:var(--surface-translucent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:repeat(3,1fr);padding:.45rem;display:grid;position:sticky;top:0}.inspector-tabs button{background:0 0;border:0;border-radius:.5rem;min-height:2.35rem;padding:.35rem}.inspector-tabs button[aria-selected=true]{background:var(--accent-decoration);color:#07110e}.inspector-section-stack{gap:.75rem;padding:.75rem;display:grid}.inspector-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:.75rem;padding:.75rem}.inspector-card h3{margin:0 0 .6rem;font-size:.95rem}.vital-card{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.vital-card>div:first-child{display:grid}.vital-card strong{font-size:1.5rem}.hp-stepper{gap:.35rem;display:flex}.hp-stepper button{min-width:2.6rem;min-height:2.35rem;padding:.35rem}.inspector-stat-strip{grid-template-columns:repeat(4,1fr);gap:.35rem;display:grid}.inspector-stat-strip div{border:1px solid var(--line);background:var(--surface-soft);border-radius:.55rem;justify-items:center;padding:.55rem .2rem;display:grid}.inspector-stat-strip span{color:var(--ink-soft);text-transform:uppercase;font-size:.68rem}.quick-roll-grid{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.quick-roll-grid button,.skill-roll-list button{min-height:2.4rem;padding:.35rem .45rem}.quick-roll-grid button{display:grid}.skill-roll-list{gap:.2rem;max-height:17rem;display:grid;overflow:auto}.skill-roll-list button{text-align:left;background:0 0;border-color:#0000;justify-content:space-between;align-items:center;display:flex}.skill-roll-list button:hover{border-color:var(--line);background:var(--surface-raised)}.inspector-roll-notice{z-index:3;border:1px solid var(--accent);background:var(--surface-raised);box-shadow:0 8px 24px var(--shadow-color);border-radius:.65rem;margin:0;padding:.7rem;position:sticky;bottom:.5rem}.coin-editor-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.3rem;display:grid}.coin-editor-grid label{color:var(--ink-soft);gap:.2rem;font-size:.7rem;display:grid}.coin-editor-grid input{width:100%;min-width:0;padding:.3rem}.sheet-inspector .mechanics-dock{box-shadow:none;border:0;border-radius:0;margin:0;padding:.75rem}.inspector-notes{gap:.45rem;padding:.75rem;font-weight:750;display:grid}.inspector-notes textarea{resize:vertical;min-height:calc(100vh - 9rem);padding:.75rem}@media (width<=1180px){.sheet-workspace{grid-template-columns:minmax(12rem,14rem) minmax(0,1fr) minmax(15rem,18rem)}.official-page-spread{grid-template-columns:1fr}}@media (width<=860px){.compact-sheet-toolbar{flex-direction:column;align-items:flex-start;position:static}.sheet-workspace,.sheet-workspace.left-collapsed,.sheet-workspace.right-collapsed,.sheet-workspace.left-collapsed.right-collapsed{display:block}.sheet-left-rail,.sheet-right-rail{max-height:none;position:static}.sheet-left-rail{border-right:0;border-bottom:1px solid var(--line)}.sheet-right-rail{border-top:1px solid var(--line);border-left:0}.sheet-workspace.left-collapsed .sheet-left-rail,.sheet-workspace.right-collapsed .sheet-right-rail{display:none}}@media print{.app-header,.cloud-status,.status-message,.compact-sheet-toolbar,.sheet-left-rail,.sheet-right-rail,.page-badge{display:none!important}.sheet-workspace,.sheet-workspace.left-collapsed,.sheet-workspace.right-collapsed{background:#fff;display:block}.sheet-center-stage{background:#fff;padding:0}.official-page-spread,.official-page-single{display:block}}:root{--panel:#1a222c;--panel-light:#222d39;--line:#3b4a59;--ink:#edf2f7;--muted:#9cabb9;--accent:#7fb3d5;--accent-dark:#315b78}.app-header,.sheet-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.app-header{margin-bottom:1.25rem}h1,h2,p{margin-top:0}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.25rem;font-size:.78rem;font-weight:700}.sheet{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:clamp(1rem,3vw,2rem);box-shadow:0 24px 60px #00000038}.point-summary{background:var(--accent-dark);text-align:center;border-radius:12px;min-width:130px;padding:.75rem 1rem;font-size:1.5rem;font-weight:800}.point-summary span{font-size:.75rem;font-weight:500;display:block}.identity-grid,.attributes{gap:1rem;display:grid}.identity-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:1.5rem 0}.attributes{grid-template-columns:repeat(4,minmax(0,1fr))}label,.derived-stat{color:var(--muted);gap:.45rem;font-size:.82rem;font-weight:700;display:grid}input,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#111820;border-radius:9px;padding:.7rem .8rem}input:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:3px solid #7fb3d566}.derived-stat,.attribute-card{border:1px solid var(--line);background:var(--panel-light);border-radius:12px;min-height:92px;padding:.8rem}.derived-stat strong{color:var(--ink);font-size:1.5rem}.attribute-name{color:var(--ink);text-transform:capitalize}.modifier{font-size:.75rem;font-weight:500}.notes{margin-top:1.5rem}@media (width<=760px){.identity-grid,.attributes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=460px){main{width:min(100% - 1rem,1100px);padding-top:.75rem}.sheet-heading{align-items:flex-start}.identity-grid,.attributes{grid-template-columns:1fr}}nav{flex-wrap:wrap;gap:.6rem;display:flex}button{border:1px solid var(--line);color:var(--ink);background:var(--panel-light);cursor:pointer;border-radius:9px;padding:.65rem .9rem}button:hover{border-color:var(--accent)}.status-message{border-left:4px solid var(--accent);background:var(--panel);border-radius:6px;padding:.75rem 1rem}.tree-panel{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:clamp(1rem,3vw,2rem)}.tree-heading{justify-content:space-between;gap:1rem;display:flex}.tree-heading>p{color:var(--muted)}.tree-canvas{border:1px solid var(--line);background:#121922;border-radius:12px;width:100%;height:620px;overflow:hidden}@media (width<=600px){.app-header,.tree-heading{flex-direction:column;align-items:flex-start}.tree-canvas{height:70vh;min-height:480px}}.danger-button{color:#ffd9dd;background:#4a2026;border-color:#a84e58}.danger-button:hover{border-color:#e07a84}.ability-node{border:2px solid var(--line);width:240px;color:var(--ink);background:var(--panel-light);border-radius:14px;padding:1rem;box-shadow:0 10px 28px #00000047}.ability-node--locked{color:var(--muted);background:#242c35;border-color:#596674}.ability-node--available{border-color:var(--accent);background:#17334a}.ability-node--acquired{background:#173b24;border-color:#5bbf75}.ability-tier{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;font-weight:800}.ability-node h3{margin:0 0 .5rem;font-size:1.05rem}.ability-description,.ability-reason{margin-bottom:.75rem;font-size:.82rem;line-height:1.4}.ability-reason{color:#f4c66b}.ability-facts{gap:1rem;margin:0 0 .75rem;display:flex}.ability-facts div{gap:.1rem;display:grid}.ability-facts dt{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:700}.ability-facts dd{text-transform:capitalize;margin:0;font-weight:800}.ability-node button{width:100%}.ability-node button:disabled{cursor:not-allowed;opacity:.55}.empty-state,.error-boundary{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:2rem}.empty-state h2,.error-boundary h1{margin-bottom:.75rem}:root{--gradient-ink:#17212b;--gradient-muted:#66717d;--gradient-panel:#fff;--gradient-surface:#f4f7fb;--gradient-line:#d8e0e8;--gradient-blue:#2e74b5;--gradient-blue-dark:#1f4d78;--gradient-blue-soft:#e8f1fa;--gradient-green:#1f7a4d;--gradient-red:#a33a3a;--gradient-shadow:0 16px 42px #142b441a}body{color:var(--gradient-ink);background:radial-gradient(circle at top left, #e8f1fa 0, transparent 34rem), var(--gradient-surface)}button,input,textarea,select{font:inherit}button,.link-button{min-height:44px}.app-header nav a,.app-header nav button,.primary-button,.text-button,.danger-button,.link-button{border:1px solid var(--gradient-line);color:var(--gradient-blue-dark);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;padding:.65rem 1rem;text-decoration:none;display:inline-flex}.app-header nav a.active,.primary-button{border-color:var(--gradient-blue-dark);background:var(--gradient-blue-dark);color:#fff}.text-button{background:0 0}.danger-button{color:var(--gradient-red);border-color:#e4b7b7}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2e74b552}.cloud-status,.status-message,.library-panel,.creator-shell,.catalog-shell,.srd-workspace{width:100%;margin-inline:0}.cloud-status{border:1px solid var(--gradient-line);background:#ffffffe0;border-radius:1rem;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1rem;padding:.75rem 1rem;display:flex}.cloud-status p{margin:0}.status-message.error{color:#7e2525;background:#fff1f1;border-color:#e4b7b7}.library-panel,.creator-shell,.catalog-shell,.srd-workspace{margin-top:1.5rem;margin-bottom:3rem}.section-heading-row,.sheet-toolbar,.catalog-hero{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.character-grid,.ruleset-grid,.option-grid,.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;display:grid}.character-card,.ruleset-card,.catalog-card,.empty-state,.creator-shell,.catalog-hero,.catalog-controls,.sheet-panel{border:1px solid var(--gradient-line);background:var(--gradient-panel);box-shadow:var(--gradient-shadow);border-radius:1.1rem}.character-card,.ruleset-card,.catalog-card,.empty-state{padding:1.1rem}.character-card.active{border-color:var(--gradient-blue);box-shadow:0 0 0 3px #2e74b51f}.button-row,.builder-actions,.catalog-actions,.filter-row,.tag-row{flex-wrap:wrap;gap:.65rem;display:flex}.creator-shell{padding:clamp(1rem,3vw,2rem)}.builder-progress{grid-template-columns:repeat(8,minmax(0,1fr));gap:.45rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.builder-progress li{color:var(--gradient-muted);text-align:center;background:#edf1f5;border-radius:.75rem;padding:.6rem;font-size:.82rem}.builder-stage{gap:1rem;min-height:22rem;padding:clamp(.75rem,2vw,1.4rem) 0;display:grid}.builder-stage label,.srd-sheet label,.catalog-controls label{gap:.4rem;font-weight:650;display:grid}.builder-stage input,.builder-stage textarea,.srd-sheet input,.srd-sheet textarea,.catalog-controls input{box-sizing:border-box;width:100%;color:var(--gradient-ink);background:#fff;border:1px solid #b8c4d0;border-radius:.7rem;padding:.72rem}textarea{resize:vertical;min-height:7rem}.option-card{border:1px solid var(--gradient-line);min-height:9rem;color:var(--gradient-ink);text-align:left;background:#fff;border-radius:1rem;align-content:start;gap:.5rem;padding:1rem;display:grid}.option-card.selected{border-color:var(--gradient-blue);background:var(--gradient-blue-soft);box-shadow:0 0 0 3px #2e74b51f}.ability-builder-grid,.ability-sheet-grid,.combat-stats,.field-grid,.check-grid,.review-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.8rem;display:grid}.modifier{color:var(--gradient-muted);font-size:.9rem}.check-grid label{align-items:center;gap:.5rem;font-weight:500;display:flex}.check-grid input{width:auto}.review-grid div,.training-panel dl div{background:#f2f5f8;border-radius:.75rem;padding:.75rem}.review-grid dt,.training-panel dt{color:var(--gradient-muted);text-transform:uppercase;font-size:.8rem;font-weight:700}.review-grid dd,.training-panel dd{margin:.25rem 0 0}.builder-actions{border-top:1px solid var(--gradient-line);justify-content:space-between;margin-top:1rem;padding-top:1rem}.catalog-hero,.catalog-controls{padding:clamp(1rem,3vw,1.5rem)}.catalog-controls{gap:1rem;margin-top:1rem;display:grid}.filter-row button[aria-pressed=true]{background:var(--gradient-blue-dark);color:#fff}.catalog-card a{color:var(--gradient-blue-dark);font-weight:700}.tag-row span{background:var(--gradient-blue-soft);color:var(--gradient-blue-dark);border-radius:999px;padding:.25rem .55rem;font-size:.75rem}.sheet-toolbar{margin-bottom:1rem}.layout-picker{border:1px solid var(--gradient-line);background:#fff;border-radius:1rem;flex-wrap:wrap;gap:.5rem .9rem;padding:.8rem 1rem;display:flex}.layout-picker label{align-items:center;gap:.35rem;font-weight:600;display:flex}.srd-sheet{grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;display:grid}.sheet-panel{min-width:0;padding:1rem}.sheet-panel h3{margin-top:0}.identity-panel{grid-column:1/-1}.combat-panel{grid-column:span 7}.abilities-panel{grid-column:span 5}.actions-panel{grid-column:span 7}.features-panel{grid-column:span 5}.training-panel,.equipment-panel,.spells-panel{grid-column:span 4}.story-panel{grid-column:1/-1}.character-name-field input{font-size:clamp(1.5rem,4vw,2.4rem);font-weight:750}.identity-summary{flex-wrap:wrap;gap:.5rem;margin-top:.8rem;display:flex}.identity-summary span{background:var(--gradient-blue-soft);border-radius:999px;padding:.4rem .7rem}.ability-sheet-grid label{background:#f2f5f8;border-radius:.75rem;grid-template-columns:1fr 4rem auto;align-items:center;padding:.55rem}.ability-sheet-grid input{padding:.45rem}.training-panel dl{gap:.65rem;display:grid}.layout-table .combat-panel{order:1;grid-column:1/-1}.layout-table .actions-panel{order:2;grid-column:span 8}.layout-table .abilities-panel{order:3;grid-column:span 4}.layout-table .features-panel{order:4;grid-column:span 7}.layout-table .training-panel{order:5;grid-column:span 5}.layout-table .equipment-panel,.layout-table .spells-panel,.layout-table .story-panel{order:6}.layout-cards .sheet-panel{grid-column:span 4}.layout-cards .identity-panel,.layout-cards .story-panel{grid-column:1/-1}.layout-compact{max-width:540px;margin-inline:auto}.layout-compact .sheet-panel{grid-column:1/-1}.centered-state{place-items:center;min-height:70vh;display:grid}@media (width<=900px){.builder-progress{grid-template-columns:repeat(4,minmax(0,1fr))}.srd-sheet .sheet-panel{grid-column:1/-1}.section-heading-row,.sheet-toolbar,.catalog-hero{flex-direction:column;align-items:stretch}}@media (width<=520px){.cloud-status,.status-message,.library-panel,.creator-shell,.catalog-shell,.srd-workspace{width:100%}.builder-progress{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.builder-progress li{scroll-snap-align:start;min-width:8rem}.character-grid,.ruleset-grid,.option-grid,.catalog-grid,.ability-builder-grid,.ability-sheet-grid,.combat-stats,.field-grid,.review-grid{grid-template-columns:1fr}.button-row,.catalog-actions,.builder-actions{flex-direction:column;align-items:stretch}.button-row>*,.catalog-actions>*,.builder-actions>*{width:100%}.layout-picker{grid-template-columns:1fr 1fr;display:grid}.ability-sheet-grid label{grid-template-columns:1fr 5rem auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent-for-light:#23785e;--accent-for-dark:#78d9b2;--custom-accent-light:#2563eb;--custom-accent-dark:#93c5fd;--accent:var(--accent-for-light);--accent-decoration:var(--accent);--accent-strong:color-mix(in srgb, var(--accent) 78%, #102018);--accent-soft:color-mix(in srgb, var(--accent) 15%, transparent);--app-background:#edf1f4;--app-background-raised:#f7f9fb;--surface:#fff;--surface-raised:#fff;--surface-soft:#f0f3f5;--surface-translucent:#ffffffe6;--ink:#182129;--ink-soft:#56636f;--line:#cdd5dc;--line-strong:#9ca9b4;--danger:#a43c44;--danger-soft:#fff0f1;--warning:#8a6316;--shadow-color:#101f2a21;--paper:#fbfaf5;--paper-ink:#252525;--paper-line:#77736b;--paper-grid:#46433c17;--gradient-ink:var(--ink);--gradient-muted:var(--ink-soft);--gradient-panel:var(--surface);--gradient-surface:var(--app-background);--gradient-line:var(--line);--gradient-blue:var(--accent);--gradient-blue-dark:var(--accent-strong);--gradient-blue-soft:var(--accent-soft);--gradient-green:var(--accent);--gradient-red:var(--danger);--gradient-shadow:0 16px 42px var(--shadow-color)}:root[data-accent=emerald]{--accent-for-light:#23785e;--accent-for-dark:#78d9b2}:root[data-accent=crimson]{--accent-for-light:#9c3438;--accent-for-dark:#f08080}:root[data-accent=arcane]{--accent-for-light:#315fa8;--accent-for-dark:#80acf2}:root[data-accent=amethyst]{--accent-for-light:#7047a6;--accent-for-dark:#c19af3}:root[data-accent=gold]{--accent-for-light:#8b641b;--accent-for-dark:#e7bd66}:root[data-accent=monochrome]{--accent-for-light:#4a535d;--accent-for-dark:#c4ccd3}:root[data-accent=custom]{--accent-for-light:var(--custom-accent-light);--accent-for-dark:var(--custom-accent-dark)}:root[data-color-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent:var(--accent-for-dark);--accent-strong:color-mix(in srgb, var(--accent) 82%, #fff);--accent-soft:color-mix(in srgb, var(--accent) 17%, transparent);--app-background:#0d1216;--app-background-raised:#141b20;--surface:#182127;--surface-raised:#202b32;--surface-soft:#12191e;--surface-translucent:#182127eb;--ink:#eef2f3;--ink-soft:#aab6bd;--line:#34434c;--line-strong:#53636c;--danger:#f08a90;--danger-soft:#3b2024;--warning:#e7bd66;--shadow-color:#00000061;--paper:#1b201f;--paper-ink:#edf1ec;--paper-line:#8c9691;--paper-grid:#ebf2ed11}body{color:var(--ink);background:radial-gradient(circle at 8% -10%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 32rem), var(--app-background);transition:background-color .18s,color .18s}.app-header,.cloud-status,.status-message,.character-card,.ruleset-card,.catalog-card,.empty-state,.creator-shell,.catalog-hero,.catalog-controls,.sheet-panel,.layout-picker,.species-wiki-index,.species-wiki-entry,.species-choice-panel,.runtime-feature,.mechanics-dock,.appearance-panel{border-color:var(--line);background:var(--surface-translucent);color:var(--ink)}button,.link-button,.app-header nav a,.app-header nav button,input,textarea,select,.option-card{border-color:var(--line);background:var(--surface-raised);color:var(--ink)}.app-header nav a.active,.primary-button,.filter-row button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-decoration);color:#08110e}:root[data-color-mode=light] .app-header nav a.active,:root[data-color-mode=light] .primary-button,:root[data-color-mode=light] .filter-row button[aria-pressed=true]{color:#fff}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:color-mix(in srgb, var(--accent) 46%, transparent)}.option-card.selected,.character-card.active,.species-wiki-index button.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.builder-progress li,.review-grid div,.training-panel dl div,.ability-sheet-grid label,.species-facts div,.trait-entry,.catalog-choice-reference{background:var(--surface-soft);color:var(--ink)}.builder-progress li.current{background:var(--accent);color:#08110e}.identity-summary span,.tag-row span,.runtime-feature-heading>span,.trait-entry-heading>span,.runtime-feature-heading strong,.mechanic-chip-row span{background:var(--accent-soft);color:var(--ink)}.mechanic-summary{color:var(--accent-strong)}.locked-feature{color:var(--warning)}.danger-button{border-color:color-mix(in srgb, var(--danger) 45%, var(--line));color:var(--danger)}.status-message.error{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.appearance-panel{border:1px solid var(--line);width:100%;box-shadow:var(--gradient-shadow);border-radius:1.25rem;margin:1.5rem 0 4rem;padding:clamp(1rem,3vw,2rem)}.appearance-heading{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.appearance-heading h2,.appearance-heading p{margin-top:0}.preference-status{border:1px solid var(--line);background:var(--surface-soft);max-width:24rem;color:var(--ink-soft);border-radius:999px;padding:.7rem .9rem}.preference-status strong{color:var(--accent-strong);text-transform:capitalize}.preference-group{border:0;margin-top:1.5rem;padding:0}.preference-group legend{margin-bottom:.7rem;font-size:1.05rem;font-weight:750}.motion-preference small,.official-treatment-grid small{color:var(--ink-soft);line-height:1.4;display:block}.appearance-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.compact-preference-group{min-width:0}.segmented-control{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;width:max-content;max-width:100%;padding:.2rem;display:flex}.segmented-control button{background:0 0;border:0;border-radius:999px;min-height:2.25rem;padding:.35rem .8rem}.segmented-control button[aria-pressed=true]{background:var(--accent-decoration);color:#07110e;box-shadow:0 2px 10px var(--shadow-color)}.accent-ribbon{grid-template-columns:repeat(7,minmax(4.5rem,1fr));gap:.5rem;display:grid}.accent-ribbon>button{background:0 0;border:1px solid #0000;border-radius:.8rem;justify-items:center;gap:.35rem;min-width:0;padding:.55rem .35rem;display:grid}.accent-ribbon>button.selected,.finish-grid button.selected,.official-treatment-grid button.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.accent-swatch{border:2px solid color-mix(in srgb, var(--ink) 25%, transparent);background:linear-gradient(135deg, var(--light-swatch) 0 50%, var(--dark-swatch) 50% 100%);border-radius:50%;width:2rem;height:2rem}.custom-swatch{box-shadow:inset 0 0 0 4px color-mix(in srgb, var(--surface) 55%, transparent)}.custom-accent-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:1rem;grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:1.25rem;margin-top:.75rem;padding:1rem;display:grid}.custom-accent-panel h3,.custom-accent-panel p{margin-top:0}.color-spectrum-grid{grid-template-columns:repeat(12,minmax(1.5rem,1fr));gap:.35rem;display:grid}.color-spectrum-grid button{aspect-ratio:1;border:2px solid color-mix(in srgb, var(--ink) 28%, transparent);border-radius:.4rem;min-width:1.5rem;padding:0}.color-spectrum-grid button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.color-input-row{flex-wrap:wrap;gap:.75rem;margin-top:.8rem;display:flex}.color-input-row label{align-items:center;gap:.5rem;display:flex}.color-input-row input[type=color]{width:3rem;height:2rem;padding:.1rem}.finish-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.finish-grid button{border:1px solid var(--line);text-align:left;border-radius:.6rem;align-items:center;gap:.5rem;min-height:2.6rem;padding:.4rem .55rem;display:flex}.finish-grid button span{border-radius:.35rem;width:2.2rem;height:1.35rem;box-shadow:inset 0 0 0 1px #00000040}.official-treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.official-treatment-grid button{border:1px solid var(--line);text-align:left;border-radius:.75rem;padding:.7rem .8rem}.motion-preference{border:1px solid var(--line);background:var(--surface-soft);border-radius:.9rem;align-items:flex-start;gap:.8rem;margin-top:1.5rem;padding:1rem;display:flex}.compact-motion-preference{padding:.7rem .8rem}.motion-preference input{width:1.2rem;height:1.2rem}.theme-preview{border:1px solid var(--line);background:var(--surface-raised);border-radius:1rem;margin-top:2rem;overflow:hidden}.compact-theme-preview{margin-top:1rem}.theme-preview-banner{background:var(--accent);color:#08110e;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.theme-preview-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem;display:grid}.theme-preview-content article{border:1px solid var(--line);background:var(--surface-soft);border-radius:.8rem;padding:1rem}:root[data-density=condensed]{--density-space:.72}:root[data-density=condensed] .character-card,:root[data-density=condensed] .catalog-card,:root[data-density=condensed] .sheet-panel,:root[data-density=condensed] .runtime-feature,:root[data-density=condensed] .appearance-panel{padding:.75rem}:root[data-reduce-motion=true] *,:root[data-reduce-motion=true] :before,:root[data-reduce-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (width<=720px){.appearance-heading{flex-direction:column;gap:.5rem}.appearance-compact-grid,.custom-accent-panel,.official-treatment-grid,.theme-preview-content{grid-template-columns:1fr}.accent-ribbon{grid-template-columns:repeat(4,minmax(0,1fr))}.color-spectrum-grid{grid-template-columns:repeat(8,minmax(1.5rem,1fr))}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{color:#e9edf2;font-synthesis:none;text-rendering:optimizelegibility;background:#11161d;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}main{width:100%;margin:0;padding:clamp(.75rem,1.25vw,1.5rem)}
