:root{--bg-base: #000000;--bg-card: #151515;--bg-popup: #1c1c1e;--bg-row-alt: #1a1a1a;--bg-row-hover: #222222;--bg-row-active: #2a2a2a;--text-main: #d9d9d9;--text-muted: #888888;--border-subtle: #333333;--border-popup: #3a3a3e;--accent-blue: #337ab7;--accent-success: #1e8e3e;--font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--transition: .15s ease;--card-padding: clamp(.9rem, 2.2vw, 1.25rem) clamp(1rem, 3vw, 1.5rem);--radius-sm: 4px;--radius-md: 6px;--app-shell-height: 100vh;--mobile-gutter: .55rem;--mobile-panel-padding: .95rem;--mobile-frame-gap: 1.25rem;--control-min-height: 2rem;--control-min-height-mobile: 2.25rem;--menu-trigger-size: 2.25rem}html,body{background-color:var(--bg-base);color:var(--text-main);font-family:var(--font-family);margin:0;padding:0}body{height:var(--app-shell-height);min-height:var(--app-shell-height);overflow:hidden}.class-prog-table{width:100%;border-collapse:collapse;font-size:.85rem;background:#151515}.class-prog-table th,.class-prog-table td{padding:.25rem .4rem;vertical-align:top}.class-prog-table thead th{background:#1b1b1b;color:var(--text);font-weight:600}.class-prog-table tbody tr:nth-child(2n){background:var(--bg-row-alt)}.class-prog-table tbody tr:hover{background:var(--bg-row-hover)}.class-prog-table__group{text-align:center}.class-prog-table__lvl,.class-prog-table__pb,.class-prog-table__col{text-align:center;white-space:nowrap}.class-prog-table__features{text-align:left;min-width:12rem}*{scrollbar-width:thin;scrollbar-color:var(--border-subtle) rgba(0,0,0,.35)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:#00000059}*::-webkit-scrollbar-thumb{background:#2a2a2a;border:2px solid rgba(0,0,0,.35);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#3a3a3a}*::-webkit-scrollbar-corner{background:#00000059}#app{display:flex;flex-direction:column;height:var(--app-shell-height);min-height:var(--app-shell-height)}.app-root{display:flex;flex-direction:column;flex:1;min-height:0;height:var(--app-shell-height)}@supports (height: 100dvh){:root{--app-shell-height: 100dvh}}.btn{background:var(--border-subtle);color:#fff;border:1px solid transparent;padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:background var(--transition)}.btn:hover{background:#404040}.btn-primary{background:var(--accent-blue)}.btn-primary:hover{background:#286090}.btn-success{background:var(--accent-success)}.btn-danger{background:#b03030;border-color:#b03030}.btn-danger:hover{background:#8f2525;border-color:#8f2525}.btn-danger-outline{background:transparent;color:#c06060;border-color:#6b3030}.btn-danger-outline:hover{background:#b0303026;border-color:#c06060;color:#e08080}.hidden-file{display:none}@keyframes fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#000000a6;display:flex;align-items:center;justify-content:center;animation:fade-in .12s ease}.modal-box{background:var(--bg-popup);border:1px solid var(--border-popup);border-radius:8px;box-shadow:0 12px 40px #000000b3;padding:1.75rem 2rem;max-width:420px;width:calc(100% - 2rem)}.modal-title{margin:0 0 .85rem;font-size:1.1rem;color:#fff}.modal-body{font-size:.92rem;color:var(--text-muted);line-height:1.6;margin:0 0 1.5rem}.modal-body strong{color:#e08080}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.source-modal-box{max-width:560px;max-height:min(90vh,720px);overflow-y:auto}.source-modal-lead{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin:0 0 1.25rem}.source-modal-section{margin-bottom:1.25rem;padding:1rem;background:#ffffff08;border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.source-modal-section-title{margin:0 0 .5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#fff}.source-modal-text{margin:0 0 .75rem;font-size:.88rem;color:var(--text-muted);line-height:1.45}.source-modal-meta{margin:.35rem 0 0;font-size:.82rem;display:flex;flex-direction:column;gap:.25rem}.source-modal-label{color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.source-modal-link{color:var(--accent-blue);word-break:break-all}.source-modal-link:hover{text-decoration:underline}.source-modal-code{font-size:.78rem;color:#ccc;word-break:break-all;background:#00000059;padding:.2rem .35rem;border-radius:3px}.source-modal-input-label{display:block;margin:.75rem 0 .35rem;font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.source-modal-input{width:100%;box-sizing:border-box;padding:.55rem .65rem;background:var(--bg-base);color:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.9rem}.source-modal-input:focus{outline:none;border-color:var(--accent-blue)}.source-modal-warning,.source-modal-error{margin:.5rem 0 0;font-size:.82rem}.source-modal-warning{color:#d8a85c}.source-modal-error{color:#d88}.source-modal-ok{margin:.5rem 0 0;font-size:.82rem;color:var(--accent-success)}.source-modal-hint{margin:.5rem 0 0;font-size:.78rem;color:var(--text-muted);line-height:1.4}.source-modal-actions{flex-wrap:wrap;margin-top:.5rem}.global-sources-modal-box{max-width:620px}.global-sources-list{max-height:min(48vh,360px);overflow-y:auto;display:grid;gap:.35rem}.global-sources-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;padding:.4rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#ffffff05}.global-sources-option input[type=checkbox]{accent-color:var(--accent-blue)}.global-sources-option-code{font-size:.74rem;color:var(--text-muted);min-width:3.6rem;text-transform:uppercase;letter-spacing:.03em;text-align:right}.global-sources-option-name{color:var(--text-main);font-size:.85rem}.num-stepper{display:inline-flex;align-items:stretch;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;background:#000;width:100%;max-width:180px;height:2rem}.num-stepper__btn{background:#1c1c1c;color:#ddd;border:none;width:1.8rem;min-width:1.8rem;cursor:pointer;font-weight:700;font-size:1rem;line-height:1;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition),color var(--transition);-webkit-user-select:none;user-select:none}.num-stepper__btn--dec{border-right:1px solid var(--border-subtle)}.num-stepper__btn--inc{border-left:1px solid var(--border-subtle)}.num-stepper__btn:hover:not(:disabled){background:var(--accent-blue);color:#fff}.num-stepper__btn:active:not(:disabled){background:#286090}.num-stepper__btn:disabled{opacity:.35;cursor:not-allowed}.num-stepper__input{flex:1 1 auto;min-width:0;background:transparent;color:#fff;border:none;text-align:center;font-size:.95rem;padding:0;font-family:inherit;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.num-stepper__input::-webkit-outer-spin-button,.num-stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-stepper__input:focus{outline:none}.num-stepper--sm{height:1.7rem;max-width:82px}.num-stepper--sm .num-stepper__btn{width:1.4rem;min-width:1.4rem;font-size:.9rem}.num-stepper--sm .num-stepper__input{font-size:.85rem}.num-stepper--stacked{display:inline-flex;align-items:stretch;width:auto;max-width:none;height:1.75rem}.num-stepper--stacked .num-stepper__input{width:2.35rem;min-width:2.35rem;flex:0 0 auto;font-size:.8rem;padding:0 .15rem}.num-stepper--stacked .num-stepper__stack{display:flex;flex-direction:column;flex:0 0 auto;border-left:1px solid var(--border-subtle)}.num-stepper--stacked .num-stepper__btn{width:1.15rem;min-width:1.15rem;height:50%;flex:1 1 50%;font-size:.75rem;line-height:1;padding:0}.num-stepper--stacked .num-stepper__btn--inc{border-left:none;border-bottom:1px solid var(--border-subtle)}.num-stepper--stacked .num-stepper__btn--dec{border-left:none}.alert-error{background:#337ab733;border:1px solid var(--accent-blue);padding:1rem;text-align:center}.alert-banner{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 1rem;margin-top:.5rem;border:1px solid var(--border-subtle);background:#ffffff0a}.alert-banner--success{border-color:#4caf5073;background:#4caf5024}.alert-banner--error{border-color:#c6282880;background:#c6282829}.alert-banner__close{border:none;background:transparent;color:var(--text-main);font-size:1.15rem;cursor:pointer;line-height:1;padding:0}.loading{text-align:center;margin-top:4rem;color:var(--text-muted)}header{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-card);border-bottom:2px solid var(--accent-blue);padding:1rem 2rem;flex-shrink:0;gap:1rem}header h1{margin:0;font-size:1.5rem;color:#fff;font-weight:700;line-height:1.1}.header-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;position:relative}.header-menu{position:relative}.header-menu__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:14}.header-menu__summary{list-style:none;width:var(--menu-trigger-size);height:var(--menu-trigger-size);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#ffffff0a;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--transition),background var(--transition)}.header-menu__summary:hover{border-color:#ffffff59;background:#ffffff1a}.header-menu__icon,.header-menu__icon:before,.header-menu__icon:after{display:block;width:1rem;height:2px;border-radius:2px;background:#fff;content:""}.header-menu__icon{position:relative}.header-menu__icon:before{position:absolute;top:-.32rem;left:0}.header-menu__icon:after{position:absolute;top:.32rem;left:0}.header-menu__panel{position:absolute;top:calc(100% + .35rem);right:0;z-index:15;min-width:13.5rem;padding:.3rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card);display:none;gap:.15rem;box-shadow:0 10px 24px #0000006b}.header-menu__item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;display:flex;align-items:center;justify-content:flex-start;color:var(--text-main);text-align:left;font-size:.9rem;font-weight:600;line-height:1.25;padding:.55rem .65rem;border-radius:var(--radius-sm);width:100%;box-sizing:border-box;cursor:pointer;transition:background var(--transition),color var(--transition)}.header-menu__item:hover{background:var(--bg-row-hover);color:#fff}.header-menu__item:focus-visible{outline:2px solid var(--accent-blue);outline-offset:1px}.header-menu__item--danger{color:#f3b2b2}.header-menu__item--danger:hover{background:#c6282829;color:#ffd8d8}.header-menu__panel.open{display:grid}.wizard-tabs{display:flex;justify-content:flex-start;background:#111;padding:.5rem 2rem;gap:1rem;border-bottom:1px solid var(--border-subtle);flex-shrink:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-padding-inline:1rem;scrollbar-width:thin;scrollbar-color:#444 transparent}.wizard-tabs::-webkit-scrollbar{height:4px}.wizard-tabs::-webkit-scrollbar-thumb{background:#444;border-radius:2px}.tab{color:var(--text-muted);padding:.4rem 0;font-weight:700;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;flex:0 0 auto}.tab.active{color:#fff;border-bottom-color:var(--accent-blue)}.app-body{display:flex;flex-grow:1;min-height:0;overflow:hidden;position:relative}.app-body--scrollable{overflow-y:auto}.split-view{display:flex;width:100%;height:100%}.class-tab-mobile-bar{display:none}.class-tab-mobile-btn{background:#ffffff0a;color:var(--text-muted);border:1px solid var(--border-subtle);padding:.45rem .7rem;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;flex:1 1 0;min-width:0;min-height:var(--control-min-height-mobile)}.class-tab-mobile-btn.active{color:#fff;border-color:#337ab799;background:#337ab71f}.class-tab-mobile-btn:disabled{opacity:.45;cursor:not-allowed}.class-tab-split .class-tab-pane--classes{width:20%;min-width:280px}.class-tab-split .class-tab-pane--subclasses{width:20%;min-width:200px;border-left:1px solid var(--border-subtle)}.class-tab-split .class-tab-pane--details{width:60%}.entity-tab-mobile-bar{display:none}.entity-tab-mobile-btn{background:#ffffff0a;color:var(--text-muted);border:1px solid var(--border-subtle);padding:.45rem .7rem;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;flex:1 1 0;min-width:0;min-height:var(--control-min-height-mobile)}.entity-tab-mobile-btn.active{color:#fff;border-color:#337ab799;background:#337ab71f}.entity-tab-mobile-btn:disabled{opacity:.45;cursor:not-allowed}.triple-tab-mobile-bar{display:none}.triple-tab-mobile-btn{background:#ffffff0a;color:var(--text-muted);border:1px solid var(--border-subtle);padding:.45rem .7rem;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;flex:1 1 0;min-width:0;min-height:var(--control-min-height-mobile)}.triple-tab-mobile-btn.active{color:#fff;border-color:#337ab799;background:#337ab71f}.triple-tab-mobile-btn:disabled{opacity:.45;cursor:not-allowed}.list-pane{width:35%;min-width:300px;border-right:1px solid var(--border-subtle);overflow-y:auto;background-color:var(--bg-base)}.te-toolbar{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);background:#0f0f0f;flex-wrap:wrap}.te-search{flex:1 1 auto;min-width:0;max-width:100%;box-sizing:border-box;background:var(--bg-base);color:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.35rem .5rem}.te-pagesize{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-muted);font-size:.75rem}.te-pagesize select,.te-filter-select,.te-filter-input{background:var(--bg-base);color:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.25rem .4rem;max-width:100%;box-sizing:border-box}.te-reset-btn{padding:.3rem .55rem;font-size:.75rem}.te-filters-modal{max-width:min(920px,96vw);max-height:90vh;display:flex;flex-direction:column}.te-filters-modal-hint{margin:0 0 .65rem;font-size:.72rem;color:var(--text-muted)}.te-filters-modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;flex-shrink:0}.te-filters{display:flex;flex-direction:column;gap:.85rem;padding:.25rem .15rem .75rem;overflow-y:auto;flex:1;min-height:0}.te-filter-section{border-bottom:1px solid var(--border-subtle);padding-bottom:.75rem}.te-filter-section:last-child{border-bottom:none;padding-bottom:0}.te-filter-section__label{margin:0 0 .45rem;color:#ccc;font-size:.78rem;font-weight:600;letter-spacing:.02em}.te-filter-pills{display:flex;flex-wrap:wrap;gap:.35rem}.te-filter-pill{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;border:1px solid #444;background:#1a1a1a;color:#ddd;font-size:.76rem;line-height:1.35;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease}.te-filter-pill--neutral:hover,.te-filter-pill:not(.te-filter-pill--include):not(.te-filter-pill--exclude):hover{border-color:#666;background:#242424}.te-filter-pill--neutral{opacity:1}.te-filter-pill--include{border-color:var(--accent-blue, #4a9eff);background:#4a9eff38;color:#e8f2ff}.te-filter-pill--include:hover{border-color:#6eb3ff;background:#4a9eff66;color:#fff}.te-filter-pill--exclude{border-color:#c62828;background:#c6282838;color:#ffecec;text-decoration:line-through}.te-filter-pill--exclude:hover{border-color:#e53935;background:#c6282866;color:#fff}.te-filter-pill--zero{opacity:.38}.te-filter-pill--zero:hover{opacity:.55}.te-filter-pill:focus-visible{outline:2px solid var(--accent-blue, #4a9eff);outline-offset:2px}.te-ability-matrix{display:flex;flex-direction:column;gap:.3rem;font-size:.76rem}.te-ability-matrix__head,.te-ability-matrix__row{display:grid;grid-template-columns:minmax(5.5rem,1fr) repeat(4,minmax(3.25rem,1fr));gap:.3rem;align-items:stretch}.te-ability-matrix__corner{min-height:1px}.te-ability-matrix__col-head{text-align:center;color:var(--text-muted);font-size:.72rem;font-weight:600;padding:.1rem 0}.te-ability-matrix__row-head{display:flex;align-items:center;color:#ccc;font-size:.74rem;padding-right:.25rem}.te-ability-matrix__cell{justify-content:center;width:100%;min-width:0;border-radius:4px;padding:.25rem .15rem;font-size:.72rem}.te-ability-matrix__count{margin-left:.15rem;font-size:.68rem;opacity:.85}.te-range-slider{padding:.15rem .1rem .35rem}.te-range-slider__values{display:flex;justify-content:space-between;margin-bottom:.35rem;font-size:.75rem;color:var(--text-muted)}.te-range-slider--active .te-range-slider__values{color:#ddd}.te-range-slider__track-wrap{position:relative;height:1.35rem}.te-range-slider__track{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:4px;border-radius:2px;background:#333}.te-range-slider__fill{position:absolute;top:50%;transform:translateY(-50%);height:4px;border-radius:2px;background:var(--accent-blue, #4a9eff);pointer-events:none}.te-range-slider__thumb{position:absolute;left:0;width:100%;height:0;margin:0;padding:0;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;top:50%;transform:translateY(-50%)}.te-range-slider__thumb::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:var(--accent-blue, #4a9eff);cursor:grab;margin-top:0}.te-range-slider__thumb::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:var(--accent-blue, #4a9eff);cursor:grab}.te-range-slider__thumb--high{z-index:2}.te-range-slider__thumb--low{z-index:3}.te-filter-card{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.45rem .55rem}.te-filter-card h4{margin:0 0 .35rem;color:#ddd;font-size:.73rem;text-transform:uppercase;letter-spacing:.04em}.te-range{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.te-options{max-height:120px;overflow:auto;display:flex;flex-direction:column;gap:.2rem}.te-option{display:flex;align-items:center;gap:.35rem;font-size:.78rem}.te-option-label{color:#ddd}.te-option-count{color:var(--text-muted);margin-left:auto}.te-filter-hint{margin:0 0 .35rem;font-size:.68rem;color:var(--text-muted);font-style:italic}.te-tristate{flex-shrink:0;padding:0;border:none;background:transparent;cursor:pointer;line-height:1}.te-tristate-box{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border:1px solid #666;border-radius:2px;background:#1a1a1a;color:transparent;font-size:.72rem;font-weight:700;line-height:1}.te-tristate--include .te-tristate-box{border-color:var(--accent-blue, #4a9eff);background:var(--accent-blue, #4a9eff);color:#fff}.te-tristate--exclude .te-tristate-box{border-color:#c62828;background:#c62828;color:#fff}.te-tristate:focus-visible .te-tristate-box{outline:2px solid var(--accent-blue, #4a9eff);outline-offset:1px}.te-pagination{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;border-top:1px solid var(--border-subtle);background:#0f0f0f;color:var(--text-muted);font-size:.78rem}.list-header:not(.table-grid-header){display:flex;padding:.5rem 1rem;background:#0a0a0a;border-bottom:1px solid #222;font-weight:700;font-size:.8rem;color:var(--text-muted);text-transform:uppercase}.list-header:not(.table-grid-header)>span{display:inline-block;text-align:center}.list-header:not(.table-grid-header)>span+span{border-left:1px solid #242424;margin-left:0;padding-left:.45rem}.list-row{display:flex;align-items:center;padding:.6rem 1rem;border-bottom:1px solid #1a1a1a;border-left:3px solid transparent;cursor:pointer}.list-row:nth-child(2n){background-color:var(--bg-row-alt)}.list-row:hover{background-color:var(--bg-row-hover)}.list-row.previewing{background-color:var(--bg-row-hover);border-left-color:#337ab766}.list-row.selected{background-color:var(--bg-row-active);border-left-color:var(--accent-blue)}.list-row.selected .row-name{color:#fff}.list-radio{margin-right:1rem;transform:scale(1.2);accent-color:var(--accent-blue);cursor:pointer}.row-name{font-weight:700;color:#ddd;flex-grow:1}.row-source{font-size:.7rem;color:var(--text-muted)}.list-header.table-grid-header,.table-grid-header,.table-grid-row{display:grid;grid-template-columns:var(--table-grid-columns);align-items:center;padding:.5rem 0;background:#0a0a0a;border-bottom:1px solid #222;font-weight:700;font-size:.8rem;color:var(--text-muted)}.table-grid-header>.table-grid-header-cell,.table-grid-row>span{min-width:0;padding:0 .45rem}.table-grid-header>.table-grid-header-cell+.table-grid-header-cell{border-left:1px solid #242424}.table-grid-header>.table-grid-header-cell{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;text-align:center;font:inherit;color:inherit;text-transform:uppercase;letter-spacing:inherit}.table-grid-header>button.table-grid-header-cell{margin:0;border:none;background:transparent;width:100%;height:100%;min-height:2rem}.table-grid-header>button.table-grid-header-cell--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table-grid-header>button.table-grid-header-cell--sortable:hover{color:#fff;background:#ffffff0a}.table-grid-header>.col-name.table-grid-header-cell--sortable{justify-content:flex-start}.table-grid-sort-indicator{font-size:.6rem;line-height:1;color:var(--accent-blue);flex-shrink:0}.table-grid-row .list-radio{margin-right:0}.table-grid-row>span{text-align:center}.table-grid-row>.col-name{text-align:left}.table-grid-header>.col-src,.table-grid-header>.col-type,.table-grid-header>.col-rarity,.table-grid-header>.col-level,.table-grid-header>.col-school,.table-grid-header>.col-category,.table-grid-row>.col-src,.table-grid-row>.col-type,.table-grid-row>.col-rarity,.table-grid-row>.col-level,.table-grid-row>.col-school,.table-grid-row>.col-category{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-grid-row>span:not(.col-name)>*{margin-left:auto;margin-right:auto}.class-list-header,.class-list-row{--table-grid-columns: 45px minmax(0, 1fr) 96px 64px}.entity-list-header,.entity-list-row,.subclass-list-header,.subclass-list-row{--table-grid-columns: 35px minmax(0, 1fr) 64px}.feats-list-cols-grid,.feats-list-row{--table-grid-columns: minmax(0, 1fr) 130px 68px;column-gap:.5rem}.equipment-list-header,.equipment-list-row{--table-grid-columns: minmax(0, 1fr) 96px 76px 60px minmax(120px, 140px)}.equipment-inventory-table .equipment-list-header,.equipment-inventory-table .equipment-list-row{--table-grid-columns: 2rem minmax(0, 1fr) minmax(0, .85fr) minmax(0, .75fr) minmax(0, .55fr)}.equipment-tab--triple{flex:1 1 auto;min-width:0}.equipment-tab--triple .list-pane{flex:4 1 0;width:auto;max-width:none;min-width:0;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;min-height:0;overflow:hidden}.equipment-tab--triple .details-pane{flex:2 1 0;width:auto;max-width:none;min-width:0;border-right:1px solid var(--border-subtle);padding:1.25rem 1rem}.equipment-tab--triple .inventory-pane{flex:4 1 0;width:auto;max-width:none;min-width:0;overflow-x:hidden;overflow-y:auto;background-color:var(--bg-base);padding:.5rem 1rem .5rem .75rem;box-sizing:border-box}.equipment-tab__shop-table,.equipment-inventory-table{flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto}.equipment-tab__shop-table .equipment-list-header,.equipment-inventory-table .equipment-list-header{position:sticky;top:0;z-index:2}.list-row.table-grid-row{display:grid}.table-grid-row>.col-actions,.table-grid-row>.col-transfer{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:nowrap}.table-grid-row>.col-actions>*,.table-grid-row>.col-transfer>*{margin-left:0;margin-right:0}.spells-list-header,.spells-list-row{--table-grid-columns: minmax(0, 1fr) 72px 108px 64px 92px}.details-pane{width:65%;overflow-y:auto;padding:2rem 3rem;background-color:var(--bg-base)}.details-pane h2{margin-top:0;color:#fff;border-bottom:2px solid var(--border-subtle);padding-bottom:.5rem}.details-pane h4{color:#fff;margin-top:1.5rem;margin-bottom:.5rem;font-size:1.1rem}.details-pane p{margin-top:0;margin-bottom:1rem;color:#bbb;line-height:1.5}.details-pane ul{margin-top:0;margin-bottom:1rem;padding-left:1.5rem;color:#bbb}.details-pane li{margin-bottom:.3rem}.details-pane strong{color:#ddd}.centered-wizard{display:flex;width:100%;flex-direction:column;align-items:center;text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:500px;margin:2rem auto}.abilities-layout{display:flex;gap:2rem;align-items:stretch;justify-content:center;width:100%;max-width:1400px;margin:0 auto;flex-wrap:wrap;padding-bottom:2.5rem}.abilities-col{display:flex;flex-direction:column;align-items:stretch;padding-top:2rem}.abilities-col.method-col,.abilities-col.bg-col{flex:0 0 360px;width:360px;min-width:300px;max-width:360px}.abilities-col.stats-col{flex:0 1 460px;min-width:320px;max-width:520px}.abilities-col .stats-grid{margin:0;max-width:none}.method-panel,.bg-bonus,.skills-list{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--card-padding)}.method-panel,.bg-bonus{flex:1 1 auto;display:flex;flex-direction:column;box-sizing:border-box}.method-panel h3,.skills-info-panel h3,.skills-list h3,.feats-panel h3{color:#fff;font-size:1rem;letter-spacing:.02em;text-transform:uppercase}.method-panel h3,.skills-info-panel h3{margin:0 0 .75rem}.skills-list h3,.feats-panel h3{margin:0 0 .85rem}.method-option{display:flex;align-items:center;gap:.55rem;padding:.4rem .5rem;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-main);transition:background var(--transition)}.method-option:hover{background:var(--bg-row-hover)}.method-option input[type=radio]{accent-color:var(--accent-blue);margin:0}.method-info{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--border-subtle);font-size:.85rem;color:var(--text-muted);line-height:1.45}.method-info strong{color:#fff;font-weight:600}.pb-cost-table{margin-top:.5rem;font-size:.78rem;color:var(--text-muted)}.ability-select{width:100%;padding:.45rem .55rem;background:var(--bg-base);color:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:1rem;font-weight:600;text-align:center;cursor:pointer}.ability-select:focus{outline:none;border-color:var(--accent-blue)}.ability-select option:disabled{color:var(--text-muted)}.stat-box{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:1rem}.stat-box label{display:block;font-weight:700;color:var(--text-muted);margin-bottom:.5rem}.stat-box .num-stepper{margin:.5rem auto 0;max-width:none;width:100%;height:2.2rem;background:#00000080}.stat-box .num-stepper__input{font-size:1rem}.bg-bonus{width:100%;margin:0;text-align:left}.bg-bonus h3{margin:0 0 .25rem;color:#fff;font-size:1.1rem;padding-bottom:.4rem}.bg-bonus-hint{color:var(--text-muted);font-size:.85rem;margin:.5rem 0 1rem}.bg-bonus-options{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.bg-bonus-option{display:flex;align-items:center;gap:.6rem;padding:.45rem .6rem;background:var(--bg-base);border:1px solid #2a2a2a;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-main)}.bg-bonus-option:hover{border-color:var(--accent-blue)}.bg-bonus-option input[type=radio]{accent-color:var(--accent-blue)}.bg-bonus-slots{display:flex;flex-direction:column;gap:.4rem;padding-top:.5rem;border-top:1px dashed #2a2a2a}.bg-bonus-slot{display:flex;align-items:center;gap:.75rem}.bg-bonus-weight{display:inline-block;min-width:3rem;color:var(--accent-success);font-weight:700}.bg-bonus-select{flex-grow:1;background:var(--bg-base);color:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.35rem .5rem;font-size:.95rem}.bg-bonus-select:disabled{opacity:.7;cursor:not-allowed}.bg-bonus-warning{color:#d88;font-size:.8rem;font-style:italic;margin-top:.25rem}.bg-bonus-empty{flex:1 1 auto;margin:0;width:100%;color:var(--text-muted);font-style:italic;text-align:center;padding:var(--card-padding);border:1px dashed var(--border-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;box-sizing:border-box}.entry-choice-row{display:flex;align-items:center;gap:.45rem;margin:.35rem 0 .55rem;padding:.3rem .5rem .3rem .65rem;border-left:3px solid var(--accent-blue);background:#337ab714}.entry-choice-label{font-weight:700;color:#fff;flex:0 0 auto;font-size:.82rem}.entry-choice-select{flex:0 1 auto;min-width:0;max-width:210px;width:auto;font-size:.75rem;padding:.18rem .3rem;line-height:1.25;background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.entry-choice-locked{font-size:.75rem;color:var(--text-muted);font-style:italic}.class-choices-panel{margin-bottom:1.25rem;padding:.75rem .85rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff05}.class-choices-panel__title{margin:0 0 .75rem;font-size:1rem}.class-choice-block{margin-bottom:.85rem}.class-choice-block__title{margin:0 0 .35rem;font-size:.9rem;color:var(--accent-blue)}.class-choice-block__hint{margin:0 0 .35rem;font-size:.78rem;color:var(--text-muted);font-style:italic}.class-choice-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;flex-wrap:wrap}.class-choice-row__label{flex:0 0 7rem;font-size:.8rem;color:var(--text-muted)}.class-choice-row__select{flex:1 1 12rem;min-width:10rem;font-size:.8rem;padding:.2rem .35rem;background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.class-choice-row__locked{font-size:.75rem;color:var(--text-muted);font-style:italic}.feature-spell-picks{margin-bottom:1rem;padding:.75rem .85rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff05}.feature-spell-picks__title{margin:0 0 .65rem;font-size:1rem}.feature-spell-picks__block{margin-bottom:.75rem}.feature-spell-picks__label{margin:0 0 .35rem;font-size:.88rem;color:var(--accent-blue)}.feature-spell-picks__row{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;flex-wrap:wrap;font-size:.8rem}.feature-spell-picks__row select{flex:1 1 12rem;min-width:10rem;padding:.2rem .35rem;background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.feature-spell-picks__locked{font-size:.75rem;color:var(--text-muted);font-style:italic}.entry-table{width:100%;border-collapse:collapse;margin:.75rem 0;background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.entry-table caption{caption-side:top;text-align:left;padding:.55rem .65rem;font-weight:700;color:#fff;border-bottom:1px solid var(--border-subtle);background:#ffffff08}.entry-table th,.entry-table td{padding:.45rem .55rem;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:top}.entry-table th{color:var(--text-muted);font-size:.78rem;text-align:left}.entry-table tr:last-child td{border-bottom:none}.entry-table tbody tr:nth-child(odd){background:var(--bg-row-alt)}.entry-table tbody tr:hover{background:var(--bg-row-hover)}@media(max-width:768px){.te-filters-modal{max-width:96vw;max-height:92vh}header{padding:calc(.75rem + env(safe-area-inset-top,0px)) .85rem .75rem;align-items:center}header h1{font-size:1.15rem}.header-actions{width:auto;justify-content:flex-end;gap:.35rem;flex-wrap:nowrap}.wizard-tabs{padding:.35rem calc(.75rem + env(safe-area-inset-right,0px)) .35rem calc(.75rem + env(safe-area-inset-left,0px));gap:.85rem;scroll-padding-inline:calc(.75rem + env(safe-area-inset-left,0px))}.split-view{flex-direction:column;padding:0 var(--mobile-gutter) var(--mobile-gutter);box-sizing:border-box}.app-body>:not(.split-view){padding-top:var(--mobile-gutter);padding-left:var(--mobile-gutter);padding-right:var(--mobile-gutter);box-sizing:border-box}.class-tab-mobile-bar{display:flex;gap:.5rem;padding:.65rem var(--mobile-gutter);background:#0b0b0b;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:5;margin:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.class-tab-split .class-tab-pane{display:none}.class-tab-split.class-tab-split--mobile-classes .class-tab-pane--classes,.class-tab-split.class-tab-split--mobile-subclasses .class-tab-pane--subclasses,.class-tab-split.class-tab-split--mobile-details .class-tab-pane--details{display:block}.class-tab-split .class-tab-pane--classes,.class-tab-split .class-tab-pane--subclasses,.class-tab-split .class-tab-pane--details{width:100%;min-width:100%;border-left:none}.entity-tab-mobile-bar{display:flex;gap:.5rem;padding:.65rem var(--mobile-gutter);background:#0b0b0b;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:5;margin:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.entity-tab-split .entity-tab-pane{display:none}.entity-tab-split.entity-tab-split--mobile-list .entity-tab-pane--list,.entity-tab-split.entity-tab-split--mobile-details .entity-tab-pane--details{display:block}.triple-tab-mobile-bar{display:flex;gap:.5rem;padding:.65rem var(--mobile-gutter);background:#0b0b0b;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:5;margin:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.equipment-tab--triple .equipment-tab-pane,.spells-tab--triple .spells-tab-pane{display:none}.equipment-tab--triple.equipment-tab--mobile-shop .equipment-tab-pane--shop{display:flex}.equipment-tab--triple.equipment-tab--mobile-details .equipment-tab-pane--details,.equipment-tab--triple.equipment-tab--mobile-inventory .equipment-tab-pane--inventory{display:block}.spells-tab--triple.spells-tab--mobile-catalog .spells-tab-pane--catalog{display:flex}.spells-tab--triple.spells-tab--mobile-details .spells-tab-pane--details,.spells-tab--triple.spells-tab--mobile-spellcasting .spells-tab-pane--spellcasting{display:block}.list-pane{width:100%;min-width:100%;height:auto;max-height:none;min-height:0;flex:1 1 auto;box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);border-right:1px solid var(--border-subtle);border-bottom-width:2px;border-bottom-color:var(--accent-blue);overflow-x:hidden;overflow-y:auto}.equipment-tab--triple .list-pane,.equipment-tab--triple .details-pane,.equipment-tab--triple .inventory-pane,.spells-tab--triple .list-pane,.spells-tab--triple .details-pane,.spells-tab--triple .spellcasting-pane{flex:1 1 auto;width:100%;max-width:100%}.equipment-tab--triple .list-pane,.spells-tab--triple .list-pane{max-height:none;border-bottom:none}.equipment-tab--triple .inventory-pane,.spells-tab--triple .spellcasting-pane{width:100%;min-width:100%;max-height:none;border-left:none;border-top:1px solid var(--border-subtle);padding:.5rem 1rem}.equipment-tab--triple .details-pane{border-right:none}.details-pane{width:100%;height:auto;flex:1 1 auto;min-height:0;box-sizing:border-box;padding:var(--mobile-panel-padding);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow-y:auto}.abilities-layout{width:100%;max-width:100%;gap:var(--mobile-frame-gap);box-sizing:border-box}.abilities-layout .abilities-col,.abilities-layout .abilities-col.method-col,.abilities-layout .abilities-col.bg-col,.abilities-layout .abilities-col.stats-col{flex:1 1 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;padding-top:0!important}.abilities-layout .stats-grid{margin:0;padding-bottom:0;gap:var(--mobile-frame-gap)}.abilities-layout .method-panel,.abilities-layout .bg-bonus,.abilities-layout .skills-list,.abilities-layout .details-pane{margin:0}.te-search,.te-filter-select,.te-filter-input,.header-menu__item.btn,.btn{min-height:var(--control-min-height-mobile)}.stats-grid{grid-template-columns:repeat(2,1fr);margin:0;padding-bottom:0}.centered-wizard{padding-top:0;padding-bottom:var(--mobile-gutter)}}@media(max-width:520px){:root{--mobile-gutter: .65rem;--mobile-panel-padding: .85rem;--mobile-frame-gap: 1.25rem;--control-min-height-mobile: 2.35rem;--menu-trigger-size: 2.35rem}.tab{font-size:.9rem}.header-menu__panel{min-width:12rem}}@media(max-width:500px){.header-menu__panel{min-width:11.5rem}}.table-grid-body{display:flex;flex-direction:column;justify-content:flex-start}.table-grid-body>.table-grid-header{position:sticky;top:0;z-index:3}.table-grid-body>.table-grid-row{flex:0 0 auto}.table-grid-body--item-catalog{--table-grid-columns: minmax(0, 1fr) minmax(5rem, max-content) minmax(4.25rem, max-content) minmax(3.5rem, max-content) max-content}@supports (grid-template-columns: subgrid){.table-grid-body--item-catalog{display:grid;align-content:start;grid-template-columns:minmax(6.5rem,1fr) minmax(3.75rem,max-content) minmax(3.75rem,max-content) minmax(3rem,max-content) max-content}.table-grid-body--item-catalog>.table-grid-header,.table-grid-body--item-catalog>.table-grid-row{grid-column:1 / -1;grid-template-columns:subgrid;grid-template-rows:1fr;align-items:center;box-sizing:border-box;overflow:hidden}.table-grid-body--item-catalog>.table-grid-header{min-height:2.75rem;max-height:2.75rem;padding:.5rem 1rem}.table-grid-body--item-catalog>.list-row.table-grid-row{min-height:2.5rem;max-height:2.5rem;padding:.6rem 1rem}.table-grid-body--item-catalog .table-grid-header-cell{white-space:nowrap}.table-grid-body--item-catalog .col-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-grid-body--item-catalog .col-type,.table-grid-body--item-catalog .col-rarity,.table-grid-body--item-catalog .col-src{white-space:nowrap}.table-grid-body--item-catalog .col-actions{width:max-content;max-width:100%;justify-self:center}}.table-grid-body--inventory-catalog{--table-grid-columns: 2rem minmax(0, 1fr) minmax(0, .85fr) minmax(0, .75fr) minmax(0, .55fr);width:100%;max-width:100%;min-width:0;box-sizing:border-box}@supports (grid-template-columns: subgrid){.table-grid-body--inventory-catalog{display:grid;align-content:start;grid-template-columns:2rem minmax(0,1fr) minmax(0,.85fr) minmax(0,.75fr) minmax(0,.55fr)}.table-grid-body--inventory-catalog>.table-grid-header,.table-grid-body--inventory-catalog>.table-grid-row{grid-column:1 / -1;grid-template-columns:subgrid;grid-template-rows:1fr;align-items:center;box-sizing:border-box;overflow:hidden}.table-grid-body--inventory-catalog>.table-grid-header{min-height:2.75rem;max-height:2.75rem;padding:.5rem 0}.table-grid-body--inventory-catalog>.list-row.table-grid-row{min-height:2.5rem;max-height:2.5rem;padding:.6rem 0}.table-grid-body--inventory-catalog .table-grid-header-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-grid-body--inventory-catalog .col-name,.table-grid-body--inventory-catalog .col-type,.table-grid-body--inventory-catalog .col-rarity,.table-grid-body--inventory-catalog .col-src{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-grid-body--inventory-catalog .col-transfer{justify-self:center}.table-grid-body--inventory-catalog .col-name.table-grid-header-cell--sortable{justify-content:flex-start}}.table-grid-body--spell-catalog{--table-grid-columns: minmax(0, 1fr) minmax(3rem, max-content) minmax(4.5rem, max-content) minmax(3.5rem, max-content) max-content}@supports (grid-template-columns: subgrid){.table-grid-body--spell-catalog{display:grid;align-content:start;grid-template-columns:minmax(6.5rem,1fr) minmax(2.5rem,max-content) minmax(3.75rem,max-content) minmax(3rem,max-content) max-content}.table-grid-body--spell-catalog>.table-grid-header,.table-grid-body--spell-catalog>.table-grid-row{grid-column:1 / -1;grid-template-columns:subgrid;grid-template-rows:1fr;align-items:center;box-sizing:border-box;overflow:hidden}.table-grid-body--spell-catalog>.table-grid-header{min-height:2.75rem;max-height:2.75rem;padding:.5rem 1rem}.table-grid-body--spell-catalog>.list-row.table-grid-row{min-height:2.5rem;max-height:2.5rem;padding:.6rem 1rem}.table-grid-body--spell-catalog .col-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-grid-body--spell-catalog .col-level,.table-grid-body--spell-catalog .col-school,.table-grid-body--spell-catalog .col-src,.table-grid-body--item-catalog .col-type,.table-grid-body--item-catalog .col-rarity,.table-grid-body--item-catalog .col-src{white-space:nowrap}.table-grid-body--spell-catalog .col-actions{width:max-content;max-width:100%;justify-self:center}}.equipment-inventory-table.table-grid-body--inventory-catalog .table-grid-header,.equipment-inventory-table.table-grid-body--inventory-catalog .table-grid-row{min-width:0;max-width:100%}.charview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000a6;display:flex;align-items:stretch;justify-content:center;padding:0}.charview-panel{width:min(100%,1100px);height:100dvh;background:var(--bg-card);display:flex;flex-direction:column;border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle)}.charview-header{padding:1rem 1rem .85rem;border-bottom:2px solid var(--accent-blue);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.charview-header h2{margin:0;color:#fff;font-size:1.25rem}.charview-content{flex:1 1 auto;min-height:0;overflow-y:auto;padding:1rem;display:grid;grid-template-columns:1fr;gap:.85rem}.charview-section--full{grid-column:1 / -1}.charview-section{background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.75rem .85rem}.charview-section h4{margin:0 0 .55rem;font-size:.8rem;color:#aaa;text-transform:uppercase;border-bottom:1px solid #333;padding-bottom:.3rem}.charview-section p{margin:0 0 .35rem;font-size:.9rem}.charview-section ul{margin:0;padding-left:1.1rem;font-size:.88rem}.charview-section li{margin-bottom:.3rem}.charview-options-group+.charview-options-group{margin-top:.85rem}.charview-options-group__title{margin:0 0 .35rem;font-size:.82rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.charview-meta{color:var(--text-muted);font-size:.78rem}.charview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.charview-snapshot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.charview-snapshot-card{border:1px solid #333;border-radius:var(--radius-sm);background:#0b0b0b;padding:.45rem .5rem;text-align:center}.charview-snapshot-label{display:block;font-size:.68rem;text-transform:uppercase;color:var(--text-muted)}.charview-snapshot-value{font-size:1.05rem;color:#fff}.charview-stat{border:1px solid #333;border-radius:var(--radius-sm);background:#0b0b0b;text-align:center;padding:.45rem}.charview-stat span{font-size:.72rem;font-weight:700;color:var(--accent-blue)}.charview-stat strong{display:block;font-size:1.2rem;color:#fff;margin-top:.25rem}.charview-stat-total{font-size:.84rem;color:var(--text-muted)}.charview-footer{border-top:1px solid var(--border-subtle);padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom,0px));background:#0d0d0d;display:flex;gap:.6rem}.charview-footer .btn{flex:1 1 auto;font-size:.95rem}@media(max-width:768px){.charview-panel{width:100%;border-left:none;border-right:none}.charview-content{padding:.75rem}.charview-stats,.charview-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.charview-footer{display:grid;grid-template-columns:1fr;gap:.55rem}}@media(min-width:1024px){.charview-content{grid-template-columns:repeat(2,minmax(0,1fr))}.charview-footer{display:flex;gap:.6rem}}.tt-anchor{cursor:help;text-decoration:underline dotted var(--text-muted);text-underline-offset:3px}.tt-link{cursor:help;text-decoration:underline dotted var(--accent-blue);text-underline-offset:3px;color:inherit}.tt-dice{font-family:monospace;color:var(--accent-blue);font-weight:600}[data-source-code]{cursor:help}.tt-popup{position:fixed;z-index:9999;width:360px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;background:var(--bg-popup);border:1px solid var(--border-popup);border-radius:var(--radius-md);box-shadow:0 6px 24px #000000a6;padding:0;pointer-events:none;animation:fade-in .1s ease}.tt-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.65rem .85rem .45rem;border-bottom:1px solid var(--border-popup)}.tt-name{font-weight:700;font-size:.95rem;color:#fff;text-transform:uppercase;letter-spacing:.04em}.tt-meta{font-size:.68rem;font-weight:600;color:#c9b78c;background:#c9b78c1f;border:1px solid rgba(201,183,140,.28);border-radius:3px;padding:.1rem .4rem;white-space:nowrap;flex-shrink:0}.tt-type-label{padding:.25rem .85rem 0;font-size:.7rem;font-variant:small-caps;letter-spacing:.07em;color:var(--text-muted)}.tt-body{padding:.35rem .85rem .75rem;font-size:.83rem;color:#c8c8c8;line-height:1.5}.tt-body p{margin:.25rem 0}.tt-body ul{margin:.25rem 0;padding-left:1.2rem}.tt-body li{margin-bottom:.2rem}.source-tt-popup{position:fixed;z-index:10000;max-width:min(320px,calc(100vw - 16px));background:#111;color:#ddd;border:1px solid #2f2f2f;border-radius:4px;box-shadow:0 6px 18px #00000073;padding:.35rem .55rem;font-size:.78rem;line-height:1.3;pointer-events:none;white-space:nowrap}.feats-layout{flex-wrap:nowrap;justify-content:space-between;align-items:stretch;text-align:left}.feats-layout .abilities-col{padding-top:1.25rem}.feats-layout .abilities-col.method-col,.feats-layout .abilities-col.bg-col,.feats-layout .abilities-col.stats-col{width:auto;min-width:0;max-width:none;flex:0 0 auto}.feats-layout .feats-list{max-height:70vh}.feats-layout .feats-list-header,.feats-layout .list-row,.feats-layout .row-name,.feats-layout .details-pane,.feats-layout .details-pane p,.feats-layout .details-pane ul,.feats-layout .details-pane li,.feats-layout .details-pane h2,.feats-layout .details-pane h3,.feats-layout .details-pane h4{text-align:left}.feats-layout .details-pane h2.feat-detail-title{border-bottom:none;padding-bottom:0}.feat-detail-head{margin-bottom:.9rem}.feat-detail-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--border-subtle);padding-bottom:.5rem;margin-bottom:.6rem}.feat-detail-title{margin:0;border:none;border-bottom:none;padding:0;color:#fff;font-size:1.35rem}.feat-detail-source{font-style:italic;color:var(--text-muted);font-size:.78rem;white-space:nowrap;flex-shrink:0}.feat-detail-meta{padding-top:0;margin-top:0;font-size:.85rem;line-height:1.45;color:#c8c8c8}.feat-detail-type{font-style:italic;color:var(--text-muted);margin-bottom:.35rem}.feat-detail-line{margin:.2rem 0}.feat-detail-line strong{color:#ddd;font-weight:700}.feat-detail-repeatable{margin-top:.85rem;font-size:.85rem;color:#c8c8c8}.feat-detail-repeatable strong{color:#ddd;font-weight:700}.feats-list-panel{padding:0}.feats-list-header{padding:.85rem 1rem .55rem;border-bottom:1px solid var(--border-subtle)}.feats-list-cols{display:grid;grid-template-columns:1fr 120px 55px;gap:.5rem;margin-top:.45rem;font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.feats-list{max-height:62vh;overflow:auto}.feats-list .list-row{padding:.55rem 1rem}.feat-slot{padding:.65rem .75rem;background:#ffffff08;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:.55rem}.feat-slot-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.feat-slot-source{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feat-cat-badge{font-size:.65rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.1rem .45rem;border-radius:3px;white-space:nowrap;flex-shrink:0}.feat-cat--origin{background:#337ab72e;color:#7ab4e0;border:1px solid rgba(51,122,183,.35)}.feat-cat--general{background:#c9b78c21;color:#c9b78c;border:1px solid rgba(201,183,140,.3)}.feat-cat--epic{background:#b464dc26;color:#c580e8;border:1px solid rgba(180,100,220,.35)}.feat-cat--fs{background:#1e8e3e26;color:#6dd68c;border:1px solid rgba(30,142,62,.3)}.feat-slot-granted{font-size:.92rem;font-weight:600;color:var(--accent-success);padding:.15rem .1rem;display:flex;align-items:center;gap:.4rem}.feat-slot-granted:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent-success);flex-shrink:0}.feat-select{font-size:.85rem;padding:.35rem .45rem;margin-top:0}.feat-slot-subchoice-label{margin-top:.5rem;margin-bottom:.25rem;font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.feat-subchoice-select{margin-top:0}@media(max-width:980px){.feats-layout{flex-wrap:wrap;gap:1.25rem}.feats-layout .abilities-col{flex:1 1 420px;min-width:280px;max-width:none}.feats-layout .details-pane{padding:1.1rem 1rem}}@media(max-width:520px){.feats-layout .feats-list-cols{grid-template-columns:1fr 92px 48px}.feat-detail-title{font-size:1.15rem}.feat-slot-source{max-width:65%}}.options-layout{flex-wrap:nowrap;justify-content:space-between;align-items:stretch;text-align:left}.options-layout .options-picks-panel,.options-layout .options-catalog-panel,.options-layout .options-detail-pane{text-align:left}.options-layout .options-catalog-list{max-height:70vh}.options-layout .options-catalog-list .list-row{padding:.55rem 1rem}.options-group-tabs{display:flex;flex-wrap:wrap;gap:.35rem;padding:.65rem 1rem 0}.options-group-tab{border:1px solid var(--border-subtle);background:var(--surface-raised, rgba(255, 255, 255, .04));color:var(--text-muted);border-radius:999px;padding:.2rem .65rem;font-size:.78rem;cursor:pointer}.options-group-tab.active{color:#fff;border-color:var(--accent, #c9a227);background:#c9a2271f}.options-catalog-search{padding:.5rem 1rem 0}.options-search-input{width:100%;box-sizing:border-box;padding:.45rem .65rem;border-radius:4px;border:1px solid var(--border-subtle);background:var(--input-bg, rgba(0, 0, 0, .25));color:inherit}.options-catalog-panel{padding:0}.options-catalog-header{padding:.85rem 1rem .55rem;border-bottom:1px solid var(--border-subtle)}.options-catalog-header h3{margin:0;color:#fff;font-size:1.1rem}.options-catalog-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) 68px;gap:.5rem;margin-top:.45rem;font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.options-catalog-cols>span:first-child{text-align:left}.options-catalog-cols>span:nth-child(2){text-align:left}.options-catalog-cols>span:last-child{text-align:right}.options-catalog-row{--table-grid-columns: minmax(0, 1fr) minmax(0, 1.15fr) 68px;column-gap:.5rem;align-items:center}.options-catalog-row>.col-name{font-weight:600;text-align:left}.options-catalog-row>.col-category{text-align:left;font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.options-catalog-row>.col-src{text-align:right;font-size:.78rem;color:var(--text-muted)}.options-catalog-row__empty{color:var(--text-muted);opacity:.45}.options-pick-row{padding:.55rem .65rem;border-radius:4px;border:1px solid transparent;cursor:pointer;margin-bottom:.35rem;text-align:left}.options-pick-row:hover{background:#ffffff0a}.options-pick-row.active{border-color:var(--accent, #c9a227);background:#c9a22714}.options-pick-row__label{font-size:.78rem;color:var(--text-muted);margin-bottom:.35rem;line-height:1.25;text-align:left}.options-pick-select{width:100%}.options-empty-hint{color:var(--text-muted);font-size:.85rem;font-style:italic;padding:.5rem 0;line-height:1.4;text-align:left}.options-catalog-empty{padding:.75rem 1rem}.options-detail-pane{width:100%;padding:1.25rem 1.5rem;text-align:left}.options-detail-body,.options-detail-body p,.options-detail-body ul,.options-detail-body li{text-align:left}.options-detail-empty{text-align:center;margin-top:3rem}.options-catalog-row.previewing,.options-catalog-row.selected{background:#c9a2271a}.skills-info-section+.skills-info-section{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--border-subtle)}.skills-info-title{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.skills-info-row{display:flex;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.88rem}.skills-info-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.skills-info-dot.locked{background:var(--accent-success)}.skills-info-name{color:#fff;font-weight:600;flex:0 0 auto}.skills-info-source{color:var(--text-muted);font-size:.75rem;margin-left:auto;text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skills-info-pool{padding:.55rem .65rem;background:#ffffff08;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:.5rem}.skills-info-pool-head{font-size:.85rem;color:#fff}.skills-info-pool-head strong{color:var(--accent-blue);font-size:1rem;margin-right:.15rem}.skills-info-pool-body{margin-top:.25rem;font-size:.78rem;color:var(--text-muted);line-height:1.4}.skills-info-remaining{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-subtle);font-size:.88rem;color:var(--text-muted)}.skills-info-remaining strong{font-size:1.05rem;margin-right:.15rem}.skills-list{display:flex;flex-direction:column;box-sizing:border-box}.skill-row{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-main);transition:background var(--transition),opacity var(--transition);border-left:3px solid transparent}.skill-row+.skill-row{margin-top:.15rem}.skill-row:hover:not(.disabled):not(.locked){background:var(--bg-row-hover)}.skill-row input[type=checkbox]{accent-color:var(--accent-blue);width:16px;height:16px;margin:0;cursor:pointer}.skill-row.locked{border-left-color:var(--accent-success);cursor:default}.skill-row.locked input[type=checkbox]{accent-color:var(--accent-success);cursor:default}.skill-row.checked:not(.locked){border-left-color:var(--accent-blue);background:#337ab714}.skill-row.disabled{opacity:.35;cursor:not-allowed}.skill-row.disabled input[type=checkbox]{cursor:not-allowed}.skill-ability{flex:0 0 34px;font-size:.72rem;font-weight:700;color:var(--text-muted);letter-spacing:.05em;text-align:center;background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:3px;padding:.1rem 0}.skill-row.locked .skill-ability,.skill-row.checked .skill-ability{color:#fff}.skill-name{flex:1 1 auto;font-weight:500;text-align:left}.skill-row.locked .skill-name,.skill-row.checked .skill-name{color:#fff}.skill-badge{font-size:.68rem;padding:.12rem .5rem;border-radius:3px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;max-width:50%;overflow:hidden;text-overflow:ellipsis}.skill-badge--locked{background:#1e8e3e2e;color:var(--accent-success);border:1px solid rgba(30,142,62,.35)}.expertise-count{color:var(--accent-blue);font-size:.8rem}.expertise-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.4rem}.expertise-label{flex:0 0 18px;font-size:.75rem;color:var(--text-muted);font-weight:700;text-align:right}.expertise-select{font-size:.85rem;padding:.35rem .45rem;flex:1 1 auto}.proficiencies-layout .proficiencies-col{min-width:0}.proficiencies-sections{display:flex;flex-direction:column;gap:1.25rem}.proficiencies-section h3{margin:0 0 .5rem}.proficiency-pool-mixed{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-blue);margin-left:.35rem}.proficiency-list-head{display:flex;align-items:center;gap:.6rem;padding:.25rem .6rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.proficiency-head-spacer{flex:0 0 16px}.proficiency-head-ability{flex:0 0 34px;text-align:center}.proficiency-head-name{flex:1 1 auto}.proficiency-head-mod{flex:0 0 42px;text-align:right}.skill-modifier{flex:0 0 42px;text-align:right;font-size:.85rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.skill-modifier.proficient{color:var(--accent-blue)}.skill-modifier.expertise{color:var(--accent-success)}.skill-row.expertise .skill-name{font-weight:600}.proficiencies-section--readonly{opacity:.95}.combat-prof-group+.combat-prof-group{margin-top:.75rem}.combat-prof-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.35rem}.combat-prof-badges{display:flex;flex-wrap:wrap;gap:.35rem}.combat-prof-badge{font-size:.78rem;padding:.2rem .55rem;border-radius:3px;background:#ffffff0d;border:1px solid var(--border-subtle);color:var(--text-main)}.equipment-inventory-panel{padding:0 0 .25rem;background:transparent;border:none;border-radius:0;margin:0;display:flex;flex-direction:column;min-height:0;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}.equipment-inventory-panel>.te-toolbar{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding-left:0;padding-right:0}.equipment-inventory-panel .currency-coin-editor,.equipment-inventory-panel .currency-coin-editor__grid{min-width:0;max-width:100%}.equipment-inventory-table{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.equipment-inventory-table.table-grid-body--inventory-catalog>.table-grid-header,.equipment-inventory-table.table-grid-body--inventory-catalog>.list-row.table-grid-row{box-sizing:border-box}.equipment-inventory-table .equipment-list-header,.equipment-inventory-table .equipment-list-row{box-sizing:border-box}.equipment-inventory-panel__title{margin:0 0 .5rem;padding:.25rem 0 0;font-size:.95rem;color:#fff}.equipment-inventory-panel__class-bar{margin-bottom:.5rem}.equipment-inventory-panel__coins{margin:0 0 .65rem;font-size:.85rem;color:var(--text-muted)}.currency-coin-editor{margin-bottom:.75rem;padding-bottom:.65rem;border-bottom:1px solid #1a1a1a}.currency-coin-editor__title{font-size:.85rem;font-weight:600;color:#ddd;margin-bottom:.5rem}.currency-coin-editor__grid{display:flex;flex-wrap:wrap;gap:.35rem .5rem}.currency-coin-editor__row{display:flex;flex-direction:row;align-items:center;gap:.3rem}.currency-coin-editor__label{font-size:.68rem;font-weight:700;color:var(--text-muted);letter-spacing:.04em;min-width:1.35rem;text-align:right}.currency-coin-editor__row .num-stepper{width:auto;max-width:none}.equipment-inventory-panel__empty{font-size:.85rem;color:var(--text-muted);font-style:italic;padding:.75rem 0}.equipment-row-actions{display:flex;align-items:center;justify-content:center}.equipment-transfer-btn{flex-shrink:0;width:1.65rem;height:1.65rem;border-radius:50%;border:1px solid var(--border-subtle);background:#1c1c1c;color:#ddd;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition)}.equipment-transfer-btn:hover:not(:disabled){background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.equipment-transfer-btn:disabled{opacity:.35;cursor:not-allowed}.equipment-transfer-btn__icon{font-size:.85rem;line-height:1}.btn-sm{padding:.15rem .45rem;font-size:.75rem}.class-starting-equipment__options{display:flex;flex-direction:column;gap:.5rem}.class-starting-equipment__options--inline{flex-direction:row;flex-wrap:wrap}.class-starting-equipment__option{display:flex;align-items:flex-start;gap:.5rem;padding:.55rem .65rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;background:#ffffff05}.class-starting-equipment__option.selected{border-color:var(--accent-blue);background:#337ab71f}.class-starting-equipment__option--compact{padding:.35rem .55rem}.class-starting-equipment__desc{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.class-starting-equipment-desc__line{font-size:.85rem;color:var(--text-muted);margin:0 0 .65rem;line-height:1.55}.class-starting-equipment__inline-choices{font-size:.85rem;color:var(--text-muted);line-height:1.55;margin:0 0 .75rem}.class-starting-equipment__preamble{margin-right:.15rem}.class-starting-equipment__letter-radio{display:inline-flex;align-items:baseline;margin:0 .1rem 0 0;padding:0 .15rem;border-radius:3px;cursor:pointer;vertical-align:baseline;border:1px solid transparent}.class-starting-equipment__letter-radio.selected{border-color:var(--accent-blue);background:#337ab726}.class-starting-equipment__letter-radio-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.class-starting-equipment__letter-radio-label{font-weight:600;color:#ddd;-webkit-user-select:none;user-select:none}.class-starting-equipment__letter-radio.selected .class-starting-equipment__letter-radio-label{color:var(--accent-blue)}.class-starting-equipment__segment-body{display:inline}.class-starting-equipment__segment-sep{margin-right:.15rem}.class-starting-equipment__group+.class-starting-equipment__group{margin-top:.65rem}.equipment-class-start-bar{margin:.5rem .75rem 0}.class-starting-equipment-modal-box{max-width:42rem;width:calc(100% - 2rem);max-height:85vh;overflow-y:auto}.class-starting-equipment-modal-lead{font-size:.85rem;color:var(--text-muted);margin:0 0 1rem}.class-starting-equipment-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.spells-tab--triple{flex:1 1 auto;min-width:0}.spells-tab--triple .list-pane{flex:4 1 0;width:auto;max-width:none;min-width:0;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;min-height:0;overflow:hidden}.spells-tab--triple .details-pane{flex:2 1 0;width:auto;max-width:none;min-width:0;border-right:1px solid var(--border-subtle);padding:1.25rem 1rem}.spells-tab--triple .spellcasting-pane{flex:4 1 0;width:auto;max-width:none;min-width:0;overflow-x:hidden;overflow-y:auto;background-color:var(--bg-base);padding:.5rem 1rem .5rem .75rem;box-sizing:border-box}.spells-tab__catalog-table{flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto}.spells-empty{padding:.75rem 0;color:var(--text-muted);font-style:italic;font-size:.85rem}.spellcasting-panel{display:flex;flex-direction:column;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}.spellcasting-panel__title{margin:0 0 .65rem;font-size:.95rem;color:#fff}.spellcasting-panel__empty{font-size:.85rem;color:var(--text-muted);font-style:italic}.spellcasting-panel__source{margin-top:.65rem;min-width:0}.spell-source-tabs{display:flex;flex-wrap:wrap;gap:.3rem;margin:.65rem 0 .5rem}.spell-source-tabs__tab{padding:.28rem .55rem;font-size:.72rem;border:1px solid #2a2a2a;border-radius:var(--radius-sm);background:#141414;color:#bbb;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spell-source-tabs__tab:hover{background:#1c1c1c;color:#eee}.spell-source-tabs__tab--active{border-color:var(--accent-blue);color:#fff;background:#1a2533}.spell-source-list{min-width:0}.spell-source-list__empty{font-size:.78rem;color:var(--text-muted);font-style:italic;margin:.5rem 0}.spell-source-list__section{margin-bottom:.65rem}.spell-source-list__level{margin:0 0 .3rem;font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.spell-source-list__table{display:flex;flex-direction:column;gap:.15rem}.spell-source-list__row{display:grid;grid-template-columns:2rem 1.35rem 1fr auto;align-items:center;gap:.25rem;padding:.22rem .3rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.78rem;min-width:0}.spell-source-list__row:hover,.spell-source-list__row.previewing{background:var(--bg-row-hover)}.spell-source-list__transfer--spacer,.spell-source-list__check--spacer{visibility:hidden}.spell-source-list__check input{margin:0;cursor:pointer}.spell-source-list__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ddd}.spell-source-list__meta{flex-shrink:0;font-size:.7rem;color:var(--text-muted)}.spellcasting-panel__class{margin-top:.85rem;padding-top:.75rem;border-top:1px solid #1a1a1a}.spellcasting-panel__class-title{margin:0 0 .25rem;font-size:.88rem;color:#eee}.spellcasting-panel__class-meta{margin:0 0 .45rem;font-size:.78rem;color:var(--text-muted)}.spellcasting-panel__stats{display:flex;flex-wrap:wrap;gap:.45rem .75rem;margin-bottom:.5rem;font-size:.78rem;color:#ccc}.spellcasting-panel__stats strong{color:var(--text-muted);font-weight:600;margin-right:.2rem}.spellcasting-panel__pact{margin-bottom:.45rem;font-size:.78rem;color:#bbb}.spellcasting-panel__available-title{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}.spellcasting-panel__available-hint{font-weight:400;text-transform:none;color:#666}.spellcasting-panel__spell-list{list-style:none;margin:0;padding:0;max-height:12rem;overflow-y:auto}.spellcasting-panel__spell-item{display:flex;justify-content:space-between;gap:.35rem;padding:.28rem .35rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.78rem}.spellcasting-panel__spell-item:hover,.spellcasting-panel__spell-item.previewing{background:var(--bg-row-hover)}.spellcasting-panel__spell-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ddd}.spellcasting-panel__spell-meta{flex-shrink:0;color:var(--text-muted);font-size:.72rem}.spellcasting-panel__more{margin:.35rem 0 0;font-size:.72rem;color:var(--text-muted);font-style:italic}.spell-slots-bar{padding:.55rem .65rem;background:#0f0f0f;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.spell-slots-bar__header{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.45rem}.spell-slots-bar__title{font-size:.78rem;font-weight:700;text-transform:uppercase;color:#ddd}.spell-slots-bar__level{font-size:.72rem;color:var(--text-muted)}.spell-slots-bar__grid{display:flex;flex-wrap:wrap;gap:.35rem}.spell-slots-bar__cell{display:flex;flex-direction:column;align-items:center;min-width:2.1rem;padding:.2rem .35rem;background:#1a1a1a;border-radius:var(--radius-sm);border:1px solid #2a2a2a}.spell-slots-bar__cell-level{font-size:.62rem;color:var(--text-muted);text-transform:uppercase}.spell-slots-bar__cell-count{font-size:.95rem;font-weight:700;color:#fff;line-height:1.1}.spell-slots-bar__empty{margin:0;font-size:.78rem;color:var(--text-muted);font-style:italic}.spell-slots-bar__pact{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-top:.45rem;padding-top:.4rem;border-top:1px solid #242424}.spell-slots-bar__pact-item{font-size:.72rem;color:#bbb}.spellcasting-panel>.te-toolbar{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding-left:0;padding-right:0}
