: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}*{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-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-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-heading-actions{align-items:center;gap:10px;display:flex}.campaign-heading-actions .secondary-button{min-height:34px;padding:0 11px}.campaign-layout-single{grid-template-columns:minmax(0,760px)}.campaign-list{gap:13px;display:grid}.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:#ffffff0b;border-radius:7px;padding:20px}.campaign-card.selected{border-color:var(--line-strong);box-shadow:0 0 0 2px #4a695317}.campaign-card>header{align-items:center;gap:12px;display:flex}.campaign-mark{width:39px;height:39px;color:var(--gold);background:var(--forest);border-radius:50%;place-items:center;display:grid}.campaign-card h3{color:var(--ink);font:19px var(--font-display);margin:0}.campaign-card header small{color:var(--muted);font-size:var(--text-tiny);margin-top:3px;display:block}.campaign-card>p{color:var(--ink-soft);font-size:var(--text-sm);margin:15px 0;line-height:1.6}.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-card>footer{border-top:1px solid color-mix(in srgb, var(--gold) 48%, var(--line));flex-wrap:wrap;gap:14px;margin-top:15px;padding-top:13px;display:flex}.campaign-card>footer span{color:var(--muted);font-size:var(--text-tiny);text-transform:uppercase;font-weight:750}.campaign-card>footer span:before{content:"○";margin-right:5px}.campaign-card>footer span.enabled{color:var(--success)}.campaign-card>footer span.enabled:before{content:"●"}.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,.campaign-rule-toggles label,.campaign-member-options label{border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;align-items:center;gap:9px;padding:10px;display:flex}.campaign-option.selected{border-color:var(--line-strong);background:var(--success-soft)}.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-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-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(3,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-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}.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-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-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}.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}.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}.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}.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}.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(28px,5vw,72px);display:flex}.workspace-header h1{font:34px var(--font-display);color:var(--ink);margin:0}.workspace-header .eyebrow{margin-bottom:5px}.save-button{color:var(--ink-soft);border:1px solid var(--line);background:0 0}.step-content{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:42px clamp(28px,5vw,72px) 55px}.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(28px,5vw,72px);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}.validation-message{color:var(--danger)}.ready-message{color:var(--success)}.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 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{grid-template-columns:1fr 1fr;gap:45px;display:grid}.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}.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}.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}.selection-detail .trait-summary{color:var(--gold);font-weight:700}.selection-detail label{margin-top:16px}.selection-detail label span{float:right;color:var(--gold)}.selection-detail .helper{margin-top:-3px!important}.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-options>button{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:4px;align-items:flex-start;gap:8px;min-width:0;padding:10px;display:flex}.origin-feat-options>button:hover:not(:disabled){border-color:var(--line-strong)}.origin-feat-options>button.selected{border-color:var(--line-strong);background:var(--success-soft)}.origin-feat-options>button.locked{opacity:.62;background:var(--gold-soft);cursor:not-allowed;border-style:dashed}.origin-feat-options>button>span:last-child{min-width:0}.origin-feat-options strong,.origin-feat-options small,.origin-feat-options em{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-options em{color:var(--muted);font-size:var(--text-tiny);margin-top:4px;font-style:normal;line-height:1.4}.origin-feat-options .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}.origin-feat-card h4{font:17px var(--font-display);margin:2px 0 0}.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:repeat(2,1fr);gap:10px;margin-bottom:30px;display:grid}.class-reference>button{text-align:left;border:1px solid var(--line);background:var(--surface-raised);cursor:pointer;border-radius:5px;align-items:flex-start;gap:12px;padding:15px;display:flex}.class-reference>button:hover{border-color:var(--line-strong)}.class-reference>button.selected{background:var(--success-soft);border-color:#496454;box-shadow:inset 0 0 0 1px #496454}.class-reference>button>span:nth-child(2){flex:1;min-width:0}.class-reference>button>svg{color:var(--success);flex:none}.class-icon{width:34px;height:34px;color:var(--ink);background:var(--forest);border-radius:50%;place-items:center;display:grid}.class-reference strong,.class-reference small,.class-reference em{display:block}.class-reference strong{font:17px var(--font-display)}.class-reference small{color:var(--muted);font-size:var(--text-xs);margin-top:3px}.class-reference em{color:var(--ink-soft);font-size:var(--text-xs);margin-top:8px;font-style:normal;line-height:1.45}.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{border:1px solid var(--line);background:var(--gold-soft);border-radius:4px;padding:11px 12px}.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)}.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:68px;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:68px;padding: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:33px}.spell-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;bottom:7px;right:8px}.spell-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-size:var(--text-sm)}.choice-options small{color:var(--gold);font-size:var(--text-tiny);margin-top:3px}.choice-options small.spell-choice-meta{line-height:1.4}.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}.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)}.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>div{border-top:2px solid color-mix(in srgb, var(--gold) 48%, var(--line));background:var(--gold-soft);justify-items:center;padding:11px 5px;display:grid}.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>div{border:1px solid var(--line-soft);background:var(--surface);border-radius:4px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;padding:7px 10px;display:grid}.sheet-skill-grid>div.proficient{border-color:color-mix(in srgb, var(--sage) 44%, var(--line));background:var(--success-soft)}.sheet-skill-grid>div.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>div>span:nth-child(2) strong,.sheet-skill-grid>div>span:nth-child(2) small{display:block}.sheet-skill-grid>div>span:nth-child(2) strong{font-size:var(--text-xs)}.sheet-skill-grid>div>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}.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:minmax(0,1.35fr) minmax(245px,.65fr);gap:24px;display:grid}.combat-main,.saving-throws-panel,.inventory-sheet{border:1px solid var(--line);background:var(--surface-raised);border-radius:7px}.combat-hero{border-bottom:1px solid var(--line);background:var(--gold-soft);align-items:center;gap:20px;padding:22px;display:flex}.combat-hero h2{font:23px var(--font-display);margin:0 0 7px}.ac-shield{width:105px;min-height:112px;color:var(--ink);background:var(--forest);clip-path:polygon(50% 0,94% 17%,88% 72%,50% 100%,12% 72%,6% 17%);align-content:center;place-items:center;display:grid}.ac-shield strong{font:31px var(--font-display);margin:1px 0}.ac-shield small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.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-derived-stats{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.combat-derived-stats>div{border-right:1px solid var(--line);padding:12px 16px}.combat-derived-stats>div:last-child{border-right:0}.combat-derived-stats small,.combat-derived-stats strong{display:block}.combat-derived-stats small{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.combat-derived-stats strong{font:18px var(--font-display);margin-top:4px}.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-list em{color:var(--danger);font-size:var(--text-tiny);grid-column:2/-1;font-style:normal}.combat-cheat-sheet{border-top:1px solid var(--line)}.combat-cheat-columns{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.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>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 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;padding:10px}.combat-option-list article>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.combat-option-list strong{font-size:var(--text-xs)}.combat-option-list small{color:var(--gold);font-size:var(--text-micro);letter-spacing:.04em;text-align:right;text-transform:uppercase}.combat-option-list p,.combat-option-empty{color:var(--muted);font-size:var(--text-tiny);margin:5px 0 0;line-height:1.55}.combat-option-empty{border:1px dashed var(--line);border-radius:4px;margin:0;padding:13px}.saving-throws-panel{background:var(--gold-soft);padding:22px}.saving-throws-panel h2{font:23px var(--font-display);margin:0 0 18px}.saving-throw-list{gap:6px;display:grid}.saving-throw-list>div{border:1px solid var(--line);background:var(--surface-raised);border-radius:4px;grid-template-columns:20px 1fr auto;align-items:center;gap:7px;padding:9px;display:grid}.saving-throw-list>div>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.saving-throw-list>div.proficient>span{color:var(--ink);border-color:var(--line-strong);background:#587461}.saving-throw-list strong{font-size:var(--text-xs)}.saving-throw-list b{font:16px var(--font-display)}.saving-throws-panel .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-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.weapon{background:#526c5c}.inventory-kind.armor{background:#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)}.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 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}.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)}.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;padding:5px 7px}.condition-list button.active{border-color:color-mix(in srgb, var(--danger) 55%, var(--line));color:var(--danger);background:var(--danger-soft)}.concentration-tracker{border:1px solid var(--line);background:var(--gold-soft);border-radius:5px;padding: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}.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}.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;padding:5px 8px;font-weight:750}.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}.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}.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,.spell-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,.spell-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}.spell-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}.spell-list{grid-template-columns:1fr 1fr;gap:8px;margin-top:25px;display:grid}.spell-list summary>span:nth-child(2){flex:1}.spell-list summary strong,.spell-list summary small{display:block}.spell-list summary strong{font:14px var(--font-display)}.spell-list summary small{color:var(--muted);font-size:var(--text-micro);text-transform:capitalize;margin-top:3px}.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}.spell-list summary em{color:var(--gold);font-size:var(--text-micro);font-style:normal}.spell-list details>div{padding:0 15px 15px}.spell-list dl{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;padding:9px 0;display:grid}.spell-list dl div{border-right:1px solid var(--line);padding:0 7px}.spell-list dl div:last-child{border:0}.spell-list dt{color:var(--muted);font-size:var(--text-micro);text-transform:uppercase}.spell-list dd{font-size:var(--text-tiny);margin:3px 0 0}.spell-list details p{color:var(--ink-soft);font-size:var(--text-xs);line-height:1.6}.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-control.cantrip{align-items:center}.spell-cast-control.cantrip small{margin-bottom:3px}.spell-cast-control.cantrip strong{font-size:var(--text-xs)}@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)}.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{max-height:310px}}@media (width<=720px){.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}.spell-slot-tracker>.resource-list{grid-template-columns:1fr}.campaign-heading-actions{flex-direction:column;align-items:flex-end}.campaign-character-create{grid-template-columns:1fr}.campaign-character-create .secondary-button{grid-column:auto}.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}.builder-shell{min-height:calc(100vh - 62px);display:block}.builder-rail{height:auto;padding:12px 14px;position:static;overflow:visible}.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}.save-button{min-height:36px;padding:0 12px}.step-content{padding:28px 20px 40px}.builder-footer{padding:11px 16px}.footer-message{display:none}.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}.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,.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{grid-template-columns:1fr}.combat-stats,.combat-derived-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}.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-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}.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}}
