
  :root{
    --bg:#0d0d12;
    --bg2:#14141c;
    --panel:#1b1b26;
    --panel2:#22222f;
    --line:#34344a;
    --text:#d8d4c8;
    --muted:#97938a;
    --gold:#c8a75a;
    --gold2:#e8cf8a;
    --blue:#6aa0e0;
    --yellow:#e0c060;
    --orange:#d98a4a;
    --red:#e06a5a;
    --green:#7fbf7f;
  }
  *{box-sizing:border-box}
  body{
    margin:0;
    background:radial-gradient(1200px 600px at 50% -100px, #23233a 0%, var(--bg) 55%);
    color:var(--text);
    font-family:"Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
    line-height:1.65;
  }
  a{color:var(--blue);text-decoration:none}
  a:hover{color:#a8c8f0;text-decoration:underline}
  .wrap{max-width:1080px;margin:0 auto;padding:0 20px 80px}
  header.hero{
    text-align:center;
    padding:56px 20px 40px;
    border-bottom:1px solid var(--line);
    margin-bottom:8px;
  }
  .kicker{
    letter-spacing:.28em;
    text-transform:uppercase;
    color:var(--gold);
    font-size:.78rem;
    font-weight:600;
  }
  h1{
    font-size:2.5rem;
    margin:12px 0 10px;
    color:#f3efe4;
    font-weight:800;
    letter-spacing:.01em;
  }
  .sub{color:var(--muted);max-width:640px;margin:0 auto;font-size:1.02rem}
  .pill{
    display:inline-block;margin-top:18px;padding:6px 14px;border:1px solid var(--line);
    border-radius:999px;color:var(--muted);font-size:.8rem;background:var(--bg2)
  }
  section{margin-top:56px}
  h2{
    font-size:1.7rem;color:#f3efe4;margin:0 0 6px;
    display:flex;align-items:center;gap:14px;
  }
  h2 .num{
    flex:0 0 auto;width:40px;height:40px;border-radius:10px;
    background:linear-gradient(180deg,var(--gold2),var(--gold));
    color:#1a1406;font-weight:800;display:grid;place-items:center;font-size:1.15rem;
    box-shadow:0 2px 10px rgba(200,167,90,.25);
  }
  .lead{color:var(--muted);max-width:760px;margin:4px 0 20px;font-size:.98rem}
  .card{
    background:var(--panel);border:1px solid var(--line);border-radius:14px;
    padding:20px 22px;margin-top:16px;
  }
  .card.tint{border-color:#3a3450}
  strong{color:#efe9d8}
  b.en{color:var(--muted);font-weight:500}
  code,.en{
    font-family:"Cascadia Code", Consolas, monospace;
  }
  /* Rarity colors */
  .n{color:#e8e8e8}.m{color:var(--blue)}.r{color:var(--yellow)}.u{color:var(--orange)}

  /* Affix diagram */
  .slots{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 6px}
  .slot{
    flex:1 1 140px;min-width:130px;border-radius:10px;padding:14px 12px;text-align:center;
    border:1px solid var(--line);background:var(--bg2);
  }
  .slot .tag{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
  .slot .val{display:block;font-size:1.15rem;font-weight:700;margin-top:4px}
  .slot.pre .val{color:var(--gold2)}
  .slot.suf .val{color:var(--blue)}
  .diagram-note{color:var(--muted);font-size:.86rem;margin-top:6px}

  .cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .statcols{margin-top:0;align-items:start}
  .stats-label{font-size:.84rem;font-weight:700;color:var(--muted);margin:16px 0 8px;letter-spacing:.02em}
  .statcols .fmods{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 14px}
  @media(max-width:720px){.cols{grid-template-columns:1fr}}
  .exhead{display:flex;align-items:center;gap:10px;margin-bottom:8px}
  .exhead .dot{width:10px;height:10px;border-radius:50%}
  .exhead h3{margin:0;font-size:1.05rem;color:#efe9d8}
  ul.modlist{margin:8px 0 4px;padding-left:0;list-style:none}
  ul.modlist li{padding:6px 0 6px 24px;position:relative;border-bottom:1px dashed #262636}
  ul.modlist li:last-child{border-bottom:none}
  ul.modlist li::before{content:"";position:absolute;left:6px;top:14px;width:8px;height:8px;border-radius:2px}
  ul.modlist li.pre::before{background:var(--gold)}
  ul.modlist li.suf::before{background:var(--blue)}
  .mtype{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}

  /* Currency grid */
  .curr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:14px}
  .curr{
    background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;
    display:flex;gap:14px;align-items:flex-start;
    transition:transform .12s ease, border-color .12s ease;
  }
  .curr:hover{transform:translateY(-2px);border-color:var(--gold)}
  .curr img{width:52px;height:52px;object-fit:contain;flex:0 0 auto;image-rendering:auto}
  .curr .cname{font-weight:700;color:#f0ecdf;font-size:.98rem}
  .curr .ename{font-size:.78rem;color:var(--muted);margin-bottom:4px}
  .curr .ceffect{font-size:.85rem;color:var(--text)}
  .curr .ceffect .hl{color:var(--gold2)}

  /* Bases */
  table.bases{width:100%;border-collapse:collapse;margin-top:8px}
  table.bases th,table.bases td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
  table.bases th{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600}
  table.bases td.name{font-weight:700;color:#f0ecdf}
  table.bases td.lvl{color:var(--muted);font-variant-numeric:tabular-nums}
  .defchip{display:inline-block;padding:2px 10px;border-radius:6px;font-size:.74rem;font-weight:700;letter-spacing:.04em}
  .defchip.armor{background:#3a2a1c;color:var(--orange)}
  .defchip.evasion{background:#1c3324;color:var(--green)}
  .defchip.es{background:#1d2c3c;color:var(--blue)}
  .defchip.armev{background:linear-gradient(90deg,#3a2a1c,#1c3324);color:#e0cfa8}
  .defchip.armes{background:linear-gradient(90deg,#3a2a1c,#1d2c3c);color:#c8d6e8}
  .defchip.eves{background:linear-gradient(90deg,#1c3324,#1d2c3c);color:#c8e0d0}

  .slotcard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-top:18px}
  .slotcard h3{color:#f0ecdf;margin:0 0 4px;font-size:1.22rem;display:flex;align-items:baseline;gap:10px}
  .slotcard h3 .slot-en{font-size:.8rem;color:var(--muted);font-weight:400}
  .slotcard .slot-desc{color:var(--muted);font-size:.88rem;margin:0 0 14px}
  .basegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:12px}
  .basecell{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:14px 12px;text-align:center;display:flex;flex-direction:column;align-items:center}
  .basecell img{width:74px;height:74px;object-fit:contain;margin:0 auto 10px}
  .basecell .defchip{margin-bottom:8px}
  .basecell .ru{font-weight:700;color:#f0ecdf;font-size:.9rem;line-height:1.25}
  .basecell .en{font-size:.72rem;color:var(--muted);margin-top:2px}
  .basecell .def{font-size:.76rem;color:var(--text);margin-top:7px;line-height:1.4}
  .basecell .def b{color:var(--gold2);font-weight:600}
  .basecell .variant{margin-top:9px;padding-top:9px;border-top:1px dashed #30303f;font-size:.71rem;color:var(--muted);line-height:1.4;width:100%}
  .basecell .variant b{color:#e8e2d4;font-weight:600}

  /* Item anatomy */
  .anatomy{margin-top:6px}
  .anatomy .shot{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#000}
  .anatomy .shot img{display:block;width:100%;height:auto}
  .anatomy-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;margin-top:16px}
  .leg{display:flex;gap:10px;align-items:flex-start;background:var(--bg2);border:1px solid var(--line);border-radius:9px;padding:10px 12px}
  .leg .chip{flex:0 0 auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:800;color:#fff;border:2px solid #fff}
  .leg .chip.rune{background:#2aa7a0}
  .leg .chip.pre{background:#c8a75a;color:#1a1406}
  .leg .chip.suf{background:#5a8fd0}
  .leg .chip.des{background:#96c84b}
  .leg .ltext{font-size:.87rem;line-height:1.4}
  .leg .lt{color:#f0ecdf;font-weight:600}
  .leg .ld{color:var(--muted);font-size:.8rem;display:block;margin-top:1px}

  /* Chance targets */
  .chance-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
  .chance{
    background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center;
  }
  .chance .flow{display:flex;align-items:flex-start;justify-content:center;gap:10px}
  .chance .fi{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center}
  .chance .fi img{width:72px;height:72px;object-fit:contain;margin:0 auto}
  .chance .fi-name{font-size:.8rem;font-weight:700;color:#f0ecdf;line-height:1.2;margin-top:8px}
  .chance .fi-en{font-size:.66rem;color:var(--muted);margin-top:1px}
  .chance .flow-arrow{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;padding-top:22px;color:var(--gold);font-size:1.5rem;line-height:1}
  .chance .flow-arrow-sub{font-size:.52rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:4px;max-width:66px;white-space:normal;text-align:center}
  .chance .pool{font-size:.78rem;color:var(--muted);margin-top:12px;border-top:1px solid var(--line);padding-top:10px}

  /* Orb example card */
  .orb-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-top:16px}
  .orb-head{display:flex;gap:14px;align-items:flex-start}
  .orb-head img{width:52px;height:52px;object-fit:contain;flex:0 0 auto}
  .orb-info .orb-name{font-weight:700;color:#f0ecdf;font-size:1.05rem}
  .orb-info .orb-en{font-size:.78rem;color:var(--muted);margin-bottom:4px}
  .orb-info .orb-desc{font-size:.9rem;color:var(--text);line-height:1.5}
  .orb-example{display:flex;align-items:flex-start;justify-content:center;gap:16px;margin-top:18px;flex-wrap:wrap}
  .ex-col{display:flex;flex-direction:column;align-items:center}
  .ex-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-bottom:8px;font-weight:700}
  .ex-label.after{color:var(--blue)}
  .orb-arrow{color:var(--gold);font-size:1.6rem;align-self:center;padding-top:22px;flex:0 0 auto}
  .itip{width:250px;background:linear-gradient(180deg,#12121a,#0b0b12);border:1px solid #3c3c4e;border-radius:10px;padding:12px 14px;text-align:center;line-height:1.4}
  .itip .iname{font-size:.95rem;font-weight:700}
  .itip.normal .iname{color:#e8e8e8}
  .itip.magic .iname{color:#8fb4f0}
  .itip .ibase{color:#9a927e;font-size:.72rem;margin-top:1px}
  .itip .isep{height:1px;background:#2c2c3a;margin:9px 0}
  .itip .iprop{color:#c9c3b2;font-size:.75rem}
  .itip .imod{color:#8fb4f0;font-size:.8rem;margin-top:9px;font-weight:600}
  .itip .ireq{color:#8a8270;font-size:.7rem;margin-top:9px}
  .itip.rare .iname{color:#e0c060}
  .itip.unique .iname{color:#d98a4a}
  .itip .ifract{color:#c8a75a}
  .itip .icorrupt{color:#e06a5a;font-size:.72rem;margin-top:6px;font-weight:600}

  /* Tabs + accordion */
  .tabs{position:sticky;top:0;z-index:60;display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:10px 0;margin:0 0 4px;background:linear-gradient(180deg,rgba(13,13,18,.96),rgba(13,13,18,.84));backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
  .tab{background:var(--bg2);border:1px solid var(--line);color:var(--text);padding:9px 18px;border-radius:10px;cursor:pointer;font:inherit;font-size:.95rem;font-weight:600;transition:border-color .15s}
  .tab:hover{border-color:var(--gold);color:var(--gold2)}
  .tab.active{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1a1406;border-color:var(--gold)}
  .tab-panel{display:none;animation:fadeIn .18s ease}
  .tab-panel.active{display:block}
  @keyframes fadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

  .tip{
    margin-top:20px;background:linear-gradient(180deg,#221d10,#1a1710);
    border:1px solid #4a3d1c;border-radius:12px;padding:16px 20px;
  }
  .tip b{color:var(--gold2)}
  .tip .tiphead{color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}

  .note{
    margin-top:20px;padding:14px 18px;border-left:3px solid var(--blue);
    background:var(--bg2);border-radius:0 10px 10px 0;color:var(--muted);font-size:.9rem;
  }
  .note a{color:var(--blue);text-decoration:none}
  .note a:hover{text-decoration:underline}

  .gloss{list-style:none;margin:6px 0 0;padding-left:0}
  .gloss li{padding:9px 0;border-bottom:1px dashed #262636;font-size:.92rem;line-height:1.55}
  .gloss li:last-child{border-bottom:none}
  .gloss b{color:#f0ecdf}
  .gloss .en{color:var(--muted);font-size:.8rem;margin-left:4px}

  footer{
    margin-top:64px;padding-top:20px;border-top:1px solid var(--line);
    color:var(--muted);font-size:.8rem;
  }
  footer a{color:var(--blue);text-decoration:none}
  footer a:hover{text-decoration:underline}
  .toc{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
  .toc a{color:var(--text);text-decoration:none;font-size:.88rem;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg2)}
  .toc a:hover{border-color:var(--gold);color:var(--gold2)}

  /* Multi-page navigation (grouped dropdowns) */
  .site-nav{position:sticky;top:0;z-index:60;display:flex;gap:4px;flex-wrap:wrap;align-items:center;justify-content:center;padding:10px 0;margin:0 0 4px;background:linear-gradient(180deg,rgba(13,13,18,.96),rgba(13,13,18,.84));backdrop-filter:blur(8px);border-bottom:1px solid var(--line);overflow:visible;border-top:0}
  .navlink,.navgroup>summary{display:inline-flex;align-items:center;gap:5px;padding:8px 9px;font-size:.84rem;border:1px solid var(--line);border-radius:10px;background:var(--bg2);color:var(--text);text-decoration:none;font-weight:600;font-size:.95rem;transition:border-color .15s;cursor:pointer;list-style:none}
  .navlink:hover,.navgroup>summary:hover{border-color:var(--gold);color:var(--gold2)}
  .navlink.active,.navgroup.active>summary{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1a1406;border-color:var(--gold)}
  .navgroup{position:relative}
  .navgroup>summary::-webkit-details-marker{display:none}
  .navgroup>summary::after{content:"\25BE";margin-left:7px;font-size:.75em;opacity:.7}
  .navgroup[open]>summary{border-color:var(--gold)}
  .navdrop{position:absolute;top:calc(100% + 8px);left:0;z-index:70;display:flex;flex-direction:column;min-width:232px;padding:7px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.55)}
  .navdrop a{display:block;padding:8px 12px;border-radius:7px;color:var(--text);text-decoration:none;font-size:.92rem;white-space:nowrap}
  .navdrop a:hover{background:var(--bg2);color:var(--gold2)}
  .navdrop a.active{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1a1406;font-weight:700}

  .page-head{display:flex;align-items:baseline;gap:14px;padding:26px 0 16px;border-bottom:1px solid var(--line);margin-bottom:8px}
  .page-head .brand{color:var(--gold);text-decoration:none;font-weight:700;letter-spacing:.05em;font-size:.92rem}
  .page-head .brand:hover{color:var(--gold2)}

  .section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:18px}
  .sec-card{display:block;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--text);transition:border-color .15s,transform .12s}
  .sec-card:hover{border-color:var(--gold);transform:translateY(-2px)}
  .sec-card h2{margin:0 0 6px;font-size:1.2rem;color:#f0ecdf}
  .sec-card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}

  /* Abyss page */
  .abyss-table{width:100%;border-collapse:collapse;margin-top:10px}
  .abyss-table th,.abyss-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
  .abyss-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600}
  .abyss-table img{width:42px;height:42px;object-fit:contain;vertical-align:middle;margin-right:10px}
  .abyss-table .bname{font-weight:700;color:#f0ecdf}
  .abyss-table .btarget{color:var(--text);font-size:.85rem}
  .abyss-table .btier{color:var(--muted);font-size:.8rem}
  .abyss-table tr:last-child td{border-bottom:none}

  .omen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:12px}
  .omen{display:flex;gap:12px;align-items:flex-start;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:12px}
  .omen img{width:42px;height:42px;object-fit:contain;flex:0 0 auto}
  .omen .oname{font-weight:700;color:#f0ecdf;font-size:.9rem;line-height:1.3}
  .omen .oef{color:var(--muted);font-size:.8rem;line-height:1.4;margin-top:3px}

  .essence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
  .essence{display:flex;gap:10px;align-items:flex-start;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:9px 11px}
  .essence img{width:34px;height:34px;object-fit:contain;flex:0 0 auto}
  .essence .ename{font-weight:700;color:#f0ecdf;font-size:.86rem;line-height:1.25}
  .essence .eef{color:var(--muted);font-size:.76rem;line-height:1.35;margin-top:2px}
  @media(max-width:720px){.essence-grid{grid-template-columns:1fr}}

  /* Bases accordion */
  details.acc{margin:16px 0;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}
  details.acc>summary{cursor:pointer;padding:16px 20px;font-size:1.15rem;font-weight:700;color:#f0ecdf;list-style:none;display:flex;align-items:center;gap:10px;user-select:none}
  details.acc>summary::-webkit-details-marker{display:none}
  details.acc>summary::before{content:"\25B8";color:var(--gold);font-size:1.05rem;transition:transform .15s;display:inline-block}
  details.acc[open]>summary::before{transform:rotate(90deg)}
  details.acc .acc-body{padding:0 20px 20px}
  .acc-count{font-size:.7rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-left:auto}
  .wclass{margin-top:18px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
  .wclass:first-child{margin-top:4px}
  .wclass h4{margin:0 0 10px;font-size:1.02rem;color:var(--gold2);font-weight:700;display:flex;align-items:center;gap:8px}

  /* Abyss v2 */
  .abyss-flow{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:16px}
  .abyss-step{display:flex;flex-direction:column;align-items:center;gap:8px}
  .abyss-steplabel{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:600}
  .abyss-arrow{color:var(--gold);font-size:1.5rem;font-weight:700;line-height:1}
  .abyss-options{width:252px;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:7px}
  .abyss-options .opt{font-size:.78rem;color:#6fd47a;line-height:1.35;padding:6px 8px;border:1px solid #2f4a33;border-radius:6px;background:#0f1a12}
  .abyss-options .opt small{display:block;color:#8a9a8c;font-size:.68rem;margin-top:2px}
  .itip .imod.des{color:#6fd47a}
  .itip .imod.gone{color:#6a6a7a;text-decoration:line-through}

  .faction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:14px}
  .faction{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--bg2)}
  .faction h4{margin:0 0 4px;font-size:1.02rem}
  .faction .ftag{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}
  .faction ul{margin:8px 0 0;padding-left:18px}
  .faction li{font-size:.8rem;color:var(--text);margin:5px 0;line-height:1.4}
  .faction.ulaman{border-color:#2a4a6a}
  .faction.amanamu{border-color:#5a4a2a}
  .faction.kurgal{border-color:#2a5a3a}
  .faction.ulaman h4{color:#7db4e8}
  .faction.amanamu h4{color:#e0b060}
  .faction.kurgal h4{color:#6fd47a}

  .tips-list{margin:10px 0 0;padding-left:0;list-style:none}
  .tips-list li{position:relative;padding-left:24px;margin:9px 0;font-size:.88rem;line-height:1.45}
  .tips-list li::before{content:"\2714";position:absolute;left:0;color:#6fd47a;font-weight:700}
  .mistakes-list{margin:10px 0 0;padding-left:0;list-style:none}
  .mistakes-list li{position:relative;padding-left:24px;margin:9px 0;font-size:.88rem;line-height:1.45}
  .mistakes-list li::before{content:"\2715";position:absolute;left:0;color:#e06a5a;font-weight:700}

  .bone-matrix{width:100%;border-collapse:collapse;margin-top:12px;font-size:.82rem}
  .bone-matrix th,.bone-matrix td{padding:8px;border:1px solid var(--line);text-align:center;vertical-align:middle}
  .bone-matrix th{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}
  .bone-matrix td{color:var(--text)}
  .bone-matrix img{width:34px;height:34px;object-fit:contain;display:block;margin:0 auto 4px}
  .bone-matrix .bname{font-size:.72rem;line-height:1.2;display:block}
  .bone-matrix .tier{font-weight:700;text-align:left;white-space:nowrap;font-size:.8rem}
  .tier.gnawed{color:#a0a0a0}
  .tier.preserved{color:#7db4e8}
  .tier.ancient{color:#e0c060}

  /* poe2db-style mods table */
  .modtable{width:100%;border-collapse:collapse;font-size:.82rem;margin-top:4px}
  .modtable th,.modtable td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
  .modtable th{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}
  .modtable tr:last-child td{border-bottom:none}
  .modtable .mname{font-weight:700;white-space:nowrap}
  .modtable .mname.ulaman{color:#7db4e8}
  .modtable .mname.amanamu{color:#e0b060}
  .modtable .mname.kurgal{color:#6fd47a}
  .modtable .lvl{color:var(--muted);white-space:nowrap}
  .modtable .pre{color:#8fb4f0;font-weight:600;white-space:nowrap}
  .modtable .suf{color:#e0c060;font-weight:600;white-space:nowrap}
  .modtable .desc{color:#c9c3b2;line-height:1.5}
  .modtable .v{color:#a8c7f0}

  /* item-type faction mods */
  .fmods{margin-top:12px}
  .fmods:first-child{margin-top:2px}
  .cols .fmods{margin-top:0}
  .cols .fmods .modacc:last-child{margin-bottom:0}
  .fmods-head{font-weight:700;font-size:.88rem;margin-bottom:6px;letter-spacing:.02em}
  .fmods.ulaman .fmods-head{color:#7db4e8}
  .fmods.amanamu .fmods-head{color:#e0b060}
  .fmods.kurgal .fmods-head{color:#6fd47a}
  .fmods.lightless .fmods-head{color:#b89ad0}
  .fmods.abyss .fmods-head{color:#9a8a7a}
  .fmods ul{margin:0;padding-left:0;list-style:none}
  .fmods li{font-size:.82rem;color:#c9c3b2;line-height:1.5;margin:6px 0;padding-left:18px;position:relative}
  .fmods li::before{content:"";position:absolute;left:3px;top:.55em;width:6px;height:6px;border-radius:50%;background:#3d3d50}

  /* nested mod accordion */
  .modacc{margin:6px 0;border:1px solid var(--line);border-radius:9px;background:#14141c;overflow:hidden}
  .modacc>summary{cursor:pointer;padding:8px 12px;list-style:none;display:flex;align-items:center;gap:8px;font-size:.85rem;flex-wrap:wrap}
  .modacc>summary::-webkit-details-marker{display:none}
  .modacc>summary::before{content:"\25B8";color:var(--gold);font-size:.9rem;transition:transform .15s;display:inline-block}
  .modacc[open]>summary::before{transform:rotate(90deg)}
  .modacc .modname{font-weight:700;color:#e8e2d4}
  .modacc .modtag{font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--bg2);border:1px solid var(--line);border-radius:8px;padding:1px 7px}
  .modacc .modcnt{margin-left:auto;font-size:.7rem;color:var(--muted)}
  .tiertable{width:100%;border-collapse:collapse;font-size:.8rem}
  .tiertable th,.tiertable td{padding:5px 12px;border-top:1px solid var(--line);text-align:left}
  .tiertable th{font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
  .tiertable .t{color:#e0c060;font-weight:700;white-space:nowrap}
  .tiertable .tv{color:var(--muted);white-space:nowrap}
  .tiertable .v{color:#c9c3b2}
  .tiertable .w{color:#8fbf7a;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;opacity:.85}
  .tiertable th:last-child{text-align:right}

  /* Home page groups */
  .home-group{margin-top:46px}
  .home-group:first-child{margin-top:10px}
  .home-h{font-size:1.5rem;color:#f3efe4;margin:0 0 4px;line-height:1.2}
  .home-group .lead{margin:0 0 16px;font-size:.92rem}
  .home-group .sec-card h2{font-size:1.08rem}
  @media(max-width:720px){.home-group{margin-top:34px}}

  .anoint-search{width:100%;max-width:460px;padding:11px 16px;border:1px solid var(--line);border-radius:10px;background:var(--bg2);color:var(--text);font:inherit;font-size:.95rem;margin:4px 0 18px;outline:none}
  .anoint-search:focus{border-color:var(--gold)}
  .anoint-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;margin-top:10px}
  .anoint{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 13px}
  .anoint .aname{font-weight:700;color:#f0ecdf;font-size:.88rem;margin-bottom:5px}
  .anoint .aemo{font-size:.76rem;color:var(--muted);line-height:1.45}
  .anoint.hidden{display:none}

  .anoint-results{margin:0 0 18px;max-height:62vh;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg2)}
  .anoint-res{padding:10px 14px;border-bottom:1px solid var(--line)}
  .anoint-res:last-child{border-bottom:none}
  .anoint-res .aname{font-weight:700;color:#f0ecdf;font-size:.9rem}
  .anoint-res .aemo{font-size:.76rem;color:var(--blue);margin:3px 0}
  .anoint-res .aef{font-size:.8rem;color:var(--muted);line-height:1.4}
  .a-more{padding:10px 14px;color:var(--muted);font-size:.82rem}
  .a-empty{padding:14px;color:var(--muted);font-size:.85rem}
  .shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:12px 0 0}
  .shots img{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;display:block;background:var(--bg2)}
  .tree-list{display:grid;grid-template-columns:1fr;gap:16px;margin-top:14px}
  .tree-item{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg2)}
  .tree-thumb{display:flex;justify-content:center;align-items:center;background:var(--bg);border-radius:8px;overflow:hidden}
  .tree-thumb img{max-width:100%;max-height:460px;object-fit:contain;display:block;cursor:zoom-in}
  .tree-thumb video{max-width:100%;max-height:460px;border-radius:8px;display:block;background:#000}
  .tree-cap{margin-top:8px;font-size:.92rem;color:var(--text);line-height:1.5}
  .tree-cap b{color:#efe9d8}
  .lightbox{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);align-items:center;justify-content:center;padding:20px;cursor:zoom-out}
  .lightbox.on{display:flex}
  .lightbox img{max-width:96vw;max-height:92vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #000}
  .lightbox .lb-close{position:absolute;top:10px;right:24px;font-size:42px;line-height:1;color:#fff;cursor:pointer;font-family:Arial,sans-serif}
  .lightbox .lb-close:hover{color:var(--gold)}
  @media(max-width:700px){.tree-thumb img{max-height:300px}}
  .farm-item{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:14px 0}
  .farm-item h4{margin:0 0 6px;font-size:1.05rem;color:#efe9d8;font-weight:700}
  .farm-item h4 .rate{color:var(--gold);font-size:.9rem;margin-left:6px}
  .farm-item > p{margin:0 0 8px;color:var(--text)}
  .farm-item ul{margin:0;padding-left:20px}
  .farm-item ul li{margin-bottom:6px}
  .farm-item .shot{width:100%;max-width:640px;border:1px solid var(--line);border-radius:10px;margin-top:8px;display:block}
  details.farm-acc{margin:12px 0;border:1px solid var(--line);border-radius:12px;background:var(--bg2);overflow:hidden}
  details.farm-acc>summary{cursor:pointer;padding:10px 14px;font-size:1rem;font-weight:700;color:#efe9d8;list-style:none;display:flex;align-items:center;gap:8px;user-select:none}
  details.farm-acc>summary::-webkit-details-marker{display:none}
  details.farm-acc>summary::before{content:"\25B8";color:var(--gold);font-size:1rem;transition:transform .15s;display:inline-block}
  details.farm-acc[open]>summary::before{transform:rotate(90deg)}
  details.farm-acc>.acc-body{padding:0 14px 14px}
  .base-links{margin:8px 0 0;padding:0;list-style:none}
  .base-links li{margin:6px 0}
  .base-links a{color:var(--gold);text-decoration:none;font-weight:600}
  .base-links a:hover{color:var(--gold2);text-decoration:underline}
  .base-note{margin:4px 0 8px;color:var(--muted);font-size:.85rem;line-height:1.5}
  .navsearch-btn{margin-left:14px;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);cursor:pointer;font-size:.85rem}
  .navsearch-btn:hover{border-color:var(--gold);color:var(--gold)}
  .nav-ico{width:14px;height:14px;flex-shrink:0;opacity:.78}
  .navlink.active .nav-ico,.navgroup.active .nav-ico{opacity:1}
  .navsearch-btn{display:inline-flex;align-items:center;gap:5px;margin-left:2px;padding:8px 9px;font-size:.84rem}
  .sbox{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;z-index:1000;padding:90px 14px}
  .sbox.on{display:block}
  .sbox-in{max-width:460px;margin:0 auto;display:flex;gap:8px;align-items:center;background:var(--bg2);border:1px solid var(--gold);border-radius:10px;padding:11px 16px}
  .sbox-in input{flex:1;background:transparent;border:0;color:var(--text);font:inherit;font-size:.95rem;outline:none}
  .sbox-close{cursor:pointer;color:var(--muted);font-size:1.3rem;line-height:1}
  .sbox-close:hover{color:var(--gold)}
  .sbox-res{max-width:460px;margin:10px auto 0;max-height:62vh;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--bg2)}
  .sbox-item{display:block;padding:10px 14px;border-bottom:1px solid var(--line);text-decoration:none}
  .sbox-item:last-child{border-bottom:none}
  .sbox-item:hover{background:var(--panel)}
  .sbox-t{display:block;font-weight:700;color:#f0ecdf;font-size:.9rem}
  .sbox-p{display:block;font-size:.76rem;color:var(--blue);margin-top:3px}
  .sbox-empty{padding:14px;font-size:.8rem;color:var(--muted)}
  .act-ch{margin:16px 0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg2)}
  .act-ch h4{margin:0 0 8px;font-size:1rem;color:#efe9d8;font-weight:700}
  .act-num{display:inline-block;min-width:26px;margin-right:8px;color:var(--gold);font-weight:800}
  .act-goal,.act-rew{font-size:.88rem;line-height:1.55;color:var(--text);margin:4px 0}
  .act-goal b,.act-rew b{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:2px}
  .act-steps{margin:4px 0 0;padding-left:20px}
  .act-steps li{margin:3px 0}
  .act-progress{display:flex;align-items:center;gap:12px;margin:6px 0 10px}
  .act-bar{flex:1;height:10px;border-radius:99px;background:var(--bg2);overflow:hidden;border:1px solid var(--line)}
  .act-bar>span{display:block;height:100%;width:0;background:var(--gold);transition:width .25s}
  .act-count{font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums;min-width:60px;text-align:right}
  .act-actions{margin:0 0 14px}
  .act-actions button{background:var(--bg2);border:1px solid var(--line);border-radius:8px;color:var(--muted);padding:5px 10px;cursor:pointer;font-size:.8rem}
  .act-actions button:hover{border-color:var(--gold);color:var(--gold)}
  .act-ch{margin:14px 0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg2);transition:opacity .2s,border-color .2s}
  .act-ch.done{border-color:rgba(16,185,129,.5);opacity:.75}
  .act-head{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap}
  .act-head h4{margin:0;font-size:1rem;color:#efe9d8;font-weight:700}
  .act-num{color:var(--gold);font-weight:800;margin-right:4px}
  .act-done-label{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:.75rem;color:var(--muted);user-select:none}
  .act-done-label input{width:16px;height:16px;accent-color:var(--gold);cursor:pointer}
  .act-rew,.act-notes{font-size:.88rem;line-height:1.55;color:var(--text);margin:6px 0}
  .act-rew b,.act-notes b{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:2px}
  .act-notes ul{margin:4px 0 0;padding-left:20px}
  .act-note{font-size:.82rem;color:var(--muted);margin:4px 0}
  .act-steps{margin:4px 0 0;padding-left:20px}
  .act-steps li{margin:3px 0}
  .act-map{margin:8px 0}
  .act-map summary{cursor:pointer;font-size:.8rem;color:var(--gold);font-weight:600}
  .act-map img{display:block;width:100%;max-width:560px;margin-top:8px;border:1px solid var(--line);border-radius:10px}
  .act-next{margin-top:8px;background:transparent;border:1px solid var(--gold);border-radius:8px;color:var(--gold);padding:6px 12px;cursor:pointer;font-size:.82rem;font-weight:600}
  .act-next:hover{background:var(--gold);color:#14120d}
  .pn-controls{margin:10px 0 6px}
  .pn-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 16px}
  .pn-tab{background:var(--bg2);border:1px solid var(--line);border-radius:999px;color:var(--muted);padding:6px 12px;cursor:pointer;font-size:.8rem;font-weight:600}
  .pn-tab span{opacity:.55;font-weight:400}
  .pn-tab:hover{border-color:var(--gold);color:var(--gold)}
  .pn-tab.on{background:var(--gold);border-color:var(--gold);color:#14120d}
  .pn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-bottom:16px}
  .pn-card{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg2)}
  .pn-card:hover{border-color:var(--gold)}
  .pn-icon{width:40px;height:40px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
  .pn-noimg{display:block;background:var(--panel);border-radius:8px}
  .pn-body{min-width:0;flex:1}
  .pn-title{font-size:.85rem;font-weight:600;color:#efe9d8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pn-meta{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-top:2px}
  .pn-val{font-size:.88rem;font-weight:700;color:#f0ecdf}
  .pn-cur{font-size:.72rem;color:var(--muted)}
  .pn-cur.div{color:#d8b4fe}
  .pn-chg{font-size:.76rem;font-weight:600}
  .pn-chg.up{color:#10b981}
  .pn-chg.down{color:#ef4444}
  .pn-sub{font-size:.7rem;color:var(--muted);margin-top:1px}
  .pn-note{font-size:.78rem;color:var(--muted)}
  .nw-feed{display:flex;flex-direction:column;gap:10px;margin:6px 0 18px}
  .nw-item{display:flex;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg2);text-decoration:none;transition:border-color .15s,transform .15s}
  .nw-item:hover{border-color:var(--gold)}
  .nw-date{flex-shrink:0;width:92px;font-size:.76rem;color:var(--muted);padding-top:2px}
  .nw-body{min-width:0}
  .nw-title{font-size:.95rem;font-weight:700;color:#efe9d8;line-height:1.35}
  .nw-item:hover .nw-title{color:var(--gold2)}
  .nw-desc{font-size:.82rem;color:var(--muted);margin-top:4px;line-height:1.45}
  .nw-note{font-size:.78rem;color:var(--muted)}
  .pn-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 14px}
  .pn-count{font-size:.8rem;color:var(--muted)}
  /* карточки валюты без описания не показываем */
  .curr:has(.ceffect:empty){display:none}
  /* особые категории модов */
  .fmods-cat{margin-top:14px}
  .fmods-cat .fmods-head{display:flex;align-items:center;gap:7px}
  .cat-ico{width:18px;height:18px;object-fit:contain;vertical-align:middle;border-radius:3px}
  .note-line{font-size:.86rem;color:var(--muted);margin:0 0 16px}
