/* Shared styles for article.php and journal.php */
*{margin:0;padding:0;box-sizing:border-box;}
:root{--cream:#FAF7F4;--gold:#B8902A;--gold2:#D4AF6A;--rose:#C9916A;--black:#1A1814;--muted:#6F6A65;--white:#fff;--border:rgba(180,140,100,0.16);--blush:#F5EDE8;--ink:#1A1814;--white:#fff;}
body{font-family:'Inter',sans-serif;background:var(--cream);color:var(--black);line-height:1.7;}
a{color:inherit;text-decoration:none;}
.topnav{background:var(--ink);padding:1rem 3rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.topnav img{height:44px;filter:brightness(0) invert(1);opacity:.7;display:block;}
.topnav a{color:rgba(255,255,255,.65);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;transition:color .3s;}
.topnav a:hover{color:var(--gold2);}
.hero{background:linear-gradient(135deg,#0f0d0a,#1a1410);padding:4rem 3rem 3rem;position:relative;overflow:hidden;}
.hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),var(--rose),var(--gold2),transparent);background-size:200%;animation:sweep 4s linear infinite;}
@keyframes sweep{0%{background-position:0%}100%{background-position:200%}}
.hero-inner{max-width:820px;margin:0 auto;}
.hero-cat{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold2);margin-bottom:1rem;}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:400;color:white;line-height:1.2;margin-bottom:1.5rem;}
.hero-meta{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.78rem;color:rgba(255,255,255,.55);}
.badge{padding:.15rem .55rem;border:1px solid rgba(212,175,106,.35);color:var(--gold2);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;}
.cover{width:100%;max-height:520px;object-fit:cover;display:block;}
.container{max-width:820px;margin:0 auto;padding:3rem 2rem;}
.lead{font-size:1.05rem;color:var(--muted);line-height:1.85;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border);font-style:italic;}
.body{font-size:.98rem;line-height:1.9;}
.body h1,.body h2,.body h3{font-family:'Cormorant Garamond',serif;font-weight:500;margin:2rem 0 .75rem;}
.body h2{font-size:1.6rem;border-bottom:1px solid var(--border);padding-bottom:.5rem;}
.body h3{font-size:1.3rem;}
.body p{margin-bottom:1.25rem;}
.body ul,.body ol{padding-left:1.5rem;margin-bottom:1.25rem;}
.body li{margin-bottom:.4rem;}
.body blockquote{border-left:3px solid var(--gold);padding-left:1.25rem;color:var(--muted);font-style:italic;margin:1.5rem 0;}
.body img{max-width:100%;height:auto;border-radius:6px;margin:1rem 0;}
.body a{color:var(--gold);border-bottom:1px solid rgba(184,144,42,.3);}
.body table{border-collapse:collapse;width:100%;margin-bottom:1.25rem;font-size:.9rem;}
.body td,.body th{border:1px solid var(--border);padding:.5rem;}
.muted{color:var(--muted);font-style:italic;}
.meta-box{background:var(--white);border:1px solid var(--border);padding:1.5rem;margin-bottom:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.meta-item label{display:block;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem;}
.meta-item span{font-size:.85rem;font-weight:500;}
.action-row{display:flex;gap:1rem;flex-wrap:wrap;margin:2.5rem 0;padding:1.5rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.2rem;border:1px solid var(--border);font-size:.76rem;color:var(--muted);transition:all .3s;background:var(--white);font-family:inherit;cursor:pointer;}
.action-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;}
.action-btn:hover{border-color:var(--gold);color:var(--gold);}
.action-btn.primary{background:var(--ink);color:white;border-color:var(--ink);}
.action-btn.primary:hover{background:var(--gold);border-color:var(--gold);color:white;}
.back-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted);margin-bottom:2rem;transition:color .3s;}
.back-link:hover{color:var(--gold);}
.back-link svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;}
.comments-section{margin-top:3rem;}
.comments-title{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400;margin-bottom:1.5rem;}
.comment-item{padding:1.25rem;border:1px solid var(--border);background:var(--white);margin-bottom:1rem;}
.comment-header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.6rem;}
.comment-name{font-size:.85rem;font-weight:600;}
.comment-date{font-size:.72rem;color:var(--muted);}
.comment-text{font-size:.88rem;color:var(--muted);line-height:1.75;overflow-wrap:anywhere;}
.comment-form{background:var(--blush);padding:2rem;margin-top:2rem;position:relative;}
.comment-form h3{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:400;margin-bottom:.5rem;}
.comment-form .hint{font-size:.8rem;color:var(--muted);margin-bottom:1.25rem;}
.fg{margin-bottom:1rem;}
.fg label{display:block;font-size:.74rem;font-weight:600;margin-bottom:.35rem;}
.fc{width:100%;padding:.6rem .85rem;border:1px solid var(--border);border-radius:6px;font-size:.85rem;outline:none;transition:border .2s;background:var(--white);color:var(--black);font-family:inherit;}
.fc:focus{border-color:var(--gold);}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.submit-btn{padding:.7rem 2rem;background:var(--ink);color:white;border:none;font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:background .3s;}
.submit-btn:hover{background:var(--gold);}
.alert{padding:.7rem 1rem;border-radius:6px;font-size:.82rem;margin-bottom:1rem;}
.alert-ok{background:#D1FAE5;color:#065F46;border:1px solid #A7F3D0;}
.alert-err{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA;}
@media(max-width:680px){
  .topnav{padding:.8rem 1.25rem;padding-top:calc(.8rem + env(safe-area-inset-top));position:sticky;top:0;z-index:50;}
  .topnav img{height:36px;}
  .hero{padding:2.5rem 1.25rem 2rem;}
  .container{padding:2rem 1.25rem;}
  .meta-box,.frow{grid-template-columns:1fr;}
  .cover{max-height:280px;}
  .body{font-size:1rem;}
  .fc{font-size:16px;}
  .action-row{gap:.6rem;}
  .action-btn{flex:1;justify-content:center;}
  .comment-form{padding:1.5rem 1.25rem;}
}

[data-theme=dark]{--cream:#13110E;--white:#1A1815;--black:#EEE8DE;--blush:#1E1A15;--muted:#A39B8F;--border:rgba(212,175,106,.14);--gold:#D4AF6A;--ink:#0C0B09;color-scheme:dark;}
[data-theme=dark] .alert-ok{background:rgba(76,195,138,.1);color:#6BD3A0;border-color:rgba(76,195,138,.25);}
[data-theme=dark] .alert-err{background:rgba(240,122,104,.1);color:#F29A8B;border-color:rgba(240,122,104,.25);}
[data-theme=dark] .action-btn.primary:hover,[data-theme=dark] .submit-btn:hover{color:#13110E;}
