:root{--ground:#16120c;--ground-2:#1f1a12;--ground-3:#100c07;--parchment:#ece0c8;--parchment-2:#b8a888;--ink-faint:#8a8070;--rule:#4a4030;--rule-soft:#332c20;--accent:#b2452f;--accent-deep:#8a3623;--select:#c9a25a;--obsidian:var(--ground-3);--charcoal:var(--ground-2);--ivory:var(--parchment);--soft:var(--parchment-2);--muted:var(--ink-faint);--gold:var(--select);--gold-deep:var(--accent-deep);--ember:var(--accent);--teal:var(--accent);--green:var(--parchment-2);--violet:var(--accent);--line:var(--rule-soft);--line-strong:var(--rule);--glass:var(--ground-2);--glass-strong:var(--ground-3);--r-sm:3px;--r-md:5px;--r-lg:8px;--shadow-soft:0 10px 30px #0006;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--font-display:var(--font-fraunces), Georgia, serif;--font-body:var(--font-newsreader), Georgia, serif;--font-label:var(--font-archivo), system-ui, sans-serif;--font-mono:"Spline Sans Mono", ui-monospace, monospace;--paper:#ece1c9;--paper-raised:#e4d7bb;--ink:#241c12;--ink-2:#6b5d44;--ink-3:#5e503a;--doc-rule:#c9b896;--doc-rule-soft:#d8c9a8;--doc-accent:#a23f29;--doc-accent-deep:#842f1d;--doc-select:#9c7a2f;--desk:#1a140d;--sheet-shadow:0 26px 55px #00000080, 0 4px 14px #0006;--world-backdrop:url(/wayhouse-backdrop.webp);--world-backdrop-position:center center;--world-backdrop-wash:linear-gradient(180deg, #070d161f 0%, transparent 30%, #070d1680 100%), linear-gradient(90deg, transparent 0%, transparent 55%, #070d1638 100%), linear-gradient(180deg, #070d161a 0%, transparent 22%, transparent 100%)}.ao-title-legal{letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:.45rem .9rem;margin-top:1rem;font-size:.72rem;display:flex}.ao-title-legal a,.legal-page a{color:var(--ao-brass,#c0a86f);text-underline-offset:.2em}.legal-page{color:#eee5d5;background:#111820;min-height:100vh;padding:clamp(1.25rem,4vw,4rem)}.legal-page article{background:#141c25f5;border:1px solid #c0a86f80;width:min(760px,100%);margin:0 auto;padding:clamp(1.25rem,4vw,3rem);box-shadow:0 24px 80px #00000059}.legal-page h1,.legal-page h2{font-family:var(--font-fraunces), Georgia, serif}.legal-page h1{margin:.35rem 0 .5rem;font-size:clamp(2rem,7vw,3.5rem)}.legal-page h2{margin-top:2rem;font-size:1.2rem}.legal-page p,.legal-page li{line-height:1.7}.legal-page .legal-eyebrow,.legal-page .legal-updated{color:#c0a86f;letter-spacing:.12em;text-transform:uppercase;font-size:.76rem}.legal-page .legal-nav{border-top:1px solid #c0a86f4d;flex-wrap:wrap;gap:.75rem 1rem;margin-top:2.5rem;padding-top:1.25rem;display:flex}*{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:100%}body{min-height:100%;color:var(--ivory);background:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.44}.skip-link{z-index:9999;border-radius:var(--r-sm,3px);background:var(--ground-2);color:var(--parchment);font-family:var(--font-label);padding:10px 16px;font-size:.9em;text-decoration:none;position:absolute;top:-100%;left:12px}.skip-link:focus-visible{top:12px}:focus-visible{outline:2px solid var(--select,#c9a25a)!important;outline-offset:2px!important}html[data-reduced-motion] *,html[data-reduced-motion] :before,html[data-reduced-motion] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html[data-high-contrast]{--ink-2:var(--ink);--ink-3:var(--ink);--ink-faint:var(--ink);--text-secondary:var(--text-primary);--text-muted:var(--text-primary);--text-document-muted:var(--text-document);--parchment-2:var(--parchment)}::selection{color:#0d0803;background:var(--gold)}.splash-screen,.entry-screen,.builder-shell{isolation:isolate;min-height:100dvh;position:relative;overflow:hidden}.splash-screen:before,.entry-screen:before,.builder-shell:before{z-index:-3;pointer-events:none;content:"";background-image:var(--world-backdrop-wash), var(--world-backdrop);background-size:cover,cover,cover,cover;background-position:var(--world-backdrop-position), var(--world-backdrop-position), var(--world-backdrop-position), var(--world-backdrop-position);background-repeat:no-repeat;position:fixed;inset:0}.splash-screen:after,.entry-screen:after,.builder-shell:after{z-index:-2;pointer-events:none;content:"";background:var(--grain);opacity:.05;mix-blend-mode:overlay;background-size:140px 140px;position:fixed;inset:0}.splash-screen{align-content:center;place-items:center;gap:24px;padding:28px;display:grid}.splash-mark{border:1px solid var(--line-strong);color:#1a1005;background:linear-gradient(145deg, var(--select), var(--accent-deep));width:118px;height:118px;box-shadow:none;border-radius:30px;place-items:center;animation:.9s both lift-in;display:grid;position:relative}.splash-copy{text-align:center;isolation:isolate;gap:8px;animation:.9s .12s both fade-up;display:grid;position:relative}.splash-copy:before{content:"";z-index:-1;background:radial-gradient(#070d16d1 0%,#070d1699 46%,#070d163d 72%,#0000 100%);border-radius:28px;position:absolute;inset:-46px -90px}.splash-copy span,.creator-header span,.builder-brand span,.login-heading span,.dice-heading span,.rail-heading span,.sheet-hero span{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:760}.splash-copy h1{color:#fff4da;text-shadow:0 2px 6px #070d16e6,0 6px 30px #070d16bf;max-width:620px;font-size:clamp(2rem,5vw,4.4rem);line-height:.96}.splash-progress{background:#ffffff29;border-radius:999px;width:min(420px,72vw);height:3px;overflow:hidden}.splash-progress span{border-radius:inherit;background:linear-gradient(90deg, transparent, var(--gold), var(--teal));transform-origin:0;width:100%;height:100%;animation:1.55s both load-bar;display:block}@keyframes load-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes lift-in{0%{opacity:0;transform:translateY(16px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.entry-screen{grid-template-columns:minmax(0,1fr) minmax(340px,440px);align-items:center;gap:64px;padding:clamp(24px,5vw,72px);display:grid}.entry-copy{align-content:center;gap:24px;max-width:790px;display:grid}.brand-line,.builder-brand,.builder-actions,.account-chip,.system-status,.gold-button,.glass-button,.danger-button,.glass-icon,.method-row button,.mode-switch button,.dice-heading,.loadout-block h3{align-items:center;display:inline-flex}.brand-line{color:var(--gold);text-transform:uppercase;gap:12px;font-weight:800}.brand-glyph{color:#171007;background:linear-gradient(145deg, var(--select), var(--accent-deep));width:44px;height:44px;box-shadow:none;border:1px solid #ffffff24;border-radius:14px;place-items:center;display:grid}.entry-copy h1{color:#fff5df;text-shadow:0 4px 28px #18120a94;max-width:760px;font-size:clamp(3.4rem,8vw,8.8rem);font-weight:820;line-height:.9}.entry-copy p{color:#dfd0b7;text-shadow:0 2px 16px #18120a8f;max-width:600px;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.7}.entry-metrics{grid-template-columns:repeat(3,minmax(0,154px));gap:10px;display:grid}.entry-metrics span{border:1px solid var(--line);min-height:88px;color:var(--soft);-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffff0f;border-radius:18px;gap:5px;padding:14px;display:grid}.entry-metrics strong{color:var(--teal);font-size:1.6rem}.login-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(145deg,#ffffff1f,#ffffff09),#07080aa3;border:1px solid #ffffff2e;border-radius:28px;gap:18px;padding:24px;display:grid;box-shadow:0 22px 70px #0000006b}.login-heading{gap:6px;display:grid}.login-heading h2{color:#fff6dd;font-size:2rem;line-height:1}.mode-switch{background:#00000042;border:1px solid #ffffff21;border-radius:16px;grid-template-columns:1fr 1fr;gap:6px;padding:5px;display:grid}.mode-switch button,.method-row button{min-height:42px;color:var(--soft);background:0 0;border:0;border-radius:12px;justify-content:center;gap:8px}.mode-switch button.active,.method-row button.active{color:#1a1005;background:linear-gradient(145deg, var(--gold), #f1d58a);box-shadow:none}.control-field{gap:8px;display:grid}.control-field span{color:var(--soft);font-size:.84rem;font-weight:700}.control-field input,.control-field textarea,.control-field select,.attribute-card select{width:100%;min-height:48px;color:var(--ivory);background:#00000052;border:1px solid #ffffff24;border-radius:14px;outline:none;padding:0 14px}.control-field textarea{resize:vertical;min-height:132px;padding:14px;line-height:1.5}.control-field input:focus,.control-field textarea:focus,.control-field select:focus,.attribute-card select:focus{border-color:var(--line-strong);box-shadow:0 0 0 2px #ffffff40}select option{color:var(--ink,var(--ivory));background:var(--paper,var(--ground-2))}.auth-status{min-height:32px;color:var(--teal);font-size:.9rem}.gold-button,.glass-button,.danger-button{border-radius:15px;justify-content:center;gap:10px;min-height:46px;padding:0 16px;font-weight:760;transition:transform .16s,border-color .16s,background .16s}.gold-button{border:1px solid var(--accent-deep);border-radius:var(--r-sm);min-height:46px;color:var(--parchment);background:var(--accent);justify-content:center;gap:10px;padding:0 16px;font-weight:700;transition:background .16s}.glass-button,.danger-button{border:1px solid var(--rule);border-radius:var(--r-sm);color:var(--parchment);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.danger-button{color:#ffe1d9;border-color:#f078505c}.builder-shell{padding:18px}.builder-shell:after{background:var(--grain);opacity:.05;mix-blend-mode:overlay;background-size:140px 140px}.builder-topbar{justify-content:space-between;align-items:center;gap:16px;max-width:1680px;min-height:68px;margin:0 auto 16px;display:flex}.builder-brand{gap:12px}.builder-brand div:last-child{gap:2px;display:grid}.builder-brand strong{color:#fff6dd;font-size:1.12rem}.builder-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.account-chip,.system-status{border:1px solid var(--line);min-height:38px;color:var(--soft);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff1;border-radius:999px;gap:8px;padding:0 12px}.system-status{color:var(--teal)}.save-status-badge{border:1px solid var(--rule-soft);min-height:28px;font-family:var(--font-label);letter-spacing:.04em;color:var(--parchment);background:#ece0c814;border-radius:999px;align-items:center;padding:4px 10px;font-size:.75rem;display:inline-flex}.save-status-badge--saving{border-color:#c9a25a8c}.save-status-badge--saved{border-color:#78a064a6}.save-status-badge--error{color:#ffd8d0;border-color:#b2452fe6}.glass-icon{cursor:pointer;width:42px;height:42px;color:var(--ivory);background:#ffffff13;border:1px solid #ffffff24;border-radius:14px;place-items:center;padding:0;line-height:0;display:grid}.builder-layout{grid-template-columns:260px 1fr;align-items:start;gap:16px;max-width:1680px;margin:0 auto;display:grid}.builder-layout.builder-layout-sheet-only{grid-template-columns:minmax(0,1fr)}.builder-layout.builder-layout-sheet-only>.vault-rail{display:none}.vault-rail,.studio-surface{border:1px solid var(--rule);border-radius:var(--r-lg);background:var(--ground-2);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.vault-rail{padding:14px;position:sticky;top:18px}.rail-heading,.dice-heading{justify-content:space-between;gap:10px;min-height:42px;margin-bottom:12px}.rail-action{font-family:var(--font-label);color:var(--parchment);cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:.78rem;font-weight:600}.rail-action:hover{color:var(--gold)}.vault-list{gap:10px;display:grid}.vault-avatar{min-height:122px;color:var(--ivory);text-align:left;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:18px;justify-items:start;gap:6px;padding:12px;display:grid}.vault-avatar.active{border-color:var(--line-strong);background:var(--ground-2)}.vault-avatar span{width:42px;height:42px;color:var(--class-a);border:1px solid color-mix(in srgb, var(--class-a) 48%, transparent);background:radial-gradient(circle at 35% 18%, color-mix(in srgb, var(--class-a) 28%, transparent), transparent 44%), linear-gradient(145deg, color-mix(in srgb, var(--class-a) 16%, transparent), color-mix(in srgb, var(--class-b) 10%, transparent)), #00000038;border-radius:14px;place-items:center;font-weight:850;display:grid}.vault-avatar strong,.vault-avatar small{overflow-wrap:anywhere;max-width:100%}.vault-avatar small{color:var(--muted);line-height:1.35}.studio-surface{background:var(--desk);min-height:calc(100dvh - 102px);padding-bottom:40px;overflow:hidden auto}:is(.studio-surface:has(.dj-dossier),.studio-surface:has(.dj-start),.studio-surface:has(.onboarding-panel)){background:0 0;border-color:#0000;padding-bottom:0}.creator-panel,.sheet-panel{gap:18px;padding:18px;display:grid}.start-panel{align-content:center;gap:24px;min-height:calc(100dvh - 104px);padding:clamp(18px,4vw,42px);display:grid}.start-copy{gap:10px;max-width:760px;display:grid}.start-copy span{color:var(--class-a);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:760}.start-copy h2{color:var(--text-primary,#fff4da);font-size:clamp(2.5rem,6vw,6.8rem);line-height:.9}.start-copy p{color:#dfd0b7;max-width:560px;line-height:1.65}.build-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.build-mode-card{min-height:230px;color:var(--ivory);text-align:left;background:linear-gradient(145deg,#ffffff15,#ffffff07),#00000038;border:1px solid #ffffff21;border-radius:24px;align-content:start;gap:12px;padding:18px;transition:transform .16s,border-color .16s,background .16s;display:grid}.build-mode-card.active{border-color:var(--line-strong);background:0 0}.build-mode-card svg{color:var(--gold)}.build-mode-card strong{color:var(--text-primary,#fff4da);font-size:1.25rem}.build-mode-card span{color:#ddceb3;line-height:1.5}.start-actions{justify-content:flex-end;display:flex}.quickbuilder-panel{flex-direction:column;gap:1.5rem;display:flex}.qb-name-row{margin-top:1rem}.qb-name-row label{color:#ddceb3;flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.qb-name-input{color:#eee6d8;font-family:var(--font-body);background:#00000040;border:1px solid #ddceb340;border-radius:6px;max-width:340px;padding:.5rem .75rem;font-size:.95rem}.qb-name-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #a9342833}.qb-name-input::placeholder{color:#ddceb359}.qb-cancel{align-self:flex-start;margin-top:.5rem}.creator-header{grid-template-columns:minmax(0,.56fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.creator-title{min-width:0}.creator-header h2,.sheet-hero h2{max-width:100%;color:var(--text-primary,#fff4da);overflow-wrap:anywhere;word-break:break-word;margin-top:4px;font-size:clamp(2rem,4vw,4.8rem);line-height:.94}.step-tabs{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;min-width:0;display:grid}.step-tabs button{min-height:62px;color:var(--soft);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-content:center;gap:4px;display:grid}.step-tabs button.active{color:var(--parchment);border-bottom:2px solid var(--select);background:0 0}.step-tabs button span{color:inherit;letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:740}.creator-stage{grid-template-columns:minmax(300px,.78fr) minmax(0,1fr);align-items:start;gap:18px;min-height:600px;display:grid}.hero-preview{background:0 0;border-radius:24px;align-content:end;align-self:start;gap:18px;width:100%;height:clamp(560px,70vh,700px);min-height:0;padding:20px;display:grid;position:relative;overflow:hidden}.hero-preview:before{z-index:0;content:"";border:1px solid var(--rule);background:0 0;border-radius:50%;position:absolute;inset:12%;-webkit-mask-image:radial-gradient(circle,#000 62%,#0000 65%);mask-image:radial-gradient(circle,#000 62%,#0000 65%)}.class-icon-stage{--class-a:var(--gold);--class-b:var(--teal);z-index:1;aspect-ratio:1;border:1px solid var(--rule);width:min(280px,62vw);color:var(--gold);background:radial-gradient(circle at 50% 20%, color-mix(in srgb, var(--class-a) 30%, transparent), transparent 35%), linear-gradient(145deg, color-mix(in srgb, var(--class-a) 18%, transparent), color-mix(in srgb, var(--class-b) 10%, transparent)), #00000038;box-shadow:none;border-radius:28px;place-self:center;place-items:center;display:grid;position:relative}.class-symbol{max-width:100%;height:auto;filter:drop-shadow(0 0 10px color-mix(in srgb, currentColor 22%, transparent));display:block;overflow:visible}.class-symbol-mask{-webkit-mask:var(--class-icon-url) center / contain no-repeat;mask:var(--class-icon-url) center / contain no-repeat;-webkit-mask:var(--class-icon-url) center / contain no-repeat;background:currentColor;flex:none}.species-symbol{max-width:100%;height:auto;filter:drop-shadow(0 0 10px color-mix(in srgb, currentColor 18%, transparent));display:block;overflow:visible}.species-symbol-mask{-webkit-mask:var(--species-icon-url) center / contain no-repeat;mask:var(--species-icon-url) center / contain no-repeat;-webkit-mask:var(--species-icon-url) center / contain no-repeat;background:currentColor;flex:none}.species-symbol-image{background:var(--species-icon-url) center / contain no-repeat;filter:drop-shadow(0 2px 5px color-mix(in srgb, var(--ink) 18%, transparent));flex:none}.choice-avatar:has(.species-symbol-image){box-shadow:none;background:0 0;border-color:#0000}.species-signal>span:has(.species-symbol-image){box-shadow:none;background:0 0;border-color:#0000}.ledger-stamp-icon:has(.species-symbol-image){box-shadow:none;background:0 0;border-color:#0000}.ledger-modal-seal:has(.species-symbol-image){box-shadow:none;background:0 0;border-color:#0000}.choice-avatar:has(.species-symbol-image) .species-symbol-image{filter:none;width:100%!important;height:100%!important}.species-signal>span:has(.species-symbol-image) .species-symbol-image{filter:none;width:100%!important;height:100%!important}.ledger-stamp-icon:has(.species-symbol-image) .species-symbol-image{filter:none;width:100%!important;height:100%!important}.ledger-modal-seal:has(.species-symbol-image) .species-symbol-image{filter:none;width:100%!important;height:100%!important}.species-symbol-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:2px;display:grid}.species-symbol-grid .species-symbol-mask{width:100%;min-width:0;height:100%;min-height:0}.preview-identity-row{z-index:2;justify-content:space-between;align-items:center;gap:10px;width:min(100%,580px);margin-inline:auto;display:flex;position:relative}.species-signal{-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid #ffffff21;border-color:color-mix(in srgb, var(--class-a) 38%, #ffffff1a);background:linear-gradient(145deg,#050607bd,#0506076b),#ffffff0b;background:radial-gradient(circle at 8% 0%, color-mix(in srgb, var(--class-a) 28%, transparent), transparent 72%), linear-gradient(145deg, #050607c2, #05060770);border-radius:18px;flex:auto;align-items:center;gap:10px;min-width:0;min-height:58px;padding:8px 12px 8px 8px;display:inline-flex;box-shadow:0 16px 44px #00000047}.species-signal>span{border:1px solid color-mix(in srgb, var(--class-a) 42%, transparent);width:42px;height:42px;color:var(--class-a);background:radial-gradient(circle at 35% 18%, color-mix(in srgb, var(--class-a) 32%, transparent), transparent 48%), #00000038;border-radius:15px;flex:none;place-items:center;display:grid}.species-signal div{gap:2px;min-width:0;display:grid}.species-signal strong,.species-signal small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.species-signal strong{color:var(--text-primary,#fff4da);font-size:.92rem}.species-signal small{color:var(--soft);font-size:.72rem}.class-icon-stage,.hero-preview,.choice-avatar,:where(.vault-avatar span){--class-a:var(--gold);--class-b:var(--teal);--preview-title:#fff7e3;--preview-copy:#e4d7c0}[data-class=barbarian]{--class-a:#b2452f;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=bard]{--class-a:#9a5a8c;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=cleric]{--class-a:#c9a25a;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=druid]{--class-a:#6e7d4a;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=fighter]{--class-a:#8a7a66;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=monk]{--class-a:#6f8f86;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=paladin]{--class-a:#c08a3e;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=ranger]{--class-a:#5f7a52;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=rogue]{--class-a:#5a5a6e;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=sorcerer]{--class-a:#a8506a;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=warlock]{--class-a:#6b5a8a;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=wizard]{--class-a:#4f6a8a;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-class=artificer]{--class-a:#7a6e4e;--class-b:var(--class-a);--preview-title:var(--parchment);--preview-copy:var(--parchment-2)}[data-species=dragonborn],[data-species=dragonborn-legacy]{--class-a:#8a5a3a;--class-b:var(--class-a)}[data-species=dwarf],[data-species=hill-dwarf-legacy],[data-species=mountain-dwarf-legacy]{--class-a:#7a6a4a;--class-b:var(--class-a)}[data-species=elf],[data-species=high-elf-legacy],[data-species=wood-elf-legacy],[data-species=drow-legacy],[data-species=half-elf-legacy]{--class-a:#5f7a5a;--class-b:var(--class-a)}[data-species=gnome],[data-species=rock-gnome-legacy],[data-species=deep-gnome-legacy],[data-species=forest-gnome-legacy]{--class-a:#7a5a4a;--class-b:var(--class-a)}[data-species=goliath],[data-species=goliath-legacy]{--class-a:#6f7a7a;--class-b:var(--class-a)}[data-species=halfling],[data-species=lightfoot-halfling-legacy],[data-species=stout-halfling-legacy]{--class-a:#6f7a4a;--class-b:var(--class-a)}[data-species=human],[data-species=human-legacy]{--class-a:#8a7a5a;--class-b:var(--class-a)}[data-species=orc],[data-species=half-orc-legacy]{--class-a:#5a6a4a;--class-b:var(--class-a)}[data-species=tiefling],[data-species=tiefling-legacy]{--class-a:#7a4a5a;--class-b:var(--class-a)}[data-species=variant-aasimar]{--class-a:#8a7a4a;--class-b:var(--class-a)}[data-species=aarakocra-legacy]{--class-a:#5a6f8a;--class-b:var(--class-a)}[data-species=air-genasi-legacy],[data-species=earth-genasi-legacy],[data-species=fire-genasi-legacy],[data-species=water-genasi-legacy]{--class-a:#5a7a7a;--class-b:var(--class-a)}.class-icon-stage:before{content:"";border:1px solid #ffffff1c;border-radius:20px;position:absolute;inset:15px}.class-icon-stage.compact{border-radius:22px;width:110px}.class-icon-stage.compact:before{border-radius:16px;inset:10px}.class-orbit{z-index:1;aspect-ratio:1;border:1px solid var(--rule);width:min(300px,64vw);box-shadow:none;background:0 0;border-radius:50%;place-self:center;place-items:center;display:grid;position:relative}.class-orbit.compact{width:110px}.class-orbit span{z-index:1;color:var(--gold);text-shadow:none;font-size:clamp(4rem,10vw,8rem);font-weight:880;position:relative}.class-orbit.compact span{font-size:3.1rem}.hero-summary{z-index:2;background:linear-gradient(145deg, #050607b8, #0506076b), color-mix(in srgb, var(--class-a,var(--gold)) 12%, transparent);text-align:center;-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid #ffffff1a;border-radius:20px;justify-items:center;gap:6px;width:min(100%,580px);margin-inline:auto;padding:14px 16px;display:grid;position:relative;box-shadow:0 18px 52px #00000052}.hero-summary strong{color:var(--preview-title,#fff7e3);text-shadow:0 3px 18px #000000c7;font-size:1.4rem}.hero-summary span{color:var(--preview-copy,#e2d5bd);text-shadow:0 2px 14px #000000d1}.summary-token-row{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:5px;display:flex}.summary-token-row em{color:var(--soft);background:#ffffff0e;border:1px solid #ffffff1f;border-radius:999px;padding:5px 8px;font-size:.72rem;font-style:normal;font-weight:760;line-height:1}.summary-token-row em[data-species]{color:color-mix(in srgb, var(--class-a) 72%, #fff4da);border-color:color-mix(in srgb, var(--class-a) 34%, transparent);background:color-mix(in srgb, var(--class-a) 13%, transparent)}.preview-stat-strip{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground-2);z-index:2;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;display:grid;position:relative;overflow:hidden}.preview-stat-strip span,.attribute-card{border:0;border-right:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);min-height:78px;color:var(--parchment-2);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;gap:4px;padding:10px;display:grid}.preview-stat-strip span{background:linear-gradient(145deg, #050607b8, #0506076b), color-mix(in srgb, var(--class-a,var(--gold)) 10%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:#ffffff29;box-shadow:0 12px 32px #00000047}.preview-stat-strip strong,.attribute-card strong{color:var(--text-primary,#fff4da);font-size:1.55rem;font-family:var(--font-display);font-variation-settings:"opsz" 144;font-weight:600}.creator-controls{background:#ffffff0b;border-radius:24px;align-content:start;gap:14px;padding:18px;display:grid}.form-grid,.setup-grid,.choice-grid{gap:12px;display:grid}.setup-grid{align-content:start}.name-step,.setup-combo{align-content:start;gap:14px;display:grid}.name-step{max-width:620px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide{grid-column:1/-1}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.origin-panel{gap:14px;display:grid}.compact-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.background-choice{min-height:118px}.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.notes-grid .wide{grid-column:1/-1}.narrative-field{min-width:0}.source-picker{gap:10px;display:grid}.source-picker>span{color:var(--soft);font-size:.84rem;font-weight:700}.source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.source-card{min-height:132px;color:var(--ivory);text-align:left;background:#00000038;border:1px solid #ffffff1f;border-radius:18px;align-content:start;gap:8px;padding:14px;display:grid}.source-card.active{border-color:var(--rule);background:0 0}.source-card strong{color:var(--text-primary,#fff4da)}.source-card small{color:var(--soft);line-height:1.4}.settings-panel{gap:14px;display:grid}.settings-section{border:1px solid var(--border-subtle,#ffffff1a);background:var(--surface-panel-recessed,#0000002e);border-radius:20px;gap:12px;padding:16px;display:grid}.settings-heading{gap:7px;display:grid}.settings-heading h3{color:var(--text-primary,#fff4da);font-size:1.15rem}.settings-heading p,.control-field small{color:var(--soft);line-height:1.5}.settings-list{gap:10px;display:grid}.settings-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-row{border:1px solid var(--border-subtle,#ffffff1c);background:var(--surface-panel-raised,#ffffff0a);border-radius:16px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;min-height:58px;padding:12px;display:grid}.checkbox-row.source-row{min-height:112px}.checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold);margin-top:2px}.checkbox-row strong{color:var(--text-primary,#fff4da);display:block}.checkbox-row small{color:var(--soft);margin-top:5px;line-height:1.45;display:block}.select-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.choice-tile{min-height:148px;color:var(--ivory);text-align:left;contain:layout paint;background:#00000038;border:1px solid #ffffff1f;border-radius:20px;align-content:start;gap:8px;padding:16px;display:grid}.choice-tile.class-choice,.choice-tile.species-choice{grid-template-columns:58px minmax(0,1fr) auto;align-items:center;min-height:104px}.choice-tile.class-choice{gap:6px 12px;position:relative}.choice-tile.species-choice{content-visibility:auto;contain-intrinsic-size:132px;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:6px 12px;min-height:132px}.choice-tile.class-choice strong,.choice-tile.class-choice small,.choice-tile.species-choice strong,.choice-tile.species-choice small{grid-column:2;min-width:0}.class-card-select{z-index:1;border-radius:inherit;background:0 0;border:0;position:absolute;inset:0}.choice-tile.class-choice .choice-avatar,.choice-tile.class-choice strong,.choice-tile.class-choice small{z-index:2;pointer-events:none;position:relative}.class-card-select:hover~strong,.class-card-select:focus-visible~strong{color:color-mix(in srgb, var(--class-a) 84%, #fff4da)}.class-card-select:focus-visible,.class-preview-button:focus-visible{outline:2px solid color-mix(in srgb, var(--class-a) 72%, var(--gold));outline-offset:4px}.class-preview-button,.choice-tile.species-choice em{color:color-mix(in srgb, var(--class-a) 78%, #fff4da);text-align:right;white-space:nowrap;background:0 0;border:0;grid-area:1/3/span 2;align-self:center;font-size:.78rem;font-style:normal;font-weight:760}.class-preview-button{z-index:3;justify-self:end;position:relative}.class-preview-button:not(:disabled){color:var(--teal);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--teal) 58%, transparent);text-decoration-color:color-mix(in srgb, var(--teal) 58%, transparent);text-underline-offset:3px}.class-preview-button:not(:disabled):hover{color:color-mix(in srgb, var(--class-a) 78%, #fff4da)}.class-preview-button:disabled{color:color-mix(in srgb, var(--muted) 72%, var(--ivory));opacity:.78;pointer-events:none}.choice-tile.species-choice em{text-align:left;grid-area:3/2;place-self:start;margin-top:4px}.species-grid{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:680px;padding-right:4px;overflow:auto}.choice-avatar{border:1px solid color-mix(in srgb, var(--class-a) 48%, transparent);width:50px;height:50px;color:var(--class-a);background:radial-gradient(circle at 35% 18%, color-mix(in srgb, var(--class-a) 28%, transparent), transparent 44%), linear-gradient(145deg, color-mix(in srgb, var(--class-a) 16%, transparent), color-mix(in srgb, var(--class-b) 10%, transparent)), #00000038;border-radius:16px;grid-column:1;place-items:center;display:grid}.choice-tile.class-choice .choice-avatar{grid-row:1/span 2}.choice-tile.species-choice .choice-avatar{grid-row:1/span 3}.choice-tile.active{border-color:var(--line-strong);background:0 0}.choice-tile strong{color:var(--text-primary,#fff4da);font-size:1.05rem}.choice-tile span{color:#ddceb3;line-height:1.45}.choice-tile small{color:var(--teal);overflow-wrap:anywhere;line-height:1.25}@media (hover:hover) and (pointer:fine){.gold-button:hover,.glass-button:hover,.danger-button:hover,.glass-icon:hover,.dice-buttons button:hover,.choice-tile:hover,.action-row:hover{transform:translateY(-1px)}.build-mode-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.gold-button:hover,.glass-button:hover,.danger-button:hover,.glass-icon:hover,.dice-buttons button:hover,.choice-tile:hover,.action-row:hover,.build-mode-card:hover{transform:none}}.modal-scrim{z-index:50;-webkit-backdrop-filter:none;backdrop-filter:none;background:#030405ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.class-modal{--class-a:var(--gold);--class-b:var(--teal);border:1px solid color-mix(in srgb, var(--class-a) 34%, #ffffff24);background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--class-a) 18%, transparent), transparent 42%), radial-gradient(circle at 92% 22%, color-mix(in srgb, var(--class-b) 14%, transparent), transparent 38%), linear-gradient(145deg, #ffffff1c, #ffffff09), #07080af0;border-radius:26px;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;width:min(920px,100%);max-height:min(860px,100dvh - 40px);padding:22px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 76px #00000094}.modal-close{z-index:1;position:absolute;top:18px;right:18px}.class-modal-hero{grid-template-columns:128px minmax(0,1fr);align-items:center;gap:18px;padding-right:54px;display:grid}.class-modal-hero h3{color:var(--text-primary,#fff4da);margin-top:5px;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.94}.class-modal-hero p{max-width:680px;color:var(--soft);margin-top:10px;line-height:1.65}.class-detail-stack{overscroll-behavior:contain;scrollbar-gutter:stable;gap:12px;min-height:0;padding-right:4px;display:grid;overflow:auto}.class-detail-card{background:#0003;border:1px solid #ffffff1f;border-radius:18px}.class-detail-card summary{min-height:58px;color:var(--text-primary,#fff4da);cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:0 16px;font-weight:820;list-style:none;display:flex}.feedback-scrim{z-index:210}.feedback-modal{--skin-bg-pattern:var(--grain);--skin-bg-size:140px 140px;--skin-bg-opacity:.08;isolation:isolate;border:1px solid color-mix(in srgb, var(--doc-accent) 38%, var(--doc-rule));background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--doc-accent) 16%, transparent), transparent 40%), radial-gradient(circle at 86% 18%, color-mix(in srgb, var(--ink) 8%, transparent), transparent 36%), var(--paper);width:min(1040px,100%);max-height:min(860px,100dvh - 40px);color:var(--ink);font-family:var(--font-body);border-radius:24px;grid-template-rows:auto minmax(0,1fr);gap:18px;padding:22px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 76px #00000094}.feedback-modal:before{z-index:0;content:"";pointer-events:none;background-image:var(--skin-bg-pattern);background-size:var(--skin-bg-size);opacity:var(--skin-bg-opacity);position:absolute;inset:0}.feedback-modal>*{z-index:1;position:relative}.feedback-modal[data-bg=parchment],.campaign-panel[data-bg=parchment]{--skin-bg-pattern:var(--grain);--skin-bg-size:140px 140px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .18)}.feedback-modal[data-bg=plain],.campaign-panel[data-bg=plain]{--skin-bg-pattern:none;--skin-bg-opacity:0}.feedback-modal[data-bg=linen],.campaign-panel[data-bg=linen]{--skin-bg-pattern:linear-gradient(90deg, color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1px), linear-gradient(0deg, color-mix(in srgb, var(--ink) 10%, transparent) 1px, transparent 1px);--skin-bg-size:9px 9px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .65)}.feedback-modal[data-bg=stars],.campaign-panel[data-bg=stars]{--skin-bg-pattern:radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--doc-accent) 62%, transparent) 0 1.5px, transparent 2.5px), radial-gradient(circle at 35% 44%, color-mix(in srgb, var(--ink) 34%, transparent) 0 1px, transparent 2px), radial-gradient(circle at 62% 24%, color-mix(in srgb, var(--doc-accent) 54%, transparent) 0 1.25px, transparent 2.25px), radial-gradient(circle at 84% 68%, color-mix(in srgb, var(--ink) 30%, transparent) 0 1px, transparent 2px);--skin-bg-size:112px 88px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .9)}.feedback-modal[data-bg=sparkle],.campaign-panel[data-bg=sparkle]{--skin-bg-pattern:radial-gradient(circle at 22% 30%, color-mix(in srgb, var(--doc-accent) 68%, transparent) 0 1.5px, transparent 2.5px), radial-gradient(circle at 70% 24%, color-mix(in srgb, var(--doc-accent) 30%, transparent) 0 1px, transparent 7px), radial-gradient(circle at 48% 76%, color-mix(in srgb, var(--ink) 18%, transparent) 0 1px, transparent 8px), linear-gradient(135deg, transparent 0 46%, color-mix(in srgb, var(--doc-accent) 22%, transparent) 47% 49%, transparent 50% 100%);--skin-bg-size:86px 86px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .95)}.feedback-modal[data-bg=forest],.campaign-panel[data-bg=forest]{--skin-bg-pattern:radial-gradient(ellipse at 32% 28%, color-mix(in srgb, var(--doc-accent) 32%, transparent) 0 7px, transparent 8px), radial-gradient(ellipse at 70% 74%, color-mix(in srgb, var(--ink) 20%, transparent) 0 9px, transparent 10px), repeating-linear-gradient(112deg, transparent 0 13px, color-mix(in srgb, var(--doc-accent) 18%, transparent) 14px 16px, transparent 17px 34px);--skin-bg-size:96px 112px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .8)}.feedback-modal[data-bg=dungeon],.campaign-panel[data-bg=dungeon]{--skin-bg-pattern:linear-gradient(color-mix(in srgb, var(--ink) 22%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink) 22%, transparent) 1px, transparent 1px), linear-gradient(135deg, transparent 0 47%, color-mix(in srgb, var(--ink) 12%, transparent) 48% 50%, transparent 51% 100%);--skin-bg-size:34px 26px, 34px 26px, 68px 52px;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .85)}.feedback-modal[data-bg=custom],.campaign-panel[data-bg=custom]{--skin-bg-pattern:var(--skin-bg-image,none);--skin-bg-size:cover;--skin-bg-opacity:calc(var(--bg-opacity,.5) * .35)}.feedback-modal-hero{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding-right:54px;display:grid}.feedback-icon{border:1px solid color-mix(in srgb, var(--doc-accent) 46%, var(--doc-rule));width:56px;height:56px;color:var(--paper);background:linear-gradient(145deg, var(--doc-accent), var(--doc-accent-deep));border-radius:16px;place-items:center;display:grid}.feedback-eyebrow{color:var(--doc-accent-deep);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:760}.feedback-modal-hero h2{color:var(--ink);margin-top:4px;font-size:clamp(2rem,4vw,3.5rem);line-height:.98}.feedback-modal-hero p{max-width:720px;color:var(--ink-2);margin-top:8px;line-height:1.55}.feedback-modal-body{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:14px;min-height:0;display:grid}.feedback-form,.feedback-inbox{border:1px solid var(--doc-rule);background:color-mix(in srgb, var(--paper-raised) 92%, var(--paper));border-radius:16px;min-height:0}.feedback-form{align-content:start;gap:12px;padding:14px;display:grid}.feedback-two-up{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.feedback-form .control-field textarea{resize:vertical;min-height:136px}.feedback-modal .control-field span{color:var(--ink-2)}.feedback-modal .control-field input,.feedback-modal .control-field textarea,.feedback-modal .control-field select{border-color:var(--doc-rule);background:var(--paper);color:var(--ink);font-family:var(--font-body)}.feedback-modal .control-field input::placeholder,.feedback-modal .control-field textarea::placeholder{color:var(--ink-3)}.feedback-modal .glass-icon{border-color:var(--doc-rule);background:color-mix(in srgb, var(--paper-raised) 82%, var(--paper));color:var(--ink)}.feedback-modal .glass-button{border-color:var(--doc-rule);color:var(--ink);background:color-mix(in srgb, var(--paper-raised) 88%, transparent)}.feedback-modal .gold-button{border-color:var(--doc-accent-deep);background:var(--doc-accent);color:var(--paper)}.feedback-context{flex-wrap:wrap;gap:8px;display:flex}.feedback-context span{border:1px solid var(--doc-rule-soft);color:var(--ink-2);background:color-mix(in srgb, var(--doc-accent) 7%, var(--paper));border-radius:999px;padding:5px 9px;font-size:.78rem}.feedback-status{min-height:20px;color:var(--doc-accent-deep);font-size:.9rem}.feedback-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.feedback-inbox{align-content:start;gap:10px;padding:14px;display:grid;overflow:auto}.feedback-empty{color:var(--ink-2);line-height:1.5}.feedback-list{gap:10px;display:grid}.feedback-item{border:1px solid var(--doc-rule-soft);background:color-mix(in srgb, var(--paper) 88%, var(--doc-accent) 12%);border-radius:12px;gap:7px;padding:11px;display:grid}.feedback-item-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.feedback-item strong{color:var(--ink);line-height:1.25}.feedback-item-head span{border:1px solid color-mix(in srgb, var(--doc-accent) 52%, var(--doc-rule));color:var(--doc-accent-deep);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:3px 7px;font-size:.68rem;font-weight:800}.feedback-item p{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.45;display:-webkit-box;overflow:hidden}.feedback-item small{color:var(--ink-3);font-size:.76rem}@media (max-width:820px){.feedback-modal{padding:16px}.feedback-modal-hero{grid-template-columns:1fr;padding-right:48px}.feedback-modal-body,.feedback-two-up{grid-template-columns:1fr}.feedback-modal-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-y:auto}.feedback-form,.feedback-inbox{min-height:auto}.feedback-inbox{overflow:visible}}.class-detail-card summary::-webkit-details-marker{display:none}.class-detail-card summary svg{color:var(--class-a);transition:transform .16s}.class-detail-card[open] summary svg{transform:rotate(90deg)}.trait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 16px 16px;display:grid}.trait-grid span,.level-row{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:14px}.trait-grid span{min-height:56px;color:var(--soft);padding:12px;line-height:1.35}.level-list{overscroll-behavior:contain;scrollbar-gutter:stable;grid-template-columns:1fr;gap:10px;max-height:min(52dvh,520px);padding:0 16px 16px;display:grid;overflow:auto}.level-row{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:12px;min-height:74px;padding:10px 12px;display:grid}.level-row strong{color:color-mix(in srgb, var(--class-a) 80%, #fff4da);padding-top:4px;font-size:.86rem;line-height:1.35}.feature-stack{gap:8px;min-width:0;display:grid}.feature-unlock{gap:4px;min-width:0;display:grid}.feature-unlock b{color:var(--text-primary,#fff4da);font-size:.96rem}.feature-unlock small{color:var(--soft);font-size:.88rem;line-height:1.45}.class-modal-actions{justify-content:space-between;gap:12px;padding-top:4px;display:flex}.forge-error{text-align:center;color:var(--accent);font-size:.82rem;font-family:var(--font-label);margin-top:6px;padding:4px 0}.forge-missing{border:1px solid color-mix(in srgb, var(--accent,#9a3f35) 45%, transparent);border-radius:var(--r-sm,6px);background:color-mix(in srgb, var(--accent,#9a3f35) 8%, transparent);width:100%;margin-top:8px;padding:10px 12px}.forge-missing .forge-error{text-align:left;margin:0 0 6px}.forge-missing-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.forge-missing-jump{text-align:left;border-radius:var(--r-sm,6px);width:100%;color:var(--ink,inherit);font-family:var(--font-body);cursor:pointer;background:0 0;border:1px solid #0000;padding:5px 8px;font-size:.82rem}.forge-missing-jump:hover{border-color:color-mix(in srgb, var(--accent,#9a3f35) 45%, transparent);background:color-mix(in srgb, var(--accent,#9a3f35) 12%, transparent);color:var(--accent,#9a3f35)}.species-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.species-facts span{min-height:78px;color:var(--soft);background:#ffffff0b;border:1px solid #ffffff1a;border-radius:14px;gap:7px;padding:12px;display:grid}.species-facts strong{color:var(--text-primary,#fff4da);font-size:1rem}.species-trait-list{max-height:min(44dvh,420px)}.species-trait-row{grid-template-columns:150px minmax(0,1fr)}.attribute-builder{gap:14px;display:grid}.method-row{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px;display:grid}.method-row button{background:#00000038;border:1px solid #ffffff1f}.points-pill{border:1px solid var(--rule);min-width:76px;min-height:42px;color:var(--teal);background:var(--ground-2);border-radius:14px;place-items:center;font-weight:800;display:grid}.attribute-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.attribute-card{min-height:168px}.attribute-card span{color:var(--muted);font-size:.82rem;font-weight:760}.attribute-card small{color:var(--teal)}.mini-stepper{grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;display:grid}.mini-stepper button,.hp-controls button{width:38px;height:38px;color:var(--ivory);background:#ffffff13;border:1px solid #ffffff24;border-radius:13px;place-items:center;display:grid}.mini-stepper b{min-height:38px;color:var(--text-primary,#fff4da);border:1px solid #ffffff1f;border-radius:13px;place-items:center;display:grid}.small{width:fit-content}.finalize-panel{text-align:center;place-items:center;gap:12px;min-height:420px;display:grid}.finalize-panel svg{color:var(--gold)}.finalize-panel h3{color:var(--text-primary,#fff4da);font-size:2.4rem}.finalize-panel p{color:var(--soft)}.final-loadout{flex-wrap:wrap;justify-content:center;gap:8px;max-width:520px;display:flex}.final-loadout span{border:1px solid var(--line);color:var(--soft);background:#ffffff0f;border-radius:999px;padding:8px 12px}.creator-footer{justify-content:space-between;gap:12px;display:flex}.sheet-panel{gap:16px}.sheet-hero{grid-template-columns:124px minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.sheet-hero p{color:var(--soft);margin-top:8px}.sheet-layout{grid-template-columns:220px minmax(0,1fr) 280px;gap:16px;display:grid}.sheet-left,.sheet-center,.sheet-right{align-content:start;gap:14px;display:grid}.vital-block{background:#00000038;border:1px solid #ffffff1a;border-radius:20px;gap:10px;padding:16px;display:grid}.vital-stat{gap:4px;display:grid}.vital-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:.72rem;display:flex}.vital-label svg{color:var(--gold)}.vital-stat strong{color:var(--text-primary,#fff4da);font-size:1.6rem;font-weight:840}.vital-stat strong small{color:var(--muted);font-size:.85rem;font-weight:600}.ac-stat strong{font-size:2.4rem;line-height:1}.hp-display{align-items:baseline;gap:6px;display:flex}.hp-display strong{color:var(--green)}.hp-display span{color:var(--muted);font-size:.92rem}.hp-module.compact{grid-template-columns:1fr auto;gap:8px}.hp-module{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.hp-track{background:#0000004d;border:1px solid #9ce2a433;border-radius:999px;height:14px;overflow:hidden}.hp-track span{border-radius:inherit;background:linear-gradient(90deg, var(--ember), var(--green));height:100%;display:block}.hp-controls{grid-template-columns:30px 30px;gap:4px;display:grid}.hp-controls button{min-height:32px;color:var(--soft);background:#0000004d;border:1px solid #ffffff26;border-radius:10px}.hp-controls strong{color:var(--text-primary,#fff4da);text-align:center;grid-column:1/-1;font-size:1.35rem}.temp-hp-row{color:var(--muted);border:1px solid #9ce2a42e;border-radius:10px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.78rem;display:flex}.temp-hp-row strong{color:var(--green);font-size:1rem}.abilities-block{gap:8px;display:grid}.ability-row{background:#00000038;border:1px solid #ffffff1a;border-radius:18px;display:grid;overflow:hidden}.ability-main{border-bottom:1px solid #ffffff0f}.ability-save{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:48px 36px 1fr;align-items:center;gap:8px;padding:12px 16px;display:grid}.ability-save:hover{background:#ffffff08}.ability-save.proficient{background:var(--ground-2)}.ability-label{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:700}.ability-score{color:var(--text-primary,#fff4da);font-size:1.6rem;font-weight:840}.ability-mod{color:var(--gold);font-size:1.1rem;font-weight:700}.ability-skills{gap:1px;padding:4px 0;display:grid}.skill-row{grid-template-columns:1fr auto;align-items:center;gap:8px;padding:0 14px;display:grid}.skill-roll{color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:6px;padding:6px 0;font-size:.82rem;display:flex}.skill-roll:hover{color:var(--ivory)}.skill-roll.proficient .skill-name{color:var(--gold)}.skill-name{color:var(--soft)}.skill-mod{color:var(--muted);font-size:.78rem;font-weight:600}.skill-roll.proficient .skill-mod{color:var(--gold)}.skill-proficiency-circle{cursor:pointer;background:0 0;border:1.5px solid #ffffff2e;border-radius:50%;flex-shrink:0;width:12px;height:12px;transition:background .15s,border-color .15s}.skill-proficiency-circle.filled{background:var(--gold);border-color:var(--gold)}.passive-block{background:#00000038;border:1px solid #ffffff1a;border-radius:16px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.passive-label{color:var(--muted);font-size:.78rem}.passive-value{color:var(--text-primary,#fff4da);font-size:1.15rem;font-weight:840}.proficiencies-block{background:#00000038;border:1px solid #ffffff1a;border-radius:16px;padding:14px}.proficiencies-block h4{color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:.78rem}.prof-tags{flex-wrap:wrap;gap:5px;display:flex}.prof-tag{color:var(--soft);border:1px solid #ffffff1f;border-radius:999px;padding:3px 9px;font-size:.72rem}.sheet-right .loadout-block{min-height:unset}.action-row.proficient{border-color:var(--gold);background:var(--ground-2)}.action-row.proficient small{color:var(--gold)}.death-saves-module{gap:10px;display:grid}.death-save-row{grid-template-columns:80px 1fr;align-items:center;gap:10px;display:grid}.death-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem}.death-pips{gap:6px;display:flex}.death-pip{cursor:pointer;background:0 0;border:1.5px solid #ffffff2e;border-radius:50%;width:20px;height:20px;transition:background .15s,border-color .15s}.death-pip.filled.success{background:var(--gold);border-color:var(--gold)}.death-pip.filled.fail{background:#e05555;border-color:#e05555}.glass-button.small{min-height:unset;padding:6px 12px;font-size:.78rem}.play-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.loadout-block{background:#ffffff0b;border-radius:20px;align-content:start;gap:8px;min-height:190px;padding:14px;display:grid}.loadout-block h3{color:var(--text-primary,#fff4da);gap:8px;font-size:1rem}.loadout-block h3 svg{color:var(--gold)}.action-row,.item-row{color:var(--ivory);text-align:left;background:#0003;border:1px solid #ffffff1a;border-radius:14px;gap:3px;padding:10px;display:grid}.action-row small,.item-row small,.muted-line{color:var(--muted)}.console-strip{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-top:4px;display:grid}.console-output{flex-wrap:wrap;grid-column:1/-1;gap:8px;min-height:42px;display:flex}.console-output span{border:1px solid var(--rule);color:#c5f3ef;background:var(--ground-2);font-family:var(--font-mono);border-radius:999px;padding:7px 10px;font-size:.76rem}.dice-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dice-buttons button{min-height:58px;color:var(--text-primary,#fff4da);background:0 0;border:1px solid #ffffff1f;border-radius:18px;font-weight:840}.roll-list{overscroll-behavior:contain;scrollbar-gutter:stable;gap:8px;max-height:560px;display:grid;overflow:auto}.roll-card{background:#00000038;border:1px solid #ffffff1a;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;min-height:72px;padding:12px;display:grid}.roll-card span{color:var(--soft);overflow-wrap:anywhere}.roll-card strong{color:var(--gold);font-size:1.8rem}.roll-card small{color:var(--muted);font-family:var(--font-mono);grid-column:1/-1}@media (max-width:1220px){.builder-layout{grid-template-columns:220px 1fr}.creator-stage{grid-template-columns:1fr}.creator-controls{order:1}.hero-preview{order:2;height:clamp(440px,58vh,560px)}}@media (max-width:900px){:root{--world-backdrop-position:42% center}.entry-screen{grid-template-columns:1fr;align-content:start;gap:18px}.login-card{order:1}.entry-copy{order:2;gap:14px}.entry-copy h1{max-width:620px;font-size:clamp(2.4rem,10vw,4.6rem)}.entry-copy p{max-width:560px;font-size:.98rem}.entry-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.entry-metrics span{min-height:70px}.build-mode-grid{grid-template-columns:1fr}.builder-topbar{display:grid}.builder-actions{justify-content:start}.builder-layout{grid-template-columns:1fr}.vault-rail{position:static}.vault-list{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-header,.form-grid,.choice-grid,.notes-grid,.sheet-hero,.play-columns,.console-strip,.sheet-layout{grid-template-columns:1fr}.sheet-left,.sheet-center,.sheet-right{gap:10px}.step-tabs{grid-template-columns:repeat(6,minmax(76px,1fr));padding-bottom:2px;overflow-x:auto}.settings-list.compact,.select-grid,.trait-grid,.species-facts,.level-list{grid-template-columns:1fr}.class-modal-hero{grid-template-columns:96px minmax(0,1fr)}.attribute-grid,.preview-stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.danger-button{width:fit-content}}@media (max-width:620px){.entry-screen,.builder-shell,.login-card,.creator-panel,.sheet-panel{padding:14px}.entry-metrics,.build-mode-grid,.source-grid,.mode-switch,.method-row,.attribute-grid,.preview-stat-strip,.dice-buttons,.roll-list,.vault-list{grid-template-columns:1fr}.creator-footer,.start-actions,.builder-actions{display:grid}.gold-button,.glass-button,.danger-button,.account-chip,.system-status{width:100%}.creator-header h2,.sheet-hero h2{font-size:2rem}.choice-tile.class-choice,.choice-tile.species-choice{grid-template-columns:58px minmax(0,1fr)}.class-preview-button,.choice-tile.class-choice em,.choice-tile.species-choice em{text-align:left;grid-area:auto/2;justify-self:start}.modal-scrim{align-items:end;padding:10px}.class-modal{border-radius:22px;max-height:calc(100dvh - 20px);padding:16px}.class-modal-hero{grid-template-columns:1fr;padding-right:46px}.class-modal-hero .class-icon-stage{justify-self:start}.level-row,.species-trait-row{grid-template-columns:1fr}.class-modal-actions{display:grid}.hero-preview{height:340px}.preview-identity-row{display:grid}}.entry-copy h1,.splash-copy h1,.start-copy h2,.creator-header h2,.sheet-hero h2,.login-heading h2,.class-modal-hero h3,.finalize-panel h3,.hero-summary strong,.preview-stat-strip strong,.sheet-metrics strong,.sheet-stat strong,.attribute-card strong,.class-orbit span{font-family:var(--font-display);font-variation-settings:"opsz" 144, "SOFT" 30, "WONK" 1}.splash-copy span,.creator-header span,.builder-brand span,.login-heading span,.dice-heading span,.rail-heading span,.sheet-hero span,.start-copy span,.control-field span,.step-tabs button span,.attribute-card span,.sheet-stat span{font-family:var(--font-label)}.splash-copy span,.creator-header span,.sheet-hero span,.start-copy span{color:var(--accent)}.cs-sheet{--ground:var(--paper);--ground-2:var(--paper);--ground-3:var(--paper-raised);--parchment:var(--ink);--parchment-2:var(--ink-2);--ink-faint:var(--ink-3);--rule:var(--doc-rule);--rule-soft:var(--doc-rule-soft);--accent:var(--doc-accent);--accent-deep:var(--doc-accent-deep);--select:var(--doc-select);--sheet-font:var(--font-body);--skin-bg-pattern:var(--grain);--skin-bg-size:140px 140px;--skin-bg-opacity:.08;box-shadow:var(--sheet-shadow);isolation:isolate;color:var(--ink);font-size:clamp(16px,.45vw + 12px,20px);font-family:var(--font-body);overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;background:var(--rule);border:1px solid var(--rule);border-radius:var(--r-sm);flex-direction:column;gap:1px;display:flex;position:relative}.cs-sheet-columns{background:var(--rule);flex:1;gap:1px;display:flex}.cs-sheet-col{flex-direction:column;gap:1px;min-width:0;min-height:40px;display:flex}.cs-sheet-col:empty:after{content:none}.cs-editing .cs-sheet-col:empty:after{content:"Drop here";border:1px dashed var(--rule-soft);border-radius:var(--r-sm);color:var(--ink-faint);font-family:var(--font-label);text-transform:uppercase;justify-content:center;align-items:center;padding:20px;font-size:.65em;display:flex}.cs-sheet-col .cs-section{flex-shrink:0}.cs-sheet-col:first-child{flex:0 0 12em}.cs-sheet-col:nth-child(2){flex:1 1 0;min-width:10.5em;max-width:24em}.cs-sheet-col:nth-child(3){flex:2 1 0;min-width:0}.cs-sheet-top,.cs-sheet-bottom{background:var(--rule);gap:1px;display:flex}.cs-sheet-top{z-index:10;position:relative}.cs-sheet-bottom{border-radius:0 0 var(--r-sm) var(--r-sm);overflow:hidden}.cs-sheet-top>.cs-section{flex:1 1 0;min-width:0}.cs-sheet-bottom>.cs-section{flex:1;min-width:0}.cs-section.cs-pinned{padding:.8em 1em;overflow:visible}.cs-sheet-tools{z-index:3;background:var(--ground);border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-height:42px;padding:7px 10px;display:flex;position:relative}.cs-sheet[data-bg] .cs-sheet-tools:before{z-index:0;content:"";pointer-events:none;background-image:var(--skin-bg-pattern);background-size:var(--skin-bg-size);opacity:calc(var(--skin-bg-opacity) * .75);position:absolute;inset:0}.cs-sheet-tools>*{z-index:1;position:relative}.cs-layout-drag-hint{color:var(--ink-faint);margin-right:auto;font-size:12px}.cs-layout-menu{z-index:4;border:1px solid var(--rule);border-top:3px solid var(--select);border-radius:var(--r-sm);background:var(--ground-2);width:min(620px,100% - 20px);margin:8px 10px 12px auto;padding:12px;position:relative;box-shadow:0 4px 14px #18110a1a}.cs-layout-menu-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.cs-layout-menu-head strong{color:var(--select);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.cs-layout-menu-head span{color:var(--ink-faint);font-size:12px}.cs-layout-visibility-list{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:6px 12px;display:grid}.cs-layout-visibility-list label{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground);cursor:pointer;align-items:center;gap:7px;padding:5px 7px;font-size:12px;display:flex}.cs-layout-visibility-list input{accent-color:var(--select)}.cs-layout-menu-actions{justify-content:flex-end;gap:7px;margin-top:10px;display:flex}.cs-layout-menu-actions .cs-glass-btn{color:var(--select);border-color:color-mix(in srgb, var(--select) 55%, var(--rule))}.cs-equipment-list{gap:6px;margin-bottom:10px;display:grid}.cs-equipment-option{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-2);cursor:pointer;align-items:center;gap:9px;padding:8px 9px;display:flex}.cs-equipment-option:has(input:disabled){cursor:default;opacity:.7}.cs-equipment-option.is-equipped{border-color:color-mix(in srgb, var(--accent) 55%, var(--rule));background:color-mix(in srgb, var(--accent) 7%, var(--ground-2))}.cs-equipment-option.has-warning{border-color:var(--danger,#9a3f35)}.cs-equipment-option input{accent-color:var(--accent)}.cs-equipment-option span{min-width:0;display:grid}.cs-equipment-option strong{color:var(--ink)}.cs-equipment-option small{color:var(--ink-faint)}.cs-equipment-catalog{margin-top:9px}.cs-inv-equipped-badge{border:1px solid var(--accent);width:fit-content;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;margin-top:5px;padding:2px 6px;font-size:11px;display:inline-flex}.cs-section{background:var(--ground);position:relative;overflow:hidden}.cs-sheet[data-bg] .cs-section:before{z-index:0;content:"";pointer-events:none;background-image:var(--skin-bg-pattern);background-size:var(--skin-bg-size);opacity:var(--skin-bg-opacity);position:absolute;inset:0}.cs-sheet[data-bg] .cs-section>*{z-index:1;position:relative}.cs-section-header{background:color-mix(in srgb, var(--accent) 5%, transparent);width:100%;color:var(--parchment);cursor:pointer;border:0;border-bottom:1px solid var(--rule-soft);align-items:center;gap:6px;padding:8px 10px;display:flex}.cs-section-header:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.cs-section-header.cs-section-header-edit{width:auto;padding-right:3px}.cs-section-chevron{color:var(--ink-faint);align-items:center;transition:transform .18s;display:flex}.cs-section-chevron.cs-collapsed{transform:rotate(-90deg)}.cs-section-title{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.cs-section-body{padding:.6em .75em;position:relative}.cs-sheet-col>.cs-section{border:1px solid color-mix(in srgb, var(--rule) 82%, var(--accent));border-top:3px solid var(--accent);border-radius:var(--r-sm);box-shadow:0 3px 10px #18110a17,inset 0 1px #ffffff3d}.cs-sheet-col>.cs-section+.cs-section{margin-top:12px}.cs-section-body.cs-collapsed{display:none}.cs-section-body.cs-merge-target{outline:2px solid var(--select);outline-offset:-3px;background:color-mix(in srgb, var(--select) 9%, transparent)}.cs-section-body.cs-merge-target:after{z-index:10;content:"Drop to add as a tab";border:1px dashed var(--select);border-radius:var(--r-sm);background:color-mix(in srgb, var(--ground) 90%, transparent);color:var(--select);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;pointer-events:none;place-items:center;font-size:12px;display:grid;position:absolute;inset:8px}.cs-module-tabs .cs-reftab{touch-action:none}.cs-editing .cs-module-tabs .cs-reftab{cursor:grab}.cs-editing .cs-module-tabs .cs-reftab:active{cursor:grabbing}.cs-tab-dragging{opacity:.35}.cs-tab-drop-target{box-shadow:inset 0 -2px 0 var(--select)}.cs-column-drop-target{outline:1px dashed color-mix(in srgb, var(--select) 65%, transparent);outline-offset:-4px}.cs-tab-extract-zone{border:1px dashed color-mix(in srgb, var(--select) 62%, var(--rule));border-radius:var(--r-sm);background:color-mix(in srgb, var(--select) 5%, transparent);min-height:48px;color:var(--ink-faint);font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;place-items:center;font-size:12px;display:grid}.cs-tab-extract-zone.is-over{border-color:var(--select);background:color-mix(in srgb, var(--select) 12%, var(--ground-2));color:var(--select)}.cs-tab-extract-tray{z-index:1200;bottom:22px;right:24px;left:max(24px, var(--sidebar-w,0px));border:1px solid color-mix(in srgb, var(--select) 55%, var(--rule));border-radius:var(--r-md);background:color-mix(in srgb, var(--ground) 94%, transparent);gap:6px;max-width:760px;margin-inline:auto;padding:8px;display:grid;position:fixed;box-shadow:0 5px 16px #18110a29}.cs-tab-extract-tray>span{color:var(--select);font-family:var(--font-label);letter-spacing:.05em;text-align:center;text-transform:uppercase;font-size:11px}.cs-tab-extract-tray>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.cs-section-header-row{align-items:stretch;display:flex}.cs-drag-handle{border:0;border-bottom:1px solid var(--rule-soft);color:var(--ink-faint);cursor:grab;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:10px 6px;display:flex}.cs-drag-handle:active{cursor:grabbing}.cs-dragging{opacity:.4}.cs-drag-overlay-card{border:1px solid var(--select);border-radius:var(--r-sm);background:var(--ground-2);font-family:var(--font-label);color:var(--parchment);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;padding:10px 14px;font-size:11px;display:flex;box-shadow:0 4px 12px #18110a24}.cs-sheet-tools .cs-glass-btn.cs-edit-active{border-color:var(--select);color:var(--select)}.cs-sheet.cs-editing .cs-sheet-tools{background:color-mix(in srgb, var(--select) 8%, var(--ground));border-bottom-color:color-mix(in srgb, var(--select) 45%, var(--rule))}.cs-sheet.cs-editing .cs-sheet-col>.cs-section{outline:1px dashed color-mix(in srgb, var(--select) 42%, transparent);outline-offset:2px}.cs-sheet.cs-editing .cs-drag-handle{color:var(--select)}.cs-sheet.cs-editing .cs-section-title-input{color:var(--select);border-color:color-mix(in srgb, var(--select) 55%, var(--rule))}.cs-sheet[data-bg=parchment],.cs-bg-swatch[data-bg=parchment]{--skin-bg-pattern:var(--grain);--skin-bg-size:140px 140px}.cs-sheet[data-bg=plain],.cs-bg-swatch[data-bg=plain]{--skin-bg-pattern:none}.cs-sheet[data-bg=linen],.cs-bg-swatch[data-bg=linen]{--skin-bg-pattern:linear-gradient(90deg, color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1px), linear-gradient(0deg, color-mix(in srgb, var(--ink) 10%, transparent) 1px, transparent 1px);--skin-bg-size:9px 9px}.cs-sheet[data-bg=stars],.cs-bg-swatch[data-bg=stars]{--skin-bg-pattern:radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--accent) 62%, transparent) 0 1.5px, transparent 2.5px), radial-gradient(circle at 35% 44%, color-mix(in srgb, var(--ink) 34%, transparent) 0 1px, transparent 2px), radial-gradient(circle at 62% 24%, color-mix(in srgb, var(--accent) 54%, transparent) 0 1.25px, transparent 2.25px), radial-gradient(circle at 84% 68%, color-mix(in srgb, var(--ink) 30%, transparent) 0 1px, transparent 2px);--skin-bg-size:112px 88px}.cs-sheet[data-bg=sparkle],.cs-bg-swatch[data-bg=sparkle]{--skin-bg-pattern:radial-gradient(circle at 22% 30%, color-mix(in srgb, var(--accent) 68%, transparent) 0 1.5px, transparent 2.5px), radial-gradient(circle at 70% 24%, color-mix(in srgb, var(--accent) 30%, transparent) 0 1px, transparent 7px), radial-gradient(circle at 48% 76%, color-mix(in srgb, var(--ink) 18%, transparent) 0 1px, transparent 8px), linear-gradient(135deg, transparent 0 46%, color-mix(in srgb, var(--accent) 22%, transparent) 47% 49%, transparent 50% 100%);--skin-bg-size:86px 86px}.cs-sheet[data-bg=forest],.cs-bg-swatch[data-bg=forest]{--skin-bg-pattern:radial-gradient(ellipse at 32% 28%, #4f7d3347 0 7px, transparent 8px), radial-gradient(ellipse at 70% 74%, #2b5e363d 0 9px, transparent 10px), repeating-linear-gradient(112deg, transparent 0 13px, #2b5e3629 14px 16px, transparent 17px 34px);--skin-bg-size:96px 112px}.cs-sheet[data-bg=dungeon],.cs-bg-swatch[data-bg=dungeon]{--skin-bg-pattern:linear-gradient(color-mix(in srgb, var(--ink) 22%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink) 22%, transparent) 1px, transparent 1px), linear-gradient(135deg, transparent 0 47%, color-mix(in srgb, var(--ink) 12%, transparent) 48% 50%, transparent 51% 100%);--skin-bg-size:34px 26px, 34px 26px, 68px 52px}.cs-sheet[data-bg=plain]{--skin-bg-opacity:0}.cs-sheet[data-bg=parchment]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .18)}.cs-sheet[data-bg=linen]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .65)}.cs-sheet[data-bg=stars]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .9)}.cs-sheet[data-bg=sparkle]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .95)}.cs-sheet[data-bg=forest]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .8)}.cs-sheet[data-bg=dungeon]{--skin-bg-opacity:calc(var(--bg-opacity,.5) * .85)}.cs-skin-dropdown{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground);min-width:180px;box-shadow:var(--shadow-soft);z-index:10000;position:fixed;overflow:hidden auto}.cs-skin-option{border:0;border-bottom:1px solid var(--rule-soft);width:100%;color:var(--parchment);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;padding:7px 12px;font-size:.85em;display:block}.cs-skin-option:last-child{border-bottom:0}.cs-skin-option:hover{background:var(--ground-3);color:var(--select)}.cs-skin-dropdown-divider{background:var(--rule-soft);height:1px;margin:2px 0}.cs-skin-panel{z-index:200;background:var(--ground);align-content:start;gap:14px;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.cs-skin-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.cs-skin-head h3{font-family:var(--font-display);font-variation-settings:"opsz" 144;color:var(--parchment);font-size:1.6em}.cs-skin-section{gap:8px;display:grid}.cs-skin-label{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:.72em}.cs-preset-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.cs-dice-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(88px,1fr));display:grid}.cs-dice-swatch{justify-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-2) var(--sp-4);border-radius:var(--r-2);cursor:pointer;color:inherit;transition:background var(--motion-fast) var(--motion-ease);background:0 0;border:0;display:grid}.cs-dice-swatch:hover{background:color-mix(in srgb, var(--parchment) 10%, transparent)}.cs-dice-swatch.is-on{background:color-mix(in srgb, var(--parchment) 16%, transparent)}.cs-dice-swatch:focus-visible{outline:var(--rule-w) solid var(--accent);outline-offset:var(--sp-1)}.cs-dice-name{font-family:var(--font-label);font-size:var(--ts-2);font-weight:var(--fw-regular);line-height:var(--lh-ui);text-align:center;color:var(--parchment)}.cs-dice-swatch.is-on .cs-dice-name{font-weight:var(--fw-strong)}.cs-dice-sound{align-items:center;gap:var(--sp-3);font-family:var(--font-label);font-size:var(--ts-3);line-height:var(--lh-ui);color:var(--parchment);cursor:pointer;display:flex}.cs-dice-note{font-family:var(--font-label);font-size:var(--ts-2);line-height:var(--lh-ui);color:var(--muted);margin:0}.die-mesh{display:block}.flying-die .die-mesh{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cs-preset-swatch{border-radius:var(--r-sm);cursor:pointer;text-align:left;border:2px solid #0000;flex-direction:column;gap:4px;padding:0 12px 12px;font-size:.9em;font-weight:600;transition:border-color .12s;display:flex;position:relative;overflow:hidden}.cs-preset-accent-bar{border-radius:0;height:5px;margin:0 -12px 4px;display:block}.cs-preset-name{flex:1}.cs-preset-stat{font-family:var(--font-display);font-variation-settings:"opsz" 144;align-self:flex-end;font-size:1.3em}.cs-preset-del{color:#fff;cursor:pointer;z-index:1;background:#00000059;border:0;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.9em;line-height:1;display:grid;position:absolute;top:6px;right:6px}.cs-preset-del:hover{background:var(--accent)}.cs-preset-save-row{align-items:center;gap:8px;margin-top:4px;display:flex}.cs-preset-save-row .qb-name-input{max-width:200px}.cs-preset-swatch:hover{border-color:var(--select)}.cs-color-row{flex-wrap:wrap;gap:14px;display:flex}.cs-color-field{gap:4px;display:grid}.cs-color-field span{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;font-size:.65em}.cs-color-field input[type=color]{border:1px solid var(--rule);border-radius:var(--r-sm);cursor:pointer;background:0 0;width:60px;height:36px;padding:2px}.cs-hex-input{border:1px solid var(--rule-soft);background:var(--ground-3);width:68px;color:var(--parchment);font-family:var(--font-mono);text-align:center;border-radius:4px;padding:2px 4px;font-size:.72em}.cs-hex-input:focus{border-color:var(--select);outline:none;box-shadow:0 0 0 2px #ffffff40}.cs-skin-warn{font-family:var(--font-body);color:var(--doc-accent);font-size:.82em;font-style:italic}.cs-font-grid{gap:6px;display:grid}.cs-font-option{border:1px solid var(--rule-soft);border-radius:var(--r-sm);color:var(--parchment);cursor:pointer;text-align:left;background:0 0;padding:10px 14px;font-size:1.05em}.cs-font-option:hover{border-color:var(--rule)}.cs-font-option.active{border-color:var(--select);color:var(--select)}.cs-bg-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.cs-bg-swatch{isolation:isolate;--skin-bg-pattern:none;--skin-bg-size:80px 80px;--skin-bg-opacity:.78;border-radius:var(--r-sm);background:linear-gradient(145deg, color-mix(in srgb, var(--ground-3) 88%, var(--accent)), var(--ground-3));cursor:pointer;text-align:center;font-family:var(--font-label);color:var(--parchment-2);border:2px solid #0000;padding:10px;font-size:.72em;transition:border-color .12s;position:relative;overflow:hidden}.cs-bg-swatch:before{z-index:0;content:"";pointer-events:none;background-image:var(--skin-bg-pattern);background-size:var(--skin-bg-size);opacity:var(--skin-bg-opacity);position:absolute;inset:0}.cs-bg-swatch span{z-index:1;background:color-mix(in srgb, var(--ground-3) 72%, transparent);padding:2px 5px;position:relative}.cs-bg-swatch:hover{border-color:var(--rule)}.cs-bg-swatch.active{border-color:var(--select)}.cs-opacity-row{font-family:var(--font-label);color:var(--ink-faint);align-items:center;gap:8px;font-size:.72em;display:flex}.cs-opacity-row input[type=range]{flex:1}.cs-skin-reset{border:1px solid var(--accent-deep);border-radius:var(--r-sm);color:var(--accent);font-family:var(--font-label);text-transform:uppercase;cursor:pointer;background:0 0;margin-top:8px;padding:10px;font-size:.78em}.cs-skin-reset:hover{background:var(--accent);color:var(--ground)}.cs-levelup-overlay{z-index:300;background:#00000080;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.cs-levelup{background:var(--ground);border:1px solid var(--rule);border-radius:var(--r-sm);width:100%;max-width:560px;max-height:80vh;color:var(--parchment);font-family:var(--font-body);gap:16px;padding:24px;display:grid;overflow-y:auto}.cs-levelup-head{justify-content:space-between;align-items:center;display:flex}.cs-levelup-head h2{font-family:var(--font-display);font-size:1.4em}.cs-levelup-steps{gap:4px;display:flex}.cs-lvl-step{border:1px solid var(--rule-soft);border-radius:var(--r-sm);color:var(--ink-faint);font-family:var(--font-label);text-transform:uppercase;cursor:pointer;text-align:center;background:0 0;flex:1;padding:6px;font-size:.62em}.cs-levelup-body{gap:10px;display:grid}.cs-lvl-subclass-grid{gap:8px;display:grid}.cs-lvl-subcard{border:1px solid var(--rule-soft);border-radius:var(--r-sm);color:var(--parchment);text-align:left;cursor:pointer;background:0 0;padding:12px}.cs-lvl-subcard strong{font-size:.9em}.cs-lvl-subcard p{color:var(--parchment-2);margin-top:4px;font-size:.78em}.cs-asi-grid{gap:4px;display:grid}.cs-asi-row{align-items:center;gap:8px;font-size:.85em;display:flex}.cs-lvl-spell-grid{gap:4px;max-height:300px;display:grid;overflow-y:auto}.cs-lvl-spell-row{border:1px solid var(--rule-soft);border-radius:var(--r-sm);color:var(--parchment);text-align:left;cursor:pointer;background:0 0;flex-direction:column;padding:8px;display:flex}.cs-lvl-spell-row small{color:var(--ink-faint);font-size:.7em}.cs-lvl-summary{font-size:.85em}.cs-levelup-foot{justify-content:space-between;gap:10px;display:flex}.cs-lvl-stepper{color:var(--select);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 2px;display:inline-flex}.cs-spellcast-head{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;padding-bottom:8px;font-size:.72em;display:flex}.cs-slot-pips{gap:3px;margin-left:8px;display:inline-flex}.cs-slot-pip{background:var(--doc-accent,var(--select));cursor:pointer;border:0;border-radius:50%;width:10px;height:10px;padding:0}.cs-slot-pip.cs-slot-used{box-shadow:inset 0 0 0 1px var(--rule);background:0 0}.cs-slot-pip:focus-visible{outline:2px solid var(--select);outline-offset:2px}.cs-spell-detail-overlay{z-index:200;background:#0006;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cs-spell-detail{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground);max-width:560px;max-height:80vh;color:var(--parchment);font-family:var(--font-body);padding:24px;position:relative;overflow-y:auto}.cs-spell-detail-close{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;font-size:1.2em;position:absolute;top:10px;right:10px}.cs-spell-detail-meta{font-family:var(--font-label);color:var(--ink-faint);margin-bottom:12px;font-size:.75em}.cs-spell-detail-grid{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;font-size:.85em;display:grid}.cs-spell-detail-grid span strong{color:var(--accent);font-family:var(--font-label);text-transform:uppercase;margin-right:4px;font-size:.7em}.cs-spell-status-panel{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:color-mix(in srgb, var(--ground-3) 82%, var(--accent) 18%);gap:8px;margin:10px 0 12px;padding:9px 10px;display:grid}.cs-spell-status-panel label{color:var(--parchment-2);gap:4px;font-size:.78em;display:grid}.cs-spell-status-panel label>span{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;font-size:.78em}.cs-spell-status-panel input[type=text]{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-2);min-width:0;color:var(--parchment);font:inherit;padding:6px 8px}.cs-spell-status-panel .cs-spell-status-check{align-items:center;gap:7px;display:flex}.cs-spell-detail-roll{margin-bottom:8px;font-size:.88em}.cs-spell-detail-desc{color:var(--parchment-2);white-space:pre-wrap;font-size:.88em;line-height:1.55}.cs-spell-damage-dice{border-top:1px solid var(--rule-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding-top:10px;font-size:.85em;display:flex}.cs-spell-damage-type{color:var(--accent);margin:6px 0 10px;font-size:.92em;line-height:1.5}.cs-spell-damage-type strong{color:var(--ink);font-weight:600}.cs-spell-reference-dice{border-top:1px solid var(--rule-soft);color:var(--ink-dim);flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;padding-top:10px;font-size:.85em;display:flex}.cs-spell-reference-dice strong{color:var(--ink);font-weight:600}.cs-spell-scaling-note{color:var(--accent-deep)}.cs-skin-btn{border-color:var(--border-brass,#b3924a)!important;color:var(--border-brass-bright,#d9b967)!important}.cs-identity{z-index:2;flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cs-vitals{border:1px solid var(--rule-soft);border-radius:var(--r-sm);grid-template-columns:repeat(auto-fit,minmax(4.4em,1fr));gap:0;display:grid;overflow:hidden}.cs-abilities{border:1px solid var(--rule-soft);border-radius:var(--r-sm);gap:0;display:grid;overflow:hidden}.cs-class-icon{flex-shrink:0}.cs-identity-portrait{box-shadow:0 0 0 2px color-mix(in srgb, var(--select,#c9a25a) 45%, transparent);flex-shrink:0}.cs-char-name{font-family:var(--font-display);font-variation-settings:"opsz" 144, "SOFT" 30, "WONK" 1;color:var(--parchment);margin:0;font-size:clamp(1.953em,4vw,2.8em);line-height:1.15}.cs-char-subtitle{font-family:var(--font-body);color:var(--ink-faint);margin:2px 0 0;font-size:.95em;font-style:italic}.cs-level-badge{border:1px solid var(--rule);border-radius:var(--r-sm);font-family:var(--font-label);color:var(--select);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;padding:2px 10px;font-size:.85em}.cs-rest-group{gap:3px;display:flex}.cs-glass-btn{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--sheet-row-surface-hover,color-mix(in srgb, var(--paper,var(--ground-3)) 84%, var(--ink,var(--parchment))));color:var(--parchment);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;align-items:center;gap:4px;padding:4px 8px;font-size:.72em;font-weight:600;transition:border-color .12s,color .12s,background-color .12s;display:flex}.cs-glass-btn:hover{border-color:var(--rule);color:var(--parchment)}.cs-inspire-btn{border-color:var(--rule-soft);color:var(--ink-faint)}.cs-inspire-btn:hover{border-color:var(--accent-deep);color:var(--accent)}.cs-inspire-btn.cs-inspire-on{border-color:var(--accent-deep);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.cs-retire-btn{border:1px solid var(--rule-soft);border-radius:var(--r-sm);color:var(--ink-faint);font-family:var(--font-label);text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:4px;padding:4px 8px;font-size:.62em;display:flex}.cs-retire-btn:hover{border-color:var(--accent);color:var(--accent)}.cs-vital-cell{border-right:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);grid-template-rows:auto 1fr;place-items:center;gap:3px;min-height:54px;padding:8px 6px;display:grid;position:relative}.cs-vital-label{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;gap:3px;font-size:.65em;display:flex}.cs-vital-label svg{color:var(--accent)}.cs-vital-cell strong,.cs-vital-rollable strong{font-family:var(--font-display);font-variation-settings:"opsz" 144;color:var(--parchment);font-size:1.5em}.cs-vital-rollable{cursor:pointer;font:inherit;color:inherit;text-align:inherit;background:inherit;border-style:solid;border-color:inherit;border-width:inherit;border-radius:0}.cs-vital-rollable:hover{background:#0000000a}.cs-vital-hp{grid-column:span 2;gap:4px;padding:8px 12px}.cs-vital-hp-row{align-items:baseline;gap:3px;display:flex}.cs-vital-hp-row strong{color:var(--parchment);font-size:1.4em}.cs-hp-temp{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;font-size:.55em}.cs-hp-bar{border:1px solid var(--rule-soft);background:var(--ground);border-radius:999px;width:100%;height:4px;overflow:hidden}.cs-hp-bar span{border-radius:inherit;background:var(--accent);height:100%;display:block}.cs-hp-steppers{gap:3px;display:flex}.cs-hp-steppers button{border:1px solid var(--rule-soft);border-radius:var(--r-sm);min-width:24px;min-height:20px;color:var(--parchment-2);cursor:pointer;background:0 0;place-items:center;padding:1px 4px;display:grid}.cs-vital-death{grid-column:span 2}.cs-vital-death .cs-vital-label{margin-bottom:2px}.cs-vital-death-row{color:var(--ink-faint);font-size:.55em;font-family:var(--font-label);flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;display:flex}.cs-death-dot{border:1.5px solid var(--rule-soft);cursor:pointer;background:0 0;border-radius:50%;width:14px;height:14px;padding:0}.cs-death-dot.dot-success{background:var(--select);border-color:var(--select)}.cs-death-dot.dot-fail{background:var(--accent);border-color:var(--accent)}.cs-death-reset{color:var(--ink-faint);font-family:var(--font-label);cursor:pointer;background:0 0;border:0;padding:0 3px;font-size:.5em}.cs-ability-cell{border:0;border-bottom:1px solid var(--rule-soft);color:inherit;cursor:pointer;background:0 0;align-content:center;justify-items:center;gap:1px;min-height:3em;padding:8px 4px;font-family:inherit;display:grid}.cs-ability-cell:last-child{border-bottom:0}.cs-ability-cell:hover{background:#0000000a}.cs-ability-mod{font-family:var(--font-display);font-variation-settings:"opsz" 144;color:var(--parchment);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-size:1.8em}.cs-ability-label{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;font-size:.78em}.cs-ability-score{font-family:var(--font-body);color:var(--parchment-2);font-size:.9em}.cs-section-eyebrow{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--rule-soft);white-space:nowrap;align-items:center;gap:6px;margin-bottom:6px;padding-bottom:4px;font-size:11px;display:flex}.cs-save-row:nth-child(2n){background:var(--sheet-row-stripe,color-mix(in srgb, var(--paper) 94%, var(--ink)))}.cs-save-row:hover{background:#0000000f}.cs-save-row.cs-prof{background:#c9a25a0d}.cs-save-row.cs-prof:nth-child(2n){background:#c9a25a12}.cs-prof-marker{color:var(--ink-faint);place-items:center;font-size:.55em;line-height:1;display:grid}.cs-save-row.cs-prof .cs-prof-marker{color:var(--select)}.cs-save-name{font-family:var(--font-label);color:var(--parchment);text-align:left;text-transform:uppercase;flex:1;font-size:.85em}.cs-save-bonus{font-family:var(--font-body);color:var(--parchment);text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;flex:none;min-width:3ch;font-size:1.15em}.cs-save-open{align-items:center;gap:var(--sp-2);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:14px 1fr;min-width:0;padding:0;display:grid}.cs-save-roll{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:flex-end;align-items:center;padding:0;display:flex}.cs-rule-note{font-family:var(--font-body);color:var(--select);text-align:center;margin-top:6px;font-size:.68em;font-style:italic}.cs-rule-note.cs-rule-warning{color:color-mix(in srgb, var(--accent,#a23f29) 78%, #fff);font-style:normal;font-weight:700}.cs-sense-list{flex-wrap:wrap;gap:6px 14px;display:flex}.cs-sense-row{font-family:var(--font-body);color:var(--parchment-2);align-items:center;gap:.3em;font-size:.9em;display:flex}.cs-sense-row strong{font-family:var(--font-body);color:var(--parchment);font-size:1.05em;font-weight:700;line-height:1}.cs-prof-list{gap:7px;display:grid}.cs-prof-group{grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:5px 9px;width:100%;display:grid}.cs-prof-cat{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.03em;padding-top:3px;font-size:.65em}.cs-prof-tags{flex-wrap:wrap;gap:3px;display:flex}.cs-prof-chip{border:1px solid var(--rule-soft);border-radius:var(--r-sm);font-family:var(--font-body);color:var(--parchment-2);white-space:normal;overflow-wrap:anywhere;min-width:0;padding:2px 7px;font-size:.68em}.cs-skills-grid{gap:4px;display:grid}.cs-skill-ability-tag{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--rule-soft);white-space:nowrap;margin-bottom:1px;padding-bottom:2px;font-size:.58em}.cs-skill-group{gap:1px;display:grid}.cs-skill-row{border-radius:var(--r-sm);grid-template-columns:1.1em 1fr 2.4em;align-items:center;gap:4px;padding:.25em .4em;display:grid}.cs-skill-row:hover{background:#0000000f}.cs-prof-click{cursor:pointer;color:var(--ink-faint);background:0 0;border:0;place-items:center;padding:0;font-size:.55em;display:grid}.cs-prof-click.cs-prof{color:var(--select)}.cs-prof-click.cs-expert{color:var(--select);font-size:.7em}.cs-skill-btn{color:var(--parchment);font-family:var(--font-body);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:.92em}.cs-skill-btn:hover{color:var(--parchment);text-decoration:underline;-webkit-text-decoration-color:var(--rule-soft);text-decoration-color:var(--rule-soft);text-underline-offset:2px}.cs-skill-bonus{font-family:var(--font-body);color:var(--parchment);text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;flex:none;min-width:3ch;font-size:1.15em}.cs-roll-target{position:relative}.cs-roll-target-value{min-width:3ch;color:color-mix(in srgb, var(--select,#c9a25a) 70%, var(--parchment,#e8dcc2));box-shadow:inset 0 -1px color-mix(in srgb, var(--select,#c9a25a) 26%, transparent);white-space:nowrap;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;gap:.2em;padding:0;font-weight:700;line-height:1.1;transition:background .12s,color .12s,box-shadow .12s;display:inline-flex}.cs-roll-target-value:after{content:"◇";font-family:var(--font-label,sans-serif);opacity:.38;font-size:.46em;font-weight:700}.cs-roll-target:hover .cs-roll-target-value,.cs-roll-target-value:hover{color:var(--select,#c9a25a);background:color-mix(in srgb, var(--select,#c9a25a) 8%, transparent);box-shadow:inset 0 -1px var(--select,#c9a25a)}.cs-roll-target:focus-visible,.cs-roll-target-value:focus-visible{outline:2px solid var(--select,#c9a25a);outline-offset:2px}.cs-skill-btn.cs-roll-target{-webkit-text-decoration:underline dotted color-mix(in srgb, var(--select,#c9a25a) 38%, transparent);text-decoration:underline dotted color-mix(in srgb, var(--select,#c9a25a) 38%, transparent);text-underline-offset:.22em}.cs-skill-btn.cs-roll-target:hover{color:var(--select,#c9a25a);-webkit-text-decoration-color:color-mix(in srgb, var(--select,#c9a25a) 82%, transparent);text-decoration-color:color-mix(in srgb, var(--select,#c9a25a) 82%, transparent)}button.cs-skill-bonus{appearance:none;font:inherit;cursor:pointer;background:0 0;border:0}.cs-skill-bonus.cs-roll-target-value:after{content:"◇";border:0;width:auto;height:auto;transform:none}.cs-action-table{border-collapse:collapse;width:100%;font-family:var(--font-body);table-layout:fixed;font-size:1.08em}.cs-action-table thead{border-bottom:1px solid var(--rule)}.cs-action-table th{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;text-align:left;overflow-wrap:anywhere;padding:9px 11px;font-size:.72em;font-weight:600}.cs-sheet .cs-action-table tbody tr:nth-child(2n){background:var(--sheet-row-stripe,color-mix(in srgb, var(--paper) 94%, var(--ink)))}.cs-action-table td{border-bottom:1px solid var(--rule-soft);color:var(--parchment-2);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;overflow-wrap:anywhere;padding:8px 11px}.cs-action-row-click{cursor:pointer}.cs-action-row-click:hover td{color:var(--parchment);background:#c9a25a0a}.cs-spell-list{gap:12px;display:grid}.cs-spell-group{gap:6px;display:grid}.cs-spell-search{font-family:var(--font-body);border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment);width:100%;margin-bottom:8px;padding:6px 10px;font-size:.85em}.cs-spell-search:focus{outline:2px solid var(--select);border-color:var(--select)}.cs-spellbook-panel{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cs-spellbook-panel.cs-spellbook-library-only{grid-template-columns:minmax(0,1fr)}.cs-spellbook-sort{color:var(--ink-2);align-items:center;gap:8px;font-size:.88em;display:flex}.cs-spellbook-sort span{flex:none}.cs-spellbook-sort select{min-height:36px}.cs-spellbook-library,.cs-spellbook-prepared{flex-direction:column;gap:8px;min-width:0;display:flex}.cs-spellbook-entry{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"body prepare";align-items:center;gap:2px 8px;display:grid}.cs-spellbook-entry .cs-spell-card-body{grid-area:body}.cs-spellbook-prepare,.cs-spellbook-entry .cs-spellbook-cantrip{grid-area:prepare;align-self:center}.cs-spell-card-preparable{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"body prepare";align-items:center;column-gap:10px}.cs-spell-card-preparable .cs-spell-card-body{grid-area:body}.cs-spell-card-preparable .cs-spellbook-prepare{grid-area:prepare}.cs-spell-card-body{gap:3px;min-width:0;display:grid}.cs-spellbook-prepare{border:1px solid color-mix(in srgb, var(--doc-accent,var(--accent)) 55%, transparent);font-family:var(--font-label);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:.72em;font-weight:700}.cs-spellbook-prepare:not(:disabled):hover{border-color:var(--doc-accent,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb, var(--doc-accent,var(--accent)) 18%, transparent)}.cs-spellbook-prepare.is-prepared{border-color:var(--doc-accent,var(--accent));background:color-mix(in srgb, var(--doc-accent,var(--accent)) 16%, transparent);color:var(--doc-accent,var(--accent))}.cs-spell-level-head{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:2px;padding-bottom:4px;font-size:.78em;font-weight:700;display:flex}.cs-feature-group{border-bottom:1px solid var(--rule-soft);gap:6px;margin-bottom:8px;padding-bottom:8px;display:grid}.cs-manage-feats-toolbar{justify-content:flex-end;margin:-4px 0 10px;display:flex}.cs-manage-feats-btn{border-color:var(--border-brass-bright,var(--select));background:var(--border-brass,var(--select));color:#14110a;white-space:nowrap;align-items:center;gap:5px;padding:6px 11px;font-size:.72em;font-weight:700;display:inline-flex;box-shadow:inset 0 -2px #00000038}.cs-manage-feats-btn:hover{border-color:var(--border-brass-bright,var(--select));background:color-mix(in srgb, var(--border-brass,var(--select)) 86%, white);color:#14110a}.cs-feat-chip-list{flex-wrap:wrap;gap:5px;margin:2px 0 4px;display:flex}.cs-feat-chip{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);color:var(--parchment-2);background:color-mix(in srgb, var(--accent) 10%, transparent);font-family:var(--font-label);letter-spacing:.03em;border-radius:999px;padding:3px 8px;font-size:.68em}.cs-feat-manager-scrim{z-index:320;place-items:center;padding:16px;display:grid;overflow-y:auto}.cs-feat-manager{border:1px solid color-mix(in srgb, var(--parchment) 30%, var(--ground));border-radius:var(--r-sm);background:var(--ground);width:min(720px,100%);max-height:min(760px,100vh - 32px);color:var(--parchment);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 18px 48px #00000073}.cs-feat-manager-head{border-bottom:1px solid var(--rule-soft);justify-content:space-between;gap:20px;padding:20px 22px 16px;display:flex}.cs-feat-manager-head h2{font-family:var(--font-display);margin:3px 0 4px;font-size:1.55rem}.cs-feat-manager-head p{color:var(--parchment-2);margin:0;font-size:.9em}.cs-feat-manager-close{width:30px;height:30px;color:var(--parchment-2);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.cs-feat-manager-close:hover{color:var(--parchment)}.cs-feat-manager-body{gap:18px;padding:18px 22px 22px;display:grid;overflow-y:auto}.cs-feat-manager-section{gap:9px;display:grid}.cs-feat-manager-section-head,.cs-feat-manager-spell-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.cs-feat-manager-count{border:1px solid var(--rule-soft);text-align:center;min-width:24px;color:var(--parchment-2);font-family:var(--font-label);border-radius:999px;padding:2px 7px;font-size:.72em}.cs-feat-manager-row{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.cs-feat-manager-row strong{display:block}.cs-feat-manager-row small,.cs-feat-manager-spell-head small{color:var(--parchment-2);font-size:.78em}.cs-feat-remove{color:var(--parchment-2);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.cs-feat-manager-field{gap:5px;display:grid}.cs-feat-manager-field>span{color:var(--parchment-2);font-family:var(--font-label);letter-spacing:.05em;text-transform:uppercase;font-size:.72em;font-weight:700}.cs-feat-manager-field select{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);width:100%;min-height:38px;color:var(--parchment);font:inherit;padding:7px 10px}.cs-feat-manager-description{border-left:2px solid var(--accent);color:var(--parchment-2);margin:0;padding:9px 10px;font-size:.9em;line-height:1.45}.cs-feat-manager-spells{gap:6px;display:grid}.cs-feat-manager-spell{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment);text-align:left;cursor:pointer;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.cs-feat-manager-spell small{color:var(--parchment-2);font-size:.76em}.cs-feat-manager-spell.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, var(--ground-3))}.cs-feat-manager-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.cs-feat-add{border-color:color-mix(in srgb, var(--accent) 65%, transparent);align-items:center;gap:5px;display:inline-flex}@media (max-width:560px){.cs-feat-manager-head,.cs-feat-manager-body{padding-left:14px;padding-right:14px}.cs-feat-manager-row{flex-direction:column;align-items:flex-start}.cs-feat-remove{align-self:flex-end}}.cs-feature-group:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.cs-spell-card{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);gap:3px;padding:8px 10px;display:grid}.cs-spell-card:nth-child(2n){background:#0000000f}.cs-spell-card strong{color:var(--parchment);font-size:1.05em}.cs-spell-card span{color:var(--parchment-2);font-size:.82em}.cs-spell-status-badges{flex-wrap:wrap;gap:5px;display:flex}.cs-spell-status-badges span{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 11%, transparent);width:fit-content;color:var(--parchment-2);font-family:var(--font-label);text-transform:uppercase;border-radius:999px;padding:2px 6px;font-size:.68em}.cs-spell-status-badges span.ready{border-color:color-mix(in srgb, var(--select) 58%, transparent);color:var(--select)}.cs-spell-status-badges span.used{opacity:.72}.cs-spell-card p{color:var(--parchment-2);margin-top:4px;font-size:.92em;font-style:italic;line-height:1.5}.cs-item-catalog{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:color-mix(in srgb, var(--paper-raised) 74%, transparent);gap:10px;margin-bottom:12px;padding:8px;display:grid}.cs-item-catalog-head{font-family:var(--font-label);color:var(--parchment);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:baseline;gap:10px;font-size:.68em;display:flex}.cs-item-catalog-head small{color:var(--ink-faint);font-size:.9em}.cs-item-catalog-controls{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:6px;display:grid}.cs-item-catalog-controls input,.cs-item-catalog-controls select{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--paper);min-width:0;color:var(--ink);font-family:var(--font-body);padding:6px 8px;font-size:.78em}.cs-item-results{scrollbar-gutter:stable;gap:6px;max-height:330px;display:grid;overflow-y:auto}.cs-item-result{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:7px 8px;display:grid}.cs-item-result strong{color:var(--parchment);font-size:.98em;display:block}.cs-item-result span,.cs-item-more{color:var(--ink-faint);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.04em;font-size:.58em;display:block}.cs-item-result p{color:var(--parchment-2);margin-top:3px;font-size:.78em;line-height:1.35}.cs-item-result .cs-glass-btn{min-height:32px;padding:var(--sp-3) var(--sp-5);border-color:var(--border-brass-bright,var(--select));border-radius:var(--r-1);background:var(--border-brass,var(--select));color:var(--text-on-accent,var(--ink));font-size:var(--ts-2);font-weight:var(--fw-strong);letter-spacing:.06em;white-space:nowrap;flex:none;align-self:center;box-shadow:inset 0 -2px #00000038}.cs-item-result .cs-glass-btn:hover{border-color:var(--border-brass-bright,var(--select));background:var(--border-brass,var(--select));color:var(--text-on-accent,var(--ink));box-shadow:inset 0 -2px #00000057, 0 0 0 2px color-mix(in srgb, var(--border-brass,var(--select)) 30%, transparent)}.cs-item-result>div>span{text-transform:none;letter-spacing:0;font-size:var(--ts-2)}.cs-item-result>div>span i{color:var(--rule);padding-inline:var(--sp-1);font-style:normal}.cs-item-more{text-transform:none;letter-spacing:0;margin:0}.cs-inv-list{gap:4px;margin-bottom:10px;display:grid}.cs-inventory-actions{justify-content:flex-end;margin-bottom:9px;display:flex}.cs-inv-row{border:1px solid var(--rule-soft);border-radius:var(--r-sm);grid-template-columns:1fr auto;align-items:start;gap:10px;padding:6px 8px;display:grid}.cs-inv-row.cs-inv-equipped{border-color:color-mix(in srgb, var(--accent) 50%, var(--rule-soft));background:color-mix(in srgb, var(--accent) 8%, transparent)}.cs-inv-row strong{color:var(--parchment);font-size:1.05em;display:block}.cs-inv-rename{width:22px;height:22px;margin-left:var(--sp-3);border-radius:var(--r-1);color:var(--ink-faint);vertical-align:baseline;cursor:pointer;opacity:0;transition:opacity var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.cs-inv-row:hover .cs-inv-rename,.cs-inv-row:focus-within .cs-inv-rename,.cs-inv-rename:focus-visible{opacity:1}.cs-inv-rename:hover{color:var(--accent)}.cs-inv-rename:focus-visible{outline:2px solid var(--select);outline-offset:1px}@media (pointer:coarse){.cs-inv-rename{opacity:1}}.cs-inv-name-input{width:100%;padding:var(--sp-1) var(--sp-2);border:0;border-bottom:var(--rule-w) solid var(--accent);color:var(--parchment);font:inherit;background:0 0;border-radius:0}.cs-inv-name-input:focus-visible{outline:none}.cs-inv-row span{color:var(--ink-faint);margin-top:2px;font-size:.9em;display:block}.cs-inv-meta{gap:var(--sp-4);font-family:var(--font-label);font-size:var(--ts-1);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;align-items:center;display:flex}.cs-inv-del{border-radius:var(--r-1);width:24px;height:24px;color:var(--ink-faint);font-size:var(--ts-5);cursor:pointer;opacity:0;transition:opacity var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease);background:0 0;border:0;place-items:center;padding:0;line-height:1;display:inline-grid}.cs-inv-row:hover .cs-inv-del,.cs-inv-row:focus-within .cs-inv-del,.cs-inv-del:focus-visible{opacity:1}.cs-inv-del:hover{color:var(--state-danger,var(--accent));background:color-mix(in srgb, var(--state-danger,var(--accent)) 14%, transparent)}.cs-inv-del:focus-visible{outline:2px solid var(--select);outline-offset:1px}@media (pointer:coarse){.cs-inv-del{opacity:1}}.cs-inv-quantity{text-transform:none;align-items:center;gap:2px;color:var(--parchment-2)!important;margin-top:0!important;display:inline-flex!important}.cs-inv-quantity button{border:1px solid var(--rule-soft);width:19px;height:19px;color:var(--parchment-2);cursor:pointer;background:0 0;border-radius:2px;padding:0;line-height:1}.cs-inv-quantity button:hover{border-color:var(--accent);color:var(--accent)}.cs-inv-quantity input{border:1px solid var(--rule-soft);background:var(--ground-3);width:30px;height:19px;color:var(--parchment);text-align:center;font:inherit;border-radius:2px;padding:0 2px}.cs-inv-actions{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.cs-inv-actions .cs-glass-btn{padding:3px 8px;font-size:.62em}.cs-attune{color:var(--select)}.cs-inv-details{color:var(--parchment-2);margin-top:5px;font-size:.82em}.cs-inv-details summary{cursor:pointer;color:var(--accent);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.04em;font-size:.76em}.cs-inv-details p{margin-top:4px;line-height:1.45}@media (max-width:760px){.cs-item-catalog-controls,.cs-item-result{grid-template-columns:1fr}}.cs-feature-list{gap:12px;display:grid}.cs-feature-card{border:1px solid var(--rule-soft);border-radius:var(--r-sm);padding:6px 8px}.cs-feature-card strong{color:var(--parchment);font-size:1em}.cs-feature-card p{color:var(--parchment-2);margin-top:2px;font-size:.92em;line-height:1.5}.cs-homebrew-features{gap:7px;margin:8px 0 0;display:grid}.cs-homebrew-features>div{border-left:2px solid var(--rule-soft);border-radius:0 var(--r-sm) var(--r-sm) 0;background:#0000001f;padding:6px 9px}.cs-homebrew-features dt{color:var(--gold,#d5ac59);letter-spacing:.02em;font-size:.9em;font-weight:600}.cs-homebrew-features dd{color:var(--parchment-2);margin:3px 0 0;font-size:.9em;line-height:1.5}.cs-capability-panel{gap:var(--sp-6);display:grid}.cs-capability-group{gap:var(--sp-3);display:grid}.cs-capability-list{gap:var(--sp-2);display:grid}.cs-capability-card{border:var(--rule-w) solid var(--rule-soft);border-left:3px solid color-mix(in srgb, var(--accent) 70%, var(--rule));border-radius:var(--r-1);background:var(--sheet-row-surface,color-mix(in srgb, var(--paper,var(--ground-3)) 90%, var(--ink,var(--parchment))));transition:border-color var(--motion-fast) var(--motion-ease);overflow:clip}.cs-capability-card[open]{border-color:color-mix(in srgb, var(--accent) 42%, var(--rule))}.cs-capability-card summary{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease);list-style:none;display:flex}.cs-capability-card summary::-webkit-details-marker{display:none}.cs-capability-card summary:hover{background:var(--sheet-row-surface-hover,color-mix(in srgb, var(--paper,var(--ground-3)) 84%, var(--ink,var(--parchment))))}.cs-capability-card summary:focus-visible{outline:2px solid var(--select);outline-offset:-2px}.cs-capability-card summary>span:first-child{gap:var(--sp-1);min-width:0;display:grid}.cs-capability-card summary strong{color:var(--parchment);font-size:var(--ts-5);font-weight:var(--fw-strong);line-height:var(--lh-tight)}.cs-capability-card summary small{color:var(--ink-faint);font-family:var(--font-label);font-size:var(--ts-2);font-weight:var(--fw-medium);letter-spacing:0;text-transform:none}.cs-capability-badges{justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}.cs-capability-badges em{padding:var(--sp-1) var(--sp-3);border:var(--rule-w) solid var(--rule-soft);border-radius:var(--r-pill);color:var(--ink-faint);font-family:var(--font-label);font-size:var(--ts-1);font-style:normal;font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.cs-capability-badges .is-ready{border-color:color-mix(in srgb, var(--select) 58%, var(--rule));color:var(--select)}.cs-capability-badges .is-empty{opacity:.62}.cs-capability-body{gap:var(--sp-3);padding:0 var(--sp-4) var(--sp-4);border-top:var(--rule-w) solid var(--rule-soft);display:grid}.cs-capability-body>p:first-child{margin-top:var(--sp-4);color:var(--parchment-2);font-size:var(--ts-4);line-height:var(--lh-read)}.cs-capability-meta{color:var(--ink-faint);font-size:var(--ts-3);line-height:var(--lh-ui)}.cs-capability-meta strong{color:var(--parchment-2)}.cs-capability-actions{align-items:end;gap:var(--sp-3);margin-top:var(--sp-1);flex-wrap:wrap;display:flex}.cs-capability-actions label{gap:var(--sp-1);font-family:var(--font-label);font-size:var(--ts-2);color:var(--ink-faint);display:grid}.cs-capability-actions .cs-capability-check{align-items:center;gap:var(--sp-2);display:flex}.cs-capability-actions label{gap:3px;display:grid}.cs-capability-actions label span{color:var(--ink-faint);font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.cs-capability-actions input{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground-3);width:76px;min-height:32px;color:var(--parchment);padding:5px 7px}.cs-reaction-status{border:1px solid color-mix(in srgb, var(--select) 48%, var(--rule));border-radius:var(--r-sm);background:color-mix(in srgb, var(--select) 7%, var(--ground-3));justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.cs-reaction-status.is-used{border-color:var(--rule-soft);background:var(--ground-3)}.cs-reaction-status>span{gap:2px;display:grid}.cs-reaction-status strong{color:var(--parchment)}.cs-reaction-status small{color:var(--ink-faint);font-size:12px}.cs-inline-actions{gap:6px;margin-top:7px;display:flex}.cs-inline-actions .cs-glass-btn{padding:3px 9px;font-size:.72em}.cs-reftabs{flex-direction:column;min-height:0;display:flex}.cs-reftablist{border-bottom:1px solid var(--rule);gap:2px;margin-bottom:12px;display:flex;overflow-x:auto}.cs-reftab{font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:4px;padding:7px 9px;font-size:.7em;font-weight:700;display:inline-flex}.cs-reftab:hover{color:var(--parchment)}.cs-reftab.is-active{color:var(--parchment);border-bottom-color:var(--select)}.cs-reftab-panel{max-height:70dvh;display:grid;overflow:auto}.cs-reftab-panel>*{grid-area:1/1}.cs-reftab-hidden{display:none}.cs-bg-block,.cs-notes-block{gap:12px;display:grid}.cs-bg-field{gap:4px;display:grid}.cs-bg-label{font-family:var(--font-label);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:.72em}.cs-bg-field p{font-family:var(--font-body);color:var(--parchment-2);font-size:1.05em;line-height:1.5}.cs-console-form{gap:8px;display:grid}.cs-console-label{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;grid-template-columns:auto 1fr;align-items:center;gap:6px;font-size:.65em;display:grid}.cs-console-input{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment);font-family:var(--font-mono);padding:5px 8px;font-size:.78em}.cs-console-log{flex-wrap:wrap;gap:4px;display:flex}.cs-console-log span{border:1px solid var(--rule-soft);font-family:var(--font-mono);color:var(--parchment-2);background:var(--ground-3);border-radius:999px;padding:3px 8px;font-size:.65em}.cs-muted{font-family:var(--font-body);color:var(--ink-2);font-size:.82em;font-style:italic}.cs-section-body:has(.cs-muted:only-child){padding:.35em .75em}@media (max-width:1100px){.cs-sheet-col:first-child{flex:0 0 12em}.cs-sheet-col:nth-child(2){flex:.8}.cs-sheet-col:nth-child(3){flex:1.2}}@media (max-width:760px){.cs-sheet-columns{flex-direction:column;width:100%;min-width:0;max-width:100%}.cs-sheet-col{flex:1!important;max-width:none!important}.cs-sheet-columns .cs-sheet-col{align-self:stretch;min-width:0;max-width:100%}.cs-abilities{grid-template-columns:repeat(6,1fr)}.cs-ability-cell{border-bottom:0;border-right:1px solid var(--rule-soft);min-height:60px}.cs-ability-cell:last-child{border-right:0}.cs-vitals{max-width:none}.cs-ability-mod{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-size:1.5em}}.cs-save-grid{gap:2px;display:grid}.cs-save-row{color:inherit;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;grid-template-columns:1fr auto;align-items:stretch;gap:4px;padding:4px 6px;font-family:inherit;display:grid}.dice-fly-overlay{z-index:9000;pointer-events:none;position:fixed;inset:0}.dice-dismiss-layer{z-index:50;pointer-events:auto;cursor:pointer;background:0 0;position:absolute;inset:0}@keyframes die-fly{0%{transform:translate(var(--die-from-x), var(--die-from-y)) rotate(0deg) scale(.6);opacity:var(--die-start-opacity,.85)}50%{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(calc(var(--die-spin) * .85)) scale(1.08);opacity:var(--die-visible-opacity,1)}57%{transform:translate(var(--die-to-x), calc(var(--die-to-y) + 10px)) rotate(var(--die-spin)) scale(1.1, .88);opacity:var(--die-visible-opacity,1)}63%{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(var(--die-spin)) scale(.96, 1.04);opacity:var(--die-visible-opacity,1)}68%{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(var(--die-spin)) scale(1);opacity:var(--die-visible-opacity,1)}84%{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(var(--die-spin)) scale(1);opacity:var(--die-visible-opacity,1)}to{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(var(--die-spin)) scale(1);opacity:var(--die-visible-opacity,1)}}@keyframes die-text-in{0%,61%{opacity:0}70%{opacity:1}84%{opacity:1}to{opacity:1}}.flying-die{pointer-events:none;will-change:transform;contain:layout style;width:100px;height:100px;animation:2.8s cubic-bezier(.18,.82,.28,1) forwards die-fly;position:fixed;top:0;left:0;overflow:visible}.die-roll-label{white-space:normal;text-align:center;background:#0a0804b8;border:1px solid #fff4da38;border-radius:10px;justify-items:center;gap:2px;min-width:132px;max-width:min(260px,80vw);padding:5px 10px 6px;animation:2.8s linear forwards die-text-in;display:grid;position:absolute;top:104px;left:50px;transform:translate(-50%)}.die-roll-label-main{justify-content:center;align-items:center;gap:5px;min-width:0;display:inline-flex}.die-roll-label-name{font-family:var(--font-label,system-ui, sans-serif);color:var(--text-primary,#fff4da);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:700}.die-roll-label-die{font-family:var(--font-label,system-ui, sans-serif);color:var(--gold,#c9a25a);font-size:.65rem;font-weight:700}.die-roll-label-total{font-family:var(--font-label,system-ui, sans-serif);color:var(--gold,#c9a25a);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:800}.die-roll-label-detail{overflow-wrap:anywhere;color:#fff4dac7;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.66rem;line-height:1.25}@keyframes crit-flash{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)rotate(-4deg)}12%{opacity:1;transform:translate(-50%,-50%)scale(1.08)rotate(1.5deg)}22%{opacity:1;transform:translate(-50%,-50%)scale(.98)rotate(-.5deg)}30%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}65%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}75%{opacity:.85;transform:translate(-50%,-50%)scale(1.04)rotate(.5deg)}to{opacity:0;transform:translate(-50%,-50%)scale(.8)rotate(-2deg)}}@keyframes crit-bg-pulse{0%{opacity:0}8%{opacity:.38}22%{opacity:.2}65%{opacity:.18}to{opacity:0}}.crit-banner{pointer-events:none;z-index:10000;position:fixed;inset:0}.crit-banner:before{content:"";animation:2.6s forwards crit-bg-pulse;animation-delay:var(--crit-delay,0s);opacity:0;background:radial-gradient(#dc321452 0%,#0000 70%);position:absolute;inset:0}.crit-text{color:#fff;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;animation:2.6s cubic-bezier(.22,1,.36,1) forwards crit-flash;animation-delay:var(--crit-delay,0s);opacity:0;-webkit-text-stroke:4px #000;text-shadow:0 0 4px #0000008c,0 4px 12px #00000080;paint-order:stroke fill;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,8vw,6.4rem);font-weight:900;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.flying-die,.die-roll-label,.crit-banner:before,.crit-text{animation:none}.flying-die{transform:translate(var(--die-to-x), var(--die-to-y)) rotate(var(--die-spin)) scale(1);opacity:1}.die-roll-label{opacity:1}.cs-section,.cs-section-chevron{transition:none}.roll-drawer,.roll-drawer-body,.dj-rail,.dj-rail-step,.cs-reftab,.cs-reftab-panel,.cs-reftab-hidden{transition:none!important}.dice-overlay,.dice-overlay *{transition:none!important;animation:none!important}}.cs-equip-row{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:8px;display:flex}.cs-equip-field{letter-spacing:.06em;text-transform:uppercase;min-width:160px;color:var(--ink-2,var(--parchment-2));flex-direction:column;flex:1;gap:4px;font-size:.72rem;display:flex}.cs-equip-field select{font:inherit;text-transform:none;letter-spacing:normal;border:1px solid var(--doc-rule,var(--rule));background:var(--paper-raised,var(--ground-2));color:var(--ink,var(--parchment));border-radius:8px;padding:6px 8px;font-size:.85rem}.cs-equip-check{color:var(--ink,var(--parchment));cursor:pointer;align-items:center;gap:6px;padding-bottom:6px;font-size:.8rem;display:inline-flex}.cs-equipped-list{flex-wrap:wrap;gap:6px;margin:2px 0 8px;display:flex}.cs-equipped-chip{border:1px solid color-mix(in srgb, var(--doc-accent,var(--accent)) 44%, var(--doc-rule,var(--rule)));background:color-mix(in srgb, var(--doc-accent,var(--accent)) 10%, transparent);min-width:0;color:var(--ink,var(--parchment));border-radius:7px;align-items:center;gap:5px;padding:4px 6px;font-size:.76em;display:inline-flex}.cs-equipped-chip.cs-equipped-warning{border-color:color-mix(in srgb, var(--accent,#a23f29) 72%, #fff);background:color-mix(in srgb, var(--accent,#a23f29) 18%, transparent)}.cs-equipped-chip button{border:0;border-left:1px solid var(--doc-rule,var(--rule));color:var(--doc-accent,var(--accent));font:inherit;cursor:pointer;background:0 0;margin-left:2px;padding:0 0 0 5px}.cs-weapon-chips{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.cs-glass-btn.cs-equip-warning{border-color:color-mix(in srgb, var(--accent,#a23f29) 70%, #fff);color:color-mix(in srgb, var(--accent,#a23f29) 76%, #fff)}.cs-weapon-chip{cursor:pointer;opacity:.65}.cs-weapon-chip.cs-weapon-on{opacity:1;outline:1.5px solid var(--doc-accent,var(--accent));outline-offset:-1px}.cs-ac-src{letter-spacing:.04em;opacity:.75;white-space:nowrap;text-overflow:ellipsis;max-width:90%;font-size:.58rem;display:block;position:absolute;bottom:6px;left:50%;overflow:hidden;transform:translate(-50%)}.cs-spellbook-manager{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:color-mix(in srgb, var(--ground-3) 86%, var(--accent) 14%);gap:8px;margin-bottom:12px;padding:9px 10px;display:grid}.cs-spellbook-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.cs-spellbook-head .cs-spell-level-head{border:0;margin:0;padding:0}.cs-spellbook-head small{color:var(--ink-faint);font-family:var(--font-label);text-transform:uppercase;white-space:nowrap;font-size:.68em}.cs-spellbook-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.cs-spellbook-add select{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-2);min-width:0;color:var(--parchment);font-family:var(--font-body);padding:6px 8px;font-size:.86em}.cs-spellbook-known{flex-wrap:wrap;gap:6px;display:flex}.cs-known-spell-chip{border:1px solid var(--rule-soft);color:var(--parchment-2);cursor:pointer;font-family:var(--font-body);background:#00000014;border-radius:999px;align-items:center;gap:6px;padding:4px 7px;font-size:.78em;display:inline-flex}.cs-known-spell-chip span{color:var(--accent);font-family:var(--font-label);text-transform:uppercase;font-size:.72em}.cs-known-spell-chip:hover{border-color:var(--accent);color:var(--parchment)}.cs-spellbook-add .cs-glass-btn:disabled{opacity:.45;cursor:not-allowed}.cs-prep-marker{float:left;margin-right:6px}.cs-prep-filter{margin-left:8px;padding:2px 8px;font-size:.65rem}.cs-conc-banner{border:1px dashed var(--doc-accent,var(--accent));color:var(--ink,var(--parchment));border-radius:8px;align-items:center;gap:8px;margin:6px 0;padding:6px 10px;font-size:.8rem;display:flex}.cs-cast-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.cs-cast-row .cs-glass-btn[disabled]{opacity:.4;cursor:not-allowed}.cs-sheet-columns .cs-block>.cs-section-eyebrow{display:none}.cs-weapon-chip{opacity:1;color:var(--parchment-2);cursor:pointer;background:0 0}.cs-weapon-chip.cs-weapon-on{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--parchment)}.cs-action-table{table-layout:auto}.cs-action-table td,.cs-action-table th{overflow-wrap:break-word}.cs-action-table th,.cs-dmg-roll{white-space:nowrap}.cs-dmg-btns{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.cs-sheet-col:not(:empty):after{content:"";background:var(--ground);flex:auto}.cs-skill-row:nth-child(2n){background:var(--sheet-row-stripe,color-mix(in srgb, var(--paper) 94%, var(--ink)))}.cs-action-table{font-size:.92em}.cs-action-table td:nth-child(2){font-size:1.1em}.cs-equip-field{font-size:.68em}.cs-equip-field select,.cs-equip-check{font-size:.9em}.cs-conc-banner{font-size:.88em}@media print{.builder-topbar,.vault-rail,.cs-sheet-tools,.cs-sheet-bottom,.dice-fly-overlay,.cs-skin-dropdown,.cs-skin-panel,.cs-levelup-overlay,.cs-spell-detail-overlay,button[title=New\ character],button[title=Log\ out]{display:none!important}body{color:#000!important;background:#fff!important}.cs-sheet-columns{background:0 0;flex-direction:column;gap:0}.cs-sheet-col{gap:0;flex:1!important;max-width:none!important}.cs-section{break-inside:avoid;background:#fff!important;border:1px solid #ccc!important}.cs-section-header{color:#000!important;background:#fff!important;border-bottom-color:#ccc!important}.cs-section-title{color:#000!important}.cs-vitals,.cs-abilities{border-color:#ccc!important}}.cs-sheet{font-size:calc(1em * var(--sheet-scale,1))}.cs-sheet[data-bg=custom]{--skin-bg-pattern:var(--skin-bg-image,none);--skin-bg-size:cover}.cs-sheet[data-bg=custom] .cs-section:before,.cs-sheet[data-bg=custom] .cs-sheet-tools:before{background-position:50%;background-repeat:no-repeat;background-attachment:fixed}.cs-share-row,.cs-bgurl-row{align-items:center;gap:6px;margin-top:6px;display:flex}.cs-share-row .qb-name-input,.cs-bgurl-row .qb-name-input{flex:1;min-width:0}.cs-share-status{color:var(--ink-faint);overflow-wrap:anywhere;margin-top:6px;font-size:.72em}.roll-drawer{z-index:80;color:var(--roll-ink,var(--parchment,#e8dcc2));font-family:var(--roll-font,var(--font-body,Georgia, serif));pointer-events:none;align-items:flex-start;transition:right .3s;display:flex;position:fixed}.roll-drawer>*{pointer-events:auto}.roll-drawer-tab{writing-mode:vertical-rl;border:1px solid color-mix(in srgb, var(--roll-accent,#c9a25a) 44%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--roll-accent,#c9a25a) 18%, transparent), transparent 54%), color-mix(in srgb, var(--roll-paper,#15110d) 92%, #000 8%);min-height:112px;color:var(--roll-ink,var(--parchment,#e8dcc2));font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;border-radius:10px 0 0 10px;padding:14px 7px;font-size:.72rem;box-shadow:0 14px 35px #00000047}.roll-drawer.open .roll-drawer-tab{border-right:0}.roll-drawer-body{border:1px solid color-mix(in srgb, var(--roll-accent,#c9a25a) 34%, var(--roll-ink,#e8dcc2) 12%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--roll-accent,#c9a25a) 10%, transparent), transparent 42%), color-mix(in srgb, var(--roll-paper,#15110d) 94%, #000 6%);min-width:260px;min-height:320px;color:var(--roll-ink,var(--parchment,#e8dcc2));border-radius:0 12px 12px;flex-direction:column;gap:12px;padding:12px 14px 18px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #00000052}.roll-drawer-titlebar{border-bottom:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 18%, transparent);min-height:28px;color:var(--roll-accent,#c9a25a);cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding-bottom:9px;display:flex}.roll-drawer-titlebar svg{opacity:.78;flex:none}.roll-drawer-heading{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;color:var(--roll-accent,#c9a25a);margin-bottom:8px;font-size:.68rem;display:block}.roll-drawer-titlebar .roll-drawer-heading{margin-bottom:0}.roll-pool{flex:none}.roll-pool-grid{grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:6px;display:grid}.roll-pool-die{position:relative}.roll-pool-add{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 20%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 84%, var(--roll-ink,#e8dcc2) 16%);width:100%;color:var(--roll-ink,inherit);font-family:var(--font-mono,ui-monospace, monospace);cursor:pointer;border-radius:8px;padding:8px 2px;font-size:.8rem}.roll-pool-add:hover{border-color:var(--roll-accent,#c9a25a)}.roll-pool-die.has-dice .roll-pool-add{border-color:var(--roll-accent,#c9a25a);background:color-mix(in srgb, var(--roll-accent,#c9a25a) 24%, var(--roll-paper,#15110d))}.roll-pool-add em{color:var(--roll-accent,#c9a25a);font-size:.72rem;font-style:normal;display:block}.roll-pool-minus{border:1px solid color-mix(in srgb, var(--roll-accent,#c9a25a) 62%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 88%, #000 12%);width:17px;height:17px;color:var(--roll-ink,inherit);cursor:pointer;border-radius:50%;font-size:.75rem;line-height:1;position:absolute;top:-6px;right:-5px}.roll-pool-mod{align-items:center;gap:8px;margin-top:10px;font-size:.8rem;display:flex}.roll-pool-mod strong{text-align:center;min-width:2.6ch}.roll-pool-mod button{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 20%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 88%, var(--roll-ink,#e8dcc2) 12%);width:22px;height:22px;color:var(--roll-ink,inherit);cursor:pointer;border-radius:6px}.roll-pool-actions{gap:6px;margin-top:10px;display:flex}.roll-pool-roll{background:linear-gradient(145deg, var(--roll-accent,#c9a25a), color-mix(in srgb, var(--roll-accent,#c9a25a) 72%, #000));color:color-mix(in srgb, var(--roll-paper,#15110d) 18%, #fff);border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 68%, #fff);flex:1;padding:8px 10px;font-size:.8rem}.roll-pool-roll[disabled]{opacity:.45;cursor:not-allowed}.roll-drawer .glass-button{border-color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 18%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 84%, var(--roll-ink,#e8dcc2) 12%);color:var(--roll-ink,inherit)}.roll-history{flex-direction:column;flex:1;min-height:0;display:flex}.roll-history-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.roll-history-list li{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 13%, transparent);border-left:3px solid var(--roll-cat,color-mix(in srgb, var(--roll-ink,#e8dcc2) 22%, transparent));background:color-mix(in srgb, var(--roll-paper,#15110d) 88%, var(--roll-ink,#e8dcc2) 12%);border-radius:8px;padding:7px 9px 7px 11px}.roll-history-list li[data-roll-cat=save]{--roll-cat:#6f9fd8}.roll-history-list li[data-roll-cat=attack]{--roll-cat:#cf6a5c}.roll-history-list li[data-roll-cat=damage]{--roll-cat:#d08a4a}.roll-history-list li[data-roll-cat=skill]{--roll-cat:#6db38a}.roll-history-list li[data-roll-cat=check]{--roll-cat:#b08fd0}.roll-history-list li[data-roll-cat=initiative]{--roll-cat:#d9b45a}.roll-history-list li[data-roll-cat=death]{--roll-cat:#b5504b}.roll-cat-dot{background:var(--roll-cat,color-mix(in srgb, var(--roll-ink,#e8dcc2) 40%, transparent));vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.roll-history-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.roll-history-label{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.roll-history-total{color:var(--roll-accent,#c9a25a);font-size:1.05rem}.roll-history-detail{color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 62%, transparent);overflow-wrap:anywhere;justify-content:space-between;gap:8px;font-size:.68rem;display:flex}.roll-history-empty{color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 58%, transparent);font-size:.75rem}.roll-drawer-resize{border:1px solid color-mix(in srgb, var(--roll-accent,#c9a25a) 44%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 82%, var(--roll-accent,#c9a25a) 18%);width:22px;height:22px;color:var(--roll-accent,#c9a25a);cursor:nwse-resize;touch-action:none;border-radius:6px;place-items:center;display:grid;position:absolute;bottom:6px;right:6px}.roll-drawer-resize svg{transform:rotate(-45deg)}.cs-hidden-ghost{border:1px dashed var(--rule);opacity:.65;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.cs-hidden-ghost .cs-glass-btn{padding:2px 8px;font-size:.65em}.cs-sheet-col{position:relative}.cs-col-divider{z-index:5;cursor:col-resize;background:linear-gradient(var(--rule) 0 0) center / 1px 100% no-repeat;touch-action:none;width:9px;position:absolute;top:0;bottom:0;right:-5px}.cs-col-divider:hover{background:linear-gradient(var(--accent) 0 0) center / 3px 100% no-repeat}.paper-surface{--ground:var(--paper);--ground-2:var(--paper);--ground-3:var(--paper-raised);--parchment:var(--ink);--parchment-2:var(--ink-2);--ink-faint:var(--ink-3);--rule:var(--doc-rule);--rule-soft:var(--doc-rule-soft);--accent:var(--doc-accent);--accent-deep:var(--doc-accent-deep);--select:var(--doc-select);--gold:var(--doc-accent-deep);--ivory:var(--ink);isolation:isolate;background:var(--paper);color:var(--ink);border:1px solid var(--doc-rule);border-radius:var(--r-sm);box-shadow:var(--sheet-shadow);font-family:var(--font-body);margin:14px;position:relative}.paper-surface:before{content:"";z-index:0;pointer-events:none;border-radius:inherit;background-image:var(--grain);opacity:.08;background-size:140px 140px;position:absolute;inset:0}.paper-surface>*{z-index:1;position:relative}.paper-surface .creator-header h2,.paper-surface h1,.paper-surface h2,.paper-surface h3{color:var(--ink)}.paper-surface .creator-header span,.paper-surface .start-copy span{color:var(--doc-accent)}.paper-surface .choice-tile{border-color:var(--doc-rule);background:var(--paper-raised);color:var(--ink)}.paper-surface .choice-tile.active{border-color:var(--doc-accent);background:color-mix(in srgb, var(--doc-accent) 8%, var(--paper))}.paper-surface .choice-tile strong{color:var(--ink)}.paper-surface .choice-tile span,.paper-surface .choice-tile small,.paper-surface .choice-tile em{color:var(--ink-2)}.paper-surface .control-field input,.paper-surface .control-field textarea,.paper-surface .control-field select,.paper-surface .attribute-card select,.paper-surface .qb-name-input{border-color:var(--doc-rule);background:var(--paper-raised);color:var(--ink)}.paper-surface .control-field input::placeholder,.paper-surface .qb-name-input::placeholder,.paper-surface .step-tabs button{color:var(--ink-3)}.paper-surface .step-tabs button.active{color:var(--ink);border-bottom-color:var(--doc-accent)}.paper-surface .glass-button{color:var(--ink);border-color:var(--doc-rule)}.paper-surface .gold-button{background:var(--doc-accent);border-color:var(--doc-accent-deep);color:var(--paper)}.paper-surface .class-icon-stage,.paper-surface .choice-avatar{background:var(--paper-raised);border:1px solid var(--doc-rule);box-shadow:none}.paper-surface.class-modal{margin:0}.paper-surface .glass-icon{color:var(--ink);border-color:var(--doc-rule);background:var(--paper-raised)}.paper-surface .class-detail-card,.paper-surface .species-facts{border-color:var(--doc-rule);background:var(--paper-raised);color:var(--ink-2)}.paper-surface .species-facts strong,.paper-surface .class-detail-card summary{color:var(--ink)}.paper-surface .start-copy p{color:var(--ink-2)}.paper-surface .build-mode-card{border:1px solid var(--doc-rule);background:var(--paper-raised);color:var(--ink);box-shadow:none}.paper-surface .build-mode-card strong{color:var(--ink)}.paper-surface .build-mode-card span{color:var(--ink-2)}.paper-surface .build-mode-card svg{color:var(--doc-accent)}.paper-surface .build-mode-card.active{border-color:var(--doc-accent);background:color-mix(in srgb, var(--doc-accent) 8%, var(--paper))}.paper-surface .hero-summary{border-color:var(--doc-rule);box-shadow:none}.paper-surface .hero-summary strong,.paper-surface .hero-summary span{text-shadow:none}.paper-surface .summary-token-row em{border-color:var(--doc-rule);background:var(--paper-raised);color:var(--ink-2)}.paper-surface .preview-stat-strip span{border-color:var(--doc-rule);box-shadow:none}.paper-surface .species-signal{border-color:var(--doc-rule)}.paper-surface .species-signal>span{background:var(--paper-raised)}.paper-surface .class-icon-stage:before{border-color:var(--doc-rule)}.paper-surface .creator-controls{background:0 0}.paper-surface .attribute-card strong{color:var(--ink)}.paper-surface .source-card{border-color:var(--doc-rule);background:var(--paper-raised)}.paper-surface .source-card strong{color:var(--ink)}.paper-surface .settings-section{border-color:var(--doc-rule);background:0 0}.paper-surface .settings-heading h3{color:var(--ink)}.paper-surface .checkbox-row{border-color:var(--doc-rule);background:var(--paper-raised)}.paper-surface .checkbox-row strong{color:var(--ink)}.paper-surface .qb-name-row label{color:var(--ink-2)}.paper-surface.class-modal{background:var(--paper);border-color:var(--doc-rule)}.paper-surface .class-modal-hero h3{color:var(--ink)}.paper-surface .level-row{border-color:var(--doc-rule);background:var(--paper-raised)}.paper-surface .feature-unlock b{color:var(--ink)}.paper-surface .gold-button[disabled]{opacity:.45;cursor:not-allowed}.paper-surface .danger-button{color:var(--doc-accent-deep)}.paper-surface{--soft:var(--ink-2);--ivory-dim:var(--ink-2)}.paper-surface .checkbox-row small,.paper-surface .checkbox-row span,.paper-surface .control-field span{color:var(--ink-2)}.paper-surface .method-row button{color:var(--ink-2);border:1px solid var(--doc-rule);background:0 0}.paper-surface .method-row button.active{color:var(--paper);background:var(--doc-accent);border-color:var(--doc-accent-deep)}.paper-surface .mini-stepper button{border-color:var(--doc-rule);background:var(--paper-raised);color:var(--ink)}.paper-surface .mini-stepper b{color:var(--ink);border-color:var(--doc-rule);background:0 0}.paper-surface .points-chip,.paper-surface .method-row>span,.paper-surface .points-pill{color:var(--doc-accent-deep);border-color:var(--doc-rule);background:var(--paper-raised)}.paper-surface .species-signal{background:var(--paper-raised)}.paper-surface .species-signal strong{color:var(--ink)}.paper-surface .species-signal small{color:var(--ink-2)}.paper-surface .hero-summary{background:var(--paper-raised)}.paper-surface .hero-summary strong{color:var(--ink)}.paper-surface .hero-summary span{color:var(--ink-2);text-shadow:none}.paper-surface .preview-stat-strip span{background:var(--paper-raised);border-color:var(--doc-rule);color:var(--ink-3)}.paper-surface .preview-stat-strip strong{color:var(--ink)}.paper-surface .class-choice[data-class]{border-left:4px solid color-mix(in srgb, var(--class-a,var(--doc-rule)) 60%, var(--paper))}.paper-surface .class-choice .choice-avatar{background:color-mix(in srgb, var(--class-a,var(--doc-accent)) 14%, var(--paper));border-color:color-mix(in srgb, var(--class-a,var(--doc-rule)) 40%, var(--paper));color:color-mix(in srgb, var(--class-a,var(--doc-accent)) 78%, var(--ink))}.paper-surface .class-choice strong{color:var(--ink)}.cs-sheet .cs-class-icon[data-class],.paper-surface .class-icon-stage[data-class],.paper-surface .species-signal[data-species]>span{color:color-mix(in srgb, var(--class-a,var(--doc-accent)) 75%, var(--ink))}.paper-surface .class-symbol,.cs-sheet .class-symbol,.paper-surface .species-symbol,.cs-sheet .species-symbol{filter:none}.vault-avatar span[data-class]:not([data-class=""]){color:color-mix(in srgb, var(--class-a) 72%, var(--parchment))}.paper-surface.dj-dossier,.paper-surface.dj-start{border-radius:6px;width:100%;margin:0}.dj-dossier{grid-template-columns:152px minmax(0,1fr);gap:0;min-height:680px;padding:0;display:grid;overflow:hidden}.dj-rail{border-right:1px solid var(--doc-rule);background:var(--paper-raised);flex-direction:column;gap:3px;padding:24px 12px;display:flex}.dj-rail-label,.dj-eyebrow{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;color:var(--doc-accent);font-size:.68rem}.dj-rail-step{width:100%;min-height:34px;color:var(--ink-3);font:600 .82rem/1.1 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;border-radius:0;grid-template-columns:22px 1fr;align-items:center;gap:6px;padding:6px 8px;display:grid}.dj-rail-step.complete{color:color-mix(in srgb, #4f7d33 70%, var(--ink))}.dj-rail-step.active{border-left-color:var(--doc-accent);color:var(--doc-accent-deep);background:color-mix(in srgb, var(--doc-accent) 8%, transparent)}.dj-document{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;padding:26px clamp(18px,3vw,34px) 22px;display:grid}.dj-document-header{border-bottom:1px solid var(--doc-rule);gap:8px;padding-bottom:18px;display:grid}.dj-document-header h2{color:var(--ink);font-family:var(--font-display);letter-spacing:0;margin:0;font-size:clamp(1.65rem,3vw,2.2rem);font-weight:600;line-height:1.1}.dj-document-header h2 span{color:var(--ink-3);border-bottom:1.5px dotted color-mix(in srgb, var(--ink-3) 75%, transparent)}.dj-document-header p{color:var(--ink-2);margin:0;font-size:.93rem}.dj-header-slot{color:var(--ink-3);border-bottom:1.5px dotted color-mix(in srgb, var(--ink-3) 75%, transparent)}.dj-header-value{color:var(--ink-2)}.dj-section{align-content:start;gap:14px;min-width:0;padding-top:18px;display:grid}.dj-option-stack,.dj-setup,.dj-attribute-builder{gap:14px;display:grid}.dj-portrait-section{gap:10px;display:grid}.dj-portrait-toggle{cursor:pointer;background:0 0;border:0;border-radius:0;justify-self:start;padding:0}.dj-portrait-toggle:focus-visible{outline:2px solid var(--doc-accent);outline-offset:2px;border-radius:18px}.dj-card-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;min-width:0;display:grid}.dj-card-grid.compact{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.dj-card{border:1px solid var(--doc-rule);background:var(--paper-raised);min-width:0;min-height:108px;color:var(--ink);box-shadow:none;text-align:left;border-top:0;border-radius:0;align-content:start;gap:8px;padding:13px 12px 12px;transition:border-color .16s,transform .16s,background .16s;display:grid;position:relative}button.dj-card{cursor:pointer}.dj-card.active{border:2px solid var(--doc-accent);background:color-mix(in srgb, var(--doc-accent) 5%, var(--paper-raised));border-top:0;transform:translateY(-4px)}.dj-card-tab{background:var(--doc-accent);height:5px;position:absolute;top:0;left:-1px;right:-1px}.dj-card[data-class] .dj-card-tab,.dj-card[data-species] .dj-card-tab{background:color-mix(in srgb, var(--class-a,var(--doc-accent)) 60%, var(--paper))}.dj-card-select{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:0;position:absolute;inset:0}.dj-card-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.dj-card strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;line-height:1.2;overflow:hidden}.dj-card small,.dj-card>span{color:var(--ink-3);font-size:.74rem;line-height:1.35}.dj-card em,.dj-stamp-row em{border:1px solid color-mix(in srgb, var(--doc-accent) 55%, var(--paper));color:var(--doc-accent-deep);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;background:0 0;border-radius:999px;justify-self:end;padding:2px 7px;font-size:.64rem;font-style:normal}.dj-card-icon,.dj-stamp-icon,.dj-mode-icon{border:1px solid color-mix(in srgb, var(--class-a,var(--doc-accent)) 32%, var(--paper));width:30px;height:30px;color:color-mix(in srgb, var(--class-a,var(--doc-accent)) 75%, var(--ink));background:color-mix(in srgb, var(--class-a,var(--doc-accent)) 10%, var(--paper));border-radius:2px;place-items:center;display:grid}.dj-card-link{z-index:2;color:var(--doc-accent-deep);font:600 .74rem/1 var(--font-body);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:0;justify-self:start;padding:0;text-decoration:underline;position:relative}.dj-background-card .dj-card-tab,.dj-mode-card .dj-card-tab{background:color-mix(in srgb, var(--doc-accent) 65%, var(--paper))}.dj-stamp-row{--stamp-hue:var(--doc-accent);border:1px solid color-mix(in srgb, var(--stamp-hue) 60%, var(--paper));border-left:4px solid color-mix(in srgb, var(--stamp-hue) 60%, var(--paper));background:var(--paper-raised);border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.dj-stamp-row[data-class],.dj-stamp-row[data-species]{--stamp-hue:var(--class-a)}.dj-stamp-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.91rem;font-weight:600;display:block;overflow:hidden}.dj-stamp-row small{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;display:block;overflow:hidden}.dj-stamp-seal{border:1px solid var(--doc-rule);width:30px;height:30px;color:var(--doc-accent-deep);background:color-mix(in srgb, var(--doc-accent) 8%, var(--paper));font-family:var(--font-label);letter-spacing:.06em;border-radius:2px;place-items:center;font-size:.68rem;display:grid}.dj-name-field{gap:5px;display:grid}.dj-name-field span,.dj-qb-name label>span{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;color:var(--doc-accent);font-size:.68rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dj-name-field input,.dj-qb-name .qb-name-input{border:0;border-bottom:1px solid var(--doc-rule);width:100%;color:var(--ink);font-family:var(--font-display);letter-spacing:0;background:0 0;border-radius:0;outline:none;padding:8px 0 10px;font-size:clamp(1.45rem,3vw,2rem)}.dj-name-field input:focus,.dj-qb-name .qb-name-input:focus{border-bottom-color:var(--doc-accent)}.dj-name-field input::placeholder,.dj-qb-name .qb-name-input::placeholder{color:color-mix(in srgb, var(--ink,#2a2018) 42%, var(--paper,#e9dfc8));opacity:1}.dj-settings-panel .settings-panel,.dj-notes-grid{gap:10px;display:grid}.dj-settings-panel .settings-section,.dj-settings-panel .checkbox-row,.dj-settings-panel .control-field input,.dj-settings-panel .control-field select,.dj-settings-panel .control-field textarea,.dj-notes-grid .control-field textarea,.dj-attribute-builder .attribute-card,.dj-attribute-builder .attribute-card select,.dj-attribute-builder .mini-stepper button,.dj-attribute-builder .mini-stepper b,.dj-attribute-builder .method-row button,.dj-attribute-builder .points-pill,.dj-manual-stat,.dj-footer .glass-button,.dj-footer .gold-button,.dj-qb-name .qb-name-input,.dj-start .qb-cancel{border-radius:0}.dj-manual-stat{border:1px solid var(--doc-rule);background:var(--paper);width:100%;color:var(--ink);font-family:var(--font-body);text-align:center;border-radius:0;outline:none;padding:6px 8px;font-size:1.1rem}.dj-manual-stat:focus{border-color:var(--doc-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--doc-accent) 28%, transparent)}.dj-settings-panel .settings-section{padding:12px}.dj-settings-panel .checkbox-row{padding:9px 10px}.dj-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dj-notes-grid .wide{grid-column:1/-1}.dj-stat-strip{border:1px solid var(--doc-rule);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.dj-stat-strip span{border-right:1px solid var(--doc-rule);color:var(--ink-3);font-family:var(--font-label);letter-spacing:.08em;text-align:center;text-transform:uppercase;gap:2px;padding:7px 6px;font-size:.65rem;display:grid}.dj-stat-strip span:last-child{border-right:0}.dj-stat-strip strong{color:var(--ink);font-family:var(--font-body);letter-spacing:0;font-size:1rem}.dj-finalize{color:var(--ink-2);gap:10px}.dj-finalize h3{color:var(--ink);font-family:var(--font-display);letter-spacing:0;margin:0;font-size:1.8rem}.dj-finalize .final-loadout span{border-color:var(--doc-rule);color:var(--ink-2);background:0 0;border-radius:999px}.dj-start{gap:18px;padding:26px clamp(18px,3vw,34px);display:grid}.dj-mode-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.dj-mode-card{min-height:150px}.dj-mode-card .dj-mode-icon{width:38px;height:38px}.dj-qb-name{margin-top:14px}.dj-footer{border-top:1px solid var(--doc-rule);justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;padding-top:14px;display:flex}.dj-footer .glass-button,.dj-footer .gold-button,.dj-start .qb-cancel{min-height:36px;padding:8px 12px}.dj-start .qb-cancel{justify-self:start}.dj-dossier .species-grid,.dj-quickbuilder .species-grid{max-height:520px}@media (max-width:700px){.dj-dossier{grid-template-columns:1fr}.dj-rail{border-right:0;border-bottom:1px solid var(--doc-rule);flex-direction:row;gap:6px;padding:10px 12px;overflow-x:auto}.dj-rail-label{display:none}.dj-rail-step{border-bottom:2px solid #0000;border-left:0;grid-template-columns:auto 1fr;min-width:max-content}.dj-rail-step.active{border-bottom-color:var(--doc-accent)}.dj-document{padding-inline:14px}.dj-card-grid,.dj-card-grid.compact,.dj-notes-grid,.dj-stat-strip{grid-template-columns:1fr}.dj-stat-strip span{border-right:0;border-bottom:1px solid var(--doc-rule);text-align:left;grid-template-columns:1fr auto}.dj-stat-strip span:last-child{border-bottom:0}.dj-footer{flex-direction:column-reverse;align-items:stretch}}.cs-effect-list{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.cs-effect-row{border:1px solid var(--rule-soft);opacity:.62;align-items:center;gap:8px;padding:5px 6px;display:flex}.cs-effect-row.cs-effect-on{opacity:1;border-color:color-mix(in srgb, var(--accent) 45%, var(--rule-soft));background:color-mix(in srgb, var(--accent) 6%, transparent)}.cs-effect-text{flex-direction:column;flex:1;min-width:0;display:flex}.cs-effect-text strong{color:var(--parchment);font-size:.88em}.cs-effect-text span{color:var(--ink-faint);overflow-wrap:anywhere;font-size:.7em}.cs-effect-del{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:1em}.cs-effect-del:hover{color:var(--accent)}.cs-muted+.cs-effect-add{margin-top:var(--sp-4)}.cs-effect-add select{appearance:none;width:100%;font:inherit;font-size:var(--ts-3);padding:var(--sp-3) var(--sp-6) var(--sp-3) var(--sp-4);border:var(--rule-w) solid var(--rule-soft);border-radius:var(--r-1);background-color:#0000;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-size:5px 5px,5px 5px;background-position:right var(--sp-4) center, right calc(var(--sp-4) + 5px) center;color:var(--parchment-2);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);background-repeat:no-repeat}.cs-effect-add select:hover{border-color:var(--rule);color:var(--parchment)}.cs-effect-add select:focus-visible{outline:2px solid var(--select);outline-offset:1px;border-color:var(--select)}.cs-effect-add select option{background:var(--ground-3);color:var(--parchment)}.cs-effect-form{flex-direction:column;gap:7px;margin-top:8px;display:flex}.cs-effect-form .qb-name-input{font-size:.85em}.cs-effect-nums{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.cs-effect-nums label,.cs-effect-extra label{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);flex-direction:column;gap:2px;font-size:.62em;display:flex}.cs-effect-nums input,.cs-effect-extra input{font:inherit;text-transform:none;letter-spacing:normal;border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment);min-width:0;padding:4px 6px;font-size:1.15em}.cs-effect-extra{grid-template-columns:1fr 2fr;gap:5px;display:grid}.cs-effect-form-actions{gap:6px;display:flex}.cs-inv-form{flex-direction:column;gap:7px;margin-top:8px;display:flex}.cs-inv-form input,.cs-inv-form select{font-family:var(--font-body);border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment);padding:6px 10px;font-size:.85em}.cs-inv-form input:focus,.cs-inv-form select:focus{outline:2px solid var(--select);border-color:var(--select)}.cs-inv-form-actions{gap:6px;display:flex}.cs-inv-form-kind{gap:var(--sp-2);flex-wrap:wrap;display:flex}.cs-inv-form-kind button{min-width:72px;min-height:34px;padding:var(--sp-2) var(--sp-4);border:var(--rule-w) solid var(--rule-soft);border-radius:var(--r-1);color:var(--ink-faint);font-family:var(--font-label);font-size:var(--ts-2);font-weight:var(--fw-medium);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease);background:0 0;flex:1 1 0}.cs-inv-form-kind button:hover{border-color:var(--rule);color:var(--parchment)}.cs-inv-form-kind button:focus-visible{outline:2px solid var(--select);outline-offset:1px}.cs-inv-form-kind button.is-on{border-color:var(--rule);background:var(--sheet-row-surface-hover,color-mix(in srgb, var(--paper) 84%, var(--ink)));color:var(--parchment);font-weight:var(--fw-strong)}.cs-inv-form-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.cs-inv-form-grid label{gap:var(--sp-1);min-width:0;display:grid}.cs-inv-form-grid label>span{font-family:var(--font-label);font-size:var(--ts-2);color:var(--ink-faint)}.cs-inv-form-toggles{gap:var(--sp-5);flex-wrap:wrap;display:flex}.cs-inv-form-toggles label{align-items:center;gap:var(--sp-2);font-size:var(--ts-3);color:var(--parchment-2);cursor:pointer;display:flex}.cs-ac-breakdown{max-width:320px}.cs-ac-breakdown-list{flex-direction:column;margin-top:8px;display:flex}.cs-ac-breakdown-row{border-bottom:1px solid var(--rule-soft);color:var(--parchment-2);justify-content:space-between;gap:12px;padding:5px 2px;font-size:.9em;display:flex}.cs-ac-breakdown-row strong{color:var(--parchment);font-variant-numeric:tabular-nums}.cs-rule-remove{border:1px solid var(--rule-soft);width:18px;height:18px;color:var(--parchment-3);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;padding:0;display:inline-flex}.cs-rule-remove:hover{border-color:var(--danger,#c0534a);color:var(--danger,#c0534a);background:color-mix(in srgb, var(--danger,#c0534a) 12%, transparent)}.cs-feat-manager-fork{gap:8px;margin-bottom:10px;display:flex}.cs-feat-manager-fork-option{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);color:var(--parchment-2);cursor:pointer;flex:1;padding:8px 10px;font-size:.9em}.cs-feat-manager-fork-option.is-selected{border-color:var(--select);color:var(--parchment);background:color-mix(in srgb, var(--select) 14%, var(--ground-3))}.dj-class-training{border-left:4px solid color-mix(in srgb, var(--class-a,var(--doc-accent)) 60%, var(--paper));grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:10px;display:grid}.dj-level-pick,.dj-skill-pick{border:1px solid var(--doc-rule);background:var(--paper-raised);padding:10px 12px}.dj-level-pick{align-content:start;gap:8px;display:grid}.dj-level-pick label{color:var(--ink-2);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;gap:4px;font-size:11px;display:grid}.dj-level-pick select{border:1px solid var(--doc-rule);border-radius:var(--r-sm);background:var(--paper);width:100%;color:var(--ink);font-family:var(--font-label);padding:7px 9px;font-size:13px}.dj-level-pick small{color:var(--ink-2);font-size:12px}.dj-hp-roll-panel{gap:6px;padding-top:2px;display:grid}.dj-hp-roll-panel .glass-button{justify-content:center;width:100%}.dj-hp-roll-status{border:1px solid var(--doc-rule);background:color-mix(in srgb, var(--paper) 82%, var(--doc-accent) 18%);color:var(--ink-2);padding:6px 8px;font-size:12px;line-height:1.3}.dj-hp-roll-status.done{border-color:color-mix(in srgb, var(--doc-accent) 62%, var(--doc-rule));color:var(--ink)}.dj-skill-pick-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dj-skill-count{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--doc-accent);font-size:11px}.dj-skill-count.done{color:color-mix(in srgb, #4f7d33 75%, var(--ink))}.dj-skill-hint{color:var(--ink-2);margin:4px 0 8px;font-size:12.5px}.dj-skill-chips{flex-wrap:wrap;gap:6px;display:flex}.dj-skill-chip{border:1px solid var(--doc-rule);background:var(--paper);color:var(--ink-2);cursor:pointer;border-radius:3px;padding:4px 10px;font-size:12.5px}.dj-skill-chip.picked{border-color:var(--doc-accent);background:color-mix(in srgb, var(--doc-accent) 10%, var(--paper));color:var(--ink)}.dj-skill-chip[disabled]{opacity:.45;cursor:not-allowed}@media (max-width:760px){.dj-class-training,.cs-spellbook-panel{grid-template-columns:1fr}}@media (max-width:480px){.cs-effect-nums{grid-template-columns:repeat(2,1fr)}.cs-effect-extra{grid-template-columns:1fr}}.roll-mode{grid-template-columns:repeat(3,1fr);gap:4px;margin:8px 0 4px;display:grid}.roll-mode-btn{letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 20%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 88%, var(--roll-ink,#e8dcc2) 12%);color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 78%, transparent);border-radius:5px;padding:5px 4px;font-size:.74rem;transition:border-color .12s,background .12s,color .12s}.roll-mode-btn:hover{border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 55%, transparent)}.roll-mode-btn.active{color:color-mix(in srgb, var(--roll-paper,#15110d) 16%, #fff);border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 70%, #fff);background:linear-gradient(145deg, var(--roll-accent,#c9a25a), color-mix(in srgb, var(--roll-accent,#c9a25a) 72%, #000))}.roll-mode-btn.advantage.active{background:linear-gradient(145deg,#4f9d6b,#376e4b);border-color:#80b894}.roll-mode-btn.disadvantage.active{background:linear-gradient(145deg,#b8543f,#813b2c);border-color:#cc8475}.roll-mode-hint{text-align:center;color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 70%, transparent);margin:0 0 4px;font-size:.72rem}.roll-mode-hint strong{color:var(--roll-accent,#c9a25a);text-transform:capitalize}.roll-drawer-tab.armed{border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 74%, #fff)}.roll-tab-dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:5px;display:inline-block}.roll-tab-dot.advantage{background:#4f9d6b;box-shadow:0 0 5px #4f9d6b}.roll-tab-dot.disadvantage{background:#b8543f;box-shadow:0 0 5px #b8543f}.roll-history-badge{letter-spacing:.06em;vertical-align:middle;color:#fff;border-radius:3px;margin-left:6px;padding:0 5px;font-size:.62rem;font-style:normal}.roll-history-badge.advantage{background:#418158}.roll-history-badge.disadvantage{background:#974534}.roll-history-dice{gap:5px;margin:2px 0 1px;display:flex}.roll-history-die{text-align:center;font-variant-numeric:tabular-nums;border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 18%, transparent);border-radius:4px;min-width:22px;padding:1px 4px;font-size:.78rem}.roll-history-die.kept{color:color-mix(in srgb, var(--roll-paper,#15110d) 20%, #fff);border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 65%, #fff);background:color-mix(in srgb, var(--roll-accent,#c9a25a) 30%, var(--roll-paper,#15110d));font-weight:700}.roll-history-die.dropped{color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 45%, transparent);opacity:.7;text-decoration:line-through}.flying-die.dropped .die-roll-label-total{color:#fff4da9e}.flying-die.dropped .die-roll-label-detail{color:#fff4da80;text-decoration:line-through}.cs-skill-source-chips{vertical-align:middle;gap:4px;margin-left:6px;display:inline-flex}.cs-skill-source-chip{border-radius:3px;align-items:center;padding:0 4px;font-size:.58rem;font-weight:700;line-height:1.4;display:inline-flex}.cs-skill-source-chip.background{color:var(--gold);background:color-mix(in srgb, var(--gold) 14%, transparent);border:1px solid color-mix(in srgb, var(--gold) 28%, transparent)}.cs-skill-source-chip.trained{color:var(--accent,var(--gold));background:color-mix(in srgb, var(--accent,var(--gold)) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent,var(--gold)) 26%, transparent)}.cs-skill-source-chip.expertise{color:var(--select);background:color-mix(in srgb, var(--select) 18%, transparent);border:1px solid color-mix(in srgb, var(--select) 36%, transparent)}.dj-background-skills{margin:8px 0 4px}.dj-background-skills .dj-eyebrow{margin-bottom:6px;display:block}.fumble-banner{pointer-events:none;z-index:10000;position:fixed;inset:0}.fumble-banner:before{content:"";animation:2.6s forwards crit-bg-pulse;animation-delay:var(--crit-delay,0s);opacity:0;background:radial-gradient(#503c3247 0%,#0000 70%);position:absolute;inset:0}.fumble-text{color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;animation:2.6s cubic-bezier(.22,1,.36,1) forwards crit-flash;animation-delay:var(--crit-delay,0s);opacity:0;-webkit-text-stroke:3px var(--ground-3);text-shadow:0 0 3px #00000073,0 3px 10px #00000073;paint-order:stroke fill;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,6vw,4.5rem);font-weight:900;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.roll-history-badge.nat{letter-spacing:.06em;vertical-align:middle;color:#fff;border-radius:3px;margin-left:6px;padding:0 5px;font-size:.62rem;font-style:normal}.roll-history-badge.nat.crit{background:#a5854a}.roll-history-badge.nat.fumble{background:#7f584d}.cs-feat-ability-choice{margin-top:14px}.cs-feat-ability-choice .cs-section-eyebrow{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.78rem;display:block}.cs-feat-ability-options{flex-wrap:wrap;gap:8px;display:flex}.cs-feat-ability-options .cs-lvl-subcard.compact{text-align:center;flex:auto;min-width:60px;padding:8px 12px;font-size:.82rem}@media (prefers-reduced-motion:reduce){.fumble-banner:before,.fumble-text{animation:none}}.cs-item-result [data-rarity=Common i],.cs-item-catalog-controls option[data-rarity=Common i],.cs-inv-row [data-rarity=Common i],.cs-inv-meta [data-rarity=Common i],.cs-equipment-option [data-rarity=Common i]{color:color-mix(in srgb, #cbd5e1 58%, var(--ink,var(--parchment)))}.cs-item-result [data-rarity=Uncommon i],.cs-item-catalog-controls option[data-rarity=Uncommon i],.cs-inv-row [data-rarity=Uncommon i],.cs-inv-meta [data-rarity=Uncommon i],.cs-equipment-option [data-rarity=Uncommon i]{color:color-mix(in srgb, #2e9e5b 58%, var(--ink,var(--parchment)))}.cs-item-result [data-rarity=Rare i],.cs-item-catalog-controls option[data-rarity=Rare i],.cs-inv-row [data-rarity=Rare i],.cs-inv-meta [data-rarity=Rare i],.cs-equipment-option [data-rarity=Rare i]{color:color-mix(in srgb, #3b82f6 58%, var(--ink,var(--parchment)))}.cs-item-result [data-rarity=Very\ Rare i],.cs-item-catalog-controls option[data-rarity=Very\ Rare i],.cs-inv-row [data-rarity=Very\ Rare i],.cs-inv-meta [data-rarity=Very\ Rare i],.cs-equipment-option [data-rarity=Very\ Rare i]{color:color-mix(in srgb, #a855f7 58%, var(--ink,var(--parchment)))}.cs-item-result [data-rarity=Legendary i],.cs-item-catalog-controls option[data-rarity=Legendary i],.cs-inv-row [data-rarity=Legendary i],.cs-inv-meta [data-rarity=Legendary i],.cs-equipment-option [data-rarity=Legendary i]{color:color-mix(in srgb, #ff7a1a 58%, var(--ink,var(--parchment)))}.cs-item-result [data-rarity]{font-style:normal}.dj-family-chevron{color:var(--ink-3);position:absolute;top:12px;right:12px}.species-family-modal .species-family-list{gap:8px;display:grid}.species-family-row summary{cursor:pointer;align-items:center;gap:10px;list-style:none;display:flex}.species-family-row summary::-webkit-details-marker{display:none}.species-family-row-icon{flex-shrink:0;place-items:center;display:grid}.species-family-row-name{min-width:0;color:var(--ink);flex:auto;align-items:center;gap:8px;font-weight:600;display:flex}.species-family-row-name em{background:var(--doc-accent);color:var(--paper);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:1px 6px;font-size:.6rem;font-style:normal}.species-family-row summary small{color:var(--ink-3);white-space:nowrap;font-size:.72rem}.species-family-row summary svg{color:var(--ink-3);flex-shrink:0;transition:transform .15s}.species-family-row[open] summary svg{transform:rotate(90deg)}.species-family-pick{justify-content:center;width:100%;margin-top:8px}.cs-currency-panel{border-bottom:1px solid var(--rule-soft);gap:6px;margin-bottom:10px;padding-bottom:10px;display:grid}.cs-currency-row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.cs-currency-field{text-align:center;gap:2px;display:grid}.cs-currency-field span{font-family:var(--font-label);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;font-size:.62rem}.cs-currency-field input{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--paper);width:100%;min-width:0;color:var(--ink);text-align:center;font-family:var(--font-body);padding:4px 2px;font-size:.8em}.cs-page-tabs{border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;gap:2px;margin-bottom:10px;display:flex}.cs-page-tab{font-family:var(--font-label);color:var(--ink-faint);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-bottom:2px solid #0000;max-width:140px;padding:6px 9px;font-size:.8em;overflow:hidden}.cs-page-tab:hover{color:var(--parchment)}.cs-page-tab.is-active{color:var(--parchment);border-bottom-color:var(--select)}.cs-page-tab.cs-page-add{color:var(--accent);font-weight:600}.cs-page-body{gap:10px;display:grid}.cs-page-header{align-items:center;gap:8px;display:flex}.cs-page-title-input{min-width:0;color:var(--parchment);font-family:var(--font-display);background:0 0;border:0;border-bottom:1px solid #0000;flex:auto;padding:2px 0;font-size:1.1em}.cs-page-title-input:focus{border-bottom-color:var(--rule-soft);outline:none}.cs-page-blocks{gap:10px;display:grid}.cs-page-block{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--ground-3);padding:8px 28px 8px 8px;position:relative}.cs-page-text-block{width:100%;min-height:90px;color:var(--parchment-2);font-family:var(--font-body);resize:vertical;background:0 0;border:0;font-size:.85em;line-height:1.5}.cs-page-text-block:focus{outline:none}.cs-page-image-block{gap:6px;display:grid}.cs-page-image-block img{border:1px solid var(--rule-soft);border-radius:var(--r-sm);max-width:100%}.cs-page-caption{color:var(--ink-3);font-size:.72em}.cs-page-image-block input{border:1px solid var(--rule-soft);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);font-family:var(--font-body);padding:5px 7px;font-size:.78em}.cs-page-block-del{width:20px;height:20px;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:1em;line-height:1;position:absolute;top:6px;right:6px}.cs-page-block-del:hover{color:var(--parchment)}.cs-page-add-controls{gap:8px;display:flex}.roll-drawer-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.roll-drawer-tabs button{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 18%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 86%, var(--roll-ink,#e8dcc2) 10%);color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 72%, transparent);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.07em;cursor:pointer;border-radius:8px;padding:7px 8px;font-size:.68rem}.roll-drawer-tabs button.active{border-color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 30%, transparent);background:color-mix(in srgb, var(--roll-ink,#e8dcc2) 10%, var(--roll-paper,#15110d));color:var(--roll-ink,#e8dcc2)}.roll-history-header,.initiative-controls{justify-content:space-between;align-items:center;gap:8px;display:flex}.roll-clear-btn{padding:4px 8px;font-size:.68rem}.initiative-panel{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.initiative-shared-banner{border:1px solid color-mix(in srgb, var(--roll-accent,#c9a25a) 44%, transparent);background:color-mix(in srgb, var(--roll-accent,#c9a25a) 14%, var(--roll-paper,#15110d));color:var(--roll-ink,#e8dcc2);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.7rem;display:flex}.initiative-shared-banner span{background:color-mix(in srgb, var(--roll-accent,#c9a25a) 82%, #fff 6%);color:color-mix(in srgb, var(--roll-paper,#15110d) 86%, #000);border-radius:999px;padding:2px 7px;font-weight:800}.initiative-add-row{grid-template-columns:minmax(0,1fr) 72px auto;gap:6px;display:grid}.initiative-add-row input{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 18%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 86%, var(--roll-ink,#e8dcc2) 10%);min-width:0;color:var(--roll-ink,#e8dcc2);font-family:var(--roll-font,var(--font-body));border-radius:8px;padding:7px 8px}.initiative-add-row .gold-button,.initiative-controls .gold-button,.initiative-roll-current{min-height:34px;padding:7px 10px;font-size:.72rem}.initiative-roll-current{justify-content:center;width:100%}.initiative-controls strong{color:var(--roll-accent,#c9a25a);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.07em;flex:none;font-size:.72rem}.initiative-controls .glass-button{align-items:center;gap:5px;padding:7px 9px;font-size:.68rem;display:inline-flex}.initiative-list{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.initiative-row{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 13%, transparent);background:color-mix(in srgb, var(--roll-paper,#15110d) 88%, var(--roll-ink,#e8dcc2) 12%);border-radius:8px;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:8px;padding:8px 9px;display:grid}.initiative-row.active{border-color:color-mix(in srgb, var(--roll-accent,#c9a25a) 72%, #fff 8%);background:linear-gradient(90deg, color-mix(in srgb, var(--roll-accent,#c9a25a) 24%, transparent), transparent 62%), color-mix(in srgb, var(--roll-paper,#15110d) 88%, var(--roll-ink,#e8dcc2) 12%)}.initiative-row span{align-items:baseline;gap:6px;min-width:0;display:flex}.initiative-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.initiative-row em{color:var(--roll-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.07em;font-size:.58rem;font-style:normal}.initiative-row b{color:var(--roll-accent,#c9a25a);font-size:1rem}.initiative-row button{border:1px solid color-mix(in srgb, var(--roll-ink,#e8dcc2) 16%, transparent);width:24px;height:24px;color:color-mix(in srgb, var(--roll-ink,#e8dcc2) 72%, transparent);cursor:pointer;background:0 0;border-radius:7px;place-items:center;display:grid}.initiative-row button:hover{border-color:var(--roll-accent,#c9a25a);color:var(--roll-ink,#e8dcc2)}.cs-tour-card{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--rule));border-left:4px solid var(--accent);border-radius:var(--r-sm);background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 14%, transparent), transparent 66%), var(--paper-raised);color:var(--ink);justify-content:space-between;align-items:flex-start;gap:14px;margin:0 16px 12px;padding:14px 18px;animation:.5s ease-out both cs-tour-enter;display:flex;box-shadow:0 4px 18px #00000047}@keyframes cs-tour-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cs-tour-card{animation:none}}.cs-tour-card p{color:var(--ink-2);margin:3px 0;font-size:.82em;line-height:1.35}.cs-tour-card .cs-section-eyebrow{margin-bottom:4px;display:block}.cs-tour-card .cs-glass-btn{flex:none}.import-modal{border:1px solid color-mix(in srgb, var(--doc-accent) 34%, var(--doc-rule));background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--doc-accent) 16%, transparent), transparent 40%), radial-gradient(circle at 86% 18%, color-mix(in srgb, var(--ink) 8%, transparent), transparent 36%), var(--paper);width:min(640px,100%);max-height:min(860px,100dvh - 40px);color:var(--ink);font-family:var(--font-body);border-radius:24px;gap:18px;padding:22px;display:grid;position:relative;overflow:auto;box-shadow:0 24px 76px #00000094}.import-modal-header{justify-content:space-between;align-items:center;padding-right:54px;display:flex}.import-modal-header h2{color:var(--ink);font-family:var(--font-display);align-items:center;margin:0;font-size:1.6rem;display:flex}.import-modal .modal-close{position:absolute;top:18px;right:18px}.import-upload-area{gap:14px;display:grid}.import-dropzone{border:2px dashed var(--doc-rule);background:var(--paper-raised);cursor:pointer;text-align:center;border-radius:16px;place-items:center;padding:48px 24px;transition:border-color .2s,background .2s;display:grid}.import-dropzone:hover,.import-dropzone-active{border-color:var(--doc-accent);background:color-mix(in srgb, var(--doc-accent) 6%, var(--paper-raised))}.import-dropzone p{color:var(--ink-2)}.import-file-info{border:1px solid var(--doc-rule);color:var(--ink);background:var(--paper-raised);border-radius:10px;align-items:center;gap:8px;padding:10px 14px;display:flex}.import-error-banner{border:1px solid var(--doc-accent);color:var(--doc-accent-deep);background:color-mix(in srgb, var(--doc-accent) 12%, var(--paper));border-radius:10px;padding:10px 14px;font-size:.88rem}.import-busy{color:var(--ink-2);justify-content:center;align-items:center;gap:10px;padding:24px;font-size:.95rem;display:flex}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.import-summary{border:1px solid var(--doc-rule);background:var(--paper-raised);border-radius:12px;padding:12px 14px}.import-summary strong{color:var(--doc-accent-deep);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.import-summary p{color:var(--ink-2);font-size:.92rem}.import-section{gap:8px;display:grid}.import-section h3{border-bottom:1px solid var(--doc-rule-soft);color:var(--doc-accent);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.08em;margin:0;padding-bottom:6px;font-size:.72rem}.import-field-row{border:1px solid var(--doc-rule-soft);border-radius:8px;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;padding:6px 8px;font-size:.88rem;display:grid}.import-field-label{color:var(--ink-3);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.72rem}.import-field-value{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.import-field-input{border:1px solid var(--doc-rule-soft);background:color-mix(in srgb, var(--paper) 82%, white 18%);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:6px;padding:6px 8px;font-weight:650}.import-field-input:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 28%, transparent);outline-offset:1px}.import-val-missing{color:var(--ink-3);font-style:italic;font-weight:400}.import-val-review{color:var(--ink-2)}.import-field-note{color:var(--ink-3);grid-column:1/-1;font-size:.72rem;font-style:italic}.import-conf-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:3px;padding:2px 6px;font-size:.68rem;font-weight:700;display:inline-flex}.import-conf-confirmed{color:#2e7d32;background:#2e7d3224;border:1px solid #2e7d3261}.import-conf-review{color:#e6a817;background:#e6a81724;border:1px solid #e6a81761}.import-conf-missing{color:var(--ink-3);border:1px solid var(--doc-rule-soft);background:0 0}.import-spell-list{flex-wrap:wrap;gap:6px;display:flex}.import-spell-chip{border:1px solid var(--doc-rule-soft);color:var(--ink-2);background:var(--paper-raised);border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:.78rem;display:inline-flex}.import-warning{color:#8a6d14;background:color-mix(in srgb, #e6a817 10%, var(--paper));border:1px solid #e6a817;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;display:flex}.import-actions{border-top:1px solid var(--doc-rule);justify-content:space-between;gap:10px;padding-top:8px;display:flex}.import-resolver{gap:18px;display:grid}.import-resolution-row{border:1px solid var(--doc-rule-soft);background:color-mix(in srgb, var(--paper-raised) 72%, transparent);border-radius:10px;grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);align-items:center;gap:12px;padding:10px;display:grid}.import-resolution-row>label{gap:2px;min-width:0;display:grid}.import-resolution-row>label strong{overflow-wrap:anywhere;color:var(--ink);font-family:var(--font-label);font-size:.86rem}.import-resolution-row>label span{color:var(--ink-3);font-size:.72rem}.import-ability-resolution{border:1px solid var(--doc-rule-soft);border-radius:10px;gap:8px;min-width:0;margin:0;padding:12px;display:grid}.import-ability-resolution legend{color:var(--ink-2);font-family:var(--font-label);padding:0 5px;font-size:.78rem}.import-warning ul{margin:5px 0 0;padding-left:18px}.import-success{text-align:center;place-items:center;gap:12px;padding:32px 16px;display:grid}.import-success h3{color:var(--ink);font-family:var(--font-display);font-size:1.4rem}.import-success p{color:var(--ink-2)}@media (max-width:600px){.import-modal{border-radius:16px;width:100%;max-height:100dvh;padding:18px 14px}.import-modal-header h2{font-size:1.3rem}.import-field-row,.import-resolution-row{grid-template-columns:minmax(0,1fr) auto}.import-field-input,.import-resolution-row>.import-field-input{grid-column:1/-1;min-height:44px}.import-resolution-row>label{grid-column:1/-1}.import-actions{flex-direction:column-reverse;align-items:stretch}.import-actions>button{width:100%;min-height:44px}}.cs-effect-advmode{font-family:var(--font-label);letter-spacing:.03em;border-radius:999px;align-self:flex-start;margin:2px 0;padding:0 5px;font-size:.58em;font-weight:700;display:inline-block}.cs-effect-advmode.advantage{color:#2e9e5b;background:#2e9e5b40}.cs-effect-advmode.disadvantage{color:#e2543a;background:#e2543a40}.cs-effect-stack{font-family:var(--font-label);align-items:center;gap:4px;font-size:.7em;display:flex}.cs-effect-stack button{border:1px solid var(--rule-soft);border-radius:var(--r-sm);width:18px;height:18px;color:var(--parchment-2);cursor:pointer;background:0 0;place-items:center;padding:0;display:grid}.cs-effect-stack button:hover:not(:disabled){background:color-mix(in srgb, var(--parchment-2) 15%, transparent);color:var(--parchment)}.cs-effect-stack button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cs-effect-stack button:disabled{opacity:.4;cursor:default}.cs-readonly-banner{border-bottom:1px solid var(--rule-soft);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--ink-2);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;text-align:center;padding:10px 16px;font-size:.72rem}.cs-readonly-banner strong{color:var(--accent)}.cs-pending-banner{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--ink);flex-wrap:wrap;display:flex}.cs-pending-copy{gap:var(--sp-1);flex-direction:column;min-width:0;display:flex}.cs-pending-title{font-family:var(--font-label);font-size:var(--ts-1);font-weight:var(--fw-strong);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.cs-pending-list{font-size:var(--ts-3);color:var(--ink)}.cs-pending-hint{font-size:var(--ts-2);color:var(--ink-2)}.cs-advisory-banner{background:color-mix(in srgb, var(--accent) 4%, transparent)}.cs-advisory-banner .cs-pending-list{color:var(--ink-2)}.cs-subclass-picker-row{gap:var(--sp-2);padding:var(--sp-3) 0;flex-direction:column;display:flex}.cs-subclass-picker-row label{gap:var(--sp-1);color:var(--ink);flex-direction:column;display:flex}.cs-subclass-picker-row label span{font-size:var(--ts-2);color:var(--ink-2)}.cs-glass-select{font-size:var(--ts-4);color:var(--ink);background:var(--paper-raised,var(--paper));border:var(--rule-w) solid var(--doc-rule,var(--border-default));border-radius:var(--r-1);padding:var(--sp-2) var(--sp-3)}[data-readonly] .cs-sheet-tools{display:none}[data-readonly] button:not(.cs-section-header):not(.cs-reftab):not([aria-label*=Close]),[data-readonly] .cs-prof-click,[data-readonly] .cs-death-dot,[data-readonly] .cs-slot-pip,[data-readonly] .cs-effect-del,[data-readonly] .cs-inv-del,[data-readonly] input,[data-readonly] select,[data-readonly] textarea{pointer-events:none}.campaign-panel{border:1px solid var(--rule);background:var(--ground);width:min(880px,100%);max-height:min(760px,100dvh - 40px);color:var(--parchment);font-family:var(--font-body);border-radius:20px;grid-template-rows:auto minmax(0,1fr);gap:16px;padding:20px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 76px #00000094}.campaign-header{justify-content:space-between;align-items:center;padding-right:54px;display:flex}.campaign-header h2{color:var(--parchment);font-family:var(--font-display);align-items:center;margin:0;font-size:1.4rem;display:flex}.campaign-body{align-content:start;gap:14px;display:grid;overflow-y:auto}.campaign-actions-bar{flex-wrap:wrap;gap:8px;display:flex}.campaign-list{gap:8px;display:grid}.campaign-card{border:1px solid var(--rule-soft);background:var(--ground-2);color:var(--parchment);text-align:left;cursor:pointer;border-radius:12px;gap:6px;padding:12px 14px;display:grid}.campaign-card:hover{border-color:var(--campaign-accent,var(--accent))}.campaign-card-main{justify-content:space-between;align-items:center;display:flex}.campaign-card-main strong{color:var(--parchment)}.campaign-card-main small{color:var(--muted)}.campaign-code-badge{border:1px solid var(--rule-soft);font-family:var(--font-mono);color:var(--campaign-accent,var(--accent));border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;display:inline-flex}.campaign-code-button{cursor:pointer;background:0 0;margin-top:6px}.campaign-form{gap:14px;display:grid}.campaign-theme-picker{border:0;min-width:0;margin:0;padding:0}.campaign-theme-picker legend{color:var(--muted);font-family:var(--font-label);letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem}.campaign-theme-helper{color:var(--cp-text-3,var(--muted));margin-bottom:10px;font-size:.78rem;line-height:1.35;display:block}.campaign-theme-options{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.campaign-form .campaign-theme-option{border:1px solid var(--cp-hair,var(--rule));background:var(--cp-card,var(--ground-2));min-width:0;color:var(--parchment);cursor:pointer;font-family:var(--font-body);font-size:inherit;letter-spacing:normal;text-transform:none;border-radius:12px;gap:9px;padding:0 0 11px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s;display:grid;position:relative;overflow:hidden}.campaign-form .campaign-theme-option:hover{border-color:var(--cp-hair-strong,var(--campaign-accent,var(--accent)));background:var(--cp-card-hi,var(--ground-2));transform:translateY(-1px)}.campaign-form .campaign-theme-option.is-selected{border-color:var(--doc-accent,var(--campaign-accent,var(--accent)));background:color-mix(in srgb, var(--doc-accent,var(--campaign-accent,var(--accent))) 8%, var(--cp-card,var(--ground-2)));box-shadow:0 0 0 1px color-mix(in srgb, var(--doc-accent,var(--campaign-accent,var(--accent))) 34%, transparent)}.campaign-theme-option input[type=radio]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.campaign-theme-option:has(input:focus-visible){outline:2px solid var(--campaign-accent,var(--accent));outline-offset:2px}.campaign-theme-image{aspect-ratio:16/8;border-bottom:1px solid var(--cp-hair,var(--rule));background-color:var(--ground-2);background-position:50%;background-size:cover;display:block;box-shadow:inset 0 -24px 24px -24px #000000bf}.campaign-theme-copy{gap:4px;padding:0 11px;display:grid}.campaign-theme-copy strong{color:var(--parchment);font-family:var(--font-display);font-size:.88rem;font-weight:700;line-height:1.15}.campaign-theme-copy small{color:var(--muted);font-family:var(--font-body);font-size:.73rem;line-height:1.3}.campaign-form .campaign-theme-option.is-selected:after{border:1px solid color-mix(in srgb, var(--doc-accent,var(--accent)) 72%, white 12%);background:color-mix(in srgb, var(--doc-accent,var(--accent)) 86%, black 14%);width:22px;height:22px;color:var(--paper,white);content:"✓";font-family:var(--font-label);border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;top:9px;right:9px}.campaign-appearance{border:1px solid var(--cp-hair,var(--rule));background:var(--cp-well,var(--ground-2));border-radius:12px;gap:12px;margin-bottom:12px;padding:14px;display:grid}.campaign-appearance-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.campaign-appearance-header h3{color:var(--cp-text,var(--ink));font-family:var(--font-display,Georgia, serif);margin:4px 0 0;font-size:1.05rem}.campaign-appearance-header small{color:var(--cp-text-3,var(--muted));text-align:right;font-size:.74rem}.campaign-appearance-options{grid-template-columns:repeat(3,minmax(0,1fr))}.campaign-appearance .campaign-theme-option{border:1px solid var(--cp-hair,var(--rule));background:var(--cp-card,var(--ground-2));cursor:pointer;border-radius:10px;gap:8px;min-width:0;padding:8px;display:grid;position:relative}.campaign-appearance .campaign-theme-option.is-selected{border-color:var(--doc-accent,var(--accent));box-shadow:0 0 0 1px color-mix(in srgb, var(--doc-accent,var(--accent)) 40%, transparent)}.campaign-appearance-url{color:var(--cp-text-2,var(--muted));font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;gap:5px;font-size:.7rem;display:grid}.campaign-appearance-url input{width:100%}.campaign-form label{font-family:var(--font-label);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;gap:4px;font-size:.72rem;display:grid}.campaign-form input,.campaign-form select,.campaign-dm-tools input,.campaign-dm-tools select{border:1px solid var(--rule);background:var(--ground-2);color:var(--parchment);font-family:var(--font-body);border-radius:8px;padding:8px 12px;font-size:.9rem}.campaign-form-actions{justify-content:flex-end;gap:8px;display:flex}@media (max-width:620px){.campaign-theme-options{grid-template-columns:1fr}.campaign-form .campaign-theme-option{grid-template-columns:96px minmax(0,1fr);align-items:center;padding:8px}.campaign-theme-image{aspect-ratio:16/9;border:0;border-radius:7px}.campaign-theme-copy{padding:0}}.campaign-created{text-align:center;place-items:center;gap:12px;padding:24px;display:grid}.campaign-created h3{color:var(--parchment)}.campaign-code-display{border:1px solid var(--campaign-accent,var(--accent));background:color-mix(in srgb, var(--campaign-accent,var(--accent)) 10%, var(--ground-2));border-radius:10px;align-items:center;gap:10px;padding:10px 16px;display:flex}.campaign-code-display strong{font-family:var(--font-mono);letter-spacing:.12em;color:var(--campaign-accent,var(--accent));font-size:1.4rem}.campaign-info-bar{border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:12px;display:flex}.campaign-info-bar strong{color:var(--parchment);font-size:1.1rem;display:block}.campaign-info-actions{gap:6px;display:flex}.campaign-empty{text-align:center;padding:24px}.campaign-party-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.campaign-party-card{border:1px solid var(--rule-soft);background:color-mix(in srgb, var(--ground-2) 88%, var(--accent) 8%);border-radius:8px;gap:6px;padding:10px;display:grid}.campaign-party-card strong{color:var(--parchment);font-size:.9rem}.campaign-party-card small{color:var(--muted);font-size:.74rem}.campaign-party-stats{flex-wrap:wrap;gap:6px;display:flex}.campaign-party-stats span{border:1px solid var(--rule-soft);color:var(--parchment);font-family:var(--font-mono);border-radius:999px;padding:2px 6px;font-size:.68rem}.campaign-events,.campaign-dm-tools{border:1px solid var(--rule-soft);background:color-mix(in srgb, var(--ground-2) 88%, transparent);border-radius:8px;gap:8px;padding:10px;display:grid}.campaign-events h3,.campaign-dm-tools h3{color:var(--muted);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;margin:0 0 2px;font-size:.7rem;display:flex}.campaign-events-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.campaign-events-header h3{margin:0}.campaign-events-header .glass-button{padding:3px 9px;font-size:.68rem}.campaign-event-card{border:1px solid var(--rule-soft);background:var(--ground);border-radius:8px;gap:6px;padding:8px;display:grid}.campaign-event-card strong{color:var(--parchment);font-size:.84rem}.campaign-event-card small{color:var(--muted);font-size:.7rem}.campaign-event-actions,.campaign-tool-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.campaign-tool-row input{flex:220px;min-width:0}.campaign-tool-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.campaign-tool-grid label{gap:4px;display:grid}.campaign-tool-grid span{color:var(--muted);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.campaign-detail-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.campaign-members h3,.campaign-feed h3{font-family:var(--font-label);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;margin-bottom:8px;font-size:.7rem;display:flex}.campaign-member-row{border:1px solid var(--rule-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.campaign-member-row strong{color:var(--parchment);font-size:.88rem;display:block}.campaign-member-row small{color:var(--muted);font-size:.75rem;display:block}.campaign-feed{min-height:0}.campaign-roll-list{gap:6px;max-height:360px;display:grid;overflow-y:auto}.campaign-roll-row{border:1px solid var(--rule-soft);background:var(--ground-2);border-radius:8px;padding:8px 10px}.campaign-roll-top{justify-content:space-between;align-items:baseline;display:flex}.campaign-roll-top strong{color:var(--parchment);font-size:.82rem}.campaign-roll-total{font-family:var(--font-mono);color:var(--campaign-accent,var(--accent));font-size:1rem;font-weight:700}.campaign-roll-row small{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.campaign-panel .gold-button{background:var(--accent);color:color-mix(in srgb, var(--accent) 10%, #fff 82%, #000 8%);border-color:color-mix(in srgb, var(--accent) 72%, #000 28%)}.campaign-panel .danger-button{color:#fff;background:#c0392b;border-color:#922b21}.campaign-panel .danger-button:hover:not(:disabled){background:#e74c3c}.campaign-panel .dj-btn-primary{background:var(--accent);color:color-mix(in srgb, var(--accent) 10%, #fff 82%, #000 8%);border-color:color-mix(in srgb, var(--accent) 72%, #000 28%)}.campaign-panel .dj-btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 82%, #fff 18%)}.campaign-panel .glass-button{color:color-mix(in srgb, var(--parchment,#e8dcc2) 78%, transparent);border-color:color-mix(in srgb, var(--parchment,#e8dcc2) 22%, transparent)}.campaign-panel .glass-button:hover:not(:disabled){color:var(--parchment);border-color:color-mix(in srgb, var(--parchment,#e8dcc2) 40%, transparent)}@media (max-width:600px){.campaign-detail-grid{grid-template-columns:1fr}}.ff-toast-stack{z-index:240;flex-direction:column;gap:10px;max-width:440px;display:flex;position:fixed;top:100px;left:20px}.ff-toast{border:1px solid color-mix(in srgb, var(--toast-ink,#e8dcc2) 25%, transparent);border-left:5px solid var(--toast-accent,#c9a25a);background:var(--toast-paper,#15110d);min-width:0;color:var(--toast-ink,#e8dcc2);font-family:var(--toast-font,var(--font-body));text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 20px;animation:.22s ease-out ff-toast-in;display:flex;box-shadow:0 10px 32px #00000059}.ff-toast strong,.ff-toast span{overflow-wrap:anywhere;min-width:0;max-width:100%}.ff-toast strong{font-size:1.15rem}.ff-toast span{opacity:.75;font-size:.9rem}.ff-toast-announce{border-left-color:var(--toast-accent,#c9a25a)}.ff-toast-announce strong:before{content:"✦ ";color:var(--toast-accent,#c9a25a)}.ff-toast-turn{background:color-mix(in srgb, var(--toast-accent,#c9a25a) 18%, var(--toast-paper,#15110d))}.ff-toast-turn strong{font-size:1.3rem}@keyframes ff-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ff-toast{animation:none}}.campaign-panel{background:var(--campaign-paper,var(--ground));color:var(--campaign-ink,var(--parchment))}.campaign-panel .glass-button,.campaign-panel .cs-glass-btn{color:var(--campaign-ink,var(--parchment));border-color:color-mix(in srgb, var(--campaign-ink,var(--parchment)) 28%, transparent)}.campaign-panel h2,.campaign-panel h3,.campaign-panel strong{color:var(--campaign-ink,var(--parchment))}.campaign-panel [class*=accent],.campaign-panel .campaign-code{color:var(--campaign-accent,var(--accent))}.campaign-panel{--cp-card:color-mix(in srgb, var(--paper,#ece1c9) 92%, var(--ink,#241c12));--cp-card-hi:color-mix(in srgb, var(--paper,#ece1c9) 85%, var(--ink,#241c12));--cp-well:color-mix(in srgb, var(--paper,#ece1c9) 80%, var(--ink,#241c12));--cp-hair:color-mix(in srgb, var(--ink,#241c12) 15%, var(--paper,#ece1c9));--cp-hair-strong:color-mix(in srgb, var(--ink,#241c12) 30%, var(--paper,#ece1c9));--cp-text-2:color-mix(in srgb, var(--ink,#241c12) 68%, var(--paper,#ece1c9));--cp-text-3:color-mix(in srgb, var(--ink,#241c12) 45%, var(--paper,#ece1c9));font-family:var(--font-body,var(--font-newsreader,Georgia, serif));font-size:calc(.95rem * var(--sheet-scale,1));color:var(--ink,#241c12);background:radial-gradient(120% 80% at 15% 0%, color-mix(in srgb, var(--paper,#ece1c9) 100%, #fff 6%), transparent 60%), linear-gradient(color-mix(in srgb, var(--paper,#ece1c9) 97%, #000), color-mix(in srgb, var(--paper,#ece1c9) 90%, #000));border:1px solid var(--cp-hair-strong);box-shadow:0 1px 0 #ffffff47 inset, 0 0 0 1px color-mix(in srgb, var(--ink,#241c12) 8%, transparent), 0 34px 90px -28px #0000009e, 0 10px 26px -14px #0000006b;border-radius:16px}.campaign-panel:before{content:"";border-radius:inherit;background-image:var(--skin-bg-pattern,none);background-size:var(--skin-bg-size,auto);opacity:var(--skin-bg-opacity,0);pointer-events:none;z-index:0;position:absolute;inset:0}.campaign-panel>*{z-index:1;position:relative}.campaign-panel .campaign-header{border-bottom:1px solid var(--cp-hair);padding-bottom:14px}.campaign-panel .campaign-header h2{color:var(--ink);font-family:var(--font-display,var(--font-body,Georgia, serif));letter-spacing:.01em;font-size:1.5rem;font-weight:700}.campaign-panel .campaign-header h2 svg{color:var(--doc-accent)}.campaign-panel .modal-close{background:color-mix(in srgb, var(--ink,#241c12) 6%, transparent);color:var(--ink,#241c12);border:1px solid var(--cp-hair-strong);top:-4px;right:4px}.campaign-panel .modal-close:hover:not(:disabled){background:color-mix(in srgb, var(--ink,#241c12) 14%, transparent);color:var(--ink,#241c12)}.campaign-panel .campaign-events h3,.campaign-panel .campaign-dm-tools h3,.campaign-panel .campaign-members h3,.campaign-panel .campaign-feed h3{color:var(--cp-text-2);letter-spacing:.12em;border-bottom:1px solid var(--cp-hair);padding-bottom:6px;font-size:.72rem;font-weight:700}.campaign-panel .campaign-events h3 svg,.campaign-panel .campaign-dm-tools h3 svg,.campaign-panel .campaign-members h3 svg,.campaign-panel .campaign-feed h3 svg{color:var(--doc-accent)}.campaign-panel .campaign-events,.campaign-panel .campaign-dm-tools{background:var(--cp-well);border:1px solid var(--cp-hair);border-radius:12px;padding:14px}.campaign-panel .campaign-card,.campaign-panel .campaign-party-card,.campaign-panel .campaign-event-card,.campaign-panel .campaign-roll-row,.campaign-panel .campaign-member-row{background:var(--cp-card);border:1px solid var(--cp-hair);color:var(--ink);border-radius:10px;transition:border-color .16s,transform .16s,box-shadow .16s;box-shadow:0 1px 1px #0000000a}.campaign-panel .campaign-card{cursor:pointer}.campaign-panel .campaign-card:hover{border-color:var(--doc-accent);transform:translateY(-1px);box-shadow:0 8px 22px -12px #00000073}.campaign-panel .campaign-card-main strong{color:var(--ink)}.campaign-panel .campaign-card-main small{color:var(--cp-text-2)}.campaign-panel .campaign-party-card{border-left:3px solid var(--doc-accent)}.campaign-panel .campaign-party-card strong{color:var(--ink)}.campaign-panel .campaign-party-card small{color:var(--cp-text-2)}.campaign-panel .campaign-party-stats span{background:var(--paper,#ece1c9);border:1px solid var(--cp-hair);color:var(--ink);font-family:var(--font-mono,ui-monospace, monospace);border-radius:6px}.campaign-panel .campaign-code-badge{background:color-mix(in srgb, var(--paper,#ece1c9) 80%, var(--doc-accent,var(--accent)));color:var(--ink);border:1px solid color-mix(in srgb, var(--doc-accent,var(--accent)) 42%, var(--paper,#ece1c9));border-radius:999px}.campaign-panel .campaign-code-display{background:color-mix(in srgb, var(--paper,#ece1c9) 84%, var(--doc-accent,var(--accent)));border:1px solid var(--doc-accent,var(--accent));border-radius:12px}.campaign-panel .campaign-code-display strong{color:var(--doc-accent,var(--accent));letter-spacing:.14em;font-size:1.6rem;font-weight:800}.campaign-panel .campaign-info-bar{border-bottom:1px solid var(--cp-hair)}.campaign-panel .campaign-info-bar strong{color:var(--ink);font-family:var(--font-display,var(--font-body,Georgia, serif));font-size:1.2rem}.campaign-panel .campaign-roll-top strong{color:var(--ink)}.campaign-panel .campaign-roll-total{color:var(--doc-accent,var(--accent));font-size:1.3rem;font-weight:800}.campaign-panel .campaign-roll-row small{color:var(--cp-text-2)}.campaign-panel .campaign-member-row strong{color:var(--ink)}.campaign-panel .campaign-member-row small{color:var(--cp-text-2)}.campaign-panel .campaign-form label,.campaign-panel .campaign-tool-grid span{color:var(--cp-text-2);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.campaign-panel input,.campaign-panel select{background:var(--paper,#ece1c9);color:var(--ink,#241c12);border:1px solid var(--cp-hair-strong);font-family:var(--font-body,Georgia, serif);border-radius:8px}.campaign-panel input::placeholder{color:var(--cp-text-3)}.campaign-panel input:focus,.campaign-panel select:focus{border-color:var(--doc-accent,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb, var(--doc-accent,var(--accent)) 22%, transparent);outline:none}.campaign-panel .cs-muted,.campaign-panel .campaign-empty{color:var(--cp-text-2)}.campaign-panel .dj-btn-primary{background:var(--ink,#241c12);color:var(--paper,#ece1c9);border:1px solid var(--ink,#241c12);font-family:var(--font-display,var(--font-body,Georgia, serif));letter-spacing:.02em;font-weight:600;box-shadow:inset 0 1px #ffffff2e}.campaign-panel .dj-btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--ink,#241c12) 86%, var(--paper,#ece1c9));box-shadow:0 0 0 3px color-mix(in srgb, var(--doc-accent,var(--accent)) 30%, transparent), 0 1px 0 #ffffff2e inset}.campaign-panel .dj-btn-primary:disabled{opacity:.45}.campaign-panel .glass-button{color:var(--ink,#241c12);border:1px solid var(--cp-hair-strong);font-family:var(--font-body,Georgia, serif);background:0 0}.campaign-panel .glass-button:hover:not(:disabled){background:var(--cp-card);border-color:var(--doc-accent,var(--accent));color:var(--ink,#241c12)}.campaign-panel .gold-button{background:color-mix(in srgb, var(--paper,#ece1c9) 82%, var(--doc-accent,var(--accent)));color:var(--ink,#241c12);border:1px solid color-mix(in srgb, var(--doc-accent,var(--accent)) 55%, var(--ink,#241c12));font-weight:600}.campaign-panel .gold-button:hover:not(:disabled){background:color-mix(in srgb, var(--paper,#ece1c9) 70%, var(--doc-accent,var(--accent)))}.campaign-panel .danger-button{color:var(--ink,#241c12);border:1px solid color-mix(in srgb, #b91c1c 55%, var(--ink,#241c12));background:0 0}.campaign-panel .danger-button:hover:not(:disabled){background:color-mix(in srgb, var(--paper,#ece1c9) 82%, #b91c1c);border-color:#b91c1c}.campaign-panel .import-error-banner{background:color-mix(in srgb, var(--paper,#ece1c9) 82%, #b91c1c);color:var(--ink,#241c12);border:1px solid color-mix(in srgb, #b91c1c 50%, var(--ink,#241c12));border-radius:8px}.campaign-panel .import-busy{color:var(--cp-text-2)}.campaign-panel .campaign-body::-webkit-scrollbar{width:10px}.campaign-panel .campaign-body::-webkit-scrollbar-track{background:0 0}.campaign-panel .campaign-body::-webkit-scrollbar-thumb{background:var(--cp-hair-strong);background-clip:padding-box;border:3px solid #0000;border-radius:999px}.campaign-panel button:focus-visible,.campaign-panel input:focus-visible,.campaign-panel select:focus-visible,.campaign-panel .campaign-card:focus-visible{outline:2px solid var(--doc-accent,var(--accent));outline-offset:2px}@media (prefers-reduced-motion:reduce){.campaign-panel *,.campaign-panel :before{transition:none!important}.campaign-panel .campaign-card:hover{transform:none}}:root{--ledger-paper:#e9dfc8;--ledger-tint:#e2d5b8;--ledger-ink:#2a2018;--ledger-faded:#7a6a52;--ledger-ghost:#a08d6c;--ledger-rule:#cfc2a2;--ledger-edge:#c9bb98;--ledger-seal:#8c2f22;--ledger-font:var(--font-newsreader), Georgia, serif}.builder-topbar.ledger-topbar{background:var(--ground-2);border-bottom:1px solid var(--rule-soft);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;padding:8px 16px}.ledger-masthead div:last-child{gap:3px}.ledger-masthead span{color:var(--parchment-2);font-family:var(--ledger-font);letter-spacing:.22em;text-transform:uppercase;font-size:11px;font-weight:600}.ledger-masthead strong{color:var(--parchment);font-family:var(--ledger-font);font-size:18px;font-weight:500;line-height:1.15}.builder-topbar .glass-icon.ink-action{width:auto;height:38px;color:var(--parchment-2);background:0 0;border:0;border-radius:0;padding:0 6px}.builder-topbar .glass-icon.ink-action:hover{color:var(--parchment);background:0 0}.account-chip.ledger-account{-webkit-backdrop-filter:none;backdrop-filter:none;min-height:0;color:var(--parchment-2);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;border-radius:0;padding:0 4px;font-size:11px;font-weight:600}.vault-rail.ledger-rail{--ledger-paper:var(--paper,#e9dfc8);--ledger-tint:color-mix(in srgb, var(--ledger-ink) 10%, var(--ledger-paper));--ledger-ink:var(--ink,#2a2018);--ledger-faded:var(--ink-2,#7a6a52);--ledger-ghost:var(--ink-3,#a08d6c);--ledger-rule:color-mix(in srgb, var(--ledger-ink) 18%, var(--ledger-paper));--ledger-edge:color-mix(in srgb, var(--ledger-ink) 28%, var(--ledger-paper));--ledger-seal:var(--doc-accent,#8c2f22);isolation:isolate;border:1px solid var(--ledger-edge);border-right:1px solid var(--ledger-edge);border-radius:var(--r-sm);background:var(--ledger-paper);color:var(--ledger-ink);font-family:var(--ledger-font);box-shadow:var(--shadow-soft);padding:14px 12px}.vault-rail.ledger-rail:before{content:"";z-index:0;pointer-events:none;border-radius:inherit;background-image:var(--grain);opacity:.08;background-size:140px 140px;position:absolute;inset:0}.vault-rail.ledger-rail>*{z-index:1;position:relative}.ledger-rail .rail-heading{border-bottom:1px solid var(--ledger-rule);align-items:center;gap:6px;min-height:0;margin-bottom:0;padding-bottom:7px;display:flex}.ledger-rail .rail-heading span{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;margin-right:auto;font-size:11px;font-weight:600}.ledger-rail .rail-action{color:var(--ledger-faded)}.ledger-rail .rail-action:hover{color:var(--ledger-ink)}.ledger-rail .glass-icon.ink-action-dark{width:auto;height:auto;color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:0;padding:2px;font-size:10px;font-weight:600}.ledger-rail .glass-icon.ink-action-dark:hover{color:var(--ledger-ink);background:0 0}.ledger-rail .vault-list{gap:0}.vault-avatar.ledger-row{border:0;border-bottom:1px solid var(--ledger-rule);min-height:0;color:var(--ledger-ink);font-family:var(--ledger-font);background:0 0;border-left:3px solid #0000;border-radius:0;grid-template-rows:auto auto;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:1px 10px;padding:10px 8px 10px 5px;transition:background .14s}.vault-avatar.ledger-row:hover:not(.active){background:color-mix(in srgb, var(--ledger-tint) 55%, var(--ledger-paper));box-shadow:none;transform:none}.vault-avatar.ledger-row.active{border-color:var(--ledger-rule);border-left-color:var(--ledger-seal);background:var(--ledger-tint)}.vault-avatar.ledger-row span.ledger-initial{background:var(--class-a);width:26px;height:26px;color:var(--ledger-paper);font-family:var(--ledger-font);border:0;border-radius:50%;grid-row:1/span 2;font-size:13px;font-weight:600}.vault-avatar.ledger-row strong{color:var(--ledger-ink);grid-column:2;font-size:15px;font-weight:500;line-height:1.25}.vault-avatar.ledger-row small{color:var(--ledger-faded);grid-column:2;font-size:12px;font-style:italic;line-height:1.3}.ledger-ghost-row{width:100%;color:var(--ledger-ghost);font-family:var(--ledger-font);text-align:left;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;border-radius:0;padding:11px 8px;font-size:13px;font-style:italic;line-height:1.4;display:block}.ledger-ghost-row:hover{color:var(--ledger-faded)}.ledger-page{isolation:isolate;border:1px solid var(--ledger-edge);border-radius:var(--r-sm);background:var(--ledger-paper);width:100%;color:var(--ledger-ink);box-shadow:var(--shadow-soft);font-family:var(--ledger-font);margin:0;padding:clamp(28px,4vw,34px);position:relative}.ledger-page:before{content:"";z-index:0;pointer-events:none;border-radius:inherit;background-image:var(--grain);opacity:.08;background-size:140px 140px;position:absolute;inset:0}.ledger-page>*{z-index:1;position:relative}.ledger-eyebrow{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:14px;font-weight:600}.ledger-page-header{border-bottom:2px solid var(--ledger-ink);gap:6px;padding-bottom:12px;display:grid;position:relative}.ledger-page-header:after{content:"";border-top:1px solid var(--ledger-rule);position:absolute;bottom:3px;left:0;right:0}.ledger-page-header h2{color:var(--ledger-ink);font-family:var(--ledger-font);letter-spacing:0;margin:0;font-size:34px;font-weight:500;line-height:1.15}.ledger-option-list{display:block}.ledger-option{border:0;border-bottom:1px solid var(--ledger-rule);width:100%;min-height:0;box-shadow:none;color:var(--ledger-ink);font-family:var(--ledger-font);text-align:left;cursor:pointer;background:0 0;border-left:3px solid #0000;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;column-gap:12px;padding:13px 10px;transition:background .14s;display:grid;position:relative}.ledger-option:hover:not(.active){background:color-mix(in srgb, var(--ledger-tint) 55%, var(--ledger-paper));box-shadow:none;transform:none}.ledger-option.active{background:var(--ledger-tint);border-left-color:var(--ledger-seal)}.ledger-option-name{color:var(--ledger-ink);font-variant:small-caps;letter-spacing:.03em;font-size:16px;font-weight:500;line-height:1.3}.ledger-option:hover:not(.active) .ledger-option-name:after{content:"  ⟶";color:var(--ledger-faded)}.ledger-option-desc{color:var(--ledger-faded);font-size:13px;font-style:italic;line-height:1.4}.ledger-option-state{color:var(--ledger-seal);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;justify-self:end;padding:0;font-size:11px;font-style:normal;font-weight:600}.ledger-option-dot{background:var(--class-a,var(--ledger-faded));border-radius:50%;align-self:center;width:10px;height:10px}.ledger-option-dot.neutral{background:var(--ledger-faded)}.ledger-button{border:1px solid var(--ledger-ink);min-height:40px;color:var(--ledger-ink);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:12px;font-weight:600;transition:background .14s,color .14s;display:inline-flex}.ledger-button:hover:not(:disabled){background:var(--ledger-ink);color:var(--ledger-paper)}.ledger-button:disabled{opacity:.45;cursor:default}.ledger-button.ledger-button-primary{background:var(--ledger-ink);color:var(--ledger-paper)}.ledger-button.ledger-button-primary:hover:not(:disabled){color:var(--ledger-ink);background:0 0}.ledger-page .dj-footer{border-top:1px solid var(--ledger-rule)}.ledger-footnote{color:var(--ledger-ghost);font-family:var(--ledger-font);font-size:12px;font-style:italic;line-height:1.45}.start-panel.ledger-page{gap:0}.start-panel.ledger-page .ledger-page-header{margin-bottom:8px}.start-panel.ledger-page .ledger-option-list{margin-top:10px}.start-panel.ledger-page .ledger-page-footer{margin-top:26px}@media (max-width:700px){.ledger-option{grid-template-columns:auto minmax(0,1fr)}.ledger-option-state{grid-column:2;justify-self:start}}.paper-surface.ledger-spread{--paper:var(--ledger-paper);--paper-raised:var(--ledger-tint);--ink:var(--ledger-ink);--ink-2:var(--ledger-faded);--ink-3:var(--ledger-ghost,#6b5d44);--doc-rule:var(--ledger-rule);--doc-rule-soft:var(--ledger-rule);--doc-accent:var(--ledger-seal);--doc-accent-deep:var(--ledger-seal);--doc-select:var(--ledger-seal);border-color:var(--ledger-edge);background:var(--ledger-paper);box-shadow:var(--shadow-soft);font-family:var(--ledger-font)}.dj-dossier.ledger-spread{grid-template-columns:210px minmax(0,1fr)}.dj-rail.ledger-toc{border-right:1px solid var(--ledger-edge);background:var(--ledger-tint);gap:0;padding:24px 0 18px}.ledger-toc .dj-rail-label{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;padding:0 14px 10px;font-size:11px;font-weight:600}.ledger-toc .dj-rail-step{min-height:0;color:var(--ledger-faded);font:500 13px/2.1 var(--ledger-font);background:0 0;border-left:2px solid #0000;border-radius:0;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 14px 6px 12px;display:flex}.ledger-toc .dj-rail-step.complete{color:var(--ledger-ink)}.ledger-toc .dj-rail-step.active{border-left-color:var(--ledger-seal);color:var(--ledger-seal);background:0 0}.ledger-toc-chapter{white-space:nowrap}.ledger-toc-decided{color:var(--ledger-faded);text-align:right;text-overflow:ellipsis;text-transform:lowercase;white-space:nowrap;font-size:12px;font-style:italic;font-weight:400;line-height:1.4;overflow:hidden}.ledger-toc .ledger-toc-footnote{margin:auto 14px 0;padding-top:16px}.ledger-spread .dj-document-header h2{font-family:var(--ledger-font);font-size:20px;font-weight:600}.ledger-spread .dj-document-header p{color:var(--ledger-faded);font-size:12px;font-style:italic}.ledger-spread .dj-document-header .dj-eyebrow,.ledger-spread .dj-eyebrow{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em}.ledger-chapter-head{gap:3px;display:grid}.ledger-chapter-title{color:var(--ledger-ink);font-family:var(--ledger-font);letter-spacing:0;margin:0;font-size:20px;font-weight:600;line-height:1.2}.ledger-chapter-sub{color:var(--ledger-faded);font-family:var(--ledger-font);margin:0;font-size:13px;font-style:italic}.ledger-option.has-dot{grid-template-columns:10px auto minmax(0,1fr) auto auto}.ledger-option .ledger-option-dot{background:color-mix(in srgb, var(--class-a,var(--ledger-faded)) 75%, var(--ledger-ink))}.ledger-option .ledger-option-dot.neutral{background:var(--ledger-faded)}.ledger-option .dj-card-select{border-radius:0}.ledger-option-link{z-index:2;color:var(--ledger-seal);font:500 12px/1.4 var(--ledger-font);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:end;padding:0;text-decoration:underline;position:relative}.ledger-option-state.quiet{color:var(--ledger-ghost);letter-spacing:.02em;text-transform:lowercase;font-style:italic;font-weight:400}.campaign-player-sessions{border:1px solid var(--rule-soft);background:color-mix(in srgb, var(--ground-2) 88%, transparent);border-radius:8px;gap:10px;padding:14px;display:grid}.campaign-player-section-head,.campaign-player-session-card{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.campaign-player-section-head h3{color:var(--parchment);margin:4px 0 0}.campaign-player-section-head>span{color:var(--muted);font-size:.76rem}.campaign-player-session-list{gap:7px;display:grid}.campaign-player-session-card{border-top:1px solid var(--rule-soft);padding:10px 0}.campaign-player-session-card>div{gap:3px;display:grid}.campaign-player-session-card strong{color:var(--parchment);font-size:.92rem}.campaign-player-session-card small,.campaign-player-session-card span{color:var(--muted);font-size:.76rem}.campaign-player-session-card>div:last-child{text-align:right;justify-items:end}.ledger-class-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.ledger-class-card{isolation:isolate;background:linear-gradient(105deg, var(--surface-panel) 0%, var(--surface-panel) 44%, color-mix(in srgb, var(--class-a) 20%, var(--surface-panel-recessed)) 100%);min-height:126px;color:var(--text-primary,#f5f7f5);cursor:pointer;border:1px solid #b0c1cf2e;border-radius:11px;padding:18px 18px 15px;transition:border-color .16s,box-shadow .16s,transform .16s;display:block;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 8px 18px #040a1221}.ledger-class-card:before{content:"";z-index:-1;background:linear-gradient(90deg, color-mix(in srgb, var(--surface-panel) 98%, transparent) 0%, color-mix(in srgb, var(--surface-panel) 90%, transparent) 42%, color-mix(in srgb, var(--surface-panel) 30%, transparent) 72%, color-mix(in srgb, var(--surface-panel) 12%, transparent) 100%), linear-gradient(0deg, color-mix(in srgb, var(--surface-panel-recessed) 22%, transparent), transparent 60%);position:absolute;inset:0}.ledger-class-card:hover:not(.active){border-color:color-mix(in srgb, var(--class-a) 58%, #d6dfe8);background:var(--surface-panel);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff12,0 11px 24px #040a1233}.ledger-class-card.active{border-color:color-mix(in srgb, var(--class-a) 72%, #efe6bd);background:var(--surface-panel);box-shadow:inset 4px 0 0 color-mix(in srgb, var(--class-a) 80%, #f0d37d), inset 0 0 0 1px #f4db8d1f, 0 12px 25px #040a1238}.ledger-class-card-art{z-index:-2;object-fit:cover;object-position:65% 30%;filter:saturate(.72)contrast(1.04)brightness(.72);opacity:.88;transition:filter .18s,opacity .18s,transform .24s;inset:0;width:100%!important;height:100%!important;position:absolute!important}.ledger-class-card:hover .ledger-class-card-art,.ledger-class-card.active .ledger-class-card-art{filter:saturate(.9)contrast(1.05)brightness(.8);opacity:.98;transform:scale(1.025)}.ledger-class-card-fallback{z-index:-1;color:color-mix(in srgb, var(--class-a) 75%, #dbe4ee);opacity:.38;position:absolute;top:50%;right:24px;transform:translateY(-50%)}.ledger-class-card-copy{z-index:0;text-shadow:0 2px 8px #03080eb8;flex-direction:column;align-items:flex-start;max-width:76%;min-height:91px;display:flex;position:relative}.ledger-class-card-name{color:#f7f8f6;font-family:var(--font-sans,sans-serif);letter-spacing:.035em;text-transform:uppercase;font-size:clamp(20px,1.65vw,25px);font-weight:800;line-height:1}.ledger-class-card-name:after{content:"";background:linear-gradient(90deg,#e0e8f147,#0000);width:178px;max-width:100%;height:2px;margin:8px 0 6px;display:block}.ledger-class-card-desc{color:#f4f7f6e0;font-family:var(--font-sans,sans-serif);font-size:13px;line-height:1.25}.ledger-class-card-role{color:#f1f4f2;font-family:var(--font-sans,sans-serif);letter-spacing:.02em;margin-top:auto;padding-top:5px;font-size:10px;font-weight:800}.ledger-class-card-link,.ledger-class-card-state{z-index:2;color:#f5f8f7eb;font-family:var(--font-sans,sans-serif);letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#070d168f;border:1px solid #cbd8e533;border-radius:999px;font-size:9px;font-style:normal;font-weight:750;line-height:1;text-decoration:none;position:absolute;right:12px}.ledger-class-card-link{cursor:pointer;padding:6px 8px;top:12px}.ledger-class-card-link:hover,.ledger-class-card-link:focus-visible{color:#ffe5a0;border-color:#f4dd97b8}.ledger-class-card-state{border-color:color-mix(in srgb, var(--class-a) 55%, #f1dc9e);color:#ffe8a9;padding:6px 8px;bottom:12px}@media (max-width:900px){.ledger-class-grid{grid-template-columns:1fr}}@media (max-width:520px){.ledger-class-card{min-height:118px;padding:16px}.ledger-class-card-copy{max-width:82%}}.ledger-spread .species-list{max-height:520px;overflow-y:auto}.ledger-spread .dj-stamp-row.ledger-stamp{border:0;border-bottom:1px solid var(--ledger-rule);background:0 0;padding:10px 2px}.ledger-stamp .dj-stamp-icon,.ledger-stamp .dj-stamp-seal{background:var(--class-a,var(--ledger-seal));width:44px;height:44px;color:var(--ledger-paper);border:0;border-radius:50%}.ledger-stamp .dj-stamp-seal{background:var(--ledger-seal);letter-spacing:.08em;font-size:.72rem}.ledger-stamp strong{color:var(--ledger-ink);font-variant:small-caps;font-size:17px;font-weight:500}.ledger-stamp small{color:var(--ledger-ink);font-size:12px;font-style:italic}.ledger-stamp em{color:var(--ledger-seal);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;padding:0;font-size:11px;font-style:normal;font-weight:600}.ledger-spread .dj-skill-hint{color:var(--ledger-ghost);font-size:12px;font-style:italic}.ledger-spread .dj-skill-hint:before{content:"† "}.ledger-spread .control-field input,.ledger-spread .control-field select,.ledger-spread .control-field textarea,.ledger-spread .attribute-card select,.ledger-spread .dj-level-pick select,.ledger-spread .dj-manual-stat{border:0;border-bottom:1px solid var(--ledger-rule);color:var(--ledger-ink);font-family:var(--ledger-font);background:0 0;border-radius:0}.ledger-spread .control-field input:focus,.ledger-spread .control-field select:focus,.ledger-spread .control-field textarea:focus,.ledger-spread .attribute-card select:focus,.ledger-spread .dj-level-pick select:focus,.ledger-spread .dj-manual-stat:focus{border-bottom-color:var(--ledger-seal);box-shadow:none;outline:none}.ledger-spread .dj-name-field input:focus,.ledger-spread .dj-qb-name .qb-name-input:focus{border-bottom-color:var(--ledger-seal)}.ledger-spread .dj-skill-chip{border:1px solid var(--ledger-rule);color:var(--ledger-ink);font-family:var(--ledger-font);background:0 0;border-left:3px solid #0000;border-radius:0}.ledger-spread .points-pill{min-width:0;color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;border-radius:0;font-size:11px;font-weight:600}.ledger-spread .method-row button{border:1px solid #0000;border-bottom:1px solid var(--ledger-rule);color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:0;font-size:12px;font-weight:600}.ledger-spread .method-row button.active{border-bottom:2px solid var(--ledger-seal);background:var(--ledger-tint);color:var(--ledger-ink)}.ledger-spread .attribute-card{border:0;border-bottom:1px solid var(--ledger-rule);border-right:1px solid var(--ledger-rule);color:var(--ledger-faded);background:0 0}.ledger-spread .mini-stepper button{border:1px solid var(--ledger-rule);color:var(--ledger-ink);font-family:var(--ledger-font);background:0 0;border-radius:0;font-size:15px}.ledger-spread .dj-stat-strip{border:0;border-top:1px solid var(--ledger-rule);border-bottom:1px solid var(--ledger-rule)}.ledger-button.small{min-height:32px;padding:6px 12px;font-size:11px}.ledger-spread .final-loadout span{border:0;border-bottom:1px solid var(--ledger-rule);color:var(--ledger-faded);background:0 0;border-radius:0;font-style:italic}@media (max-width:720px){.dj-dossier.ledger-spread{grid-template-columns:1fr}.dj-rail.ledger-toc{border-right:0;border-bottom:1px solid var(--ledger-edge);flex-direction:column;padding:16px 0 12px;overflow-x:visible}.ledger-toc .dj-rail-label{display:block}.ledger-toc .dj-rail-step{border-bottom:0;border-left:2px solid #0000}.ledger-toc .dj-rail-step.active{border-left-color:var(--ledger-seal);border-bottom-color:#0000}.ledger-toc .ledger-toc-footnote{margin-top:10px}}@media (max-width:700px){.ledger-option.has-dot{grid-template-columns:10px minmax(0,1fr) auto}.ledger-option.has-dot .ledger-option-desc,.ledger-option.has-dot .ledger-option-link{grid-column:2/-1;justify-self:start}.ledger-option.has-dot .ledger-option-state{grid-column:auto;justify-self:end}}.ledger-page{--paper:var(--ledger-paper);--paper-raised:var(--ledger-tint);--ink:var(--ledger-ink);--ink-2:var(--ledger-faded);--ink-3:var(--ledger-ghost,#6b5d44);--doc-rule:var(--ledger-rule);--doc-rule-soft:var(--ledger-rule);--doc-accent:var(--ledger-seal);--doc-accent-deep:var(--ledger-seal);--doc-select:var(--ledger-seal)}.ledger-page .species-list{max-height:520px;overflow-y:auto}.ledger-page .qb-name-input{border:0;border-bottom:1px solid var(--ledger-rule);color:var(--ledger-ink);background:0 0;border-radius:0}.ledger-page .qb-name-input:focus{border-bottom-color:var(--ledger-seal)}.ledger-page .dj-qb-name label>span{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em}.ledger-page .qb-cancel{justify-self:start}.class-modal.ledger-page{width:min(920px,100%);max-height:min(860px,100dvh - 40px);padding:22px clamp(18px,3vw,30px)}.class-modal.ledger-page:has(.ledger-modal-art){grid-template-rows:auto auto minmax(0,1fr) auto}.ledger-modal-art{border-bottom:1px solid var(--ledger-rule);height:clamp(110px,16vw,165px);margin:-22px calc(-1*clamp(18px,3vw,30px)) 0;position:relative;overflow:hidden}.ledger-modal-art img{object-fit:cover;object-position:65% 30%}.ledger-modal-art:after{content:"";pointer-events:none;background:linear-gradient(#0000 66%,#03080e4d);position:absolute;inset:0}.class-modal.ledger-page .class-modal-hero{border-bottom:1px solid var(--ledger-rule);padding-bottom:14px}.class-modal.ledger-page .class-modal-hero>div>span{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:600}.class-modal.ledger-page .class-modal-hero h3{color:var(--ledger-ink);font-family:var(--ledger-font)}.class-modal.ledger-page .class-modal-hero p{color:var(--ledger-faded);font-style:italic}.class-modal.ledger-page .class-icon-stage{background:color-mix(in srgb, var(--class-a,var(--ledger-seal)) 75%, var(--ledger-ink));width:92px;color:var(--ledger-paper);box-shadow:none;border:0;border-radius:50%}.class-modal.ledger-page .class-detail-card{border:0;border-bottom:1px solid var(--ledger-rule);background:0 0;border-radius:0}.class-modal.ledger-page .class-detail-card summary{color:var(--ledger-ink);font-family:var(--ledger-font)}.ledger-disclosure{color:var(--ledger-seal);font-size:18px;font-style:normal;line-height:1;transition:transform .16s}.class-detail-card[open] summary .ledger-disclosure{transform:rotate(90deg)}.class-modal.ledger-page .species-family-row summary em{color:var(--ledger-seal);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;padding:0;font-size:11px;font-style:normal;font-weight:600}.class-modal.ledger-page .class-modal-actions{border-top:1px solid var(--ledger-rule);padding-top:12px}@media (prefers-reduced-motion:reduce){.ledger-row,.ledger-option,.ledger-button,.ledger-disclosure{transition:none!important}}.class-modal.ledger-page .glass-icon.modal-close{color:var(--ledger-faded);background:0 0;border:0;border-radius:50%}.class-modal.ledger-page .glass-icon.modal-close:hover{color:var(--ledger-ink);background:var(--ledger-tint)}.ledger-topbar .system-status{color:var(--parchment-2);font-family:var(--ledger-font);background:0 0;border:0;border-radius:0;font-size:13px;font-style:italic}.ledger-modal-head{border-bottom:2px solid var(--ledger-ink);grid-template-columns:72px minmax(0,1fr);align-items:center;column-gap:20px;padding:4px 54px 16px 2px;display:grid;position:relative}.ledger-modal-head:after{content:"";border-top:1px solid var(--ledger-rule);position:absolute;bottom:3px;left:0;right:0}.ledger-modal-seal{background:color-mix(in srgb, var(--class-a,var(--ledger-seal)) 85%, var(--ledger-ink));width:72px;height:72px;color:var(--ledger-paper);box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--ledger-paper) 28%, transparent);border:0;border-radius:50%;place-items:center;display:grid}.ledger-modal-title{gap:4px;display:grid}.ledger-modal-title h3{color:var(--ledger-ink);font-family:var(--ledger-font);letter-spacing:0;margin:0;font-size:clamp(26px,4vw,34px);font-weight:600;line-height:1.05}.ledger-modal-title p{color:var(--ledger-faded);margin:0;font-size:13.5px;font-style:italic;line-height:1.5}@media (max-width:700px){.ledger-modal-head{grid-template-columns:56px minmax(0,1fr);column-gap:14px}.ledger-modal-seal{width:56px;height:56px}}.ledger-option[data-origin-tone=lore]{--class-a:#5a4a72}.ledger-option[data-origin-tone=shadow]{--class-a:#4f5a66}.ledger-option[data-origin-tone=wilds]{--class-a:#6e7d4a}.ledger-option[data-origin-tone=war]{--class-a:#96432e}.ledger-option[data-origin-tone=trade]{--class-a:#a5772e}.ledger-option[data-origin-tone=sea]{--class-a:#4f7a72}.ledger-option[data-origin-tone=court]{--class-a:#9a5a8c}.ledger-spread .dj-skill-chip.picked{border-color:var(--ledger-seal);border-left-color:var(--ledger-seal);background:var(--ledger-seal);color:var(--ledger-paper)}.ledger-spread .method-row button{border:1px solid var(--ledger-rule);min-height:40px;color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.1em;text-transform:uppercase;background:0 0;border-radius:0;font-size:12px;font-weight:600}.ledger-spread .method-row button:hover:not(.active){border-color:var(--ledger-faded);color:var(--ledger-ink);background:0 0}.ledger-spread .method-row button.active{border-color:var(--ledger-ink);background:var(--ledger-tint);box-shadow:inset 0 0 0 1px var(--ledger-ink);color:var(--ledger-ink)}.ledger-spread .points-pill{border:0;border-bottom:1px solid var(--ledger-rule);min-height:40px;color:var(--ledger-faded);font-family:var(--ledger-font);background:0 0;border-radius:0;font-size:13px;font-style:italic}.ledger-certificate{gap:6px;padding-top:6px;display:grid}.ledger-cert-name{color:var(--ledger-ink);font-family:var(--ledger-font);letter-spacing:0;margin:0;font-size:clamp(30px,5vw,42px);font-weight:600;line-height:1.05}.ledger-cert-line{color:var(--ledger-faded);font-family:var(--ledger-font);margin:0 0 10px;font-size:14px;font-style:italic}.ledger-cert-rows{border-top:2px solid var(--ledger-ink)}.ledger-cert-row{border-bottom:1px solid var(--ledger-rule);grid-template-columns:110px minmax(0,1fr);align-items:baseline;column-gap:16px;padding:11px 2px;display:grid}.ledger-cert-label{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:600}.ledger-cert-value{color:var(--ledger-ink);font-family:var(--ledger-font);font-size:14.5px;line-height:1.55}.ledger-cert-value.missing{color:var(--ledger-ghost);font-style:italic}.ledger-cert-stats{flex-wrap:wrap;gap:8px 22px;display:flex}.ledger-cert-stat{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.1em;text-transform:uppercase;align-items:baseline;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.ledger-cert-stat b{color:var(--ledger-ink);letter-spacing:0;font-size:19px;font-weight:500}.ledger-cert-stat i{color:var(--ledger-faded);letter-spacing:0;font-size:12px;font-style:italic;font-weight:400}.ledger-cert-seal-row{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:18px;margin-top:14px;display:grid}.ledger-cert-seal{background:color-mix(in srgb, var(--class-a,var(--ledger-seal)) 85%, var(--ledger-ink));width:64px;height:64px;color:var(--ledger-paper);box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--ledger-paper) 28%, transparent);border-radius:50%;place-items:center;display:grid;transform:rotate(-6deg)}@media (max-width:700px){.ledger-cert-row{grid-template-columns:1fr;row-gap:2px}}.ledger-page>.modal-close{z-index:2;position:absolute}.cs-levelup{background:var(--paper,var(--ground));border-color:var(--doc-rule,var(--rule));color:var(--ink,var(--parchment))}.cs-lvl-step{border-color:var(--doc-rule,var(--rule-soft));color:var(--ink-3,var(--ink-faint))}.cs-lvl-step.active{border-color:var(--doc-select,var(--select));color:var(--ink,var(--parchment))}.cs-lvl-step.done{border-color:var(--doc-accent,var(--accent));color:var(--doc-accent,var(--accent))}.cs-lvl-subcard{border-color:var(--doc-rule,var(--rule-soft));color:var(--ink,var(--parchment))}.cs-lvl-subcard p{color:var(--ink-2,var(--parchment-2))}.cs-lvl-subcard.active{border-color:var(--doc-select,var(--select))}.cs-lvl-spell-row{border-color:var(--doc-rule,var(--rule-soft));color:var(--ink,var(--parchment))}.cs-lvl-spell-row small{color:var(--ink-3,var(--ink-faint))}.cs-lvl-spell-row.active{border-color:var(--doc-select,var(--select))}.cs-levelup .cs-glass-btn{border-color:var(--doc-rule,var(--rule));color:var(--ink,var(--parchment))}.cs-levelup .control-field input{border-color:var(--doc-rule,var(--rule));color:var(--ink,var(--parchment));background:0 0}.ledger-cert-mast{text-align:center;justify-items:center;gap:10px;padding:6px 0 20px;display:grid}.ledger-cert-chapter{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.18em;text-transform:uppercase;font-size:12px;font-weight:600}.ledger-cert-mast .ledger-cert-name{text-align:center;font-size:clamp(32px,5vw,44px)}.ledger-cert-mast .ledger-cert-line{text-align:center;margin:0}.ledger-cert-attrs{flex-wrap:wrap;justify-content:center;gap:18px 38px;padding:26px 0 8px;display:flex}.ledger-cert-attr{justify-items:center;gap:1px;display:grid}.ledger-cert-attr>span{color:var(--ledger-faded);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:600}.ledger-cert-attr b{color:var(--ledger-ink);font-family:var(--ledger-font);font-size:38px;font-weight:500;line-height:1.05}.ledger-cert-attr i{color:var(--ledger-faded);font-family:var(--ledger-font);font-size:14px;font-style:italic}.cs-hd-rest-panel{border:1px solid var(--doc-rule,var(--rule-soft));border-radius:var(--r-sm,3px);background:color-mix(in srgb, var(--doc-accent,var(--accent)) 8%, transparent);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;padding:8px 10px;display:flex}.cs-hd-rest-info{color:var(--ink-2,var(--ink-faint));flex:auto;min-width:120px;font-size:.78rem}.cs-hd-rest-actions{flex-shrink:0;gap:6px;display:flex}.roll-formula-input{align-items:center;gap:6px;display:flex}.roll-formula-input input{border:1px solid var(--rule-soft);border-radius:var(--r-sm,3px);background:var(--paper,#1f1a12);min-width:0;color:var(--ink,#e8dcc2);font-family:var(--roll-font,monospace);flex:auto;padding:6px 10px;font-size:.85rem}.roll-formula-input input::placeholder{color:var(--ink-faint,#8a8070)}.roll-formula-error{color:var(--accent,#b2452f);margin:4px 0 0;font-size:.72rem}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--ground-2,#1f1a12) 60%, transparent) 0%, color-mix(in srgb, var(--ground,#16120c) 40%, transparent) 40%, color-mix(in srgb, var(--ground-2,#1f1a12) 60%, transparent) 100%);border-radius:var(--r-sm,3px);background-size:200% 100%;animation:1.8s ease-in-out infinite skeleton-shimmer}.skeleton-row{align-items:center;gap:10px;padding:10px 12px;display:flex}.skeleton-avatar{border-radius:50%;flex-shrink:0;width:36px;height:36px}.skeleton-text{flex:auto;height:14px}.skeleton-text.short{max-width:60%;height:12px}.skeleton-text+.skeleton-text{margin-top:6px}.threshold-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%;max-width:900px;margin:18px auto 0;display:grid}.threshold-card{aspect-ratio:2/3;border:1px solid var(--ledger-edge);border-radius:var(--r-sm);background:color-mix(in srgb, var(--ledger-tint) 60%, var(--ledger-paper));cursor:pointer;text-align:left;padding:0;position:relative;overflow:hidden}.threshold-card:focus-visible{outline:2px solid var(--ledger-seal);outline-offset:2px}.threshold-card.active{border-color:var(--ledger-seal);box-shadow:inset 0 0 0 1px var(--ledger-seal)}.threshold-art{display:block;position:absolute;inset:0}.threshold-art:before{content:"✦";color:var(--ledger-ghost);font-family:var(--ledger-font);font-size:40px;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.threshold-art img{object-fit:cover;filter:sepia(.28)saturate(.78)contrast(.96)brightness(.94);width:100%;height:100%;transition:filter .16s;position:relative}.threshold-card:hover .threshold-art img{filter:sepia(.22)saturate(.85)contrast(.96)brightness()}.threshold-art.threshold-quad{background:var(--ledger-edge);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:1px;display:grid}.threshold-scrim{pointer-events:none;background:linear-gradient(#18120d00 48%,#18120d9e 80%,#18120de6 100%);position:absolute;inset:0}.threshold-caption{gap:3px;padding:14px;display:grid;position:absolute;inset:auto 0 0}.threshold-label{color:#ece1c9;font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:15px;font-weight:600;line-height:1.2}.threshold-desc{color:#ece1c9c7;font-family:var(--ledger-font);font-size:12.5px;font-style:italic;line-height:1.45}.threshold-state{color:var(--select);font-family:var(--ledger-font);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;font-style:normal;font-weight:600}@media (max-width:760px){.threshold-grid{grid-template-columns:1fr;gap:12px}.threshold-card{aspect-ratio:16/9}.threshold-art img{object-position:50% 22%}}.paper-surface,.cs-sheet{--ui-text-primary:var(--ink);--ui-text-secondary:color-mix(in srgb, var(--ink) 78%, var(--paper));--ui-text-muted:color-mix(in srgb, var(--ink) 64%, var(--paper));--ui-placeholder:color-mix(in srgb, var(--ink) 62%, var(--paper));--ui-control-bg:color-mix(in srgb, var(--paper) 84%, white 16%);--ui-control-bg-hover:color-mix(in srgb, var(--paper) 70%, white 30%);--ui-control-border:var(--doc-rule);--ui-focus-ring:color-mix(in srgb, var(--doc-accent) 35%, transparent);color:var(--ui-text-primary)}.paper-surface.dj-dossier{--ui-builder-border:color-mix(in srgb, var(--ink) 30%, var(--paper))}.paper-surface.dj-dossier :is(.dj-level-pick,.dj-skill-pick){border-color:var(--ui-builder-border)}.paper-surface.dj-dossier :is(.dj-level-pick select,.dj-skill-chip){border-color:color-mix(in srgb, var(--ink) 24%, var(--paper))}.paper-surface.dj-dossier .dj-skill-chip.picked{border-color:var(--doc-accent-deep)}.dm-table{z-index:500;isolation:isolate;border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);background:var(--ground-2,#1f1a12);min-height:100dvh;color:color-mix(in srgb, var(--paper,#e9dfc8) 88%, transparent);font-family:var(--font-body);border-radius:0;flex-direction:column;padding:20px 24px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.dm-prep-scrim{z-index:700;background:#0c0906b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.dm-prep{isolation:isolate;border:1px solid var(--border-default);border-radius:var(--r-sm,3px);background:var(--surface-panel);width:min(1380px,100%);height:min(940px,100dvh - 36px);color:var(--text-primary);font-family:var(--font-body,Georgia,serif);grid-template-rows:auto minmax(0,1fr);font-size:15px;line-height:1.5;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000080}.dm-prep:before{content:"";z-index:0;pointer-events:none;background:var(--grain);opacity:.05;background-size:140px 140px;position:absolute;inset:0}.dm-prep>*{z-index:1;position:relative}.dm-prep>header{border-bottom:2px solid var(--text-primary);justify-content:space-between;align-items:center;gap:18px;padding:16px 22px 14px;display:flex;position:relative}.dm-prep>header:after{content:"";border-top:1px solid color-mix(in srgb,var(--text-primary) 26%,var(--paper,#eee2c8));position:absolute;bottom:3px;left:0;right:0}.dm-prep>header span,.dm-prep h3,.dm-prep summary,.dm-prep-rail-label{font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:600}.dm-prep>header span{color:var(--text-secondary)}.dm-prep>header h2{font-family:var(--font-display,Georgia,serif);margin:2px 0 0;font-size:26px;font-weight:500;line-height:1.1}.dm-prep-body{grid-template-columns:186px minmax(0,1fr);min-height:0;display:grid}.dm-prep-rail{border-right:1px solid var(--doc-rule,#b7a589);background:var(--surface-panel-recessed);flex-direction:column;gap:1px;padding:16px 0;display:flex;overflow-y:auto}.dm-prep-rail-label{color:var(--text-muted);padding:0 16px 8px}.dm-prep-rail button{color:var(--text-secondary);font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;align-items:center;gap:9px;padding:9px 16px;font-size:12px;font-weight:600;display:flex}.dm-prep-rail button:hover{color:var(--text-primary);background:color-mix(in srgb, var(--text-primary) 6%, transparent)}.dm-prep-rail button.active{border-left-color:var(--border-brass);color:var(--border-brass);background:color-mix(in srgb,var(--border-brass) 7%,transparent)}.dm-prep-content{flex-direction:column;min-height:0;display:flex}.dm-prep-status{border-bottom:1px solid var(--doc-rule-soft,#d5c8af);background:color-mix(in srgb,var(--border-brass) 8%,var(--paper,#eee2c8));color:var(--border-brass);margin:0;padding:9px 20px;font-size:13px;font-style:italic}.dm-prep-content>main{flex:1;min-height:0;padding:20px;overflow:auto}.dm-prep button{border:1px solid color-mix(in srgb,var(--ink,#241c12) 32%,var(--paper,#eee2c8));min-height:34px;color:inherit;font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;display:inline-flex}.dm-prep>header button{min-height:34px;color:color-mix(in srgb,var(--ink,#241c12) 55%,var(--paper,#eee2c8));border-color:#0000;padding:6px 8px}.dm-prep>header button:hover{color:var(--ink,#241c12)}.dm-prep button:hover:not(:disabled){border-color:var(--ink,#241c12);color:var(--ink,#241c12)}.dm-prep button.primary{border-color:var(--ink,#241c12);background:var(--ink,#241c12);color:var(--paper,#eee2c8)}.dm-prep button.primary:hover:not(:disabled){color:var(--ink,#241c12);background:0 0}.dm-prep button:disabled{cursor:default;opacity:.4}.dm-prep-split{grid-template-columns:minmax(300px,.85fr) minmax(440px,1.15fr);gap:22px;min-height:100%;display:grid}.dm-prep-toolbar,.dm-form-row,.dm-editor-actions,.dm-session-action{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.dm-prep-toolbar{align-items:center;margin-bottom:12px}.dm-prep-toolbar input{border:1px solid color-mix(in srgb,var(--ink,#241c12) 22%,var(--paper,#eee2c8));background:color-mix(in srgb,var(--paper,#eee2c8) 82%,#fff);color:var(--ink,#241c12);border-radius:6px;flex:1;padding:8px 11px}.dm-prep-toolbar input::placeholder{color:color-mix(in srgb,var(--ink,#241c12) 52%,var(--paper,#eee2c8))}.dm-prep-toolbar input:focus{border-color:var(--doc-accent,#8c2f22);box-shadow:0 0 0 2px color-mix(in srgb,var(--doc-accent,#8c2f22) 20%,transparent);outline:none}.dm-library-more{color:color-mix(in srgb,var(--ink,#241c12) 60%,var(--paper,#eee2c8));margin:10px 2px 4px;font-size:12.5px;font-style:italic}.dm-prep-toolbar span{color:color-mix(in srgb,var(--ink,#241c12) 55%,var(--paper,#eee2c8));font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.dm-library-list{align-content:start;gap:10px;display:grid}.dm-library-list p{color:color-mix(in srgb,var(--ink,#241c12) 72%,var(--paper,#eee2c8));margin:3px 0 0;font-size:13px}.dm-creature-card{border:1px solid var(--doc-rule,#c9b896);border-left:3px solid color-mix(in srgb,var(--doc-accent,#a23f29) 60%,var(--doc-rule,#c9b896));border-radius:var(--r-sm,3px);background:var(--paper-raised,color-mix(in srgb,var(--paper,#ece1c9) 55%,#fff));gap:9px;padding:12px 14px;display:grid}.dm-creature-card:hover{border-color:color-mix(in srgb,var(--doc-accent,#a23f29) 45%,var(--doc-rule,#c9b896))}.dm-cc-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.dm-cc-title{min-width:0}.dm-cc-title strong{font-size:17px;font-weight:600;line-height:1.15;display:block}.dm-cc-type{color:color-mix(in srgb,var(--ink,#241c12) 62%,var(--paper,#ece1c9));text-transform:capitalize;margin-top:1px;font-size:12.5px;font-style:italic;display:block}.dm-cc-cr{border:1px solid color-mix(in srgb,var(--doc-accent,#a23f29) 45%,transparent);border-radius:var(--r-sm,3px);color:var(--doc-accent,#a23f29);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;align-self:start;justify-items:center;gap:1px;padding:3px 9px;font-size:14px;font-weight:600;display:grid}.dm-cc-cr em{color:color-mix(in srgb,var(--ink,#241c12) 55%,var(--paper,#ece1c9));font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.06em;font-size:9px;font-style:normal;font-weight:600}.dm-cc-stats{border-top:1px solid color-mix(in srgb,var(--doc-accent,#a23f29) 28%,transparent);border-bottom:1px solid color-mix(in srgb,var(--doc-accent,#a23f29) 28%,transparent);flex-wrap:wrap;gap:5px 20px;padding:8px 0;display:flex}.dm-cc-stat{align-items:baseline;gap:6px;min-width:0;display:flex}.dm-cc-stat>span{color:color-mix(in srgb,var(--ink,#241c12) 55%,var(--paper,#ece1c9));font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:600}.dm-cc-stat b{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.dm-cc-stat b small{color:color-mix(in srgb,var(--ink,#241c12) 52%,var(--paper,#ece1c9));margin-left:4px;font-size:11.5px;font-weight:400}.dm-cc-abilities{text-align:center;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;display:grid}.dm-cc-abil{gap:1px;padding:2px 0;display:grid}.dm-cc-abil>span{color:color-mix(in srgb,var(--ink,#241c12) 55%,var(--paper,#ece1c9));font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.05em;font-size:9.5px;font-weight:700}.dm-cc-abil b{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.dm-cc-abil em{color:color-mix(in srgb,var(--ink,#241c12) 62%,var(--paper,#ece1c9));font-variant-numeric:tabular-nums;font-size:11px;font-style:normal}.dm-cc-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dm-cc-tags{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;margin-right:auto;display:flex}.dm-cc-kind{color:var(--doc-accent,#a23f29);font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.1em;text-transform:uppercase;font-size:9.5px;font-weight:700}.dm-cc-tag{border:1px solid var(--doc-rule-soft,#d5c8af);color:color-mix(in srgb,var(--ink,#241c12) 62%,var(--paper,#ece1c9));letter-spacing:.02em;border-radius:999px;padding:1px 8px;font-size:10.5px}.dm-cc-actions{flex-wrap:wrap;gap:6px;display:flex}.dm-cc-actions button{min-height:30px;padding:5px 10px}.dm-editor{border-left:1px solid var(--doc-rule,#b7a589);padding-left:20px}.dm-editor h3,.dm-generator h3,.dm-sessions h3{color:var(--doc-accent,#8c2f22);margin:0 0 14px}.dm-editor details{border-bottom:1px solid var(--doc-rule-soft,#d5c8af);padding:11px 0}.dm-editor summary{color:color-mix(in srgb,var(--ink,#241c12) 68%,var(--paper,#eee2c8));cursor:pointer;margin-bottom:10px}.dm-editor details[open]>summary{color:var(--doc-accent,#8c2f22)}.dm-generator p,.dm-editor p:not(.dm-empty):not([class]){color:color-mix(in srgb,var(--ink,#241c12) 70%,var(--paper,#eee2c8));font-size:13.5px;font-style:italic}.dm-editor label,.dm-generator label,.dm-summary label,.dm-prep-content main>section label,.dm-form-row label,.dm-form-grid label{color:color-mix(in srgb,var(--ink,#241c12) 62%,var(--paper,#eee2c8));font-family:var(--font-label,system-ui,sans-serif);letter-spacing:.06em;text-transform:uppercase;flex:150px;gap:5px;margin:8px 0;font-size:11px;font-weight:600;display:grid}.dm-prep input,.dm-prep select,.dm-prep textarea{border:0;border-bottom:1px solid var(--doc-rule,#b7a589);min-height:38px;color:var(--ink,#241c12);font-family:var(--font-body,Georgia,serif);background:0 0;border-radius:0;padding:6px 2px;font-size:15px}.dm-prep textarea{resize:vertical;min-height:88px;padding:6px 0;line-height:1.5}.dm-prep input::placeholder,.dm-prep textarea::placeholder{color:color-mix(in srgb,var(--ink,#241c12) 40%,var(--paper,#eee2c8))}.dm-prep select option{background:var(--paper,#eee2c8)}.dm-prep :is(input,select,textarea):focus{border-bottom-color:var(--doc-accent,#8c2f22);outline:none}.dm-prep :is(button,input,select,textarea):focus-visible{outline:2px solid color-mix(in srgb,var(--doc-accent,#8c2f22) 45%,transparent);outline-offset:2px}.dm-prep label:has(>input[type=checkbox]){text-transform:none;letter-spacing:0;align-items:center;gap:6px;margin:8px 0;font-size:12px;display:inline-flex}.dm-prep input[type=checkbox]{min-height:0;accent-color:var(--doc-accent,#8c2f22)}.dm-combatant-templates{display:grid}.dm-combatant-templates>div{border-bottom:1px solid var(--doc-rule-soft,#d5c8af);grid-template-columns:minmax(130px,1fr) 68px 118px auto auto;align-items:center;gap:7px;padding:8px 0;display:grid}.dm-form-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px 16px;margin:16px 0;display:grid}.dm-form-grid label{flex:none}.dm-schedule-confirm-row{border-top:1px solid var(--doc-rule-soft,#d5c8af);flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:12px;padding-top:2px;display:flex}.dm-schedule-confirm-row label{flex:180px}.dm-schedule-confirm{white-space:nowrap;flex:none;min-height:38px;margin-bottom:8px}.dm-session-list-head{justify-content:space-between;align-items:end;gap:12px;margin:22px 0 10px;display:flex}.dm-session-list-head h3{margin:3px 0 0}.dm-session-list-head>small{color:color-mix(in srgb,var(--ink,#241c12) 58%,var(--paper,#eee2c8))}.dm-session-series-note{color:color-mix(in srgb,var(--ink,#241c12) 65%,var(--paper,#eee2c8));margin:-4px 0 14px;font-size:12px;font-style:italic}.dm-warnings{border-left:3px solid var(--doc-accent,#8c2f22);background:color-mix(in srgb,var(--doc-accent,#8c2f22) 7%,var(--paper,#eee2c8));margin:14px 0;padding:12px 14px}.dm-warnings h4{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--doc-accent,#8c2f22);margin:0 0 6px;font-size:11px;font-weight:600}.dm-warnings p{margin:0 0 5px;font-size:13px}.dm-session-action{border:1px solid var(--doc-rule,#b7a589);justify-content:space-between;margin-bottom:16px;padding:14px}.dm-session-action h3{margin:0}.dm-session-action p{color:color-mix(in srgb,var(--ink,#241c12) 68%,var(--paper,#eee2c8));margin:4px 0 0;font-size:13.5px}.dm-session-header-note{color:color-mix(in srgb,var(--ink,#241c12) 60%,var(--paper,#eee2c8));font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.dm-summary{border-top:2px solid var(--ink,#241c12);margin-top:20px;padding-top:18px}.dm-empty{color:color-mix(in srgb,var(--ink,#241c12) 48%,var(--paper,#eee2c8));margin:8px 0 0;font-size:13px;font-style:italic}@media (max-width:1024px){.dm-prep-split{grid-template-columns:1fr}.dm-editor{border-left:0;border-top:1px solid var(--doc-rule,#b7a589);padding:16px 0 0}.dm-form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media (max-width:768px){.dm-prep-scrim{padding:0}.dm-prep{border-radius:0;height:100dvh}.dm-prep-body{grid-template-columns:1fr}.dm-prep-rail{border-right:0;border-bottom:1px solid var(--doc-rule,#b7a589);flex-flow:wrap;gap:2px;padding:8px 10px}.dm-prep-rail-label{display:none}.dm-prep-rail button{border-bottom:2px solid #0000;border-left:0;padding:6px 10px}.dm-prep-rail button.active{border-bottom-color:var(--doc-accent,#8c2f22)}.dm-prep-content>main{padding:14px}.dm-form-grid{grid-template-columns:1fr}.dm-cc-abilities{gap:2px}.dm-combatant-templates>div{grid-template-columns:1fr 68px}.dm-prep>header h2{font-size:22px}}.dm-live-encounter{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);background:color-mix(in srgb,var(--doc-accent,#c9a25a) 8%,var(--ground-2,#1f1a12));align-items:start;gap:10px;margin:0 0 14px;padding:12px 14px;display:grid}.dm-live-encounter>div:first-child{gap:3px;display:grid}.dm-live-encounter span,.dm-live-encounter summary{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:11px}.dm-live-encounter strong{color:var(--paper,#e9dfc8)}.dm-live-encounter small,.dm-live-encounter p{color:color-mix(in srgb,var(--paper,#e9dfc8) 70%,transparent);margin:0;font-size:13px}.dm-live-encounter details p{margin-top:6px}.dm-upcoming{gap:4px;display:grid}.dm-upcoming label{align-items:center;gap:6px;font-size:12px;display:flex}.dm-live-encounter>div:last-child{flex-wrap:wrap;gap:6px;display:flex}.dm-pin{text-transform:uppercase;justify-self:start;margin-top:3px;min-height:0!important;color:var(--doc-accent,#c9a25a)!important;font-family:var(--font-label)!important;background:0 0!important;border:0!important;padding:0!important;font-size:10px!important}@media (max-width:900px){.dm-live-encounter{grid-template-columns:1fr}.dm-live-encounter details{max-height:180px;overflow:auto}}.campaign-memory{border:1px solid var(--doc-rule);background:color-mix(in srgb,var(--paper) 94%,var(--doc-accent));color:var(--ink);margin:0 0 16px;padding:14px}.campaign-memory>header{border-bottom:1px solid var(--doc-rule-soft);align-items:center;gap:7px;padding-bottom:9px;display:flex}.campaign-memory>header h3{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px}.campaign-memory>header span{color:var(--doc-accent);margin-left:auto;font-size:12px}.campaign-memory>div{grid-template-columns:1fr 1fr;gap:18px;padding-top:12px;display:grid}.campaign-memory h4{font-family:var(--font-label);text-transform:uppercase;margin:0 0 8px;font-size:12px}.campaign-memory article{border-bottom:1px solid var(--doc-rule-soft);gap:4px;padding:8px 0;display:grid}.campaign-memory article p{margin:0;font-size:14px;line-height:1.45}.campaign-memory article span,.campaign-memory article a{color:var(--doc-accent);align-items:center;gap:4px;font-size:12px;display:flex}.campaign-handout-text{white-space:pre-wrap}.campaign-memory-empty,.campaign-memory-error{color:var(--ink-2);font-size:13px}@media (max-width:760px){.campaign-memory>div{grid-template-columns:1fr}}.dm-table:before{content:"";z-index:0;pointer-events:none;border-radius:inherit;background:var(--grain);opacity:.05;background-size:140px 140px;position:absolute;inset:0}.dm-table>*{z-index:1;position:relative}.dm-table-head{border-bottom:2px solid color-mix(in srgb, var(--paper,#e9dfc8) 80%, transparent);justify-content:space-between;align-items:center;gap:16px;padding:0 0 14px;display:flex}.dm-table-head:after{content:none}.dm-table-head>div,.dm-table-head>div:last-child{align-items:center;gap:10px;display:flex}.dm-table-head span{color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-family:var(--font-label);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:600}.dm-table-head h2{color:var(--paper,#e9dfc8);font-family:var(--font-display,var(--font-body));margin:2px 0 0;font-size:clamp(22px,3vw,30px);font-weight:500;line-height:1.1}.dm-table-code{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 26%, transparent);color:color-mix(in srgb, var(--paper,#e9dfc8) 80%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:600;display:inline-flex}.dm-table>.dm-table-head{z-index:20}.dm-table-head>.dm-head-who{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.dm-head-who small{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-size:.6rem;font-weight:600}.dm-head-who strong{font-family:var(--font-display,var(--font-body));color:var(--paper,#e9dfc8);font-size:1.15rem;font-weight:600;line-height:1.15}.dm-head-spacer{flex:1}.dm-btn-ghost{background:0 0;border-color:#0000}.dm-menu{position:relative}.dm-menu>summary{cursor:pointer;align-items:center;gap:6px;list-style:none;display:inline-flex}.dm-menu>summary::-webkit-details-marker{display:none}.dm-menu-list{z-index:60;background:var(--dm-panel,#241f18);border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 18%, transparent);min-width:220px;color:var(--paper,#e9dfc8);border-radius:10px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 34px #0006}.dm-menu-list button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:7px 9px;font-size:.82rem;display:flex}.dm-menu-list button:hover:not(:disabled){background:color-mix(in srgb, var(--paper,#e9dfc8) 10%, transparent)}.dm-menu-list button:disabled{opacity:.45;cursor:default}.dm-menu-list button.is-danger{color:var(--dm-danger,#b33b32)}.dm-menu-list hr{border:0;border-top:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 14%, transparent);margin:4px 2px}.dm-btn-outline{background:0 0}.dm-initiative-rail .dm-rail-add{width:calc(100% - 16px);margin:6px 8px 2px}.dm-rail-party{margin:10px 14px 0}.dm-rail-label{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);margin-bottom:6px;font-size:.6rem;font-weight:700;display:block}.dm-readiness{align-items:center;gap:8px;padding:6px 0;display:flex}.dm-readiness .dm-dot{background:var(--dm-muted,#6b5f4e);border-radius:999px;flex:none;width:8px;height:8px}.dm-readiness .dm-dot[data-state=warn]{background:var(--dm-warning,#bd9654)}.dm-readiness .dm-dot[data-state=ok]{background:var(--dm-success,#6e9d82)}.dm-readiness-t{color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);flex:1;font-size:.82rem}.dm-readiness-t b{font-family:var(--font-label);color:var(--paper,#e9dfc8);font-size:.78rem;font-weight:600;display:block}.dm-rail-rests{flex-direction:column;gap:4px;margin-top:auto;padding:10px 14px 12px;display:flex}.dm-rail-rests .dm-btn{width:100%}.dm-empty-row{border:1px dashed color-mix(in srgb, var(--paper,#e9dfc8) 30%, transparent);text-align:center;border-radius:6px;padding:10px;font-style:italic}.dm-round-num{font-family:var(--font-space-mono,monospace);letter-spacing:0}.dm-deck-label{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);margin:2px 0 6px;font-size:.62rem;font-weight:700;display:block}.dm-stage-tips{color:color-mix(in srgb, var(--paper,#e9dfc8) 62%, transparent);margin:4px 0 0;padding-left:20px;font-size:.82rem}.dm-stage-tips li{margin:2px 0}.dm-deck-more .dm-menu-list{left:0;right:auto}.dm-glance{background:var(--dm-panel,#241f18);border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);border-radius:10px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.dm-glance-rows{flex-direction:column;padding:6px 14px;display:flex}.dm-glance-row{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 10%, transparent);align-items:center;gap:8px;padding:7px 0;display:flex}.dm-glance-row:last-child{border-bottom:0}.dm-glance-row .dm-dot{background:var(--dm-muted,#6b5f4e);border-radius:999px;flex:none;width:8px;height:8px}.dm-glance-row .dm-dot[data-state=warn]{background:var(--dm-warning,#bd9654)}.dm-glance-row .dm-dot[data-state=ok]{background:var(--dm-success,#6e9d82)}.dm-glance-row .dm-dot[data-state=info]{background:var(--dm-info,#5c94c8)}.dm-glance-t{color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);flex:1;font-size:.82rem}.dm-glance-t b{font-family:var(--font-label);color:var(--paper,#e9dfc8);font-size:.78rem;font-weight:600;display:block}.dm-glance-n{font-family:var(--font-space-mono,monospace);color:var(--paper,#e9dfc8);font-size:.82rem}.dm-glance-div{border:0;border-top:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 12%, transparent);margin:6px 14px 0}.dm-glance-hint{color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);margin:0;padding:8px 14px 12px;font-size:.8rem;font-style:italic}.dm-prep-host{height:100%;min-height:0;overflow-y:auto}.dm-prep-host[hidden]{display:none}.dm-prep-inline{width:100%;max-width:none;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0}.dm-prep .ws-head{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 12%, transparent);align-items:center;gap:14px;padding:11px 16px;display:flex}.dm-prep .ws-head .who{flex-direction:column;display:flex}.dm-prep .ws-head .who small{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);font-size:.6rem}.dm-prep .ws-head .who strong{font-family:var(--font-display,var(--font-label));color:var(--paper,#e9dfc8);font-size:1.15rem;font-weight:600}.dm-prep .ws-head .ctx{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);font-size:.7rem}.dm-prep .ws-head .spacer{flex:1}.dm-prep-rail .ws-item{width:100%;font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;border-left:2px solid #0000;border-radius:6px;align-items:center;gap:9px;padding:8px 9px;font-size:.76rem;font-weight:600;display:flex}.dm-prep-rail .ws-item .count{font-family:var(--font-space-mono,monospace);color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);margin-left:auto;font-size:.72rem}.dm-prep .ws-empty{border:1px dashed color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);text-align:center;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;margin-top:12px;padding:24px;display:flex}.dm-prep .ws-empty h3{font-family:var(--font-display,var(--font-label));color:var(--paper,#e9dfc8);margin:0;font-size:1.4rem;font-weight:600}.dm-prep .ws-empty p{color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);max-width:44ch;margin:0;font-size:.9rem}.dm-prep .ws-empty .cta{gap:9px;margin-top:11px;display:flex}.dm-table-error{color:var(--dm-danger,#b33b32);margin:10px 0 0;font-size:12.5px;font-style:italic}.dm-table h3{color:var(--doc-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.dm-region-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.dm-region-head h3{margin-right:auto}.dm-round{color:color-mix(in srgb, var(--paper,#e9dfc8) 62%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600}.dm-table-grid{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(230px,.8fr) minmax(360px,1.5fr) minmax(240px,.85fr);min-height:0;display:grid;overflow:hidden}.dm-table-grid>*{min-height:0}.dm-table-region{border-right:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);min-width:0;min-height:0;padding:18px;overflow:auto}.dm-table-region:last-child{border-right:0}.dm-table-region>h3{margin-bottom:12px}.dm-empty{color:color-mix(in srgb, var(--paper,#e9dfc8) 45%, transparent);margin:8px 0 0;font-size:12.5px;font-style:italic;line-height:1.5}.dm-party-row{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 14%, transparent);width:100%;color:inherit;font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 2px;transition:background .14s;display:grid}.dm-party-row:hover:not(:disabled){background:color-mix(in srgb, var(--paper,#e9dfc8) 5%, transparent)}.dm-party-row:disabled{cursor:default}.dm-party-row>svg{color:color-mix(in srgb, var(--paper,#e9dfc8) 40%, transparent);margin-top:4px}.dm-party-seal{background:color-mix(in srgb, var(--doc-accent,#8c2f22) 82%, #14100a);color:#ece1c9;width:28px;height:28px;font-family:var(--font-label);border-radius:50%;place-items:center;margin-top:1px;font-size:12px;font-weight:600;display:grid;box-shadow:inset 0 0 0 2px #ece1c940}.dm-party-row span:nth-child(2){gap:4px;min-width:0;display:grid}.dm-party-row strong{color:var(--paper,#e9dfc8);font-size:14px;font-weight:600;line-height:1.3}.dm-party-row small{color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-family:var(--font-label);letter-spacing:.04em;font-size:11px}.dm-party-row em{color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);font-size:11.5px;font-style:italic}.dm-party-row em.dm-party-conditions{color:var(--doc-accent,#c9a25a)}.dm-hp-track{background:color-mix(in srgb, var(--paper,#e9dfc8) 14%, transparent);height:4px;display:block;overflow:hidden}.dm-hp-track i{background:var(--doc-accent,#c9a25a);height:100%;transition:width .4s;display:block}.dm-hp-track.is-low i{background:#c9563a}.dm-initiative{gap:0;display:grid}.dm-combatant{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 14%, transparent);border-left:3px solid #0000;grid-template-columns:34px minmax(0,1fr) auto auto auto auto;align-items:center;gap:10px;padding:8px 6px 8px 4px;display:grid}.dm-visibility{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 24%,transparent);background:var(--ground-2,#1f1a12);max-width:130px;min-height:30px;color:var(--paper,#e9dfc8);font-family:var(--font-label);text-transform:uppercase;font-size:10px}.dm-combatant.is-current{border-left-color:var(--doc-accent,#c9a25a);background:color-mix(in srgb, var(--paper,#e9dfc8) 7%, transparent)}.dm-combatant.is-hidden{opacity:.55}.dm-combatant.is-hidden .dm-init-chip{border-style:dashed}.dm-combatant.is-pending{opacity:.72}.dm-init-chip.is-pending{cursor:default;color:color-mix(in srgb, var(--paper,#e9dfc8) 42%, transparent);border-style:dashed}.dm-pending-label{color:color-mix(in srgb, var(--doc-accent,#c9a25a) 80%, var(--paper,#e9dfc8));font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-style:normal}.dm-init-chip{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 30%, transparent);width:30px;height:30px;color:var(--paper,#e9dfc8);font-family:var(--font-label);cursor:pointer;background:0 0;place-items:center;padding:0;font-size:12px;font-weight:600;display:grid}.dm-init-chip:hover{border-color:var(--doc-accent,#c9a25a);color:var(--doc-accent,#c9a25a)}.dm-combatant-name{gap:1px;min-width:0;display:grid}.dm-combatant-name strong{color:var(--paper,#e9dfc8);font-size:14px;font-weight:600}.dm-combatant-name em{color:color-mix(in srgb, var(--paper,#e9dfc8) 48%, transparent);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-style:normal}.dm-combatant-name small{color:color-mix(in srgb, var(--paper,#e9dfc8) 58%, transparent);font-size:11.5px;font-style:italic}.dm-combatant-hp,.dm-combatant-ac{color:color-mix(in srgb, var(--paper,#e9dfc8) 62%, transparent);font-family:var(--font-label);letter-spacing:.04em;white-space:nowrap;font-size:11px}.dm-combatant-hp input{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 28%, transparent);width:44px;color:var(--paper,#e9dfc8);font-family:var(--font-body);text-align:center;background:0 0;padding:3px 2px;font-size:13px}.dm-combatant-hp input:focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-btn{border:1px solid color-mix(in srgb, var(--text-primary,#e9dfc8) 30%, transparent);min-height:32px;color:color-mix(in srgb, var(--text-primary,#e9dfc8) 84%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:6px;padding:6px 11px;font-size:11px;font-weight:600;transition:border-color .14s,color .14s,background .14s;display:inline-flex}.dm-btn:hover:not(:disabled){border-color:var(--text-primary,#e9dfc8);color:var(--text-primary,#e9dfc8)}.dm-btn.is-active,.dm-btn.is-active:hover{border-color:var(--doc-accent,#c9a25a);color:var(--doc-accent,#c9a25a)}.dm-btn-primary{border-color:var(--paper,#e9dfc8);background:var(--paper,#e9dfc8);color:var(--ground-2,#1f1a12)}.dm-btn-primary:hover:not(:disabled){color:var(--paper,#e9dfc8);background:0 0}.dm-btn:disabled{opacity:.4;cursor:default}.dm-icon-btn{width:28px;height:28px;color:color-mix(in srgb, var(--paper,#e9dfc8) 45%, transparent);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.dm-icon-btn:hover{color:#ef9a85}.dm-command-row{border-top:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);flex-wrap:wrap;align-items:center;gap:7px;margin-top:16px;padding-top:12px;display:flex}.dm-command-gap{flex:1}.dm-inline-form{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);background:color-mix(in srgb, var(--paper,#e9dfc8) 4%, transparent);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px;display:flex}.dm-inline-form input,.dm-inline-form select{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 30%, transparent);min-width:0;min-height:32px;color:var(--paper,#e9dfc8);font-family:var(--font-body);background:0 0;flex:110px;padding:5px 8px;font-size:13.5px}.dm-inline-form input:focus,.dm-inline-form select:focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-inline-form input::placeholder{color:color-mix(in srgb, var(--paper,#e9dfc8) 42%, transparent)}.dm-inline-form select option{background:var(--ground-2,#1f1a12)}.dm-inline-form label{color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;display:inline-flex}.dm-inline-form input[type=checkbox]{min-height:0;accent-color:var(--doc-accent,#c9a25a);flex:0}.dm-audio-help{color:color-mix(in srgb, var(--paper,#e9dfc8) 62%, transparent);flex-basis:100%;font-size:11px;line-height:1.4}.dm-audio-form{align-items:stretch;gap:12px;display:grid}.dm-audio-row{align-items:end;gap:10px;min-width:0;display:flex}.dm-audio-field,.dm-audio-source{min-width:0;color:color-mix(in srgb, var(--paper,#e9dfc8) 72%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;flex:1 1 0;gap:5px;font-size:10px;font-weight:600;display:grid}.dm-audio-field input,.dm-audio-field select,.dm-audio-source input{box-sizing:border-box;width:100%}.dm-audio-title{flex-basis:42%}.dm-audio-kind{flex:0 130px}.dm-audio-submit{white-space:nowrap;flex:none}.dm-audio-source-row{align-items:stretch;padding-top:2px}.dm-audio-source{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 15%, transparent);background:color-mix(in srgb, var(--paper,#e9dfc8) 3%, transparent);border-radius:4px;padding:10px}.dm-audio-source>span{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dm-audio-source>span small{color:color-mix(in srgb, var(--paper,#e9dfc8) 46%, transparent);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:10px;font-weight:400;line-height:1.3}.dm-audio-source input[type=file]{border:1px dashed color-mix(in srgb, var(--paper,#e9dfc8) 28%, transparent);min-height:32px;color:color-mix(in srgb, var(--paper,#e9dfc8) 66%, transparent);font-family:var(--font-body);border-radius:3px;padding:3px;font-size:12px}.dm-audio-source input[type=file]::file-selector-button{border:1px solid color-mix(in srgb, var(--doc-accent,#c9a25a) 55%, transparent);background:color-mix(in srgb, var(--doc-accent,#c9a25a) 16%, transparent);color:var(--paper,#e9dfc8);cursor:pointer;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;border-radius:3px;margin-right:8px;padding:5px 8px;font-size:10px;font-weight:700}.dm-audio-source.is-selected{border-color:color-mix(in srgb, var(--doc-accent,#c9a25a) 65%, transparent);background:color-mix(in srgb, var(--doc-accent,#c9a25a) 8%, transparent)}.dm-audio-url-source input{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);border-radius:3px;min-height:32px;padding:6px 8px}.dm-audio-url-source input:disabled{opacity:.45;cursor:not-allowed}.dm-audio-or{color:color-mix(in srgb, var(--paper,#e9dfc8) 45%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;align-self:center;font-size:10px}.dm-custom-condition-form{flex-direction:column;flex-basis:100%;gap:6px;margin-top:2px;display:flex}.dm-custom-condition-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dm-custom-condition-row select,.dm-custom-condition-row input{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);min-width:0;min-height:30px;color:var(--paper,#e9dfc8);font-family:var(--font-body);background:0 0;flex:100px;padding:4px 6px;font-size:12.5px}.dm-custom-condition-row select:focus,.dm-custom-condition-row input:focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-custom-condition-nums{grid-template-columns:repeat(auto-fill,minmax(75px,1fr));gap:6px;display:grid}.dm-custom-condition-nums label{color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:4px;font-size:10px;display:inline-flex}.dm-custom-condition-nums label input{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);min-width:0;min-height:28px;color:var(--paper,#e9dfc8);font-family:var(--font-body);text-align:center;background:0 0;flex:1;padding:3px 5px;font-size:12px}.dm-custom-condition-nums label input:focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-custom-condition-extra{flex-wrap:wrap;gap:8px;display:flex}.dm-custom-condition-extra label{flex:120px;min-width:0}.dm-custom-condition-extra label span{color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.dm-custom-condition-extra label input{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);width:100%;min-height:30px;color:var(--paper,#e9dfc8);font-family:var(--font-body);background:0 0;padding:4px 6px;font-size:12.5px}.dm-custom-condition-extra label input:focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-record{flex-direction:column;min-height:0;display:flex}.dm-record>h3{margin-bottom:10px}.dm-filter{gap:5px;margin-bottom:8px;display:flex}.dm-filter button{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 22%, transparent);color:color-mix(in srgb, var(--paper,#e9dfc8) 60%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:4px 9px;font-size:10px;font-weight:600}.dm-filter button.is-active{border-color:var(--doc-accent,#c9a25a);color:var(--doc-accent,#c9a25a)}.dm-record-list,.dm-record{max-height:calc(100dvh - 300px);overflow-y:auto}.dm-record p{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 12%, transparent);color:color-mix(in srgb, var(--paper,#e9dfc8) 82%, transparent);gap:2px;margin:0;padding:8px 2px;font-size:12.5px;line-height:1.45;display:grid}.dm-record time{color:color-mix(in srgb, var(--paper,#e9dfc8) 42%, transparent);font-family:var(--font-label);letter-spacing:.08em;font-size:10px}.dm-soundboard{border-top:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 20%, transparent);border-right:0;grid-template-columns:minmax(200px,.5fr) 1fr;gap:8px 24px;margin-top:0;padding:16px 18px 6px;display:grid}.dm-soundboard>div:first-child{align-content:start;gap:4px;display:grid}.dm-soundboard small{color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);font-size:12px;font-style:italic}.dm-track-list{gap:0;display:grid}.dm-track-list>div{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 12%, transparent);border-left:3px solid #0000;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 2px;display:grid}.dm-track-list>div.is-playing{border-left-color:var(--doc-accent,#c9a25a);background:color-mix(in srgb, var(--paper,#e9dfc8) 6%, transparent);padding-left:8px}.dm-track-list span{align-items:center;gap:8px;min-width:0;display:flex}.dm-track-list span>svg{color:color-mix(in srgb, var(--paper,#e9dfc8) 55%, transparent);flex:none}.dm-track-list strong{color:var(--paper,#e9dfc8);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.dm-track-list small{color:color-mix(in srgb, var(--paper,#e9dfc8) 45%, transparent);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;margin-left:auto;font-size:10px}.dm-nowplaying{color:var(--doc-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;margin-left:auto;font-size:10px;font-style:normal;font-weight:600}.dm-soundboard .dm-inline-form{background:0 0;border:0;padding:6px 0 0}@media (max-width:700px){.dm-audio-row{flex-wrap:wrap}.dm-audio-title,.dm-audio-kind,.dm-audio-submit{flex:100%}.dm-audio-source-row{align-items:stretch}.dm-audio-source{flex-basis:100%}.dm-audio-or{text-align:center;flex-basis:100%}}.campaign-table-strip{z-index:80;border-top:2px solid var(--doc-accent,#8c2f22);background:var(--paper,#e9dfc8);max-width:min(760px,100vw - 36px);color:var(--ink,#2a2018);font-family:var(--font-body);align-items:center;gap:12px;padding:9px 12px;font-size:12.5px;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 28px #00000040}.campaign-table-strip.is-your-turn{background:color-mix(in srgb, var(--doc-accent,#8c2f22) 12%, var(--paper,#e9dfc8));border-top-width:3px}.campaign-table-strip>span{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:600}.campaign-table-strip.is-your-turn>span{color:var(--doc-accent,#8c2f22)}.campaign-table-strip em{color:var(--ink-2,#6f604e);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.campaign-table-strip>div{align-items:center;gap:7px;margin-left:auto;display:flex}.campaign-table-strip button{color:inherit;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:4px 6px;font-size:10.5px;font-weight:600;display:inline-flex}.campaign-table-strip button:hover{color:var(--doc-accent,#8c2f22)}.campaign-table-strip input{width:70px;accent-color:var(--doc-accent,#8c2f22)}@media (max-width:900px){.dm-table{min-height:0;padding:12px}.dm-table-grid{grid-template-rows:none;grid-template-columns:1fr;overflow:visible}.dm-table-region{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 16%, transparent);overflow:visible}.dm-command-party,.dm-command-party-list{overflow:visible}.dm-record{max-height:360px}.dm-soundboard{grid-template-columns:1fr}.campaign-table-strip{bottom:10px;left:10px;right:10px}.campaign-table-strip em{display:none}}.paper-surface{font-size:15px;line-height:1.45}.cs-sheet{font-size:calc(16px * var(--sheet-scale,1));line-height:1.45}.paper-surface :is(p,li,td,dd),.cs-sheet :is(p,li,td,dd){color:var(--ui-text-secondary);line-height:1.45}.paper-surface :is(small,.muted),.cs-sheet :is(.cs-muted,.cs-item-more,.cs-inv-meta,.cs-ac-src){color:var(--ui-text-muted)}.paper-surface :is(input,select,textarea),.cs-sheet :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){border:1px solid var(--ui-control-border);background:var(--ui-control-bg);min-height:40px;color:var(--ui-text-primary);font:inherit;border-radius:4px;padding:8px 10px;font-size:15px;line-height:1.3}.paper-surface textarea,.cs-sheet textarea{resize:vertical;min-height:88px}.paper-surface :is(input,textarea)::placeholder,.cs-sheet :is(input,textarea)::placeholder{color:var(--ui-placeholder);opacity:1}.paper-surface :is(input,select,textarea,button):focus-visible,.cs-sheet :is(input,select,textarea,button):focus-visible{outline:2px solid var(--ui-focus-ring);outline-offset:2px}.paper-surface :is(input,select,textarea):disabled,.cs-sheet :is(input,select,textarea):disabled{cursor:not-allowed;opacity:.62;background:color-mix(in srgb, var(--paper) 76%, var(--ink) 24%)}.cs-section-title,.cs-section-eyebrow,.cs-spell-level-head,.cs-skill-ability-tag,.cs-item-catalog-head,.cs-bg-label,.cs-console-label,.cs-equip-field,.cs-vital-label,.cs-prof-cat,.cs-reftab,.cs-action-table th,.cs-inv-meta,.cs-item-result span,.cs-spell-status-badges span,.cs-equipped-chip,.cs-ac-src{font-size:12px;line-height:1.25}.cs-section-title,.cs-section-eyebrow{font-size:11px}.cs-section-title,.cs-section-eyebrow,.cs-spell-level-head,.cs-skill-ability-tag,.cs-item-catalog-head,.cs-bg-label,.cs-console-label,.cs-equip-field,.cs-vital-label{color:var(--ui-text-secondary)}.cs-vital-cell strong,.cs-vital-rollable strong,.cs-vital-hp-row strong{color:var(--ui-text-primary);font-size:24px;line-height:1.1}.cs-ability-mod{color:var(--ui-text-primary);font-size:28px;line-height:1.1}.cs-ability-label{color:var(--ui-text-secondary);font-size:12px;line-height:1.25}.cs-ability-score{color:var(--ui-text-secondary);font-size:14px;line-height:1.25}.cs-vital-hp-max{color:var(--ui-text-secondary);font-size:14px}.cs-hp-temp,.cs-vital-death-row,.cs-death-reset{font-size:12px;line-height:1.25}.cs-save-name,.cs-skill-btn,.cs-sense-row,.cs-action-table,.cs-spell-card span,.cs-spell-card p,.cs-item-result p,.cs-inv-row span,.cs-inv-details,.cs-bg-field p,.cs-feature-card p,.cs-rule-note,.cs-hd-rest-info,.cs-conc-banner,.cs-spellbook-head small,.cs-known-spell-chip,.cs-spell-detail-meta,.cs-spell-detail-grid,.cs-spell-status-panel label{font-size:14px;line-height:1.45}.cs-save-bonus,.cs-skill-bonus,.cs-action-table td:nth-child(2){color:var(--ui-text-primary);font-size:16px}.cs-action-table td,.cs-inv-row strong,.cs-item-result strong,.cs-feature-card strong,.cs-spell-card strong{color:var(--ui-text-primary);font-size:15px}.cs-item-catalog-controls :is(input,select),.cs-equip-field select,.cs-spell-search,.cs-spellbook-add select,.cs-console-input,.roll-formula-input input,.cs-inv-form :is(input,select),.cs-effect-nums :is(input,select),.cs-effect-extra :is(input,select){border-color:var(--ui-control-border);background:var(--ui-control-bg);min-height:40px;color:var(--ui-text-primary);padding:8px 10px;font-size:15px;line-height:1.3}.cs-item-result,.cs-inv-row,.cs-feature-card,.cs-spell-card,.cs-item-catalog,.cs-spellbook-manager,.cs-hd-rest-panel{border-color:var(--ui-control-border)}.cs-sheet :is(.cs-feature-card,.cs-spell-card,.cs-inv-row,.cs-item-result,.cs-effect-row){border-radius:var(--r-1);background:var(--sheet-row-surface,color-mix(in srgb, var(--paper) 90%, var(--ink)))}.cs-sheet .cs-spell-card:nth-child(2n){background:var(--sheet-row-surface,color-mix(in srgb, var(--paper) 90%, var(--ink)))}.cs-sheet :is(.cs-feature-card,.cs-spell-card,.cs-item-result)>*>strong,.cs-sheet :is(.cs-feature-card,.cs-spell-card)>strong,.cs-sheet .cs-inv-row>div>strong{font-weight:var(--fw-strong);line-height:var(--lh-tight)}.cs-sheet :is(.cs-inv-row,.cs-item-result):hover{border-color:var(--ui-control-border);background:var(--sheet-row-surface-hover,color-mix(in srgb, var(--paper) 84%, var(--ink)))}.cs-sheet .cs-effect-row{opacity:1;border-left:3px solid var(--rule-soft);color:var(--ui-text-muted)}.cs-sheet .cs-effect-row.cs-effect-on{border-left-color:color-mix(in srgb, var(--accent) 70%, var(--rule));color:var(--ui-text-primary)}.cs-glass-btn,.cs-retire-btn,.cs-reftab,.cs-weapon-chip,.cs-inv-actions .cs-glass-btn,.cs-item-result .cs-glass-btn{min-height:32px;color:var(--ui-text-primary);font-size:13px;line-height:1.25}.cs-glass-btn.cs-manage-feats-btn,.cs-glass-btn.cs-manage-feats-btn:hover{color:var(--text-on-accent,#14110a);background:var(--border-brass,var(--select))}.cs-glass-btn.cs-manage-feats-btn:hover{border-color:var(--border-brass-bright,var(--select));box-shadow:inset 0 -2px #00000057, 0 0 0 2px color-mix(in srgb, var(--border-brass,var(--select)) 30%, transparent)}.cs-glass-btn:hover,.cs-retire-btn:hover,.cs-weapon-chip:hover{background:var(--ui-control-bg-hover);color:var(--ui-text-primary)}.cs-spell-detail-desc,.cs-spell-detail-roll,.cs-spell-reference-dice,.cs-spell-damage-dice{font-size:15px;line-height:1.5}.cs-tour-card p{font-size:14px;line-height:1.45}.ledger-spread :is(.ledger-toc .dj-rail-label,.ledger-toc-decided,.ledger-spread .dj-document-header p,.ledger-spread .dj-skill-hint,.ledger-cert-label,.ledger-cert-stat,.ledger-cert-stat i,.ledger-stamp em,.ledger-spread .points-pill,.ledger-spread .method-row button,.ledger-button.small,.threshold-state){font-size:12px;line-height:1.3}.dm-table-code.is-copied,.campaign-code-button.is-copied,.glass-button.is-copied{border-color:var(--doc-accent,#8c2f22);color:var(--doc-accent,#8c2f22)}.dm-inline-check{color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.dm-inline-check input{min-height:0;accent-color:var(--doc-accent,#c9a25a)}.campaign-group-heading{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--cp-text-3,var(--ink-3));margin-top:4px;padding:0 4px 6px;font-size:.62rem;font-weight:700}.onboarding-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:clamp(28px,5vh,52px);min-height:calc(100dvh - 102px);padding:clamp(28px,5vw,56px);display:flex}.onboarding-masthead{width:min(760px,100%)}.onboarding-masthead h2{margin:0}.onboarding-choices{grid-template-columns:1fr 1fr;gap:clamp(16px,2.5vw,28px);width:min(760px,100%);display:grid}.onboard-card{border:1px solid var(--ledger-edge,#c9bb98);border-radius:var(--r-sm,3px);background:color-mix(in srgb, var(--ledger-tint,#e2d5b8) 55%, var(--ledger-paper,#e9dfc8));min-height:clamp(300px,52vh,460px);color:var(--ledger-ink,#2a2018);text-align:center;cursor:pointer;align-content:center;justify-items:center;gap:10px;padding:32px 26px;transition:border-color .16s;display:grid;position:relative;overflow:hidden}.onboard-card:hover,.onboard-card:focus-visible{border-color:var(--ledger-seal,#8c2f22);outline:none}.onboard-card-art{z-index:0;opacity:0;transition:opacity .22s;position:absolute;inset:0}.onboard-card.has-art .onboard-card-art{opacity:1}.onboard-card-art img{object-fit:cover;filter:sepia(.28)saturate(.78)contrast(.96)brightness(.9);width:100%;height:100%}.onboard-card-scrim{z-index:1;opacity:0;pointer-events:none;background:linear-gradient(#18120d00 44%,#18120d8c 74%,#18120deb 100%);position:absolute;inset:0}.onboard-card.has-art .onboard-card-scrim{opacity:1}.onboard-card-seal{z-index:2;background:color-mix(in srgb, var(--ledger-seal,#8c2f22) 88%, #14100a);width:72px;height:72px;color:var(--ledger-paper,#e9dfc8);box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--ledger-paper,#e9dfc8) 26%, transparent);border-radius:50%;place-items:center;margin-bottom:8px;display:grid;position:relative;transform:rotate(-6deg)}.onboard-card:hover .onboard-card-seal{transition:transform .16s;transform:rotate(0)}.onboard-card.has-art .onboard-card-seal{display:none}.onboard-card-caption{z-index:2;justify-items:center;gap:6px;display:grid;position:relative}.onboard-card-name{color:var(--ledger-ink,#2a2018);font-family:var(--ledger-font,var(--font-body));font-variant:small-caps;letter-spacing:.04em;font-size:19px;font-weight:600}.onboard-card-desc{max-width:26ch;color:var(--ledger-faded,#7a6a52);font-family:var(--ledger-font,var(--font-body));font-size:13px;font-style:italic;line-height:1.5}.onboard-card-go{color:var(--ledger-seal,#8c2f22);font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;opacity:0;margin-top:8px;font-size:10.5px;font-weight:600;transition:opacity .16s}.onboard-card:hover .onboard-card-go,.onboard-card:focus-visible .onboard-card-go{opacity:1}.onboard-card.has-art{text-align:left;align-content:end;justify-items:start;padding:22px}.onboard-card.has-art .onboard-card-caption{justify-items:start}.onboard-card.has-art .onboard-card-name{color:#ece1c9}.onboard-card.has-art .onboard-card-desc{color:#ece1c9d1;max-width:32ch}.onboard-card.has-art .onboard-card-go{color:var(--select,#c9a25a);opacity:1}.onboarding-form{text-align:left;flex-direction:column;gap:14px;width:min(420px,100%);display:flex}.onboarding-field span{color:var(--ledger-faded,#7a6a52);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.onboarding-field input{border:0;border-bottom:1px solid var(--ledger-rule,#cfc2a2);width:100%;min-height:42px;color:var(--ledger-ink,#2a2018);font-family:var(--ledger-font,var(--font-body));background:0 0;border-radius:0;padding:8px 2px;font-size:19px}.onboarding-field input::placeholder{color:color-mix(in srgb, var(--ledger-ink,#2a2018) 38%, var(--ledger-paper,#e9dfc8))}.onboarding-field input:focus{border-bottom-color:var(--ledger-seal,#8c2f22);outline:none}.onboarding-footnote{color:var(--ledger-ghost,#a08d6c);font-family:var(--ledger-font,var(--font-body));margin:0;font-size:12px;font-style:italic}.onboarding-form-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.onboarding-error{color:var(--ledger-seal,#8c2f22);font-family:var(--ledger-font,var(--font-body));margin:0;font-size:13px;font-style:italic}@media (max-width:640px){.onboarding-choices{grid-template-columns:1fr}}.campaign-panel .campaign-event-card strong,.campaign-panel .campaign-event-card .campaign-notification-title{color:var(--ink)}.campaign-notification-title{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:.72rem;font-weight:700;display:block}.campaign-notification-prompt{color:var(--cp-text-2,var(--ink-2));font-size:.85rem;line-height:1.4;display:block}.campaign-notification-meta{color:var(--cp-text-3,var(--ink-3));font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:600;display:block}.campaign-event-actions>button{min-width:72px;min-height:36px}.campaign-form-actions>button{min-width:88px;min-height:38px}.entry-screen .brand-line{color:var(--parchment);letter-spacing:.16em;font-weight:500}.entry-screen .brand-seal{place-items:center;width:48px;height:48px;display:grid}.entry-screen .brand-seal img{object-fit:contain;filter:drop-shadow(0 2px 6px #00000059);width:100%;height:100%}.entry-copy h1{font-weight:500}.login-card.ledger-card{isolation:isolate;border:1px solid var(--ledger-edge,#c9bb98);border-radius:var(--r-sm,3px);background:var(--ledger-paper,#e9dfc8);color:var(--ledger-ink,#2a2018);box-shadow:var(--shadow-soft,0 18px 48px #00000073);-webkit-backdrop-filter:none;backdrop-filter:none;font-family:var(--ledger-font,var(--font-body));gap:16px;padding:clamp(26px,3vw,36px);position:relative;overflow:hidden}.login-card.ledger-card:before{content:"";z-index:0;pointer-events:none;background:var(--grain);opacity:.05;background-size:140px 140px;position:absolute;inset:0}.login-card.ledger-card>*{z-index:1;position:relative}.login-card.ledger-card .login-heading{border-bottom:2px solid var(--ledger-ink,#2a2018);gap:4px;padding-bottom:12px;position:relative}.login-card.ledger-card .login-heading:after{content:"";border-top:1px solid color-mix(in srgb, var(--ledger-ink,#2a2018) 26%, var(--ledger-paper,#e9dfc8));position:absolute;bottom:3px;left:0;right:0}.login-card.ledger-card .login-heading h2{color:var(--ledger-ink,#2a2018);font-family:var(--font-display,var(--ledger-font));text-shadow:none;margin:0;font-size:26px;font-weight:500;line-height:1.1}.login-card.ledger-card .mode-switch{border:0;border-bottom:1px solid var(--ledger-rule,#cfc2a2);background:0 0;border-radius:0;gap:0;padding:0}.login-card.ledger-card .mode-switch button{min-height:38px;color:var(--ledger-faded,#7a6a52);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;font-size:11px;font-weight:600}.login-card.ledger-card .mode-switch button:hover{color:var(--ledger-ink,#2a2018)}.login-card.ledger-card .mode-switch button.active{border-bottom-color:var(--ledger-seal,#8c2f22);color:var(--ledger-seal,#8c2f22);background:0 0;margin-bottom:-1px}.login-card.ledger-card .control-field{gap:5px}.login-card.ledger-card .control-field span{color:var(--ledger-faded,#7a6a52);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600}.login-card.ledger-card .control-field input{border:0;border-bottom:1px solid var(--ledger-rule,#cfc2a2);min-height:42px;color:var(--ledger-ink,#2a2018);font-family:var(--ledger-font,var(--font-body));background:0 0;border-radius:0;padding:6px 2px;font-size:17px}.login-card.ledger-card .control-field input::placeholder{color:color-mix(in srgb, var(--ledger-ink,#2a2018) 40%, var(--ledger-paper,#e9dfc8))}.login-card.ledger-card .control-field input:focus{border-bottom-color:var(--ledger-seal,#8c2f22);box-shadow:none}.login-card.ledger-card .auth-status{min-height:20px;color:var(--ledger-seal,#8c2f22);font-family:var(--ledger-font,var(--font-body));font-size:13px;font-style:italic}.login-card.ledger-card .login-submit{justify-content:center;margin-top:4px}.login-card.ledger-card .login-heading span{color:var(--ledger-faded,#7a6a52);font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:600}.dm-workspace-modes{align-items:center;gap:2px;margin-inline:auto;display:flex}.dm-workspace-modes button{min-height:36px;color:color-mix(in srgb,var(--paper,#e9dfc8) 58%,transparent);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:7px 10px;font-size:11px;font-weight:600}.dm-workspace-modes button:hover,.dm-workspace-modes button.is-active{color:var(--paper,#e9dfc8);border-bottom-color:var(--doc-accent,#c9a25a)}.dm-table-grid{grid-template-columns:minmax(270px,310px) minmax(480px,1fr) minmax(340px,390px)}.dm-command-party,.dm-command-inspector{border-right:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 16%,transparent);min-width:0;min-height:0;padding:18px}.dm-command-party{flex-direction:column;display:flex}.dm-command-inspector{border-right:0;border-left:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 16%,transparent)}.dm-command-party>header,.dm-command-inspector>header{border-bottom:2px solid color-mix(in srgb,var(--paper,#e9dfc8) 34%,transparent);gap:3px;padding-bottom:12px;display:grid}.dm-command-party>header>span,.dm-command-inspector>header>span,.dm-scene-workspace>span,.dm-workspace-empty>span{color:var(--doc-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600}.dm-command-party>header strong{color:var(--paper,#e9dfc8);font-size:15px;font-weight:600}.dm-command-party>header small,.dm-command-inspector>header small{color:color-mix(in srgb,var(--paper,#e9dfc8) 58%,transparent);font-size:12px}.dm-command-party-list{flex:1;min-height:0;display:grid;overflow:auto}.dm-command-member{border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 14%,transparent);border-left:3px solid #0000;position:relative}.dm-command-member.is-current:before{content:"CURRENT";color:var(--doc-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.1em;font-size:9px;position:absolute;top:8px;right:34px}.dm-command-member>button:first-child{width:100%;min-height:44px;color:var(--paper,#e9dfc8);text-align:left;cursor:pointer;background:0 0;border:0;gap:7px;padding:12px 34px 12px 10px;display:grid}.dm-command-member>button:first-child:focus-visible{outline:2px solid var(--doc-accent,#c9a25a);outline-offset:-2px}.dm-command-member-name{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dm-command-member-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.dm-command-member-name small{color:color-mix(in srgb,var(--paper,#e9dfc8) 56%,transparent);text-transform:capitalize;font-size:12px}.dm-command-hp-copy,.dm-command-vitals,.dm-command-death{font-size:13px}.dm-command-hp{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 24%,transparent);background:color-mix(in srgb,var(--ground-2,#1f1a12) 76%,#000);height:14px;display:block;position:relative;overflow:hidden}.dm-command-hp i{background:color-mix(in srgb,var(--doc-accent,#c9a25a) 54%,var(--paper,#e9dfc8));height:100%;display:block}.dm-command-hp b{color:var(--paper,#e9dfc8);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 2px #000;place-items:center;font-size:8px;font-weight:600;display:grid;position:absolute;inset:0}.dm-command-member.is-critical .dm-command-hp,.dm-command-member.is-unconscious .dm-command-hp{border-color:var(--doc-accent,#c9a25a)}.dm-command-member.is-unconscious{border-left-color:var(--doc-accent,#c9a25a)}.dm-command-slots,.dm-command-tags,.dm-command-resources{flex-wrap:wrap;gap:5px;display:flex}.dm-command-slots em,.dm-command-tags em,.dm-command-resources em{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);color:color-mix(in srgb,var(--paper,#e9dfc8) 72%,transparent);font-family:var(--font-label);align-items:center;gap:4px;margin:0;padding:2px 5px;font-size:10px;font-style:normal;display:inline-flex}.dm-command-slots b{letter-spacing:-1px;font-weight:400}.dm-command-open-sheet{width:28px;min-height:28px;color:color-mix(in srgb,var(--paper,#e9dfc8) 54%,transparent);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:34px;right:7px}.dm-command-party.is-compact{padding-inline:10px}.dm-command-party.is-compact .dm-command-member>button:first-child{padding-block:9px}.dm-command-inspector{flex-direction:column;min-height:0;display:flex}.dm-command-inspector>header h3{color:var(--paper,#e9dfc8);margin:0;font-size:19px;font-weight:600}.dm-command-inspector-tabs{border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);display:flex}.dm-command-inspector-tabs button{min-height:38px;color:color-mix(in srgb,var(--paper,#e9dfc8) 58%,transparent);font-family:var(--font-label);text-transform:uppercase;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;font-size:10px}.dm-command-inspector-body{flex:1;min-height:220px;padding:14px 0;overflow:auto}.dm-command-overview dl{background:color-mix(in srgb,var(--paper,#e9dfc8) 12%,transparent);grid-template-columns:repeat(2,1fr);gap:1px;margin:0 0 14px;display:grid}.dm-command-overview dl div{background:var(--ground-2,#1f1a12);padding:9px}.dm-command-overview dt,.dm-command-overview h4{color:color-mix(in srgb,var(--paper,#e9dfc8) 56%,transparent);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.dm-command-overview dd{color:var(--paper,#e9dfc8);margin:3px 0 0;font-size:16px}.dm-command-overview section{border-top:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 14%,transparent);padding:10px 0}.dm-command-overview h4,.dm-command-overview p{margin:0 0 5px}.dm-command-inspector-body article{border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 14%,transparent);gap:3px;padding:10px 0;display:grid}.dm-command-inspector-body article strong,.dm-command-inspector-body article p{color:var(--paper,#e9dfc8);margin:0}.dm-command-inspector-body article small,.dm-command-inspector-body article time{color:color-mix(in srgb,var(--paper,#e9dfc8) 54%,transparent);font-family:var(--font-label);text-transform:uppercase;font-size:10px}.dm-command-inspector>footer{border-top:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);flex-wrap:wrap;gap:6px;padding-top:12px;display:flex}.dm-command-empty,.dm-workspace-empty{width:100%;min-height:220px;color:color-mix(in srgb,var(--paper,#e9dfc8) 62%,transparent);text-align:center;place-content:center;justify-items:center;gap:8px;margin-inline:auto;display:grid}.dm-command-empty .dm-btn,.dm-workspace-empty .dm-btn{justify-self:center}.dm-command-empty strong,.dm-workspace-empty h3{color:var(--paper,#e9dfc8);margin:0;font-weight:600}.dm-command-empty span,.dm-workspace-empty p{max-width:420px;margin:0;font-size:13px}.dm-scene-workspace{align-content:center;justify-items:start;gap:12px;min-height:400px;padding:32px;display:grid}.dm-scene-workspace h3{color:var(--paper,#e9dfc8);font-family:var(--font-display);margin:0;font-size:30px;font-weight:500}.dm-scene-workspace p,.dm-scene-workspace blockquote{max-width:720px;color:color-mix(in srgb,var(--paper,#e9dfc8) 72%,transparent);margin:0;font-size:15px;line-height:1.6}.dm-scene-workspace blockquote{border-left:3px solid var(--doc-accent,#c9a25a);padding:14px 18px;font-style:italic}.dm-scene-workspace>div{flex-wrap:wrap;gap:7px;display:flex}.dm-workspace-review{padding:18px}.dm-workspace-review .dm-record-list{max-height:calc(100dvh - 300px);overflow:auto}@media (max-width:1280px){.dm-table-grid{grid-template-columns:minmax(250px,290px) minmax(0,1fr)}.dm-command-inspector{z-index:720;background:var(--ground-2,#1f1a12);width:min(390px,92vw);position:fixed;top:74px;bottom:0;right:0;box-shadow:-14px 0 30px #00000059}.dm-command-inspector:has(.dm-command-empty){display:none}.dm-workspace-modes{order:3;justify-content:center;width:100%}.dm-table-head{flex-wrap:wrap}}@media (max-width:800px){.dm-table-grid{grid-template-rows:none;grid-template-columns:1fr;overflow:visible}.dm-command-party{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 16%,transparent)}.dm-command-party,.dm-command-party-list,.dm-table-region{overflow:visible}.dm-workspace-modes{justify-content:flex-start;overflow:auto}}.dm-party-alerts{border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);gap:1px;padding:12px 0;display:grid}.dm-party-alerts h4{color:var(--doc-accent,#c9a25a);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;margin:0 0 5px;font-size:10px;display:flex}.dm-party-alerts button{border:0;border-left:3px solid color-mix(in srgb,var(--paper,#e9dfc8) 28%,transparent);background:color-mix(in srgb,var(--paper,#e9dfc8) 4%,transparent);min-height:42px;color:var(--paper,#e9dfc8);text-align:left;cursor:pointer;gap:2px;padding:7px 9px;display:grid}.dm-party-alerts button strong{font-size:13px;font-weight:600}.dm-party-alerts button small{color:color-mix(in srgb,var(--paper,#e9dfc8) 60%,transparent);font-size:11px}.dm-party-readiness{border-top:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);color:color-mix(in srgb,var(--paper,#e9dfc8) 62%,transparent);justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.dm-party-readiness span{align-items:center;gap:5px;display:flex}.dm-party-readiness strong{color:var(--paper,#e9dfc8);font-weight:600}.dm-note-form{border-top:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);gap:9px;margin-top:14px;padding-top:14px;display:grid}.dm-note-form :is(input,select,textarea){border:0;border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 28%,transparent);min-height:36px;color:var(--paper,#e9dfc8);background:0 0;padding:7px 2px}.dm-note-form textarea{resize:vertical;min-height:92px}.dm-note-form option{background:var(--ground-2,#1f1a12)}.dm-note-form :is(input,select,textarea):focus{border-bottom-color:var(--doc-accent,#c9a25a);outline:none}.dm-request-center{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:0 0 14px;display:grid}.dm-request-card{border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:color-mix(in srgb,var(--dm-surface,#e9dfc8) 94%,white);padding:12px}.dm-request-card header,.dm-request-card p{justify-content:space-between;gap:12px;display:flex}.dm-request-card header{border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);padding-bottom:8px}.dm-request-card header span,.dm-request-card em{color:var(--muted);font-size:.74rem;font-style:normal}.dm-request-card p{margin:7px 0 0;font-size:.8rem}.dm-request-card footer{margin-top:9px;font-size:.78rem;font-weight:700}.dm-target-picker{border:0;gap:8px;margin:0;padding:0;display:flex}.dm-target-picker legend{clip:rect(0 0 0 0);position:absolute}.dm-target-picker label{align-items:center;gap:4px;font-size:.75rem;display:flex}.dm-inspector-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.dm-inspector-actions .dm-btn{padding:5px 7px;font-size:.68rem}.dm-roll-presets{flex-wrap:wrap;flex-basis:100%;gap:5px;display:flex}.dm-roll-presets .dm-btn{padding:5px 7px;font-size:.66rem}.dm-pacing-facts{flex-wrap:wrap;gap:8px 16px;display:flex}.dm-pacing-facts span{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.dm-pacing-facts strong{color:var(--paper,#e9dfc8)}.dm-wave-list{flex-wrap:wrap;gap:8px;display:flex}.dm-wave-list article{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 18%,transparent);grid-template-columns:1fr auto;gap:3px 8px;min-width:230px;padding:8px;display:grid}.dm-wave-list article[data-ready=true]{border-color:var(--doc-accent,#c9a25a)}.dm-wave-list article>span{letter-spacing:.12em;color:var(--doc-accent,#c9a25a);font-size:.6rem}.dm-wave-list article>small{grid-column:1/-1}.dm-wave-list article>.dm-btn{padding:4px;font-size:.62rem}.dm-turn-actions{flex-wrap:wrap;gap:3px;display:flex}.dm-turn-actions .dm-icon-btn{width:auto;min-width:24px;padding:4px;font-size:.58rem}.dm-turn-actions .is-active{color:var(--doc-accent,#c9a25a)}.dm-turn-checklist{border-left:3px solid var(--doc-accent,#c9a25a);background:color-mix(in srgb,var(--paper,#e9dfc8) 6%,transparent);gap:6px;margin:0 0 12px;padding:10px;display:grid}.dm-turn-checklist label{align-items:center;gap:8px;font-size:.78rem;display:flex}.dm-turn-checklist small{text-transform:uppercase;letter-spacing:.08em;color:var(--doc-accent,#c9a25a);margin-right:8px}.dm-scene-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.dm-scene-columns section,.dm-capability-matrix,.dm-npc-drawer{border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);padding:10px}.dm-scene-columns label{margin:6px 0;font-size:.78rem;display:block}.dm-capability-matrix{overflow:auto}.dm-capability-matrix table{border-collapse:collapse;width:100%;font-size:.72rem}.dm-capability-matrix :is(th,td){border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);text-align:left;vertical-align:top;padding:6px}.dm-npc-drawer{gap:9px;display:grid}.dm-npc-drawer article{background:color-mix(in srgb,var(--ink) 4%,transparent);padding:9px}.dm-npc-drawer article header,.dm-npc-drawer article>div{flex-wrap:wrap;justify-content:space-between;gap:6px;display:flex}.dm-npc-drawer article p{margin:5px 0}.dm-npc-drawer article small{margin-bottom:7px;display:block}@media (max-width:900px){.dm-scene-columns{grid-template-columns:1fr}}.dm-loot-manager{gap:8px;width:100%;display:grid}.dm-loot-manager article{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 16%,transparent);padding:9px}.dm-loot-manager article p{justify-content:space-between;margin:5px 0;font-size:.75rem;display:flex}.dm-loot-manager article em{color:var(--doc-accent,#c9a25a);font-style:normal}.dm-head-session{align-items:center;gap:6px;display:flex}.dm-head-session input{border:0;border-bottom:1px solid color-mix(in srgb,var(--dm-ink,#2a2018) 30%,transparent);min-width:160px;color:var(--dm-ink,#2a2018);background:0 0;padding:6px;font-size:.8rem}.dm-head-session input::placeholder{color:var(--dm-muted,#6b5f4e)}.dm-workspace-modes .dm-live-dot{background:var(--dm-danger,#b33b32);vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.dm-command-palette{z-index:2200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080604ad;place-items:start center;padding-top:10vh;display:grid;position:fixed;inset:0}.dm-command-palette>div{background:var(--ground-2,#1f1a12);border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 24%,transparent);width:min(680px,100vw - 32px);padding:12px;box-shadow:0 24px 80px #000}.dm-command-palette input{border:0;border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 20%,transparent);width:100%;color:var(--paper,#e9dfc8);background:0 0;padding:12px;font-size:1rem}.dm-command-palette>div>small{color:var(--paper-muted,#b9ad95);margin:7px 0;display:block}.dm-command-palette ul{max-height:62vh;margin:0;padding:0;list-style:none;overflow:auto}.dm-command-palette li button{text-align:left;width:100%;color:var(--paper,#e9dfc8);background:0 0;border:0;grid-template-columns:70px 1fr;gap:2px 10px;padding:9px;display:grid}.dm-command-palette li button.is-active{background:color-mix(in srgb,var(--doc-accent,#c9a25a) 16%,transparent)}.dm-command-palette li button>span{letter-spacing:.1em;color:var(--doc-accent,#c9a25a);grid-row:1/3;font-size:.6rem}.dm-command-palette li button>small{color:var(--paper-muted,#b9ad95);font-size:.82rem}.dm-command-head{border-bottom:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 12%,transparent);color:var(--doc-accent,#c9a25a);align-items:center;gap:9px;padding:2px 4px 12px;display:flex}.dm-command-head strong{color:var(--paper,#e9dfc8);font-family:var(--font-label,inherit);letter-spacing:.06em;text-transform:uppercase;flex:1;font-size:.95rem}.dm-command-head kbd{border:1px solid color-mix(in srgb,var(--paper,#e9dfc8) 26%,transparent);color:var(--paper-muted,#b9ad95);border-radius:4px;padding:2px 7px;font-size:.7rem}.dm-command-palette>div>small.dm-command-hint{letter-spacing:.03em;font-size:.78rem}.dm-command-palette li button>strong{font-size:.98rem;font-weight:600}.dm-command-palette li button>span{text-transform:uppercase;font-size:.64rem;font-weight:700}.dm-command-palette li button{padding:11px 9px}.dm-first-tour{z-index:1500;background:var(--ground-2,#1f1a12);border:1px solid var(--doc-accent,#c9a25a);width:min(390px,100vw - 40px);color:var(--paper,#e9dfc8);padding:16px;position:fixed;bottom:20px;right:20px;box-shadow:0 16px 50px #000}.dm-first-tour ol{color:var(--paper-muted,#b9ad95);padding-left:20px;font-size:.78rem;line-height:1.55}.dm-rehearsal-control{border:1px solid color-mix(in srgb,var(--dm-ink,#2a2018) 18%,transparent);background:color-mix(in srgb,var(--dm-accent,#b3843e) 10%,transparent);align-items:center;gap:6px;margin-right:8px;padding:3px 5px;font-size:.68rem;display:inline-flex}.dm-rehearsal-control.is-active{border-color:color-mix(in srgb,var(--dm-accent,#b3843e) 55%,transparent)}.dm-rehearsal-control>span{color:var(--dm-muted,#6b5f4e);font-style:italic}.dm-rehearsal-mark{color:var(--doc-accent,#c9a25a);letter-spacing:.04em;text-transform:lowercase;margin-left:5px;font-size:.62rem;font-style:italic;font-weight:500}.dm-command-member.is-rehearsal{border-left:2px solid var(--doc-accent,#c9a25a)}.admin-scrim{z-index:720}.admin-panel{background:var(--paper);width:min(880px,100%);max-height:min(880px,100dvh - 40px);color:var(--ink);font-family:var(--font-body,var(--font-newsreader), Georgia, serif);flex-direction:column;display:flex;overflow:hidden}.cs-section-title-input{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--ground-2);width:min(100%,240px);color:var(--accent);font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;padding:2px 5px;font-size:11px}.admin-head{border-bottom:2px solid var(--ink,#2a2018);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;display:flex}.admin-head h2{color:var(--ink,#2a2018);font-family:var(--font-display,var(--ledger-font));margin:2px 0 0;font-size:24px;font-weight:500}.admin-close{color:var(--ink-2,#7a6a52);cursor:pointer;background:0 0;border:0}.admin-close:hover{color:var(--ink,#2a2018)}.admin-tabs{border-bottom:1px solid var(--doc-rule,#cfc2a2);gap:0;margin:12px 0 0;display:flex}.admin-tabs button{color:var(--ink-2,#7a6a52);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:7px;padding:8px 14px;font-size:11px;font-weight:600;display:inline-flex}.admin-tabs button:hover{color:var(--ink,#2a2018)}.admin-tabs button.active{border-bottom-color:var(--doc-accent,#8c2f22);color:var(--doc-accent,#8c2f22);margin-bottom:-1px}.admin-error{color:var(--doc-accent,#8c2f22);margin:10px 0 0;font-size:13px;font-style:italic}.admin-empty,.admin-note{color:var(--ink-3,#a08d6c);font-size:13px;font-style:italic}.admin-note{margin:0 0 12px}.admin-body{flex:1;min-height:0;padding:16px 2px 4px;overflow-y:auto}.admin-feedback-list{gap:0;display:grid}.admin-feedback-item{border-bottom:1px solid var(--doc-rule,#cfc2a2);padding:12px 2px}.admin-feedback-top{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.admin-feedback-top strong{color:var(--ink,#2a2018);margin-right:auto;font-size:15px;font-weight:600}.admin-chip{border:1px solid var(--doc-rule,#cfc2a2);color:var(--ink-2,#7a6a52);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;border-radius:0;padding:2px 8px;font-size:10px}.admin-chip-high,.admin-chip-blocking{border-color:var(--doc-accent,#8c2f22);color:var(--doc-accent,#8c2f22)}.admin-feedback-details{color:color-mix(in srgb, var(--ink,#2a2018) 82%, var(--paper,#e9dfc8));margin:6px 0;font-size:13.5px;line-height:1.55}.admin-feedback-meta{color:var(--ink-3,#a08d6c);font-size:11.5px;font-style:italic}.admin-feedback-actions{justify-content:flex-end;margin-top:8px;display:flex}.admin-resolve-btn{border:1px solid color-mix(in srgb, var(--doc-accent,#9b7b3e) 58%, var(--doc-rule,#cfc2a2));background:color-mix(in srgb, var(--doc-accent,#9b7b3e) 10%, transparent);min-height:30px;color:var(--ink,#2a2018);cursor:pointer;font:inherit;border-radius:5px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.admin-resolve-btn:hover{background:color-mix(in srgb, var(--doc-accent,#9b7b3e) 20%, transparent)}.admin-resolve-btn:focus-visible{outline:2px solid var(--doc-accent,#9b7b3e);outline-offset:2px}.admin-resolve-btn:disabled{cursor:wait;opacity:.65}.admin-invite-form{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.admin-invite-form input{border:0;border-bottom:1px solid var(--doc-rule,#cfc2a2);min-height:38px;color:var(--ink,#2a2018);font-family:var(--font-body,var(--font-newsreader), Georgia, serif);background:0 0;border-radius:0;flex:150px;padding:6px 2px;font-size:15px}.admin-invite-form input:focus{border-bottom-color:var(--doc-accent,#8c2f22);outline:none}.admin-invite-list{margin:0;padding:0;list-style:none}.admin-invite-list li{border-bottom:1px solid var(--doc-rule,#cfc2a2);align-items:center;gap:10px;padding:9px 2px;display:flex}.admin-invite-list li.is-revoked{opacity:.5}.admin-code{border:1px solid color-mix(in srgb, var(--ink,#2a2018) 28%, var(--paper,#e9dfc8));border-radius:var(--r-sm,3px);background:color-mix(in srgb, var(--paper-raised,#e2d5b8) 45%, var(--paper,#e9dfc8));color:var(--ink,#2a2018);font-family:var(--font-mono,monospace);letter-spacing:.1em;cursor:pointer;align-items:center;gap:6px;padding:4px 8px;font-size:14px;display:inline-flex}.admin-code.is-copied{border-color:var(--doc-accent,#8c2f22);color:var(--doc-accent,#8c2f22)}.admin-invite-meta{color:var(--ink-2,#7a6a52);margin-right:auto;font-size:12.5px}.admin-icon-btn{color:var(--ink-3,#a08d6c);cursor:pointer;background:0 0;border:0}.admin-icon-btn:hover{color:var(--doc-accent,#8c2f22)}.admin-totals{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px;display:grid}.admin-total{border:1px solid color-mix(in srgb, var(--ink,#2a2018) 28%, var(--paper,#e9dfc8));text-align:center;gap:2px;padding:12px;display:grid}.admin-total b{color:var(--ink,#2a2018);font-family:var(--font-display,var(--ledger-font));font-size:26px;font-weight:500}.admin-total span{color:var(--ink-2,#7a6a52);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.admin-overview h3{color:var(--doc-accent,#8c2f22);font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;margin:16px 0 8px;font-size:11px;font-weight:600}.admin-rows{margin:0;padding:0;list-style:none}.admin-rows li{border-bottom:1px solid var(--doc-rule,#cfc2a2);gap:2px;padding:9px 2px;display:grid}.admin-rows strong{color:var(--ink,#2a2018);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.admin-rows span{color:var(--ink-2,#7a6a52);font-size:12.5px}.admin-tag{border:1px solid var(--doc-accent,#8c2f22);color:var(--doc-accent,#8c2f22);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;padding:1px 7px;font-size:9px;font-style:normal}.admin-code-inline{color:var(--ink-2,#7a6a52);font-family:var(--font-mono,monospace);letter-spacing:.08em;font-size:12px}.dm-table{--dm-surface:var(--ledger-paper,#e9dfc8);--dm-ink:var(--ledger-ink,#2a2018);--dm-accent:var(--doc-accent,var(--ledger-seal,#8c2f22));--paper:var(--dm-ink);--ground-2:var(--dm-surface);--ink:var(--dm-ink);--paper-muted:color-mix(in srgb, var(--dm-ink) 55%, var(--dm-surface));--dm-rule:color-mix(in srgb, var(--dm-ink) 16%, transparent);--dm-muted:color-mix(in srgb, var(--dm-ink) 62%, transparent);--dm-ready:#2f8554;--dm-magic:#2677b8;--dm-focus:#7655aa;--dm-warning:#b66a1f;--dm-danger:#b33b32;border-color:var(--dm-rule);background:var(--dm-surface);color:var(--dm-ink)}.dm-table-head{border-bottom-color:color-mix(in srgb,var(--dm-ink) 58%,transparent)}.dm-table-head h2,.dm-table-head span,.dm-table h3,.dm-round,.dm-table-code{color:var(--dm-ink)}.dm-table-head span,.dm-round{opacity:.68}.dm-table-code{border-color:var(--dm-rule)}.dm-table-code:hover{border-color:var(--dm-ink);color:var(--dm-ink)}.dm-workspace-modes button{color:var(--dm-muted)}.dm-workspace-modes button:hover,.dm-workspace-modes button.is-active{color:var(--dm-ink)}.dm-table-grid{border-bottom:1px solid var(--dm-rule);grid-template-columns:minmax(350px,390px) minmax(480px,1fr) minmax(320px,370px)}.dm-table-region,.dm-command-party,.dm-command-inspector{border-color:var(--dm-rule)}.dm-command-party,.dm-command-inspector{padding:16px}.dm-command-party>header,.dm-command-inspector>header{border-bottom-color:color-mix(in srgb,var(--dm-ink) 32%,transparent)}.dm-command-party>header>span,.dm-command-inspector>header span,.dm-scene-workspace>span,.dm-workspace-empty>span{color:var(--doc-accent,#8c5a2b)}.dm-command-party>header strong,.dm-command-inspector>header h3{color:var(--dm-ink)}.dm-command-party>header small,.dm-command-inspector>header small{color:var(--dm-muted)}.dm-command-party-list{scrollbar-color:color-mix(in srgb,var(--dm-ink) 24%,transparent) transparent}.dm-command-member{border-bottom-color:var(--dm-rule)}.dm-command-member.is-selected{border-left-color:var(--dm-magic);background:color-mix(in srgb,var(--dm-magic) 8%,transparent)}.dm-command-member.is-unconscious{border-left-color:var(--dm-danger);background:color-mix(in srgb,var(--dm-danger) 8%,transparent)}.dm-command-member.is-current:before{color:var(--dm-magic)}.dm-command-member>button:first-child{color:var(--dm-ink);gap:8px;padding:13px 34px 13px 8px}.dm-member-primary{grid-template-columns:58px minmax(0,1fr);align-items:start;gap:11px;display:grid}.dm-character-portrait{box-shadow:0 0 0 2px color-mix(in srgb,var(--dm-surface) 75%,transparent),0 1px 5px color-mix(in srgb,var(--dm-ink) 20%,transparent)}.dm-command-member-name{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;display:grid}.dm-command-member-name strong{color:var(--dm-ink)}.dm-command-member-name small{color:var(--dm-muted);grid-column:1/-1}.dm-command-hp-copy{color:var(--dm-muted);font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;font-size:10px}.dm-command-hp{background:color-mix(in srgb,var(--dm-ink) 12%,transparent);height:12px;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--dm-ink) 13%,transparent);border:0;border-radius:999px;grid-column:1/-1}.dm-command-hp i{border-radius:inherit;background:var(--dm-ready)}.dm-command-hp b{color:var(--dm-surface);text-shadow:none;display:none}.dm-command-member.is-wounded .dm-command-hp i{background:var(--dm-warning)}.dm-command-member.is-critical .dm-command-hp i,.dm-command-member.is-unconscious .dm-command-hp i{background:var(--dm-danger)}.dm-command-member.is-critical .dm-command-hp b,.dm-command-member.is-unconscious .dm-command-hp b{display:grid}.dm-command-vitals,.dm-command-death{color:var(--dm-muted)}.dm-command-death{color:var(--dm-danger)}.dm-command-tags,.dm-condition-chips{flex-wrap:wrap;gap:5px;display:flex}.dm-state-chip,.dm-turn-state{border:0;border-left:4px solid var(--dm-rule);background:color-mix(in srgb,var(--dm-ink) 6%,transparent);min-height:22px;color:var(--dm-ink);font-family:var(--font-label);letter-spacing:.02em;align-items:center;margin:0;padding:2px 7px;font-size:10px;font-style:normal;display:inline-flex}.dm-state-chip[data-tone=body]{border-left-color:var(--dm-ready);background:color-mix(in srgb,var(--dm-ready) 15%,transparent)}.dm-state-chip[data-tone=magic]{border-left-color:var(--dm-magic);background:color-mix(in srgb,var(--dm-magic) 14%,transparent)}.dm-state-chip[data-tone=focus]{border-left-color:var(--dm-focus);background:color-mix(in srgb,var(--dm-focus) 14%,transparent)}.dm-state-chip[data-tone=warning],.dm-turn-state[data-tone=warning]{border-left-color:var(--dm-warning);background:color-mix(in srgb,var(--dm-warning) 16%,transparent)}.dm-state-chip[data-tone=danger]{border-left-color:var(--dm-danger);background:color-mix(in srgb,var(--dm-danger) 14%,transparent)}.dm-turn-state[data-tone=ready]{border-left-color:var(--dm-ready);background:color-mix(in srgb,var(--dm-ready) 13%,transparent)}.dm-slot-track{color:var(--dm-muted);flex-wrap:wrap;align-items:center;gap:5px;display:flex}.dm-slot-track>small{font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;margin-right:2px;font-size:10px}.dm-slot-level{align-items:center;gap:3px;display:inline-flex}.dm-slot-level i{min-width:14px;color:var(--dm-ink);font-family:var(--font-label);place-items:center;font-size:10px;font-style:normal;display:grid}.dm-slot-level b{border:1px solid color-mix(in srgb,var(--dm-magic) 68%,var(--dm-rule));background:var(--dm-magic);width:10px;height:10px}.dm-slot-level b.is-used{background:0 0}.dm-slot-track:not(.is-compact){gap:7px 9px;padding-top:4px}.dm-slot-track:not(.is-compact) .dm-slot-level b{width:13px;height:13px}.dm-command-resources,.dm-inspector-resources{flex-wrap:wrap;gap:5px;display:flex}.dm-resource-chip{border-left:4px solid var(--dm-ready);background:color-mix(in srgb,var(--dm-ready) 13%,transparent);min-height:23px;color:var(--dm-ink);font-family:var(--font-label);align-items:center;gap:6px;padding:2px 7px;font-size:10px;display:inline-flex}.dm-resource-chip strong{font-weight:700}.dm-resource-chip[data-tone=warning]{border-left-color:var(--dm-warning);background:color-mix(in srgb,var(--dm-warning) 16%,transparent)}.dm-resource-chip[data-tone=danger]{border-left-color:var(--dm-danger);background:color-mix(in srgb,var(--dm-danger) 14%,transparent)}.dm-resource-chip.is-detailed{flex:145px;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;min-height:40px;display:grid}.dm-resource-chip.is-detailed small{color:var(--dm-muted);text-transform:capitalize;grid-column:1/-1}.dm-command-open-sheet{color:var(--dm-muted)}.dm-command-open-sheet:hover{color:var(--dm-magic)}.dm-party-alerts{border-bottom-color:var(--dm-rule)}.dm-party-alerts h4{color:var(--dm-warning)}.dm-party-alerts button{border-left-color:var(--dm-warning);background:color-mix(in srgb,var(--dm-warning) 8%,transparent);color:var(--dm-ink)}.dm-party-alerts button[data-severity=critical]{border-left-color:var(--dm-danger);background:color-mix(in srgb,var(--dm-danger) 10%,transparent)}.dm-party-alerts button small{color:var(--dm-muted)}.dm-party-readiness{border-top-color:var(--dm-rule);color:var(--dm-muted)}.dm-party-readiness strong{color:var(--dm-ink)}.dm-inspector-identity{align-items:center;gap:12px;display:flex!important}.dm-inspector-identity>div{gap:2px;min-width:0;display:grid}.dm-command-inspector-tabs{border-bottom-color:var(--dm-rule)}.dm-command-inspector-tabs button{color:var(--dm-muted)}.dm-command-inspector-tabs button[aria-selected=true]{color:var(--dm-ink);border-bottom-color:var(--dm-magic)}.dm-command-overview dl{background:var(--dm-rule)}.dm-command-overview dl div{background:var(--dm-surface)}.dm-command-overview dt,.dm-command-overview h4{color:var(--dm-muted)}.dm-command-overview dd{color:var(--dm-ink)}.dm-command-overview section,.dm-command-inspector-body article,.dm-command-inspector>footer{border-color:var(--dm-rule)}.dm-command-inspector-body article strong,.dm-command-inspector-body article p{color:var(--dm-ink)}.dm-command-inspector-body article small,.dm-command-inspector-body article time,.dm-command-empty,.dm-workspace-empty{color:var(--dm-muted)}.dm-command-empty strong,.dm-workspace-empty h3,.dm-scene-workspace h3{color:var(--dm-ink)}.dm-scene-workspace p,.dm-scene-workspace blockquote{color:var(--dm-muted)}@media (max-width:1280px){.dm-table-grid{grid-template-columns:minmax(330px,370px) minmax(0,1fr)}.dm-command-inspector{background:var(--dm-surface);box-shadow:-10px 0 28px color-mix(in srgb,var(--dm-ink) 20%,transparent)}}@media (max-width:800px){.dm-table-grid{grid-template-columns:1fr}.dm-member-primary{grid-template-columns:52px minmax(0,1fr)}.dm-character-portrait.is-rail{width:48px;height:48px}}.cs-portrait-setting{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.cs-portrait-setting>div{gap:5px;display:grid}.cs-portrait-setting p{margin:0;font-size:12px}.cs-portrait-preview{flex:none;width:58px;height:58px}@media (max-width:560px){.cs-portrait-setting{grid-template-columns:auto minmax(0,1fr)}.cs-portrait-setting>button{grid-column:2;justify-self:start}}.cportrait{border:2px solid color-mix(in srgb, var(--doc-accent,#8c5a2b) 55%, var(--dm-surface,#2b241b));background:color-mix(in srgb, var(--doc-accent,#8c5a2b) 12%, var(--dm-surface,#2b241b));color:color-mix(in srgb, var(--ink) 75%, var(--paper));font-family:var(--font-display);box-sizing:border-box;flex:none;place-items:center;font-weight:600;display:grid;position:relative;overflow:hidden}.cportrait img{object-fit:cover;width:100%;height:100%;display:block}.cportrait-art{background-repeat:no-repeat;position:absolute;inset:0}.cportrait-initials{line-height:1}.cportrait.is-decorative{pointer-events:none}.portrait-field{align-items:center;gap:14px;padding:8px 0;display:flex}.portrait-field-preview{border:1px solid var(--rule-soft,#3c301e2e);box-shadow:0 3px 14px #0003;border-radius:10px!important}.portrait-field-preview .cportrait-art,.portrait-field-preview img{border-radius:9px}.portrait-field-info{flex-direction:column;gap:4px;display:flex}.portrait-field-label{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-size:.72rem}.portrait-field-btn{font-family:var(--font-body);color:var(--doc-accent);border:1px solid color-mix(in srgb, var(--doc-accent) 40%, transparent);cursor:pointer;background:0 0;border-radius:4px;padding:4px 12px;font-size:.82rem;transition:background .15s,border-color .15s}.portrait-field-btn:hover{background:color-mix(in srgb, var(--doc-accent) 12%, transparent);border-color:var(--doc-accent)}.portrait-field-btn:focus-visible{outline:2px solid var(--doc-accent);outline-offset:2px}.portrait-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0a08d1;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.portrait-modal{--pm-surface:#0d1a2a;--pm-band:#091321;--pm-ink:#e8edf4;--pm-muted:#aebdce;--pm-faint:#788ca2;--pm-rule:#2d4057;--pm-gold:#d8b35e;--pm-gold-deep:#b58d38;--pm-ring:#263b53;--pm-dreamwright:#63a7e8;--pm-dreamwright-deep:#3979b8;--pm-classic:#d8a765;--pm-classic-deep:#ae7840;background:linear-gradient(145deg, #12263b 0%, var(--pm-surface) 48%, #091321 100%);background-color:var(--pm-surface);border:1px solid var(--pm-rule);width:100%;max-width:880px;max-height:calc(100vh - 40px);color:var(--pm-ink);border-radius:10px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0006,0 24px 60px #0000008c}.portrait-modal-eyebrow{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--pm-muted);font-size:11px;font-weight:600}.portrait-modal-head{background:var(--pm-band);border-bottom:1px solid #4a4030a6;align-items:center;gap:12px;padding:14px 18px;display:flex}.portrait-modal-crest{border:1px solid var(--pm-rule);width:30px;height:30px;color:var(--pm-gold);border-radius:6px;flex:none;place-items:center;display:grid}.portrait-modal-head h2{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--pm-ink);margin:0;font-size:13px;font-weight:700}.portrait-modal-close{width:32px;height:32px;color:var(--pm-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;place-items:center;margin-left:auto;transition:color .15s,background .15s;display:grid}.portrait-modal-close:hover{color:var(--pm-ink);background:#ffffff0f}.portrait-modal-close:focus-visible{outline:2px solid var(--pm-gold);outline-offset:2px}.portrait-modal-body{flex:1;grid-template-columns:minmax(0,1fr) 300px;gap:0;min-height:0;display:grid;overflow:hidden}.portrait-modal-library{border-right:1px solid #4a403080;flex-direction:column;min-height:0;display:flex}.portrait-modal-library-head{text-shadow:0 1px 3px #0000008c;padding:16px 20px 0}.portrait-modal-library-head p{color:var(--pm-muted);margin:3px 0 0;font-size:12px}.portrait-modal-tabs{border-bottom:1px solid #4a403080;gap:20px;padding:12px 20px 0;display:flex}.portrait-modal-tab{font-family:var(--font-label);text-transform:uppercase;letter-spacing:.12em;color:var(--pm-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 2px 10px;font-size:11px;font-weight:600;transition:color .15s,border-color .15s}.portrait-modal-tab.is-active{color:var(--pm-gold);border-bottom-color:var(--pm-gold)}.portrait-modal-tab:hover:not(.is-active){color:var(--pm-ink)}.portrait-modal-tab:focus-visible{outline:2px solid var(--pm-gold);outline-offset:-2px}.portrait-modal-tab-count{color:var(--pm-faint);margin-left:4px;font-weight:500}.portrait-modal-tab-dw.is-active{color:var(--pm-dreamwright);border-bottom-color:var(--pm-dreamwright)}.portrait-modal-tab-dw:focus-visible{outline-color:var(--pm-dreamwright)}.portrait-modal-tab-cl.is-active{color:var(--pm-classic);border-bottom-color:var(--pm-classic)}.portrait-modal-tab-cl:focus-visible{outline-color:var(--pm-classic)}.portrait-modal-grid{isolation:isolate;contain:layout paint;flex:1;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-auto-rows:120px;align-content:start;gap:8px;max-height:420px;padding:16px 20px 20px;display:grid;overflow-y:auto}.portrait-modal-tile{aspect-ratio:auto;border:none;border:1px solid var(--pm-ring);background:var(--pm-band);width:100%;height:120px;box-shadow:inset 0 0 0 1px var(--pm-ring);cursor:pointer;z-index:0;border-radius:7px;padding:0;transition:box-shadow .16s,border-color .16s;position:relative;overflow:hidden;transform:translateZ(0)}.portrait-modal-tile-art{background-repeat:no-repeat;background-color:var(--pm-band);border-radius:6px;width:100%;height:100%;display:block;position:absolute;inset:0}.portrait-modal-tile:hover{box-shadow:inset 0 0 0 2px var(--pm-gold-deep), 0 4px 14px #00000061;border-color:var(--pm-gold-deep);z-index:1}.portrait-modal-tile:focus-visible{outline:2px solid var(--pm-gold);outline-offset:-3px;z-index:4}.portrait-modal-tile.is-selected{box-shadow:inset 0 0 0 3px var(--pm-gold), inset 0 0 0 4px #140f08bf;border-color:var(--pm-gold);z-index:1}.portrait-modal-tile-check{background:var(--pm-gold);color:#241c12;border-radius:3px;place-items:center;width:20px;height:20px;font-size:11px;font-weight:800;line-height:1;display:grid;position:absolute;bottom:6px;right:6px;box-shadow:0 1px 4px #00000080}.portrait-modal-selection{text-align:center;text-shadow:0 1px 3px #0000008c;background:#07101b9e;flex-direction:column;align-items:center;padding:22px 22px 18px;display:flex;overflow-y:auto}.portrait-modal-preview-ring{aspect-ratio:4/5;width:min(100%,238px);box-shadow:0 0 0 3px var(--pm-gold), 0 0 0 8px #c9a25a24, 0 10px 30px #00000073;border-radius:10px;margin-top:14px;overflow:hidden}.portrait-modal-preview-ring.is-cropping{aspect-ratio:1;cursor:grab}.portrait-modal-preview-ring.is-cropping:active{cursor:grabbing}.portrait-modal-crop-viewport{background:var(--pm-band);touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative;overflow:hidden}.portrait-modal-crop-image{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;display:block;position:absolute}.portrait-modal-crop-frame{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #fff6,inset 0 0 0 999px #050a120a}.portrait-modal-upload-trigger-hidden{display:none}.portrait-modal-zoom-label{width:min(100%,238px);color:var(--pm-muted);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;margin-top:12px;font-size:10px;font-weight:600;display:flex}.portrait-modal-zoom{width:min(100%,238px);accent-color:var(--pm-gold);margin:7px 0 12px}.portrait-modal-crop-actions{grid-template-columns:1fr 1fr;gap:7px;width:min(100%,238px);display:grid}.portrait-modal-crop-secondary,.portrait-modal-crop-primary{min-height:32px;font-family:var(--font-label);letter-spacing:.04em;cursor:pointer;border-radius:5px;padding:6px 8px;font-size:10px;font-weight:700}.portrait-modal-crop-secondary{border:1px solid var(--pm-rule);color:var(--pm-muted);background:0 0}.portrait-modal-crop-primary{border:1px solid var(--pm-gold);background:var(--pm-gold);color:#241c12}.portrait-modal-crop-secondary:hover:not(:disabled){color:var(--pm-ink);border-color:var(--pm-muted)}.portrait-modal-crop-primary:hover:not(:disabled){background:var(--pm-gold-deep);border-color:var(--pm-gold-deep)}.portrait-modal-crop-secondary:disabled,.portrait-modal-crop-primary:disabled{opacity:.45;cursor:not-allowed}.portrait-modal-preview-ring .cportrait{background:var(--pm-band);color:var(--pm-faint);border:none;width:100%!important;height:100%!important}.portrait-modal-preview-empty{background:var(--pm-band);border-radius:8px;width:100%;height:100%;display:block}.portrait-modal-char-name{font-family:var(--font-display);color:var(--pm-ink);margin-top:18px;font-size:19px}.portrait-modal-preview-copy{color:var(--pm-muted);max-width:220px;margin:6px 0 0;font-size:12px;line-height:1.5}.portrait-modal-divider{border:none;border-top:1px solid #4a403080;width:100%;margin:16px 0 12px}.portrait-modal-link-toggle{color:var(--pm-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.portrait-modal-link-toggle:hover{color:var(--pm-gold)}.portrait-modal-link-toggle:focus-visible{outline:2px solid var(--pm-gold);outline-offset:2px}.portrait-modal-link-row{gap:6px;width:100%;margin-top:10px;display:flex}.portrait-modal-link-row input{background:var(--pm-band);border:1px solid var(--pm-rule);min-width:0;color:var(--pm-ink);border-radius:5px;flex:1;padding:7px 9px;font-size:12px}.portrait-modal-link-row input::placeholder{color:var(--pm-faint)}.portrait-modal-link-row button{border:1px solid var(--pm-rule);color:var(--pm-muted);cursor:pointer;background:0 0;border-radius:5px;padding:0 10px;font-size:12px}.portrait-modal-link-row button:hover:not(:disabled){color:var(--pm-ink);border-color:var(--pm-muted)}.portrait-modal-link-row button:disabled{opacity:.4;cursor:not-allowed}.portrait-modal-link-warn{color:var(--accent,#b2452f);margin:8px 0 0;font-size:11.5px}.portrait-modal-actions{background:var(--pm-band);border-top:1px solid var(--pm-rule);justify-content:flex-end;gap:10px;padding:13px 18px;display:flex}.portrait-modal-btn{font-family:var(--font-label);cursor:pointer;border-radius:6px;padding:9px 22px;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.portrait-modal-btn:focus-visible{outline:2px solid var(--pm-gold);outline-offset:2px}.portrait-modal-btn-cancel{border:1px solid var(--pm-rule);color:var(--pm-muted);background:0 0}.portrait-modal-btn-cancel:hover{color:var(--pm-ink);border-color:var(--pm-muted)}.portrait-modal-btn-save{background:var(--pm-gold);border:1px solid var(--pm-gold);color:#241c12;letter-spacing:.02em}.portrait-modal-btn-save:hover:not(:disabled){background:var(--pm-gold-deep);border-color:var(--pm-gold-deep)}.portrait-modal-btn-save:disabled{opacity:.4;cursor:not-allowed}@media (max-width:700px){.portrait-modal{border-radius:0;max-width:100%;max-height:100vh}.portrait-modal-body{grid-template-rows:auto 1fr;grid-template-columns:1fr;overflow-y:auto}.portrait-modal-library{border-top:1px solid #4a403080;border-right:none;order:2}.portrait-modal-selection{order:1;padding:16px 20px;overflow-y:visible}.portrait-modal-preview-ring .cportrait,.portrait-modal-preview-empty{width:140px!important;height:140px!important}.portrait-modal-preview-ring{width:140px}.portrait-modal-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-auto-rows:96px;gap:6px;max-height:none;padding:12px}.portrait-modal-tile{width:100%;height:96px}.portrait-modal-actions{padding:12px 16px}}@media (prefers-reduced-motion:reduce){.portrait-modal-tile{transition:box-shadow .16s}.portrait-modal-tile:hover{transform:none}}.dj-setup .portrait-field{margin-top:6px}.dm-vitals-strip{gap:14px;margin-top:5px;display:flex}.dm-vitals-strip>span{align-items:baseline;gap:4px;display:inline-flex}.dm-vitals-strip small{color:var(--dm-muted,#6b5f4e);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.dm-vitals-strip b{color:var(--dm-ink,#2a2018);font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:600}.dm-combatant-ac,.dm-combatant-hp{color:var(--dm-ink,#2a2018)}.dm-combatant-ac{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.dm-combatant-hp input{color:var(--dm-ink,#2a2018);font-weight:600}.dm-character-portrait.is-rail{width:76px;height:76px;font-size:20px}.dm-character-portrait.is-inspector{width:84px;height:84px;font-size:22px}.dm-member-primary{grid-template-columns:80px minmax(0,1fr)}@media (max-width:800px){.dm-member-primary{grid-template-columns:64px minmax(0,1fr)}.dm-character-portrait.is-rail{width:60px;height:60px}}.dm-table:before{opacity:.05}.dm-command-member{position:relative;overflow:hidden}.dm-class-sigil{opacity:.07;pointer-events:none;width:86px;height:86px;position:absolute;bottom:-12px;right:-12px}.dm-command-member.is-selected .dm-class-sigil{opacity:.11}.dm-workspace-modes button.is-active{box-shadow:inset 0 -2px 0 var(--dm-accent,#8c2f22)}.dm-combatant.is-current{border-left:3px solid var(--dm-accent,#8c2f22);background:color-mix(in srgb,var(--dm-accent,#8c2f22) 7%,transparent)}.dm-alert-row{align-items:stretch;gap:2px;display:flex}.dm-alert-row>button:first-child{flex:auto}.dm-party-alerts .dm-alert-ack{color:var(--dm-muted,#6b5f4e);cursor:pointer;background:0 0;border:0;flex:none}.dm-party-alerts .dm-alert-ack:hover{color:var(--dm-ink,#2a2018)}.dm-request-card header .dm-request-dismiss{color:var(--dm-muted,#6b5f4e);cursor:pointer;background:0 0;border:0;padding:0 0 0 4px}.dm-request-card header .dm-request-dismiss:hover{color:var(--dm-ink,#2a2018)}.dm-request-card[data-status=completed]{opacity:.78}.dm-command-party .dm-command-empty{text-align:center;justify-items:center;gap:10px;padding:16px 14px;display:grid}.dm-command-party .dm-command-empty p{margin:0}.dm-command-party .dm-command-empty small{color:var(--dm-muted,#6b5f4e);line-height:1.5}.dm-rehearsal-mark button{color:inherit;cursor:pointer;vertical-align:middle;background:0 0;border:0;padding:0 0 0 4px}.dm-state-marker{flex:none;width:9px;height:10px;display:inline-block}.dm-state-marker[data-state=acting]{background:var(--dm-accent,#8c2f22);clip-path:polygon(0 0,100% 50%,0 100%)}.dm-state-marker[data-state=selected]{border:1px solid var(--dm-magic,#2677b8);background:0 0;border-radius:50%;height:9px}.dm-acting-label{color:var(--dm-accent,#8c2f22);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-style:normal;font-weight:600}.dm-combatant.is-acting,.dm-command-member.is-acting{border-left-color:var(--dm-accent,#8c2f22);background:color-mix(in srgb,var(--dm-accent,#8c2f22) 7%,transparent)}.dm-combatant.is-selected:not(.is-acting),.dm-command-member.is-selected:not(.is-acting){box-shadow:inset 1px 0 0 var(--dm-magic,#2677b8);background:0 0;border-left-color:#0000}.dm-combatant.is-acting .dm-state-marker[data-state=selected],.dm-command-member.is-acting .dm-state-marker[data-state=selected]{display:none}.dm-command-member.is-unconscious:not(.is-acting){border-left-color:var(--dm-danger,#b33b32);background:color-mix(in srgb,var(--dm-danger,#b33b32) 8%,transparent);box-shadow:none}.dm-command-member>.dm-state-marker{position:absolute;top:13px;left:4px}.dm-command-member>.dm-acting-label{position:absolute;top:9px;right:34px}.dm-inspector-identity .dm-acting-label{align-items:center;gap:5px;margin-top:3px;display:inline-flex}.dm-initiative .dm-combatant{grid-template-columns:34px 38px minmax(0,1fr) auto auto auto auto}.dm-initiative.is-compact .dm-combatant{grid-template-columns:34px minmax(0,1fr) auto auto auto auto;padding-block:5px}.dm-init-chip{border-radius:50%}.dm-identity-disc{border:1px solid var(--dm-rule);background:color-mix(in srgb,var(--dm-ink,#2a2018) 4%,transparent);width:36px;height:36px;color:var(--dm-ink,#2a2018);border-radius:50%;place-items:center;font-size:15px;display:grid;overflow:hidden}.dm-identity-disc img{object-fit:cover;width:100%;height:100%;display:block}.dm-combatant-title{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.dm-dup-badge{color:var(--dm-accent,#8c2f22);font-family:var(--font-label);align-self:flex-start;margin-left:-4px;font-size:9px;font-weight:600;line-height:1.4}.dm-chip-overflow{color:var(--dm-muted,#6b5f4e);font-family:var(--font-label);align-self:center;font-size:10px;font-style:normal}.dm-initiative.is-compact .dm-condition-chips{flex-wrap:nowrap;overflow:hidden}.dm-reaction-chip{cursor:pointer}.dm-reaction-chip:focus-visible{outline:2px solid var(--dm-accent,#8c2f22);outline-offset:1px}.dm-row-overflow{position:relative}.dm-row-overflow>summary{border:1px solid var(--dm-rule);width:26px;min-height:26px;color:var(--dm-muted,#6b5f4e);cursor:pointer;background:0 0;place-items:center;font-size:14px;line-height:1;list-style:none;display:grid}.dm-row-overflow>summary::-webkit-details-marker{display:none}.dm-row-overflow>summary:hover,.dm-row-overflow[open]>summary{border-color:var(--dm-ink,#2a2018);color:var(--dm-ink,#2a2018)}.dm-row-overflow>summary:focus-visible{outline:2px solid var(--dm-accent,#8c2f22);outline-offset:1px}.dm-row-overflow>div{z-index:30;border:1px solid var(--dm-rule);background:var(--dm-surface,#e9dfc8);min-width:158px;box-shadow:0 8px 18px color-mix(in srgb,var(--dm-ink,#2a2018) 18%,transparent);padding:4px;display:grid;position:absolute;top:calc(100% + 3px);right:0}.dm-row-overflow>div button{color:var(--dm-ink,#2a2018);font-family:var(--font-label);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.dm-row-overflow>div button:hover,.dm-row-overflow>div button:focus-visible{background:color-mix(in srgb,var(--dm-ink,#2a2018) 8%,transparent);outline:none}.dm-row-overflow>div button.is-danger{color:var(--dm-danger,#b33b32)}.dm-encounter-log{border-top:1px solid color-mix(in srgb,var(--dm-ink,#2a2018) 32%,transparent);margin-top:16px;padding-top:10px}.dm-log-head{align-items:center;gap:14px;display:flex}.dm-log-head h4{color:var(--dm-muted,#6b5f4e);font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:10px;font-weight:600}.dm-log-head .dm-filter{margin:0}.dm-log-link{color:var(--dm-accent,#8c2f22);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:2px 0;font-size:10px}.dm-log-link:hover,.dm-log-link:focus-visible{outline:none;text-decoration:underline}.dm-log-scroll{scrollbar-color:color-mix(in srgb,var(--dm-ink,#2a2018) 24%,transparent) transparent;max-height:32vh;margin-top:6px;overflow-y:auto}.dm-log-scroll>.dm-log-link{margin:0;padding:7px 2px}.dm-log-entry{border-bottom:1px solid var(--dm-rule);color:var(--dm-ink,#2a2018);align-items:baseline;gap:9px;margin:0;padding:5px 2px;font-size:12.5px;display:flex}.dm-log-entry time,.dm-log-group summary time{color:var(--dm-muted,#6b5f4e);font-family:var(--font-label);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.dm-log-entry span{min-width:0}.dm-log-entry[data-voice=announce] span{color:var(--dm-muted,#6b5f4e);font-style:italic}.dm-log-entry[data-voice=danger] span{color:var(--dm-danger,#b33b32)}.dm-log-group{border-bottom:1px solid var(--dm-rule)}.dm-log-group summary{color:var(--dm-ink,#2a2018);cursor:pointer;align-items:baseline;gap:9px;padding:5px 2px;font-size:12.5px;list-style:none;display:flex}.dm-log-group summary::-webkit-details-marker{display:none}.dm-log-group summary:after{content:"▾";color:var(--dm-muted,#6b5f4e);margin-left:auto;font-size:10px}.dm-log-group[open] summary:after{content:"▴"}.dm-log-group summary:hover span,.dm-log-group summary:focus-visible span{color:var(--dm-accent,#8c2f22)}.dm-log-group summary:focus-visible{outline:2px solid var(--dm-accent,#8c2f22);outline-offset:-2px}.dm-log-group>.dm-log-entry{padding-left:14px}.dm-log-group>.dm-log-entry:last-child{border-bottom:0}.commission-screen{--commission-app:var(--surface-app,#070d16);--commission-shell:var(--surface-shell,#0d1724);--commission-panel:var(--surface-panel,#142235);--commission-raised:var(--surface-panel-raised,#1a2b40);--commission-text:var(--text-primary,#edf1f4);--commission-secondary:var(--text-secondary,#b8c2cc);--commission-muted:var(--text-muted,#8391a0);--commission-border:var(--border-default,#b0c1cf38);--commission-subtle:var(--border-subtle,#b0c1cf1f);--commission-brass:var(--border-brass,#b3924a);--commission-brass-bright:var(--border-brass-bright,#d9b967);background:var(--commission-app);min-height:calc(100dvh - 102px);color:var(--commission-text);flex-direction:column;align-content:stretch;gap:0;padding:0;display:flex;overflow:hidden}.commission-head{justify-content:space-between;align-items:flex-end;gap:20px;padding:26px 34px 20px;display:flex}.commission-page-head{margin:0}.commission-eyebrow{color:var(--commission-brass-bright);font-family:var(--font-role-label,var(--font-label,system-ui));letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.commission-eyebrow:before{content:"";background:var(--commission-brass);width:26px;height:1px}.commission-page-head h2{color:var(--commission-text);font-family:var(--font-role-display,var(--font-display,Georgia, serif));margin-top:10px;font-size:clamp(1.8rem,3vw,2.35rem);font-weight:500;line-height:1.1}.commission-actions{gap:12px;padding-bottom:4px;display:flex}.commission-button{border:1px solid var(--commission-border);border-radius:var(--radius-xs,2px);background:var(--commission-raised);min-height:40px;color:var(--commission-text);font-family:var(--font-role-label,var(--font-label,system-ui));letter-spacing:.06em;text-transform:uppercase;padding:11px 22px;font-size:11px;font-weight:600}.commission-button:hover:not(:disabled){border-color:var(--commission-brass)}.commission-button:focus-visible{outline:2px solid var(--state-selected,#5c94c8);outline-offset:2px}.commission-button:disabled{cursor:not-allowed;opacity:.45}.commission-button-primary{background:var(--commission-brass);border-color:var(--commission-brass-bright);color:var(--text-on-accent,#081018)}.commission-button-primary:hover:not(:disabled){background:var(--commission-brass-bright)}.commission-strip{border-top:1px solid var(--commission-subtle);flex:1;justify-content:center;min-height:480px;display:flex}.commission-panel{border:0;border-right:1px solid color-mix(in srgb, var(--commission-app) 80%, transparent);background:var(--commission-panel);min-width:0;max-width:420px;color:var(--commission-text);text-align:left;cursor:pointer;border-radius:0;flex:1 1 0;position:relative;overflow:hidden}.commission-panel:first-child{border-left:1px solid color-mix(in srgb, var(--commission-app) 80%, transparent)}.commission-panel:focus-visible{outline:2px solid var(--state-selected,#5c94c8);outline-offset:-3px}.commission-plate{background:var(--commission-shell);display:block;position:absolute;inset:0}.commission-plate:after{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--commission-app) 22%, transparent), color-mix(in srgb, var(--commission-app) 58%, transparent));pointer-events:none;transition:opacity .32s;position:absolute;inset:0}.commission-plate img{object-fit:cover;filter:grayscale(.48)contrast(1.04)brightness(.82)sepia(.12);transition:filter .32s}.commission-panel:hover .commission-plate img,.commission-panel.chosen .commission-plate img{filter:grayscale(.02)contrast(1.02)brightness(.96)sepia(0)}.commission-panel:hover .commission-plate:after,.commission-panel.chosen .commission-plate:after{opacity:.35}.commission-tag{z-index:2;border:1px solid var(--commission-subtle);border-radius:var(--radius-xs,2px);background:color-mix(in srgb, var(--commission-app) 60%, transparent);color:var(--commission-brass-bright);font-family:var(--font-role-numeric,var(--font-mono,ui-monospace));letter-spacing:.12em;padding:6px 9px;font-size:10px;font-weight:700;position:absolute;top:16px;left:18px}.commission-caption{z-index:2;background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--commission-app) 92%, transparent) 72%);flex-direction:column;align-items:flex-start;padding:60px 26px 24px;display:flex;position:absolute;bottom:0;left:0;right:0}.commission-caption-rule{background:var(--commission-brass);width:30px;height:1px;margin-bottom:12px}.commission-label{color:var(--commission-text);font-family:var(--font-role-display,var(--font-display,Georgia, serif));font-size:1.65rem;font-weight:500;line-height:1.1}.commission-desc{color:var(--commission-secondary);margin-top:5px;font-size:.98rem;font-style:italic}.commission-state{color:var(--commission-brass-bright);font-family:var(--font-role-label,var(--font-label,system-ui));letter-spacing:.08em;text-transform:uppercase;margin-top:12px;font-size:10px;font-style:normal;font-weight:600}.commission-panel.chosen:before{z-index:3;content:"";border:1px solid color-mix(in srgb, var(--commission-brass-bright) 75%, transparent);pointer-events:none;position:absolute;inset:10px}@media (max-width:760px){.commission-screen{overflow:visible}.commission-head{flex-direction:column;align-items:flex-start;padding:24px 18px 18px}.commission-actions{width:100%;padding:0}.commission-button{flex:1}.commission-strip{flex-direction:column;min-height:0}.commission-panel{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--commission-app) 80%, transparent);flex:auto;max-width:none;min-height:260px}.commission-panel:first-child{border-left:0}}.cs-roll-target .cs-roll-target-value,.cs-skill-bonus.cs-roll-target-value{color:color-mix(in srgb, var(--select,#c9a25a) 70%, var(--ui-text-primary,#e9eef4))}.cs-roll-target:hover .cs-roll-target-value,.cs-skill-bonus.cs-roll-target-value:hover{color:var(--select,#c9a25a)}.dm-sheet-overlay{z-index:800}.cs-sheet :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){font-size:calc(15px * var(--sheet-scale,1))}.cs-sheet :is(.cs-section-title,.cs-section-eyebrow){font-size:calc(11px * var(--sheet-scale,1))}.cs-sheet :is(.cs-spell-level-head,.cs-skill-ability-tag,.cs-item-catalog-head,.cs-bg-label,.cs-console-label,.cs-equip-field,.cs-vital-label,.cs-prof-cat,.cs-reftab,.cs-action-table th,.cs-inv-meta,.cs-item-result span,.cs-spell-status-badges span,.cs-equipped-chip,.cs-ac-src){font-size:calc(12px * var(--sheet-scale,1))}.cs-sheet :is(.cs-save-name,.cs-skill-btn,.cs-sense-row,.cs-action-table,.cs-spell-card span,.cs-spell-card p,.cs-item-result p,.cs-inv-row span,.cs-inv-details,.cs-bg-field p,.cs-feature-card p,.cs-rule-note,.cs-hd-rest-info,.cs-conc-banner,.cs-spellbook-head small,.cs-known-spell-chip,.cs-spell-detail-meta,.cs-spell-detail-grid,.cs-spell-status-panel label){font-size:calc(14px * var(--sheet-scale,1))}.cs-sheet :is(.cs-action-table td,.cs-inv-row strong,.cs-item-result strong,.cs-feature-card strong,.cs-spell-card strong){font-size:calc(15px * var(--sheet-scale,1))}.cs-sheet :is(.cs-save-bonus,.cs-skill-bonus,.cs-action-table td:nth-child(2)){font-size:calc(16px * var(--sheet-scale,1))}.cs-sheet :is(.cs-vital-cell strong,.cs-vital-rollable strong,.cs-vital-hp-row strong){font-size:calc(24px * var(--sheet-scale,1))}.cs-sheet .cs-ability-mod{font-size:calc(28px * var(--sheet-scale,1))}.cs-sheet .cs-ability-label{font-size:calc(12px * var(--sheet-scale,1))}.cs-sheet .cs-ability-score,.cs-sheet .cs-vital-hp-max{font-size:calc(14px * var(--sheet-scale,1))}.commission-foot{justify-content:space-between;align-items:center;gap:16px;padding:14px 26px 20px;display:flex}.commission-backlink{min-height:40px;color:var(--commission-secondary,#8391a0);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:8px 4px;font-size:.68rem;font-weight:700}.commission-backlink:hover{color:var(--commission-text,#edf1f4)}.commission-backlink:focus-visible{outline:2px solid var(--state-selected,#5c94c8);outline-offset:2px}.commission-foot-note{color:var(--commission-secondary,#8391a0);font-size:.88rem;font-style:italic}@media (max-width:760px){.commission-foot{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 18px 18px}}.campaign-page{z-index:40;background:var(--surface-app,#070d16);flex-direction:column;justify-content:center;align-items:center;padding:26px clamp(18px,4vw,44px) 60px;display:flex;position:fixed;inset:62px 0 0 76px;overflow-y:auto}.campaign-page .campaign-panel{width:min(1080px,100%);max-height:calc(100dvh - 154px);margin:0 auto}@media (max-width:760px){.campaign-page{z-index:25;padding-bottom:96px;left:0}}.dm-combatant-select{all:unset;cursor:pointer;border-radius:3px;align-items:center;display:inline-flex}.dm-combatant-select:hover strong{text-underline-offset:2px;text-decoration:underline}.dm-combatant-select:focus-visible{outline:2px solid var(--dm-select,var(--select,#5c94c8));outline-offset:2px}.dm-combatant.is-selected .dm-combatant-select strong{color:var(--dm-select,var(--select,#5c94c8))}.dm-prep-solo{grid-template-columns:1fr}.dm-editor-pane{min-width:0}.dm-editor-pane .ed-head{border-bottom:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 12%, transparent);align-items:center;gap:12px;margin:0 0 14px;padding-bottom:12px;display:flex}.dm-editor-pane .ed-head h3{margin:0}.dm-editor-pane .ed-head-spacer{flex:1}.dm-draft-chip{border:1px solid color-mix(in srgb, var(--paper,#e9dfc8) 20%, transparent);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--paper,#e9dfc8) 70%, transparent);border-radius:999px;padding:3px 9px;font-size:.62rem;font-weight:700}.cs-sheet .cs-inv-quantity input{box-sizing:border-box;text-align:center;-moz-appearance:textfield;width:52px;min-width:52px;height:19px;min-height:19px;padding:0 2px;font-size:12px;line-height:1}.cs-sheet .cs-inv-quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cs-sheet .cs-inv-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cs-inv-quantity{text-transform:none;align-items:center;min-width:42px;position:relative;color:var(--parchment-2)!important;margin-top:0!important;display:inline-flex!important}.cs-inv-quantity-toggle{white-space:nowrap;min-width:42px;font-family:var(--font-label);letter-spacing:.04em;font-size:11px;font-weight:700;line-height:1;transition:border-color .14s,background .14s,color .14s,box-shadow .14s;box-shadow:inset 0 1px #ffffff12;border:1px solid color-mix(in srgb, var(--accent) 48%, var(--rule-soft))!important;background:color-mix(in srgb, var(--accent) 8%, var(--ground-3))!important;width:auto!important;height:26px!important;color:var(--parchment)!important;border-radius:999px!important;padding:3px 9px!important}.cs-inv-quantity-toggle:hover,.cs-inv-quantity-toggle[aria-expanded=true]{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 14%, transparent), inset 0 1px 0 #ffffff14;border-color:var(--accent)!important;background:color-mix(in srgb, var(--accent) 16%, var(--ground-3))!important;color:var(--accent)!important}.cs-inv-quantity-toggle:focus-visible{outline:2px solid var(--ui-focus-ring,var(--accent));outline-offset:2px}.cs-inv-quantity-toggle span{letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--ink-faint)!important;margin:0 4px 0 0!important;font-size:.82em!important;display:inline!important}.cs-inv-quantity-editor{z-index:8;border:1px solid color-mix(in srgb, var(--accent) 38%, var(--rule-soft));background:color-mix(in srgb, var(--ground-2) 94%, var(--accent) 6%);border-radius:9px;align-items:center;gap:4px;padding:6px;display:inline-flex;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 10px 26px #00000057,inset 0 1px #ffffff0f}.cs-inv-quantity-editor button{border-color:color-mix(in srgb, var(--accent) 30%, var(--rule-soft));background:color-mix(in srgb, var(--ground-3) 90%, var(--accent) 10%);border-radius:6px;width:25px;min-width:25px;height:25px;font-size:15px;font-weight:700}.cs-inv-quantity-editor button:hover{background:color-mix(in srgb, var(--accent) 16%, var(--ground-3))}.cs-inv-quantity-editor input{border-color:color-mix(in srgb, var(--accent) 34%, var(--rule-soft));background:var(--ground-3);color:var(--accent);border-radius:6px;flex:0 0 52px;font-weight:700}@media (max-width:560px){.cs-inv-quantity-editor{right:-4px}}.hb-studio{z-index:1200;color:var(--text-primary);background:var(--surface-app);flex-direction:column;display:flex;position:fixed;inset:0}.hb-topbar{min-height:78px;padding:var(--space-3) clamp(var(--space-5), 3vw, var(--space-9));justify-content:space-between;align-items:center;gap:var(--space-6);border-bottom:1px solid var(--rule-engraved-dark);box-shadow:0 1px 0 var(--rule-engraved-light);background:var(--surface-shell);display:flex}.hb-topbar h1{align-items:center;gap:var(--space-2);font:600 var(--ui-600)/1.1 var(--font-role-display);letter-spacing:-.01em;margin:0;display:flex}.hb-kicker{color:var(--border-brass);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.hb-actions{align-items:center;gap:var(--space-2);display:flex}.hb-actions .ao-btn{align-items:center;gap:var(--space-2);min-height:38px;display:inline-flex}.hb-close,.hb-icon{color:var(--text-secondary);cursor:pointer;transition:color var(--motion-exit) var(--ease-standard), background var(--motion-exit) var(--ease-standard);background:0 0;border:0;place-items:center;display:inline-grid}.hb-close{width:36px;height:36px;margin-left:var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-sm)}.hb-icon{border-radius:var(--radius-sm);width:30px;height:30px}.hb-icon:hover,.hb-close:hover{color:var(--text-primary);background:#b0c1cf12}.hb-close:focus-visible,.hb-icon:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-layout{flex:1;grid-template-columns:minmax(220px,280px) 1fr;min-height:0;display:grid}.hb-library{min-height:0;padding:var(--space-6) var(--space-4);border-right:1px solid var(--border-subtle);background:var(--surface-panel-recessed);overflow:auto}.hb-library-head{padding:0 var(--space-2) var(--space-3);justify-content:space-between;align-items:center;display:flex}.hb-library h2{font:600 var(--ui-100)/1.3 var(--font-role-label);text-transform:uppercase;letter-spacing:var(--label-tracking);color:var(--border-brass);margin:0}.hb-clone,.hb-add-line{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3);color:var(--border-brass);border:1px dashed var(--border-default);border-radius:var(--radius-sm);cursor:pointer;font:600 var(--ui-100)/1.2 var(--font-role-label);letter-spacing:.04em;text-transform:uppercase;transition:background var(--motion-exit) var(--ease-standard), border-color var(--motion-exit) var(--ease-standard);background:0 0;display:flex}.hb-clone:hover,.hb-add-line:hover{border-color:var(--border-brass);background:#b3924a14}.hb-clone:focus-visible,.hb-add-line:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-clone:disabled{color:var(--text-disabled);border-color:var(--border-subtle);cursor:not-allowed;background:0 0}.hb-catalog{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel)}.hb-search{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-input);display:flex}.hb-search input{width:100%;min-width:0;color:inherit;background:0 0;border:0;outline:0}.hb-catalog-results{max-height:270px;margin-top:var(--space-2);overflow:auto}.hb-catalog-results button,.hb-definition-list button{width:100%;padding:var(--space-3);color:var(--text-primary);text-align:left;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--ui-200);transition:background var(--motion-exit) var(--ease-standard);background:0 0;border:0;flex-direction:column;gap:3px;display:flex}.hb-catalog-results button:hover,.hb-definition-list button:hover{background:var(--surface-panel-raised)}.hb-definition-list button.active{background:var(--state-selected-soft);box-shadow:inset 2px 0 0 var(--state-selected)}.hb-catalog-results button:focus-visible,.hb-definition-list button:focus-visible{outline:2px solid var(--state-selected);outline-offset:-2px}.hb-catalog-results span,.hb-definition-list small{color:var(--text-muted);font-size:var(--ui-200)}.hb-definition-list{margin-top:var(--space-4);gap:2px;display:grid}.hb-definition-list p{padding:var(--space-3) var(--space-2);color:var(--text-muted);font-size:var(--ui-200);line-height:1.5}.hb-editor{min-width:0;padding:clamp(var(--space-6), 4vw, var(--space-9)) clamp(var(--space-5), 5vw, 72px) 100px;overflow:auto}.hb-editor>*{width:min(1050px,100%);margin-inline:auto}.hb-identity{margin-bottom:var(--space-6)}.hb-title-field{color:var(--text-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.hb-title-field input{width:100%;padding:var(--space-2) 0 var(--space-3);color:var(--text-primary);font:600 var(--ui-600)/1.15 var(--font-role-display);border:0;border-bottom:1px solid var(--border-default);background:0 0;outline:0}.hb-title-field input:focus-visible{border-bottom-color:var(--state-selected);outline:2px solid var(--state-selected);outline-offset:2px}.hb-version-strip{gap:var(--space-2);margin-top:var(--space-2);color:var(--text-muted);font-size:var(--ui-200);flex-wrap:wrap;align-items:center;display:flex}.hb-status{padding:3px var(--space-2);border-radius:var(--radius-sm);font:600 var(--ui-100)/1.3 var(--font-role-label);text-transform:uppercase;letter-spacing:var(--label-tracking);border:1px solid}.hb-published{color:var(--state-success);background:var(--state-success-soft)}.hb-draft{color:var(--state-warning);background:var(--state-warning-soft)}.hb-deprecated{color:var(--state-danger);background:var(--state-danger-soft)}.hb-manual{color:var(--text-secondary);background:#b0c1cf1a}.hb-notice{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);color:var(--text-secondary);border:1px solid var(--border-subtle);border-left:2px solid var(--state-warning);border-radius:var(--radius-sm);background:var(--state-warning-soft);font-size:var(--ui-200);line-height:1.6}.hb-import-review{border-color:var(--border-strong)}.hb-import-summary{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--text-muted);font-size:var(--ui-200);flex-wrap:wrap;display:flex}.hb-import-matched{color:var(--state-success);background:var(--state-success-soft)}.hb-import-reviewing{color:var(--state-warning);background:var(--state-warning-soft)}.hb-import-lede{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:var(--ui-200);line-height:1.65}.hb-import-items{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hb-import-item{align-content:start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);box-shadow:var(--inset-recessed);border-left-width:3px;display:grid}.hb-import-item.hb-import-matched{border-left-color:var(--state-success)}.hb-import-item.hb-import-review{border-left-color:var(--state-warning)}.hb-import-item.hb-import-manual{border-left-color:var(--text-secondary)}.hb-import-item-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.hb-import-item-head strong{color:var(--text-primary);font-size:var(--ui-200)}.hb-import-item p{color:var(--text-secondary);font-size:var(--ui-200);margin:0;line-height:1.55}.hb-import-item small{color:var(--text-muted);font-size:var(--ui-100);line-height:1.5}.hb-import-check{margin-top:var(--space-1);cursor:pointer;align-items:center;gap:var(--space-2)!important;color:var(--text-secondary)!important;letter-spacing:0!important;text-transform:none!important;grid-template-columns:none!important;font-weight:500!important;display:flex!important}.hb-import-check input{flex:none}.hb-panel{margin-bottom:var(--space-5);padding:clamp(var(--space-5), 3vw, var(--space-7));border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-panel);box-shadow:var(--shadow-panel)}.hb-section-title{justify-content:space-between;gap:var(--space-5);padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:1px solid var(--rule-engraved-dark);box-shadow:0 1px 0 var(--rule-engraved-light);display:flex}.hb-section-title>div{align-items:center;gap:var(--space-2);display:flex}.hb-section-title>div>span{color:var(--border-brass);place-items:center;display:inline-grid}.hb-section-title h2{font:600 var(--ui-400)/1.25 var(--font-role-section);margin:0}.hb-section-title p{color:var(--text-muted);font-size:var(--ui-200);margin:0}.hb-form-grid,.hb-effect-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.hb-studio label{gap:var(--space-2);color:var(--text-secondary);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;display:grid}.hb-studio label small{color:var(--text-muted);font-weight:400;font-size:var(--ui-200);letter-spacing:0;text-transform:none}.hb-studio input:not([type=checkbox]),.hb-studio select,.hb-studio textarea{width:100%;min-height:36px;padding:7px var(--space-3);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-input);font:400 var(--ui-300)/1.4 var(--font-role-body);letter-spacing:0;text-transform:none;outline:none}.hb-studio textarea{resize:vertical;line-height:1.55}.hb-studio input:focus-visible,.hb-studio select:focus-visible,.hb-studio textarea:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-studio select option{color:var(--text-primary);background:var(--surface-panel)}.hb-wide{grid-column:1/-1}.hb-check{align-self:end;align-items:center;min-height:36px;display:flex!important}.hb-toggle-list{gap:var(--space-2);display:grid}.hb-toggle-list>div{align-items:center;gap:var(--space-3);grid-template-columns:minmax(180px,1fr) auto 32px;display:grid}.hb-toggle-list>div label{align-items:center;display:flex}.hb-presets{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.hb-presets button{padding:7px var(--space-3);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-panel-raised);cursor:pointer;font:600 var(--ui-100)/1.2 var(--font-role-label);letter-spacing:.04em;text-transform:uppercase;transition:background var(--motion-exit) var(--ease-standard), border-color var(--motion-exit) var(--ease-standard)}.hb-presets button:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--surface-panel-raised,#21334a)}.hb-presets button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-effects{gap:var(--space-3);display:grid}.hb-effect-card{padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);box-shadow:var(--inset-recessed)}.hb-effect-head{margin-bottom:var(--space-3);color:var(--text-secondary);text-transform:capitalize;font-size:var(--ui-200);justify-content:space-between;align-items:center;display:flex}.hb-effect-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.hb-prerequisite-editor{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);box-shadow:var(--inset-recessed);display:grid}.hb-subsection-title{color:var(--text-secondary);font-size:var(--ui-200);gap:3px;display:grid}.hb-subsection-title span{color:var(--text-muted);font-size:var(--ui-200);font-weight:400}.hb-prerequisite-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel);display:grid}.hb-prerequisite-head{align-items:center;gap:var(--space-2);display:flex}.hb-prerequisite-head select{flex:1}.hb-prerequisite-fields{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hb-prerequisite-children{gap:var(--space-2);padding-left:var(--space-3);border-left:1px solid var(--border-brass);display:grid}.hb-prerequisite-children .hb-add-line{font-size:var(--ui-100)}.hb-empty{color:var(--text-muted);font-size:var(--ui-200)}.hb-stage-list{gap:var(--space-3);display:grid}.hb-stage-card,.hb-stage{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);box-shadow:var(--inset-recessed);display:grid}.hb-stage-head{align-items:center;gap:var(--space-3);display:flex}.hb-stage-head input{flex:1;min-width:0}.hb-stage-order{width:26px;height:26px;color:var(--border-brass);border:1px solid var(--border-brass);font:400 var(--ui-200)/1 var(--font-role-numeric);border-radius:50%;flex:none;place-items:center;display:grid}.hb-stage-tools{gap:var(--space-1);display:flex}.hb-stage-activation{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.hb-stage-effects{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);display:grid}.hb-stage-effects .hb-presets{margin-bottom:0}.cs-manual-content{gap:var(--space-3);display:grid}.cs-manual-entry{padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-document-muted)}.cs-manual-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.cs-manual-head strong{font:600 var(--ui-300)/1.3 var(--font-role-body);color:var(--text-document)}.cs-manual-kind{color:var(--text-document-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.cs-manual-badge{padding:3px var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-document-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;cursor:help;background:#b0c1cf1a}.cs-manual-summary{margin:var(--space-2) 0 0;color:var(--text-document-muted);font-size:var(--ui-200);line-height:1.6}.cs-manual-block{margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.cs-manual-block h4{align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-1);color:var(--text-document);font:600 var(--ui-200)/1.3 var(--font-role-body);display:flex}.cs-manual-level{color:var(--text-document-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.cs-manual-block p{color:var(--text-document-muted);font-size:var(--ui-200);white-space:pre-wrap;margin:0;line-height:1.6}.cs-manual-empty{margin:var(--space-2) 0 0;color:var(--text-document-muted);font-size:var(--ui-200)}.cs-manual-remove{padding:3px var(--space-2);color:var(--text-document-muted);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;font:600 var(--ui-100)/1.2 var(--font-role-label);letter-spacing:.04em;text-transform:uppercase;transition:color var(--motion-exit) var(--ease-standard), border-color var(--motion-exit) var(--ease-standard);background:0 0;margin-left:auto}.cs-manual-remove:hover{color:var(--state-danger);border-color:var(--state-danger)}.cs-manual-remove:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.cs-manual-attach{margin-top:var(--space-3)}.cs-manual-picker{gap:var(--space-2);margin-top:var(--space-2);display:grid}.cs-manual-picker button{padding:var(--space-2) var(--space-3);text-align:left;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-document-muted);color:var(--text-document);cursor:pointer;font-size:var(--ui-200);transition:border-color var(--motion-exit) var(--ease-standard);gap:2px;display:grid}.cs-manual-picker button:hover{border-color:var(--border-strong)}.cs-manual-picker button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.cs-manual-picker span{color:var(--text-document-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.cs-manual-spell{margin:var(--space-3) 0}.cs-manual-spell-picker{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-document-muted)}.cs-manual-spell-picker>p{margin:0 0 var(--space-2);color:var(--text-document-muted);font-size:var(--ui-200);line-height:1.6}.cs-manual-spell-results{gap:var(--space-1);max-height:320px;margin-top:var(--space-2);display:grid;overflow-y:auto}.cs-manual-spell-results button{padding:var(--space-2) var(--space-3);text-align:left;color:var(--text-document);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--ui-200);transition:border-color var(--motion-exit) var(--ease-standard);background:0 0;gap:2px;display:grid}.cs-manual-spell-results button:hover{border-color:var(--border-strong)}.cs-manual-spell-results button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.cs-manual-spell-results span{color:var(--text-document-muted);font-size:var(--ui-200)}.cs-manual-spell-list{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.cs-manual-spell-list .cs-known-spell-chip button{margin-left:var(--space-2);color:var(--text-document-muted);cursor:pointer;transition:color var(--motion-exit) var(--ease-standard);background:0 0;border:0;padding:0 3px}.cs-manual-spell-list .cs-known-spell-chip button:hover{color:var(--state-danger)}.cs-manual-spell-list .cs-known-spell-chip button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-kind-tabs{margin-bottom:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);gap:2px;padding:3px;display:grid}.hb-kind-tabs button{width:100%;padding:var(--space-2) var(--space-3);text-align:left;color:var(--text-muted);border-radius:var(--radius-xs);font:600 var(--ui-100)/1.2 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;cursor:pointer;transition:background var(--motion-exit) var(--ease-standard), color var(--motion-exit) var(--ease-standard);background:0 0;border:1px solid #0000}.hb-kind-tabs button:hover{color:var(--text-primary);background:#b0c1cf0f}.hb-kind-tabs button:focus-visible{outline:2px solid var(--state-selected);outline-offset:1px}.hb-kind-tabs button.active{color:var(--text-primary);background:var(--surface-panel-raised);border-color:var(--border-strong);box-shadow:inset 3px 0 var(--state-selected)}.hb-kind-note{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--ui-200);line-height:1.6}.hb-effect-card{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed)}.hb-effect-head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.hb-effect-head strong{color:var(--text-primary);font-size:var(--ui-200);text-transform:capitalize}.hb-effect-head input[type=number]{width:64px}.hb-level-effects{margin-top:var(--space-3);border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.hb-level-effects summary{color:var(--text-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;cursor:pointer}.hb-level-effects summary:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-level-effects>div{margin-top:var(--space-3)}.hb-spell-picker{gap:var(--space-2);display:grid}.hb-current-spell{color:var(--text-primary);font-size:var(--ui-200);margin:0}.hb-spell-results{gap:3px;max-height:220px;display:grid;overflow-y:auto}.hb-spell-results button{justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--ui-200);transition:border-color var(--motion-exit) var(--ease-standard), background var(--motion-exit) var(--ease-standard);background:0 0;display:flex}.hb-spell-results button:hover{border-color:var(--border-strong);background:var(--surface-panel-raised)}.hb-spell-results button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-spell-results span{color:var(--text-muted);font-size:var(--ui-200)}.hb-add-level-row{margin-top:var(--space-3)}.hb-add-level-row label{align-items:center;gap:var(--space-2);color:var(--text-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;display:flex}.hb-kind-note em{color:var(--text-secondary);font-style:normal}.hb-mode-switch{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);box-shadow:var(--inset-recessed);display:grid}.hb-mode-switch legend{padding:0 var(--space-2);color:var(--border-brass);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.hb-mode-switch label{gap:var(--space-1) var(--space-3);cursor:pointer;grid-template-columns:auto 1fr;align-items:start;display:grid}.hb-mode-switch input{grid-row:span 2;margin-top:3px}.hb-mode-switch strong{color:var(--text-primary);font:600 var(--ui-300)/1.3 var(--font-role-body);letter-spacing:0;text-transform:none}.hb-mode-switch small{color:var(--text-muted);font-size:var(--ui-200);letter-spacing:0;text-transform:none;line-height:1.6}.hb-mode-switch em{color:var(--text-secondary);font-style:normal}.hb-level-tag{align-items:center;gap:var(--space-2);color:var(--text-muted);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;white-space:nowrap;display:flex}.hb-level-tag input{width:58px}.hb-field-label{margin-bottom:var(--space-2);color:var(--text-secondary);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase;display:block}.hb-chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.hb-chip-row button{padding:var(--space-2) var(--space-3);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-panel-raised);font:600 var(--ui-100)/1.2 var(--font-role-label);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background var(--motion-exit) var(--ease-standard), border-color var(--motion-exit) var(--ease-standard)}.hb-chip-row button:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--surface-panel-raised,#21334a)}.hb-chip-row button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}.hb-chip-row button.active{color:var(--text-on-accent);border-color:var(--border-brass-bright);background:var(--border-brass);box-shadow:inset 0 -2px #00000038}.hb-level-guide{gap:var(--space-3);display:grid}.hb-level-row{padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed)}.hb-level-head{align-items:center;gap:var(--space-3);display:flex}.hb-level-head strong{color:var(--text-primary);font:400 var(--ui-300)/1 var(--font-role-numeric);font-variant-numeric:tabular-nums}.hb-level-head span{color:var(--text-muted);font-size:var(--ui-200);flex:1}.hb-level-feature{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:1fr 2fr auto;align-items:start;display:grid}@media (max-width:720px){.hb-level-feature,.hb-import-items{grid-template-columns:1fr}}.hb-choice-list{gap:var(--space-3);display:grid}.hb-choice-card{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);display:grid}.hb-choice-card>.hb-icon{justify-self:end}.hb-choice-selection-list{gap:var(--space-2);display:grid}.hb-choice-selection{gap:var(--space-1);display:grid}.hb-choice-selection>span{color:var(--text-primary);font-size:var(--ui-200)}.hb-choice-selection small{color:var(--text-muted);font-size:var(--ui-200)}.hb-choice-selection-slots{gap:var(--space-2);display:grid}.hb-choice-selection-hint{color:var(--state-warning);font:400 var(--ui-200)/1.5 var(--font-role-body)}.hb-choice-selection-error,.hb-rule-note[role=alert]{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);color:var(--state-danger);border-radius:var(--radius-sm);background:var(--state-danger-soft);font:400 var(--ui-200)/1.5 var(--font-role-body);border:1px solid}.hb-rule-note{margin:var(--space-2) 0 0;color:var(--text-muted);font:400 var(--ui-200)/1.6 var(--font-role-body)}.hb-slot-scroll{margin-top:var(--space-4);padding-bottom:var(--space-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-panel-recessed);overflow-x:auto}.hb-slot-caption{padding:var(--space-2) var(--space-4);color:var(--text-muted);font-size:var(--ui-200);text-align:left;caption-side:top}.hb-slot-grid{border-collapse:collapse;width:100%;min-width:560px}.hb-slot-grid th,.hb-slot-grid td{padding:var(--space-1) var(--space-2);text-align:center;border-bottom:1px solid var(--border-subtle)}.hb-slot-grid thead th{color:var(--border-brass);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.hb-slot-grid tbody th{color:var(--text-primary);font:400 var(--ui-200)/1.3 var(--font-role-numeric);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.hb-slot-grid tbody tr:nth-child(2n){background:#b0c1cf08}.hb-slot-spellhead{color:var(--text-muted)!important;font-size:var(--ui-100)!important}.hb-slot-grid input{width:100%;min-width:38px;max-width:52px;padding:var(--space-1) 3px;text-align:center;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-xs);background:var(--surface-input);font:400 var(--ui-200)/1.3 var(--font-role-numeric);font-variant-numeric:tabular-nums}.hb-slot-grid input:focus-visible{outline:2px solid var(--state-selected);outline-offset:1px}.hb-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hb-preview{margin-bottom:var(--space-5);padding:clamp(var(--space-5), 3vw, var(--space-7));border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-panel);box-shadow:var(--shadow-panel)}.hb-preview-body{gap:var(--space-2);display:grid}.hb-preview-name{color:var(--text-primary);font:600 var(--ui-400)/1.25 var(--font-role-section);margin:0}.hb-preview-summary{color:var(--text-secondary);font-size:var(--ui-200);margin:0;line-height:1.6}.hb-preview-facts{color:var(--text-muted);font-size:var(--ui-200);margin:0}.hb-preview-features{margin:var(--space-2) 0 0;gap:var(--space-2);display:grid}.hb-preview-feature{padding:var(--space-2) var(--space-3);border-left:2px solid var(--border-brass);background:var(--surface-panel-recessed);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.hb-preview-feature dt{color:var(--border-brass-bright);font:600 var(--ui-200)/1.3 var(--font-role-label);letter-spacing:.02em}.hb-preview-feature dd{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--ui-200);line-height:1.6}.hb-preview-slots{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.hb-preview-slot-head{margin:0 0 var(--space-2);color:var(--border-brass);font:600 var(--ui-100)/1.3 var(--font-role-label);letter-spacing:var(--label-tracking);text-transform:uppercase}.hb-preview-slots ul{gap:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0;padding:0;list-style:none;display:grid}.hb-preview-slots li{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--surface-panel-recessed);font:400 var(--ui-200)/1.3 var(--font-role-numeric);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.hb-preview-slot-level{color:var(--text-primary);font-weight:600}.hb-preview-slot-cell{color:var(--text-secondary)}.hb-preview-slot-empty{color:var(--text-disabled);font-style:italic}@media (max-width:520px){.hb-preview-slots ul{grid-template-columns:1fr}}.hb-save-panel{gap:var(--space-4);padding:var(--space-1) 2px;display:grid}.hb-history{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.hb-history button{color:var(--text-muted);cursor:pointer;font-size:var(--ui-200);background:0 0;border:0;padding:3px 0}.hb-history button:hover{color:var(--border-brass-bright)}.hb-history button:focus-visible{outline:2px solid var(--state-selected);outline-offset:2px}@media (max-width:820px){.hb-topbar{align-items:flex-start}.hb-topbar h1{font-size:var(--ui-500)}.hb-topbar .hb-actions .ao-btn{justify-content:center;width:38px;padding:0;font-size:0}.hb-layout{grid-template-columns:1fr}.hb-library{border-right:0;border-bottom:1px solid var(--border-subtle);max-height:185px}.hb-form-grid,.hb-effect-grid{grid-template-columns:1fr 1fr}.hb-section-title{display:block}.hb-section-title p{margin-top:var(--space-2)}}@media (max-width:520px){.hb-form-grid,.hb-effect-grid{grid-template-columns:1fr}.hb-wide{grid-column:auto}.hb-topbar,.hb-editor{padding-inline:var(--space-3)}}.cs-homebrew-library{border-top:1px solid var(--line,#785c303d);margin-top:16px;padding-top:13px}.cs-homebrew-library h4{color:var(--ink-2);letter-spacing:.11em;text-transform:uppercase;margin:0 0 8px;font-size:.68rem}.cs-homebrew-instance{border:1px solid color-mix(in srgb, var(--doc-accent,#9b6a32) 30%, transparent);background:color-mix(in srgb, var(--doc-accent,#9b6a32) 5%, transparent);border-radius:8px;margin-top:9px;padding:10px}.cs-homebrew-version{color:var(--ink-2);justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:.67rem;display:flex}.cs-homebrew-version .cs-glass-btn{padding:4px 8px;font-size:.62rem}.cs-homebrew-controls{grid-template-columns:auto auto minmax(120px,1fr) minmax(95px,.5fr);align-items:end;gap:8px;display:grid}.cs-homebrew-controls label,.cs-homebrew-toggle,.cs-homebrew-notes{color:var(--ink-2);gap:3px;font-size:.62rem;display:grid}.cs-homebrew-toggle{align-items:center;min-height:30px;display:flex}.cs-homebrew-controls label:has(input[type=checkbox]){align-items:center;min-height:30px;display:flex}.cs-homebrew-controls input:not([type=checkbox]),.cs-homebrew-notes textarea{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 82%, transparent);font:inherit;border-radius:5px;padding:5px 7px}.cs-homebrew-toggle{margin-top:6px}.cs-homebrew-notes{margin-top:7px}.cs-homebrew-notes textarea{resize:vertical;min-height:52px}.cs-homebrew-upgrade ul{color:var(--ink-2);margin:12px 0;padding-left:20px;line-height:1.6}.cs-homebrew-effects{margin-bottom:10px}.cs-slot-overdrawn{color:var(--danger,#b4552d);border:1px solid color-mix(in srgb, var(--danger,#b4552d) 55%, transparent);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;margin-left:7px;padding:1px 7px;font-size:.62rem}.cs-class-picker{width:min(440px,100vw - 32px);max-height:min(80vh,640px);color:var(--ink);border:1px solid var(--line);background:var(--paper,#f4ead2);border-radius:12px;gap:12px;padding:20px;display:grid;overflow-y:auto}.cs-class-picker h2{margin:0;font-size:1.05rem}.cs-class-picker-list{gap:7px;display:grid}.cs-class-picker-option{text-align:left;color:var(--ink);border:1px solid var(--line);cursor:pointer;font:inherit;background:0 0;border-radius:8px;gap:2px;padding:10px 12px;display:grid}.cs-class-picker-option:hover:not(:disabled){border-color:var(--doc-accent,#9b6a32)}.cs-class-picker-option.is-current{border-color:var(--doc-accent,#9b6a32);background:color-mix(in srgb, var(--doc-accent,#9b6a32) 7%, transparent)}.cs-class-picker-option span{color:var(--ink-2);font-size:.7rem}.cs-class-picker-option:disabled{opacity:.55;cursor:not-allowed}.cs-homebrew-stages{border-top:1px solid color-mix(in srgb, var(--doc-accent,#9b6a32) 22%, transparent);gap:8px;margin-top:9px;padding-top:9px;display:grid}.cs-homebrew-stage-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cs-homebrew-stage-label{color:var(--ink-2);letter-spacing:.11em;text-transform:uppercase;font-size:.62rem}.cs-homebrew-stage-chip{color:var(--ink-2);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:4px 9px;font-size:.68rem}.cs-homebrew-stage-chip.is-current{color:var(--paper,#f4ead2);border-color:var(--doc-accent,#9b6a32);background:var(--doc-accent,#9b6a32);cursor:default}.cs-homebrew-stage-chip.is-ready:not(.is-current){border-color:var(--gold,#c9a25a);color:var(--gold,#c9a25a)}.cs-homebrew-stage-chip:disabled:not(.is-current){opacity:.6;cursor:default}.cs-homebrew-counters{flex-wrap:wrap;gap:10px;display:flex}.cs-homebrew-counter{color:var(--ink-2);align-items:center;gap:4px;font-size:.62rem;display:flex}.cs-homebrew-counter span{letter-spacing:.06em;text-transform:uppercase;margin-right:2px}.cs-homebrew-counter button{width:22px;height:22px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:5px;place-items:center;display:grid}.cs-homebrew-counter input{width:54px;color:var(--ink);border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 82%, transparent);font:inherit;text-align:center;border-radius:5px;padding:3px 5px}.cs-homebrew-stage-confirm{border:1px solid var(--gold,#c9a25a);background:color-mix(in srgb, var(--gold,#c9a25a) 7%, transparent);border-radius:7px;gap:7px;padding:10px;font-size:.7rem;display:grid}.cs-homebrew-stage-diff span{color:var(--ink-2);letter-spacing:.11em;text-transform:uppercase;font-size:.62rem}.cs-homebrew-stage-diff ul{color:var(--ink-2);margin:3px 0 0;padding-left:18px}.cs-homebrew-stage-confirm label{color:var(--ink-2);gap:3px;font-size:.62rem;display:grid}.cs-homebrew-stage-confirm input{color:var(--ink);border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 82%, transparent);font:inherit;border-radius:5px;padding:5px 7px}.cs-homebrew-stage-confirm-actions{gap:8px;display:flex}.cs-homebrew-stage-history summary{color:var(--ink-2);cursor:pointer;font-size:.65rem}.cs-homebrew-stage-history ul{gap:5px;margin:6px 0 0;padding:0;list-style:none;display:grid}.cs-homebrew-stage-history li{gap:1px;font-size:.67rem;display:grid}.cs-homebrew-stage-history li span{color:var(--ink-faint,var(--ink-2));font-size:.62rem}@media (max-width:700px){.cs-homebrew-controls{grid-template-columns:1fr 1fr}}@media (max-width:760px),(max-width:1024px) and (pointer:coarse){.cs-section-header{min-height:44px}.cs-prof-click{position:relative}.cs-prof-click:before{content:"";position:absolute;inset:-14px}.cs-inv-quantity-toggle{height:44px!important}.cs-inv-quantity-editor button,.cs-homebrew-counter button{width:44px;height:44px}.cs-inv-del{place-items:center;min-width:44px;min-height:44px;display:grid}.cs-spell-detail-close{place-items:center;width:44px;height:44px;display:grid}.modal-close{place-items:center;min-width:44px;min-height:44px;display:grid}.portrait-modal-close{width:44px;height:44px}.portrait-modal-btn{min-height:44px;padding-block:11px}.notification-popover-header button{place-items:center;width:44px;height:44px;display:grid}.dm-workspace-modes button{min-height:44px;padding-block:9px}.admin-icon-btn{place-items:center;min-width:44px;min-height:44px;display:inline-grid}.hb-close,.hb-icon{width:44px;height:44px}.hb-actions .ao-btn{min-height:44px}.ao-title-legal a{align-items:center;min-height:44px;padding-inline:10px;display:inline-flex}.ao-title-links button{min-height:44px;padding-inline:8px}.legal-page .legal-nav a{align-items:center;min-height:44px;display:inline-flex}.cs-inv-details summary,.hb-level-effects>summary{align-items:center;min-height:44px;display:flex}.portrait-field-btn{justify-content:center;align-items:center;min-height:44px;display:inline-flex}input,select,textarea{font-size:16px!important}}.dm-workspace-modes{gap:2px}.dm-workspace-modes button{text-align:center;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:36px;padding:7px 10px;font-size:12px;display:inline-flex}.dm-workspace-modes button>.dm-live-dot{margin-left:0}.dm-table-orientation{gap:8px;padding:12px 0 0;display:grid}.dm-table-orientation:empty{display:none}.dm-workspace-guide,.dm-rehearsal-banner{border:1px solid var(--dm-rule,color-mix(in srgb,var(--dm-ink,#2a2018) 18%,transparent));background:color-mix(in srgb,var(--dm-surface,#f2ead9) 90%,var(--dm-ink,#2a2018) 10%);color:var(--dm-ink,#2a2018);margin:0}.dm-workspace-guide{border-left:4px solid var(--doc-accent,#8c5a2b);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 50px 11px 14px;display:grid;position:relative}.dm-workspace-guide>svg{color:var(--doc-accent,#8c5a2b)}.dm-workspace-guide>div{gap:2px;display:grid}.dm-workspace-guide>div>span{color:var(--doc-accent,#8c5a2b);font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:700}.dm-workspace-guide h2{color:var(--dm-ink,#2a2018);font-family:var(--font-display);margin:0;font-size:17px;font-weight:650}.dm-workspace-guide p{max-width:920px;color:var(--dm-muted,#6b5f4e);margin:0;font-size:14px;line-height:1.5}.dm-workspace-guide details{border-left:1px solid var(--dm-rule,color-mix(in srgb,var(--dm-ink,#2a2018) 18%,transparent));align-self:stretch;min-width:190px;padding-left:14px}.dm-workspace-guide summary{min-height:36px;color:var(--dm-ink,#2a2018);font-family:var(--font-label);cursor:pointer;align-items:center;font-size:14px;font-weight:700;display:flex}.dm-workspace-guide ol{max-width:310px;color:var(--dm-muted,#6b5f4e);margin:4px 0 7px;padding-left:18px;font-size:14px;line-height:1.5}.dm-rehearsal-banner{border-left:4px solid var(--dm-magic,#2677b8);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 50px 10px 12px;display:grid;position:relative}.dm-rehearsal-banner.is-active{border-left-color:var(--dm-warning,#b66a1f)}.dm-rehearsal-banner>svg{color:var(--dm-magic,#2677b8)}.dm-rehearsal-banner.is-active>svg{color:var(--dm-warning,#b66a1f)}.dm-rehearsal-banner>div{gap:2px;display:grid}.dm-rehearsal-banner strong{color:var(--dm-ink,#2a2018);font-size:15px}.dm-rehearsal-banner span{color:var(--dm-muted,#6b5f4e);font-size:14px;line-height:1.5}.dm-rehearsal-banner .dm-btn{white-space:nowrap}.dm-banner-dismiss{z-index:2;width:32px;height:32px;color:var(--dm-muted,#6b5f4e);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid;position:absolute;top:7px;right:7px}.dm-banner-dismiss:hover{border-color:var(--dm-rule);color:var(--dm-ink,#2a2018)}.dm-banner-dismiss:focus-visible{outline:2px solid var(--dm-magic,#2677b8);outline-offset:2px}.dm-party-rehearsal{border-bottom:1px solid var(--dm-rule,color-mix(in srgb,var(--dm-ink,#2a2018) 18%,transparent));color:var(--dm-warning,#b66a1f);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 0;display:grid}.dm-party-rehearsal>span{gap:1px;display:grid}.dm-party-rehearsal strong{color:var(--dm-ink,#2a2018);font-size:15px}.dm-party-rehearsal small{color:var(--dm-muted,#6b5f4e);font-size:14px;line-height:1.5}.dm-party-rehearsal .dm-btn{min-height:32px;padding:5px 8px}.dm-command-inspector{position:relative}.dm-inspector-close{z-index:2;width:32px;height:32px;color:var(--dm-muted,#6b5f4e);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:grid;position:absolute;top:8px;right:8px}.dm-inspector-close:hover{border-color:var(--dm-rule);color:var(--dm-ink,#2a2018)}.dm-inspector-close:focus-visible{outline:2px solid var(--dm-magic,#2677b8);outline-offset:2px}.dm-command-inspector:has(.dm-inspector-close)>.dm-inspector-identity{padding-right:30px}.dm-scene-workspace{align-content:start;gap:16px;padding:24px}.dm-scene-head{align-items:flex-start;width:100%}.dm-scene-head>div{gap:3px;display:grid}.dm-scene-head small{color:var(--dm-muted,#6b5f4e);font-size:11px}.dm-scene-switch{gap:4px;min-width:190px;display:grid}.dm-scene-switch>span,.dm-scene-create label>span,.dm-scene-npc-form label>span,.dm-npc-drawer article label>span{color:var(--dm-muted,#6b5f4e);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.dm-scene-switch select,.dm-scene-create input,.dm-scene-npc-form input,.dm-npc-drawer article select{border:1px solid var(--dm-rule);background:var(--dm-surface,#f2ead9);min-height:38px;color:var(--dm-ink,#2a2018)}.dm-scene-description{width:100%}.dm-read-aloud{gap:4px;width:100%;display:grid}.dm-read-aloud>span{color:var(--doc-accent,#8c5a2b);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.dm-read-aloud blockquote{width:100%;max-width:none}.dm-scene-columns{width:100%}.dm-scene-columns section{align-content:start;gap:4px;padding:14px;display:grid;position:relative}.dm-scene-columns h4{color:var(--dm-ink,#2a2018);margin:0 0 1px;font-size:14px}.dm-scene-columns p{margin:0 0 7px;font-size:11px;line-height:1.4}.dm-scene-columns section>small{color:var(--dm-muted,#6b5f4e);font-size:11px}.dm-scene-columns label{color:var(--dm-ink,#2a2018);align-items:flex-start;gap:7px;margin:4px 0;display:flex}.dm-scene-columns label small{color:var(--doc-accent,#8c5a2b);margin-left:auto}.dm-scene-step{border:1px solid var(--doc-accent,#8c5a2b);width:22px;height:22px;color:var(--doc-accent,#8c5a2b);font-family:var(--font-label);border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid;position:absolute;top:11px;right:12px}.dm-scene-reference{border:1px solid var(--dm-rule);width:100%}.dm-scene-reference>summary{min-height:42px;color:var(--dm-ink,#2a2018);cursor:pointer;align-items:center;padding:8px 12px;font-size:12px;font-weight:650;display:flex}.dm-scene-reference .dm-capability-matrix{border:0;border-top:1px solid var(--dm-rule)}.dm-npc-drawer{width:100%;padding:14px}.dm-npc-drawer>header{justify-content:space-between;align-items:end;gap:12px;display:flex}.dm-npc-drawer>header>div{gap:2px;display:grid}.dm-npc-drawer>header span{color:var(--doc-accent,#8c5a2b);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:700}.dm-npc-drawer>header h4{color:var(--dm-ink,#2a2018);margin:0;font-size:16px}.dm-npc-drawer>header small,.dm-scene-empty-note{color:var(--dm-muted,#6b5f4e)}.dm-npc-drawer article>div{justify-content:flex-start;align-items:end}.dm-npc-drawer article label{gap:3px;display:grid}.dm-scene-npc-form{border-top:1px solid var(--dm-rule);grid-template-columns:1fr 1fr 1fr 90px 90px auto;align-items:end;gap:8px;padding-top:10px;display:grid}.dm-scene-npc-form label{gap:3px;display:grid}.dm-scene-npc-form .is-wide{grid-column:auto}.dm-scene-actions{border-top:1px solid var(--dm-rule);flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding-top:14px;display:flex}.dm-scene-actions>div{gap:2px;margin-right:auto;display:grid}.dm-scene-actions strong{color:var(--dm-ink,#2a2018);font-size:13px}.dm-scene-actions small{color:var(--dm-muted,#6b5f4e);font-size:10px}.dm-scene-onboarding{text-align:center;align-content:center;place-items:center}.dm-scene-onboarding>svg{color:var(--doc-accent,#8c5a2b)}.dm-scene-onboarding>p{max-width:680px}.dm-scene-context{border-left:3px solid var(--dm-magic,#2677b8);background:color-mix(in srgb,var(--dm-magic,#2677b8) 8%,transparent);text-align:left;padding:8px 11px}.dm-scene-start-steps{text-align:left;grid-template-columns:repeat(3,1fr);gap:8px;width:min(720px,100%);margin:4px 0;padding:0;list-style:none;display:grid}.dm-scene-start-steps li{border:1px solid var(--dm-rule);grid-template-columns:auto 1fr;gap:8px;padding:11px;display:grid}.dm-scene-start-steps li>b{border:1px solid var(--doc-accent,#8c5a2b);width:24px;height:24px;color:var(--doc-accent,#8c5a2b);border-radius:50%;place-items:center;display:grid}.dm-scene-start-steps li>span{gap:2px;display:grid}.dm-scene-start-steps strong{color:var(--dm-ink,#2a2018);font-size:12px}.dm-scene-start-steps small{color:var(--dm-muted,#6b5f4e);font-size:10px;line-height:1.35}.dm-scene-create{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;width:min(620px,100%);display:grid}.dm-scene-create label{text-align:left;gap:4px;display:grid}@media (max-width:1100px){.dm-workspace-guide{grid-template-columns:auto minmax(0,1fr)}.dm-workspace-guide details{border-left:0;border-top:1px solid var(--dm-rule);grid-column:1/-1;padding:0}.dm-scene-npc-form{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-scene-npc-form .is-wide{grid-column:1/-1}}@media (max-width:700px){.dm-workspace-guide,.dm-rehearsal-banner{grid-template-columns:auto minmax(0,1fr)}.dm-workspace-guide details,.dm-rehearsal-banner .dm-btn{grid-column:1/-1}.dm-rehearsal-banner .dm-btn{justify-content:center;width:100%}.dm-scene-workspace{padding:18px 14px}.dm-scene-head{display:grid}.dm-scene-switch{width:100%}.dm-scene-start-steps,.dm-scene-create{grid-template-columns:1fr}.dm-scene-npc-form{grid-template-columns:1fr 1fr}.dm-scene-npc-form button{grid-column:1/-1}.dm-scene-actions .dm-btn{flex:100%;justify-content:center}}@media (max-width:1280px){.dm-command-inspector{position:fixed}}.dm-table{--dm-type-label:12px;--dm-type-secondary:14px;--dm-type-body:15px;--dm-type-heading:17px;font-size:var(--dm-type-body)}.dm-table :is(.dm-btn,button,select,input,textarea){font-size:var(--dm-type-secondary)}.dm-table :is(.dm-rail-label,.dm-deck-label,.dm-log-head h4,.dm-log-link,.dm-filter button,.dm-acting-label,.dm-dup-badge,.dm-chip-overflow,.dm-command-inspector-tabs button,.dm-command-overview dt,.dm-command-overview h4,.dm-command-inspector-body article small,.dm-command-inspector-body article time,.dm-party-alerts h4,.dm-vitals-strip small,.dm-scene-switch>span,.dm-scene-create label>span,.dm-scene-npc-form label>span,.dm-npc-drawer article label>span,.dm-read-aloud>span,.dm-npc-drawer>header span,.dm-scene-step){font-size:var(--dm-type-label)}.dm-table :is(.dm-log-entry,.dm-log-group summary,.dm-log-what,.dm-glance-t,.dm-glance-n,.dm-glance-hint,.dm-readiness-t,.dm-readiness-t b,.dm-combatant-name small,.dm-command-member-name small,.dm-command-hp-copy,.dm-command-vitals,.dm-command-death,.dm-command-party>header small,.dm-command-inspector>header small,.dm-command-empty span,.dm-workspace-empty p,.dm-party-alerts button small,.dm-party-readiness,.dm-scene-head small,.dm-scene-columns p,.dm-scene-columns section>small,.dm-scene-reference>summary,.dm-scene-actions small,.dm-scene-start-steps small,.dm-scene-empty-note){font-size:var(--dm-type-secondary)}.dm-table :is(.dm-glance-t b,.dm-party-alerts button strong,.dm-scene-columns h4,.dm-scene-actions strong,.dm-scene-start-steps strong,.dm-command-party>header strong){font-size:var(--dm-type-body)}.dm-table :is(.dm-glance>header,.dm-deck-head h3,.dm-npc-drawer>header h4){font-size:var(--dm-type-heading)}.dm-table :is(.dm-log-entry time,.dm-log-group summary time),.dm-table .dm-command-hp b,.dm-table .dm-workspace-modes button{font-size:var(--dm-type-label)}.dm-table .dm-log-entry,.dm-table .dm-log-group summary{padding-block:7px;line-height:1.5}.dm-table select.dm-visibility{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dm-table select.dm-visibility option{color:#182230;background:#eef2f6}.cs-slot-summary{align-items:baseline;gap:var(--sp-3) var(--sp-5);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.cs-slot-summary__label{font-family:var(--font-label);font-size:var(--ts-1);font-weight:var(--fw-strong);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.cs-slot-summary__levels{gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;display:flex}.cs-slot-summary__lvl{align-items:center;gap:var(--sp-2);display:inline-flex}.cs-slot-summary__lvl em{font-family:var(--font-role-numeric,var(--font-body));font-style:normal;font-size:var(--ts-2);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--ink-faint)}.cs-slot-summary__marks{gap:var(--sp-1);display:inline-flex}.cs-slot-mark{border-radius:var(--r-round);background:var(--doc-accent,var(--accent));width:9px;height:9px}.cs-slot-mark.is-spent{box-shadow:inset 0 0 0 1px var(--rule);background:0 0}.cs-slot-summary--attacks{margin:0 0 var(--sp-5)}
