[data-theme=dark]{--pico-primary: #ff6b35;--pico-primary-hover: #ff8c42;--pico-primary-focus: rgba(255, 107, 53, .4);--pico-secondary: #3a546e;--pico-secondary-hover: #4a6583;--pico-secondary-focus: rgba(58, 84, 110, .4);--pico-secondary-background: #3a546e;--pico-secondary-hover-background: #4a6583;--pico-background-color: #1a1c22;--pico-card-background-color: #272a33;--pico-color: #e6dcc6;--pico-h1-color: #f0e6d2;--pico-muted-color: #bdb6a1;--pico-muted-border-color: #3a3e4a;--pico-ins-color: #a4bd4f;--pico-del-color: #d9534f;--pico-form-element-background-color: #2a2e38;--pico-form-element-border-color: #3a3e4a;--pico-form-element-color: #e6dcc6}[data-theme=light]{--pico-primary: #d4570a;--pico-primary-hover: #e66a1a;--pico-primary-focus: rgba(212, 87, 10, .4);--pico-secondary: #4e3a22;--pico-secondary-hover: #6b5c45;--pico-secondary-focus: rgba(78, 58, 34, .4);--pico-secondary-background: #4e3a22;--pico-secondary-hover-background: #6b5c45;--pico-background-color: #f5f0e1;--pico-card-background-color: #eee5d3;--pico-color: #2a2114;--pico-h1-color: #1e1810;--pico-muted-color: #5a4a34;--pico-muted-border-color: #c4b696;--pico-ins-color: #4a5f29;--pico-del-color: #7c0000;--pico-form-element-background-color: #f8f4e9;--pico-form-element-border-color: #c4b696;--pico-form-element-color: #2a2114}:root{--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--font-size-xxs: .5rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-family-heading: "Cinzel", serif;--font-family-body: "Alegreya", serif;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--transition-fast: .2s;--transition-normal: .3s;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 8px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .2);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .1);--shadow-glow: 0 0 8px rgba(255, 223, 0, .3);--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--border-ornate: 2px solid var(--pico-muted-border-color);--border-scroll: 8px solid transparent;--border-image-scroll: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="75" height="75" viewBox="0 0 75 75"><path fill="%23d3c6a6" d="M0 0v75h75V0H0zm1 1h73v73H1V1z"/></svg>') 8 8 8 8 repeat}:root{--color-very-negative: #d9534f;--color-negative: #f0ad4e;--color-neutral: var(--pico-muted-color);--color-positive: #5cb85c;--color-very-positive: #5bc0de;--color-gold: #ffd700;--color-silver: #c0c0c0;--color-bronze: #cd7f32;--color-parchment: #f5f0e1;--color-leather: #8b4513;--color-wood: #966F33;--color-focus-ring: var(--pico-primary-focus);--color-disabled: rgba(0, 0, 0, .2)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-weight:500;text-decoration:none;transition:all var(--transition-fast);border:1px solid transparent;cursor:pointer;line-height:1;font-size:var(--font-size-sm);box-sizing:border-box;min-width:90px;position:relative;overflow:hidden}.button:focus{outline:none;box-shadow:0 0 0 3px var(--pico-primary-focus)}.button:disabled,.button[aria-disabled=true]{opacity:.6;cursor:not-allowed}.button-primary{background-color:var(--pico-primary);color:#fff;font-weight:600}.button-primary:hover{background-color:var(--pico-primary-hover)}.button-primary:active{transform:translateY(1px)}.button-secondary{background-color:var(--pico-secondary);color:#fff}.button-secondary:hover{background-color:var(--pico-secondary-hover)}.button-secondary:active{transform:translateY(1px)}.button-danger{background-color:var(--color-very-negative);color:#fff}.button-danger:hover{opacity:.9}.button-danger:active{transform:translateY(1px)}form.button_to{margin:0}.card{background-color:var(--pico-card-background-color);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast);overflow:hidden}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card:focus-within{box-shadow:var(--shadow-lg),0 0 0 3px var(--pico-primary-focus)}.card-content{padding:var(--spacing-lg)}.back-link{display:inline-flex;margin-bottom:var(--spacing-md);text-decoration:none;color:var(--pico-muted-color);transition:color var(--transition-fast)}.back-link:hover{color:var(--pico-primary)}fieldset{border:var(--border-ornate);border-radius:var(--border-radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}legend{font-family:var(--font-family-heading);font-weight:600;padding:0 var(--spacing-sm);color:var(--pico-primary)}.field-error{color:var(--pico-del-color);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.modifier-very-negative{color:var(--color-very-negative);font-weight:700}.modifier-very-positive{color:var(--color-very-positive);font-weight:700}header{background-color:var(--pico-background-color);width:100%}main.container{padding-top:var(--spacing-sm)}.header-with-actions{display:flex;justify-content:space-between;align-items:flex-start}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.field{margin-bottom:var(--spacing-md)}.grid-container{display:grid;gap:var(--spacing-lg)}.grid-2-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.grid-3-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-lg)}.grid-auto-fill{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.three-column{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-lg)}.auto-fill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}@media (max-width: var(--breakpoint-md)){.grid-2-col,.grid-3-col,.two-column,.three-column{grid-template-columns:1fr}}.debug-info{color:#ff6b6b;font-size:var(--font-size-sm)}html,body{margin:0;padding:0}body{font-family:var(--font-family-body);background-color:var(--pico-background-color);background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect width="100" height="100" fill="%231a1c22" opacity="0.03"/><path d="M0 0L50 50L100 0M0 100L50 50L100 100" stroke="%23d3c6a6" stroke-width="0.5" fill="none" opacity="0.05"/></svg>');background-attachment:fixed;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);letter-spacing:.05em;font-weight:600}h1{font-size:var(--font-size-3xl);margin-top:0;margin-bottom:var(--spacing-lg);position:relative;padding-bottom:var(--spacing-sm)}h1:after{content:"";position:absolute;bottom:0;left:0;width:100px;height:3px;background:linear-gradient(90deg,var(--pico-primary),transparent)}h2{font-size:var(--font-size-2xl);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);color:var(--pico-primary)}.card{border:var(--border-ornate);position:relative}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--pico-primary),transparent);opacity:.7}.card:hover{transform:translateY(-5px)!important;box-shadow:var(--shadow-lg),var(--shadow-glow)!important}.button{font-family:var(--font-family-heading);letter-spacing:.05em;text-transform:uppercase;font-size:var(--font-size-sm);font-weight:600;border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.button:hover{box-shadow:var(--shadow-md)}.button-primary{background-color:var(--pico-primary);color:#fff;border:1px solid rgba(255,255,255,.1)}.button-primary:hover{background-color:var(--pico-primary-hover);transform:translateY(-2px)}.button-secondary{background-color:var(--pico-secondary-background);color:#fff;border:1px solid rgba(255,255,255,.1)}.button-secondary:hover{background-color:var(--pico-secondary-hover-background);transform:translateY(-2px)}.button-danger{background-color:var(--color-very-negative);color:#fff;border:1px solid rgba(255,255,255,.1)}.button-danger:hover{opacity:.9;transform:translateY(-2px)}input,select,textarea{font-family:var(--font-family-body);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color);background-color:var(--pico-form-element-background-color);color:var(--pico-form-element-color);box-shadow:var(--shadow-inner);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast)}input:hover,select:hover,textarea:hover{border-color:var(--pico-primary-hover)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pico-primary);box-shadow:0 0 0 3px var(--pico-primary-focus)}input:disabled,select:disabled,textarea:disabled,input[aria-disabled=true],select[aria-disabled=true],textarea[aria-disabled=true]{opacity:.6;cursor:not-allowed;background-color:var(--pico-muted-border-color)}label{font-family:var(--font-family-heading);font-weight:600;margin-bottom:var(--spacing-xs);display:block;color:var(--pico-h1-color);letter-spacing:.05em}table{border-collapse:separate;border-spacing:0;width:100%;border:var(--border-ornate);border-radius:var(--border-radius-md);overflow:hidden}thead{background-color:var(--pico-card-background-color);border-bottom:2px solid var(--pico-muted-border-color)}th{font-family:var(--font-family-heading);text-transform:uppercase;letter-spacing:.05em;font-size:var(--font-size-sm);padding:var(--spacing-md) var(--spacing-lg)}td{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--pico-muted-border-color)}tr:last-child td{border-bottom:none}.ability-score-box{border:var(--border-ornate);padding:var(--spacing-md);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.ability-score-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--pico-primary),transparent);opacity:.7}.ability-name{font-family:var(--font-family-heading);letter-spacing:.05em}.ability-value{font-size:var(--font-size-xl);font-weight:700}.character-details dl{margin-bottom:var(--spacing-lg)}.character-details dt{font-family:var(--font-family-heading);color:var(--pico-primary);letter-spacing:.05em}.character-details dd{font-family:var(--font-family-body)}.character-feature h3{font-family:var(--font-family-heading);letter-spacing:.05em}.character-feature p{border:var(--border-ornate);font-style:italic;position:relative;box-shadow:var(--shadow-inner)}nav{border-bottom:var(--border-ornate);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);background-color:var(--pico-background-color);max-width:1400px;margin-left:auto;margin-right:auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}nav a{font-family:var(--font-family-heading);letter-spacing:.05em;text-transform:uppercase;font-size:var(--font-size-sm);font-weight:600}.flash-alert,.flash-notice{border:var(--border-ornate);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md)}.dropdown-content{border:var(--border-ornate);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg)}.back-link{align-items:center;font-family:var(--font-family-heading);letter-spacing:.05em}.back-link:hover{text-decoration:none}.fantasy-divider{height:20px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="20" viewBox="0 0 100 20"><path d="M0 10 L40 10 L50 0 L60 10 L100 10" stroke="%23d3c6a6" stroke-width="1" fill="none"/></svg>');background-repeat:repeat-x;margin:var(--spacing-sm) 0 var(--spacing-md) 0;opacity:.5}[data-theme=light] .parchment-container{background-color:var(--color-parchment);border:var(--border-ornate);border-radius:var(--border-radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-md);position:relative}.scroll-container{border:var(--border-scroll);border-image:var(--border-image-scroll);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--pico-card-background-color);box-shadow:var(--shadow-md);position:relative;margin-bottom:var(--spacing-lg)}.fantasy-icon{color:var(--pico-primary);margin-right:var(--spacing-xs)}.campaign-name a{font-family:var(--font-family-heading);letter-spacing:.05em;font-weight:600;color:var(--pico-primary);text-decoration:none;transition:color var(--transition-fast)}.campaign-name a:hover{color:var(--pico-primary-hover);text-decoration:none}.character-snippet{font-size:var(--font-size-sm);color:var(--pico-muted-color);margin:var(--spacing-md) 0;font-style:italic;line-height:1.4;position:relative;padding-left:var(--spacing-md)}.character-snippet:before{content:'"';position:absolute;left:0;top:-5px;font-size:var(--font-size-xl);color:var(--pico-primary);opacity:.5}.dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;right:0;background-color:var(--pico-background-color);min-width:180px;box-shadow:var(--pico-box-shadow);z-index:1;border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-md);margin-top:var(--spacing-sm);white-space:nowrap}.dropdown:hover .dropdown-content{display:block}.dropdown-content li{display:block;padding:var(--spacing-md) var(--spacing-md);margin:0;border-bottom:1px solid var(--pico-muted-border-color)}.dropdown-content li:last-child{border-bottom:none}.dropdown-content li:hover{background-color:var(--pico-muted-border-color)}.dropdown-content a{color:var(--pico-primary);text-decoration:none;display:block;width:100%;font-size:var(--font-size-sm);font-family:var(--font-family-heading);font-weight:600;text-transform:uppercase}.dropdown-content a:hover{color:var(--pico-primary)}.theme-toggle{background-color:#80808033;border:1px solid var(--pico-muted-border-color);color:var(--pico-color);font-size:var(--font-size-lg);cursor:pointer;padding:var(--spacing-sm);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);width:2.5rem;height:2.5rem;box-shadow:var(--shadow-sm)}.theme-toggle:hover{background-color:var(--pico-muted-border-color);color:var(--pico-primary)}.theme-toggle:focus{outline:none;box-shadow:0 0 0 3px var(--pico-primary-focus)}[data-theme=dark] .theme-toggle{background-color:#fff3;border-color:#ffffff4d}[data-theme=light] .theme-toggle{background-color:#0003;border-color:#0006;color:var(--pico-secondary)}[data-theme=light] .theme-toggle i{color:var(--pico-primary)}.theme-toggle-menu{background:none;border:none;color:var(--pico-primary);cursor:pointer;display:flex;align-items:center;width:100%;text-align:left;padding:0;font-size:var(--font-size-sm);font-family:var(--font-family-heading);font-weight:600;text-transform:uppercase}.theme-toggle-menu:hover{color:var(--pico-primary)}.theme-toggle-menu i{margin-right:var(--spacing-sm);color:var(--pico-primary)}.flash-alert,.flash-notice{position:relative;padding:var(--spacing-md);margin-bottom:var(--spacing-lg);border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:space-between;transition:opacity var(--transition-normal) ease;box-shadow:var(--shadow-md);border:var(--border-ornate)}.flash-alert{background-color:var(--pico-del-color);color:#fff}.flash-notice{background-color:var(--pico-ins-color);color:#fff}.flash-content{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;margin-right:var(--spacing-md)}.flash-content i{font-size:var(--font-size-lg);margin-right:var(--spacing-sm)}.flash-close{background:none;border:none;color:inherit;padding:var(--spacing-sm);cursor:pointer;opacity:.7;transition:all var(--transition-fast) ease;border-radius:var(--border-radius-sm)}.flash-close:hover,.flash-close:focus{opacity:1;background-color:#ffffff1a}.flash-alert[data-dismiss-target=hidden],.flash-notice[data-dismiss-target=hidden]{opacity:0;pointer-events:none}.campaigns-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.search-message{font-size:var(--font-size-sm);margin:0}.campaign-name{margin:0 0 var(--spacing-md) 0}.campaign-name a{color:var(--pico-color);text-decoration:none;font-size:var(--font-size-xl);font-weight:600}.campaign-name a:hover{color:var(--pico-primary)}.campaign-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.character-sheet{max-width:100%;margin:0;padding:var(--spacing-sm)}.race-class-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.field-half{flex:1}@media (max-width: 768px){.race-class-row{flex-direction:column;gap:var(--spacing-sm)}}.character-header{text-align:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--pico-muted-border-color)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.character-header h1{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-weight:700;color:var(--pico-h1-color);font-family:var(--font-family-heading)}.edit-link{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);vertical-align:middle;text-decoration:none;color:var(--pico-primary);border:1px solid var(--pico-primary);border-radius:var(--border-radius-sm);background:transparent;font-weight:600;transition:var(--transition-fast)}.edit-link:hover{background:var(--pico-primary);color:var(--pico-primary-inverse)}.character-info{display:flex;justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap;font-size:var(--font-size-sm);color:var(--pico-muted-color);font-weight:500}.character-info span{padding:var(--spacing-xs);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.navigation-tabs{display:flex;justify-content:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--pico-muted-border-color)}.navigation-tabs .tab{font-size:var(--font-size-sm);font-weight:600;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-md);text-decoration:none;color:var(--pico-muted-color);background:var(--pico-card-background-color);border:1px solid var(--pico-muted-border-color);transition:var(--transition-fast)}.navigation-tabs .tab:hover{color:var(--pico-color);background:var(--pico-card-background-color);border-color:var(--pico-primary)}.navigation-tabs .tab-active{color:var(--pico-primary-inverse);background:var(--pico-primary);border-color:var(--pico-primary)}.navigation-tabs .tab-disabled{opacity:.5;cursor:not-allowed;background:var(--pico-muted-background-color);color:var(--pico-muted-color);border-color:var(--pico-muted-border-color)}.character-sheet-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-sm)}.left-column,.middle-column,.right-column{display:flex;flex-direction:column;gap:var(--spacing-sm)}.card{background:var(--pico-card-background-color);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-md);padding:var(--spacing-sm);transition:var(--transition-fast)}.card:hover{border-color:var(--pico-primary)}.card-center{text-align:center}.card-flex{display:flex;justify-content:space-between;align-items:center}.label{font-size:var(--font-size-xs);font-weight:700;color:var(--pico-muted-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs);display:block}.label-large{font-size:var(--font-size-sm)}.value{font-size:var(--font-size-lg);font-weight:800;color:var(--pico-primary)}.value-large{font-size:var(--font-size-xl)}.value-medium{font-size:var(--font-size-md)}.text{font-size:var(--font-size-sm);line-height:1.4;color:var(--pico-color);margin-bottom:var(--spacing-xs)}.title{font-size:var(--font-size-md);font-weight:700;color:var(--pico-h1-color);text-align:center;text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--pico-muted-border-color)}.subtitle{font-size:var(--font-size-sm);font-weight:700;color:var(--pico-muted-color);text-transform:uppercase;letter-spacing:.05em;margin:var(--spacing-sm) 0 var(--spacing-xs) 0;padding-left:var(--spacing-xs);border-left:2px solid var(--pico-primary)}.subtitle:first-child{margin-top:0}.ability-score{margin-bottom:var(--spacing-sm)}.ability-name{font-size:var(--font-size-sm);font-weight:700;text-align:center;margin-bottom:var(--spacing-sm);color:var(--pico-h1-color);text-transform:uppercase;letter-spacing:.05em}.ability-name .ability-modifier{font-size:var(--font-size-md);font-weight:800}.saving-throw{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs);background:var(--pico-card-background-color);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-sm);padding:var(--spacing-xs)}.skill{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);border-radius:var(--border-radius-sm);transition:var(--transition-fast)}.skill:hover{background:var(--pico-card-background-color)}.saving-throw-indicator{font-size:var(--font-size-xxs);color:var(--pico-primary-color);font-weight:600;margin-left:var(--spacing-xs)}.ability-score-label.has-saving-throw{position:relative}.combat-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-xs)}.hit-points,.skills,.attack-table{display:flex;flex-direction:column;gap:var(--spacing-xs)}.attack-header{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:700;color:var(--pico-muted-color);text-align:center;text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-xs);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.attack-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-xs)}.death-save-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);padding:var(--spacing-xs);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.death-save-row:last-child{margin-bottom:0}.checkboxes{display:flex;gap:var(--spacing-sm)}.attack-row input{padding:var(--spacing-xs);font-size:var(--font-size-sm);border:1px solid var(--pico-form-element-border-color);border-radius:var(--border-radius-sm);background:var(--pico-form-element-background-color);color:var(--pico-form-element-color);transition:var(--transition-fast)}.attack-row input:focus{outline:none;border-color:var(--pico-primary);box-shadow:0 0 0 2px var(--pico-primary-focus)}input[type=checkbox]{width:12px;height:12px;accent-color:var(--pico-primary)}.saving-throw input[type=checkbox]{transform:rotate(45deg)}.skill input[type=checkbox]{width:10px;height:10px}.modifier-very-negative{color:var(--color-very-negative)}.modifier-negative{color:var(--color-negative)}.modifier-neutral{color:var(--color-neutral)}.modifier-positive{color:var(--color-positive)}.modifier-very-positive{color:var(--color-very-positive)}.bonus-very-negative{color:var(--color-very-negative)}.bonus-negative{color:var(--color-negative)}.bonus-neutral{color:var(--color-neutral)}.bonus-positive{color:var(--color-positive)}.bonus-very-positive{color:var(--color-very-positive)}.skill-bonus{font-size:var(--font-size-xs);font-weight:700;margin-left:auto;padding:2px 6px;background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color);min-width:32px;text-align:center}.skill-proficient{background:var(--pico-primary-background-color, var(--pico-primary-focus));border:1px solid var(--pico-primary);border-radius:var(--border-radius-sm)}.skill-proficient .skill-bonus{background:var(--pico-primary);color:var(--pico-primary-inverse);border-color:var(--pico-primary)}.level-up-container{max-width:100%;margin:0 auto;padding:var(--spacing-md)}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--pico-muted-border-color)}.header-section h1{margin:0;font-size:var(--font-size-2xl);font-weight:700;color:var(--pico-h1-color);font-family:var(--font-family-heading)}.back-button{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--pico-muted-color);color:var(--pico-primary-inverse);border-radius:var(--border-radius-sm);text-decoration:none;font-weight:600;transition:var(--transition-fast)}.back-button:hover{background:var(--pico-secondary-hover);color:var(--pico-primary-inverse)}.character-info-card h3,.progression-table-card h3{font-size:var(--font-size-lg);font-weight:700;color:var(--pico-h1-color);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--pico-muted-border-color)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.info-grid>div{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.table-container{overflow-x:auto;margin-top:var(--spacing-sm)}.progression-table{width:100%;border-collapse:collapse;background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);overflow:hidden;font-size:var(--font-size-sm)}.progression-table th{background:var(--pico-muted-background-color);padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:700;font-size:var(--font-size-xs);color:var(--pico-muted-color);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--pico-muted-border-color)}.progression-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--pico-muted-border-color);color:var(--pico-color)}.progression-table .current-level-row{background:var(--pico-primary-background-color, var(--pico-primary-focus));font-weight:600;color:var(--pico-primary)}.progression-table tbody tr.higher-level{opacity:.6;transition:opacity var(--transition-fast)}.progression-table tbody tr.higher-level:hover{opacity:1}.progression-table tbody tr:hover{background:var(--pico-card-background-color)}.no-data{text-align:center;padding:var(--spacing-xl);color:var(--pico-muted-color);font-style:italic}@media (max-width: 768px){.character-sheet{padding:var(--spacing-xs)}.header-top{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}.character-sheet-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.character-header h1{font-size:var(--font-size-lg)}.character-info{flex-direction:column;gap:var(--spacing-xs)}.navigation-tabs{flex-wrap:wrap;justify-content:center}.navigation-tabs .tab{flex:1;min-width:120px;text-align:center}.combat-stats,.attack-header,.attack-row{grid-template-columns:1fr}.attack-row input{margin-bottom:var(--spacing-xs)}.level-up-container{padding:var(--spacing-sm)}.header-section{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}.header-section h1{font-size:var(--font-size-xl)}.info-grid{grid-template-columns:1fr}.progression-table{font-size:var(--font-size-xs)}.progression-table th,.progression-table td{padding:var(--spacing-xs) var(--spacing-sm)}}.floating-modifiers .modifier-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-top:var(--spacing-sm)}.floating-modifiers .field{margin-bottom:0}.ability-scores .field-help,.floating-modifiers .field-help{color:var(--pico-muted-color);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.skill-selection .skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.skill-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-sm);background:var(--pico-form-element-background-color);transition:var(--transition-fast);cursor:pointer;min-height:36px;justify-content:space-between}.skill-checkbox:hover{border-color:var(--pico-primary);background:var(--pico-card-background-color)}.skill-checkbox.skill-selected{border-color:var(--pico-primary);background:var(--pico-primary-background-color, var(--pico-primary-focus))}.skill-checkbox.skill-overlimit{opacity:.5;border-color:var(--color-negative, #dc3545)}.skill-checkbox.skill-unavailable{opacity:.4;cursor:not-allowed;background:var(--pico-muted-background-color)}.skill-checkbox-input{margin:0;accent-color:var(--pico-primary)}.skill-label{font-size:var(--font-size-xxs);font-weight:600;color:var(--pico-color);cursor:pointer;margin:0;line-height:1.2;flex:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-ability{font-size:var(--font-size-xs);font-weight:700;color:var(--pico-muted-color);background:var(--pico-muted-background-color, var(--pico-card-background-color));padding:2px 6px;border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color);min-width:32px;text-align:center;flex-shrink:0}.skill-counter{grid-column:1 / -1;text-align:center;padding:var(--spacing-sm);background:var(--pico-card-background-color);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-sm);margin-top:var(--spacing-sm)}.skill-selected{font-size:var(--font-size-sm);color:var(--pico-color)}.skill-selected strong{color:var(--pico-primary);font-size:var(--font-size-md)}.choice-section{margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.choice-title{font-size:var(--font-size-md);font-weight:700;color:var(--pico-primary);margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.05em}.hit-points-display{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xs);padding:var(--spacing-sm);background:var(--pico-primary-background-color, var(--pico-primary-focus));border-radius:var(--border-radius-sm);border:1px solid var(--pico-primary)}.hp-label{font-weight:600;color:var(--pico-color)}.hp-value{font-size:var(--font-size-lg);font-weight:800;color:var(--pico-primary)}.hp-calculation{font-size:var(--font-size-sm);color:var(--pico-muted-color);margin-left:auto}.skill-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.skill-tag{padding:var(--spacing-xs) var(--spacing-sm);background:var(--pico-primary);color:var(--pico-primary-inverse);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:600}.proficiency-list,.feature-list{margin-top:var(--spacing-xs);padding-left:var(--spacing-md)}.proficiency-list li{margin-bottom:var(--spacing-xs)}.feature-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-xs);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.feature-name{font-weight:700;color:var(--pico-primary)}.feature-description{font-size:var(--font-size-sm);color:var(--pico-muted-color)}.feat-item{margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-muted-border-color)}.feat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.feat-name{font-weight:700;font-size:var(--font-size-sm);color:var(--pico-primary)}.feat-level{font-size:var(--font-size-xs);color:var(--pico-muted-color);background:var(--pico-muted-background-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:600}.feat-description{font-size:var(--font-size-sm);color:var(--pico-color);line-height:1.4;margin:0 0 var(--spacing-xs) 0}.feat-choices{margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--pico-muted-border-color)}.feat-choice{font-size:var(--font-size-xs);color:var(--pico-muted-color);margin-bottom:var(--spacing-xs)}.level-up-section{grid-column:1 / -1}.level-up-content{margin-bottom:var(--spacing-lg)}.level-up-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--pico-muted-border-color);text-align:center}.btn-large{font-size:var(--font-size-lg);padding:var(--spacing-md) var(--spacing-xl)}.choice-item{margin-bottom:var(--spacing-sm);padding:var(--spacing-md);background:var(--pico-card-background-color);border-radius:var(--border-radius-sm);border:1px solid var(--pico-primary)}.choice-subtitle{font-size:var(--font-size-md);font-weight:700;color:var(--pico-primary);margin:0 0 var(--spacing-xs) 0}.choice-description{font-size:var(--font-size-sm);color:var(--pico-color);margin-bottom:var(--spacing-sm);line-height:1.4}.choice-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.choice-instruction{font-size:var(--font-size-xs);font-weight:600;color:var(--pico-muted-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.choice-option{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--pico-muted-border-color);border-radius:var(--border-radius-sm);transition:var(--transition-fast);cursor:pointer}.choice-option:hover{border-color:var(--pico-primary);background:var(--pico-primary-background-color, var(--pico-primary-focus))}.choice-radio{margin:2px 0 0;accent-color:var(--pico-primary)}.choice-label{display:flex;flex-direction:column;gap:var(--spacing-xs);cursor:pointer;flex:1;margin:0}.option-name{font-weight:600;color:var(--pico-color);font-size:var(--font-size-sm)}.option-description{font-size:var(--font-size-xs);color:var(--pico-muted-color);line-height:1.3}.choice-option:has(.choice-radio:checked){border-color:var(--pico-primary);background:var(--pico-primary-background-color, var(--pico-primary-focus))}.choice-option:has(.choice-radio:checked) .option-name{color:var(--pico-primary);font-weight:700}@media (max-width: 480px){.character-sheet{padding:var(--spacing-xs)}.character-header h1{font-size:var(--font-size-md)}.navigation-tabs{flex-direction:column;gap:var(--spacing-xs)}.navigation-tabs .tab{flex:none;min-width:auto}.floating-modifiers .modifier-grid,.skill-selection .skill-grid{grid-template-columns:1fr}}
