:root{
  --bg:#0b0908;
  --bg2:#120d09;
  --panel:rgba(20,15,12,.94);
  --panel2:#18110d;
  --line:#3d2b1d;
  --line2:#6c4928;
  --gold:#d6a45f;
  --gold2:#f0c47d;
  --text:#eee5d5;
  --muted:#a99b88;
  --red:#9f392f;
  --red2:#d45b48;
  --green:#71916a;
  --shadow:0 18px 60px rgba(0,0,0,.32);
  --radius:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 50% -10%,#2a1a10 0,#120d09 31%,#0b0908 64%);color:var(--text);font-family:Georgia,"Times New Roman",serif;min-height:100vh}
button,input{font:inherit}
button{color:inherit}
.embers{position:fixed;inset:0;pointer-events:none;opacity:.21;background-image:radial-gradient(circle at 14% 18%,#c66a2d 0 1px,transparent 1.5px),radial-gradient(circle at 86% 31%,#e09a43 0 1px,transparent 1.3px),radial-gradient(circle at 52% 73%,#a84027 0 1px,transparent 1.5px);background-size:170px 190px,230px 210px,260px 250px;mask-image:linear-gradient(to bottom,black,transparent 72%)}
.shell{width:min(1320px,calc(100% - 34px));margin-inline:auto}
.hero{border-bottom:1px solid #2f2117;background:linear-gradient(180deg,rgba(24,15,9,.82),rgba(12,9,8,.72));box-shadow:0 12px 50px rgba(0,0,0,.28)}
.hero__inner{min-height:158px;display:flex;align-items:center;gap:24px;padding:28px 0}
.brandmark{width:96px;height:82px;display:grid;place-items:center;flex:0 0 auto;margin-right:16px;position:relative}.brandmark__svg{width:100%;height:100%;display:block;filter:drop-shadow(0 0 18px rgba(143,70,31,.10)) drop-shadow(0 0 6px rgba(224,154,67,.08))}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-family:system-ui,sans-serif;font-size:11px;color:#b78852;margin:0 0 8px;font-weight:700}
h1{font-weight:500;font-size:clamp(30px,4vw,52px);margin:0;letter-spacing:-.025em;line-height:1.05;color:#f2e7d4;text-shadow:0 1px 0 #000}
.hero__brand-copy{min-width:0;flex:1}.brand-title{max-width:820px}.subtitle{margin:10px 0 0;color:var(--muted);font-size:17px}.brand-subtitle{max-width:840px;min-height:1.45em;font:500 16px/1.45 system-ui,sans-serif;color:#b7a790;letter-spacing:.005em;text-wrap:balance}
.locale-switch{display:flex;gap:2px;flex:0 0 auto;padding:3px;border:1px solid #49321f;border-radius:999px;background:#130e0b;font:700 11px system-ui,sans-serif}
.locale-switch[hidden]{display:none}
.locale-switch__button{border:0;border-radius:999px;padding:7px 9px;background:transparent;color:#aa9479;cursor:pointer;font:inherit}
.locale-switch__button:hover,.locale-switch__button:focus-visible{color:#f2d3a4;background:#2a1b11}
.locale-switch__button[aria-pressed="true"]{color:#f2d3a4;background:#4a2d18}
.version{margin-left:auto;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:8px;font-family:system-ui,sans-serif;border:1px solid #49321f;background:#130e0b;padding:11px 14px;border-radius:999px;color:#c5b293;font-size:12px;white-space:nowrap}
.version small{grid-column:2;color:#796b5b;font-size:10px}
.version__dot{width:7px;height:7px;background:#7f9b6f;border-radius:50%;grid-row:1/3;box-shadow:0 0 8px #638154}
.layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;padding-top:28px;padding-bottom:46px;align-items:start}
.sidebar{position:sticky;top:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:16px;height:calc(100vh - 36px);min-height:0}
.panel{background:linear-gradient(180deg,rgba(24,18,15,.97),rgba(14,11,10,.97));border:1px solid #433024;border-radius:var(--radius);box-shadow:0 14px 42px rgba(0,0,0,.24)}
.search-panel{padding:18px;position:relative;z-index:5;background:linear-gradient(180deg,rgba(31,22,17,.98),rgba(18,14,12,.98))}
.catalog-panel{padding:14px;overflow:hidden;display:flex;flex-direction:column;min-height:0;background:linear-gradient(180deg,rgba(27,20,16,.98),rgba(16,13,12,.98))}
.tag-panel{padding:14px 16px;background:linear-gradient(180deg,rgba(25,20,18,.98),rgba(15,13,12,.98));border-color:#4a3b31;max-height:300px;overflow:hidden}
.tag-panel[hidden]{display:none}
.tag-panel__title-row{align-items:flex-start;margin-bottom:9px}
.tag-panel__subtitle{margin:4px 0 0;color:#7f7468;font:10px/1.35 system-ui,sans-serif}
.tag-cloud{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;max-height:184px;overflow:auto;padding-right:2px}
.tag-chip,.selected-tag{--tag-border:#5a4b3d;--tag-bg:#171310;--tag-text:#c3b29f;--tag-hover-border:#856b51;--tag-hover-bg:#211913;--tag-hover-text:#ead5b8;--tag-active-border:#a8733f;--tag-active-bg:#352315;--tag-active-text:#f2ca91;--tag-glow:rgba(190,115,53,.12)}
/* Цвет — это смысловая категория, а не декоративная радуга. Все оттенки приглушены под тёмную Diablo-палитру. */
.tag-stage{--tag-border:#78602f;--tag-bg:#1d180f;--tag-text:#d4bd82;--tag-hover-border:#a6803d;--tag-hover-bg:#292011;--tag-hover-text:#f0d699;--tag-active-border:#c39243;--tag-active-bg:#3a2a13;--tag-active-text:#ffe1a3;--tag-glow:rgba(201,148,66,.14)}
.tag-cost{--tag-border:#74452f;--tag-bg:#1e1411;--tag-text:#d0a58e;--tag-hover-border:#9b5d3d;--tag-hover-bg:#2a1812;--tag-hover-text:#edbea3;--tag-active-border:#b96e45;--tag-active-bg:#3a1f16;--tag-active-text:#ffd0b3;--tag-glow:rgba(190,91,50,.14)}
.tag-role{--tag-border:#5f5269;--tag-bg:#19151c;--tag-text:#bfaec7;--tag-hover-border:#7d6b8a;--tag-hover-bg:#211a25;--tag-hover-text:#ddcbe5;--tag-active-border:#917aa0;--tag-active-bg:#2e2333;--tag-active-text:#ead8f0;--tag-glow:rgba(132,104,147,.15)}
.tag-class{--tag-border:#74434b;--tag-bg:#1d1315;--tag-text:#caa1a7;--tag-hover-border:#985761;--tag-hover-bg:#29171a;--tag-hover-text:#e8bcc3;--tag-active-border:#ad616d;--tag-active-bg:#351c21;--tag-active-text:#f7c9d0;--tag-glow:rgba(176,83,96,.15)}
.tag-purpose{--tag-border:#53603f;--tag-bg:#151a12;--tag-text:#abb893;--tag-hover-border:#6d7c51;--tag-hover-bg:#1b2216;--tag-hover-text:#cbd8af;--tag-active-border:#7f905c;--tag-active-bg:#252e1b;--tag-active-text:#dce9bd;--tag-glow:rgba(112,139,77,.15)}
.tag-gear{--tag-border:#445d67;--tag-bg:#12191c;--tag-text:#9fb8c1;--tag-hover-border:#5b7884;--tag-hover-bg:#172126;--tag-hover-text:#bed5dd;--tag-active-border:#6b8a97;--tag-active-bg:#1d2b31;--tag-active-text:#d1e6ed;--tag-glow:rgba(82,125,142,.15)}
.tag-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--tag-border);background:var(--tag-bg);color:var(--tag-text);border-radius:999px;padding:6px 8px;cursor:pointer;font:600 10px/1 system-ui,sans-serif;transition:.15s}
.tag-chip:hover:not(:disabled){border-color:var(--tag-hover-border);background:var(--tag-hover-bg);color:var(--tag-hover-text);transform:translateY(-1px)}
.tag-chip.active{border-color:var(--tag-active-border);background:var(--tag-active-bg);color:var(--tag-active-text);box-shadow:inset 0 0 14px var(--tag-glow),0 0 0 1px color-mix(in srgb,var(--tag-active-border) 18%,transparent)}
.tag-chip:disabled{opacity:.3;cursor:default;filter:saturate(.55)}
.tag-chip__count{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:rgba(255,255,255,.035);color:color-mix(in srgb,currentColor 72%,#7b7065);font:700 8px/1 system-ui,sans-serif}
.tag-chip.active .tag-chip__count{background:rgba(255,255,255,.055);color:currentColor}
.tag-expand{width:100%;margin-top:9px;border:1px solid #46382f;border-radius:7px;background:#13110f;color:#9e8b77;padding:7px 9px;cursor:pointer;font:650 10px/1 system-ui,sans-serif}
.tag-expand:hover{border-color:#715844;color:#d6b995;background:#1b1612}
.tag-selection{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.selected-tag{display:inline-flex;align-items:center;border:1px solid var(--tag-border);background:var(--tag-bg);color:var(--tag-text);border-radius:99px;padding:4px 7px;font:650 9px/1 system-ui,sans-serif;box-shadow:inset 0 0 10px color-mix(in srgb,var(--tag-glow) 70%,transparent)}
.selected-card__why{margin-top:11px;padding:9px 11px;border-left:3px solid #b37a43;border-radius:0 7px 7px 0;background:rgba(15,12,10,.35);color:#cdbda8;font:11px/1.45 system-ui,sans-serif}
.selected-card__why strong{color:#f0c58d}
.selected-tag.js-result-tag{cursor:pointer;transition:.15s}
.selected-tag.js-result-tag:hover{border-color:var(--tag-hover-border);background:var(--tag-hover-bg);color:var(--tag-hover-text);transform:translateY(-1px)}
.catalog-empty{display:grid;gap:6px;padding:16px 10px;color:#85786a;font:11px/1.45 system-ui,sans-serif}
.catalog-empty strong{color:#d6c5ad;font-size:12px}

.panel__title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.panel h2{font:600 15px/1.2 system-ui,sans-serif;margin:0;color:#e8dac4}
.kbd{font:600 10px/1 system-ui,sans-serif;color:#8d7b66;border:1px solid #493726;border-bottom-color:#664a31;padding:5px 7px;border-radius:5px;background:#120e0b}
.search-wrap{height:46px;border:1px solid #5a3e26;background:#0e0c0a;border-radius:9px;display:flex;align-items:center;padding:0 10px;transition:.16s}
.search-wrap:focus-within{border-color:#a16b38;box-shadow:0 0 0 3px rgba(173,111,50,.1)}
.search-wrap svg{width:18px;height:18px;fill:none;stroke:#8e6b47;stroke-width:1.8;flex:0 0 auto}
.search-wrap input{border:0;outline:0;background:transparent;color:#eee1cd;width:100%;padding:0 9px;font-family:system-ui,sans-serif;font-size:14px}
.search-wrap input::placeholder{color:#65594b}
.clear-btn{width:27px;height:27px;border:0;background:transparent;color:#6f6254;font:24px/1 system-ui,sans-serif;cursor:pointer;border-radius:50%;visibility:hidden}
.clear-btn.visible{visibility:visible}.clear-btn:hover{background:#241811;color:#cdb89b}
.search-hint{font:11px/1.35 system-ui,sans-serif;color:#786b5c;margin-top:9px;min-height:15px}
.search-results{position:absolute;left:18px;right:18px;top:116px;background:#100d0b;border:1px solid #5a3c24;border-radius:10px;box-shadow:0 22px 60px rgba(0,0,0,.58);max-height:390px;overflow:auto;padding:6px}
.search-result{display:grid;grid-template-columns:1fr auto;gap:8px;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid #251b14;padding:10px 9px;cursor:pointer;border-radius:6px}
.search-result:last-child{border-bottom:0}.search-result:hover,.search-result.active{background:#21160f}
.search-result strong{font:600 13px/1.25 system-ui,sans-serif;color:#eadcc8}.search-result span{font:10px/1.3 system-ui,sans-serif;color:#91795c;background:#25180f;border:1px solid #3f2b1a;padding:3px 6px;border-radius:20px;height:max-content}.search-empty{font:12px/1.4 system-ui,sans-serif;color:#7c6e5d;padding:13px}
.text-btn{border:0;background:none;color:#8d765d;font:11px system-ui,sans-serif;cursor:pointer;padding:4px}.text-btn:hover{color:#d0aa75}
.groups{overflow:auto;padding-right:3px;min-height:0}
.group{border-top:1px solid #2b2018}.group:first-child{border-top:0}
.group__head{width:100%;display:flex;align-items:center;gap:9px;border:0;background:transparent;cursor:pointer;padding:11px 5px;text-align:left}
.group__chev{color:#826143;font:11px system-ui,sans-serif;transition:.15s;transform:rotate(90deg)}.group.collapsed .group__chev{transform:rotate(0)}
.group__name{font:600 12px system-ui,sans-serif;color:#d3c2aa;flex:1}.group__count{font:10px system-ui,sans-serif;color:#736250}
.group__items{display:grid;gap:3px;padding:0 0 10px 0}.group.collapsed .group__items{display:none}
.item-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid transparent;background:transparent;color:#a99b88;padding:7px 9px 7px 25px;border-radius:7px;cursor:pointer;text-align:left;font:12px/1.25 system-ui,sans-serif}
.item-btn:hover{background:#1d1510;color:#dac7aa}.item-btn.selected{color:#f0d4a6;background:linear-gradient(90deg,#332012,#20160f);border-color:#604126}.item-btn small{color:#685a4b;font-size:9px;white-space:nowrap}
.content{min-width:0}
.selected-card{min-height:132px;border:1px solid #87603a;background:radial-gradient(circle at 82% 14%,rgba(255,193,102,.18),transparent 22%),radial-gradient(circle at 18% 0%,rgba(170,92,35,.28),transparent 36%),linear-gradient(145deg,#332014,#1a120d);border-radius:16px;padding:23px 25px;box-shadow:0 18px 60px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,220,168,.06),0 0 0 1px rgba(215,156,84,.08);position:relative;overflow:hidden}
.selected-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,rgba(255,203,128,.92),rgba(208,136,62,.72) 44%,rgba(74,42,24,0));opacity:.95}
.selected-card::after{content:"◆";position:absolute;right:24px;top:8px;color:rgba(255,202,135,.12);font-size:88px;transform:rotate(14deg)}
.selected-card__label{font:700 10px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:#f0c483;margin-bottom:8px}.selected-card h2{font-size:30px;font-weight:600;margin:0 100px 7px 0;color:#fff1db;text-shadow:0 1px 0 rgba(0,0,0,.34)}.selected-card p{font:13px/1.5 system-ui,sans-serif;color:#dbc7a8;margin:0 100px 0 0}.selected-card__meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.pill{display:inline-flex;align-items:center;border:1px solid #5f4328;border-radius:99px;padding:5px 8px;background:#160f0b;color:#bca488;font:10px system-ui,sans-serif}.selected-card .pill{border-color:#9a6b3c;background:rgba(22,15,11,.7);color:#f1d2a1}
.results-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:28px 2px 12px}.results-head h2{font-size:27px;font-weight:500;margin:0}.count-badge{font:700 12px system-ui,sans-serif;min-width:38px;height:30px;padding:0 10px;border-radius:20px;display:grid;place-items:center;background:#2a1a11;border:1px solid #604126;color:#dbb475}
.filter-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.filter-btn{border:1px solid #39291e;background:#120f0c;color:#897968;padding:7px 10px;border-radius:999px;font:11px system-ui,sans-serif;cursor:pointer}.filter-btn:hover{border-color:#66472d;color:#c6af91}.filter-btn.active{background:#382315;border-color:#79502d;color:#efcb92}
.recipes{display:grid;gap:12px}
.recipe{position:relative;overflow:hidden;border:1px solid #58402b;border-radius:13px;background:linear-gradient(180deg,rgba(30,21,17,.96),rgba(18,14,12,.96));padding:17px 18px;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.recipe::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,rgba(178,116,57,.95),rgba(115,71,38,.48) 58%,rgba(0,0,0,0))}
.recipe:hover{border-color:#7a5635;background:linear-gradient(180deg,rgba(34,24,19,.97),rgba(19,15,13,.97))}.recipe__top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.recipe__type{font:700 9px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#c49059;margin-bottom:5px}.recipe h3{font-size:19px;font-weight:500;margin:0;color:#eadcc8}.recipe__patch{font:10px system-ui,sans-serif;color:#d7a570;border:1px solid #6a4729;border-radius:99px;padding:4px 7px;white-space:nowrap;background:#21150e}
.formula{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(300px,.82fr);gap:10px;align-items:center;margin-top:14px}.ingredients{display:flex;flex-wrap:wrap;gap:6px}.ingredient,.result-chip{min-height:34px;display:inline-flex;align-items:center;gap:7px;border:1px solid #403022;border-radius:7px;background:#100d0b;padding:7px 9px;font:12px/1.2 system-ui,sans-serif;color:#c9b89e}.ingredient .qty{color:#e6b46b;font-weight:800}.ingredient.match{border-color:#946137;background:#2a1a10;color:#f0d7b0;box-shadow:inset 0 0 20px rgba(185,101,40,.08)}.arrow{color:#68492f;font-size:22px;text-align:center}.result-chip{border-color:#514029;background:#19150f;color:#e7d09e;justify-content:center;font-weight:650}.result-card{border:1px solid #4b4a44;border-radius:9px;background:linear-gradient(180deg,#171514,#121110);padding:12px 13px;font-family:system-ui,sans-serif;color:#cec0ab;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.result-card__title{font:700 13px/1.3 system-ui,sans-serif;color:#ecc083;margin-bottom:7px}.result-card__intro{font:11px/1.45 system-ui,sans-serif;color:#afa291;margin:0 0 10px}.result-card__label{font:700 9px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em;color:#b49a7a;margin:0 0 6px}.result-effects{margin:0;padding-left:17px;color:#ddd0b8;font:11px/1.45 system-ui,sans-serif}.result-effects li+li{margin-top:3px}.result-card__random{margin:10px 0 0;padding-top:9px;border-top:1px solid #31261b;color:#887b6b;font:10px/1.4 system-ui,sans-serif}.recipe__note{margin:12px 0 0;color:#827464;font:11px/1.45 system-ui,sans-serif;border-top:1px solid #2d221a;padding-top:10px}.empty-state{border:1px dashed #3c2d22;border-radius:14px;padding:38px 25px;text-align:center;color:#7f7161;font:13px/1.5 system-ui,sans-serif;background:#100e0c}.empty-state strong{display:block;color:#c2ad90;font-size:16px;margin-bottom:4px}
.footer{border-top:1px solid #261b14;padding:28px 0 42px;color:#6e6254;font:11px/1.55 system-ui,sans-serif}.footer p{max-width:900px}.footer__sources{color:#51493f}
@media (max-width:980px){.layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;min-height:0;grid-template-rows:auto auto auto}.catalog-panel{max-height:440px}.hero__inner{min-height:130px}.version{display:none}.formula{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}.selected-card h2,.selected-card p{margin-right:70px}}
@media (max-width:600px){.shell{width:min(100% - 20px,1320px)}.hero__inner{gap:17px;padding:22px 0;flex-wrap:wrap}.hero__brand-copy{flex:1 1 calc(100% - 110px)}.locale-switch{margin-left:auto}.brandmark{width:70px;height:60px;margin-right:8px}h1{font-size:30px}.subtitle{font-size:14px}.brand-subtitle{font-size:13px;line-height:1.45;min-height:2.9em;text-wrap:pretty}.layout{padding-top:16px;gap:16px}.selected-card{padding:20px}.selected-card h2{font-size:24px}.recipe{padding:14px}.recipe__top{display:block}.recipe__patch{display:inline-block;margin-top:8px}.ingredient,.result-chip{font-size:11px}.catalog-panel{max-height:390px}}

/* Runewords */
.pill--accent{border-color:#744d29;background:#2d1b10;color:#efc27d}
.runeword-card{border-color:#4b3423;background:radial-gradient(circle at 84% 0%,rgba(139,73,27,.12),transparent 35%),linear-gradient(180deg,rgba(28,20,15,.98),rgba(16,13,11,.98))}
.runeword-card .recipe__type{color:#d19b5d}
.rw-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);gap:10px;margin-top:14px}
.rw-base,.rw-result{border:1px solid #403022;border-radius:9px;background:#100d0b;padding:12px 13px;display:flex;flex-direction:column;gap:4px;min-height:88px}
.rw-base.match{border-color:#946137;background:#2a1a10;box-shadow:inset 0 0 24px rgba(185,101,40,.08)}
.rw-base strong,.rw-result strong{font:650 13px/1.35 system-ui,sans-serif;color:#e3d1b7}
.rw-base span,.rw-result span{font:10px/1.45 system-ui,sans-serif;color:#8e806e}
.rw-result{border-color:#58412a;background:linear-gradient(180deg,#1c150f,#12100d)}
.rw-result strong{color:#e6b46b;font-size:15px}
.rw-label{font:700 9px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em;color:#9d7b55;margin-bottom:2px}

.runeword-card h3{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.rw-name-en{font:500 11px/1.2 system-ui,sans-serif;color:#887864}
.rw-result__en{font:600 10px/1.2 system-ui,sans-serif;color:#9a856d!important;margin-top:-1px}
.rw-base span b{color:#ba9b75;font-weight:700}
.rw-name-row{display:flex;align-items:center;gap:7px;min-width:0}
.rw-name-row>strong{min-width:0}
.info-tip{position:relative;display:inline-flex;flex:0 0 auto}
.info-tip__button{width:18px;height:18px;border-radius:50%;border:1px solid #5b422c;background:#1c140f;color:#c89a64;font:700 10px/1 system-ui,sans-serif;display:grid;place-items:center;cursor:help;padding:0;transition:border-color .15s ease,background .15s ease,color .15s ease}
.info-tip__button:hover,.info-tip__button:focus-visible{border-color:#a16b39;background:#2a1a10;color:#f0c78d;outline:none}
.info-tip__bubble{position:absolute;z-index:30;left:50%;top:calc(100% + 8px);width:min(310px,72vw);transform:translate(-50%,-3px);opacity:0;visibility:hidden;pointer-events:none;border:1px solid #53514b;border-radius:8px;background:linear-gradient(180deg,#181614,#11100f);box-shadow:0 12px 28px rgba(0,0,0,.42);padding:9px 10px;color:#d2c5b3!important;font:10px/1.5 system-ui,sans-serif!important;text-align:left;transition:opacity .14s ease,transform .14s ease,visibility .14s ease}
.info-tip__bubble b{color:#e2b77b}
.info-tip:hover .info-tip__bubble,.info-tip:focus-within .info-tip__bubble{opacity:1;visibility:visible;transform:translate(-50%,0)}
.rw-explain{margin-top:12px;border:1px solid #4d4841;border-radius:9px;background:linear-gradient(135deg,#1a1715,#131110);padding:12px 13px}
.rw-explain p{margin:5px 0 0;color:#d7ccb8;font:12px/1.55 system-ui,sans-serif}
.rw-order{margin-top:12px;border:1px solid #34271e;border-radius:9px;background:#0f0c0a;padding:12px 13px}
.rune-sequence{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap;margin-top:8px}
.rune-step{display:flex;align-items:center;gap:8px;min-width:86px;padding:8px 9px;border:1px solid #49331f;border-radius:7px;background:linear-gradient(180deg,#1d140e,#120e0b)}
.rune-step.match{border-color:#a46a38;background:#342012;box-shadow:inset 0 0 18px rgba(190,103,40,.12)}
.rune-step__num{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#2d1d12;border:1px solid #5d3d24;color:#dca25f;font:700 10px system-ui,sans-serif;flex:0 0 auto}
.rune-step strong{display:block;color:#edd7b7;font:700 12px/1.1 system-ui,sans-serif}
.rune-step small{display:block;margin-top:3px;color:#806f5d;font:9px/1.1 system-ui,sans-serif}
.rune-arrow{display:grid;place-items:center;color:#65452d;font-size:17px;min-width:10px}
.rw-help{margin-top:12px}
.rw-help summary{list-style:none;display:inline-flex;align-items:center;gap:7px;border:1px solid #585149;border-radius:7px;background:linear-gradient(180deg,#191715,#121110);padding:7px 10px;color:#dac09b;font:650 10px/1.2 system-ui,sans-serif;cursor:pointer;user-select:none;transition:border-color .15s ease,background .15s ease,color .15s ease}
.rw-help summary::-webkit-details-marker{display:none}
.rw-help summary:hover,.rw-help summary:focus-visible{border-color:#8e7758;background:#211d19;color:#f0d6ae;outline:none}
.rw-help__icon{width:17px;height:17px;border-radius:50%;border:1px solid #85715a;display:grid;place-items:center;color:#e3b376;font:800 10px/1 system-ui,sans-serif}
.rw-help[open] summary{border-color:#8e7758;background:#211d19;color:#f0d6ae}
.rw-warning{margin-top:8px;border-left:3px solid #b98c53;background:linear-gradient(90deg,rgba(45,35,26,.94),rgba(29,24,21,.94));padding:10px 12px;color:#d0c1ab;font:11px/1.55 system-ui,sans-serif;border-radius:0 7px 7px 0;animation:rw-help-in .14s ease}
.rw-warning strong{color:#f0c98b}.rw-warning em{color:#e2d0b4;font-style:normal}
@keyframes rw-help-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
.rw-availability{margin:9px 0 0;color:#786b5c;font:10px/1.45 system-ui,sans-serif}
@media (max-width:720px){.rw-layout{grid-template-columns:1fr}.rune-sequence{gap:5px}.rune-arrow{display:none}.rune-step{min-width:calc(50% - 4px);flex:1}.info-tip__bubble{left:auto;right:-8px;transform:translateY(-3px);width:min(290px,78vw)}.info-tip:hover .info-tip__bubble,.info-tip:focus-within .info-tip__bubble{transform:translateY(0)}}

/* Переходы между предметами внутри рецептов */
.ingredient--link,.ingredient-option--link,.rw-base-option--link,.rune-step--link{appearance:none;cursor:pointer;font-family:inherit;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}
.ingredient--link:hover{border-color:#8b5b34;background:#24170f;color:#efd2a4}
.ingredient--link:focus-visible,.ingredient-option--link:focus-visible,.rw-base-option--link:focus-visible,.rune-step--link:focus-visible{outline:1px solid #b2773e;outline-offset:2px}
.ingredient-choice{flex:1 1 100%;border:1px solid #403022;border-radius:9px;background:#100d0b;padding:8px 9px;min-width:0}
.ingredient-choice.match{border-color:#946137;background:#26180f;box-shadow:inset 0 0 20px rgba(185,101,40,.07)}
.ingredient-choice__head{display:flex;align-items:center;gap:7px;margin-bottom:7px;color:#8e806e;font:700 9px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.ingredient-choice__head .qty{color:#e6b46b;font-size:11px;letter-spacing:0;text-transform:none}
.ingredient-choice__options{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.ingredient-option,.rw-base-option{display:inline-flex;align-items:center;min-height:30px;border:1px solid #493625;border-radius:7px;background:#17110d;padding:6px 8px;color:#cdbb9f;font:11px/1.25 system-ui,sans-serif;text-align:left}
.ingredient-option--link:hover,.rw-base-option--link:hover{border-color:#8f6038;background:#2a1a10;color:#f1d1a1;transform:translateY(-1px)}
.ingredient-option.match,.rw-base-option.match{border-color:#a36b38;background:#342012;color:#f0d3a9;box-shadow:inset 0 0 15px rgba(190,103,40,.1)}
.ingredient-or{display:inline-flex;align-items:center;justify-content:center;padding:0 2px;color:#76583d;font:700 8px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.rw-base-options{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-width:0}
.rw-name-row--bases{align-items:flex-start}
.rw-name-row--bases .info-tip{margin-top:6px}
.rune-step--link{text-align:left;color:inherit}
.rune-step--link:hover{border-color:#956139;background:#2a1a10;transform:translateY(-1px)}

/* Мини-панель истории переходов по ингредиентам */
body.trail-nav-visible{padding-bottom:64px}
.trail-nav{position:fixed;z-index:120;bottom:12px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:auto minmax(220px,430px) auto;align-items:stretch;gap:1px;width:min(760px,calc(100vw - 24px));padding:4px;border:1px solid #76502f;border-radius:11px;background:rgba(18,13,10,.97);box-shadow:0 -12px 36px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.03);backdrop-filter:blur(10px)}
.trail-nav[hidden]{display:none}
.trail-nav button{border:0;min-height:36px;background:#18110d;color:#bda68a;font:650 10px/1.2 system-ui,sans-serif;cursor:pointer}
.trail-nav__side{padding:0 13px;white-space:nowrap}
.trail-nav__side:first-child{border-radius:7px 0 0 7px}.trail-nav__side:nth-child(3){border-radius:0 7px 7px 0}
.trail-nav__current{min-width:0;padding:0 12px;color:#f2d4a4!important;background:#291a11!important;border-left:1px solid #49311f!important;border-right:1px solid #49311f!important;display:flex;align-items:center;justify-content:center;gap:8px}
#trailCurrentLabel{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.trail-nav__chev{color:#b77c42;font-size:11px;transition:transform .15s ease;flex:0 0 auto}
.trail-nav__current[aria-expanded="true"] .trail-nav__chev{transform:rotate(180deg)}
.trail-nav button:hover:not(:disabled){background:#2c1b11;color:#efd0a1}
.trail-nav button:focus-visible{outline:1px solid #b2773e;outline-offset:-2px}
.trail-nav button:disabled{cursor:default;color:#5f5549;background:#120f0d}
.trail-nav__menu{position:absolute;left:4px;right:4px;bottom:calc(100% + 8px);max-height:min(390px,56vh);overflow:auto;border:1px solid #6b4b31;border-radius:10px;background:linear-gradient(180deg,rgba(26,19,15,.99),rgba(15,12,10,.99));box-shadow:0 -16px 40px rgba(0,0,0,.48);padding:6px}
.trail-nav__menu[hidden]{display:none}
.trail-nav__menu-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px 7px;color:#9f8a70;font:700 9px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #30231a;margin-bottom:4px}
.trail-nav__menu-title span{color:#6f5e4d;letter-spacing:0}
.trail-nav__menu-item{width:100%;display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:40px!important;padding:5px 8px!important;border-radius:7px;text-align:left!important;background:transparent!important;color:#baa990!important}
.trail-nav__menu-item:hover{background:#23170f!important;color:#ead2ad!important}
.trail-nav__menu-item.current{background:linear-gradient(90deg,#352215,#24170f)!important;color:#f4d6a6!important;box-shadow:inset 0 0 0 1px #6b472b}
.trail-nav__menu-step{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;border:1px solid #4f3826;background:#15110e;color:#b6824c;font:700 9px system-ui,sans-serif}
.trail-nav__menu-item.current .trail-nav__menu-step{border-color:#9c6538;color:#efbc78;background:#2c1b11}
.trail-nav__menu-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:650 11px/1.25 system-ui,sans-serif}
.trail-nav__menu-state{color:#705f4d;font:700 8px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.07em}
.trail-nav__menu-item.current .trail-nav__menu-state{color:#b9824c}
.selected-card,.recipe{scroll-margin-top:18px}
.recipe:focus{outline:none}
.recipe.history-focus{animation:history-focus-pulse 1.8s ease}
@keyframes history-focus-pulse{0%{border-color:#d08a46;box-shadow:0 0 0 2px rgba(208,138,70,.2),0 10px 30px rgba(0,0,0,.16)}40%{border-color:#a86b39;box-shadow:0 0 0 5px rgba(208,138,70,.08),0 10px 30px rgba(0,0,0,.16)}100%{border-color:#58402b;box-shadow:0 10px 30px rgba(0,0,0,.16)}}
.runeword-card.history-focus{animation:history-focus-pulse-rw 1.8s ease}
@keyframes history-focus-pulse-rw{0%{border-color:#d08a46;box-shadow:0 0 0 2px rgba(208,138,70,.2),0 10px 30px rgba(0,0,0,.16)}100%{border-color:#4b3423;box-shadow:0 10px 30px rgba(0,0,0,.16)}}
@media (max-width:720px){body.trail-nav-visible{padding-bottom:58px}.trail-nav{bottom:7px;grid-template-columns:auto minmax(100px,1fr) auto;width:calc(100vw - 14px);max-width:none}.trail-nav__side{padding:0 8px;font-size:9px!important}.trail-nav__current{padding:0 7px;font-size:9px!important}.trail-nav__menu{max-height:58vh}.trail-nav__menu-item{grid-template-columns:23px minmax(0,1fr) auto}.ingredient-choice__options{align-items:stretch}.ingredient-option,.rw-base-option{flex:1 1 42%;justify-content:center}.ingredient-or{display:none}}


/* Двухрежимный вход и переключение сценариев */
.portal-main{padding-top:28px;padding-bottom:46px}
.mode-landing{min-height:calc(100vh - 250px);display:grid;place-content:center;gap:28px;padding:36px 0 56px}
.mode-landing[hidden],.portal-workspace[hidden],.inventory-workspace[hidden]{display:none}
.mode-landing__intro{text-align:center;width:min(1040px,100%);max-width:none;margin:0 auto}
.mode-landing__intro h2{margin:0;color:#f5e7d2;font-size:clamp(30px,4vw,48px);font-weight:500;letter-spacing:-.02em}
.mode-landing__intro p:last-child{margin:12px auto 0;max-width:650px;color:#a99b88;font:14px/1.6 system-ui,sans-serif}
.mode-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:min(1040px,100%);margin-inline:auto}
.mode-choice{appearance:none;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"number arrow" "body arrow";column-gap:20px;row-gap:12px;align-items:center;min-height:230px;text-align:left;border-radius:18px;padding:28px 28px 26px;border:1px solid #62452c;background:linear-gradient(145deg,#211711,#120e0b);box-shadow:0 18px 55px rgba(0,0,0,.25);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.mode-choice::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.78;background:radial-gradient(circle at 86% 8%,rgba(222,145,64,.17),transparent 32%)}
.mode-choice--target{border-color:#5b5245;background:linear-gradient(145deg,#1c1916,#11100e)}
.mode-choice--target::before{background:radial-gradient(circle at 86% 8%,rgba(201,177,131,.12),transparent 32%)}
.mode-choice:hover,.mode-choice:focus-visible{transform:translateY(-3px);border-color:#a16a39;box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 0 1px rgba(210,143,69,.08);outline:none}
.mode-choice--target:hover,.mode-choice--target:focus-visible{border-color:#8e785b}
.mode-choice__number{grid-area:number;justify-self:start;align-self:end;color:#8f6740;font:700 11px/1 system-ui,sans-serif;letter-spacing:.12em;border:1px solid #4b3423;border-radius:999px;padding:7px 8px;background:#140f0c}
.mode-choice__body{grid-area:body;position:relative;z-index:1;display:flex;flex-direction:column;gap:11px}
.mode-choice__body strong{color:#f1dfc6;font-size:25px;font-weight:600;line-height:1.15}
.mode-choice__body span{color:#b4a38e;font:13px/1.55 system-ui,sans-serif}
.mode-choice__body em{color:#826f5b;font:11px/1.45 system-ui,sans-serif;font-style:normal}
.mode-choice__arrow{grid-area:arrow;position:relative;z-index:1;color:#c58b4e;font-size:30px;transition:transform .18s ease}
.mode-choice:hover .mode-choice__arrow{transform:translateX(4px)}
.portal-workspace{display:block}
.mode-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:-10px;min-height:48px;padding:0 2px}
.mode-toolbar__back{border:1px solid #4b3828;background:#15110e;color:#bba78d;border-radius:8px;padding:8px 11px;cursor:pointer;font:650 10px/1.2 system-ui,sans-serif}
.mode-toolbar__back:hover{border-color:#7b5837;background:#21160f;color:#e0c39a}
.mode-toolbar__current{display:flex;align-items:baseline;gap:8px;min-width:0}
.mode-toolbar__label{color:#756858;font:700 9px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em}
.mode-toolbar strong{color:#d9bd94;font:650 12px/1.2 system-ui,sans-serif}
.mode-toolbar__share{margin-left:auto;border:1px solid #5c4734;background:linear-gradient(180deg,#1b1511,#120f0d);color:#ccb18b;border-radius:8px;padding:8px 11px;cursor:pointer;font:650 10px/1.2 system-ui,sans-serif;white-space:nowrap}
.mode-toolbar__share:hover,.mode-toolbar__share:focus-visible{border-color:#8b643e;background:#26190f;color:#f0c995;outline:none}
.mode-toolbar__share.copied{border-color:#617a55;background:#172016;color:#bfd6ae}

.selected-card__secondary{display:block;margin:-2px 100px 8px 0;color:#b89569;font:600 11px/1.3 system-ui,sans-serif}

@media (max-width:780px){
  .portal-main{padding-top:18px}
  .mode-landing{padding:20px 0 36px;min-height:auto}
  .mode-choice-grid{grid-template-columns:1fr}
  .mode-choice{min-height:190px;padding:22px 20px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"number arrow" "body arrow"}
  .mode-choice__body strong{font-size:21px}
  .mode-toolbar{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:-4px}
  .mode-toolbar__share{margin-left:0}
  .selected-card__secondary{margin-right:60px}
}


/* Переход из режима «Как скрафтить предмет» к рецептам ингредиента */
.mode-switch-modal{position:fixed;z-index:240;inset:0;display:grid;place-items:center;padding:22px;background:rgba(5,4,3,.72);backdrop-filter:blur(7px)}
.mode-switch-modal[hidden]{display:none}
.mode-switch-dialog{position:relative;width:min(560px,100%);border:1px solid #7b5635;border-radius:16px;background:radial-gradient(circle at 90% 0%,rgba(190,116,48,.14),transparent 32%),linear-gradient(180deg,#211710,#120e0b);box-shadow:0 30px 90px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.035);padding:25px 25px 22px}
.mode-switch-dialog h2{margin:2px 44px 10px 0;color:#f1dfc6;font-size:25px;font-weight:600;line-height:1.2}
.mode-switch-dialog__text{margin:0;color:#bba990;font:13px/1.6 system-ui,sans-serif}
.mode-switch-dialog__close{position:absolute;right:14px;top:13px;width:34px;height:34px;border:1px solid #4c3828;border-radius:8px;background:#15110e;color:#9e8b73;font:24px/1 system-ui,sans-serif;cursor:pointer}
.mode-switch-dialog__close:hover,.mode-switch-dialog__close:focus-visible{border-color:#86603d;background:#24170f;color:#ead0aa;outline:none}
.mode-switch-dialog__item{margin:17px 0 12px;border:1px solid #58402b;border-radius:10px;background:#100d0b;padding:12px 13px;display:flex;flex-direction:column;gap:5px}
.mode-switch-dialog__item span{color:#8f785e;font:700 9px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em}
.mode-switch-dialog__item strong{color:#efd3a7;font:650 14px/1.35 system-ui,sans-serif}
.mode-switch-dialog__note{margin:0;color:#8f806d;font:11px/1.55 system-ui,sans-serif}
.mode-switch-dialog__actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:20px}
.modal-btn{min-height:38px;border-radius:8px;padding:0 14px;cursor:pointer;font:650 11px/1.2 system-ui,sans-serif}
.modal-btn--secondary{border:1px solid #4b3b2f;background:#15110e;color:#b8a68f}
.modal-btn--secondary:hover{border-color:#6b5542;background:#1d1713;color:#ddc8aa}
.modal-btn--primary{border:1px solid #a06a37;background:linear-gradient(180deg,#4a2d18,#342013);color:#f3d3a0;box-shadow:inset 0 1px 0 rgba(255,224,180,.06)}
.modal-btn--primary:hover{border-color:#c58645;background:linear-gradient(180deg,#5a361d,#3c2415);color:#ffe2b4}
@media (max-width:600px){.mode-switch-modal{padding:12px}.mode-switch-dialog{padding:22px 18px 18px}.mode-switch-dialog__actions{display:grid;grid-template-columns:1fr}.modal-btn{width:100%}}

.modal-open{overflow:hidden}

/* Third mode: inventory / "what can I craft now" */
.mode-choice--inventory{grid-column:1/-1;min-height:190px;border-color:#5e4933;background:linear-gradient(145deg,#1d1914,#100e0c)}
.mode-choice--inventory::before{background:radial-gradient(circle at 86% 8%,rgba(116,145,93,.14),transparent 34%)}
.mode-choice--inventory:hover,.mode-choice--inventory:focus-visible{border-color:#7f916c}
.mode-choice--inventory .mode-choice__arrow{color:#94ad7a}
.inventory-workspace[hidden]{display:none}
.inventory-workspace{padding-top:28px;padding-bottom:46px}
.inventory-layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:24px;align-items:start;margin-top:18px}
.inventory-sidebar{position:sticky;top:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;height:calc(100vh - 36px);min-height:0}
.inventory-search-panel{padding:18px;position:relative;z-index:8;background:linear-gradient(180deg,rgba(31,22,17,.98),rgba(18,14,12,.98))}
.inventory-stock-panel{padding:14px 16px;background:linear-gradient(180deg,rgba(25,22,18,.98),rgba(15,13,12,.98));border-color:#4b4336;max-height:300px;display:flex;flex-direction:column;min-height:150px}
.inventory-panel-subtitle{margin:4px 0 0;color:#7f7468;font:10px/1.35 system-ui,sans-serif}
.inventory-stock{display:grid;gap:6px;overflow:auto;min-height:0;padding-right:3px}
.inventory-stock-empty{display:grid;place-items:center;min-height:86px;padding:14px;color:#807466;text-align:center;font:11px/1.5 system-ui,sans-serif;border:1px dashed #3b332a;border-radius:9px;background:rgba(12,10,9,.42)}
.inventory-stock-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 9px;border:1px solid #3f352a;border-radius:8px;background:#12100e}
.inventory-stock-row__name{min-width:0;color:#d5c6b1;font:11px/1.3 system-ui,sans-serif}
.inventory-stock-row__name small{display:block;margin-top:3px;color:#776d62;font-size:9px}
.inventory-stepper{display:flex;align-items:center;gap:3px;border:1px solid #493b2d;border-radius:7px;background:#0d0b0a;padding:2px}
.inventory-stepper button{width:26px;height:26px;border:0;border-radius:5px;background:#19140f;color:#c9aa7a;font:700 15px/1 system-ui,sans-serif;cursor:pointer}
.inventory-stepper button:hover{background:#2a1c12;color:#f0cc96}
.inventory-stepper input{width:42px;height:26px;border:0;outline:0;background:transparent;color:#eee1cd;text-align:center;font:650 11px/1 system-ui,sans-serif;-moz-appearance:textfield}
.inventory-stepper input::-webkit-outer-spin-button,.inventory-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.inventory-catalog-panel{padding:14px;overflow:hidden;display:flex;flex-direction:column;min-height:0;background:linear-gradient(180deg,rgba(27,20,16,.98),rgba(16,13,12,.98))}
.inventory-groups{overflow:auto;padding-right:3px;min-height:0}
.inventory-item-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid transparent;background:transparent;color:#a99b88;padding:7px 7px 7px 22px;border-radius:7px;text-align:left;font:11px/1.25 system-ui,sans-serif}
.inventory-item-row:hover{background:#1d1510;color:#dac7aa}
.inventory-item-row.has{background:linear-gradient(90deg,rgba(53,41,25,.6),rgba(27,21,16,.5));border-color:#51422e;color:#e1cda9}
.inventory-item-row__name{min-width:0}
.inventory-item-row__count{min-width:25px;text-align:center;color:#8e7b63;font-size:9px}
.inventory-item-add{width:28px;height:28px;border:1px solid #4c3927;border-radius:7px;background:#17110d;color:#d3a767;font:700 17px/1 system-ui,sans-serif;cursor:pointer}
.inventory-item-add:hover{border-color:#8c6037;background:#2b1b10;color:#f1c98f}
.inventory-search-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px;border-bottom:1px solid #251b14}
.inventory-search-result:last-child{border-bottom:0}
.inventory-search-result__main{min-width:0}
.inventory-search-result__main strong{display:block;color:#eadcc8;font:600 12px/1.25 system-ui,sans-serif}
.inventory-search-result__main span{display:block;margin-top:3px;color:#806f5e;font:9px/1.2 system-ui,sans-serif}
.inventory-search-result button{border:1px solid #563d27;background:#1c140f;color:#d5ac74;border-radius:7px;padding:6px 9px;font:700 10px/1 system-ui,sans-serif;cursor:pointer}
.inventory-search-result button:hover{border-color:#936039;background:#2b1b10;color:#f0c58b}
.inventory-content{min-width:0}
.inventory-selected-card{margin-bottom:28px}
.inventory-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 2px 12px}
.inventory-section-head h2{font-size:27px;font-weight:500;margin:0;color:#f0e2cd}
.inventory-section-head--near{margin-top:34px;padding-top:25px;border-top:1px solid #34271e}
.inventory-recipes{display:grid;gap:12px}
.inventory-status{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;border-radius:8px;font:650 10px/1.35 system-ui,sans-serif}
.inventory-status--ready{border:1px solid #46583c;background:linear-gradient(90deg,rgba(46,65,39,.38),rgba(27,30,23,.18));color:#a8c296}
.inventory-status--near{border:1px solid #65513b;background:linear-gradient(90deg,rgba(81,58,36,.4),rgba(30,24,19,.18));color:#d2aa77}
.inventory-status strong{color:inherit}
.inventory-missing-chip{display:inline-flex;align-items:center;border:1px solid #69503a;border-radius:999px;padding:3px 7px;background:#1a130f;color:#dfb57e;font:9px/1.2 system-ui,sans-serif}
.inventory-empty-results{display:grid;gap:6px;padding:22px;border:1px dashed #41342a;border-radius:12px;background:rgba(17,14,12,.65);color:#8b7c6a;font:12px/1.5 system-ui,sans-serif}
.inventory-empty-results strong{font-size:14px;color:#d8c6aa}
body.inventory-mode .footer{display:none}

@media (max-width:980px){
  .mode-choice--inventory{grid-column:auto}
  .inventory-layout{grid-template-columns:1fr}
  .inventory-sidebar{position:static;height:auto;grid-template-rows:auto auto auto}
  .inventory-stock-panel{max-height:360px}
  .inventory-catalog-panel{max-height:520px}
}
@media (max-width:600px){
  .inventory-workspace{padding-top:16px}
  .inventory-section-head h2{font-size:23px}
  .inventory-item-row{padding-left:12px}
  .inventory-stock-row{grid-template-columns:1fr}
  .inventory-stepper{justify-self:start}
}

/* Список целей «Хочу собрать» */
.sidebar{grid-template-rows:auto auto auto minmax(0,1fr)}
.goal-panel{padding:14px 16px;background:linear-gradient(180deg,rgba(27,23,18,.98),rgba(16,14,12,.98));border-color:#51432f;max-height:250px;display:flex;flex-direction:column;min-height:118px}
.goal-panel[hidden]{display:none}
.goal-panel__title-row{align-items:flex-start}
.goal-panel__subtitle{margin:4px 0 0;color:#817568;font:10px/1.35 system-ui,sans-serif}
.goal-list{display:grid;gap:6px;overflow:auto;min-height:0;padding-right:3px}
.goal-list-empty{display:grid;gap:4px;padding:11px;border:1px dashed #44382c;border-radius:8px;background:rgba(12,10,9,.34);color:#887a68;font:10px/1.45 system-ui,sans-serif}
.goal-list-empty strong{color:#d6c3a7;font-size:11px}
.goal-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;border:1px solid #493a2b;border-radius:8px;background:#13100e;padding:4px}
.goal-row:hover{border-color:#6a4d31;background:#18120e}
.goal-row__select{min-width:0;border:0;background:transparent;text-align:left;padding:5px 6px;color:#d8c6ab;cursor:pointer;font:600 10px/1.3 system-ui,sans-serif}
.goal-row__select span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.goal-row__select small{display:block;margin-top:3px;color:#7f7160;font:9px/1.2 system-ui,sans-serif}
.goal-row__select:hover{color:#f0d3a3}
.goal-row__remove{width:27px;height:27px;border:1px solid #49372a;border-radius:6px;background:#17110e;color:#806f60;cursor:pointer;font:15px/1 system-ui,sans-serif}
.goal-row__remove:hover{border-color:#805044;background:#2a1713;color:#e2a293}
.selected-card__goalbar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:12px 13px;border:1px solid #45523a;border-radius:10px;background:linear-gradient(90deg,rgba(31,39,27,.88),rgba(24,27,21,.78));box-shadow:inset 0 1px 0 rgba(214,235,191,.035)}
.selected-card__goalbar.active{border-color:#637850;background:linear-gradient(90deg,rgba(38,50,31,.92),rgba(27,32,23,.84));box-shadow:inset 3px 0 0 #8eaa72,inset 0 1px 0 rgba(214,235,191,.05)}
.selected-card__goalcopy{display:flex;align-items:flex-start;gap:10px;min-width:0}
.selected-card__goalicon{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border:1px solid #5d704c;border-radius:50%;background:#192016;color:#b7ce98;font:18px/1 Georgia,serif}
.selected-card__goalcopy strong{display:block;color:#dce8cb;font:700 11px/1.25 system-ui,sans-serif}
.selected-card__goalcopy span:not(.selected-card__goalicon){display:block;margin-top:4px;color:#9baa8b;font:10px/1.45 system-ui,sans-serif}
.selected-card__goalbar .goal-toggle{flex:0 0 auto;border-color:#667c52;background:#20291b;color:#d8e8c4;padding:8px 11px;border-radius:8px}
.selected-card__goalbar .goal-toggle:hover{border-color:#91ac73;background:#2a3723;color:#eff8e2}
.selected-card__goalbar .goal-toggle.active{border-color:#78915f;background:#273320;color:#dceacb;box-shadow:none}
.goal-toggle{display:inline-flex;align-items:center;gap:6px;border:1px solid #77502e;border-radius:999px;background:#23170f;color:#e2bb82;padding:6px 10px;cursor:pointer;font:700 10px/1 system-ui,sans-serif;transition:.15s}
.goal-toggle:hover{border-color:#b37a3e;background:#342014;color:#f6d39c}
.goal-toggle.active{border-color:#b77a36;background:linear-gradient(180deg,#412610,#2e1b0f);color:#ffd18a;box-shadow:inset 0 0 16px rgba(216,143,55,.12)}
.goal-toggle__star{font-size:13px;line-height:1}
.goal-marker{color:#d8a653;margin-right:4px}

/* Цели в режиме сундука */
.inventory-section-head--goals{margin-top:0}
.inventory-section-head--ready{margin-top:34px;padding-top:25px;border-top:1px solid #34271e}
.inventory-goals{display:grid;gap:10px;margin-bottom:0}
.inventory-goal-card{border:1px solid #4d4032;border-radius:12px;background:linear-gradient(180deg,rgba(26,22,18,.97),rgba(16,14,12,.97));padding:14px 15px;box-shadow:0 8px 24px rgba(0,0,0,.13)}
.inventory-goal-card--ready{border-color:#4d6542;background:linear-gradient(180deg,rgba(28,36,25,.72),rgba(16,17,14,.96))}
.inventory-goal-card--near{border-color:#735538;background:linear-gradient(180deg,rgba(47,34,23,.75),rgba(18,15,13,.96))}
.inventory-goal-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.inventory-goal-card__name{min-width:0}
.inventory-goal-card__name strong{display:block;color:#ead9c0;font:650 15px/1.25 system-ui,sans-serif}
.inventory-goal-card__name span{display:block;margin-top:4px;color:#8d7e6d;font:10px/1.3 system-ui,sans-serif}
.inventory-goal-card__status{flex:0 0 auto;border:1px solid #554738;border-radius:999px;background:#17130f;color:#ac9a84;padding:5px 8px;font:700 9px/1 system-ui,sans-serif;white-space:nowrap}
.inventory-goal-card--ready .inventory-goal-card__status{border-color:#526a45;background:#1c2718;color:#b9d3a8}
.inventory-goal-card--near .inventory-goal-card__status{border-color:#785938;background:#2b1d12;color:#e1b77e}
.inventory-goal-progress{height:5px;border-radius:99px;background:#0d0b0a;border:1px solid #332b24;overflow:hidden;margin-top:11px}
.inventory-goal-progress span{display:block;height:100%;background:linear-gradient(90deg,#8e6439,#d09b59);border-radius:inherit}
.inventory-goal-card--ready .inventory-goal-progress span{background:linear-gradient(90deg,#617c56,#9fbd8a)}
.inventory-goal-card__detail{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;color:#a99a87;font:10px/1.4 system-ui,sans-serif}
.inventory-goal-card__detail>strong{color:#d4c1a4}
.inventory-goal-card__actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.goal-action{border:1px solid #59432e;border-radius:7px;background:#17120e;color:#cfad7c;padding:7px 10px;cursor:pointer;font:700 9px/1 system-ui,sans-serif}
.goal-action:hover{border-color:#916139;background:#2a1b11;color:#f1ca91}
.goal-action--remove{border-color:#4b3832;color:#9e8278;background:#151110}
.goal-action--remove:hover{border-color:#7a4a43;background:#291716;color:#d8a095}
.inventory-goals-empty{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border:1px dashed #473b30;border-radius:12px;background:rgba(18,15,13,.62)}
.inventory-goals-empty strong{display:block;color:#ddcbae;font:650 13px/1.25 system-ui,sans-serif}
.inventory-goals-empty span{display:block;margin-top:5px;color:#887b6b;font:10px/1.45 system-ui,sans-serif}
.inventory-goals-empty button{border:1px solid #67472e;border-radius:8px;background:#23170f;color:#e1b77d;padding:8px 11px;cursor:pointer;font:700 10px/1 system-ui,sans-serif;white-space:nowrap}
.inventory-goals-empty button:hover{border-color:#a26b39;background:#342014;color:#f4d09b}
@media (max-width:980px){.sidebar{grid-template-rows:auto auto auto auto}.goal-panel{max-height:320px}.inventory-goals-empty{grid-template-columns:1fr}.inventory-goals-empty button{justify-self:start}.selected-card__goalbar{align-items:flex-start;flex-direction:column}.selected-card__goalbar .goal-toggle{align-self:stretch;justify-content:center}}
.goal-row.current{border-color:#8d6237;background:linear-gradient(90deg,#2b1b11,#17110e);box-shadow:inset 2px 0 0 #c58a4a}
.goal-row.current .goal-row__select{color:#f2d2a2}

/* Цепочки получения недостающих компонентов */
.goal-action--plan{border-color:#596846;background:linear-gradient(180deg,#1b2417,#141912);color:#cfe0b8}
.goal-action--plan:hover,.goal-action--plan.active{border-color:#7f985f;background:linear-gradient(180deg,#27351f,#1b2517);color:#eef7df}
.inventory-acquisition{margin-top:13px;padding:13px;border:1px solid #4d493e;border-radius:10px;background:linear-gradient(180deg,rgba(22,20,17,.96),rgba(14,13,12,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.inventory-acquisition__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.inventory-acquisition__head>div span{display:block;color:#8d795f;font:700 8px/1.2 system-ui,sans-serif;letter-spacing:.14em}
.inventory-acquisition__head>div strong{display:block;margin-top:4px;color:#e5d4bc;font:650 13px/1.25 system-ui,sans-serif}
.inventory-acquisition__head em{flex:0 0 auto;border:1px solid #536747;border-radius:999px;background:#182016;color:#bcd1aa;padding:5px 8px;font:700 8px/1.2 system-ui,sans-serif;font-style:normal;white-space:nowrap}
.inventory-acquisition__intro{margin:8px 0 10px;color:#918575;font:10px/1.5 system-ui,sans-serif}
.inventory-acquisition__tree{display:grid;gap:0;margin-top:4px}
.inventory-acquisition__note{margin:12px 0 0;padding-top:10px;border-top:1px solid #302b25;color:#71695f;font:9px/1.45 system-ui,sans-serif}
.acq-route-root{padding:9px 0 7px}
.acq-route-root--divided{border-top:1px solid #312a23;margin-top:4px;padding-top:14px}
.acq-route{position:relative;padding-left:22px;font-family:system-ui,sans-serif}
.acq-route::before{content:"";position:absolute;left:6px;top:18px;bottom:-9px;width:1px;background:linear-gradient(180deg,#735338,#3e3228)}
.acq-route:last-child::before,.acq-route--leaf::before{bottom:8px}
.acq-route__item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:28px}
.acq-route__marker{position:absolute;left:-20px;top:8px;width:9px;height:9px;border-radius:50%;background:#2b1d13;border:2px solid #9b6c3f;box-shadow:0 0 0 3px #15110e}
.acq-route__item strong{min-width:0;color:#ddd0bd;font:650 11px/1.35 system-ui,sans-serif}
.acq-route__badge{border-radius:999px;padding:4px 7px;font:700 8px/1 system-ui,sans-serif;white-space:nowrap}
.acq-route__badge--ready{border:1px solid #536a48;background:#182117;color:#bfd7ad}
.acq-route__badge--partial{border:1px solid #725638;background:#271b12;color:#ddb47e}
.acq-route__badge--external{border:1px solid #65423c;background:#241513;color:#d39a8f}
.acq-route__recipe{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin:3px 0 5px;color:#8b7d6b;font:9px/1.35 system-ui,sans-serif}
.acq-route__recipe span{text-transform:uppercase;letter-spacing:.08em;color:#716558;font-size:7px;font-weight:700}
.acq-route__recipe strong{color:#d7ad78;font:650 9px/1.35 system-ui,sans-serif}
.acq-route__recipe em{font-style:normal;color:#7f9a72;font-size:8px}
.acq-route__hint{margin:2px 0 7px;color:#6f675e;font:8px/1.35 system-ui,sans-serif}
.acq-route__next{position:relative}
.acq-route__next>span{position:absolute;left:-21px;top:-2px;color:#6d5138;font:700 12px/1 system-ui,sans-serif;background:#15110e;padding:0 2px}
.acq-route__branch-label{margin:7px 0 4px;color:#837363;font:700 8px/1.3 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.09em}
.acq-route__branches{display:grid;grid-template-columns:1fr;gap:7px;margin:0 0 7px 2px;min-width:0}
/* Только первое логическое разветвление можно показать рядом. Дальше ветви идут вертикально,
   иначе каждая рекурсия снова делит ширину пополам и дерево схлопывается. */
.acq-route--level-0>.acq-route__branches{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));column-gap:22px;row-gap:9px}
.acq-route__branches>.acq-route{padding-left:18px;min-width:0}
.acq-route__branches>.acq-route::before{left:5px;background:#41362d}
.acq-route__branches>.acq-route .acq-route__marker{left:-16px}
.acq-route--level-1,.acq-route--level-2,.acq-route--level-3,.acq-route--level-4{margin-left:0}
.acq-route__item{min-width:0}
.acq-route__item strong{overflow-wrap:break-word;word-break:normal}
.acq-route--level-2 .acq-route__item,.acq-route--level-3 .acq-route__item,.acq-route--level-4 .acq-route__item{grid-template-columns:minmax(0,1fr)}
.acq-route--level-2 .acq-route__badge,.acq-route--level-3 .acq-route__badge,.acq-route--level-4 .acq-route__badge{justify-self:start}
.acq-route__leaf-note{margin:2px 0 7px;color:#81766a;font:9px/1.45 system-ui,sans-serif;max-width:760px}
.acq-route__leaf-note span{color:#a68d6e}
@media (max-width:900px){.acq-route--level-0>.acq-route__branches{grid-template-columns:1fr}}
@media (max-width:720px){.inventory-acquisition__head{flex-direction:column}.inventory-acquisition__head em{white-space:normal}.acq-route__badge{white-space:normal;text-align:left}.acq-route__branches,.acq-route--level-0>.acq-route__branches{grid-template-columns:1fr;gap:5px}.acq-route{padding-left:20px}.acq-route__item{grid-template-columns:1fr}.acq-route__badge{justify-self:start}.acq-route__marker{top:7px}}

/* Аудит данных: смешиваемые требования рецепта (например, любые 3 самоцвета) */
.ingredient--pool{flex-wrap:wrap;border-style:dashed;border-color:#5a4937;background:linear-gradient(180deg,#17130f,#100e0c);color:#d0bea4}
.ingredient--pool small{margin-left:3px;color:#8f806d;font:8px/1 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.ingredient--pool.match{border-style:solid;border-color:#946137;background:#2a1a10;color:#f0d7b0}
