:root{--bg:#f5efe4;--surface:#fffdfa;--surface-muted:#f8f3ea;--border:#e3d8c8;--text:#112133;--text-muted:#5d646d;--accent:#c89f57;--accent-dark:#9d6d22;--navy:#0b1828;--danger:#a23f31;--success:#466c35;--shadow:0 20px 44px rgba(47,35,22,0.08)}*{box-sizing:border-box}html{font-family:Arial,Helvetica,sans-serif}body{margin:0;background:radial-gradient(circle at top,#faf6ef 0,var(--bg) 52%,#efe4d2 100%);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.admin-shell{display:grid;min-height:100vh;grid-template-columns:280px minmax(0,1fr)}.admin-sidebar{background:var(--navy);color:#f5ecdd;padding:32px 24px;border-right:1px solid rgba(255,255,255,.08)}.admin-brand{margin:0;font-family:Georgia,Times New Roman,serif;font-size:2rem;line-height:1}.admin-sidebar-copy{margin:14px 0 0;color:rgba(245,236,221,.72);line-height:1.7;font-size:.95rem}.admin-nav{display:grid;gap:12px;margin-top:32px}.admin-nav-link{display:block;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;color:rgba(255,250,242,.82);transition:.18s ease}.admin-nav-link.is-active,.admin-nav-link:hover{background:rgba(255,255,255,.08);border-color:rgba(241,194,105,.4);color:#fff8ef}.admin-main{padding:32px}.admin-page{display:grid;gap:24px}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow)}.admin-card-pad{padding:24px}.admin-header{display:flex;gap:16px;align-items:end;justify-content:space-between}.admin-eyebrow{margin:0;color:var(--accent-dark);text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:600}.admin-title{margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,3vw,3.6rem);line-height:.96}.admin-subtitle{margin:12px 0 0;color:var(--text-muted);line-height:1.8;max-width:60ch}.admin-grid{display:grid;gap:20px}.admin-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-value{margin:14px 0 0;font-family:Georgia,Times New Roman,serif;font-size:3rem;line-height:1}.metric-label{margin:0;color:var(--text-muted)}.table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{text-align:left;padding:14px 0;border-bottom:1px solid #efe5d7;vertical-align:top}.admin-table th{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem}.admin-table th,.badge{color:var(--accent-dark)}.badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;background:#fbf5ea;border:1px solid #e9d7bb;font-size:.8rem;font-weight:600}.badge.dark{background:#162436;color:#fff8ef;border-color:#23354b}.admin-form,.admin-form-grid{display:grid;gap:16px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-field{display:grid;gap:8px}.admin-field label{font-size:.88rem;font-weight:600;color:var(--text)}.admin-field input,.admin-field select,.admin-field textarea{width:100%;border-radius:16px;border:1px solid #dccfbc;background:#fcfaf6;padding:13px 14px;color:var(--text)}.admin-field textarea{min-height:140px;resize:vertical}.admin-checkbox-row{display:flex;flex-wrap:wrap;gap:16px}.admin-checkbox{display:inline-flex;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:var(--surface-muted);border:1px solid #e5dac9}.image-preview-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.image-preview-card{display:grid;gap:14px;border:1px solid #eadfce;border-radius:18px;background:#fffdfa;padding:14px}.image-preview-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid #eadfce;background:var(--surface-muted)}.admin-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.button-danger,.button-primary,.button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:13px 18px;border:1px solid transparent;cursor:pointer;transition:.18s ease}.button-danger:disabled,.button-primary:disabled,.button-secondary:disabled{cursor:not-allowed;opacity:.6}.button-primary{background:var(--accent);color:#18212d;box-shadow:0 10px 24px rgba(0,0,0,.12)}.button-primary:hover{background:#f0c774}.button-secondary{background:transparent;border-color:#d7c8af;color:var(--text)}.button-secondary:hover{border-color:var(--accent);color:var(--accent-dark)}.button-danger{background:#fff3ef;color:var(--danger);border-color:#f0d1c8}.button-danger:hover{background:#fde7e1}.notice{padding:14px 16px;border-radius:16px;font-size:.92rem}.notice.success{background:#eef6ea;border:1px solid #cfe2c3;color:var(--success)}.notice.error{background:#fff0ec;border:1px solid #f0ccc4;color:var(--danger)}.stack{display:grid;gap:18px}.list-card{border:1px solid #eadfce;background:#fffdfa;border-radius:22px;padding:18px}.list-card h3{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.5rem}.meta{color:var(--text-muted);font-size:.92rem;line-height:1.7}.inline-select{border-radius:999px;border:1px solid #dccfbc;background:#fcfaf6;padding:10px 14px;color:var(--text)}.filter-row{display:flex;flex-wrap:wrap;gap:10px}.filter-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid #d7c8af;padding:10px 16px;color:var(--text);transition:.18s ease}.filter-link.is-active,.filter-link:hover{border-color:var(--accent);background:#fbf5ea;color:var(--accent-dark)}.status-control{display:inline-flex;align-items:center;gap:10px}.status-control label{color:var(--text-muted);font-size:.84rem}.status-control select{border-radius:999px;border:1px solid #dccfbc;background:#fcfaf6;padding:10px 14px;color:var(--text)}.date-filter-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.date-filter-form label{display:grid;gap:7px;color:var(--text-muted);font-size:.84rem}.date-filter-form input{border-radius:999px;border:1px solid #dccfbc;background:#fcfaf6;padding:11px 14px;color:var(--text)}@media (max-width:1100px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{padding:24px}.admin-main{padding:20px}.admin-form-grid,.admin-grid.three,.admin-grid.two{grid-template-columns:1fr}}