
:root{--bg:#0b0713;--panel:#171021;--panel2:#21152f;--purple:#ad66ff;--text:#f8f5ff;--muted:#c6bbd3;--border:rgba(195,145,255,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#09060d;font:16px/1.65 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(115deg,rgba(8,5,15,.94),rgba(9,5,16,.82)),url('/assets/souphavoc-background.jpg') center/cover no-repeat}
body:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 55% 5%,rgba(139,61,255,.18),transparent 52%)}
a{color:#cba2ff}a:hover{color:#fff}button,input{font:inherit}button{cursor:pointer}.wrap{width:min(1260px,calc(100% - 36px));margin:auto}
.sitehead{position:sticky;top:0;z-index:30;background:rgba(12,8,19,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:70px}.logo{font-size:23px;font-weight:900;letter-spacing:.055em;text-decoration:none;color:white;white-space:nowrap}.logo span{color:var(--purple)}.menu{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.menu a{color:#ded5e8;text-decoration:none;font-size:13px;font-weight:700}.menu a[aria-current],.menu a:hover{color:#ce9aff}
.hero{padding:62px 0 35px;max-width:860px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.19em;text-transform:uppercase;color:#b57cff}.hero h1{font-size:clamp(36px,5vw,62px);line-height:1.08;letter-spacing:-.045em;margin:13px 0 18px}.hero h1 span{color:#b77aff}.hero p{font-size:18px;color:var(--muted);margin:0;max-width:760px}
.searchwrap{display:flex;gap:10px;margin:27px 0 10px;max-width:700px}.searchwrap input{flex:1;min-width:0;border:1px solid #65478a;border-radius:12px;padding:14px 16px;background:rgba(17,10,29,.9);color:white;outline:none}.searchwrap input:focus{border-color:#bf8aff;box-shadow:0 0 0 3px rgba(139,61,255,.22)}.searchwrap button,.btn{border:1px solid #9355e4;background:linear-gradient(135deg,#9e48f5,#6720c8);color:#fff;border-radius:11px;padding:12px 19px;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.subnote{color:#a89ab8;font-size:13px;margin:8px 0 20px}
.chips{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.chip{border:1px solid var(--border);border-radius:999px;background:rgba(30,19,46,.8);color:#ddd0e8;padding:7px 13px;font-size:13px}.chip.active,.chip:hover{background:#51247e;color:#fff;border-color:#a86cf5}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:4px 0 68px}.wiki-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:linear-gradient(145deg,rgba(32,20,48,.94),rgba(15,11,25,.96));border:1px solid var(--border);border-radius:17px;padding:22px;min-height:210px;transition:transform .15s,border-color .15s}.wiki-card:hover{transform:translateY(-3px);border-color:#a76de9}.category{font-size:11px;font-weight:900;letter-spacing:.13em;color:#b78bf2;text-transform:uppercase}.wiki-card h2{font-size:22px;line-height:1.25;margin:12px 0 8px}.wiki-card p{color:var(--muted);font-size:14px;margin:0 0 20px;flex:1}.state{align-self:flex-start;color:#bfb3cc;font-size:11px;border:1px solid rgba(188,156,228,.3);border-radius:7px;padding:3px 8px}.state.live{color:#b9ebc9;border-color:#4d8763}.cardfoot{display:flex;justify-content:space-between;align-items:center;gap:8px}.cardfoot .arrow{font-size:20px;color:#bc84ff}
.crumb{font-size:13px;color:#b5a6c7;padding:24px 0 8px}.crumb a{text-decoration:none}.layout{display:grid;grid-template-columns:245px minmax(0,1fr) 180px;gap:28px;align-items:start;padding:16px 0 70px}.side,.toc{position:sticky;top:92px;background:rgba(20,13,31,.87);border:1px solid var(--border);border-radius:15px;padding:17px;max-height:calc(100vh - 112px);overflow:auto}.side h2,.toc h2{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#b48cde;margin:0 0 13px}.side a,.toc a{display:block;color:#cfc3dc;text-decoration:none;font-size:13px;padding:5px 9px;border-radius:6px}.side a:hover,.side a.active,.toc a:hover{color:white;background:rgba(139,61,255,.23)}.side .group{color:#a782d4;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;margin:15px 9px 4px}.side .group:first-of-type{margin-top:0}
.article{min-width:0;background:linear-gradient(160deg,rgba(22,15,34,.92),rgba(12,9,21,.96));border:1px solid var(--border);border-radius:18px;padding:clamp(20px,3vw,40px)}.article h1{font-size:clamp(30px,3.7vw,45px);line-height:1.12;margin:8px 0 12px;letter-spacing:-.03em}.article .intro{font-size:17px;color:var(--muted);margin:0 0 19px}.article h2{font-size:23px;margin:36px 0 11px;line-height:1.25;scroll-margin-top:100px}.article p,.article li{color:#d5ccdf}.article ul,.article ol{padding-left:24px}.article li{margin:7px 0}.article strong{color:#fff}.article code{color:#e2c8ff;background:#2a1b3c;border:1px solid #4a3065;border-radius:5px;padding:2px 5px;font-size:.92em;overflow-wrap:anywhere}.article table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;font-size:14px;margin:18px 0}.article th,.article td{border-bottom:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top}.article th{color:#eacfff;background:rgba(139,61,255,.15)}.article .callout{background:rgba(125,63,196,.11);border-left:3px solid #a66bef;border-radius:8px;padding:13px 17px;color:#dfd2ed;margin:18px 0 26px}.article .article-end{border-top:1px solid var(--border);margin-top:36px;padding-top:20px;display:flex;gap:12px;flex-wrap:wrap}.article-end a{font-size:13px}.toc a{padding-left:0}.noresults{display:none;color:#dfc7ef;padding:25px 0 70px}
footer{border-top:1px solid var(--border);background:rgba(9,6,15,.92);padding:24px 0;color:#afa4bd;font-size:12px}.foot{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.foot a{margin-left:16px;text-decoration:none}
@media(max-width:1080px){.layout{grid-template-columns:215px minmax(0,1fr)}.toc{display:none}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.nav{padding:13px 0;align-items:flex-start;flex-direction:column;gap:7px}.menu{gap:12px}.menu a{font-size:12px}.hero{padding:38px 0 25px}.cards{grid-template-columns:1fr}.layout{display:flex;flex-direction:column;gap:15px}.side{position:static;max-height:none;width:100%}.side .links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 7px}.side .group{grid-column:1/-1}.article{width:100%}.searchwrap{flex-direction:column}.searchwrap button{width:100%}}
