.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{opacity:0;width:20px;height:20px;position:absolute}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{color:var(--ink);background:var(--canvas);font-family:var(--font-display);font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#090c0a;--surface:#111512;--surface-raised:#171b18;--surface-muted:#1c211e;--surface-hover:#222824;--ink:#eeeae2;--ink-soft:#cbc7be;--muted:#9e9b94;--forest:#1f3027;--forest-dark:#080b09;--sage:#92aa99;--gold:#c3a166;--gold-soft:#1b1913;--success:#83ad90;--success-soft:#16231a;--danger:#dc7d74;--danger-soft:#291816;--blue:#8db2c2;--line-soft:#242925;--line:#303631;--line-strong:#454c47;--text-micro:10px;--text-tiny:11px;--text-xs:12px;--text-sm:13px;--paper:var(--surface);--font-display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--font-ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.dnd-icon{object-fit:contain;opacity:.9;filter:invert(91%)sepia(9%)saturate(390%)hue-rotate(350deg)brightness(102%);flex:none;width:16px;height:16px;display:block}*{box-sizing:border-box}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #bb8c4247}.app-shell{background:var(--canvas);min-height:100vh}.topbar{height:72px;color:var(--ink);background:var(--forest-dark);border-bottom:1px solid #34463c;align-items:center;gap:24px;padding:0 30px;display:flex}.brand{text-align:left;min-width:240px;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.brand-mark{border:1px solid var(--line-strong);width:38px;height:38px;color:var(--gold);place-items:center;display:grid;transform:rotate(45deg)}.brand-mark svg{transform:rotate(-45deg)}.brand strong{letter-spacing:.19em;font-family:var(--font-display);font-size:15px;display:block}.brand small{color:var(--muted);font-size:var(--text-sm);letter-spacing:.08em;margin-top:2px;display:block}.primary-navigation{align-items:center;gap:4px;display:flex}.primary-navigation a{color:var(--muted);font:750 var(--text-xs) var(--font-ui);border-radius:4px;padding:8px 10px;text-decoration:none}.primary-navigation a:hover{color:var(--ink-soft);background:#ffffff0a}.primary-navigation a.active{color:var(--gold);background:var(--gold-soft)}.pack-pill,.workspace{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.pack-pill{color:var(--gold);background:#1a2c23;border:1px solid #41574a;border-radius:100px;margin-left:auto;padding:7px 11px}.bug-report-shortcut{width:32px;height:32px;color:var(--gold);cursor:pointer;background:#1a2c23;border:1px solid #41574a;border-radius:50%;place-items:center;padding:0;display:grid}.bug-report-shortcut:hover{color:var(--ink);border-color:var(--line-strong)}.workspace{border-left:1px solid #3a4a41;padding-left:20px}.account-summary{border-left:1px solid #3a4a41;align-items:center;gap:11px;padding-left:18px;display:flex}.account-summary span{text-align:right}.account-summary strong,.account-summary small{display:block}.account-summary strong{color:var(--ink);font-size:var(--text-sm)}.account-summary small{color:var(--muted);font-size:var(--text-tiny);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.account-summary button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:#1a2c23;border:1px solid #405348;border-radius:50%;place-items:center;padding:0;display:grid}.account-summary button:hover{color:var(--ink);border-color:var(--line-strong)}.loading-screen{min-height:100vh;color:var(--sage);background:var(--canvas);place-content:center;justify-items:center;gap:12px;display:grid}.loading-screen p{color:var(--muted)}.sigil{border:1px solid var(--gold);width:58px;height:58px;font:28px var(--font-display);place-items:center;display:grid;transform:rotate(45deg)}.sigil:first-letter{transform:rotate(-45deg)}.error-state{text-align:center}.error-state h1{font-family:var(--font-display);margin-bottom:0}.muted{color:var(--muted)}.auth-page{background:radial-gradient(circle at 20% 30%, #c3a16614, transparent 28%), linear-gradient(112deg, #0b0e0c 0 54%, var(--surface) 54%);grid-template-columns:minmax(340px,1fr) minmax(400px,.82fr);min-height:100vh;display:grid}.auth-brand{align-self:center;max-width:650px;padding:clamp(55px,9vw,130px)}.auth-brand .brand-mark{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 48%, var(--line));margin-bottom:44px}.auth-brand h1{color:var(--ink);font:clamp(42px, 5vw, 68px)/1 var(--font-display);letter-spacing:-.04em;margin:0 0 24px}.auth-brand>p:last-child{max-width:500px;color:var(--ink-soft);font-size:15px;line-height:1.75}.auth-card{border:1px solid var(--line);background:#111512f0;border-radius:9px;align-self:center;width:min(430px,100% - 48px);margin:48px auto;padding:clamp(30px,5vw,52px);box-shadow:0 24px 70px #0000006b}.auth-icon{width:44px;height:44px;color:var(--gold);background:var(--forest);border-radius:50%;place-items:center;margin-bottom:30px;display:grid}.auth-card h2{color:var(--ink);font:32px var(--font-display);margin:0}.auth-card>p:not(.eyebrow){color:var(--muted);margin:10px 0 26px;font-size:12px;line-height:1.6}.auth-form{gap:15px;display:grid}.auth-form label,.create-user-form label{color:var(--ink-soft);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;gap:6px;font-weight:800;display:grid}.auth-form input,.create-user-form input,.create-user-form select{width:100%;min-height:43px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);letter-spacing:normal;text-transform:none;border-radius:4px;padding:9px 11px;font-size:12px;font-weight:500}.auth-form label small{color:var(--muted);font-size:var(--text-tiny);letter-spacing:normal;text-transform:none;font-weight:500}.auth-form .primary-button{width:100%;min-height:47px;margin-top:6px}.seed-instructions{gap:15px;display:grid}.seed-instructions code{color:var(--ink);background:var(--forest-dark);border-radius:5px;padding:14px 16px;font-size:13px;display:block}.seed-instructions p{color:var(--muted);font-size:var(--text-sm);margin:0;line-height:1.6}.form-error{color:var(--danger);font-size:var(--text-sm);margin:0;line-height:1.5}.form-success{color:var(--success);font-size:var(--text-sm);margin:0}.library-page{background:radial-gradient(circle at 18% 22%, #c3a16612, transparent 24%), linear-gradient(110deg, #0b0e0c 0 42%, var(--surface) 42%);grid-template-columns:minmax(340px,.82fr) 1.18fr;min-height:calc(100vh - 72px);display:grid}.library-hero{padding:clamp(60px,9vw,140px) clamp(40px,7vw,100px)}.eyebrow{color:var(--gold);font-size:var(--text-sm);letter-spacing:.17em;text-transform:uppercase;margin:0 0 10px;font-weight:800}.library-hero h1{color:var(--ink);font:clamp(43px, 5vw, 72px)/.98 var(--font-display);letter-spacing:-.04em;margin:0 0 24px}.library-hero>p:not(.eyebrow){max-width:480px;color:var(--ink-soft);font-size:17px;line-height:1.7}.primary-button,.secondary-button,.save-button{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:0 18px;font-size:13px;font-weight:750;display:inline-flex}.primary-button{color:var(--ink);border:1px solid var(--forest);background:var(--forest);box-shadow:0 5px 14px #00000057}.primary-button:hover{background:#294a39}.primary-button:disabled,.secondary-button:disabled,.save-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{border:1px solid var(--line);background:var(--surface-raised)}.library-hero .primary-button{min-height:50px;margin-top:25px;padding:0 23px}.character-create-controls{grid-template-columns:minmax(0,1fr) 130px;gap:9px;max-width:480px;margin-top:25px;display:grid}.character-create-controls label{color:var(--ink-soft);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;gap:6px;font-weight:800;display:grid}.character-create-controls select{width:100%;min-height:42px;color:var(--ink);border:1px solid var(--line);font-size:var(--text-sm);letter-spacing:normal;text-transform:none;background:#ffffff0b;border-radius:4px;padding:8px 10px;font-weight:600}.character-create-controls select:disabled{opacity:.55}.character-create-controls+.primary-button{margin-top:13px}.current-pack-note{color:var(--muted);font-size:var(--text-sm);margin-top:11px;display:block}.library-error{color:var(--danger)!important;font-size:12px!important}.character-library{border-left:1px solid var(--line);padding:clamp(55px,8vw,110px) clamp(36px,6vw,90px)}.section-heading{justify-content:space-between;align-items:end;margin-bottom:28px;display:flex}.section-heading h2{font:31px var(--font-display);margin:0}.section-heading>span{color:var(--muted);font-size:12px}.character-grid{gap:12px;display:grid}.character-card-shell{border:1px solid var(--line);background:#ffffff0a;border-radius:7px;transition:transform .15s,border-color .15s,box-shadow .15s;overflow:hidden}.character-card-shell:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 10px 25px #0000004d}.character-card{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:15px;width:100%;padding:18px;display:flex}.character-avatar{place-items:center;display:grid;position:relative;overflow:hidden}.character-avatar-fallback{place-items:center;display:grid}.character-avatar>img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;overflow:hidden;position:absolute!important}.character-initial{width:43px;height:43px;color:var(--ink);background:var(--forest);font:20px var(--font-display);border-radius:50%;flex:none;place-items:center;display:grid}.character-card strong,.character-card small{display:block}.character-card small{color:var(--muted);text-transform:capitalize;margin-top:4px}.character-admin-details{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.character-card .character-admin-details small{color:var(--ink-soft);border:1px solid var(--line);background:var(--gold-soft);text-transform:none;border-radius:100px;align-items:baseline;gap:5px;margin:0;padding:4px 7px;display:inline-flex}.character-admin-details b{color:var(--gold);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase}.character-card .character-description{max-width:360px;color:var(--ink-soft);font-size:var(--text-xs);text-transform:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;line-height:1.45;display:-webkit-box;overflow:hidden}.character-card .character-pack{color:var(--gold);font-size:var(--text-xs);letter-spacing:.04em;text-transform:none;font-weight:750}.character-card .character-campaign{color:var(--success);font-size:var(--text-xs);text-transform:none;font-weight:750}.character-campaign-assignment{color:var(--muted);border-top:1px solid var(--line);font-size:var(--text-tiny);letter-spacing:.06em;text-transform:uppercase;background:#111512d6;justify-content:flex-end;align-items:center;gap:8px;padding:9px 13px;font-weight:800;display:flex}.character-campaign-assignment select{min-width:150px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);letter-spacing:normal;text-transform:none;border-radius:4px;padding:5px 8px}.character-lifecycle-actions{border-top:1px solid var(--line);background:#111512e0;justify-content:flex-end;gap:6px;padding:8px 13px;display:flex}.character-lifecycle-actions a,.character-lifecycle-actions button{color:var(--sage);border:1px solid var(--line);background:var(--surface-raised);font:inherit;font-size:var(--text-tiny);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:6px 8px;text-decoration:none;display:inline-flex}.character-lifecycle-actions .danger{color:var(--danger)}.character-lifecycle-actions button:disabled{opacity:.4;cursor:not-allowed}.archived-character-library{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}.archived-character-library>summary{color:var(--muted);font-size:var(--text-sm);cursor:pointer;align-items:center;gap:8px;margin-bottom:14px;font-weight:800;display:flex}.archived-character-library>summary span{margin-left:auto}.card-arrow{color:var(--gold);margin-left:auto;font-size:20px}.empty-card{text-align:center;border:1px dashed var(--line);background:#ffffff06;border-radius:8px;padding:55px}.empty-card h3{font-family:var(--font-display);margin-bottom:6px}.empty-card p{color:var(--muted);margin:0}.empty-rune{color:var(--gold);font-size:30px}.campaign-administration{border-top:1px solid var(--line);background:var(--gold-soft);grid-column:1/-1;padding:55px clamp(36px,7vw,100px) 65px}.campaign-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);align-items:start;gap:40px;display:grid}.campaign-layout-list-only{grid-template-columns:minmax(0,1180px);justify-content:center}.campaign-layout-focused{grid-template-columns:minmax(0,1fr)}.campaign-administration.focused{background:var(--canvas);padding-top:30px}.campaign-administration.focused .campaign-detail,.campaign-administration.focused .campaign-focused-toolbar{width:100%;max-width:1380px;margin-inline:auto}.campaign-focused-toolbar{margin-bottom:18px}.campaign-library-hero{border:1px solid color-mix(in srgb, var(--forest) 78%, var(--line));background:radial-gradient(circle at 82% 12%, #c3a16624, transparent 34%), linear-gradient(135deg, var(--forest), color-mix(in srgb, var(--forest) 58%, var(--surface)));max-width:1180px;box-shadow:var(--shadow-sm);border-radius:10px;justify-content:space-between;align-items:end;gap:28px;margin:0 auto 24px;padding:clamp(24px,4vw,38px);display:flex}.campaign-library-hero h1{font:clamp(34px, 5vw, 54px)/1 var(--font-display);letter-spacing:-.025em;margin:3px 0 0}.campaign-library-hero>div:first-child>p:last-child{max-width:580px;color:var(--ink-soft);font-size:var(--text-sm);margin:13px 0 0;line-height:1.6}.campaign-library-summary{align-items:center;gap:18px;display:flex}.campaign-library-summary>span{border-right:1px solid var(--line-strong);text-align:right;min-width:68px;padding-right:18px;display:grid}.campaign-library-summary strong{color:var(--gold);font:28px/1 var(--font-display)}.campaign-library-summary small{color:var(--muted);font:750 var(--text-micro) var(--font-ui);letter-spacing:.08em;text-transform:uppercase;margin-top:4px}.campaign-layout-single{grid-template-columns:minmax(0,760px)}.campaign-list{gap:10px;width:100%;max-width:1180px;margin-inline:auto;display:grid;container-type:inline-size}.campaign-empty{text-align:center;border:1px dashed var(--line);background:#ffffff09;border-radius:8px;padding:42px}.campaign-empty svg{color:var(--gold)}.campaign-empty strong{font:18px var(--font-display);margin-top:12px;display:block}.campaign-empty p{max-width:420px;color:var(--muted);font-size:var(--text-sm);margin:8px auto 0;line-height:1.6}.campaign-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;transition:border-color .16s,transform .16s,background .16s;display:grid;overflow:hidden}.campaign-card:hover{border-color:var(--line-strong);background:var(--surface-raised)}.campaign-card.selected{border-color:var(--line-strong);box-shadow:0 0 0 2px #4a695317}.campaign-card-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px;display:grid}.campaign-mark{width:44px;height:44px;color:var(--gold);background:var(--forest);border:1px solid #41574a;border-radius:50%;place-items:center;display:grid}.campaign-card-copy{gap:7px;min-width:0;display:grid}.campaign-card-title{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.campaign-card h3{color:var(--ink);font:19px var(--font-display);margin:0}.campaign-card-title em{color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font:750 var(--text-micro) var(--font-ui);letter-spacing:.05em;text-transform:uppercase;border-radius:100px;padding:4px 7px;font-style:normal}.campaign-card-description{color:var(--muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-card-meta{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.campaign-card-meta>span{color:var(--ink-soft);font:650 var(--text-tiny) var(--font-ui);align-items:center;gap:5px;display:inline-flex}.campaign-card-meta svg{color:var(--muted)}.campaign-card-open-arrow{color:var(--gold);transition:transform .16s}.campaign-card-main:hover .campaign-card-open-arrow{transform:translate(2px,-2px)}.campaign-card-actions{border-left:1px solid var(--line);background:var(--surface-raised);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:184px;padding:15px 18px;display:flex}.campaign-card-actions .secondary-button,.campaign-card-actions .primary-button{min-height:34px;font-size:var(--text-tiny);padding:0 10px}.campaign-card-actions .primary-button{justify-content:center;width:100%}@container (width<=760px){.campaign-card{grid-template-columns:1fr}.campaign-card-actions{border-top:1px solid var(--line);border-left:0;justify-content:flex-start;min-width:0;padding:11px 18px}.campaign-card-actions .primary-button{width:auto;margin-left:auto}}.campaign-tags{flex-wrap:wrap;gap:6px;margin-top:15px;display:flex}.campaign-tags span{color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);font-size:var(--text-tiny);border-radius:100px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.campaign-edit-button{color:var(--gold);border:0;border-bottom:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));font-size:var(--text-tiny);cursor:pointer;text-transform:uppercase;background:0 0;align-items:center;gap:5px;margin-left:auto;padding:3px 0;font-weight:800;display:inline-flex}.campaign-form{border:1px solid var(--line);background:var(--paper);border-radius:7px;gap:15px;padding:24px;display:grid}.campaign-form>header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.campaign-form>header>svg{color:var(--gold)}.campaign-form>header strong,.campaign-form>header small{display:block}.campaign-form>header strong{font:18px var(--font-display)}.campaign-form>header small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.campaign-form>label,.campaign-form legend{color:var(--ink-soft);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;gap:6px;font-weight:800;display:grid}.campaign-form>label input,.campaign-form>label textarea{width:100%;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);letter-spacing:normal;text-transform:none;border-radius:4px;padding:10px 11px;font:12px/1.5 system-ui,sans-serif}.campaign-form>label textarea{resize:vertical}.campaign-form fieldset{border:0;min-width:0;margin:0;padding:0}.campaign-form legend{margin-bottom:8px}.campaign-options,.campaign-rule-toggles,.campaign-member-options{gap:7px;display:grid}.campaign-option{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid}.campaign-option>label,.campaign-rule-toggles label,.campaign-member-options label{cursor:pointer;align-items:center;gap:9px;padding:10px;display:flex}.campaign-option.required>label{cursor:default}.campaign-option.required input:disabled{opacity:1}.campaign-rule-toggles label,.campaign-member-options label{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px}.campaign-option.selected{border-color:var(--line-strong);background:var(--success-soft)}.campaign-option>button{color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-micro);text-transform:uppercase;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:5px;margin:7px;padding:0 8px;font-weight:800;display:inline-flex}.campaign-option>button:hover{border-color:var(--line-strong);background:var(--forest)}.campaign-option input,.campaign-rule-toggles input,.campaign-member-options input{accent-color:var(--sage)}.campaign-option span,.campaign-rule-toggles span,.campaign-member-options span{flex:1;min-width:0}.campaign-option strong,.campaign-option small,.campaign-rule-toggles strong,.campaign-rule-toggles small,.campaign-member-options strong,.campaign-member-options small{display:block}.campaign-option strong,.campaign-rule-toggles strong,.campaign-member-options strong{font-size:var(--text-sm)}.campaign-option small,.campaign-rule-toggles small,.campaign-member-options small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px;line-height:1.4}.campaign-option small{text-transform:capitalize}.campaign-content-mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.campaign-content-mode>label{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;align-items:flex-start;gap:9px;padding:11px;display:flex}.campaign-content-mode>label.selected{border-color:var(--line-strong);background:var(--success-soft)}.campaign-content-mode input{accent-color:var(--sage);margin-top:2px}.campaign-content-mode span,.campaign-content-mode strong,.campaign-content-mode small{display:block}.campaign-content-mode span{min-width:0}.campaign-content-mode strong{color:var(--ink);font-size:var(--text-sm)}.campaign-content-mode small{color:var(--muted);font-size:var(--text-tiny);margin-top:4px;line-height:1.45}.campaign-content-summary{border:1px dashed var(--line-strong);background:var(--gold-soft);color:var(--muted);font-size:var(--text-tiny);border-radius:5px;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:9px 10px;display:flex}.campaign-content-summary strong{color:var(--ink)}.campaign-member-options{max-height:180px;overflow-y:auto}.campaign-member-options select{border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);border-radius:4px;padding:6px 7px}.campaign-roster{border-top:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));gap:7px;margin-top:15px;padding-top:14px;display:grid}.campaign-character-create{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;grid-template-columns:minmax(120px,1.2fr) minmax(110px,1fr) 100px;align-items:end;gap:7px;padding:10px;display:grid}.campaign-character-create label{color:var(--ink-soft);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase;gap:4px;font-weight:800;display:grid}.campaign-character-create input,.campaign-character-create select{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);letter-spacing:normal;text-transform:none;border-radius:3px;padding:7px}.campaign-character-create .secondary-button{grid-column:1/-1;min-height:34px}.campaign-roster-heading{justify-content:space-between;align-items:baseline;display:flex}.campaign-roster-heading strong{font:14px var(--font-display)}.campaign-roster-heading small,.campaign-roster>small{color:var(--muted);font-size:var(--text-tiny)}.campaign-roster-row{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.campaign-roster-row>span{min-width:0}.campaign-roster-row strong,.campaign-roster-row small{display:block}.campaign-roster-row strong{font-size:var(--text-xs)}.campaign-roster-row small{color:var(--muted);font-size:var(--text-micro);margin-top:3px}.campaign-roster-open{color:var(--sage);border:0;border-bottom:1px solid var(--line-strong);font-size:var(--text-xs);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:0;font-weight:800;display:inline-flex}.campaign-roster-actions{align-items:center;gap:5px;display:flex}.campaign-roster-actions select{border:1px solid var(--line);background:var(--surface-raised);max-width:125px;font-size:var(--text-tiny);border-radius:3px;padding:5px 6px}.campaign-roster-actions button{width:28px;height:28px;color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:3px;place-items:center;padding:0;display:grid}.campaign-party-state{color:var(--muted);font-size:var(--text-xs);padding:24px}.campaign-party-view{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin:20px;overflow:hidden}.campaign-party-view>header{border-bottom:1px solid var(--line);background:var(--forest);justify-content:space-between;align-items:end;gap:20px;padding:22px 24px;display:flex}.campaign-party-view>header h2{font:clamp(27px, 4vw, 38px)/1.05 var(--font-display);margin:3px 0 0}.campaign-party-view>header>p{max-width:330px;color:var(--muted);font-size:var(--text-xs);text-align:right;margin:0;line-height:1.5}.campaign-party-layout{grid-template-columns:minmax(235px,.7fr) minmax(0,1.7fr);min-height:420px;display:grid}.campaign-party-layout>nav{border-right:1px solid var(--line);background:color-mix(in srgb, var(--surface) 72%, var(--forest));padding:8px}.campaign-party-layout>nav button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;display:grid}.campaign-party-layout>nav button+button{margin-top:3px}.campaign-party-layout>nav button:hover{background:var(--surface-raised)}.campaign-party-layout>nav button.selected{border-color:var(--line-strong);background:var(--forest);box-shadow:var(--shadow-sm)}.campaign-party-layout>nav button>svg{color:var(--gold)}.campaign-party-layout>nav strong,.campaign-party-layout>nav small{display:block}.campaign-party-layout>nav strong{font-size:var(--text-xs)}.campaign-party-layout>nav small{color:var(--muted);font-size:var(--text-micro);margin-top:3px}.campaign-party-portrait{width:40px;height:46px;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 50%, var(--line));background:radial-gradient(circle at 50% 34%, color-mix(in srgb, var(--gold) 22%, transparent), transparent 37%), var(--forest);font:14px var(--font-display);border-radius:22px 22px 6px 6px;flex:none;place-items:center;display:grid}.campaign-party-profile{flex-direction:column;min-width:0;padding:31px 34px 0;display:flex}.campaign-party-profile-title{align-items:center;gap:17px;display:flex}.campaign-party-profile-title .campaign-party-portrait{width:58px;height:68px;font-size:20px}.campaign-party-profile-title h3{font:33px/1 var(--font-display);margin:3px 0 6px}.campaign-party-profile-title div>span{color:var(--muted);font-size:var(--text-xs);align-items:center;gap:5px;display:flex}.campaign-party-profile dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:27px 0 0;display:grid}.campaign-party-profile dl div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:10px 12px}.campaign-party-profile dt{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.campaign-party-profile dd{font-size:var(--text-xs);margin:4px 0 0;font-weight:800}.campaign-party-story{flex:1;margin-top:24px;padding-bottom:27px}.campaign-party-story>span{color:var(--gold);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-weight:850;display:flex}.campaign-party-story p{color:var(--ink-soft);font:18px/1.65 var(--font-display);white-space:pre-wrap;margin:10px 0 0}.campaign-party-profile>footer{border-top:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;margin:auto -34px 0;padding:15px 34px;display:flex}.campaign-party-profile>footer small{color:var(--muted);font-size:var(--text-micro)}.campaign-party-view.empty{text-align:center;padding:45px 24px}.campaign-party-view.empty strong{font:21px var(--font-display);display:block}.campaign-party-view.empty p{color:var(--muted);font-size:var(--text-xs);margin:6px 0 0}@media (width<=720px){.campaign-party-view{margin:12px}.campaign-party-view>header{flex-direction:column;align-items:start}.campaign-party-view>header>p{text-align:left}.campaign-party-layout{grid-template-columns:1fr}.campaign-party-layout>nav{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.campaign-party-layout>nav button{min-width:220px}.campaign-party-profile{padding:24px 20px 0}.campaign-party-profile>footer{margin-inline:-20px;padding-inline:20px}}.campaign-detail{border:1px solid var(--line);background:var(--paper);border-radius:7px;overflow:hidden;box-shadow:0 14px 35px #0000004d}.campaign-detail>header{border-bottom:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));align-items:center;gap:11px;padding:21px;display:flex}.campaign-detail>header h3{font:21px var(--font-display);margin:1px 0 2px}.campaign-detail>header small{color:var(--muted);font-size:var(--text-tiny)}.campaign-detail-actions{align-items:center;gap:13px;margin-left:auto;display:flex}.campaign-detail-actions .campaign-edit-button{margin-left:0}.campaign-detail-tabs{border-bottom:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));padding:5px;display:grid}.campaign-detail-tabs button{color:var(--ink-soft);font-size:var(--text-tiny);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:9px;font-weight:800}.campaign-detail-tabs button.selected{color:var(--ink);background:var(--forest)}.campaign-detail-settings,.campaign-detail-members,.campaign-detail>.campaign-roster{margin:0;padding:20px}.campaign-detail-settings>p{color:var(--ink-soft);font:12px/1.6 var(--font-display);margin:0 0 18px}.campaign-detail-settings>div{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.campaign-detail-settings>div>span{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:11px}.campaign-detail-settings small,.campaign-detail-settings strong{display:block}.campaign-detail-settings small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.campaign-detail-settings strong{font-size:var(--text-sm);margin-top:4px}.campaign-detail-settings section{margin-top:18px}.campaign-rules-list{gap:7px;margin-top:7px;display:grid}.campaign-rules-list details{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:10px 11px}.campaign-rules-list summary{color:var(--sage);cursor:pointer;align-items:center;gap:7px;list-style:none;display:flex}.campaign-rules-list summary::-webkit-details-marker{display:none}.campaign-rules-list summary strong{margin:0}.campaign-rules-list p{white-space:pre-line;max-height:260px;color:var(--ink-soft);font-size:var(--text-xs);margin:10px 0 0;line-height:1.55;overflow:auto}.campaign-detail-settings .admin-prank-panel{border:1px solid color-mix(in srgb, #b95b63 55%, var(--line));background:linear-gradient(135deg, #691f2b2b, transparent 52%), var(--surface-raised);border-radius:7px;margin-top:28px;padding:18px}.admin-prank-panel>header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding-bottom:15px;display:grid}.admin-prank-mark{color:#e28a91;border:1px solid color-mix(in srgb, #b95b63 55%, var(--line));background:color-mix(in srgb, #691f2b 38%, var(--surface));border-radius:50%;place-items:center;width:40px;height:40px;display:inline-grid}.admin-prank-panel h3{font:25px var(--font-display);margin:2px 0 4px}.admin-prank-panel header p:last-child{max-width:720px;color:var(--muted);font-size:var(--text-xs);margin:0;line-height:1.5}.admin-prank-secret{color:#e28a91;border:1px solid color-mix(in srgb, #b95b63 50%, var(--line));font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;border-radius:99px;align-items:center;gap:5px;padding:6px 8px;font-weight:850;display:inline-flex}.campaign-detail-settings .admin-prank-controls{grid-template-columns:repeat(2,minmax(280px,1fr));gap:10px;margin-top:14px;display:grid}.admin-prank-master,.admin-prank-controls>div{border:1px solid var(--line);background:var(--surface);border-radius:5px;padding:13px}.admin-prank-master{grid-column:1/-1}.admin-prank-master,.admin-prank-feature{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;display:grid}.admin-prank-feature{grid-template-columns:auto auto minmax(0,1fr)}.admin-prank-master input,.admin-prank-feature input{accent-color:#c46770;margin-top:4px}.admin-prank-feature>svg{color:#e28a91;margin-top:1px}.admin-prank-panel .admin-prank-controls strong{margin:0}.admin-prank-panel .admin-prank-controls small{text-transform:none;margin-top:4px;line-height:1.45}.admin-prank-controls>div.is-disabled{opacity:.52}.admin-prank-probability{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 10px;margin-top:14px;padding-top:12px;display:grid}.admin-prank-probability>span{color:var(--muted);font-size:var(--text-xs)}.admin-prank-probability input{accent-color:#c46770;grid-column:1;width:100%}.admin-prank-probability b{color:#e28a91;min-width:58px;font:25px var(--font-display);text-align:right;grid-area:1/2/3}.campaign-detail-settings .admin-prank-status{color:var(--muted);text-transform:none;margin-top:9px}@media (width<=760px){.campaign-detail-settings .admin-prank-controls{grid-template-columns:1fr}.admin-prank-panel>header{grid-template-columns:auto minmax(0,1fr)}.admin-prank-secret{grid-column:1/-1;width:fit-content}}.campaign-detail-members{gap:7px;display:grid}.campaign-detail-members>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:33px 1fr auto;align-items:center;gap:9px;padding:9px;display:grid}.campaign-detail-members strong,.campaign-detail-members small{display:block}.campaign-detail-members strong{font-size:var(--text-xs)}.campaign-detail-members small{color:var(--muted);font-size:var(--text-micro);margin-top:2px}.campaign-detail-members em{color:var(--gold);font-size:var(--text-micro);text-transform:uppercase;font-style:normal;font-weight:800}.campaign-detail-empty{align-content:center;min-height:220px}.campaign-dm-screen{background:radial-gradient(circle at 82% 8%, color-mix(in srgb, var(--gold) 9%, transparent), transparent 28%), var(--canvas);grid-column:1/-1;width:100%;min-width:0;min-height:calc(100vh - 72px);padding:30px clamp(16px,2vw,32px) 70px}.campaign-administration.focused.campaign-workspace-host{background:var(--canvas);border-top:0;width:100%;min-width:0;padding:0}.campaign-workspace-host .campaign-layout{width:100%;min-width:0;display:block}.campaign-workspace-header{border:1px solid var(--line);background:var(--forest);border-radius:8px;width:100%;max-width:none;margin:0 auto 16px;overflow:hidden;box-shadow:0 14px 42px #00000038}.campaign-workspace-toolbar{border-bottom:1px solid var(--line);background:#0000001f;justify-content:space-between;align-items:center;gap:14px;min-height:42px;padding:7px 18px;display:flex}.campaign-workspace-toolbar>span{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.campaign-workspace-summary{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;padding:20px 23px;display:grid}.campaign-workspace-title{min-width:0}.campaign-workspace-title h1{color:var(--ink);font:clamp(28px, 3vw, 38px)/1.05 var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;overflow:hidden}.campaign-workspace-title>p:last-child{max-width:720px;color:var(--ink-soft);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 0;line-height:1.45;overflow:hidden}.campaign-workspace-facts{align-items:stretch;gap:7px;display:flex}.campaign-workspace-facts>span{border:1px solid var(--line);text-align:center;background:#0000001f;border-radius:5px;align-content:center;min-width:78px;padding:9px 11px;display:grid}.campaign-workspace-facts strong,.campaign-workspace-facts small{display:block}.campaign-workspace-facts strong{color:var(--gold);font:18px var(--font-display)}.campaign-workspace-facts small{color:var(--muted);font-size:var(--text-micro);white-space:nowrap;margin-top:3px}.campaign-workspace-tabs{border-top:1px solid var(--line);background:#00000029;grid-template-columns:repeat(5,minmax(105px,1fr));gap:5px;padding:6px;display:grid}.campaign-workspace-tabs button{min-height:39px;color:var(--muted);font-size:var(--text-xs);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:800;display:inline-flex}.campaign-workspace-tabs button:hover{color:var(--ink);border-color:var(--line);background:var(--surface-raised)}.campaign-workspace-tabs button.selected{color:var(--ink);border-color:var(--line-strong);background:var(--surface-raised);box-shadow:inset 0 -2px var(--gold)}.campaign-workspace-content{border:1px solid var(--line);background:var(--paper);border-radius:7px;width:100%;min-width:0;max-width:none;margin:0 auto;overflow:hidden}.campaign-workspace-section-heading{border-bottom:1px solid var(--line);background:var(--surface-raised);justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.campaign-workspace-section-heading h2{font:25px var(--font-display);align-items:center;gap:8px;margin:2px 0 0;display:flex}.campaign-workspace-section-heading h2 svg{color:var(--gold)}.campaign-workspace-section-heading>div:first-child>p:last-child{color:var(--muted);font-size:var(--text-xs);margin:7px 0 0}.campaign-workspace-section-screen{padding-top:30px}.campaign-dm-header{justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:none;margin:0 auto 26px;display:flex}.campaign-dm-back{color:var(--ink-soft);font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:3px 0;display:inline-flex}.campaign-dm-header nav{flex-wrap:wrap;gap:7px;display:flex}.campaign-dm-header nav button{min-height:36px;color:var(--ink-soft);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);cursor:pointer;border-radius:4px;align-items:center;gap:7px;padding:0 12px;font-weight:750;display:inline-flex}.campaign-dm-hero{border:1px solid var(--line);background:var(--forest);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;width:100%;max-width:none;margin:0 auto;padding:clamp(25px,4vw,48px);display:grid;box-shadow:0 18px 55px #00000040}.campaign-dm-mark{width:58px;height:58px;color:var(--gold);border:1px solid var(--line-strong);background:var(--gold-soft);border-radius:50%;place-items:center;display:grid}.campaign-dm-hero h1{font:clamp(34px, 4vw, 56px)/1 var(--font-display);margin:0}.campaign-dm-hero>div>p:last-child{max-width:700px;color:var(--ink-soft);font:16px/1.6 var(--font-display);margin:12px 0 0}.campaign-dm-stats{gap:10px;display:flex}.campaign-dm-stats span{border:1px solid var(--line);text-align:center;background:#0000001f;border-radius:5px;min-width:92px;padding:13px}.campaign-dm-stats strong,.campaign-dm-stats small{display:block}.campaign-dm-stats strong{color:var(--gold);font:24px var(--font-display)}.campaign-dm-stats small{color:var(--muted);font-size:var(--text-micro);margin-top:4px}.campaign-dm-grid{grid-template-columns:1.25fr 1fr 1fr;gap:12px;width:100%;max-width:none;margin:18px auto 0;display:grid}.campaign-dm-workspace-card{border:1px solid var(--line);background:var(--paper);border-radius:7px;flex-direction:column;align-items:flex-start;min-height:250px;padding:25px;display:flex}.campaign-dm-workspace-card>span{width:38px;height:38px;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);border-radius:50%;place-items:center;margin-bottom:22px;display:grid}.campaign-dm-workspace-card h2{font:23px var(--font-display);margin:0}.campaign-dm-workspace-card>p:not(.eyebrow){color:var(--muted);font-size:var(--text-sm);margin:10px 0 24px;line-height:1.6}.campaign-dm-workspace-card>button{margin-top:auto}.campaign-dm-workspace-card.primary{border-color:color-mix(in srgb, var(--gold) 40%, var(--line))}.campaign-dm-layout-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:7px;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:none;min-height:58px;margin:18px auto 0;padding:10px 12px;display:flex}.campaign-dm-layout-toolbar p{margin:0 0 2px}.campaign-dm-layout-toolbar small{color:var(--muted);font-size:var(--text-xs)}.campaign-dm-layout-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.campaign-dm-widget-picker{border:1px dashed color-mix(in srgb, var(--gold) 42%, var(--line));background:var(--gold-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:14px;width:100%;max-width:none;margin:10px auto 0;padding:11px 12px;display:flex}.campaign-dm-widget-picker>span{gap:2px;display:grid}.campaign-dm-widget-picker small{color:var(--muted);font-size:var(--text-xs)}.campaign-dm-widget-picker>div{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.campaign-dm-dashboard-shell{width:100%;max-width:none;margin:14px auto 0}.campaign-dm-dashboard{width:100%;margin:0}.campaign-dm-widget{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin;min-width:0;height:100%;overflow:hidden auto;container-type:inline-size}.campaign-dm-widget-slot{min-width:0}.campaign-dm-widget-slot>.campaign-dm-widget{height:100%}.campaign-dm-dashboard.is-layout-editing .campaign-dm-widget{border-color:color-mix(in srgb, var(--gold) 55%, var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 16%, transparent);padding-top:54px}.campaign-dm-widget-layout-controls{z-index:3;align-items:center;gap:5px;display:flex;position:absolute;top:12px;right:12px}.campaign-dm-widget-drag-handle,.campaign-dm-widget-layout-controls>button{color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 40%, var(--line));background:var(--forest);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase;border-radius:4px;align-items:center;gap:5px;padding:6px 8px;font-weight:850;display:inline-flex}.campaign-dm-widget-drag-handle{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.campaign-dm-widget-layout-controls>button{cursor:pointer}.campaign-dm-widget-layout-controls>button:hover{background:var(--surface-raised)}.campaign-dm-widget-drag-handle:active{cursor:grabbing}.campaign-dm-dashboard.is-layout-editing .react-resizable-handle{opacity:.85}.campaign-party-overview,.campaign-encounter,.campaign-loot,.campaign-dm-tool-widget{border:1px solid var(--line);background:var(--paper);border-radius:7px;min-width:0;padding:24px}.campaign-party-overview>header,.campaign-encounter>header,.campaign-loot>header,.campaign-dm-tool-widget>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.campaign-party-overview h2,.campaign-encounter h2,.campaign-loot h2,.campaign-dm-tool-widget h2{font:26px var(--font-display);align-items:center;gap:8px;margin:2px 0 0;display:flex}.campaign-party-overview h2 svg,.campaign-encounter h2 svg,.campaign-loot h2 svg,.campaign-dm-tool-widget h2 svg{color:var(--gold)}.campaign-party-list{gap:7px;display:grid}.campaign-party-member{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);text-align:left;cursor:pointer;border-radius:5px;grid-template-columns:42px minmax(150px,1.3fr) minmax(78px,auto) 58px 68px minmax(145px,1fr) 18px;align-items:center;gap:12px;padding:11px 13px;display:grid}.campaign-party-member:hover{border-color:color-mix(in srgb, var(--gold) 45%, var(--line));background:color-mix(in srgb, var(--gold) 5%, var(--surface-raised))}.campaign-party-avatar{width:38px;height:38px;color:var(--gold);border:1px solid var(--line-strong);background:var(--forest);font:19px var(--font-display);border-radius:50%;place-items:center;display:grid}.campaign-party-identity,.campaign-party-vital{flex-direction:column;min-width:0;display:flex}.campaign-party-identity strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-party-identity small,.campaign-party-vital small,.campaign-party-status small{color:var(--muted);font-size:var(--text-micro)}.campaign-party-vital{align-items:center}.campaign-party-vital strong{font:18px var(--font-display)}.campaign-party-vital.hp strong{color:var(--gold)}.campaign-party-vital em{color:var(--muted);font-size:var(--text-micro);white-space:nowrap;font-style:normal}.campaign-party-status{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.campaign-party-status em{color:var(--ink-soft);border:1px solid var(--line);background:var(--surface);font-size:var(--text-micro);text-transform:capitalize;border-radius:99px;padding:3px 6px;font-style:normal}.campaign-party-status em.concentration{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 35%, var(--line))}.campaign-party-open{color:var(--muted)}.campaign-dm-empty{min-height:90px;color:var(--muted);border:1px dashed var(--line);text-align:center;border-radius:5px;place-items:center;padding:20px;display:grid}.campaign-encounter-actions{flex-wrap:wrap;gap:7px;display:flex}.combat-initiative-request-button{min-height:38px;color:var(--ink);border:1px solid var(--danger);background:var(--danger-soft);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:8px 13px;font-weight:850;display:inline-flex}.combat-initiative-request-button:hover,.combat-initiative-request-button:focus-visible{background:color-mix(in srgb, var(--danger) 25%, var(--danger-soft))}.combat-initiative-request-button:disabled{opacity:.55;cursor:wait}.campaign-initiative-request-status{color:var(--ink);border:1px solid color-mix(in srgb, var(--danger) 60%, var(--line));background:var(--danger-soft);border-radius:5px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.campaign-initiative-request-status span{align-items:center;gap:7px;display:inline-flex}.campaign-initiative-request-status span svg{color:var(--danger)}.campaign-initiative-request-status strong{color:var(--danger);font-size:var(--text-xs)}.campaign-encounter-toolbar{grid-template-columns:minmax(190px,1fr) 88px auto;align-items:end;gap:9px;margin-bottom:10px;display:grid}.campaign-encounter label{gap:5px;min-width:0;display:grid}.campaign-encounter label>span,.campaign-encounter-add label>span{color:var(--muted);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.campaign-encounter input{width:100%;min-width:0;height:38px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font:inherit;border-radius:4px;padding:0 10px}.campaign-encounter input:focus{outline:2px solid color-mix(in srgb, var(--gold) 30%, transparent);border-color:var(--gold)}.campaign-encounter-add{border:1px solid var(--line);background:var(--surface);border-radius:5px;grid-template-columns:minmax(180px,1fr) 105px auto;align-items:end;gap:9px;margin-bottom:12px;padding:12px;display:grid}.campaign-encounter-list{gap:5px;display:grid}.campaign-encounter-labels,.campaign-combatant{grid-template-columns:minmax(145px,1.2fr) 64px 138px 64px minmax(150px,1fr) 72px;align-items:center;gap:7px;display:grid}.campaign-encounter-labels{color:var(--muted);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;padding:0 9px 2px;font-weight:800}.campaign-combatant{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;padding:7px 8px;position:relative}.campaign-combatant.active{border-color:color-mix(in srgb, var(--gold) 65%, var(--line));box-shadow:inset 3px 0 var(--gold)}.campaign-combatant-name{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;display:flex}.campaign-combatant-name>span{width:28px;height:28px;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);border-radius:50%;flex:none;place-items:center;display:grid}.campaign-combatant-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-combatant-name small{color:var(--forest);background:var(--gold);font-size:var(--text-micro);text-transform:uppercase;border-radius:99px;padding:2px 5px;font-weight:900}.campaign-combatant-hp{grid-template-columns:1fr auto 1fr;align-items:center;gap:4px;display:grid}.campaign-combatant-hp b{color:var(--muted);font-weight:400}.campaign-combatant-actions{justify-content:flex-end;gap:3px;display:flex}.campaign-combatant .icon-button{width:32px;height:32px;min-height:0;color:var(--muted)}.campaign-loot-header-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.loot-policy{border:1px solid var(--line);font-size:var(--text-micro);text-transform:uppercase;border-radius:99px;padding:6px 9px;font-weight:800}.loot-policy.open{color:var(--success);background:var(--success-soft)}.loot-policy.locked{color:var(--gold);background:var(--gold-soft)}.campaign-loot-list{gap:6px;display:grid}.campaign-loot-list>article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:34px minmax(150px,1fr) minmax(190px,auto) minmax(150px,.8fr) 72px auto 34px;align-items:end;gap:9px;padding:9px 10px;display:grid}.campaign-loot-list .inventory-kind{align-self:center}.campaign-loot-name{align-self:center;min-width:0}.campaign-loot-name strong,.campaign-loot-name small{display:block}.campaign-loot-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-loot-name small{color:var(--muted);font-size:var(--text-micro);text-transform:capitalize;margin-top:2px}.campaign-loot-stock-control{align-items:end;gap:6px;min-width:0;display:flex}.campaign-loot-stock{align-self:center;gap:1px;min-width:48px;display:grid}.campaign-loot-stock small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.campaign-loot-stock strong{color:var(--gold);font:18px var(--font-display)}.campaign-loot-stock-control>label{width:64px}.campaign-loot-stock-control>.secondary-button{height:38px;min-height:0;padding:0 10px}.campaign-loot-list label{gap:4px;min-width:0;display:grid}.campaign-loot-list label>span{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.campaign-loot-list select,.campaign-loot-list input{width:100%;min-width:0;height:38px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:0 9px}.campaign-loot-list .icon-button{width:32px;height:32px;min-height:0;margin-bottom:3px}.campaign-dm-roll-list{gap:6px;display:grid}.campaign-dm-roll-list article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:52px minmax(120px,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 11px;display:grid}.campaign-dm-roll-list time,.campaign-dm-roll-list small{color:var(--muted);font-size:var(--text-micro)}.campaign-dm-roll-list article>span{gap:2px;min-width:0;display:grid}.campaign-dm-roll-list article>span>strong,.campaign-dm-roll-list article>span>small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-dm-roll-result{justify-items:end}.campaign-dm-roll-result b{color:var(--gold);font:23px var(--font-display)}.campaign-dm-check-picker{gap:4px;min-width:190px;display:grid}.campaign-dm-check-picker>span,.campaign-dm-quick-roll label>span{color:var(--muted);font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.campaign-dm-check-picker select,.campaign-dm-quick-roll input:not([type=checkbox]){width:100%;min-width:0;height:38px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font:inherit;border-radius:4px;padding:0 9px}.campaign-dm-check-list{gap:6px;display:grid}.campaign-dm-check-list>button{min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);text-align:left;cursor:pointer;border-radius:5px;grid-template-columns:38px minmax(110px,1fr) auto 58px;align-items:center;gap:10px;padding:9px 11px;display:grid}.campaign-dm-check-list>button:hover{border-color:var(--line-strong)}.campaign-dm-check-list>button>span:nth-child(2),.campaign-dm-passive{gap:2px;min-width:0;display:grid}.campaign-dm-check-list small{color:var(--muted);font-size:var(--text-micro)}.campaign-dm-passive{justify-items:center}.campaign-dm-check-modifier{min-width:52px;color:var(--gold);font:24px var(--font-display);text-align:right}.campaign-dm-quick-roll{grid-template-columns:1fr 1fr;gap:10px;display:grid}.campaign-dm-quick-roll label{gap:5px;min-width:0;display:grid}.character-custom-roll .campaign-dm-quick-roll>.primary-button{grid-column:1/-1}.sheet-party-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.sheet-party-list li{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:grid}.sheet-party-avatar{border-radius:50%;width:42px;height:42px}.sheet-party-list li>span{gap:1px;min-width:0;display:grid}.sheet-party-list strong,.sheet-party-list small,.sheet-party-list em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sheet-party-list small{color:var(--muted);font-size:var(--text-micro)}.sheet-party-list em{color:var(--gold);font-size:var(--text-xs);font-style:normal}.sheet-party-list li>b{color:var(--muted);border:1px solid var(--line);font-size:var(--text-micro);text-transform:uppercase;border-radius:100px;padding:3px 6px}.campaign-dm-quick-dice{grid-column:1/-1;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.campaign-dm-quick-dice button{min-height:32px;color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font:15px var(--font-display);cursor:pointer;border-radius:4px;padding:0 5px}.campaign-dm-quick-dice button:hover{border-color:var(--gold)}.campaign-dm-quick-dice button:disabled{opacity:.45;cursor:default}.campaign-dm-quick-dice .campaign-dm-clear-dice{color:var(--muted);font-family:system-ui,sans-serif;font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;justify-content:center;align-items:center;gap:5px;font-weight:750;display:inline-flex}.campaign-dm-roll-visibility{color:var(--muted);font-size:var(--text-xs);grid-auto-flow:column;justify-content:start;align-self:center;align-items:center;gap:7px!important;display:flex!important}.campaign-dm-roll-visibility input{accent-color:var(--gold)}.campaign-dm-quick-result{border:1px solid color-mix(in srgb, var(--gold) 40%, var(--line));background:var(--gold-soft);border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;display:grid}.campaign-dm-quick-result-heading{gap:2px;min-width:0;display:grid}.campaign-dm-quick-result small,.campaign-dm-quick-result em{color:var(--muted);font-size:var(--text-micro);font-style:normal}.campaign-dm-individual-dice{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;gap:6px;padding-top:10px;display:flex}.campaign-dm-individual-dice>span{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;justify-items:center;gap:2px;min-width:55px;padding:6px 8px;display:grid}.campaign-dm-individual-dice b{color:var(--gold);font:21px var(--font-display)}.campaign-dm-quick-total{justify-items:center;display:grid}.campaign-dm-quick-total>b{color:var(--gold);font:38px var(--font-display)}.campaign-soundboard-master{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-bottom:12px;padding:9px 11px;display:grid}.campaign-soundboard-master>svg{color:var(--gold)}.campaign-soundboard-master label{gap:3px;min-width:0;display:grid}.campaign-soundboard-master label>span{color:var(--muted);font-size:var(--text-micro)}.campaign-soundboard-master input{width:100%;accent-color:var(--gold)}.campaign-soundboard-master b{min-width:38px;color:var(--gold);font-size:var(--text-xs);text-align:right}.campaign-soundboard-list{gap:6px;margin-bottom:12px;display:grid}.campaign-soundboard-list article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-width:0;padding:7px 8px;display:grid}.campaign-soundboard-list article.is-playing{border-color:color-mix(in srgb, var(--gold) 48%, var(--line));box-shadow:inset 3px 0 0 var(--gold)}.campaign-soundboard-list article>span{gap:2px;min-width:0;display:grid}.campaign-soundboard-list article strong,.campaign-soundboard-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-soundboard-list article small{color:var(--muted);font-size:var(--text-micro)}.campaign-soundboard-play,.campaign-soundboard-stop{width:34px;height:34px;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:inline-grid}.campaign-soundboard-play:hover,.campaign-soundboard-stop:hover{border-color:var(--gold)}.campaign-soundboard-stop{border-radius:4px;width:30px;height:30px}.campaign-soundboard-upload{border-top:1px solid var(--line);grid-template-columns:minmax(120px,1fr) minmax(130px,1fr) auto;gap:7px;padding-top:12px;display:grid}.campaign-soundboard-upload>input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:9px 10px}.campaign-soundboard-file{cursor:pointer;justify-content:flex-start;min-width:0}.campaign-soundboard-file span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.campaign-soundboard-file input{display:none}.campaign-soundboard-hint{color:var(--muted);font-size:var(--text-micro);margin-top:6px;display:block}.campaign-dm-resource-list{gap:7px;display:grid}.campaign-dm-resource-list>article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);align-items:center;gap:12px;padding:10px 11px;display:grid}.campaign-dm-resource-list article>button{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0;display:grid}.campaign-dm-resource-list article>button>span:nth-child(2){gap:2px;min-width:0;display:grid}.campaign-dm-resource-list article>button strong,.campaign-dm-resource-list article>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-dm-resource-list article>button small{color:var(--muted);font-size:var(--text-micro)}.campaign-dm-resource-list article>button>svg{color:var(--muted)}.campaign-dm-resource-chips{flex-wrap:wrap;justify-content:flex-end;gap:5px;min-width:0;display:flex}.campaign-dm-resource-chips>span{border:1px solid var(--line);background:var(--surface);border-radius:4px;gap:2px;min-width:82px;padding:6px 8px;display:grid}.campaign-dm-resource-chips>span.blocked{opacity:.55}.campaign-dm-resource-chips small{color:var(--muted);font-size:var(--text-micro);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-dm-resource-chips b{color:var(--gold);font:16px var(--font-display)}@container (width<=800px){.campaign-party-overview>header,.campaign-encounter>header,.campaign-loot>header,.campaign-dm-tool-widget>header{flex-direction:column;align-items:flex-start}.campaign-party-member{grid-template-columns:38px minmax(0,1fr) repeat(3,54px);gap:8px}.campaign-party-status{grid-column:2/-1}.campaign-party-open,.campaign-encounter-labels{display:none}.campaign-combatant{grid-template-columns:minmax(125px,1fr) 62px 68px}.campaign-combatant-name{grid-column:1/2}.campaign-combatant>input[aria-label$=initiative]{grid-column:2/3}.campaign-combatant-actions{grid-area:1/3/auto/4}.campaign-combatant-hp{grid-column:1/2}.campaign-combatant>input[aria-label$=armor\ class]{grid-column:2/3}.campaign-combatant>input[aria-label$=conditions]{grid-column:1/-1}}@container (width<=620px){.campaign-encounter-toolbar,.campaign-encounter-add{grid-template-columns:minmax(0,1fr) 92px}.campaign-encounter-toolbar>button,.campaign-encounter-add>button{grid-column:1/-1}.campaign-loot-list>article{grid-template-columns:34px minmax(0,1fr) 48px 34px;align-items:center}.campaign-loot-stock-control{grid-column:1/-1}.campaign-loot-list>article>label:first-of-type{grid-column:1/4}.campaign-loot-quantity{grid-column:1/2}.campaign-loot-list>article>.primary-button{grid-column:2/4}.campaign-loot-list>article>.icon-button{grid-area:1/4}.campaign-dm-quick-roll{grid-template-columns:1fr}.campaign-dm-quick-dice{grid-column:auto}.campaign-soundboard-upload,.campaign-dm-resource-list>article{grid-template-columns:1fr}.campaign-dm-resource-chips{justify-content:flex-start}}.inventory-policy-lock{max-width:520px;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-xs);border-radius:5px;align-items:center;gap:8px;margin:0;padding:10px 12px;line-height:1.45;display:flex}.inventory-policy-lock svg{flex:none}.inventory-trade-dialog form select{width:100%;min-height:40px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:0 10px}.inventory-trade-summary{color:var(--muted);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-xs);border-radius:4px;margin:0;padding:10px 12px;line-height:1.5}.campaign-roll-history{padding:20px}.campaign-roll-history>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:11px;display:flex}.campaign-roll-history>header>span{color:var(--gold);align-items:center;gap:8px;display:flex}.campaign-roll-history>header strong{color:var(--ink)}.campaign-roll-history>header small{color:var(--muted);font-size:var(--text-micro)}.campaign-roll-history.empty{min-height:190px;color:var(--muted);text-align:center;place-content:center;justify-items:center;display:grid}.campaign-roll-history.empty h4{color:var(--ink);margin:8px 0 3px}.campaign-roll-history.empty p{font-size:var(--text-xs);margin:0}.campaign-roll-list{gap:6px;display:grid}.campaign-roll-list article{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:72px minmax(0,1fr) auto 50px;align-items:center;gap:12px;padding:10px 12px;display:grid}.campaign-roll-list time,.campaign-roll-list small{color:var(--muted);font-size:var(--text-micro)}.campaign-roll-list article>span strong,.campaign-roll-list article>span small{display:block}.campaign-roll-list article>span small{margin-top:2px}.campaign-roll-formula{text-align:right}.campaign-roll-formula em{color:var(--ink-soft);font-size:var(--text-tiny);margin-top:2px;font-style:normal;display:block}.campaign-roll-list article>b{color:var(--gold);font:25px var(--font-display);text-align:right}.managed-character-section{margin-top:35px}.section-heading.compact{margin-bottom:14px}.section-heading.compact h3{font:20px var(--font-display);margin:3px 0 0}.campaign-form-note{color:var(--muted);font-size:var(--text-xs);margin:0;line-height:1.5}.campaign-conflicts{border:1px solid color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft);border-radius:5px;gap:7px;padding:10px;display:grid}.campaign-conflicts div{gap:3px;display:grid}.campaign-conflicts strong{color:var(--danger);font-size:var(--text-sm)}.campaign-conflicts small{color:var(--danger);font-size:var(--text-tiny);line-height:1.4}.campaign-form-actions{gap:8px;display:flex}.campaign-form-actions .primary-button{flex:1}.danger-button{color:var(--ink);background:var(--danger);font-size:var(--text-xs);cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-weight:800;display:inline-flex}.danger-button:disabled{opacity:.45;cursor:not-allowed}.user-administration{border-top:1px solid var(--line);background:var(--gold-soft);grid-column:1/-1;padding:55px clamp(36px,7vw,100px) 75px}.bug-report-administration{border-top:1px solid var(--line);background:var(--surface);grid-column:1/-1;padding:55px clamp(36px,7vw,100px) 65px}.bug-report-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.bug-report-heading-actions{align-items:center;gap:10px;display:flex}.bug-report-heading-actions>span{color:var(--muted);font-size:var(--text-xs)}.bug-report-heading-actions .secondary-button{min-height:36px;padding-inline:13px}.bug-report-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;min-width:0;padding:18px}.bug-report-card>header{align-items:center;gap:11px;display:flex}.bug-report-delete{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 40%, var(--line));font-size:var(--text-tiny);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:6px;margin-left:auto;padding:7px 9px;font-weight:750;display:inline-flex}.bug-report-delete:disabled{opacity:.45;cursor:not-allowed}.bug-report-mark{width:35px;height:35px;color:var(--gold);background:var(--forest);border-radius:50%;flex:none;place-items:center;display:grid}.bug-report-card header strong,.bug-report-card header small{display:block}.bug-report-card header strong{font-size:var(--text-sm)}.bug-report-card header small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.bug-report-card>p{color:var(--ink-soft);font:15px/1.65 var(--font-display);white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0}.bug-report-card>footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px;padding-top:13px;display:flex}.bug-report-card>footer span{color:var(--muted);border:1px solid var(--line);font-size:var(--text-micro);border-radius:100px;padding:4px 7px}.bug-report-empty{color:var(--muted);text-align:center;border:1px dashed var(--line);background:var(--surface-raised);border-radius:7px;justify-items:center;gap:7px;padding:38px;display:grid}.bug-report-empty svg{color:var(--gold)}.bug-report-empty strong{color:var(--ink-soft);font:17px var(--font-display)}.bug-report-empty p{font-size:var(--text-sm);margin:0}.user-admin-grid{grid-template-columns:minmax(280px,1fr) minmax(320px,.8fr);align-items:start;gap:40px;display:grid}.user-list{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;overflow:hidden}.user-list>p{padding:15px}.user-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:64px;padding:11px 15px;display:flex}.user-reset-button{border:1px solid var(--line);color:var(--sage);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:6px 8px;display:inline-flex}.user-reset-form{background:var(--gold-soft);border-radius:5px;grid-template-columns:minmax(170px,1fr) auto;align-items:end;gap:7px;width:100%;padding:10px;display:grid}.user-reset-form label{font-size:var(--text-tiny);gap:4px;display:grid}.user-reset-form input{border:1px solid var(--line);border-radius:4px;min-width:0;padding:8px}.user-reset-form button{color:var(--ink);background:var(--forest);font-size:var(--text-tiny);cursor:pointer;border:0;border-radius:4px;padding:8px 10px}.user-reset-form button:disabled{opacity:.45;cursor:not-allowed}.user-reset-form p,.user-reset-form>small{grid-column:1/-1;margin:0}.user-reset-form>small{color:var(--muted);font-size:var(--text-micro)}.user-row:last-child{border-bottom:0}.user-avatar{width:35px;height:35px;color:var(--ink);font:15px var(--font-display);background:#536d5c;border-radius:50%;flex:none;place-items:center;display:grid}.user-row>span:nth-child(2){flex:1;min-width:0}.user-row strong,.user-row small{display:block}.user-row strong{font-size:var(--text-sm)}.user-row small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.user-row em{color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;border-radius:100px;padding:4px 7px;font-style:normal;font-weight:800}.create-user-form{border:1px solid var(--line);background:var(--paper);border-radius:6px;gap:13px;padding:23px;display:grid}.create-user-form header{align-items:center;gap:10px;margin-bottom:7px;display:flex}.create-user-form header>svg{color:var(--gold)}.create-user-form header strong,.create-user-form header small{display:block}.create-user-form header strong{font:17px var(--font-display)}.create-user-form header small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.create-user-form .primary-button{margin-top:4px}.builder-shell{grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.dm-character-inspection{background:var(--canvas);min-height:calc(100vh - 72px);padding:30px clamp(24px,5vw,72px) 70px}.dm-inspection-header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;max-width:1380px;margin:0 auto 18px;display:grid}.dm-inspection-header>.campaign-dm-back{grid-column:1/-1;width:fit-content}.dm-inspection-identity{align-items:center;gap:15px;display:flex}.dm-inspection-avatar{width:54px;height:54px;color:var(--gold);border:1px solid var(--line-strong);background:var(--forest);font:24px var(--font-display);border-radius:50%;flex:none;place-items:center;display:grid}.dm-inspection-identity h1{font:clamp(31px, 4vw, 46px)/1 var(--font-display);margin:0}.dm-inspection-identity>div>p:not(.eyebrow){color:var(--ink-soft);font-size:var(--text-sm);margin:7px 0 0}.dm-inspection-identity>div>small{color:var(--muted);margin-top:5px;display:block}.dm-inspection-readonly{color:var(--sage);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);text-transform:uppercase;border-radius:100px;align-items:center;gap:6px;padding:7px 10px;font-weight:800;display:inline-flex}.dm-inspection-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.dm-inspection-actions .secondary-button{min-height:32px;padding:7px 10px}.dm-builder-owner{color:var(--sage);font-size:var(--text-tiny);letter-spacing:.04em;text-transform:uppercase;margin:7px 0 0;font-weight:800}.dm-inspection-vitals{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:1380px;margin:0 auto 12px;display:grid}.dm-inspection-vitals article{border:1px solid var(--line);background:var(--forest);border-radius:6px;min-width:0;padding:16px}.dm-inspection-vitals small,.dm-inspection-vitals strong,.dm-inspection-vitals span{display:block}.dm-inspection-vitals small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.dm-inspection-vitals strong{color:var(--gold);font:27px var(--font-display);margin-top:5px}.dm-inspection-vitals span{color:var(--ink-soft);font-size:var(--text-tiny);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.dm-inspection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1380px;margin:0 auto;display:grid}.dm-inspection-panel{border:1px solid var(--line);background:var(--paper);border-radius:7px;min-width:0;padding:21px;box-shadow:0 14px 35px #0000002e}.dm-inspection-panel-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:15px;display:flex}.dm-inspection-panel-heading h2{font:21px var(--font-display);margin:0}.dm-inspection-panel-heading>span{color:var(--muted);font-size:var(--text-tiny)}.dm-inspection-abilities{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.dm-inspection-abilities article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;justify-items:center;gap:3px;min-width:0;padding:11px 5px;display:grid}.dm-inspection-abilities .dnd-icon{width:18px;height:18px;margin-bottom:2px}.dm-inspection-abilities small{color:var(--muted);font-size:var(--text-micro)}.dm-inspection-abilities strong{font:22px var(--font-display)}.dm-inspection-abilities b{color:var(--gold);font-size:var(--text-xs)}.dm-inspection-abilities span{color:var(--muted);font-size:var(--text-micro)}.dm-inspection-abilities span.trained{color:var(--success);font-weight:800}.dm-inspection-status-list{gap:0;margin:0;display:grid}.dm-inspection-status-list>div{border-bottom:1px solid var(--line);grid-template-columns:130px minmax(0,1fr);gap:10px;padding:8px 0;display:grid}.dm-inspection-status-list dt{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase;font-weight:800}.dm-inspection-status-list dd{font-size:var(--text-xs);margin:0}.dm-inspection-effect-list{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.dm-inspection-effect-list span{border:1px solid var(--line);background:var(--success-soft);border-radius:4px;gap:2px;padding:7px 9px;display:grid}.dm-inspection-effect-list strong{font-size:var(--text-xs)}.dm-inspection-effect-list small{color:var(--muted);font-size:var(--text-micro);text-transform:capitalize}.dm-inspection-passives{flex-wrap:wrap;gap:5px;display:flex}.dm-inspection-passives span{border:1px solid var(--line);color:var(--muted);background:var(--surface-raised);font-size:var(--text-micro);border-radius:4px;padding:5px 7px}.dm-inspection-passives strong{color:var(--gold)}.dm-inspection-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.dm-inspection-skills>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;align-items:center;gap:7px;min-width:0;padding:7px 8px;display:flex}.dm-inspection-skills>div.proficient,.dm-inspection-skills>div.expertise{border-color:var(--line-strong)}.dm-inspection-skills>div.expertise{background:var(--gold-soft)}.dm-inspection-skills span{min-width:0;margin-right:auto;display:grid}.dm-inspection-skills strong{font-size:var(--text-xs);text-overflow:ellipsis;overflow:hidden}.dm-inspection-skills small{color:var(--muted);font-size:var(--text-micro)}.dm-inspection-skills b{color:var(--gold);font-size:var(--text-xs)}.dm-inspection-attacks{gap:6px;display:grid}.dm-inspection-attacks>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:minmax(150px,1fr) 70px minmax(130px,auto);align-items:center;gap:10px;padding:9px 10px;display:grid}.dm-inspection-attacks span{gap:2px;min-width:0;display:grid}.dm-inspection-attacks span:not(:first-child){text-align:right}.dm-inspection-attacks strong,.dm-inspection-attacks b{font-size:var(--text-xs)}.dm-inspection-attacks small{color:var(--muted);font-size:var(--text-micro)}.dm-inspection-panel.inventory{grid-column:1/-1}.dm-inspection-currency{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:12px;display:flex}.dm-inspection-currency>svg{color:var(--gold)}.dm-inspection-currency span{border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-micro);text-transform:uppercase;border-radius:100px;padding:5px 8px}.dm-inspection-currency strong{color:var(--ink)}.dm-inspection-inventory-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.dm-inspection-inventory-list>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;padding:9px 10px;display:grid}.dm-inspection-inventory-list>div>span:not(.inventory-kind){gap:2px;min-width:0;display:grid}.dm-inspection-inventory-list strong{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dm-inspection-inventory-list small{color:var(--muted);font-size:var(--text-micro)}.dm-inspection-inventory-list b{color:var(--gold);font-size:var(--text-xs)}.dm-inspection-inventory-list>div>.dm-inspection-item-state{gap:4px;display:flex}.dm-inspection-item-state small{color:var(--success);border:1px solid var(--line-strong);background:var(--success-soft);border-radius:3px;padding:3px 5px;font-weight:800}.builder-rail{height:100vh;color:var(--ink);background:var(--forest);border-right:1px solid #425449;flex-direction:column;align-self:start;padding:27px 20px 22px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.back-link{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:3px 0;font-size:12px;display:flex}.rail-collapse-button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.rail-collapse-button:hover{color:var(--ink);border-color:var(--line);background:#ffffff0a}.rail-collapse-button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.draft-title{align-items:center;gap:11px;margin:27px 3px 31px;display:flex}.draft-avatar{border:1px solid var(--line-strong);width:38px;height:38px;color:var(--gold);font:18px var(--font-display);border-radius:50%;place-items:center;display:grid}.draft-title strong,.draft-title small{display:block}.draft-title small{color:var(--muted);font-size:var(--text-sm);margin-top:4px}.step-list{gap:3px;display:grid}.step-link{text-align:left;width:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;padding:11px 10px;display:flex}.step-link:hover{background:#ffffff0a}.step-link.active{color:var(--ink);background:#ffffff14}.step-number{border:1px solid var(--line-strong);width:28px;height:28px;font-size:var(--text-sm);border-radius:50%;place-items:center;display:grid}.step-link.active .step-number{color:var(--success);border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft)}.step-link small,.step-link strong{display:block}.step-link small{color:var(--muted);font-size:var(--text-tiny);letter-spacing:.14em;text-transform:uppercase;margin-bottom:2px}.step-link strong{font-size:13px}.sheet-step-link{border-top:1px solid var(--line);margin-top:8px;padding-block:14px}.sheet-step-icon{display:none}.sheet-step-link strong{font-size:14px}.rail-note{color:var(--muted);background:#1d3228;border:1px solid #465b4e;border-radius:5px;gap:9px;margin-top:auto;padding:14px;display:flex}.rail-note svg{color:var(--gold);flex:none}.rail-note p{font-size:var(--text-sm);margin:0;line-height:1.55}.rail-note strong{color:var(--sage)}.rail-note button{color:var(--gold);border:0;border-bottom:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));font-size:var(--text-xs);cursor:pointer;background:0 0;margin-top:9px;padding:0;font-weight:750}.rail-note .rail-report-button{align-items:center;gap:5px;width:fit-content;display:flex}.rail-note button:hover{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 48%, var(--line))}.rail-note button:disabled{opacity:.45;cursor:not-allowed}@media (width>=721px){.builder-shell{transition:grid-template-columns .18s}.builder-shell.rail-collapsed{grid-template-columns:72px minmax(0,1fr)}.builder-rail{transition:padding .18s}.builder-rail.collapsed{padding-inline:12px}.builder-rail.collapsed .rail-toolbar{flex-direction:column-reverse}.builder-rail.collapsed .back-link{place-items:center;width:32px;height:32px;padding:0;display:grid}.builder-rail.collapsed .back-link span,.builder-rail.collapsed .draft-title>div,.builder-rail.collapsed .step-link>span:last-child,.builder-rail.collapsed .rail-note{display:none}.builder-rail.collapsed .draft-title{justify-content:center;margin:23px 0 27px}.builder-rail.collapsed .draft-avatar{width:34px;height:34px;font-size:16px}.builder-rail.collapsed .step-link{justify-content:center;padding-inline:0}.builder-rail.collapsed .sheet-step-icon{border:1px solid var(--line-strong);border-radius:50%;width:28px;height:28px;padding:5px;display:block}.builder-rail.collapsed .sheet-step-link.active .sheet-step-icon{color:var(--success);border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft)}}.builder-workspace{background:var(--paper);flex-direction:column;min-width:0;display:flex}.builder-workspace.is-saving .step-content,.builder-workspace.is-saving .builder-footer{pointer-events:none}.builder-workspace.is-saving .step-content{opacity:.82}.workspace-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:100px;padding:21px clamp(20px,2.5vw,42px);display:flex}.workspace-header h1{font:34px var(--font-display);color:var(--ink);margin:0}.workspace-header .eyebrow{margin-bottom:5px}.workspace-header-actions{align-items:center;gap:9px;display:flex}.edit-lock-summary{color:var(--muted);font-size:var(--text-tiny);align-items:center;gap:6px;margin:7px 0 0;font-weight:750;display:flex}.edit-lock-summary svg{color:var(--gold)}.edit-lock-button{min-height:43px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:13px;font-weight:750;display:inline-flex}.edit-lock-button.locked{color:var(--forest);border-color:var(--sage);background:var(--sage)}.edit-lock-button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.save-button{color:var(--ink-soft);border:1px solid var(--line);background:0 0}.builder-workspace.interaction-locked .step-content{cursor:default}.builder-workspace.interaction-locked .step-content[inert],.builder-workspace.interaction-locked .step-content [inert]{opacity:.78}.step-content{flex:1;width:100%;margin:0;padding-block:42px 55px;padding-inline:clamp(20px,2.5vw,42px)}.step-intro{max-width:680px;color:var(--ink-soft);font:17px/1.65 var(--font-display);margin:0 0 34px}.step-intro.narrow{max-width:760px}.builder-footer{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#111512f5;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:14px clamp(20px,2.5vw,42px);display:flex;position:sticky;bottom:0}.footer-actions{gap:10px;display:flex}.validation-message,.ready-message{align-items:center;gap:7px;font-size:12px;display:inline-flex}.locked-message{color:var(--gold);align-items:center;gap:7px;font-size:12px;display:inline-flex}.validation-message{color:var(--danger)}.validation-message-button{text-align:left;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 48%, transparent);text-decoration-color:color-mix(in srgb, currentColor 48%, transparent);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 0}.validation-message-button:hover{text-decoration-color:currentColor}.validation-message-button:focus-visible{outline-offset:4px;outline:2px solid}.ready-message{color:var(--success)}.validation-target{scroll-margin-block:120px}.validation-target:focus{outline:3px solid color-mix(in srgb, var(--gold) 82%, transparent);outline-offset:6px}.step-grid{gap:55px;display:grid}.basics-layout{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);align-items:start}.field-label,.field-group legend,.selection-detail label{color:var(--ink-soft);font-size:var(--text-sm);letter-spacing:.07em;text-transform:uppercase;margin-bottom:9px;font-weight:800;display:block}.text-input{width:100%;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:13px 15px}.large-input{height:58px;font:20px var(--font-display)}.description-label{margin-top:24px}.description-input{resize:vertical;min-height:150px;font:14px/1.65 system-ui,sans-serif}.field-counter{color:var(--muted);font-size:var(--text-xs);text-align:right;margin-top:6px;display:block}.field-group{border:0;margin:35px 0 0;padding:0}.field-group p{color:var(--muted);margin:0 0 15px;font-size:12px}.level-picker{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.level-picker button{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;min-height:74px}.level-picker span,.level-picker strong{display:block}.level-picker span{color:var(--muted);font-size:var(--text-sm)}.level-picker strong{font:25px var(--font-display);margin-top:5px}.level-picker button.selected{color:var(--ink);border-color:var(--sage);background:var(--forest)}.level-picker button.selected span{color:var(--muted)}.guidance-card{color:var(--ink);background:var(--forest);border-radius:7px;padding:38px;position:relative;overflow:hidden;box-shadow:0 18px 50px #00000061}.guidance-card:after{content:"";border:1px solid #d5b8774d;width:140px;height:140px;position:absolute;bottom:-70px;right:-70px;transform:rotate(45deg)}.guidance-card h2{font:27px/1.15 var(--font-display);margin:7px 0 15px}.guidance-card>p:last-child{color:var(--muted);font-size:13px;line-height:1.7}.ornament{color:var(--gold);margin-bottom:28px}.method-tabs{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:25px;display:grid}.method-tabs button{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;align-items:center;gap:12px;padding:17px;display:flex}.method-tabs button>svg{color:var(--gold)}.method-tabs strong,.method-tabs small{display:block}.method-tabs strong{font-size:13px}.method-tabs small{color:var(--muted);font-size:var(--text-sm);margin-top:3px}.method-tabs button.selected{background:var(--success-soft);border-color:#496454;box-shadow:inset 0 0 0 1px #496454}.ability-presets{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;margin-bottom:24px;padding:17px}.ability-presets-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:12px;display:flex}.ability-presets-heading h2{font:19px var(--font-display);margin:2px 0 0}.ability-presets-heading>small{max-width:340px;color:var(--muted);font-size:var(--text-tiny);text-align:right;line-height:1.5}.ability-preset-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.ability-preset-grid button{min-width:0;color:var(--ink);text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:10px;display:grid;position:relative}.ability-preset-grid button>span{min-width:0}.ability-preset-grid strong,.ability-preset-grid small{display:block}.ability-preset-grid strong{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ability-preset-grid small{color:var(--muted);font-size:var(--text-micro);margin-top:3px;line-height:1.35}.ability-preset-grid b{width:25px;height:25px;color:var(--gold);border:1px solid var(--line);font:14px var(--font-display);border-radius:50%;place-items:center;display:grid}.ability-preset-grid button>svg{color:var(--canvas);background:var(--gold);border-radius:50%;padding:2px;position:absolute;top:-5px;right:-5px}.ability-preset-grid button:hover{border-color:var(--line-strong)}.ability-preset-grid button.selected{border-color:var(--sage);box-shadow:inset 0 0 0 1px var(--sage);background:var(--success-soft)}.point-budget{background:var(--gold-soft);border-radius:5px;grid-template-columns:1fr auto;gap:5px 20px;margin-bottom:22px;padding:12px 15px;display:grid}.point-budget span{color:var(--muted);font-size:var(--text-sm)}.point-budget strong{font-size:12px}.point-budget>div{background:var(--gold-soft);grid-column:1/-1;height:3px;overflow:hidden}.point-budget i{background:var(--gold);height:100%;transition:width .2s;display:block}.point-budget.complete i{background:#608268}.ability-grid{grid-template-columns:repeat(6,minmax(100px,1fr));gap:10px;display:grid}.ability-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;justify-items:center;gap:11px;padding:19px 10px;display:grid}.ability-card>span{color:var(--ink-soft);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.ability-card .ability-card-label{align-items:center;gap:7px;display:inline-flex}.ability-card-label .dnd-icon{width:21px;height:21px}.ability-card select,.ability-card input{text-align:center;border:1px solid var(--line);background:var(--gold-soft);width:68px;height:45px;font:21px var(--font-display);border-radius:4px}.ability-card small{color:var(--muted);font-size:var(--text-xs)}.score-stepper{align-items:center;gap:7px;display:flex}.score-stepper button,.bonus-controls button{border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:50%;place-items:center;width:26px;height:26px;padding:0;display:grid}.score-stepper button:disabled,.bonus-controls button:disabled{opacity:.3;cursor:not-allowed}.score-stepper strong{text-align:center;min-width:27px;font:23px var(--font-display)}.origin-columns{gap:45px;display:grid}.species-reference{grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);align-items:start;gap:14px;display:grid}.species-reference-list{height:100%;min-height:360px;position:relative}.species-reference-list>.origin-source-groups{max-height:none;position:absolute;inset:0}.species-reference .species-selection-detail{margin-top:0}.species-reference-empty{min-height:360px;color:var(--muted);border:1px dashed var(--line);background:var(--surface-raised);text-align:center;border-radius:6px;place-content:center;justify-items:center;padding:24px;display:grid}.species-reference-empty svg{color:var(--gold)}.species-reference-empty strong{color:var(--ink);font:20px var(--font-display);margin-top:9px}.species-reference-empty p{max-width:300px;font-size:var(--text-xs);margin:5px 0 0}.subsection-title{align-items:center;gap:13px;margin-bottom:18px;display:flex}.subsection-title>span{width:30px;height:30px;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));font-size:var(--text-xs);border-radius:50%;place-items:center;display:grid}.subsection-title h2{font:23px var(--font-display);margin:0}.subsection-title p{color:var(--muted);font-size:var(--text-sm);margin:3px 0 0}.origin-source-groups{align-content:start;gap:16px;max-height:405px;padding:1px 4px 1px 1px;display:grid;overflow:auto}.origin-source-group{gap:7px;display:grid}.origin-source-heading{z-index:1;color:var(--gold);border-bottom:1px solid var(--line);background:var(--canvas);font-size:var(--text-tiny);letter-spacing:.075em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding:5px 2px 6px;font-weight:800;display:flex;position:sticky;top:0}.origin-source-heading span{min-width:22px;color:var(--muted);border:1px solid var(--line);text-align:center;font-size:var(--text-micro);letter-spacing:0;border-radius:100px;padding:2px 6px}.origin-source-group .option-card-grid{max-height:none;padding:0;overflow:visible}.background-source-groups .option-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.option-card-grid{grid-template-columns:1fr 1fr;gap:7px;max-height:405px;padding:1px 4px 1px 1px;display:grid;overflow:auto}.option-card{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;align-items:center;gap:10px;min-width:0;padding:11px;display:flex}.option-card:hover{border-color:var(--line-strong)}.option-card.selected{background:var(--success-soft);border-color:#496454;box-shadow:inset 0 0 0 1px #496454}.option-glyph{width:31px;height:31px;color:var(--ink);font:14px var(--font-display);background:#526c5c;border-radius:50%;flex:none;place-items:center;display:grid}.option-glyph.alternate{color:var(--gold);background:var(--gold-soft)}.option-card>span:nth-child(2){flex:1;min-width:0}.option-card strong,.option-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.option-card strong{font-size:var(--text-sm)}.option-card small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.option-card>svg{color:var(--success);flex:none}.selection-detail{border-left:3px solid var(--gold);background:var(--gold-soft);margin-top:15px;padding:18px}.species-selection-detail{overflow:hidden}.species-artwork{aspect-ratio:16/9;background:var(--forest);margin:-18px -18px 0;position:relative;overflow:hidden}.species-artwork:after{content:"";pointer-events:none;background:linear-gradient(#080e0b0d 28%,#080e0be0 100%),linear-gradient(90deg,#080e0b6b,#0000 48%);position:absolute;inset:0}.species-artwork img{object-fit:cover;filter:saturate(.88)contrast(1.04);width:100%;height:100%;display:block}.selection-detail-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.selection-detail-heading.species-artwork-heading{z-index:1;align-items:flex-end;min-height:72px;margin:-72px -18px 0;padding:16px 18px;position:relative}.species-artwork-heading .eyebrow{color:#d2aa63}.species-artwork-heading h3{color:#f2eee4;text-shadow:0 2px 16px #000000b8}.selection-detail-heading.species-artwork-heading button{color:#e0bd79;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b120ec2;border-color:#e0bd7959}.selection-detail-heading>div{min-width:0}.selection-detail-heading button{color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:3px;flex:none;align-items:center;gap:6px;padding:6px 8px;font-weight:750;display:inline-flex}.selection-detail-heading button:hover{color:var(--ink);border-color:var(--line-strong);background:var(--forest)}.selection-detail h3{font:21px var(--font-display);margin:0}.selection-detail>p:not(.eyebrow){color:var(--ink-soft);font-size:var(--text-sm);line-height:1.55}.selection-detail .species-description{font-size:var(--text-sm);margin-bottom:10px}.species-traits-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-raised) 76%, transparent);border-radius:5px;margin:12px 0 4px;padding:10px 12px 11px}.species-traits-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:7px;display:flex}.species-traits-heading strong{color:var(--ink-soft);font-size:var(--text-tiny);letter-spacing:.08em;text-transform:uppercase}.species-traits-heading span{color:var(--muted);font-size:var(--text-micro)}.selection-detail .trait-summary{flex-wrap:wrap;align-items:center;gap:5px;margin:8px 0 0;display:flex}.selection-detail .trait-summary button{color:var(--gold);font-size:var(--text-xs);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:3px 6px;font-weight:750;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.selection-detail .trait-summary button:hover{color:var(--ink);background:var(--surface-raised);text-decoration-color:currentColor}.selection-detail label{margin-top:16px}.selection-detail label span{float:right;color:var(--gold)}.selection-detail .helper{margin-top:-3px!important}.creature-size-scale{border:1px solid var(--line);background:linear-gradient(to top, var(--line) 1px, transparent 1px) 0 calc(100% - 28px) / 100% 100% no-repeat, var(--surface-raised);border-radius:5px;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:3px;margin-top:7px;padding:10px 7px 7px;display:grid}.creature-size-step{min-width:0;height:121px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:4px;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;padding:5px 2px;display:flex}.creature-size-step:disabled{opacity:.42}.creature-size-step.available{color:var(--ink-soft);cursor:pointer;opacity:1}.creature-size-step.available:hover,.creature-size-step.available:focus-visible{color:var(--ink);border-color:var(--line-strong);background:var(--gold-soft)}.creature-size-step.selected{color:var(--gold);border-color:var(--gold);background:var(--gold-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 35%, transparent)}.creature-size-figure{justify-content:center;align-items:flex-end;max-width:100%;display:flex}.creature-size-figure svg{stroke-width:1.65px;width:auto;height:100%}.creature-size-step strong{max-width:100%;font-size:var(--text-micro);text-overflow:ellipsis;overflow:hidden}.species-options-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 68%, transparent);border-radius:5px;margin-top:18px;padding:13px 14px 14px}.species-options-panel>h4{color:var(--gold);border-bottom:1px solid var(--line);font:20px var(--font-display);margin:0;padding-bottom:10px}.species-options-panel>.origin-choice{border-top:0;margin-top:13px;padding-top:0}.species-option-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.species-option-heading h5{color:var(--ink);font:16px var(--font-display);margin:0}.species-option-heading>span{color:var(--gold);font-size:var(--text-tiny);font-weight:800}.species-spell-grants{gap:6px;margin:10px 0 12px;display:grid}.species-spell-grants>span{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;gap:2px;padding:9px 10px;display:grid}.species-lineage-detail{color:var(--ink);font:16px var(--font-display);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0}.species-lineage-detail:hover{color:var(--gold);text-underline-offset:3px;text-decoration:underline}.species-granted-spell-list{flex-wrap:wrap;align-items:center;gap:0;margin-top:4px;display:flex}.species-granted-spell-list button{color:var(--gold);font-size:var(--text-tiny);cursor:pointer;background:0 0;border:0;padding:1px 0;font-weight:750}.species-granted-spell-list button:not(:last-child):after{content:"·";color:var(--muted);margin:0 7px;text-decoration:none}.species-granted-spell-list button:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.species-lineage-empty{color:var(--muted);font-size:var(--text-tiny)}.origin-choice{border-top:1px solid var(--line);margin-top:18px;padding-top:2px}.origin-choice select{border:1px solid var(--line);background:var(--surface-raised);width:100%;min-height:38px;font-size:var(--text-sm);border-radius:3px;padding:7px 10px}.origin-choice-options{flex-wrap:wrap;gap:6px;max-height:155px;display:flex;overflow:auto}.origin-choice-options>button{border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);cursor:pointer;border-radius:3px;align-items:center;gap:4px;padding:7px 9px;display:inline-flex}.origin-choice-options>button.selected{color:var(--ink);border-color:var(--sage);background:var(--forest)}.origin-choice-options>button.locked{opacity:.48;cursor:not-allowed;border-style:dashed}.origin-choice-heading{justify-content:space-between;align-items:start;gap:16px;margin:16px 0 10px;display:flex}.origin-choice-heading h4{font:18px var(--font-display);margin:0}.origin-choice-heading p:not(.eyebrow){max-width:420px;color:var(--muted);font-size:var(--text-xs);margin:5px 0 0;line-height:1.5}.origin-choice-heading>strong{color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));font-size:var(--text-xs);border-radius:100px;flex:none;padding:5px 9px}.origin-feat-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:280px;display:grid;overflow:auto}.origin-feat-option-shell{min-width:0;min-height:66px;position:relative}.origin-feat-option-shell>button:first-child{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;align-items:flex-start;gap:8px;width:100%;min-width:0;height:100%;padding:10px 77px 10px 10px;display:flex}.origin-feat-option-shell>button:first-child:hover:not(:disabled){border-color:var(--line-strong)}.origin-feat-option-shell>button:first-child.selected{border-color:var(--line-strong);background:var(--success-soft)}.origin-feat-option-shell>button:first-child.locked{opacity:.62;background:var(--gold-soft);cursor:not-allowed;border-style:dashed}.origin-feat-option-shell>button:first-child>span:last-child{min-width:0}.origin-feat-options strong,.origin-feat-options small{display:block}.origin-feat-options strong{font-size:var(--text-sm)}.origin-feat-options small{color:var(--danger);font-size:var(--text-tiny);margin-top:3px;font-weight:750}.origin-feat-option-detail{color:var(--gold);font-size:var(--text-tiny);cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:4px;padding:4px 5px;font-weight:750;display:inline-flex;position:absolute;top:7px;right:7px}.origin-feat-option-detail:hover{color:var(--ink);background:var(--gold-soft)}.origin-feat-option-shell>button:first-child.selected .check-box{color:var(--ink);border-color:var(--line-strong);background:#56715f}.origin-feat-card{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;margin-top:18px;overflow:hidden}.origin-feat-card>header{border-bottom:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);align-items:center;gap:10px;padding:13px 14px;display:flex}.origin-feat-icon{width:32px;height:32px;color:var(--ink);background:#8a6b38;border-radius:50%;flex:none;place-items:center;display:grid}.origin-feat-card>header>div{flex:1;min-width:0}.origin-feat-card>header small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;font-weight:800;display:block}.origin-feat-title-button{color:var(--ink);font:17px var(--font-display);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:2px 0 0;padding:0;display:inline-flex}.origin-feat-title-button svg{color:var(--gold)}.origin-feat-title-button:hover{color:var(--gold);text-underline-offset:3px;text-decoration:underline}.granted-badge{color:var(--success);border:1px solid var(--line);background:var(--success-soft);font-size:var(--text-tiny);border-radius:100px;align-items:center;gap:4px;padding:5px 8px;font-weight:800;display:inline-flex}.origin-feat-card>p{color:var(--ink-soft);font-size:var(--text-xs);margin:0;padding:13px 14px;line-height:1.55}.feat-decisions{border-top:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));padding:14px}.feat-decisions-heading strong,.feat-decisions-heading small{display:block}.feat-decisions-heading strong{font-size:var(--text-sm)}.feat-decisions-heading small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px}.feat-decision{margin-top:14px}.feat-decision label{color:var(--ink-soft);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;margin:0;font-weight:800;display:flex}.feat-decision label span{color:var(--gold)}.feat-decision>p{color:var(--muted);font-size:var(--text-tiny);margin:4px 0 8px}.feat-decision-options{flex-wrap:wrap;gap:5px;max-height:170px;display:flex;overflow:auto}.feat-decision-options button{border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:3px;align-items:center;gap:4px;padding:7px 8px;display:inline-flex}.feat-decision-options button.selected{color:var(--ink);border-color:var(--sage);background:var(--forest)}.feat-decision-options button:disabled:not(.selected){opacity:.45;cursor:not-allowed}.feat-decision-options button.selected:disabled{cursor:not-allowed}.feat-data-note{color:var(--gold);border-left:2px solid var(--gold);background:var(--gold-soft);font-size:var(--text-tiny);margin:12px 0 0;padding:9px 10px;line-height:1.5}.inline-options{gap:7px;display:flex}.inline-options button{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:3px;padding:7px 14px}.inline-options button.selected{color:var(--ink);border-color:var(--sage);background:var(--forest)}.bonus-controls{gap:6px;display:grid}.bonus-controls>div{align-items:center;gap:7px;display:flex}.bonus-controls>div>span{width:95px;font-size:var(--text-sm)}.bonus-controls strong{text-align:center;width:25px;font-size:var(--text-sm)}.class-level-picker{margin:0 0 38px}.character-level-control{border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;grid-template-columns:52px minmax(170px,1fr) 52px;align-items:stretch;gap:8px;width:min(100%,500px);padding:10px;display:grid;box-shadow:0 8px 24px #00000047}.character-level-control>button{color:var(--sage);border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:5px;place-items:center;display:grid}.character-level-control>button:hover:not(:disabled){color:var(--ink);border-color:var(--sage);background:var(--forest)}.character-level-control>button:disabled{opacity:.35;cursor:not-allowed}.character-level-control>label{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;align-content:center;padding:5px 14px;display:grid}.character-level-control>label span{color:var(--gold);font-size:var(--text-tiny);letter-spacing:.09em;text-transform:uppercase;font-weight:800}.character-level-control select{width:100%;color:var(--ink);font:22px var(--font-display);cursor:pointer;background:0 0;border:0;outline:0;padding:2px 28px 2px 0}.level-progress{background:var(--gold-soft);border-radius:100px;grid-column:1/-1;height:4px;overflow:hidden}.level-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--gold), #667f6c);height:100%;transition:width .18s;display:block}.character-level-control>small{color:var(--muted);font-size:var(--text-tiny);text-align:center;grid-column:1/-1}.class-choice-section{margin-bottom:12px}.class-reference{grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);align-items:stretch;gap:14px;margin-bottom:30px;display:grid}.class-reference-list{align-content:start;gap:6px;max-height:480px;padding-right:4px;display:grid;overflow:auto}.class-reference-list>button{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;align-items:center;gap:10px;min-height:57px;padding:10px 11px;display:flex}.class-reference-list>button:hover{border-color:var(--line-strong)}.class-reference-list>button.selected{background:var(--success-soft);border-color:#496454;box-shadow:inset 0 0 0 1px #496454}.class-reference-list>button>span:nth-child(2){flex:1;min-width:0}.class-reference-list>button>svg{color:var(--success);flex:none}.class-icon{width:38px;height:38px;color:var(--ink);background:var(--forest);border-radius:50%;flex:none;place-items:center;display:grid}.class-icon img{object-fit:contain;opacity:.92;filter:invert(91%)sepia(9%)saturate(390%)hue-rotate(350deg)brightness(102%);width:25px;height:25px}.class-reference-list>button.selected .class-icon{background:color-mix(in srgb, var(--gold) 23%, var(--forest))}.class-reference-list strong,.class-reference-list small{display:block}.class-reference-list strong{font:17px var(--font-display)}.class-reference-list small{color:var(--muted);font-size:var(--text-tiny);margin-top:2px}.class-reference-detail,.class-reference-empty{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;min-height:100%;padding:20px}.class-reference-detail{overflow:hidden}.class-artwork{aspect-ratio:16/9;touch-action:pan-y;-webkit-user-select:none;user-select:none;background:var(--forest);margin:-20px -20px 0;position:relative;overflow:hidden}.class-artwork:after{content:"";pointer-events:none;background:linear-gradient(#080e0b08 34%,#080e0be6 100%),linear-gradient(90deg,#080e0b7a,#0000 50%);position:absolute;inset:0}.class-artwork img{object-fit:cover;filter:saturate(.9)contrast(1.03);width:100%;height:100%;display:block}.class-artwork-controls{z-index:2;color:#e0bd79;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b120ec7;border:1px solid #e0bd7959;border-radius:100px;align-items:center;display:flex;position:absolute;top:12px;right:12px;overflow:hidden;box-shadow:0 5px 20px #0000003d}.class-artwork-controls button{width:31px;height:31px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.class-artwork-controls button:hover{color:var(--ink);background:#ffffff12}.class-reference-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:13px;display:flex}.class-reference-detail>header.class-artwork-heading{z-index:1;border-bottom:0;align-items:flex-end;min-height:78px;margin:-78px -20px 0;padding:16px 20px;position:relative}.class-artwork-heading .eyebrow{color:#d2aa63}.class-artwork-heading h3{color:#f2eee4;text-shadow:0 2px 16px #000000b8}.class-reference-detail>header.class-artwork-heading>span{color:#e0bd79;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b120ec2;border-color:#e0bd7959}.class-reference-detail h3{font:27px var(--font-display);margin:0}.class-reference-detail>header>span{color:var(--gold);border:1px solid var(--line);font-size:var(--text-tiny);border-radius:100px;flex:none;padding:5px 8px;font-weight:800}.class-reference-detail>p{max-height:170px;color:var(--ink-soft);font-size:var(--text-sm);margin:15px 0;line-height:1.6;overflow:auto}.class-reference-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.class-reference-detail dl>div{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;min-width:0;padding:9px 10px}.class-reference-detail dt{color:var(--gold);font-size:var(--text-tiny);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.class-reference-detail dd{color:var(--ink);font-size:var(--text-xs);margin:4px 0 0;line-height:1.45}.class-reference-empty{text-align:center;color:var(--muted);place-content:center;justify-items:center;display:grid}.class-reference-empty svg{color:var(--gold)}.class-reference-empty strong{color:var(--ink);font:20px var(--font-display);margin-top:9px}.class-reference-empty p{max-width:280px;font-size:var(--text-xs);margin:5px 0 0}.class-progression{border-top:1px solid var(--line);margin-top:40px;padding-top:30px}.level-plan{gap:9px;display:grid;position:relative}.level-plan:before{content:"";background:var(--surface-muted);width:1px;position:absolute;top:20px;bottom:20px;left:19px}.level-row{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;min-height:70px;padding:0;position:relative}.level-row-heading{grid-template-columns:40px minmax(160px,1fr) auto;align-items:center;gap:14px;min-height:68px;padding:9px 13px 9px 0;display:grid}.level-node{z-index:1;width:39px;height:39px;color:var(--muted);border:1px solid var(--line-strong);background:var(--gold-soft);font-size:var(--text-sm);border-radius:50%;place-items:center;display:grid}.level-row.complete .level-node{color:var(--ink);border-color:var(--sage);background:var(--forest)}.level-copy small,.level-copy strong{display:block}.level-copy small{color:var(--muted);font-size:var(--text-xs)}.level-copy strong{font:16px var(--font-display);margin-top:3px}.multiclass-control{position:relative}.multiclass-toggle{width:36px;height:36px;color:var(--ink-soft);border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.multiclass-toggle:hover,.multiclass-toggle[aria-expanded=true]{color:var(--ink);border-color:var(--sage);background:var(--forest)}.multiclass-menu{z-index:5;border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;width:220px;padding:8px;position:absolute;top:43px;right:0;box-shadow:0 14px 35px #0000006b}.multiclass-menu>small{color:var(--muted);font-size:var(--text-tiny);letter-spacing:.06em;text-transform:uppercase;padding:4px 6px 8px;font-weight:800;display:block}.multiclass-menu>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;width:100%;padding:9px;display:block}.multiclass-menu>button:hover{background:var(--gold-soft)}.multiclass-menu strong,.multiclass-menu span{display:block}.multiclass-menu strong{font-size:var(--text-sm)}.multiclass-menu span{color:var(--muted);font-size:var(--text-tiny);margin-top:2px}.level-row-content{margin-left:39px;padding:0 14px 15px 15px}.level-features{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.level-features>div,.level-feature-card{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;padding:11px 12px}.level-feature-card{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.level-feature-card:hover{border-color:var(--line-strong);background:var(--forest)}.level-feature-card>span{min-width:0}.level-feature-card>svg{color:var(--gold);flex:none}.level-feature-card strong{font:17px var(--font-display)}.level-feature-card small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px;display:block}.level-features strong{font-size:var(--text-sm);display:block}.level-features p,.level-empty-copy{color:var(--muted);font-size:var(--text-tiny);margin:5px 0 0;line-height:1.5}.level-features .unresolved-feature{border-style:dashed}.level-choices{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.level-choices>header{color:var(--gold);align-items:center;gap:8px;margin:0 0 10px;display:flex}.level-choices>header span,.level-choices>header strong,.level-choices>header small{display:block}.level-choices>header strong{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em}.level-choices>header small{color:var(--muted);font-size:var(--text-tiny);margin-top:2px}.level-choices .requirement-card>header{padding:13px 14px}.level-choices .choice-options{max-height:250px}.deferred-level-choice{color:var(--muted);border:1px dashed var(--line);background:var(--gold-soft);font-size:var(--text-xs);border-radius:4px;padding:12px}.starting-class-details{border-top:1px solid var(--line);margin-top:38px;padding-top:30px}.starting-details-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.starting-choice-panel{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;padding:18px}.starting-choice-panel>header{justify-content:space-between;align-items:start;gap:10px;margin-bottom:14px;display:flex}.starting-choice-panel h3{font:20px var(--font-display);margin:0}.starting-choice-panel>header>strong{color:var(--gold);font-size:var(--text-xs)}.skill-choice-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.skill-choice-grid button{text-align:left;border:1px solid var(--line);background:var(--gold-soft);min-height:35px;font-size:var(--text-xs);cursor:pointer;border-radius:3px;align-items:center;gap:7px;padding:7px 9px;display:flex}.skill-choice-grid button.selected{border-color:var(--line-strong);background:var(--success-soft)}.skill-choice-grid button.already-proficient:not(.selected){opacity:.5;cursor:not-allowed;border-style:dashed}.skill-choice-copy{gap:2px;display:grid}.skill-choice-copy strong{font-size:var(--text-xs);align-items:center;gap:6px;display:inline-flex}.skill-choice-copy .dnd-icon{width:15px;height:15px}.skill-choice-copy small{color:var(--muted);font-size:var(--text-micro)}.equipment-choice-list{gap:7px;display:grid}.equipment-choice-list button{text-align:left;border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:start;gap:9px;padding:10px;display:grid}.equipment-choice-list button>span{color:var(--gold);font-size:var(--text-tiny);text-transform:uppercase;font-weight:800}.equipment-choice-list button>strong{font-size:var(--text-xs);line-height:1.5}.equipment-choice-list button.selected{border-color:var(--line-strong);background:var(--success-soft)}.compact-equipment-list button>strong{font-size:var(--text-tiny)}.requirements-list{gap:16px;display:grid}.requirement-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;overflow:hidden}.requirement-card>header{border-bottom:1px solid var(--line);background:var(--gold-soft);align-items:center;gap:12px;padding:17px 18px;display:flex}.requirement-number{border:1px solid var(--line-strong);width:29px;height:29px;font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;display:grid}.requirement-number.complete{color:var(--ink);border-color:var(--line-strong);background:#5b7864}.requirement-card header p{color:var(--gold);font-size:var(--text-tiny);letter-spacing:.08em;text-transform:uppercase;margin:0 0 2px;font-weight:800}.requirement-card header h2{font:19px var(--font-display);margin:0}.selection-count{color:var(--ink-soft);border:1px solid var(--line);font-size:var(--text-xs);border-radius:100px;margin-left:auto;padding:5px 9px;font-weight:800}.search-field{border:1px solid var(--line);color:var(--muted);border-radius:4px;align-items:center;gap:8px;margin:13px 16px 0;padding:8px 11px;display:flex}.search-field input{width:100%;font-size:var(--text-sm);background:0 0;border:0;outline:0}.spell-filter-bar{align-items:end;gap:7px;padding:10px 16px 0;display:flex}.spell-filter-bar label{color:var(--muted);font-size:var(--text-tiny);gap:4px;display:grid}.spell-filter-bar select{min-height:31px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);border-radius:3px;padding:0 27px 0 9px}.spell-filter-bar button{min-height:31px;color:var(--muted);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);cursor:pointer;border-radius:3px;padding:0 10px;font-weight:750}.spell-filter-bar button.active{color:var(--ink);border-color:var(--sage);background:var(--success-soft)}.spell-filter-bar>small{color:var(--muted);font-size:var(--text-tiny);margin:0 0 7px auto}.choice-options{grid-template-columns:1fr 1fr;gap:7px;max-height:310px;padding:14px 16px 17px;display:grid;overflow:auto}.choice-option-shell{min-width:0;min-height:72px;position:relative}.choice-option-select{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;align-items:flex-start;gap:9px;width:100%;height:100%;min-height:72px;padding:11px 82px 11px 10px;display:flex}.choice-option-select:hover{border-color:var(--line-strong)}.choice-option-select.selected{border-color:var(--line-strong);background:var(--success-soft)}.choice-option-select.locked{cursor:not-allowed;opacity:.58;background:var(--gold-soft);border-style:dashed}.choice-option-select.locked.selected{opacity:1;border-color:var(--danger);background:var(--danger-soft)}.choice-option-select.previously-selected{cursor:not-allowed;opacity:.72;border-color:var(--line);background:var(--gold-soft)}.choice-option-select.duplicate-selection{border-color:var(--danger);background:var(--danger-soft)}.spell-choice .choice-option-select{padding-bottom:11px}.spell-detail-trigger,.choice-detail-trigger{z-index:1;color:var(--gold);font-size:var(--text-tiny);cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:5px;padding:4px 6px;font-weight:750;display:inline-flex;position:absolute;top:8px;right:8px}.spell-detail-trigger:hover,.choice-detail-trigger:hover{color:var(--ink);background:var(--gold-soft)}.check-box{border:1px solid var(--line-strong);width:17px;height:17px;color:var(--ink);border-radius:3px;flex:none;place-items:center;display:grid}.selected .check-box{border-color:var(--line-strong);background:#56715f}.previously-selected .check-box{border-color:var(--line-strong);background:#858d88}.choice-options strong,.choice-options small,.choice-options em{display:block}.choice-options strong{font:16px var(--font-display);line-height:1.25}.choice-options small{color:var(--gold);font-size:var(--text-tiny);margin-top:3px}.choice-options .weapon-mastery-choice{color:var(--ink-soft);margin-top:6px;font-weight:750}.spell-choice-facts{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.choice-options .spell-choice-facts small{color:var(--muted);border:1px solid var(--line);background:var(--gold-soft);border-radius:100px;align-items:center;gap:4px;margin:0;padding:2px 5px;line-height:1.3;display:inline-flex}.spell-choice-facts .dnd-icon{width:11px;height:11px}.choice-options small.ineligible-reason{color:var(--danger);font-weight:750}.choice-options small.previous-selection-note{color:var(--muted);font-weight:750}.choice-options em{color:var(--muted);font-size:var(--text-tiny);margin-top:5px;font-style:normal;line-height:1.4}.feat-advancement{border-top:1px solid var(--line);background:var(--gold-soft);grid-template-columns:210px 1fr;align-items:center;gap:18px;padding:17px 18px;display:grid}.feat-advancement h3{font:18px var(--font-display);margin:0}.feat-advancement>div:first-child>span{color:var(--muted);font-size:var(--text-xs);margin-top:5px;display:block}.feat-bonus-grid{flex-wrap:wrap;gap:7px;display:flex}.feat-bonus-grid>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:minmax(67px,1fr) 24px 23px 24px;align-items:center;gap:4px;padding:7px;display:grid}.feat-bonus-grid>div>span small,.feat-bonus-grid>div>span strong{display:block}.feat-bonus-grid>div>span small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.feat-bonus-grid>div>span strong{font:15px var(--font-display)}.feat-bonus-grid button{border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid}.feat-bonus-grid button:disabled{opacity:.3;cursor:not-allowed}.feat-bonus-grid b{text-align:center;color:var(--gold);font-size:var(--text-xs)}.empty-card.compact{padding:35px}.character-sheet{--text-micro:12px;--text-tiny:13px;--text-xs:14px;--text-sm:15px;font-size:16px;position:relative}.character-sheet.combat-active{background:radial-gradient(circle at 50% 0, color-mix(in srgb, var(--danger) 13%, transparent), transparent 32%), color-mix(in srgb, var(--danger-soft) 38%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--danger) 50%, var(--line));border-radius:8px}.character-sheet.current-turn{background:radial-gradient(circle at 50% 0, color-mix(in srgb, var(--gold) 19%, transparent), transparent 38%), color-mix(in srgb, var(--danger-soft) 55%, transparent);box-shadow:0 0 0 2px var(--gold), 0 0 34px color-mix(in srgb, var(--danger) 25%, transparent)}.play-combat-banner{color:var(--ink);border:1px solid color-mix(in srgb, var(--danger) 65%, var(--line));background:var(--danger-soft);border-radius:6px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:11px;margin:10px 0 14px;padding:11px 14px;display:grid}.play-combat-banner>svg{color:var(--danger)}.play-combat-banner span{gap:1px;display:grid}.play-combat-banner small{color:var(--danger);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase;font-weight:850}.play-combat-banner strong{font:21px var(--font-display);text-transform:uppercase}.play-combat-banner em{color:var(--muted);font-size:var(--text-xs);justify-self:end;font-style:normal}.play-combat-banner.current-turn{border-color:var(--gold);background:color-mix(in srgb, var(--gold-soft) 75%, var(--danger-soft))}.play-combat-banner.current-turn>svg,.play-combat-banner.current-turn small{color:var(--gold)}.sheet-workspace-shell{min-width:0;position:relative}.sheet-workspace{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:8px;grid-auto-flow:row;align-items:start;gap:10px 18px;display:grid;position:relative}.sheet-workspace.react-grid-layout{z-index:1;transition:height .16s;display:block}.desktop-grid-library-item{min-width:0}.desktop-grid-library-item>.desktop-widget-frame{width:100%}.desktop-grid-library-item>.desktop-widget-frame[data-fixed-height=true],.desktop-widget-frame[data-fixed-height=true]{align-self:stretch;height:100%}.desktop-widget-frame[data-fixed-height=true]>:not(.desktop-widget-controls){box-sizing:border-box;min-height:100%}.sheet-workspace.react-grid-layout>.react-grid-item{transition-duration:.14s}.sheet-workspace.react-grid-layout>.react-grid-item.react-draggable-dragging,.sheet-workspace.react-grid-layout>.react-grid-item.resizing{z-index:8;filter:drop-shadow(0 15px 25px #00000052)}.sheet-workspace.react-grid-layout>.react-grid-placeholder{z-index:3;border:2px solid var(--gold);background:color-mix(in srgb, var(--gold) 28%, transparent);opacity:1;border-radius:7px}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle{z-index:7;border:1px solid color-mix(in srgb, var(--gold) 72%, var(--line));background:color-mix(in srgb, var(--forest) 92%, transparent);opacity:.72;border-radius:999px;box-shadow:0 3px 10px #0000004d}.sheet-workspace.react-grid-layout>.react-grid-item:hover>.react-resizable-handle,.sheet-workspace.react-grid-layout>.react-grid-item.resizing>.react-resizable-handle{opacity:1}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle:after{border:0}.sheet-workspace.react-grid-layout>.react-grid-item>:is(.react-resizable-handle-w,.react-resizable-handle-e){width:14px;height:50%;margin-top:0;top:25%}.sheet-workspace.react-grid-layout>.react-grid-item>:is(.react-resizable-handle-w,.react-resizable-handle-e):after{border-right:1px solid var(--gold);border-left:1px solid var(--gold);width:4px;height:18px;top:50%;bottom:auto;right:4px;transform:translateY(-50%)}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:-7px;transform:none}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:-7px;transform:none}.sheet-workspace.react-grid-layout>.react-grid-item>:is(.react-resizable-handle-n,.react-resizable-handle-s){width:50%;height:14px;margin-left:0;left:25%}.sheet-workspace.react-grid-layout>.react-grid-item>:is(.react-resizable-handle-n,.react-resizable-handle-s):after{border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);width:18px;height:4px;bottom:4px;left:50%;right:auto;transform:translate(-50%)}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:-7px;transform:none}.sheet-workspace.react-grid-layout>.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:-7px;transform:none}.layout-grid-overlay,.layout-grid-drop-overlay{pointer-events:none;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:8px;gap:10px 18px;display:grid;position:absolute;inset:0}.layout-grid-overlay{z-index:0;border:1px solid color-mix(in srgb, var(--gold) 24%, transparent);background:repeating-linear-gradient(to bottom, transparent 0 17px, color-mix(in srgb, var(--gold) 10%, transparent) 17px 18px);border-radius:7px;overflow:hidden}.layout-grid-overlay>span{border-left:1px dashed color-mix(in srgb, var(--gold) 42%, transparent);background:color-mix(in srgb, var(--gold) 2%, transparent);min-width:0;height:100%;position:relative}.layout-grid-overlay>span:last-child{border-right:1px dashed color-mix(in srgb, var(--gold) 42%, transparent)}.layout-grid-overlay>span:before{content:attr(data-column);width:max-content;min-width:20px;color:color-mix(in srgb, var(--gold) 80%, white);border:1px solid color-mix(in srgb, var(--gold) 34%, transparent);background:color-mix(in srgb, var(--forest) 88%, transparent);font:700 10px var(--font-ui);text-align:center;border-radius:999px;margin:6px auto 0;padding:2px 5px;line-height:1;display:block;position:sticky;top:6px}.layout-grid-drop-overlay{z-index:3}.layout-grid-drop-overlay>span{border:2px solid var(--gold);background:color-mix(in srgb, var(--gold) 20%, transparent);min-width:0;box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 8%, transparent);border-radius:7px}.desktop-play-layout{min-width:0}.sheet-layout-toolbar{z-index:2;border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;align-items:center;margin:0;padding:4px;display:flex;position:absolute;top:0;right:0}.sheet-layout-toolbar>div{align-items:center;gap:4px;display:flex}.sheet-layout-toolbar button,.desktop-widget-controls button,.hidden-widget-tray button{min-height:32px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font:700 var(--text-tiny) var(--font-ui);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.sheet-layout-toolbar button{min-height:38px}.sheet-layout-toolbar button:disabled,.desktop-widget-controls button:disabled{opacity:.32;cursor:not-allowed}.sheet-layout-toolbar .primary-button{color:var(--canvas);border-color:var(--sage);background:var(--sage)}.layout-save-error{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft);font-size:var(--text-tiny);border-radius:4px;margin:0 0 10px;padding:8px 10px}.desktop-widget-frame{z-index:1;align-self:start;min-width:0;position:relative}.desktop-widget-frame:has(.dialog-backdrop){z-index:30}.desktop-widget-frame.is-dragging{opacity:.42}.desktop-widget-frame.is-drop-target{outline:2px solid var(--gold);outline-offset:5px;border-radius:7px}.desktop-widget-frame[data-widget-span="2"]{grid-column:span 2}.desktop-widget-frame[data-widget-span="3"]{grid-column:span 3}.desktop-widget-frame[data-widget-span="4"]{grid-column:span 4}.desktop-widget-frame[data-widget-span="6"]{grid-column:span 6}.desktop-widget-frame[data-widget-span="8"]{grid-column:span 8}.desktop-widget-frame[data-widget-span="9"]{grid-column:span 9}.desktop-widget-frame[data-widget-span="12"]{grid-column:span 12}.desktop-widget-frame>.play-widget,.desktop-widget-frame>.combat-cheat-sheet{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;margin-top:0;overflow:hidden}.desktop-widget-frame>.vitals-widget,.desktop-widget-frame>.sheet-skills,.desktop-widget-frame>.saving-throws-widget,.desktop-widget-frame>[data-widget=rests],.desktop-widget-frame>[data-widget=spell-slots],.desktop-widget-frame>[data-widget=feature-resources],.desktop-widget-frame>[data-widget=adventure-trackers],.desktop-widget-frame>[data-widget=conditions],.desktop-widget-frame>[data-widget=defenses],.desktop-widget-frame>.review-abilities{padding:18px}.desktop-widget-frame>.training-strip,.desktop-widget-frame>.combat-cheat-sheet{border-top:1px solid var(--line)}.desktop-widget-frame[data-widget-span="2"] .sheet-skill-grid,.desktop-widget-frame[data-widget-span="3"] .sheet-skill-grid,.desktop-widget-frame[data-widget-span="4"] .sheet-skill-grid,.desktop-widget-frame[data-widget-span="2"] .rest-actions,.desktop-widget-frame[data-widget-span="3"] .rest-actions,.desktop-widget-frame[data-widget-span="4"] .rest-actions{grid-template-columns:1fr}.desktop-widget-controls{z-index:4;border:1px dashed var(--line-strong);background:var(--forest);border-radius:5px;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:7px 8px;display:flex;position:absolute;top:8px;left:8px;right:8px;box-shadow:0 5px 15px #00000038}.desktop-widget-controls>strong{min-width:0;font-size:var(--text-tiny)}.desktop-widget-controls>small{color:var(--muted);font-size:var(--text-micro);white-space:nowrap;margin-left:auto}.desktop-widget-controls>span{flex:none;gap:3px;display:flex}.desktop-widget-controls .desktop-widget-drag-handle{width:24px;height:27px;color:var(--muted);cursor:grab;border-radius:3px;justify-content:center;align-items:center;margin-left:-3px}.desktop-widget-controls .desktop-widget-drag-handle:active{cursor:grabbing}.desktop-widget-controls .desktop-widget-drag-handle:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.desktop-widget-controls button{width:28px;min-height:27px;padding:0}.desktop-widget-frame[data-widget-span="2"] .desktop-widget-controls,.desktop-widget-frame[data-widget-span="3"] .desktop-widget-controls,.desktop-widget-frame[data-widget-span="4"] .desktop-widget-controls{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.desktop-widget-frame[data-widget-span="2"] .desktop-widget-controls>span:last-child,.desktop-widget-frame[data-widget-span="3"] .desktop-widget-controls>span:last-child,.desktop-widget-frame[data-widget-span="4"] .desktop-widget-controls>span:last-child{grid-column:1/-1;justify-self:end}.desktop-widget-controls button.density-control,.desktop-widget-controls button.orientation-control,.desktop-widget-controls button.auto-height-control{width:auto;font-size:var(--text-micro);padding-inline:6px}.desktop-widget-unavailable{color:var(--muted);border:1px dashed var(--line);font-size:var(--text-tiny);text-align:center;border-radius:5px;margin:0;padding:16px}.hidden-widget-tray{border:1px dashed var(--line-strong);background:var(--gold-soft);border-radius:6px;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;padding:14px;display:flex}.hidden-widget-tray>div:first-child{gap:3px;display:grid}.hidden-widget-tray>div:first-child>strong{font-size:var(--text-sm)}.hidden-widget-tray>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.blank-spacer-widget{min-height:96px}.desktop-play-layout.is-customizing .blank-spacer-widget{border:1px dashed var(--line-strong);background:repeating-linear-gradient(-45deg, transparent, transparent 8px, color-mix(in srgb, var(--gold-soft) 55%, transparent) 8px, color-mix(in srgb, var(--gold-soft) 55%, transparent) 16px);border-radius:6px}.utility-widget{gap:12px;min-height:118px;padding:18px;display:grid}.utility-widget button{min-height:32px;color:var(--ink);border:1px solid var(--line);background:var(--gold-soft);font:750 var(--text-tiny) var(--font-ui);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.utility-widget button:disabled{opacity:.35;cursor:not-allowed}.utility-widget-title{width:100%;min-width:0;color:var(--ink);border:0;border-bottom:1px solid var(--line);font:19px var(--font-display);background:0 0;outline:0;padding:0 0 8px}.utility-tracker-value{grid-template-columns:32px minmax(32px,auto) auto 70px 32px;justify-content:center;align-items:center;gap:7px;display:grid}.utility-tracker-value strong{font:28px var(--font-display);text-align:right}.utility-tracker-value>span{color:var(--muted)}.utility-tracker-value input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-sm);border-radius:4px;padding:6px 7px}.utility-tracker-value button,.round-counter-value button{border-radius:50%;width:32px;padding:0}.utility-widget .utility-reset{min-height:25px;color:var(--muted);background:0 0;border:0;justify-self:center;padding-inline:7px}.utility-time{font:31px var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.04em}.utility-widget[data-widget=clock]>small{color:var(--muted);font-size:var(--text-xs)}.utility-actions{gap:7px;display:flex}.utility-actions button:first-child{background:var(--forest);flex:1}.round-counter-value{justify-content:center;align-items:center;gap:16px;display:flex}.round-counter-value>span{justify-items:center;gap:2px;display:grid}.round-counter-value small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase}.round-counter-value strong{font:32px var(--font-display)}.initiative-tracker-widget>header{justify-content:space-between;align-items:end;gap:12px;display:flex}.initiative-tracker-widget h2{font:22px var(--font-display);margin:2px 0 0}.initiative-tracker-widget>header>span{color:var(--gold);font-size:var(--text-xs);font-weight:800}.initiative-add{grid-template-columns:minmax(90px,1fr) 68px auto;gap:6px;display:grid}.initiative-add input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);border-radius:4px;padding:7px 8px}.initiative-add input[type=number]{text-align:center}.initiative-list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.initiative-list li{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;grid-template-columns:minmax(0,1fr) 30px;align-items:stretch;display:grid;overflow:hidden}.initiative-list li.active{border-color:color-mix(in srgb, var(--sage) 55%, var(--line));background:var(--success-soft);box-shadow:inset 3px 0 var(--sage)}.utility-widget .initiative-entry{text-align:left;background:0 0;border:0;justify-content:space-between;gap:10px;min-width:0;display:flex}.initiative-entry span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.initiative-entry strong{font:17px var(--font-display)}.utility-widget .initiative-remove{width:30px;min-height:30px;color:var(--muted);border:0;border-left:1px solid var(--line);background:0 0;border-radius:0;padding:0}.initiative-tracker-widget>footer{gap:6px;display:flex}.initiative-tracker-widget>footer button:first-child{background:var(--forest);flex:1}.initiative-empty{color:var(--muted);border:1px dashed var(--line);font-size:var(--text-tiny);border-radius:4px;margin:0;padding:12px;line-height:1.45}.utility-widget[data-widget=session-notes] label{gap:8px;display:grid}.utility-widget[data-widget=session-notes] textarea{resize:vertical;min-height:110px;color:var(--ink);border:1px solid var(--line);background:var(--gold-soft);font:var(--text-xs)/1.55 var(--font-ui);border-radius:4px;padding:9px 10px}.utility-widget[data-widget=session-notes]>small{color:var(--muted);font-size:var(--text-micro);justify-self:end}.widget-add-control{gap:7px;margin-top:12px;display:flex}.widget-add-control>input,.widget-add-control>select{flex:1;min-width:0}.widget-add-control>button{flex:none}.quick-use-list,.quick-inventory-list,.pinned-rule-list{gap:7px;margin-top:12px;display:grid}.quick-use-list>div,.quick-inventory-list>div,.pinned-rule-list>div{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-raised) 72%, transparent);border-radius:4px;align-items:center;gap:9px;min-width:0;padding:8px 9px;display:flex}.quick-use-list>div>span,.quick-inventory-list>div>button:not(.icon-button),.pinned-rule-list>div>button:first-child{text-align:left;flex:1;gap:2px;min-width:0;display:grid}.quick-use-list small,.quick-inventory-list small,.pinned-rule-list small{color:var(--muted)}.quick-use-list input[type=number]{width:50px}.quick-inventory-list .inventory-kind{flex:none;width:31px;height:31px}.quick-inventory-list>div>button:not(.icon-button),.pinned-rule-list>div>button:first-child{color:inherit;background:0 0;border:0;padding:0}.quick-inventory-list>div>button:disabled{opacity:1;cursor:default}.passive-sense-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:12px;display:grid}.passive-sense-grid>span{border:1px solid var(--line);border-radius:4px;grid-template-columns:22px 1fr auto;align-items:center;gap:6px;min-width:0;padding:10px;display:grid}.passive-sense-grid svg{color:var(--gold)}.passive-sense-grid small{min-width:0;color:var(--muted)}.passive-sense-grid strong{font-size:18px}.recent-roll-list{gap:5px;margin:12px 0 0;padding:0;list-style:none;display:grid}.recent-roll-list li{border-bottom:1px solid var(--line);grid-template-columns:minmax(75px,auto) minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 8px;display:grid}.recent-roll-list li>span{min-width:0;display:grid}.recent-roll-list li small{color:var(--muted)}.recent-roll-list li b{font:24px var(--font-display);color:var(--gold)}.pinned-rule-search{border:1px solid var(--line);border-radius:4px;align-items:center;gap:7px;margin-top:12px;padding:0 9px;display:flex}.pinned-rule-search svg{color:var(--muted)}.pinned-rule-search input{background:0 0;border:0;width:100%;padding-inline:0}.pinned-rule-results{border:1px solid var(--line);background:var(--surface-raised);gap:4px;margin-top:6px;padding:5px;display:grid}.pinned-rule-results button{text-align:left;align-items:center;gap:8px;display:flex}.pinned-rule-results button span{display:grid}.pinned-rule-results small{color:var(--muted)}.checklist-items{gap:5px;margin-top:12px;display:grid}.checklist-items label{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 4px;display:grid}.checklist-items label:has(input:checked) span{color:var(--muted);text-decoration:line-through}.checklist-items button{background:0 0;border:0;padding:4px}.portrait-widget{overflow:hidden;padding:0!important}.basics-character-identity{grid-template-columns:128px minmax(0,1fr);align-items:center;gap:18px;margin-bottom:20px;display:grid}.basics-portrait-widget{width:128px}.basics-name-field{min-width:0}.basics-name-field .field-label{margin-top:0}.portrait-square-button{aspect-ratio:1;width:100%;color:var(--muted);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:7px;padding:0;transition:border-color .15s,transform .15s;display:block;position:relative;overflow:hidden}.portrait-square-button:hover,.portrait-square-button:focus-visible{border-color:var(--gold);transform:translateY(-1px)}.portrait-square-button:disabled{cursor:wait;opacity:.72}.portrait-square-image{width:100%;height:100%}.portrait-square-image .character-avatar-fallback{align-content:center;gap:6px;width:100%;height:100%}.portrait-square-image strong{color:var(--gold);font:29px var(--font-display)}.portrait-square-pending{z-index:2;color:var(--ink);font-size:var(--text-micro);background:#0b120ee0;padding:7px;font-weight:800;position:absolute;inset:auto 0 0}.portrait-image{aspect-ratio:4/3;background:linear-gradient(145deg, #cba0531c, transparent), var(--surface);min-height:220px}.portrait-image img{object-fit:cover;width:100%;height:100%;display:block}.portrait-image>span{width:100%;height:100%;color:var(--muted);place-content:center;justify-items:center;gap:8px;display:grid}.portrait-image>span strong{font:48px var(--font-display);color:var(--gold)}.portrait-upload{gap:7px;padding:12px;display:grid}.portrait-file-input{display:none}.portrait-upload-actions{flex-wrap:wrap;gap:6px;display:flex}.portrait-upload-actions button{min-height:31px;color:var(--ink);border:1px solid var(--line);font-size:var(--text-tiny);cursor:pointer;background:#294337;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:5px 9px;font-weight:800;display:inline-flex}.portrait-upload-actions button:hover,.portrait-upload-actions button:focus-visible{border-color:var(--gold)}.portrait-upload-actions button:disabled{opacity:.5;cursor:wait}.portrait-upload-actions .portrait-remove{color:var(--danger);background:var(--danger-soft)}.portrait-upload>small{color:var(--muted);font-size:var(--text-micro)}.portrait-upload>.portrait-upload-notice{color:var(--ink-soft)}.campaign-calendar-fields{gap:9px;margin-top:12px;display:grid}.campaign-calendar-fields label{grid-template-columns:20px 70px minmax(0,1fr);align-items:center;gap:6px;display:grid}.campaign-calendar-fields label>svg{color:var(--gold)}.campaign-calendar-fields label>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.campaign-calendar-fields .calendar-deadlines{align-items:start}.campaign-calendar-fields textarea{resize:vertical;min-height:82px}.desktop-widget-frame[data-density=compact] .portrait-image{min-height:150px}.desktop-widget-frame[data-density=compact] .recent-roll-list li{padding-block:4px}.sheet-tab-content{min-width:0;font-size:16px}.sheet-vitals-rail,.review-summary{scrollbar-width:thin;max-height:calc(100vh - 108px);position:sticky;top:88px;overflow-y:auto}.sheet-vitals-rail{border:1px solid var(--line);background:var(--gold-soft);border-radius:7px;padding:21px}.vitals-widget>h2{font:25px var(--font-display);margin:0 0 16px}.vital-primary{gap:8px;display:grid}.vital-primary>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px}.vital-ac{grid-template-columns:32px 42px minmax(0,1fr);align-items:center;gap:6px;min-height:65px;padding:9px 11px;display:grid}.vital-ac>svg{color:var(--gold)}.vital-ac>.dnd-icon{width:24px;height:24px}.vital-ac>strong{font:30px var(--font-display)}.vital-ac>span,.vital-ac small,.vital-ac b{min-width:0;display:block}.vital-ac small,.vital-hp>small,.vital-quick-stats small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase}.vital-ac b{font-size:var(--text-tiny);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-weight:650;overflow:hidden}.vital-hp{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:10px 11px;display:grid}.vital-hp>small{grid-column:1/-1;align-items:center;gap:6px;display:inline-flex}.vital-hp>small .dnd-icon{width:15px;height:15px}.vital-hp>strong{font:24px var(--font-display)}.vital-hp>strong i{color:var(--muted);font:13px var(--font-ui);font-style:normal}.vital-hp .hp-controls{margin:0}.hp-adjuster{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:5px;display:grid}.hp-adjuster input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);appearance:textfield;font-size:var(--text-tiny);border-radius:3px;grid-column:1/-1;padding:5px 7px}.hp-adjuster input::-webkit-inner-spin-button{appearance:none}.hp-adjuster input::-webkit-outer-spin-button{appearance:none}.hp-adjuster button{min-height:27px;color:var(--ink);border:1px solid var(--line);font-size:var(--text-micro);cursor:pointer;background:#294337;border-radius:3px;justify-content:center;align-items:center;gap:3px;padding:4px 7px;font-weight:800;display:inline-flex}.hp-adjuster button:hover,.hp-adjuster button:focus-visible{border-color:var(--gold)}.hp-adjuster button:disabled{opacity:.35;cursor:not-allowed}.vital-quick-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.vital-quick-stats>div{border:1px solid var(--line);background:var(--surface-raised);text-align:center;border-radius:4px;min-width:0;padding:10px}.initiative-roll-stat{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--surface-raised);text-align:center;border-radius:4px;padding:10px}button.initiative-roll-stat{width:100%;font:inherit;cursor:pointer}.initiative-roll-stat.active{border-color:var(--danger);background:var(--danger-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--danger) 28%, transparent)}.initiative-roll-stat.active:not(:disabled){animation:1.8s ease-in-out infinite initiative-roll-pulse}.initiative-roll-stat.active:disabled{cursor:default;opacity:1}.initiative-roll-stat em{color:var(--danger);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;margin-top:3px;font-style:normal;font-weight:850;display:block}.initiative-roll-stat.active:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@keyframes initiative-roll-pulse{50%{box-shadow:0 0 18px color-mix(in srgb, var(--danger) 36%, transparent)}}@media (prefers-reduced-motion:reduce){.initiative-roll-stat.active:not(:disabled){animation:none}}.vital-quick-stats small,.vital-quick-stats strong{display:block}.vital-quick-stats small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase}.vital-quick-stats small:has(.dnd-icon){justify-content:center;align-items:center;gap:5px;display:inline-flex}.vital-quick-stats small .dnd-icon{width:14px;height:14px}.vital-quick-stats strong{font:18px var(--font-display);margin-top:4px;line-height:1.3}.vital-quick-stats .vital-spellcasting{grid-column:1/-1}.vital-armor-warnings{margin-top:8px}.sheet-vitals-rail .sheet-skills{padding:0}.sheet-vitals-rail .sheet-skills>header{align-items:center;margin-top:17px;padding-top:15px}.sheet-vitals-rail .sheet-skills>header>span{border:1px solid var(--line);border-radius:3px;padding:4px 6px}.sheet-vitals-rail .sheet-skill-grid{grid-template-columns:1fr}.sheet-vitals-rail .sheet-skill-grid>div{min-height:44px}.mobile-play-sheet{min-width:0}.mobile-play-tabs,.mobile-play-pages{display:none}.play-widget+.play-widget{margin-top:14px}.sheet-tab-content>.review-abilities,.sheet-tab-content>.training-strip{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;padding:20px}.sheet-tab-content>.combat-sheet-layout{margin-top:18px}.review-layout{grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:28px;display:grid}.sheet-tabs{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;gap:4px;width:fit-content;margin:-12px 0 24px;padding:4px;display:flex}.sheet-tabs button{color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:7px;padding:9px 13px;font-weight:750;display:flex}.sheet-tabs button span{background:var(--gold-soft);min-width:18px;font-size:var(--text-tiny);border-radius:100px;padding:2px 5px}.sheet-tabs button.selected{color:var(--ink);background:var(--forest)}.sheet-tabs button.selected span{color:var(--sage);background:var(--gold-soft)}.roll-modifier-toolbar{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:-12px 0 22px;padding:11px 13px;display:flex}.roll-modifier-status{align-items:center;gap:9px;margin-right:auto;display:flex}.roll-modifier-status>svg{color:var(--gold)}.roll-modifier-status span,.roll-modifier-status small,.roll-modifier-status strong{display:block}.roll-modifier-status small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase}.roll-modifier-status strong{font-size:var(--text-xs);margin-top:2px}.roll-modifier-actions{flex-wrap:wrap;gap:5px;display:flex}.roll-modifier-actions button{min-height:31px;color:var(--ink-soft);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;padding:5px 9px;font-weight:800}.roll-modifier-actions button:hover,.roll-modifier-actions button:focus-visible{border-color:var(--gold)}.roll-modifier-actions button.selected{color:var(--forest-deep);border-color:var(--gold);background:var(--gold)}.roll-modifier-actions button.selected.critical{color:var(--ink);border-color:var(--danger);background:var(--danger-soft)}.roll-modifier-actions button:disabled{opacity:.45;cursor:wait}.roll-modifier-toolbar>small{color:var(--muted);font-size:var(--text-micro);flex-basis:100%}.character-sheet-preview{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;overflow:hidden;box-shadow:0 15px 40px #00000052}.character-sheet-preview>header{color:var(--ink);background:var(--forest);align-items:center;gap:14px;padding:22px;display:flex}.review-avatar{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:49px;height:49px;display:grid}.character-sheet-preview header p{color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;margin:0 0 3px}.character-sheet-preview header h2{font:26px var(--font-display);margin:0}.draft-badge{color:var(--gold);border:1px solid var(--line-strong);font-size:var(--text-xs);text-transform:uppercase;border-radius:100px;margin-left:auto;padding:5px 9px}.identity-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.identity-strip>div{border-right:1px solid var(--line);padding:14px 18px}.identity-strip>div:last-child{border:0}.identity-strip small,.identity-strip strong{display:block}.identity-strip small{color:var(--muted);font-size:var(--text-tiny);text-transform:uppercase;letter-spacing:.07em}.identity-strip strong{font:14px var(--font-display);margin-top:4px}.character-description-panel{border-bottom:1px solid var(--line);background:var(--gold-soft);padding:17px 22px}.character-description-panel small{color:var(--gold);font-size:var(--text-tiny);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.character-description-panel p{color:var(--ink-soft);font:13px/1.6 var(--font-display);white-space:pre-wrap;margin:7px 0 0}.combat-stats{text-align:center;grid-template-columns:repeat(4,1fr);gap:12px;padding:24px;display:grid}.combat-stats>div{border:1px solid var(--line);background:var(--gold-soft);padding:15px}.combat-stats small,.combat-stats strong{display:block}.combat-stats small{color:var(--muted);font-size:var(--text-tiny);text-transform:uppercase}.combat-stats strong{font:26px var(--font-display);margin-top:5px}.combat-stats .ac-stat span{color:var(--muted);font-size:var(--text-micro);margin-top:4px;display:block}.combat-stats .hp-stat{color:var(--ink);border-color:var(--sage);background:var(--forest)}.combat-stats .hp-stat small{color:var(--muted)}.combat-stats .hp-stat strong i{color:var(--muted);font:12px ui-sans-serif,system-ui,sans-serif}.hp-controls{justify-content:center;gap:6px;margin-top:8px;display:flex}.hp-controls button{width:23px;height:23px;color:var(--ink);border:1px solid var(--line-strong);cursor:pointer;background:#294337;border-radius:50%;place-items:center;padding:0;display:grid}.hp-controls button:disabled{opacity:.3;cursor:not-allowed}.temporary-hp-stat{color:var(--blue)}.hp-number-input{width:48px;color:inherit;border:0;border-bottom:1px solid var(--line);appearance:textfield;font:inherit;text-align:center;background:0 0;padding:2px 3px}.hp-number-input::-webkit-inner-spin-button{appearance:none;margin:0}.hp-number-input::-webkit-outer-spin-button{appearance:none;margin:0}.hp-number-input:focus{outline:1px solid var(--line-strong);border-radius:3px}.review-abilities{grid-template-columns:repeat(6,1fr);gap:8px;padding:0 24px 26px;display:grid}.review-abilities>:is(div,button){color:var(--ink);border:0;border-top:2px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);justify-items:center;padding:11px 5px;font-family:inherit;display:grid;position:relative}.review-abilities>:is(div,button)>.dnd-icon{opacity:.7;width:15px;height:15px;position:absolute;top:5px;left:5px}.review-abilities small{font-size:var(--text-tiny)}.review-abilities strong{font:21px var(--font-display);margin:5px 0}.review-abilities span{color:var(--muted);font-size:var(--text-xs)}.sheet-skills{padding:0 24px 26px}.sheet-skills>header{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:16px;padding:15px 0 11px;display:flex}.sheet-skills>header div>small,.sheet-skills>header div>strong{display:block}.sheet-skills>header div>small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-weight:800}.sheet-skills>header div>strong{font:20px var(--font-display)}.sheet-skills>header>span{color:var(--muted);font:var(--text-micro) var(--font-ui);text-transform:uppercase;align-items:center;gap:5px;display:flex}.sheet-skills>header i{background:var(--line-strong);border-radius:50%;width:7px;height:7px;margin-left:7px}.sheet-skills>header i.proficient{background:var(--sage)}.sheet-skills>header i.expertise{background:var(--gold)}.sheet-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.sheet-skill-grid>:is(div,button){min-height:42px;color:var(--ink);text-align:left;border:1px solid var(--line-soft);background:var(--surface);cursor:pointer;border-radius:4px;grid-template-columns:20px minmax(0,1fr) auto 14px;align-items:center;gap:8px;padding:7px 10px;font-family:inherit;display:grid}.sheet-skill-grid>:is(div,button).proficient{border-color:color-mix(in srgb, var(--sage) 44%, var(--line));background:var(--success-soft)}.sheet-skill-grid>:is(div,button).expertise{border-color:color-mix(in srgb, var(--gold) 52%, var(--line));background:var(--gold-soft)}.skill-rank{width:18px;height:18px;color:var(--muted);border:1px solid var(--line);font:var(--text-micro) var(--font-ui);border-radius:50%;place-items:center;display:grid}.proficient .skill-rank{color:var(--ink);border-color:var(--sage);background:var(--forest)}.expertise .skill-rank{color:var(--canvas);border-color:var(--gold);background:var(--gold)}.sheet-skill-grid>:is(div,button)>span:nth-child(2) strong,.sheet-skill-grid>:is(div,button)>span:nth-child(2) small{display:block}.sheet-skill-copy{align-items:center;gap:7px;min-width:0;display:flex}.sheet-skill-copy>.dnd-icon{opacity:.72;width:17px;height:17px}.sheet-skill-copy>span{min-width:0}.sheet-skill-grid>:is(div,button)>span:nth-child(2) strong{font-size:var(--text-xs)}.sheet-skill-grid>:is(div,button)>span:nth-child(2) small{color:var(--muted);font:var(--text-micro) var(--font-ui);letter-spacing:.04em;text-transform:uppercase;margin-top:2px}.sheet-skill-grid b{font:16px var(--font-display)}.training-strip{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.training-strip>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 20px}.training-strip>div:nth-child(2n){border-right:0}.training-strip small,.training-strip strong{display:block}.training-strip small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:5px;display:inline-flex}.training-strip small .dnd-icon{width:14px;height:14px}.training-strip strong{font-size:var(--text-xs);margin-top:4px;line-height:1.5}.training-strip .equipment-summary{border-right:0;grid-column:1/-1}.combat-sheet-layout{grid-template-columns:1fr;gap:18px;display:grid}.combat-main,.saving-throws-panel,.inventory-sheet{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px}.combat-warnings{flex-wrap:wrap;gap:6px;display:flex}.combat-warnings span{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft);font-size:var(--text-tiny);border-radius:3px;align-items:center;gap:5px;padding:5px 7px;display:inline-flex}.combat-section-heading{justify-content:space-between;align-items:end;gap:15px;padding:22px 22px 13px;display:flex}.combat-section-heading h2{font:22px var(--font-display);margin:0}.combat-section-heading>small{color:var(--muted);font-size:var(--text-tiny)}.attack-list{gap:7px;padding:0 22px 22px;display:grid}.attack-list>div{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;grid-template-columns:34px minmax(120px,1fr) 55px minmax(105px,auto) 75px;align-items:center;gap:10px;padding:11px;display:grid}.attack-icon{width:31px;height:31px;color:var(--ink);background:#526c5c;border-radius:50%;place-items:center;display:grid}.attack-list small,.attack-list strong{display:block}.attack-list small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.attack-list strong{font-size:var(--text-xs);margin-top:3px}.attack-list .attack-name strong{font:15px var(--font-display);margin:0}.attack-list .attack-name small{text-transform:none;margin-top:3px}.attack-icon .dnd-icon{width:18px;height:18px}.attack-damage-value{align-items:center;gap:5px;display:inline-flex!important}.attack-damage-value .dnd-icon{width:14px;height:14px}.attack-detail-trigger{color:var(--ink);text-align:left;font:15px var(--font-display);cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.attack-detail-trigger:hover,.attack-detail-trigger:focus-visible{color:var(--gold);text-decoration:underline}.rules-term-button{color:var(--gold);text-align:left;font-size:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px dotted;margin:3px 0 0;padding:0;font-weight:800;display:inline}.rules-term-button:hover,.rules-term-button:focus-visible{color:var(--ink);border-bottom-style:solid}.weapon-list .rules-term-button{font-size:var(--text-micro);margin:0}.rules-term-dialog{max-width:560px}.attack-list em{color:var(--danger);font-size:var(--text-tiny);grid-column:2/-1;font-style:normal}.desktop-widget-frame[data-layout-widget=attacks][data-widget-span="4"] .combat-section-heading{align-items:start;padding:17px 14px 10px}.desktop-widget-frame[data-layout-widget=attacks][data-widget-span="4"] .combat-section-heading>small{display:none}.desktop-widget-frame[data-layout-widget=attacks][data-widget-span="4"] .attack-list{gap:6px;padding:0 14px 14px}.desktop-widget-frame[data-layout-widget=attacks][data-widget-span="4"] .attack-list>div{grid-template-columns:31px minmax(0,1fr) auto;gap:8px;padding:9px}.desktop-widget-frame[data-layout-widget=attacks][data-widget-span="4"] .attack-list>div>span:nth-child(n+4){grid-column:2/-1}.combat-cheat-sheet{border-top:1px solid var(--line)}.core-combat-group{width:calc(100% - 44px);color:var(--ink);text-align:left;border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);border-radius:5px;margin:0 22px 18px;overflow:hidden}.core-combat-trigger{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:10px;padding:11px 12px;display:grid}.core-combat-trigger:hover,.core-combat-trigger:focus-visible{border-color:var(--gold)}.core-combat-trigger span,.core-combat-trigger strong,.core-combat-trigger small{min-width:0;display:block}.core-combat-trigger strong{color:var(--gold);font-size:var(--text-xs);letter-spacing:.06em}.core-combat-trigger small{color:var(--muted);font-size:var(--text-micro);margin-top:2px}.core-combat-trigger b{color:var(--muted);font-size:var(--text-tiny);white-space:nowrap}.core-combat-trigger svg{color:var(--gold)}.core-combat-group h3{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;margin:0 0 7px}.core-combat-options{gap:4px;display:grid}.core-combat-options button{min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:3px;padding:6px 7px;font-weight:750;overflow:hidden}.core-combat-options button:hover,.core-combat-options button:focus-visible{color:var(--gold);border-color:var(--gold)}.core-combat-dialog{width:min(760px,100%)}.core-combat-dialog-body{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:23px 26px 27px;display:grid}.core-combat-dialog-body>section{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;min-width:0;padding:13px}.core-combat-dialog-body h3{color:var(--gold);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;margin:0 0 9px}.combat-cheat-columns{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.combat-cheat-columns[data-column-count="1"]{grid-template-columns:1fr}.combat-cheat-columns[data-column-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.combat-cheat-columns>section{min-width:0;padding:0 22px 22px}.combat-cheat-columns>section+section{border-left:1px solid var(--line)}.combat-cheat-columns>section>header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.combat-cheat-columns>section>header .eyebrow{white-space:nowrap}.combat-cheat-columns>section>header>span{width:31px;height:31px;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);font-size:var(--text-tiny);border-radius:50%;place-items:center;font-weight:800;display:grid}.combat-cheat-columns>section>header>span .dnd-icon{width:20px;height:20px}.combat-cheat-columns h3{font:18px var(--font-display);margin:1px 0 0}.combat-option-list{gap:6px;display:grid}.combat-option-list article{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;justify-content:space-between;align-items:baseline;gap:8px;padding:9px 10px;display:flex}.combat-option-list article>button{min-width:0;color:var(--ink);font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:0;font-weight:750;overflow:hidden}.combat-option-list article>button:hover,.combat-option-list article>button:focus-visible{color:var(--gold);border-bottom-color:var(--gold)}.combat-option-list small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.04em;text-align:right;text-transform:uppercase}.combat-roll-buttons{flex:none;gap:4px;display:flex}.combat-roll-buttons button{min-height:27px;color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-micro);text-transform:uppercase;cursor:pointer;border-radius:3px;padding:4px 7px;font-weight:800}.combat-roll-buttons button:hover,.combat-roll-buttons button:focus-visible{border-color:var(--gold)}.combat-roll-buttons button:disabled{opacity:.35;cursor:not-allowed}.combat-option-empty{color:var(--muted);font-size:var(--text-tiny);border:1px dashed var(--line);border-radius:4px;margin:0;padding:13px;line-height:1.55}.saving-throws-panel{background:var(--gold-soft);padding:22px}.saving-throws-panel h2,.saving-throws-widget h2{font:23px var(--font-display);margin:0 0 18px}.saving-throw-list{gap:6px;display:grid}.saving-throw-list>:is(div,button){color:var(--ink);text-align:left;cursor:pointer;border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:20px 1fr auto 14px;align-items:center;gap:7px;padding:9px;font-family:inherit;display:grid}.saving-throw-list>:is(div,button)>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:relative}.saving-throw-list>:is(div,button).proficient>span{color:var(--ink);border-color:var(--line-strong);background:#587461}.saving-throw-ability-icon .dnd-icon{width:15px;height:15px}.saving-throw-proficient-mark{color:var(--canvas);background:var(--gold);border-radius:50%;padding:1px;position:absolute;bottom:-3px;right:-4px}.sheet-roll-row:hover,.sheet-roll-row:focus-visible{border-color:var(--gold)}.roll-indicator{color:var(--gold);opacity:.58}.sheet-roll-row:hover .roll-indicator,.sheet-roll-row:focus-visible .roll-indicator{opacity:1}.review-abilities .roll-indicator{position:absolute;top:5px;right:5px}.inline-roll-button{color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;align-items:center;gap:5px;padding:0;display:inline-flex}.inline-roll-button:hover,.inline-roll-button:focus-visible{color:var(--gold);border-bottom-color:var(--gold)}.saving-throw-list strong{font-size:var(--text-xs)}.saving-throw-list b{font:16px var(--font-display)}.saving-throws-panel .helper,.saving-throws-widget .helper{color:var(--muted);font-size:var(--text-tiny);margin-top:15px;line-height:1.5}.structured-defenses{border-top:1px solid var(--line);margin-top:24px;padding-top:21px}.structured-defenses h2{margin-bottom:14px;font-size:20px}.active-state-list{gap:6px;margin-bottom:18px;display:grid}.active-state-list>h3{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;margin:0 0 1px;font-weight:600}.active-state-list>div{border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.active-state-list>div.active{border-color:color-mix(in srgb, var(--sage) 42%, var(--line));background:var(--success-soft)}.active-state-list span{gap:2px;display:grid}.active-state-list strong{font-size:var(--text-sm)}.active-state-list span small,.active-state-helper{color:var(--muted);font-size:var(--text-micro);line-height:1.35}.active-state-list button{min-height:27px;color:var(--ink);background:var(--forest);font-size:var(--text-tiny);border:0;border-radius:3px;padding:0 9px;font-weight:650}.active-state-list>div.active button{color:var(--sage);border:1px solid var(--line-strong);background:var(--surface-raised)}.effect-group-list{gap:14px;display:grid}.effect-group-list section h3{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;margin:0 0 7px;font-weight:600}.effect-group-list section>div{gap:6px;display:grid}.effect-group-list section span{border:1px solid var(--line);background:var(--success-soft);border-radius:4px;gap:2px;padding:8px 9px;display:grid}.effect-group-list section span.conditional{border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft)}.effect-group-list section span.tracked.active{border-color:color-mix(in srgb, var(--sage) 42%, var(--line));background:var(--success-soft)}.effect-group-list strong{font-size:var(--text-sm)}.effect-group-list small{color:var(--muted);font-size:var(--text-micro);line-height:1.35}.inventory-sheet{overflow:hidden}.inventory-sheet>header{border-bottom:1px solid var(--line);background:var(--gold-soft);justify-content:space-between;align-items:end;gap:24px;padding:22px;display:flex}.inventory-sheet>header h2{font:27px var(--font-display);margin:0}.inventory-sheet>header p:last-child{color:var(--muted);font-size:var(--text-xs);margin:5px 0 0}.inventory-add{align-items:center;gap:6px;display:flex}.inventory-add select,.inventory-add input{border:1px solid var(--line);background:var(--surface-raised);min-height:38px;font-size:var(--text-xs);border-radius:4px;padding:7px 9px}.inventory-add select{min-width:170px}.inventory-add input[type=number]{width:60px}.inventory-add .primary-button{min-height:38px;padding:0 13px}.inventory-catalog-open{min-height:38px;color:var(--gold);border:1px solid var(--line-strong);background:var(--surface-raised);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:0 12px;font-weight:750;display:inline-flex}.inventory-attunement-summary{color:var(--ink-soft);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--gold-soft) 55%, var(--surface));font-size:var(--text-xs);align-items:center;gap:9px;padding:9px 22px;display:flex}.inventory-attunement-summary>span{color:var(--gold);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;font-weight:800;display:inline-flex}.inventory-attunement-summary>small{color:var(--muted);font-size:var(--text-micro);margin-left:auto}.inventory-notice{color:var(--sage);border-bottom:1px solid var(--line);background:var(--success-soft);font-size:var(--text-xs);margin:0;padding:9px 22px}.inventory-wallet{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--surface-raised) 75%, var(--gold-soft));padding:17px 22px 20px}.inventory-wallet>header{align-items:center;gap:10px;margin-bottom:13px;display:flex}.inventory-wallet>header .eyebrow{margin:0 0 2px}.inventory-wallet>header h3{font:19px var(--font-display);margin:0}.inventory-wallet>header>small{color:var(--muted);font-size:var(--text-micro);margin-left:auto}.inventory-wallet-icon{width:35px;height:35px;color:var(--gold);border:1px solid var(--line-strong);background:var(--gold-soft);border-radius:50%;place-items:center;display:grid}.currency-grid{grid-template-columns:repeat(5,minmax(116px,1fr));gap:8px;display:grid}.currency-control{border:1px solid var(--line);background:var(--surface);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding:9px 10px;display:grid}.currency-control>span{min-width:0}.currency-control>span strong,.currency-control>span small{display:block}.currency-control>span strong{color:var(--gold);font:700 14px var(--font-display);letter-spacing:.08em}.currency-control.sp>span strong{color:#b8c0bf}.currency-control.cp>span strong{color:#bb7b55}.currency-control.ep>span strong{color:#91aaa0}.currency-control.pp>span strong{color:#bfd3d8}.currency-control>span small{color:var(--muted);font-size:var(--text-micro);text-overflow:ellipsis;margin-top:2px;overflow:hidden}.currency-control>div{align-items:center;gap:3px;display:flex}.currency-control button{width:24px;height:24px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.currency-control button:disabled{opacity:.28;cursor:not-allowed}.currency-control .hp-number-input{width:52px;font-size:var(--text-sm)}.inventory-catalog-detail,.item-detail-button{color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:5px;font-weight:750;display:inline-flex}.inventory-catalog-detail{min-height:38px;padding:0 10px}.inventory-catalog-detail:disabled{opacity:.38;cursor:not-allowed}.item-detail-button{min-height:30px;padding:0 8px}.inventory-list{display:grid}.inventory-list>div{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(150px,1fr) auto minmax(90px,auto) 34px;align-items:center;gap:12px;min-height:61px;padding:10px 16px;display:grid}.inventory-list>div:last-child{border-bottom:0}.inventory-kind{width:34px;height:34px;color:var(--ink);background:#7b887e;border-radius:50%;place-items:center;display:grid}.inventory-kind .dnd-icon{width:19px;height:19px}.inventory-kind.weapon{background:#526c5c}.inventory-kind.armor{background:#765f3c}.inventory-kind.magic-item{color:var(--gold);background:color-mix(in srgb, var(--forest) 72%, #765f3c)}.inventory-kind.currency{color:var(--gold);background:var(--gold-soft)}.inventory-name strong,.inventory-name small{display:block}.inventory-name strong{font:14px var(--font-display)}.inventory-name small{color:var(--muted);font-size:var(--text-micro);margin-top:3px}.inventory-quantity{align-items:center;gap:7px;display:flex}.inventory-quantity button,.remove-item{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:50%;place-items:center;width:27px;height:27px;padding:0;display:grid}.inventory-quantity button:disabled{opacity:.3;cursor:not-allowed}.inventory-quantity strong{text-align:center;min-width:20px;font-size:var(--text-sm)}.inventory-row-actions{justify-content:flex-end;gap:6px;display:flex}.equip-button{border:1px solid var(--line);background:var(--surface-raised);min-height:30px;font-size:var(--text-tiny);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:4px;display:inline-flex}.equip-button.selected{color:var(--ink);border-color:var(--sage);background:var(--forest)}.attune-button.selected{color:var(--gold);border-color:var(--gold);background:var(--gold-soft)}.attune-button:disabled{opacity:.38;cursor:not-allowed}.remove-item{color:var(--danger)}.review-summary{border:1px solid var(--line);background:var(--gold-soft);border-radius:7px;padding:25px}.review-summary h2{font:24px var(--font-display);margin:0 0 22px}.rest-actions{grid-template-columns:repeat(2,1fr);gap:7px;margin:-7px 0 18px;display:grid}.rest-actions button{min-width:0;color:var(--sage);border:1px solid var(--line);background:var(--surface-raised);text-align:left;border-radius:4px;align-items:center;gap:8px;padding:9px;display:flex}.rest-actions button svg{color:var(--gold);flex:none}.rest-actions span,.rest-actions strong,.rest-actions small{min-width:0;display:block}.rest-actions strong{font-size:var(--text-xs)}.rest-actions small{color:var(--muted);font-size:var(--text-micro);margin-top:2px;line-height:1.3}.rest-notice{color:var(--success);border:1px solid color-mix(in srgb, var(--sage) 42%, var(--line));background:var(--success-soft);font-size:var(--text-tiny);border-radius:4px;margin:-8px 0 15px;padding:8px 9px;line-height:1.45}.summary-list{gap:11px;max-height:330px;display:grid;overflow:auto}.summary-list>div{align-items:flex-start;gap:9px;display:flex}.summary-list>div>span{width:20px;height:20px;color:var(--ink);background:#66806d;border-radius:50%;flex:none;place-items:center;display:grid}.summary-list p{margin:0}.summary-list small,.summary-list strong{display:block}.summary-list small{color:var(--muted);font-size:var(--text-tiny);text-transform:uppercase}.summary-list strong{font-size:var(--text-sm);margin-top:2px;line-height:1.4}.review-note{color:var(--muted);background:var(--forest);gap:10px;margin-top:24px;padding:14px;display:flex}.review-note svg{color:var(--gold);flex:none}.review-note p{font-size:var(--text-xs);margin:0;line-height:1.6}.small-copy{font-size:var(--text-sm);line-height:1.6}.resource-list{gap:9px;display:grid}.resource-list>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:12px}.resource-list header{justify-content:space-between;align-items:center;display:flex}.resource-list header small,.resource-list header strong{display:block}.resource-list header small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.resource-list header strong{font-size:var(--text-sm);margin-top:2px}.resource-list header .rules-term-button{font-size:var(--text-sm);margin-top:2px;display:block}.resource-list header b{font:17px var(--font-display)}.resource-pips{gap:4px;margin:10px 0;display:flex}.resource-pips i{border:1px solid var(--line-strong);background:var(--gold-soft);border-radius:50%;width:9px;height:9px}.resource-pips i.available{border-color:var(--line-strong);background:#587461}.resource-list footer{justify-content:space-between;align-items:end;gap:8px;display:flex}.resource-list footer small{max-width:135px;color:var(--muted);font-size:var(--text-micro);line-height:1.4}.resource-list footer span{gap:4px;display:flex}.resource-list footer button{border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-micro);cursor:pointer;border-radius:3px;padding:4px 7px;font-weight:750}.resource-list footer button:disabled{opacity:.35;cursor:not-allowed}.desktop-widget-frame[data-layout-widget=feature-resources][data-widget-span="6"] .resource-list,.desktop-widget-frame[data-layout-widget=feature-resources][data-widget-span="8"] .resource-list,.desktop-widget-frame[data-layout-widget=feature-resources][data-widget-span="9"] .resource-list,.desktop-widget-frame[data-layout-widget=feature-resources][data-widget-span="12"] .resource-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.death-saves{border-top:1px solid var(--line);margin-top:20px;padding-top:17px}.death-saves>div{align-items:center;gap:8px;margin-bottom:12px;display:flex}.death-saves>div svg{color:var(--danger)}.death-saves>div small,.death-saves>div strong{display:block}.death-saves>div small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.death-saves>div strong{font:13px var(--font-display)}.death-saves label{font-size:var(--text-xs);justify-content:space-between;align-items:center;margin:8px 0;display:flex}.death-saves label span{gap:5px;display:flex}.death-saves label button{border:1px solid var(--line-strong);cursor:pointer;background:0 0;border-radius:50%;width:16px;height:16px;padding:0}.death-saves label button.marked{border-color:color-mix(in srgb, var(--sage) 42%, var(--line));background:#557560;box-shadow:inset 0 0 0 3px #eef1eb}.death-saves label button.marked.failure{border-color:var(--danger);background:var(--danger)}.death-save-roll{width:100%;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:7px;margin:-2px 0 10px;padding:7px 9px;font-weight:750;display:flex}.death-save-roll:hover{border-color:var(--gold)}.dice-roll-result{z-index:45;min-width:280px;max-width:min(430px,100vw - 32px);color:var(--ink);border:1px solid var(--gold);background:var(--paper);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:12px 13px;display:grid;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 50px #0000007a}.dice-roll-result>svg{color:var(--gold)}.dice-roll-result span small,.dice-roll-result span strong{display:block}.dice-roll-result span small{color:var(--muted);font-size:var(--text-micro)}.roll-kind-badge{color:var(--ink);border:1px solid var(--line);background:var(--forest);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;border-radius:100px;margin-right:6px;padding:2px 5px;font-style:normal;font-weight:850;display:inline-block}.roll-kind-badge.to-hit,.roll-kind-badge.attack{color:var(--gold)}.roll-kind-badge.damage{color:var(--danger);background:var(--danger-soft)}.dice-roll-result span strong{font-size:var(--text-xs);margin-top:2px}.dice-roll-result>b{color:var(--gold);font:29px var(--font-display)}.dice-roll-result>button{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.dice-roll-result.error{border-color:var(--danger)}.adventure-trackers{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:17px;display:grid}.inspiration-tracker,.exhaustion-tracker,.hit-dice-tracker>div,.concentration-tracker{justify-content:space-between;align-items:center;gap:8px;display:flex}.inspiration-tracker span,.exhaustion-tracker span,.concentration-tracker span{gap:2px;display:grid}.inspiration-tracker small,.exhaustion-tracker small,.hit-dice-tracker>small,.concentration-tracker small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.inspiration-tracker strong,.exhaustion-tracker strong,.concentration-tracker strong{font-size:var(--text-xs)}.inspiration-tracker button,.concentration-tracker button{border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;padding:6px 9px}.inspiration-tracker button.active{border-color:var(--gold);color:var(--gold)}.exhaustion-tracker select{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;min-width:54px;padding:6px}.hit-dice-tracker{gap:6px;padding-top:4px;display:grid}.hit-dice-tracker>div{justify-content:flex-start}.hit-dice-tracker>div strong{min-width:28px;font-size:var(--text-xs)}.hit-dice-tracker>div span{color:var(--muted);font-size:var(--text-tiny);margin-right:auto}.hit-dice-tracker button{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:50%;place-items:center;width:23px;height:23px;display:grid}.hit-dice-tracker button:disabled{opacity:.35;cursor:not-allowed}.hit-dice-tracker p{color:var(--muted);font-size:var(--text-micro);margin:0}.runtime-status{margin-bottom:18px}.condition-list{flex-wrap:wrap;gap:5px;margin:10px 0 12px;display:flex}.condition-list button{border:1px solid var(--line);color:var(--muted);background:var(--surface-raised);font-size:var(--text-micro);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:5px 7px;display:inline-flex}.condition-list button .dnd-icon{opacity:.68;width:13px;height:13px}.condition-list button.active{border-color:color-mix(in srgb, var(--danger) 55%, var(--line));color:var(--danger);background:var(--danger-soft)}.condition-list button.active .dnd-icon{opacity:1}.concentration-tracker{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;padding:9px}.concentration-tracker>.dnd-icon{width:17px;height:17px}.concentration-tracker>span{margin-right:auto}.active-spell-effect-list{gap:6px;margin-top:9px;display:grid}.active-spell-effect-list h3{color:var(--muted);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;margin:4px 0 1px}.active-spell-effect-list>div{border:1px solid var(--line-strong);background:var(--success-soft);border-radius:5px;align-items:center;gap:9px;padding:9px;display:flex}.active-spell-effect-list span{gap:2px;min-width:0;margin-right:auto;display:grid}.active-spell-effect-list strong{font-size:var(--text-xs)}.active-spell-effect-list small{color:var(--muted);font-size:var(--text-micro)}.active-spell-effect-list button{color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;padding:6px 9px}.dialog-backdrop{z-index:20;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f1914ad;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.inventory-catalog-backdrop.suspended{pointer-events:none}.item-detail-backdrop{z-index:21}.rules-upgrade-dialog{border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--paper);border-radius:9px;width:min(560px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 28px 80px #08120c59}.spell-detail-dialog{border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--paper);border-radius:9px;width:min(700px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 28px 80px #0000008c}.inventory-catalog-dialog{grid-template-rows:auto auto auto minmax(0,1fr);width:min(980px,100%);height:min(820px,100vh - 48px);display:grid;overflow:hidden}.inventory-catalog-filters{border-bottom:1px solid var(--line);background:var(--gold-soft);grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(125px,1fr)) auto;gap:8px;padding:15px 20px;display:grid}.inventory-catalog-filters input,.inventory-catalog-filters select{width:100%;min-height:38px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);border-radius:4px;padding:7px 9px}.inventory-catalog-search{align-items:center;display:flex;position:relative}.inventory-catalog-search svg{color:var(--muted);pointer-events:none;position:absolute;left:10px}.inventory-catalog-search input{padding-left:34px}.inventory-catalog-quantity{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase;align-items:center;gap:6px;font-weight:800;display:flex}.inventory-catalog-quantity input{width:62px}.inventory-catalog-summary{color:var(--muted);border-bottom:1px solid var(--line);font-size:var(--text-xs);justify-content:space-between;align-items:center;gap:12px;padding:9px 21px;display:flex}.inventory-catalog-summary strong{color:var(--ink)}.inventory-catalog-summary [role=alert]{color:var(--danger)}.inventory-catalog-results{overflow:auto}.inventory-catalog-results article{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(200px,1fr) auto auto auto;align-items:center;gap:11px;min-height:62px;padding:10px 18px;display:grid}.inventory-catalog-results article>span:nth-child(2){min-width:0}.inventory-catalog-results article strong,.inventory-catalog-results article small{display:block}.inventory-catalog-results article strong{font:15px var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-catalog-results article small{color:var(--muted);font-size:var(--text-micro);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.inventory-catalog-results .primary-button{align-items:center;gap:4px;min-height:31px;padding:0 10px;display:inline-flex}.inventory-catalog-wishlist{min-height:31px;color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);align-items:center;gap:4px;padding:0 10px;display:inline-flex}.inventory-catalog-wishlist:disabled{opacity:.65;cursor:default}.spell-detail-dialog>header{z-index:1;border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:13px;padding:23px 26px 18px;display:flex;position:sticky;top:0}.spell-detail-dialog h2{font:29px var(--font-display);margin:0}.spell-detail-dialog .eyebrow{margin-bottom:4px}.spell-detail-tags{flex-wrap:wrap;gap:6px;padding:18px 26px 0;display:flex}.spell-detail-tags span{color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-xs);border-radius:100px;align-items:center;gap:5px;padding:5px 8px;font-weight:750;display:inline-flex}.dialog-icon .dnd-icon{width:22px;height:22px}.spell-detail-tags .dnd-icon{width:13px;height:13px}.spell-detail-facts{background:var(--line);border-radius:5px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:15px 26px 0;padding:1px;display:grid}.spell-detail-facts>div{background:var(--surface-raised);padding:12px 14px}.spell-detail-facts dt{color:var(--muted);font-size:var(--text-tiny);letter-spacing:.06em;text-transform:uppercase;font-weight:750}.spell-detail-facts dd{color:var(--ink);margin:5px 0 0;font-size:12px;line-height:1.45}.spell-detail-body{padding:20px 26px 27px}.spell-detail-body p{color:var(--ink-soft);margin:0 0 13px;font-size:13px;line-height:1.7}.spell-detail-body p:last-child{margin-bottom:0}.combat-option-detail-dialog{width:min(620px,100%)}.combat-option-detail-body{padding:23px 26px 27px}.combat-option-detail-body p{color:var(--ink-soft);font-size:var(--text-sm);margin:0 0 14px;line-height:1.7}.combat-option-detail-body p:last-child{margin-bottom:0}.account-dialog{border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--paper);border-radius:9px;width:min(460px,100%);overflow:hidden;box-shadow:0 28px 80px #08120c59}.account-dialog>header{border-bottom:1px solid var(--line);align-items:center;gap:13px;padding:23px 25px 18px;display:flex}.account-dialog h2{color:var(--ink);font:25px var(--font-display);margin:0}.account-dialog .eyebrow{font-size:var(--text-tiny);margin-bottom:4px}.account-dialog>form{padding:22px 25px 25px}.account-dialog form footer{justify-content:flex-end;gap:8px;margin-top:7px;display:flex}.bug-report-dialog{width:min(520px,100%)}.bug-report-dialog textarea{resize:vertical;width:100%;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font:13px/1.55 var(--font-ui);letter-spacing:normal;text-transform:none;border-radius:4px;padding:11px}.bug-report-context{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;gap:3px;padding:11px 13px;display:grid}.bug-report-context small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.bug-report-context strong{color:var(--ink-soft);font-size:var(--text-sm)}.bug-report-context span{color:var(--muted);font-size:var(--text-tiny)}.bug-report-success{text-align:center;justify-items:center;gap:9px;padding:34px 25px 28px;display:grid}.bug-report-success>span{width:46px;height:46px;color:var(--success);background:var(--success-soft);border-radius:50%;place-items:center;display:grid}.bug-report-success strong{font:21px var(--font-display)}.bug-report-success p{max-width:330px;color:var(--muted);font-size:var(--text-sm);margin:0 0 9px;line-height:1.55}.rules-upgrade-dialog>header{border-bottom:1px solid var(--line);align-items:center;gap:13px;padding:24px 26px 19px;display:flex}.dialog-icon{width:40px;height:40px;color:var(--gold);background:var(--forest);border-radius:50%;flex:none;place-items:center;display:grid}.rules-upgrade-dialog h2{color:var(--ink);font:27px var(--font-display);margin:0}.rules-upgrade-dialog .eyebrow{font-size:var(--text-tiny);margin-bottom:4px}.dialog-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;margin-left:auto;display:grid}.dialog-close:hover{border-color:var(--line);background:var(--gold-soft)}.version-route{color:var(--gold);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:23px 26px 0;display:grid}.version-route>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;padding:14px 16px}.version-route small,.version-route strong{display:block}.version-route small{color:var(--muted);font-size:var(--text-tiny);letter-spacing:.08em;text-transform:uppercase;font-weight:750}.version-route strong{color:var(--ink);font:21px var(--font-display);margin-top:4px}.upgrade-status{border-radius:5px;gap:11px;margin:16px 26px 0;padding:14px 15px;display:flex}.upgrade-status>svg{flex:none;margin-top:1px}.upgrade-status strong{font-size:12px;display:block}.upgrade-status p{font-size:var(--text-sm);margin:4px 0 0;line-height:1.55}.upgrade-status.compatible{color:var(--success);border:1px solid color-mix(in srgb, var(--sage) 42%, var(--line));background:var(--success-soft)}.upgrade-status.blocked{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft)}.upgrade-section{margin:22px 26px 0}.upgrade-section-title{color:var(--gold);align-items:center;gap:10px;display:flex}.upgrade-section-title strong,.upgrade-section-title small{display:block}.upgrade-section-title strong{color:var(--ink);font-size:12px}.upgrade-section-title small{color:var(--muted);font-size:var(--text-xs);margin-top:2px}.upgrade-section ul{gap:7px;margin:11px 0 0;padding:0;list-style:none;display:grid}.upgrade-section li{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;align-items:center;gap:9px;padding:10px 12px;display:flex}.upgrade-section li>svg{color:var(--success)}.upgrade-section li strong,.upgrade-section li small{display:block}.upgrade-section li strong{font-size:var(--text-sm)}.upgrade-section li small{color:var(--muted);font-size:var(--text-tiny);margin-top:2px}.missing-references>strong{color:var(--danger);font-size:12px}.missing-references li{flex-direction:column;align-items:start}.missing-references code{color:var(--danger);font-size:var(--text-sm)}.dialog-error{color:var(--danger);font-size:var(--text-sm);margin:18px 26px 0}.rules-upgrade-dialog>footer{border-top:1px solid var(--line);background:var(--gold-soft);justify-content:flex-end;gap:9px;margin-top:25px;padding:17px 26px;display:flex}.content-package-dialog{width:min(760px,100%)}.content-package-dialog>header{z-index:2;background:var(--paper);position:sticky;top:0}.content-package-intro{flex-wrap:wrap;gap:6px;padding:17px 26px 0;display:flex}.content-package-intro span{color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);text-transform:capitalize;border-radius:100px;padding:5px 8px;font-weight:750}.content-package-sources{padding:17px 26px 0}.content-package-sources small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.content-package-sources p{color:var(--ink-soft);font-size:var(--text-sm);margin:5px 0 0}.content-package-counts{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px;padding:17px 26px 0;display:grid}.content-package-counts span{border:1px solid var(--line);background:var(--surface-raised);color:var(--muted);font-size:var(--text-micro);border-radius:4px;gap:2px;padding:10px 11px;display:grid}.content-package-counts strong{color:var(--ink);font:19px var(--font-display)}.content-package-groups{gap:7px;padding:17px 26px 26px;display:grid}.content-package-groups details{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;overflow:hidden}.content-package-groups summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;list-style:none;display:flex}.content-package-groups summary::-webkit-details-marker{display:none}.content-package-groups summary span{color:var(--ink);font-size:var(--text-sm);font-weight:800}.content-package-groups summary strong{min-width:24px;color:var(--gold);background:var(--gold-soft);font-size:var(--text-micro);text-align:center;border-radius:100px;padding:3px 6px}.content-package-groups details>div{border-top:1px solid var(--line);flex-wrap:wrap;gap:5px;max-height:260px;padding:10px 12px 12px;display:flex;overflow-y:auto}.content-package-groups details>div span{color:var(--ink-soft);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-tiny);border-radius:3px;padding:4px 7px}.campaign-content-dialog{width:min(880px,100%)}.campaign-content-dialog>header{z-index:2;background:var(--paper);position:sticky;top:0}.campaign-content-toolbar{justify-content:space-between;align-items:end;gap:16px;padding:17px 26px 0;display:flex}.campaign-content-toolbar label{color:var(--muted);font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;flex:1;gap:6px;font-weight:800;display:grid}.campaign-content-toolbar input{width:100%;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);letter-spacing:normal;text-transform:none;border-radius:4px;padding:9px 10px;font:12px system-ui,sans-serif}.campaign-content-toolbar>span{color:var(--muted);font-size:var(--text-tiny);white-space:nowrap;padding-bottom:10px}.campaign-content-toolbar>span strong{color:var(--ink)}.campaign-content-note{color:var(--muted);font-size:var(--text-tiny);margin:10px 26px 0}.campaign-content-groups{gap:8px;padding:17px 26px 24px;display:grid}.campaign-content-groups details{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;overflow:hidden}.campaign-content-groups summary{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 12px;list-style:none;display:flex}.campaign-content-groups summary::-webkit-details-marker{display:none}.campaign-content-groups summary span{color:var(--ink);font-size:var(--text-sm);font-weight:800}.campaign-content-groups summary strong{color:var(--gold);font-size:var(--text-tiny)}.campaign-content-group-actions{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--gold-soft);justify-content:flex-end;gap:6px;padding:8px 10px;display:flex}.campaign-content-group-actions button{color:var(--gold);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-micro);cursor:pointer;border-radius:3px;padding:4px 7px;font-weight:800}.campaign-content-entities{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;max-height:300px;display:grid;overflow-y:auto}.campaign-content-entities label{background:var(--paper);cursor:pointer;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.campaign-content-entities label.disabled{opacity:.48;cursor:not-allowed;background:var(--gold-soft)}.campaign-content-entities input{accent-color:var(--sage);flex:none}.campaign-content-entities span,.campaign-content-entities strong,.campaign-content-entities small{min-width:0;display:block}.campaign-content-entities span{overflow:hidden}.campaign-content-entities strong{color:var(--ink);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-content-entities small{color:var(--muted);font-size:var(--text-micro);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.campaign-content-dialog>footer{border-top:1px solid var(--line);background:var(--gold-soft);justify-content:space-between;gap:9px;padding:14px 26px;display:flex}@media (width<=680px){.campaign-content-mode,.campaign-content-entities{grid-template-columns:1fr}.campaign-content-toolbar{flex-direction:column;align-items:stretch}.campaign-content-toolbar>span{padding-bottom:0}}.sheet-section-layout{grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:28px;display:grid}.sheet-section-layout h2,.spell-sheet h2{font:28px var(--font-display);margin:0 0 20px}.feature-groups{gap:18px;display:grid}.feature-source-group{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;overflow:hidden}.feature-source-group>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:16px;padding:14px 16px;display:flex}.feature-source-group>header h3{font:21px var(--font-display);margin:2px 0 0}.feature-source-group>header>span{color:var(--muted);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);border-radius:100px;padding:5px 8px;font-weight:750}.feature-list{gap:7px;display:grid}.feature-source-group .feature-list{gap:0;padding:8px}.feature-list details{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px}.feature-source-group .feature-list details+details{margin-top:7px}.feature-list summary{cursor:pointer;align-items:center;gap:12px;padding:13px 15px;list-style:none;display:flex}.feature-list summary::-webkit-details-marker{display:none}.feature-list summary>span{flex:1}.feature-list summary small,.feature-list summary strong{display:block}.feature-list summary small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:750}.feature-list summary strong{font:14px var(--font-display);margin-top:3px}.feature-list details[open] summary svg{transform:rotate(45deg)}.feature-list details>p{color:var(--ink-soft);font-size:var(--text-sm);margin:0;padding:0 15px 15px;line-height:1.65}.weapon-list{gap:7px;display:grid}.weapon-list>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:12px}.weapon-list strong,.weapon-list span,.weapon-list small{display:block}.weapon-list strong{font:14px var(--font-display)}.weapon-list span{color:var(--gold);font-size:var(--text-xs);margin-top:4px;font-weight:750}.weapon-list small{color:var(--muted);font-size:var(--text-micro);margin-top:5px;line-height:1.45}.spell-sheet>div:first-child>p:last-child{color:var(--muted);font-size:var(--text-sm);margin-top:-12px}.spell-slot-tracker{border:1px solid var(--line);background:var(--gold-soft);border-radius:7px;margin:25px 0;padding:20px}.spell-slot-tracker>div:first-child{margin-bottom:16px}.spell-slot-tracker>div:first-child h2{margin-bottom:5px;font-size:22px}.spell-slot-tracker>div:first-child p:last-child{color:var(--muted);font-size:var(--text-xs);margin:0}.spell-slot-tracker .resource-list{grid-template-columns:repeat(3,minmax(0,1fr))}.cast-notice{color:var(--success);border:1px solid color-mix(in srgb, var(--sage) 42%, var(--line));background:var(--success-soft);font-size:var(--text-xs);border-radius:4px;margin:16px 0 -8px;padding:9px 11px;line-height:1.45}.sheet-spell-browser{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;margin-top:22px;padding:14px 16px 16px}.sheet-spell-search{background:var(--surface-raised);margin:0}.sheet-spell-filters{padding:10px 0 0}.spell-list{grid-template-columns:1fr 1fr;gap:8px;margin-top:25px;display:grid}.sheet-spell-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;min-width:0;padding:13px}.sheet-spell-card>header{align-items:center;gap:11px;display:flex}.sheet-spell-school-icon{opacity:.72;width:18px;height:18px}.sheet-spell-detail-trigger{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:2px 0;display:block}.sheet-spell-detail-trigger:hover strong,.sheet-spell-detail-trigger:focus-visible strong{color:var(--gold);text-decoration:underline}.sheet-spell-detail-trigger strong,.sheet-spell-detail-trigger small{display:block}.sheet-spell-detail-trigger strong{font:15px var(--font-display)}.sheet-spell-detail-trigger small{color:var(--muted);font-size:var(--text-micro);text-transform:capitalize;margin-top:4px}.sheet-spell-tags{flex-wrap:wrap;justify-content:end;align-items:center;gap:5px;display:flex}.sheet-spell-tags em{color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);font-size:var(--text-micro);border-radius:100px;align-items:center;gap:4px;padding:4px 6px;font-style:normal;font-weight:750;display:inline-flex}.sheet-spell-tags .dnd-icon{width:12px;height:12px}.spell-favorite-toggle{width:31px;height:31px;color:var(--muted);border:1px solid var(--line);background:var(--gold-soft);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.spell-favorite-toggle:hover,.spell-favorite-toggle:focus-visible{color:var(--gold);border-color:var(--gold)}.spell-favorite-toggle.selected{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 65%, var(--line));background:color-mix(in srgb, var(--gold) 16%, var(--surface-raised))}.spell-level{width:28px;height:28px;color:var(--ink);background:var(--forest);font:12px var(--font-display);border-radius:50%;place-items:center;display:grid}.sheet-spell-card>.spell-cast-options,.sheet-spell-card>.spell-cast-control{margin-top:12px}.filtered-spell-empty{margin-top:24px}.filtered-spellbook-empty{margin:14px 0 0}.favorite-spell-list{gap:8px;margin-top:14px;display:grid}.favorite-spell-list .sheet-spell-card{padding:11px}.favorite-spell-unprepared{color:var(--muted);border-top:1px solid var(--line);font-size:var(--text-tiny);margin:11px 0 0;padding:8px 10px}.spell-cast-control{border:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:13px;padding:10px;display:grid}.spell-cast-options{gap:6px;display:grid}.spell-cast-control.free-use{border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft)}.spell-cast-control.free-use>span{gap:2px;display:grid}.spell-cast-control.free-use small{color:var(--muted);font-size:var(--text-micro)}.spell-cast-control.free-use strong{font-size:var(--text-xs)}.spell-cast-control label span,.spell-cast-control.cantrip small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-weight:750;display:block}.spell-cast-control select{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-tiny);border-radius:3px;padding:7px 8px}.spell-cast-control button{min-height:30px;color:var(--ink);background:var(--forest);font-size:var(--text-tiny);border:0;border-radius:3px;padding:7px 11px;font-weight:750}.spell-cast-control button:disabled{opacity:.4;cursor:not-allowed}.spell-cast-actions,.spell-roll-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.spell-roll-actions button{color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);align-items:center;gap:5px;display:inline-flex}.spell-cast-control.cantrip{align-items:center}.spell-cast-control.cantrip small{margin-bottom:3px}.spell-cast-control.cantrip strong{font-size:var(--text-xs)}.desktop-widget-frame[data-widget-span="2"]>.review-abilities,.desktop-widget-frame[data-widget-span="2"]>.sheet-skills,.desktop-widget-frame[data-widget-span="2"]>[data-widget=conditions]{padding:9px}.desktop-widget-frame[data-widget-span="2"] .review-abilities,.desktop-widget-frame[data-widget-span="3"] .review-abilities,.desktop-widget-frame[data-widget-span="4"] .review-abilities{grid-template-columns:1fr}.desktop-widget-frame[data-widget-span="2"] .review-abilities{gap:4px}.desktop-widget-frame[data-widget-span="2"] .review-abilities>:is(div,button){padding:7px 4px}.desktop-widget-frame[data-widget-span="2"] .sheet-skills>header{padding:5px 0 8px}.desktop-widget-frame[data-widget-span="2"] .sheet-skill-grid>:is(div,button){grid-template-columns:17px minmax(0,1fr) auto 13px;gap:5px;min-height:36px;padding:5px 6px}.desktop-widget-frame[data-widget-span="2"] .sheet-skill-grid strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.desktop-widget-frame[data-widget-span="2"] .training-strip,.desktop-widget-frame[data-widget-span="3"] .training-strip,.desktop-widget-frame[data-widget-span="4"] .training-strip{grid-template-columns:1fr}.desktop-widget-frame[data-widget-span="2"] .training-strip>div,.desktop-widget-frame[data-widget-span="3"] .training-strip>div,.desktop-widget-frame[data-widget-span="4"] .training-strip>div{border-right:0}.desktop-widget-frame[data-widget-span="2"] .training-strip>div{padding:10px}.desktop-widget-frame[data-widget-span="2"] .combat-cheat-columns,.desktop-widget-frame[data-widget-span="3"] .combat-cheat-columns,.desktop-widget-frame[data-widget-span="4"] .combat-cheat-columns{grid-template-columns:1fr}.desktop-widget-frame[data-widget-span="2"] .combat-cheat-columns>section+section,.desktop-widget-frame[data-widget-span="3"] .combat-cheat-columns>section+section,.desktop-widget-frame[data-widget-span="4"] .combat-cheat-columns>section+section{border-top:1px solid var(--line);border-left:0;padding-top:14px}.desktop-widget-frame[data-widget-span="2"] .combat-cheat-sheet .combat-section-heading>small,.desktop-widget-frame[data-widget-span="3"] .combat-cheat-sheet .combat-section-heading>small,.desktop-widget-frame[data-widget-span="4"] .combat-cheat-sheet .combat-section-heading>small{display:none}.desktop-widget-frame[data-widget-span="2"] .core-combat-group,.desktop-widget-frame[data-widget-span="3"] .core-combat-group,.desktop-widget-frame[data-widget-span="4"] .core-combat-group{width:calc(100% - 18px);margin:0 9px 9px}.desktop-widget-frame[data-widget-span="2"] .core-combat-trigger small,.desktop-widget-frame[data-widget-span="2"] .core-combat-trigger b{display:none}.desktop-widget-frame[data-widget-span="2"] [data-widget=conditions] h2{margin-bottom:7px;font-size:18px}.desktop-widget-frame[data-widget-span="2"] .condition-list{gap:3px;margin:6px 0}.desktop-widget-frame[data-widget-span="2"] .condition-list button{padding:3px 5px}.desktop-widget-frame[data-widget-span="2"] .concentration-tracker{padding:6px}.desktop-widget-frame[data-orientation=horizontal]>.review-abilities{grid-template-columns:repeat(6,minmax(0,1fr))}.desktop-widget-frame[data-orientation=vertical]>.review-abilities{grid-template-columns:1fr}.desktop-widget-frame[data-density=compact] .compact-detail{display:none}.desktop-widget-frame[data-density=compact]>.vitals-widget,.desktop-widget-frame[data-density=compact]>.sheet-skills,.desktop-widget-frame[data-density=compact]>.saving-throws-widget,.desktop-widget-frame[data-density=compact]>[data-widget=rests],.desktop-widget-frame[data-density=compact]>[data-widget=spell-slots],.desktop-widget-frame[data-density=compact]>[data-widget=feature-resources],.desktop-widget-frame[data-density=compact]>[data-widget=adventure-trackers],.desktop-widget-frame[data-density=compact]>[data-widget=conditions],.desktop-widget-frame[data-density=compact]>[data-widget=defenses],.desktop-widget-frame[data-density=compact]>.utility-widget,.desktop-widget-frame[data-density=compact]>.combat-cheat-sheet,.desktop-widget-frame[data-density=compact]>.review-abilities{padding:9px}.desktop-widget-frame[data-density=compact] .identity-widget>header{gap:8px;padding:9px 12px}.desktop-widget-frame[data-density=compact] .identity-widget header h2{font-size:21px}.desktop-widget-frame[data-density=compact] .identity-strip>div,.desktop-widget-frame[data-density=compact] .training-strip>div{padding:7px 9px}.desktop-widget-frame[data-density=compact] .identity-strip small,.desktop-widget-frame[data-density=compact] .training-strip small{font-size:10px}.desktop-widget-frame[data-density=compact] .identity-strip strong,.desktop-widget-frame[data-density=compact] .training-strip strong{font-size:var(--text-tiny);margin-top:2px;line-height:1.3}.desktop-widget-frame[data-density=compact] .review-abilities{gap:4px}.desktop-widget-frame[data-density=compact] .review-abilities>:is(div,button){padding:6px 3px}.desktop-widget-frame[data-density=compact] .review-abilities strong{margin:2px 0 0;font-size:20px}.desktop-widget-frame[data-density=compact] .sheet-skills>header{padding:3px 0 7px}.desktop-widget-frame[data-density=compact] .sheet-skills>header strong{font-size:17px}.desktop-widget-frame[data-density=compact] .sheet-skill-grid{gap:3px}.desktop-widget-frame[data-density=compact] .sheet-skill-grid>:is(div,button){grid-template-columns:17px minmax(0,1fr) auto 13px;gap:6px;min-height:31px;padding:4px 7px}.desktop-widget-frame[data-density=compact] .skill-rank{width:16px;height:16px;font-size:10px}.desktop-widget-frame[data-density=compact] .sheet-skill-grid b{font-size:15px}.desktop-widget-frame[data-density=compact] .saving-throws-widget h2{margin-bottom:8px;font-size:19px}.desktop-widget-frame[data-density=compact] .saving-throw-list{gap:3px}.desktop-widget-frame[data-density=compact] .saving-throw-list>:is(div,button){grid-template-columns:17px 1fr auto 13px;gap:5px;padding:5px 6px}.desktop-widget-frame[data-density=compact] .saving-throw-list>:is(div,button)>span{width:16px;height:16px}.desktop-widget-frame[data-density=compact] .vital-primary,.desktop-widget-frame[data-density=compact] .vital-quick-stats{gap:4px;margin-top:4px}.desktop-widget-frame[data-density=compact] .vital-ac{min-height:48px;padding:5px 7px}.desktop-widget-frame[data-density=compact] .vital-ac>strong{font-size:25px}.desktop-widget-frame[data-density=compact] .vital-hp{padding:6px 7px}.desktop-widget-frame[data-density=compact] .vital-quick-stats>div{padding:6px}.desktop-widget-frame[data-density=compact] .vital-quick-stats strong{margin-top:2px;font-size:16px}.desktop-widget-frame[data-density=compact] .combat-section-heading{padding:9px 11px 6px}.desktop-widget-frame[data-density=compact] .combat-section-heading h2{font-size:19px}.desktop-widget-frame[data-density=compact] .combat-cheat-sheet .combat-section-heading>small,.desktop-widget-frame[data-density=compact] .combat-cheat-sheet header .eyebrow{display:none}.desktop-widget-frame[data-density=compact] .attack-list{gap:3px;padding:0 9px 9px}.desktop-widget-frame[data-density=compact] .attack-list>div{grid-template-columns:minmax(110px,1fr) 42px minmax(90px,auto) 62px;gap:7px;padding:6px 7px}.desktop-widget-frame[data-density=compact] .attack-icon{display:none}.desktop-widget-frame[data-density=compact] .attack-list strong,.desktop-widget-frame[data-density=compact] .attack-detail-trigger{font-size:var(--text-xs)}.desktop-widget-frame[data-density=compact] .combat-cheat-columns>section{padding:0 9px 9px}.desktop-widget-frame[data-density=compact] .combat-cheat-columns>section>header{gap:6px;margin-bottom:5px}.desktop-widget-frame[data-density=compact] .combat-cheat-columns>section>header>span{width:24px;height:24px;font-size:10px}.desktop-widget-frame[data-density=compact] .combat-cheat-columns h3{font-size:15px}.desktop-widget-frame[data-density=compact] .combat-option-list{gap:3px}.desktop-widget-frame[data-density=compact] .combat-option-list article{padding:5px 7px}.desktop-widget-frame[data-density=compact] .rest-actions{gap:4px;margin:-2px 0 8px}.desktop-widget-frame[data-density=compact]>[data-widget=rests]>h2,.desktop-widget-frame[data-density=compact]>[data-widget=spell-slots]>h2,.desktop-widget-frame[data-density=compact]>[data-widget=feature-resources]>h2,.desktop-widget-frame[data-density=compact]>[data-widget=adventure-trackers]>h2,.desktop-widget-frame[data-density=compact]>[data-widget=conditions]>h2,.desktop-widget-frame[data-density=compact]>[data-widget=defenses]>h2{margin:0 0 7px;font-size:18px}.desktop-widget-frame[data-density=compact] .rest-actions button{min-height:36px;padding:6px 7px}.desktop-widget-frame[data-density=compact] .resource-list{gap:4px}.desktop-widget-frame[data-density=compact] .resource-list>div{padding:7px}.desktop-widget-frame[data-density=compact] .resource-pips{margin-block:5px}.desktop-widget-frame[data-density=compact] .resource-list footer{justify-content:flex-end}.desktop-widget-frame[data-density=compact] .resource-list footer button{min-height:25px;padding:0 6px}.desktop-widget-frame[data-density=compact] .adventure-trackers{gap:4px}.desktop-widget-frame[data-density=compact] .adventure-trackers>div,.desktop-widget-frame[data-density=compact] .adventure-trackers>label{padding:6px 7px}.desktop-widget-frame[data-density=compact] .death-saves{margin-top:9px;padding-top:8px}.desktop-widget-frame[data-density=compact] .death-saves>div{margin-bottom:5px}.desktop-widget-frame[data-density=compact] .condition-list{gap:3px;margin:6px 0}.desktop-widget-frame[data-density=compact] .condition-list button{padding:3px 5px}.desktop-widget-frame[data-density=compact] .concentration-tracker,.desktop-widget-frame[data-density=compact] .active-state-list>div,.desktop-widget-frame[data-density=compact] .effect-group-list section span{padding:6px 7px}.desktop-widget-frame[data-density=compact] .active-state-list,.desktop-widget-frame[data-density=compact] .effect-group-list{gap:5px;margin-bottom:8px}.desktop-widget-frame[data-density=compact] .active-state-helper,.desktop-widget-frame[data-density=compact] .active-state-list span small,.desktop-widget-frame[data-density=compact] .effect-group-list small{display:none}.desktop-widget-frame[data-density=compact] .favorite-spell-list{gap:4px;margin-top:6px}.desktop-widget-frame[data-density=compact] .favorite-spell-list .sheet-spell-card{padding:7px}.desktop-widget-frame[data-density=compact] .sheet-spell-detail-trigger small,.desktop-widget-frame[data-density=compact] .sheet-spell-tags{display:none}.desktop-widget-frame[data-density=compact] .spell-cast-control{gap:5px;margin-top:6px;padding:6px}.desktop-widget-frame[data-density=compact] .utility-widget{gap:7px;min-height:0}.desktop-widget-frame[data-density=compact] .utility-widget-title{padding-bottom:4px;font-size:16px}.desktop-widget-frame[data-density=compact] .utility-time{font-size:25px}.desktop-widget-frame[data-density=compact] .utility-widget[data-widget=clock]>small,.desktop-widget-frame[data-density=compact] .initiative-empty{display:none}.desktop-widget-frame[data-density=compact] .initiative-tracker-widget h2{font-size:18px}.desktop-widget-frame[data-density=compact] .initiative-list{gap:2px}.desktop-widget-frame[data-density=compact] .utility-widget .initiative-entry,.desktop-widget-frame[data-density=compact] .utility-widget .initiative-remove{min-height:26px}.desktop-widget-frame[data-density=compact] .utility-widget[data-widget=session-notes] textarea{min-height:70px}.campaign-shop-workspace{padding:24px clamp(18px,3vw,42px) 50px}.campaign-shop-heading,.player-shops>header,.character-wishlist>header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.campaign-shop-heading h2,.player-shops>header h2,.character-wishlist>header h2{font:25px var(--font-display);align-items:center;gap:8px;margin:0;display:flex}.campaign-shop-heading p:last-child,.player-shops>header p:last-child,.character-wishlist>header p:last-child{color:var(--muted);font-size:var(--text-sm);margin:5px 0 0}.campaign-shop-stack{gap:14px;display:grid}.campaign-shop-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.campaign-shop-card.closed{opacity:.78}.campaign-shop-card>header{border-bottom:1px solid var(--line);background:var(--gold-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding:17px 19px;display:flex}.campaign-shop-card h3{font:22px var(--font-display);margin:4px 0 1px}.campaign-shop-card header small,.campaign-shop-items small{color:var(--muted);text-transform:capitalize}.campaign-shop-card>p{color:var(--muted);font-size:var(--text-sm);margin:0;padding:13px 19px}.campaign-shop-status{color:var(--muted);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:5px;font-weight:800;display:inline-flex}.campaign-shop-status.open{color:var(--success)}.campaign-shop-actions{align-items:center;gap:6px;display:flex}.campaign-shop-items{display:grid}.campaign-shop-items>div{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto minmax(90px,auto);align-items:center;gap:18px;min-height:58px;padding:9px 19px;display:grid}.campaign-shop-items>div:first-child{border-top:0}.campaign-shop-items span{gap:2px;min-width:0;display:grid}.campaign-shop-items strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-shop-items b{color:var(--muted)}.campaign-shop-items em{color:var(--gold);text-align:right;font-style:normal;font-weight:800}.player-shops,.character-wishlist{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:420px;padding:22px}.campaign-shop-editor{width:min(900px,100vw - 32px)}.campaign-shop-editor-scroll{gap:13px;max-height:min(68vh,720px);padding:18px;display:grid;overflow:auto}.campaign-shop-editor-scroll>label{font-size:var(--text-xs);gap:6px;font-weight:700;display:grid}.campaign-shop-editor-scroll input,.campaign-shop-editor-scroll textarea,.campaign-shop-editor-scroll select,.wishlist-add-controls input,.wishlist-add-controls select{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:7px;padding:9px 10px}.campaign-shop-editor-scroll textarea{resize:vertical}.campaign-shop-open-toggle{border:1px solid var(--line);background:var(--gold-soft);border-radius:8px;align-items:center;padding:12px;grid-template-columns:auto minmax(0,1fr)!important}.campaign-shop-open-toggle input{width:auto}.campaign-shop-open-toggle span{gap:2px;display:grid}.campaign-shop-open-toggle small{color:var(--muted);font-weight:400}.campaign-shop-editor fieldset{border:1px solid var(--line);border-radius:9px;gap:10px;margin:0;padding:13px;display:grid}.campaign-shop-editor legend{padding:0 6px;font-weight:800}.campaign-shop-editor legend span{color:var(--gold)}.campaign-shop-stock-editor{gap:7px;display:grid}.campaign-shop-stock-editor>div{grid-template-columns:minmax(180px,1fr) 90px 100px 75px auto;align-items:end;gap:7px;display:grid}.campaign-shop-stock-editor label{color:var(--muted);font-size:var(--text-micro);gap:3px;display:grid}.campaign-shop-stock-item{align-self:center;min-width:0}.campaign-shop-stock-item strong,.campaign-shop-stock-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.campaign-shop-stock-item small{color:var(--muted);font-size:var(--text-micro);text-transform:capitalize;margin-top:3px}.character-wishlist>header>span{color:var(--gold);background:var(--gold-soft);font-size:var(--text-xs);border-radius:999px;padding:5px 9px;font-weight:800}.wishlist-add-controls{gap:8px;margin-bottom:17px;display:grid}.wishlist-add-controls form{grid-template-columns:minmax(0,1fr) 76px auto;gap:7px;display:grid}.wishlist-add-controls form:last-child{grid-template-columns:minmax(0,1fr) auto}.wishlist-catalog-launch{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.wishlist-catalog-launch>span{min-width:0}.wishlist-catalog-launch strong,.wishlist-catalog-launch small{display:block}.wishlist-catalog-launch strong{font-size:var(--text-xs)}.wishlist-catalog-launch small{color:var(--muted);font-size:var(--text-micro);margin-top:3px}.wishlist-catalog-launch .primary-button{flex:none}.wishlist-entry-list{gap:7px;display:grid}.wishlist-entry-list article{border:1px solid var(--line);background:var(--surface-raised);border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;display:grid}.wishlist-kind{width:34px;height:34px;color:var(--gold);background:var(--gold-soft);border-radius:50%;place-items:center;display:grid}.wishlist-entry-list article>div{gap:2px;min-width:0;display:grid}.wishlist-entry-list strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wishlist-entry-list small{color:var(--muted);text-transform:capitalize}.wishlist-fulfilled{color:var(--muted);font-size:var(--text-xs);margin-top:13px}.wishlist-fulfilled summary{cursor:pointer;font-weight:800}.wishlist-fulfilled>div{gap:5px;margin-top:8px;display:grid}.wishlist-fulfilled span{align-items:center;gap:6px;display:flex}.homebrew-page{background:radial-gradient(circle at 75% 10%, #c3a16614, transparent 22%), var(--canvas);grid-column:1/-1;min-width:0}.homebrew-shell{grid-template-columns:246px minmax(0,1fr);min-height:calc(100vh - 72px);display:grid}.homebrew-sidebar{border-right:1px solid var(--line);background:color-mix(in srgb, var(--forest-dark) 88%, var(--surface));flex-direction:column;align-self:start;width:100%;min-width:0;height:100vh;min-height:calc(100vh - 72px);padding:27px 16px 20px;display:flex;position:sticky;top:0}.homebrew-sidebar>header{border-bottom:1px solid var(--line-soft);align-items:center;gap:11px;padding:0 9px 23px;display:flex}.homebrew-sidebar-mark{width:37px;height:37px;color:var(--gold);border:1px solid var(--line-strong);background:var(--forest);border-radius:7px;flex:none;place-items:center;display:grid}.homebrew-sidebar>header small,.homebrew-sidebar>header strong{display:block}.homebrew-sidebar>header small{color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.14em;text-transform:uppercase}.homebrew-sidebar>header strong{font:20px var(--font-display);margin-top:2px}.homebrew-sidebar nav{gap:4px;padding-top:18px;display:grid}.homebrew-sidebar nav>p{color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.13em;text-transform:uppercase;margin:15px 10px 5px}.homebrew-sidebar nav button{width:100%;min-height:41px;color:var(--muted);text-align:left;cursor:pointer;font:750 var(--text-xs) var(--font-ui);background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;display:grid}.homebrew-sidebar nav button:hover{color:var(--ink);background:#ffffff09}.homebrew-sidebar nav button.active{color:var(--ink);border-color:color-mix(in srgb, var(--gold) 30%, var(--line));background:var(--gold-soft)}.homebrew-sidebar nav button.active svg{color:var(--gold)}.homebrew-sidebar nav button em{min-width:24px;color:var(--muted);text-align:center;background:var(--surface-raised);font:normal 700 var(--text-micro) var(--font-ui);border-radius:100px;padding:3px 6px}.homebrew-sidebar-summary{border:1px solid var(--line);background:#ffffff06;border-radius:7px;margin-top:auto;padding:15px}.homebrew-sidebar-summary small,.homebrew-sidebar-summary strong,.homebrew-sidebar-summary span{display:block}.homebrew-sidebar-summary small{color:var(--gold);font:800 var(--text-micro) var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.homebrew-sidebar-summary strong{font:30px var(--font-display);margin:5px 0 2px}.homebrew-sidebar-summary span{color:var(--muted);font:var(--text-tiny) var(--font-ui)}.homebrew-workspace{width:100%;min-width:0;max-width:1500px;padding:48px clamp(28px,4.5vw,70px) 70px}.homebrew-view-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px;padding-bottom:25px;display:flex}.homebrew-view-header h1{color:var(--ink);font:clamp(38px, 4vw, 56px)/1 var(--font-display);margin:0}.homebrew-view-header>div:first-child>p:last-child{max-width:640px;color:var(--ink-soft);font:var(--text-sm)/1.6 var(--font-ui);margin:12px 0 0}.homebrew-view-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.homebrew-view-actions .primary-button,.homebrew-view-actions .secondary-button{white-space:nowrap}.homebrew-workspace .homebrew-transfer-notice,.homebrew-workspace .homebrew-transfer-error{max-width:none;margin:0 0 22px}.homebrew-dashboard{gap:30px;display:grid}.homebrew-dashboard-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.homebrew-dashboard-summary>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;min-width:0;padding:20px}.homebrew-dashboard-summary small,.homebrew-dashboard-summary strong,.homebrew-dashboard-summary span{display:block}.homebrew-dashboard-summary small{color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.homebrew-dashboard-summary strong{color:var(--gold);font:34px var(--font-display);margin:7px 0 3px}.homebrew-dashboard-summary span{color:var(--muted);font:var(--text-xs) var(--font-ui)}.homebrew-dashboard-catalogs>header{justify-content:space-between;align-items:end;gap:16px;margin-bottom:13px;display:flex}.homebrew-dashboard-catalogs>header h2{font:27px var(--font-display);margin:0}.homebrew-dashboard-catalogs>header>span{color:var(--muted);font:var(--text-xs) var(--font-ui)}.homebrew-dashboard-catalogs>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.homebrew-dashboard-catalogs button{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;min-height:104px;padding:17px;display:grid}.homebrew-dashboard-catalogs button:hover{border-color:var(--line-strong);background:var(--surface-hover)}.homebrew-dashboard-catalogs button>span:nth-child(2){min-width:0}.homebrew-dashboard-catalogs button strong,.homebrew-dashboard-catalogs button small,.homebrew-dashboard-catalogs button em{display:block}.homebrew-dashboard-catalogs button strong{font:20px var(--font-display)}.homebrew-dashboard-catalogs button small{color:var(--muted);font:var(--text-xs)/1.4 var(--font-ui);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.homebrew-dashboard-catalogs button em{color:var(--gold);font:normal 750 var(--text-micro) var(--font-ui);letter-spacing:.04em;text-transform:uppercase;margin-top:8px}.homebrew-dashboard-catalogs button>svg{color:var(--muted)}.homebrew-hero{justify-content:space-between;align-items:end;gap:28px;max-width:1200px;margin:0 auto 28px;display:flex}.homebrew-hero h1{color:var(--ink);font:clamp(42px, 5vw, 68px)/1 var(--font-display);margin:0}.homebrew-hero>div>p:last-child{max-width:650px;color:var(--ink-soft);margin:16px 0 0;line-height:1.65}.homebrew-import-button{cursor:pointer;position:relative}.homebrew-import-button[aria-disabled=true]{opacity:.55;pointer-events:none}.homebrew-import-button input{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.homebrew-transfer-notice{max-width:1200px;color:var(--success);border:1px solid color-mix(in srgb, var(--sage) 45%, var(--line));background:var(--success-soft);font-size:var(--text-sm);border-radius:5px;margin:-12px auto 24px;padding:10px 13px}.homebrew-transfer-error{max-width:1200px;margin:-12px auto 24px}.homebrew-bulk-import-report{color:var(--success);border:1px solid color-mix(in srgb, var(--success) 45%, var(--line));background:var(--success-soft);font:var(--text-sm)/1.5 var(--font-ui);border-radius:6px;margin:0 0 22px;padding:12px 14px}.homebrew-bulk-import-report.has-errors{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--danger-soft)}.homebrew-bulk-import-report strong{display:block}.homebrew-bulk-import-report ul{margin:7px 0 0;padding-left:19px}.homebrew-bulk-import-report li+li{margin-top:3px}.homebrew-kind-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;max-width:1200px;margin:0 auto 34px;display:grid}.homebrew-kind-card{border:1px solid var(--line-strong);background:var(--gold-soft);border-radius:8px;grid-column:span 2;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;min-width:0;padding:22px;display:grid}.homebrew-kind-card:nth-last-child(-n+2){grid-column:span 3}.homebrew-kind-icon{width:44px;height:44px;color:var(--gold);border:1px solid var(--line-strong);background:var(--forest);border-radius:50%;place-items:center;display:grid}.homebrew-kind-card small{color:var(--gold);font:800 var(--text-micro) var(--font-ui);letter-spacing:.13em;text-transform:uppercase}.homebrew-kind-card h2{font:23px var(--font-display);margin:3px 0 5px}.homebrew-kind-card p{color:var(--muted);font-size:var(--text-sm);margin:0}.homebrew-kind-card>strong{color:var(--gold);font:28px var(--font-display)}.homebrew-kind-actions{flex-wrap:wrap;grid-column:2/-1;justify-self:start;align-items:center;gap:7px;display:flex}.homebrew-kind-actions .secondary-button{white-space:nowrap}.homebrew-library{gap:34px;max-width:1200px;margin:0 auto;display:grid}.homebrew-species-library{border-top:1px solid var(--line);margin-top:46px;padding-top:36px}.homebrew-section>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;margin-bottom:14px;padding-bottom:12px;display:flex}.homebrew-section>header h2{font:25px var(--font-display);margin:0}.homebrew-section>header p{color:var(--muted);font-size:var(--text-sm);margin:6px 0 0;line-height:1.5}.homebrew-section>header>span{color:var(--gold);font:22px var(--font-display)}.homebrew-monster-editor{width:min(980px,100vw - 32px)}.homebrew-monster-field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.homebrew-monster-field-grid label{gap:5px;display:grid}.homebrew-monster-abilities{gap:6px;display:grid}.homebrew-monster-abilities>div{grid-template-columns:48px 90px 48px minmax(100px,1fr);align-items:center;gap:8px;display:grid}.homebrew-monster-abilities>div>span{color:var(--gold);text-align:center;font-weight:800}.homebrew-empty{max-width:1200px;color:var(--muted);text-align:center;border:1px dashed var(--line);font-size:var(--text-sm);background:#ffffff06;border-radius:7px;margin:0 auto;padding:28px}.homebrew-entry-browser{gap:9px;display:grid}.homebrew-list-toolbar{justify-content:space-between;align-items:center;gap:14px;min-height:44px;display:flex}.homebrew-list-toolbar>span{color:var(--muted);font:700 var(--text-tiny) var(--font-ui);flex:none}.homebrew-list-filters{align-items:center;gap:8px;min-width:0;display:flex}.homebrew-list-search{width:min(380px,100%);min-height:39px;color:var(--muted);border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;align-items:center;gap:8px;padding:0 11px;display:flex}.homebrew-list-search:focus-within{border-color:var(--line-strong)}.homebrew-list-search input{width:100%;min-width:0;color:var(--ink);font:var(--text-sm) var(--font-ui);background:0 0;border:0;outline:0;padding:0}.homebrew-status-filter{min-height:39px;color:var(--ink-soft);border:1px solid var(--line);background-color:var(--surface-raised);font:700 var(--text-xs) var(--font-ui);cursor:pointer;border-radius:5px;padding:0 32px 0 11px}.homebrew-status-filter:focus{border-color:var(--line-strong)}.homebrew-bulk-toolbar{border:1px solid var(--line);background:#ffffff05;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:7px 10px;display:flex}.homebrew-bulk-toolbar.active{border-color:color-mix(in srgb, var(--gold) 32%, var(--line));background:var(--gold-soft)}.homebrew-bulk-toolbar>label{color:var(--ink-soft);font:750 var(--text-xs) var(--font-ui);cursor:pointer;align-items:center;gap:9px;display:flex}.homebrew-bulk-toolbar input,.homebrew-row-select input{accent-color:var(--gold)}.homebrew-bulk-toolbar>div{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.homebrew-bulk-toolbar button,.homebrew-row-actions button,.homebrew-row-actions a{min-height:31px;color:var(--sage);border:1px solid var(--line);background:var(--surface);font:700 var(--text-tiny) var(--font-ui);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 9px;text-decoration:none;display:inline-flex}.homebrew-bulk-toolbar button.danger,.homebrew-row-actions button.danger{color:var(--danger)}.homebrew-bulk-toolbar button:disabled,.homebrew-row-actions button:disabled{opacity:.45;cursor:not-allowed}.homebrew-clear-selection{color:var(--muted)!important}.homebrew-entry-list-shell{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;overflow:hidden}.homebrew-list-columns{min-height:34px;color:var(--muted);border-bottom:1px solid var(--line);font:800 var(--text-micro) var(--font-ui);letter-spacing:.08em;text-transform:uppercase;background:#ffffff05;grid-template-columns:minmax(280px,1.15fr) minmax(230px,.85fr);align-items:center;gap:20px;padding:0 15px;display:grid}.homebrew-list-columns.editable{grid-template-columns:24px minmax(260px,1.15fr) minmax(210px,.85fr) 224px}.homebrew-entry-list>article{border-bottom:1px solid var(--line);grid-template-columns:minmax(280px,1.15fr) minmax(230px,.85fr);align-items:center;gap:20px;min-width:0;min-height:92px;padding:12px 15px;display:grid}.homebrew-entry-list>article.editable{grid-template-columns:24px minmax(260px,1.15fr) minmax(210px,.85fr) 224px}.homebrew-entry-list>article:last-child{border-bottom:0}.homebrew-entry-list>article.selected{background:var(--gold-soft)}.homebrew-row-select{cursor:pointer;place-items:center;width:24px;height:32px;display:grid}.homebrew-row-main{align-items:center;gap:13px;min-width:0;display:flex}.homebrew-row-copy{min-width:0}.homebrew-row-copy>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.homebrew-row-copy h3{font:20px var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.homebrew-row-copy>p{color:var(--muted);font:var(--text-xs)/1.45 var(--font-ui);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:7px 0 0;display:-webkit-box;overflow:hidden}.homebrew-campaign-usage{min-width:0;color:var(--sage);font:700 var(--text-micro) var(--font-ui);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;margin-top:6px;display:flex;overflow:hidden}.homebrew-campaign-usage svg{flex:none}.homebrew-row-artwork{border:1px solid var(--line);background:var(--surface);border-radius:5px;flex:none;width:64px;height:64px;overflow:hidden}.homebrew-row-artwork img{object-fit:cover;width:100%;height:100%;display:block}.homebrew-row-details{min-width:0}.homebrew-row-details dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin:0;display:grid}.homebrew-row-details dl>div{min-width:0}.homebrew-row-details dt{color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.04em;text-transform:uppercase}.homebrew-row-details dd{color:var(--ink-soft);font:var(--text-xs) var(--font-ui);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;overflow:hidden}.homebrew-row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;width:224px;display:flex}.homebrew-row-actions .homebrew-row-primary-action{color:var(--ink);border-color:color-mix(in srgb, var(--sage) 38%, var(--line));background:color-mix(in srgb, var(--forest) 78%, var(--surface))}.homebrew-row-actions .homebrew-row-icon-action{width:32px;min-width:32px;padding:0}.homebrew-background-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.homebrew-background-card{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;flex-direction:column;min-width:0;padding:18px;display:flex}.homebrew-species-card-artwork{aspect-ratio:3/2;border-bottom:1px solid var(--line);background:var(--surface);border-radius:7px 7px 0 0;margin:-18px -18px 16px;overflow:hidden}.homebrew-species-card-artwork img{object-fit:cover;object-position:50% 0%;width:100%;height:100%;display:block}.homebrew-background-card>header{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.homebrew-background-card h3{width:100%;font:21px var(--font-display);margin:2px 0 0}.homebrew-status{border:1px solid var(--line);color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.08em;text-transform:uppercase;border-radius:100px;padding:3px 7px}.homebrew-status.published{color:var(--success);border-color:color-mix(in srgb, var(--success) 45%, var(--line));background:var(--success-soft)}.homebrew-status.draft{color:var(--gold);background:var(--gold-soft)}.homebrew-background-card>p{min-height:63px;color:var(--ink-soft);font-size:var(--text-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:13px 0 15px;line-height:1.55;display:-webkit-box;overflow:hidden}.homebrew-background-card dl{gap:8px;margin:0;display:grid}.homebrew-background-card dl>div{grid-template-columns:78px 1fr;gap:8px;display:grid}.homebrew-background-card dt{color:var(--muted);font:800 var(--text-micro) var(--font-ui);text-transform:uppercase}.homebrew-background-card dd{min-width:0;color:var(--ink-soft);font-size:var(--text-xs);margin:0}.homebrew-background-card>footer{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:16px;display:flex}.homebrew-background-card>footer button,.homebrew-background-card>footer a{min-height:31px;color:var(--sage);border:1px solid var(--line);background:var(--surface);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:0 9px;text-decoration:none;display:inline-flex}.homebrew-background-card>footer button.danger{color:var(--danger)}.homebrew-background-card>footer button:disabled{opacity:.45;cursor:not-allowed}.homebrew-editor{border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;flex-direction:column;width:min(760px,100vw - 32px);max-height:min(900px,100vh - 40px);display:flex;overflow:hidden;box-shadow:0 28px 80px #0009}.homebrew-editor>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.homebrew-editor>header h2{font:27px var(--font-display);margin:0}.homebrew-editor-scroll{gap:20px;min-height:0;padding:22px 24px;display:grid;overflow-y:auto}.homebrew-import-review{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 70%, var(--line));background:color-mix(in srgb, var(--danger) 10%, var(--surface-raised));border-radius:5px;padding:13px 15px}.homebrew-import-review strong,.homebrew-import-review span{display:block}.homebrew-import-review p{color:var(--ink-soft);font-size:var(--text-sm);margin:4px 0 7px}.homebrew-import-review span{font-size:var(--text-xs);line-height:1.5}.homebrew-editor label{color:var(--ink-soft);font:800 var(--text-xs) var(--font-ui);gap:7px;display:grid}.homebrew-editor input,.homebrew-editor textarea,.homebrew-editor select{width:100%;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);font:var(--text-sm) var(--font-ui);border-radius:4px;padding:10px 11px}.homebrew-editor textarea{resize:vertical;line-height:1.55}.homebrew-species-artwork{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;grid-template-columns:minmax(210px,42%) minmax(0,1fr);align-items:center;gap:16px;padding:15px;display:grid}.homebrew-species-artwork-preview{aspect-ratio:3/2;color:var(--gold);border:1px dashed var(--line-strong);background:var(--surface);border-radius:5px;place-items:center;display:grid;overflow:hidden}.homebrew-species-artwork-preview img{object-fit:cover;object-position:50% 0%;width:100%;height:100%;display:block}.homebrew-species-artwork>div:last-child>strong{color:var(--ink);font:19px var(--font-display)}.homebrew-species-artwork p{color:var(--muted);font-size:var(--text-xs);margin:6px 0 12px;line-height:1.5}.homebrew-species-artwork>div:last-child>div{flex-wrap:wrap;gap:7px;display:flex}.homebrew-species-artwork label.secondary-button,.homebrew-remove-artwork,.homebrew-artwork-prompt>button{cursor:pointer;align-items:center;gap:6px;width:auto;min-height:33px;padding:0 10px;display:inline-flex}.homebrew-species-artwork label.secondary-button input{display:none}.homebrew-remove-artwork{color:var(--danger);border:1px solid var(--line);background:var(--surface);font-size:var(--text-tiny);border-radius:4px}.homebrew-species-artwork small{color:var(--muted);font-size:var(--text-micro);margin-top:9px;display:block}.homebrew-artwork-prompt{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;padding:15px}.homebrew-artwork-prompt summary{color:var(--ink);cursor:pointer;font-weight:800}.homebrew-artwork-prompt>p{color:var(--muted);font-size:var(--text-xs);margin:12px 0;line-height:1.5}.homebrew-artwork-prompt pre{max-height:330px;color:var(--ink-soft);border:1px solid var(--line);background:var(--surface);font:var(--text-tiny)/1.55 ui-monospace, SFMono-Regular, Consolas, monospace;white-space:pre-wrap;border-radius:4px;margin:0 0 11px;padding:13px;overflow:auto}.homebrew-artwork-prompt>button{color:var(--sage);border:1px solid var(--line);background:var(--surface);font-size:var(--text-tiny);border-radius:4px}.homebrew-editor-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.homebrew-number-input{display:block;position:relative}.homebrew-number-input input{padding-right:48px}.homebrew-number-input small{color:var(--muted);font-size:var(--text-tiny);position:absolute;top:50%;right:12px;translate:0 -50%}.homebrew-editor fieldset{border:1px solid var(--line);border-radius:6px;min-width:0;margin:0;padding:16px}.homebrew-editor legend{width:100%;color:var(--ink);justify-content:space-between;gap:15px;padding:0 6px;font-weight:800;display:flex}.homebrew-editor legend span{color:var(--gold)}.homebrew-editor fieldset>p{color:var(--muted);font-size:var(--text-xs);margin:0 0 11px}.homebrew-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.homebrew-choice-grid.skills{grid-template-columns:repeat(3,minmax(0,1fr))}.homebrew-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-choice-grid button{min-height:36px;color:var(--muted);border:1px solid var(--line);background:var(--surface);font-size:var(--text-xs);cursor:pointer;border-radius:4px;padding:6px 9px}.homebrew-choice-grid button.selected{color:var(--ink);border-color:var(--gold);background:var(--gold-soft)}.homebrew-trait-list{gap:11px;display:grid}.homebrew-trait-list>article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;gap:11px;padding:14px;display:grid}.homebrew-trait-list>article>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.homebrew-trait-list>article>header strong{color:var(--gold);font-size:var(--text-xs)}.homebrew-trait-list>article>header button,.homebrew-add-trait{color:var(--danger);border:1px solid var(--line);background:var(--surface);font-size:var(--text-tiny);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:6px 8px;display:inline-flex}.homebrew-trait-list>article>header button:disabled,.homebrew-add-trait:disabled{opacity:.35;cursor:not-allowed}.homebrew-add-trait{color:var(--sage);margin-top:11px}.homebrew-fixed-equipment{border:1px solid var(--line);background:var(--gold-soft);border-radius:6px;padding:16px}.homebrew-fixed-equipment small,.homebrew-fixed-equipment strong{display:block}.homebrew-fixed-equipment small{color:var(--muted);font:800 var(--text-micro) var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.homebrew-fixed-equipment strong{color:var(--gold);font:25px var(--font-display);margin-top:4px}.homebrew-fixed-equipment p{color:var(--muted);font-size:var(--text-xs);margin:5px 0 0}.homebrew-editor>footer{border-top:1px solid var(--line);background:var(--surface-raised);flex-wrap:wrap;justify-content:end;gap:8px;padding:15px 24px;display:flex}.homebrew-campaign-dialog{width:min(560px,100vw - 32px)}.homebrew-campaign-dialog>header{align-items:flex-start}.homebrew-campaign-dialog>header p:last-child{color:var(--muted);font:var(--text-sm) var(--font-ui);margin:5px 0 0}.homebrew-campaign-options{gap:8px;min-height:0;max-height:min(55vh,480px);padding:18px 24px;display:grid;overflow-y:auto}.homebrew-campaign-options>label{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:12px 13px;display:grid}.homebrew-campaign-options>label:has(input:checked){border-color:color-mix(in srgb, var(--gold) 45%, var(--line));background:var(--gold-soft)}.homebrew-campaign-options input{width:auto;accent-color:var(--gold)}.homebrew-campaign-options span{gap:3px;min-width:0;display:grid}.homebrew-campaign-options strong,.homebrew-campaign-options small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.homebrew-campaign-options small{color:var(--muted);font-weight:500}.homebrew-campaign-dialog>.form-error{margin:0 24px 14px}.homebrew-clipboard-error{color:var(--danger);font:var(--text-xs)/1.45 var(--font-ui);text-align:right;flex:1 0 100%;order:-1}@media (width>=1161px){.character-sheet-preview header h2{font-size:30px}.identity-strip strong{font-size:16px}.character-description-panel p{font-size:15px}.review-abilities strong{font-size:24px}.attack-list .attack-name strong,.attack-detail-trigger{font-size:17px}}@media (width<=1280px) and (width>=1161px){.sheet-workspace,.layout-grid-overlay,.layout-grid-drop-overlay{column-gap:12px}}@media (width<=1160px){.sheet-workspace{grid-template-columns:repeat(12,minmax(0,1fr))}.desktop-widget-frame[data-widget-span="2"],.desktop-widget-frame[data-widget-span="3"],.desktop-widget-frame[data-widget-span="4"]{grid-column:auto/span 6!important}.desktop-widget-frame[data-widget-span="6"],.desktop-widget-frame[data-widget-span="8"],.desktop-widget-frame[data-widget-span="9"],.desktop-widget-frame[data-widget-span="12"]{grid-column:auto/span 12!important}.sheet-vitals-rail,.review-summary{max-height:none;position:static;overflow:visible}.sheet-vitals-rail .sheet-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1120px){.pack-pill{display:none}}@media (width<=980px){.topbar{gap:14px;padding:0 20px}.brand{min-width:180px}.pack-pill{display:none}.primary-navigation a{padding-inline:8px}.account-summary span{display:none}.auth-page{grid-template-columns:1fr 1fr}.auth-brand{padding:55px}.library-page{background:var(--canvas);grid-template-columns:1fr}.character-library{border-left:0;border-top:1px solid var(--line)}.builder-shell{grid-template-columns:210px minmax(0,1fr)}.dm-inspection-grid{grid-template-columns:1fr}.ability-grid{grid-template-columns:repeat(3,1fr)}.ability-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.origin-columns,.review-layout,.combat-sheet-layout,.starting-details-grid,.sheet-section-layout{grid-template-columns:1fr}.spell-slot-tracker .resource-list{grid-template-columns:repeat(2,minmax(0,1fr))}.option-card-grid,.origin-source-groups{max-height:310px}.inventory-catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-catalog-search{grid-column:1/-1}.homebrew-background-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-shell{grid-template-columns:1fr}.homebrew-sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;height:auto;min-height:0;padding:12px 18px;display:block;position:static}.homebrew-sidebar>header,.homebrew-sidebar-summary{display:none}.homebrew-sidebar nav{scrollbar-width:none;gap:5px;padding:0;display:flex;overflow-x:auto}.homebrew-sidebar nav::-webkit-scrollbar{display:none}.homebrew-sidebar nav>p{display:none}.homebrew-sidebar nav button{grid-template-columns:18px auto auto;width:auto;min-width:max-content}.homebrew-workspace{max-width:none}.homebrew-list-columns{display:none}.homebrew-entry-list>article.editable{grid-template-columns:24px minmax(0,1fr) auto}.homebrew-entry-list>article.editable .homebrew-row-details{grid-column:2}.homebrew-entry-list>article.editable .homebrew-row-actions{grid-area:1/3/span 2}.homebrew-kind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-kind-card,.homebrew-kind-card:nth-last-child(-n+2){grid-column:auto}.homebrew-kind-card:last-child:nth-child(odd){grid-column:1/-1}}@media (width<=720px){.campaign-shop-workspace{padding:18px 14px 40px}.campaign-shop-heading,.player-shops>header,.character-wishlist>header,.campaign-shop-card>header{flex-direction:column}.campaign-shop-actions{flex-wrap:wrap;width:100%}.campaign-shop-items>div{grid-template-columns:minmax(0,1fr) auto;gap:8px}.campaign-shop-items>div>em{text-align:left;grid-column:1/-1}.campaign-shop-stock-editor>div{grid-template-columns:minmax(0,1fr) 72px}.campaign-shop-stock-editor>div>label:nth-of-type(2),.campaign-shop-stock-editor>div>select:last-of-type{grid-row:2}.wishlist-add-controls form,.wishlist-add-controls form:last-child{grid-template-columns:1fr}.wishlist-catalog-launch{flex-direction:column;align-items:stretch}.wishlist-catalog-launch .primary-button{width:100%}.wishlist-entry-list article{grid-template-columns:auto minmax(0,1fr)}.wishlist-entry-list article>button{grid-column:2;justify-self:start}.homebrew-monster-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-monster-abilities>div{grid-template-columns:42px 70px 42px minmax(80px,1fr)}.dm-character-inspection{min-height:calc(100vh - 62px);padding:22px 16px 50px}.dm-inspection-header{grid-template-columns:1fr;align-items:start}.dm-inspection-actions{justify-content:flex-start}.dm-inspection-readonly{width:fit-content}.dm-inspection-vitals{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-inspection-abilities{grid-template-columns:repeat(3,minmax(0,1fr))}.dm-inspection-skills{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-inspection-panel-heading{flex-direction:column;align-items:flex-start}.dm-inspection-attacks>div{grid-template-columns:minmax(0,1fr) auto}.dm-inspection-attacks>div>span:last-child{text-align:left;grid-column:1/-1}.dm-inspection-inventory-list{grid-template-columns:1fr}.basics-character-identity{grid-template-columns:112px minmax(0,1fr);gap:13px}.basics-portrait-widget{width:112px}.topbar{gap:8px;height:62px;padding:0 10px}.brand{flex:none;width:38px;min-width:38px}.brand>span:last-child,.brand small,.workspace,.pack-pill{display:none}.primary-navigation{scrollbar-width:none;flex:1;min-width:0;overflow-x:auto}.primary-navigation::-webkit-scrollbar{display:none}.primary-navigation a{font-size:var(--text-micro);flex:none;padding:7px 8px}.account-summary{gap:5px;margin-left:0;padding-left:7px}.account-summary span{display:none}.auth-page{background:var(--canvas);padding:24px 0;display:block}.auth-brand{display:none}.auth-card{width:calc(100% - 32px);margin:0 auto;padding:28px 23px}.user-admin-grid,.campaign-layout{grid-template-columns:1fr}.campaign-administration{padding:40px 20px 55px}.campaign-library-hero{flex-direction:column;align-items:flex-start}.campaign-library-summary{justify-content:space-between;width:100%}.campaign-administration.focused.campaign-workspace-host{padding:0}.campaign-workspace-summary{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:16px}.campaign-workspace-summary .campaign-dm-mark{width:44px;height:44px}.campaign-workspace-title h1{font-size:27px}.campaign-workspace-title>p:last-child{white-space:normal;overflow:visible}.campaign-workspace-facts{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.campaign-workspace-facts>span{min-width:0;padding-inline:6px}.campaign-workspace-tabs{scrollbar-width:none;padding:6px;display:flex;overflow-x:auto}.campaign-workspace-tabs::-webkit-scrollbar{display:none}.campaign-workspace-tabs button{flex:1 0 auto;min-width:max-content}.campaign-workspace-section-heading{flex-direction:column;align-items:flex-start;padding:17px 16px}.campaign-workspace-section-heading .campaign-detail-actions{width:100%;margin:0}.campaign-workspace-section-heading .campaign-detail-actions button{flex:1}.spell-slot-tracker .resource-list,.campaign-character-create{grid-template-columns:1fr}.campaign-character-create .secondary-button{grid-column:auto}.homebrew-page{padding:0}.homebrew-workspace{padding:32px 18px 52px}.homebrew-view-header{flex-direction:column;align-items:flex-start;gap:18px}.homebrew-view-actions{width:100%}.homebrew-list-toolbar,.homebrew-list-filters{flex-direction:column;align-items:stretch}.homebrew-list-search,.homebrew-status-filter{width:100%}.homebrew-bulk-toolbar{flex-direction:column;align-items:stretch}.homebrew-bulk-toolbar>div{justify-content:flex-start}.homebrew-entry-list>article,.homebrew-entry-list>article.editable{grid-template-columns:24px minmax(0,1fr);gap:11px}.homebrew-entry-list>article:not(.editable){grid-template-columns:1fr}.homebrew-entry-list>article.editable .homebrew-row-main,.homebrew-entry-list>article.editable .homebrew-row-details,.homebrew-entry-list>article.editable .homebrew-row-actions{grid-area:auto/2}.homebrew-row-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-row-actions{justify-content:flex-start;width:auto;max-width:none}.homebrew-dashboard-summary,.homebrew-dashboard-catalogs>div{grid-template-columns:1fr}.homebrew-hero{flex-direction:column;align-items:stretch}.homebrew-hero .primary-button{align-self:flex-start}.homebrew-kind-grid{grid-template-columns:1fr}.homebrew-kind-card:last-child:nth-child(odd){grid-column:auto}.homebrew-background-grid{grid-template-columns:1fr}.homebrew-kind-card{grid-template-columns:auto minmax(0,1fr)}.homebrew-kind-card>strong,.homebrew-kind-actions{grid-column:2}.homebrew-editor-pair,.homebrew-species-artwork{grid-template-columns:1fr}.homebrew-choice-grid,.homebrew-choice-grid.skills{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-editor{border-radius:12px 12px 0 0;width:100%;max-height:92vh}.campaign-roster-row{flex-direction:column;align-items:stretch}.campaign-roster-actions select{flex:1;max-width:none}.campaign-detail>header{flex-wrap:wrap;align-items:flex-start}.campaign-detail-actions{flex-wrap:wrap;width:100%;margin-left:50px}.user-administration,.bug-report-administration{padding:40px 20px 55px}.bug-report-list{grid-template-columns:1fr}.campaign-dm-screen{min-height:calc(100vh - 62px);padding:22px 16px 50px}.campaign-dm-layout-toolbar{align-items:flex-start;min-height:0;padding:10px 12px}.campaign-dm-layout-toolbar>button,.campaign-dm-layout-actions{display:none}.campaign-dm-dashboard.react-grid-layout{gap:14px;display:grid;height:auto!important}.campaign-dm-dashboard.react-grid-layout>.campaign-dm-widget{width:auto!important;height:auto!important;position:static!important;transform:none!important}.campaign-dm-header{flex-direction:column;align-items:flex-start}.campaign-dm-hero{grid-template-columns:auto minmax(0,1fr)}.campaign-dm-stats{grid-column:1/-1;width:100%}.campaign-dm-stats span{flex:1;min-width:0}.campaign-dm-grid{grid-template-columns:1fr}.campaign-party-overview,.campaign-encounter,.campaign-loot,.campaign-dm-tool-widget{padding:18px 14px}.campaign-party-overview>header,.campaign-encounter>header,.campaign-loot>header,.campaign-dm-tool-widget>header{flex-direction:column;align-items:flex-start}.campaign-party-member{grid-template-columns:38px minmax(0,1fr) repeat(3,54px);gap:8px}.campaign-party-status{grid-column:2/-1}.campaign-party-open{display:none}.campaign-encounter-toolbar,.campaign-encounter-add{grid-template-columns:minmax(0,1fr) 92px}.campaign-encounter-toolbar>button,.campaign-encounter-add>button{grid-column:1/-1}.campaign-encounter-labels{display:none}.campaign-combatant{grid-template-columns:minmax(125px,1fr) 62px 68px}.campaign-combatant-name{grid-column:1/2}.campaign-combatant>input[aria-label$=initiative]{grid-column:2/3}.campaign-combatant-actions{grid-area:1/3/auto/4}.campaign-combatant-hp{grid-column:1/2}.campaign-combatant>input[aria-label$=armor\ class]{grid-column:2/3}.campaign-combatant>input[aria-label$=conditions]{grid-column:1/-1}.campaign-loot-list>article{grid-template-columns:34px minmax(0,1fr) 48px 34px;align-items:center}.campaign-loot-list>article>label:first-of-type{grid-column:1/4}.campaign-loot-quantity{grid-column:1/2}.campaign-loot-list>article>.primary-button{grid-column:2/4}.campaign-loot-list>article>.icon-button{grid-area:1/4}.builder-shell{min-height:calc(100vh - 62px);display:block}.builder-rail{height:auto;padding:12px 14px;position:static;overflow:visible}.rail-toolbar,.draft-title,.back-link{display:none}.rail-note{align-items:center;margin-top:10px;padding:9px 11px}.rail-note p{display:inline}.rail-note button{margin:0 0 0 8px;display:inline}.step-list{display:flex;overflow-x:auto}.step-link{text-align:center;justify-items:center;gap:4px;min-width:76px;padding:7px;display:grid}.step-link small{display:none}.step-link strong{font-size:var(--text-sm)}.workspace-header{min-height:78px;padding:16px 20px}.workspace-header h1{font-size:27px}.workspace-header-actions{flex-direction:column;align-items:stretch}.edit-lock-button,.save-button{min-height:36px;padding:0 12px}.step-content{padding:28px 20px 40px}.builder-footer{flex-wrap:wrap;padding:11px 16px}.footer-message,.footer-actions{width:100%}.footer-actions button{flex:1}.basics-layout,.method-tabs{grid-template-columns:1fr}.ability-presets-heading{flex-direction:column;align-items:start;gap:5px}.ability-presets-heading>small{text-align:left}.ability-preset-grid{grid-template-columns:1fr}.guidance-card{padding:28px}.level-picker{gap:4px}.character-level-control{grid-template-columns:46px minmax(140px,1fr) 46px}.ability-grid{grid-template-columns:repeat(2,1fr)}.origin-columns{gap:38px}.species-reference{grid-template-columns:1fr}.species-reference-list{min-height:310px}.creature-size-scale{gap:1px;padding-inline:4px}.creature-size-step strong{font-size:var(--text-micro)}.option-card-grid,.background-source-groups .option-card-grid,.choice-options,.origin-feat-options{grid-template-columns:1fr}.spell-filter-bar{flex-wrap:wrap;align-items:stretch}.spell-filter-bar label{flex:130px}.spell-filter-bar select{width:100%}.spell-filter-bar>small{width:100%;margin:2px 0 0}.feat-advancement{grid-template-columns:1fr}.level-row-heading{grid-template-columns:36px 1fr auto;padding-right:10px}.level-row-content{margin-left:35px;padding-left:12px}.level-features,.class-reference{grid-template-columns:1fr}.class-reference-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px}.class-reference-detail dl,.skill-choice-grid,.identity-strip{grid-template-columns:1fr}.identity-strip>div{border-right:0;border-bottom:1px solid var(--line)}.review-abilities{grid-template-columns:repeat(3,1fr)}.sheet-skill-grid,.sheet-vitals-rail .sheet-skill-grid{grid-template-columns:1fr}.combat-stats{grid-template-columns:repeat(2,1fr)}.combat-cheat-sheet .combat-section-heading{flex-direction:column;align-items:flex-start;gap:5px}.combat-cheat-columns{grid-template-columns:1fr}.combat-cheat-columns>section+section{border-top:1px solid var(--line);border-left:0;padding-top:18px}.core-combat-dialog-body{grid-template-columns:1fr;overflow-y:auto}.attack-list>div{grid-template-columns:34px 1fr auto}.attack-list>div>span:nth-child(n+4){grid-column:2/-1}.inventory-sheet>header{flex-direction:column;align-items:stretch}.inventory-add{flex-wrap:wrap}.inventory-add select,.inventory-add input:not([type=number]){flex:1;min-width:150px}.inventory-attunement-summary{flex-wrap:wrap;align-items:flex-start}.inventory-attunement-summary>small{width:100%;margin-left:0}.inventory-catalog-dialog{border-radius:10px 10px 0 0;width:100%;height:min(92vh,820px);max-height:92vh}.inventory-catalog-filters{grid-template-columns:1fr 1fr;padding:12px}.inventory-catalog-filters select:nth-of-type(2){grid-column:1/-1}.inventory-catalog-results article{grid-template-columns:36px minmax(0,1fr) auto;padding:10px 12px}.inventory-catalog-results article .item-detail-button{grid-area:2/2;justify-self:start}.inventory-catalog-results article .inventory-catalog-wishlist{grid-area:3/2;justify-self:start}.inventory-catalog-results article .primary-button{grid-area:1/3/span 3}.inventory-wallet>header>small{display:none}.currency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.currency-control:last-child{grid-column:1/-1}.inventory-list>div{grid-template-columns:36px 1fr auto}.inventory-list .inventory-quantity{grid-column:2}.inventory-list .inventory-row-actions{grid-column:2/-1;justify-content:flex-start}.inventory-list .remove-item{grid-area:1/3}.sheet-tabs{width:100%;overflow-x:auto}.sheet-tabs button{white-space:nowrap;flex:1}.roll-modifier-toolbar{align-items:stretch}.roll-modifier-status{flex-basis:100%}.roll-modifier-actions{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.roll-modifier-actions button{padding-inline:5px}.mobile-play-tabs{z-index:5;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:none;gap:5px;margin:-12px -20px 16px;padding:8px 20px;display:flex;position:sticky;top:62px;overflow-x:auto}.mobile-play-tabs::-webkit-scrollbar{display:none}.mobile-play-pages::-webkit-scrollbar{display:none}.mobile-play-tabs button{min-height:34px;color:var(--muted);border:1px solid var(--line);background:var(--surface-raised);font-size:var(--text-xs);border-radius:100px;flex:none;padding:0 12px;font-weight:750}.mobile-play-tabs button.selected{color:var(--ink);border-color:var(--line-strong);background:var(--forest)}.mobile-play-pages{scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x pan-y;scrollbar-width:none;width:100%;display:flex;overflow:auto hidden}.mobile-play-page{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0;padding:0 2px 24px}.mobile-identity-card,.mobile-vitals-grid,.mobile-play-page>.play-widget,.mobile-play-page>.review-summary{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px}.mobile-identity-card{padding:20px}.mobile-identity-heading{align-items:center;gap:14px;display:flex}.mobile-identity-heading>div{min-width:0}.mobile-identity-avatar{width:58px;height:58px;color:var(--muted);border:1px solid var(--line-strong);background:var(--forest);border-radius:50%;flex:none}.mobile-identity-card h2{font:28px var(--font-display);margin:3px 0 6px}.mobile-identity-heading>div>p:not(.eyebrow){color:var(--muted);font-size:var(--text-sm);margin:0;line-height:1.5}.mobile-identity-card blockquote{color:var(--ink-soft);border-left:2px solid var(--gold);background:var(--gold-soft);font:15px/1.6 var(--font-display);margin:16px 0 0;padding:13px 14px}.mobile-vitals-grid{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:10px;display:grid;overflow:hidden}.mobile-vitals-grid>div{background:var(--gold-soft);min-width:0;padding:13px}.mobile-vitals-grid>div:nth-child(2){grid-column:span 1}.mobile-vitals-grid>.mobile-hp-stat,.mobile-vitals-grid>.mobile-spellcasting-stat{grid-column:1/-1}.mobile-vitals-grid small,.mobile-vitals-grid strong{display:block}.mobile-vitals-grid small:has(.dnd-icon){justify-content:center;align-items:center;gap:5px;display:inline-flex}.mobile-vitals-grid .dnd-icon{width:14px;height:14px}.mobile-vitals-grid small{color:var(--muted);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase}.mobile-vitals-grid strong{font:21px var(--font-display);margin-top:4px}.mobile-vitals-grid .hp-number-input{width:42px}.mobile-abilities{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;margin-top:10px;padding:12px}.mobile-armor-warnings{margin-top:8px}.mobile-attack-list{padding:12px 0}.mobile-play-page .combat-cheat-sheet{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px;overflow:hidden}.mobile-play-page .sheet-skills,.mobile-play-page .saving-throws-widget,.mobile-play-page .review-summary,.mobile-runtime-status,.mobile-training{padding:18px}.mobile-play-page .sheet-skills>header{margin-top:0}.mobile-effect-group{padding:18px}.mobile-effect-group>div{gap:7px;display:grid}.mobile-effect-group span{border:1px solid var(--line);background:var(--success-soft);border-radius:4px;gap:3px;padding:9px;display:grid}.mobile-effect-group small{color:var(--muted);font-size:var(--text-tiny)}.mobile-play-page .review-summary{max-height:none;position:static;overflow:visible}.mobile-play-page .review-summary>.eyebrow,.mobile-play-page .review-summary>h2{display:none}.mobile-play-page .review-summary .play-widget{border-bottom:1px solid var(--line);padding-bottom:16px}.mobile-play-page .review-summary .play-widget:last-of-type{border-bottom:0}.mobile-training dl{gap:10px;margin:0;display:grid}.mobile-training dl>div{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;padding:10px}.mobile-training dt{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.mobile-training dd{font-size:var(--text-sm);margin:4px 0 0;line-height:1.5}.training-strip,.spell-list{grid-template-columns:1fr}.dialog-backdrop{align-items:end;padding:0}.spell-detail-dialog{border-radius:12px 12px 0 0;max-height:92vh}.spell-detail-dialog>header{padding:20px}.spell-detail-tags{padding:16px 20px 0}.spell-detail-facts{grid-template-columns:1fr;margin:14px 20px 0}.spell-detail-body{padding:18px 20px 25px}.rules-upgrade-dialog{border-radius:12px 12px 0 0;max-height:92vh}.rules-upgrade-dialog>header{padding:20px}.version-route,.upgrade-status,.upgrade-section{margin-left:20px;margin-right:20px}.rules-upgrade-dialog>footer{padding:14px 20px;position:sticky;bottom:0}.rules-upgrade-dialog>footer button{flex:1}}.campaign-combat-screen{width:100%;max-width:none}.campaign-combat-workspace{width:100%;padding:0 22px 40px}.campaign-combat-stage{margin-top:14px;position:relative}.campaign-combat-grid-shell{width:100%}.campaign-combat-bestiary-sidebar{z-index:45;border:1px solid var(--line);background:var(--surface);border-radius:8px 0 0;width:clamp(340px,32vw,460px);height:auto;min-height:0;position:fixed;top:62px;bottom:0;right:0;overflow:hidden;box-shadow:-18px 0 45px #00000052}.campaign-combat-bestiary-sidebar.is-collapsed{border-radius:8px 0 0 8px;width:48px;height:auto;min-height:0;top:50%;bottom:auto;transform:translateY(-50%)}.campaign-combat-sidebar-toggle{width:100%;min-height:44px;color:var(--gold);border:0;border-bottom:1px solid var(--line);background:var(--forest);font-size:var(--text-xs);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-weight:850;display:flex}.campaign-combat-bestiary-sidebar.is-collapsed .campaign-combat-sidebar-toggle{border-bottom:0;flex-direction:column;min-height:150px}.campaign-combat-bestiary-sidebar.is-collapsed .campaign-combat-sidebar-toggle span{writing-mode:vertical-rl;letter-spacing:.08em;text-transform:uppercase;transform:rotate(180deg)}.campaign-combat-bestiary-sidebar .campaign-bestiary-widget{height:calc(100% - 44px);box-shadow:none;border:0}.campaign-combat-bestiary-sidebar .campaign-monster-filters.compact{grid-template-columns:1fr 1fr}.campaign-combat-bestiary-sidebar .campaign-monster-filters .search-field{grid-column:1/-1}.campaign-combat-grid-item{border:1px solid var(--line);background:var(--surface);min-width:0;height:100%;box-shadow:var(--shadow-sm);border-radius:8px;overflow:hidden}.campaign-combat-grid.is-layout-editing .campaign-combat-grid-item{outline:1px dashed color-mix(in srgb, var(--gold) 70%, transparent)}.campaign-combat-grid.is-layout-editing .campaign-dm-widget{border-color:color-mix(in srgb, var(--gold) 55%, var(--line));padding-top:54px}.campaign-dm-widget-layout-controls .campaign-combat-drag-handle{position:static}.campaign-combat-drag-handle{z-index:8;border:1px solid var(--line);color:var(--muted);background:var(--surface-raised);cursor:grab;font-size:var(--text-micro);text-transform:uppercase;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;display:inline-flex;position:absolute;top:8px;right:8px}.campaign-combat-widget{height:100%;min-height:0;padding:20px;overflow:auto}.campaign-combat-widget>header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.campaign-combat-widget>header h2,.campaign-combat-widget>header p{margin:0}.campaign-combat-widget>header h2{align-items:center;gap:8px;display:flex}.campaign-combat-loot-list{gap:7px;display:grid}.campaign-combat-loot-list article{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:minmax(150px,1fr) minmax(130px,.8fr) 66px auto auto;align-items:end;gap:8px;min-width:0;padding:10px;display:grid}.campaign-combat-loot-list article>span,.campaign-combat-loot-list label{gap:4px;min-width:0;display:grid}.campaign-combat-loot-list article>span strong,.campaign-combat-loot-list article>span small{display:block}.campaign-combat-loot-list article>span strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.campaign-combat-loot-list article>span small,.campaign-combat-loot-list label>span{color:var(--muted);font-size:var(--text-micro)}.campaign-combat-loot-list select,.campaign-combat-loot-list input{width:100%;min-width:0;height:36px;color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:0 8px}.campaign-count-badge{border:1px solid var(--line);color:var(--gold);font-size:var(--text-micro);text-transform:uppercase;border-radius:999px;padding:5px 8px}.campaign-monster-browser{gap:8px;margin-top:12px;display:grid}.campaign-monster-result{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.campaign-monster-result>img,.campaign-monster-result>.monster-image-placeholder{object-fit:cover;border-radius:5px;width:44px;height:44px}.campaign-monster-result>div{min-width:0}.campaign-monster-result>div>strong,.campaign-monster-result>div>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.campaign-monster-result>div>small{color:var(--muted);font-size:var(--text-micro);margin-top:3px}.monster-known-badge{color:var(--success);font-size:var(--text-micro);align-items:center;gap:4px;margin-top:4px;font-style:normal;display:inline-flex}.campaign-monster-result-actions{gap:5px;display:flex}.campaign-monster-result-actions button,.monster-card-actions button{border:1px solid var(--line);min-height:30px;color:var(--ink);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.campaign-monster-filters{grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(130px,.7fr));align-items:end;gap:9px;display:grid}.campaign-monster-filters>label:not(.search-field){gap:4px;min-width:0;display:grid}.campaign-monster-filters>label>span{color:var(--muted);font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.campaign-monster-filters select{width:100%;min-width:0;height:38px;color:var(--ink);border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;padding:0 9px}.campaign-monster-filters.compact{grid-template-columns:minmax(160px,1fr) repeat(3,minmax(82px,.55fr))}.campaign-monster-result-count{color:var(--muted);font-size:var(--text-micro);margin:9px 0 0}.campaign-combatant-list{gap:6px;margin-top:12px;display:grid}.campaign-combatant-row{border:1px solid var(--line);background:var(--surface-raised);border-radius:5px;grid-template-columns:30px minmax(130px,1fr) repeat(4,62px) 32px 32px;align-items:end;gap:6px;padding:7px;display:grid}.campaign-combatant-row.active{border-color:var(--gold);box-shadow:inset 3px 0 0 var(--gold)}.campaign-combatant-row label{gap:2px;display:grid}.campaign-combatant-row label small{color:var(--muted);font-size:var(--text-micro)}.campaign-combatant-row input{width:100%;min-width:0;padding:7px}.campaign-combatant-row input:disabled{color:var(--muted);cursor:not-allowed;opacity:.65;background:var(--surface)}.campaign-combatant-row>button{border:1px solid var(--line);background:0 0;border-radius:4px;height:32px}.combatant-active-button span{background:var(--muted);border-radius:50%;width:7px;height:7px;margin:auto;display:block}.monster-stat-card{color:var(--ink);background:var(--surface);overflow:auto}.campaign-combat-grid-item>.monster-stat-card{height:100%;padding:18px}.monster-stat-header{grid-template-columns:84px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.monster-stat-header>img,.monster-stat-header>.monster-image-placeholder{object-fit:cover;border-radius:7px;width:84px;height:84px}.monster-image-placeholder{color:var(--muted);background:var(--gold-soft);justify-content:center;align-items:center;display:inline-flex}.monster-stat-header h3{font-family:var(--font-display);margin:2px 0 3px;font-size:1.5rem}.monster-stat-header small{color:var(--muted)}.monster-card-actions{align-self:start;gap:5px;display:flex}.monster-identity-row{border-block:1px solid var(--line);flex-wrap:wrap;gap:8px 18px;margin:14px 0;padding:9px 0;display:flex}.monster-identity-row span{align-items:center;gap:5px;font-weight:700;display:inline-flex}.monster-vitals{grid-template-columns:.7fr 1fr 1.5fr;gap:7px;margin-bottom:10px;display:grid}.monster-vitals span{background:var(--gold-soft);border-radius:5px;align-content:start;padding:9px;display:grid}.monster-vitals small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.monster-vitals strong{overflow-wrap:anywhere}.monster-detail-line{font-size:var(--text-sm);margin:5px 0;line-height:1.45}.monster-detail-line strong{margin-right:5px}.monster-abilities{grid-template-columns:repeat(6,1fr);gap:5px;margin:14px 0;display:grid}.monster-abilities span{border:1px solid var(--line);border-radius:4px;justify-items:center;padding:7px 3px;display:grid}.monster-abilities small{color:var(--muted);font-size:var(--text-micro)}.monster-abilities em{color:var(--muted);font-size:var(--text-micro);font-style:normal}.monster-stat-section{margin-top:15px}.monster-stat-section h4{border-bottom:2px solid var(--gold);font-family:var(--font-display);margin:0 0 7px;padding-bottom:4px}.monster-stat-section p{font-size:var(--text-sm);margin:7px 0;line-height:1.55}.monster-unknown-copy{color:var(--muted);margin:18px 0 0;font-style:italic}.updates-page{grid-column:1/-1;width:min(1180px,100%);margin:0 auto;padding:clamp(34px,5vw,70px) clamp(18px,4vw,48px) 80px}.updates-hero{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:34px;display:flex}.updates-hero h1{color:var(--ink);font:clamp(42px, 6vw, 70px)/1 var(--font-display);letter-spacing:-.04em;margin:0}.updates-hero>div>p:last-child{max-width:650px;color:var(--ink-soft);margin:18px 0 0;font-size:16px;line-height:1.7}.updates-hero-mark{width:66px;height:66px;color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 46%, var(--line));background:var(--gold-soft);border-radius:50%;flex:none;place-items:center;display:grid}.updates-release{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:10px;overflow:hidden}.updates-release+.updates-release{margin-top:18px}.updates-release-heading{border-bottom:1px solid var(--line);background:radial-gradient(circle at 90% 8%, #c3a1661f, transparent 34%), var(--surface-raised);justify-content:space-between;align-items:flex-start;gap:28px;padding:clamp(24px,4vw,40px);display:flex}.updates-release-meta{color:var(--muted);font-size:var(--text-xs);align-items:center;gap:11px;margin-bottom:13px;display:flex}.updates-release-meta span{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.updates-release-meta span:after{content:"·";color:var(--muted);margin-left:11px}.updates-release-heading h2{color:var(--ink);font:clamp(27px, 3vw, 38px)/1.12 var(--font-display);margin:0}.updates-release-heading p{max-width:700px;color:var(--muted);font-size:var(--text-sm);margin:12px 0 0;line-height:1.65}.updates-shipped-badge{color:var(--success);border:1px solid color-mix(in srgb, var(--success) 42%, var(--line));background:var(--success-soft);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 10px;font-weight:800;display:inline-flex}.updates-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.updates-feature{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr);gap:14px;padding:26px clamp(20px,3vw,32px);display:grid}.updates-feature:nth-child(odd){border-right:1px solid var(--line)}.updates-feature:nth-last-child(-n+2){border-bottom:0}.updates-feature-icon{width:38px;height:38px;color:var(--gold);border:1px solid var(--line);background:var(--gold-soft);border-radius:7px;place-items:center;display:grid}.updates-feature h3,.updates-roadmap-item h3{color:var(--ink);font:21px var(--font-display);margin:1px 0 7px}.updates-feature p,.updates-roadmap-item p{color:var(--muted);font-size:var(--text-sm);margin:0;line-height:1.6}.updates-roadmap{margin-top:clamp(48px,7vw,78px)}.updates-roadmap>header{grid-template-columns:minmax(0,1fr) minmax(280px,480px);align-items:end;gap:36px;margin-bottom:22px;display:grid}.updates-roadmap>header h2{color:var(--ink);font:clamp(32px, 4vw, 46px)/1 var(--font-display);margin:0}.updates-roadmap>header>p{color:var(--muted);font-size:var(--text-sm);margin:0;line-height:1.6}.updates-roadmap-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.updates-roadmap-item{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:230px;padding:22px 22px 46px;position:relative}.updates-roadmap-item-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px;display:flex}.updates-roadmap-status{color:var(--gold);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.updates-roadmap-direction{color:var(--muted);position:absolute;bottom:18px;right:20px}.updates-roadmap-item:first-child{border-color:color-mix(in srgb, var(--gold) 48%, var(--line));background:linear-gradient(145deg, var(--surface), var(--gold-soft))}.updates-roadmap-item:first-child .updates-roadmap-direction{color:var(--gold)}.player-bestiary{padding:24px}.player-bestiary>header{margin-bottom:20px}.player-bestiary>header h2{margin:3px 0}.player-bestiary-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;display:grid}.player-bestiary-grid .monster-stat-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:8px;padding:18px}.campaign-bestiary-screen{width:100%;max-width:none}.campaign-bestiary-workspace{width:100%;padding:26px 32px 50px}.campaign-bestiary-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.campaign-bestiary-heading h2{align-items:center;gap:8px;margin:3px 0 6px;display:flex}.campaign-bestiary-heading p{max-width:720px;color:var(--muted);margin:0}.campaign-bestiary-admin-list{gap:10px;margin-top:12px;display:grid}.campaign-bestiary-load-more{justify-content:center;padding:14px 0;display:flex}.campaign-bestiary-admin-entry{border:1px solid var(--line);background:var(--surface);border-radius:7px;overflow:hidden}.campaign-bestiary-admin-entry.revealed{border-color:color-mix(in srgb, var(--success) 50%, var(--line))}.campaign-bestiary-admin-summary{grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px;display:grid}.campaign-bestiary-admin-summary>img,.campaign-bestiary-admin-summary>.monster-image-placeholder{object-fit:cover;border-radius:6px;width:68px;height:68px}.campaign-bestiary-admin-summary h3{font:20px var(--font-display);margin:3px 0}.campaign-bestiary-admin-summary p{color:var(--muted);font-size:var(--text-xs);margin:0}.campaign-bestiary-entry-state{color:var(--muted);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:5px;font-weight:800;display:inline-flex}.campaign-bestiary-admin-entry.revealed .campaign-bestiary-entry-state{color:var(--success)}.campaign-bestiary-section-grid{border-top:1px solid var(--line);background:var(--surface-raised);grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px;display:grid}.campaign-bestiary-section-grid label{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:5px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;min-width:0;padding:10px;display:grid}.campaign-bestiary-section-grid label.selected{border-color:var(--success);background:var(--success-soft)}.campaign-bestiary-section-grid input{accent-color:var(--success);margin-top:2px}.campaign-bestiary-section-grid strong,.campaign-bestiary-section-grid small{display:block}.campaign-bestiary-section-grid strong{font-size:var(--text-xs)}.campaign-bestiary-section-grid small{color:var(--muted);font-size:var(--text-micro);margin-top:3px;line-height:1.35}@media (width<=900px){.updates-roadmap-list{grid-template-columns:1fr}.updates-roadmap-item{min-height:0}.campaign-combat-workspace{padding-inline:12px}.campaign-combat-bestiary-sidebar{width:min(92vw,420px)}.campaign-combat-bestiary-sidebar.is-collapsed{width:48px}.campaign-combat-grid.react-grid-layout{height:auto!important}.campaign-combat-grid.react-grid-layout>.campaign-combat-grid-item{min-height:520px;margin-bottom:12px;width:100%!important;max-width:100%!important;height:auto!important;position:relative!important;transform:none!important}.campaign-combatant-row{grid-template-rows:auto auto;grid-template-columns:repeat(4,minmax(42px,1fr)) 32px 32px}.campaign-combatant-row .combatant-active-button{grid-area:1/1}.campaign-combatant-row .combatant-name{grid-area:1/2/auto/5}.campaign-combatant-row label:first-of-type{grid-area:2/1}.campaign-combatant-row label:nth-of-type(2){grid-area:2/2}.campaign-combatant-row label:nth-of-type(3){grid-area:2/3}.campaign-combatant-row label:nth-of-type(4){grid-area:2/4}.campaign-combatant-row>button:nth-of-type(2){grid-area:1/5}.campaign-combatant-row>button:nth-of-type(3){grid-area:1/6}.campaign-bestiary-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.updates-hero-mark{display:none}.updates-release-heading,.updates-roadmap>header{grid-template-columns:1fr}.updates-release-heading{display:grid}.updates-shipped-badge{justify-self:start}.updates-feature-list{grid-template-columns:1fr}.updates-feature:nth-child(odd){border-right:0}.updates-feature:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.updates-feature:last-child{border-bottom:0}.campaign-combat-widget{padding:14px}.campaign-combat-widget>header{flex-direction:column;align-items:flex-start}.campaign-combat-loot-list article{grid-template-columns:minmax(0,1fr) 58px auto auto}.campaign-combat-loot-list article>span:first-child{grid-column:1/-1}.campaign-encounter-toolbar,.campaign-encounter-add{grid-template-columns:minmax(0,1fr) 82px}.campaign-encounter-toolbar>button,.campaign-encounter-add>button{grid-column:1/-1;width:100%}.campaign-monster-filters,.campaign-monster-filters.compact{grid-template-columns:1fr 1fr}.campaign-monster-filters .search-field{grid-column:1/-1}.campaign-bestiary-workspace{padding:20px 14px 40px}.campaign-bestiary-heading{flex-direction:column}.campaign-bestiary-admin-summary{grid-template-columns:54px minmax(0,1fr)}.campaign-bestiary-admin-summary>img,.campaign-bestiary-admin-summary>.monster-image-placeholder{width:54px;height:54px}.campaign-bestiary-admin-summary>button{grid-column:1/-1;width:100%}.campaign-bestiary-section-grid{grid-template-columns:1fr}.monster-stat-header{grid-template-columns:64px minmax(0,1fr)}.monster-stat-header>img,.monster-stat-header>.monster-image-placeholder{width:64px;height:64px}.monster-card-actions{grid-column:1/-1}.monster-abilities{grid-template-columns:repeat(3,1fr)}.campaign-monster-result{grid-template-columns:40px minmax(0,1fr)}.campaign-monster-result-actions{grid-column:1/-1}}
