*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1a12;--bg-alt: #131f17;--surface: #1b2d20;--border: #2a4030;--primary: #2c4a3a;--accent: #f2ede4;--text: #e4e4dc;--muted: #9a9a90;--green: #4caf7d;--red: #e06060;--radius: 8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;font-size:15px}#admin-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--muted);font-size:.95rem}#admin-root{display:none;flex-direction:column;min-height:100vh}#admin-root.visible{display:flex}.admin-topbar{background:var(--bg-alt);border-bottom:1px solid var(--border);padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;top:0;z-index:10}.admin-topbar h1{font-size:1rem;font-weight:700;color:var(--accent);display:flex;align-items:center;gap:.5rem}.topbar-actions{display:flex;align-items:center;gap:.75rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:all .15s;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--accent);color:#1e3328}.btn-primary:hover{background:#fff}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-ghost:hover{color:var(--text);border-color:var(--muted)}.btn-danger{background:#e0606026;color:var(--red);border:1px solid rgba(224,96,96,.3)}.btn-danger:hover{background:#e0606040}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.btn:disabled{opacity:.5;cursor:default}.view{display:none;flex:1}.view.active{display:flex;flex-direction:column}.list-container{max-width:900px;width:100%;margin:0 auto;padding:2rem 1.5rem}.list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.list-header h2{font-size:1.25rem;color:var(--accent)}.posts-table{display:flex;flex-direction:column;gap:.75rem}.post-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem}.post-row-info{flex:1;min-width:0}.post-row-title{font-weight:600;color:var(--accent);font-size:.975rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-row-meta{font-size:.78rem;color:var(--muted);margin-top:.2rem;display:flex;gap:.75rem;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600}.badge-draft{background:#9a9a9033;color:var(--muted)}.badge-published{background:#4caf7d33;color:var(--green)}.post-row-actions{display:flex;gap:.5rem;flex-shrink:0}.empty-list{text-align:center;padding:4rem 1rem;color:var(--muted)}.editor-wrap{display:flex;flex-direction:column;flex:1;max-width:1400px;width:100%;margin:0 auto;padding:1.5rem;gap:1.25rem}.editor-header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.editor-header h2{flex:1;font-size:1.1rem;color:var(--accent)}.editor-actions{display:flex;gap:.5rem;flex-shrink:0}.fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field-full{grid-column:1 / -1}.field-group{display:flex;flex-direction:column;gap:.35rem}label{font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}input[type=text],input[type=url],input[type=datetime-local],textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.9rem;font-family:inherit;padding:.6rem .875rem;transition:border-color .15s;width:100%}input:focus,textarea:focus{outline:none;border-color:var(--accent)}.og-image-row{display:flex;flex-direction:column;gap:.5rem}.og-image-preview{width:100%;height:120px;border-radius:var(--radius);background-size:cover;background-position:center;border:1px solid var(--border)}.og-image-inputs{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.og-image-inputs input[type=url]{flex:1;min-width:180px}.og-or{font-size:.8rem;color:var(--muted);flex-shrink:0}.og-upload-status{font-size:.8rem;color:var(--muted)}.og-upload-status.error{color:var(--red)}.btn-sm{font-size:.8rem;padding:.4rem .75rem;cursor:pointer}.btn-ai{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-color:transparent;color:#fff}.btn-ai:hover{opacity:.88}.pexels-picker{margin-top:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.pexels-toolbar{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem}.pexels-query-input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.85rem;padding:.4rem .65rem}.pexels-query-input:focus{outline:none;border-color:var(--accent)}.pexels-close{background:none;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:.2rem .4rem;line-height:1;transition:color .15s;margin-left:auto}.pexels-close:hover{color:var(--red)}.pexels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;max-height:320px;overflow-y:auto}.pexels-grid:empty:after{content:"No results yet — search above.";color:var(--muted);font-size:.82rem;grid-column:1 / -1;padding:1rem 0}.pexels-thumb{position:relative;aspect-ratio:16 / 9;border-radius:4px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .15s}.pexels-thumb:hover{border-color:var(--accent)}.pexels-thumb img{width:100%;height:100%;object-fit:cover;display:block}.pexels-thumb-credit{position:absolute;bottom:0;left:0;right:0;background:#0000008c;color:#fffc;font-size:.65rem;padding:.2rem .3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .15s}.pexels-thumb:hover .pexels-thumb-credit{opacity:1}.pexels-credit{font-size:.72rem;color:var(--muted);margin-top:.5rem;text-align:right}.pexels-credit a{color:var(--muted)}.pexels-loading{grid-column:1 / -1;text-align:center;color:var(--muted);font-size:.82rem;padding:1.5rem 0}.editor-split{display:grid;grid-template-columns:1fr 1fr;gap:1rem;flex:1}.editor-pane,.preview-pane{display:flex;flex-direction:column;gap:.35rem}#field-content{flex:1;min-height:400px;font-family:SF Mono,Fira Code,monospace;font-size:.875rem;line-height:1.6;resize:none}.preview-pane-inner{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;overflow-y:auto;min-height:400px;color:var(--text);font-size:.9rem;line-height:1.7}.preview-pane-inner h1,.preview-pane-inner h2,.preview-pane-inner h3{color:var(--accent);margin:1rem 0 .5rem;line-height:1.3}.preview-pane-inner h1{font-size:1.5rem}.preview-pane-inner h2{font-size:1.25rem}.preview-pane-inner h3{font-size:1.1rem}.preview-pane-inner p{margin-bottom:.875rem}.preview-pane-inner a{color:var(--accent)}.preview-pane-inner code{background:#ffffff14;padding:.1em .4em;border-radius:4px;font-size:.85em}.preview-pane-inner pre{background:#ffffff0d;padding:1rem;border-radius:var(--radius);overflow-x:auto;margin-bottom:1rem}.preview-pane-inner pre code{background:none;padding:0}.preview-pane-inner ul,.preview-pane-inner ol{padding-left:1.5rem;margin-bottom:.875rem}.preview-pane-inner blockquote{border-left:3px solid var(--accent);padding-left:1rem;color:var(--muted);font-style:italic;margin-bottom:.875rem}.preview-pane-inner hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.preview-pane-inner img{max-width:100%;border-radius:var(--radius)}#editor-error{background:#e060601f;border:1px solid rgba(224,96,96,.3);color:var(--red);border-radius:var(--radius);padding:.75rem 1rem;font-size:.875rem;display:none}#editor-error.visible{display:block}.tab-switcher{display:flex;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.tab-btn{padding:.35rem .875rem;font-size:.82rem;font-weight:600;background:none;border:none;color:var(--muted);cursor:pointer;transition:all .15s}.tab-btn.active{background:var(--accent);color:#1e3328}.tab-btn:not(.active):hover{color:var(--text)}@media(max-width:700px){.fields-grid,.editor-split{grid-template-columns:1fr}.post-row{flex-direction:column;align-items:flex-start}#field-content{min-height:250px}.preview-pane-inner{min-height:200px}.editor-header{flex-direction:column;align-items:flex-start}}
