@charset "UTF-8";
:root{color-scheme:dark;--bg:#101917;--panel:#17221e;--border:#33433a;--muted:#a1afa5;--text:#e1e8df;--gold:#e0bd77;--green:#87c59a;font-family:"Microsoft YaHei","PingFang SC",sans-serif;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 0,#31433255,transparent 650px)}main{max-width:1480px;padding:0 40px 40px;margin:auto}a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button,input,select{border:1px solid #45574a;border-radius:6px;background:#17221e;color:var(--text);padding:10px 12px;min-height:42px}button:hover:not(:disabled){border-color:var(--gold)}button.quiet{background:transparent;color:var(--muted);font-size:12px}.masthead{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--border);padding:24px 0;font-size:13px}.masthead>a:first-child{font-weight:700;letter-spacing:1px}.masthead span{color:var(--muted);font-weight:400;letter-spacing:0}.intro{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:44px 0 28px}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);margin:0 0 13px}h1{font-family:Georgia,"Songti SC","SimSun",serif;font-size:42px;font-weight:500;letter-spacing:2px;margin:0 0 18px}.lede{max-width:630px;font-size:14px;line-height:1.9;color:var(--muted);margin:0}.edition{border-left:1px solid #80734b;padding:3px 0 3px 28px;display:grid;gap:7px;min-width:190px}.edition>span{font-size:11px;color:var(--gold)}.edition strong{font:42px Georgia,serif;letter-spacing:3px}.edition small{color:var(--muted);font-size:11px}.overview{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:30px}.metric{padding:18px 23px;background:#17221e;display:flex;align-items:baseline;gap:12px}.metric strong{font:29px Georgia,serif;color:var(--gold)}.metric span{font-size:12px;color:var(--muted)}.professions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:23px}.professions button{display:flex;align-items:center;gap:9px;background:transparent;padding:10px 17px}.professions button.active{background:#34432a;border-color:#8c945f;color:#eef0d6}.professions img{width:25px;height:25px;border-radius:3px}.professions b{font-size:13px;font-weight:500}.professions small{font-size:10px;color:var(--muted)}.filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:20px;background:#18221e;border:1px solid var(--border);border-radius:8px}label{display:grid;gap:8px;min-width:0;font-size:11px;color:var(--muted);flex:1 1 150px}.search-label{flex:3 1 300px}label input,label select{width:100%;min-width:0;font-size:12px}input[type=number]{max-width:100%}.result-bar{display:flex;gap:15px;justify-content:space-between;align-items:center;margin:20px 0 12px}.result-bar p{font-size:12px;color:var(--muted)}.catalog-layout{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(0,1.15fr);gap:24px;align-items:start}.recipe-browser{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#14201b}.list-caption{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);background:#1e2a24;padding:13px 18px;letter-spacing:1px}#recipes{max-height:865px;overflow:auto;scrollbar-color:#56634b #14201b;scrollbar-width:thin}.recipe-row{display:flex;width:100%;align-items:center;text-align:left;gap:13px;border:0;border-bottom:1px solid #2c3b31;border-radius:0;background:transparent;padding:14px 17px;min-height:85px;border-left:3px solid transparent}.recipe-row.active{background:#293b2b;border-left-color:var(--gold)}.recipe-row:hover{background:#213128}.recipe-row img{width:38px;height:38px;flex-shrink:0;object-fit:contain;border:1px solid #5f7053;border-radius:4px}.recipe-row .row-title{display:block;font-size:13px;line-height:1.5;font-weight:500;overflow-wrap:anywhere}.row-copy{min-width:0;flex:1}.row-sub{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:5px}.row-level{flex-shrink:0;text-align:right;font:21px Georgia,serif;color:#c3cdbb}.row-level small{display:block;font:9px "Microsoft YaHei",sans-serif;color:var(--muted);margin-top:5px}.new-badge{font-size:9px;padding:2px 5px;margin-left:7px;white-space:nowrap;color:#dcc689;border:1px solid #776a46;border-radius:3px}#pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 15px;border-top:1px solid var(--border)}#pagination span{font-size:11px;color:var(--muted)}#pagination button{font-size:11px;padding:8px 12px}#detail{border:1px solid #5d6749;border-radius:8px;background:linear-gradient(145deg,#253024,#17221e 60%);padding:28px;scroll-margin-top:18px;min-width:0}.detail-eyebrow{font-size:10px;color:var(--gold);letter-spacing:1px;display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-eyebrow a{font-size:11px}.product-title{display:flex;gap:17px;align-items:center;margin:25px 0 21px}.product-title img{width:57px;height:57px;border:1px solid #91805b;border-radius:6px;flex-shrink:0}.product-title h2{font:23px/1.5 Georgia,"Microsoft YaHei",sans-serif;margin:0 0 7px;overflow-wrap:anywhere}.product-title small{color:var(--muted);font-size:11px;line-height:1.7}.uncommon{color:#81d88c}.rare{color:#8db8ff}.epic{color:#c69af0}.common{color:#e0e4d9}.poor{color:#a8b0a3}.detail-levels{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.detail-levels span{font-size:11px;padding:6px 10px;border:1px solid var(--border);background:#14201a;border-radius:4px}.stats{display:flex;gap:8px;flex-wrap:wrap}.stat{font-size:12px;color:#add3a3;padding:7px 10px;background:#111c1680;border-radius:4px}.product-note{font-size:12px;line-height:1.9;color:#b2beb0;margin:14px 0}.detail-section{margin-top:24px;padding-top:19px;border-top:1px solid #41513c}.detail-section h3{font-size:13px;margin:0 0 13px;color:var(--gold);font-weight:500}.detail-section p{font-size:12px;line-height:1.9;margin:8px 0;color:#b9c4b6}.fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fee-grid div{padding:12px;border:1px solid #42503c;border-radius:5px;background:#18211b}.fee-grid span{display:block;font-size:10px;color:var(--muted);margin-bottom:8px}.fee-grid b{font-size:13px;font-weight:500;color:#e6c88a}.ingredients{display:grid;gap:10px}.ingredient{padding:12px;background:#121e18;border:1px solid #344836;border-radius:5px;min-width:0}.ingredient-top{display:flex;align-items:center;gap:9px}.ingredient img{width:25px;height:25px;border-radius:3px}.ingredient strong{font-size:12px;font-weight:500;flex:1;overflow-wrap:anywhere}.ingredient b{color:#e5cd95;font-size:13px}.ingredient p{font-size:10px;line-height:1.8;color:var(--muted);margin:8px 0 0}.ingredient a{font-size:10px;display:inline-block;margin-top:7px}.supply-note{font-size:11px;color:#d3bc80;margin:12px 0}.detail-section .fine-print{font-size:10px;color:var(--muted)}.references{font-size:10px;line-height:1.9;color:var(--muted);overflow-wrap:anywhere}.references summary{cursor:pointer;color:var(--gold);margin-bottom:8px}.references a{display:inline-block;margin:7px 12px 0 0}.empty-detail,.no-results{padding:35px 20px;color:var(--muted);font-size:13px;line-height:1.9}.message{font-size:12px;color:var(--gold);min-height:20px}footer{border-top:1px solid var(--border);margin-top:35px;padding-top:23px;color:var(--muted);font-size:11px;line-height:1.9}footer strong{color:#b4c2b0;font-weight:500}footer p{max-width:950px;margin:9px 0}footer a{display:inline-block;margin-top:8px}
@media(min-width:1100px){#detail{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto;scrollbar-color:#647055 #17221e;scrollbar-width:thin}}
@media(max-width:1000px){main{padding:0 22px 30px}.catalog-layout{grid-template-columns:minmax(270px,.9fr) minmax(0,1.1fr);gap:16px}#detail{padding:20px}.professions button{padding:10px 12px}.metric{padding:16px;gap:8px}.metric span{font-size:10px}.metric strong{font-size:26px}}
@media(max-width:700px){main{padding:0 16px 25px}.masthead{font-size:11px;padding:19px 0}.masthead span{display:none}.intro{padding:31px 0 24px;gap:12px}.eyebrow{font-size:8px;letter-spacing:2px}h1{font-size:29px;letter-spacing:1px;margin-bottom:12px}.lede{font-size:12px}.edition{display:none}.overview{grid-template-columns:1fr 1fr;margin-bottom:22px}.metric{padding:14px 17px}.metric span{font-size:11px}.professions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.professions button{padding:9px 7px;gap:6px;justify-content:center}.professions img{width:21px;height:21px}.professions b{font-size:12px}.professions small{font-size:9px}.filters{gap:12px;padding:15px}label{flex:1 1 calc(50% - 12px)}.search-label{flex-basis:100%}label input,label select{font-size:16px;min-height:44px}.filters>.quiet{flex:1 1 calc(50% - 12px)}.result-bar{gap:7px}.result-bar p{font-size:11px}.result-bar button{font-size:10px;max-width:135px}.catalog-layout{grid-template-columns:1fr;gap:18px}#recipes{max-height:420px}#detail{padding:20px}.product-title h2{font-size:21px}.fee-grid b{font-size:12px}.product-title{gap:13px}.recipe-row{padding:12px;min-height:77px}.row-title{font-size:12px}.new-badge{font-size:8px;margin-left:4px}}
@media(prefers-reduced-motion:no-preference){.recipe-row,.professions button{transition:background .15s ease,border-color .15s ease}}
