.character-form .section-title,.section-subtitle{margin:0 0 var(--space-md) 0;font-size:14px;color:var(--color-primary);font-family:var(--font-display)}.section-subtitle{margin:var(--space-md) 0 var(--space-sm)}.hint,.optional{font-weight:400;font-size:12px;color:var(--color-text-light)}.empty-hint,.exp-line{font-size:13px;color:var(--color-text-light);line-height:1.45}.empty-hint{font-style:italic;margin:0}.exp-line strong{color:var(--color-text);font-weight:700}.feature-list{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:8px}.feature-list li{font-size:13px;line-height:1.4}.feature-list .fname{font-weight:700;font-family:var(--font-display);color:var(--color-primary)}.feature-list .fkind{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-light);margin-left:4px}.feature-list li>div{margin-top:2px}.adv-card__stats{color:var(--color-text-light);font-size:13px}.adv-card__stats strong{color:var(--color-text);font-family:var(--font-display)}.adv-card__attack{color:var(--color-text-light)}.adv-card__attack strong{color:var(--color-text)}.potential-preview{margin:0;line-height:1.7;font-weight:400;color:var(--color-text-light)}.potential-preview strong{color:var(--color-text)}.flow{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:end}.flow.nowrap{flex-wrap:nowrap}.flow>label{flex:1 1 var(--field-basis,260px);min-width:min(100%,var(--field-min,200px))}.flow.nowrap>label.field-grow{flex:1 1 auto;min-width:0}.flow.nowrap>label.field-mod{flex:0 0 72px;min-width:60px}.field-xs{--field-basis:95px;--field-min:80px}.field-sm{--field-basis:170px;--field-min:150px}.field-md{--field-basis:240px;--field-min:200px}.field-lg{--field-basis:320px;--field-min:280px}.field-xl{--field-basis:480px;--field-min:360px}.field-full{flex-basis:100%;width:100%}.field-grow{flex:2 1 var(--field-basis,280px)}.field-mod{--field-basis:72px;--field-min:60px}.mod-check{display:flex!important;align-items:center;gap:6px;font-family:var(--font-body);font-weight:400;font-size:13px;color:var(--color-text);cursor:pointer;padding:2px 0!important}.mod-check input{width:auto;margin:0}.mod-num{display:grid!important;gap:3px;padding:0!important;font-size:11px;font-weight:700;color:var(--color-text-light);font-family:var(--font-body);min-width:0}.mod-num span{white-space:nowrap;line-height:1.2}.ui-icon{width:1.25rem;height:1.25rem;display:inline-block;flex-shrink:0;background-color:currentColor;-webkit-mask:var(--ui-icon) center/contain no-repeat;mask:var(--ui-icon) center/contain no-repeat}.ui-icon--sm{width:1rem;height:1rem}.ui-icon--chevron{--ui-icon:url("/assets/icons/ui/chevron-down.svg")}.ui-icon--close{--ui-icon:url("/assets/icons/ui/close.svg")}.ui-icon--help{--ui-icon:url("/assets/icons/ui/help-circle-outline.svg")}.ui-icon--expand{--ui-icon:url("/assets/icons/ui/expand-all.svg")}.ui-icon--collapse{--ui-icon:url("/assets/icons/ui/collapse-all.svg")}.ui-icon--eye{--ui-icon:url("/assets/icons/ui/eye-outline.svg")}.ui-icon--eye-off{--ui-icon:url("/assets/icons/ui/eye-off-outline.svg")}.ui-icon--plus{--ui-icon:url("/assets/icons/ui/plus.svg")}.ui-icon--minus{--ui-icon:url("/assets/icons/ui/minus.svg")}.icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface-elev);color:var(--color-text);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.icon-btn:hover{background:var(--color-control-hover)}.icon-btn::before{content:"";width:20px;height:20px;background-color:currentColor;-webkit-mask:var(--btn-icon) center/contain no-repeat;mask:var(--btn-icon) center/contain no-repeat}.icon-btn.close-btn{--btn-icon:url("/assets/icons/ui/close.svg");width:28px;height:28px}.icon-btn.close-btn::before{width:16px;height:16px}.icon-btn.help-btn{--btn-icon:url("/assets/icons/ui/help-circle-outline.svg")}.icon-btn.desc-toggle{--btn-icon:url("/assets/icons/ui/collapse-all.svg")}.icon-btn.desc-toggle[aria-pressed=true]{--btn-icon:url("/assets/icons/ui/expand-all.svg")}.typeahead-menu{position:fixed;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);z-index:10050;max-height:280px;overflow:auto;display:none}.typeahead-item{padding:8px 10px;cursor:pointer;display:flex;justify-content:space-between;gap:8px;align-items:baseline;color:var(--color-text)}.typeahead-item:hover,.typeahead-item[aria-selected=true]{background:var(--color-surface-elev)}.typeahead-item .meta{font-size:12px;color:var(--color-text-light);font-family:var(--font-body);white-space:nowrap}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.chip{border:1px solid var(--color-border);background:var(--color-surface-elev);border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--color-text);font-family:var(--font-body)}.chip.is-active,.chip:hover{background:var(--color-control-hover);border-color:var(--color-primary)}.chip.is-active{font-weight:700}.adv-card__meta .badge,.customs-item .badge,.typeahead-item .badge{font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:999px;border:1px solid var(--color-primary);color:var(--color-primary);font-family:var(--font-body);font-weight:600}.ccard{border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);padding:0;overflow:visible}.ccard>summary{list-style:none;cursor:pointer;padding:12px 14px;color:var(--color-primary);display:flex;align-items:center;gap:8px}.ccard>summary h3{margin:0;font-size:16px;font-weight:700;flex:1;min-width:0;color:inherit}.ccard>summary::after{content:"";width:18px;height:18px;flex-shrink:0;opacity:.8;background-color:currentColor;-webkit-mask:url("/assets/icons/ui/chevron-down.svg") center/contain no-repeat;mask:url("/assets/icons/ui/chevron-down.svg") center/contain no-repeat;transition:transform .15s}.ccard[open]>summary::after{transform:rotate(180deg)}.ccard>summary::-webkit-details-marker{display:none}.ccard[open]>summary{border-bottom:1px solid var(--color-border)}.ccard .ccard-body{padding:var(--space-md)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.char-header{display:grid;grid-template-columns:fit-content(100%) 1fr fit-content(100%);gap:var(--space-sm);align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:8px;min-width:0}.char-header__left,.char-header__right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.char-header__center{display:flex;justify-content:center;align-items:center;min-width:0}.char-header__right{justify-content:flex-end}.header-btn{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-elev);color:var(--color-text);cursor:pointer;font-family:var(--font-body)}.header-btn:hover{background:var(--color-control-hover)}.header-btn.secondary{background:0 0}.header-btn:disabled{opacity:.5;cursor:not-allowed}.sheet-switch{position:relative;width:100%}.switch-btn{padding:3px 32px 3px 12px;border:1px solid var(--color-border);border-radius:8px;font-weight:800;font-size:16px;font-family:var(--font-display);background:var(--color-surface-elev);color:var(--color-text);width:100%;position:relative;cursor:pointer}.switch-btn::after{content:"";position:absolute;right:10px;top:50%;width:16px;height:16px;transform:translateY(-50%);pointer-events:none;opacity:.8;background-color:currentColor;color:var(--color-primary);-webkit-mask:url("/assets/icons/ui/chevron-down.svg") center/contain no-repeat;mask:url("/assets/icons/ui/chevron-down.svg") center/contain no-repeat;transition:transform .15s}.switch-btn[aria-expanded=true]::after{transform:translateY(-50%) rotate(180deg)}.switch-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);max-height:260px;overflow:auto;z-index:10}.switch-menu.open{display:block}.switch-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;color:var(--color-text)}.switch-item:hover{background:var(--color-surface-elev)}.switch-delete{border:1px solid var(--color-border);border-radius:6px;width:26px;height:26px;padding:0;background:0 0;color:var(--color-danger,var(--color-text));cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.switch-delete::before{content:"";width:14px;height:14px;background-color:currentColor;-webkit-mask:url("/assets/icons/ui/close.svg") center/contain no-repeat;mask:url("/assets/icons/ui/close.svg") center/contain no-repeat}.switch-delete:hover{background:var(--color-accent)}.switch-new{padding:8px 10px;font-weight:600;cursor:pointer;color:var(--color-text)}.switch-new:hover{background:var(--color-surface-elev)}.toast{position:fixed;bottom:20px;right:20px;background:var(--color-surface);border:1px solid var(--color-border);padding:10px 14px;border-radius:10px;color:var(--color-text);opacity:0;transform:translateY(8px);transition:.2s;z-index:10000}.toast.show{opacity:1;transform:translateY(0)}.stat-label{font-size:11px;color:var(--color-text-light);font-weight:700;letter-spacing:.02em;display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;line-height:1}.stat-sub{color:var(--color-text);opacity:.9;font-weight:700;font-size:12px;font-family:var(--font-display);text-transform:none;letter-spacing:0}.stat-value{font-weight:800;font-size:14px;font-family:var(--font-display);color:var(--color-text);line-height:1}.ib-stat{background:var(--color-surface-elev);border:1px solid var(--color-border);border-radius:10px;padding:6px 10px;display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:34px;box-sizing:border-box}.pip{width:14px;height:14px;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:3px}.pip.circle{border-radius:999px}.pip.diamond{transform:rotate(45deg);border-radius:0}.pip.filled{background:var(--color-primary);border-color:var(--color-primary)}.pip:hover{box-shadow:0 0 0 2px var(--color-primary) inset}.content-page.is-fullbleed .container{max-width:none;padding:0 var(--space-sm)}.content-page.is-fullbleed .page-intro{margin-bottom:var(--space-md)!important}@media (max-width:900px){.char-header{grid-template-columns:1fr}.char-header__center{justify-content:flex-start}.char-header__right{justify-content:center}}