
:root{
  --navy:#03131c; --navy2:#082d3d; --gold:#d5a12b; --gold2:#f0c65b;
  --paper:#fff7e8; --ink:#29231b; --muted:#9aabb4; --white:#fff;
  --fs:20px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:radial-gradient(circle at 50% 0,#0b4155 0,#041a25 38%,#020d13 100%);
  color:#fff;
}
a{color:inherit;text-decoration:none}
.container{max-width:980px;margin:auto;padding:0 14px}
.topbar{
  position:sticky;top:0;z-index:30;
  background:rgba(3,19,28,.94);backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(213,161,43,.35)
}
.topbar .inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}
.brand{font-weight:900;letter-spacing:.04em}
.brand span{color:var(--gold2)}
.nav{display:flex;gap:8px;align-items:center}
.btn{
  border:1px solid var(--gold);background:transparent;color:#f8e8ba;
  border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer
}
.btn.primary{background:linear-gradient(135deg,#c48712,#f0b42a);color:#171109;border:0}
.hero{padding:38px 0 26px;text-align:center}
.hero small{letter-spacing:.28em;font-weight:800}
.hero h1{font-size:clamp(44px,11vw,78px);margin:0;line-height:.92;color:var(--gold2)}
.hero p{color:#d7e0e4;max-width:680px;margin:18px auto 0}
.search{max-width:650px;margin:18px auto 0;display:flex;gap:8px}
.search input{
  flex:1;border:1px solid rgba(213,161,43,.45);background:#061d28;color:#fff;
  border-radius:12px;padding:14px;font-size:16px;outline:none
}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:28px 0 14px}
.section-title h2{margin:0;font-size:25px}
.section-title p{margin:0;color:var(--muted);font-size:14px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.card{
  border:1px solid rgba(213,161,43,.42);border-radius:18px;padding:18px;
  background:linear-gradient(180deg,rgba(9,44,59,.94),rgba(3,20,29,.96));
  box-shadow:0 10px 28px rgba(0,0,0,.22)
}
.card .num{color:var(--gold2);font-weight:900;font-size:14px}
.card h3{font-family:Georgia,serif;font-size:25px;line-height:1.1;margin:8px 0 9px}
.card .ref{color:#d3dde1;margin-bottom:18px}
.card .actions{display:flex;gap:8px;flex-wrap:wrap}
.empty{color:#a9bac2;padding:20px 0}
.footer{text-align:center;color:#90a5ae;font-size:13px;padding:34px 0}
.reader-head{padding:28px 0 14px}
.reader-head .num{color:var(--gold2);font-weight:800}
.reader-head h1{font-family:Georgia,serif;font-size:clamp(32px,8vw,50px);line-height:1.08;margin:7px 0}
.reader-head .ref{color:#eee0bf}
.controls{
  position:sticky;top:65px;z-index:20;display:flex;gap:8px;overflow:auto;
  background:rgba(3,19,28,.95);padding:10px 0
}
.paper{
  background:var(--paper);color:var(--ink);border:1px solid var(--gold);border-radius:20px;
  padding:clamp(20px,5vw,40px);font-family:Georgia,"Times New Roman",serif;
  font-size:var(--fs);line-height:1.72;box-shadow:0 14px 42px rgba(0,0,0,.45)
}
.paper h2{font-family:system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#93690f;font-size:1.05em;margin:1.7em 0 .65em}
.paper h2:first-child{margin-top:0}
.paper p{margin:.75em 0}
.verse{font-style:italic;font-weight:600}
.question{font-weight:700}
.declarations{border-left:3px solid var(--gold);padding-left:15px}
.admin-wrap{max-width:900px;margin:auto;padding:28px 14px 50px}
.admin-card{background:#071f2a;border:1px solid rgba(213,161,43,.35);border-radius:18px;padding:18px;margin-bottom:16px}
.admin-card h2{margin-top:0}
label{display:block;color:#f4dfaa;font-weight:800;margin:12px 0 6px}
input,textarea,select{
  width:100%;border:1px solid #31505d;background:#031720;color:#fff;border-radius:10px;
  padding:12px;font:inherit;outline:none
}
textarea{min-height:110px;resize:vertical}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.notice{background:#0a2b39;border-left:3px solid var(--gold);padding:12px;border-radius:8px;color:#d9e5ea;font-size:14px}
.admin-list{display:grid;gap:10px}
.admin-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid #274653;border-radius:12px}
.admin-item strong{display:block}.admin-item small{color:#9eb0b8}
@media(max-width:720px){.grid{grid-template-columns:1fr}.two{grid-template-columns:1fr}.nav .hide-mobile{display:none}}
