@import "https://fonts.googleapis.com/css2?family=Alegreya+Sans:wght@400;500;700;800&family=Cinzel:wght@500;700&family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";.character-print-root{--print-ink:#2f2418;--print-border:#8a755d;--print-border-soft:#8a755d47;--print-paper:#fffdf9;--print-accent:#5d4733;--print-muted:#7a6651;min-height:100vh;color:var(--print-ink);background:radial-gradient(circle at 0 0,#c6ad8c29,#0000 42%),linear-gradient(#f5eee4 0%,#ede0cf 100%);padding:1.5rem}.character-print-shell{flex-direction:column;gap:1.25rem;max-width:1400px;margin:0 auto;display:flex}.character-print-toolbar{border:1px solid var(--print-border-soft);background:#fffbf4eb;border-radius:20px;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;display:flex;box-shadow:0 22px 45px #4930161f}.character-print-toolbar__intro h1{margin:.15rem 0 .35rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,2vw,2rem)}.character-print-toolbar__intro p{max-width:58rem;color:var(--print-muted);margin:0}.character-print-kicker,.character-print-updated{letter-spacing:.08em;text-transform:uppercase;font-size:.88rem}.character-print-kicker{color:var(--print-accent);margin:0;font-weight:700}.character-print-updated{margin-top:.55rem!important}.character-print-toolbar__actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:.55rem;display:flex}.character-print-toolbar__actions .toolbar-button,.character-print-toolbar__actions .toolbar-link{align-items:center;gap:.4rem;display:inline-flex}.character-print-pages{flex-direction:column;gap:1.5rem;display:flex}.character-print-page{background:linear-gradient(#fffffffa,#fffdf9fa);border:1px solid #5d47332e;border-radius:6px;flex-direction:column;gap:.85rem;width:min(100%,210mm);min-height:297mm;margin:0 auto;padding:11mm 10mm;display:flex;box-shadow:0 18px 35px #4c372214}.character-print-page--sheet{gap:.65rem}.character-print-page__marker{color:var(--print-accent);letter-spacing:.08em;text-transform:uppercase;background:#5d473314;border-radius:999px;align-self:flex-start;padding:.18rem .55rem;font-size:.76rem;font-weight:700}.print-hero-grid,.print-two-column,.print-three-column,.print-grid,.print-metrics-grid,.print-abilities-grid,.print-checkbox-columns{gap:.7rem;display:grid}.print-hero-grid{grid-template-columns:1.45fr 1fr 1fr}.print-hero-grid--sheet{grid-template-columns:1.7fr 1.15fr 1.2fr}.print-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.print-two-column--notes{align-items:start}.print-three-column,.print-grid--identity{grid-template-columns:repeat(3,minmax(0,1fr))}.print-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.print-field--wide{grid-column:span 2}.print-metrics-grid,.print-abilities-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.print-checkbox-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.print-stack{flex-direction:column;gap:.7rem;display:flex}.print-panel,.print-subpanel,.print-ability-card{background:#fff;border:2px solid #a9a9ac;border-radius:8px;position:relative;overflow:hidden}.print-panel,.print-ability-card{padding:.8rem}.print-subpanel{padding:.65rem}.print-panel h2,.print-subpanel h3,.print-ability-card h3{letter-spacing:.08em;text-transform:uppercase;margin:0 0 .55rem;font-family:Trebuchet MS,Arial,sans-serif;font-size:.82rem;font-weight:800}.print-panel-heading{align-items:flex-start;gap:.55rem;margin-bottom:.8rem;display:flex}.print-panel-heading p{color:var(--print-muted);margin:.2rem 0 0}.print-panel--sheet:before,.print-panel--sheet:after{content:"";background:#fff;width:14px;height:14px;position:absolute}.print-panel--sheet:before{border:2px solid #a9a9ac;border-radius:999px;top:-8px;left:16px}.print-panel--sheet:after{border-top:2px solid #a9a9ac;border-left:2px solid #a9a9ac;bottom:-8px;right:12px;transform:rotate(45deg)}.print-panel--identity .print-grid--identity{grid-template-columns:repeat(2,minmax(0,1fr))}.print-panel--summary .print-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.print-panel--vitality .print-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.print-ability-card__head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.print-ability-card__head span,.print-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--print-accent);font-size:.78rem;font-weight:700}.print-field{flex-direction:column;gap:.24rem;display:flex}.print-field-label,.print-metric-label{letter-spacing:.05em;text-transform:uppercase;color:var(--print-accent);font-size:.76rem;font-weight:700}.print-field-input,.print-field-textarea,.print-metric-input,.print-metric-select,.print-table-input,.print-table-select{width:100%;color:var(--print-ink);font:inherit;background:#fffffffa;border:1px solid #8a755d57;border-radius:4px}.print-field-input,.print-metric-input,.print-metric-select,.print-table-input,.print-table-select{min-height:2.2rem;padding:.45rem .55rem}.print-field-textarea{resize:vertical;background-image:linear-gradient(#b39e8524 1px,#0000 1px),linear-gradient(90deg,#b39e8514 1px,#0000 1px);background-size:100% 1.55rem,1.55rem 100%;min-height:7rem;padding:.55rem .65rem;line-height:1.5}.print-metric-card{background:#fff;border:1px solid #a9a9acd9;border-radius:6px;flex-direction:column;gap:.32rem;padding:.65rem;display:flex}.print-metric-card--badge{background:linear-gradient(#faf8f5,#f1ece6)}.print-metric-card--emphasis{border-width:2px}.print-metric-card--shield{clip-path:polygon(8% 4%,92% 4%,98% 18%,98% 66%,50% 100%,2% 66%,2% 18%);background:linear-gradient(#fff,#f7f4f0);border:2px solid #a9a9ac;justify-content:center;min-height:6.35rem}.print-metric-card--shield .print-metric-label{text-align:center}.print-metric-card--shield .print-metric-input{text-align:center;background:0 0;border:none;min-height:2.9rem;font-size:1.7rem;font-weight:800}.print-sheet-logo{color:var(--print-accent);align-items:center;gap:.8rem;padding:.18rem .2rem .1rem;display:flex}.print-sheet-logo__mark,.print-sheet-logo__caption{letter-spacing:.08em;text-transform:uppercase;font-family:Georgia,Times New Roman,serif;font-size:.92rem}.print-sheet-logo__line{background:linear-gradient(90deg,#a9a9ac00,#a9a9acf2,#a9a9ac00);flex:1;height:1px}.print-two-column--sheet-body{align-items:start}.print-checkbox-row{align-items:center;gap:.45rem;margin-top:.55rem;display:flex}.print-checkbox-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.8rem;display:grid}.print-checkbox-chips{gap:.45rem;margin-top:.4rem;display:flex}.print-chip-checkbox{border:1px solid var(--print-border-soft);background:#fffaf3eb;border-radius:999px;align-items:center;gap:.3rem;padding:.3rem .5rem;display:inline-flex}.print-table-wrap{overflow-x:auto}.print-table{border-collapse:collapse;border-top:1px solid #8a755d33;width:100%;font-size:.92rem}.print-table th,.print-table td{vertical-align:middle;border-bottom:1px solid #8a755d2e;padding:.38rem .32rem}.print-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--print-accent);font-size:.76rem}.print-table--spells th,.print-table--spells td{font-size:.84rem}.print-portrait-box{min-height:11rem;color:var(--print-muted);text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(135deg,#f0e5d3a6,#fffcf6eb);border:1px dashed #8a755d8c;border-radius:14px;place-items:center;margin-bottom:.75rem;font-size:.82rem;display:grid}.print-attunement-list{flex-direction:column;gap:.45rem;display:flex}.print-attunement-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.5rem;display:grid}@media (width<=1200px){.print-hero-grid,.print-two-column,.print-three-column,.print-checkbox-columns,.print-abilities-grid{grid-template-columns:1fr}.print-metrics-grid,.print-grid--identity,.print-panel--summary .print-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.character-print-root{padding:.75rem}.character-print-toolbar{flex-direction:column}.print-metrics-grid,.print-grid--identity,.print-grid--compact{grid-template-columns:1fr}.print-field--wide{grid-column:auto}}@page{size:A4 portrait;margin:10mm}@media print{body{background:#fff}.character-print-root{background:#fff;padding:0}.no-print{display:none!important}.character-print-pages{gap:0}.character-print-page{width:auto;min-height:auto;box-shadow:none;page-break-after:always;break-after:page;border:none;border-radius:0;margin:0;padding:0}.character-print-page:last-child{page-break-after:auto;break-after:auto}.print-panel,.print-subpanel,.print-ability-card{break-inside:avoid}.print-table-wrap{overflow:visible}}.sheet2024-topbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.sheet2024-canvas{zoom:.84;transform-origin:0 0;width:118.5%}.sheet2024-edition-toggle{background:#0000000f;border-radius:6px;gap:.25rem;padding:.22rem;display:inline-flex}.sheet2024-edition-button,.sheet2024-settings-button{color:#2a2a2a;cursor:default;background:#ececec;border:0;border-radius:4px;padding:.48rem .9rem;font-size:.92rem}.sheet2024-edition-button.is-active{background:#fff;box-shadow:0 1px 2px #00000024}.sheet2024-header{grid-template-columns:minmax(0,1.9fr) 6.4rem 6rem minmax(0,1.7fr);align-items:stretch;gap:.36rem;display:grid}.sheet2024-frame{background:#fff;border:2px solid #a9a9ac;position:relative}.sheet2024-frame:before,.sheet2024-frame:after{content:"";pointer-events:none;position:absolute}.sheet2024-main-info:before,.sheet2024-proficiencies:before,.sheet2024-metric-widget:before,.sheet2024-metric-box:before{background:#a9a9ac;border-radius:50%;width:12px;height:12px;top:-8px;left:-8px}.sheet2024-main-info:after,.sheet2024-ability-card:after,.sheet2024-large-note:after,.sheet2024-metric-widget:after,.sheet2024-proficiencies:after{background:#fff;border-top:2px solid #a9a9ac;border-left:2px solid #a9a9ac;width:14px;height:14px;bottom:-7px;right:-7px;transform:rotate(45deg)}.sheet2024-main-info{flex-direction:column;justify-content:space-between;padding:.42rem .58rem .32rem;display:flex}.sheet2024-line-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.28rem;display:grid}.sheet2024-line-field{flex-direction:column;gap:.14rem;display:flex}.sheet2024-line-field--full{margin-bottom:.12rem}.sheet2024-line-field input{background:0 0;border:0;border-bottom:1px solid #b8b8bc;width:100%;min-height:1.38rem;padding:.18rem 0;font-size:.88rem}.sheet2024-line-field span,.sheet2024-level span,.sheet2024-level small,.sheet2024-vitality-group h3,.sheet2024-metric-widget h3,.sheet2024-mini-card h3,.sheet2024-proficiencies h3,.sheet2024-metric-box span,.sheet2024-weapons h3,.sheet2024-large-note h3,.sheet2024-ability-card h3,.sheet2024-section-caption,.sheet2024-grid-textarea span,.sheet2024-shield__title{color:#111;letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.56rem;font-weight:500;line-height:1.05}.sheet2024-level{background:#fff;border:2px solid #a9a9ac;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:.16rem;padding:.5rem .34rem;display:flex}.sheet2024-level>input{text-align:center;background:0 0;border:0;width:3rem;font-size:1.75rem}.sheet2024-level__experience{text-align:center;border-top:1px solid #b8b8bc;width:100%;padding-top:.15rem}.sheet2024-level__experience input{text-align:center;background:0 0;border:0;width:100%;font-size:.9rem}.sheet2024-ac{justify-content:center;align-items:stretch;display:flex}.sheet2024-shield{clip-path:polygon(6% 0,94% 0,94% 71%,50% 100%,6% 71%);background:#fff;border:2px solid #a9a9ac;flex-direction:column;justify-content:flex-start;align-items:center;gap:.18rem;width:100%;min-height:100%;padding:.28rem .35rem .74rem;display:flex}.sheet2024-shield input{text-align:center;background:0 0;border:0;width:100%;padding:.18rem 0 0;font-size:1.7rem;line-height:1}.sheet2024-mini-toggle{align-items:center;gap:.3rem;margin-top:auto;font-size:.62rem;display:inline-flex}.sheet2024-vitality{grid-template-columns:minmax(0,1.18fr) minmax(0,.88fr) minmax(0,1.08fr);gap:.28rem;padding:.3rem .34rem;display:grid}.sheet2024-vitality-group{flex-direction:column;gap:.16rem;display:flex}.sheet2024-hp-grid,.sheet2024-death-grid{gap:.18rem;display:grid}.sheet2024-hp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sheet2024-hp-grid label,.sheet2024-death-grid>div{flex-direction:column;gap:.14rem;display:flex}.sheet2024-hp-grid input,.sheet2024-hitdice input,.sheet2024-metric-widget input,.sheet2024-mini-card input,.sheet2024-metric-box input{text-align:center;background:0 0;border:0;border-bottom:1px solid #b8b8bc;width:100%;min-height:1.28rem}.sheet2024-hp-grid span,.sheet2024-death-grid span{letter-spacing:.04em;text-transform:uppercase;text-align:center;text-wrap:balance;font-size:.48rem;line-height:1.05;display:block}.sheet2024-hitdice{grid-template-columns:1fr auto 1fr;align-items:center;gap:.15rem;display:grid}.sheet2024-hitdice input:last-child{grid-column:1/-1}.sheet2024-death-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet2024-death-checks{align-items:center;gap:.18rem;display:flex}.sheet2024-diamond-check{width:.92rem;height:.92rem;position:relative}.sheet2024-diamond-check input{opacity:0;position:absolute;inset:0}.sheet2024-diamond-check span{background:#fff;border:2px solid #3c3c3c;width:100%;height:100%;display:block;transform:rotate(45deg)}.sheet2024-diamond-check input:checked+span{background:#d8d8dc}.sheet2024-logo{text-align:center;padding:.08rem 0 .24rem;position:relative}.sheet2024-logo:before,.sheet2024-logo:after{content:"";background:#fff;border:2px solid #a9a9ac;width:1.05rem;height:1.05rem;position:absolute;top:50%;transform:translateY(-50%)}.sheet2024-logo:before{border-right:0;border-radius:0 .6rem .6rem 0;left:0}.sheet2024-logo:after{border-left:0;border-radius:.6rem 0 0 .6rem;right:0}.sheet2024-logo span{color:#7b5f3f;font-family:Georgia,Times New Roman,serif;font-size:.96rem;font-weight:700}.sheet2024-main{grid-template-columns:minmax(0,.96fr) minmax(0,1.52fr);align-items:start;gap:.42rem;display:grid}.sheet2024-sidebar,.sheet2024-content{flex-direction:column;gap:.42rem;display:flex}.sheet2024-ability-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:.32rem;display:grid}.sheet2024-ability-column{flex-direction:column;gap:.32rem;display:flex}.sheet2024-metric-widget,.sheet2024-mini-card,.sheet2024-metric-box{text-align:center;padding:.24rem .32rem .28rem}.sheet2024-metric-widget input{font-size:1.66rem;font-weight:700;line-height:1}.sheet2024-mini-card input{font-size:1.1rem;font-weight:700}.sheet2024-check{color:#1d1d1d;background:#fff;border:1.5px solid #1d1d1d;border-radius:50%;justify-content:center;align-items:center;width:.86rem;min-width:.86rem;height:.86rem;padding:0;font-size:.48rem;font-weight:700;display:inline-flex}.sheet2024-check.is-active{background:#dedee2}.sheet2024-check--centered{margin:.4rem auto .2rem}.sheet2024-check--centered input{display:none}.sheet2024-check--centered span{background:0 0;border-radius:50%;width:.4rem;height:.4rem;display:block}.sheet2024-check--centered input:checked+span{background:#1d1d1d}.sheet2024-ability-card{flex-direction:column;gap:.16rem;padding:.22rem .32rem .3rem;display:flex}.sheet2024-ability-card__header{text-align:center}.sheet2024-ability-card__core{grid-template-columns:minmax(0,1fr) 2.5rem;align-items:start;gap:.18rem;display:grid}.sheet2024-modifier,.sheet2024-score{flex-direction:column;align-items:center;gap:.15rem;display:flex}.sheet2024-modifier input{text-align:center;background:#fff;border:2px solid #a9a9ac;border-radius:50%;width:2.56rem;height:2.56rem;font-size:1.2rem}.sheet2024-score input{text-align:center;background:#fff;border:2px solid #a9a9ac;width:100%;min-height:1.95rem;font-size:1.08rem}.sheet2024-modifier span,.sheet2024-score span{letter-spacing:.04em;text-transform:uppercase;text-align:center;font-size:.46rem;line-height:1.05}.sheet2024-skill-list{flex-direction:column;gap:.1rem;display:flex}.sheet2024-skill-row{grid-template-columns:.86rem 2rem minmax(0,1fr);align-items:center;gap:.16rem;display:grid}.sheet2024-skill-row input{background:0 0;border:0;width:100%;min-width:0;padding:0;font-size:.76rem}.sheet2024-skill-row span{min-width:0;font-size:.56rem;line-height:1.04}.sheet2024-skill-row--save{margin-bottom:.08rem}.sheet2024-proficiencies{flex-direction:column;gap:.26rem;padding:.32rem;display:flex}.sheet2024-proficiency-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:.34rem;display:grid}.sheet2024-proficiency-groups>div{flex-direction:column;gap:.08rem;display:flex}.sheet2024-proficiency-check{align-items:center;gap:.26rem;font-size:.54rem;display:inline-flex}.sheet2024-grid-textarea{flex-direction:column;gap:.2rem;display:flex}.sheet2024-grid-textarea textarea,.sheet2024-large-note textarea{color:#111;resize:vertical;background-color:#fff;background-image:linear-gradient(#d2d2d6b3 1px,#0000 1px),linear-gradient(90deg,#d2d2d680 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:.62rem .62rem;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #aaaaaea6;width:100%;line-height:1.28}.sheet2024-grid-textarea textarea{min-height:6.7rem;padding:.26rem}.sheet2024-survival-row{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.75fr);gap:.3rem;display:grid}.sheet2024-metric-box{min-height:3.55rem}.sheet2024-metric-box input{font-size:1.38rem;font-weight:700}.sheet2024-metric-box--wide input{font-size:.76rem;font-weight:400}.sheet2024-weapons,.sheet2024-large-note{padding:.22rem .32rem .3rem}.sheet2024-weapons__head,.sheet2024-large-note h3{justify-content:space-between;align-items:center;display:flex}.sheet2024-weapons__actions{color:#1d1d1d;gap:.3rem;font-size:1rem;display:inline-flex}.sheet2024-table{border-top:1px solid #9d9da1;flex-direction:column;margin-top:.12rem;display:flex}.sheet2024-table__head,.sheet2024-table__row{grid-template-columns:minmax(0,1.38fr) minmax(0,.55fr) minmax(0,.8fr) minmax(0,1fr);display:grid}.sheet2024-table__head{text-transform:uppercase;font-size:.5rem}.sheet2024-table__head span,.sheet2024-table__row input{border-right:1px solid #d0d0d4;padding:.12rem .16rem}.sheet2024-table__head span:last-child,.sheet2024-table__row input:last-child{border-right:0}.sheet2024-table__row{border-top:1px solid #e1e1e5}.sheet2024-table__row input{background:0 0;border-top:0;border-bottom:0;border-left:0;min-width:0;min-height:1.34rem}.sheet2024-large-note textarea{min-height:10.4rem;margin-top:.12rem;padding:.26rem}.sheet2024-traits-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.32rem;display:grid}.sheet2024-traits-row .sheet2024-large-note textarea{min-height:6.9rem}@media (width<=1100px){.sheet2024-canvas{zoom:1;width:100%}.sheet2024-header,.sheet2024-main,.sheet2024-survival-row,.sheet2024-traits-row,.sheet2024-ability-columns,.sheet2024-proficiency-groups{grid-template-columns:1fr}.sheet2024-header{gap:.65rem}}@media print{.sheet2024-canvas{zoom:.84;width:118.5%}.sheet2024-topbar{display:none}.sheet2024-main,.sheet2024-sidebar,.sheet2024-content,.sheet2024-ability-column{break-inside:avoid}}:root{--ink-950:#171410;--ink-900:#2a241b;--ink-800:#3f3528;--ink-700:#5f5443;--ink-500:#8e7f69;--paper-50:#fffdf8;--paper-100:#f7f0e4;--paper-200:#ecd8b9;--accent-copper-700:#a14728;--accent-copper-500:#cd6841;--accent-emerald-800:#1f4b41;--accent-emerald-900:#163b34;--accent-emerald-700:#2b6758;--sheet-font-display:"Cormorant Garamond", "Cinzel", "Times New Roman", serif;--sheet-font-body:"Alegreya Sans", "Manrope", "Segoe UI", sans-serif;--sheet-font-ui:"Manrope", "Segoe UI", sans-serif;--line:#4e402b3d;--shadow-soft:0 12px 28px #251b1124;--shadow-deep:0 26px 60px #1b120a47}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--ink-900);background:radial-gradient(circle at 3% 8%, #cd684142 0%, #cd684100 30%), radial-gradient(circle at 94% 14%, #2b675838 0%, #2b675800 34%), linear-gradient(150deg, var(--paper-50) 0%, var(--paper-100) 58%, var(--paper-200) 100%);margin:0;font-family:Manrope,Segoe UI,sans-serif}h1,h2,h3,h4,h5{letter-spacing:.02em;margin:0;font-family:Cinzel,Times New Roman,serif}p{margin:0}button,input,select,textarea{font:inherit}button{appearance:none;color:inherit}a{color:inherit}input,select,textarea{width:100%;color:var(--ink-900);background:#fffbf3f5;border:1px solid #58462e42;border-radius:12px;padding:.58rem .66rem}button:disabled,input:disabled,select:disabled,textarea:disabled{-webkit-text-fill-color:currentColor}textarea{resize:vertical}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{border-right:1px solid var(--line);background:linear-gradient(#f7f0e3e0 0%,#f1e4cdeb 100%);flex-direction:column;height:100vh;padding:1rem .9rem;display:flex;position:sticky;top:0}.brand-box{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffbf3e0;border-radius:16px;padding:.85rem}.brand-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--accent-emerald-700);font-size:.66rem}.brand-title{margin-top:.35rem;font-size:1.26rem}.brand-subtitle{color:var(--ink-700);margin-top:.22rem;font-size:.85rem}.app-nav{gap:.55rem;margin-top:1rem;display:grid}.app-nav-link{color:var(--ink-700);background:#fffbf3c7;border:1px solid #55422d33;border-radius:13px;align-items:center;gap:.6rem;padding:.6rem .68rem;text-decoration:none;transition:border-color .13s,transform .13s,color .13s;display:inline-flex}.app-nav-link:hover{color:var(--ink-900);border-color:#2b675870;transform:translateY(-1px)}.app-nav-link.active{color:var(--accent-emerald-800);background:linear-gradient(135deg,#eaf6f2f0 0%,#f4fcf9e0 100%);border-color:#2b6758b8}.app-content{padding:1.1rem}.character-sheet-open-tabs{background:#fffbf3d6;border:1px solid #4e402b33;border-radius:14px;margin-bottom:.78rem;overflow:hidden;box-shadow:0 8px 20px #251b1114}.character-sheet-open-tabs-scroll{scrollbar-width:thin;gap:.4rem;max-width:100%;padding:.42rem;display:flex;overflow-x:auto}.character-sheet-open-tab{background:#fffbf3f5;border:1px solid #58462e38;border-radius:10px;flex:none;grid-template-columns:minmax(0,1fr) 2rem;align-items:stretch;min-width:9.8rem;max-width:15rem;display:grid;overflow:hidden}.character-sheet-open-tab.active{background:linear-gradient(135deg,#ebf7f2f5 0%,#fafdfaf0 100%);border-color:#2b67589e;box-shadow:0 0 0 2px #2b67581f}.character-sheet-open-tab-link,.character-sheet-open-tab-close{cursor:pointer;background:0 0;border:0;border-radius:0}.character-sheet-open-tab-link{text-align:left;gap:.08rem;min-width:0;padding:.42rem .55rem;display:grid}.character-sheet-open-tab-link:hover,.character-sheet-open-tab-close:hover{background:#2b67581a}.character-sheet-open-tab-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-900);font-size:.86rem;font-weight:800;line-height:1.15;overflow:hidden}.character-sheet-open-tab-level{color:var(--accent-emerald-700);font-size:.72rem;font-weight:700}.character-sheet-open-tab-close{color:var(--ink-700);border-left:1px solid #58462e29;place-items:center;display:grid}.character-sheet-open-tab-close:focus-visible,.character-sheet-open-tab-link:focus-visible{outline-offset:-2px;outline:2px solid #2b675880}.page-root{gap:.9rem;display:grid}.page-header{color:#fef9ef;box-shadow:var(--shadow-deep);background:linear-gradient(130deg,#1c5347f2 0%,#153f36f7 100%);border:1px solid #25584d75;border-radius:20px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.95rem 1rem;display:flex}.page-kicker{text-transform:uppercase;letter-spacing:.14em;color:#e0ece9eb;font-size:.66rem}.page-header h2{margin-top:.34rem;font-size:clamp(1.2rem,1.7vw,1.75rem)}.page-subtitle{color:#ede6daeb;max-width:66ch;margin-top:.45rem;font-size:.91rem}.page-header-actions{flex-wrap:wrap;gap:.55rem;display:inline-flex}.surface-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffbf3e6;border-radius:18px;padding:.85rem}.section-title-row{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.inline-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:inline-flex}.list-stack{gap:.45rem;margin-top:.7rem;display:grid}.list-card{appearance:none;width:100%;color:var(--ink-900);text-align:left;cursor:pointer;background:#fffaf2f0;border:1px solid #57442d38;border-radius:13px;padding:.58rem .64rem}.list-card p{font-weight:700}.list-card span{color:var(--ink-700);margin-top:.2rem;font-size:.82rem;display:block}.list-card.selected{border-color:#2b6758b3;box-shadow:0 0 0 2px #2b675829}.muted-text{color:var(--ink-700)}.state-card{background:#fffbf3eb;border:1px solid #58462d38;border-radius:14px;align-items:center;gap:.5rem;padding:.62rem .74rem;display:flex}.state-card.state-error{color:#6f2f20;background:#ffebdfe6;border-color:#9b2d1459}.state-card.state-success{color:#234a42;background:#e9f6f1eb;border-color:#24594d57}.spin{animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.campaigns-grid,.reference-management-grid{grid-template-columns:.95fr 1.3fr;gap:.9rem;display:grid}.campaign-details{gap:.6rem;margin-top:.6rem;display:grid}.campaign-details h4{font-size:1.2rem}.details-pills{flex-wrap:wrap;gap:.4rem;display:flex}.details-pills span{color:var(--ink-700);border:1px solid #59452e38;border-radius:999px;padding:.26rem .55rem;font-size:.79rem}.reference-details{gap:.8rem;display:grid}.reference-details p{color:var(--ink-800);line-height:1.6}.race-bonus-badges{flex-wrap:wrap;gap:.38rem;display:flex}.race-bonus-badges span{color:var(--accent-emerald-800);background:#ecf7f3b8;border:1px solid #2b675838;border-radius:999px;padding:.25rem .52rem;font-size:.78rem;font-weight:900}.race-bonus-editor{background:#fffcf6c7;border:1px solid #58462e29;border-radius:14px;gap:.62rem;padding:.68rem;display:grid}.race-bonus-editor .section-title-row h4{color:var(--ink-950);font-size:.98rem}.race-bonus-editor.nested{background:#fffbf39e;border-radius:12px;padding:.58rem}.race-subrace-summary{border-top:1px dashed #58462e2e;gap:.45rem;padding-top:.65rem;display:grid}.race-reference-skill-summary{background:#f4f9f794;border:1px solid #2b675829;border-radius:10px;gap:.32rem;padding:.55rem .62rem;display:grid}.race-subrace-summary h5,.race-reference-skill-summary h5,.race-subrace-card h5,.race-bonus-editor.nested h5{color:var(--ink-950);margin:0;font-size:.92rem}.race-subrace-summary-item{background:#fffcf6bd;border:1px solid #58462e24;border-radius:10px;gap:.24rem;padding:.52rem .58rem;display:grid}.race-subrace-summary-item strong,.race-subrace-card>.section-title-row h5{overflow-wrap:anywhere;min-width:0}.race-subrace-summary-meta{flex-wrap:wrap;gap:.34rem;display:flex}.race-reference-skill-summary span,.race-subrace-summary-item span{color:var(--accent-emerald-800);font-size:.82rem;font-weight:800}.race-subrace-summary-item p{color:var(--ink-700);font-size:.84rem;line-height:1.45}.race-subrace-editor{background:#f4f9f780;border:1px solid #2b675829;border-radius:14px;gap:.62rem;padding:.68rem;display:grid}.race-subrace-list{gap:.62rem;display:grid}.race-subrace-card{background:#fffcf6d1;border:1px solid #58462e29;border-radius:12px;gap:.56rem;padding:.62rem;display:grid}.race-bonus-list{gap:.5rem;display:grid}.race-bonus-row{grid-template-columns:minmax(0,1.4fr) minmax(5.5rem,.55fr) 34px;align-items:end;gap:.5rem;display:grid}.race-bonus-row label{min-width:0}.race-bonus-row select,.race-bonus-row input{border-radius:10px;min-height:38px}.race-editor-form{grid-template-columns:minmax(0,1.55fr) minmax(18rem,.62fr);grid-template-areas:"notice notice""basic sidebar""ability sidebar""skills sidebar""subraces sidebar";align-items:start;gap:.9rem;display:grid}.race-editor-wide{grid-area:notice}.race-editor-section{min-width:0}.race-editor-basic-section{grid-area:basic}.race-editor-ability-section{grid-area:ability}.race-editor-skill-section{grid-area:skills}.race-editor-subrace-section{grid-area:subraces}.race-editor-basic-grid{grid-template-columns:minmax(14rem,.72fr) minmax(0,1.28fr);align-items:start;margin-top:.7rem}.race-editor-description-field{grid-row:span 2}.race-editor-description-field textarea{resize:vertical;min-height:13rem}.race-editor-section>.race-bonus-editor,.race-editor-section>.race-subrace-editor,.race-editor-section>.race-skill-editor{background:0 0;border:0;padding:0}.race-editor-form label{gap:.24rem;display:grid}.race-editor-form label>span{color:var(--ink-700);font-size:.8rem}.race-editor-sidebar{grid-area:sidebar;gap:.75rem;display:grid;position:sticky;top:1rem}.race-editor-sidebar h3{color:var(--ink-950);overflow-wrap:anywhere;margin-top:.2rem;font-size:1.16rem}.race-editor-summary-grid{gap:.5rem;display:grid}.race-editor-summary-grid section{background:#fffcf6b8;border:1px solid #58462e29;border-radius:12px;gap:.18rem;padding:.55rem .62rem;display:grid}.race-editor-summary-grid span{color:var(--ink-500);font-size:.74rem;font-weight:800}.race-editor-summary-grid strong{color:var(--ink-900);font-size:.9rem;line-height:1.3}.race-editor-sidebar-actions{gap:.48rem;display:grid}.race-editor-sidebar-actions .app-button{justify-content:center;width:100%}.race-editor-subrace-section .race-subrace-list{grid-template-columns:1fr}.race-skill-editor,.race-skill-choice-editor,.race-skill-choice-list,.race-subrace-skill-editor{gap:.6rem;display:grid}.race-skill-editor h5,.race-skill-choice-editor h5{color:var(--ink-950);font-size:.9rem}.race-skill-chip-grid{flex-wrap:wrap;gap:.38rem;display:flex}.race-skill-chip{min-height:2rem;color:var(--ink-700);cursor:pointer;background:#fffcf6eb;border:1px solid #58462e38;border-radius:999px;padding:.28rem .58rem;font-size:.78rem;font-weight:800}.race-skill-chip:hover:not(:disabled){background:#f4fbf8f5;border-color:#2b67587a}.race-skill-chip.selected{color:var(--accent-emerald-800);background:#e9f6f1eb;border-color:#2b6758b8}.race-skill-chip:disabled{opacity:.54;cursor:not-allowed}.race-skill-chip-grid.readonly .race-skill-chip{cursor:default}.race-skill-choice-card,.race-skill-fixed-panel,.race-skill-choice-panel{background:#fffcf6d1;border:1px solid #58462e29;border-radius:12px;gap:.55rem;padding:.62rem;display:grid}.race-skill-choice-head{grid-template-columns:7rem max-content minmax(0,1fr) 2.5rem;align-items:end;gap:.55rem;display:grid}.race-skill-choice-head>label:first-child,.race-skill-choice-head .race-bonus-stepper{width:7rem}.race-skill-choice-head .toggle-line{white-space:nowrap;flex-direction:row;grid-column:2;align-self:end;align-items:center;min-height:2.5rem;padding-bottom:.1rem;display:inline-flex}.race-skill-choice-head .toggle-line input{order:0}.race-skill-choice-head .toggle-line span{order:1}.race-skill-choice-head .app-icon-button{border-radius:8px;grid-column:4;place-self:end;width:2.5rem;height:2.5rem}.toggle-line{color:var(--ink-800);align-items:center;gap:.48rem;font-size:.84rem;font-weight:800;display:flex}.toggle-line input{width:1rem;height:1rem;accent-color:var(--accent-emerald-700);flex:none;margin:0}.class-resource-template-section{border-top:1px dashed #58462e3d;gap:.55rem;padding-top:.72rem;display:grid}.class-resource-template-section h4{font-size:1rem}.class-reference-saving-throw-list{flex-wrap:wrap;align-items:center;gap:.38rem;display:flex}.class-reference-saving-throw-chip{min-height:2rem;color:var(--accent-emerald-800);white-space:nowrap;background:#e9f6f1c7;border:1px solid #2b675842;border-radius:999px;justify-content:center;align-items:center;padding:.3rem .64rem;font-size:.8rem;font-weight:900;line-height:1;display:inline-flex}.class-resource-template-list{gap:.45rem;display:grid}.class-resource-template-row{background:#fffcf6e6;border:1px solid #58462e33;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.55rem;padding:.56rem .62rem;display:grid}.class-resource-template-row strong,.class-resource-template-row span,.class-resource-template-row p{display:block}.class-resource-template-row span{color:var(--ink-700);margin-top:.16rem;font-size:.78rem}.class-resource-template-row p{margin-top:.28rem;font-size:.84rem;line-height:1.45}.class-editor-form{grid-template-columns:minmax(0,1.55fr) minmax(18rem,.62fr);grid-template-areas:"notice notice""basic sidebar""skills sidebar";align-items:start;gap:.9rem;display:grid}.class-editor-form.has-resources{grid-template-areas:"notice notice""basic sidebar""skills sidebar""resources sidebar"}.class-editor-main-form{display:contents}.class-editor-wide{grid-area:notice}.class-editor-section{min-width:0}.class-editor-basic-section{grid-area:basic}.class-editor-skill-section{grid-area:skills}.class-editor-resource-section{grid-area:resources;min-width:0}.class-editor-basic-grid{grid-template-columns:minmax(12rem,.55fr) minmax(0,1.2fr);align-items:start;margin-top:.7rem}.class-editor-main-fields{gap:.62rem;display:grid}.class-editor-saving-throw-field{gap:.36rem;display:grid}.class-editor-saving-throw-field>span{color:var(--ink-700);font-size:.8rem}.class-editor-description-field{grid-column:2}.class-editor-description-field textarea{resize:vertical;min-height:13rem}.class-editor-form label,.class-resource-template-form label{gap:.24rem;display:grid}.class-editor-form label>span,.class-resource-template-form label>span{color:var(--ink-700);font-size:.8rem}.class-skill-editor,.class-skill-choice-editor{gap:.62rem;display:grid}.class-skill-editor h4,.class-skill-choice-editor h4{color:var(--ink-950);font-size:.98rem}.class-editor-sidebar{grid-area:sidebar;gap:.75rem;display:grid;position:sticky;top:1rem}.class-editor-sidebar h3{color:var(--ink-950);overflow-wrap:anywhere;margin-top:.2rem;font-size:1.16rem}.class-editor-summary-grid{gap:.5rem;display:grid}.class-editor-summary-grid section{background:#fffcf6b8;border:1px solid #58462e29;border-radius:12px;gap:.18rem;padding:.55rem .62rem;display:grid}.class-editor-summary-grid span{color:var(--ink-500);font-size:.74rem;font-weight:800}.class-editor-summary-grid strong{color:var(--ink-900);font-size:.9rem;line-height:1.3}.class-editor-sidebar-actions{gap:.48rem;display:grid}.class-editor-sidebar-actions .app-button{justify-content:center;width:100%}.class-resource-manager{gap:.72rem;display:grid}.class-resource-template-form{background:#f4f9f7b8;border:1px solid #2b675833;border-radius:12px;gap:.62rem;padding:.72rem;display:grid}.inline-confirm-panel{background:#fff1f2d1;border:1px solid #7f1d1d38;border-radius:10px;grid-column:1/-1;gap:.55rem;padding:.62rem;display:grid}.inline-confirm-panel p{color:#7f1d1d;font-size:.88rem;font-weight:700;line-height:1.45}.members-list{background:#fcf5e8bf;border:1px solid #58462e33;border-radius:14px;gap:.45rem;padding:.6rem;display:grid}.members-title{font-weight:700}.member-row{background:#fffbf3bf;border-radius:10px;justify-content:space-between;gap:.6rem;padding:.45rem .5rem;display:flex}.chip-row{flex-wrap:wrap;gap:.42rem;margin-top:.62rem;display:flex}.chip-button{color:var(--ink-700);cursor:pointer;background:#fffbf3e6;border:1px solid #58462e3d;border-radius:999px;padding:.28rem .62rem}.chip-button.selected{color:var(--accent-emerald-800);border-color:#2b6758b8}.characters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.character-creation-page{gap:.9rem;display:grid}.character-creation-hero{box-shadow:var(--shadow-soft);background:#fffcf6f0;border:1px solid #1f4b4142;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;padding:.9rem;display:grid}.character-creation-hero .page-kicker{color:var(--accent-emerald-700)}.character-creation-hero h2{color:var(--ink-950);margin-top:.28rem;font-size:1.55rem;line-height:1.1}.character-creation-hero p:last-child{color:var(--ink-700);margin-top:.4rem;line-height:1.55}.character-creation-shell{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:.85rem;display:grid}.character-creation-progress{gap:.5rem;display:grid;position:sticky;top:.9rem}.character-creation-step{text-align:left;cursor:pointer;color:var(--ink-700);background:#fffcf6d6;border:1px solid #58462e2e;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.52rem;padding:.62rem;display:grid}.character-creation-step span{width:1.85rem;height:1.85rem;color:var(--ink-700);background:#58462e1a;border-radius:999px;place-items:center;font-size:.8rem;font-weight:800;display:grid}.character-creation-step strong{overflow-wrap:anywhere;min-width:0}.character-creation-step.active,.character-creation-step.complete{color:var(--accent-emerald-800);background:#ecf7f3e6;border-color:#2b67586b}.character-creation-step.active span,.character-creation-step.complete span{background:var(--accent-emerald-800);color:#f8fffb}.character-creation-panel{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-soft);background:#fffbf3eb;border-radius:18px;gap:.85rem;padding:.88rem;display:grid}.character-creation-panel-head{border-bottom:1px solid #58462e24;justify-content:space-between;align-items:start;gap:.7rem;padding-bottom:.72rem;display:flex}.character-creation-panel-head span,.character-creation-panel-head p{color:var(--ink-700);font-size:.82rem;font-weight:700}.character-creation-panel-head h3{color:var(--ink-950);margin-top:.18rem;font-size:1.32rem}.character-creation-choice-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.62rem;display:grid}.creation-choice-card{text-align:left;cursor:pointer;background:#fffcf6e0;border:1px solid #58462e2e;border-radius:14px;align-content:start;gap:.32rem;min-width:0;min-height:150px;padding:.72rem;display:grid}.creation-choice-card:hover{background:#fbfffdf5;border-color:#2b67585c}.creation-choice-card.selected{background:#ecf7f3e6;border-color:#2b6758b8;box-shadow:0 0 0 2px #2b675824}.creation-choice-card strong{min-width:0;color:var(--ink-950);overflow-wrap:anywhere;font-size:1rem}.creation-choice-card span:not(.creation-choice-mark){color:var(--accent-emerald-800);font-size:.8rem;font-weight:800}.creation-choice-card p{color:var(--ink-700);font-size:.84rem;line-height:1.45}.creation-choice-mark{width:2.2rem;height:2.2rem;color:var(--accent-emerald-800);background:#1f4b411a;border-radius:12px;place-items:center;font-size:.76rem;font-weight:900;display:grid}.character-creation-abilities{gap:.75rem;display:grid}.ability-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.ability-method{text-align:left;cursor:pointer;background:#fffcf6db;border:1px solid #58462e2e;border-radius:14px;gap:.25rem;min-width:0;padding:.62rem;display:grid}.ability-method.selected{background:#ecf7f3e6;border-color:#2b6758a8}.ability-method strong{color:var(--ink-950);overflow-wrap:anywhere}.ability-method span{color:var(--ink-700);font-size:.8rem;line-height:1.38}.ability-toolbar{background:#ecf7f38a;border:1px solid #2b675829;border-radius:14px;justify-content:space-between;align-items:center;gap:.7rem;padding:.58rem .68rem;display:flex}.ability-toolbar div{gap:.12rem;display:grid}.ability-toolbar span{color:var(--ink-700);font-size:.8rem;font-weight:700}.ability-toolbar strong{color:var(--accent-emerald-800)}.tasha-rules-panel{background:#fffcf6db;border:1px solid #2b675829;border-radius:14px;gap:.62rem;padding:.62rem;display:grid}.tasha-rules-panel.muted{background:#f7f4eea3}.tasha-rules-toggle{color:var(--ink-900);align-items:center;gap:.62rem;width:fit-content;font-weight:800;line-height:1.2;display:flex}.tasha-rules-toggle input{width:1.05rem;height:1.05rem;accent-color:var(--accent-emerald-700);cursor:pointer;flex:none;margin:0}.tasha-rules-toggle input:disabled{cursor:not-allowed}.tasha-rules-toggle span{display:grid}.tasha-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.tasha-assignment-grid label{gap:.24rem;display:grid}.tasha-assignment-grid span{color:var(--ink-700);font-size:.78rem;font-weight:800}.tasha-assignment-grid select{border-radius:10px;min-height:38px}.creation-ability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.58rem;display:grid}.creation-ability-card{background:#fffcf6e6;border:1px solid #58462e2e;border-radius:14px;gap:.5rem;padding:.62rem;display:grid}.creation-ability-card.invalid{background:#fff1e9e6;border-color:#9b2d146b}.creation-ability-card>div:first-child{justify-content:space-between;align-items:center;gap:.55rem;display:flex}.creation-ability-card>div:first-child span{color:var(--accent-emerald-800);font-weight:900}.creation-ability-card>div:first-child strong{min-width:0;color:var(--ink-950);overflow-wrap:anywhere}.creation-ability-card select,.creation-ability-card input{border-radius:10px;min-height:38px}.creation-ability-card small{color:var(--ink-700);font-size:.78rem}.ability-total-row{background:#ecf7f385;border:1px solid #2b675824;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.42rem;display:grid}.ability-total-row span,.ability-total-row strong{color:var(--ink-800);overflow-wrap:anywhere;min-width:0;font-size:.75rem}.ability-total-row strong{color:var(--accent-emerald-800)}.ability-stepper{grid-template-columns:31px minmax(42px,1fr) 31px;align-items:center;gap:.42rem;display:grid}.ability-stepper>strong{min-height:31px;color:var(--ink-950);font-variant-numeric:tabular-nums;background:#fffbf3eb;border:1px solid #58462e29;border-radius:10px;place-items:center;display:grid}.character-creation-skills,.character-creation-any-bonuses{gap:.65rem;display:grid}.racial-any-bonus-panel{background:#ffffffc7;border:1px solid #202d2a1c;border-radius:8px;padding:.85rem}.racial-any-bonus-panel label{gap:.38rem;display:grid}.racial-any-bonus-panel span{color:var(--ink-700);font-size:.82rem;font-weight:800}.racial-any-bonus-panel select{min-height:2.55rem}.race-skill-fixed-panel h4,.race-skill-choice-panel h4{color:var(--ink-950);font-size:.96rem}.race-skill-choice-panel-head{justify-content:space-between;align-items:center;gap:.55rem;display:flex}.race-skill-choice-panel-head span{color:var(--accent-emerald-800);background:#ecf7f3c7;border:1px solid #2b675838;border-radius:999px;padding:.18rem .48rem;font-size:.76rem;font-weight:900}.character-creation-final{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.character-creation-final label{gap:.28rem;display:grid}.character-creation-final label span{color:var(--ink-700);font-size:.82rem;font-weight:800}.creation-summary-panel{background:#ecf7f385;border:1px solid #2b675829;border-radius:14px;grid-column:1/-1;gap:.58rem;padding:.72rem;display:grid}.creation-summary-panel h3{color:var(--ink-950);font-size:1.1rem}.creation-summary-panel dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;display:grid}.creation-summary-panel div{min-width:0}.creation-summary-panel dt{color:var(--ink-700);font-size:.76rem;font-weight:800}.creation-summary-panel dd{color:var(--ink-950);overflow-wrap:anywhere;margin:.12rem 0 0;font-weight:800}.character-creation-actions{border-top:1px solid #58462e24;justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}.import-report{gap:.66rem;display:grid}.import-result-list{gap:.45rem;display:grid}.import-result-card{color:var(--ink-900);background:#fffcf6eb;border:1px solid #58462d33;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.34rem .6rem;padding:.52rem .6rem;display:grid}.import-result-card.partial{background:#fff8e7eb;border-color:#ae7f2252}.import-result-card.failed{background:#ffefe7eb;border-color:#9b2d144d}.import-result-card strong,.import-result-card span{display:block}.import-result-card span{color:var(--ink-700);margin-top:.12rem;font-size:.78rem}.import-result-status{color:var(--accent-emerald-800);border:1px solid #2b675842;border-radius:999px;padding:.18rem .46rem;font-size:.76rem;font-weight:700}.import-result-card ul{color:var(--ink-700);grid-column:1/-1;margin:0;padding-left:1rem;font-size:.78rem;line-height:1.45}.import-selection-form{gap:.66rem}.import-selection-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;display:flex}.import-selection-count{color:var(--accent-emerald-800);background:#e9f6f1db;border:1px solid #2b675842;border-radius:999px;padding:.24rem .58rem;font-size:.78rem;font-weight:700}.import-selection-list{gap:.45rem;max-height:min(52vh,28rem);padding-right:.14rem;display:grid;overflow:auto}.form-stack .import-character-option{color:var(--ink-900);cursor:pointer;background:#fffcf6eb;border:1px solid #58462d38;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;padding:.55rem .62rem;display:grid}.form-stack .import-character-option.selected{background:#e9f6f1c2;border-color:#2b67589e}.import-character-option input{width:auto;min-width:1rem;height:1rem;accent-color:var(--accent-emerald-800)}.import-character-option-body{min-width:0;color:var(--ink-900);gap:.12rem;font-size:.9rem;display:grid}.form-stack .import-character-option>.import-character-option-body{color:var(--ink-900);font-size:.9rem}.import-character-option-body strong{overflow-wrap:anywhere;line-height:1.2}.import-character-option-body span{color:var(--ink-700);font-size:.78rem}.character-preview-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffbf3eb;border-radius:18px;gap:.56rem;padding:.78rem;display:grid}.character-preview-head{justify-content:space-between;gap:.6rem;display:flex}.character-preview-head h4{color:var(--ink-950);font-family:var(--sheet-font-display);letter-spacing:0;font-size:1.32rem;font-weight:700;line-height:1.05}.character-preview-head p{color:var(--ink-700);margin-top:.2rem;font-size:.84rem}.character-preview-head .character-preview-class{color:var(--accent-emerald-800);font-size:.78rem;font-weight:800}.level-pill{color:#7b3219;background:#ffece1b3;border:1px solid #a1472866;border-radius:999px;height:fit-content;padding:.24rem .52rem;font-size:.79rem}.character-preview-metrics{flex-wrap:wrap;gap:.36rem;display:flex}.character-preview-metrics span{background:#fffcf6e6;border:1px solid #58462d33;border-radius:999px;align-items:center;gap:.28rem;padding:.2rem .54rem;font-size:.79rem;display:inline-flex}.character-preview-footer{color:var(--ink-700);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;font-size:.8rem;display:flex}.character-preview-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:inline-flex}.inline-link{color:var(--accent-emerald-800);font-weight:600;text-decoration:none}.inline-link:hover{text-decoration:underline}.character-preview-link{align-items:center;display:inline-flex}.character-preview-link:focus-visible{outline-offset:2px;border-radius:10px;outline:2px solid #2b6758a3}.app-button,.app-icon-button{color:var(--ink-700);cursor:pointer;background:#fffbf3eb;border:1px solid #58462d33;border-radius:12px;transition:transform .14s,border-color .14s,background .14s,color .14s,box-shadow .14s}.app-button{align-items:center;gap:.32rem;padding:.45rem .68rem;font-size:.84rem;font-weight:600;display:inline-flex}.app-button.accent{color:var(--accent-emerald-800);background:linear-gradient(#ecf7f3fa 0%,#e1f1ebfa 100%);border-color:#2b675857;box-shadow:0 4px 12px #1f4b4114}.app-button.danger{color:#87361d;background:#fbefe7d1;border-color:#a1472847}.app-icon-button{place-items:center;width:31px;height:31px;display:inline-grid}.app-button:disabled,.app-icon-button:disabled{cursor:not-allowed;opacity:.6}.app-button:hover,.app-icon-button:hover{color:var(--ink-900);background:#fffbf3fa;border-color:#58462d4d;transform:translateY(-1px)}.app-button.accent:hover{color:var(--accent-emerald-800);background:linear-gradient(#e5f3ee 0%,#d6ebe4 100%);border-color:#2b675880;box-shadow:0 8px 18px #1f4b411f}.app-button.danger:hover{color:#7a3018;background:#f8e8deeb;border-color:#a1472866}.app-button:disabled:hover,.app-icon-button:disabled:hover{color:var(--ink-700);box-shadow:none;background:#fffbf3eb;border-color:#58462d33;transform:none}.modal-overlay{z-index:20;background:#1b120a85;place-items:center;padding:.8rem;display:grid;position:fixed;inset:0}.modal-card{width:min(620px,100vw - 1rem);max-height:calc(100vh - 1rem);box-shadow:var(--shadow-deep);background:#fffcf5fa;border:1px solid #58462d52;border-radius:18px;padding:.84rem;overflow:auto}.modal-card.modal-wide{width:min(1050px,100vw - 1rem)}.modal-text{color:var(--ink-800);line-height:1.6}.rest-modal-card{gap:.72rem;display:grid}.rest-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem;display:grid}.rest-hit-dice-spends{align-content:start}.rest-hit-dice-list{gap:.42rem;display:grid}.rest-hit-dice-row{background:#fffcf6c7;border:1px solid #58462e29;border-radius:10px;grid-template-columns:minmax(7.5rem,1fr) auto auto;align-items:center;gap:.45rem;padding:.38rem .46rem;display:grid}.rest-hit-dice-row>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-800);font-size:.84rem;font-weight:800;overflow:hidden}.rest-hit-dice-row small{color:var(--ink-600);font-variant-numeric:tabular-nums;font-size:.74rem}.rest-stepper-field .numeric-stepper{max-width:150px}.rest-preview-row{background:#ecf7f3b8;border:1px solid #2b67582e;border-radius:12px;justify-content:space-between;align-items:center;gap:.7rem;padding:.58rem .68rem;display:flex}.rest-preview-row span{color:var(--ink-600);font-size:.85rem;font-weight:700}.rest-preview-row strong{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;font-size:1rem}.rest-effects-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.rest-modal-actions{justify-content:flex-end}.character-resources-panel{gap:.7rem;display:grid}.character-resources-grid{grid-template-columns:repeat(auto-fit,minmax(max(260px,50% - .35rem),1fr));gap:.55rem;display:grid}.character-resource-card{background:#fffcf6eb;border:1px solid #58462e38;border-radius:13px;gap:.5rem;padding:.65rem;display:grid}.character-resource-head{justify-content:space-between;align-items:start;gap:.65rem;display:flex}.character-resource-head h3{color:var(--ink-950);font-family:var(--sheet-font-display);letter-spacing:0;font-size:1.1rem;line-height:1.05}.character-resource-head p{color:var(--ink-700);margin-top:.16rem;font-size:.8rem}.character-resource-head strong{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;flex:none}.character-resource-meter{background:#58462e1f;border-radius:999px;height:.48rem;overflow:hidden}.character-resource-meter span{border-radius:inherit;background:linear-gradient(90deg,#2b6758e6 0%,#428270db 100%);height:100%;display:block}.character-resource-description{color:var(--ink-700);font-size:.86rem;line-height:1.45}.character-resource-actions{justify-content:flex-end}.resource-level-table{grid-template-columns:repeat(10,minmax(3.1rem,1fr));gap:.38rem;display:grid}.resource-level-table label{gap:.16rem}.resource-level-table label span{color:var(--ink-500);text-align:center;font-size:.68rem;line-height:1}.resource-level-table input{text-align:center;min-width:0;padding-inline:.3rem}.resource-maximum-preview{background:#ecfdf58a;border:1px solid #2b675833;border-radius:8px;justify-content:space-between;align-items:center;gap:.65rem;padding:.5rem .62rem;display:flex}.resource-maximum-preview span{color:var(--ink-600);font-size:.86rem;font-weight:700}.resource-maximum-preview strong{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;font-size:1rem}.resource-formula-builder{gap:.5rem;display:grid}.resource-formula-term-row{grid-template-columns:minmax(8.5rem,1.3fr) minmax(8.5rem,1.1fr) minmax(6rem,.7fr) auto;align-items:end;gap:.45rem;display:grid}.resource-formula-preview{background:#fffcf6d6;border:1px solid #58462e2e;border-radius:8px;align-content:center;gap:.24rem;padding:.45rem .55rem;display:grid}.resource-formula-preview span{color:var(--ink-500);font-size:.76rem;font-weight:700}.resource-formula-preview strong{color:var(--ink-900);overflow-wrap:anywhere;font-size:.9rem;line-height:1.25}.form-stack{gap:.55rem;margin-top:.68rem;display:grid}.form-stack label,.sheet-form-grid label,.sheet-lore-grid label{gap:.24rem;display:grid}.form-stack label>span,.sheet-form-grid label>span,.sheet-lore-grid label>span{color:var(--ink-700);font-size:.8rem}.class-progression-editor{background:#fffcf6a3;border:1px solid #58462e29;border-radius:12px;gap:.5rem;padding:.58rem;display:grid}.sheet-class-progression-editor{margin-bottom:.68rem}.class-progression-editor-head{color:var(--ink-700);justify-content:space-between;gap:.55rem;font-size:.8rem;display:flex}.class-progression-editor-head strong{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums}.class-progression-list{gap:.42rem;display:grid}.class-progression-row{grid-template-columns:minmax(0,1fr) auto 2rem;align-items:center;gap:.44rem;display:grid}.class-progression-row .numeric-stepper,.class-level-stepper{max-width:128px}.full-span{grid-column:1/-1}.sheet-page .page-header{z-index:5;position:sticky;top:.75rem}.sheet-layout{grid-template-columns:280px minmax(0,1fr);gap:.85rem;display:grid}.sheet-sidebar{max-height:calc(100vh - 170px);overflow:auto}.sheet-main{gap:.75rem;display:grid}.sheet-hero{background:#fff7eae0;border:1px solid #58462d38;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:.7rem;padding:.72rem;display:flex}.sheet-hero p{color:var(--ink-700);margin-top:.26rem}.sheet-hero-metrics{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.sheet-hero-metrics span{background:#fffbf3e0;border:1px solid #58462d33;border-radius:999px;align-items:center;gap:.24rem;padding:.24rem .55rem;font-size:.78rem;display:inline-flex}.sheet-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.abilities-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.45rem;display:grid}.ability-cell{text-align:center;background:#fffbf3db;border:1px solid #58462d38;border-radius:12px;gap:.2rem;padding:.4rem;display:grid}.ability-cell span{color:var(--ink-700);font-size:.78rem}.ability-cell input{text-align:center;padding:.38rem .28rem}.ability-cell strong{color:var(--accent-emerald-800)}.ability-cell small{color:var(--ink-500);font-size:.72rem}.interactive-panels{grid-template-columns:.9fr 1.4fr;gap:.6rem;display:grid}.interactive-card{background:#fffbf3e0;border:1px solid #58462d33;border-radius:14px;padding:.55rem}.save-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.38rem;margin-top:.52rem;display:grid}.save-button{color:var(--ink-900);text-align:center;cursor:pointer;background:#fffbf3f5;border:1px solid #58462d3d;border-radius:12px;gap:.2rem;padding:.5rem;display:grid}.save-button.selected{border-color:#2b6758a8;box-shadow:0 0 0 2px #2b675829}.skill-groups{gap:.55rem;margin-top:.52rem;display:grid}.skill-group{gap:.32rem;display:grid}.skill-group h5{font-size:.9rem}.skill-button{color:var(--ink-900);cursor:pointer;background:#fffbf3f5;border:1px solid #58462d3d;border-radius:10px;justify-content:space-between;gap:.55rem;padding:.42rem .5rem;display:flex}.skill-button.level-1{border-color:#2b675880}.skill-button.level-2{background:#fff3e9e6;border-color:#a147288a}.sheet-lore-grid{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.sheet-footer-meta{color:var(--ink-700);border-top:1px solid #58462d33;justify-content:space-between;gap:.55rem;padding-top:.55rem;font-size:.8rem;display:flex}@media (width<=1100px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.characters-grid,.character-creation-shell{grid-template-columns:1fr}.character-creation-progress{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));position:static}.campaigns-grid,.reference-management-grid{grid-template-columns:1fr}.race-editor-form{grid-template-columns:1fr;grid-template-areas:"notice""basic""ability""skills""subraces""sidebar"}.class-editor-form{grid-template-columns:1fr;grid-template-areas:"notice""basic""skills""sidebar"}.class-editor-form.has-resources{grid-template-areas:"notice""basic""skills""resources""sidebar"}.race-editor-sidebar,.class-editor-sidebar{position:static}.sheet-layout{grid-template-columns:1fr}.sheet-sidebar{max-height:none}}@media (width<=960px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.app-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.page-header{flex-direction:column}.page-header-actions{width:100%}.ability-methods,.tasha-assignment-grid,.creation-ability-grid,.sheet-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.abilities-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.interactive-panels,.sheet-lore-grid{grid-template-columns:1fr}.sheet-page .page-header{position:static}}@media (width<=720px){.app-content{padding:.7rem}.character-sheet-open-tabs{margin-bottom:.62rem}.character-sheet-open-tab{min-width:8.6rem;max-width:12rem}.app-nav,.character-creation-hero,.race-editor-basic-grid,.class-editor-basic-grid,.sheet-form-grid{grid-template-columns:1fr}.class-editor-description-field{grid-column:1}.character-creation-progress,.ability-methods,.tasha-assignment-grid,.creation-ability-grid,.character-creation-final,.creation-summary-panel dl,.race-bonus-row,.race-skill-choice-head,.class-resource-template-row,.ability-total-row{grid-template-columns:1fr}.race-skill-choice-head .toggle-line,.race-skill-choice-head .app-icon-button{grid-column:1}.race-editor-subrace-section .race-subrace-list{grid-template-columns:1fr}.character-creation-panel-head,.ability-toolbar,.character-creation-actions{flex-direction:column;align-items:stretch}.rest-form-grid{grid-template-columns:1fr}.class-progression-row,.rest-hit-dice-row{grid-template-columns:minmax(0,1fr) auto}.class-progression-row .app-icon-button,.rest-hit-dice-row small{grid-column:2}.abilities-grid,.save-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-footer-meta{flex-direction:column}}.sidebar-toggle{width:100%;color:var(--ink-700);cursor:pointer;background:#fffbf3d6;border:1px solid #55422d33;border-radius:13px;justify-content:center;align-items:center;gap:.45rem;margin-top:.75rem;padding:.44rem .56rem;display:inline-flex}.sidebar-toggle:hover{color:var(--ink-900);border-color:#2b675870}.app-shell.sidebar-collapsed{grid-template-columns:86px minmax(0,1fr)}.app-shell.sidebar-collapsed .brand-kicker,.app-shell.sidebar-collapsed .brand-subtitle{display:none}.app-shell.sidebar-collapsed .brand-title{text-align:center;font-size:.9rem}.app-shell.sidebar-collapsed .sidebar-toggle span,.app-shell.sidebar-collapsed .app-nav-link span{display:none}.app-shell.sidebar-collapsed .sidebar-toggle{padding:.44rem}.app-shell.sidebar-collapsed .app-nav-link{justify-content:center}.app-shell.sidebar-collapsed .session-card{background:0 0;border-color:#0000;justify-items:stretch;width:100%;padding:0}.app-shell.sidebar-collapsed .session-logout-button{width:100%;height:auto;color:var(--ink-700);background:#f3f5f1eb;border:1px solid #30383329;border-radius:13px;margin-top:0;padding:.6rem .68rem}.app-shell.sidebar-collapsed .session-logout-button:hover{color:var(--accent-emerald-800);background:#e8f3eff5;border-color:#1f4b4157}.character-preview-card{transition:transform .14s,border-color .14s,box-shadow .14s}.character-preview-card:hover{border-color:#2b675885;transform:translateY(-2px)}.full-sheet-shell{color:var(--ink-900);font-family:var(--sheet-font-body);gap:.9rem;font-size:1.01rem;line-height:1.38;display:grid}.full-sheet-shell button,.full-sheet-shell input,.full-sheet-shell select,.full-sheet-shell textarea,.full-sheet-shell .busy-label,.full-sheet-shell .toolbar-button,.full-sheet-shell .toolbar-link{font-family:var(--sheet-font-ui)}.full-sheet-shell h1,.full-sheet-shell h2,.full-sheet-shell h3,.full-sheet-shell h4,.full-sheet-shell h5,.full-sheet-shell .skills-title,.full-sheet-shell .skills-compact-group-title,.full-sheet-shell .character-spell-slot-level-title{font-family:var(--sheet-font-display);letter-spacing:0}.full-sheet-shell .status-card-value,.full-sheet-shell .status-card-note,.full-sheet-shell .ability-score,.full-sheet-shell .ability-mod,.full-sheet-shell .skills-compact-total,.full-sheet-shell .save-item span:last-child,.full-sheet-shell .spell-letter-badge,.full-sheet-shell .spell-school-chip,.full-sheet-shell .character-sheet-spell-prepared-badge{font-family:var(--sheet-font-ui)}.full-sheet-head{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffbf3e6;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:.8rem;padding:.86rem;display:flex}.full-sheet-head h1{color:var(--ink-950);letter-spacing:0;margin-top:.32rem;font-size:clamp(1.55rem,2.6vw,2.18rem);font-weight:700;line-height:1.02}.full-sheet-subtitle{color:var(--ink-700);font-family:var(--sheet-font-body);letter-spacing:0;margin-top:.34rem;font-size:1rem;line-height:1.35}.panel-toolbar{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.toolbar-button,.toolbar-link{color:var(--ink-700);cursor:pointer;background:#fffbf3f0;border:1px solid #58462d3d;border-radius:11px;align-items:center;gap:.32rem;padding:.45rem .68rem;font-size:.84rem;font-weight:600;text-decoration:none;transition:border-color .13s,background-color .13s,color .13s;display:inline-flex}.toolbar-button:hover,.toolbar-link:hover{border-color:#2b675880}.toolbar-button.toolbar-button-muted{color:var(--ink-700);background:#fffcf6eb;border-color:#58462d33}.toolbar-button.toolbar-button-muted:hover{background:#faf7f0f2}.toolbar-button.toolbar-button-danger{color:#87361d;background:#fbefe7e0;border-color:#a147284d}.toolbar-button.toolbar-button-danger:hover{background:#f8e8def0;border-color:#a147286b}.toolbar-button.toolbar-button-save{color:#234a42;background:#e9f6f1e6;border-color:#2b675859}.toolbar-button.toolbar-button-save:hover{background:#e1f3ecf2;border-color:#2b67587a}.toolbar-button.toolbar-button-rest{color:#254c43;background:#f1f8f5eb;border-color:#2b67584d}.toolbar-button.toolbar-button-rest:hover{background:#e8f4eff5;border-color:#2b675875}.toolbar-button:disabled{cursor:not-allowed;opacity:.62}.toolbar-menu{display:inline-flex;position:relative}.toolbar-menu-popover{z-index:18;min-width:168px;box-shadow:var(--shadow-deep);background:#fffcf5fa;border:1px solid #58462d3d;border-radius:12px;gap:.18rem;padding:.28rem;display:grid;position:absolute;top:calc(100% + .38rem);right:0}.toolbar-menu-item{width:100%;color:var(--ink-800);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:.42rem;padding:.48rem .54rem;font-size:.84rem;font-weight:700;display:flex}.toolbar-menu-item:hover:not(:disabled){color:var(--ink-900);background:#2b67581a}.toolbar-menu-item:disabled{cursor:not-allowed;opacity:.55}.full-sheet-grid{grid-template-columns:1.2fr 1.04fr .72fr;align-items:start;gap:.85rem;display:grid}.full-sheet-panel{gap:.62rem;line-height:1.34;display:grid}.panel-head{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.panel-head h2{color:var(--ink-950);letter-spacing:0;font-size:1.22rem;font-weight:700;line-height:1.05}.busy-label{color:var(--accent-emerald-700);letter-spacing:0;font-size:.8rem;font-weight:700}.main-metrics-row{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"health armor initiative""speed level proficiency";align-items:stretch;gap:.5rem;display:grid}.status-card-health{grid-area:health}.status-card-armor{grid-area:armor}.status-card-initiative{grid-area:initiative}.status-card-speed{grid-area:speed}.status-card-proficiency{grid-area:proficiency}.status-card-level{grid-area:level}.status-card{text-align:center;background:#fffcf5eb;border:1px solid #58462d33;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:.54rem .56rem;display:flex}.status-card-title{color:var(--ink-500);font-family:var(--sheet-font-body);letter-spacing:0;font-size:.82rem;font-weight:700;line-height:1.1}.status-card-value{color:var(--ink-900);font-variant-numeric:tabular-nums;margin-top:.24rem;font-size:1.18rem;font-weight:800;line-height:1.05}.status-card-note{color:var(--ink-700);margin-top:.22rem;font-size:.78rem;line-height:1.25}.status-input-line{grid-template-columns:1fr auto 1fr;align-items:center;gap:.32rem;width:100%;margin-top:.32rem;display:grid}.numeric-stepper{background:#fffbf3f5;border:1px solid #58462e42;border-radius:12px;grid-template-columns:minmax(0,1fr) 1.45rem;align-items:stretch;width:100%;display:grid;overflow:hidden}.numeric-stepper:focus-within{border-color:#2b675875;box-shadow:0 0 0 2px #2b67581f}.numeric-stepper-controls{background:#f4ecdde0;border-left:1px solid #58462d29;grid-template-rows:1fr 1fr;display:grid}.numeric-stepper-button{width:100%;min-height:1rem;color:var(--ink-700);cursor:pointer;background:0 0;border:0;border-radius:0;place-items:center;padding:0;transition:background-color .13s,color .13s;display:grid}.numeric-stepper-button+.numeric-stepper-button{border-top:1px solid #58462d29}.numeric-stepper-input{text-align:center;appearance:textfield;background:0 0;border:0;border-radius:0;width:100%;min-width:0;padding:.38rem .34rem;font-weight:600}.numeric-stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numeric-stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numeric-stepper-compact{border-radius:10px;grid-template-columns:minmax(0,1fr) 1.3rem}.numeric-stepper-button:hover:not(:disabled){color:var(--ink-900);background:#2b67581f}.numeric-stepper-button:disabled,.numeric-stepper-button:disabled:hover{cursor:not-allowed;opacity:.42;background:0 0}.numeric-stepper-compact .numeric-stepper-button{min-height:.92rem}.numeric-stepper-status{max-width:92px;margin-top:.28rem}.numeric-stepper-status .numeric-stepper-input{padding:.26rem .18rem;font-size:.92rem}.status-stepper-input{padding:.28rem .16rem}.status-input-line span{color:var(--ink-500);font-weight:700}.status-card-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.28rem;width:100%;margin-top:.35rem;display:grid}.status-card-editor-grid label{gap:.15rem;display:grid}.status-card-editor-grid label span{color:var(--ink-500);font-size:.66rem}.status-card-editor-grid input{text-align:center;padding:.28rem .34rem}.field-grid{gap:.52rem;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field-grid.five{grid-template-columns:repeat(5,minmax(5.5rem,1fr))}.field{gap:.22rem;display:grid}.field>span{font-family:var(--sheet-font-body);letter-spacing:0;color:var(--ink-700);font-size:.88rem;font-weight:700;line-height:1.1}.field>input,.field>select,.field>.numeric-stepper{min-height:44px}.toggle-line{min-height:32px;color:var(--ink-700);cursor:pointer;align-items:center;gap:.42rem;font-size:.86rem;font-weight:700;line-height:1.2;display:inline-flex}.toggle-line input[type=checkbox]{appearance:none;background:#fffcf6f5;border:1px solid #58462d57;border-radius:5px;flex:0 0 18px;width:18px;height:18px;margin:0;display:grid;position:relative;box-shadow:inset 0 1px 2px #1b120a14}.toggle-line input[type=checkbox]:after{content:"";opacity:0;border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.toggle-line input[type=checkbox]:checked{background:var(--accent-emerald-800);border-color:#2b6758c2;box-shadow:0 2px 6px #1f4b412e}.toggle-line input[type=checkbox]:checked:after{opacity:1}.toggle-line input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #2b67587a}.toggle-line:has(input:disabled){cursor:not-allowed;opacity:.62}.ability-grid{gap:.42rem;display:grid}.ability-grid-sheet{grid-template-columns:repeat(3,minmax(0,1fr))}.ability-cell-sheet{flex-direction:column;justify-content:center;align-items:center;gap:.16rem;padding:.5rem .36rem;display:flex}.ability-cell-sheet .ability-input{padding:.24rem .18rem}.numeric-stepper-field .numeric-stepper-input{padding:.42rem .35rem}.numeric-stepper-ability{max-width:96px;margin-top:.12rem}.numeric-stepper-ability .numeric-stepper-input{font-size:.82rem}.ability-name{color:var(--ink-700);font-family:var(--sheet-font-body);text-align:center;letter-spacing:0;font-size:.82rem;font-weight:700;line-height:1.2}.ability-cell-sheet .ability-score{font-variant-numeric:tabular-nums;margin-top:.16rem;font-size:1.14rem;font-weight:800;line-height:1.05}.ability-cell-sheet .ability-mod{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:800}.saving-throws-block{gap:.36rem;display:grid}.skills-title{color:var(--ink-950);letter-spacing:0;margin:0;font-size:1.02rem;font-weight:700;line-height:1.05}.saving-throws-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.38rem;display:grid}.save-item{font-family:var(--sheet-font-body);letter-spacing:0;background:#fffbf3f0;border:1px solid #58462d3d;border-radius:10px;justify-content:space-between;gap:.4rem;padding:.42rem .52rem;font-size:.92rem;line-height:1.14;display:flex}.save-item span:first-child{color:var(--ink-900);font-weight:700}.save-item span:last-child{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;font-size:.94rem;font-weight:800}.save-item-button{text-align:left;cursor:pointer;width:100%}.save-item-button:hover:not(:disabled){border-color:#2b675880}.save-item-button:disabled{cursor:not-allowed;opacity:.62}.save-item-proficient{background:linear-gradient(145deg,#2b675833 0%,#2b675814 100%);border-color:#2b67586b}.skills-compact-list{gap:.52rem;display:grid}.skills-compact-group{background:#fffcf5e0;border:1px solid #58462d33;border-radius:11px;padding:.44rem .5rem;display:grid}.skills-compact-group-title{color:var(--ink-950);letter-spacing:0;margin:0 0 .32rem;font-size:.96rem;font-weight:700;line-height:1.05}.skills-compact-row{font-family:var(--sheet-font-body);letter-spacing:0;border-top:1px dashed #58462d29;justify-content:space-between;align-items:baseline;gap:.45rem;padding:.24rem .2rem;line-height:1.15;display:flex}.skills-compact-row:first-of-type{border-top:0}.skills-compact-row-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px}.skills-compact-row-button:hover:not(:disabled){background:#2b67581a}.skills-compact-row-button:disabled{cursor:not-allowed}.skills-compact-row-preview{opacity:.82}.skills-compact-row-proficient{background:linear-gradient(145deg,#2b675833 0%,#2b675814 100%);border-color:#2b675859}.skills-compact-row-expertise{background:linear-gradient(145deg,#a1472833 0%,#a1472814 100%);border-color:#a1472861}.skills-compact-name{color:var(--ink-900);font-size:.94rem;font-weight:500}.skills-compact-total{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:800}.full-sheet-column{align-content:start;gap:.85rem;min-width:0;display:grid}@media (width>=1101px){.full-sheet-grid{align-items:start}.full-sheet-main-column,.full-sheet-stats-column{align-content:start;min-height:0}.character-inventory-summary-panel{align-content:start}.character-skills-panel{align-self:start;width:100%}}.character-sheet-tabs{flex-wrap:wrap;gap:.45rem;display:inline-flex}.character-sheet-tab{color:var(--ink-700);cursor:pointer;background:#fffbf3eb;border:1px solid #58462e3d;border-radius:999px;padding:.48rem .82rem;transition:transform .14s,border-color .14s,color .14s,background .14s}.character-sheet-tab:hover{color:var(--ink-900);border-color:#2b675870;transform:translateY(-1px)}.character-sheet-tab.active{color:var(--accent-emerald-800);background:linear-gradient(135deg,#eaf6f2f5 0%,#f5fcf9e0 100%);border-color:#2b6758b3}.character-inventory-summary-panel{overscroll-behavior:contain;scrollbar-gutter:stable;gap:.55rem;max-height:clamp(12rem,32vh,22rem);display:grid;overflow-y:auto}.character-inventory-summary-text{color:var(--ink-900);font-family:var(--sheet-font-body);letter-spacing:0;font-size:.98rem;line-height:1.45}.character-inventory-summary-item{display:inline}.character-inventory-summary-separator{color:var(--ink-700)}.character-inventory-summary-link{appearance:none;color:var(--accent-emerald-800);font:inherit;letter-spacing:0;font-weight:700;line-height:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px dashed #2b675857;margin:0;padding:0;transition:color .18s,border-color .18s,background-color .18s,box-shadow .18s}.character-inventory-summary-link:hover{color:var(--accent-emerald-900);border-color:#2b67588f}.character-inventory-summary-link:focus-visible{background:#e5f3eeeb;border-radius:4px;outline:none;box-shadow:0 0 0 2px #2b675833}.character-inventory-bind-modal-host{display:contents}.character-inventory-bind-modal-host .character-inventory-tab>:not(.modal-overlay){display:none}.character-inventory-preview-modal{gap:.62rem;display:grid}.character-inventory-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:.82rem;display:grid}.character-inventory-main{gap:.7rem;min-width:0;display:grid}.character-inventory-overview-card{gap:.6rem;display:grid}.character-inventory-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.character-inventory-overview-stat{background:#fffbf3d1;border:1px solid #58462e2e;border-radius:12px;gap:.18rem;padding:.55rem .62rem;display:grid}.character-inventory-overview-stat span{color:var(--ink-700);font-size:.78rem}.character-inventory-overview-stat strong{color:var(--accent-emerald-800);font-size:1.06rem}.character-inventory-bound-list{gap:.4rem;display:grid}.character-inventory-catalog-card{gap:.58rem;display:grid}.character-inventory-list{gap:.58rem;max-height:calc(100vh - 270px);padding-right:.12rem;display:grid;overflow:auto}.character-inventory-grid{grid-template-columns:repeat(auto-fit,minmax(max(280px,50% - .375rem),1fr));gap:.42rem;display:grid}.character-inventory-card-item{gap:.34rem;display:grid}.character-inventory-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;display:flex}.character-inventory-detail{max-height:calc(100vh - 210px);overflow:auto}.character-inventory-detail-controls{gap:.45rem;display:grid}.character-inventory-quantity-input{max-width:160px}.character-spells-panel{gap:.58rem}.character-skills-panel{min-width:0}.skills-panel-switch{background:#fffcf6c7;border:1px solid #58462e33;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:.12rem;padding:.12rem;display:inline-grid}.skills-panel-switch button{color:var(--ink-700);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.36rem .48rem;font-size:.78rem;font-weight:700;line-height:1}.skills-panel-switch button.active{color:var(--accent-emerald-800);background:#2b67581f;box-shadow:inset 0 0 0 1px #2b675833}.resources-compact-stack{gap:.58rem;display:grid}.resources-compact-section{gap:.36rem;min-width:0;display:grid}.resources-compact-section-head{justify-content:space-between;align-items:baseline;gap:.45rem;padding-inline:.08rem;display:flex}.resources-compact-section-head h3{color:var(--ink-950);letter-spacing:0;margin:0;font-size:.94rem;font-weight:800;line-height:1.05}.resources-compact-section-head span{color:var(--ink-600);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:800}.resources-compact-list{gap:.38rem;display:grid}.resources-compact-row{background:#fffcf5e0;border:1px solid #58462d2e;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.44rem;padding:.42rem .44rem;display:grid}.resources-compact-row-with-edit{grid-template-columns:minmax(0,1fr) auto}.resources-compact-body{gap:.2rem;min-width:0;display:grid}.resources-compact-title-row{justify-content:space-between;align-items:baseline;gap:.45rem;min-width:0;display:flex}.resources-compact-name{min-width:0;color:var(--ink-900);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:700;line-height:1.05;overflow:hidden}.resources-compact-title-row strong{color:var(--accent-emerald-800);font-variant-numeric:tabular-nums;flex:none;font-size:.84rem;line-height:1}.resources-compact-meter{background:#58462e1f;border-radius:999px;height:.28rem;overflow:hidden}.resources-compact-meter span{border-radius:inherit;background:linear-gradient(90deg,#2b6758e0 0%,#428270d1 100%);height:100%;display:block}.resources-compact-meter-spell span{background:linear-gradient(90deg,#2f6de0e6 0%,#7ab4ffd6 100%)}.resources-compact-rule{color:var(--ink-600);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:700;line-height:1;overflow:hidden}.resources-compact-actions{align-items:center;gap:.24rem;display:inline-flex}.resources-compact-action{border-radius:9px;width:27px;height:27px}.resources-compact-max-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:.26rem;padding-top:.08rem;display:flex}.resources-compact-max-button{border-radius:9px;min-height:25px;padding:.26rem .42rem;font-size:.72rem;font-weight:800;line-height:1}.resources-compact-add-button{border-radius:10px;justify-content:center;justify-self:stretch;min-height:30px;padding-block:.36rem}.character-spell-slots-panel{background:#fffbf3b3;border:1px solid #58462e33;border-radius:12px;gap:.5rem;padding:.55rem .6rem;display:grid}.character-spell-slots-panel h3{color:var(--ink-950);font-family:var(--sheet-font-display);letter-spacing:0;margin:0;font-size:1.05rem;font-weight:700;line-height:1.05}.character-spell-slots-actions{justify-content:flex-end;display:flex}.character-spell-slot-levels{gap:.48rem;display:grid}.character-spell-slot-level{gap:.24rem;display:grid}.character-spell-slot-level-title{color:var(--ink-700);letter-spacing:0;margin:0;font-size:.94rem;font-weight:700;line-height:1.05}.character-spell-slot-level-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.character-spell-crystals{flex-wrap:wrap;gap:.34rem;display:flex}.character-spell-crystal{clip-path:polygon(50% 0,92% 28%,92% 72%,50% 100%,8% 72%,8% 28%);cursor:pointer;background:linear-gradient(170deg,#7ab4ff 0%,#2f6de0 72%,#2457b6 100%);border:1px solid #275dc69e;place-items:center;width:22px;height:26px;margin:0;padding:0;transition:transform .14s,filter .14s,opacity .14s;display:grid}.character-spell-crystal span{background:#ffffffeb;border-radius:999px;width:6px;height:6px;box-shadow:0 0 5px #fff9}.character-spell-crystal:hover:not(:disabled){filter:saturate(1.06);transform:translateY(-1px)}.character-spell-crystal.spent{opacity:.6;background:linear-gradient(170deg,#d8e2f3 0%,#b8c6de 68%,#9eaec8 100%);border-color:#58462e47}.character-spell-crystal.spent span{box-shadow:none;background:#faf6efcc}.character-spell-crystal:disabled{cursor:not-allowed;opacity:.56}.character-spell-slot-controls{gap:.32rem;display:inline-flex}.character-spells-sections{gap:.56rem;display:grid}.character-spells-panel .character-spells-sections{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:clamp(22rem,56vh,42rem);padding-right:.18rem;overflow-y:auto}.character-spells-panel .spells-level-section-grid{grid-template-columns:repeat(auto-fit,minmax(max(240px,33.3333% - .226667rem),1fr));gap:.34rem}.character-spells-manager-modal{max-height:calc(100vh - .8rem)}.character-spell-preview-modal{gap:.62rem;display:grid}.character-spells-manager-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:.82rem;margin-top:.62rem;display:grid}.character-spells-manager-main{gap:.7rem;min-width:0;display:grid}.character-spells-manager-list-card{gap:.58rem;display:grid}.character-spells-manager-list{gap:.58rem;max-height:calc(100vh - 270px);padding-right:.12rem;display:grid;overflow:auto}.character-spells-manager-grid{grid-template-columns:repeat(auto-fit,minmax(max(240px,50% - .3rem),1fr));gap:.34rem;display:grid}.character-spells-manager-item{gap:.34rem;display:grid}.character-spell-inline-meta{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.character-spell-inline-meta .spell-list-item-meta{flex:1;min-width:0}.character-spell-inline-signals{flex-shrink:0}.character-spells-manager-detail{max-height:calc(100vh - 270px);overflow:auto}@media (width<=1100px){.full-sheet-grid{grid-template-columns:1fr}.main-metrics-row{grid-template-columns:1fr;grid-template-areas:"health""armor""initiative""speed""level""proficiency"}.character-spells-manager-layout{grid-template-columns:1fr}.character-spells-manager-detail{max-height:none;position:static}.character-inventory-layout{grid-template-columns:1fr}.character-inventory-detail{max-height:none;position:static}.character-inventory-summary-panel,.character-spells-panel .character-spells-sections{max-height:none;padding-right:0;overflow:visible}}@media (width<=960px){.app-shell.sidebar-collapsed{grid-template-columns:1fr}.app-shell.sidebar-collapsed .app-nav{display:none}.full-sheet-head{flex-direction:column}.field-grid.two,.field-grid.three,.field-grid.four{grid-template-columns:1fr}.resource-level-table{grid-template-columns:repeat(5,minmax(2.8rem,1fr))}.resource-formula-term-row{grid-template-columns:1fr}.ability-grid-sheet,.saving-throws-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-inventory-overview-grid{grid-template-columns:1fr}}@media (width<=720px){.ability-grid-sheet,.saving-throws-grid,.character-spells-manager-grid{grid-template-columns:1fr}.character-spells-manager-list{max-height:calc(100vh - 220px)}.character-inventory-grid{grid-template-columns:1fr}.character-inventory-list{max-height:calc(100vh - 220px)}}.spells-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:.85rem;display:grid}.spells-main-column{gap:.75rem;display:grid}.spells-page-root{grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 2.2rem);min-height:0}.spells-page-head{gap:.9rem;display:grid}.spells-page-root .spells-layout,.spells-page-root .spells-main-column{min-height:0}.spells-toolbar{align-items:center;gap:.55rem;display:flex}.spells-toolbar .spells-search{flex:1;min-width:0}.spells-toolbar-actions{flex-shrink:0;gap:.35rem;display:inline-flex}.spells-filters-modal-head h3{align-items:center;gap:.4rem;font-size:1rem;display:inline-flex}.spells-filters-modal{gap:.72rem;margin-top:.62rem;display:grid}.spells-search{background:#fffbf3f5;border:1px solid #58462e42;border-radius:12px;align-items:center;gap:.5rem;padding:.56rem .64rem;display:flex}.spells-search input{background:0 0;border:0;width:100%;min-width:0;padding:0}.spells-search input:focus{outline:none}.spells-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.52rem;display:grid}.spells-levels-title{color:var(--ink-700);margin-top:.16rem;font-size:.8rem;font-weight:600}.spells-levels-row{flex-wrap:wrap;gap:.36rem;margin-top:.35rem;display:flex}.spell-level-chip{color:var(--ink-700);cursor:pointer;background:#fffbf3eb;border:1px solid #58462e3d;border-radius:999px;padding:.26rem .6rem;font-size:.78rem}.spell-level-chip.selected{color:var(--accent-emerald-800);background:#eaf6f2d9;border-color:#2b6758b8}.spells-classes-filter-section,.spells-ritual-concentration-section{gap:.3rem;display:grid}.spells-active-class-filters{gap:.36rem;display:grid}.spells-active-class-filters-row{flex-wrap:wrap;gap:.36rem;display:flex}.spells-classes-filter-hint{font-size:.74rem}.class-filter-chip.selected-positive{color:var(--accent-emerald-800);background:#eaf6f2d9;border-color:#2b6758b8}.class-filter-chip.selected-negative{color:#87361d;background:#fbefe7eb;border-color:#a14728b3}.active-class-filter-chip{font-weight:600}.class-filter-chip:disabled{opacity:.5;cursor:not-allowed}.spells-list-card{gap:.6rem;display:grid}.spells-list{gap:.58rem;max-height:calc(100vh - 315px);padding-right:.1rem;display:grid;overflow:auto}.spells-load-more-anchor{width:100%;height:1px}.spells-load-more-status{text-align:center;padding:.22rem .12rem 0}.spells-level-section{gap:.42rem;display:grid}.spells-level-section-head{border-bottom:1px dashed #58462e40;justify-content:space-between;align-items:center;gap:.55rem;padding-bottom:.24rem;display:flex}.spells-level-section-head h4{color:var(--ink-950);font-family:var(--sheet-font-display);letter-spacing:0;margin:0;font-size:1.02rem;font-weight:700;line-height:1.05}.spells-level-section-head span{font-family:var(--sheet-font-ui);color:var(--ink-700);font-variant-numeric:tabular-nums;letter-spacing:0;border:1px solid #58462e38;border-radius:999px;padding:.1rem .45rem;font-size:.75rem;font-weight:700}.spells-level-section-grid{grid-template-columns:repeat(auto-fit,minmax(max(280px,33.3333% - .3rem),1fr));align-content:start;gap:.45rem;display:grid}.spell-list-item{appearance:none;color:var(--ink-900);text-align:left;font-family:var(--sheet-font-body);letter-spacing:0;cursor:pointer;background:#fffbf3f0;border:1px solid #58462e3d;border-radius:13px;gap:.35rem;padding:.56rem .6rem;line-height:1.2;transition:transform .13s,border-color .13s;display:grid}.character-sheet-spell-item{position:relative}.character-sheet-spell-item,.character-spells-manager-spell-item{border-radius:11px;gap:.26rem;padding:.42rem .48rem}.character-sheet-spell-prepared-badge{min-height:1.32rem;color:var(--accent-emerald-800);letter-spacing:0;pointer-events:none;background:#e9f6f1f2;border:1px solid #2b675899;border-radius:999px;justify-content:center;align-items:center;padding:.08rem .34rem;font-size:.64rem;font-weight:700;line-height:1.2;display:inline-flex}.spell-list-item:hover{border-color:#2b675880;transform:translateY(-1px)}.spell-list-item.active{border-color:#2b6758b3;box-shadow:0 0 0 2px #2b675829}.spell-list-item-head{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.spell-list-item-head h4{color:var(--ink-900);font-family:var(--sheet-font-display);letter-spacing:0;margin:0;font-size:1rem;font-weight:700;line-height:1.08}.character-sheet-spell-item .spell-list-item-head,.character-spells-manager-spell-item .spell-list-item-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.38rem;display:grid}.character-sheet-spell-item .spell-list-item-head h4,.character-spells-manager-spell-item .spell-list-item-head h4{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:.94rem;line-height:1.08;display:-webkit-box;overflow:hidden}.spell-school-chip{max-width:min(8.4rem,34vw);color:var(--accent-emerald-800);font-family:var(--sheet-font-ui);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;background:#e9f6f1d1;border:1px solid #2b67583d;border-radius:999px;justify-self:end;padding:.08rem .36rem;font-size:.66rem;font-weight:700;line-height:1.2;overflow:hidden}.spell-list-item-meta{color:var(--ink-700);font-family:var(--sheet-font-body);letter-spacing:0;font-size:.81rem;line-height:1.28}.spell-list-item-signals{flex-wrap:wrap;align-items:center;gap:.28rem;display:flex}.character-sheet-spell-item .spell-list-item-signals,.character-spells-manager-spell-item .spell-list-item-signals{gap:.22rem}.spell-letter-badge{color:var(--ink-500);text-align:center;font-variant-numeric:tabular-nums;letter-spacing:0;background:#fffcf6eb;border:1px solid #58462e38;border-radius:999px;min-width:1.55rem;padding:.14rem .46rem;font-size:.74rem;font-weight:700;line-height:1.2}.character-sheet-spell-item .spell-letter-badge,.character-spells-manager-spell-item .spell-letter-badge{min-width:1.36rem;padding:.1rem .34rem;font-size:.68rem}.spell-letter-badge.active{color:var(--accent-emerald-800);background:#e9f6f1eb;border-color:#2b67588f}.spell-letter-badge.material-costly{color:#73540a;background:#fff2c9f0;border-color:#ad810fb8}@media (width>=1101px){.skills-compact-group-title,.spell-list-item-head h4{font-size:1.08rem;line-height:1.08}.character-sheet-spell-item .spell-list-item-head h4,.character-spells-manager-spell-item .spell-list-item-head h4{font-size:1.03rem;line-height:1.1}}.spell-components-start{margin-left:auto}.spell-tags-row{flex-wrap:wrap;gap:.32rem;display:flex}.spell-tag{color:var(--ink-700);background:#fffcf6eb;border:1px solid #58462e38;border-radius:999px;padding:.2rem .5rem;font-size:.75rem}.spells-pagination{justify-content:flex-end;gap:.45rem;display:flex}.spells-detail-card{gap:.65rem;display:grid;position:sticky;top:.75rem}.spells-detail-subtitle{color:var(--ink-700);font-size:.86rem}.spell-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem;display:grid}.spell-fact{background:#fffcf6e6;border:1px solid #58462e33;border-radius:11px;gap:.16rem;padding:.45rem .52rem;display:grid}.spell-fact span{color:var(--ink-500);font-size:.74rem}.spell-fact strong{color:var(--ink-900);font-size:.84rem;line-height:1.28}.spells-description-block,.spells-classes-block{gap:.32rem;display:grid}.feat-stat-selection-block{gap:.46rem}.feat-stat-selection-block .toggle-line{background:#fffcf6b3;border:1px solid #58462d29;border-radius:10px;align-items:center;width:100%;padding:.5rem .58rem}.feat-stat-selection-block .toggle-line input[type=checkbox]{margin-top:0}.spells-description-block h4,.spells-classes-block h4{font-size:.9rem}.spells-description-text{white-space:pre-wrap;line-height:1.45}.spell-card-layout{flex-direction:column;min-height:0;display:flex;overflow:hidden}.spells-detail-card.spell-card-layout:not(.character-spells-manager-detail){max-height:calc(100vh - 1.5rem)}.spells-page-root .spells-page-detail-card{height:100%;max-height:none}.spell-card-description-block{flex-direction:column;flex:auto;min-height:0;display:flex}.spell-card-description-text{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex:auto;min-height:0;padding-right:.2rem;overflow-y:auto}.spell-card-actions{margin-top:auto;padding-top:.12rem}.background-detail-card{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;align-content:start;overflow-y:auto}.background-card-content{align-content:start;gap:1.35rem;min-width:0;display:grid}.background-card-lines{gap:.28rem;font-size:.94rem;line-height:1.45;display:grid}.background-card-line{overflow-wrap:anywhere}.background-card-line strong{color:var(--ink-950);font-weight:800}.background-card-reference{color:#2366b8}.background-card-section{gap:.46rem;min-width:0;display:grid}.background-card-section-title{letter-spacing:0;border-bottom:1px solid #4e402b6b;padding-bottom:.34rem;font-family:Manrope,Segoe UI,sans-serif;font-size:1.28rem;font-weight:700}.background-card-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.spells-source-link{align-items:center;gap:.35rem;width:fit-content;display:inline-flex}.spells-detail-empty{padding:.45rem .2rem}.economy-tab-layout{gap:1rem;display:grid}.economy-widget{flex-direction:column;gap:.85rem;display:flex}.economy-widget-form{gap:.85rem;display:grid}.economy-widget-note{min-height:1.2rem;margin:0}.economy-value-card{background:linear-gradient(135deg,#eaf6f2f0 0%,#fffcf6f5 100%);border:1px solid #2b675838;border-radius:14px;gap:.3rem;padding:1rem 1.1rem;display:grid}.economy-value-card span{color:var(--ink-700);font-size:.8rem}.economy-value-card strong{color:var(--accent-emerald-800);font-size:clamp(1.8rem,3.2vw,2.6rem)}.economy-wallet-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;display:grid}.economy-wallet-card{background:#fffcf6eb;border:1px solid #58462e33;border-radius:12px;gap:.2rem;padding:.65rem .75rem;display:grid}.economy-wallet-card span{color:var(--ink-500);font-size:.78rem}.economy-wallet-card strong{color:var(--ink-900);font-size:1.25rem}.economy-currency-fields{padding-bottom:.2rem;overflow-x:auto}.economy-operations-list{gap:.55rem;display:grid}.economy-operation-row{background:#fffcf6eb;border:1px solid #58462e33;border-radius:12px;gap:.2rem;padding:.65rem .75rem;display:grid}.economy-operation-row.positive{border-color:#2b675857}.economy-operation-row.negative{border-color:#964c2a57}.economy-operation-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.economy-operation-head span{font-weight:700}.economy-operation-meta{color:var(--ink-500);font-size:.8rem}@media (width<=1100px){.spells-page-root{height:auto}.spells-layout{grid-template-columns:1fr}.spells-detail-card{position:static}.spells-page-root .spells-page-detail-card{height:auto;max-height:none}.spells-list{max-height:none}}@media (width<=720px){.spells-toolbar{flex-direction:column;align-items:stretch}.spells-toolbar-actions{justify-content:flex-end}.economy-wallet-grid,.spells-level-section-grid,.spells-filters-grid,.spell-facts-grid{grid-template-columns:1fr}}.signed-out-shell{background:var(--paper-50);place-items:center;min-height:100dvh;padding:clamp(1rem,4vw,2rem);display:grid}.signed-out-card{text-align:center;background:#fffbf3f5;border:1px solid #4e402b29;border-radius:18px;justify-items:stretch;gap:1rem;width:min(360px,100%);padding:clamp(1.35rem,5vw,1.8rem);display:grid;box-shadow:0 16px 40px #251b111f}.signed-out-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--accent-emerald-700);font-size:.7rem;font-weight:700}.signed-out-card h1{margin:0;font-size:clamp(1.7rem,5vw,2rem);line-height:1.1}.signed-out-button,.session-logout-button{appearance:none;cursor:pointer;border:none;border-radius:999px;font-weight:700;transition:transform .16s,box-shadow .16s}.signed-out-button{background:var(--accent-emerald-800);color:#f8fffb;border-radius:10px;width:100%;min-height:48px;margin-top:.25rem;padding:.85rem 1rem;box-shadow:0 14px 26px #1f4b412e}.signed-out-button:hover{background:var(--accent-emerald-700)}.signed-out-button:hover,.session-logout-button:hover{transform:translateY(-1px)}.session-card{background:#fff9efc7;border:1px solid #75562f29;border-radius:18px;gap:.35rem;margin-top:auto;padding:1rem;display:grid}.session-card strong{color:var(--ink-900)}.session-card span{color:var(--ink-500);font-size:.86rem}.session-label{color:var(--ink-500);text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:.76rem}.session-logout-button{color:var(--ink-700);background:#f3f5f1eb;border:1px solid #30383329;justify-content:center;align-items:center;gap:.45rem;margin-top:.45rem;padding:.7rem .9rem;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff6b}.session-logout-button:hover{color:var(--accent-emerald-800);background:#e8f3eff5;border-color:#1f4b4157;box-shadow:0 10px 20px #1f4b411a}@media (width<=720px){.signed-out-shell{padding:.9rem}.signed-out-card{border-radius:16px;padding:1.3rem}}
