:root{color-scheme:dark;--bg:#181d19;--rail:#1c221d;--panel:#232a23;--surface:#29312a;--line:#3a4539;--text:#f1efdf;--muted:#b3beaa;--accent:#d9bf82;--moss:#aab991;--dark:#252416;--radius:14px;--control-height:42px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button,select{cursor:pointer}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent)}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 13px;font-weight:650}button:hover,.button:hover{filter:brightness(1.13)}button[disabled]{opacity:.5;cursor:default}input,textarea,select{min-width:0;background:#1a211b;border:1px solid var(--line);border-radius:8px;padding:9px 11px}input::placeholder,textarea::placeholder{color:#a8b2a1}input[type="number"]{width:76px}textarea{resize:vertical}label{display:grid;gap:6px;color:var(--muted)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:500}h1{font-size:clamp(35px,5vw,61px);line-height:1.05;letter-spacing:-.045em;margin:6px 0 12px}h2{font-size:27px;line-height:1.2}h3{font-size:21px;line-height:1.25}small,.muted{color:var(--muted)}svg.i{width:18px;height:18px;flex:none;vertical-align:middle}a[data-view] span,.rail-button span{display:flex}.skip{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:20;background:var(--accent);color:#161915;padding:9px}.skip:focus{transform:none}.shell{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:100vh}.rail{display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh;background:var(--rail);border-right:1px solid var(--line);padding:28px 16px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:18px/1.07 Georgia,serif;padding:0 5px}.brand strong{font-weight:normal;color:var(--accent);font-size:23px}.rail-label,.eyebrow,.game,.section-kicker,.map-label{letter-spacing:.14em;font-size:10px;font-weight:750;color:var(--moss)}.rail-label{margin:15px 8px -12px}.rail nav{display:grid;gap:5px}.rail nav a,.rail-button{display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:11px 10px;text-decoration:none;color:var(--muted);border:1px solid transparent;border-radius:8px}.rail nav a[aria-current="page"]{color:var(--accent);background:#33372a;border-color:#50533c}.rail nav a:hover,.rail-button:hover{background:#2c362a}.rail-end{display:grid;gap:13px;margin-top:auto;font-size:12px;color:var(--muted)}.rail-button{background:none}.rail-end>a,.rail-note{padding-left:10px}.rail-end>a{text-decoration:none}.rail-end>a:hover{text-decoration:underline}.rail-note{font-size:11px}.rail-note i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px;background:var(--moss)}.work{min-width:0}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:0 clamp(16px,3vw,42px)}.game{display:flex;align-items:center;gap:8px}.search-top{display:flex;align-items:center;gap:9px;background:var(--rail);border:1px solid var(--line);border-radius:9px;padding:0 10px;width:min(310px,48vw)}.search-top input{width:100%;background:none;border:0;padding:8px 1px}.search-top:focus-within{outline:1px solid var(--accent)}.search-top input:focus-visible{outline:none}main{max-width:1500px;margin:auto;padding:33px clamp(16px,3vw,42px) 22px;min-height:calc(100vh - 145px)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 25px}.page-head p{color:var(--muted);max-width:61ch;font-size:15px}.button,.primary{background:var(--accent);border-color:var(--accent);color:var(--dark);white-space:nowrap}.button{display:inline-flex;gap:8px;align-items:center;border-radius:8px;padding:9px 13px;text-decoration:none;font-weight:700}.quiet{background:transparent}.text-link{color:var(--accent);text-underline-offset:3px}.text-link svg.i{width:14px;height:14px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(295px,1fr);gap:16px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.padded,.panel-head{padding:17px 18px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head p{margin-top:4px;color:var(--muted)}.stack{display:grid;gap:15px}.section-kicker{margin-bottom:6px}.map-card{overflow:hidden}.map-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 18px 13px}.map-tools select{max-width:100%}.map-scroll{position:relative;overflow:auto;background:#1a221b;overscroll-behavior:contain}.map-plane{width:100%;position:relative;isolation:isolate;min-width:0}.map-plane>img{width:100%;height:auto;display:block}.map-plane.placing,.map-plane.placing *{cursor:crosshair}.pin{position:absolute;z-index:3;transform:translate(-50%,-50%);padding:0;width:35px;height:35px;border:1px solid #e1d59f;border-radius:50%;background:#344630;color:#fff3c7;box-shadow:0 2px 8px #080d09cc}.pin[data-kind="base"]{background:#755938}.pin[data-kind="note"]{background:#44534f}.pin:hover,.pin:focus-visible{z-index:4}.map-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 17px;color:var(--muted);font-size:12px}.map-foot p{max-width:48ch}.map-zoom button{width:var(--control-height);padding:0}.map-zoom .i{width:15px;height:15px}.pill{font-size:11px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#2a3429;color:#cfdbc3;padding:3px 7px;border-radius:100px}.pill button{border:0;padding:0;background:none}.project-mini h3{margin:5px 0}.project-mini .progress{margin:13px 0 8px}.progress{height:6px;border-radius:9px;background:#3b4539;overflow:hidden}.progress span{height:100%;display:block;background:#a4b78a}.line-list{margin:11px 0 0;padding:0;list-style:none}.line-list>li{padding:8px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px}.material-short{display:flex;gap:8px;align-items:center;text-align:left;font-weight:600}.material-short .i{color:var(--moss)}.line-list strong{color:var(--accent);white-space:nowrap}.quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.empty{padding:13px 0;color:var(--muted)}.empty strong{color:var(--text)}.location-list{display:grid;gap:6px;margin-top:10px;max-height:260px;overflow:auto}.location-list button{justify-content:flex-start;text-align:left}.location-list button .i{color:var(--accent)}.library-head{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:15px}.library-head input{flex:1;min-width:180px}.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}.resource-card{display:grid;align-content:start;gap:9px}.resource-card p{color:var(--muted)}.resource-card .quick-actions{margin-top:3px}.resource-card small{display:block}.recipe-inputs{color:var(--muted);font-size:12px}.recipe-lines{margin:9px 0 0;padding:0;list-style:none}.recipe-lines li{padding:9px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}.recipe-lines .recipe-name{display:block;color:var(--accent);text-align:left;background:none;border:0;padding:0}.inventory{margin-top:10px}.inventory-row{display:grid;grid-template-columns:minmax(0,1fr) 66px 52px;gap:8px;align-items:center;border-top:1px solid var(--line);padding:8px 0}.inventory-row input{width:100%;padding:6px}.inventory-row strong{text-align:right;color:var(--accent)}.inventory-title{font-size:11px;color:var(--muted);border:0;padding:0 0 6px}.stations{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.stations summary{cursor:pointer;color:var(--accent)}.stations ul{padding-left:21px}.stations li{margin:4px 0}.notice-block{background:#303628;border:1px solid #4b573e;border-radius:8px;padding:9px 11px;color:#d2ddc7;font-size:12px;margin-top:10px}.project-toolbar{margin-bottom:14px}.dialog-title{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:13px}dialog{width:min(480px,calc(100% - 24px));max-height:calc(100% - 26px);overflow:auto;background:var(--panel);color:var(--text);border:1px solid #596751;border-radius:14px;padding:19px;box-shadow:0 18px 70px #090e0add}dialog::backdrop{background:#0c110dcc}dialog form{display:grid;gap:11px}dialog p{color:var(--muted)}.icon-btn{width:34px;height:34px;padding:0}.icon-btn .i{width:15px;height:15px}.danger{color:#f0b8ac}.modal-actions{margin-top:6px;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.form-error{color:#ffbbaf}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#notice{display:none;position:fixed;right:16px;bottom:16px;z-index:5;background:#343e2e;border:1px solid #78866b;color:#f6f0d5;padding:11px 15px;border-radius:8px;max-width:min(430px,calc(100vw - 32px));box-shadow:0 6px 28px #0009}#notice:not(:empty){display:block}footer{max-width:1500px;margin:auto;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:13px clamp(16px,3vw,42px) 21px;color:var(--muted);font-size:10px;letter-spacing:.06em}footer span{letter-spacing:normal}
@media(max-width:1070px){.shell{grid-template-columns:185px minmax(0,1fr)}.rail{padding-inline:11px}.grid{grid-template-columns:minmax(0,1fr)}.grid>.stack{grid-template-columns:repeat(auto-fit,minmax(min(100%,285px),1fr));align-items:start}}
@media(max-width:650px){.shell{display:block}.rail{height:auto;position:static;gap:11px;padding:10px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand img{width:32px;height:32px}.brand{font-size:15px}.brand strong{font-size:19px}.rail nav{display:flex;gap:4px;flex-wrap:wrap}.rail nav a{padding:7px;font-size:12px;gap:5px}.rail nav .i{width:15px;height:15px}.rail-label,.rail-note,.rail-end>a{display:none}.rail-end{position:absolute;right:10px;top:9px}.rail-button{padding:7px;font-size:11px}.rail-button .i{width:14px;height:14px}.topbar{height:48px;padding:0 12px}.game{font-size:9px;gap:5px}.game .i{width:13px;height:13px}.search-top{font-size:12px}.search-top .i{width:14px;height:14px}main{padding-top:21px}.page-head{align-items:flex-start;flex-direction:column;margin-bottom:17px}.page-head p{font-size:14px}.panel-head,.padded{padding:13px}.map-tools{padding-inline:13px}.map-tools button,.map-tools select{font-size:12px}.map-foot{padding:9px 13px}.pin{width:31px;height:31px}.pin .i{width:15px;height:15px}.map-label{font-size:9px}footer{font-size:9px}}

.map-scroll{max-height:68vh}



.world-map{height:clamp(370px,62vh,650px);background:#1c231f;isolation:isolate}
.world-map.leaflet-container{font-family:system-ui,sans-serif}
.world-map:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.atlas-place-label{position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:max-content;max-width:clamp(90px,16vw,175px);padding:2px 6px;border-radius:5px;background:#1b211de0;color:#fff6dc;text-align:center;font:650 12px/1.2 system-ui,sans-serif;visibility:hidden}
.atlas-label-region .atlas-place-label{border:1px solid #d9bf8299;color:#ffe4a8;font-size:clamp(10px,1.25vw,15px);font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.atlas-label-landmark .atlas-place-label{transform:translate(-50%,calc(-100% - 12px));background:#263429ed;color:#e8f0de;font-size:11px}
.world-map.placing,.world-map.placing .leaflet-interactive{cursor:crosshair}
.world-pin{display:grid;place-items:center;border-radius:50%;background:#3b553b;border:2px solid #f3e4ab;color:#fff4cd;box-shadow:0 2px 7px #1119}
.world-pin-base{background:#795a38}.world-pin-note{background:#465953}
.world-pin:focus-visible{outline:2px solid white;outline-offset:3px}

.world-hint{padding:8px 17px;background:#303a2e;color:#e4e9d3;font-size:12px}
.map-credit{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.map-credit a{white-space:nowrap}
.map-instructions small{display:block}
.world-legend{border-top:1px solid var(--line);padding:9px 17px}.world-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--dot);margin-right:3px}
.world-map .leaflet-tooltip{background:#242c24;border-color:#617057;color:#f1efdf;font-size:12px}
.world-map .leaflet-tooltip-top:before{border-top-color:#617057}
@media(max-width:650px){.world-map{height:clamp(350px,62vh,550px)}}





.world-map .leaflet-popup-content-wrapper,.world-map .leaflet-popup-tip{background:#272f27;color:var(--text)}
.world-map .leaflet-popup-content p{margin:4px 0}.world-map .leaflet-popup-content small{color:var(--muted)}
.catalogue-pages{margin:10px 0}.catalogue-detail{margin-top:12px}
.resource-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}



.atlas-heading .page-head{margin-bottom:18px}
.atlas-heading h1{font-size:clamp(32px,4vw,52px);margin-bottom:6px}
.atlas-grid{grid-template-columns:minmax(0,2.25fr) minmax(255px,1fr)}
.map-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 14px}
.map-bar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.map-expedition-controls{padding:8px 14px;border-top:1px solid var(--line)}
.map-expedition-controls select{min-height:var(--control-height);max-width:min(100%,300px)}
.world-map .expedition-map-stop{display:grid;place-items:center;border:2px solid #ffe3a0;border-radius:50%;background:#393628;color:#fff3cc;font-size:13px;font-weight:750;box-shadow:0 2px 6px #151810b3}
.world-map .expedition-map-stop:focus-visible{outline:2px solid white;outline-offset:2px}
.map-search-button{min-width:180px}
.map-place-toggle[aria-pressed="true"]{background:#373625;border-color:var(--accent);color:#f4e3b4}
.compact{padding:6px 9px;font-size:12px}
.compact .i{width:15px;height:15px}
.world-legend{border-top:1px solid var(--line);padding:8px 14px}
.clear-map{margin-left:auto}
.marker-filter{max-width:100%;margin-top:8px}
.archive-pin{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px}
.archive-pin button{overflow-wrap:anywhere}
.finder{display:grid;gap:10px}
.finder-results{display:grid;gap:6px;max-height:min(43vh,390px);overflow:auto;padding:4px 5px 5px}
.finder-results.compact-results{max-height:155px}
.finder-results:empty{display:none}
.finder-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.finder-categories button{justify-content:flex-start;text-align:left;font-size:13px}
.finder-categories i{width:8px;height:8px;border-radius:50%;background:var(--dot);flex:none}
.finder-choice{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-radius:8px;padding:8px 11px;background:var(--surface);color:var(--text)}
.finder-choice strong,.finder-choice small{display:block;overflow-wrap:anywhere}
.finder-choice input[type="checkbox"]{margin:0;accent-color:var(--accent)}
label.finder-choice{justify-content:flex-start;cursor:pointer}
.finder-toolbar button[aria-pressed="true"]{border-color:var(--accent);color:var(--accent)}
.linked-material{border-left:2px solid var(--moss);padding:4px 8px;background:#2a3429}
.control-row{align-items:end}
.control-row :is(button,input,select),.map-bar button{min-height:var(--control-height)}
.project-toolbar label{width:min(180px,100%)}
@media(max-width:1070px){.atlas-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){
  .atlas-heading .page-head{margin-bottom:12px}
  .map-bar{padding:9px;gap:7px}.map-search-button{flex:1;min-width:0;justify-content:flex-start}
  .map-find-controls{flex:1 1 100%}
  .map-bar-actions{justify-content:space-between;flex:1 1 100%}
  .map-bar-actions>.quiet{padding-inline:9px}
  .map-zoom{gap:4px}
  .world-legend{padding-inline:9px}
  .finder-results{max-height:45vh}
}
@media(max-width:360px){.finder-categories{grid-template-columns:1fr}}

:root{--art-surface:#b6a98c}
.wiki-art{--art-size:24px;display:inline-grid;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;overflow:hidden;width:var(--art-size);height:var(--art-size);flex:none;border-radius:6px;background:#181f1b;vertical-align:middle}
.wiki-art>img,.wiki-art-fallback{grid-area:1/1}
.wiki-art img{display:block;width:88%;height:88%;object-fit:contain;opacity:0}
.wiki-art.has-art{background:var(--art-surface)}
.wiki-art.has-art img{opacity:1;filter:drop-shadow(0 1px 1px #211b1660)}
.wiki-art.has-art .wiki-art-fallback{visibility:hidden}
.wiki-art-fallback{color:var(--moss)}
.wiki-art--tile{--art-size:54px;background:#1c251e;border:1px solid var(--line);border-radius:9px}
.wiki-art--large{--art-size:82px;background:#1c251e;border:1px solid var(--line);border-radius:9px}
.wiki-art--map{--art-size:18px;background:transparent}
.wiki-art--map:not(.has-art){display:none}
.world-pin > .wiki-art,.pin > .wiki-art{border-radius:50%}
.item-portrait,.art-label{display:flex;align-items:center;gap:8px;min-width:0}
.item-portrait{gap:13px;align-items:start}
.item-portrait .text-link{display:inline-block;margin-top:5px;font-size:12px}
.map-art-label i{margin:0}
.map-art-label>.has-art+i{display:none}
.world-map .leaflet-popup-content .wiki-art{--art-size:36px}

.project-active-badge{display:inline-flex;align-items:center;gap:4px;color:#d6e8c7;background:#314536;border:1px solid #52684f;border-radius:99px;padding:3px 8px;font-size:11px;font-weight:700;white-space:nowrap}
.project-active-badge .i{width:12px;height:12px}
.project-mini h3,.current-project-row strong{overflow-wrap:anywhere}
.map-recipe-control{margin-top:10px}
.map-recipe-control select{width:100%;min-height:var(--control-height)}
.project-material-row .material-short{min-width:0;padding:6px 8px;overflow-wrap:anywhere}
.project-material-row .material-short[aria-pressed="true"]{background:#373625;border-color:var(--accent);color:#f4e3b4}
.project-material-actions{display:flex;gap:6px;flex:none;align-items:center;font-size:12px}
.project-material-extra{margin-top:4px}
.project-material-actions .text-link,.inventory-note .text-link{padding:4px 3px}
.project-material-actions .text-link:hover,.resource-card-link:hover{color:#f5ddb0}
.inventory-note{font-size:12px;gap:4px}
.resource-detail{max-width:780px}
.resource-detail .item-portrait p{color:var(--muted)}
.modal-actions>.text-link{align-self:center}
.resource-card-link{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-weight:650;text-decoration:none}
.popup-resource-links{display:grid;gap:4px;margin-top:6px;padding-top:6px;border-top:1px solid #53614e}
.popup-resource-links small{display:block}
.world-map .leaflet-popup-content .text-link{color:var(--accent);overflow-wrap:anywhere}

.topbar-actions{display:flex;align-items:center;gap:10px;min-width:0}
.global-finder{position:relative;min-width:0}
.global-search-results{position:absolute;z-index:12;inset-block-start:calc(100% + 8px);inset-inline-end:0;width:min(410px,calc(100vw - 24px));max-height:min(65vh,480px);overflow:auto;padding:12px;box-shadow:0 14px 30px #0008}
.global-search-group+.global-search-group{border-top:1px solid var(--line);margin-top:9px;padding-top:9px}
.global-search-group h2{display:flex;justify-content:space-between;margin:0 0 4px;padding:2px 5px;color:var(--muted);font:700 12px system-ui,sans-serif}
.global-search-group ul{list-style:none;margin:0;padding:0}
.global-search-group button{margin-top:5px}
.global-search-link{display:flex;align-items:center;gap:8px;padding:6px;border-radius:6px;color:var(--text);text-decoration:none;overflow-wrap:anywhere}
.global-search-link:hover,.global-search-link:focus-visible{background:var(--surface);color:var(--accent)}
.language-select{height:var(--control-height);flex:none}
footer b{font-weight:inherit}
@media(max-width:650px){
  .topbar .game{display:none}
  .topbar-actions{position:relative;width:100%;gap:8px}
  .topbar-actions .global-finder{position:static;flex:1}
  .topbar-actions .search-top{width:100%;min-width:0}
  .global-search-results{inset-inline-start:0;inset-inline-end:auto;width:100%}
  .language-select{height:36px;font-size:12px;padding-block:6px}
}
.topbar-actions .search-top{height:var(--control-height)}
@media(max-width:650px){.topbar-actions .search-top{height:36px}}

.compare-link{gap:8px;align-items:center;min-height:var(--control-height)}
.compare-link .i{color:var(--accent)}
.compare-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.compare-slot,.compare-recipe,.recipe-project-form{display:grid;align-content:start;gap:10px;min-width:0}
.compare-slot h2,.compare-recipe h3{overflow-wrap:anywhere}
.compare-slot .row{margin-top:2px}
.compare-slot button{min-height:var(--control-height)}
.compare-stats,.compare-materials{margin-top:16px}
.compare-materials>h2{margin:0 0 9px}
.compare-stats{overflow:hidden}
.compare-stats>h2,.compare-note{padding:12px 16px}
.compare-stats table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left}
.compare-stats th,.compare-stats td{padding:8px 12px;border-top:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.compare-stats thead{background:var(--surface)}
.compare-stats thead th:first-child{width:28%}
.compare-stats tbody th{color:var(--muted);font-weight:600}
.compare-stats tbody tr:nth-child(even){background:#ffffff04}
.compare-stats td{font-variant-numeric:tabular-nums}
.compare-stats ul{margin:0;padding-left:16px}
.compare-variant select,.recipe-project-form select{width:100%;min-height:var(--control-height)}
.recipe-actions{align-items:center}
.work{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='.055'/%3E%3C/svg%3E");
}
main[data-section="mapa"]{--section-art:url("art/mapa.webp");--section-art-position:50% 46%}
main[data-section="proyectos"]{--section-art:url("art/proyectos.webp");--section-art-position:50% 51%}
main[data-section="recursos"]{--section-art:url("art/recursos.webp");--section-art-position:50% 56%}
main[data-section="bestiario"]{--section-art:url("art/bestiario.webp");--section-art-position:50% 50%}
main[data-section="misiones"]{--section-art:url("art/misiones.webp");--section-art-position:50% 55%}
main[data-section="habilidades"]{--section-art:url("art/habilidades.webp");--section-art-position:50% 46%}
main[data-section="hechizos"]{--section-art:url("art/hechizos.webp");--section-art-position:50% 52%}
main[data-section="cuaderno"]{--section-art:url("art/cuaderno.webp");--section-art-position:50% 54%}
.page-head{position:relative;isolation:isolate}
.page-head::before{
  content:"";position:absolute;z-index:-1;inset:-23px 0 -10px 26%;
  border-radius:12px;pointer-events:none;
  background-image:linear-gradient(90deg,var(--bg),#181d19e0 21%,#181d1973 55%,#181d1940 79%,#181d1966 93%,var(--bg)),var(--section-art,none);
  background-position:center,var(--section-art-position,center);background-size:cover;
  mask-image:linear-gradient(0deg,transparent,#000 23%,#000 79%,transparent);
}
main[data-route^="#recursos/"] .page-head::before{inset-inline-start:43%;opacity:.55}
.page-head>.text-link{text-shadow:0 1px 5px var(--bg)}
@media(max-width:650px){
  .page-head::before{inset:-12px -4px -5px 19%;background-position:center,right center;opacity:.75}
  main[data-route^="#recursos/"] .page-head::before{inset-inline-start:31%;opacity:.45}
}
.compare-ingredients{margin:0}
.beast-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr))}
.beast-card{overflow:hidden;display:flex;flex-direction:column}
.beast-card-link{display:block;flex:1;color:var(--text);text-decoration:none}
.beast-card-link:hover h3{color:var(--accent)}
.beast-card-link:focus-visible{outline-offset:-2px}
.beast-card-art{background:radial-gradient(ellipse at 50% 72%,#384436,#1b211d 76%);border-bottom:1px solid var(--line)}
.beast-card-copy{padding:14px;display:grid;gap:6px}
.wiki-art--beast-card,.wiki-art--beast-detail{display:grid;width:100%;height:144px;background:transparent}
.wiki-art--beast-card.has-art{background:transparent}
.wiki-art--beast-card img,.wiki-art--beast-detail img{filter:drop-shadow(0 4px 6px #0d120d)}
.beast-portrait>.wiki-art.has-art::before{
  content:"";
  grid-area:1/1;
  place-self:stretch;
  background:radial-gradient(ellipse at 50% 58%,#827044b3, #58634866 46%,transparent 78%);
  opacity:0;
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  .beast-portrait:hover>.wiki-art.has-art::before{opacity:1}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .beast-portrait>.wiki-art.has-art::before{transition:opacity .35s ease}
  .beast-portrait[data-breathing]:hover>.wiki-art.has-art>img{
    transform-origin:50% 88%;
    animation:beast-breath 3.8s ease-in-out infinite;
  }
}
@keyframes beast-breath{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.012,var(--beast-breath-height,1.03))}
}
.beast-detail{max-width:900px}
.beast-profile{display:grid;grid-template-columns:minmax(140px,25%) minmax(0,1fr);gap:18px;align-items:start}
.wiki-art--beast-detail{--beast-breath-height:1.045;height:235px;background:radial-gradient(ellipse at 50% 75%,#384436,#1b211d 82%);border:1px solid var(--line)}
.wiki-art--beast-detail.has-art{background:radial-gradient(ellipse at 50% 75%,#384436,#1b211d 82%)}
.beast-profile-copy{display:grid;gap:13px}
.beast-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:8px;margin:0}
.beast-stats div{background:var(--surface);padding:7px 10px;border-radius:7px}
.beast-stats dt{font-size:11px;color:var(--muted)}
.beast-stats dd{margin:2px 0 0}
.beast-actions{margin-top:2px}
.beast-loot{width:100%;border-collapse:collapse;text-align:left;margin-top:10px}
.beast-loot th,.beast-loot td{padding:8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.beast-loot tbody th{font-weight:500}
.beast-sources ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:3px 15px}
.beast-sources small{display:block}
@media(max-width:650px){
  .beast-profile{grid-template-columns:1fr;gap:13px}
  .wiki-art--beast-detail{height:165px}
  .beast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .beast-card-copy{padding:9px}
  .beast-card h3{font-size:16px;overflow-wrap:anywhere}
  .wiki-art--beast-card{height:115px}
}
.compare-ingredients .art-label{overflow-wrap:anywhere}
.compare-recipe .primary{justify-self:start;min-height:var(--control-height);white-space:normal}
@media(max-width:650px){
  .compare-columns{gap:8px}
  .compare-slot .art-label{align-items:flex-start;flex-wrap:wrap}
  .compare-slot h2,.compare-recipe h3{font-size:18px}
  .compare-slot button,.compare-recipe .primary{font-size:12px;padding-inline:8px}
  .compare-stats th,.compare-stats td{padding:7px 6px;font-size:12px}
  .compare-ingredients .wiki-art{display:none}
}

.guide-card,.guide-detail,.guide-unlock,.vault-facts,.guide-spoilers{display:grid;align-content:start;gap:10px}
.guide-card h2{font-size:22px}
.guide-card>.pill{justify-self:start}
.guide-card .section-kicker{margin:0}
.guide-title{text-decoration:none}
.guide-title:hover{text-decoration:underline;text-underline-offset:4px}
.guide-original{display:block;margin-top:2px}
.guide-actions{gap:8px 13px}
.guide-actions .resource-card-link,.guide-unlock .resource-card-link{gap:7px}
.guide-map-index{align-self:center;gap:8px}
.guide-detail{gap:18px}
.guide-detail h2{font-size:20px;margin-bottom:4px}
.guide-detail .stations{margin-top:0}
.guide-spoilers{margin-top:10px;justify-items:start}
.guide-spoilers ul{margin:0}
.guide-unlock{margin:12px 0;padding:12px;background:#303628;border:1px solid #4b573e;border-radius:8px}
.guide-unlock h3{font-size:19px}
.guide-unlock .row,.guide-unlock p + .text-link{margin-top:4px}
.guide-runes{margin-top:0}
.guide-runes .art-label{white-space:normal}
.vault-facts p{margin-top:2px}
.world-map .vault-facts{gap:6px;margin:8px 0}
.world-map .guide-actions{margin-bottom:8px}
.compare-tabs{margin-bottom:13px}
.compare-note .text-link{display:inline-block;margin-inline-start:8px}
.compare-tabs [aria-current="page"]{color:var(--accent);border-color:#8d794c;background:#33372a}
.comparison-modes{justify-content:flex-end}
@media(max-width:650px){.comparison-modes{justify-content:flex-start}.guide-map-index{align-self:flex-start}}
@media(min-width:651px){.rail{overflow-y:auto}}
.site-credit{font-size:11px;line-height:1.55;color:var(--muted);letter-spacing:normal}
.site-credit strong{color:var(--accent)}
.rail-credit{border-top:1px solid var(--line);padding:10px 10px 0}
.footer-credit{display:none}
@media(max-width:650px){
  .rail-credit{display:none}
  .footer-credit{display:block;flex-basis:100%;margin-top:4px}
}
.credits-header,.credits-main,.credits-footer{width:100%;max-width:1100px;margin-inline:auto}
.credits-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px clamp(16px,3vw,42px);border-bottom:1px solid var(--line)}
.credits-main{min-height:0;--section-art:url("art/mapa.webp");--section-art-position:50% 46%}
.credits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.credits-card{display:grid;align-content:start;gap:9px}
.credits-card p{color:var(--muted)}
.credits-links{display:grid;gap:5px;margin:1px 0 0;padding-inline-start:1.2em}
.credits-detail{font-size:12px;overflow-wrap:anywhere}
.credits-license{margin-top:15px}
.credits-footer{align-items:center}
@media(max-width:700px){.credits-grid{grid-template-columns:minmax(0,1fr)}}
.wiki-art--guide{--art-size:52px;border:1px solid var(--line);border-radius:9px}
.guide-art-title{display:flex;align-items:center;gap:12px;min-width:0}
.guide-art-title h2,.guide-art-title h3{margin:0;overflow-wrap:anywhere}
.skill-section+.skill-section{margin-top:23px}
.skill-section>h2{margin-bottom:10px}
.skill-card p,.skill-detail p{color:var(--muted)}
.skill-detail{display:grid;align-content:start;gap:12px}
.skill-detail>.text-link{justify-self:start}
.skill-unlocks{margin-top:0}
.skill-unlocks .wiki-art--tile{--art-size:39px}
.skill-unlock-status{display:grid;gap:4px;justify-items:end;text-align:right;flex:none}
.skill-milestones p{margin-top:4px}
.skill-requirement{justify-self:start;gap:7px;text-decoration:none}
.skill-requirement:hover{color:var(--accent);text-decoration:underline}
.skill-requirement .wiki-art{--art-size:18px}
#skill-level-form input{width:90px}

/* Notebook tools and workshop controls */
.notebook-tabs { margin: 0 0 16px; }
.notebook-tabs a[aria-current="page"] { border-color: var(--accent); color: var(--accent); background: #373626; }
.notebook-controls { margin-bottom: 14px; }
.fieldbook-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; align-items: start; }
.fieldbook-panel { display: grid; gap: 12px; }
.fieldbook-skills, .fieldbook-stations, .loadout-slot-fields {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 12px;
}
.fieldbook-stations { margin-top: 10px; }
.fieldbook-skills input, .loadout-slot-fields select, .loadout-recipe-choice select { width: 100%; min-width: 0; }
#loadout-new-project[hidden] { display: none; }
.choice-stack { display: grid; gap: 8px; padding-block: 7px; }
fieldset.choice-stack { border: 1px solid var(--line); border-radius: 8px; padding: 10px; }
.check-label { display: flex; align-items: center; gap: 8px; width: fit-content; cursor: pointer; }
.check-label input { appearance: auto; margin: 0; width: 16px; height: 16px; min-height: 0; padding: 0; accent-color: var(--accent); }
.fieldbook-links small, .expedition-kit small, #expedition-nearby small, .fieldbook-panel small { display: block; color: var(--muted); }
.fieldbook-links .recipe-name { border: 0; background: none; padding: 0; text-align: start; color: var(--accent); }
.favorite-toggle[aria-pressed="true"] { color: var(--accent); border-color: #8c7a4e; }
.favorite-toggle[aria-pressed="true"] .i { fill: currentColor; }
.map-gathered-toggle { margin-top: 9px; font-size: 12px; }
.map-project-names { margin-bottom: 7px; }
.line-list .project-material-row { flex-wrap: wrap; }
.stock-map-button { min-height: 28px; width: 28px; }
.map-material-breakdown { flex: 1 1 100%; font-size: 12px; color: var(--muted); }
.map-material-breakdown ul { margin: 5px 0 0; padding-left: 18px; }
.recipe-lines [data-action="register-craft"] { margin-top: 6px; }
.recipe-readiness .stack { gap: 8px; margin-top: 8px; }
.recipe-readiness ul { margin: 4px 0 0; }
.loadout-card h3 { margin-top: 13px; }
.loadout-card .art-label { min-width: 0; text-align: right; }
.loadout-card .art-label .text-link { overflow-wrap: anywhere; }
.loadout-recipe-choice { padding: 7px 0; border-bottom: 1px solid var(--line); }
.expedition-stops { margin: 0; padding-left: 25px; }
.expedition-stops li { padding-block: 8px; border-top: 1px solid var(--line); }
.expedition-stops li > .row { margin-top: 4px; }
.expedition-kit > li { flex-wrap: wrap; }
.expedition-kit > li > div { flex: 1 1 140px; }
.expedition-quantity input { width: 70px; }
#expedition-nearby .line-list > li { flex-wrap: wrap; }
#fabrication-cost .form-error, #fabrication-cost p { margin-top: 6px; }
#fabrication-cost small { display: block; }
@media (max-width: 950px) { .fieldbook-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 380px) {
  .fieldbook-stations, .loadout-slot-fields { grid-template-columns: minmax(0, 1fr); }
}
