.modal-backdrop{position:fixed;inset:0;z-index:var(--z-overlay);background:#00000073;border:0;padding:0;cursor:pointer}.modal-panel{position:fixed;z-index:var(--z-modal)}.modal-panel--centered{inset:0;margin:auto;height:fit-content;background:var(--bg-tertiary);border:1px solid var(--border-emphasis);border-radius:8px}.modal-panel--drawer-right{top:0;bottom:0;right:0;width:clamp(560px,55vw,900px);background:var(--bg);border-left:1px solid var(--border-emphasis);display:flex;flex-direction:column}@media(max-width:899px){.modal-panel--drawer-right{inset:0;width:auto;border-left:none}.modal-backdrop--drawer-right{display:none}}.confirm-modal{padding:var(--space-5) var(--space-6);max-width:400px;width:90%}.confirm-modal-title{color:var(--text);font-size:var(--text-base);font-weight:600;letter-spacing:.02em;margin-bottom:var(--space-2)}.confirm-modal-message{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5;margin-bottom:var(--space-4);white-space:pre-line}.confirm-modal-input{margin-bottom:var(--space-4)}.confirm-modal-input label{display:block;color:var(--text-muted);font-size:var(--text-xs);margin-bottom:var(--space-1-5)}.confirm-modal-input strong{color:var(--text)}.confirm-modal-input input{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-1-5) var(--space-2);font-size:var(--text-sm);box-sizing:border-box}.confirm-modal-input input:focus{outline:none;border-color:var(--accent)}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.confirm-modal-actions .btn-ghost{padding:var(--space-1-5) var(--space-3);font-size:var(--text-xs)}.confirm-modal-actions .btn-primary{padding:var(--space-1-5) var(--space-4);font-size:var(--text-xs)}.editable-text{display:inline-flex;align-items:center;cursor:text}.editable-text-display{border-bottom:1px dotted var(--border);padding:0 var(--space-0-5);min-width:3rem}.editable-text:hover .editable-text-display{border-color:var(--accent)}.editable-text-placeholder{color:var(--text-muted);font-style:italic}.editable-text-input{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-0-5) var(--space-1-5);font-size:inherit;font-family:inherit;min-width:5rem;max-width:14rem}.editable-text-input:focus{outline:none;border-color:var(--accent)}.wiki-link-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);text-decoration:none;border-radius:var(--radius-sm);padding:0 var(--space-0-5);transition:color var(--transition-fast)}.wiki-link-icon:hover,.wiki-link-icon:focus-visible{color:var(--accent);outline:none}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:100%;padding:var(--space-8);background:var(--bg);color:var(--text);text-align:center}.error-screen h1{color:var(--text-danger)}.error-screen--info h1{color:var(--text)}.error-screen-detail{font-family:monospace;font-size:var(--text-sm);color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);max-width:500px;word-break:break-word;text-align:left;-webkit-user-select:all;user-select:all}.error-screen-hint{font-size:var(--text-xs);color:var(--text-muted);max-width:400px}.error-screen-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-2)}.error-screen-report{font-size:var(--text-xs);color:var(--text-muted)}.error-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-2-5);background:var(--bg-danger);border:1px solid var(--border-danger);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-secondary);min-height:var(--space-7);box-sizing:border-box}.error-card-msg{font-family:monospace;font-size:var(--text-xs);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-card-report{flex-shrink:0;font-size:var(--text-xs);color:var(--text-muted)}.api-gate-skeleton{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;max-width:32rem}.api-gate-bar{height:1rem;border-radius:.5rem;background:var(--tint);animation:api-gate-pulse 1.2s ease-in-out infinite}.api-gate-bar.api-gate-bar--short{width:60%}@keyframes api-gate-pulse{0%,to{opacity:.5}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.api-gate-bar{animation:none}}.side-panel{background:var(--bg-secondary);border-left:1px solid var(--border-emphasis);display:flex;flex-direction:column;min-height:0;overflow:hidden;z-index:var(--z-panel)}.side-panel-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.side-panel-tab{flex:1;padding:var(--space-2-5) 0;background:none;border:none;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-std),border-color var(--transition-std)}.side-panel-tab:hover{color:var(--text)}.side-panel-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.side-panel-content{flex:1;overflow-y:auto;padding:var(--space-3)}.ability-scores-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);margin-bottom:var(--space-3)}.ability-score-row{display:flex;justify-content:space-between;padding:var(--space-1) var(--space-1-5)}.ability-score-row .label{color:var(--text);font-size:var(--text-xs)}.ability-score-row .value{color:var(--text-secondary);font-weight:600;font-size:var(--text-xs)}.stats-separator{border:none;border-top:1px solid var(--border);margin:var(--space-2) 0}.stat-row{display:flex;justify-content:space-between;padding:var(--space-1) var(--space-1-5);font-size:var(--text-xs)}.stat-row .label{color:var(--text)}.stat-row .value{color:var(--text-secondary);font-weight:600}.feat-entry{padding:var(--space-1) var(--space-1-5);font-size:var(--text-xs);color:var(--text)}.character-view{padding:var(--space-4) var(--space-6)}.character-list{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.character-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1-5) var(--space-2-5);border:1px solid transparent;font-size:var(--text-sm);-webkit-user-select:none;user-select:none}.character-row.active{background:var(--bg-accent);border-color:var(--border-emphasis)}.character-row .character-marker{color:var(--accent);font-weight:700;width:1rem;text-align:center}.character-row .character-name{color:var(--text);font-weight:600;min-width:7rem}.character-row .character-server{color:var(--text-muted);min-width:5.5rem}.character-row .character-class-summary{color:var(--text-secondary);flex:1}.character-row .character-life-count{color:var(--text-muted);font-size:var(--text-xs)}.character-row-actions{display:flex;gap:var(--space-1);align-self:stretch;align-items:stretch;margin:calc(-1 * var(--space-1-5)) calc(-1 * var(--space-2-5));margin-left:0;padding-right:var(--space-2-5)}.row-action-btn{background:transparent;border:none;color:var(--text-secondary);border-radius:var(--radius-sm);padding:var(--space-0-5) var(--space-1-5);font-size:var(--text-xs);font-weight:500;cursor:pointer}.row-action-btn:hover{color:var(--text-secondary);background:var(--bg-accent)}.row-action-btn.btn-primary-sm{background:var(--accent);color:var(--bg);font-weight:600}.row-action-btn.btn-primary-sm:hover{background:color-mix(in oklch,var(--accent) 70%,white)}.row-action-btn.delete:hover{color:var(--danger);background:var(--bg-danger)}.character-list-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.character-list-actions .btn-ghost{background:var(--bg-accent)}.character-list-actions .import-ddo-btn{border-style:dashed}.past-lives-divider{border:none;border-top:2px solid var(--border-emphasis);margin:var(--space-2) 0 var(--space-4)}.past-lives-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.past-lives-header h2{color:var(--text);font-size:var(--text-base);font-weight:600;letter-spacing:.02em}.past-lives-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.stack-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1-5);font-size:var(--text-xs);-webkit-user-select:none;user-select:none}.stack-row.empty .stack-name{color:var(--text-muted)}.stack-name{color:var(--text);width:12rem;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-bar{display:flex;gap:var(--space-0-5)}.stack-pip{width:1rem;height:1rem;border-radius:var(--radius-sm);background:var(--bg-subtle);position:relative}.stack-pip.filled{background:var(--accent)}.stack-pip.current-has:not(.locked):not(.filled){background:repeating-linear-gradient(-45deg,var(--bg-accent-muted),var(--bg-accent-muted) 3px,transparent 3px,transparent 6px)}.stack-pip.current-has-filled:not(.filled){background:var(--bg-accent-muted)}.stack-pip.locked{background:repeating-linear-gradient(-45deg,var(--accent),var(--accent) 3px,transparent 3px,transparent 6px)}.stack-pip.pip-has-locked{background:repeating-linear-gradient(-45deg,var(--bg-accent-muted),var(--bg-accent-muted) 3px,transparent 3px,transparent 6px)}.stack-pip.pip-has-filled{background:var(--bg-accent-muted)}.stack-pip.pip-missing{border:2px solid var(--border-danger)}.stack-bar>span:not(.stack-pip){display:inline-flex}.stack-count{color:var(--text-muted);font-size:var(--text-xs);min-width:1.5rem;text-align:center}.stack-bonus{color:var(--text-secondary);font-size:var(--text-xs)}.bonus-earned{color:var(--text-secondary)}.bonus-remaining{color:var(--text-muted);margin-left:var(--space-1-5)}.stacks-hint{display:none;color:var(--text-muted);font-size:var(--text-xs);padding:var(--space-1) var(--space-1-5);opacity:.7}@media(max-width:768px){.stacks-hint{display:block}}.total-past-lives{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-2);padding:var(--space-0-5) var(--space-1-5)}.bonus-summary{margin-top:var(--space-1);border-top:1px solid var(--border);padding-top:var(--space-1)}.bonus-summary-header{display:flex;align-items:center;gap:var(--space-1-5);cursor:pointer;-webkit-user-select:none;user-select:none}.bonus-toggle{color:var(--text-muted);font-size:var(--text-xs)}.bonus-rows{display:grid;grid-template-rows:0fr}.bonus-rows-inner{overflow:hidden}.bonus-rows.expanded{grid-template-rows:1fr}.bonus-row{padding:var(--space-0-5) var(--space-1-5);font-size:var(--text-xs)}.bonus-value{color:var(--text-secondary)}.life-history-title{color:var(--text);font-size:var(--text-base);font-weight:600;letter-spacing:.02em;margin-bottom:var(--space-2)}.life-entry{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1-5);font-size:var(--text-xs)}.life-entry .life-marker{color:var(--accent);font-weight:700;width:.75rem}.life-entry .life-number{color:var(--text-muted);font-size:var(--text-xs);font-weight:600;white-space:nowrap;min-width:3rem}.life-entry .life-name{color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem}.life-entry .life-summary{color:var(--text);flex:1;min-width:0}.life-actions{display:flex;gap:var(--space-0-5);flex-shrink:0;align-self:stretch;align-items:stretch;margin:calc(-1 * var(--space-1)) calc(-1 * var(--space-1-5));margin-left:0;padding-right:var(--space-1-5)}.life-entry.viewing{background:var(--bg-accent)}.reincarnate-panel{background:var(--bg-accent);border:1px solid var(--border-emphasis);border-radius:var(--radius-lg);padding:var(--space-3);margin:var(--space-1-5) 0 var(--space-2) var(--space-5)}.reincarnate-panel-header{color:var(--text);font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-2-5)}.reincarnate-panel-field{margin-bottom:var(--space-2)}.reincarnate-panel-field label{display:block;color:var(--text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.reincarnate-type-options{display:flex;gap:var(--space-1)}.reincarnate-type-btn{background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2-5);font-size:var(--text-xs);font-weight:500;cursor:pointer}.reincarnate-type-btn:hover{color:var(--text);border-color:var(--text-muted)}.reincarnate-type-btn.active{color:var(--accent);border-color:var(--accent);background:var(--bg-tertiary)}.epic-feat-select{display:flex;flex-direction:column;gap:var(--space-1-5)}.epic-feat-group-label{color:var(--text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.epic-feat-group .reincarnate-type-options{flex-wrap:wrap}.reincarnate-panel-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2-5)}.add-planned-life-btn{display:flex;align-items:center;gap:var(--space-1-5);width:100%;background:none;border:1px dashed var(--border);color:var(--text-muted);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2-5);font-size:var(--text-xs);cursor:pointer;margin-bottom:var(--space-1-5)}.add-planned-life-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-subtle)}@media(max-width:768px){.character-view{padding:var(--space-3) var(--space-4)}.character-row{flex-wrap:wrap;gap:var(--space-1) var(--space-2)}.character-row .character-marker{width:auto}.character-row .character-name,.character-row .character-server{min-width:auto}.character-row .character-class-summary{flex-basis:100%;order:10;padding-left:var(--space-7)}.past-lives-content{grid-template-columns:1fr;gap:0}.past-lives-content>*:nth-child(2){border-top:1px solid var(--border);margin-top:var(--space-4);padding-top:var(--space-4)}.past-lives-divider{margin:var(--space-4) 0 var(--space-5)}.stack-row .stack-bonus{display:none}.character-list-actions{flex-wrap:wrap}}.nav-bar-character-card{--card-h: 184px;--strip-h: 40px;position:relative;display:flex;flex-direction:column;height:var(--card-h);flex-shrink:0;margin:var(--space-1-5) var(--space-1-5);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;overflow:hidden;transition:background var(--transition-fast)}.nav-bar-character-card:hover:not(.active){background:var(--bg-subtle)}.nav-bar-character-card.active{cursor:default}.nav-bar-character-strip{display:grid;grid-template-columns:calc(var(--icon-col) - .8rem) 1fr;align-items:center;height:var(--strip-h);flex-shrink:0}.nav-bar-character-strip>svg{justify-self:center}.nav-bar-character-strip-name{font-size:var(--text-xs);font-weight:700;color:var(--text);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:var(--space-2)}.nav-bar-divider--swap{position:relative;overflow:visible}.nav-bar-character-swap-btn{position:absolute;top:50%;left:calc((var(--icon-col) - .8rem - 24px) / 2);transform:translateY(-50%);z-index:var(--z-local);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.nav-bar-character-swap-btn:hover{color:var(--accent);border-color:var(--accent)}.nav-bar-character-slot{flex:1;display:grid;grid-template-columns:calc(var(--icon-col) - .8rem) 1fr;align-items:center;min-height:0}.nav-bar-character-slot>svg{justify-self:center}.nav-bar-character-info{display:flex;flex-direction:column;min-width:0;padding-right:var(--space-2)}.nav-bar-character-name{font-size:var(--text-sm);font-weight:600;color:var(--text);margin-bottom:var(--space-0-5);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-bar-character-card.active{border-color:var(--accent)}.nav-bar-character-card.active:before{z-index:var(--z-local)}.nav-bar-character-card.active .nav-bar-character-strip,.nav-bar-character-card.active .nav-bar-character-strip-name{color:var(--accent)}.nav-bar-character-card.active .nav-bar-divider:not(.nav-bar-divider--swap){background:var(--accent)}.nav-bar-character-build-placeholder{height:.65rem;margin:var(--space-px) 0;border-bottom:1px dashed var(--text-muted);max-width:70%}.nav-bar-character-build-placeholder:last-child{max-width:55%}.nav-bar-character-build{font-size:var(--text-xs);color:var(--text-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav-bar{--icon-col: 54px;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:stretch;padding:var(--space-2) 0 0 0;z-index:var(--z-nav);min-height:0;overflow:hidden}.app-nav-bar:not(.expanded) .nav-bar-collapsible{opacity:0;max-width:0;max-height:0;padding:0;margin:0;overflow:hidden}.app-nav-bar:not(.expanded) .nav-bar-group-label-text{opacity:0;max-width:0;padding:0;overflow:hidden}.app-nav-bar:not(.expanded) .nav-bar-group-label:before{opacity:0;max-width:0}.nav-bar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.nav-bar-brand{display:grid;grid-template-columns:var(--icon-col) 1fr;align-items:center;width:100%;min-height:48px;flex-shrink:0;text-decoration:none;color:inherit;position:relative}.nav-bar-brand-mark{justify-self:center;color:var(--accent)}.nav-bar-brand-text{font-family:var(--font-site-title);font-size:var(--text-lg);font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.15;color:var(--accent)}.nav-bar-divider{height:1px;background:var(--border);flex-shrink:0}.nav-bar-items{display:flex;flex-direction:column;gap:var(--space-0-5);width:100%}.nav-bar-btn,.nav-bar-build-row,.nav-bar-collapse-btn{width:100%;height:40px;min-height:40px;display:grid;grid-template-columns:var(--icon-col) 1fr;align-items:center;background:transparent;cursor:pointer;font-family:var(--font-nav);font-size:var(--text-lg);transition:color var(--transition-fast),background var(--transition-fast)}:is(.nav-bar-btn,.nav-bar-build-row,.nav-bar-collapse-btn)>svg{justify-self:center}.nav-bar-btn,.nav-bar-build-row{color:var(--text-secondary);position:relative;white-space:nowrap}.nav-bar-btn.active,.nav-bar-build-row.active,.nav-bar-character-card.active,.nav-bar-brand.active{color:var(--accent);background:var(--bg-accent);cursor:default}:is(.nav-bar-btn.active,.nav-bar-build-row.active,.nav-bar-character-card.active,.nav-bar-brand.active):hover{background:var(--bg-accent);color:var(--accent)}:is(.nav-bar-btn.active,.nav-bar-build-row.active,.nav-bar-character-card.active,.nav-bar-brand.active):before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}.nav-bar-btn.active .nav-bar-label,.nav-bar-build-row.active .nav-bar-label{font-weight:600}.nav-bar-btn{border:none;border-radius:0}.nav-bar-btn--compact>svg{opacity:.6}.nav-bar-btn--compact .nav-bar-label{font-size:var(--text-xs);color:var(--text-muted)}.nav-bar-btn--compact:hover>svg,.nav-bar-btn--compact.active>svg{opacity:1}.nav-bar-btn--compact:hover .nav-bar-label{color:var(--text)}.nav-bar-btn--compact.active .nav-bar-label{color:var(--accent);font-weight:600}.nav-bar-label{font-size:var(--text-sm);font-weight:500;text-align:left;overflow:hidden;text-overflow:ellipsis}.nav-bar-group{width:100%}.nav-bar-group-label{display:flex;align-items:center;height:28px;padding:0;color:var(--text-muted)}.nav-bar-group-label:before{content:"";width:calc(var(--icon-col) - .5rem);height:1px;background:var(--border);flex-shrink:0}.nav-bar-group-label:after{content:"";flex:1;height:1px;background:var(--border)}.nav-bar-group-label.has-active{color:var(--accent)}.nav-bar-group-label-text{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;padding:0 var(--space-2)}.nav-bar-bottom{margin-top:auto;flex-shrink:0;width:100%}.nav-bar-collapse-btn{flex-shrink:0;border:none;border-top:1px solid var(--border);color:var(--text-muted)}@media(max-width:599px){.app-nav-bar.expanded{position:fixed;inset:0;z-index:var(--z-overlay)}}.bottom-bar{flex-shrink:0;border-top:1px solid var(--border);background:var(--bg-secondary)}.bottom-bar-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-0-5) var(--space-2);gap:var(--space-4)}.bottom-bar-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.bottom-bar-report{color:var(--text-muted)}.bottom-bar-report:hover{color:var(--text-secondary)}.bottom-bar-btn{display:flex;align-items:center;gap:var(--space-1-5);background:none;border:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap}.bottom-bar-build{display:flex;align-items:baseline;gap:var(--space-2);min-width:0;font-size:var(--text-xs)}.bottom-bar-name{font-weight:700;color:var(--text);flex-shrink:0}.bottom-bar-description{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bottom-bar-warnings{color:var(--danger);font-weight:600;flex-shrink:0}.bottom-bar-warnings svg:last-child{transition:transform var(--transition-fast)}.bottom-bar:has(.bottom-bar-warning-list) .bottom-bar-warnings svg:last-child{transform:rotate(180deg)}.bottom-bar-ok{color:var(--text-muted);flex-shrink:0}.bottom-bar-ok svg{color:var(--accent)}.bottom-bar-status{position:relative;flex-shrink:0}.bottom-bar-tooltip{position:absolute;bottom:100%;right:0;margin-bottom:var(--space-1-5);padding:var(--space-1-5) var(--space-2-5);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap;animation:tooltip-in var(--transition-fast);transition:opacity var(--transition-std)}.bottom-bar-tooltip.fading{opacity:0}@keyframes tooltip-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bottom-bar-warning-list{display:flex;flex-direction:column;max-height:200px;overflow-y:auto;border-top:1px solid var(--border)}.bottom-bar-warning-item{display:flex;align-items:center;padding:var(--space-1-5) var(--space-4);background:none;border:none;color:var(--text-secondary);font-size:var(--text-xs);text-align:left}.bottom-bar-warning-item--error{color:var(--danger)}.bottom-bar-warning-item--warning{color:var(--accent)}.app-shell{display:flex;flex-direction:column;height:100vh}.app{flex:1;min-height:0;display:grid;grid-template-columns:220px 1fr 280px}.app.app--nav-bar-collapsed{grid-template-columns:56px 1fr 280px}.app.app--no-stats{grid-template-columns:220px 1fr}.app.app--nav-bar-collapsed.app--no-stats{grid-template-columns:56px 1fr}.app-content{overflow:auto;min-width:0;min-height:0}.section-placeholder{padding:var(--space-6);color:var(--text-muted);font-size:var(--text-sm)}.landing-view{padding:var(--space-8) var(--space-6);max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-8)}.landing-hero{display:flex;align-items:center;gap:var(--space-5)}.landing-hero-mark{flex-shrink:0;color:var(--accent)}.landing-hero-title{font-family:var(--font-site-title);font-size:var(--text-3xl);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0;color:var(--accent)}.landing-hero-tagline{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-base)}.landing-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-template-areas:"character ddo" "patch     patch";gap:var(--space-5)}.landing-grid-area-character{grid-area:character}.landing-grid-area-ddo{grid-area:ddo}.landing-grid-area-patch{grid-area:patch}.landing-grid>div{display:flex;flex-direction:column}.landing-grid>div>.landing-card{flex:1}@media(max-width:899px){.landing-grid{grid-template-columns:1fr;grid-template-areas:"character" "ddo" "patch"}}.landing-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.landing-card-eyebrow{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.landing-card-title{font-size:var(--text-xl);font-weight:700;margin:0;color:var(--text)}.landing-card-body{margin:0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.landing-active-character-heading{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.landing-active-character-sections{display:flex;flex-direction:column;gap:var(--space-4);margin:0}.landing-section{display:flex;flex-direction:column;gap:var(--space-1)}.landing-section dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-muted)}.landing-section dd{margin:0;font-size:var(--text-base);color:var(--text)}.landing-build-detail{display:flex;flex-direction:column;gap:var(--space-0-5)}.landing-build-name{font-weight:600;color:var(--text)}.landing-build-classes{color:var(--text)}.landing-build-meta,.landing-inline-meta{color:var(--text-muted);font-size:var(--text-sm)}.landing-stat-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-0-5)}.landing-stat-rows>li{display:grid;grid-template-columns:2.5ch 1fr;gap:var(--space-2);align-items:baseline}.landing-stat-count{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent)}.landing-stat-label{text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary)}.landing-card>.landing-cta{margin-top:auto}.landing-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--accent);text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast)}.landing-cta:hover{background:var(--bg-accent);border-color:var(--accent)}.landing-patch-entry{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border)}.landing-patch-entry:first-of-type{border-top:none;padding-top:0}.landing-patch-date{font-size:var(--text-sm);font-weight:700;margin:0;color:var(--accent);letter-spacing:.02em}.landing-patch-changes{margin:0;padding-left:var(--space-4);color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5;display:flex;flex-direction:column;gap:var(--space-1)}.landing-patch-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2);margin-top:var(--space-1);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.landing-patch-toggle:hover{color:var(--accent);border-color:var(--border)}.landing-patch-toggle-chevron{transition:transform var(--transition-fast)}.landing-patch-toggle-chevron.is-open{transform:rotate(180deg)}.landing-footer{display:flex;justify-content:center;align-items:center;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-xs)}.landing-footer-link{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast)}.landing-footer-link:hover{color:var(--accent)}.settings-view{padding:var(--space-6);max-width:400px}.settings-view-title{font-size:var(--text-xl);font-weight:700;color:var(--text);margin-bottom:var(--space-6)}.settings-view-section{margin-bottom:var(--space-6)}.settings-view-label{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2)}.settings-view-theme-toggle{display:flex;gap:var(--space-1);background:var(--bg-accent);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-1)}.settings-view-theme-opt{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:500}.settings-view-theme-opt.active{color:var(--accent);background:var(--bg-accent)}.settings-view-accent-grid{display:flex;flex-direction:column;gap:var(--space-0-5)}.settings-view-accent-swatch{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1-5) var(--space-2);border:none;border-radius:var(--radius-lg);background:transparent}.settings-view-accent-swatch.selected{background:var(--bg-accent)}.settings-view-accent-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1.5px rgb(from var(--tint) r g b / .08)}.settings-view-accent-swatch.selected .settings-view-accent-dot{box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px currentColor}.settings-view-accent-name{font-size:var(--text-xs);font-weight:500;color:var(--text-secondary)}.settings-view-accent-swatch.selected .settings-view-accent-name{color:var(--accent);font-weight:600}.settings-view-accent-check{margin-left:auto;color:var(--accent);display:flex}.resources-view{display:flex;flex-direction:column;height:100%;min-height:0}.resources-header{border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-4) 0;flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.resources-tabs{display:flex;gap:var(--space-1);flex-wrap:wrap}.resources-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-md) var(--radius-md) 0 0;transition:color var(--transition-std),border-color var(--transition-std),background var(--transition-std)}.resources-tab:hover:not(.disabled){color:var(--text);background:var(--bg-subtle)}.resources-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.resources-tab.disabled{color:var(--text-muted);cursor:not-allowed;opacity:.6}.resources-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-areas:"picker"}.resources-picker{grid-area:picker;border-right:1px solid var(--border);overflow:auto;min-height:0}.resources-detail{overflow:auto;min-height:0}.resources-drawer-bar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-secondary)}.resources-drawer-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr)}.resources-back-btn{display:inline-flex;align-items:center;gap:var(--space-1-5);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-family:inherit;padding:var(--space-1) var(--space-2);cursor:pointer}.resources-back-btn:hover{color:var(--accent)}.resources-detail-bar{flex:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0}.resources-detail-bar-nav{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1}.resources-detail-bar-back{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:color var(--transition-fast),border-color var(--transition-fast)}.resources-detail-bar-back:hover{color:var(--accent);border-color:var(--accent)}.resources-detail-breadcrumb{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);min-width:0;flex-wrap:wrap}.resources-detail-breadcrumb-link-wrap,.resources-detail-breadcrumb-current{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0}.resources-detail-breadcrumb-sep{color:var(--text-muted);flex-shrink:0}.resources-detail-breadcrumb-link{background:none;border:none;color:var(--text-secondary);font-size:inherit;font-family:inherit;padding:var(--space-0-5) var(--space-1);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14em;transition:color var(--transition-fast),background var(--transition-fast)}.resources-detail-breadcrumb-link:hover{color:var(--accent);background:var(--bg-subtle)}.resources-detail-breadcrumb-back{display:inline-flex;align-items:center;gap:var(--space-1-5);max-width:none;overflow:visible}.resources-detail-breadcrumb-back svg{flex-shrink:0}.resources-detail-breadcrumb-current{color:var(--text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resources-picker-inner{display:flex;flex-direction:column;height:100%;min-height:0}.resources-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.resources-search-input{flex:1;min-width:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);padding:var(--space-1-5) var(--space-2);font-size:var(--text-sm);font-family:inherit}.resources-search-input:focus{outline:none;border-color:var(--accent)}.resources-search-count{color:var(--text-muted);font-size:var(--text-xs);flex-shrink:0}.resources-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.resources-filter{display:flex;flex-direction:column;gap:var(--space-0-5);min-width:0}.resources-filter-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.resources-filter-input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);font-size:var(--text-sm);font-family:inherit;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);width:5em;transition:border-color var(--transition-fast)}.resources-filter-input:hover{border-color:var(--border-emphasis)}.resources-filter-input:focus{outline:none;border-color:var(--accent)}.resources-select-shell{position:relative;display:inline-flex;align-items:center;min-width:8em}.resources-filter-select{appearance:none;-webkit-appearance:none;width:100%;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);font-size:var(--text-sm);font-family:inherit;padding:var(--space-1) var(--space-2);padding-right:var(--space-6);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast)}.resources-filter-select:hover{border-color:var(--border-emphasis)}.resources-filter-select:focus{outline:none;border-color:var(--accent)}.resources-select-chevron{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.resources-select-shell:hover .resources-select-chevron,.resources-filter-select:focus+.resources-select-chevron{color:var(--text)}.resources-multiselect{position:relative;min-width:8em}.resources-multiselect[open] .resources-select-chevron{transform:translateY(-50%) rotate(180deg)}.resources-multiselect-trigger{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:space-between;width:100%;position:relative;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);font-size:var(--text-sm);padding:var(--space-1) var(--space-6) var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.resources-multiselect-trigger::-webkit-details-marker{display:none}.resources-multiselect-trigger:hover{border-color:var(--border-emphasis)}.resources-multiselect[open] .resources-multiselect-trigger{border-color:var(--accent)}.resources-multiselect-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resources-multiselect-menu{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;z-index:var(--z-modal);display:flex;flex-direction:column;gap:var(--space-0-5);max-height:280px;overflow-y:auto;background:var(--bg-tertiary);border:1px solid var(--border-emphasis);border-radius:var(--radius-md);padding:var(--space-1);box-shadow:0 4px 12px #00000040;min-width:12em}.resources-multiselect-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text);cursor:pointer}.resources-multiselect-item:hover{background:var(--bg-subtle)}.resources-multiselect-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.resources-multiselect-empty{padding:var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.resources-multiselect-clear{margin-top:var(--space-1);background:transparent;border:1px solid var(--border-accent);color:var(--text-secondary);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-family:inherit;cursor:pointer}.resources-multiselect-clear:hover{color:var(--accent);border-color:var(--accent)}.resources-filter-clear{align-self:flex-end;background:transparent;border:1px solid var(--border-accent);color:var(--text-secondary);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2-5);font-size:var(--text-xs);font-family:inherit;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.resources-filter-clear:hover{color:var(--accent);border-color:var(--accent)}.resources-filter-toggle{align-self:flex-end;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-sm);font-family:inherit;padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.resources-filter-toggle:hover{border-color:var(--border-emphasis)}.resources-filter-toggle.active{background:var(--bg-accent);border-color:var(--accent);color:var(--accent)}.resources-active-filters{display:flex;flex-wrap:wrap;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-secondary)}.resources-filter-chip{display:inline-flex;align-items:center;gap:var(--space-1);background:var(--bg);border:1px solid var(--border-accent);color:var(--text);font-size:var(--text-xs);font-family:inherit;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.resources-filter-chip:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-tertiary)}.resources-list-wrap{flex:1;min-height:0;position:relative}.resources-list{height:100%!important}.resources-row-shell{display:flex}.resources-row{display:flex;flex-direction:column;justify-content:center;gap:var(--space-0-5);padding:var(--space-1) var(--space-3);cursor:pointer;width:100%;height:100%;box-sizing:border-box;border:none;background:none;color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;align-items:stretch}.resources-row:hover{background:var(--bg-subtle)}.resources-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.resources-row.active{background:var(--bg-accent);border-left:2px solid var(--accent)}.resources-row-title{display:flex;align-items:center;gap:var(--space-2);min-width:0}.resources-row-name{color:var(--text);font-weight:500;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resources-row-chips{display:inline-flex;align-items:center;gap:var(--space-1);flex-shrink:0}.resources-chip{font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;padding:0 var(--space-1);border-radius:var(--radius-sm);border:1px solid transparent;text-transform:uppercase;line-height:1.4;flex-shrink:0}.resources-chip[data-kind=raid]{color:var(--accent);border-color:color-mix(in oklch,var(--accent) 40%,transparent);background:color-mix(in oklch,var(--accent) 10%,transparent)}.resources-chip[data-kind=rare]{color:var(--text-secondary);border-color:var(--border);background:var(--bg-subtle)}.resources-row-meta{display:flex;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);min-width:0}.resources-row-meta>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.resources-detail-body{padding:var(--space-4)}.resources-entity-header{margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.resources-entity-title-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0 0 var(--space-1)}.resources-entity-name{font-size:var(--text-xl);font-weight:600;color:var(--text);margin:0}.resources-entity-copy{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.resources-entity-copy:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.resources-entity-copy:disabled{opacity:.4;cursor:not-allowed}.resources-kv-grid{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-1) var(--space-3);font-size:var(--text-sm);margin:0}.resources-kv-row{display:contents}.resources-kv-label{color:var(--text-secondary)}.resources-kv-value{color:var(--text);margin:0}.resources-section{margin-top:var(--space-4)}.resources-section-body{font-size:var(--text-sm)}.resources-stat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.resources-stat-row{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-3)}.resources-stat-label{color:var(--text-secondary)}.resources-stat-value{color:var(--text)}.resources-flat-list{list-style:disc inside;margin:0;padding:0;color:var(--text);display:flex;flex-direction:column;gap:var(--space-0-5)}.resources-bonus-list{display:grid;grid-template-columns:max-content minmax(0,max-content) max-content;row-gap:var(--space-2);column-gap:var(--space-2);list-style:none;margin:0;padding:0;font-size:var(--text-sm)}.resources-bonus-row{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;row-gap:var(--space-0-5)}.resources-bonus-head{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:center;column-gap:var(--space-2)}.resources-bonus-name{color:var(--text)}.resources-bonus-value{color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}.resources-bonus-type{color:var(--text-secondary);white-space:nowrap}.resources-bonus-description{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.5;margin:0}.resources-quest-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.resources-quest-row{display:flex;flex-direction:column;gap:var(--space-0-5)}.resources-quest-name{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);font-size:var(--text-sm);color:var(--text)}.resources-quest-meta{font-size:var(--text-xs);color:var(--text-secondary)}.resources-augment-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.resources-augment-slot{display:inline-flex;align-items:center}.resources-augment-gem{display:inline-block;width:.7em;height:.7em;transform:rotate(45deg);border-radius:2px;background:var(--gem-color, var(--text-muted));box-shadow:inset 0 0 0 1px color-mix(in srgb,white 35%,transparent),0 0 0 1px color-mix(in srgb,var(--gem-color, var(--text-muted)) 60%,transparent)}.resources-augment-slot[data-color=yellow]{--gem-color: #d4a017}.resources-augment-slot[data-color=blue]{--gem-color: #3b82f6}.resources-augment-slot[data-color=red]{--gem-color: #ef4444}.resources-augment-slot[data-color=purple]{--gem-color: #a855f7}.resources-augment-slot[data-color=green]{--gem-color: #22c55e}.resources-augment-slot[data-color=orange]{--gem-color: #f97316}.resources-augment-slot[data-color=colorless]{--gem-color: var(--text-muted)}.resources-augment-slot[data-color=sun]{--gem-color: #f0b429}.resources-augment-slot[data-color=moon]{--gem-color: #8fa6c0}.resources-augment-slots{display:flex;flex-direction:column;gap:var(--space-1-5)}.resources-augment-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-1-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-secondary);font-size:var(--text-xs);font-family:inherit}.resources-augment-control[aria-expanded=true]{border-color:var(--border-accent);color:var(--text)}.resources-augment-candidates{list-style:none;margin:0;padding:var(--space-1);display:flex;flex-direction:column;gap:var(--space-px);max-height:14rem;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-tertiary)}.resources-augment-candidate{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-sm);font-size:var(--text-xs)}.resources-augment-candidate.selected{background:var(--bg-accent)}.resources-augment-candidate.selected .resources-augment-candidate-name{color:var(--accent);font-weight:500}.resources-augment-candidate-name{color:var(--text)}.resources-augment-candidate-level{color:var(--text-muted)}.resources-augment-candidate-bonuses{flex-basis:100%;color:var(--text-secondary)}.resources-detail-description{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6;margin-bottom:var(--space-2)}.resources-detail-tooltip{color:var(--text-muted);font-size:var(--text-sm);line-height:1.6;font-style:italic;margin-bottom:var(--space-2)}.resources-detail-empty{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-6)}.resources-detail-empty-hint{font-size:var(--text-xs);color:var(--text-muted)}@media(max-width:899px){.resources-picker{border-right:none}}:root{--bg: #18181b;--tint: white;--text: rgb(from var(--tint) r g b / .85);--accent: #b8962e;--danger: #ef4444;--font-body: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;--font-nav: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;--font-site-title: "Vollkorn", Georgia, "Times New Roman", serif;--text-secondary: rgb(from var(--text) r g b / .65);--text-muted: rgb(from var(--text) r g b / .45);--bg-secondary: color-mix(in srgb, var(--tint) 3%, var(--bg));--bg-tertiary: color-mix(in srgb, var(--tint) 6%, var(--bg));--bg-subtle: rgb(from var(--tint) r g b / .1);--bg-accent: color-mix(in srgb, var(--accent) 8%, var(--bg));--bg-accent-muted: rgb(from var(--accent) r g b / .35);--bg-danger: rgb(from var(--danger) r g b / .1);--border: color-mix(in srgb, var(--tint) 17%, var(--bg));--border-emphasis: color-mix(in srgb, var(--tint) 10%, var(--border));--border-accent: color-mix(in srgb, var(--accent) 15%, var(--border));--border-danger: color-mix(in srgb, var(--danger) 40%, var(--border));--text-danger: var(--danger);--transition-fast: .15s;--transition-std: .3s;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--z-local: 1;--z-panel: 10;--z-nav: 20;--z-overlay: 40;--z-modal: 100;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--space-px: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;color-scheme:dark;font-family:var(--font-body);line-height:1.5;font-weight:400;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light]{--bg: #f4f4f5;--tint: black;--accent: #8b7335;--text-danger: #b91c1c;color-scheme:light;background:var(--bg)}*{margin:0;padding:0;box-sizing:border-box}#root{min-height:100vh}a{font-weight:500;color:var(--accent);text-decoration:inherit}a:hover{color:color-mix(in oklch,var(--accent) 70%,white)}h1{font-size:var(--text-3xl);line-height:1.1;margin-bottom:var(--space-2)}.tooltip-portal{position:fixed;background:var(--bg-tertiary);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-1-5) var(--space-2);font-size:var(--text-xs);max-width:250px;text-align:center;pointer-events:none;z-index:var(--z-modal)}.section-label{color:var(--accent);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-2);margin-bottom:var(--space-1-5)}.section-label:first-child{margin-top:0}.btn-ghost{background:var(--bg-secondary);border:1px solid var(--border-accent);color:var(--text-secondary);border-radius:var(--radius-md);padding:var(--space-1-5) var(--space-3);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:color var(--transition-std),border-color var(--transition-std),background var(--transition-std),transform var(--transition-fast)}.btn-ghost:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-tertiary);transform:translateY(-1px)}.btn-ghost:active{transform:translateY(0)}.btn-ghost-sm{background:var(--bg-secondary);border:1px solid var(--border-accent);color:var(--text-secondary);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:color var(--transition-std),border-color var(--transition-std),background var(--transition-std),transform var(--transition-fast)}.btn-ghost-sm:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-tertiary);transform:translateY(-1px)}.btn-ghost-sm:active{transform:translateY(0)}.btn-primary{background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-md);padding:var(--space-1-5) var(--space-3-5);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background var(--transition-std),transform var(--transition-fast)}.btn-primary:hover{background:color-mix(in oklch,var(--accent) 70%,white);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary-sm{background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background var(--transition-std),transform var(--transition-fast)}.btn-primary-sm:hover{background:color-mix(in oklch,var(--accent) 70%,white);transform:translateY(-1px)}.btn-primary-sm:active{transform:translateY(0)}.hoverable{cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.hoverable:not(.active):not(.selected):hover{background:var(--bg-subtle);color:var(--text)}.hoverable.active,.hoverable.selected{cursor:default}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
