/* ---------- Design tokens ----------
   Ink (primary navy):  #17223F — header, hero, dark navy elements
   Paper (background):  #F5F4EF light / #0F1318 dark
   Surface (cards):     #FFFFFF light / #1A202B dark
   Card hover:          #F0EEE7 light / #222A38 dark
   Gold (orange accent):#F5A623 — price, labels, active accents
   Teal:                #159B8A — buttons, links, interactive elements
   Line (border):       #E3E0D6 light / rgba(255,255,255,.10) dark
   Ink-soft (muted):    #5B6472 light / #9AA3B2 dark
   Display font: Big Shoulders Display (сжатый, спортивный, как номер на форме)
   Body font: Inter
------------------------------------ */

:root{
  --ink:#17223F;
  --paper:#F5F4EF;
  --surface:#FFFFFF;
  --card-hover:#F0EEE7;
  --text:#17223F;
  --gold:#F5A623;
  --gold-dark:#D68C12;
  --teal:#159B8A;
  --line:#E3E0D6;
  --ink-soft:#5B6472;
  --white:#F5F5F2;
  --danger:#C1443A;
  --radius:10px;
  --overlay:rgba(23,34,63,.06);
  --overlay-strong:rgba(23,34,63,.12);
  --map-land:#EDE8D6;
  --map-water:rgba(21,155,138,.16);
  --map-water-line:#159B8A;
  --map-region:#4A4F57;
  --map-region-stroke:#1C1E22;
  --cta-bg:linear-gradient(160deg, var(--surface) 55%, var(--card-hover) 100%);
  --cta-border:1px solid var(--line);
  --cta-text:var(--text);
  --cta-text-soft:var(--ink-soft);
  --cta-shadow:0 14px 30px -20px rgba(23,34,63,.18);
}

[data-theme="dark"]{
  --paper:#0F1318;
  --surface:#1A202B;
  --card-hover:#222A38;
  --text:#F5F5F2;
  --ink-soft:#9AA3B2;
  --line:rgba(255,255,255,0.10);
  --map-land:#232B3A;
  --map-water:rgba(21,155,138,.22);
  --map-water-line:#2CBBA6;
  --map-region:#6B7280;
  --map-region-stroke:#0B0C0E;
  --overlay:rgba(255,255,255,.08);
  --overlay-strong:rgba(255,255,255,.16);
  /* CTA-блок «Vai esi treneris?» в тёмной теме — в тон общей тёмной теме
     (surface → card-hover), с тонкой рамкой как у остальных карточек. */
  --cta-bg:linear-gradient(160deg, var(--surface) 55%, var(--card-hover) 100%);
  --cta-border:1px solid var(--line);
  --cta-text:var(--white);
  --cta-text-soft:#9AA3B2;
  --cta-shadow:0 20px 36px -22px rgba(0,0,0,.5);
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
/* Страховка от горизонтального скролла: на мобильном достаточно одного
   элемента, чуть вылезающего за край (например, тень или абсолютный
   попап), чтобы вся страница стала скроллиться вбок и обрезала контент. */
html{width:100%;overflow-x:hidden;overflow-x:clip;}
body{
  width:100%;
  /* clip, а не hidden: hidden делает body «прокручиваемым контейнером», и тогда
     position:sticky внутри страницы не работает (липкая карточка объявления).
     Старые браузеры без поддержки clip остаются на hidden. */
  overflow-x:hidden;
  overflow-x:clip;
  background:var(--paper);
  color:var(--text);
  font-family:'Inter',system-ui,sans-serif;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  transition:background .2s ease, color .2s ease;
}
/* Типографская иерархия:
   — Big Shoulders Display (жирный, сжатый) только для крупных заголовков: h1, h2, .display;
   — вторичные заголовки (h3, заголовки карточек и подразделов) — спокойный Inter 700. */
h1,h2,h3,.display{
  color:var(--text);
  margin:0 0 .4em;
}
h1,h2,.display{
  font-family:'Big Shoulders Display',sans-serif;
  font-weight:900;
  letter-spacing:0.2px;
  line-height:0.95;
}
h1{font-size:clamp(2.4rem,5vw,3.6rem);}
h2{font-size:clamp(1.6rem,3vw,2.2rem);}
h3{
  font-family:'Inter',system-ui,sans-serif;
  font-weight:700;
  letter-spacing:-.005em;
  line-height:1.3;
  font-size:1.1rem;
}
a{color:var(--teal);text-decoration:none;}
a:hover{text-decoration:underline;}
p{margin:0 0 .8em;color:var(--ink-soft);}
button{font-family:inherit;cursor:pointer;}
img{max-width:100%;display:block;}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;}

/* Layout helpers */
.container{width:100%;max-width:1160px;margin:0 auto;padding:0 20px;}
@media(max-width:480px){.container{padding:0 22px;}}
.grid{display:grid;gap:20px;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.grid-3,.grid-4{grid-template-columns:1fr;}}
.cicon{vertical-align:-2px;flex-shrink:0;}

/* Header */
.site-header{background:var(--paper);color:var(--text);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);}
.site-header .bar{display:flex;align-items:center;gap:16px;padding:12px 20px;max-width:1160px;margin:0 auto;flex-wrap:wrap;row-gap:10px;}
.logo{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:1.5rem;color:var(--text);letter-spacing:.5px;white-space:nowrap;}
.logo span{color:var(--gold);}
.nav-links{display:flex;gap:6px;align-items:center;flex-wrap:wrap;row-gap:10px;margin-left:auto;}
.nav-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.nav-group.nav-utils{gap:12px;}
.nav-divider{width:1px;height:22px;background:var(--line);margin:0 10px;flex-shrink:0;}
.nav-links a,.nav-links button.linklike{color:var(--text);font-size:.92rem;font-weight:600;background:none;border:0;padding:8px 10px;border-radius:6px;}
.nav-links button.linklike:hover,.nav-links a:hover{background:var(--overlay);text-decoration:none;}
.nav-links .linklike.active,.nav-links a.active{background:var(--teal);color:var(--white);}
.lang-switch{display:flex;gap:3px;background:var(--overlay);border:1px solid var(--line);border-radius:8px;padding:3px;}
.lang-btn{background:transparent;border:0;color:var(--ink-soft);font-size:.76rem;font-weight:700;letter-spacing:.3px;padding:5px 9px;border-radius:6px;}
.lang-btn:hover{color:var(--text);}
.lang-btn.active{background:var(--teal);color:var(--white);}
.theme-toggle{background:var(--overlay);border:1px solid var(--line);color:var(--text);width:38px;height:38px;border-radius:50%;font-size:1.05rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.theme-toggle:hover{background:var(--overlay-strong);}
.btn{display:inline-block;border:0;border-radius:8px;padding:10px 18px;font-weight:700;font-size:.95rem;transition:transform .12s ease,background-color .18s ease,border-color .18s ease,color .18s ease;}
.btn:hover{text-decoration:none;}
.btn:active{transform:scale(.97);}
.btn-gold{background:var(--teal);color:var(--white);}
.btn-gold:hover{background:var(--teal);filter:brightness(.9);}
.btn-teal{background:var(--teal);color:var(--white);}
/* Кнопка в блоке «Vai esi treneris?» — фирменный зелёный вместо оранжевого */
.trainer-cta .btn-gold{background:var(--teal);color:var(--white);}
.trainer-cta .btn-gold:hover{background:var(--teal);filter:brightness(.9);}
.btn-outline{background:transparent;border:2px solid var(--white);color:var(--white);}
.btn-ghost{background:transparent;border:2px solid var(--line);color:var(--text);}
.btn-danger{background:var(--danger);color:var(--white);}
.btn-block{width:100%;text-align:center;}
.btn[disabled]{opacity:.55;cursor:not-allowed;}

/* Hero */
.hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(160deg,var(--ink) 55%, #223058 100%);
  color:var(--white);
  padding:56px 0 44px;
  text-align:center;
  box-shadow:0 24px 40px -24px rgba(0,0,0,.55);
}
.hero::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:url('hero-bg.webp');
  background-size:cover;
  background-position:center 30%;
  filter:blur(4px);
  transform:scale(1.08);
  z-index:0;
}
.hero::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(15,20,35,.5) 0%, rgba(15,20,35,.78) 45%, rgba(15,20,35,.96) 78%, #0F1318 100%);
  z-index:1;
}
.hero h1,.hero h2,.hero h3{color:var(--white);}
/* Заголовок hero — наклонный жирный геометрический шрифт в духе логотипа LaiSporto.lv */
.hero h1 .accent{color:var(--teal);}
.hero h1{
  font-family:'Montserrat','Poppins',sans-serif;
  font-style:italic;
  font-weight:800;
  font-size:clamp(1.5rem,6vw,3.4rem);
  line-height:1.15;
  letter-spacing:-.02em;
  text-wrap:balance;
  text-shadow:0 2px 18px rgba(0,0,0,.45);
  margin-bottom:.5em;
}
.hero p{color:#C7CCDA;}
.hero .container{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;}

/* Hero search — крупная строка поиска прямо в hero */
.hero-search{display:flex;gap:12px;margin-top:28px;max-width:640px;width:100%;flex-wrap:wrap;justify-content:center;}
.hero-search-box{flex:1;min-width:220px;display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:0 16px;text-align:left;}
.hero-search-box .icon{color:#9AA3B0;font-size:1rem;flex-shrink:0;}
.hero-search-box input{flex:1;background:transparent;border:0;color:var(--white);font-size:.98rem;padding:14px 0;}
.hero-search-box input::placeholder{color:#9AA3B0;}
.hero-search-box{transition:border-color .15s ease,box-shadow .15s ease;}
.hero-search-box input:focus,.hero-search-box input:focus-visible{outline:none;box-shadow:none;}
.hero-search-box:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(21,155,138,.35);}
.hero-search button{padding:14px 26px;font-size:.98rem;flex-shrink:0;}
@media(max-width:560px){.hero-search{flex-direction:column;}.hero-search button{width:100%;}}

/* Большая кнопка «Visi sludinājumi» в hero (вместо строки поиска) */
.hero-cta{
  display:inline-flex;align-items:center;gap:18px;margin-top:32px;
  padding:12px 12px 12px 36px;border-radius:999px;
  background:linear-gradient(135deg, var(--teal), color-mix(in srgb, var(--teal) 72%, #0b3d36));
  color:var(--white);font-weight:800;font-size:1.25rem;letter-spacing:.01em;line-height:1;
  box-shadow:0 14px 34px -12px color-mix(in srgb, var(--teal) 80%, transparent), inset 0 1px 0 rgba(255,255,255,.22);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.hero-cta:hover{text-decoration:none;color:var(--white);transform:translateY(-2px);filter:brightness(1.06);
  box-shadow:0 18px 40px -12px color-mix(in srgb, var(--teal) 90%, transparent), inset 0 1px 0 rgba(255,255,255,.22);}
.hero-cta:active{transform:translateY(0) scale(.98);}
.hero-cta:focus-visible{outline:3px solid var(--white);outline-offset:3px;}
.hero-cta-arrow{
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.2);
  transition:transform .18s ease,background-color .18s ease;
}
.hero-cta:hover .hero-cta-arrow{transform:translateX(4px);background:rgba(255,255,255,.3);}
@media(max-width:560px){
  .hero-cta{display:flex;justify-content:space-between;width:100%;max-width:420px;box-sizing:border-box;margin-left:auto;margin-right:auto;padding-left:28px;font-size:1.15rem;}
}
.hero-cities{margin-top:36px;text-align:center;}
.hero-cities-label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:1.4px;color:#9AA3B2;font-weight:700;margin-bottom:14px;}
.hero-cities-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}
.city-pill{
  display:inline-flex;align-items:center;
  padding:10px 22px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:var(--white);
  font-size:.92rem;
  font-weight:600;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.city-pill:hover{
  text-decoration:none;
  transform:translateY(-2px);
  background:rgba(255,255,255,.11);
  border-color:var(--teal);
  box-shadow:0 6px 18px rgba(21,155,138,.28);
}
.city-pill:active{
  transform:translateY(0);
  background:var(--teal);
  border-color:var(--teal);
  color:var(--white);
  box-shadow:0 4px 14px rgba(21,155,138,.4);
}
.city-pill.active{
  background:var(--teal);
  border-color:var(--teal);
  color:var(--white);
  box-shadow:0 4px 14px rgba(21,155,138,.35);
}
.city-pill-more{
  background:transparent;
  border-style:dashed;
  border-color:rgba(255,255,255,.28);
  color:#C7CCDA;
}
.city-pill-more:hover{
  border-style:solid;
  color:var(--white);
}
@media(max-width:560px){
  .hero-cities-row{gap:8px;}
  .city-pill{padding:9px 16px;font-size:.86rem;}
}

.panel-card{flex:1;min-width:230px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:20px;cursor:pointer;transition:background .15s;}
.panel-card:hover{background:rgba(255,255,255,.13);}
.panel-card .k{font-size:.78rem;text-transform:uppercase;letter-spacing:1px;color:var(--gold);font-weight:700;}
.panel-card .v{font-family:'Big Shoulders Display';font-weight:700;font-size:1.5rem;margin-top:4px;}

/* Sport cards (Populārākie sporta veidi) — нарочно другой стиль,
   чем у карточек объявлений (.card), чтобы их не путали:
   эмодзи в кружке вместо фото, текст по центру, нет цены/сердечка. */
.sport-grid{margin-top:0;}
.sport-card{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  height:100%;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px 20px 24px;
  transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.sport-card:hover{text-decoration:none;transform:translateY(-3px);border-color:var(--teal);background:var(--card-hover);box-shadow:0 10px 24px rgba(0,0,0,.18);}
.sport-card-icon{
  width:64px;height:64px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:1.9rem;
  border-radius:50%;
  background:linear-gradient(160deg, rgba(21,155,138,.16), rgba(245,166,35,.14));
  border:1px solid var(--line);
  margin-bottom:14px;
}
.sport-card-title{margin:0 0 8px;font-size:1.05rem;color:var(--text);}
.sport-card-desc{margin:0 0 16px;color:var(--ink-soft);font-size:.86rem;line-height:1.45;min-height:calc(1.45em * 3);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.sport-card-count{
  margin-top:auto;
  font-size:.78rem;font-weight:700;
  color:var(--teal);
  background:rgba(21,155,138,.12);
  border:1px solid rgba(21,155,138,.3);
  padding:4px 12px;
  border-radius:999px;
}

/* Cards */
.card-link{text-decoration:none;color:inherit;display:block;height:100%;}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;height:100%;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background-color .2s ease;}
/* общее правило a:hover подчёркивает весь текст — в карточке этого быть не должно */
.card-link:hover,.card-link:hover *{text-decoration:none;}
.card-link:hover .card{transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.16);border-color:var(--teal);background:var(--card-hover);}

.card .thumb{aspect-ratio:16/9;flex-shrink:0;background:linear-gradient(135deg,var(--teal),#123a35);display:flex;align-items:flex-end;justify-content:flex-start;position:relative;background-size:cover;background-position:center;}
.card .thumb-icon{position:absolute;top:41%;left:50%;transform:translate(-50%,-50%);font-size:2.2rem;color:rgba(255,255,255,.9);}
.thumb-placeholder-text{position:absolute;top:64%;left:50%;transform:translate(-50%,-50%);font-size:.74rem;font-weight:600;color:rgba(255,255,255,.75);white-space:nowrap;}
.card .like-btn{position:absolute;top:8px;right:8px;background:rgba(23,33,58,.55);border:0;color:#fff;border-radius:50%;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease;z-index:2;}
.card .like-btn:hover{background:rgba(23,33,58,.78);transform:scale(1.1);}
.card .like-btn.is-liked{color:var(--teal);background:rgba(23,33,58,.55);}
.card .like-btn.is-liked:hover{color:var(--teal);filter:brightness(.9);}
.card-sport-pill{position:relative;z-index:1;margin:10px;padding:4px 10px;border-radius:999px;background:rgba(17,23,40,.6);backdrop-filter:blur(2px);color:#fff;font-size:.78rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 54px);}

.card .body{padding:16px 18px 18px;flex:1;display:flex;flex-direction:column;gap:0;}
.card-title{margin:0 0 8px;font-size:1.05rem;font-weight:700;line-height:1.3;min-height:calc(1.3em * 2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:.1px;}
.card-location{display:flex;align-items:center;gap:5px;font-size:.85rem;color:var(--ink-soft);margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.card-location .cicon{flex-shrink:0;color:var(--ink-soft);}
.card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:auto;padding-bottom:14px;min-height:26px;}
.card-tag{display:inline-flex;align-items:center;gap:4px;font-size:.76rem;font-weight:600;color:var(--ink-soft);background:transparent;border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap;}
.card-tag .cicon{color:var(--teal);flex-shrink:0;}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);}
.card .price{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:1.2rem;color:var(--teal);letter-spacing:.2px;}
.card .price span{font-family:'Inter',sans-serif;font-size:.72rem;font-weight:600;color:var(--ink-soft);margin-left:2px;}
.likes-badge{font-size:.82rem;font-weight:700;color:var(--ink-soft);white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;}
.likes-badge svg{color:var(--teal);flex-shrink:0;}

/* Sections */
/* CTA — приглашение тренерам создать объявление */
.trainer-cta{
  position:relative;
  overflow:hidden;
  background:var(--cta-bg);
  border:var(--cta-border);
  border-radius:var(--radius);
  padding:44px 32px;
  text-align:center;
  box-shadow:var(--cta-shadow);
}
.trainer-cta::before{
  content:'';
  position:absolute;
  top:-70px; right:-70px;
  width:220px; height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(21,155,138,.28) 0%, rgba(21,155,138,0) 70%);
}
.trainer-cta .icon{font-size:2.2rem;margin-bottom:10px;display:block;}
.trainer-cta h2{color:var(--cta-text);margin:0 0 8px;}
.trainer-cta p{color:var(--cta-text-soft);max-width:480px;margin:0 auto 22px;}
.trainer-cta .btn{position:relative;z-index:2;padding:13px 28px;font-size:1rem;}

.section{padding:48px 0;}

/* Страница "Par mums" */
.about-page h2{text-align:center;}
.about-intro{max-width:640px;margin:10px auto 36px;text-align:center;color:var(--ink-soft);font-size:1.02rem;line-height:1.6;}
.about-features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.about-feature{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px 22px;text-align:center;}
.about-feature-icon{font-size:1.8rem;display:block;margin-bottom:12px;}
.about-feature h3{margin:0 0 8px;font-size:1.05rem;}
.about-feature p{margin:0;color:var(--ink-soft);font-size:.9rem;line-height:1.55;}
@media (max-width:760px){.about-features{grid-template-columns:1fr;}}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px;}
.see-all-link{display:inline-flex;align-items:center;font-size:.86rem;font-weight:700;color:var(--teal);padding:8px 16px;border:1.5px solid var(--teal);border-radius:999px;white-space:nowrap;transition:background .18s ease,color .18s ease,transform .18s ease;}
.see-all-link:hover{background:var(--teal);color:var(--white);text-decoration:none;transform:translateX(3px);}

/* How it works */
.how-section{padding-top:8px;}
.how-head{text-align:center;max-width:560px;margin:0 auto 30px;}
.how-head h2{margin-bottom:8px;}
.how-head p{color:var(--ink-soft);margin:0;}
.how-grid{display:flex;align-items:stretch;gap:18px;}
.how-step{flex:1;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;text-align:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease;}
.how-step:hover{transform:translateY(-3px);border-color:var(--teal);background:var(--card-hover);}
.how-num{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:1.5rem;color:var(--gold);line-height:1;margin-bottom:8px;}
.how-icon{font-size:1.9rem;margin-bottom:12px;}
.how-step h3{font-size:.98rem;letter-spacing:0;margin-bottom:8px;color:var(--text);}
.how-step p{color:var(--ink-soft);font-size:.88rem;margin:0;}
.how-arrow{display:flex;align-items:center;justify-content:center;color:var(--teal);font-size:1.3rem;font-weight:700;flex-shrink:0;}
@media(max-width:800px){
  .how-grid{flex-direction:column;}
  .how-arrow{transform:rotate(90deg);margin:-6px 0;}
}

/* ---------- Listings catalog page ---------- */
.listings-page{padding-top:28px;}
.listings-head{margin-bottom:18px;}
.listings-title{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:4px;}
.listings-subtitle{margin:0;color:var(--ink-soft);font-size:.95rem;}

/* Filters bar — компактная горизонтальная панель */
.filters{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:16px;}
.filters-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.filters .field{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--ink-soft);font-weight:600;}
.filters select,.filters input{padding:8px 10px;border:1px solid var(--line);border-radius:6px;font-family:inherit;font-size:.9rem;background:var(--surface);color:var(--text);}
.filters .field--compact{flex-direction:row;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 12px 6px 10px;flex:1 1 150px;min-width:130px;}
.filters .field--search-bar{
  flex-direction:row;align-items:center;gap:10px;
  background:var(--paper);border:1px solid var(--line);border-radius:14px;
  padding:13px 16px;margin-bottom:12px;width:100%;
  transition:border-color .15s ease;
}
.filters .field--search-bar:focus-within{border-color:var(--teal);}
.filters .field--search-bar .field-icon{color:var(--ink-soft);flex-shrink:0;display:flex;}
.filters .field--search-bar input{border:0;background:transparent;padding:0;font-size:.95rem;font-weight:500;color:var(--text);flex:1;min-width:0;}
.filters .field--search-bar input:focus{outline:none;}
.filters .field--search-bar input::placeholder{color:var(--ink-soft);font-weight:500;}
.field--compact .field-icon{color:var(--teal);flex-shrink:0;display:flex;}
.field--compact select,.field--compact input{border:0;background:transparent;padding:2px 0;font-size:.85rem;font-weight:600;color:var(--text);flex:1;min-width:0;}
.field--compact select:focus,.field--compact input:focus{outline:none;}
.field--compact input::placeholder{color:var(--ink-soft);font-weight:600;}
.filters-more-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--paper);color:var(--text);border-radius:999px;padding:9px 14px;font-size:.85rem;font-weight:700;flex-shrink:0;transition:border-color .15s ease,color .15s ease;}
.filters-more-btn:hover{border-color:var(--teal);color:var(--teal);}
.filters-more-btn.has-value{border-color:var(--teal);color:var(--teal);background:rgba(21,155,138,.08);}
.filters-submit-btn{border-radius:999px;padding:9px 22px;font-size:.85rem;flex-shrink:0;margin-left:auto;}
/* «Atcelt filtrus» — пилюля в стиле остальных фильтров, с мягким красным акцентом */
.clear-filters-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;
  font-family:inherit;font-size:.85rem;font-weight:700;line-height:1;white-space:nowrap;
  color:var(--danger);
  background:color-mix(in srgb, var(--danger) 10%, transparent);
  border:1.5px solid color-mix(in srgb, var(--danger) 35%, transparent);
  border-radius:999px;padding:10px 18px;cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease;
}
.clear-filters-btn:hover{
  background:var(--danger);border-color:var(--danger);color:#fff;
  box-shadow:0 6px 16px -8px color-mix(in srgb, var(--danger) 70%, transparent);
}
.clear-filters-btn:active{transform:scale(.97);}
.clear-filters-btn:focus-visible{outline:2px solid var(--danger);outline-offset:2px;}
[data-theme="dark"] .clear-filters-btn{color:#F28B82;background:rgba(242,139,130,.10);border-color:rgba(242,139,130,.35);}
[data-theme="dark"] .clear-filters-btn:hover{background:#E5534B;border-color:#E5534B;color:#fff;}
.filters-extra{display:none;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);}
.filters-extra .field-label{font-size:.82rem;color:var(--ink-soft);font-weight:600;}
.filters.filters--expanded .filters-extra{display:flex;}
@media(max-width:700px){
  .filters-row{gap:8px;}
  .field--compact{flex:1 1 100%;}
  .filters-submit-btn{margin-left:0;flex:1 1 100%;}
}

/* ── Фильтры: на компьютере разметка «прозрачна» и выглядит как раньше;
      на телефоне (≤640px) — поиск + кнопка «Фильтры», все фильтры в полноэкранном листе ── */
.filters-top{display:block;}
.filters-open-btn{display:none;}
.filters-sheet,.filters-sheet-body{display:contents;}
.filters-sheet-head,.filters-sheet-foot{display:none;}

@media(max-width:640px){
  .filters{background:transparent;border:0;padding:0;border-radius:0;margin-bottom:12px;}
  .filters-top{display:flex;align-items:stretch;gap:10px;}
  .filters-top .field--search-bar{flex:1;min-width:0;width:auto;margin-bottom:0;}
  .filters-open-btn{
    position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
    width:54px;border-radius:14px;border:1px solid var(--line);background:var(--paper);color:var(--text);cursor:pointer;
    transition:border-color .15s ease,color .15s ease,background-color .15s ease;
  }
  .filters-open-btn:hover,.filters-open-btn.has-value{border-color:var(--teal);color:var(--teal);}
  .filters-open-btn.has-value{background:rgba(21,155,138,.08);}
  .filters-open-badge{
    position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:999px;background:var(--teal);color:var(--white);font-size:.72rem;font-weight:700;line-height:1;
  }

  /* Лист фильтров */
  .filters-sheet{
    display:none;position:fixed;inset:0;z-index:300;
    flex-direction:column;background:var(--paper);
  }
  .filters.sheet-open .filters-sheet{display:flex;}
  .filters-sheet-head{
    display:flex;align-items:center;justify-content:space-between;flex-shrink:0;
    padding:calc(14px + env(safe-area-inset-top,0px)) 16px 14px;border-bottom:1px solid var(--line);
  }
  .filters-sheet-head h3{margin:0;font-size:1.15rem;}
  .filters-sheet-close{
    width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);
    color:var(--text);font-size:1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
  }
  .filters-sheet-body{display:block;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px;}
  .filters-sheet .filters-row{flex-direction:column;align-items:stretch;gap:10px;}
  .filters-sheet .filters-row .field--compact{flex:0 0 auto;width:100%;box-sizing:border-box;min-width:0;padding:10px 14px;}
  /* Кнопки «Dienas» и «Atcelt filtrus» из ряда на телефоне не нужны:
     дни показаны сразу, сброс — в нижней панели листа */
  .filters-sheet .filters-more-btn,
  .filters-sheet .filters-row .clear-filters-btn{display:none;}
  .filters-sheet .filters-extra{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);}
  .filters-sheet .days-picker{flex-wrap:wrap;}
  .filters-sheet-foot{
    display:flex;gap:10px;flex-shrink:0;
    padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--paper);
  }
  .filters-sheet-foot .btn{flex:1;justify-content:center;}
  body.filters-sheet-locked{overflow:hidden;}
}

/* Toolbar: результаты + сортировка */
.listings-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.results-count{font-size:.9rem;font-weight:700;color:var(--ink-soft);}
.sort-select{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--ink-soft);font-weight:600;}
.sort-select select{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font-family:inherit;font-size:.85rem;font-weight:700;cursor:pointer;}
.sort-select select:hover{border-color:var(--teal);}

/* Custom dropdown (replaces native <select> for city/sport/sort in the filters bar) */
.dd{position:relative;}
.dd-trigger{width:100%;display:flex;align-items:center;gap:6px;background:transparent;border:0;padding:0;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--text);cursor:pointer;}
.dd-trigger:focus{outline:none;}
.dd-trigger-label{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.dd-chevron{color:var(--ink-soft);flex-shrink:0;font-size:.68rem;line-height:1;transition:transform .15s ease;}
.dd.open .dd-chevron{transform:rotate(180deg);color:var(--teal);}
.field--compact.dd.open{border-color:var(--teal);}

.dd-panel{position:absolute;top:calc(100% + 8px);left:0;min-width:100%;width:max-content;max-width:320px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.4);padding:6px;z-index:40;max-height:320px;overflow-y:auto;display:none;}
.dd.open > .dd-panel{display:block;}
.dd-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:9px;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--text);white-space:nowrap;}
.dd-item:hover{background:var(--card-hover);}
.dd-item.active{background:var(--teal);color:var(--white);}
.dd-item .dd-check{width:14px;flex-shrink:0;opacity:0;font-size:.8rem;}
.dd-item.active .dd-check{opacity:1;}

/* sort dropdown — keeps the boxed look of the old <select>, not the pill field style */
.dd--sort{display:inline-flex;}
.dd--sort .dd-trigger{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font-weight:700;gap:8px;}
.dd--sort .dd-trigger:hover{border-color:var(--teal);}
.dd--sort.open .dd-trigger{border-color:var(--teal);}
.dd--sort .dd-panel{left:auto;right:0;}

/* Rajons chip — компактная кнопка внутри поля города, видна только когда
   выбрана Rīga; открывает свою мини-панель, не мешая основному дропдауну
   городов (не занимает отдельного места в строке фильтров). */
.field--compact.dd .dd-trigger{width:auto;flex:1;min-width:0;}
.district-inline{position:relative;flex-shrink:0;}
.district-chip{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-family:inherit;font-size:.74rem;font-weight:700;color:var(--teal);white-space:nowrap;cursor:pointer;line-height:1.3;}
.district-chip:hover{border-color:var(--teal);}
.district-chip.has-value{background:rgba(21,155,138,.12);border-color:var(--teal);}
.district-inline .dd-panel{left:auto;right:0;}
.dd-back{display:flex;align-items:center;gap:6px;width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);margin-bottom:6px;padding:8px 8px 10px;font-family:inherit;font-size:.82rem;font-weight:700;color:var(--teal);cursor:pointer;text-align:left;}
.dd-search{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:0 14px;margin:4px 4px 10px;transition:border-color .15s ease,box-shadow .15s ease;}
.dd-search-icon{display:inline-flex;align-items:center;flex-shrink:0;color:var(--ink-soft);transition:color .15s ease;}
/* .dd-search .dd-search-input — специфичность выше, чем у общих правил полей формы
   (.field-row input), иначе внутри формы объявления получалась «рамка в рамке» */
.dd-search .dd-search-input{flex:1;min-width:0;width:auto;height:44px;box-sizing:border-box;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:inherit;font-size:.95rem;color:var(--text);}
.dd-search .dd-search-input:focus,.dd-search .dd-search-input:focus-visible{outline:none;box-shadow:none;}
.dd-search .dd-search-input::placeholder{color:var(--ink-soft);}
.dd-search:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(21,155,138,.25);}
.dd-search:focus-within .dd-search-icon{color:var(--teal);}
.dd-back:hover{color:var(--teal);}
.dd-back .cicon{flex-shrink:0;}

.days-picker{display:flex;gap:6px;}
.day-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:.78rem;font-weight:700;}
.day-btn.active{background:var(--teal);color:#fff;border-color:var(--teal);}

/* Forms */
.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;max-width:480px;width:100%;margin:0 auto;}
@media(max-width:480px){.form-card{padding:20px;}}
.form-card.wide{max-width:640px;}
.field-row{margin-bottom:16px;}
.field-row label{display:block;font-size:.85rem;font-weight:700;margin-bottom:6px;color:var(--text);}
.field-row input,.field-row select,.field-row textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:.95rem;background:var(--surface);color:var(--text);}
.field-row textarea{resize:vertical;min-height:80px;}

/* Тот же выпадающий список ("dd"), что и в фильтрах каталога/шапке, но в
   полноширинном варианте формы вместо узкой пилюли. */
.field-row .dd-field{width:100%;}
.field-row .dd-field .dd-trigger{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-size:.95rem;font-weight:500;}
.field-row .dd-field.open .dd-trigger{border-color:var(--teal);}
.field-row .dd-field .dd-panel{width:100%;max-width:none;}
.dd-group-label{padding:10px 12px 4px;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);}
.dd-group-label:first-child{padding-top:6px;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.hint{font-size:.82rem;color:var(--ink-soft);margin-top:-8px;margin-bottom:14px;}
.error-text{color:var(--danger);font-size:.85rem;margin:-8px 0 12px;}
.switch-line{text-align:center;margin-top:16px;font-size:.9rem;color:var(--ink-soft);}
.spam-hint{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:.85rem;color:var(--ink-soft);line-height:1.4;}
.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-soft);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--line);}
.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;}
.btn-google svg{flex-shrink:0;}

/* Wizard (multi-step listing form) */
.wizard-progress{display:flex;align-items:center;gap:10px;margin-bottom:22px;}
.wizard-progress-track{flex:1;height:6px;border-radius:999px;background:var(--line);overflow:hidden;}
.wizard-progress-fill{height:100%;background:var(--teal);border-radius:999px;transition:width .3s ease;}
.wizard-progress-label{font-size:.76rem;font-weight:700;color:var(--ink-soft);white-space:nowrap;letter-spacing:.2px;}
.wizard-head{margin-bottom:20px;}
.wizard-head h2{margin:0 0 4px;}
.wizard-hint{margin:0;color:var(--ink-soft);font-size:.88rem;}

.form-step{display:none;}
.form-step.active{display:block;animation:stepIn .28s ease;}
@keyframes stepIn{from{opacity:0;transform:translateX(10px);}to{opacity:1;transform:translateX(0);}}

.field-hint{font-size:.8rem;color:var(--ink-soft);margin-top:6px;}

.pill-grid{display:flex;flex-wrap:wrap;gap:8px;}
.pill-btn{padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--text);font-weight:600;font-size:.86rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease,transform .15s ease;}
.pill-btn:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-1px);}
.pill-btn.active{background:var(--teal);border-color:var(--teal);color:#fff;}

.sport-pill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;}
.sport-pill{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--text);font-weight:600;font-size:.8rem;cursor:pointer;transition:border-color .15s ease,transform .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease;text-align:center;}
.sport-pill .emoji{font-size:1.5rem;line-height:1;}
.sport-pill:hover{border-color:var(--teal);transform:translateY(-2px);}
.sport-pill.active{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 10px 20px -10px rgba(21,155,138,.7);}

.price-error{margin:6px 0 0;font-size:.82rem;font-weight:700;color:var(--danger);}
.price-error[hidden]{display:none;}
.price-hint{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--gold-dark);margin-top:6px;font-weight:600;}

.tip-banner{display:flex;align-items:center;gap:10px;background:rgba(245,166,35,.1);border:1px solid rgba(245,166,35,.35);border-radius:10px;padding:12px 14px;font-size:.85rem;color:var(--text);font-weight:600;margin-top:16px;}

.dropzone{border-radius:14px;transition:box-shadow .15s ease;}
.dropzone.drag-over{box-shadow:0 0 0 2px var(--teal) inset;border-radius:14px;}

.step-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;}
.step-actions .btn{flex:1;text-align:center;}
.step-actions-group{display:flex;gap:10px;flex:1;}

/* Listing detail */
.listing-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;}
@media(max-width:800px){.listing-hero{grid-template-columns:1fr;}}
.gallery-main{height:320px;background:linear-gradient(135deg,var(--teal),#123a35);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:4rem;color:rgba(255,255,255,.85);}
.gallery-thumbs{display:flex;gap:8px;margin-top:10px;}
.gallery-thumbs div{width:56px;height:56px;border-radius:6px;background:linear-gradient(135deg,#2a3a63,var(--ink));}
.info-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;}
.info-box dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0;}
.info-box dt{color:var(--ink-soft);font-size:.85rem;}
.info-box dd{margin:0;font-weight:600;}
.tag{display:inline-block;background:rgba(30,127,114,.15);color:var(--teal);border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:700;}

/* Reviews */
.review{border-top:1px solid var(--line);padding:14px 0;}
.review .who{font-weight:700;font-size:.9rem;}
.empty-note{color:var(--ink-soft);font-style:italic;}

/* Profile */
.profile-tabs-bar{display:flex;justify-content:center;margin-bottom:28px;}
.segmented-lg{padding:5px;gap:4px;}
.segmented-lg .segmented-btn{padding:12px 28px;font-size:.95rem;}
@media(max-width:480px){.profile-tabs-bar{width:100%;}}
/* Телефон: вкладки кабинета (Mani sludinājumi / Saglabātie / Mans profils) —
   первые две в одном ряду, третья отдельным рядом под ними. Только ≤480px. */
@media(max-width:480px){
  /* Повышенная специфичность (.segmented.segmented-3), иначе общие правила
     .segmented / .segmented-btn ниже по файлу перебивают эти. */
  .segmented.segmented-3{display:flex;flex-wrap:wrap;gap:6px;width:100%;max-width:100%;margin-bottom:0;border-radius:24px;padding:6px;}
  .segmented.segmented-3 .segmented-btn{flex:1 1 calc(50% - 3px);min-width:0;padding:12px 6px;font-size:.88rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:18px;}
  .segmented.segmented-3 .segmented-btn:nth-child(3){flex:1 1 100%;}
}

.profile-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;max-width:820px;margin:0 auto;}
@media(max-width:700px){.profile-account-grid{grid-template-columns:1fr;}}
.side-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;}
.side-card .row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.92rem;}
.side-card .row:last-child{border-bottom:0;}
.side-card .row span{flex-shrink:0;color:var(--ink-soft);}
.side-card .row b{flex:1;min-width:0;text-align:right;font-weight:700;overflow-wrap:anywhere;word-break:break-word;}
.tabs{display:flex;gap:8px;margin-bottom:16px;}
.tab{background:transparent;border:0;border-bottom:3px solid transparent;padding:8px 4px;font-weight:700;color:var(--ink-soft);}
.tab.active{color:var(--text);border-color:var(--gold);}

/* Profile — compact left card (тот же язык, что у .sport-card / .trainer-cta:
   градиентный круг-аватар, мягкое свечение, приподнятые карточки) */
.profile-compact{
  position:relative;overflow:hidden;
  box-shadow:0 16px 36px -26px rgba(0,0,0,.35);
}
.profile-compact::before{
  content:'';position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;
  background:radial-gradient(circle, rgba(245,166,35,.16) 0%, rgba(245,166,35,0) 72%);
  pointer-events:none;
}
.profile-summary{position:relative;z-index:1;text-align:center;}
.profile-avatar{
  width:64px;height:64px;margin:0 auto 12px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:1.6rem;color:var(--white);
  background:linear-gradient(160deg,var(--teal) 0%, #0c5a50 100%);
  box-shadow:0 8px 20px -6px rgba(21,155,138,.55);
}
.profile-summary-name{font-family:'Inter',system-ui,sans-serif;font-weight:700;font-size:1.2rem;margin-bottom:10px;text-align:center;}
.profile-summary-rows{text-align:left;}
.profile-summary .row{padding:6px 0;font-size:.85rem;}
.profile-settings-card{position:relative;overflow:hidden;box-shadow:0 16px 36px -26px rgba(0,0,0,.35);}
.settings-accordion-title{font-size:.74rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px;}
.settings-accordion{display:flex;flex-direction:column;}
.settings-item-wrap{border-bottom:1px solid var(--line);}
.settings-item-wrap:last-child{border-bottom:0;}
.settings-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;padding:11px 4px;font-size:.87rem;font-weight:600;color:var(--text);text-align:left;border-radius:8px;transition:background-color .15s ease,color .15s ease;}
.settings-item:hover{background:var(--overlay);color:var(--teal);}
.settings-item.open{color:var(--teal);background:rgba(21,155,138,.08);}
.settings-item-icon{
  width:30px;height:30px;flex-shrink:0;border-radius:9px;
  display:flex;align-items:center;justify-content:center;font-size:.92rem;
  background:linear-gradient(160deg, rgba(21,155,138,.16), rgba(245,166,35,.14));
  border:1px solid var(--line);
}
.settings-item-label{flex:1;min-width:0;}
.settings-chevron{color:var(--ink-soft);font-size:.8rem;flex-shrink:0;transition:transform .15s ease;}
.settings-item.open .settings-chevron{color:var(--teal);}
.settings-form{padding:6px 4px 16px;}
/* «Dzēst kontu» — опасное действие: отделено от настроек, спокойная красная пилюля на всю ширину */
.delete-account-zone{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}
.delete-account-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  font-family:inherit;font-size:.9rem;font-weight:700;line-height:1;cursor:pointer;
  color:var(--danger);
  background:color-mix(in srgb, var(--danger) 8%, transparent);
  border:1.5px solid color-mix(in srgb, var(--danger) 35%, transparent);
  border-radius:12px;padding:13px 18px;
  transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease;
}
.delete-account-btn svg{flex-shrink:0;}
.delete-account-btn:hover{background:var(--danger);border-color:var(--danger);color:#fff;box-shadow:0 8px 18px -10px color-mix(in srgb, var(--danger) 75%, transparent);}
.delete-account-btn:active{transform:scale(.98);}
.delete-account-btn:focus-visible{outline:2px solid var(--danger);outline-offset:2px;}
[data-theme="dark"] .delete-account-btn{color:#F28B82;background:rgba(242,139,130,.08);border-color:rgba(242,139,130,.35);}
[data-theme="dark"] .delete-account-btn:hover{background:#E5534B;border-color:#E5534B;color:#fff;}

.settings-form .field-row{margin-bottom:12px;}

/* Profile — main listings area */
.my-listings-main{max-width:820px;margin:0 auto;}
.my-listings-main .section-head{margin-bottom:14px;align-items:center;}
.count-chip{
  flex-shrink:0;font-size:.84rem;font-weight:700;color:var(--teal);
  background:rgba(21,155,138,.12);border:1px solid rgba(21,155,138,.3);
  padding:6px 14px;border-radius:999px;white-space:nowrap;
}

/* Segmented filter control — компактный, современный, в тонах сайта */
.segmented{display:inline-flex;gap:4px;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:4px;margin-bottom:20px;}
.segmented-btn{border:0;background:transparent;color:var(--ink-soft);font-weight:700;font-size:.84rem;padding:8px 18px;border-radius:999px;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease;}
.segmented-btn:hover{color:var(--text);}
.segmented-btn.active{background:var(--teal);color:#fff;box-shadow:0 6px 16px -4px rgba(21,155,138,.5);}
@media(max-width:480px){.segmented{width:100%;}.segmented-btn{flex:1;padding:8px 10px;}}

/* My listings — compact management rows (не спутать с публичными .card) */
.my-listings-list{display:flex;flex-direction:column;gap:12px;}
.my-row{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:14px 18px;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.my-row:hover{transform:translateY(-2px);border-color:var(--teal);background:var(--card-hover);box-shadow:0 12px 28px -18px rgba(0,0,0,.4);}
.my-row-icon{
  width:48px;height:48px;flex-shrink:0;border-radius:14px;
  display:flex;align-items:center;justify-content:center;font-size:1.35rem;
  background:linear-gradient(160deg, rgba(21,155,138,.16), rgba(245,166,35,.14));
  border:1px solid var(--line);
}
.my-row-main{flex:1;min-width:200px;display:flex;flex-direction:column;gap:4px;}
.my-row-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.my-row-top h3{margin:0;font-size:1rem;font-family:'Inter',sans-serif;font-weight:700;letter-spacing:0;}
.my-row-meta{font-size:.83rem;color:var(--ink-soft);display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.my-row-price{font-weight:700;color:var(--gold-dark);}
.dot-sep{opacity:.6;}
.my-row-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto;}
.btn-sm{padding:9px 16px;font-size:.84rem;}
.my-empty{padding:44px 20px;}

/* Status pill */
.status-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border-radius:999px;font-size:.74rem;font-weight:700;white-space:nowrap;flex-shrink:0;letter-spacing:.2px;}
.status-active{background:rgba(46,204,113,.15);color:#2ecc71;}
.status-inactive{background:rgba(154,163,178,.18);color:var(--ink-soft);}
.status-pending{background:rgba(243,156,18,.15);color:#f39c12;}
.status-rejected{background:rgba(231,76,60,.15);color:#e74c3c;}

/* Round icon buttons (👁 view, ⋯ menu) — тот же приём, что у .like-btn на публичных карточках */
.icon-btn{
  width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:var(--overlay);border:1px solid var(--line);color:var(--text);
  font-size:1rem;line-height:1;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease;
}
.icon-btn:hover{transform:scale(1.08);border-color:var(--teal);color:var(--teal);text-decoration:none;background:rgba(21,155,138,.12);}

/* Card dropdown menu ("•••") */
.card-menu{position:relative;flex-shrink:0;}
.card-menu-list{display:none;position:absolute;right:0;bottom:calc(100% + 10px);min-width:210px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 34px rgba(0,0,0,.24);padding:6px;z-index:10;}
.card-menu.open .card-menu-list{display:block;}
.card-menu-item{display:block;width:100%;text-align:left;background:none;border:0;padding:10px 12px;font-size:.86rem;font-weight:600;color:var(--text);border-radius:8px;white-space:nowrap;}
.card-menu-item:hover{background:var(--overlay);}
.card-menu-item.danger{color:var(--danger);}
.card-menu-item.danger:hover{background:rgba(193,68,58,.12);}

/* Delete confirmation modal */
.confirm-modal-overlay{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(2px);}
.confirm-modal-overlay.show{display:flex;}
.confirm-modal-backdrop{position:absolute;inset:0;background:rgba(23,33,58,.55);}
.confirm-modal{position:relative;background:var(--surface);border-radius:16px;padding:28px;max-width:360px;width:100%;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.4);}
.confirm-modal-icon{
  width:52px;height:52px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;background:rgba(193,68,58,.14);
}
.confirm-modal h3{margin-bottom:8px;}
.confirm-modal p{margin-bottom:22px;}
.confirm-modal-actions{display:flex;gap:10px;justify-content:center;}
.confirm-modal-actions .btn{padding:10px 20px;flex:1;}

/* Map / region picker */
/* ---------- Страница выбора города/novads ---------- */
.geo-page{max-width:920px;}
.geo-section{margin-top:36px;}
.geo-section-head{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line);}
.geo-section-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--overlay);font-size:.92rem;flex-shrink:0;}
.geo-section-label{margin:0;font-size:.82rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.6px;font-weight:800;}

.region-list{columns:2;gap:24px;}
@media(max-width:600px){.region-list{columns:1;}}
.region-item{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 12px;border-radius:8px;border-bottom:1px dashed var(--line);
  font-weight:600;color:var(--text);break-inside:avoid;
  min-width:0;
  transition:background-color .15s ease,color .15s ease;
}
.region-item:hover,.region-item:focus-visible{background:var(--overlay);color:var(--teal);text-decoration:none;}
.region-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.region-item-meta{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.geo-count{font-size:.78rem;font-weight:600;color:var(--ink-soft);white-space:nowrap;}
.region-item-arrow{color:var(--teal);font-weight:700;opacity:0;transform:translateX(-4px);transition:opacity .15s ease,transform .15s ease;}
.region-item:hover .region-item-arrow,.region-item:focus-visible .region-item-arrow{opacity:1;transform:translateX(0);}

.letter-columns{display:grid;grid-template-columns:repeat(5,1fr);gap:0 28px;align-items:start;}
.letter-col{display:flex;flex-direction:column;min-width:0;}
@media(max-width:1000px){.letter-columns{grid-template-columns:repeat(3,1fr);}}
@media(max-width:700px){.letter-columns{grid-template-columns:repeat(2,1fr);}}
@media(max-width:460px){.letter-columns{grid-template-columns:1fr;}}
.letter-group{display:flex;gap:10px;margin-bottom:16px;min-width:0;}.letter-badge{flex-shrink:0;width:14px;color:var(--teal);font-weight:800;font-size:.82rem;line-height:1.6;}
.letter-items{display:flex;flex-direction:column;gap:2px;min-width:0;}
.region-item--compact{flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;border-bottom:0;font-weight:500;font-size:.92rem;}
.region-item--compact .region-item-name{white-space:normal;overflow:visible;text-overflow:clip;}
.region-item--compact .region-item-meta{align-self:flex-start;}
.region-item--compact .geo-count{font-size:.74rem;}
/* «Visa Rīga (skatīt visus)» — выделенная кнопка-карточка */
.region-item--all{
  gap:14px;padding:14px 16px;margin-bottom:18px;border-radius:14px;
  color:var(--text);font-weight:700;
  background:color-mix(in srgb, var(--teal) 10%, transparent);
  border:1px solid color-mix(in srgb, var(--teal) 40%, transparent);
}
.region-item--all:hover,.region-item--all:focus-visible{
  background:color-mix(in srgb, var(--teal) 16%, transparent);
  border-color:var(--teal);color:var(--text);
}
.region-all-ico{
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  width:42px;height:42px;border-radius:50%;background:var(--teal);color:var(--white);
}
.region-all-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1;}
.region-all-text strong{font-size:1.05rem;font-weight:800;line-height:1.2;}
.region-all-text small{font-size:.82rem;font-weight:600;color:var(--ink-soft);}
.region-item--all .region-item-arrow{opacity:1;transform:none;color:var(--teal);font-size:1.1rem;}
.region-item--all:hover .region-item-arrow{transform:translateX(3px);}

/* Toast */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#fff;padding:12px 22px;border-radius:8px;font-size:.9rem;font-weight:600;opacity:0;pointer-events:none;transition:all .25s ease;z-index:200;}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

/* Footer */
/* Footer — светлая тема: светлый (surface) с тонкой рамкой сверху;
   тёмная тема: чуть темнее фона страницы */
.site-footer{background:var(--surface);color:var(--ink-soft);border-top:1px solid var(--line);padding:36px 0 24px;margin-top:40px;font-size:.88rem;}
[data-theme="dark"] .site-footer{background:#0A0D12;}
.footer-cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;text-align:left;}
.footer-col{display:flex;flex-direction:column;align-items:flex-start;min-width:0;}
.footer-brand{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:1.5rem;color:var(--text);letter-spacing:.02em;margin-bottom:4px;}
.footer-col p{margin:0;color:var(--ink-soft);}
.footer-col h4{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);}
/* Каждая ссылка — отдельная строка с тонким разделителем */
.footer-col a{display:block;width:100%;padding:9px 0;color:var(--text);text-decoration:none;border-bottom:1px solid var(--line);transition:color .15s,padding-left .15s;}
.footer-col a:last-child{border-bottom:0;}
.footer-col a:hover{color:var(--teal);padding-left:4px;text-decoration:none;}
[data-theme="dark"] .footer-col a{color:#C7CCDA;}
[data-theme="dark"] .footer-col a:hover{color:var(--teal);}
.footer-bottom{margin-top:24px;padding-top:16px;border-top:1px solid var(--line);text-align:center;color:var(--ink-soft);font-size:.8rem;}
@media (max-width:720px){
  .footer-cols{grid-template-columns:1fr;gap:24px;}
}

/* Empty state */
.empty-state{text-align:center;padding:60px 20px;color:var(--ink-soft);}
.empty-state .big{font-size:2.4rem;margin-bottom:10px;}

/* Picker overlay (город/спорт — открывается поверх текущей страницы) */
.picker-overlay{position:fixed;inset:0;z-index:45;display:none;}
.picker-overlay.show{display:block;}
.picker-backdrop{position:absolute;inset:0;background:rgba(23,33,58,.45);}
.picker-panel{position:relative;background:var(--paper);max-height:55vh;overflow-y:auto;box-shadow:0 16px 40px rgba(0,0,0,.28);padding:24px 0 32px;border-bottom-left-radius:16px;border-bottom-right-radius:16px;}
.picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1160px;margin:0 auto 18px;padding:0 20px;}
.picker-head h3{margin:0;}
.picker-close{background:none;border:0;font-size:1.3rem;color:var(--ink-soft);cursor:pointer;line-height:1;padding:4px;}
.picker-sport-item{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:14px;font-weight:700;cursor:pointer;text-align:center;}
.picker-sport-item:hover{border-color:var(--teal);color:var(--teal);}

/* Photo upload in listing form — см. блок «Форма объявления, шаг 3» в конце файла */

/* Search page grid spacing already covered by .grid-3 */

/* ---------- Latvia map section (главная) ---------- */
.map-section{padding:36px 0 44px;}
.map-wrap{position:relative;max-width:620px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;}
.map-svg-wrap{position:relative;width:100%;}
.map-svg-wrap svg{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 10px rgba(23,34,63,.22));}
.region-shape{
  fill:var(--map-region);
  cursor:pointer;
  transition:fill .15s ease,filter .15s ease,opacity .15s ease;
}
.region-shape:hover,.region-shape:focus,.region-shape.is-hover{fill:var(--teal);filter:brightness(1.05);outline:none;}
.map-hint{text-align:center;color:var(--ink-soft);font-size:.85rem;margin-top:14px;}
.map-tooltip{
  position:absolute;left:0;top:0;z-index:20;
  transform:translate(-50%,calc(-100% - 12px));
  background:var(--ink);color:#fff;
  padding:6px 12px;border-radius:8px;
  font-size:.82rem;font-weight:600;white-space:nowrap;
  pointer-events:none;opacity:0;
  transition:opacity .12s ease;
}
.map-tooltip.show{opacity:1;}
.map-tooltip .map-tooltip-count{font-weight:500;opacity:.8;}
@media(max-width:560px){
  .map-wrap{padding:12px;}
}

/* ================= Listing detail page (premium redesign) ================= */
.ld-page{
  --ld-bg:var(--paper); --ld-bg-elevated:var(--surface); --ld-text:var(--text); --ld-text-soft:var(--ink-soft);
  --ld-accent:var(--teal); --ld-line:var(--line); --ld-danger:var(--danger);
  background:var(--ld-bg); color:var(--ld-text);
  width:100vw; position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw;
  padding:28px 0 64px;
}
.ld-container{max-width:760px;margin:0 auto;padding:0 20px;}
.ld-top{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.ld-back{color:var(--ld-text-soft);font-weight:600;font-size:.9rem;}
.ld-back:hover{color:var(--ld-text);text-decoration:none;}

/* Большое фото-«хиро» на всю ширину центрированной колонки — так же,
   как на референсе: один широкий кадр сверху, а не колонка рядом с текстом. */
.ld-hero{margin-bottom:26px;}
.ld-hero .ld-gallery-main{border-radius:22px;overflow:hidden;background:var(--ld-bg-elevated);aspect-ratio:16/9;background-size:cover;background-position:center;cursor:pointer;}
.ld-gallery-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--ld-text-soft);height:100%;width:100%;}
.ld-gallery-placeholder .icon{font-size:3rem;}
.ld-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding-bottom:2px;}
.ld-thumb{width:72px;height:72px;border-radius:12px;flex-shrink:0;background-size:cover;background-position:center;cursor:pointer;opacity:.55;border:2px solid transparent;transition:opacity .15s,border-color .15s;}
.ld-thumb.active{opacity:1;border-color:var(--ld-accent);}

/* Всё остальное — заголовок, цена, статус, мета, кнопки — одной
   центрированной колонкой под фото, а не рядом с ней. */
.ld-summary{display:flex;flex-direction:column;gap:14px;}
.ld-summary-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.ld-title{color:var(--ld-text);font-size:1.7rem;margin:0;}
.ld-status-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.ld-status-pill{font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:4px;}
.ld-status-active{background:rgba(52,199,89,.15);color:#34C759;}
.ld-published{font-size:.82rem;color:var(--ld-text-soft);}
.ld-rating-line{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--ld-text-soft);}
.ld-rating-line .stars{color:var(--ld-text);font-weight:800;}
.ld-rating-line .sep{opacity:.5;}
.ld-views-line{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--ld-text-soft);font-weight:600;}
.ld-views-line .cicon{color:var(--ld-text-soft);flex-shrink:0;}

.ld-sport-pill{display:inline-flex;align-items:center;gap:6px;background:var(--overlay);padding:7px 13px;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--ld-text);}
.ld-price{font-size:1.5rem;font-weight:800;color:var(--ld-accent);white-space:nowrap;}
.ld-price span{font-size:.8rem;font-weight:600;color:var(--ld-text-soft);}

.ld-meta{display:flex;flex-direction:row;flex-wrap:wrap;column-gap:22px;row-gap:10px;padding:16px 0;border-top:1px solid var(--ld-line);border-bottom:1px solid var(--ld-line);}
.ld-meta-row{display:flex;align-items:flex-start;gap:10px;font-size:.95rem;color:var(--ld-text);}
.ld-meta-row .ico{flex-shrink:0;width:20px;text-align:center;}
.ld-meta-row a{color:var(--ld-text);text-decoration:underline;text-decoration-color:var(--ink-soft);text-underline-offset:2px;}
.ld-meta-row a:hover{color:var(--ld-accent);}

.ld-cta{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;margin-top:4px;}
/* Адрес: «таблетка» с иконкой-пином и стрелкой — ведёт на Google Maps */
.ld-address-chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:8px 16px 8px 8px;border:1px solid var(--ld-line);border-radius:999px;background:var(--ld-bg-elevated);color:var(--ld-text);font-size:1rem;font-weight:600;text-decoration:none;transition:border-color .15s ease,background-color .15s ease,transform .1s ease;}
.ld-address-ico{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:color-mix(in srgb, var(--ld-accent) 16%, transparent);color:var(--ld-accent);flex-shrink:0;}
.ld-address-text{min-width:0;overflow-wrap:anywhere;}
.ld-address-go{color:var(--ld-text-soft);flex-shrink:0;transition:color .15s ease,transform .15s ease;}
.ld-address-chip:hover{border-color:var(--ld-accent);text-decoration:none;color:var(--ld-text);}
.ld-address-chip:hover .ld-address-go{color:var(--ld-accent);transform:translate(2px,-2px);}
.ld-address-chip:active{transform:scale(.99);}
/* Статичная «таблетка» (возраст, аудитория) — без hover-эффекта ссылки */
.ld-chip-static:hover{border-color:var(--ld-line);}
.ld-chip-static{cursor:default;}
/* Расписание: иконка + подпись + дни и время отдельными «чипами» */
.ld-schedule{display:flex;align-items:center;gap:14px;}
.ld-schedule-body{display:flex;flex-direction:column;gap:6px;min-width:0;}
.ld-schedule-label{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ld-text-soft);}
.ld-schedule-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.ld-day{display:inline-flex;align-items:center;justify-content:center;min-width:40px;padding:6px 12px;border-radius:999px;border:1px solid var(--ld-line);background:var(--ld-bg-elevated);color:var(--ld-text);font-size:.9rem;font-weight:700;}
.ld-time{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:color-mix(in srgb, var(--ld-accent) 16%, transparent);color:var(--ld-accent);font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums;}
/* Телефон тренера: иконка в круге + крупный номер (кликабельный, но без вида ссылки) */
.ld-phone-display{display:inline-flex;align-items:center;gap:14px;padding:12px 26px 12px 14px;border:1px solid var(--ld-line);border-radius:999px;background:var(--ld-bg-elevated);}
.ld-phone-ico{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:color-mix(in srgb, var(--ld-accent) 16%, transparent);color:var(--ld-accent);flex-shrink:0;}
.ld-phone-number{color:var(--ld-text);font-size:1.3rem;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;text-decoration:none;transition:color .15s ease;}
.ld-phone-number:hover{color:var(--ld-accent);text-decoration:none;}
/* Телефон (≤640px): возраст и номер телефона по центру экрана */
@media(max-width:640px){
  .ld-location-row{justify-content:center !important;}
  .ld-location-age{margin-left:0 !important;}
  .ld-phone-display{display:flex;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;}
}
.ld-cta-primary{flex:1;min-width:200px;background:var(--ld-accent);color:var(--white);border:0;border-radius:14px;padding:16px 20px;font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;}
.ld-cta-primary:hover{filter:brightness(1.06);text-decoration:none;}
.ld-cta-secondary{flex:1;min-width:160px;background:transparent;border:1.5px solid var(--line);color:var(--ld-text);border-radius:14px;padding:14px 20px;font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;}
.ld-cta-secondary:hover{border-color:var(--ink-soft);text-decoration:none;}
.ld-cta-secondary.active{border-color:var(--ld-accent);color:var(--ld-accent);}

.ld-owner-actions{display:flex;gap:10px;margin-top:4px;}
.ld-edit-btn{flex:1;background:var(--overlay);color:var(--ld-text);border:0;border-radius:14px;padding:14px 18px;font-weight:700;text-align:center;text-decoration:none;}
.ld-edit-btn:hover{background:var(--overlay-strong);text-decoration:none;}
.ld-menu-wrap{position:relative;}
.ld-menu-btn{background:var(--overlay);color:var(--ld-text);border:0;border-radius:14px;width:52px;height:52px;font-size:1.3rem;font-weight:800;cursor:pointer;letter-spacing:1px;}
.ld-menu-btn:hover{background:var(--overlay-strong);}
.ld-menu{position:absolute;right:0;top:58px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px;min-width:200px;box-shadow:0 12px 30px rgba(0,0,0,.45);z-index:20;display:none;}
.ld-menu.show{display:block;}
.ld-menu button{display:block;width:100%;text-align:left;background:none;border:0;color:var(--ld-text);padding:10px 12px;border-radius:8px;font-size:.9rem;cursor:pointer;}
.ld-menu button:hover{background:var(--overlay);}
.ld-menu button.danger{color:var(--ld-danger);}

.ld-section{margin-top:44px;}
.ld-section h2{font-family:'Inter',system-ui,sans-serif;font-weight:700;letter-spacing:-.005em;line-height:1.3;font-size:1.15rem;margin:0 0 14px;color:var(--ld-text);}
.ld-description{color:var(--ld-text-soft);line-height:1.75;white-space:pre-wrap;}

.ld-reviews-summary{display:flex;align-items:center;gap:6px;margin-bottom:16px;color:var(--ld-text-soft);font-size:.9rem;}
.ld-reviews-summary .score{color:var(--ld-text);font-weight:800;font-size:1.05rem;}
.ld-review-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;}
.ld-review-row:last-child{margin-bottom:0;}
.ld-review-avatar{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem;}
.ld-review{position:relative;flex:1;min-width:0;background:var(--ld-bg-elevated);border:1px solid var(--ld-line);border-radius:4px 16px 16px 16px;padding:12px 16px;}
.ld-review::before{content:'';position:absolute;top:0;left:-7px;width:0;height:0;border-style:solid;border-width:0 8px 8px 0;border-color:transparent var(--ld-bg-elevated) transparent transparent;}
.ld-review-top{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.ld-review-name{font-weight:700;color:var(--ld-text);}
.ld-review-stars{color:var(--ld-accent);font-size:.8rem;letter-spacing:1px;margin-top:2px;}
.ld-review-text{color:var(--ld-text-soft);margin:6px 0 0;}
.ld-review-del{background:none;border:0;color:var(--ink-soft);cursor:pointer;font-size:.8rem;flex-shrink:0;}
.ld-review-del:hover{color:var(--ld-danger);}
.ld-review-votes{display:flex;gap:8px;margin-top:10px;}
.ld-vote-btn{display:inline-flex;align-items:center;gap:5px;background:var(--overlay);border:1px solid transparent;color:var(--ld-text-soft);border-radius:999px;padding:5px 11px;font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease;}
.ld-vote-btn:hover{color:var(--ld-text);}
.ld-vote-btn.is-active{color:var(--teal);border-color:var(--teal);}
.ld-vote-btn.ld-vote-down.is-active{color:var(--danger);border-color:var(--danger);}
.ld-review-form{margin-top:22px;}
.ld-star-input{display:flex;gap:4px;margin-bottom:10px;font-size:1.5rem;cursor:pointer;width:max-content;}
.ld-star-input span{filter:grayscale(1) opacity(.35);transition:filter .1s;}
.ld-star-input span.active{filter:none;}
.ld-review-form textarea{width:100%;background:var(--overlay);border:1px solid var(--line);border-radius:12px;padding:12px 14px;color:var(--ld-text);font-family:inherit;min-height:84px;resize:vertical;}
.ld-review-form textarea::placeholder{color:var(--ld-text-soft);}
.ld-review-form button{margin-top:12px;}
.ld-login-hint{color:var(--ld-text-soft);font-size:.9rem;}
.ld-login-hint a{color:var(--ld-accent);}

.ld-similar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;}
.ld-similar-card{display:block;background:var(--overlay);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ld-text);transition:background .15s;}
.ld-similar-card:hover{background:var(--overlay-strong);text-decoration:none;}
.ld-similar-thumb{height:96px;background:var(--ld-bg-elevated);display:flex;align-items:center;justify-content:center;font-size:1.7rem;background-size:cover;background-position:center;}
.ld-similar-body{padding:10px 12px;}
.ld-similar-title{font-weight:700;font-size:.87rem;margin-bottom:2px;}
.ld-similar-price{color:var(--ld-accent);font-weight:700;font-size:.82rem;}

.ld-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:300;padding:24px;}
.ld-lightbox.show{display:flex;}
.ld-lightbox img{max-width:100%;max-height:85vh;border-radius:12px;}
.ld-lightbox-close{position:absolute;top:18px;right:22px;background:rgba(255,255,255,.1);border:0;color:#fff;width:40px;height:40px;border-radius:50%;font-size:1.2rem;cursor:pointer;}
.ld-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.1);border:0;color:#fff;width:48px;height:48px;border-radius:50%;font-size:1.4rem;cursor:pointer;}
.ld-lightbox-prev{left:16px;}
.ld-lightbox-next{right:16px;}

@media(max-width:560px){
  .ld-page{padding:20px 0 48px;}
  .ld-title{font-size:1.4rem;}
  .ld-hero .ld-gallery-main{aspect-ratio:4/3;}
  .ld-section{margin-top:34px;}
}


/* ================= Header fix: logo, burger, mobile menu ================= */

/* Логотип: одна версия на тему (logo-dark = белый текст для тёмной темы) */
.logo{display:flex;align-items:center;line-height:0;flex-shrink:0;}
.logo img{height:25.6px;width:auto;display:block;}
.logo .logo-dark{display:none;}
[data-theme="dark"] .logo .logo-dark{display:block;}
[data-theme="dark"] .logo .logo-light{display:none;}

/* Ссылка «Sākums» справа от логотипа — только десктоп (на телефоне она есть в бургер-меню) */
.nav-home-link{display:none;}
@media(min-width:901px){
  /* Шапка на всю ширину окна — логотип уезжает к левому краю */
  .site-header .bar{max-width:none;padding:12px 32px;}
  .nav-home-link{
    display:inline-flex;align-items:center;flex-shrink:0;
    color:var(--text);font-size:.92rem;font-weight:600;
    padding:8px 14px;border-radius:6px;margin-left:4px;
    transition:background-color .15s ease,color .15s ease;
  }
  .nav-home-link:hover{background:var(--overlay);text-decoration:none;}
  .nav-home-link.active{background:var(--teal);color:var(--white);}
}

/* На десктопе бургер и мобильная панель скрыты */
.mobile-menu-btn{
  display:none;margin-left:auto;flex-shrink:0;width:44px;height:44px;padding:0;
  border-radius:10px;background:var(--overlay);border:1px solid var(--line);
  -webkit-appearance:none;appearance:none;cursor:pointer;
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.mobile-menu-btn span{display:block;width:20px;height:2px;background:var(--text);border-radius:2px;transition:transform .2s ease,opacity .2s ease;}
.mobile-menu-open .mobile-menu-btn span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.mobile-menu-open .mobile-menu-btn span:nth-child(2){opacity:0;}
.mobile-menu-open .mobile-menu-btn span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu-panel{display:none;}
body.mobile-menu-locked{overflow:hidden;}

@media(max-width:900px){
  .site-header .bar{flex-wrap:nowrap;padding:10px 16px;}
  .site-header .bar > .nav-links{display:none;}
  .logo img{height:21.6px;}
  .mobile-menu-btn{display:flex;}

  .mobile-menu-panel{
    position:fixed;left:0;right:0;bottom:0;z-index:49;
    background:var(--paper);border-top:1px solid var(--line);
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    padding:12px 16px calc(24px + env(safe-area-inset-bottom,0px));
    flex-direction:column;
  }
  .mobile-menu-open .mobile-menu-panel{display:flex;}
  .mobile-menu-nav{display:flex;flex-direction:column;gap:4px;}
  .mobile-menu-nav a,
  .mobile-menu-nav button.linklike{
    display:block;width:100%;text-align:left;box-sizing:border-box;
    padding:14px 12px;font-size:1.05rem;font-weight:700;color:var(--text);
    background:none;border:0;border-radius:10px;text-decoration:none;
  }
  .mobile-menu-nav a:hover,.mobile-menu-nav button.linklike:hover{background:var(--overlay);text-decoration:none;}
  .mobile-menu-nav a.active{background:var(--teal);color:var(--white);}
  .mobile-menu-foot{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin-top:16px;padding-top:16px;border-top:1px solid var(--line);
  }
}


/* ================= Mobile only (≤640px): отступы, центрирование, размеры ================= */
@media(max-width:640px){
  /* Причина обрезания: .section{padding:48px 0} перебивал боковые отступы .container */
  .section.container,
  .map-section.container,
  .how-section.container{padding-left:16px;padding-right:16px;}

  /* Заголовок каталога ("Treniņi un pulciņi" + подзаголовок) по центру */
  .listings-head{text-align:center;}
  .listings-title,.listings-subtitle{text-align:center;}

  /* "Populārākie sporta veidi" + кнопка "Visi sludinājumi" по центру */
  #popular-sports-wrap .section-head{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;}
  #popular-sports-wrap .section-head h2{margin:0;}

  /* Карточки видов спорта — горизонтальные и вдвое ниже (только телефон):
     слева иконка, справа название + счётчик в одной строке, ниже описание в 2 строки */
  .sport-card{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    grid-template-areas:"icon title count" "icon desc desc";
    column-gap:12px;row-gap:3px;
    align-items:center;text-align:left;
    height:auto;padding:14px;
  }
  .sport-card-icon{grid-area:icon;width:48px;height:48px;font-size:1.4rem;margin:0;align-self:center;}
  .sport-card-title{grid-area:title;font-size:1rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .sport-card-count{grid-area:count;margin:0;font-size:.72rem;padding:3px 10px;white-space:nowrap;}
  .sport-card-desc{grid-area:desc;min-height:0;margin:0;font-size:.82rem;line-height:1.35;-webkit-line-clamp:2;}

  /* Карта Латвии полностью в экране */
  .map-wrap{max-width:100%;box-sizing:border-box;padding:10px;}
}


/* ================= Skeleton (мгновенная заглушка вместо «Загрузка…») ================= */
.sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:20px;}
.sk-card{border-radius:var(--radius,14px);background:var(--surface);border:1px solid var(--line);overflow:hidden;}
.sk-thumb{height:150px;}
.sk-line{height:12px;margin:14px 16px 0;border-radius:6px;}
.sk-line.short{width:55%;margin-bottom:16px;}
.sk-title{height:26px;width:min(320px,70%);border-radius:8px;}
.sk-thumb,.sk-line,.sk-title{background:linear-gradient(90deg,rgba(128,128,128,.10) 25%,rgba(128,128,128,.22) 37%,rgba(128,128,128,.10) 63%);background-size:400% 100%;animation:skShimmer 1.2s ease infinite;}
@keyframes skShimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}
@media (prefers-reduced-motion:reduce){.sk-thumb,.sk-line,.sk-title{animation:none;}}


/* ================= Тач-экраны: отклик на нажатие без «залипшего» hover ================= */
/* На iPhone первое касание элемента с :hover иногда лишь «наводит» курсор и не
   запускает клик — кнопка кажется нерабочей (подсвечивается и ничего не происходит).
   На устройствах без наведения hover-подсветку отключаем, вместо неё :active. */
a,button,[data-action],[data-nav]{touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
@media (hover:none){
  .mobile-menu-nav a:hover,.mobile-menu-nav button.linklike:hover{background:none;}
  .mobile-menu-nav a.active:hover{background:var(--teal);}
  .mobile-menu-nav a:active,.mobile-menu-nav button.linklike:active{background:var(--overlay);}
  .mobile-menu-nav a.active:active{background:var(--teal);}
  .nav-links a:hover,.nav-links button.linklike:hover{background:none;}
  .card-link:hover .card{transform:none;box-shadow:none;border-color:var(--line);background:var(--surface);}
  .card-link:active .card{border-color:var(--teal);}
  .btn:hover{filter:none;}
}


/* ================= Страница объявления: блок «Par treniņiem» ================= */
/* Описание — карточка в стиле остальных «таблеток» страницы: тот же фон и рамка,
   акцентная полоса слева и круглая иконка (как у блока «Kad notiek»). */
.ld-section.ld-about{
  position:relative;overflow:hidden;
  margin-top:36px;padding:24px 28px 26px 32px;
  background:var(--ld-bg-elevated);
  border:1px solid var(--ld-line);border-radius:22px;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.ld-about::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--ld-accent);}
.ld-about-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.ld-about-icon{
  width:42px;height:42px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--ld-accent);
  background:rgba(21,155,138,.14);
  background:color-mix(in srgb,var(--ld-accent) 16%,transparent);
}
.ld-section.ld-about .ld-about-head h2{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.01em;}
.ld-section.ld-about .ld-description{margin:0;color:var(--ld-text);opacity:.92;font-size:1.06rem;line-height:1.75;}
@media(max-width:640px){
  .ld-section.ld-about{margin-top:28px;padding:18px 18px 20px 22px;border-radius:18px;}
  .ld-about-icon{width:38px;height:38px;}
  .ld-section.ld-about .ld-about-head h2{font-size:1.2rem;}
  .ld-section.ld-about .ld-description{font-size:1rem;line-height:1.7;}
}


/* ================= Страница объявления: две колонки ================= */
/* Телефон и планшет: одна колонка — заголовок, фото, карточка, описание, отзывы.
   Компьютер (≥1024px): слева заголовок, фото, описание, отзывы; справа «липкая»
   карточка с ценой, расписанием, адресом и контактами. */
/* Шапка сайта прокручивается вместе со страницей, как и раньше
   (до правки overflow её sticky фактически не срабатывал). */
.site-header{position:relative;}

.ld-container.ld-container--wide{max-width:1160px;}
.ld-layout{display:flex;flex-direction:column;gap:22px;}
.ld-layout .ld-hero{margin-bottom:0;}

.ld-head{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;}
.ld-head .ld-title{font-size:2rem;line-height:1.15;overflow-wrap:anywhere;}
.ld-head-place{display:flex;align-items:center;gap:6px;color:var(--ld-text-soft);font-weight:600;font-size:.95rem;}
.ld-head-place .cicon{color:var(--ld-accent);flex-shrink:0;}
.ld-head-stats{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;}
.ld-head-stats:empty{display:none;}

.ld-side-card{
  background:var(--ld-bg-elevated);border:1px solid var(--ld-line);border-radius:22px;
  padding:22px;display:flex;flex-direction:column;gap:18px;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.ld-side-price{font-size:2rem;font-weight:800;color:var(--ld-accent);line-height:1.1;font-variant-numeric:tabular-nums;}
.ld-side-price span{font-size:.9rem;font-weight:600;color:var(--ld-text-soft);}
.ld-side-price.ld-side-price--none{font-size:1rem;font-weight:600;color:var(--ld-text-soft);}
.ld-side-rows{display:flex;flex-direction:column;gap:14px;padding-top:18px;border-top:1px solid var(--ld-line);}
.ld-side-row{display:flex;align-items:center;gap:12px;color:var(--ld-text);font-weight:600;font-size:.98rem;text-decoration:none;min-width:0;}
.ld-side-row.ld-side-row--top{align-items:flex-start;}
.ld-side-row .ld-schedule-chips .ld-day{min-width:36px;padding:5px 10px;font-size:.85rem;}
.ld-side-row .ld-schedule-chips .ld-time{padding:5px 12px;font-size:.85rem;}
.ld-side-text{flex:1;min-width:0;overflow-wrap:anywhere;}
a.ld-side-row:hover{color:var(--ld-accent);text-decoration:none;}
.ld-side-link .ld-address-go{flex-shrink:0;color:var(--ld-text-soft);transition:color .15s ease,transform .15s ease;}
.ld-side-link:hover .ld-address-go{color:var(--ld-accent);transform:translate(2px,-2px);}

.ld-side-card .ld-cta,.ld-side-card .ld-owner-actions{margin:0;}
.ld-side-card .ld-cta:empty{display:none;}
.ld-side-card .ld-phone-display{display:flex;width:100%;max-width:100%;margin:0;padding:10px 16px 10px 10px;box-sizing:border-box;}
.ld-side-card .ld-phone-number{font-size:1.15rem;}
.ld-side-card .ld-cta-secondary{flex:none;width:100%;min-width:0;box-sizing:border-box;}

.ld-body{min-width:0;}
.ld-body > .ld-section:first-child{margin-top:0;}

@media(min-width:1024px){
  .ld-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    grid-template-areas:"head side" "hero side" "body side";
    grid-template-rows:auto auto 1fr;
    column-gap:40px;row-gap:22px;
  }
  .ld-head{grid-area:head;}
  .ld-layout .ld-hero{grid-area:hero;}
  .ld-body{grid-area:body;margin-top:14px;}
  .ld-side{grid-area:side;align-self:start;position:sticky;top:24px;}
}

@media(max-width:560px){
  .ld-head .ld-title{font-size:1.5rem;}
  .ld-side-card{padding:18px;border-radius:18px;gap:16px;}
  .ld-side-price{font-size:1.7rem;}
  .ld-layout{gap:18px;}
}

/* ================= Вход / регистрация / сброс пароля ================= */
.auth-card h2{margin-bottom:6px;}
.auth-subtitle{margin:0 0 22px;color:var(--ink-soft);font-size:.95rem;line-height:1.5;}
.auth-card .btn-google{margin-bottom:0;}
.auth-card .auth-divider{margin:20px 0;}

/* «Aizmirsi paroli?» — справа над полем пароля */
.label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px;}
.label-row label{margin-bottom:0;}
.label-link{font-size:.85rem;font-weight:600;color:var(--teal);white-space:nowrap;}

/* Поле пароля с кнопкой «показать» */
.pw-wrap{position:relative;}
.field-row .pw-wrap input{padding-right:48px;}
.pw-toggle{
  position:absolute;top:50%;right:4px;transform:translateY(-50%);
  width:40px;height:40px;display:flex;align-items:center;justify-content:center;
  background:none;border:0;border-radius:8px;color:var(--ink-soft);cursor:pointer;
}
.pw-toggle:hover{color:var(--text);background:var(--overlay);}
.pw-toggle:focus-visible{outline:2px solid var(--teal);outline-offset:-2px;}

.field-row input::placeholder{color:var(--ink-soft);opacity:.7;}

/* Ошибка у конкретного поля */
.field-row input.is-invalid{border-color:var(--danger);}
.field-row input.is-invalid:focus{outline-color:var(--danger);}
.field-error{margin-top:6px;color:var(--danger);font-size:.85rem;font-weight:500;}
.auth-card .error-text{margin:0 0 12px;}

/* Кнопка во время запроса */
.btn.is-busy,.btn:disabled{opacity:.7;cursor:progress;}

/* iPhone приближает страницу, если шрифт в поле меньше 16px — на тач-экранах делаем 16px */
@media (hover:none),(max-width:900px){
  .field-row input,.field-row select,.field-row textarea{font-size:16px;}
}
.auth-card .auth-consent{margin:14px 0 0;font-size:.82rem;line-height:1.5;color:var(--ink-soft);text-align:center;}

/* ================= Каталог: фильтры, выбранные фильтры, карточки, призыв для тренеров ================= */
/* Группа: Visiem / Bērniem / Pieaugušajiem */
.seg-filter{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--paper);flex-shrink:0;}
.seg-filter-btn{border:0;background:none;color:var(--ink-soft);font:inherit;font-size:.85rem;font-weight:700;padding:7px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease;}
.seg-filter-btn:hover{color:var(--text);}
.seg-filter-btn.active{background:var(--teal);color:var(--white);}

/* Второй ряд: цена (готовые варианты) и возраст (ввод) */
.filters-row--2{margin-top:10px;gap:10px 22px;}
.filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.filter-group-label{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--ink-soft);}
.filter-group-label .cicon{color:var(--teal);}
.preset-list{display:flex;flex-wrap:wrap;gap:6px;}
.preset-btn{border:1px solid var(--line);background:var(--paper);color:var(--text);font:inherit;font-size:.85rem;font-weight:600;padding:7px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:border-color .15s ease,color .15s ease,background .15s ease;}
.preset-btn:hover{border-color:var(--teal);}
.preset-btn.active{border-color:var(--teal);color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,transparent);}
.age-input{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:4px 12px 4px 14px;transition:border-color .15s ease;}
.age-input:focus-within{border-color:var(--teal);}
.filters .age-input input{width:64px;border:0;background:transparent;padding:4px 0;font-size:.9rem;font-weight:600;color:var(--text);}
.filters .age-input input:focus{outline:none;}
.age-input-suffix{font-size:.85rem;color:var(--ink-soft);font-weight:600;}

/* Выбранные фильтры */
.active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 14px;}
.active-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-size:.82rem;font-weight:600;padding:5px 10px 5px 12px;border-radius:999px;cursor:pointer;}
.active-chip span{color:var(--ink-soft);font-size:.75rem;}
.active-chip:hover{border-color:var(--danger);}
.active-chip:hover span{color:var(--danger);}
.active-clear{border:0;background:none;color:var(--teal);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;padding:5px 4px;}

/* Карточка: без пустой строки под коротким названием; район крупнее, улица мелко */
.card-title{min-height:0;}
.card-location{align-items:flex-start;white-space:normal;}
.card-location .cicon{margin-top:2px;}
.card-location-text{display:flex;flex-direction:column;min-width:0;}
.card-place{color:var(--text);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.card-street{font-size:.78rem;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.card-new-badge{position:absolute;top:10px;left:10px;z-index:1;padding:4px 10px;border-radius:999px;background:var(--teal);color:var(--white);font-size:.72rem;font-weight:800;letter-spacing:.02em;}

/* Пустая выдача и призыв для тренеров */
.empty-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:14px;}
.catalog-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:28px;padding:20px 22px;border:1.5px dashed var(--line);border-radius:var(--radius);}
.catalog-cta-title{font-weight:800;font-size:1.05rem;color:var(--text);}
.catalog-cta-text{margin-top:4px;font-size:.9rem;color:var(--ink-soft);}
.catalog-cta .btn{white-space:nowrap;}

@media(max-width:640px){
  /* В листе фильтров на телефоне — всё столбиком */
  .filters-sheet .seg-filter{display:flex;width:100%;box-sizing:border-box;}
  .filters-sheet .seg-filter-btn{flex:1;padding:10px 6px;}
  .filters-sheet .filters-row--2{flex-direction:column;align-items:stretch;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);}
  .filters-sheet .filter-group{flex-direction:column;align-items:flex-start;gap:8px;}
  .filters .age-input input{font-size:16px;}
  .catalog-cta{flex-direction:column;align-items:stretch;text-align:center;}
}

/* ================= Главная: отступы, карта, популярные запросы, блок для тренеров ================= */
/* Меньше пустоты между секциями главной */
.section.home-section{padding-top:32px;padding-bottom:32px;}
.map-section.home-section{padding-top:28px;padding-bottom:32px;}

/* Карта: чуть компактнее, с подписями регионов и числом объявлений */
.map-wrap{max-width:560px;}
.map-labels{position:absolute;inset:0;pointer-events:none;}
.map-label{
  position:absolute;transform:translate(-50%,-50%);
  display:flex;flex-direction:column;align-items:center;gap:1px;
  padding:4px 9px;border-radius:10px;
  background:color-mix(in srgb,var(--paper) 78%,transparent);
  color:var(--text);line-height:1.15;text-align:center;white-space:nowrap;
}
.map-label b{font-size:.82rem;font-weight:800;}
.map-label small{font-size:.7rem;font-weight:600;color:var(--teal);}
.map-label small:empty{display:none;}
@media(max-width:560px){
  .map-label{padding:2px 6px;}
  .map-label b{font-size:.7rem;}
  .map-label small{font-size:.62rem;}
}

/* Populāri meklējumi */
.search-links{display:flex;flex-wrap:wrap;gap:8px;}
.search-link{
  display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;
  border:1px solid var(--line);background:var(--surface);color:var(--text);
  font-size:.88rem;font-weight:600;text-decoration:none;
  transition:border-color .15s ease,color .15s ease;
}
.search-link:hover{border-color:var(--teal);color:var(--teal);text-decoration:none;}

/* Блок «Vai esi treneris?»: иконка вместо эмодзи, без размытого пятна в углу */
.trainer-cta::before{display:none;}
.trainer-cta .icon{
  width:64px;height:64px;margin:0 auto 14px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--teal);background:color-mix(in srgb,var(--teal) 15%,transparent);
}
.trainer-cta{padding:36px 28px;}

/* ================= Par mums ================= */
.about-icon{
  width:52px;height:52px;margin:0 auto 14px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  color:var(--teal);background:color-mix(in srgb,var(--teal) 15%,transparent);
}
.about-intro{margin-bottom:28px;}
.about-audiences{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px;}
.about-audience{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px 24px 20px;}
.about-audience-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.about-audience-head .about-icon{width:42px;height:42px;margin:0;}
.about-audience h3{margin:0;font-size:1.05rem;}
.about-audience ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.about-audience li{display:flex;align-items:flex-start;gap:10px;color:var(--text);font-size:.95rem;line-height:1.45;}
.about-check{color:var(--teal);flex-shrink:0;margin-top:2px;display:flex;}

.how-step .about-icon{margin-bottom:12px;}
.how-num{color:var(--teal);}

.about-story{max-width:720px;text-align:center;}
.about-story p{color:var(--ink-soft);font-size:1.02rem;line-height:1.65;margin:0;}
.about-contact{text-align:center;padding-top:4px;}
.about-contact p{margin:0;color:var(--ink-soft);}
.about-contact a{color:var(--teal);font-weight:700;}
@media (max-width:760px){
  .about-audiences{grid-template-columns:1fr;}
}

/* ================= Biežāk uzdotie jautājumi ================= */
.faq-page{max-width:820px;}
.faq-head{text-align:center;margin-bottom:28px;}
.faq-head h2{margin-bottom:8px;}
.faq-head p{margin:0;color:var(--ink-soft);}
.faq-list{display:flex;flex-direction:column;gap:10px;}
.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:border-color .15s ease,background-color .15s ease;}
.faq-item:hover{border-color:color-mix(in srgb,var(--teal) 45%,var(--line));}
.faq-item[open]{border-color:var(--teal);}
.faq-item summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px 20px;font-weight:700;font-size:1rem;color:var(--text);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:14px;}
.faq-chevron{
  width:32px;height:32px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--teal);background:color-mix(in srgb,var(--teal) 14%,transparent);
  transition:transform .2s ease;
}
.faq-item[open] .faq-chevron{transform:rotate(180deg);}
.faq-answer{padding:0 20px 18px;}
.faq-answer p{margin:0;color:var(--ink-soft);line-height:1.65;}
.faq-answer p + p{margin-top:10px;}
.faq-item[open] summary{padding-bottom:10px;}

.faq-contact{
  display:flex;align-items:center;gap:16px;margin-top:28px;padding:20px 22px;
  border:1.5px dashed var(--line);border-radius:14px;
}
.faq-contact .about-icon{width:46px;height:46px;margin:0;}
.faq-contact-title{font-weight:800;color:var(--text);margin-bottom:2px;}
.faq-contact-text{color:var(--ink-soft);font-size:.95rem;}
.faq-contact a{color:var(--teal);font-weight:700;}
@media(max-width:560px){
  .faq-item summary{padding:16px;font-size:.95rem;}
  .faq-answer{padding:0 16px 16px;}
  .faq-contact{flex-direction:column;text-align:center;}
}

/* Sporta veida meklēšana sludinājuma formā */
.sport-pill-search{margin:0 0 10px;}
.sport-pill-empty{margin:10px 0 0;color:var(--ink-soft);font-size:.9rem;}

/* Sporta veida izvēle formā: 7 galvenie + «Vairāk» */
.sport-picker.collapsed .sport-pill-search{display:none;}
.sport-picker.collapsed .sport-pill:not([data-main]):not(.active):not(.sport-pill-more){display:none;}
.sport-pill-more{border-style:dashed;color:var(--teal);}
.sport-pill-more .sport-more-ico{display:flex;transition:transform .2s ease;}
.sport-pill-more[aria-expanded="true"] .sport-more-ico{transform:rotate(180deg);}
.sport-picker:not(.collapsed) .sport-pill-more{grid-column:1 / -1;flex-direction:row;justify-content:center;padding:10px 8px;}

/* Lapa «Izvēlies sporta veidu» */
.sport-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:8px;}
.sport-tile{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--text);font-weight:700;text-decoration:none;transition:border-color .15s ease,transform .15s ease;}
.sport-tile:hover{border-color:var(--teal);transform:translateY(-2px);text-decoration:none;}
.sport-tile-icon{width:42px;height:42px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;background:color-mix(in srgb,var(--teal) 12%,transparent);}
.sport-tile-name{min-width:0;}
@media(max-width:480px){.sport-tiles{grid-template-columns:1fr 1fr;}.sport-tile{padding:12px;gap:10px;font-size:.9rem;}.sport-tile-icon{width:36px;height:36px;font-size:1.1rem;}}


/* ---------- Форма объявления: шаги, расписание-группы, фото, телефон ---------- */
.wizard-head-progress{margin-bottom:24px;}
.wizard-head-progress .wizard-progress-track{height:6px;}
.wizard-head-progress .wizard-progress-fill{transition:width .35s ease;}
/* подписи шагов — каждая под своей третью полоски */
.wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px;}
.wizard-step-item{display:flex;align-items:center;gap:6px;background:none;border:0;padding:0;margin:0;font:inherit;font-size:.8rem;font-weight:700;color:var(--ink-soft);text-align:left;cursor:default;-webkit-appearance:none;appearance:none;}
.wizard-step-item:disabled{opacity:1;color:var(--ink-soft);}
.wizard-step-item.done{color:var(--teal);cursor:pointer;}
.wizard-step-item.done:hover span:last-child{text-decoration:underline;}
.wizard-step-item.active,.wizard-step-item.active:disabled{color:var(--text);}
.wsi-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1.5px solid currentColor;font-size:.7rem;flex-shrink:0;}
.wizard-step-item.active .wsi-num{background:var(--teal);border-color:var(--teal);color:#fff;}
.wizard-step-item.done .wsi-num{background:rgba(21,155,138,.14);}

.opt-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--overlay);color:var(--ink-soft);font-size:.72rem;font-weight:600;vertical-align:1px;}

/* группы расписания */
.sched-groups{display:flex;flex-direction:column;gap:12px;}
.sched-group{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--overlay);transition:border-color .15s ease;}
.sched-group.has-error{border-color:var(--danger);}
.sched-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
.sched-group-title{font-weight:800;font-size:.9rem;}
.sched-remove{background:none;border:0;padding:4px 0;color:var(--danger);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer;}
.sched-remove:hover{text-decoration:underline;}
.field-row .sched-name{margin-bottom:12px;}
.sched-sub{font-size:.76rem;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;}
.sched-group .days-picker{display:grid;grid-template-columns:repeat(7,minmax(0,42px));gap:8px;}
.sched-group .day-btn{width:100%;height:auto;aspect-ratio:1;padding:0;font-size:.82rem;cursor:pointer;}
.sched-presets{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px;}
.sched-preset{background:none;border:1px dashed var(--line);border-radius:999px;padding:5px 12px;color:var(--ink-soft);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;}
.sched-preset:hover{border-color:var(--teal);color:var(--teal);}
.time-range-row{display:flex;align-items:center;gap:10px;}
.time-range-row input{flex:1;min-width:0;}
.time-range-sep{flex-shrink:0;color:var(--ink-soft);font-weight:600;font-size:.9rem;}
.field-row .sched-from,.field-row .sched-to{min-height:44px;font-variant-numeric:tabular-nums;letter-spacing:.02em;}
.sched-summary{margin:12px 0 0;font-size:.84rem;color:var(--ink-soft);}
.sched-summary.is-set{color:var(--teal);font-weight:700;}
.sched-error{margin:6px 0 0;color:var(--danger);font-size:.84rem;font-weight:600;}
.sched-error[hidden]{display:none;}
.sched-add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:12px;border:1.5px dashed var(--line);border-radius:12px;background:none;color:var(--teal);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease;}
.sched-add:hover{border-color:var(--teal);background:rgba(21,155,138,.06);}
.sched-add[hidden]{display:none;}

/* фото */
.photo-zone{position:relative;}
.photo-empty,.field-row label.photo-empty{display:flex;margin:0;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:150px;padding:22px 16px;border:1.5px dashed var(--line);border-radius:14px;background:var(--overlay);color:var(--ink-soft);text-align:center;cursor:pointer;transition:border-color .15s ease,color .15s ease,background-color .15s ease;}
.photo-empty:hover,.dropzone.drag-over .photo-empty{border-color:var(--teal);color:var(--teal);background:rgba(21,155,138,.06);}
.photo-empty-ico{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:rgba(21,155,138,.12);color:var(--teal);margin-bottom:4px;}
.photo-empty-title{font-weight:800;font-size:.98rem;color:var(--text);}
.photo-empty-sub{font-size:.82rem;}
.photo-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.photo-thumb{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--overlay) center/cover no-repeat;border:1px solid var(--line);}
.photo-thumb-add,.field-row label.photo-thumb-add{display:flex;margin:0;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed var(--line);color:var(--ink-soft);font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color .15s ease,color .15s ease;}
.photo-thumb-add:hover{border-color:var(--teal);color:var(--teal);}
.photo-cover-badge,.photo-make-cover{position:absolute;left:6px;bottom:6px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:700;line-height:1.3;}
.photo-cover-badge{background:var(--teal);color:#fff;}
.photo-make-cover{background:rgba(15,19,24,.7);color:#fff;border:0;cursor:pointer;opacity:0;transition:opacity .15s ease;}
.photo-thumb:hover .photo-make-cover,.photo-make-cover:focus-visible{opacity:1;}
@media (hover:none){.photo-make-cover{opacity:1;}}
.photo-remove{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:0;background:rgba(15,19,24,.7);color:#fff;font-size:.78rem;line-height:1;cursor:pointer;}
.photo-remove:hover{background:rgba(15,19,24,.92);}
.photo-zone.is-busy{pointer-events:none;}
.photo-zone.is-busy::after{content:attr(data-busy-text);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:14px;background:color-mix(in srgb, var(--surface) 82%, transparent);font-weight:700;font-size:.9rem;color:var(--text);}
.tip-banner{transition:background-color .2s ease,border-color .2s ease;}
.tip-banner--ok{background:rgba(21,155,138,.1);border-color:rgba(21,155,138,.4);color:var(--teal);}

/* модерация и кнопки */
.moderation-note{display:flex;align-items:flex-start;gap:10px;margin:24px 0 0;padding:12px 14px;border-radius:10px;background:var(--overlay);color:var(--ink-soft);font-size:.84rem;line-height:1.45;}
.moderation-note svg{flex-shrink:0;color:var(--teal);margin-top:1px;}
#listingForm .moderation-note + .step-actions{margin-top:16px;}
@media (max-width:640px){
  .wizard-step-item{font-size:.74rem;}
  .sched-group{padding:12px;}
  .sched-group .days-picker{gap:5px;}
  /* кнопки шага всегда под рукой внизу экрана */
  #listingForm .step-actions{position:sticky;bottom:0;z-index:20;margin-left:-28px;margin-right:-28px;margin-bottom:-28px;padding:12px 28px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);}
}
@media (max-width:480px){
  #listingForm .step-actions{margin-left:-20px;margin-right:-20px;margin-bottom:-20px;padding-left:20px;padding-right:20px;}
}

/* экран «Paldies!» после публикации */
.created-card{text-align:center;}
.created-check{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:rgba(21,155,138,.14);color:var(--teal);margin:4px auto 14px;}
.created-title{margin:0 0 8px;}
.created-text{margin:0 auto 22px;max-width:440px;color:var(--ink-soft);}
.created-preview{max-width:320px;margin:0 auto 20px;text-align:left;}
.created-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;}
.created-actions .btn{flex:1;min-width:160px;text-align:center;}
.created-box{text-align:left;border:1px solid var(--line);border-radius:12px;padding:16px;margin-top:12px;}
.created-box h3{margin:0 0 4px;font-size:1rem;}
.created-box p{margin:0 0 12px;color:var(--ink-soft);font-size:.88rem;line-height:1.45;}
.created-share{display:flex;gap:8px;flex-wrap:wrap;}
.created-share .btn{flex:1;min-width:150px;text-align:center;}
.created-box--feedback{background:rgba(245,166,35,.08);border-color:rgba(245,166,35,.35);}

/* несколько групп на странице объявления */
.ld-sched-group + .ld-sched-group{margin-top:10px;padding-top:10px;border-top:1px dashed var(--ld-line);}
.ld-sched-name{display:block;font-weight:700;font-size:.88rem;margin-bottom:6px;color:var(--ld-text);}

/* ---------- Профиль: Mani sludinājumi / Saglabātie / Mans profils ---------- */
.uicon{display:block;flex-shrink:0;}
.my-row{align-items:flex-start;}
.my-row-thumb-link{flex-shrink:0;display:block;border-radius:12px;}
.my-row-thumb{width:84px;height:64px;border-radius:12px;background:var(--overlay) center/cover no-repeat;border:1px solid var(--line);}
.my-row-thumb--empty{display:flex;align-items:center;justify-content:center;font-size:1.6rem;background:linear-gradient(160deg, rgba(21,155,138,.16), rgba(245,166,35,.14));}
.my-row-main{gap:5px;}
.my-row-top h3 a{color:inherit;}
.my-row-top h3 a:hover{color:var(--teal);text-decoration:none;}
.my-row-unit{font-size:.78rem;color:var(--ink-soft);}
.my-row-stats{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.8rem;color:var(--ink-soft);margin-top:2px;}
.my-row-stats span{display:inline-flex;align-items:center;gap:5px;}
.my-row-actions{align-self:center;}
.my-row-notice{flex-basis:100%;display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border-radius:10px;font-size:.83rem;line-height:1.45;}
.my-row-notice .uicon{margin-top:1px;}
.my-row-notice > div{display:flex;flex-direction:column;gap:4px;}
.my-row-notice.is-pending{background:rgba(243,156,18,.1);color:var(--text);}
.my-row-notice.is-pending .uicon{color:#f39c12;}
.my-row-notice.is-rejected{background:rgba(231,76,60,.1);color:var(--text);}
.my-row-notice.is-rejected .uicon{color:#e74c3c;}
.my-row-notice.is-paused{background:var(--overlay);color:var(--ink-soft);align-items:center;}
.my-row-notice.is-paused > span{flex:1;}
.my-row-notice-link{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--teal);cursor:pointer;align-self:flex-start;}
.my-row-notice-link:hover{text-decoration:underline;}
.status-pill{gap:6px;}
.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0;}
.card-menu-item{display:flex;align-items:center;gap:10px;}
@media (max-width:600px){
  .my-row{gap:12px;padding:14px;}
  .my-row-thumb{width:64px;height:56px;}
  .my-row-main{min-width:0;flex-basis:calc(100% - 80px);}
  .my-row-actions{margin-left:0;width:100%;justify-content:flex-end;}
  .my-row-actions .btn-sm{flex:1;text-align:center;}
}

/* Saglabātie */
.card-link.is-removing{opacity:0;transform:scale(.96);transition:opacity .2s ease,transform .2s ease;pointer-events:none;}
.saved-empty{display:flex;flex-direction:column;align-items:center;gap:12px;}
.saved-empty p{margin:0;}
.saved-empty-ico{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(21,155,138,.12);color:var(--teal);}
.toast.has-action{pointer-events:auto;display:flex;align-items:center;gap:16px;padding:10px 12px 10px 20px;}
.toast-action{background:none;border:0;color:var(--gold);font:inherit;font-weight:800;padding:6px 8px;border-radius:6px;cursor:pointer;}
.toast-action:hover{background:rgba(255,255,255,.1);}

/* Mans profils */
.profile-summary-name{margin-bottom:2px;}
.profile-summary-email{font-size:.85rem;color:var(--ink-soft);overflow-wrap:anywhere;margin-bottom:16px;}
.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;}
.profile-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border-radius:12px;background:var(--overlay);border:1px solid var(--line);color:var(--text);font:inherit;cursor:pointer;transition:border-color .15s ease;}
.profile-stat:hover{border-color:var(--teal);}
.profile-stat b{font-size:1.25rem;font-weight:800;line-height:1.2;}
.profile-stat span{font-size:.72rem;color:var(--ink-soft);line-height:1.25;text-align:center;}
.profile-summary .row{align-items:center;gap:8px;}
.profile-summary .row .uicon{color:var(--ink-soft);}
.profile-summary .row b{text-align:right;}
.settings-item-icon{background:rgba(21,155,138,.1);color:var(--teal);font-size:inherit;}
.settings-chevron{display:flex;transition:transform .18s ease;}
.settings-item.open .settings-chevron{transform:rotate(90deg);}
.danger-zone{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 20px;border:1px dashed color-mix(in srgb, var(--danger) 40%, var(--line));border-radius:var(--radius);}
.danger-zone-title{font-weight:800;font-size:.9rem;color:var(--danger);margin-bottom:2px;}
.danger-zone p{margin:0;font-size:.83rem;color:var(--ink-soft);max-width:460px;}
.danger-zone-btn{display:inline-flex;align-items:center;gap:7px;background:none;border:1px solid color-mix(in srgb, var(--danger) 45%, transparent);color:var(--danger);font:inherit;font-size:.85rem;font-weight:700;padding:8px 14px;border-radius:999px;cursor:pointer;transition:background-color .15s ease,color .15s ease;}
.danger-zone-btn:hover{background:var(--danger);color:#fff;}
[data-theme="dark"] .danger-zone-title,[data-theme="dark"] .danger-zone-btn{color:#F28B82;}
[data-theme="dark"] .danger-zone-btn:hover{background:#E5534B;color:#fff;}
.pending-limit-ico{background:rgba(243,156,18,.14);color:#f39c12;}
.my-row-pricebox{white-space:nowrap;}

/* «Dalīties» на странице объявления: «Saglabāt» + квадратная кнопка с иконкой */
.ld-side-card .ld-side-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;}
.ld-side-card .ld-side-actions.is-single{grid-template-columns:minmax(0,1fr);}
.ld-side-card .ld-side-actions > .ld-cta-secondary,.ld-side-card .ld-side-actions .ld-share-wrap{min-width:0;}
.ld-side-card .ld-side-actions .ld-cta-secondary{flex:none;width:100%;min-width:0;box-sizing:border-box;}
.ld-side-card .ld-side-actions .ld-share-btn.is-icon{width:56px;height:100%;min-height:52px;padding:0;flex:none;}
.ld-share-btn svg{flex-shrink:0;}
.ld-share-btn[aria-expanded="true"]{border-color:var(--ld-accent);color:var(--ld-accent);}
.ld-share-wrap{position:relative;display:flex;}
.ld-share-menu{display:none;position:absolute;right:0;bottom:calc(100% + 8px);min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 34px rgba(0,0,0,.24);padding:6px;z-index:30;}
.ld-share-menu.open{display:flex;flex-direction:column;}
.ld-share-menu a,.ld-share-menu button{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:8px;background:none;border:0;font:inherit;font-size:.9rem;font-weight:600;color:var(--text);text-decoration:none;cursor:pointer;}
.ld-share-menu a:hover,.ld-share-menu button:hover{background:var(--overlay);text-decoration:none;}

/* Raksti (/raksti) */
.articles-page,.article-page{max-width:760px;}
.article-head{margin-bottom:24px;}
.article-page h1,.articles-page h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.15;margin:0 0 12px;text-wrap:balance;}
.article-lead{font-size:1.08rem;color:var(--ink-soft);line-height:1.6;margin:0 0 12px;}
.article-lang-note{display:inline-block;font-size:.82rem;color:var(--ink-soft);background:var(--overlay);border-radius:8px;padding:6px 10px;margin:0 0 8px;}
.article-grid{display:grid;gap:12px;}
.article-card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px;color:var(--text);text-decoration:none;transition:border-color .15s ease,transform .15s ease;}
.article-card:hover{border-color:var(--teal);transform:translateY(-2px);text-decoration:none;}
.article-card h2{font-size:1.12rem;margin:0 0 6px;line-height:1.3;}
.article-card p{margin:0 0 10px;color:var(--ink-soft);font-size:.92rem;line-height:1.5;}
.article-card-more{color:var(--teal);font-weight:700;font-size:.88rem;}
.article-back{display:inline-block;margin-bottom:16px;color:var(--ink-soft);font-weight:600;font-size:.9rem;}
.article-body{font-size:1.02rem;line-height:1.7;}
.article-body h2{font-size:1.28rem;margin:30px 0 8px;line-height:1.3;}
.article-body p{margin:0 0 14px;}
.article-body ul{margin:0 0 16px;padding-left:22px;}
.article-body li{margin-bottom:6px;}
.article-body a{color:var(--teal);font-weight:600;}
.article-cta{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;margin:36px 0 24px;}
@media(max-width:640px){.article-cta{grid-template-columns:1fr;}}
.article-cta-col{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;}
.article-cta-col h3{margin:0 0 12px;font-size:1rem;}
.article-cta-links{display:flex;flex-wrap:wrap;gap:8px;}
.article-cta-trainer{background:rgba(21,155,138,.08);border-color:rgba(21,155,138,.3);display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.article-cta-trainer p{margin:0;font-weight:600;line-height:1.45;}
.article-more h3{font-size:1rem;margin:0 0 8px;}
.article-more ul{margin:0;padding-left:20px;line-height:1.8;}
.article-body p,.article-body li{color:var(--text);}
