:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#10131a;color:#f4f0e8}*{box-sizing:border-box}body{min-width:320px;margin:0;background:radial-gradient(circle at top left,rgba(240,196,107,.14),transparent 28rem),linear-gradient(135deg,#10131a,#171b24)}button,input,select{font:inherit}.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}.shell{width:min(1420px,100% - 32px);margin:0 auto;padding:28px 0}.toolbar{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.8fr);gap:24px;align-items:end;margin-bottom:18px}.controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(100px,.35fr) auto;gap:10px;align-items:end}.family-filters{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;min-width:0;margin:0;padding:0;border:0}.family-filters legend{margin-bottom:8px;padding:0;color:#aeb5c3;font-size:.78rem}.stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.stat{border:1px solid #384153;border-radius:8px;background:#191e29c7;padding:10px 12px;color:#aeb5c3}.stat strong{color:#fff}.layout{display:grid;grid-template-columns:minmax(340px,1.1fr) minmax(360px,.8fr);gap:18px;align-items:start}.eyebrow{margin:0 0 6px;color:#f0c46b;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}h1{margin:0;font-size:clamp(1.8rem,4vw,3.6rem);line-height:1}label{display:grid;gap:6px;color:#aeb5c3;font-size:.78rem}input,select{min-height:42px;border:1px solid #384153;border-radius:8px;background:#191e29eb;color:#fff;padding:0 12px}.checkbox{min-height:42px;grid-auto-flow:column;align-items:center;justify-content:start;gap:8px;padding:0 12px;border:1px solid #384153;border-radius:8px;background:#191e29eb;color:#fff}.checkbox input{min-height:auto}.family-filter-option{position:relative;display:block;color:inherit;cursor:pointer}.family-filter-option input{position:absolute;width:1px;height:1px;min-height:0;opacity:0}.family-filter-option input:checked+.family-filter-chip{border-color:#f0c46b;background:#f0c46b29;color:#fff}.family-filter-option input:focus-visible+.family-filter-chip{outline:2px solid #f0c46b;outline-offset:2px}.family-filter-chip{min-height:42px;display:inline-flex;align-items:center;border:1px solid #384153;border-radius:8px;background:#191e29eb;padding:5px 10px;font-size:.82rem}.family-filter-chip .family-icon{width:28px;height:28px}.family-label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.family-icon{width:18px;height:18px;flex:0 0 auto;object-fit:contain}.portrait,.ingredient>img{width:72px;height:72px;object-fit:contain;image-rendering:auto}.jp{color:#aeb5c3;font-size:.82rem}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.badge{min-height:24px;border:1px solid #384153;border-radius:999px;padding:3px 8px;color:#aeb5c3;font-size:.75rem}.badge.recipe{border-color:#7ac78d8c;color:#7ac78d}.details{position:sticky;top:18px;border:1px solid #384153;border-radius:8px;background:#191e29eb;padding:18px}.details h2{margin:0;font-size:1rem}.details-head{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}.details-title-row{display:flex;gap:12px;align-items:start;justify-content:space-between}.portrait{width:96px;height:96px}.section-title{margin:22px 0 10px;color:#f0c46b;font-size:.84rem;letter-spacing:.08em;text-transform:uppercase}.info-section{margin-top:18px}.progress-control{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;flex-shrink:0;border:1px solid #384153;border-radius:999px;background:#191e29e6;color:#aeb5c3;padding:4px 8px;font-size:.75rem;cursor:pointer}.progress-control:hover,.progress-control:focus-visible{border-color:#f0c46b;color:#fff;outline:0}.progress-control .progress-label{white-space:nowrap}.detail-progress{margin-top:2px}.scouting-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#2128379e}.scout-status{width:fit-content}.scout-status.scoutable{border-color:#7ac78da6;color:#7ac78d}.scout-status.not-scoutable{border-color:#df8278a6;color:#df8278}.scout-status.unknown{color:#aeb5c3}.location-list,.condition-list{display:grid;gap:8px;padding:0;margin:0;list-style:none}.location-list li,.condition-list li{display:grid;gap:2px;padding:8px 10px;border-left:2px solid rgba(240,196,107,.55);background:#ffffff09}.location-list span,.condition-list .muted,.muted{color:#aeb5c3;font-size:.82rem}.condition-list .badges{margin-top:0}.condition-type{border-color:#f0c46b8c;color:#f0c46b}.condition-empty{padding:12px}.synthesis-launch{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #384153;border-radius:8px;background:#212837b8;color:inherit;text-align:left;cursor:pointer}.synthesis-launch:hover,.synthesis-launch:focus-visible{border-color:#f0c46b;outline:0}.synthesis-launch:disabled{cursor:default;opacity:.7}.synthesis-launch-copy{display:grid;gap:3px}.synthesis-launch-copy span{color:#aeb5c3;font-size:.8rem}.synthesis-launch-action{color:#f0c46b;font-size:1.35rem}.recipe{border:1px solid #384153;border-radius:8px}.recipe .badges{margin-left:5px}.recipe .ingredient{margin:5px}.ingredients{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.plus{color:#f0c46b;font-weight:700}.ingredient{min-height:88px;display:grid;grid-template-columns:58px 1fr;gap:8px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:8px}.ingredient>img{width:56px;height:56px}.family-requirement{grid-template-columns:1fr;color:#aeb5c3}.family-requirement .family-icon{width:34px;height:34px}.family-requirement .family-label{white-space:normal}.empty,.error{border:1px dashed #384153;border-radius:8px;padding:18px;color:#aeb5c3}.error{color:#df8278}.monster-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;padding:0;margin:0;list-style:none}.monster-card{width:100%;min-height:116px;display:grid;grid-template-rows:1fr auto;border:1px solid #384153;border-radius:8px;background:#191e29d1;color:inherit}.monster-card:hover,.monster-card:focus-within{border-color:#f0c46b;background:#212837fa}.monster-select{width:100%;min-height:114px;display:block;padding:10px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.monster-select:hover,.monster-select[aria-current=true]{color:#fff}.monster-select:focus-visible{outline:2px solid #f0c46b;outline-offset:-3px;border-radius:8px}.monster-select .monster-card-portrait{width:72px;height:72px;object-fit:contain;image-rendering:auto}.monster-card-body{display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;align-items:center}.monster-card-copy,.monster-card-header{display:block;min-width:0}.monster-card-footer{display:flex;justify-content:flex-end;padding:0 10px 10px}.monster-name{display:block;margin:0;font-size:1rem;font-weight:700}.synthesis-dialog{max-width:90vw;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #384153;border-radius:12px;background:#191e29;color:#f4f0e8;overflow:hidden}.synthesis-dialog::backdrop{background:#07090ec7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.synthesis-dialog-shell{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);max-height:calc(100dvh - 32px)}.synthesis-dialog-header{display:flex;align-items:start;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid #384153;background:linear-gradient(135deg,#f0c46b1f,#212837cc)}.synthesis-dialog-header .eyebrow{margin-bottom:5px}.synthesis-dialog-header h2{margin:0;font-size:1.35rem}.synthesis-dialog-header .jp{margin-top:3px}.dialog-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid #384153;border-radius:999px;background:#191e29bf;color:#aeb5c3;font-size:1.4rem;line-height:1;cursor:pointer}.dialog-close:hover,.dialog-close:focus-visible{border-color:#f0c46b;color:#fff;outline:0}.synthesis-dialog-body{min-width:0;min-height:0;max-height:calc(100dvh - 112px);overflow:auto;overscroll-behavior:contain;padding:20px}.synthesis-tree{display:grid;gap:10px;min-width:0;width:100%}.synthesis-tree-canvas{width:max(100%,var(--tree-subtree-width));min-width:var(--tree-subtree-width)}.tree-node{min-width:0;width:var(--tree-subtree-width);margin-inline:auto}.tree-node .progress-needed img,.tree-node .progress-owned img,.tree-node .progress-previously-owned img{border:2px solid;border-radius:18px}.tree-node .progress-needed img{border-color:#df8278}.tree-node .progress-owned img{border-color:#7ac78d}.tree-node .progress-previously-owned img{border-color:#f0c46b}.tree-node-row{display:flex;gap:8px;align-items:stretch;justify-content:center;width:var(--tree-subtree-width);min-width:var(--tree-subtree-width)}.tree-node-toggle,.tree-node-content{position:relative;width:100%;min-width:72px;min-height:70px;flex:0 0 88px;width:88px;display:flex;align-items:center;justify-content:center;padding:8px;border:0;border-radius:8px;background:#212837b8;color:inherit;text-align:left}.tree-family-mark{position:absolute;right:4px;bottom:4px;width:20px;height:20px;display:grid;place-items:center;border:1px solid #384153;border-radius:50%;background:#191e29}.tree-family-mark .family-icon{width:16px;height:16px}.tree-node-toggle{cursor:pointer}.tree-node-toggle:hover,.tree-node-toggle:focus-visible{background:#f0c46b1a;outline:0}.tree-node-toggle img,.tree-node-content img{width:52px;height:52px;object-fit:contain}.tree-monster-image{position:relative;display:block;width:52px;height:52px}.tree-monster-image:after{content:attr(data-tooltip);position:absolute;z-index:5;left:50%;bottom:calc(100% + 8px);width:max-content;max-width:220px;transform:translate(-50%,4px);border:1px solid #384153;border-radius:6px;background:#191e29;color:#fff;padding:6px 8px;box-shadow:0 8px 24px #00000059;font-size:.78rem;line-height:1.2;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease}.tree-monster-image:hover:after,.tree-monster-image:focus-within:after{opacity:1;transform:translate(-50%)}.tree-node-children{display:flex;flex-direction:column;gap:12px;min-width:var(--tree-subtree-width);width:var(--tree-subtree-width);margin:12px 0 0;padding:0 0 8px;overflow:visible}.tree-recipe{min-width:var(--tree-recipe-width);width:var(--tree-recipe-width);margin-inline:auto;border:0;border-radius:8px;background:#21283780;overflow:visible}.recipe-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;background:transparent;color:inherit;padding:9px 10px;text-align:left;cursor:pointer}.recipe-toggle:hover,.recipe-toggle:focus-visible{background:#ffffff0d;outline:0}.tree-chevron{display:inline-block;width:16px;color:#f0c46b}.tree-recipe-body{display:grid;gap:8px;padding:0 10px 10px}.tree-ingredients{display:grid;grid-template-columns:var(--tree-first-width) var(--tree-plus-width) var(--tree-second-width);column-gap:var(--tree-column-gap);width:calc(var(--tree-first-width) + var(--tree-plus-width) + var(--tree-second-width) + var(--tree-column-gap) * 2);min-width:var(--tree-first-width);align-items:start}.tree-ingredient-branch{width:var(--tree-branch-width);min-width:var(--tree-branch-width);display:flex;flex-direction:column;gap:4px}.tree-ingredient-branch>.ingredient{border:0;background:transparent}.branch-label,.tree-note{color:#aeb5c3;font-size:.74rem}.tree-cycle .tree-node-content{background:#df82781f}.tree-note{margin:5px 0 0 22px;color:#df8278}@media(max-width:920px){.toolbar,.layout{grid-template-columns:1fr}.controls{grid-template-columns:1fr 1fr}.details{position:static}}@media(max-width:560px){.shell{width:min(100% - 20px,1420px);padding-top:18px}.controls,.monster-list,.ingredients{grid-template-columns:1fr}.plus{text-align:center}.detail-progress .progress-label{display:none}.synthesis-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.synthesis-dialog-shell{max-height:calc(100dvh - 16px)}.synthesis-dialog-body{max-height:calc(100dvh - 96px)}.synthesis-dialog-header,.synthesis-dialog-body{padding:14px}}
