@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Source+Sans+3:wght@400;600&display=swap";:root{--bg:#101316;--bg-soft:#191f24;--panel:#202930;--line:#384650;--text-main:#f6efe4;--text-soft:#bac6ce;--accent:#d6a65a;--accent-soft:#f6d8a9;--danger:#f38a8a;--success:#8fd8ab;color:var(--text-main);background:radial-gradient(circle at top, #1d2731 0%, var(--bg) 48%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:"Source Sans 3",Segoe UI,sans-serif;font-size:17px;font-weight:400;line-height:1.6}*{box-sizing:border-box}body{min-height:100vh;color:var(--text-main);margin:0}#root{min-height:100vh}.app-shell{border:1px solid var(--line);background:linear-gradient(#11161be6,#171e24e6);border-radius:1rem;width:min(920px,92vw);margin:2.25rem auto;overflow:hidden;box-shadow:0 20px 40px #0003}.navbar{border-bottom:1px solid var(--line);background:#0b0e11cc;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.35rem;display:flex}.brand{color:var(--accent-soft);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.9rem;font-weight:600}.nav-links{flex-wrap:wrap;gap:.55rem;display:flex}button{font:inherit;cursor:pointer}.nav-button,.filter-button,.like-button,.submit-button{border:1px solid var(--line);background:var(--bg-soft);color:var(--text-main);border-radius:.45rem;padding:.45rem .75rem;transition:background-color .18s,transform .18s}.nav-button.active,.filter-button.active{background:#2f3e48;border-color:#4f6473}.page-content{padding:1.4rem 1.3rem 1.8rem}.intro h2{color:var(--text-main);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2rem}.intro p{color:var(--text-soft);margin:.35rem 0 1.1rem}.filters{flex-wrap:wrap;gap:.45rem;margin-bottom:1rem;display:flex}.poem-list{gap:1rem;display:grid}.poem-card{background:var(--panel);border:1px solid var(--line);border-radius:.8rem;padding:.95rem}.poem-meta{color:var(--text-soft);justify-content:space-between;font-size:.88rem;display:flex}.poem-topic{color:var(--accent-soft)}.poem-title{margin:.25rem 0 .4rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.75rem}.poem-content{white-space:pre-wrap;color:#f3f0e9;margin:0}.poem-footer{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:.8rem;margin-top:.8rem;padding-top:.55rem;display:flex}.poem-author{color:var(--text-soft)}.poem-likes{align-items:center;gap:.55rem;display:flex}.like-button,.submit-button{background:#2f3e48;border-color:#536777}.comment-button{color:var(--text-main);background:#2f3e48;border:1px solid #536777;border-radius:.45rem;padding:.45rem .75rem}.submit-button{width:fit-content;margin-top:.3rem}.comment-section{border-top:1px solid var(--line);margin-top:1rem;padding-top:.8rem}.comment-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}.comment-heading{color:var(--accent-soft);margin:0;font-size:1rem}.comment-toggle-button{border:1px solid var(--line);background:var(--bg-soft);color:var(--text-main);border-radius:.45rem;padding:.35rem .65rem}.comment-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.comment-item{border:1px solid var(--line);background:#182026;border-radius:.55rem;padding:.55rem .65rem}.comment-content{color:#f3f0e9;margin:0}.comment-meta{color:var(--text-soft);margin:.2rem 0 0;font-size:.85rem}.comment-empty{color:var(--text-soft);margin:0 0 .75rem}.comment-form{gap:.45rem;margin-top:.75rem;display:grid}.comment-form input,.comment-form textarea{border:1px solid var(--line);color:var(--text-main);font:inherit;background:#12181d;border-radius:.45rem;padding:.5rem .65rem}.comment-form textarea{resize:vertical}.poem-form{background:var(--panel);border:1px solid var(--line);border-radius:.8rem;flex-direction:column;gap:.45rem;padding:1rem;display:flex}.poem-form label{color:var(--text-soft);font-size:.93rem}.poem-form input,.poem-form select,.poem-form textarea{border:1px solid var(--line);color:var(--text-main);font:inherit;background:#12181d;border-radius:.45rem;padding:.55rem .7rem}.poem-form textarea{resize:vertical}.state-message{color:var(--text-soft);margin:.35rem 0}.state-message.error{color:var(--danger)}.state-message.success{color:var(--success)}button:disabled{opacity:.7;cursor:not-allowed}@media (width<=720px){:root{font-size:16px}.app-shell{width:95vw;margin:1rem auto}.navbar{flex-direction:column;align-items:flex-start}.brand{font-size:1.6rem}.poem-footer{flex-direction:column;align-items:flex-start}}
