:root{--bg: #fafaf9;--bg-elev: #ffffff;--bg-muted: #f5f5f4;--border: #e7e5e4;--border-strong: #d6d3d1;--text: #1c1917;--text-muted: #57534e;--text-faint: #a8a29e;--accent: #0f766e;--accent-soft: #ccfbf1;--danger: #b91c1c;--warn: #b45309;--ok: #166534;--shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--radius: 6px;--radius-lg: 10px;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit}.layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--bg-elev);border-right:1px solid var(--border);padding:1.25rem 1rem;display:flex;flex-direction:column;gap:.5rem}.sidebar .brand{font-weight:700;font-size:1.1rem;letter-spacing:-.01em;padding:0 .5rem .75rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}.sidebar .site-picker{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:.5rem .5rem .25rem}.sidebar .nav-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:var(--radius);color:var(--text-muted);font-weight:500}.sidebar .nav-item:hover{background:var(--bg-muted);color:var(--text)}.sidebar .nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar .logout{margin-top:auto;background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .75rem;color:var(--text-muted);text-align:left}.sidebar .logout:hover{background:var(--bg-muted);color:var(--text)}.main{padding:1.5rem 2rem;max-width:1400px}.page-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.5rem}.page-header h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.page-header .subtitle{color:var(--text-faint);font-size:.875rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.5rem;transition:border-color .1s,transform .1s}.card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.card-title{font-size:.95rem;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.card-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.75rem;color:var(--text-faint)}.card-meta strong{color:var(--text-muted);font-weight:500}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.25rem}.status-dot.published{background:var(--ok)}.status-dot.draft{background:var(--accent)}.status-dot.pending_review{background:var(--warn)}.status-dot.staged{background:#2563eb}.status-dot.deployed{background:#7c3aed}.status-dot.indexed{background:var(--ok)}.login-box{max-width:380px;margin:10vh auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow)}.login-box h1{margin-top:0;font-size:1.5rem}.login-box input{width:100%;padding:.6rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius);margin:1rem 0}.login-box button{width:100%;background:var(--accent);color:#fff;padding:.6rem .75rem;border:none;border-radius:var(--radius);font-weight:600}.login-box button:disabled{opacity:.5;cursor:not-allowed}.login-box .error{color:var(--danger);font-size:.875rem;margin-top:.5rem}.editor{display:grid;grid-template-columns:200px 1fr 1fr;gap:1rem;align-items:stretch;min-height:calc(100vh - 8rem)}.editor-preview{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;position:sticky;top:1rem;height:calc(100vh - 8rem)}.editor-preview header{padding:.5rem .75rem;border-bottom:1px solid var(--border);font-size:.75rem;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center}.editor-preview iframe{flex:1;border:none;background:#fff;width:100%}.editor-preview .preview-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:.875rem;padding:2rem;text-align:center}.editor-outline{font-size:.875rem}.editor-outline .outline-item{padding:.4rem .6rem;border-radius:var(--radius);color:var(--text-muted)}.editor-outline .outline-item:hover{background:var(--bg-muted);color:var(--text)}.editor-outline .outline-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.editor-form{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem}.editor-form .field{margin-bottom:1.25rem}.editor-form label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin-bottom:.25rem}.editor-form input,.editor-form textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--border);border-radius:var(--radius);font-family:inherit}.editor-form textarea{min-height:6rem;resize:vertical;font-family:var(--mono);font-size:.875rem}.editor-actions{display:flex;gap:.5rem;justify-content:flex-end;border-top:1px solid var(--border);padding-top:1rem;margin-top:1rem}.btn{background:var(--bg-muted);color:var(--text);border:1px solid var(--border);padding:.45rem .9rem;border-radius:var(--radius);font-weight:500}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.empty,.loading,.error-state{padding:2rem;text-align:center;color:var(--text-faint);background:var(--bg-elev);border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.error-state{color:var(--danger);border-color:var(--danger)}
