:root{--bg:#0f1115;--text:#f3efe6;--muted:#c9c3b6;--surface:rgba(255,255,255,0.05);--surface-border:rgba(255,255,255,0.14);--focus:#ffd088;--danger-bg:rgba(220,73,73,0.22);--danger-border:rgba(255,146,146,0.55);--success-bg:rgba(53,151,93,0.22);--success-border:rgba(128,230,165,0.45)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(255,180,120,.2),transparent 40%),radial-gradient(circle at 80% 90%,rgba(120,160,255,.18),transparent 40%),var(--bg);color:var(--text);font-family:Georgia,Times New Roman,serif}main{max-width:860px;margin:0 auto;padding:2rem 1rem 4rem}.public-main{max-width:980px}.page-header{margin-bottom:1.1rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;margin-bottom:.4rem}.eyebrow,.lede{color:var(--muted)}.lede{margin-top:-.4rem;margin-bottom:0;max-width:64ch}.top-links{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}.chip-link{display:inline-block;color:var(--text);text-decoration:none;border:1px solid var(--surface-border);background:rgba(255,255,255,.08);border-radius:999px;padding:.35rem .75rem}.chip-link:hover{background:rgba(255,255,255,.15)}.quote-panel{display:grid;grid-gap:.9rem;gap:.9rem}.meta-grid{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.1rem}.meta-pill{border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.2);border-radius:999px;font-size:.82rem;padding:.2rem .56rem;color:var(--text)}.meta-block{display:grid;grid-gap:.3rem;gap:.3rem}.actions-wrap{margin-top:.4rem;border-top:1px solid rgba(255,255,255,.15);padding-top:.7rem}.empty-state{border-radius:18px;border:1px dashed rgba(255,255,255,.3);background:rgba(255,255,255,.04);padding:1rem}.results-bar{display:flex;justify-content:space-between;gap:.8rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.archive-card-title{margin:.4rem 0 0;font-size:1.02rem;line-height:1.45}.archive-footer{margin-top:.8rem;gap:.5rem}.archive-footer,.pager{display:flex;flex-wrap:wrap}.pager{gap:.75rem;margin-top:1rem;align-items:center}.primary-link{color:var(--text);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}.primary-link:hover{border-bottom-color:var(--focus)}h1,h2{margin:0 0 1rem;font-weight:600}.quote-card{border-radius:24px;padding:2rem;border:1px solid rgba(255,255,255,.15);box-shadow:0 24px 60px rgba(0,0,0,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.style-dawn{background:linear-gradient(135deg,rgba(252,186,3,.25),rgba(199,121,208,.2))}.style-ink{background:linear-gradient(120deg,rgba(33,39,54,.95),rgba(72,83,106,.85))}.style-paper{background:linear-gradient(135deg,rgba(244,233,210,.2),rgba(191,171,138,.25))}.quote-text{font-size:clamp(1.4rem,3vw,2.1rem);line-height:1.35;margin-bottom:1.1rem}.quote-meta{color:var(--muted);font-size:1rem}.archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1rem;gap:1rem}.archive-item{display:block;color:inherit;text-decoration:none;border-radius:18px;padding:1rem;border:1px solid var(--surface-border);background:var(--surface)}.archive-date{font-size:.85rem;color:var(--muted);margin-bottom:.5rem}a{color:#ffd088}button,input,select,textarea{border:1px solid rgba(255,255,255,.28);background:rgba(0,0,0,.25);color:var(--text);border-radius:10px;padding:.6rem .75rem;font:inherit;transition:border-color .12s ease,background-color .12s ease,transform .12s ease}button{cursor:pointer}button:hover:not(:disabled){background:rgba(255,255,255,.12)}button:active:not(:disabled){transform:translateY(1px)}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}label{display:block;font-size:.92rem;color:var(--muted);margin-bottom:.3rem}.field-row{display:grid;grid-gap:.3rem;gap:.3rem}.status-banner{margin-top:1rem;border-radius:10px;border:1px solid var(--surface-border);padding:.7rem .8rem;color:var(--text);background:var(--surface)}.status-banner.error{background:var(--danger-bg);border-color:var(--danger-border)}.status-banner.success{background:var(--success-bg);border-color:var(--success-border)}