:root{--bg:#1E1038;--card:#2A1652;--card2:#3B2270;--txt:#EDE6FF;--mut:#B9A6E8;--acc:#7C3AED;--acc2:#DDD0FF;--gold:#FBBF24}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--txt);font:16px/1.65 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:inherit;text-decoration:none}
.nav{position:sticky;top:0;z-index:20;background:rgba(30,16,56,.93);backdrop-filter:blur(8px);border-bottom:1px solid #4C2A8F}
.nav-in{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:12px 20px;overflow-x:auto}
.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:18px;white-space:nowrap}
.nav-links{display:flex;gap:14px;font-size:13.5px;color:var(--mut);overflow-x:auto}
.nav-links a:hover{color:var(--txt)}
.wrap{max-width:1100px;margin:0 auto;padding:28px 20px}.wrap.narrow{max-width:780px}
.crumbs{font-size:13px;color:var(--mut);margin-bottom:14px}.crumbs span{margin:0 6px}
h1{font-size:34px;line-height:1.2;margin:10px 0 8px}h2{font-size:23px;margin:34px 0 12px}h3{font-size:17.5px;margin:20px 0 6px}
.lead{color:var(--mut);font-size:17px;max-width:660px}
.prose-p{color:#D8CCF5;margin:10px 0;max-width:760px}
.hero-home{display:flex;gap:34px;align-items:center;flex-wrap:wrap}
.hero-ill img{max-width:100%}
.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.bdg{background:var(--card2);border:1px solid #5B3AA0;border-radius:999px;padding:5px 13px;font-size:13px;color:var(--acc2)}
.btn{display:inline-block;background:var(--acc);color:#fff;font-weight:700;padding:10px 20px;border-radius:10px;border:none;cursor:pointer;font-size:15px;transition:transform .1s,filter .15s;font-family:inherit}
.btn:hover{filter:brightness(1.15)}.btn:active{transform:scale(.97)}
.btn.big{font-size:17px;padding:13px 26px}
.gen-card{background:var(--card);border:1px solid #4C2A8F;border-radius:16px;padding:26px;margin:26px 0}
.gen-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.gen-hint{color:var(--mut);font-size:13.5px}
.name-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:18px}
.ncard{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--card2);border:1px solid #5B3AA0;border-radius:10px;padding:10px 12px}
.ncard .nm{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cpy{position:relative;display:inline-grid;place-items:center;border:1px solid #6B4AB0;background:#241344;border-radius:8px;color:var(--acc2);font-size:12.5px;padding:5px 10px;cursor:pointer;min-width:74px;height:30px;transition:border-color .15s}
.cpy:hover{border-color:var(--acc)}
.cpy:active{transform:scale(.96)}
.cpy span{grid-area:1/1;transition:opacity .15s,transform .15s}
.cpy .on{opacity:0;transform:scale(.85);color:var(--gold)}
.cpy.done .off{opacity:0;transform:scale(.85)}
.cpy.done .on{opacity:1;transform:scale(1)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:16px}
.tcard{background:var(--card);border:1px solid #4C2A8F;border-radius:14px;overflow:hidden;transition:transform .18s,border-color .18s;display:block}
.tcard:hover{transform:translateY(-3px);border-color:var(--acc)}
.tcard img{display:block;width:100%;height:auto}
.tc-body{padding:12px 14px}.tc-name{font-weight:700;font-size:15px}.tc-sub{color:var(--acc2);font-size:13px;margin-top:2px}
.glist{display:grid;gap:10px;margin-top:12px}
.grow{display:grid;gap:2px;background:var(--card);border:1px solid #4C2A8F;border-radius:12px;padding:14px 16px;transition:border-color .15s}
.grow:hover{border-color:var(--acc)}.grow span{color:var(--mut);font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.chip{background:var(--card);border:1px solid #4C2A8F;border-radius:999px;padding:6px 14px;font-size:13.5px;color:#D8CCF5}
.chip:hover{border-color:var(--acc);color:#fff}
.pn-row{display:flex;justify-content:space-between;gap:12px;margin:34px 0 8px;flex-wrap:wrap}
.pn{background:var(--card);border:1px solid #4C2A8F;border-radius:10px;padding:10px 16px;font-weight:600;font-size:14px}
.pn:hover{border-color:var(--acc)}
.rel{margin-top:26px}
.site{border-top:1px solid #4C2A8F;margin-top:60px;background:#150A29}
.foot-in{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px;padding:34px 20px}
.foot-col h4{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--mut);margin:0 0 10px}
.foot-col a{display:block;font-size:14px;color:#A793D6;padding:3px 0}.foot-col a:hover{color:#fff}
.foot-base{border-top:1px solid #3B2270;padding:14px 20px;text-align:center;color:#7A66AB;font-size:12.5px}
@media(max-width:640px){h1{font-size:27px}.name-grid{grid-template-columns:1fr 1fr}}
