:root{--olive:#243e2c;--olive-dark:#182a1e;--red:#ce1126;--tan:#d6cebd;--ink:#232528;--muted:#515354;--card:#fff;--radius:8px}*{box-sizing:border-box}body{color:var(--ink);background:var(--tan);flex-direction:column;min-height:100vh;margin:0;font-family:Times New Roman,Times,serif;line-height:1.6;display:flex}h1,h2,h3,nav,.btn,button{font-family:Helvetica Neue,Arial,sans-serif}.container{max-width:960px;margin:0 auto;padding:0 1rem}header{background:var(--olive);color:#fff}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.brand{color:#fff;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-mark{background:var(--red);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:1.3rem;font-weight:700;display:flex}.brand-text{flex-direction:column;line-height:1.2;display:flex}.brand-text small{opacity:.85}nav{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}nav a{color:#fff;text-decoration:none}nav a:hover{text-decoration:underline}.btn{background:var(--red);border-radius:var(--radius);cursor:pointer;border:none;padding:.4rem .9rem;font-size:1rem;color:#fff!important;text-decoration:none!important}.btn:hover{filter:brightness(1.1)}h1 .btn,h2 .btn,h3 .btn{vertical-align:middle;position:relative;top:-2px}.btn.secondary{background:var(--olive)}.inline-form{display:inline}.linklike{color:#fff;cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem;text-decoration:underline}main.container{flex:1;width:100%;padding:2rem 1rem 3rem}.card{background:var(--card);border-radius:var(--radius);margin-bottom:1rem;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #00000014}.card h3{margin-top:0}.card h3 a{color:var(--olive-dark);text-decoration:none}.card h3 a:hover{text-decoration:underline}.meta{color:var(--muted);margin:.25rem 0;font-size:.9rem}.muted{color:var(--muted)}.badge{background:var(--olive);color:#fff;vertical-align:middle;border-radius:999px;padding:.1rem .5rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.75rem;display:inline-block;position:relative;top:-2px}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;display:grid}.photo-grid img{object-fit:cover;border-radius:var(--radius);width:100%;height:180px}.cover{object-fit:cover;border-radius:var(--radius);width:100%;max-height:360px}form.stacked{flex-direction:column;gap:.75rem;max-width:420px;display:flex}form.stacked label{font-family:Helvetica Neue,Arial,sans-serif;font-weight:700}form.stacked input,form.stacked textarea{border-radius:var(--radius);border:1px solid #c2b9a5;padding:.5rem;font-family:inherit;font-size:1rem}.alert{border:1px solid var(--red);border-radius:var(--radius);background:#fdecea;padding:.75rem 1rem}.notice{border:1px solid var(--olive);border-radius:var(--radius);background:#e8efea;padding:.75rem 1rem}.month-heading{border-bottom:2px solid var(--olive);margin-top:2rem;padding-bottom:.25rem}table.plain{border-collapse:collapse;width:100%}table.plain th,table.plain td{text-align:left;border-bottom:1px solid #b3a98f;padding:.5rem .75rem}footer{background:var(--olive-dark);color:#fff;padding:1.5rem 0}footer p{margin:.25rem 0}footer .muted{color:#c5d0c8}.admin-tabs{border-bottom:2px solid var(--olive);flex-wrap:wrap;gap:.25rem;margin-bottom:1.5rem;display:flex}.admin-tab{color:var(--olive-dark);border-radius:var(--radius) var(--radius) 0 0;padding:.4rem 1rem;font-family:Helvetica Neue,Arial,sans-serif;text-decoration:none}.admin-tab.active{background:var(--olive);color:#fff}form.stacked.wide{max-width:760px}form.stacked select{border-radius:var(--radius);background:#fff;border:1px solid #c2b9a5;padding:.5rem;font-size:1rem}.field-row{flex-wrap:wrap;gap:1rem;display:flex}.field-row>span{flex-direction:column;flex:1;gap:.25rem;min-width:200px;display:flex}.workflow-buttons{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.btn.danger{background:#8b0000}.btn.small{padding:.15rem .5rem;font-size:.8rem}.row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.status-badge{color:#fff;vertical-align:middle;border-radius:999px;padding:.1rem .5rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.75rem;display:inline-block}.status-draft{background:#8a97ab}.status-review{background:#e08a00}.status-published{background:#2e8b57}.photo-admin{position:relative}.photo-admin img{object-fit:cover;border-radius:var(--radius);width:100%;height:180px}.photo-admin .btn{position:absolute;bottom:.5rem;right:.5rem}.rte{border-radius:var(--radius);background:#fff;border:1px solid #c2b9a5}.rte-toolbar{border-bottom:1px solid #ddd5c4;flex-wrap:wrap;gap:.25rem;padding:.4rem;display:flex}.rte-toolbar button{background:var(--tan);cursor:pointer;border:1px solid #c8bfab;border-radius:4px;padding:.25rem .6rem;font-size:.9rem}.rte-toolbar button:hover{background:#cac1ad}.rte-content{min-height:220px;padding:.75rem 1rem}.rte-content .tiptap{outline:none;min-height:200px}
