:root{color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:#0a0e18;color:#f2edf6}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;background:radial-gradient(ellipse at 50% 0%,#273044,#101321 50%,#090c15 90%)}
[hidden]{display:none!important}
.scroll-hall{width:min(1040px,100%);margin:auto;padding:15px clamp(13px,3vw,32px) max(30px,env(safe-area-inset-bottom))}
.top,footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}
.top{border-bottom:1px solid #4a475b;padding:10px 0 20px}
.brand{font-size:.85rem;color:#efe0fd;font-weight:800;letter-spacing:.13em;text-decoration:none}
a{color:#b1e9eb}
.top a:last-child{font-size:.82rem;text-decoration:none}
.intro{padding:32px 0 15px;max-width:790px}.eyebrow{font-size:.67rem;font-weight:800;color:#d4b6ed;letter-spacing:.19em;text-transform:uppercase;margin:0 0 9px}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}
h1{font-size:clamp(2.3rem,5.4vw,4.4rem);margin:5px 0}
h2{font-size:clamp(1.55rem,3vw,2.1rem);margin:2px 0 14px}
h3{font-size:1.18rem}h4{font-size:.94rem;margin:20px 0 7px;color:#e0d3ec}
p{line-height:1.55;color:#c6c2d4}
.notice{min-height:20px;color:#a4e3d7;font-size:.9rem}.notice.error{color:#ffbebe}
.panel{border-radius:16px;padding:clamp(17px,3vw,29px);margin:18px 0;background:linear-gradient(145deg,#1b2131eb,#111623ef);border:1px solid #555064;box-shadow:0 14px 40px #0005}
.founder{border-color:#9a784f}
.section-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.section-head h2{margin:2px 0}
.seal{font-size:2.4rem;color:#c7b8e7;text-shadow:0 0 20px #958bdb}
.privacy{color:#a9e0d9;font-size:.85rem;border-top:1px solid #49465e;margin-top:15px;padding-top:14px}
.pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.pairs div{display:grid;gap:8px;padding:14px;background:#111b2c;border-radius:12px;border:1px solid #404a5e}
.pairs span{font-size:.72rem;color:#b1abc3}
.pairs strong{font-size:.88rem;overflow-wrap:anywhere;line-height:1.45}
form{display:grid;gap:10px;margin:17px 0}
label{font-size:.84rem;font-weight:650}
textarea,select{border:1px solid #817392;border-radius:10px;padding:12px;color:#f6effe;background:#0c1321;width:100%;font:inherit;line-height:1.5}
textarea{min-height:92px;resize:vertical}
.help,.muted{font-size:.79rem;color:#b8b1c7}
button{font:inherit;cursor:pointer;min-height:44px;border:1px solid #726c9b;border-radius:10px;padding:10px 15px;font-weight:680;color:#faf6ff;background:#1b2536}
button.primary{background:linear-gradient(112deg,#51407b,#24636c);border-color:#a5a9cc}
button.secondary{background:#1b2535}
button:disabled{opacity:.47;cursor:not-allowed}
button:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #8ce7e3;outline-offset:3px}
.record-list{display:grid;gap:11px;margin:16px 0}
.record{padding:14px;border:1px solid #474b62;border-radius:12px;background:#111929}
.record-head{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.record strong{overflow-wrap:anywhere}
.chip{padding:5px 10px;border-radius:999px;color:#f6d4e9;border:1px solid #967da5;font-size:.69rem;white-space:nowrap}
.record p{margin:7px 0;color:#c9c4d5;font-size:.87rem;overflow-wrap:anywhere}
.record .small{font-size:.74rem;color:#a9a6be}
.record button{margin-top:8px;font-size:.85rem}
.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:.77rem;border:1px solid #7f7196;color:#ded0f0;border-radius:999px;padding:7px 10px}
.detail{margin:19px 0;border:1px solid #8d729e;background:#151a2a;border-radius:13px;padding:clamp(12px,2.5vw,22px)}
.petition-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;padding:14px;background:#0b1221;border-radius:10px;border:1px solid #50495d}
.buttons,.actions{display:flex;gap:10px;flex-wrap:wrap}
.buttons button{flex:1}
.actions{justify-content:center;margin:20px 0}
footer{border-top:1px solid #424354;padding:22px 0;font-size:.7rem;color:#a8a5bb;letter-spacing:.05em}
@media(max-width:640px){.pairs{grid-template-columns:1fr}.buttons button{flex:1 1 100%}.intro{padding:24px 0 12px}.panel{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
