:root { --ink:#344543; --sage:#748c8b; --border:#dde3de; --muted:#72807a; --paper:#fff; }
.posts-shell,.editor-shell,.reading-panel{width:100%;max-width:740px;margin:18px auto 45px;color:var(--ink)}
.posts-heading,.editor-top,.reading-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}
.posts-heading h1,.editor-top h1,.reading-panel h1{font-size:1.5rem;margin:6px 0 0;color:#354a45}
.eyebrow,.post-meta,.editor-hint,.cover-guide{color:var(--muted);font-size:.85rem}
.action-main,.update-button,.delete-button,.cancel-button,.delete-outline,.upload-control{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:12px;padding:12px 17px;font:inherit;cursor:pointer;border:0}
.action-main,.update-button{background:var(--sage);color:white!important}
.post-nav{display:flex;gap:16px;border-bottom:1px solid var(--border);margin:0 0 15px;padding-bottom:10px}
.post-nav a,.quiet-link,.reading-nav a{color:var(--sage);text-decoration:none}
.post-nav a.selected{font-weight:700;border-bottom:2px solid var(--sage)}
.post-card{background:var(--paper);border:1px solid var(--border);padding:15px;border-radius:17px;margin-bottom:12px;display:flex;gap:14px;align-items:center;justify-content:space-between}
.post-card-text{flex:1;min-width:0}.post-card-text p{font-size:.9rem;line-height:1.8;color:#60716b;margin:6px 0 8px}
.post-title{font-size:1.06rem;font-weight:700;color:var(--ink);text-decoration:none}
.post-meta{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.quiet-link{display:inline-block;margin-top:8px;font-size:.9rem}
.cover-mini{display:flex;align-items:center;justify-content:center;flex:none;width:100px;height:100px;border-radius:13px;overflow:hidden;background:#e3ebe5;color:var(--sage);text-decoration:none;font-size:2rem}
.cover-mini img{width:100%;height:100%;object-fit:cover}
.empty-state{border:1px dashed var(--border);padding:35px 20px;text-align:center;border-radius:15px;color:var(--muted)}.empty-state h2{font-size:1.15rem;color:var(--ink)}
.pagination{display:flex;gap:15px;justify-content:center;padding:14px}.pagination a{color:var(--sage)}
.status-pill{border-radius:99px;font-size:.75rem;background:#edf0ec;color:#63716d;padding:3px 9px}.status-published{background:#e5f1eb;color:#44745a}.status-rejected{background:#faebeb;color:#aa5d5d}
.editor-shell{max-width:580px}.editor-top{margin-bottom:18px}.editor-form{display:flex;flex-direction:column;gap:16px}.field,.cover-section{background:white;border:1px solid var(--border);border-radius:15px;padding:17px}.field label,.cover-section h2{display:block;font-size:1rem;font-weight:700;margin-bottom:10px}.cover-section h2 small{font-weight:400;color:var(--muted)}
.field input,.field textarea{font:inherit;box-sizing:border-box;width:100%;resize:vertical;color:var(--ink);border:1px solid var(--border);border-radius:9px;background:#fafbf9;padding:12px;line-height:1.85}
.field small,.cover-guide{display:block;margin-top:6px;color:var(--muted);font-size:.78rem}.errorlist{color:#a53b3b;font-size:.82rem;margin:7px 0}
.cover-preview{width:min(100%,260px);aspect-ratio:1/1;display:flex;justify-content:center;align-items:center;background:#e8efea;border:1px dashed #a2b3a8;border-radius:14px;overflow:hidden;margin:12px auto}
.cover-preview img{height:100%;width:100%;object-fit:cover}.cover-preview span{font-size:2.5rem;color:var(--sage);text-align:center}.cover-preview span small{display:block;font-size:.8rem}
.upload-control{background:#eef2ee;color:var(--ink);border:1px solid var(--border)}.file-field{margin-top:8px;font-size:.8rem}.file-field input{max-width:100%}.checkline{display:flex;gap:8px;align-items:center;margin-top:14px;font-size:.88rem}
.editor-actions{display:flex;gap:12px;margin-top:12px}.editor-actions>*{flex:1;text-align:center}.delete-outline{border:1px solid #dbb8b8;background:#fff6f6;color:#a34949!important}.delete-button{background:#ae5959;color:#fff}.cancel-button{border:1px solid var(--border);color:var(--ink);background:#fff}
.reading-panel{max-width:660px;background:white;border-radius:18px;border:1px solid var(--border);padding:22px}.reading-nav{font-size:.85rem}.reading-cover{width:min(100%,340px);aspect-ratio:1/1;margin:8px auto 25px}.reading-cover img{width:100%;height:100%;object-fit:cover;border-radius:16px}.reading-panel h1{text-align:center}.reading-summary{text-align:center;color:var(--muted)}.reading-panel>.post-meta{justify-content:center;margin:16px 0 24px}.story-body{line-height:2.15;overflow-wrap:anywhere}.story-body p{margin-bottom:15px}.reading-actions{display:flex;gap:10px;margin-top:25px}.review-note{background:#f7f5e9;border:1px solid #e7e0c4;border-radius:11px;padding:12px;margin:12px 0}.review-note p{margin:5px 0;color:#786f51}.delete-confirm{max-width:520px;background:white;border:1px solid var(--border);border-radius:16px;padding:20px}.delete-confirm p{line-height:2}
@media(max-width:440px){.posts-heading h1{font-size:1.3rem}.cover-mini{width:88px;height:88px}.reading-panel{padding:15px}.editor-actions{flex-wrap:wrap}}
/* Override compact login-screen defaults for post forms/buttons. */
.layout:has(.posts-shell),.layout:has(.editor-shell),.layout:has(.reading-panel){max-width:780px}
.post-nav a{display:inline-block}
.editor-shell label{margin:0 0 9px}
.editor-shell .file-field input{padding:8px}
.editor-shell .checkline{display:flex;margin-top:12px;gap:8px}
.editor-shell .checkline input{width:auto;flex:none}
.editor-actions .update-button,.editor-actions .delete-button{width:auto;margin:0}
.editor-actions .delete-outline{width:auto;margin:0}
.posts-shell .back-link,.editor-shell .back-link,.reading-panel .back-link{margin:0;text-align:right}
.posts-shell .action-main,.reading-panel .action-main{margin:0;width:auto}
.editor-shell button,.delete-confirm button{margin-top:0}
