.prompts-page [hidden] { display:none !important; }
.prompt-header { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:24px clamp(20px,5vw,72px); border-bottom:1px solid var(--line); }
.prompt-header>a:last-child { font-size:.85rem; color:var(--silver-dim); }
.prompt-layout { max-width:1000px; padding:48px 24px 24px; margin:auto; }
.prompt-intro { text-align:center; margin-bottom:32px; }
.prompt-intro h1 { font-size:clamp(2.2rem,5vw,3.7rem); line-height:1.15; margin:12px 0 18px; letter-spacing:-.04em; }
.prompt-intro h1 span { color:var(--gold); }
.prompt-intro>p { color:var(--silver-dim); }
.pillars { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:24px; }
.pillars span { padding:6px 12px; border:1px solid var(--line); border-radius:30px; font-size:.8rem; color:var(--silver); }
.pillars b { color:var(--gold); margin-right:5px; }
.prompt-card { background:rgba(9,24,43,.94); border:1px solid var(--line); border-radius:22px; padding:28px; box-shadow:var(--shadow); }
.gate { max-width:520px; margin:0 auto; }
.prompt-card h2 { font-size:1.35rem; line-height:1.35; }
.prompt-card p { color:var(--silver-dim); }
.prompts-page input:not([type=checkbox]), .prompts-page textarea { width:100%; display:block; background:var(--navy-deep); color:var(--white); border:1px solid #657285; border-radius:10px; font:inherit; padding:13px 15px; margin:8px 0 16px; }
.prompts-page textarea { resize:vertical; min-height:110px; }
.prompts-page button { border:1px solid var(--gold); background:var(--gold); color:var(--navy-deep); padding:12px 18px; border-radius:9px; font:inherit; font-weight:650; cursor:pointer; }
.prompts-page button.secondary { background:transparent; color:var(--silver); border-color:var(--line); padding:8px 12px; font-size:.8rem; }
.prompts-page button:disabled { opacity:.45; cursor:not-allowed; }
.prompts-page :focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
#accessForm button { width:100%; }
.chat-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:20px; }
.session-badge { color:var(--gold); margin-right:auto; font-size:.8rem; }
.privacy { background:rgba(212,175,55,.06); border:1px solid var(--line); border-radius:12px; padding:18px; }
.privacy h2 { font-size:1rem; margin:0; }
.privacy p { font-size:.88rem; }
.privacy .small { font-size:.78rem; }
.consent { display:flex; gap:10px; align-items:flex-start; font-size:.85rem; }
.consent input { margin-top:5px; accent-color:var(--gold); }
.empty { padding:24px 12px; text-align:center; max-width:640px; margin:auto; }
.empty .example { font-size:.85rem; color:var(--gold-muted); }
.messages { max-height:560px; overflow-y:auto; overflow-wrap:anywhere; }
.message { margin:20px 0; padding:18px; border-radius:12px; background:var(--panel); }
.message.user { margin-left:10%; border:1px solid var(--line); }
.message>strong { color:var(--gold); font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.message pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; font-size:.94rem; line-height:1.65; margin:10px 0; }
.message.final pre { font-family:ui-monospace,monospace; font-size:.85rem; }
.composer-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; }
#status { color:var(--silver-dim); font-size:.8rem; }
.privacy-footnote { font-size:.75rem; margin-bottom:0; }
#chatError, #accessError { color:#ffb6a6; font-size:.9rem; }
.prompt-footer { text-align:center; font-size:.75rem; color:var(--silver-dim); padding:24px; }
@media(max-width:600px) { .prompt-layout { padding:28px 14px 14px; } .prompt-card { padding:18px; } .prompt-header { padding:18px; } .composer-actions { align-items:stretch; flex-direction:column; gap:10px; } .message.user { margin-left:4%; } .chat-toolbar .session-badge { width:100%; } }

