/* Samet CV ortak çekirdek: sıfırlama, font, sabit düğmeler, dil seçici.
   Renkleri demo kendi :root'unda ezer (--sv-* değişkenleri). */

/* Geologica (OFL, font/LICENSE-geologica) — değişken ağırlık 100–900, Türkçe glifler latin + latin-ext */
@font-face{font-family:'Geologica';font-style:normal;font-display:swap;font-weight:100 900;src:url(font/geologica-latin-wght-normal.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geologica';font-style:normal;font-display:swap;font-weight:100 900;src:url(font/geologica-latin-ext-wght-normal.woff2) format('woff2-variations');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --sv-font:'Geologica',system-ui,-apple-system,'Segoe UI',sans-serif;
  --sv-zemin:#16181b;          /* nötr koyu */
  --sv-metin:#f2f0ea;
  --sv-vurgu:#F5B800;          /* şantiye sarısı (brief) */
  --sv-vurgu-uzeri:#16181b;
  --sv-celik:#5b6168;          /* çelik gri */
  --sv-dugme-zemin:#23262a;
  --sv-dugme-metin:#f2f0ea;
  --sv-odak:#F5B800;
}

/* sıfırlama */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{overflow-x:clip}           /* 375 px'te yatay kaydırma yok */
body{margin:0;min-height:100svh;font-family:var(--sv-font);line-height:1.5;background:var(--sv-zemin);color:var(--sv-metin);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,p,figure,blockquote,ul,ol,dl,dd{margin:0}
ul[role=list],ol[role=list]{list-style:none;padding:0}
img,svg,video,canvas{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit}
:focus-visible{outline:2px solid var(--sv-odak);outline-offset:3px}
.sv-gizli{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* dil seçici */
.sv-dil{display:inline-flex;border:1.5px solid currentColor;border-radius:999px;padding:2px;gap:2px}
.sv-dil button{border:0;background:none;padding:6px 12px;min-width:44px;min-height:36px;border-radius:999px;font-weight:600;font-size:14px;letter-spacing:.06em}
.sv-dil button[aria-pressed=true]{background:var(--sv-vurgu);color:var(--sv-vurgu-uzeri)}

/* sabit WhatsApp / ara / ses */
.sv-sabit{position:fixed;z-index:1000;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px}
.sv-dugme{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:48px;height:48px;padding:0 12px;border:0;border-radius:999px;background:var(--sv-dugme-zemin);color:var(--sv-dugme-metin);text-decoration:none;font-weight:600;font-size:15px;box-shadow:0 6px 20px rgb(0 0 0/.28);transition:transform .15s ease-out}
.sv-dugme svg{width:22px;height:22px;flex:none}
.sv-dugme.sv-ana{background:var(--sv-vurgu);color:var(--sv-vurgu-uzeri);padding:0 18px 0 14px}
.sv-dugme:hover{transform:translateY(-2px)}
.sv-telsiz[aria-pressed=true]{box-shadow:0 0 0 2px var(--sv-vurgu),0 6px 20px rgb(0 0 0/.28)}
@media (max-width:560px){.sv-telsiz .sv-etiket{display:none}}

/* ses menüsü (STD-184): 🔊 tek giriş → Efektler aç/kapat · Telsizi dinle/durdur */
.sv-ses-kutu{display:inline-flex}  /* menü .sv-sabit satırına (fixed) göre sağa hizalı: 375 px'te taşmaz */
.sv-ses.sv-calan{box-shadow:0 0 0 2px var(--sv-vurgu),0 6px 20px rgb(0 0 0/.28)}
.sv-ses.sv-calan::after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--sv-vurgu);animation:sv-nabiz 1.2s ease-in-out infinite}
.sv-ses{position:relative}
@keyframes sv-nabiz{50%{opacity:.25}}
.sv-ses-menu{position:absolute;right:0;bottom:calc(100% + 10px);min-width:232px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:16px;background:var(--sv-dugme-zemin);color:var(--sv-dugme-metin);box-shadow:0 10px 30px rgb(0 0 0/.35)}
.sv-ses-menu[hidden]{display:none}
.sv-ses-menu::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}  /* fare boşluktan geçerken menü kapanmasın */
.sv-ses-menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:11px;background:none;text-align:left;font-weight:600;font-size:15px;white-space:nowrap}
.sv-ses-menu button:hover{background:rgb(255 255 255/.08)}
.sv-ses-menu .sv-m-durum{margin-left:auto;font-weight:700;font-size:13px;letter-spacing:.04em;opacity:.75}
.sv-ses-menu .sv-m-ikon svg{width:20px;height:20px;display:block}
.sv-anahtar{position:relative;flex:none;width:30px;height:18px;border-radius:9px;background:rgb(255 255 255/.22);transition:background .15s}
.sv-anahtar::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:currentColor;transition:transform .15s}
[data-sv=efekt][aria-pressed=true] .sv-anahtar{background:var(--sv-vurgu)}
[data-sv=efekt][aria-pressed=true] .sv-anahtar::after{transform:translateX(12px);background:var(--sv-vurgu-uzeri)}
[data-sv=efekt][aria-pressed=true] .sv-m-durum{opacity:1;color:var(--sv-vurgu)}
.sv-ses-menu [data-sv=telsiz][aria-pressed=true]{color:var(--sv-vurgu)}
/* düzey kaydırıcısı (İlker 15.10): dokunma alanı 44 px, ince ray, büyük tutamak */
.sv-duzey{display:flex;align-items:center;gap:10px;padding:0 12px 4px 52px}
.sv-duzey input{flex:1;min-width:0;height:44px;margin:0;background:none;accent-color:var(--sv-vurgu);-webkit-appearance:none;appearance:none;cursor:pointer;touch-action:pan-x}
.sv-duzey input::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:rgb(255 255 255/.25)}
.sv-duzey input::-moz-range-track{height:4px;border-radius:2px;background:rgb(255 255 255/.25)}
.sv-duzey input::-moz-range-progress{height:4px;border-radius:2px;background:var(--sv-vurgu)}
.sv-duzey input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-9px;border-radius:50%;background:var(--sv-vurgu);border:2px solid var(--sv-dugme-zemin)}
.sv-duzey input::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--sv-vurgu);border:2px solid var(--sv-dugme-zemin)}
.sv-duzey input:focus-visible{outline:2px solid var(--sv-odak);outline-offset:2px;border-radius:6px}
.sv-duzey output{width:3ch;text-align:right;font-size:13px;font-weight:700;opacity:.75;font-variant-numeric:tabular-nums}
@media (max-width:380px){.sv-dugme.sv-ana .sv-etiket{display:none}.sv-dugme.sv-ana{padding:0 12px}}

/* az hareket: demolar ayrıca SametCV.azHareket ile animasyonu kapatır */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* CV önizleme modalı (STD-187): renkler demonun --sv-* değişkenlerinden */
html.sv-cv-acik{overflow:hidden}
.sv-cv{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border:0;background:none;color:var(--sv-dugme-metin);font-family:var(--sv-font)}
.sv-cv:not([open]){display:none}
.sv-cv::backdrop{background:rgb(0 0 0/.74)}
.sv-cv-panel{display:flex;flex-direction:column;width:min(100%,960px);height:100%;margin:0 auto;border-radius:16px;overflow:hidden;background:var(--sv-dugme-zemin);box-shadow:0 20px 60px rgb(0 0 0/.5)}
.sv-cv-ust{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 10px 10px 18px;border-bottom:1px solid rgb(255 255 255/.12)}
.sv-cv-baslik{flex:1 1 0;min-width:0;font-size:16px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sv-cv-islem{display:flex;align-items:center;gap:8px;order:1}
.sv-cv-kapat{order:2;flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:999px;background:rgb(255 255 255/.1)}
.sv-cv-kapat:hover{background:rgb(255 255 255/.18)}
.sv-cv-kapat svg{width:22px;height:22px}
.sv-cv-dugme{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid rgb(255 255 255/.3);border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;white-space:nowrap}
.sv-cv-dugme:hover{border-color:currentColor}
.sv-cv-dugme svg{width:20px;height:20px;flex:none}
.sv-cv-dugme.sv-cv-indir{border-color:var(--sv-vurgu);background:var(--sv-vurgu);color:var(--sv-vurgu-uzeri)}
.sv-cv-alan{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px;background:var(--sv-zemin)}
.sv-cv-alan:focus-visible{outline-offset:-3px}
.sv-cv-sayfa{width:100%;max-width:820px;height:auto;flex:none;background:#fff;border-radius:4px;box-shadow:0 6px 24px rgb(0 0 0/.35)}
/* dar ekran: başlık + ✕ üst satırda, işlemler altta tam genişlik */
@media (max-width:719px){
  .sv-cv{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .sv-cv-ust{padding:8px 8px 10px 14px}
  .sv-cv-islem{flex:1 1 100%;order:3}
  .sv-cv-islem .sv-cv-dugme{flex:1 1 0;justify-content:center;padding:0 10px}
  .sv-cv-islem [data-sv-cv=yeni] span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .sv-cv-islem [data-sv-cv=yeni]{flex:0 0 48px;padding:0}
  .sv-cv-alan{padding:10px;gap:10px}
}
