@charset "UTF-8";
:root{--page-bg:url('assets/page-parchment.webp');--panel-bg:url('assets/panel-parchment.webp')}
:root{--ink:#29271f;--muted:#6e685a;--gold:#987036;--gold-light:#d5b77d;--line:#d3c7ae;--paper:#f7f3e8;--forest:#28382f;--red:#934437;--green:#386047;--radius:8px;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:16px;background:#e5dfd1}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button,a,input,select,textarea,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #337975}button{color:inherit}a{color:var(--forest)}.layout{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{background:#242c26;color:#eee5d0;display:flex;flex-direction:column;padding:30px 18px;position:sticky;top:0;height:100vh}.brand{font-family:Georgia,serif;font-size:32px;letter-spacing:5px;text-align:center;color:#dec599}.brand-sub{font-size:12px;text-transform:uppercase;letter-spacing:2px;text-align:center;margin:8px 0 30px;color:#c0b79f}.nav-item{display:flex;align-items:center;gap:12px;background:none;border:0;color:#c9c9bb;text-align:left;width:100%;padding:13px 12px;margin:3px 0;border-radius:5px;font-size:14px}.nav-item.active{background:#425044;color:white}.nav-item .number{width:26px;height:26px;display:grid;place-items:center;border:1px solid #7a8171;border-radius:50%;font-size:12px;flex-shrink:0}.nav-item.active .number{background:var(--gold-light);color:#242c26;border-color:var(--gold-light)}.sidebar-bottom{margin-top:auto;padding:30px 12px 0;color:#b7bcaf;font-size:12px;line-height:1.7}.sidebar-bottom button{background:transparent;border:0;color:#e7d6b4;padding:0;text-decoration:underline}.workspace{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 32px;background:#faf7ef;border-bottom:1px solid var(--line)}.crumb{font-size:14px;color:var(--muted)}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{border:1px solid var(--line);border-radius:5px;padding:9px 15px;background:#fffcf5;font-weight:600;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;min-height:40px}.btn:hover{border-color:var(--gold);background:#eee7d9}.btn.primary{background:var(--forest);color:#fff;border-color:var(--forest)}.btn.primary:hover{background:#405044}.btn.subtle{background:transparent;border-color:transparent;color:var(--muted)}.content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:25px;padding:30px 32px;max-width:1600px;margin:auto}.main{min-width:0}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-weight:700}.page-title{font:36px/1.15 Georgia,serif;margin:8px 0 12px}.intro{color:var(--muted);line-height:1.6;margin:0 0 25px;max-width:680px}.paper{background:var(--paper) var(--page-bg) center/750px auto;border:1px solid var(--line);box-shadow:0 4px 16px #4f412110;border-radius:var(--radius)}.race-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.choice{border:1px solid var(--line);border-radius:6px;background:#faf8f1;padding:17px;text-align:left;transition:background .15s,border-color .15s;position:relative;line-height:1.5}.choice:hover{background:#ede7da;border-color:#ae8b50}.choice.selected{border:2px solid var(--gold);padding:16px;background:#f0e5ce}.choice.selected:after{content:'✓';position:absolute;right:12px;top:10px;font-weight:700;color:var(--gold)}.choice .title{font-family:Georgia,serif;font-size:21px;font-weight:500;padding-right:18px;display:block}.choice small{font-size:13px;color:var(--muted);display:block;margin-top:5px}.race-feature{display:grid;grid-template-columns:180px 1fr;gap:10px;padding:22px;overflow:hidden}.race-art{width:100%;height:330px;object-fit:contain;mix-blend-mode:multiply;align-self:center}.race-feature h2,.section-title{font:26px/1.25 Georgia,serif;margin:8px 0 14px}.race-feature p{font-size:15px;line-height:1.6}.meta-row{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--muted);margin:16px 0}.mechanic{border-top:1px solid var(--line);padding-top:12px;font-size:14px;line-height:1.6}.mechanic strong{color:var(--gold)}.section{margin:25px 0}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.section-header h2{font:24px Georgia,serif;margin:0}.badge{display:inline-block;padding:4px 9px;border:1px solid var(--line);border-radius:4px;font-size:12px;background:#f9f4e7;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice p{font-size:14px;line-height:1.55;margin-bottom:0}.summary{align-self:start;position:sticky;top:24px;padding:22px}.summary h2{font:24px Georgia,serif;margin:6px 0}.summary-name{overflow-wrap:anywhere}.summary-sub{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.5}.summary hr{border:0;border-top:1px solid var(--line);margin:20px 0}.summary-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:15px 0 7px}.summary dl{display:grid;grid-template-columns:1fr auto;gap:9px;font-size:14px;margin:10px 0}.summary dd{margin:0;font-weight:600}.summary .empty{color:#827b6b;font-size:14px}.summary .btn{width:100%;margin-top:18px}.progress-track{height:5px;background:#dbd4c6;margin-top:12px;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--gold);width:12%}.footer-nav{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:28px 0 5px;padding-top:22px;border-top:1px solid var(--line)}.footer-nav span{font-size:13px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100;background:#263b30;color:white;border-radius:6px;box-shadow:0 4px 30px #0003;padding:13px 20px;max-width:90vw;display:none}.muted{color:var(--muted)}.label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.field{border:1px solid #bcb29d;border-radius:5px;background:#fffcf7;padding:10px 12px;width:100%;color:var(--ink);min-height:44px}textarea.field{min-height:110px;resize:vertical;line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .wide{grid-column:1/-1}.note{font-size:14px;color:var(--muted);line-height:1.6}.notice{padding:14px 16px;background:#eee4cd;border-left:3px solid var(--gold);line-height:1.6;font-size:14px;margin:16px 0}.notice.error{border-color:var(--red);background:#f4e2dc}.card{background:#fbf8ef;border:1px solid var(--line);border-radius:6px;padding:18px}.card h3{font:21px Georgia,serif;margin:0 0 9px}.card p{font-size:14px;line-height:1.6}.details{border-top:1px solid var(--line);padding-top:10px;margin-top:12px;font-size:14px;line-height:1.6}.details summary{cursor:pointer;color:var(--gold);font-weight:600}.long-text{white-space:pre-line;line-height:1.6;font-size:14px}.archetype-card{display:flex;align-items:center;gap:15px}.archetype-card img{width:58px;height:58px;object-fit:contain}.archetype-card .title{font-size:19px}.stat-row{display:grid;grid-template-columns:1fr 34px 38px 34px 46px;align-items:center;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}.stat-row:last-child{border:0}.stat-row .stepper{width:32px;height:32px;border:1px solid var(--line);border-radius:5px;background:#fff9ef}.stat-value{text-align:center;font-weight:700;font-size:20px}.crit{font-size:12px;color:var(--muted);text-align:center}.budget{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--green);font-weight:600}.budget.over{color:var(--red)}.toolbar{display:flex;gap:12px;margin:18px 0;flex-wrap:wrap}.toolbar .field{flex:1;min-width:140px}.ability-list{display:grid;gap:10px}.ability-head{display:flex;gap:14px;justify-content:space-between;align-items:flex-start}.ability-head h3{font-size:19px}.ability-actions{display:flex;gap:7px;flex-wrap:wrap}.chip{display:inline-block;font-size:12px;background:#e7e1d3;border-radius:4px;padding:3px 7px;margin:2px}.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.resource-count{font:38px Georgia,serif;color:var(--gold);margin:12px 0}.resource-card.selected{border-color:var(--gold)}.inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inline label{font-size:14px}.inline input{accent-color:var(--forest)}.check-list{list-style:none;padding:0;display:grid;gap:10px}.check-list button{width:100%;display:flex;justify-content:space-between;text-align:left;padding:14px;border:1px solid var(--line);border-radius:5px;background:#faf7ee;gap:16px}.check-list .ok{color:var(--green)}.check-list .todo{color:var(--gold)}.sheet{padding:30px;background:#fffdf6}.sheet-head{border-bottom:2px solid var(--gold);padding-bottom:20px;margin-bottom:20px}.sheet-head h1{font:38px Georgia,serif;margin:8px 0}.sheet-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.sheet-block{break-inside:avoid;margin-bottom:18px}.sheet-block h2{font:24px Georgia,serif;border-bottom:1px solid var(--line);padding-bottom:8px}.sheet-block h3{font-size:16px}.sheet-table{width:100%;border-collapse:collapse;font-size:14px}.sheet-table td,.sheet-table th{text-align:left;padding:7px 5px;border-bottom:1px solid var(--line)}.sheet-table th{font-size:12px;color:var(--muted)}.sheet-top-stats{display:flex;gap:16px;flex-wrap:wrap;margin:16px 0}.sheet-token{text-align:center;border:1px solid var(--line);padding:9px 15px;border-radius:5px;min-width:78px}.sheet-token b{display:block;font:25px Georgia,serif}.sheet-token span{font-size:12px}.sheet-entry{break-inside:avoid;border-bottom:1px solid var(--line);padding:12px 0}.sheet-entry p{white-space:pre-line;font-size:14px;line-height:1.55}.sheet-mode .content-wrap{display:block;max-width:1100px}.sheet-mode .summary{display:none}.source-footer{font-size:12px;color:var(--muted);margin-top:30px;line-height:1.5}dialog{border:1px solid var(--line);border-radius:8px;background:var(--paper);max-width:680px;width:90vw;padding:28px;color:var(--ink)}dialog::backdrop{background:#101b16aa}dialog h2{font:27px Georgia,serif;margin-top:0}.dialog-close{float:right}.desktop-only{display:inline}.warning-count{color:var(--red)}
@media(min-width:1550px){.content-wrap{grid-template-columns:minmax(0,1fr) 300px}.race-feature{grid-template-columns:225px 1fr}.race-art{height:390px}}
@media(max-width:1170px){.layout{grid-template-columns:190px 1fr}.sidebar{padding:25px 12px}.brand{font-size:28px}.content-wrap{grid-template-columns:minmax(0,1fr);padding:24px}.summary{position:static}.summary .summary-budgets{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.summary hr{margin:14px 0}.topbar{padding:16px 24px}.race-feature{grid-template-columns:170px 1fr}.summary .btn{width:auto}}
@media(max-width:700px){.layout{display:block}.sidebar{height:auto;position:static;padding:16px}.brand{text-align:left;font-size:26px}.brand-sub{text-align:left;margin:5px 0 15px;font-size:10px}.sidebar nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:4px}.nav-item{width:auto;white-space:nowrap;padding:8px;font-size:13px;margin:0}.nav-item .number{width:23px;height:23px}.sidebar-bottom{display:none}.topbar{padding:12px 16px;align-items:flex-start}.crumb{font-size:12px;max-width:125px}.btn{padding:9px 11px;font-size:13px}.desktop-only{display:none}.content-wrap{padding:22px 16px;gap:20px}.page-title{font-size:31px}.race-options{gap:7px}.choice{padding:12px}.choice.selected{padding:11px}.choice .title{font-size:18px}.choice small{font-size:12px}.race-feature{grid-template-columns:110px 1fr;padding:14px;gap:8px}.race-art{height:270px}.race-feature h2{font-size:25px}.race-feature p{font-size:14px}.race-feature .mechanic{grid-column:1/-1}.grid,.grid.three,.form-grid,.sheet-columns{grid-template-columns:1fr}.summary .summary-budgets{grid-template-columns:1fr}.sheet{padding:16px}.sheet-head h1{font-size:31px}.footer-nav span{display:none}.resource-grid{gap:8px}.ability-head{flex-wrap:wrap}.field{font-size:16px}.sheet-top-stats{gap:8px}.sheet-token{padding:7px;min-width:63px}}
@media print{@page{size:A4;margin:14mm}body{background:white;font-size:11pt}.sidebar,.topbar,.summary,.footer-nav,.no-print,#toast,dialog{display:none!important}.layout,.content-wrap,.sheet-mode .content-wrap{display:block!important;padding:0!important;margin:0!important;max-width:none}.sheet{padding:0;background:white;border:0;box-shadow:none}.sheet-head h1{font-size:26pt}.sheet-columns{display:grid;grid-template-columns:1fr 1fr;gap:6mm}.sheet-block h2{font-size:17pt}.sheet-entry p,.long-text,.sheet-table{font-size:10pt;line-height:1.4}.sheet-block{break-inside:auto}.sheet-entry,.sheet-token,.sheet-head,.sheet-table tr{break-inside:avoid}.sheet-block h2,.sheet-block h3{break-after:avoid}.paper{background:white}.source-footer{font-size:9pt}}
/* Additional compact and mobile layouts. */
.race-feature.no-art{display:block}.race-options{grid-template-columns:repeat(3,minmax(0,1fr))}.choice,.card,.form-grid>div{min-width:0;overflow-wrap:anywhere}.stat-row .btn{padding:0;min-height:32px}.profession{margin:12px 0}.profession input{accent-color:var(--forest)}.small{font-size:12px}.archetype-card{flex-wrap:wrap}.stat-row{grid-template-columns:minmax(70px,1fr) 32px 32px 32px 44px}.summary-name{font-size:25px}dialog>button:first-child{float:right}dialog h2{clear:both;padding-top:14px}.sidebar nav{scrollbar-width:thin}.card .section-title{font-size:23px}.section-header{flex-wrap:wrap}input[type=checkbox]{min-width:18px;min-height:18px}.grid .card h3{overflow-wrap:anywhere}
@media(max-width:700px){.topbar{flex-wrap:wrap}.race-options{grid-template-columns:1fr}.race-options .choice{display:flex;justify-content:space-between;align-items:center;gap:12px}.race-options .choice.selected:after{right:8px;top:8px}.race-feature{grid-template-columns:90px minmax(0,1fr)}.race-feature .meta-row{gap:8px}.sidebar-bottom{display:block;padding:14px 0 0}.sidebar-bottom br:first-child{display:none}.sidebar-bottom button{margin-right:10px}.sidebar nav{margin:0 -5px}.race-art{height:240px}.sheet-columns{display:block}.stat-row{grid-template-columns:minmax(70px,1fr) 32px 32px 32px 42px}}
@media print{.sidebar-bottom{display:none}.sheet-columns{display:grid}.sheet .notice{font-size:10pt}.sheet-token{padding:7px 10px}}
/* Step 2: parchment, illustrations, and the usable character sheet. */
:root{--red:#8b171b;--green:#164e2c;--line:#b39b70;--ink:#30271e;--muted:#665845;background:#d8c8a9}.workspace{background:#ebdfc5 var(--page-bg) center top/100% auto repeat-y}.paper,.sheet{background:#f2e7cc var(--page-bg) center top/100% auto}.card,.choice{background:rgba(255,249,231,.43);border-color:#b7a27e;box-shadow:inset 0 0 16px #9b783610}.choice.selected,.btn.selected,.status-grid .selected{border-color:#795422;background:#ddc899;box-shadow:inset 0 0 0 1px #795422}.topbar{background:#f1e5cbcf}.field{background:#fff8e7b5}.btn{background:#fbf2df;border-color:#ad966d}.page-hero{min-height:116px;background:var(--panel-bg) center/100% 100%;padding:20px 22px 12px;margin:-5px -5px 24px}.page-hero .intro{margin-bottom:8px}.page-art{width:98px;height:98px;float:right;margin:0 0 6px 16px}.sketch{object-fit:contain;filter:sepia(.18);pointer-events:none}.small-art{width:68px;height:68px;float:right;margin:0 0 6px 12px}.tiny-art{width:28px;height:28px;vertical-align:middle;margin-right:5px}.race-options{grid-template-columns:repeat(4,minmax(0,1fr))}.race-options .small-art{float:none;display:block;width:80px;height:80px;margin:0 auto 10px}.race-options .choice .title{font-size:19px}.race-feature{grid-template-columns:200px minmax(0,1fr)}.race-art{height:270px;mix-blend-mode:normal}.archetype-card .sketch{width:85px;height:85px}.school-groups{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.school-groups .btn{font:23px Georgia,serif;padding:10px 24px;justify-content:flex-start;min-height:80px}.school-groups .small-art{float:none;margin:0 14px 0 0}.action-k,.action-k *{color:#8b171b!important;font-weight:800!important}.action-t,.action-t *{color:#164e2c!important;font-weight:800!important}.sheet-mode .content-wrap{max-width:1370px}.sheet{padding:26px 30px;border:1px solid #9d8151;box-shadow:0 4px 30px #533e2626}.sheet-head{background:var(--panel-bg) center/100% 100%;padding:20px 24px;border:0;margin:-10px -12px 18px}.sheet-head h1{font-size:36px}.sheet-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #a48857;background:#e2ce9f;margin:0 -10px 24px;position:sticky;top:0;z-index:5;box-shadow:0 4px 10px #5e42231a}.sheet-tabs button{background:var(--panel-bg) center/100% 100%;border:0;border-right:1px solid #b09567;min-height:72px;display:flex;justify-content:center;align-items:center;gap:8px;padding:8px;font-family:Georgia,serif;font-size:17px}.sheet-tabs button:last-child{border-right:0}.sheet-tabs [aria-selected=true]{box-shadow:inset 0 -4px #795424;background-color:#c6a965;font-weight:700}.tab-art{width:40px;height:42px}.sheet-panel{display:none}.sheet-panel.active{display:block}.print-tab-title{display:none}.sheet-block{padding:18px 20px;border:1px solid #bda379;background:#fff6e02e;border-radius:3px;margin:0 0 20px}.sheet-block h2{font:25px Georgia,serif;border-bottom:1px solid #a28a60;margin:0 0 18px;padding:0 0 10px}.sheet-block:after,.sheet-entry:after,.card:after{content:'';display:block;clear:both}.section-art{float:right;width:52px;height:52px;margin:-5px 0 10px 12px}.sheet-entry h3{margin:0 0 8px;font:20px Georgia,serif}.sheet-entry .long-text{font-size:14px}.sheet-entry{padding:14px 0}.sheet-entry:last-child{border:0}.sheet-entry .small-art{width:80px;height:80px}.overview-portrait{display:grid;grid-template-columns:240px 1fr;gap:25px;align-items:center;margin:8px 0 24px}.portrait-art{width:100%;height:280px}.overview-portrait h2{font:34px Georgia,serif;margin:8px 0}.battle-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.initiative{display:flex;align-items:center;gap:10px}.initiative input{width:90px}.combat-resources{display:grid;grid-template-columns:1fr 1fr;gap:30px}.combat-resources>div+div{border-left:1px solid var(--line);padding-left:25px}.resource-track,.action-track{border-bottom:1px solid #b79e724d;padding:0 0 12px;margin-bottom:14px}.resource-track>div:first-child,.action-track>div:first-child{display:flex;align-items:center;gap:12px}.track-art{width:42px;height:48px;float:left;margin-right:10px}.counter-value{margin-left:auto;font:23px Georgia,serif}.pip-row{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}.pip{border-radius:50%;height:27px;min-height:27px;width:27px;padding:0;font-size:15px;border:2px solid currentColor;background:transparent;color:#265e56}.pip:not(.filled){color:#8c8068;background:transparent}.pip.filled{background:#2b635322;color:#245a4f}.resource-MN .pip.filled{color:#204e9b;background:#204e9b1a}.resource-UK .pip.filled{color:#913516;background:#9135161a}.resource-SK .pip.filled{color:#713268;background:#7132681a}.resource-GU .pip.filled{color:#987322;background:#9873221a}.pip.diamond{border-radius:3px;width:32px;height:32px;font-size:23px}.pip.diamond:not(.filled){opacity:.3}.action-track>div:first-child>strong{font-size:26px}.movement-readout{display:flex;flex-direction:column;gap:4px;margin-bottom:18px}.movement-readout strong{font:27px Georgia,serif}.movement-readout span{font-size:13px;color:var(--muted)}.protection-stats{display:flex;justify-content:space-between;gap:10px;margin:8px 0 16px}.protection-stats span{display:flex;flex-direction:column;gap:6px;font-size:13px}.protection-stats b{font:27px Georgia,serif;color:#365438}.injury-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.wound{min-height:96px;border:1px solid #ac8f6b;background:#fffaea66;color:#705943;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 3px;border-radius:3px}.wound strong{font:30px Georgia,serif}.wound span{font-size:12px}.wound small{font-size:10px}.wound.threshold{border-color:#8b3430}.wound.active{background:#81332b;color:#fff5dc;border:2px solid #542018;box-shadow:0 0 0 3px #81332b25}.injury-summary{margin-top:18px}.field-panel{border:2px solid #823e31;background:#e5d0b3;padding:18px;margin-top:16px}.ko-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.status-grid{display:flex;flex-wrap:wrap;gap:8px}.status-grid .btn{font-size:12px;min-height:34px}.crit-number{color:#174a28}.legend-number{color:#977329}.wolf-small{height:90px;width:90px}.inventory-grid>.sheet-block{min-width:0}.ability-card .small-art{height:66px;width:66px}.ability-card .long-text{margin-top:14px}.sheet-panel>label.label{margin-top:15px}.sheet-panel textarea{background:#fff9e87a}.sheet .sheet-columns>.sheet-block{min-width:0}.sheet .ability-actions .btn{font-size:12px}.sheet .ability-head{flex-wrap:wrap}.skill-toolbar .field{min-width:170px}.choice .title,.ability-head h3{overflow-wrap:normal}.sheet-table th{white-space:nowrap}
@media(max-width:1050px){.race-options{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-tabs button{font-size:15px;flex-direction:column;gap:3px}.tab-art{height:30px;width:30px}.sheet{padding:20px}.combat-resources{gap:20px}.sheet-columns{gap:14px}.sheet-block{padding:16px}.overview-portrait{grid-template-columns:180px 1fr}.portrait-art{height:230px}}
@media(max-width:700px){.page-hero{padding:15px;min-height:106px}.page-art{width:68px;height:68px}.page-title{font-size:28px}.race-options{grid-template-columns:1fr 1fr}.race-options .choice{display:block}.race-options .small-art{width:65px;height:65px}.race-options .choice .title{font-size:18px}.race-options small{font-size:11px}.race-feature{grid-template-columns:90px minmax(0,1fr)}.race-art{height:210px}.school-groups{gap:10px}.school-groups .btn{font-size:21px;padding:8px}.school-groups .small-art{width:48px;height:48px;margin-right:3px}.sheet{padding:15px 10px}.sheet-tabs{margin:0 -4px 18px;top:0}.sheet-tabs button{font:12px 'Segoe UI',sans-serif;padding:5px 2px;min-height:63px}.tab-art{height:27px;width:27px}.sheet-head{padding:17px;margin:0 0 16px}.sheet-head h1{font-size:28px}.sheet-head>div{font-size:13px}.sheet-block{padding:14px 10px}.sheet-block h2{font-size:22px}.combat-resources{grid-template-columns:1fr;gap:12px}.combat-resources>div+div{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.injury-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.wound{min-height:78px}.wound strong{font-size:25px}.wound span{font-size:10px}.ko-form{grid-template-columns:1fr 1fr}.ko-form .btn{grid-column:1/-1}.overview-portrait{grid-template-columns:100px 1fr;gap:10px}.portrait-art{height:170px}.overview-portrait h2{font-size:26px}.overview-portrait p{font-size:14px}.sheet .toolbar{gap:6px}.inventory-grid{display:block}.small-art{width:55px;height:55px}.sheet-table{font-size:13px}.sheet-table td,.sheet-table th{padding:7px 3px}.protection-stats b{font-size:23px}}
@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sheet-panel{display:block!important;break-before:page}.sheet-panel:first-of-type{break-before:auto}.print-tab-title{display:block;font:24pt Georgia,serif;border-bottom:2px solid #927747;margin:0 0 6mm}.sheet-tabs,.page-hero,.no-print{display:none!important}.sheet-head{background:none;margin:0 0 7mm;padding:0}.sheet{border:0;padding:0}.sheet-block{border:1px solid #bba786;padding:3mm;background:none;break-inside:auto}.sheet-block h2{font-size:16pt}.sheet-entry{break-inside:avoid}.sheet-entry .long-text{font-size:10pt}.sheet-panel textarea{border:0;min-height:0;resize:none;background:none}.sheet-columns{display:grid;grid-template-columns:1fr 1fr}.combat-resources{display:grid;grid-template-columns:1fr 1fr}.injury-track{grid-template-columns:repeat(7,1fr)}.wound{min-height:20mm}.wound strong{font-size:19pt}.wound span{font-size:8pt}.card{break-inside:avoid;background:none;padding:3mm}.sheet-panel .grid{grid-template-columns:1fr 1fr}.sheet-panel input{background:none}.overview-portrait{grid-template-columns:45mm 1fr}.portrait-art{height:50mm}.source-footer{font-size:8pt}.section-art{width:11mm;height:11mm}}

.print-only{display:none}@media print{.print-only{display:block}}

@media(max-width:700px){.sidebar-bottom br:first-child{display:block}}

/* Level wheel and character folio */
.sr-only,.portrait-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.atelier{min-height:100vh;display:flex;flex-direction:column;background:#e9dbbd var(--page-bg) center top/100% auto}
.atelier-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 32px;background:#26362c;color:#f7ecd3;border-bottom:3px solid #b59051}
.atelier-brand{display:flex;flex-direction:column;flex-shrink:0}.atelier-brand .brand{font-size:27px;letter-spacing:4px}.atelier-brand .brand-sub{margin:5px 0 0;font-size:12px}
.mode-tabs{display:flex;gap:8px;align-self:stretch;align-items:stretch}.mode-tabs .btn{font:22px Georgia,serif;background:transparent;color:#dccfb5;border-color:#8c957a;padding:12px 25px;min-height:62px}.mode-tabs .btn.active{background:#edddba var(--panel-bg) center/100% 100%;color:#352b1f;border-color:#c7a266;box-shadow:inset 0 -4px #9b6a2d}
.atelier-header .actions .btn{background:transparent;color:#f3e5ca;border-color:#87947e;font-size:14px}.atelier-header .actions .btn:hover{background:#455445}
.atelier .workspace{flex:1;background:transparent}.atelier .content-wrap{display:block;max-width:1140px;padding:28px 32px;width:100%}.atelier-footer{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:12px 32px;border-top:1px solid #b4a077;background:#e5d5b6;font-size:13px;color:#62543e}.atelier-footer>div{display:flex;flex-wrap:wrap}.atelier-footer .btn{font-size:13px}
.hub-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:920px;margin:auto}.hub-heading h1{font:35px Georgia,serif;margin:5px 0}.hub-level{min-width:145px}.hub-level .label{font-size:13px;margin-bottom:5px}
.level-orbit{position:relative;max-width:900px;height:720px;margin:5px auto 0}.orbit-line{position:absolute;inset:10%;border:1px solid #aa895250;border-radius:50%;box-shadow:0 0 0 20px #aa895209,inset 0 0 0 20px #aa895209;pointer-events:none}.orbit-line:before,.orbit-line:after{content:'';position:absolute;inset:8%;border:1px dashed #ae946638;border-radius:50%}.orbit-line:after{inset:20%;border-style:solid}
.orbit-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:216px;text-align:center}.portrait-editor{position:relative;max-width:240px;margin:auto}.portrait-upload{position:relative;display:block;border:1px solid #9e7844;border-radius:42% 42% 5px 5px;overflow:hidden;height:260px;cursor:pointer;background:#e7d5af77;box-shadow:0 0 0 5px #b5915424,inset 0 0 30px #8c662225}.portrait-upload:hover{box-shadow:0 0 0 5px #b5915455}.portrait-upload:has(+input:focus-visible){outline:3px solid #337975;outline-offset:5px}.portrait-placeholder{display:block;width:100%;height:100%;object-fit:contain;padding:12px 10px 45px;opacity:.8}.uploaded-portrait{display:block;width:100%;height:100%;object-fit:cover}.portrait-upload>span{position:absolute;bottom:0;left:0;right:0;background:#ead9b6e8;padding:11px;font:18px Georgia,serif;color:#45321e}.portrait-upload small{display:block;font:12px 'Segoe UI',sans-serif;color:#716249;margin-top:4px}.portrait-remove{margin:8px 0 0;padding:3px 10px;min-height:28px;font-size:12px}.portrait-name{margin-top:15px;text-align:center;font:21px Georgia,serif;border:0;border-bottom:1px solid #94723f;background:transparent;border-radius:0;padding:9px 0}.portrait-name::placeholder{color:#776448;font-size:18px}
.orbit-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:158px;min-height:120px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;padding:8px 5px 10px;border:1px solid #ad8a55;border-radius:5px;background:#f3e7cc var(--panel-bg) center/100% 100%;box-shadow:0 3px 10px #60442214;transition:box-shadow .15s,border-color .15s}.orbit-node:hover{border-color:#6e4a1a;box-shadow:0 3px 15px #60442230}.orbit-art{width:65px;height:61px}.orbit-node strong{font:18px Georgia,serif;color:#3c2c19}.orbit-node small{font-size:12px;color:#716043;max-width:100%;overflow-wrap:anywhere}.hub-footer{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid #bca174;padding:20px 0 4px}
.level-section-nav{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.level-section-nav>.btn{align-self:flex-start}.level-section-nav nav{display:flex;flex-wrap:wrap;gap:4px;padding-bottom:12px;border-bottom:1px solid #b9a47c}.level-section-nav nav .btn{padding:7px 10px;font-size:13px;min-height:36px}.atelier .page-hero{margin-left:0;margin-right:0}.chosen-school{border-color:#89612f;box-shadow:inset 3px 0 #89612f}.school-card>.inline{margin-bottom:12px}.school-card>.small-art{width:76px;height:76px}
.sheet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.sheet-tools{margin-top:0;justify-content:flex-end}.character-identity{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:center;margin:8px 0 24px}.character-identity .portrait-editor{width:100%}.identity-fields .label{margin-top:16px}.identity-fields .label:first-child{margin-top:0}.character-prose{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:28px}.character-prose .label{margin:6px 0 0}.character-prose textarea{min-height:120px}
.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stat-tile{position:relative;min-width:0;min-height:145px;padding:16px 12px;text-align:center;border:1px solid #b29a70;background:#fffaed55;display:flex;align-items:center;flex-direction:column;gap:4px}.stat-tile-name{font:19px Georgia,serif}.stat-tile>b{font:36px Georgia,serif;line-height:1.15}.stat-abbr{font-size:12px;letter-spacing:1px;color:#776244}.stat-crit{font-size:13px;line-height:1.5}.stat-reason{display:block;font-size:12px;color:#725022;line-height:1.4;margin-top:5px;font-weight:500}.relevance-mark{color:#926320;font-size:12px}.relevant{background:#ead5a555;border-color:#9f7839}.stat-row.relevant{box-shadow:inset 3px 0 #9f7839;padding-left:10px}.stat-row .stat-reason{max-width:240px}.sheet-table tr.relevant{background:#ead5a545}.sheet-table tr.relevant td:first-child{border-left:3px solid #a17a3c}.stat-tile.relevant{box-shadow:inset 0 3px #9f7839}.stat-tile .stat-reason{font-size:12px}.ability-card{position:relative}.ability-card.learned>.small-art{margin-right:26px}.remove-skill{position:absolute;top:9px;right:9px;width:28px;height:28px;min-height:28px;padding:0;z-index:1;font:21px/1 Arial,sans-serif;background:#f7e9cd;border-color:#92744c}.remove-skill:hover{color:#8b171b;background:#ecd7bb}.ability-type{font-size:13px;font-weight:750;margin:-3px 0 11px;color:#564027;line-height:1.4}.ability-head h3{margin-bottom:9px}.learned-label{background:#dce2c7;color:#365136}.inventory-item{margin:0 0 16px;border-bottom:1px solid var(--line);padding-bottom:16px}.inventory-item:last-child{border:0;margin-bottom:0}.inventory-item>.sheet-entry{border-bottom:0;padding-bottom:8px}.attached-upgrade{margin:8px 0 12px;padding:10px 12px;border-left:3px solid #a48247;background:#ecdaba66}.attached-upgrade>b{font-size:14px}.attached-upgrade .long-text{margin-top:6px}.inventory-item>.inline{margin-top:14px}
@media(max-width:1000px){.atelier-header{gap:16px;padding:16px 22px;flex-wrap:wrap}.atelier-header .actions{margin-left:auto}.mode-tabs{margin-left:auto}.mode-tabs .btn{font-size:20px;padding:10px 18px}.atelier .content-wrap{padding:24px}.level-orbit{height:690px}.orbit-node{width:150px}.atelier-footer{padding:12px 24px;flex-wrap:wrap}.sheet-tabs button{flex-direction:row;font-size:17px}}
@media(max-width:700px){.atelier-header{padding:15px;gap:14px}.atelier-brand{align-items:flex-start}.atelier-brand .brand{font-size:24px}.atelier-brand .brand-sub{font-size:10px;letter-spacing:1.4px}.atelier-header .actions{gap:4px}.atelier-header .actions .btn{font-size:12px;padding:6px 9px;min-height:34px}.mode-tabs{order:3;width:100%;margin:0;gap:8px}.mode-tabs .btn{flex:1;min-height:54px;font-size:20px;padding:9px}.atelier .content-wrap{padding:20px 14px}.hub-heading .eyebrow{font-size:10px;letter-spacing:1px}.hub-heading h1{font-size:29px}.hub-level{min-width:115px;max-width:130px}.level-orbit{height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:25px 0}.orbit-line{display:none}.orbit-center{position:static;transform:none;grid-column:1/-1;width:190px;margin:0 auto 12px}.orbit-center .portrait-upload{height:225px}.orbit-node{position:static;transform:none;width:100%;min-height:116px;padding:8px}.orbit-node strong{font-size:18px}.orbit-art{width:56px;height:54px}.hub-footer{gap:10px}.hub-footer>.note{flex-basis:100%;text-align:center}.atelier-footer{padding:12px 14px}.atelier-footer .btn{padding:5px 8px}.level-section-nav nav{display:grid;grid-template-columns:1fr 1fr;gap:5px}.level-section-nav nav .btn{font-size:13px}.sheet-tools .btn{font-size:12px;padding:7px 9px}.sheet-tabs button{flex-direction:column;font-size:13px}.character-identity{grid-template-columns:110px minmax(0,1fr);gap:14px;align-items:start}.character-identity .portrait-upload{height:170px}.character-identity .portrait-upload>span{font-size:14px;padding:8px 4px}.character-identity .portrait-upload small{font-size:10px}.character-identity .portrait-remove{font-size:11px}.identity-fields .field{padding:8px}.identity-fields .label{font-size:13px}.identity-fields .note{font-size:12px}.stat-grid{gap:7px}.stat-tile{padding:10px 4px;min-height:128px}.stat-tile-name{font-size:15px;overflow-wrap:anywhere}.stat-tile>b{font-size:29px}.stat-crit{font-size:12px}.stat-tile .stat-reason{font-size:12px;overflow-wrap:anywhere}.stat-abbr{font-size:12px}.ability-head{flex-direction:column}.ability-type{font-size:13px}.stat-row .stat-reason{font-size:12px}.atelier .page-title{font-size:29px}}
@media print{.atelier,.atelier .workspace{background:none}.atelier .content-wrap{max-width:none;padding:0}.portrait-upload{border-radius:3px;box-shadow:none;height:50mm;cursor:default}.character-identity{grid-template-columns:42mm 1fr;gap:8mm}.character-identity .portrait-editor{max-width:none}.identity-fields input{border:0;background:none;padding:0;min-height:0}.identity-fields .note{font-size:10pt}.stat-grid{grid-template-columns:repeat(3,1fr)!important;gap:3mm}.stat-tile{padding:2mm;min-height:29mm;break-inside:avoid}.stat-tile-name{font-size:12pt}.stat-tile>b{font-size:21pt}.stat-tile .stat-reason,.stat-crit,.stat-abbr{font-size:8pt}.inventory-item{break-inside:avoid}.ability-type{font-size:9pt}.stat-reason{font-size:8pt}.character-prose{display:none}.atelier .sheet{padding:0}.sheet-panel textarea{display:none}}
.mini-help{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;font:700 18px Georgia,serif;text-decoration:none;color:inherit;align-self:center}.mini-help:hover{background:#b6925140}.combat-sheet .sheet-tabs{position:static}.combat-dock{position:sticky;top:0;z-index:10;padding:10px 14px;margin:0 0 20px;background:#eeddb8 var(--panel-bg) center/100% 100%;border:1px solid #927246;box-shadow:0 5px 15px #49331e30;border-radius:5px}.combat-dock-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.combat-dock-heading>strong{font:19px Georgia,serif}.combat-dock .btn{min-height:32px;padding:5px 10px;font-size:13px}.combat-dock .inline{gap:6px}.combat-dock-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-counter{min-width:0;border:1px solid #af936866;background:#fff9e955;padding:7px 9px;border-radius:3px}.counter-title{display:flex;gap:6px;align-items:baseline;justify-content:center;font-size:14px;font-weight:650;white-space:nowrap}.counter-title>strong{font-size:17px}.counter-controls{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:5px}.counter-controls output{font-size:24px;font-weight:700;white-space:nowrap;line-height:1.1}.counter-controls output small{font:13px 'Segoe UI',sans-serif;color:#6b5c42}.combat-dock .counter-button{padding:0;width:32px;height:32px;min-width:32px;font-size:20px}.combat-dock-exchange{display:flex;align-items:center;gap:7px;margin-top:8px;flex-wrap:wrap}.combat-dock-exchange>span{font-size:13px;color:#67573e}.combat-dock-exchange .btn{min-height:27px;padding:3px 9px}.movement-ranges{display:flex;gap:35px;padding:10px 0}.movement-ranges>div{display:flex;flex-direction:column;gap:8px}.movement-ranges span{font-size:14px;color:#6c5d48}.movement-ranges strong{font:30px Georgia,serif}.combat-abilities-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.combat-abilities-heading h2{margin:0}.combat-abilities-heading .btn{min-height:32px;padding:5px 10px;font-size:13px}.combat-school-toggles{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:18px 0;max-width:100%}.school-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;padding:10px 8px;min-height:132px;border:1px solid #b39b76;border-radius:5px;background:#f1e6cd;color:#756b59}.school-toggle:hover{border-color:#7c592c;background:#ecdbb8}.school-toggle.selected{border:2px solid #916a2d;padding:9px 7px;background:#ead4a488;box-shadow:inset 0 -3px #906c35}.school-toggle.selected:before{content:'✓';position:absolute;top:5px;right:8px;font-size:15px;color:#325236}.school-toggle strong{font:16px/1.2 Georgia,serif;overflow-wrap:anywhere}.school-toggle small{font-size:12px}.school-toggle-art{width:58px;height:58px;object-fit:contain;opacity:.45}.school-toggle.selected .school-toggle-art{opacity:1}.school-toggle.selected strong{color:#3c2c19}.combat-group-title{display:flex;align-items:center;gap:10px;font:24px Georgia,serif;margin:26px 0 14px;border-bottom:1px solid #b59c73;padding-bottom:12px}.combat-skill-group.school-hidden{display:none}.basic-card .ability-head{gap:12px}.basic-card .ability-type{margin-bottom:10px}.combat-skill-group .grid{align-items:start}
@media(max-width:700px){.combat-dock{padding:8px;margin:0 -3px 18px}.combat-dock-heading>strong{font-size:17px}.combat-dock-heading .btn{padding:5px 7px;font-size:12px}.combat-dock-heading .inline{gap:5px}.combat-dock-counters{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.compact-counter{padding:5px 7px;display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:2px}.counter-title{font-size:13px;width:100%}.counter-title>span{display:none}.counter-title>strong{font-size:15px}.counter-controls{width:100%;margin-top:0}.combat-dock .counter-button{height:32px;min-height:32px;width:32px;min-width:32px}.counter-controls output{font-size:22px}.combat-dock-exchange{margin-top:6px;gap:5px}.combat-dock-exchange>span{font-size:12px}.combat-dock-exchange .btn{padding:3px 7px}.combat-school-toggles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.school-toggle{min-height:128px}.combat-group-title{font-size:21px}.movement-ranges{gap:25px}}
@media print{.combat-dock{position:static;box-shadow:none;background:none;border:1px solid #bba786;padding:3mm;break-inside:avoid}.combat-dock-counters{grid-template-columns:repeat(4,1fr)}.compact-counter{padding:2mm}.counter-controls{justify-content:center}.combat-skill-group.school-hidden{display:block}.combat-skill-group{break-inside:auto}.combat-group-title{break-after:avoid;font-size:15pt}.counter-title{font-size:9pt}.counter-controls output{font-size:15pt}.combat-dock-heading>strong{font-size:12pt}}

/* Compact character values and a shared hover/tap preview. */
.crit-number{color:#216334}.legend-number{color:#b55308}
.stat-grid{gap:7px}.stat-tile{min-height:0;padding:0;display:block;text-align:left}.stat-tile-info{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;width:100%;min-height:70px;padding:9px 12px;border:0;background:transparent;text-align:left;color:inherit;cursor:help}.stat-tile-name{font:14px/1.25 "Segoe UI",sans-serif;overflow-wrap:normal}.stat-tile.relevant{box-shadow:inset 2px 0 #9f7839}.stat-numbers{display:inline-flex;align-items:baseline;gap:9px;white-space:nowrap;font:600 17px/1.25 "Segoe UI",sans-serif;font-variant-numeric:tabular-nums}.stat-key{font-size:12px;font-weight:500;color:#72654f}.stat-numbers>b{font-size:20px;line-height:1}.stat-numbers strong{font-size:15px;font-weight:750}.stat-rune-bonus{font-size:12px;color:#65583f}.stat-peek-trigger{border:1px dashed #927a52;background:#e9dbb8;color:#43351f;cursor:help;min-height:29px;min-width:44px;padding:4px 7px;font-size:13px;vertical-align:middle;line-height:1.2}.stat-peek-trigger:hover,.stat-peek-trigger[aria-expanded=true]{border-style:solid;background:#dcc396}.peek-dots{margin-left:5px;color:#796240}.stat-popup{position:fixed;z-index:30;max-width:min(320px,calc(100vw - 16px));padding:11px 14px;border:1px solid #9a7b45;border-radius:5px;background:#fbf0d9;box-shadow:0 5px 18px #38291540;color:#332d22}.stat-popup[hidden]{display:none}.stat-popup .stat-numbers{display:flex;gap:10px;font-size:16px}.stat-popup .stat-numbers+.stat-numbers{margin-top:7px}.stat-popup .stat-key{font-size:14px;font-weight:650;min-width:30px;color:#4a3b27}.stat-popup .stat-numbers>b{font-size:18px}.stat-popup .stat-numbers strong{font-size:16px;min-width:14px}.peek-context,.peek-reason{display:block;font-size:12px;line-height:1.45;color:#716043;margin-top:8px}.stat-print .stat-numbers{margin:3px 7px 3px 0}
@media(max-width:700px){.stat-grid{gap:5px}.stat-tile-info{padding:8px 6px;min-height:68px;gap:7px}.stat-tile-name{font-size:13px;overflow-wrap:normal}.stat-tile .stat-numbers{gap:5px;font-size:14px}.stat-tile .stat-numbers>b{font-size:18px}.stat-tile .stat-numbers strong{font-size:13px}.stat-tile .stat-key{font-size:12px}.stat-peek-trigger{min-height:32px}}
@media print{.stat-popup,.stat-peek-trigger{display:none!important}.stat-grid{gap:2mm}.stat-tile{min-height:0;padding:0}.stat-tile-info{min-height:15mm;padding:2mm;gap:1.5mm}.stat-tile-name{font-size:10pt}.stat-numbers,.stat-tile .stat-numbers{font-size:10pt;gap:2mm}.stat-numbers>b,.stat-tile .stat-numbers>b{font-size:12pt}.stat-numbers strong,.stat-tile .stat-numbers strong{font-size:10pt}.stat-key,.stat-tile .stat-key{font-size:9pt}.stat-print{display:inline!important}.stat-rune-bonus{font-size:8pt}}

.resource-symbol{display:inline-block;width:11px;height:11px;flex-shrink:0;vertical-align:middle;margin:0 6px 2px 1px}.resource-symbol-MN{width:9px;height:9px;background:#2468b4;border:1px solid #164782;transform:rotate(45deg);margin-right:8px}.resource-symbol-GU{background:#ebba24;border:1px solid #936a08;border-radius:50%}.resource-symbol-UK{width:13px;height:12px;background:#a52d35;clip-path:polygon(0 0,100% 0,50% 100%)}.resource-symbol-SK{background:#176666;border:1px solid #124a4a}.counter-title>.resource-symbol{display:inline-block;margin:0 1px 1px 0;align-self:center}.counter-title>.resource-symbol-MN{margin-right:3px}.ability-meta{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 8px;clear:both}.ability-tag{display:inline-block;font-size:12px;line-height:1.4;padding:3px 6px;border:1px solid #b8a37e66;border-radius:3px;background:#e8dcbd77;max-width:100%;overflow-wrap:anywhere}.ability-tag>span{color:#74634a}.ability-summary{margin:12px 0 10px;font-size:14px;font-weight:600;line-height:1.5;color:#4c412d}.ability-card .long-text{margin-top:10px}.ability-card .details{margin-top:8px}.resource-card .title .resource-symbol{margin-right:9px}
@media print{.ability-tag{font-size:8pt;padding:1mm;border-color:#b8a37e}.ability-meta{gap:1mm;margin:2mm 0}.resource-symbol{print-color-adjust:exact;-webkit-print-color-adjust:exact}}


/* Selection locks protect the build while keeping navigation and play available. */
.page-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-heading-row h1{margin:0}.lock-button[aria-pressed=true]{background:#e1cc9e;border-color:#795422}.lock-button{font-size:13px}.page-hero .intro{margin-top:12px}



/* Community usability: browse schools in place, compact aligned headings. */
.school-card.school-expanded{grid-column:1/-1}.school-preview{margin-top:14px}.school-ability-preview{margin-top:14px}.school-ability-preview .ability-card{background:#fff7e966}.tool-crafts{margin-top:14px}.tool-crafts input{margin-bottom:8px}
.sheet-block h2.sheet-block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;break-after:avoid}.sheet-block-heading .section-art{float:none;flex:none;width:38px;height:38px;margin:0}.sheet-block-heading>span{min-width:0}
.combat-dock-heading{flex-wrap:wrap}.combat-dock-heading>.inline{flex-wrap:wrap}
@media print{
 @page{size:A4;margin:13mm 12mm}
 html,body{width:auto!important;min-width:0!important;height:auto!important;overflow:visible!important;background:white!important}
 .atelier,.atelier .workspace,.atelier .content-wrap,.main,.sheet{display:block!important;width:auto!important;max-width:none!important;min-height:0!important;height:auto!important;overflow:visible!important;background:none!important}
 .atelier .content-wrap,.atelier .sheet{margin:0!important;padding:0!important}
 .sheet-panel{height:auto;overflow:visible;break-inside:auto}.sheet-panel .grid,.sheet-columns,.inventory-grid,.combat-skill-group>.grid,.ability-list{display:block!important}
 .sheet-panel .stat-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;break-inside:avoid}
 .sheet-block,.sheet-entry,.inventory-item,.sheet-panel .card,.long-text{break-inside:auto;overflow:visible;max-height:none}
 .sheet-panel .card{margin:0 0 3mm}.long-text{orphans:3;widows:3;overflow-wrap:anywhere}
 .sheet-block-heading,.ability-head,.ability-meta,.sheet-entry h3,.sheet-entry .note{break-inside:avoid;break-after:avoid}
 .sheet-block h2.sheet-block-heading{font-size:15pt;margin:0 0 3mm;padding:0 0 2mm;min-height:10mm}
 .sheet-block-heading .section-art{width:9mm;height:9mm;margin:0}
 .identity-fields>label,.identity-fields>input{display:none!important}.identity-print{overflow-wrap:anywhere}.identity-print strong{font:18pt Georgia,serif}
 .character-identity{break-inside:avoid}.sheet-panel .sheet-block{margin-bottom:4mm}
 .sheet-head{break-inside:avoid}.sheet-entry .small-art{width:13mm;height:13mm}.combat-dock{top:auto;position:static!important}
 .sheet .paper{background:none!important}.source-footer{break-inside:avoid}
}


/* Archetype illustrations retain the project's pencil drawings. */
.archetype-medallion{
 --archetype-tint:128,111,79;
 width:64px;height:64px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
 position:relative;border:1px solid #776c55a6;border-radius:50%;overflow:hidden;
 background:radial-gradient(circle at 45% 40%,rgba(var(--archetype-tint),.04) 25%,rgba(var(--archetype-tint),.13) 100%);
 vertical-align:middle;
}
.archetype-medallion:after{content:"";position:absolute;inset:3px;border:1px solid #776c5548;border-radius:49% 51% 50% 48%;pointer-events:none;transform:rotate(-8deg)}
.archetype-medallion .sketch{width:82%!important;height:82%!important;object-fit:contain;margin:0!important;float:none;mix-blend-mode:multiply;filter:none}
.archetype-medallion[data-archetype="krieger"],.archetype-medallion[data-archetype="berserker"]{--archetype-tint:145,78,62}
.archetype-medallion[data-archetype="waechter"],.archetype-medallion[data-archetype="moloch"]{--archetype-tint:81,113,137}
.archetype-medallion[data-archetype="moench"]{--archetype-tint:159,130,65}
.archetype-medallion[data-archetype="schurke"],.archetype-medallion[data-archetype="jaeger"],.archetype-medallion[data-archetype="lagermeister"]{--archetype-tint:103,126,81}
.archetype-medallion[data-archetype="assassine"],.archetype-medallion[data-archetype="schattenkommandant"]{--archetype-tint:112,91,130}
.archetype-medallion[data-archetype="magier"],.archetype-medallion[data-archetype="kampfmagier"]{--archetype-tint:102,102,148}
.archetype-medallion[data-archetype="elementarist"],.archetype-medallion[data-archetype="schuetze"],.archetype-medallion[data-archetype="abenteurer"]{--archetype-tint:71,130,128}
.archetype-medallion[data-archetype="elixierist"]{--archetype-tint:96,139,104}
.archetype-medallion[data-archetype="butler"]{--archetype-tint:138,103,113}
.archetype-grid{grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:12px}
.archetype-grid .archetype-card{flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;padding:16px 10px;text-align:center;min-width:0}
.archetype-grid .archetype-card.selected{padding:15px 9px}
.archetype-grid .archetype-medallion{width:104px;height:104px}
.archetype-grid .title{font-size:18px;padding:0;overflow-wrap:anywhere;line-height:1.25}
.archetype-description,.archeskill-text{white-space:pre-line}
.section .choice>.archetype-medallion{float:right;margin:0 0 10px 14px}
.archetype-grid .choice>.archetype-medallion{float:none;margin:0}
.sheet-entry>.archetype-medallion{float:right;margin:0 0 10px 12px}
.arcana-book{margin:20px 0;max-width:660px}
.arcana-book .field{max-width:280px}
@media(max-width:420px){.archetype-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archetype-grid .archetype-medallion{width:88px;height:88px}.archetype-grid .title{font-size:16px}}
@media print{.archetype-medallion{width:16mm;height:16mm;print-color-adjust:exact}.archetype-medallion .sketch{max-width:100%}}

/* Mystica: branding, category progress and the separate abilities tab. */
.atelier-header{background:#000;color:#fff;border-bottom-color:#676767;gap:20px;padding:10px 28px}
.atelier-brand{flex-direction:row;gap:9px;align-items:center}
.brand-logo{display:block;width:240px;height:auto;object-fit:contain;filter:invert(1)}
.brand-copyright{font:18px/1 Georgia,serif;color:#fff;align-self:center}
.atelier-brand .brand-sub{color:#fff;letter-spacing:2px;font-size:11px}
.atelier-header .actions .btn,.atelier-header .mode-tabs .btn,.atelier-header .mini-help{color:#fff;border-color:#777;background:transparent}
.atelier-header .actions .btn:hover,.atelier-header .mode-tabs .btn:hover,.atelier-header .mini-help:hover{background:#262626}
.atelier-header .mode-tabs .btn.active{background:#fff;color:#111;border-color:#fff}
.atelier-header .mode-tabs .btn.active:hover{background:#eee}
.footer-emblem{display:block;width:38px;height:38px;overflow:hidden;border-radius:50%;flex:0 0 38px;background:#fff;position:relative}
.footer-emblem img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}
.atelier-footer>span:nth-child(2){flex:1}
.page-end-nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:28px 0 8px;padding:18px 0;border-top:1px solid #bda379}
.sheet-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.combat-dock.dock-hidden{display:none}
.ability-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ability-list>.ability-card{min-width:0;overflow-wrap:anywhere}
.ability-list .ability-head{flex-direction:column;gap:10px}
.ability-list .ability-actions{display:flex;flex-wrap:wrap;gap:6px;align-self:stretch}
.ability-list .ability-actions .btn{white-space:normal}
.ability-empty{grid-column:1/-1}
.category-status{position:absolute;top:8px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;font:700 20px/1 'Segoe UI',sans-serif;background:#fff8e9;border:2px solid currentColor;box-shadow:0 1px 3px #2f261925}
.status-complete{color:#247536}.status-available{color:#b75a00}.status-missing{color:#ae2525}
.status-legend{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;font-size:13px;margin:14px 0}
.status-legend span{font-weight:600}
.selection-school-filters{margin:22px 0}
.selection-school-filters h3{margin:0}
@media(max-width:700px){
 .atelier-header{padding:10px 14px;gap:10px}
 .brand-logo{width:184px;height:auto}
 .atelier-brand .brand-sub{font-size:9px;letter-spacing:1px}
 .sheet-tabs button{font-size:12px;overflow-wrap:anywhere}
 .ability-list{gap:8px}
 .ability-list>.ability-card{padding:10px 8px}
 .ability-list .ability-head h3{font-size:17px}
 .ability-list .small-art{width:38px;height:38px;float:none;margin:0 0 5px}
 .ability-list .chip{font-size:11px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .ability-list .ability-actions .btn{font-size:11px;padding:6px;min-height:36px;width:100%}
 .ability-list .long-text,.ability-list .ability-summary,.ability-list .note{font-size:12px}
 .page-end-nav .btn{flex:1 1 150px;font-size:13px}
 .status-legend{gap:8px 14px;font-size:12px}
}
@media print{.combat-dock.dock-hidden{display:block}.category-status{box-shadow:none}}
@media(max-width:700px){.orbit-node{position:relative;left:auto;top:auto}}

.ability-list .ability-head h3{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:700px){.school-toggle strong{font-size:15px;hyphens:auto;overflow-wrap:anywhere}.combat-dock-heading .mini-help{margin-left:auto}}

/* Original vector branding and compact ability controls. */
.resource-choice-art{display:block;float:right;width:104px;height:104px;object-fit:contain;margin:0 0 8px 18px}
.resource-card{display:flow-root}
.ability-info{width:100%;min-width:0}
.ability-icon{display:inline-block;width:20px;height:20px;object-fit:contain;vertical-align:-2px;margin-right:6px}
.ability-list .ability-head{gap:7px}
.ability-list .ability-head h3{margin-bottom:4px;line-height:1.3}
.ability-list .ability-type{margin:0 0 5px}
.ability-facts{display:flex;flex-wrap:wrap;align-items:center;gap:3px}
.ability-facts .chip{margin:0}
.ability-cost{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:100%}
.ability-pay.btn{display:inline-flex;align-items:center;justify-content:center;min-height:28px;width:auto;padding:3px 8px;font-size:12px;line-height:1.3;white-space:nowrap;border-color:#9b8056;background:#eee3ce;color:#382a1b}
.ability-pay.btn:hover{background:#dfcda9}
.ability-pay.btn:focus-visible{outline:2px solid #795b29;outline-offset:2px}
.ability-list .play-ability{padding:14px}
@media(max-width:700px){
 .brand-copyright{font-size:15px}
 .resource-choice-art{float:none;width:70px;height:70px;margin:0 auto 10px}
 .ability-icon{width:18px;height:18px;margin-right:4px;vertical-align:-2px}
 .ability-list .play-ability{padding:10px 8px}
 .ability-pay.btn{min-height:28px;padding:3px 6px;font-size:12px}
}
@media print{.ability-icon{width:4mm;height:4mm}.ability-list .play-ability{padding:3mm}}

.school-toggle-all .school-toggle-art{color:#79582d}


/* Race test expansion: the established parchment and sketch treatment continues. */
.race-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.race-options .choice{min-width:0}
.race-detail-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));align-items:start}
.race-choice-group{border-top:1px solid var(--line,#c6b99f);padding:12px 0}
.race-choice-group>summary{display:list-item;font-weight:700;font-size:1.06rem;cursor:pointer;padding:8px 4px}
.race-choice-group>summary>span{font-size:.88rem;font-weight:400;margin-left:12px}
.race-choice-group[open]>.grid{margin-top:14px}
.race-choice p,.mastery-rank .long-text{font-size:.94rem;line-height:1.5}
.race-choice:disabled{opacity:.65;cursor:default}
.race-choice:disabled .sketch{filter:grayscale(.3)}
.race-socket-summary p{margin:8px 0;font-size:.94rem}
.mastery-rank{border-top:1px solid #c6b99f;padding:14px 0;margin-top:10px}
.mastery-rank.unlocked{border-left:3px solid #5b6846;padding-left:12px}
.northyr-rune>.sketch{width:70px;height:70px;object-fit:contain;float:right}
.race-inline-art{width:36px!important;height:36px!important;object-fit:contain;float:none!important;margin:0 8px 0 0!important;flex:0 0 36px}
.race-feature-card .ability-name{align-items:center}
.race-feature-card .details{margin-top:8px}
.race-combat-controls .btn{margin:5px 8px 5px 0}
.test-copy-label{font-weight:700;color:#634e37}
.race-field{display:block;min-width:0}
@media(max-width:600px){.race-options{grid-template-columns:repeat(2,minmax(0,1fr))}.race-detail-grid{grid-template-columns:minmax(0,1fr)}.race-options .choice .sketch{max-width:100%}}
@media print{.race-feature-card details>.long-text{display:block!important}.race-combat-controls .btn{display:none}.race-choice-group{break-inside:avoid}}

/* Two portraits per people; the card itself remains the single selection target. */
.race-options{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
.race-portrait-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:5px;margin:0 0 10px}
.race-options .race-paired-portrait{display:block;width:100%;height:135px;float:none;margin:0;object-fit:contain}
.race-options .choice .title{font-size:19px;overflow-wrap:anywhere}
@media(max-width:600px){
 .race-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .race-portrait-pair{gap:2px;margin-bottom:6px}
 .race-options .race-paired-portrait{height:90px}
 .race-options .choice .title{font-size:17px}
}
/* Resource names and short forms share the same palette in every view. */
:root{--energy-mn:#165ca7;--energy-sk:#126767;--energy-uk:#a33c1f;--energy-gu:#916000}
.resource-term,option[data-resource],select[data-resource]{font-weight:800!important}
.resource-term[data-resource="MN"],option[data-resource="MN"],select[data-resource="MN"]{color:var(--energy-mn)!important}
.resource-term[data-resource="SK"],option[data-resource="SK"],select[data-resource="SK"]{color:var(--energy-sk)!important}
.resource-term[data-resource="UK"],option[data-resource="UK"],select[data-resource="UK"]{color:var(--energy-uk)!important}
.resource-term[data-resource="GU"],option[data-resource="GU"],select[data-resource="GU"]{color:var(--energy-gu)!important}
.resource-symbol-MN{background:var(--energy-mn);border-color:var(--energy-mn)}
.resource-symbol-SK{background:var(--energy-sk);border-color:var(--energy-sk)}
.resource-symbol-UK{background:var(--energy-uk)}
.resource-symbol-GU{background:var(--energy-gu);border-color:var(--energy-gu)}
.resource-MN .pip.filled{color:var(--energy-mn);background:#165ca71a}
.resource-SK .pip.filled{color:var(--energy-sk);background:#1267671a}
.resource-UK .pip.filled{color:var(--energy-uk);background:#a33c1f1a}
.resource-GU .pip.filled{color:var(--energy-gu);background:#9160001a}
#toast{background:var(--paper);color:var(--ink);border:1px solid var(--line)}
.btn.primary .resource-term{background:var(--paper);border-radius:2px;padding:0 2px}
@media print{.resource-term{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Keep the portrait control separate from image-upload labels and race selection. */
.race-portrait-control{align-self:center;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px}
.race-portrait-control .race-art{display:block}
.portrait-switch.btn{margin:8px auto 0;padding:5px 9px;min-height:36px;font-size:14px;line-height:1.2;white-space:nowrap}
.race-portrait-control .portrait-switch{margin-top:0}
.portrait-editor>.portrait-switch{display:flex}
.race-portrait-overview{float:right;width:150px;margin:0 0 12px 18px}
.overview-race-art{display:block;width:100%;height:160px;object-fit:contain}
@media(max-width:700px){
 .portrait-switch.btn{font-size:13px;padding:5px 6px}
 .race-portrait-overview{width:110px;margin-left:12px}
 .overview-race-art{height:120px}
}
@media print{.race-portrait-overview{width:28mm}.overview-race-art{height:32mm}}
/* Keep painted eye and fur colors intact in portrait displays. */
.race-paired-portrait,.race-portrait-control .sketch,.portrait-placeholder{filter:none}

/* Community patch: immediately visible talent rolls and readable rules. */
.talent-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.talent-heading h3{margin:0}
.talent-roll{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 13px;border:2px solid #76613d;border-radius:5px;background:#fff8e9;color:#302519}
.talent-roll-value{font-size:1.6rem;line-height:1.1}
.talent-bonus{color:#205d38;border-left:1px solid #aa9875;padding-left:12px}
.combat-type-toolbar{display:grid;grid-template-columns:auto minmax(160px,280px) 1fr;gap:10px;align-items:center;margin:16px 0}
.combat-type-toolbar .label,.combat-type-toolbar p{margin:0}
.combat-school-rules{border-left:3px solid #927246;padding:8px 14px;margin:8px 0 14px;background:#fff8e978}
.school-rank{margin:0 0 5px}
.combat-ability-item{min-width:0;display:flex}
.combat-ability-item>.ability-card{width:100%;min-width:0}
.iron-monk-choice{padding:12px 14px;margin:12px 0;border:1px solid var(--line);background:#fff8e978;border-radius:5px}
.iron-monk-choice .field{max-width:340px}
.monk-immunity{margin:0 0 8px}.monk-immunity.active{color:#205d38}
.rule-bonus{color:#205d38}.rule-malus{color:#982c2c}
.rule-bonus strong,.rule-malus strong{font-weight:800}
@media screen{
 .long-text,.sheet-entry .long-text,.choice p,.race-choice p,.race-feature p,.archeskill-text,.archetype-description,.ability-list .long-text,.ability-list .ability-summary,.mastery-rank .long-text,.sheet-entry p{font-size:1rem;line-height:1.65}
 .note,.ability-list .note,.profession .note{font-size:.9375rem;line-height:1.6}
 .type-hidden{display:none!important}
}
@media screen and (max-width:700px){
 .combat-type-toolbar{grid-template-columns:1fr}.combat-type-toolbar .field{width:100%}
 .talent-heading{align-items:stretch}.talent-roll{width:100%;gap:8px}
 .combat-dock-heading>.inline .btn{font-size:.875rem}
}
@media print{.rule-bonus,.rule-malus{print-color-adjust:exact;-webkit-print-color-adjust:exact}.combat-ability-item{display:block}.combat-ability-item>.card{width:auto}}
/* Feedback: concise controls, readable explanations, and per-copy choices. */
.atelier-footer{position:relative;padding-bottom:3.4rem}
.footer-copyright{position:absolute;bottom:1rem;left:0;width:100%;text-align:center;font-size:.875rem}
.stat-description{min-width:0;align-self:start}
.stat-description summary{cursor:pointer;font-weight:600}
.stat-description p{font-size:.9375rem;line-height:1.5;margin:.6rem 0}
.stat-row:has(.stat-description[open]){align-items:start}
.peek-info{margin-left:.35rem;font-size:.95rem}
.stat-popup{max-height:min(70vh,38rem);overflow:auto}
.peek-description{font-size:.875rem;line-height:1.45;margin:.5rem 0 1rem}
.ability-actions .unlearn{border-color:#a35950;color:#842f28;background:#f7e9e2;white-space:normal}
.ability-actions .unlearn:hover{background:#efd9cf}
.learned-sort{display:flex;align-items:center;gap:.45rem;font-size:.9375rem}
.school-browse>label,.school-browse>div{flex:1;min-width:200px}
.item-copy-editor{border-top:1px solid var(--line,#d2c2a3);padding-top:1rem;margin-top:1rem}
.item-copy-editor h4{margin:0 0 .75rem}
.profession-price{font-weight:700;color:#65492a}
.archetype-summary{margin:1rem 0 1.75rem}
.archetype-parent h3{font-size:1.5rem;margin:.2rem 0 .8rem}
.archetype-parent>.archetype-medallion{float:right}
.archeskill-children{border-left:3px solid #b99c62;padding-left:1.25rem;margin:1rem 0 0 .6rem}
.archeskill-child{padding:.75rem 1rem;background:#efe7d7;margin-top:.65rem;border-radius:6px}
.archeskill-child h4{font-size:1.1rem;margin:.25rem 0 .75rem}
.weapon-use-panel{border:1px solid #bda97f;border-radius:10px;padding:1rem 1.25rem;margin:1rem 0 1.5rem;background:#f7f0e2}
.weapon-use-panel h3{margin:0 0 .75rem}
.weapon-use-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;align-items:end}
.weapon-use-controls>.label{margin:0;grid-column:1/-1}
.weapon-use-controls>.field{grid-column:1/-1}
.weapon-roll{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;font-weight:600}
.weapon-roll .stat-numbers{width:auto}
.weapon-roll small{font-weight:400}
.weapon-bonus-summary{font-size:.9375rem;line-height:1.5;margin:.75rem 0 0}
.weapon-bonus-summary p{margin:.4rem 0}
.effect-term{display:inline;padding:0;border:0;border-bottom:1px dotted currentColor;border-radius:0;background:transparent;color:#685329;font:inherit;line-height:inherit;cursor:help;text-align:left}
.effect-term:hover,.effect-term:focus-visible{color:#3d572f;background:#e9dec2;outline-offset:3px}
.effect-choice-wrap{display:flex;flex-direction:column;min-width:0}
.effect-choice-wrap>.choice{width:100%;flex:1}
.effect-choice-help{padding:.5rem .75rem;font-size:.875rem}
.effect-choice-help summary{cursor:pointer}
.effect-choice-help .effect-term{margin:.5rem .7rem 0 0}
.status-explanation{padding:.5rem 0;border-bottom:1px solid #dacdb5}
.status-explanation h4{margin:.5rem 0;font-size:1rem}
@media(max-width:600px){.archeskill-children{padding-left:.65rem;margin-left:.2rem}.archeskill-child{padding:.75rem}.weapon-use-panel{padding:1rem}.weapon-use-controls{grid-template-columns:1fr}.ability-actions .unlearn{min-height:42px}.footer-copyright{position:static;order:10}.atelier-footer{padding-bottom:1rem}}
.race-categories{display:grid;gap:22px;margin-bottom:30px}
.race-category h2{font-size:1.12rem;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid #b7ae91}
.race-category .race-options{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:0;max-width:100%}
.race-category .choice{max-width:360px}
.atelier-footer .footer-emblem{width:38px;height:38px;min-width:38px;max-width:38px;flex:0 0 38px;aspect-ratio:1/1;padding:0;line-height:0}
.atelier-footer .footer-emblem img{width:38px;height:38px;max-width:38px;max-height:38px;object-fit:contain;padding:0;aspect-ratio:1/1}
.inventory-notes-row{display:grid;grid-template-columns:minmax(210px,1fr) minmax(300px,2fr);gap:20px;align-items:start}
.wallet-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wallet-fields label{font-size:.85rem;font-weight:700}
.wallet-fields input{padding:8px;margin-top:6px;text-align:right;min-width:0}
.supplies-count{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.supplies-count input{width:80px;text-align:right}
.inventory-notes-row textarea{min-height:100px}
.maneuver-weight{display:inline-block;font-size:1rem;font-weight:700;margin-left:8px}
.companion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.companion-card{border:1px solid #b5ac94;border-radius:12px;background:#faf8f1;padding:18px;min-width:0;overflow:hidden}
.companion-card header{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.companion-card header>div{min-width:0}
.companion-card h3{font-size:1.25rem;margin:3px 0 10px}
.companion-card h4{font-size:.96rem;margin:0 0 6px}
.companion-card .companion-art{width:120px;height:120px;object-fit:contain;flex:0 0 120px;float:none;margin:0}
.companion-card .long-text{font-size:.98rem;line-height:1.5}
.companion-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 16px;gap:1px;background:#ded8c7;border:1px solid #ded8c7;border-radius:8px;overflow:hidden}
.companion-stats>div{padding:9px 5px;background:#f1eedf;text-align:center}
.companion-stats dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.025em;color:#595747}
.companion-stats dd{font-size:1.18rem;font-weight:750;margin:3px 0 0}
.companion-attack{border-left:3px solid #8d6645;padding-left:12px;margin-bottom:16px}
.companion-attack dl{margin:0}
.companion-attack dl>div{display:flex;gap:8px;font-size:.94rem;padding:3px 0}
.companion-attack dt{flex:0 0 65px;color:#5e5b50}
.companion-attack dd{margin:0}
.companion-traits>section{display:grid;grid-template-columns:46px minmax(0,1fr);gap:9px;border-top:1px solid #ded8c7;padding:11px 0}
.companion-traits>section:last-child{padding-bottom:0}
.companion-cost{font-size:.85rem;font-weight:750;color:#605437}
.companion-selection{font-weight:700;font-size:.94rem}
.summon-payment{padding:10px 6px;display:flex;gap:8px}
.ability-card .companion-card{padding:12px;margin-top:8px}
.ability-card .companion-art{width:56px;height:56px;flex-basis:56px}
@media(max-width:720px){.inventory-notes-row,.companion-grid{grid-template-columns:1fr}.companion-card header{gap:10px}.companion-card .companion-art{width:84px;height:84px;flex-basis:84px}.race-category .race-options{grid-template-columns:repeat(2,minmax(0,1fr))}.race-category .choice{padding:8px}.race-category .title{font-size:.94rem}}
@media(max-width:400px){.companion-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-card{padding:12px}.companion-card header{align-items:flex-start}.companion-card .companion-art{width:68px;height:90px;flex-basis:68px}}

/* Six character-sheet sections; two rows on narrow screens. */
.sheet-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:700px){.sheet-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}


/* Small medallions reveal one people group at a time. */
.race-category-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:8px 0 24px}
.race-category-tabs .category-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px 6px;min-width:0}
.race-category-tabs .title{font:18px Georgia,serif;text-align:center;overflow-wrap:anywhere}
.race-category-tabs .category-medallion{width:90px;height:90px;float:none;margin:0;--archetype-tint:135,112,71}
.category-medallion[data-category="elf"]{--archetype-tint:90,123,95}.category-medallion[data-category="dwarf"]{--archetype-tint:146,100,68}.category-medallion[data-category="beastfolk"]{--archetype-tint:156,119,68}.category-medallion[data-category="shapeshifter"]{--archetype-tint:93,116,130}.category-medallion[data-category="undead"]{--archetype-tint:116,90,129}
.race-category-options{margin-bottom:28px}.race-category-options .race-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.race-category-options h2{font:26px Georgia,serif;margin:0 0 16px}
.long-text .rule-list{margin:10px 0;padding-left:22px;white-space:normal}.rule-list li{margin:7px 0;line-height:1.5}.rule-list li>strong{font-weight:750}.rule-paragraph+.rule-paragraph{margin-top:10px}
.companion-counters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.companion-counter{flex:1 1 115px;min-width:0;padding:8px;border:1px solid #baa27c;border-radius:4px;background:#f0e5cd}.companion-counter>span{display:block;text-align:center;font-size:14px;font-weight:650;margin-bottom:7px}.companion-counter>div{display:flex;align-items:center;justify-content:space-between;gap:7px}.companion-counter .btn{width:30px;min-width:30px;height:32px;min-height:32px;padding:0;font-size:20px}.companion-counter output{font-size:21px;white-space:nowrap}.companion-counter output small{font-size:14px;color:#65573f}.companion-counter[data-counter="TK"] output strong{color:#8b2926}.companion-counter[data-counter="A"] output strong{color:#81382d}.companion-counter[data-counter="Z"] output strong{color:#245237}
.companion-saves{margin:18px 0}.companion-saves h4{font-size:16px;margin:0 0 8px}.companion-saves dl{margin:0;border:1px solid #c7b492;border-radius:4px;overflow:hidden}.companion-saves dl>div{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:7px 10px;border-bottom:1px solid #d5c4a7;background:#f7f2e5}.companion-saves dl>div:last-child{border:0}.companion-saves dt{font-size:15px}.companion-saves dd{margin:0;font-weight:750;font-size:18px}.companion-saves .save-icon{height:28px;width:28px;float:none;margin:0;object-fit:contain}.companion-variant{display:block;margin:12px 0;font-size:14px}.companion-variant select{margin-top:5px}
.armor-values{margin:12px 0 16px}.armor-values h4{margin:0 0 9px;font-size:16px}.armor-values dl{display:grid;gap:6px;margin:0}.armor-values dl>div{display:flex;align-items:baseline;gap:8px}.armor-values dd{margin:0;font-size:17px}.armor-values .rule-bonus,.armor-values .rule-bonus strong{color:#164e2c}.armor-weight{margin:12px 0 0!important;color:#8b171b}.armor-weight strong{font-weight:800;color:#8b171b}.armor-copy+.armor-copy{border-top:1px solid #bca888;padding-top:12px}
.stat-row .stat-max{font-size:22px;min-width:34px;padding:0 5px}.stat-row{grid-template-columns:minmax(0,1fr) 34px 30px 34px 34px 50px}
@media(max-width:1000px){.race-category-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.race-category-options .race-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.race-category-tabs{gap:8px}.race-category-tabs .category-medallion{width:72px;height:72px}.race-category-tabs .title{font-size:15px}.race-category-tabs .category-choice{padding:10px 4px}.race-category-options .race-options{grid-template-columns:1fr}.stat-row{gap:4px;grid-template-columns:minmax(70px,1fr) 28px 25px 28px 28px 40px}.stat-row .btn{min-width:28px;padding:0}.stat-row .crit{font-size:13px}.companion-card header{gap:10px}.companion-card .companion-art{width:82px;height:82px}}

/* Summons live with their abilities; exclusive forms reveal only one explanation. */
.summon-details{margin-top:12px;border-top:1px solid #c7b492;padding-top:10px}.summon-details>summary{cursor:pointer;font-size:15px;font-weight:700;padding:7px 0}.summon-details:not([open])>summary{margin-bottom:0}.summon-variants{padding:0;border:0;margin:0 0 12px;min-width:0}.summon-variants legend{font-size:14px;font-weight:650;margin-bottom:8px}.summon-variants>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.summon-variant-option{display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;border:1px solid #bca581;border-radius:4px;padding:9px 5px;font-size:14px;background:#faf6e9;min-width:0}.summon-variant-option.selected{background:#e7d2a7;border-color:#806332;box-shadow:inset 0 0 0 1px #806332}.summon-variant-option:focus-within{outline:2px solid #316252;outline-offset:2px}.summon-variant-option input{margin:0;accent-color:#745a31;flex:none}.summon-variant-description{margin-bottom:14px;padding:0 2px}.summon-variant-description .long-text{font-size:15px}.companion-cost:empty{display:none}.companion-traits>section:has(.companion-cost:empty){grid-template-columns:1fr}.binding-source{border-top:1px solid #c7b492;margin:18px 0;padding-top:16px}.binding-source>.long-text{margin-bottom:16px}.binding-source>.btn{margin-top:12px}.binding-actions{display:flex;gap:8px;padding:8px 0}.binding-form{display:grid;gap:16px;max-width:700px}.binding-form .field{margin-top:5px}.binding-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.binding-form fieldset{border:1px solid #c7b492;border-radius:4px;padding:12px}.binding-form legend{font-weight:700}.binding-form textarea{min-height:90px}.binding-form .note{margin:0}
@media(max-width:600px){.summon-variants>div{gap:4px}.summon-variant-option{gap:4px;padding:10px 3px}.binding-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Talent catalogue 1.3: grouped selection and explicit profession decisions. */
.talent-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:25px 0}.talent-category{width:150px;border:0;background:none;display:grid;justify-items:center;gap:5px;cursor:pointer;color:inherit;font:inherit;padding:8px}.talent-category-art{display:grid;place-items:center;width:94px;height:94px;border-radius:50%;border:2px solid #b19a72;background:#eee2c5;overflow:hidden;box-shadow:inset 0 0 0 4px #f6edda}.talent-category-art img{width:90px;height:90px;object-fit:contain;margin:0;float:none}.talent-category-art .archetype-medallion{width:90px;height:90px}.talent-category.selected .talent-category-art{border-color:#365b47;box-shadow:0 0 0 3px #8da284}.talent-category small{color:#70634f}.talent-category strong{font-size:15px}.talent-card .eyebrow{font-size:11px}.talent-card>.long-text{font-size:16px;line-height:1.6;margin:12px 0}.talent-professions{margin:18px 0}.talent-professions>summary{font-size:16px;font-weight:700;cursor:pointer;padding:8px 0}.talent-profession{border-top:1px solid #cdbd9e;padding:14px 0}.talent-profession h4{margin:0;font-size:16px}.talent-profession h4 small{display:block;font-size:12px;color:#6f624d}.talent-profession .long-text{font-size:15px;line-height:1.55}.talent-profession .section-header{gap:10px;align-items:start;margin-bottom:8px}.talent-profession .section-header .btn{white-space:nowrap}.talent-learned{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#e5eddc;padding:6px 9px;margin-top:8px;font-size:14px}.talent-learned>span{color:#254b32;font-weight:650}.talent-field{display:block;margin:8px 0}.talent-field .field{margin-top:4px;width:100%}.talent-decisions{border-top:1px solid #cdbd9e;padding-top:12px}.talent-decisions h4,.talent-card h4{margin-bottom:8px}.talent-card .form-grid{gap:10px}.talent-sheet-group{margin-bottom:22px}.talent-sheet-group>h3{border-bottom:1px solid #b9a483;padding-bottom:7px;color:#65502e}.talent-choice-summary{font-size:15px}.legacy-talents{margin-top:18px}.talent-ability .ability-facts{margin:8px 0}.talent-grid{align-items:start}.talent-card .field{min-width:0}
@media(max-width:650px){.talent-categories{gap:5px}.talent-category{width:105px;padding:5px 0}.talent-category-art{width:74px;height:74px}.talent-category-art img,.talent-category-art .archetype-medallion{width:70px;height:70px}.talent-category strong{font-size:13px}.talent-card .form-grid{grid-template-columns:1fr}.talent-learned{flex-wrap:wrap}}
/* 12.10: compact game controls, true overlays, and separate core slots. */
.vehler-core-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.vehler-core-grid textarea{min-height:110px}.vehler-injury{grid-template-columns:repeat(9,minmax(0,1fr))}.vehler-injury .wound{padding:8px 3px;font-size:.78rem}.artifact-charges{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:8px 0;margin-top:8px}.artifact-charges .btn{padding:3px 8px}.found-label{font-size:.85rem;color:#605338;margin:5px 0}.compact-number{max-width:120px}.effect-hover{cursor:help;text-decoration:underline dotted;text-underline-offset:3px}.effect-popup{position:fixed;max-width:min(330px,calc(100vw - 16px));z-index:1000;pointer-events:none;line-height:1.5;padding:12px}.inventory-add{margin-bottom:16px}.talent-field select+input{margin-top:5px}
@media(max-width:760px){.vehler-core-grid{grid-template-columns:1fr}.vehler-injury{grid-template-columns:repeat(3,minmax(0,1fr))}.artifact-charges{flex-wrap:wrap}}


/* November inventory: compact notes, catalogue and individual entries. */
.inventory-copy{position:relative;padding-right:34px}.inventory-copy>.sheet-entry h3{overflow-wrap:anywhere}.item-note-button{position:absolute;right:0;top:2px;width:30px;height:32px;padding:5px!important;min-width:30px;display:grid;place-items:center}.item-note-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.item-source{display:flex;flex-wrap:wrap;gap:20px;border:1px solid #bca581;margin:0 0 18px;padding:12px}.item-source label{display:flex;align-items:center;gap:6px;cursor:pointer}.item-add-form .field{width:100%;box-sizing:border-box}.item-add-form textarea{min-height:90px}.item-add-form [hidden]{display:none!important}.custom-inventory-item{margin:10px 0;padding-bottom:10px;border-bottom:1px solid #cfbea0}.custom-inventory-item .inline{gap:12px;font-size:14px}
dialog.item-note-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:80vh;padding:28px;border:1px solid #a38350;border-radius:4px;background:#eee0b9 url('assets/parchment.webp') center/cover;box-shadow:0 16px 50px #261c0b66;color:#3d2b18}dialog.item-note-dialog::backdrop{background:#21180c66}dialog.item-note-dialog h2{padding-right:24px;font-size:22px;overflow-wrap:anywhere}.item-note-paper{white-space:pre-wrap;overflow-wrap:anywhere;font-family:'Segoe Print','Bradley Hand','Comic Sans MS',cursive;font-size:18px;line-height:1.75;padding:8px 0}.note-close{position:absolute;right:10px;top:10px;font:25px Georgia,serif;padding:2px 9px!important}


.attached-item-note{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px}.attached-item-note .item-note-button{position:static;flex:none}

/* Official V1 */
.forest-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:14px;margin:20px 0}.forest-choice{text-align:center}.forest-choice.selected{border-color:#4d6c42;background:#e7e5d5}.forest-form-art{width:112px;height:112px;object-fit:contain;display:block;margin:auto}.forest-choice details{text-align:left}.forest-controls{padding:12px;border:1px solid #bca77c;border-radius:6px;background:#f0e8d5;margin:8px 0}.forest-controls .inline{margin-top:10px;flex-wrap:wrap}.official-feature-controls{padding:0 10px 12px}.official-feature-controls .btn{margin:3px}.forest-editor .field{max-width:100%}.test-copy-label{font-weight:700;color:#233c31}
.action-a{color:#71358b;font-weight:800}.combat-dock-counters.with-companions{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(210px,1.8fr) var(--energy-columns);gap:7px;align-items:start}.dock-companion-actions{padding:4px 6px;display:block}.dock-companion-row{display:grid;grid-template-columns:15px minmax(0,1fr) 26px auto 26px;gap:5px;align-items:center;min-height:28px}.dock-companion-row+.dock-companion-row{border-top:1px solid #af936833;margin-top:2px;padding-top:2px}.dock-companion-row>strong{font-size:17px}.dock-companion-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25}.dock-companion-row output{font-size:16px;white-space:nowrap;line-height:1.2}.dock-companion-row output small{font:12px 'Segoe UI',sans-serif;color:#6b5c42}.combat-dock .dock-companion-row .counter-button{width:26px;min-width:26px;height:26px;min-height:26px;font-size:18px;padding:0}
@media(max-width:1000px){.combat-dock-counters.with-companions{grid-template-columns:repeat(4,minmax(0,1fr))}.with-companions .dock-companion-actions{grid-column:3 / -1}}
@media(max-width:700px){.combat-dock-counters.with-companions{grid-template-columns:repeat(2,minmax(0,1fr))}.with-companions .dock-companion-actions{grid-column:1 / -1}.dock-companion-name{font-size:14px}.dock-companion-row{grid-template-columns:18px minmax(0,1fr) 30px auto 30px}.combat-dock .dock-companion-row .counter-button{width:30px;min-width:30px;height:30px;min-height:30px}}
@media print{.dock-companion-row{grid-template-columns:15px minmax(0,1fr) auto}.with-companions .dock-companion-actions{grid-column:auto}}
.skill-toolbar{align-items:end;flex-wrap:wrap}.skill-toolbar>label{flex:1 1 170px;min-width:0;font-size:14px;font-weight:600}.skill-toolbar .skill-search-label{flex:1.2 1 210px}.skill-toolbar .field{width:100%;margin-top:4px}.skill-toolbar .learned-sort{flex:0 0 auto;font-weight:400;padding:8px 0}.ability-tier-filter{display:block;font-size:14px;font-weight:600;min-width:0}.ability-tier-filter .field{width:100%;margin-top:4px}.ability-tier-badge{font-weight:700;border-color:#8b7145;background:#eee4ce}.school-ability-preview>.ability-tier-filter{max-width:290px;margin:12px 0}.combat-type-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.combat-type-toolbar>div,.combat-type-toolbar>.ability-tier-filter{flex:1 1 210px}.combat-type-toolbar>p{flex:0 1 auto}.combat-archive{margin-top:14px}.combat-archive summary{font-weight:600;cursor:pointer}.combat-archive p{margin:10px 0}.combat-school-rules{font-size:14px}
@media(max-width:600px){.skill-toolbar>label{flex-basis:100%}.skill-toolbar .learned-sort{flex-basis:100%}.combat-type-toolbar>div,.combat-type-toolbar>.ability-tier-filter{flex-basis:100%}}

/* Approved rules patch */
.rank-1{color:#302b24}.rank-2{color:#075ca8}.rank-3{color:#9c3e18}.tired-reaction{flex-wrap:wrap}.enchantments-section{margin-top:16px}.enchantment-card h3{margin:0}.enchantment-card .note{margin:5px 0}.enchantment-counter{gap:8px;margin-top:10px;flex-wrap:wrap}.enchantment-counter>strong{white-space:nowrap}.enchantments-section>.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.faith-rules{margin:10px 0}.faith-rules summary{font-weight:700}.material-rank{margin:8px 0}@media(max-width:700px){.enchantments-section>.grid{grid-template-columns:1fr}}

.pet-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0 20px}.pet-choice{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 6px;border:1px solid #b5a17a;border-radius:9px;background:#eee7d6;color:#30271a;font:inherit;cursor:pointer}.pet-choice.selected{border:2px solid #355943;background:#dfe5d8}.pet-choice-art{width:100%;max-width:130px;height:130px;object-fit:contain}.pet-tools{display:flex;gap:7px;flex-wrap:wrap;padding:8px}.catalog-pet>.companion-card{height:auto}.catalog-pet{min-width:0}.pet-catalog+.field{margin-top:12px}@media(max-width:480px){.pet-catalog{gap:5px}.pet-choice{font-size:13px}.pet-choice-art{height:95px}}

.archetype-play .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archetype-play .card{min-width:0}.archetype-play .btn{margin:3px}.archetype-medallion[data-archetype="kleriker"]{background:radial-gradient(circle,#ece0b9,#eee7d3 70%)}.archetype-archive{margin:16px 0}.archeskill-text p{margin:8px 0}.archetype-description p{margin:6px 0}@media(max-width:650px){.archetype-play .grid{grid-template-columns:1fr}}

/* Magic V1 */
.school-kind-filter{display:flex;gap:6px;flex-wrap:wrap}.school-browse{align-items:end;flex-wrap:wrap}.summon-illustration{display:block;width:100%;max-width:190px;height:190px;object-fit:contain;margin:8px auto 12px}.summon-preview{margin:8px 0}.freeze-conditions{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.freeze-conditions label{display:flex;gap:6px;align-items:center}.summon-variant-preview{margin:10px 0}.summon-variant-preview summary{font-weight:700;cursor:pointer}

/* Compact school filters, people abilities, companion saves and spell sockets. */
.ability-tier-checks{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;border:0;padding:6px 0;margin:6px 0 16px;min-width:0;font-size:13px}
.ability-tier-checks legend{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.ability-tier-checks label{display:inline-flex;align-items:center;gap:4px;cursor:pointer;min-height:28px}
.ability-tier-checks input{width:15px;height:15px;margin:0;accent-color:#4c684f}
.ability-tier-checks .unavailable{color:#857e71;cursor:default;opacity:.7}
.race-feature-details summary{cursor:pointer;font-weight:600;font-size:14px}
.race-feature-card .ability-summary{margin:8px 0;line-height:1.45}
.companion-saves.compact-saves{margin:12px 0}
.companion-saves.compact-saves dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:0;gap:5px;overflow:visible}
.companion-saves.compact-saves dl>div{display:block;min-width:0;text-align:center;padding:6px 3px;border:1px solid #c7b492;border-radius:4px;background:#f7f2e5}
.companion-saves.compact-saves dt{display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px;line-height:1.2}
.companion-saves.compact-saves dd{font-size:17px;margin:3px 0 0;overflow-wrap:anywhere}
.companion-saves.compact-saves .save-icon{width:19px;height:19px;flex:none}
.spell-sockets{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}
.spell-sockets .socket-choice{font-size:12px;padding:3px 6px;min-height:28px;line-height:1.25;margin:0;max-width:100%;white-space:normal}
.spell-sockets .socket-choice.selected{border-color:#6c5385;background:#eee5f2;color:#442456}
.prepared-modifiers{border-left:2px solid #8868a1;padding-left:8px;margin:8px 0 10px;font-size:14px}
.prepared-modifiers details{margin:4px 0}.prepared-modifiers summary{cursor:pointer;font-weight:600}
.prepared-modifiers small{color:#6b5c42;font-size:12px}
.socket-catalog{display:grid;gap:10px;max-height:60vh;overflow-y:auto;padding:2px}
.socket-option{display:flex;align-items:start;gap:10px;border:1px solid #c7b492;border-radius:6px;padding:10px;background:#f7f2e5}
.socket-option>div{min-width:0;flex:1}.socket-option h3{font-size:17px;margin:0}.socket-option h3 .ability-icon{vertical-align:middle;margin-right:5px}
.socket-option .note{margin:5px 0;font-size:13px}.socket-option.selected{border-color:#6c5385;background:#eee5f2}
.socket-option>.btn{flex-shrink:0;font-size:13px;padding:6px 9px}
@media(max-width:450px){.socket-option{flex-wrap:wrap}.socket-option>div{flex-basis:100%}.companion-saves.compact-saves dt{flex-wrap:wrap;gap:2px}.companion-saves.compact-saves dt span{flex-basis:100%}.ability-tier-checks{gap:4px 12px}}
@media print{.race-feature-details>*{display:block!important}.race-feature-details summary{display:none}.prepared-modifiers{display:none}}

/* Composed equipment and faith, 08.11.2026 */
.armor-profile dl{margin:6px 0}.armor-profile dl>div{display:flex;gap:8px;align-items:baseline}.armor-profile dd{margin:0}.armor-profile dt{font-weight:400}
.gear-heading{display:flex;align-items:center;gap:12px;margin:6px 0 12px}.gear-heading h3{margin:0}.gear-small{width:48px;height:48px;object-fit:contain}.gear-catalog-art{width:76px;height:76px;object-fit:contain}.gear-variants,.gear-owned-row,.gear-school-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.gear-owned-row{padding:6px 0;justify-content:space-between}.gear-variants .btn{white-space:normal}.gear-components summary{font-weight:600}.gear-components p{margin:9px 0}.gear-total{border-top:1px solid #b8a17b;margin-top:14px;padding-top:12px}.gear-total>span{display:block;font-size:13px;margin-top:5px}.gear-additions{margin:15px 0;border:1px solid #b8a17b;display:grid;grid-template-columns:1fr 1fr;gap:8px}.gear-spell-list{max-height:50vh;overflow:auto;margin-top:12px}.gear-school-filters .btn{display:flex;align-items:center;gap:5px;font-size:13px}.gear-school-icon{width:32px;height:32px;object-fit:contain}.gear-school-filters{margin-top:10px}.gear-uses{margin:10px 0;font-size:14px}.composed-item .armor-profile>div{line-height:1.7}.composed-item p{margin:8px 0}.gear-spell{border-left:2px solid #9d87a4;padding-left:9px;margin:10px 0}.rule-reference-button{cursor:pointer;font:inherit;color:inherit}.spell-references{margin:4px 0;font-size:12px}.rules-table-wrap{overflow-x:auto}.rules-reference th,.rules-reference td{white-space:normal;text-align:left;vertical-align:top;padding:9px}.rules-reference tbody th{min-width:120px;max-width:180px}.pantheon-panel{border:1px solid #b6a17c;border-radius:6px;background:#f6f0e3;margin:12px 0;padding:10px}.pantheon-panel>summary{display:flex;align-items:center;gap:14px;cursor:pointer}.pantheon-panel>summary>span{display:flex;flex-direction:column;gap:5px}.pantheon-art{width:210px;max-width:44%;height:130px;object-fit:contain}.pantheon-rank{font-size:16px}.pantheon-professions{display:flex;flex-wrap:wrap;gap:4px}.pantheon-professions .chip{font-size:12px}.pantheon-gods{display:grid;grid-template-columns:1fr;gap:4px}.faith-form{margin-top:10px}.start-level-panel{max-width:450px;margin-bottom:20px}.gear-catalog-card[hidden]{display:none}
@media(max-width:600px){.gear-additions{grid-template-columns:1fr}.gear-catalog-art{width:58px;height:58px}.pantheon-panel>summary{align-items:flex-start;gap:8px}.pantheon-art{width:130px;height:110px}.rules-reference th,.rules-reference td{font-size:14px;padding:6px}.gear-spell-list{max-height:45vh}}
.bow-ready{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0}.bow-ready small{flex-basis:100%;color:#6b5c42}.jewelry-spell-effects{font-size:14px;line-height:1.45;margin:6px 0;padding:5px 8px;border-left:2px solid #b5934d;background:#b5934d12}

.usage-editor{border:1px solid #b8a17b;margin:12px 0;padding:10px}.usage-values{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.usage-values[hidden]{display:none}.item-use-counter{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0}.item-use-input{width:72px;padding:4px;text-align:center}.weapon-enchantment{border-top:1px solid #b8a17b;padding-top:8px;margin-top:8px}.pantheon-heading{display:flex;align-items:center;gap:12px}.pantheon-heading h3{margin:0}.deity-entry{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;border-bottom:1px solid #c8b58c;padding:14px 0}.deity-art{width:120px;height:160px;object-fit:contain}.combat-dock-utility{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:5px 0}.combat-dock-utility label{display:flex;align-items:center;gap:6px}.combat-dock-utility .field{width:70px;padding:3px}.compact-spirit-traits{margin:8px 0}.race-feature-card .ability-info{min-width:0;width:100%}.race-feature-card .ability-head{display:block}.race-feature-card .ability-summary{overflow-wrap:normal}.deity-entry p{line-height:1.55}
@media(max-width:600px){.deity-entry{grid-template-columns:75px minmax(0,1fr);gap:10px}.deity-art{width:75px;height:115px}.pantheon-heading{align-items:flex-start}.usage-values{grid-template-columns:1fr 1fr}}
.effect-pickers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.effect-pickers label{font-size:14px}.effect-pickers .field{width:100%;margin-top:4px}.active-effects{display:grid;gap:10px;margin:12px 0}.active-effect{padding:10px;border:1px solid #bfa77d;border-radius:5px}.active-effect h4{margin:0}.active-effect p{margin:6px 0}.active-effect.suppressed{opacity:.65}.effect-blocked{border-color:#9b4545!important;background:#ad34340a!important}.effect-blocked-label,.effect-cost-note{color:#8d2525;font-weight:700;font-size:13px;display:block}.effect-blocked button[disabled]{opacity:.5}
@media(max-width:700px){.effect-pickers{grid-template-columns:1fr 1fr}}
.advance-budget-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:16px 0}.advance-budget{border:1px solid #bfa77d;border-radius:5px;padding:10px}.advance-budget strong,.advance-budget span{display:block}.advance-choice{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.advance-choice span{flex-basis:100%;font-size:13px}.creation-frozen{border:0;padding:0;margin:0;min-width:0}.creation-frozen :disabled{opacity:.85}.creation-review-nav{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.correction-banner{margin-bottom:16px}.mode-tabs{flex-wrap:wrap}

.hunter-choices .field{max-width:28rem}.resource-exchange-options{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.gift-play-controls{border-top:1px solid var(--line,#c5b79b);margin-top:.6rem;padding-top:.5rem;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.gift-play-controls p{flex-basis:100%;margin:.15rem 0}.gift-play-controls button,.hunter-play button{font-size:.88rem;padding:.3rem .5rem}.hunter-trophy{border-top:1px solid var(--line,#c5b79b);padding:.6rem 0}.hunter-trophy details{margin:.35rem 0}.hunter-play h2 .race-inline-art{width:2rem;height:2rem}.hunter-play .grid{align-items:start}

/* Loadouts and race catalogue modes · 08.11.2026 */
.loadout-tabs,.race-view-switch{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 0 14px}.loadout-tabs small{flex-basis:100%;color:#62543d}.loadout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.loadout-grid>section{padding:12px;border:1px solid #b49b70;background:#f4eddb88;border-radius:7px;min-width:0}.loadout-grid h3{margin-top:0}.loadout-hands{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:8px 0 12px}.hand-space{min-width:62px;text-align:center;border:1px dashed #9a886a;padding:7px;background:#f7f2e6;border-radius:5px;color:#5c634c}.hand-space.occupied{border-style:solid;background:#d9c6a3;color:#403624}.loadout-hands strong{font-size:14px}.loadout-slot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #ac956544}.loadout-slot>div:not(.loadout-configuration){flex:1;min-width:130px}.loadout-slot small{display:block;font-size:13px}.loadout-icon{width:36px;height:40px;object-fit:contain;flex:none}.loadout-configuration{flex-basis:100%;font-size:14px}.loadout-configuration select{font-size:14px}.loadout-entry-state{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:13px;margin:5px 0 12px}.loadout-picker>div{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #b49b7055}.loadout-picker strong{flex:1}.loadout-slot .item-use-counter{flex-wrap:wrap;font-size:13px}.loadout-panel>.notice{font-size:14px}.race-category-tabs .choice.category-choice{background-color:#bda47b;background-image:linear-gradient(145deg,#5a432422,#eee1bd33);border:1px solid #8d744e;box-shadow:0 2px 4px #34240e22;border-radius:12px;color:#2e2418}.race-category-tabs .choice.category-choice:hover{background-color:#cbb48b;box-shadow:0 3px 6px #34240e2b}.race-category-tabs .choice.category-choice.selected{background-color:#c6b18a;border-color:#44573e;box-shadow:inset 0 0 0 1px #44573e,0 2px 4px #34240e22}.race-options .race-leaf{background-color:#f4eddc;border:3px double #b5a17b;border-radius:4px;box-shadow:none;min-width:0}.race-options .race-leaf.selected{border-color:#53664a;background-color:#eef0df}.race-leaf>small{display:block;color:#726248;margin-top:5px;font-size:12px}.race-view-switch .btn{font-size:14px}.race-view-switch [aria-pressed=true]{box-shadow:inset 0 -2px 0 #b8a97f}
@media(max-width:680px){.loadout-grid{grid-template-columns:1fr}.loadout-tabs .btn{flex:1;padding:7px}.loadout-picker>div{flex-wrap:wrap}.loadout-hands strong{font-size:13px}}
@media print{.loadout-grid{break-inside:avoid}.race-view-switch{display:none}}
.ability-archetype-buttons{display:flex;gap:4px;flex-wrap:wrap;margin:5px 0}.ability-archetype-buttons .btn{font-size:12px;padding:3px 7px;min-height:27px}.ability-archetype-buttons .selected{background:#e4dded;border-color:#75528e;color:#4b2d65}.archetype-preparation,.last-ability-use{font-size:13px;margin:6px 0}.archetype-option-form{display:grid;gap:10px}.archetype-option-preview{padding:10px;background:#ebe3ce;border:1px solid #b6a27c;border-radius:5px}.archetype-option-preview p{margin:5px 0}.bow-range{margin:7px 0;font-size:15px}.range-safe{font-weight:700;color:#236333}.range-risky{font-weight:700;color:#a7540b}.bow-range small{display:block;font-size:12px;color:#6e5d44}.archetype-preparation summary{overflow-wrap:anywhere}

/* Quest journal uses the same handwriting family as inventory notes. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sheet-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
.quest-handwritten{font-family:'Segoe Print','Bradley Hand','Comic Sans MS',cursive!important;font-size:18px;line-height:1.65}
.quest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.quest-card{padding:20px 22px;background-color:#eee0b9;background-image:url('assets/parchment.webp');background-size:cover;min-width:0}.quest-card header{position:relative;padding-right:40px}.quest-card h3{font-size:23px;margin:.4rem 0;overflow-wrap:anywhere}.quest-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:1rem 0}.quest-current-status{display:flex;gap:6px;align-items:center;font-size:13px;margin:.4rem 0}.quest-hidden{border-style:dashed}.quest-status-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.quest-active{color:#a55a09}.quest-done{color:#27613b}.quest-failed{color:#952a27}
.quest-status-menu{position:relative;flex-shrink:0}.quest-card header>.quest-status-menu{position:absolute;top:0;right:0}.quest-status-menu>summary{cursor:pointer;list-style:none;border:1px solid #b9a078;border-radius:4px;display:flex;padding:5px;background:#fbf2df}.quest-status-menu>summary::-webkit-details-marker{display:none}.quest-status-options{position:absolute;right:0;top:100%;z-index:9;padding:5px;border:1px solid #ad966d;box-shadow:0 5px 16px #49310e40;background:#f7ecd5;min-width:185px;display:grid;gap:3px}.quest-status-options .btn{justify-content:flex-start}.quest-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:12px}.quest-filters>label:not(.inline){display:grid;gap:4px;flex:1 1 180px;font-size:14px;font-weight:600}.quest-filters>.inline{padding:8px 0;font-size:14px}.quest-pick-filter{margin:10px 0 15px;padding:10px;border:1px solid var(--line)}.quest-pick-filter>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.quest-pick-filter label{display:flex;align-items:center;gap:7px;overflow-wrap:anywhere}.quest-tasks{margin-top:1rem}.quest-task{display:flex;flex-wrap:wrap;align-items:start;gap:8px;border-top:1px solid #bca58188;padding:10px 0}.quest-task>label{display:flex;gap:8px;flex:1;min-width:0;align-items:baseline}.quest-task input[type=checkbox]{accent-color:#27613b;flex-shrink:0;width:18px;height:18px}.quest-task>label span{overflow-wrap:anywhere;white-space:pre-wrap}.quest-task-done>label span{text-decoration:line-through;color:#436247}.quest-task-failed>label span{color:#952a27}.quest-task-tools{flex-basis:100%;padding-left:26px;display:flex;gap:2px}.quest-task-tools .btn,.quest-card-tools .btn{font-size:12px;min-height:28px;padding:4px 6px}.quest-add-task{display:flex;gap:8px;align-items:center;margin-top:14px}.quest-add-task .field{min-width:0;flex:1;font-size:16px}.quest-card-tools{border-top:1px solid #bca58188;margin-top:15px;padding-top:5px;display:flex;gap:6px;flex-wrap:wrap}.gnerfling-crafts{padding:12px;border-top:1px solid var(--line);margin-top:12px}.gnerfling-crafts>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gnerfling-crafts select{width:100%;min-width:0}.winter-boost-note{font-size:13px;margin:5px 0 12px}.winter-boost-note .resource-MN{color:#165bab;font-weight:800}
@media(max-width:1050px){.sheet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.quest-grid{grid-template-columns:1fr}.gnerfling-crafts>div{grid-template-columns:1fr}}
@media(max-width:600px){.sheet-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.quest-card{padding:15px}.quest-add-task{flex-wrap:wrap}}
@media print{.quest-grid{display:block}.quest-card{break-inside:avoid;margin-bottom:15px}.quest-task>label input{appearance:auto}.quest-status-icon{print-color-adjust:exact}}

.race-category-tabs .choice.category-choice,.race-category-tabs .choice.category-choice:hover{background:var(--paper,#f4eddc);box-shadow:0 2px 4px #34240e22}.race-category-tabs .choice.category-choice.selected{background:#eee8d8;border-color:#56664d}.race-category-tabs .category-medallion{filter:none;opacity:1;background:transparent}.completion-panel{margin:20px 0;padding:18px;border:1px solid #ac9265;border-radius:8px;background:#f3ecda}.completion-panel p{margin:8px 0}.equipment-category-choices{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.equipment-category-choices>.choice{flex:1 1 110px;max-width:165px;min-height:110px;text-align:center;padding:8px}.equipment-category-choices .gear-category-art{display:block;object-fit:contain;width:60px;height:60px;margin:auto}.equipment-category-choices strong{font-size:14px}.dialog-alert{position:sticky;top:0;z-index:5;background:#fff0d8;border:2px solid #8c302a;padding:12px;box-shadow:0 3px 10px #39251d33}.mutable-details .inline{flex-wrap:wrap}.archetype-effective{color:#275b39;font-weight:700}.arch-live-controls{margin:10px 0}.arch-live-controls .field{max-width:130px}.arch-effects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}

.race-category-tabs .category-medallion .sketch{mix-blend-mode:normal;filter:none;opacity:1}

.advance-idle{margin:28px 0;color:#5c5141}.level-history{padding-left:22px}.level-history>li{padding:12px 0;border-bottom:1px solid #aa937555}.level-history small{font-size:12px}.level-history ul{margin:6px 0;padding-left:20px}.cleric-payment{border:1px solid #baa479;padding:12px;margin:12px 0;border-radius:5px}.cleric-payment label{display:inline-flex;gap:10px;align-items:center;margin-right:12px}.cleric-payment input{width:80px}
