/* ===== Zymora global stylesheet (light theme) ===== */

/* ---- Design tokens (PURE WHITE) ---- */
:root{--bg:#ffffff;--card:#ffffff;--text:#111827;--muted:#6b7280;--border:#e5e7eb;--accent:#22c55e;--primary:#2563eb;}

/* ---- Base ---- */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial,"Apple Color Emoji","Segoe UI Emoji";}
a{color:var(--primary);text-decoration:none;}
a:hover{text-decoration:underline;}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
.muted{color:var(--muted);}

.body {
background-color:#ffffff
}
/* ---- Controls ---- */
input,textarea,select{width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);}
input:focus,textarea:focus,select:focus{outline:2px solid rgba(37,99,235,.25);border-color:#cbd5e1;}
input[type="text"]{appearance:none;-webkit-appearance:none;background-image:none;}

/* ---- Buttons & badges ---- */
.btn{padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--text);cursor:pointer;}
.btn:hover{filter:brightness(1.02);}
.btn-primary{border:0;background:var(--accent);color:#fff;box-shadow:0 2px 10px rgba(34,197,94,.25);}
.btn-primary:hover{filter:brightness(1.05);}
.btn-green{background:var(--accent);border-color:var(--accent);color:#fff;}
.btn-green:hover{filter:brightness(1.05);}
.btn-danger{background:#ef4444;color:#fff;border:0;}
.btn-danger:hover{filter:brightness(1.05);}
.badge{display:inline-block;padding:4px 10px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:#374151;background:#f3f4f6;}

/* ---- Toolbars (keep categories button on same row) ---- */
.toolbar,.ads-toolbar{margin:16px 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.toolbar input,.toolbar select,.toolbar button,.ads-toolbar input,.ads-toolbar select,.ads-toolbar button{padding:2px 2px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);}
.toolbar button,.ads-toolbar button{background:var(--accent);border-color:var(--accent);color:#fff;}
/* FIX: input width:100% would push buttons down */
.toolbar input,.toolbar select,.ads-toolbar input,.ads-toolbar select{width:auto !important;flex:1 1 320px;min-width:220px;}
.toolbar button,.ads-toolbar button{width:auto !important;flex:0 0 auto;white-space:nowrap;}

/* ---- Cards & grids (NO borders on cards) ---- */
.card,.ad-card{background:var(--card);border:0 !important;outline:0 !important;border-radius:12px;padding:0;box-shadow:none;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;}
.card:hover,.ad-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.08);}
.ads-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;}
@media (max-width:980px){.ads-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.ads-grid{grid-template-columns:1fr;}}
.card .ph,.ad-card .ph{width:100%;aspect-ratio:4/3;background:transparent;overflow:hidden;border-radius:12px;border:0 !important;}
.card img,.ad-card img,.img-card{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block;border:0 !important;outline:0 !important;}
.card .body,.ad-card .body{padding:0px 2px 0;background:transparent;}
/* описание скрываем на карточках */
.card .desc,.ad-card .desc{display:none !important;}
.card .title,.ad-card .title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.card .city,.ad-card .city{font-size:12px;color:var(--muted);}

/* ---- Category picker ---- */
.picker{border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);}
.picker-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);background:#fafafa;}
.picker-breadcrumbs{color:#374151;font-size:14px;overflow:auto;white-space:nowrap;}
.picker-list{max-height:340px;overflow:auto;}
.picker-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-top:1px solid var(--border);cursor:pointer;transition:background .12s ease;}
.picker-item:hover{background:#f3f4f6;}
.picker-item .name{color:var(--text);}
.picker-item .arrow{color:#9ca3af;}

/* ---- Ad view layout ---- */
.view-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:14px;}
@media (max-width:980px){.view-grid{grid-template-columns:1fr;}}
.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;}

/* ---- Tables & alerts ---- */
.table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;}
.table thead th{background:#f3f4f6;color:#111827;text-align:left;}
.table th,.table td{padding:10px 12px;border-top:1px solid var(--border);}
.alert{padding:10px;border-radius:8px;border:1px solid var(--border);}
.alert-error{background:#fee2e2;color:#7f1d1d;border-color:#fecaca;}
.alert-success{background:#dcfce7;color:#14532d;border-color:#bbf7d0;}

/* ---- Header (compact, menu right) ---- */
header{display:flex !important;align-items:center;gap:16px;justify-content:flex-start !important;}
header>h1{margin:0;}
header>*:not(h1):first-of-type{margin-left:auto !important;}
header nav{display:flex;align-items:center;gap:14px;}
header nav ul{list-style:none;margin:0;padding:0;display:flex;gap:14px;}
header a{padding:6px 8px;text-decoration:none;}
header .badge{margin-left:8px;}

/* ---- Footer ---- */
footer,.site-footer{margin-top:40px;padding:24px 0;border-top:1px solid var(--border);background:var(--bg);text-align:center;}
footer .container,.site-footer .container{display:flex;align-items:center;justify-content:center;gap:12px;}

/* ---- Pagination ---- */
.pagination{display:flex;justify-content:center;gap:6px;margin:32px 0;flex-wrap:wrap;}
.pagination .page{min-width:36px;height:36px;padding:0 10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);text-decoration:none;}
.pagination .page:hover{background:#f3f4f6;}
.pagination .page.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;}
.pagination .page.prev,.pagination .page.next{font-weight:600;}

/* ---- Watermark (ZYMRA on hover) ---- */
.ph.img-wrap{position:relative;overflow:hidden;}
.img-watermark{position:absolute;right:8px;bottom:8px;font-size:11px;font-weight:700;line-height:1;color:rgba(255,255,255,.85);background:rgba(0,0,0,.25);padding:3px 7px;border-radius:999px;pointer-events:none;user-select:none;z-index:3;opacity:0;transform:translateY(2px);transition:opacity .15s ease,transform .15s ease;}
.ph.img-wrap:hover .img-watermark,.card:hover .img-watermark,.ad-card:hover .img-watermark{opacity:1;transform:translateY(0);}

/* =========================================================
   LAYOUT: Sticky footer + stable page area
   Источник: обсуждение (MAIN layout)
   Где используется: все страницы (header + main + footer)
   ========================================================= */

body{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

.main-layout{
  flex:1;
  width:100%;
  padding:16px 0;
}
