:root{--bg:#000000;--panel:#121214;--panel2:#1a1a1d;--text:#eee9df;--muted:#9b9b9a;--line:#2a2a2e;--accent:#d2b36a;--accent2:#8fa9b7;--danger:#b97a72;--ember:#8b1a1a;--radius:14px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:#000;background-image:radial-gradient(ellipse 85% 70% at 50% 100%,#6b1515 0%,#3a0c0c 18%,#1a0505 42%,#0a0202 68%,#000000 100%);background-attachment:fixed;color:var(--text);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}
.topbar{min-height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1180px)/2));position:sticky;top:0;background:rgba(0,0,0,.88);backdrop-filter:blur(12px);z-index:10}
.brand{display:flex;gap:11px;align-items:center;min-width:0}.crest{color:var(--accent);font-size:25px;flex-shrink:0}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.brand strong{font-size:17px;white-space:nowrap}
nav{display:flex;gap:5px}nav button,.mode{border:1px solid transparent;background:transparent;color:var(--accent);padding:9px 12px;border-radius:9px}nav button:hover,.mode:hover{color:var(--text);background:var(--panel)}
main{max-width:1180px;margin:auto;padding:0 20px 60px}.hero{padding:80px 0 54px;max-width:900px}.eyebrow{font-size:11px;letter-spacing:.15em;color:var(--accent);font-weight:700;margin:0 0 9px}.hero h1{font:600 clamp(38px,6vw,70px)/.98 Georgia,serif;margin:0 0 18px}.lede{font-size:18px;color:#c1c0bb;max-width:720px}.searchbar{display:flex;margin-top:28px;max-width:760px}.searchbar input{flex:1;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:15px 17px;border-radius:12px 0 0 12px;outline:none}.searchbar input:focus{border-color:var(--accent)}.searchbar button,.primary{border:0;background:var(--accent);color:#15120d;font-weight:800;padding:0 20px;border-radius:0 12px 12px 0}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.chips button{border:1px solid var(--line);background:var(--panel);color:var(--accent);padding:7px 10px;border-radius:99px}
.view{display:none;padding-top:15px}.view.active{display:block}.section-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:20px}.section-head h2{margin:0;font:500 30px Georgia,serif}.badge{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:5px 9px}
.planner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.mode{border-color:var(--line);background:var(--panel);text-align:left;min-height:88px}.mode.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px rgba(210,179,106,.18)}.mode b{display:block;color:var(--text);margin-bottom:4px}.mode span{display:block;color:var(--muted);font-size:12px}.planner-panel{margin-top:15px;background:var(--panel);border:1px solid var(--line);padding:20px;border-radius:var(--radius)}.planner-panel label{display:block;font-weight:700;margin-bottom:8px}.planner-panel textarea{width:100%;resize:vertical;background:#0a0a0c;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:13px;outline:none}.planner-panel .primary{margin-top:12px;border-radius:9px;padding:11px 17px}.result{margin-top:15px;padding:16px;background:#0a0a0c;border-radius:10px;border:1px solid var(--line);white-space:pre-wrap}.result.empty{color:var(--muted)}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.category{padding:16px;border:1px solid var(--line);background:var(--panel);border-radius:12px;text-align:left}.category b{display:block;color:var(--text)}.category span{font-size:12px;color:var(--accent)}
.results{margin-top:20px;scroll-margin-top:84px}.result-row{display:flex;justify-content:space-between;gap:16px;border:1px solid var(--line);background:var(--panel);padding:14px;border-radius:10px;margin-bottom:8px}.result-row button{border:0;background:none;color:var(--text);text-align:left;flex:1}.result-row small{color:var(--muted);display:block}.detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-top:14px}.back-btn{padding:12px 15px;margin:-12px -15px 0 0;font-size:14px;border-radius:9px}.back-btn:hover{background:var(--panel2)}.detail h3{margin-top:0;font:500 24px Georgia,serif}.detail pre{white-space:pre-wrap;overflow:auto;color:#d5d2ca;background:#08080a;padding:14px;border-radius:9px;font-size:12px}.source{font-size:12px;color:var(--muted)}.source a{color:var(--accent2)}
.prose{display:grid;grid-template-columns:1fr 1fr;gap:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.card h3{margin-top:0}.card p{color:#c0bfba}
footer{border-top:1px solid var(--line);padding:20px max(20px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;color:var(--muted);font-size:12px}footer a{color:var(--accent)}
@media(max-width:800px){.planner-grid,.category-grid{grid-template-columns:repeat(2,1fr)}.prose{grid-template-columns:1fr}.hero{padding-top:50px}nav button{padding:8px}.topbar{min-height:60px}}
@media(max-width:500px){.searchbar button{padding:0 13px}.section-head h2{font-size:25px}.hero h1{font-size:44px}footer{display:block}footer span{display:block;margin:4px 0}.brand small{display:none}.brand strong{font-size:15px}.topbar{gap:8px;padding:0 14px}nav{gap:1px}nav button{padding:6px 5px;font-size:12px}}
@media(max-width:360px){.planner-grid,.category-grid{grid-template-columns:1fr}}

.pres{color:var(--text)}.pres-title{font:500 18px Georgia,serif;margin:18px 0 8px;color:var(--accent)}.pres-title:first-child{margin-top:0}
.pres-label{font-weight:700;margin:14px 0 6px}.pres-note{color:var(--muted);font-size:13px}
.pres ul{margin:6px 0 0;padding-left:1.2em}.pres li{margin:4px 0}
.raw-tech{margin-top:18px;border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:13px}
.raw-tech summary{cursor:pointer;color:var(--accent2)}.raw-json{white-space:pre-wrap;overflow:auto;background:#08080a;padding:12px;border-radius:9px;font-size:11px;color:#d5d2ca;margin-top:8px}

.ref-section{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.ref-section h4{margin:0 0 10px;color:var(--accent);font:500 18px Georgia,serif}
.ref-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.ref-stat{background:var(--panel2);border:1px solid var(--line);border-radius:9px;padding:10px}
.ref-stat b{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;margin-bottom:4px}
.ref-stat span{color:var(--text)}
.ref-table{width:100%;border-collapse:collapse;font-size:13px}
.ref-table th,.ref-table td{padding:8px 10px;border:1px solid var(--line);text-align:left;vertical-align:top}
.ref-table th{color:var(--accent);background:var(--panel2);font-weight:600}
.ref-table td{color:var(--text)}
.ref-note{color:var(--muted);font-size:13px;line-height:1.5}
.ref-path{margin-top:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel2)}
.ref-path summary{cursor:pointer;padding:10px;color:var(--accent)}
.ref-path-body{padding:0 10px 10px;overflow:auto}
