/* Dark Memory: item-first archive, charcoal, aged brass and restrained rarity accents. */
:root{color-scheme:dark;--paper:#d4cbb8;--muted:#928b7d;--gold:#b9995e;--line:#39342c;--surface:#191815;--black:#10100f;--sans:"Segoe UI",Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;color:var(--paper);background:#10100f;font:13px/1.5 var(--sans);background-image:linear-gradient(#10100fdb,#10100ffa 650px),url('assets/ui/relief.png');background-size:auto,1400px auto;background-position:center top;background-repeat:no-repeat}button,input,select,textarea{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;color:var(--paper);background:#26231d;border:1px solid #544a38;border-radius:1px;padding:9px 13px;transition:color .15s,background .15s,border-color .15s}button:hover:not(:disabled){border-color:#b69a65;background:#342d21;color:#f0e2c4}button:disabled{cursor:not-allowed;opacity:.36}button:focus-visible,a:focus-visible{outline:2px solid #ddbd78}a{color:#c7ad79;text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{background:#11110f;border:1px solid #413b30;border-radius:1px;color:#dbd3c1;padding:8px 10px;min-width:0}input:focus,select:focus,textarea:focus{outline:1px solid #a88a53}h1,h2,h3,p{margin-top:0}h2{font:20px var(--serif);font-weight:400;margin:0}h3{font:20px var(--serif)}small,.muted{color:var(--muted)}[hidden]{display:none!important}
.topbar{height:78px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#10100feb;border-top:2px solid #76603c;border-bottom:1px solid #373126}.brand{display:flex;gap:16px;align-items:center;color:#e0d4b8;font:22px var(--serif);letter-spacing:3px;white-space:nowrap}.brand:hover{text-decoration:none}.brand small{display:block;font:8px var(--sans);letter-spacing:4.2px;margin-top:7px;color:#a49068}.brand-sigil{display:none}nav{height:100%;display:flex;gap:26px}nav button{height:100%;border:0;border-bottom:2px solid transparent;background:none;padding:0 3px;color:#a29b8e;font-size:12px}nav button:hover:not(:disabled){background:none;color:#e8d7b1;border-color:transparent}nav button.active{border-bottom-color:#c8a665;color:#e3cb99}nav span{font-size:9px;color:#8c806c;padding-left:5px}.local-badge{font-size:9px;letter-spacing:1.6px;color:#8d8576}.local-badge span{color:#b08d53;margin:0 7px}
main{max-width:1800px;padding:0 40px;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;padding:27px 0 25px;gap:25px}.intro-title{display:flex;align-items:baseline;gap:24px}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#a19072}.intro-title .eyebrow{order:2;color:#706b60;font-size:8px;letter-spacing:1.5px}h1{font:33px/1.1 var(--serif);letter-spacing:.4px;color:#e7ddc8;margin:0}.metrics{display:flex;gap:25px}.metric{display:flex;gap:7px;align-items:baseline}.metric strong{font:17px var(--serif);color:#c0ad86}.metric span{font-size:10px;color:#807a6d}.workspace{display:grid;grid-template-columns:268px minmax(0,1fr);gap:30px;align-items:start}.catalog{position:sticky;top:20px;min-width:0;padding-right:20px;border-right:1px solid #302c24}.catalog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.catalog-heading h2{font-size:18px}.catalog-heading>span{font-size:10px;color:#908675}.search-label{display:block;margin-bottom:14px;font-size:10px;color:#9c9382}.search-label>span{display:none}.search-label input{display:block;width:100%;padding:10px 11px;font-size:12px}.filters{display:grid;grid-template-columns:1.3fr 1fr;gap:10px;margin-bottom:17px}.filters label{font-size:9px;letter-spacing:.3px;color:#8d8476}.filters select{display:block;width:100%;font-size:11px;padding:7px 3px;margin-top:5px}.item-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:calc(100vh - 340px);min-height:300px;overflow:auto;scrollbar-width:thin;scrollbar-color:#5e5139 #181713;padding-right:5px}.catalog-item{position:relative;background:linear-gradient(150deg,#1e1c18,#131311);border:1px solid #343027;padding:0;display:flex;flex-direction:column;align-items:stretch;min-height:171px;max-height:185px;text-align:center;overflow:hidden;isolation:isolate}.catalog-item::before{content:"";position:absolute;inset:3px;border:1px solid #37312750;pointer-events:none}.catalog-item:hover:not(:disabled){background:linear-gradient(150deg,#30291d,#171612);border-color:#a28a5c}.catalog-item.active{border-color:#b39861;background:radial-gradient(ellipse at 50% 30%,#4b3a2070,#1b1914 78%)}.catalog-item.active::after{content:"";width:16px;height:2px;position:absolute;bottom:0;left:calc(50% - 8px);background:#dbb56d}.catalog-art{display:block;height:107px;margin:9px 14px 5px;filter:drop-shadow(0 5px 4px #000a)}.catalog-art .item-image{height:100%;width:100%;transform:rotate(var(--art-angle));padding:3px}.catalog-art img{height:100%;max-width:100%;object-fit:contain}.catalog-item-copy{display:block;padding:0 7px 10px}.catalog-item strong{display:block;font-size:10px;font-weight:500;color:var(--rarity);line-height:1.35;min-height:27px}.catalog-item small{display:block;font-size:8px;color:#817968;margin-top:3px}.rarity-mark{position:absolute;left:8px;top:8px;width:3px;height:3px;background:var(--rarity);transform:rotate(45deg);opacity:.8}.catalog-caption{font-size:9px;color:#6f685b;text-align:center;margin-top:12px}.work-area{min-width:0}.item-panel{border:1px solid #51432c;background:#181714;box-shadow:0 10px 35px #0003;position:relative}.item-panel-actions{display:flex;align-items:center;gap:10px}.item-panel-bar .subtle{font-size:10px;letter-spacing:.8px;text-transform:uppercase;padding:6px 10px;border:1px solid #6a5a3f;background:#1a1712;color:#d7c49a}.item-panel-bar .subtle:hover{border-color:#c4a66a;color:#f0e2c0}.item-panel-bar .subtle:disabled{opacity:.4;cursor:not-allowed}.item-panel-bar{display:flex;justify-content:space-between;padding:10px 19px;border-bottom:1px solid #3e3527;font-size:9px;letter-spacing:1.5px;color:#a59472;background:linear-gradient(90deg,#292217,#191814)}#mode-badge{letter-spacing:.5px;color:#8c8575;font-size:9px}.item-showcase{display:grid;grid-template-columns:43% minmax(0,1fr);min-height:376px}.item-stage{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:376px;background:radial-gradient(ellipse at 45% 42%,#75684a33,transparent 62%),#111210;overflow:hidden;border-right:1px solid #393022}.item-stage::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(#0d0d0ad4,#14130dd9),url('assets/ui/relief.png');background-size:auto,auto 115%;background-position:center,35% 40%;opacity:.7}.item-stage::after{content:"";position:absolute;inset:15px;border:1px solid #6652333d;clip-path:polygon(0 0,25px 0,25px 1px,calc(100% - 25px) 1px,calc(100% - 25px) 0,100% 0,100% 25px,calc(100% - 1px) 25px,calc(100% - 1px) calc(100% - 25px),100% calc(100% - 25px),100% 100%,calc(100% - 25px) 100%,calc(100% - 25px) calc(100% - 1px),25px calc(100% - 1px),25px 100%,0 100%,0 calc(100% - 25px),1px calc(100% - 25px),1px 25px,0 25px);pointer-events:none}.stage-caption{position:absolute;left:27px;top:24px;color:#7e7159;font-size:7px;letter-spacing:2px}.inspect-art{width:72%;height:292px;margin:34px 0 50px;padding:2px;background:none;border:none;cursor:zoom-in;filter:drop-shadow(10px 15px 10px #000a)}.inspect-art:hover:not(:disabled){background:none;filter:drop-shadow(10px 15px 10px #000a) brightness(1.08)}.inspect-art .item-image{width:100%;height:100%;transform:rotate(var(--art-angle));overflow:visible}.inspect-art img{width:100%;height:100%;object-fit:contain}.stage-bottom{position:absolute;bottom:23px;left:27px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:10px}.socket-row{display:flex;gap:10px}.socket{position:relative;display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#090a08;box-shadow:inset 0 0 5px #000}.socket::after{content:"";position:absolute;inset:-2px;background:url('assets/ui/socket-rim.png') center/contain no-repeat;pointer-events:none}.socket img{width:25px;height:25px;object-fit:contain;filter:drop-shadow(0 0 4px #ad9c6555)}.inspect-link{font-size:9px;letter-spacing:.4px;color:#af9b74;padding:5px 0;border:0;background:none}.inspect-link:hover:not(:disabled){background:none}.item-information{padding:31px 32px 22px;min-width:0}.item-type{font-size:10px;color:var(--rarity);display:flex;align-items:center;gap:9px}.rarity-diamond{width:4px;height:4px;background:var(--rarity);transform:rotate(45deg)}.item-type-separator{color:#625b4b;margin:0 2px}.item-title{color:#e3d5b8;font:clamp(25px,2.1vw,36px)/1.2 var(--serif);margin:10px 0 17px;font-weight:400;letter-spacing:.2px}.title-ornament{display:flex;align-items:center;gap:7px;color:#75603c;font-size:5px;margin-bottom:20px}.title-ornament::before{content:"";height:1px;width:68px;background:#73603e}.title-ornament::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,#51432a,transparent)}.vitals{display:flex;gap:25px;align-items:center;margin-bottom:14px}.vitals>div{padding-right:22px;border-right:1px solid #393329}.vitals>div:last-child{border:0;padding-right:0}.vitals span{display:block;color:#8e8574;font-size:9px;margin-bottom:3px}.vitals strong{font:23px var(--serif);color:#ddcfb1;white-space:nowrap}.vitals em{font:12px var(--sans);color:#7b7263;margin:0 5px;font-style:normal}.vitals .damage-stat strong{font-size:27px}.base-stats{font-size:12px;color:#a8bad0;line-height:1.85}.base-stats small{font-size:9px;color:#726b60;margin-left:6px}.item-affixes{margin-top:15px;padding-top:13px;border-top:1px solid #393329;font-size:12px;min-height:48px}.item-affixes p{margin:0 0 3px;color:#9a917e;font-family:var(--serif);font-style:italic}.item-affixes>small{font-size:10px;color:#6f685b}.hero-affix{color:#c8b18b;display:flex;align-items:center;gap:9px;margin:4px 0}.hero-affix.suffix{color:#a4b9d0}.hero-affix>span{font-size:8px;letter-spacing:.5px;color:#8f7f64;border-right:1px solid #4c402e;padding-right:8px}.identity{margin-top:15px;font-size:10px;color:#857d6e}.identity summary{font-size:9px;cursor:pointer;color:#786f60}.identity p{margin:5px 0;font-size:11px}.identity code{font-size:9px;color:#ada28d;overflow-wrap:anywhere}.configuration{display:flex;gap:10px;align-items:center;padding:12px 19px;border-top:1px solid #3c3327;background:#1d1b16}.configuration-title{font-size:10px;color:#a2967e;margin-right:auto}.configuration label{display:flex;align-items:center;gap:7px;font-size:10px;color:#8f8573}.configuration select,.configuration input{font-size:11px;padding:6px 8px;height:31px}.configuration input{width:60px}.configuration button{font-size:10px;padding:7px 12px}.rule-strip{display:flex;gap:18px;flex-wrap:wrap;font-size:9px;padding:9px 19px;color:#7d7361;background:#141310;border-top:1px solid #30291f}.rule-strip span:first-child{color:#b1996c}.rule-strip span:last-child{margin-left:auto}.inspect-only{font-size:12px;line-height:1.8;color:#a59a84;padding:17px 25px;border-top:1px solid #393024}.inspect-only p{margin:10px 0}.craft-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:26px;margin-top:26px;align-items:start}.craft-main{min-width:0}.work-tabs{display:flex;gap:25px;border-bottom:1px solid #52432c;margin-bottom:16px}.work-tabs button{padding:0 0 13px;border:0;border-bottom:2px solid transparent;background:none;font-size:12px;color:#8f8573;white-space:nowrap}.work-tabs button.active{color:#d7c092;border-bottom-color:#c4a366}.work-tabs button:hover:not(:disabled){background:none}.work-tabs button span{font:9px var(--sans);margin-left:6px;color:#9a8762}.mod-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:17px}.segmented{display:flex;gap:15px}.segmented button{border:0;background:none;padding:0;color:#837b6d;font-size:10px}.segmented button.active{color:#d9c397}.check{display:flex;align-items:center;gap:6px;font-size:9px;color:#80776a;white-space:nowrap}.check input{accent-color:#c4a568;width:11px;height:11px}.affix-table-head{display:grid;grid-template-columns:155px 1fr;gap:8px;color:#81735a;font-size:8px;letter-spacing:.6px;text-transform:uppercase;padding:9px 10px;background:#1e1b15;border-bottom:1px solid #433726}.affix-table-head>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));text-align:center}.mod-row{display:grid;grid-template-columns:155px minmax(0,1fr);gap:8px;padding:11px 9px;align-items:center;border-bottom:1px solid #312b21;background:#181612}.mod-row:nth-child(odd){background:#14130f}.mod-row.target-row{background:#282117;box-shadow:inset 2px 0 #ac8a4e}.mod-title{min-width:0}.side-tag{display:block;font-size:7px;letter-spacing:1px;color:#b49461;margin-bottom:3px}.side-tag.suffix{color:#8eacbe}.mod-title>strong{display:block;font-size:11px;line-height:1.35;font-weight:500;color:#c7bba5}.coin-link{display:flex;align-items:center;gap:5px;margin-top:5px;font-size:8px;color:#8b7d66;text-align:left;line-height:1.2;background:none;border:0;padding:0}.coin-link:hover:not(:disabled){background:none;color:#ddc192}.coin-link img{height:18px;width:18px;object-fit:contain}.no-currency{font-size:8px;color:#8c7a61;display:block;margin-top:5px}.tiers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.tier{display:flex;flex-direction:column;align-items:center;padding:9px 2px 7px;border:1px solid transparent;background:none;min-width:0}.tier b{display:none}.tier strong{font:11px var(--sans);font-variant-numeric:tabular-nums;white-space:nowrap;color:#c8bfa9}.tier small{font-size:8px;color:#7f755f;margin-top:6px}.tier.locked{opacity:.26}.tier.selected{border-color:#ad8a49;background:#51402445}.tier.selected strong{color:#f0d397}.tier.concealed{visibility:hidden}#mods-list{max-height:645px;overflow:auto;scrollbar-width:thin;scrollbar-color:#5c4a2a #181611}.odds-panel{background:linear-gradient(160deg,#262117,#16140f 75%);border-top:1px solid #93703d;position:sticky;top:20px}.panel-heading{padding:18px;border-bottom:1px solid #403424;display:flex;align-items:center;gap:10px}.odds-panel .panel-heading{display:block}.panel-heading .eyebrow{font-size:7px;letter-spacing:1.5px;color:#8e7751}.odds-panel h2{font-size:24px;margin-top:5px;color:#dec8a1}.odds-content{padding:18px}.odds-title{font:16px var(--serif);color:#cebc97;margin:0 0 17px}.roll-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.roll-fields label{font-size:9px;color:#93836a}.roll-fields select,.roll-fields input{display:block;width:100%;margin-top:5px;font-size:11px;padding:7px}.odds-number{font:42px var(--serif);letter-spacing:-1.5px;color:#dfbd7a;margin:22px 0 2px}.odds-sub{font-size:9px;color:#a49172}.odds-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #433722;border-bottom:1px solid #433722;padding:13px 0;margin:16px 0}.odds-grid strong{display:block;font:20px var(--serif);color:#d6c39b}.odds-grid small{font-size:8px;color:#8f8066}.odds-content p{font-size:10px;line-height:1.65;color:#9a8b70}.actions-stack{display:grid;gap:8px;margin-top:17px}.actions-stack button{font-size:11px}.primary{background:linear-gradient(#c4a46b,#a38149);border-color:#cfb17b;color:#19150e;font-weight:600}.primary:hover:not(:disabled){background:linear-gradient(#dfbd7f,#c39a53);color:#14110c}.subtle{background:none;border-color:#453b2b;color:#9e8d6d;font-size:10px}.odds-content details{font-size:9px;color:#9a8664;border-top:1px solid #3f3221;padding-top:13px;margin-top:17px}.odds-content summary{cursor:pointer}.wide{display:block;width:100%;margin-top:12px}.section-label{font-size:9px;letter-spacing:1.2px;color:#b79c69;padding:12px 0}.currency-grid,.rune-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:13px}.material{display:flex;flex-direction:column;align-items:center;gap:11px;background:#1d1912;border-color:#443725;padding:15px 10px;text-align:center;font-size:11px}.material img{height:59px;width:62px;object-fit:contain;filter:drop-shadow(0 5px 5px #0008)}.material small{display:block;font-size:8px;color:#8f7d5e;margin-top:6px}.material-note{font-size:10px;line-height:1.7;color:#86775e;margin:10px 0 17px}.result-panel{background:#191610}.result-panel .panel-heading{padding:17px 18px}.icon-button{background:none;border:0;padding:0 5px;margin-left:auto;color:#b19868;font-size:23px;line-height:1}.icon-button:hover:not(:disabled){background:none}.plan-block{padding:15px 18px;border-bottom:1px solid #352c1e}.mini-label{font-size:8px;letter-spacing:1px;color:#9e8862;margin-bottom:9px;display:block}.affix-line{display:flex;align-items:center;gap:10px;margin:8px 0;color:#c6ab7f;font-size:12px}.affix-line.suffix{color:#9eb4c7}.affix-line .t{font-size:9px;color:#a48754;white-space:nowrap}.remove{margin-left:auto;border:0;background:none;padding:0 4px;line-height:1;color:#a28f6b}.empty-slot{border-bottom:1px dashed #423623;padding:8px 0;font:italic 12px var(--serif);color:#6f6045}.total-line{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#a7977a;margin:6px 0}.total-line strong{font-weight:500;color:#d8c6a3}.cost-line{font-size:10px;color:#aa9775;margin:8px 0;line-height:1.6}.cost-line img{width:23px;height:23px;object-fit:contain;vertical-align:middle;margin-right:3px}.plan-actions{display:flex;gap:10px;flex-wrap:wrap;padding:18px}.result-panel>.wide{width:calc(100% - 36px);margin:0 18px 17px}.history-panel{border-top:1px solid #3a2f1f;margin-top:18px;font-size:10px;color:#8d7956}.history-panel>summary{cursor:pointer;padding:14px 0}.history-entry{font-size:11px;border-bottom:1px solid #30271b;padding:12px 0;color:#b3a084}.history-entry small{display:block;font-size:9px;margin-top:3px;color:#75664c}.quiet{font-size:11px;color:#918369;line-height:1.8;padding:15px 0}.future-heading{margin:15px 0 20px}.future-heading h2{font:29px var(--serif);color:#dfcba5;margin-top:9px}.future-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:24px 0 40px}.future-card{background:radial-gradient(ellipse at center 35%,#3f342933,#14120e 75%);border-bottom:1px solid #6d5330;padding:25px 20px 18px}.future-card img{height:200px;width:100%;object-fit:contain}.future-card small{display:block;color:#a18a5e;font-size:8px;letter-spacing:1px;margin:18px 0 9px}.future-card h3{font:22px var(--serif);color:#d6bd91;margin-bottom:11px}.future-card p{font-size:11px;line-height:1.7;color:#99876a}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{font-size:12px;text-align:left;border-bottom:1px solid #3e3323;padding:12px 16px}.data-table th{color:#c0a373;font-weight:500}.table-wrap{overflow:auto}.guide-box{max-width:1020px;margin:0 auto;padding:10px 35px 30px;background:#191610}.guide-box h2{font:25px var(--serif);color:#d5bd93;margin:27px 0 15px}.guide-box p,.guide-box li{line-height:1.9;color:#ab9a7f;font-size:13px}.guide-box code{font-size:11px;overflow-wrap:anywhere}.notice-visible{padding:10px 15px;margin-bottom:16px;font-size:11px;color:#d1b988;background:#292215;border-left:2px solid #b49756}.notice-error{color:#e7b8a5;background:#30201b;border-color:#a46950}footer{display:flex;gap:23px;flex-wrap:wrap;margin:38px 0 0;padding:22px 0;border-top:1px solid #332a1d;font-size:9px;color:#75634a;letter-spacing:.3px}footer span:first-child{margin-right:auto}footer a{color:#94815f}
dialog{padding:0;background:#181510;border:1px solid #937246;color:#d4c2a1;border-radius:0;width:min(680px,calc(100% - 30px));max-height:90vh;box-shadow:0 30px 100px #000d}dialog::backdrop{background:#070604e8;backdrop-filter:blur(6px)}.project-io{padding:20px}.project-io p,.project-io label{font-size:11px;color:#ac9879}.project-io textarea{display:block;width:100%;height:310px;resize:vertical;margin-top:8px;padding:14px;font:12px/1.5 Consolas,monospace}.project-io .plan-actions{padding:15px 0 0}.button-link{display:inline-block;padding:9px 13px;border:1px solid #cfb17b}.project-io .button-link{font-size:12px}#art-dialog{width:min(950px,calc(100vw - 36px));max-height:95vh;background:#10110e;overflow:hidden}.art-dialog-top{display:flex;align-items:center;justify-content:space-between;padding:20px 27px;border-bottom:1px solid #504128}.art-dialog-top h2{font:25px var(--serif);margin:4px 0 0;color:#d9c49b}.art-dialog-top .eyebrow{font-size:7px}#art-inspection{height:65vh;max-height:650px;overflow:auto;background:radial-gradient(ellipse,#50483344,#0b0d0a 70%);scrollbar-color:#715930 #10120f;scrollbar-width:thin}.inspection-art{width:100%;height:100%;padding:28px 35px;min-width:100%;min-height:100%;display:grid;place-items:center}.inspection-art .item-image,.inspection-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(10px 12px 8px #0008)}.art-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 27px;border-top:1px solid #3e3324;font-size:10px;color:#8b7856}.art-controls label{display:flex;align-items:center;gap:15px}.art-controls input{accent-color:#c0a46d;width:150px;padding:0}.art-controls output{min-width:32px;font-variant-numeric:tabular-nums}
@media(min-width:1650px){.workspace{grid-template-columns:295px minmax(0,1fr);gap:35px}.craft-layout{grid-template-columns:minmax(0,1fr) 300px}.item-stage{min-height:413px}.inspect-art{height:320px}.catalog-art{height:120px}.catalog-item{min-height:186px}.item-list{max-height:calc(100vh - 300px)}}
@media(max-width:1230px){main{padding:0 25px}.topbar{padding:0 25px}.local-badge{display:none}.workspace{grid-template-columns:220px minmax(0,1fr);gap:20px}.catalog{padding-right:15px}.catalog-art{height:95px;margin-left:12px;margin-right:12px}.catalog-item{min-height:160px}.catalog-item strong{font-size:9px}.item-information{padding:27px 22px}.craft-layout{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.affix-table-head,.mod-row{grid-template-columns:118px minmax(0,1fr);gap:4px}.mod-title>strong{font-size:10px}.tier strong{font-size:10px}.vitals{gap:18px}.vitals>div{padding-right:13px}.configuration-title{display:none}.configuration{justify-content:flex-end}.work-tabs{gap:19px}.work-tabs button{font-size:11px}.metrics{gap:17px}.metric span{font-size:9px}.intro-title .eyebrow{display:none}.coin-link span{font-size:7px}.future-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.workspace{grid-template-columns:190px minmax(0,1fr)}.catalog{padding-right:10px}.item-list{grid-template-columns:1fr}.catalog-item{display:grid;grid-template-columns:74px 1fr;min-height:95px;max-height:110px;text-align:left;align-items:center}.catalog-art{height:73px;margin:9px 14px}.catalog-item-copy{padding:8px}.catalog-item strong{min-height:0;font-size:10px}.filters{grid-template-columns:1fr}.item-list{max-height:calc(100vh - 370px)}.item-showcase{grid-template-columns:41% minmax(0,1fr)}.vitals{gap:13px;flex-wrap:wrap}.vitals strong,.vitals .damage-stat strong{font-size:23px}.item-information{padding:23px 20px}.item-stage{min-height:358px}.inspect-art{height:263px}.stage-caption{font-size:6px}.stage-bottom{left:20px;right:20px}.socket{width:26px;height:26px}.socket img{width:20px;height:20px}.inspect-link{font-size:8px}.configuration{gap:7px;flex-wrap:wrap}.rule-strip{gap:9px}.rule-strip span:last-child{display:none}.craft-layout{grid-template-columns:1fr}.odds-panel{position:static}.odds-content{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.odds-title,.roll-fields,.odds-number,.odds-sub,.odds-grid{grid-column:1}.odds-content p,.actions-stack,.odds-content details{grid-column:2}.odds-content p:first-of-type{grid-row:1/3}.odds-content p:nth-of-type(2){grid-row:3/5}.actions-stack{grid-row:5/7;align-content:start}.odds-content>p:last-of-type{grid-row:7}.odds-content details{grid-row:8}.affix-table-head,.mod-row{grid-template-columns:145px minmax(0,1fr)}.tier strong{font-size:11px}.topbar nav{gap:16px}.brand{font-size:18px}.brand small{font-size:7px;letter-spacing:3.5px}.rule-strip{font-size:8px}}
@media(max-width:760px){main{padding:0 18px}.topbar{height:auto;padding:20px 18px 0;display:block}.brand{font-size:21px;margin-bottom:18px}nav{height:39px;justify-content:space-between;gap:12px}nav button,.topbar nav .craft-nav{font-size:10px;padding:0 0 11px}.topbar nav .craft-nav .craft-icon{width:12px;height:12px}.intro{padding:24px 0 19px;align-items:baseline}h1{font-size:29px}.metrics{gap:14px}.metric{display:block}.metric strong{font-size:15px}.metric span{display:block;font-size:7px}.workspace{display:flex;flex-direction:column;gap:21px}.catalog{position:static;border-right:0;padding:0;width:100%}.catalog-heading{margin-bottom:10px}.catalog-heading h2{font-size:15px}.search-label{margin-bottom:10px}.filters{grid-template-columns:1.3fr 1fr;margin-bottom:12px}.item-list{display:flex;overflow-x:auto;max-height:180px;min-height:0;gap:9px;padding-bottom:5px}.catalog-item{display:flex;flex:0 0 108px;min-height:156px;text-align:center;max-height:171px}.catalog-art{height:95px;width:80px;flex-shrink:0;margin:10px 13px 4px}.catalog-item-copy{padding:0 6px 8px}.catalog-item strong{font-size:9px}.catalog-item small{font-size:7px}.catalog-caption{display:none}.catalog>.wide{font-size:9px;margin-top:7px;padding:5px}.work-area{width:100%}.item-showcase{grid-template-columns:42% minmax(0,1fr)}.item-information{padding:22px 20px}.item-title{font-size:27px}.item-stage{min-height:330px}.inspect-art{height:245px}.configuration{padding:11px 15px}.item-panel-bar{font-size:8px;padding:9px 13px}.configuration label{font-size:9px}.configuration select,.configuration input{font-size:10px}.craft-layout{margin-top:23px}.work-tabs{gap:26px}.work-tabs button{font-size:12px}.affix-table-head,.mod-row{grid-template-columns:150px minmax(0,1fr)}.future-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.guide-box{padding:10px 20px}.art-controls{flex-wrap:wrap}.art-controls input{width:110px}.item-panel{box-shadow:none}}
@media(max-width:480px){main{padding:0 13px}.topbar{padding:19px 15px 0}.brand{font-size:20px}.metrics{gap:12px}.metric span{max-width:58px}.item-showcase{grid-template-columns:1fr}.item-stage{min-height:285px;border-right:0;border-bottom:1px solid #40331e}.inspect-art{height:216px;width:65%;margin:30px 0 39px}.stage-bottom{bottom:16px;left:25px;right:25px}.stage-caption{left:25px;top:19px}.socket{width:28px;height:28px}.item-information{padding:23px 24px}.item-title{font-size:30px}.vitals{flex-wrap:nowrap;gap:23px}.base-stats{font-size:12px}.item-affixes{min-height:0}.configuration{gap:8px;justify-content:flex-start;flex-wrap:wrap}.configuration label{gap:5px}.configuration button{font-size:9px;padding:7px 9px}.configuration input{width:46px}.configuration select{width:86px}.rule-strip{font-size:7px;padding:8px 12px;gap:11px}.rule-strip span:nth-child(2){display:none}.work-tabs{gap:18px}.work-tabs button{font-size:11px}.mod-toolbar{gap:6px}.segmented{gap:13px}.segmented button{font-size:9px}.check{font-size:8px}.affix-table-head,.mod-row{grid-template-columns:110px minmax(0,1fr);gap:3px;padding-left:7px;padding-right:7px}.mod-title>strong{font-size:10px}.side-tag{font-size:6px}.coin-link span{font-size:7px}.coin-link img{width:15px;height:15px}.tiers{gap:0}.tier{padding:9px 0 6px}.tier strong{font-size:9px}.tier small{font-size:7px}.affix-table-head{font-size:7px}.odds-content{display:block;padding:20px}.odds-number{font-size:43px}.odds-grid small{font-size:10px}.odds-content p{font-size:11px}.roll-fields label{font-size:10px}.odds-sub{font-size:10px}.material{padding:14px 8px;font-size:10px}.material img{width:54px;height:54px}.rune-grid,.currency-grid{gap:6px}.future-grid{grid-template-columns:1fr}.future-card img{height:230px}.art-dialog-top{padding:17px 18px}.art-dialog-top h2{font-size:20px}.art-controls{padding:13px 18px}.art-controls label{gap:9px}.art-controls>span{font-size:9px}#art-inspection{height:56vh}.data-table th,.data-table td{font-size:10px;padding:11px}.guide-box{padding:8px 15px}.guide-box p,.guide-box li{font-size:12px}.future-heading h2{font-size:25px}footer{gap:15px;font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.family-filter{display:block;color:#8d8476;font-size:9px;margin:-3px 0 15px}.family-filter select{display:block;width:100%;margin-top:5px;font-size:11px;padding:7px 6px}.tier.locked{opacity:.43}.mod-title>strong{font-size:12px}.tier strong{font-size:12px}.catalog-item strong{font-size:11px}.item-list{max-height:calc(100vh - 405px)}.item-stage::before{opacity:.48}@media(max-width:1230px){.mod-title>strong,.tier strong{font-size:11px}.catalog-item strong{font-size:10px}}@media(max-width:1000px){.item-list{max-height:calc(100vh - 430px)}}@media(max-width:760px){.family-filter{margin-bottom:12px}.item-list{max-height:180px}.catalog-item strong{font-size:9px}}@media(max-width:480px){.mod-title>strong{font-size:10px}.tier strong{font-size:9px}}

.affix-table-head{position:sticky;top:0;z-index:2}

.search-label>span{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.catalog-item strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.notice-visible{position:fixed;bottom:22px;right:25px;z-index:20;max-width:min(430px,calc(100vw - 30px));display:flex;align-items:center;gap:15px;margin:0;box-shadow:0 8px 30px #0009;padding:13px 16px}.notice-visible span{flex:1}.notice-visible button{flex-shrink:0;margin-left:auto;border:0;background:none;padding:0 3px;color:#b7a175;font-size:18px}

/* Guidance stays beside the decision it explains; tables retain fixed tier columns. */
.quick-guide{border-top:1px solid #5c4a2e;border-bottom:1px solid #3d3527;background:#1b1914;margin-bottom:12px;padding:0 18px;color:#c9bfa9}
.quick-guide>summary{cursor:pointer;padding:13px 0;font-size:12px}.quick-guide>summary>span{float:right;font-size:10px;color:#b49a6b}
.quick-guide ol{display:grid;grid-template-columns:1fr 1fr;gap:15px 35px;padding:6px 0 5px 22px;font-size:12px;line-height:1.7}.quick-guide li::marker{color:#c7a769}.quick-guide strong{color:#e2d1b0;font-weight:600}
.quick-guide dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;border-top:1px solid #403628;padding-top:18px}.quick-guide dt{color:#d8be8e;font-size:12px}.quick-guide dd{margin:4px 0 0;color:#a99c86;font-size:11px}.quick-guide>button{margin:2px 0 18px}
.session-bar{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#a1947b;margin:0 0 12px}.session-bar span:last-child{color:#857c6a}
.configuration-title small{font-size:9px;line-height:1.6;color:#a69a85}.configuration{flex-wrap:wrap}.configuration-title{min-width:120px}
.odds-content{display:block}.odds-content p{font-size:11px;color:#b2a48b}.odds-content .range-hint{font-size:10px;margin:8px 0 14px;color:#b09b76}.odds-sub,.odds-grid small,.roll-fields label{font-size:10px}.odds-content .odds-sub{line-height:1.6}.odds-grid strong{font-size:23px}
.current-roll{padding:10px 0;border-top:1px solid #493a25;border-bottom:1px solid #493a25;font-size:11px;color:#b7a483}.current-roll strong{color:#dfc99f}.current-roll small{display:block;font-size:10px;margin-top:6px}
.blocked-help{border-left:2px solid #b39661;background:#35281950;padding:12px;margin:14px 0;font-size:11px;color:#d8b685}.blocked-help p{margin:6px 0 10px}.blocked-help button{font-size:10px;width:100%;padding:9px 7px}.blocked-help small{display:block;margin-top:8px;font-size:10px;color:#c0a788}
.actions-stack small{font-size:10px;color:#b1a087;line-height:1.6;margin:-2px 0 10px}.actions-stack button{min-height:40px}.odds-content details{font-size:11px;line-height:1.6}.budget-help label{display:block;margin:14px 0 10px;color:#b7a484}.budget-help input{display:block;margin-top:6px;width:100%;font-size:12px}.budget-help>strong{color:#e0c28a;font:20px var(--serif)}
.material-option{min-width:0;background:#19160f;border:1px solid #3b3122;display:flex;flex-direction:column}.material-option .material{border:0;width:100%;flex:1}.material-option .material:disabled{opacity:.65}.material small{font-size:10px;line-height:1.5}.material b{display:block;font-size:10px;font-weight:500;color:#bfa16c;margin-top:10px}.material-reason{padding:9px 10px;margin:0;font-size:10px;line-height:1.6;border-top:1px solid #362c1d;color:#9eac93}.material-reason.blocked{color:#ccb38c;background:#2d2518}
.material-note{font-size:11px;color:#b3a48c}.selected-material{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.selected-material>p{font-size:12px;color:#ac9b7d;line-height:1.8}.text-button{background:none;border:0;padding:0;color:#d7b880;text-decoration:underline}.reforge-label{font-size:12px;color:#cbb78e;display:block;margin:10px 0 18px}.reforge-label select{display:block;width:100%;margin-top:8px;font-size:12px}
.plan-block>small{font-size:11px}.plan-block .cost-line{font-size:11px}.history-entry small{font-size:10px;color:#a09073}.configuration-title small,.mode-badge{line-height:1.6}
#budget-chance{color:#e0c28a;font:20px var(--serif)}
.configuration-title{display:block}.tier-explanation{font-size:11px;color:#a99b84;line-height:1.7;margin:0 0 13px}.tier-explanation strong{font-weight:500;color:#c9b58d}
@media(max-width:1230px){.currency-grid,.rune-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.session-bar{flex-wrap:wrap;font-size:10px}.quick-guide>summary>span{display:none}.quick-guide ol,.quick-guide dl{grid-template-columns:1fr}.configuration-title{flex:1 0 100%}.configuration-title br{display:none}.configuration-title small{margin-left:9px}.selected-material{gap:12px}.selected-material>p{font-size:11px}}
@media(max-width:480px){.quick-guide{padding:0 13px}.quick-guide>summary{font-size:11px}.work-tabs{gap:15px}.tier strong{font-size:9px}.material{font-size:11px}.mod-toolbar{flex-wrap:wrap}.check{font-size:9px}.item-panel-bar{flex-wrap:wrap;gap:5px}}
@media(max-width:480px){.affix-table-head{display:block;font-size:9px}.affix-table-head>div{display:none}.mod-row{grid-template-columns:minmax(0,1fr);gap:9px;padding:13px 10px}.mod-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,45%);gap:2px 10px}.mod-title>.side-tag,.mod-title>strong{grid-column:1}.mod-title>strong{font-size:12px}.side-tag{font-size:8px}.coin-link,.no-currency{grid-column:2;grid-row:1/3;align-self:center;margin:0}.coin-link span{font-size:9px}.coin-link img{width:22px;height:22px;flex-shrink:0}.tier b{display:block;font-size:9px;font-weight:400;color:#aa9675;margin-bottom:5px}.tier strong{font-size:11px}.tier small{font-size:9px}.tier{padding:6px 0}.tiers{gap:2px}.tier.locked{opacity:.55}}
/* balance v1 */
.vitals{flex-wrap:wrap;row-gap:12px}.state-badges{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 12px}.state-badges:empty{display:none}.state-badge{font-size:9px;letter-spacing:.6px;padding:3px 8px;border:1px solid #4a3f2c;color:#c9b287;background:#1c1811}.state-badge.corrupt{color:#c9a0f0;border-color:#5b3a7a;background:#21162c}.state-badge.lock{color:#e0a060;border-color:#6b4a26}.state-badge.set{color:#40d040;border-color:#2c6a2c;background:#122012}.state-badge.unique{color:#e08a2e;border-color:#6d4418}.state-badge.awake{color:#9cc4f0;border-color:#34507a}.hero-affix.locked{color:#e0a060}.lock-mark{font-style:normal;font-size:8px;letter-spacing:.8px;text-transform:uppercase;color:#e0a060;border:1px solid #6b4a26;padding:1px 5px;margin-left:4px}.material small.material-odds{color:#bca47a;margin-top:8px}.rarity-dot{display:inline-block;width:6px;height:6px;margin-right:9px;background:var(--rarity);transform:rotate(45deg);vertical-align:middle}.guide-icon{width:22px;height:22px;object-fit:contain;vertical-align:middle;margin-right:6px}

/* Approved Memorias: fit alpha bounds like the game's one-cell card, without rotating or stretching the artwork. */
.catalog-art:has(.memory-art){margin:4px 3px 5px}
.catalog-art .memory-art{padding:0;transform:none}
.memory-material-art{display:block;width:68px;height:68px;flex:none;margin:0 auto 10px;background:radial-gradient(ellipse at 50% 65%,#30281e80,#0b0b0a);box-shadow:inset 0 0 0 1px #3c3428}
.memory-material-art .memory-art{display:block;width:100%;height:100%}
.memory-guide-art{display:inline-block;width:30px;height:30px;vertical-align:middle;margin-right:6px}
.memory-guide-art .memory-art{width:100%;height:100%;display:block}

.topbar nav .craft-nav{height:100%;display:inline-flex;align-items:center;gap:8px;border:0;border-bottom:2px solid transparent;background:none;padding:0 3px;color:#a29b8e;font-size:12px;text-decoration:none;white-space:nowrap;line-height:1;box-sizing:border-box}.topbar nav .craft-nav:hover{color:#e8d7b1;border-bottom-color:transparent}.topbar nav .craft-nav:focus-visible{outline:2px solid #d0b880;outline-offset:4px}.topbar nav .craft-nav .craft-icon{width:14px;height:14px;flex:none;opacity:.9}.topbar nav .craft-nav span{padding-left:0;font-size:inherit;color:inherit}

/* Extended movement affixes have seven real tiers. */
#mods-list .tiers,#mods-list .affix-table-head>div{grid-template-columns:repeat(var(--tier-columns,5),minmax(42px,1fr))}
#mods-list{overflow-x:auto}
#mods-list .mod-row,#mods-list .affix-table-head{min-width:650px}
