* { box-sizing: border-box; }
:root { --bg:#f7f4ef; --card:#fff; --text:#1f2933; --muted:#5f6b7a; --border:#ded7cc; --primary:#a3261d; --primary-dark:#7f1d17; --soft:#fff8ef; --shadow:0 12px 30px rgba(31,41,51,.08); }
body { margin:0; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:var(--bg); color:var(--text); }
.page { width:min(980px,100%); margin:0 auto; padding:22px; }
.page.wide { width:min(1180px,100%); }
.hero { padding:24px 0 16px; }
.eyebrow { text-transform:uppercase; letter-spacing:.08em; color:var(--primary); font-size:.8rem; font-weight:700; margin:0 0 8px; }
h1 { font-size:clamp(2rem,4vw,3.3rem); line-height:1.05; margin:0 0 12px; }
h2 { margin-top:0; }
p { line-height:1.55; }
.card { background:var(--card); border:1px solid var(--border); border-radius:22px; padding:22px; box-shadow:var(--shadow); margin:18px 0; }
.card.subtle { background:var(--soft); }
.muted, small { color:var(--muted); }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
button, .link-button { border:0; border-radius:14px; padding:13px 18px; font-size:1rem; font-weight:700; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.primary { background:var(--primary); color:#fff; }
.primary:hover { background:var(--primary-dark); }
.secondary, .link-button { background:#efe7dc; color:var(--text); }
.full { width:100%; margin-top:16px; font-size:1.08rem; padding:16px; }
.address-row { display:grid; grid-template-columns:1fr auto; gap:10px; margin:12px 0 16px; }
input, select, textarea { width:100%; border:1px solid var(--border); border-radius:12px; padding:12px; font:inherit; background:#fff; }
textarea { resize:vertical; }
label { display:block; font-weight:700; margin:14px 0; }
label small { display:block; font-weight:400; margin-top:6px; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.map { min-height:360px; width:100%; border-radius:18px; border:1px solid var(--border); overflow:hidden; background:#eee; }
.map.big { min-height:620px; }
.status { margin:12px 0 0; padding:12px; border-radius:12px; background:#f1eee9; color:var(--text); }
.status.ok { background:#e9f6ed; }
.status.err { background:#fdecea; }
.preview { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:10px; margin-top:10px; }
.preview img { width:100%; height:120px; object-fit:cover; border-radius:12px; border:1px solid var(--border); }
.check { display:grid; grid-template-columns:24px 1fr; gap:10px; align-items:start; font-weight:400; }
.check input { width:auto; margin-top:5px; }
.admin-table { width:100%; border-collapse:collapse; font-size:.92rem; }
.admin-table th, .admin-table td { border-bottom:1px solid var(--border); text-align:left; padding:9px; vertical-align:top; }
.admin-photos img { width:80px; height:60px; object-fit:cover; border-radius:8px; margin:2px; }
.inline-form { display:inline-block; margin:2px; }
@media (max-width:720px) { .page{padding:14px;} .card{padding:16px;border-radius:18px;} .grid,.address-row{grid-template-columns:1fr;} .actions{display:grid;} button,.link-button{width:100%;} .map,.map.big{min-height:420px;} }
