/* mdSinyal — trafik levhası dili.
   Levha mavisi panolar, beton zemin, karayolu yazısı (Overpass), durumlar gerçek levha biçimleriyle. */
:root{
  --zemin:#e8e7e1; --zemin-2:#dedcd4; --panel:#fbfbf8; --panel-2:#f2f1ec;
  --murekkep:#111417; --metin:#373d44; --soluk:#767c84; --cizgi:#d3d2ca; --cizgi-2:#e4e3dc;
  --levha:#0a4da2; --levha-koyu:#073a7c; --levha-acik:#e2eaf5;
  --kirmizi:#d52b1e; --kirmizi-acik:#fbe8e5; --yesil:#1f7a3e; --yesil-acik:#e2f0e6;
  --sari:#f2b705; --sari-acik:#fff4cf; --kahve:#6b3e26; --turuncu:#b45309;
  --asfalt:#2a2e33;
  --baslik:"Overpass",system-ui,sans-serif; --govde:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif; --mono:"Overpass Mono",ui-monospace,monospace;
  --r:10px;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{background:var(--zemin);color:var(--metin);font:400 15px/1.5 var(--govde);-webkit-font-smoothing:antialiased;min-height:100vh}
body.kilitli{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
:focus-visible{outline:3px solid var(--sari);outline-offset:2px;border-radius:4px}
.ik{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.isaret{flex:none;display:block}
h1,h2,h3,h4{color:var(--murekkep);font-family:var(--baslik);font-weight:800;line-height:1.15}
.mono,.sayi{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600}
.avatar{display:none}
.kisi-foto{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--cizgi);background:var(--kagit,#fff)}

/* ---------- iskelet ---------- */
.uyg{display:grid;grid-template-columns:272px 1fr;min-height:100vh}
.yan{position:sticky;top:0;height:100vh;padding:14px 0 14px 14px;display:flex}
.yan-levha{flex:1;background:var(--levha);border-radius:14px;box-shadow:inset 0 0 0 4px var(--levha),inset 0 0 0 6px #fff;color:#fff;display:flex;flex-direction:column;padding:16px 10px 12px;overflow-y:auto;scrollbar-width:none}
.yan-levha::-webkit-scrollbar{display:none}
.logo{display:flex;align-items:center;gap:10px;padding:6px 10px 14px;border-bottom:2px solid rgba(255,255,255,.85);margin:0 4px 6px}
.logo-isaret{width:34px;height:34px;flex:none}
.logo b{display:block;font-family:var(--baslik);font-size:22px;font-weight:900;line-height:1}
.logo small{display:block;font-size:12px;opacity:.85;margin-top:3px}
.logo b .mk,.sh-marka b .mk,.yk-marka .mk{font-weight:500;opacity:.55}
.yan-baslik{font-family:var(--baslik);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;opacity:.7;padding:12px 12px 4px}
.yan nav a{display:flex;align-items:center;gap:10px;padding:7px 12px;border-radius:7px;font-family:var(--baslik);font-weight:700;font-size:15.5px;line-height:1.25}
.yan nav a .ok{font-weight:900;width:16px;text-align:center}
.yan nav a:hover{background:rgba(255,255,255,.12)}
.yan nav a.secili{background:#fff;color:var(--levha)}
.yan nav a b{margin-left:auto;font-family:var(--mono);font-size:12px;min-width:24px;text-align:center;border:1.5px solid currentColor;border-radius:5px;padding:0 5px;line-height:18px}
.yan nav a b.uyar{background:var(--sari);border-color:var(--sari);color:#111}
.yan-rol{display:flex;margin:12px 4px 0;border:2px solid rgba(255,255,255,.85);border-radius:8px;padding:3px;gap:2px}
.yan-rol button{flex:1;padding:6px 4px;border-radius:5px;font-family:var(--baslik);font-size:12.5px;font-weight:800;color:#fff}
.yan-rol button.secili{background:#fff;color:var(--levha)}
.yan-alt{margin-top:auto;padding:12px 10px 4px;font-size:12.5px;border-top:1px solid rgba(255,255,255,.35)}
.yan-alt b{display:block;font-family:var(--baslik);font-size:14px}
.yan-alt span{opacity:.85}

.ana{min-width:0;display:flex;flex-direction:column}
.ust{position:sticky;top:0;z-index:20;background:rgba(232,231,225,.93);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:14px;padding:16px 32px 12px;min-height:74px}
.ust-baslik{min-width:0}
.ust-baslik small{display:block;font-size:13.5px;color:var(--metin)}
.ust-baslik h1{font-size:28px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.arama{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--panel);border:1.5px solid var(--cizgi);border-radius:8px;padding:0 12px;height:40px;width:min(300px,30vw);color:var(--soluk);cursor:text}
.arama span{flex:1;font-size:14px;text-align:left}
.arama kbd{font-family:var(--mono);font-size:11px;border:1px solid var(--cizgi);border-radius:4px;padding:0 5px}
.rol{display:flex;border:2px solid var(--murekkep);border-radius:8px;padding:2px;gap:2px;background:var(--panel)}
.rol button{padding:5px 11px;border-radius:5px;font-family:var(--baslik);font-size:13px;font-weight:800;color:var(--murekkep)}
.rol button.secili{background:var(--murekkep);color:#fff}
.icerik{padding:4px 32px 64px;width:100%;max-width:1440px}
.demo-serit{display:none}
.ekran-notu{display:flex;gap:10px;align-items:center;font-size:15px;color:var(--metin);margin:0 0 18px;max-width:920px}

/* ---------- düğme, form ---------- */
.dg{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:7px;font-family:var(--baslik);font-weight:800;font-size:14px;white-space:nowrap;transition:background .12s,transform .1s;border:2px solid transparent}
.dg:active{transform:translateY(1px)}
.dg-ana{background:var(--levha);color:#fff}
.dg-ana:hover{background:var(--levha-koyu)}
.dg-koyu{background:var(--murekkep);color:#fff}
.dg-cizgi{background:var(--panel);border-color:var(--murekkep);color:var(--murekkep)}
.dg-cizgi:hover{background:#fff}
.dg-wp{background:#1a8d48;color:#fff}
.dg-wp:hover{background:#157a3d}
.dg-hafif{color:var(--levha);padding:0 6px;height:30px;border:0}
.dg-hafif:hover{text-decoration:underline}
.dg-kucuk{height:32px;padding:0 11px;font-size:13px;border-radius:6px}
.dg-ikon{width:36px;height:36px;display:grid;place-items:center;border-radius:7px;color:var(--murekkep)}
.dg-ikon:hover{background:var(--panel-2)}
.dg[disabled]{opacity:.4;pointer-events:none}
.alan{display:flex;flex-direction:column;gap:5px}
.alan label,.et{font-family:var(--baslik);font-size:13px;font-weight:800;color:var(--murekkep)}
.alan input,.alan select,.alan textarea,.girdi{height:42px;border:1.5px solid var(--cizgi);border-radius:7px;padding:0 12px;background:#fff;font-size:15px;width:100%}
.alan textarea{height:auto;min-height:84px;padding:10px 12px;resize:vertical}
.alan input:focus,.alan select:focus,.alan textarea:focus,.girdi:focus{outline:0;border-color:var(--levha);box-shadow:0 0 0 3px var(--levha-acik)}
.form-izgara{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-izgara .tam{grid-column:1/-1}
.secim{display:flex;flex-wrap:wrap;gap:6px}
.secim label{position:relative}
.secim input{position:absolute;opacity:0}
.secim span{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1.5px solid var(--cizgi);border-radius:7px;font-size:14px;font-weight:700;cursor:pointer;background:#fff}
.secim input:checked+span{border-color:var(--levha);background:var(--levha);color:#fff}
.secim input:focus-visible+span{outline:3px solid var(--sari);outline-offset:2px}
.anahtar{position:relative;width:42px;height:24px;flex:none}
.anahtar input{position:absolute;opacity:0;inset:0;cursor:pointer;z-index:1;margin:0}
.anahtar i{position:absolute;inset:0;border-radius:6px;background:#c5c4bb;transition:background .2s}
.anahtar i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:4px;background:#fff;transition:transform .2s}
.anahtar input:checked+i{background:var(--yesil)}
.anahtar input:checked+i::after{transform:translateX(18px)}

/* ---------- panolar ---------- */
.kart{background:var(--panel);border:1.5px solid var(--cizgi);border-radius:var(--r)}
.kart-bas{display:flex;align-items:center;gap:10px;padding:16px 20px 0;flex-wrap:wrap}
.kart-bas h3{font-size:15px;text-transform:uppercase;letter-spacing:.05em}
.kart-bas small{color:var(--soluk);font-size:13.5px}
.kart-bas .sag{margin-left:auto;display:flex;gap:6px;align-items:center}
.kart-govde{padding:16px 20px 20px}
.izgara{display:grid;gap:16px}
.izgara>*{min-width:0}
.iz-2{grid-template-columns:1fr 1fr}
.iz-3{grid-template-columns:repeat(3,1fr)}
.iz-4{grid-template-columns:repeat(4,1fr)}
.iz-21{grid-template-columns:2fr 1fr}
.iz-12{grid-template-columns:1fr 2fr}
.bolum-bas{display:flex;align-items:flex-end;gap:12px;margin:0 0 14px;flex-wrap:wrap}
.bolum-bas>div{min-width:0;max-width:100%}
.bolum-bas h2{font-size:19px}
.bolum-bas p{color:var(--soluk);font-size:14px}
.bolum-bas .sag{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.ara-bosluk{height:20px}

/* ölçü şeridi: tek mavi levha */
.olcum,.izgara:has(>.gosterge){display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;background:var(--levha);border-radius:12px;box-shadow:inset 0 0 0 3px var(--levha),inset 0 0 0 5px #fff;color:#fff;padding:5px;overflow:hidden}
.olcum-h,.izgara>.gosterge{padding:14px 20px 16px;display:flex;flex-direction:column;gap:2px;background:none;border:0;border-radius:0;min-width:0}
.olcum-h+.olcum-h,.izgara>.gosterge+.gosterge{box-shadow:inset 1.5px 0 0 rgba(255,255,255,.4)}
.olcum-h small,.izgara>.gosterge small{font-family:var(--baslik);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.85;display:flex;gap:6px;align-items:center}
.olcum-h small .ik,.izgara>.gosterge small .ik{display:none}
.olcum-h b,.izgara>.gosterge b{font-family:var(--baslik);font-size:32px;font-weight:900;color:#fff!important;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap}
.olcum-h span,.izgara>.gosterge span{font-size:13.5px;opacity:.9}
.izgara>.gosterge a{color:var(--sari)!important;font-weight:700}
.o-uyari b{color:var(--sari)!important}
.izgara>.gosterge .ilerleme{background:rgba(255,255,255,.25)}
.izgara>.gosterge .ilerleme i{background:#fff}
.kart.gosterge{padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.kart.gosterge small{font-family:var(--baslik);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--soluk)}
.kart.gosterge b{font-family:var(--baslik);font-size:30px;font-weight:900;color:var(--murekkep)}
/* mavi gösterge panelindeki kartlar: başlık ve açıklama beyaz (genel kart kuralı griye çekmesin) */
.izgara>.kart.gosterge>small,.izgara>.kart.gosterge>span{color:#fff}

/* yön levhası */
.yon-levhasi{background:var(--levha);color:#fff;border-radius:14px;box-shadow:inset 0 0 0 4px var(--levha),inset 0 0 0 6px #fff;padding:12px 10px}
.yl-bas{font-family:var(--baslik);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:6px 14px 10px;opacity:.85}
.yl-satir{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border-top:1.5px solid rgba(255,255,255,.55)}
.yl-bas+.yl-satir,.yl-satir:first-child{border-top:0}
.yl-satir:hover{background:rgba(255,255,255,.1)}
.yl-ok{font-family:var(--baslik);font-size:30px;font-weight:900;line-height:1}
.yl-ad{font-family:var(--baslik);font-size:22px;font-weight:800;line-height:1.15}
.yl-ad small{display:block;font-family:var(--govde);font-size:13.5px;font-weight:400;opacity:.88}
.yl-deger{font-family:var(--baslik);font-size:34px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}
.yl-deger.sari{color:var(--sari)}

/* rozet: levha plakası */
.rozet{display:inline-flex;align-items:center;height:23px;padding:0 8px;border-radius:4px;font-family:var(--baslik);font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#fff;color:var(--metin);border:1.5px solid var(--cizgi)}
.rozet-yesil{background:var(--yesil);color:#fff;border-color:var(--yesil)}
.rozet-kirmizi{background:#fff;color:var(--kirmizi);border-color:var(--kirmizi)}
.rozet-uyari{background:var(--sari-acik);color:#7a5200;border-color:#e8c45a}
.rozet-mavi{background:var(--levha);color:#fff;border-color:var(--levha)}
.rozet-mor{background:var(--kahve);color:#fff;border-color:var(--kahve)}
.rozet-turuncu{background:#fff;color:var(--turuncu);border-color:var(--turuncu)}
.rozet-sari{background:var(--sari);color:#111;border-color:var(--sari)}
.plaka{display:inline-flex;align-items:stretch;height:26px;line-height:22px;border:2px solid #111;border-radius:4px;background:#fff;font-family:var(--mono);font-weight:700;font-size:13.5px;color:#111;overflow:hidden;white-space:nowrap;padding-right:8px}
.plaka i{background:#123fa5;color:#fff;font-style:normal;font-size:8.5px;font-family:var(--baslik);font-weight:800;display:flex;align-items:flex-end;padding:0 3px 1px;margin-right:7px;line-height:1}
.kisi{display:flex;align-items:center;gap:10px;min-width:0}
.kisi b{color:var(--murekkep);font-weight:700;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}
.kisi small{color:var(--soluk);font-size:13px;display:block}

/* araç görseli */
.arac-fig{position:relative;margin:0;background:#ddd8d3;border-radius:8px;overflow:hidden;aspect-ratio:16/10}
.arac-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.arac-fig figcaption{position:absolute;right:10px;top:10px}
.arac-fig.kucuk{width:96px;border-radius:6px;flex:none}
.arac-fig.kucuk figcaption,.arac-fig.orta figcaption{display:none}
.arac-fig.orta{width:150px;flex:none}

/* tablo */
.tablo-kap{overflow-x:auto}
.tablo{width:100%;border-collapse:collapse;font-size:14.5px}
.tablo th{text-align:left;font-family:var(--baslik);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--soluk);padding:10px 14px;border-bottom:2px solid var(--murekkep);white-space:nowrap}
.tablo td{padding:12px 14px;border-bottom:1px solid var(--cizgi-2);vertical-align:middle}
.tablo tr:last-child td{border-bottom:0}
.tablo tbody tr.tik{cursor:pointer}
.tablo tbody tr.tik:hover{background:#fff}
.tablo .sag{text-align:right}
.tablo .sayi{color:var(--murekkep)}

/* sekmeler */
.sekmeler{display:flex;gap:6px;margin-bottom:18px;overflow-x:auto;scrollbar-width:none;padding:2px}
.sekmeler::-webkit-scrollbar{display:none}
.sekmeler button{padding:8px 14px;font-family:var(--baslik);font-weight:800;font-size:14px;color:var(--murekkep);border:2px solid var(--murekkep);border-radius:7px;white-space:nowrap;display:flex;gap:8px;align-items:center;background:var(--panel)}
.sekmeler button:hover{background:#fff}
.sekmeler button.secili{background:var(--murekkep);color:#fff}
.sekmeler b{font-family:var(--mono);font-size:12px;border-radius:4px;padding:0 5px;background:var(--sari);color:#111}
.bolum-bas .sekmeler{margin-bottom:0}
.filtre{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:14px 16px;border-bottom:1.5px solid var(--cizgi)}
.filtre .girdi{height:38px;width:auto}
.filtre .ara-kutu{position:relative;flex:1;min-width:200px;max-width:320px}
.filtre .ara-kutu .ik{position:absolute;left:11px;top:10px;color:var(--soluk)}
.filtre .ara-kutu input{padding-left:34px;width:100%}
.cip{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:7px;border:1.5px solid var(--cizgi);font-size:14px;font-weight:700;background:#fff}
.cip.secili{background:var(--kirmizi);color:#fff;border-color:var(--kirmizi)}

/* ilerleme */
.ilerleme{height:7px;border-radius:2px;background:var(--cizgi-2);overflow:hidden;min-width:60px}
.ilerleme i{display:block;height:100%;background:var(--levha);transition:width .5s}
.ilerleme.yesil i{background:var(--yesil)}
.ilerleme.sari i{background:var(--sari)}

/* mini yol */
.yol{position:relative;height:22px;min-width:120px}
.yol-serit{position:absolute;left:0;right:0;top:8px;height:7px;border-radius:2px;background:var(--asfalt);overflow:hidden}
.yol-serit::after{content:"";position:absolute;left:3px;right:3px;top:3px;height:1px;background:repeating-linear-gradient(90deg,#fff 0 5px,transparent 5px 10px);opacity:.8}
.yol-serit i{position:absolute;left:0;top:0;bottom:0;background:var(--sari);z-index:1}
.yol-arac{position:absolute;top:1px;transform:translateX(-50%);width:20px;height:20px;border-radius:4px;background:var(--levha);color:#fff;display:grid;place-items:center;z-index:2;box-shadow:0 0 0 2px #fff;transition:left .6s}
.yol-arac .ik{width:13px;height:13px}
.yol-buyuk{height:88px;margin:8px 16px 0}
.yol-buyuk .yol-serit{top:18px;height:18px}
.yol-buyuk .yol-serit::after{top:8px;height:2px;background:repeating-linear-gradient(90deg,#fff 0 16px,transparent 16px 30px)}
.yol-buyuk .yol-arac{top:8px;width:38px;height:38px;border-radius:7px}
.yol-buyuk .yol-arac .ik{width:22px;height:22px}
.yol-buyuk ol{list-style:none;position:absolute;left:0;right:0;top:48px}
.yol-buyuk li{position:absolute;transform:translateX(-50%);font-family:var(--baslik);font-size:13px;font-weight:800;color:var(--soluk);white-space:nowrap}
.yol-buyuk li::before{content:"";display:block;width:2px;height:7px;background:var(--cizgi);margin:0 auto 4px}
.yol-buyuk li.gecti{color:var(--murekkep)}
.yol-buyuk li.simdi span{background:var(--levha);color:#fff;padding:2px 8px;border-radius:4px}
.yol-buyuk li:first-child{transform:none}
.yol-buyuk li:first-child::before{margin-left:0}
.yol-buyuk li:last-child{transform:translateX(-100%)}
.yol-buyuk li:last-child::before{margin-right:0}

/* yolculuk */
.yolculuk-kap{overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px}
.yolculuk-kap::-webkit-scrollbar{display:none}
.yolculuk{position:relative;height:122px;margin:6px 40px 0;min-width:560px}
.yolculuk-serit{position:absolute;left:-20px;right:-20px;top:40px;height:26px;border-radius:4px;background:var(--asfalt)}
.yolculuk-serit::after{content:"";position:absolute;left:14px;right:14px;top:12px;height:2px;background:repeating-linear-gradient(90deg,#fff 0 22px,transparent 22px 40px)}
.durak{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:36px;text-align:center}
.durak b{font-family:var(--baslik);font-size:30px;font-weight:900;color:var(--murekkep);line-height:1}
.durak span{font-family:var(--baslik);font-size:13px;font-weight:800;color:#fff;padding:3px 10px;border-radius:5px;background:var(--levha);box-shadow:inset 0 0 0 1.5px #fff,0 0 0 1.5px var(--levha);white-space:nowrap}
.durak::before{content:"";position:absolute;top:46px;width:14px;height:14px;border-radius:3px;background:var(--sari);z-index:1}
.durak:hover span{background:var(--murekkep);box-shadow:inset 0 0 0 1.5px #fff,0 0 0 1.5px var(--murekkep)}

/* listeler */
.liste{list-style:none}
.liste>li{display:flex;align-items:center;gap:12px;padding:12px 20px;border-top:1px solid var(--cizgi-2)}
.liste>li:first-child{border-top:0}
.liste .sag{margin-left:auto;display:flex;align-items:center;gap:8px;flex:none}
.liste .zaman{font-family:var(--mono);font-size:15px;color:var(--murekkep);font-weight:700;width:52px;flex:none}
.bos{padding:34px 20px;text-align:center}
.bos b{display:block;color:var(--murekkep);font-family:var(--baslik);font-size:16px;margin-bottom:4px}
.bos p{color:var(--soluk);font-size:14px;margin-bottom:14px}
.ipucu{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:8px;background:var(--levha-acik);color:var(--levha-koyu);font-size:14px}
.ipucu.uyari{background:var(--sari-acik);color:#6d4a00}
.ipucu .ik,.ipucu .isaret{margin-top:1px}
.oto-ik{width:34px;height:34px;display:grid;place-items:center;flex:none}
.oto-ik .ik{width:22px;height:22px;color:var(--levha)}

/* grafikler */
.cubuk-grafik{display:flex;align-items:flex-end;height:calc(var(--h) + 26px)}
.cg-sutun{display:flex;flex-direction:column;align-items:center;height:100%}
.cg-alan{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px;padding:0 20%}
.cg-c,.cg-c2{display:block;width:100%;max-width:40px;border-radius:3px 3px 0 0;background:#b7c6dd;position:relative;min-height:2px;transition:height .6s}
.cg-c.vurgu{background:var(--levha)}
.cg-c2{background:#e3b1aa;max-width:20px}
.cg-c em{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-style:normal;font-size:12px;font-family:var(--mono);color:var(--murekkep);padding-bottom:4px;white-space:nowrap;opacity:0}
.cg-sutun:hover em,.cg-c.vurgu em{opacity:1}
.cg-sutun small{font-family:var(--baslik);font-weight:800;font-size:12px;color:var(--soluk);margin-top:6px;text-transform:uppercase}
.halka{position:relative;flex:none}
.halka-orta{position:absolute;inset:0;display:grid;place-items:center;text-align:center}
.halka-orta b{display:block;font-family:var(--baslik);font-size:24px;font-weight:900;color:var(--murekkep);line-height:1}
.halka-orta small{font-size:12px;color:var(--soluk)}
.lejant{list-style:none;display:grid;gap:8px;font-size:14px}
.lejant li{display:flex;align-items:center;gap:8px}
.lejant i{width:12px;height:12px;border-radius:2px;flex:none}
.lejant b{margin-left:auto;font-family:var(--mono);font-weight:700;color:var(--murekkep);font-size:13px}

/* pencere */
.perde{position:fixed;inset:0;z-index:100;background:rgba(17,20,23,.5);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow-y:auto;opacity:0;transition:opacity .18s}
.perde.acik{opacity:1}
.pencere{background:var(--panel);border-radius:12px;width:min(580px,100%);box-shadow:0 30px 80px -20px rgba(0,0,0,.45);transform:translateY(8px);transition:transform .2s;border-top:6px solid var(--levha)}
.perde.acik .pencere{transform:none}
.pencere.genis{width:min(900px,100%)}
.pencere header{display:flex;align-items:center;padding:16px 16px 0 22px}
.pencere header h2{font-size:20px}
.pencere header .dg-ikon{margin-left:auto}
.pencere-govde{padding:16px 22px 22px}
.pencere footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1.5px solid var(--cizgi);background:var(--panel-2);border-radius:0 0 12px 12px;flex-wrap:wrap}

/* bildirim */
.bildirimler{position:fixed;right:20px;bottom:20px;z-index:200;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.bildirim{display:flex;align-items:center;gap:10px;background:var(--levha);color:#fff;padding:12px 16px;border-radius:9px;box-shadow:inset 0 0 0 2px var(--levha),inset 0 0 0 3.5px #fff,0 14px 30px -10px rgba(0,0,0,.4);font-family:var(--baslik);font-size:14px;font-weight:700;animation:gel .25s ease;max-width:400px}
.bildirim-wp{background:#16773c;box-shadow:inset 0 0 0 2px #16773c,inset 0 0 0 3.5px #fff,0 14px 30px -10px rgba(0,0,0,.4)}
.bildirim-uyari{background:var(--kirmizi);box-shadow:inset 0 0 0 2px var(--kirmizi),inset 0 0 0 3.5px #fff}
.bildirim.git{opacity:0;transform:translateY(6px);transition:all .4s}
@keyframes gel{from{opacity:0;transform:translateY(8px)}}

/* arama paleti */
.komut input{border:0;border-bottom:1.5px solid var(--cizgi);height:56px;font-size:17px;padding:0 22px;width:100%;background:none}
.komut input:focus{outline:0}
.komut ul{list-style:none;max-height:56vh;overflow-y:auto;padding:8px}
.komut li a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:7px}
.komut li a:hover,.komut li a.odak{background:var(--levha);color:#fff}
.komut li a:hover small,.komut li a.odak small{color:#d8e3f3}
.komut li small{margin-left:auto;color:var(--soluk);font-size:13px}
.komut .grup{font-family:var(--baslik);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk);padding:10px 12px 4px}

/* takvim */
.takvim{display:grid;grid-template-columns:64px repeat(var(--sutun),minmax(190px,1fr));overflow-x:auto}
.tk-bas{position:sticky;top:0;background:var(--panel);padding:10px;border-bottom:2px solid var(--murekkep);border-left:1px solid var(--cizgi-2);display:flex;align-items:center;gap:10px;z-index:1;min-height:80px}
.tk-bas:first-child{border-left:0}
.tk-bas b{font-family:var(--baslik);font-size:14px;color:var(--murekkep);display:block;line-height:1.2}
.tk-bas small{font-size:12px;color:var(--soluk)}
.tk-bas .arac-fig{width:64px}
.tk-bas>div:last-child{min-width:0}
.tk-bas b,.tk-bas small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.tk-saat{font-family:var(--mono);font-size:13px;font-weight:700;color:var(--soluk);padding:8px 10px;border-bottom:1px solid var(--cizgi-2);height:70px}
.tk-hucre{border-left:1px solid var(--cizgi-2);border-bottom:1px solid var(--cizgi-2);padding:4px;height:70px;position:relative}
.tk-hucre.bos-hucre:hover{background:#fff;cursor:pointer}
.tk-hucre.bos-hucre:hover::after{content:"+ Ders ekle";position:absolute;inset:4px;border:2px dashed var(--levha);border-radius:6px;display:grid;place-items:center;font-family:var(--baslik);font-size:13px;color:var(--levha);font-weight:800}
.tk-hucre.surukle-ust{background:var(--sari-acik)!important;outline:2px dashed var(--sari);outline-offset:-4px}
.tk-hucre.ogle{background:repeating-linear-gradient(-45deg,#e6e5df 0 6px,var(--panel) 6px 12px)}
.tk-hucre.izinli{background:repeating-linear-gradient(-45deg,#f6dfdb 0 6px,var(--panel) 6px 12px)}
.ders{height:100%;border-radius:6px;padding:6px 9px;font-size:13px;background:var(--levha);color:#fff;cursor:grab;display:flex;flex-direction:column;justify-content:center;overflow:hidden;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);position:relative}
.ders b{font-family:var(--baslik);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
.ders small{font-size:12px;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ders.yapildi{background:var(--yesil)}
.ders.gelmedi{background:#fff;color:var(--kirmizi);box-shadow:inset 0 0 0 2px var(--kirmizi)}
.ders.tekrar::after{content:"↻";position:absolute;right:8px;top:6px;font-size:13px}
.gun-sec{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px}
.gun-sec::-webkit-scrollbar{display:none}
.gun-sec button{flex:none;width:60px;height:64px;border:2px solid var(--cizgi);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--panel)}
.gun-sec small{font-family:var(--baslik);font-size:11px;color:var(--soluk);font-weight:800;text-transform:uppercase}
.gun-sec b{font-family:var(--baslik);font-size:21px;font-weight:900;color:var(--murekkep)}
.gun-sec button.secili{background:var(--levha);border-color:var(--levha)}
.gun-sec button.secili b,.gun-sec button.secili small{color:#fff}
.gun-sec button.bugun:not(.secili){border-color:var(--murekkep)}

/* aday panosu */
.pano{display:grid;grid-template-columns:repeat(5,minmax(230px,1fr));gap:12px;overflow-x:auto;padding-bottom:6px}
.pano-sutun{background:var(--zemin-2);border-radius:10px;padding:10px;min-height:300px}
.pano-sutun h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:8px;padding:4px 6px 10px}
.pano-sutun h3 b{font-family:var(--mono);font-size:12px;background:var(--panel);border-radius:4px;padding:0 6px;color:var(--metin)}
.pano-sutun h3 i{width:10px;height:10px;border-radius:2px}
.aday-kart{background:var(--panel);border-radius:8px;padding:12px;margin-bottom:8px;cursor:pointer;border:1.5px solid transparent}
.aday-kart:hover{border-color:var(--murekkep)}
.aday-kart .ust-satir{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.aday-kart b{color:var(--murekkep);font-size:15px}
.aday-kart .kanal{margin-left:auto;color:var(--soluk)}
.aday-kart p{font-size:13.5px;color:var(--metin);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aday-kart .alt-satir{display:flex;gap:6px;align-items:center;margin-top:8px;font-size:12px;color:var(--soluk);flex-wrap:wrap}

/* sohbet */
.sohbet{display:grid;grid-template-columns:320px 1fr;min-height:560px}
.sohbet-liste{border-right:1.5px solid var(--cizgi);overflow-y:auto;max-height:640px}
.sohbet-liste a{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--cizgi-2);align-items:flex-start}
.sohbet-liste a.secili{background:#fff;box-shadow:inset 4px 0 0 var(--levha)}
.sohbet-liste p{font-size:13px;color:var(--soluk);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.sohbet-pencere{display:flex;flex-direction:column;background:#ece5dc}
.sohbet-ust{display:flex;align-items:center;gap:10px;padding:12px 18px;background:var(--panel);border-bottom:1.5px solid var(--cizgi)}
.sohbet-akis{flex:1;padding:20px 22px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:520px}
.balon{max-width:72%;padding:8px 12px;border-radius:10px;font-size:14px;line-height:1.45;color:#16202a;background:#fff;align-self:flex-start;border-top-left-radius:3px}
.balon.giden{align-self:flex-end;background:#d9fdd3;border-top-left-radius:10px;border-top-right-radius:3px}
.balon small{display:flex;gap:4px;align-items:center;justify-content:flex-end;font-size:11px;color:#6b7680;margin-top:2px}
.balon small .ik{width:12px;height:12px}
.sohbet-yaz{display:flex;gap:8px;padding:12px 16px;background:var(--panel);border-top:1.5px solid var(--cizgi)}
.sohbet-yaz input{flex:1}

/* kursiyer dosyası */
.profil-bas{display:flex;gap:18px;align-items:center;padding:22px 24px 8px;flex-wrap:wrap}
.profil-no{font-family:var(--mono);font-weight:700;font-size:13px;border:2px solid var(--murekkep);border-radius:5px;padding:2px 8px;color:var(--murekkep)}
.profil-bas h2{font-size:30px;font-weight:900}
.profil-bas .meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--metin);font-size:14px;margin-top:6px;align-items:center}
.profil-bas .meta span{display:flex;gap:5px;align-items:center}
.profil-bas .sag{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.bilgi-tablo{display:grid;grid-template-columns:auto 1fr;gap:9px 18px;font-size:14.5px}
.bilgi-tablo dt{color:var(--soluk)}
.bilgi-tablo dd{color:var(--murekkep);font-weight:700}
.evrak{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--cizgi-2)}
.evrak{flex-wrap:wrap;row-gap:8px}
.evrak>span[style*="flex:1"]{min-width:min(100%,200px)}
.evrak>.dg,.evrak>img{flex:none}
.evrak:first-child{border-top:0}
.evrak .durum{width:22px;height:22px;border-radius:4px;display:grid;place-items:center;flex:none}
.evrak .durum.var{background:var(--yesil);color:#fff}
.evrak .durum.yok{background:#fff;color:var(--kirmizi);box-shadow:inset 0 0 0 2px var(--kirmizi)}
.evrak .durum .ik{width:13px;height:13px;stroke-width:3}
.taksit-sira{display:grid;grid-template-columns:28px 1fr auto auto;gap:12px;align-items:center;padding:11px 0;border-top:1px solid var(--cizgi-2);font-size:14.5px}
.taksit-sira:first-child{border-top:0}
.taksit-sira .no{font-family:var(--mono);color:var(--soluk);font-size:13px}
.zaman-cizgisi{list-style:none;position:relative;padding-left:20px}
.zaman-cizgisi::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--cizgi)}
.zaman-cizgisi li{position:relative;padding:0 0 14px;font-size:14.5px}
.zaman-cizgisi li::before{content:"";position:absolute;left:-19px;top:5px;width:10px;height:10px;border-radius:2px;background:var(--levha)}
.zaman-cizgisi small{display:block;color:var(--soluk);font-size:13px}

/* araç ve ekip kartları */
.arac-kart{padding:12px;display:flex;flex-direction:column;gap:12px}
.arac-kart .ust-satir{display:flex;align-items:center;gap:10px}
.arac-kart h3{font-size:18px}
.belge-satir{display:flex;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap;padding:0 6px}
.belge-satir>span:first-child{color:var(--soluk);width:76px;flex:none}
.belge-satir b{color:var(--murekkep);font-weight:700}

/* otomasyon */
.oto{display:flex;gap:14px;align-items:flex-start;padding:16px 20px;border-top:1px solid var(--cizgi-2)}
.oto:first-child{border-top:0}
.oto h4{font-size:15.5px}
.oto p{font-size:13.5px;color:var(--soluk)}
.oto .sablon{margin-top:8px;font-size:13.5px;background:#fff;border-left:3px solid var(--levha);padding:8px 10px;border-radius:0 6px 6px 0;color:var(--metin)}
.oto .sag{margin-left:auto;display:flex;align-items:center;gap:14px;flex:none}

/* belgeler (A4) */
.a4{background:#fff;color:#111;width:100%;max-width:794px;margin:0 auto;padding:40px 46px;font-size:13px;line-height:1.55;box-shadow:0 10px 40px -16px rgba(0,0,0,.35);font-family:var(--govde)}
.a4 h1{font-size:18px;text-align:center;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.a4 .a4-alt{text-align:center;color:#555;margin-bottom:18px}
.a4 table{width:100%;border-collapse:collapse;margin:10px 0}
.a4 td,.a4 th{border:1px solid #111;padding:6px 8px;text-align:left;vertical-align:top}
.a4 th{background:#f0f0ec;font-weight:700}
.a4 .imza{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px;text-align:center}
.a4 .imza div{border-top:1px solid #111;padding-top:6px}
.belge-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.belge-kart{background:var(--panel);border:1.5px solid var(--cizgi);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px;cursor:pointer;text-align:left}
.belge-kart:hover{border-color:var(--murekkep)}
.belge-kart .kagit{height:120px;background:#fff;border:1px solid var(--cizgi);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:7px;box-shadow:3px 3px 0 var(--cizgi-2)}
.belge-kart .kagit i{display:block;height:5px;background:#e3e2dc;border-radius:2px}
.belge-kart .kagit i:first-child{width:60%;background:#111;height:6px;margin:0 auto 6px}
.belge-kart b{font-family:var(--baslik);font-size:16px;color:var(--murekkep)}
.belge-kart small{color:var(--soluk);font-size:13.5px}

/* risk */
.risk-cubuk{width:80px;height:8px;background:var(--cizgi-2);border-radius:2px;overflow:hidden;display:inline-block;vertical-align:middle}
.risk-cubuk i{display:block;height:100%}

/* evden kayıt */
.kayit-sayfa{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.05fr 1fr;gap:28px;padding:6px 0 60px}
.kayit-gorsel{border-radius:14px;overflow:hidden;position:relative;min-height:560px;background:#ccc}
.kayit-gorsel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kayit-gorsel .yon-levhasi{position:absolute;left:18px;right:18px;bottom:18px}
.adim-serit{display:flex;gap:6px;margin-bottom:18px}
.adim-serit span{flex:1;height:6px;border-radius:2px;background:var(--cizgi)}
.adim-serit span.ok{background:var(--levha)}
.imza-alan{border:2px dashed var(--cizgi);border-radius:8px;background:#fff;touch-action:none;width:100%;height:150px;display:block}
.yukle{display:flex;align-items:center;gap:12px;padding:12px;border:1.5px dashed var(--cizgi);border-radius:8px;background:#fff;cursor:pointer}
.yukle input{position:absolute;opacity:0;width:1px;height:1px}
.yukle img{width:44px;height:44px;object-fit:cover;border-radius:4px}

/* portal */
.portal{max-width:470px;margin:0 auto;padding:10px 16px 100px}
.portal-bas{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.portal-bas h2{font-size:28px;font-weight:900}
.portal-bas small{color:var(--soluk)}
.portal .kart{margin-bottom:12px}
.portal-sekme{position:fixed;left:50%;transform:translateX(-50%);bottom:14px;z-index:30;background:var(--levha);border-radius:12px;padding:6px;display:flex;gap:2px;box-shadow:inset 0 0 0 2px var(--levha),inset 0 0 0 3.5px #fff,0 14px 40px -12px rgba(0,0,0,.45);width:min(450px,calc(100% - 24px))}
.portal-sekme button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 4px;border-radius:8px;color:#fff;font-family:var(--baslik);font-size:11.5px;font-weight:800}
.portal-sekme button.secili{background:#fff;color:var(--levha)}
.soru{padding:18px 20px}
.soru h4{font-size:17px;margin-bottom:12px;line-height:1.35}
.soru button.secenek{display:flex;width:100%;text-align:left;gap:10px;padding:12px;border:1.5px solid var(--cizgi);border-radius:8px;margin-bottom:8px;font-size:15px;background:#fff}
.soru button.secenek b{font-family:var(--mono);color:var(--soluk)}
.soru button.dogru{border-color:var(--yesil);background:var(--yesil-acik)}
.soru button.yanlis{border-color:var(--kirmizi);background:var(--kirmizi-acik)}

body.portal-modu .uyg{grid-template-columns:1fr}
body.portal-modu .yan,body.portal-modu .alt-menu,body.portal-modu .mobil-ust-sol{display:none}
body.portal-modu .icerik{max-width:none}
.alt-menu{display:none}
.mobil-ust-sol{display:none}
@media (min-width:901px){.yan-rol{display:none}}

@media (max-width:1180px){
  .iz-4{grid-template-columns:repeat(2,1fr)}
  .iz-21,.iz-12{grid-template-columns:1fr}
  .arama{width:auto}
  .arama span,.arama kbd{display:none}
  .kayit-sayfa{grid-template-columns:1fr}
  .kayit-gorsel{min-height:320px}
}
@media (max-width:900px){
  .uyg{grid-template-columns:1fr}
  .yan{position:fixed;left:0;top:0;bottom:0;width:292px;z-index:90;transform:translateX(-105%);transition:transform .25s;padding:10px}
  .yan.acik{transform:none}
  .yan-perde{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:80}
  .ust{padding:10px 16px;gap:10px;min-height:62px}
  .ust-baslik h1{font-size:21px}
  .ust-baslik small{font-size:12.5px}
  .rol{display:none}
  .mobil-ust-sol{display:grid}
  .icerik{padding:2px 16px 100px}
  .iz-2,.iz-3{grid-template-columns:1fr}
  .olcum,.izgara:has(>.gosterge){grid-template-columns:1fr 1fr}
  .olcum-h,.izgara>.gosterge{padding:12px 14px}
  .olcum-h:nth-child(odd),.izgara>.gosterge:nth-child(odd){box-shadow:none}
  .olcum-h:nth-child(n+3),.izgara>.gosterge:nth-child(n+3){border-top:1.5px solid rgba(255,255,255,.4)}
  .olcum-h b,.izgara>.gosterge b{font-size:22px}
  .yl-ad{font-size:17px}
  .yl-deger{font-size:24px}
  .yl-ok{font-size:22px}
  .yl-satir{grid-template-columns:24px 1fr auto;gap:10px;padding:9px 10px}
  .form-izgara{grid-template-columns:1fr}
  .sohbet{grid-template-columns:1fr}
  .sohbet-liste{max-height:260px;border-right:0;border-bottom:1.5px solid var(--cizgi)}
  .alt-menu{display:flex;position:fixed;left:8px;right:8px;bottom:8px;z-index:40;background:var(--levha);border-radius:12px;padding:5px;gap:2px;box-shadow:inset 0 0 0 2px var(--levha),inset 0 0 0 3.5px #fff,0 10px 30px -10px rgba(0,0,0,.5)}
  .alt-menu a,.alt-menu button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border-radius:8px;color:#fff;font-family:var(--baslik);font-size:11px;font-weight:800}
  .alt-menu .secili{background:#fff;color:var(--levha)}
  .bolum-bas .sag{margin-left:0;width:100%}
  .tablo-mobil thead{display:none}
  .tablo-mobil tr{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:12px 14px;border-bottom:1px solid var(--cizgi-2)}
  .tablo-mobil td{padding:0;border:0}
  .tablo-mobil td.m-gizle{display:none}
  .tablo-mobil td.m-tam{grid-column:1/-1}
  .bildirimler{left:16px;right:16px;bottom:84px;align-items:stretch}
  .perde{padding:3vh 8px}
  .profil-bas{padding:18px 16px 4px}
  .profil-bas h2{font-size:24px}
  .profil-bas .sag{margin-left:0}
  .yol-buyuk li span{font-size:11px}
  .yol-buyuk li:nth-child(2) span,.yol-buyuk li:nth-child(4) span{display:none}
  .yol-buyuk ol:has(li:last-child.simdi) li:nth-child(5) span{display:none}
  .yol-buyuk li.simdi span{padding:2px 6px}
  .sayfa-genel .liste .plaka{display:none}
  body.portal-modu .rol{display:flex;margin-left:auto}
  body.portal-modu .rol button{padding:5px 8px;font-size:12px}
  body.portal-modu .arama,body.portal-modu .ust-baslik small{display:none}
  body.portal-modu .ust-baslik h1{font-size:16px}
  body.portal-modu .icerik{padding:0 0 40px}
  .arac-fig.orta{width:112px}
  .durak b{font-size:24px}
  .a4{padding:22px 18px}
}
@media print{
  body *{visibility:hidden}
  .a4,.a4 *{visibility:visible}
  .a4{position:absolute;left:0;top:0;box-shadow:none;max-width:none;padding:18mm}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.yl-deger .sari{color:var(--sari)}
.arac-izgara{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
@media (max-width:1300px){.arac-izgara{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.arac-izgara{grid-template-columns:repeat(2,1fr)}}

body.portal-modu .arama{display:none}

/* giriş */
.giris{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--zemin)}
.giris-levha{width:min(560px,100%);background:var(--levha);color:#fff;border-radius:16px;box-shadow:inset 0 0 0 5px var(--levha),inset 0 0 0 7px #fff;padding:28px 28px 24px}
.giris-levha h1{color:#fff;font-size:30px;font-weight:900;margin-top:10px}
.giris-levha>p{opacity:.88;margin:4px 0 18px}
.giris-kisiler{display:grid;gap:8px}
.giris-kisi{display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;padding:12px 16px;border-radius:9px;border:2px solid rgba(255,255,255,.75);color:#fff}
.giris-kisi b{font-family:var(--baslik);font-size:18px}
.giris-kisi small{grid-column:1;opacity:.85}
.giris-kisi em{grid-row:1/3;grid-column:2;font-style:normal;font-family:var(--mono);font-size:12px;background:rgba(255,255,255,.15);padding:3px 8px;border-radius:5px}
.giris-kisi.secili,.giris-kisi:hover{background:#fff;color:var(--levha)}
.giris-kisi.secili em,.giris-kisi:hover em{background:var(--levha-acik)}
.giris-pin{display:flex;gap:8px;align-items:center;margin-top:16px}
.giris-pin label{font-family:var(--baslik);font-weight:800}
.giris-pin input{flex:1;height:46px;border-radius:8px;border:0;padding:0 14px;font-family:var(--mono);font-size:20px;letter-spacing:.4em;color:#111}
.giris-pin .dg-koyu{height:46px;background:#111}
.giris-not{font-size:13px;opacity:.8;margin-top:14px}
.kullanici-cip{display:flex;flex-direction:column;align-items:flex-start;border:2px solid var(--murekkep);border-radius:8px;padding:4px 12px;background:var(--panel);line-height:1.2}
.kullanici-cip b{font-family:var(--baslik);font-size:14px;color:var(--murekkep)}
.kullanici-cip small{font-size:12px;color:var(--soluk)}
.portal-geri{display:none}
body.portal-modu:not(.usta-modu) .portal-geri{display:inline-flex}
.bildirim-geri{margin-left:10px;color:#fff;border:1.5px solid #fff;border-radius:6px;padding:2px 10px;font-family:var(--baslik);font-weight:800;font-size:13px}
@media (max-width:900px){.kullanici-cip small{display:none}.kullanici-cip{padding:4px 10px}}
@media print{
  body.rapor-yazdir *{visibility:visible}
  body.rapor-yazdir .yan,body.rapor-yazdir .ust,body.rapor-yazdir .alt-menu,body.rapor-yazdir .bildirimler,body.rapor-yazdir .sekmeler,body.rapor-yazdir .dg{display:none!important}
  body.rapor-yazdir .uyg{display:block}
  body.rapor-yazdir .kart,body.rapor-yazdir .izgara:has(>.gosterge){break-inside:avoid}
}

/* sosyal medya asistanı */
.dene-sohbet{grid-template-columns:260px 1fr}
.dene-yan{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.gonderi-kart{display:grid;grid-template-columns:minmax(0,180px) 1fr;overflow:hidden;margin-bottom:14px}
@media (max-width:900px){
  .dene-sohbet{grid-template-columns:1fr}
  .dene-yan{max-height:none;flex-direction:row;flex-wrap:wrap;align-items:flex-start}
  .dene-yan>b{width:100%}
  .gonderi-kart{grid-template-columns:88px 1fr}
  .gonderi-kart .liste>li{padding:10px 12px}
}

/* --- şube seçici --- */
.sube-sec select{height:40px;border:1.5px solid var(--cizgi);border-radius:8px;background:var(--panel);padding:0 30px 0 12px;font-family:var(--baslik);font-weight:800;font-size:14px;color:var(--murekkep);max-width:190px}
.gizli-et{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* --- MEBBİS sıralı giriş çubuğu --- */
.sira-bar{position:sticky;top:76px;z-index:15;background:var(--murekkep);color:#fff;border-radius:12px;padding:12px 16px;margin-bottom:16px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.sira-ust{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;font-family:var(--baslik);font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.8;margin-bottom:6px;flex-wrap:wrap}
.sira-govde{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sira-govde small{display:block;font-size:13px;opacity:.85}
.sira-govde b{display:block;font-size:22px;color:#fff;word-break:break-all;font-family:var(--mono)}
.sira-govde .dg-cizgi,.sira-govde .dg-hafif{color:#fff;border-color:rgba(255,255,255,.6);background:transparent}
.sira-govde kbd,.dg kbd{font-family:var(--mono);font-size:11px;border:1px solid currentColor;border-radius:4px;padding:0 5px;margin-left:6px;opacity:.8}

/* --- genel bakış: kurulum şeridi, katlanır bloklar --- */
.kurulum-serit{display:flex;align-items:center;gap:12px;background:var(--sari-acik);border:1.5px solid var(--sari);border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:14.5px;color:var(--murekkep)}
.kurulum-serit .dg{margin-left:auto}
details.daha{border-top:1px solid var(--cizgi-2)}
details.daha summary,details.detay-blok>summary{cursor:pointer;list-style:none;font-family:var(--baslik);font-weight:800;color:var(--levha);padding:12px 20px}
details.daha summary::-webkit-details-marker,details.detay-blok>summary::-webkit-details-marker{display:none}
details.detay-blok>summary{background:var(--panel);border:1.5px solid var(--cizgi);border-radius:var(--r)}
details.detay-blok>summary::before,details.daha summary::before{content:"+ "}
details[open].detay-blok>summary::before,details[open].daha summary::before{content:"– "}
.bugun-kart .liste>li .dg{flex:none}

/* --- sade tema (açık) --- */
body.tema-sade{--zemin:#f4f5f7;--panel:#fff;--cizgi:#dfe2e6}
body.tema-sade .yan-levha{background:#fff;color:var(--murekkep);box-shadow:none;border:1.5px solid var(--cizgi)}
body.tema-sade .yan nav a.secili{background:var(--levha);color:#fff}
body.tema-sade .yan nav a:hover{background:var(--levha-acik)}
body.tema-sade .yan-baslik{color:var(--soluk)}
body.tema-sade .logo{border-bottom-color:var(--cizgi)}
body.tema-sade .yan-alt .dg{color:var(--murekkep)!important;border-color:var(--cizgi)!important}
body.tema-sade .olcum,body.tema-sade .izgara:has(>.gosterge),body.tema-sade .yon-levhasi{background:#fff;color:var(--murekkep);box-shadow:none;border:1.5px solid var(--cizgi)}
body.tema-sade .olcum-h b,body.tema-sade .izgara>.gosterge b{color:var(--levha)!important}
body.tema-sade .olcum-h+.olcum-h,body.tema-sade .izgara>.gosterge+.gosterge{box-shadow:inset 1.5px 0 0 var(--cizgi)}
body.tema-sade .yl-satir{border-top-color:var(--cizgi)}
body.tema-sade .yl-satir:hover{background:var(--levha-acik)}
body.tema-sade .yl-deger .sari{color:var(--turuncu)}
body.tema-sade .kart-bas h3,body.tema-sade .olcum-h small,body.tema-sade .yl-bas,body.tema-sade .izgara>.gosterge small{text-transform:none;letter-spacing:0}
body.tema-sade .sekmeler button{border-width:1.5px;border-color:var(--cizgi)}
body.tema-sade .sekmeler button.secili{background:var(--levha);border-color:var(--levha)}
body.tema-sade .alt-menu{background:#fff;color:var(--murekkep);box-shadow:0 -1px 0 var(--cizgi)}
body.yazi-buyuk{zoom:1.12}

/* --- telefon --- */
@media (max-width:900px){
  .ust-baslik h1{font-size:20px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15}
  .ust-baslik small{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sube-sec select{height:36px;max-width:120px;font-size:12.5px;padding:0 6px}
  .sekmeler{margin-left:-16px;margin-right:-16px;padding:2px 16px;scroll-padding-inline:16px;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .sekmeler button{scroll-snap-align:start;padding:7px 11px;font-size:13.5px}
  .dene-yan{order:2}
  .sira-bar{top:64px}
  .sira-govde b{font-size:18px}
  .kurulum-serit{flex-wrap:wrap}
  .kurulum-serit .dg{margin-left:0}
}
.sube-yan{display:none;margin:8px 6px 0;font-size:12px;font-family:var(--baslik);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.sube-yan select{display:block;width:100%;margin-top:4px;height:38px;border-radius:7px;border:0;padding:0 8px;font-weight:800;color:var(--murekkep)}
@media (max-width:600px){.sube-sec{display:none}.sube-yan{display:block}}

.konu-sat{display:grid;grid-template-columns:1fr auto auto;gap:4px 10px;align-items:center;text-align:left;padding:10px 12px;border:1.5px solid var(--cizgi);border-radius:9px;background:#fff;width:100%}
.konu-sat:hover{border-color:var(--levha)}
.konu-sat span{font-weight:700;color:var(--murekkep)}
.konu-sat .ilerleme{grid-column:1/-1}
body.portal-modu .sube-sec,body.portal-modu .sube-yan{display:none!important}
.guv-kod{display:inline-block;font-family:var(--mono);font-size:26px;font-weight:700;letter-spacing:.3em;padding:6px 14px;background:repeating-linear-gradient(135deg,#eef1f6 0 6px,#dfe5ee 6px 12px);border:1.5px solid var(--cizgi);border-radius:8px;color:#2a3a55;font-style:italic;text-decoration:line-through;text-decoration-color:rgba(42,58,85,.35)}
.aktar-log{max-height:52vh;overflow:auto;border:1.5px solid var(--cizgi);border-radius:10px}
.meb-aktar{border-color:var(--levha);box-shadow:0 0 0 2px var(--levha)}
.balon.taslak{border:2px dashed var(--turuncu);background:#fffaf0}
.taslak-et{display:block;font-size:11.5px;color:var(--turuncu);font-family:var(--baslik);letter-spacing:.04em;margin-bottom:4px}
.kurum-serit{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--levha-acik);border:1.5px solid var(--levha);border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:14px;color:var(--murekkep)}
.kurum-serit.uyari{background:var(--sari-acik);border-color:var(--sari)}
.kurum-serit>span:nth-child(2){flex:1;min-width:220px}
.ayar-gruplar{display:flex;flex-wrap:wrap;gap:6px 22px;margin-bottom:18px}
.ayar-grup small{display:block;font-family:var(--baslik);font-weight:800;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--soluk);margin:0 0 4px 2px}
.ayar-grup .sekmeler{margin-bottom:0}
@media (max-width:900px){.ayar-gruplar{display:block}.ayar-grup{margin-bottom:10px}}
.is-eylem{display:flex;gap:4px;align-items:center;flex:none}
.is-btn{width:32px;height:32px;border:1.5px solid var(--cizgi);border-radius:7px;display:grid;place-items:center;color:var(--soluk);background:#fff}
.is-btn:hover{color:var(--levha);border-color:var(--levha)}
.is-btn .ik{width:16px;height:16px}
@media (max-width:600px){.bugun-kart .liste>li{flex-wrap:wrap}.is-eylem{width:100%;justify-content:flex-end}}
.soru-gorsel{display:flex;justify-content:center;padding:6px 0 12px}.soru-gorsel svg{width:120px;height:120px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.18))}

/* Uzaktan imza sayfası (kursiyerin telefonu, girişsiz) */
.imza-sayfa{max-width:720px;margin:0 auto;padding:14px 14px 40px;display:grid;gap:14px}
.imza-ust{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:var(--levha);color:#fff;border-radius:10px}
.imza-ust b{font-family:var(--baslik);font-size:18px}.imza-ust small{opacity:.85}
.imza-sayfa .a4{box-shadow:none;padding:18px 16px;font-size:12.5px}
@media (max-width:560px){.imza-sayfa .a4 td,.imza-sayfa .a4 th{padding:4px 5px;font-size:11.5px}}

/* Demo senaryoları: senaryo listesi + telefon önizlemesi */
.senaryo-yerlesim{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}
.senaryo-liste li{align-items:flex-start;gap:12px}
.telefon{position:sticky;top:84px;border:10px solid #111;border-radius:34px;background:#efe7dd;overflow:hidden;height:min(640px,calc(100vh - 120px));display:flex;flex-direction:column;box-shadow:0 18px 40px -18px rgba(0,0,0,.45)}
.tel-ust{background:#075e54;color:#fff;padding:14px 16px 10px;display:flex;flex-direction:column}
.tel-ust b{font-size:15px}.tel-ust small{opacity:.8;font-size:11.5px}
.tel-akis{flex:1;overflow:auto;padding:12px 10px;display:flex;flex-direction:column;gap:8px}
.tel-balon{background:#fff;border-radius:0 10px 10px 10px;padding:7px 10px 5px;max-width:92%;box-shadow:0 1px 1px rgba(0,0,0,.12);font-size:13px;color:#111}
.tel-balon p{margin:4px 0 2px;line-height:1.4;word-wrap:break-word}
.tel-balon small{display:block;text-align:right;color:#777;font-size:10.5px}
.tel-etiket{display:inline-block;color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.02em;padding:2px 6px;border-radius:4px}
.tel-dosya{display:flex;gap:8px;align-items:center;background:#f3f3f3;border-radius:6px;padding:8px;margin-top:6px}
.tel-dosya .ik{width:22px;height:22px;color:#c2410c}.tel-dosya span{display:flex;flex-direction:column;font-weight:700;font-size:12.5px}.tel-dosya small{text-align:left;font-weight:400}
.tel-bos{margin:auto;text-align:center;color:#555;font-size:13px;padding:20px}.tel-bos .ik{width:34px;height:34px;color:#075e54}
@media (max-width:900px){.senaryo-yerlesim{grid-template-columns:1fr}.telefon{position:static;height:460px}}

.beceri-giris{display:grid;gap:6px;margin-bottom:4px}
.beceri-sat{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between}
.beceri-sat>span{font-size:14px;font-weight:700;color:var(--murekkep);min-width:130px}
.beceri-sat .secim span{min-height:34px;min-width:38px;justify-content:center;padding:0 8px}
.beceri-cubuk{display:grid;grid-template-columns:minmax(110px,auto) 1fr 34px;gap:8px;align-items:center;font-size:13.5px}
.beceri-cubuk i{display:block;height:8px;border-radius:4px;background:var(--cizgi);overflow:hidden}
.beceri-cubuk i b{display:block;height:100%;border-radius:4px}
.isi{display:grid;gap:3px;font-size:12px}
.isi div{display:grid;grid-template-columns:64px repeat(10,1fr);gap:3px;align-items:center}
.isi span{text-align:center;padding:7px 0;border-radius:4px;font-weight:700;font-variant-numeric:tabular-nums}
.isi .bas{color:var(--soluk);font-weight:600;background:none}
@media (max-width:640px){.isi div{grid-template-columns:44px repeat(10,1fr)}.isi span{padding:6px 0;font-size:11px}}

.arac-fig.arac-fig-bos{display:flex;align-items:center;justify-content:center;aspect-ratio:auto;height:160px;position:relative;background:var(--cizgi-2, #eef0f2);color:var(--soluk)}
.arac-fig-bos svg{width:42%;max-width:180px}
.arac-fig.orta.arac-fig-bos{aspect-ratio:auto;height:84px;width:130px}
.ekle-kart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:180px;border:2px dashed var(--cizgi);background:transparent;cursor:pointer;color:var(--murekkep);font:inherit;text-align:center;padding:20px}
.ekle-kart small{color:var(--soluk)}
.ekle-kart:hover{border-color:var(--levha)}

.giris-demo{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;width:100%;margin:18px 0 22px;padding:16px 18px;border:0;border-radius:10px;background:#f2b705;color:#111417;text-align:left;font:inherit;cursor:pointer;box-shadow:0 0 0 3px rgba(255,255,255,.18)}
.giris-demo b{font:800 20px/1.15 var(--baslik)}
.giris-demo small{grid-column:1;font-size:13.5px;color:#3a3200}
.giris-demo span{grid-column:2;grid-row:1/3;font:900 26px/1 var(--baslik)}
.giris-demo:hover{background:#ffc61a}
.giris-demo:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ziyaretci-serit{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0 24px 12px;padding:10px 14px;border-radius:10px;background:#fff4cf;border:1px solid #f2b705;color:#3a3200;font-size:14px}
.ziyaretci-serit button{flex:none;border:1.5px solid #111417;background:#fff;border-radius:7px;padding:5px 12px;font:700 13px var(--baslik);cursor:pointer}
@media (max-width:760px){.ziyaretci-serit{margin:0 12px 10px;font-size:13px}}
@media (max-width:480px){
  .kullanici-cip{padding:4px 8px;max-width:96px}
  .kullanici-cip b{display:block;max-width:100%;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ust{gap:8px}
  .ust .arama{padding:0 9px}
}
@media (max-width:760px){
  .bolum-bas .gun-sec{flex:1 1 100%!important}
  .bolum-bas .sag[style]{width:100%!important}
  .bolum-bas .rol{width:100%}
  .bolum-bas .rol button{flex:1}
}
@media (max-width:480px){
  .olcum-h b,.izgara>.gosterge b{font-size:24px;white-space:normal;overflow-wrap:anywhere}
  .olcum-h small,.izgara>.gosterge small{font-size:11px;letter-spacing:.06em}
}
@media (max-width:760px){
  .tablo-kap>.tablo:not(.tablo-mobil){min-width:660px}
  .tablo-kap{-webkit-overflow-scrolling:touch}
}

/* tanıtım (ana sayfa) stilleri index.html içinde: sayfa app.css beklemeden açılır */
.giris{align-content:center;gap:14px}
.giris-geri{justify-self:center;font:800 15px/1 var(--baslik);color:var(--levha);padding:10px 14px;border-radius:8px}
.giris-geri:hover{background:var(--levha-acik)}

/* ---------- mesaj merkezi ---------- */
.mm-govde{display:grid;gap:22px}
.mm-adim{display:grid;gap:10px}
.mm-adim>.et{font-family:var(--baslik);font-weight:800;font-size:15px;color:var(--murekkep)}
.mm-gruplar span b{font-family:var(--mono);font-size:12px;font-weight:600;background:var(--panel-2);color:var(--metin);padding:1px 6px;border-radius:4px;margin-left:2px}
.mm-gruplar input:checked+span b{background:rgba(255,255,255,.2);color:#fff}
.mm-suz{display:flex;gap:8px;flex-wrap:wrap}
.mm-suz select{flex:1 1 180px;width:auto}
.mm-kisiler{border:1px solid var(--cizgi);border-radius:9px;background:var(--panel)}
.mm-kisiler summary{cursor:pointer;padding:10px 14px;font-size:14px}
.mm-kisiler summary b{font-family:var(--mono);color:var(--levha)}
.mm-kisi-ust{display:flex;gap:6px;padding:0 12px 6px}
.mm-kisiler ul{list-style:none;max-height:260px;overflow:auto;border-top:1px solid var(--cizgi-2)}
.mm-kisiler li label{display:flex;gap:10px;align-items:center;padding:8px 14px;cursor:pointer}
.mm-kisiler li label:hover{background:var(--panel-2)}
.mm-kisiler li input{width:18px;height:18px;flex:none;accent-color:var(--levha)}
.mm-kisiler li b{display:block;font-size:14px;color:var(--murekkep)}
.mm-kisiler li small{display:block;font-size:12.5px;color:var(--soluk)}
.mm-sablonlar{display:flex;flex-wrap:wrap;gap:6px}
.mm-sablonlar .secili{background:var(--levha);color:#fff;border-color:var(--levha)}
.mm-metin{min-height:120px;line-height:1.5;font-size:15px}
.mm-alanlar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mm-alanlar small{color:var(--soluk);font-size:12.5px;margin-right:2px}
.mm-alanlar button{font:700 12.5px/1 var(--mono);padding:6px 9px;border-radius:6px;background:var(--levha-acik);color:var(--levha)}
.mm-alanlar button:hover{background:var(--levha);color:#fff}
.mm-uyari{font-size:13.5px}
.dg-baglanti{color:var(--levha);font-weight:700;text-decoration:underline;padding:0}
.mm-saat{max-width:260px}
.mm-gonder{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--cizgi-2);padding-top:14px}
.mm-gonder span{color:var(--soluk);font-size:14px}
.mm-gonder .dg{margin-left:auto}
.mm-sag{display:grid;gap:14px;align-content:start}
.mm-onizleme .kart-bas{flex-wrap:wrap}
.mm-oklar{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:13px}
.mm-telefon{background:#e9e2d6;margin:0 16px;border-radius:12px;padding:16px 12px;min-height:140px;display:grid;align-content:start}
.mm-telefon .balon{max-width:100%;white-space:pre-line;justify-self:end}
.mm-not{font-size:12.5px;color:var(--soluk);padding:10px 18px 16px}
.mm-gecmis li{padding:0}
.mm-gecmis li button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 18px}
.mm-gecmis li button:hover{background:var(--panel-2)}
.mm-gecmis li button>span:first-child{flex:1;min-width:0}
.mm-gecmis b{display:block;color:var(--murekkep);font-size:14px}
.mm-gecmis small{display:block;color:var(--soluk);font-size:12.5px}
.mm-say{display:flex;gap:8px;font:600 12.5px/1 var(--mono);color:var(--soluk);white-space:nowrap}
.mm-say i{font-style:normal}
.tik{font:700 12px/1 var(--mono);color:var(--soluk);margin-right:4px}
.tik-delivered{color:var(--soluk)}
.tik-read,.mm-say .tik-read{color:#34b7f1}
.tik-failed{color:var(--kirmizi)}
.mm-ozet{display:flex;gap:10px;flex-wrap:wrap}
.mm-ozet div{flex:1 1 90px;background:var(--panel-2);border-radius:9px;padding:10px 12px}
.mm-ozet b{display:block;font:800 24px/1 var(--baslik);color:var(--murekkep)}
.mm-ozet small{color:var(--soluk);font-size:12.5px}
.oto-gidecek{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:13px;color:var(--yesil);background:var(--yesil-acik);border-radius:6px;padding:5px 9px;font-weight:700}
.oto-gidecek b{font-weight:800}
.oto-gidecek .ik{width:15px;height:15px}
button.oto-gidecek:hover{text-decoration:underline}
.oto-gidecek.bos{color:var(--soluk);background:var(--panel-2);font-weight:400}
@media (max-width:760px){
  .mm-telefon{margin:0 12px}
  .mm-gonder .dg{width:100%;justify-content:center}
}
.mm-ek-satir{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mm-ek-satir>small{color:var(--soluk);font-size:12.5px}
.mm-ek-ekle{cursor:pointer}
.mm-ek{display:inline-flex;align-items:center;gap:8px;background:var(--levha-acik);color:var(--levha);border-radius:8px;padding:4px 4px 4px 10px;font-size:13.5px}
.mm-ek small{color:var(--metin)}
.mm-cevap{display:inline-flex;align-items:center;gap:8px;margin-left:auto;font-size:14px;font-weight:700;color:var(--murekkep);cursor:pointer}
.mm-cevap input{width:18px;height:18px;accent-color:var(--levha)}
.mm-cevap small{font-weight:400;color:var(--soluk)}
.mm-balon-ek{display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.06);border-radius:6px;padding:6px 8px;margin-bottom:6px;font-size:13px;font-weight:700}
.mm-balon-metin{display:block}
.mm-evet{color:var(--yesil)!important}
.mm-hayir{color:var(--kirmizi)!important}
.mm-ozet .mm-evet b,.mm-ozet .mm-hayir b{color:inherit}
.mm-cevap-rozet{font-size:12.5px;font-weight:700;background:var(--panel-2);border-radius:5px;padding:2px 7px;margin-right:8px;color:var(--metin)}

/* ---------- + Yeni ---------- */
.yeni-dugme{display:flex;align-items:center;gap:6px;height:40px;padding:0 14px 0 10px;border-radius:8px;background:var(--levha);color:#fff;font:800 15px/1 var(--baslik);flex:none}
.yeni-dugme:hover{background:var(--levha-koyu)}
.yeni-dugme .ik{width:20px;height:20px;stroke-width:2.6}
.yeni-menu{display:grid;gap:18px}
.yeni-menu h3{font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--soluk);margin-bottom:8px}
.yeni-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.yeni-kart{display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border:1.5px solid var(--cizgi);border-radius:10px;background:var(--panel)}
.yeni-kart:hover,.yeni-kart:focus-visible{border-color:var(--levha);background:var(--levha-acik)}
.yeni-kart b{display:block;font:800 15.5px/1.2 var(--baslik);color:var(--murekkep)}
.yeni-kart small{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px}
.yeni-ik{flex:none;width:40px;height:40px;border-radius:9px;background:var(--levha);color:#fff;display:grid;place-items:center}
.yeni-ik .ik{width:21px;height:21px}
.yeni-ipucu{margin-top:14px;font-size:12.5px;color:var(--soluk)}
.yeni-ipucu kbd{font-family:var(--mono);border:1px solid var(--cizgi);border-radius:4px;padding:0 5px}
.yeni-liste{max-height:52vh;overflow:auto;margin:10px -20px 0}
.yeni-satir{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 20px}
.yeni-satir:hover{background:var(--panel-2)}
.yeni-satir>span:first-child{flex:1;min-width:0}
.yeni-satir b{display:block;color:var(--murekkep)}
.yeni-satir small{display:block;color:var(--soluk);font-size:12.5px}
.yeni-satir .sag{display:flex;flex-direction:column;align-items:flex-end}
.alt-yeni span{display:grid;place-items:center;width:38px;height:22px;border-radius:999px;background:var(--sari);color:var(--murekkep)}
.alt-yeni span .ik{width:16px;height:16px;stroke-width:3}
.yan-grup>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}
.yan-grup>summary::-webkit-details-marker{display:none}
.yan-grup>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-3px 0 0 2px;transition:transform .15s}
.yan-grup[open]>summary::after{transform:rotate(-135deg);margin-top:3px}
@media (max-width:760px){
  .ust .yeni-dugme{display:none}
  .ust .arama{margin-left:auto}
  .yeni-izgara{grid-template-columns:1fr}
}

/* ---------- öğrenci paneli ---------- */
.og-kart{padding:16px 18px}
.og-bas{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.og-bas>div{flex:1;min-width:0}
.og-bas small{display:block;color:var(--soluk);font-size:12.5px}
.og-bas b{display:block;font:800 19px/1.2 var(--baslik);color:var(--murekkep)}
.og-bas .ilerleme{flex:0 0 110px}
.og-not{font-size:12.5px;color:var(--soluk);padding:0 4px}
.og-gun{margin-top:12px}
.og-gun h4{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--soluk);margin-bottom:6px}
.og-olay{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:9px;background:var(--panel-2);border-left:4px solid var(--levha);margin-bottom:6px}
.og-olay .mono{font-size:15px;color:var(--murekkep);min-width:46px}
.og-olay b{display:block;color:var(--murekkep);font-size:14.5px}
.og-olay small{display:block;color:var(--soluk);font-size:12.5px}
.og-olay.og-teorik{border-left-color:var(--sari)}
.og-olay.og-sinav{border-left-color:var(--kirmizi)}
.og-konu{border-top:1px solid var(--cizgi-2);padding:10px 0}
.og-konu summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:1fr 90px;gap:10px;align-items:center}
.og-konu summary::-webkit-details-marker{display:none}
.og-konu summary b{display:block;color:var(--murekkep);font-size:14.5px}
.og-konu summary small{color:var(--soluk);font-size:12.5px}
.og-konu ul{margin:10px 0 10px 18px;font-size:13.5px;display:grid;gap:3px}
.og-liste{margin:0 -18px}
.og-liste li{padding-left:18px;padding-right:18px}
.og-beceri{display:grid;gap:8px}
.og-beceri>div{display:grid;grid-template-columns:128px 1fr 34px 14px;gap:8px;align-items:center;font-size:13.5px}
.og-beceri i{height:8px;border-radius:4px;background:var(--panel-2);overflow:hidden;display:block}
.og-beceri i b{display:block;height:100%;border-radius:4px}
.og-artis{color:var(--yesil);font-weight:800}
.og-dusus{color:var(--kirmizi);font-weight:800}
.og-alinti{margin-top:12px;padding:10px 12px;border-left:3px solid var(--levha);background:var(--levha-acik);border-radius:0 8px 8px 0;font-size:14px;color:var(--murekkep)}
.og-alinti small{display:block;color:var(--soluk);font-size:12px;margin-top:4px}
.og-sinav.gecti{border-color:var(--yesil)}
.og-yer{display:flex;gap:6px;align-items:center;font-size:14px;color:var(--metin);margin-bottom:8px}
.og-yer .ik{width:16px;height:16px;color:var(--levha)}
.og-satirlar{display:grid;gap:6px;border-top:1px solid var(--cizgi-2);padding-top:10px}
.og-satirlar div{display:flex;justify-content:space-between;font-size:14px}
.og-satirlar b{color:var(--murekkep)}
.og-getir{list-style:none;display:grid;gap:5px;font-size:13.5px}
.og-getir li{display:flex;gap:8px;align-items:center}
.og-ara-baslik{font-size:15px;font-weight:800;color:var(--murekkep);margin:6px 2px 0}
.og-ozet{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.og-ozet div{background:var(--panel);border:1px solid var(--cizgi);border-radius:10px;padding:10px 12px}
.og-ozet small{display:block;color:var(--soluk);font-size:12px}
.og-ozet b{font-size:15.5px;color:var(--murekkep)}
.og-iban{font-size:14px!important;word-break:break-all}
.og-evrak small{display:block;color:var(--soluk);font-size:12px}
.evrak .durum.bekliyor{background:var(--sari-acik);color:var(--turuncu)}
.og-yukle{cursor:pointer;white-space:nowrap}
.og-a4{max-height:62vh;overflow:auto;transform-origin:top left}
.portal-sekme button{min-width:0}
@media (max-width:480px){
  .portal-sekme{left:8px;right:8px;transform:none}
  .portal-sekme button{font-size:10.5px;padding:7px 2px}
  .og-beceri>div{grid-template-columns:96px 1fr 30px 12px}
}

/* ---------- öğrenci dosyası: fotoğraf, durum şeridi, kayıt kontrolü ---------- */
.profil-foto{flex:none;width:76px;height:96px;border-radius:10px;border:2px dashed var(--cizgi);background:var(--panel-2);display:grid;place-items:center;align-content:center;gap:4px;color:var(--soluk);overflow:hidden;margin-right:4px}
.profil-foto small{font-size:11.5px;font-weight:700}
.profil-foto.var{border:2px solid var(--levha);padding:0}
.profil-foto img{width:100%;height:100%;object-fit:cover}
.profil-foto:hover{border-color:var(--levha);color:var(--levha)}
.dosya-serit{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.serit-kutu{text-align:left;background:var(--panel);border:1px solid var(--cizgi);border-left:5px solid var(--cizgi);border-radius:10px;padding:10px 12px;min-width:0}
.serit-kutu:hover{background:var(--panel-2)}
.serit-kutu small{display:block;font:800 11.5px/1 var(--baslik);letter-spacing:.1em;text-transform:uppercase;color:var(--soluk)}
.serit-kutu b{display:block;font:900 20px/1.2 var(--baslik);color:var(--murekkep);margin:5px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.serit-kutu span{display:block;font-size:12.5px;color:var(--metin);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.serit-kutu.kirmizi{border-left-color:var(--kirmizi)}.serit-kutu.kirmizi span{color:var(--kirmizi);font-weight:700}
.serit-kutu.uyari{border-left-color:var(--sari)}
.serit-kutu.yesil{border-left-color:var(--yesil)}
.serit-kutu.mavi{border-left-color:var(--levha)}
.evrak-yuklendi{display:block;font-size:12px;color:var(--turuncu);font-weight:700}
.kayit-onay{position:absolute;inset:0;z-index:5;background:rgba(17,20,23,.45);display:grid;place-items:center;padding:16px;border-radius:inherit}
.kayit-onay-ic{background:var(--panel);border-radius:12px;padding:20px;width:min(520px,100%);max-height:100%;overflow:auto;box-shadow:0 20px 50px -20px rgba(0,0,0,.5);display:grid;gap:12px}
.kayit-onay-ic h3{font-size:20px}
.kayit-onay-tablo{display:grid;border:1px solid var(--cizgi);border-radius:9px;overflow:hidden}
.kayit-onay-tablo div{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;font-size:14px}
.kayit-onay-tablo div:nth-child(odd){background:var(--panel-2)}
.kayit-onay-tablo b{color:var(--murekkep);font-family:var(--mono);text-align:right}
.kayit-onay-eksik{font-size:13.5px;color:var(--turuncu)}
.kayit-onay-tamam{display:flex;gap:6px;align-items:center;font-size:14px;color:var(--yesil);font-weight:700}
.kayit-onay-dugme{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.pencere{position:relative}
.foto-cek{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:start}
.foto-onizle{width:150px;height:190px;border-radius:10px;background:var(--panel-2);border:1px solid var(--cizgi);display:grid;place-items:center;align-content:center;gap:6px;color:var(--soluk);overflow:hidden}
.foto-onizle img{width:100%;height:100%;object-fit:cover}
.foto-kural{display:grid;gap:6px}
.foto-kural label{display:flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}
.foto-kural input{width:18px;height:18px;accent-color:var(--levha)}
@media (max-width:760px){
  .dosya-serit{grid-template-columns:1fr 1fr}
  .profil-foto{width:60px;height:76px}
  .foto-cek{grid-template-columns:1fr}
  .foto-onizle{margin:0 auto}
}
@media (max-width:760px){
  .profil-bas{display:grid;grid-template-columns:auto 1fr;gap:12px 14px;align-items:start}
  .profil-bas .sag{grid-column:1/-1;margin-left:0}
  .profil-bas h2{font-size:24px}
}

/* ---------- verileriniz ve güvenlik ---------- */
.guven-kahraman{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:center;padding:26px 28px;background:var(--levha);color:#fff;border-radius:16px;box-shadow:inset 0 0 0 5px var(--levha),inset 0 0 0 7px #fff}
.guven-kahraman small{font:800 12.5px/1 var(--baslik);letter-spacing:.12em;text-transform:uppercase;color:var(--sari)}
.guven-kahraman h2{color:#fff;font-size:clamp(24px,4vw,34px);font-weight:900;margin:8px 0 10px}
.guven-kahraman p{opacity:.93;font-size:15px;line-height:1.5}
.guven-not{margin-top:10px;font-size:13px!important;opacity:.8!important}
.guven-katman{display:grid;gap:6px}
.guven-katman div{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.55);border-radius:9px;padding:9px 12px;margin-left:calc(var(--n) * 14px)}
.guven-katman b{display:block;font:800 14.5px/1.2 var(--baslik)}
.guven-katman small{font:600 12px/1.2 var(--govde);letter-spacing:0;text-transform:none;color:#fff;opacity:.8}
@media (max-width:760px){
  .guven-kahraman{grid-template-columns:1fr;padding:22px 20px}
  .guven-katman div{margin-left:calc(var(--n) * 8px)}
}
/* konu anlatımı */
.og-basliklar{list-style:none;margin:10px 0!important;display:grid!important;gap:4px!important}
.og-basliklar button{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:8px 10px;border-radius:8px;background:var(--panel-2);font-size:14px;color:var(--murekkep)}
.og-basliklar button:hover{background:var(--levha-acik)}
.og-basliklar button span{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1.5px solid var(--cizgi);font:800 12px/1 var(--mono);color:var(--soluk)}
.og-basliklar button.okundu span{background:var(--yesil);border-color:var(--yesil);color:#fff}
.og-ders h3{font-size:22px;margin-bottom:12px}
.og-ders p{font-size:15.5px;line-height:1.65;margin-bottom:12px;color:var(--metin)}
.og-video{margin-bottom:14px}
.og-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px;background:#000;display:block}
.og-video small{display:block;font-size:12.5px;color:var(--soluk);margin-top:4px}
.og-akilda{background:var(--sari-acik);border-left:4px solid var(--sari);border-radius:0 10px 10px 0;padding:12px 16px;margin:6px 0 12px}
.og-akilda b{font-family:var(--baslik);font-size:15px;color:var(--murekkep)}
.og-akilda ul{margin:6px 0 0 18px;display:grid;gap:4px;font-size:14.5px}
.og-kaynak{font-size:12.5px!important;color:var(--soluk)!important}
.og-kaynak a{color:var(--levha);text-decoration:underline}
.og-degerlendir{border-color:var(--sari)}
.og-yildiz{display:flex;gap:6px;margin:4px 0 10px}
.og-yildiz button{font-size:34px;line-height:1;color:var(--cizgi);padding:0 2px}
.og-yildiz button.secili{color:var(--sari)}
.og-degerlendir textarea{width:100%;margin-bottom:10px;font-size:14.5px}
.og-videolar{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:14px}
.og-video{margin:0}
.og-video-kapak{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000;padding:0}
.og-video-kapak img{width:100%;height:100%;object-fit:cover;display:block;opacity:.88}
.og-video-kapak:hover img{opacity:1}
.og-oynat{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:var(--kirmizi);color:#fff;display:grid;place-items:center;font-size:22px;padding-left:4px;box-shadow:0 6px 20px rgba(0,0,0,.35)}
.soru-aciklama{background:var(--levha-acik);border-radius:9px;padding:10px 12px;font-size:14px;line-height:1.5;margin:8px 0 4px;color:var(--murekkep)}
.soru-aciklama small{display:block;color:var(--soluk);font-size:12px;margin-top:4px}
/* gerçek kurs hesabı: e-posta girişi, kurs açma, davet */
.giris-eposta{display:grid;gap:10px;margin-top:6px}
.giris-eposta label{display:grid;gap:4px;font-family:var(--baslik);font-weight:800;font-size:14px}
.giris-eposta label[hidden]{display:none}
.giris-eposta input:not([type=checkbox]){height:46px;border-radius:8px;border:0;padding:0 14px;font:16px var(--govde,inherit);color:#111;background:#fff}
.giris-eposta input:focus-visible{outline:3px solid var(--sari);outline-offset:2px}
.giris-eposta .dg-koyu{height:48px;background:#111;justify-content:center;margin-top:4px}
.giris-onay{display:flex!important;grid-template-columns:none;gap:10px;align-items:flex-start;font-family:inherit!important;font-weight:400!important;font-size:13px!important;opacity:.92}
.giris-onay input{width:18px;height:18px;margin-top:2px;flex:none}
.giris-baglar{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-size:14px}
.giris-baglar button{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.giris-ornek{margin-top:18px;border-top:1px solid rgba(255,255,255,.3);padding-top:12px}
.giris-ornek summary{cursor:pointer;font-family:var(--baslik);font-weight:800;font-size:14px;opacity:.9}
.bulut-durum{display:inline-block;margin-left:10px;font-size:12px;color:var(--soluk);font-weight:600}
.bulut-durum.tamam::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#2e8b57;margin-right:5px;vertical-align:1px}
.bulut-durum.uyari{color:#a86200}
.bulut-durum.hata{color:#c0392b}
/* öğrenci paneli linki (öğrenci dosyası) */
.panel-serit{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:-4px 0 16px;padding:12px 16px;border:1.5px dashed var(--cizgi);border-radius:10px;background:var(--panel)}
.panel-serit>span:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}
.panel-serit>span:first-child .ik{grid-row:1/3;width:22px;height:22px;color:var(--levha)}
.panel-serit b{font-family:var(--baslik);color:var(--murekkep)}
.panel-serit small{color:var(--soluk);font-size:13px}
/* öğrencinin kendi telefonundaki kabuk */
.ogr-kabuk{min-height:100vh;background:var(--zemin)}
.ogr-ust{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--levha);color:#fff;box-shadow:0 1px 0 rgba(0,0,0,.15)}
.ogr-ust .logo-isaret{width:28px;height:28px;flex:none}
.ogr-ust span{display:grid;line-height:1.15;min-width:0}
.ogr-ust b{font-family:var(--baslik);font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ogr-ust small{font-size:12px;opacity:.85}
.ogr-cikis{margin-left:auto;color:#fff;border:1.5px solid rgba(255,255,255,.8);border-radius:7px;padding:4px 12px;font-weight:700;font-size:13px}
.ogr-icerik{max-width:640px;margin:0 auto;padding:16px 16px 96px}
.konu-sec{gap:6px;margin-bottom:12px}
.konu-sec label span{font-size:13px;padding:6px 10px}
/* resmî form: eksik bilgiler */
.eksik-alan{border:1.5px solid var(--sari);background:#fff8e1;border-radius:10px;padding:10px 14px;margin-bottom:12px}
.eksik-alan summary{cursor:pointer;font-weight:700;color:var(--murekkep)}
.eksik-alan .form-izgara{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
/* deneme direksiyon sınavı (EK-3/EK-4) */
.dn-durum{position:sticky;top:-1px;z-index:2;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;background:var(--panel);padding:8px 0 10px;border-bottom:1px solid var(--cizgi);margin-bottom:6px}
.dn-sayac{font-weight:700;font-size:13px;padding:3px 9px;border-radius:6px;color:#111}
.dn-sayac.dn-m{background:#9fd3ec}.dn-sayac.dn-s{background:#f5c46b}.dn-sayac.dn-k{background:#ef8a80}
.dn-kaldi{color:var(--kirmizi);font-size:14px}.dn-devam{color:var(--yesil);font-size:14px}
.dn-liste{list-style:none;margin:0;padding:0;max-height:54vh;overflow:auto}
.dn-bas{font-family:var(--baslik);font-weight:800;color:#b00000;font-size:13.5px;padding:12px 0 4px;border-bottom:1px solid var(--cizgi)}
.dn-m{display:flex;gap:10px;align-items:flex-start;padding:9px 4px;border-bottom:1px solid var(--cizgi-2,#eee);cursor:pointer;font-size:14px;line-height:1.35}
.dn-m:hover{background:var(--zemin)}.dn-m.secili{background:#fff1f0}
.dn-renk{flex:none;width:30px;height:22px;border-radius:5px;display:flex;gap:2px;padding:2px;border:2px solid transparent}
.dn-renk.dn-m{background:#9fd3ec}.dn-renk.dn-k{background:#ef8a80}.dn-renk.dn-s{background:#f5c46b}
.dn-renk i{flex:1;border-radius:3px;background:rgba(255,255,255,.55)}
.dn-m.secili .dn-renk{border-color:#111}.dn-m.secili .dn-renk:not(.dn-s)::after{content:'✕';margin:auto;font-weight:900;font-size:13px;color:#111}
.dn-m[data-n="1"] .dn-renk.dn-s i:first-child,.dn-m[data-n="2"] .dn-renk.dn-s i{background:#111}
.dn-metin b{color:var(--murekkep)}
/* direksiyon sınavı hazırlık */
.dir-madde{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.dir-madde li{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.45}
.dir-madde li .dn-renk{flex:none;margin-top:3px}
.dir-madde li.dir-hata{background:color-mix(in srgb,var(--kirmizi) 8%,transparent);border-radius:6px;padding:4px 6px}
.dir-adim{margin:6px 0 0 18px;display:grid;gap:6px;font-size:14.5px;line-height:1.5}
.dir-sema{margin:12px 0 0}
.dir-madde .dn-renk{width:14px;height:14px;border-radius:4px;padding:0}
/* ikaz lambaları */
.ikaz-renk{display:grid;gap:4px;font-size:13px;margin-bottom:12px}.ikaz-renk span{display:flex;gap:6px;align-items:baseline}.ikaz-renk i{width:10px;height:10px;border-radius:50%;flex:none;transform:translateY(1px)}
.ikaz-panel{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:8px;background:#15171b;border-radius:14px;padding:12px}
.ikaz-panel button{background:transparent;border:2px solid transparent;border-radius:10px;padding:6px;display:grid;place-items:center;cursor:pointer}
.ikaz-panel button:hover,.ikaz-panel button.secili{border-color:#ffffff55;background:#ffffff10}
.ikaz-panel button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ikaz-lamba{display:inline-grid;place-items:center;width:44px;height:44px}.ikaz-lamba svg{width:100%;height:100%;filter:drop-shadow(0 0 4px currentColor)}
.ikaz-bilgi{display:flex;gap:14px;align-items:flex-start;margin-top:12px;padding:12px;border:1px solid var(--cizgi);border-radius:12px}
.ikaz-bilgi .ikaz-lamba{background:#15171b;border-radius:12px;padding:10px;flex:none}.ikaz-bilgi>div>b{display:block;font-size:17px;color:var(--murekkep)}.ikaz-bilgi p{font-size:14px;margin-top:6px}
/* tehlike algısı */
.th-sahne{position:relative;width:min(100%,300px,31vh);aspect-ratio:20/40;margin:4px auto 0;border-radius:12px;overflow:hidden;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}
.th-sahne:focus-visible{outline:3px solid var(--levha);outline-offset:2px}
.th-sahne svg{width:100%;height:100%;display:block}
.th-isaret{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:#e0362c;color:#fff;font:900 22px/34px system-ui,sans-serif;text-align:center;animation:th-pop .5s ease-out}
@keyframes th-pop{from{transform:scale(1.8);opacity:.4}to{transform:scale(1);opacity:1}}
.th-cubuk{height:4px;background:var(--cizgi-2,#e6e6e6);border-radius:2px;width:min(100%,300px,31vh);margin:6px auto 0}.th-cubuk i{display:block;height:100%;background:var(--levha);border-radius:2px;width:0}
@media (prefers-reduced-motion: reduce){.th-isaret{animation:none}}
/* araç tekniği canlandırmaları */
.motor-zaman{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}
.motor-zaman button{border:1px solid var(--cizgi);background:var(--panel,#fff);border-radius:8px;padding:6px 4px;font-size:12.5px;cursor:pointer;color:var(--murekkep)}
.motor-zaman button.secili{background:var(--murekkep);color:#fff;border-color:var(--murekkep)}
.db-gosterge{display:flex;gap:18px;justify-content:center;font-size:14px}.db-gosterge b{font-family:var(--baslik);font-size:20px;color:var(--murekkep)}
.db-surgu{display:block;font-size:14px;font-weight:600;color:var(--murekkep);margin-top:10px}.db-surgu small{font-weight:400;color:var(--soluk);margin-left:6px}.db-surgu input{width:100%;margin-top:4px;accent-color:var(--levha)}
/* denetim modu */
.dn-kontrol{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:4px;font-size:13.5px}.dn-kontrol li{display:flex;gap:6px;align-items:center}
.dn-oz{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:6px}
.dn-oz li{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--cizgi);border-radius:10px;font-size:14px}
.dn-oz li span{flex:1}.dn-oz li small{display:block;color:var(--soluk);font-size:12.5px}
.dn-oz li>button[data-dn-isaret]{flex:none;width:26px;height:26px;border-radius:7px;border:2px solid var(--cizgi);background:var(--panel,#fff);font-weight:800;cursor:pointer;color:#fff}
.dn-oz li.ok>button[data-dn-isaret]{background:var(--yesil);border-color:var(--yesil)}.dn-oz li.no{border-color:var(--kirmizi)}.dn-oz li.no>button[data-dn-isaret]{background:var(--kirmizi);border-color:var(--kirmizi)}
.dn-oz li>button[data-dn-isaret]:disabled{cursor:default;opacity:.9}

/* ---------- öğrenci paneli (modüler) ---------- */
.portal-og{max-width:520px;margin:0 auto;padding:4px 16px calc(100px + env(safe-area-inset-bottom))}
.portal-og .kart{border:1px solid var(--cizgi-2);border-radius:16px;background:var(--panel);box-shadow:0 1px 2px rgba(17,20,23,.04);margin-bottom:10px}
.portal-og .og-kart{padding:16px}
.portal-og .dg-hafif{text-decoration:none}
.portal-og .og-bas{margin-bottom:12px}
.portal-og .og-bas small{font-size:12px}
.portal-og .og-bas b{font-size:17px}
.portal-og .og-not{font-size:12.5px;line-height:1.45;padding:0;margin-top:10px}
.og-orta{text-align:center}
.og-onizleme{display:flex;align-items:center;gap:8px;margin:2px 0 14px;padding:6px 6px 6px 12px;border-radius:12px;background:var(--levha-acik);color:var(--levha-koyu);font-size:12.5px;font-weight:700}
.og-onizleme .isaret{flex:none}
.og-onizleme select{margin-left:auto;width:auto;max-width:170px;height:32px;font-size:12.5px;border-radius:8px}
.og-ust{display:flex;align-items:center;gap:12px;margin:6px 0 4px}
.og-ust .kisi-foto{width:46px;height:46px;border-radius:50%}
.og-ust small{display:block;color:var(--soluk);font-size:13px}
.og-ust h2{font-size:26px;font-weight:900;line-height:1.1}
.og-asama{margin-left:auto;padding:5px 10px;border-radius:999px;background:var(--levha-acik);color:var(--levha);font:800 12px/1.2 var(--baslik);white-space:nowrap}
.og-ust-kucuk{display:block;margin:6px 0 14px}
.og-ust-kucuk h2{font-size:24px}
.og-yol{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:14px 0 18px}
.og-yol li{min-width:0}
.og-yol i{display:block;height:6px;border-radius:3px;background:var(--cizgi-2)}
.og-yol li.gecti i{background:var(--yesil)}
.og-yol li.simdi i{background:var(--levha)}
.og-yol span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* sıradaki iş */
.og-sira{display:grid;grid-template-columns:1fr auto;column-gap:12px;align-items:start;padding:18px;border-radius:18px;background:var(--levha);color:#fff;box-shadow:0 10px 24px -14px rgba(10,77,162,.7)}
.og-sira>small{grid-column:1;font-size:12.5px;font-weight:700;opacity:.85}
.og-sira-zaman{grid-column:1;display:block;font:900 28px/1.1 var(--baslik);margin:4px 0 6px;color:#fff}
.og-sira>p{grid-column:1;font-size:14px;line-height:1.4;opacity:.92}
.og-sira .arac-fig{grid-column:2;grid-row:1/span 3;width:112px;border-radius:12px;background:rgba(255,255,255,.14)}
.og-sira .arac-fig figcaption{display:none}
.og-sira-dg{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.og-sira-ikincil{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.28)}
.og-sira-ikincil:hover{background:rgba(255,255,255,.22)}
.og-sira-ana{background:var(--sari);color:#111;border-color:var(--sari)}
/* bölümler */
.og-grup{margin-top:22px}
.og-grup-bas{font:800 12.5px/1 var(--baslik);letter-spacing:.08em;text-transform:uppercase;color:var(--soluk);margin:0 2px 10px}
.og-isler{list-style:none;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;overflow:hidden}
.og-is{display:flex;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid var(--cizgi-2)}
.og-is:first-child{border-top:0}
.og-is>div{flex:1;min-width:0}
.og-is b{display:block;font-size:14.5px;color:var(--murekkep);line-height:1.3}
.og-is small{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px}
.og-is-dg{display:flex;gap:6px;flex:none}
.og-m-ik{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--panel-2);color:var(--murekkep)}
.og-m-ik .ik{width:18px;height:18px}
.og-is.kirmizi .og-m-ik{background:var(--kirmizi-acik);color:var(--kirmizi)}
.og-is.sari .og-m-ik,.og-modul-dikkat .og-m-ik{background:var(--sari-acik);color:#7a5200}
.og-is.mavi .og-m-ik{background:var(--levha-acik);color:var(--levha)}
.og-yolunda{display:flex;align-items:center;gap:8px;margin-top:16px;padding:12px 14px;border-radius:14px;background:var(--yesil-acik);color:var(--yesil);font-size:14px;font-weight:700}
.portal-og .og-degerlendir{background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;padding:14px 16px;margin-bottom:10px}
.og-deg-ust b{display:block;font-size:15px;color:var(--murekkep)}
.og-deg-ust small{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px}
.portal-og .og-yildiz{margin:8px 0 0}
.portal-og .og-yildiz button{font-size:32px}
.og-degerlendir:not([data-puan]) .og-deg-ek{display:none}
.og-deg-ek{margin-top:10px}
.og-deg-alt{display:flex;align-items:center;gap:10px}
.og-deg-alt small{flex:1;font-size:12px;color:var(--soluk)}
.og-ozet-karolar{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.og-ozet-karo{text-align:left;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:14px;padding:13px 14px;display:flex;flex-direction:column;min-width:0;transition:border-color .12s}
.og-ozet-karo:hover,.og-karo:hover:not(:disabled){border-color:var(--levha)}
.og-ozet-karo small{font-size:12px;font-weight:700;color:var(--soluk)}
.og-ozet-karo b{font:900 22px/1.15 var(--baslik);color:var(--murekkep);margin:4px 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.og-ozet-karo b i,.og-sayac b span{font-style:normal;font-size:14px;color:var(--soluk);font-weight:700}
.og-ozet-karo>span{font-size:12px;color:var(--soluk)}
.og-ozet-karo .ilerleme{min-width:0}
.og-kur{display:flex;align-items:center;gap:12px;margin-top:22px;padding:12px 14px;border:1px dashed var(--cizgi);border-radius:14px}
.og-kur img{width:40px;height:40px;border-radius:10px;flex:none}
.og-kur>div{flex:1;min-width:0}
.og-kur b{display:block;font-size:14px;color:var(--murekkep)}
.og-kur small{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px;line-height:1.35}
/* açılır modül */
.og-modul{background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;margin-bottom:10px;overflow:hidden}
.og-modul>summary{display:flex;align-items:center;gap:12px;padding:13px 14px;cursor:pointer;list-style:none}
.og-modul>summary::-webkit-details-marker{display:none}
.og-modul>summary:hover{background:var(--panel-2)}
.og-m-yazi{flex:1;min-width:0}
.og-m-yazi b{display:block;font-size:15px;color:var(--murekkep);line-height:1.25}
.og-m-yazi small{display:block;font-size:12.5px;color:var(--soluk);margin-top:2px;line-height:1.35}
.og-m-ok{flex:none;color:var(--soluk);display:grid;transition:transform .15s}
.og-m-ok .ik{width:18px;height:18px}
.og-modul[open]>summary .og-m-ok{transform:rotate(180deg)}
.og-m-govde{padding:14px;border-top:1px solid var(--cizgi-2)}
.og-modul-dikkat{border-color:#e8c45a}
/* dersler */
.og-sayac{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.og-sayac>div{background:var(--panel);border:1px solid var(--cizgi-2);border-radius:14px;padding:12px 14px}
.og-sayac small{display:block;font-size:12px;font-weight:700;color:var(--soluk)}
.og-sayac b{display:block;font:900 22px/1.15 var(--baslik);color:var(--murekkep);margin:2px 0 8px}
.og-genis{width:100%;height:46px;border-radius:12px;margin-bottom:12px;font-size:15px}
/* ders alınamıyorsa: nedeni ve kursa yazma */
.og-ders-engel{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:12px 14px;border-radius:14px;background:#fff;color:var(--metin);font-size:14px;line-height:1.4}
.og-ders-engel span{flex:1;min-width:0}
.og-ders-engel .dg{flex:none;min-height:40px}
.og-olaylar{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.portal-og .og-olay{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--panel-2);border-left:0;margin:0}
.og-zaman{flex:none;min-width:54px}
.og-zaman small{display:block;font-size:11.5px;font-weight:700;color:var(--soluk)}
.og-zaman b{font-size:16px;color:var(--levha)}
.og-olay.og-teorik .og-zaman b{color:#8a5d00}
.og-olay.og-sinav .og-zaman b{color:var(--kirmizi)}
.og-olay-ad{flex:1;min-width:0}
.og-olay-ad b{display:block;font-size:14.5px;color:var(--murekkep)}
.og-olay-ad small{display:block;font-size:12.5px;color:var(--soluk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.og-daha>summary{cursor:pointer;list-style:none;color:var(--levha);font-weight:700;font-size:13.5px;padding:10px 2px 4px}
.og-daha>summary::-webkit-details-marker{display:none}
.og-daha[open]>summary{margin-bottom:6px}
.og-bos{font-size:14px;color:var(--soluk);padding:4px 0}
.og-konu-dg{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.portal-og .og-konu:first-child{border-top:0;padding-top:0}
.og-defter{list-style:none}
.og-defter-satir{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--cizgi-2)}
.og-defter-satir:first-child{border-top:0}
.og-defter-satir b{display:block;font-size:14.5px;color:var(--murekkep)}
.og-defter-satir small{display:block;font-size:12.5px;color:var(--soluk)}
.og-defter-dg{display:flex;gap:6px;flex:none}
.portal-og .og-ozet{margin-bottom:12px}
.portal-og .og-ozet div{border-radius:12px;border-color:var(--cizgi-2);background:var(--panel-2)}
/* sınav */
.og-satir{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;margin-bottom:10px}
.og-satir>div{flex:1;min-width:0}
.og-satir b{display:block;font-size:15px;color:var(--murekkep)}
.og-satir small{display:block;font-size:12.5px;color:var(--soluk)}
.og-satir-tamam .og-m-ik{background:var(--yesil-acik);color:var(--yesil)}
.og-deneme.kaldi{border-color:#f0b4ad}
.og-deneme.gecti{border-color:#a9d3b7}
.og-karolar{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 10px}
.og-karo{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;padding:14px;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:14px;min-width:0;transition:border-color .12s}
.og-karo b{font-size:15px;color:var(--murekkep)}
.og-karo small{font-size:12.5px;color:var(--soluk);line-height:1.35}
.og-karo-ik{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--levha-acik);color:var(--levha);margin-bottom:6px}
.og-karo-ik .ik{width:18px;height:18px}
.og-karo:disabled{opacity:.5;cursor:default}
.og-karo-ana{grid-column:1/-1;background:var(--levha);border-color:var(--levha)}
.og-karo-ana b{color:#fff;font-size:17px}
.og-karo-ana small{color:rgba(255,255,255,.82)}
.og-karo-ana .og-karo-ik{background:rgba(255,255,255,.16);color:#fff}
.og-konu-liste{display:grid;gap:8px}
/* ödeme */
.og-para{padding:18px!important}
.og-para>small{font-size:12.5px;font-weight:700;color:var(--soluk)}
.og-para-tutar{display:block;font:900 34px/1.1 var(--baslik)!important;color:var(--murekkep);margin:2px 0 12px}
.og-para-tutar.tamam{color:var(--yesil)}
.og-para-alt{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-size:12.5px;color:var(--soluk)}
.og-para-alt b{color:var(--murekkep);font-size:13px}
.og-sonraki{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px;border-radius:12px;background:var(--panel-2)}
.og-sonraki>div{flex:1;min-width:0}
.og-sonraki b{display:block;font-size:14.5px;color:var(--murekkep)}
.og-sonraki small{display:block;font-size:12.5px;color:var(--soluk)}
.og-sonraki.gecikti{background:var(--kirmizi-acik)}
.og-sonraki.gecikti small{color:var(--kirmizi);font-weight:700}
.og-tamam{margin-top:14px;color:var(--yesil);font-weight:700}
.og-taksit{display:grid;grid-template-columns:28px 1fr auto auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--cizgi-2)}
.og-taksit:first-child{border-top:0;padding-top:0}
.og-taksit .no{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);font:800 12px/1 var(--baslik);color:var(--soluk)}
.og-taksit b{display:block;font-size:14.5px;color:var(--murekkep)}
.og-taksit small{display:block;font-size:12.5px;color:var(--soluk)}
.og-taksit .sayi{font-size:14px;color:var(--murekkep)}
.og-taksit.odendi .sayi,.og-taksit.odendi b{color:var(--soluk)}
.og-taksit.gecikti .no{background:var(--kirmizi-acik);color:var(--kirmizi)}
.og-taksit.gecikti small{color:var(--kirmizi);font-weight:700}
.og-durum{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--yesil-acik);color:var(--yesil)}
.og-durum .ik{width:16px;height:16px;stroke-width:3}
.og-iban-kart .og-iban{font-size:13.5px!important}
/* alt menü */
.og-sekme{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:center;gap:2px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:rgba(251,251,248,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--cizgi)}
.og-sekme button{flex:1;max-width:100px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;border-radius:12px;color:#676c75;font:700 11.5px/1.1 var(--baslik)}
.og-sekme .ik{width:22px;height:22px;box-sizing:content-box;padding:3px 14px;border-radius:999px;transition:background .15s}
.og-sekme button.secili{color:var(--levha)}
.og-sekme button.secili .ik{background:var(--levha-acik)}
@media (min-width:760px){
  .og-sekme{left:50%;right:auto;transform:translateX(-50%);bottom:14px;width:520px;border:1px solid var(--cizgi);border-radius:18px;box-shadow:0 14px 34px -16px rgba(0,0,0,.35);padding-bottom:6px}
}
@media (max-width:380px){
  .og-sira-zaman{font-size:24px}
  .og-sira .arac-fig{width:92px}
  .og-ozet-karo b,.og-sayac b{font-size:19px}
}

/* ---------- öğrenci giriş ekranları ---------- */
.og-giris{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:20px 16px 28px;background:var(--zemin)}
.og-giris-ust{width:min(420px,100%);margin:8px 0 18px}
.og-giris-ust .logo{color:var(--murekkep)}
.og-giris-ust .logo small{color:var(--soluk);opacity:1}

.og-giris-kart{width:min(420px,100%);background:var(--panel);border:1px solid var(--cizgi-2);border-radius:20px;box-shadow:0 18px 40px -24px rgba(17,20,23,.35);padding:24px 22px 22px}
.og-giris-bas h1{font-size:26px;font-weight:900;line-height:1.15;color:var(--murekkep)}
.og-giris-bas p{margin-top:6px;font-size:15px;line-height:1.45;color:var(--metin)}
.og-giris-not{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:12px 14px;border-radius:12px;background:var(--sari-acik);color:#5c4100;font-size:14px;line-height:1.4}
.og-giris-not .ik{width:18px;height:18px;flex:none;margin-top:1px}
.og-giris-form{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:20px}
.pencere .og-giris-form{margin-top:0}
.og-alan{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0}
.og-alan-et{font:800 14px/1.2 var(--baslik);color:var(--murekkep)}
.og-girdi{display:flex;align-items:center;gap:10px;height:52px;padding:0 6px 0 14px;border:1.5px solid var(--cizgi);border-radius:12px;background:#fff;transition:border-color .12s,box-shadow .12s}
.og-girdi:focus-within{border-color:var(--levha);box-shadow:0 0 0 3px var(--levha-acik)}
.og-girdi>.ik{width:20px;height:20px;color:var(--soluk);flex:none}
.og-girdi input{flex:1;min-width:0;width:auto;height:100%;border:0;background:none;font:17px var(--govde);color:var(--murekkep);outline:0}
.og-girdi input::placeholder{color:#a3a7ad}
.og-goz{flex:none;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:var(--soluk)}
.og-goz:hover{background:var(--panel-2)}
.og-goz.acik{color:var(--levha)}
.og-goz .ik{width:20px;height:20px}
.og-bag{color:var(--levha);font-weight:700;font-size:14px;padding:4px 0}
.og-bag:hover{text-decoration:underline;text-underline-offset:3px}
.og-unut{justify-self:end;margin:-6px 0 -2px}
.og-giris-dg{height:52px;border-radius:12px;font-size:16px;justify-content:center;width:100%}
.og-giris-dg:disabled{opacity:.45;cursor:not-allowed}
.og-giris-ipucu{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding-top:16px;border-top:1px solid var(--cizgi-2);font-size:13.5px;line-height:1.45;color:var(--soluk)}
.og-giris-ipucu .ik{width:18px;height:18px;flex:none;color:var(--yesil);margin-top:1px}
.og-giris-alt{margin-top:18px;font-size:14px;color:var(--soluk)}
.og-kural{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;margin:-4px 0 2px;font-size:13.5px;color:var(--soluk)}
.og-kural li{display:flex;align-items:center;gap:6px}
.og-kural .ik{width:16px;height:16px;padding:2px;border-radius:50%;background:var(--cizgi-2);color:#fff;stroke-width:3;box-sizing:content-box;transition:background .15s}
.og-kural li.ok{color:var(--yesil);font-weight:700}
.og-kural li.ok .ik{background:var(--yesil)}
.og-adimlar{list-style:none;display:flex;gap:8px;margin-bottom:18px}
.og-adimlar li{display:flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border-radius:999px;background:var(--panel-2);font:800 12.5px/1 var(--baslik);color:var(--soluk)}
.og-adimlar b,.og-adimlar .ik{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--cizgi-2);color:var(--soluk);font-size:11px;box-sizing:border-box}
.og-adimlar li.ok{color:var(--yesil);background:var(--yesil-acik)}
.og-adimlar li.ok .ik{background:var(--yesil);color:#fff;padding:3px;stroke-width:3}
.og-adimlar li.simdi{color:var(--levha);background:var(--levha-acik)}
.og-adimlar li.simdi b{background:var(--levha);color:#fff}
/* öğrenci kabuğunun üst çubuğu */
.ogr-ust{background:rgba(251,251,248,.96);color:var(--murekkep);border-bottom:1px solid var(--cizgi);box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

.ogr-ust small{color:var(--soluk);opacity:1}
.ogr-ust>span{flex:1}
.ogr-dg{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:48px;padding:4px 6px;border-radius:10px;color:var(--metin);font:700 11px/1 var(--baslik)}
.ogr-dg:hover{background:var(--panel-2)}
.ogr-dg .ik{width:20px;height:20px}
.ogr-icerik{padding:12px 0 0}

/* ---------- öğretmen ekranı ---------- */
.eg-ders{background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;padding:14px;margin-bottom:10px}
.eg-ders.vurgu{border-color:var(--levha);box-shadow:0 0 0 3px var(--levha-acik)}
.eg-ders.kapali{background:var(--panel-2)}
.eg-ders-ust{display:flex;align-items:center;gap:12px}
.eg-ders-ust .og-zaman b{font-size:18px}
.eg-ders-ust .og-olay-ad{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}
.eg-ders-ust .og-olay-ad .kisi-foto{grid-row:1/3;width:36px;height:36px;border-radius:50%}
.eg-ders-ust .og-olay-ad b,.eg-ders-ust .og-olay-ad small{grid-column:2}
.eg-ders-ust .og-olay-ad:not(:has(.kisi-foto)){display:block}
.eg-bilgi{display:flex;gap:8px;align-items:flex-start;margin-top:10px;padding:9px 11px;border-radius:10px;background:var(--panel-2);font-size:13.5px;line-height:1.4;color:var(--metin)}
.eg-bilgi .ik{width:16px;height:16px;flex:none;margin-top:2px;color:var(--soluk)}
.eg-bilgi.mavi{background:var(--levha-acik);color:var(--levha-koyu)}
.eg-bilgi.mavi .ik{color:var(--levha)}
.eg-bilgi.sari{background:var(--sari-acik);color:#5c4100}
.eg-bilgi.sari .ik{color:#7a5200}
.eg-sure{display:block;margin-top:8px;font-size:12.5px;color:var(--soluk)}
.eg-sure.kisa{color:var(--kirmizi);font-weight:700}
.eg-dg{display:flex;gap:8px;margin-top:12px}
.eg-dg .dg{height:44px;border-radius:12px}
.eg-dg .dg-ana{flex:1;justify-content:center}
.eg-diger{width:44px;padding:0;justify-content:center;flex:none}
.eg-diger .ik{width:20px;height:20px}
.eg-arac{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px}
.eg-arac .arac-fig{width:84px;border-radius:10px}
.eg-arac b{display:block;font-size:14.5px;color:var(--murekkep)}
.eg-arac small{display:block;font-size:12.5px;color:var(--soluk)}
.eg-bos>b{display:block;font:800 17px/1.2 var(--baslik);color:var(--murekkep)}
.eg-bos>p{font-size:14px;color:var(--soluk);margin-top:4px}
.eg-nasil{list-style:none;display:grid;gap:10px;margin:16px 0 4px}
.eg-nasil li{display:flex;gap:12px;align-items:flex-start}
.eg-nasil li>span{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--levha-acik);color:var(--levha);font:800 13px/1 var(--baslik)}
.eg-nasil b{display:block;font-size:14.5px;color:var(--murekkep)}
.eg-nasil small{display:block;font-size:13px;color:var(--soluk);line-height:1.4}
.eg-gunler{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:12px}
.eg-gunler button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border-radius:12px;background:var(--panel);border:1px solid var(--cizgi-2);min-width:0}
.eg-gunler small{font-size:10.5px;font-weight:700;color:var(--soluk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.eg-gunler b{font:900 18px/1.1 var(--baslik);color:var(--murekkep)}
.eg-gunler i{font-style:normal;font:800 11px/1 var(--baslik);color:var(--levha);background:var(--levha-acik);border-radius:999px;padding:3px 7px;margin-top:2px}
.eg-gunler button.bos i{background:none;color:var(--soluk)}
.eg-gunler button.secili{background:var(--levha);border-color:var(--levha)}
.eg-gunler button.secili small,.eg-gunler button.secili b{color:#fff}
.eg-gunler button.secili i{background:rgba(255,255,255,.2);color:#fff}
.eg-ogr-ust{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.eg-ogr-ust .kisi-foto{width:40px;height:40px;border-radius:50%}
.eg-ogr-ust>div{flex:1;min-width:0}
.eg-ogr-ust b{display:block;font-size:15.5px;color:var(--murekkep)}
.eg-ogr-ust small{display:block;font-size:12.5px;color:var(--soluk)}
.eg-ogr-sayi{font:700 14px/1 var(--baslik);color:var(--soluk)}
.eg-ogr-sayi b{font-size:22px;font-weight:900;color:var(--murekkep)}
.eg-ogr-bilgi{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:13px;color:var(--metin)}
.eg-ogr-bilgi span{display:flex;align-items:center;gap:5px}
.eg-ogr-bilgi .ik{width:15px;height:15px;color:var(--soluk)}
.eg-ogr-bilgi .iyi{color:var(--yesil)}.eg-ogr-bilgi .iyi .ik{color:var(--yesil)}
.eg-ogr-bilgi .kotu{color:var(--kirmizi)}.eg-ogr-bilgi .kotu .ik{color:var(--kirmizi)}
.og-sekme em{font-style:normal;display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;margin-left:2px;border-radius:999px;background:var(--kirmizi);color:#fff;font-size:10.5px}
/* ders bitirme penceresi */
.eg-adim{list-style:none;display:flex;gap:6px;margin-bottom:12px}
.eg-adim li{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 4px;border-radius:999px;background:var(--panel-2);font:800 12.5px/1 var(--baslik);color:var(--soluk);white-space:nowrap}
.eg-adim b{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--cizgi-2);font-size:11px}
.eg-adim li.simdi{background:var(--levha-acik);color:var(--levha)}
.eg-adim li.simdi b{background:var(--levha);color:#fff}
.eg-adim li.ok{background:var(--yesil-acik);color:var(--yesil)}
.eg-adim li.ok b{background:var(--yesil);color:#fff}
.eg-ders-bilgi{font-size:14.5px;color:var(--metin);margin-bottom:12px}
.eg-ders-bilgi b{color:var(--murekkep)}
.eg-imza-alt{display:flex;justify-content:flex-end;margin-top:6px}
.eg-neden{display:grid!important;gap:6px}
.eg-menu{display:grid;gap:4px}
.eg-menu-sat{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:12px;border-radius:12px;color:var(--murekkep)}
.eg-menu-sat:hover{background:var(--panel-2)}
.eg-menu-sat>.ik{width:22px;height:22px;flex:none;color:var(--levha)}
.eg-menu-sat b{display:block;font-size:15px}
.eg-menu-sat small{display:block;font-size:12.5px;color:var(--soluk)}

/* Ekip girişi (v105): tabela çerçevesi yerine öğrenci girişiyle aynı sade kart; tek vurgu rengi (levha mavisi) */
.giris{padding:28px 16px 32px;background:var(--zemin)}
.giris-levha{width:min(420px,100%);background:var(--panel);color:var(--metin);border:1px solid var(--cizgi-2);border-radius:22px;box-shadow:0 24px 48px -30px rgba(17,20,23,.4);padding:26px 22px 22px}
.giris-levha .logo{color:var(--murekkep);padding:0 0 4px}
.giris-levha .logo small{color:var(--soluk);opacity:1}

.giris-levha h1{color:var(--murekkep);font-size:26px;font-weight:900;line-height:1.15;margin-top:14px;letter-spacing:-.01em}
.giris-levha>p{color:var(--metin);opacity:1;font-size:15px;line-height:1.45;margin:6px 0 18px}
.giris-demo{grid-template-columns:auto 1fr auto;margin:14px 0 18px;padding:13px 16px;border:1px solid var(--cizgi-2);border-radius:14px;background:var(--panel-2);color:var(--murekkep);box-shadow:none}
.giris-demo b{font:700 16px/1.2 var(--baslik);grid-column:1/3}
.giris-demo small{grid-column:1/3;color:var(--soluk);font-size:13px}
.giris-demo span{grid-column:3;grid-row:1/3;font:700 20px/1 var(--baslik);color:var(--levha)}
.giris-demo:hover{background:var(--levha-acik);border-color:#c9d7ec}
.giris-demo:focus-visible{outline:3px solid var(--levha-acik);outline-offset:2px}
.giris-eposta{gap:14px}
.giris-eposta label{color:var(--murekkep);font-weight:700;font-size:14px;gap:6px}
.giris-eposta input:not([type=checkbox]){height:50px;border:1px solid var(--cizgi);border-radius:12px;background:#fff;color:var(--murekkep);transition:border-color .15s,box-shadow .15s}
.giris-eposta input:not([type=checkbox]):focus-visible{outline:0;border-color:var(--levha);box-shadow:0 0 0 4px var(--levha-acik)}
.giris-eposta .dg-koyu,.giris-pin .dg-koyu{height:52px;border-radius:12px;background:var(--levha);color:#fff;font-size:16px}
.giris-eposta .dg-koyu:hover,.giris-pin .dg-koyu:hover{background:var(--levha-koyu)}
.giris-onay{color:var(--metin);opacity:1}
.giris-baglar{gap:6px 20px;margin-top:14px}
.giris-baglar button{color:var(--levha);text-decoration:none;font-weight:700}
.giris-baglar button:hover{text-decoration:underline;text-underline-offset:3px}
.giris-ornek{border-top:1px solid var(--cizgi-2);margin-top:20px;padding-top:14px}
.giris-ornek summary{color:var(--soluk);font-weight:700;opacity:1}
.giris-not{color:var(--soluk);opacity:1}
.giris-kisi{border:1px solid var(--cizgi);border-radius:12px;color:var(--murekkep);background:#fff}
.giris-kisi em{background:var(--panel-2);color:var(--metin)}
.giris-kisi.secili,.giris-kisi:hover{background:var(--levha-acik);border-color:#c9d7ec;color:var(--levha)}
.giris-kisi.secili em,.giris-kisi:hover em{background:#fff}
.giris-pin label{color:var(--murekkep)}
.giris-pin input{border:1px solid var(--cizgi);border-radius:12px}
.giris-geri{color:var(--soluk);font-weight:700}
.giris-geri:hover{background:transparent;color:var(--levha)}
/* Öğrenci sınav ekranı özeti (v105) */
.og-ozet-kutular{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0 0 18px}
.og-ozet-kutu{background:var(--panel);border:1px solid var(--cizgi-2);border-radius:16px;padding:12px 14px;display:grid;gap:2px;min-width:0}
.og-ozet-kutu small{font-size:12px;font-weight:700;color:var(--soluk);text-transform:uppercase;letter-spacing:.04em}
.og-ozet-kutu b{font:800 20px/1.2 var(--baslik);color:var(--murekkep)}
.og-ozet-kutu b i{font-style:normal;font-size:14px;color:var(--soluk);font-weight:700}
.og-ozet-kutu span{font-size:13px;color:var(--metin);overflow-wrap:anywhere}
.og-ozet-kutu.tamam{background:var(--yesil-acik);border-color:#cfe5d6}
.og-ozet-kutu.tamam b{color:var(--yesil)}

/* Mesajlar (v105): sohbet uygulaması düzeni; telefonda önce liste, dokununca konuşma */
.sayfa-mesajlar .sohbet{display:grid;grid-template-columns:340px 1fr;min-height:560px;background:var(--panel);border:1px solid var(--cizgi-2);border-radius:18px;overflow:hidden}
.sohbet-liste{border-right:1px solid var(--cizgi-2);overflow-y:auto;max-height:640px;background:var(--panel)}
.sohbet-liste a{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--cizgi-2);text-decoration:none;color:inherit;position:relative}
.sohbet-liste a:hover{background:var(--panel-2)}
.sohbet-liste a.secili{background:var(--levha-acik)}
.sohbet-av{width:44px;height:44px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font:800 15px/1 var(--baslik);letter-spacing:.02em}
.sohbet-sat{flex:1;min-width:0}
.sohbet-sat-ust{display:flex;align-items:baseline;gap:8px}
.sohbet-sat-ust b{font-size:15px;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.sohbet-sat-ust small{margin-left:auto;font-size:12px;color:var(--soluk);flex:none}
.sohbet-sat p{margin:2px 0 0;font-size:14px;color:var(--soluk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sohbet-liste a.yeni .sohbet-sat p{color:var(--murekkep);font-weight:600}
.sohbet-liste a.yeni .sohbet-sat-ust small{color:var(--yesil);font-weight:700}
.sohbet-nokta{width:10px;height:10px;border-radius:50%;background:var(--yesil);flex:none}
.sohbet-bos{padding:28px 20px;color:var(--soluk);font-size:14px;text-align:center}
.sohbet-pencere{display:flex;flex-direction:column;background:#efeae2;min-width:0}
.sohbet-ust{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--panel);border-bottom:1px solid var(--cizgi-2)}
.sohbet-ust b{display:block;color:var(--murekkep);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sohbet-ust small{display:block;color:var(--soluk);font-size:12.5px}
.sohbet-geri{display:none;width:36px;height:36px;border-radius:50%;place-items:center;color:var(--levha);flex:none}
.sohbet-geri .ik{width:22px;height:22px}
.sohbet-akis{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:6px;max-height:none}
.sohbet-akis .balon{max-width:78%;padding:8px 12px 6px;border-radius:12px 12px 12px 4px;background:#fff;color:var(--murekkep);font-size:15px;line-height:1.4;box-shadow:0 1px 1px rgba(0,0,0,.06);white-space:pre-line;overflow-wrap:anywhere;align-self:flex-start}
.sohbet-akis .balon.giden{background:#d9fdd3;border-radius:12px 12px 4px 12px;align-self:flex-end}
.sohbet-akis .balon small{display:flex;align-items:center;gap:4px;justify-content:flex-end;margin-top:2px;font-size:11px;color:var(--soluk)}
.sohbet-yaz{display:flex;gap:8px;padding:10px;background:var(--panel);border-top:1px solid var(--cizgi-2)}
.sohbet-yaz .girdi{flex:1;min-width:0;height:44px;border-radius:22px;padding:0 16px}
.sohbet-yaz .dg-wp{width:44px;height:44px;border-radius:50%;padding:0;justify-content:center;flex:none}
.sohbet-sec{flex:1;display:grid;place-items:center;align-content:center;gap:8px;color:var(--soluk)}
.sohbet-sec .ik{width:40px;height:40px;opacity:.5}
@media (max-width:900px){
  .sayfa-mesajlar .sohbet{grid-template-columns:1fr;min-height:0;border-radius:16px}
  .sohbet-liste{border-right:0;max-height:none}
  .sohbet .sohbet-pencere{display:none}
  .sohbet.acik .sohbet-liste{display:none}
  .sohbet.acik .sohbet-pencere{display:flex;height:calc(100dvh - 210px);min-height:420px}
  .sohbet-geri{display:grid}
}

/* Otomatik mesajlar (v105): telefonda taşma yok; içerik tam genişlik, düğmeler alta */
.oto .sablon{overflow-wrap:anywhere;white-space:pre-line}
.oto>div:nth-child(2){flex:1;min-width:0}
@media (max-width:760px){
  .oto{flex-wrap:wrap;padding:14px 16px;gap:10px 12px}
  .oto>div:nth-child(2){flex:1 1 calc(100% - 50px)}
  .oto .sag{flex:1 1 100%;margin-left:0;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;padding-left:46px}
  .oto .sag .anahtar{margin-left:auto}
  .liste .sag .rozet{white-space:normal;max-width:140px;text-align:right}
  .liste li>div[style*="flex:1"]{min-width:0}
}

/* Genel bakış (v105): mdSinyal bu ay sizin için */
.sinyal-ay{background:linear-gradient(135deg,#0a3f86,#0a4da2 55%,#1d5fb8);color:#fff;border-radius:20px;padding:22px 22px 18px;margin-bottom:18px;box-shadow:0 18px 40px -26px rgba(10,77,162,.8)}
.sinyal-ay-bas small{display:block;font:700 12.5px/1 var(--baslik);letter-spacing:.06em;text-transform:uppercase;opacity:.75}
.sinyal-ay-bas h3{font:800 clamp(20px,2.6vw,26px)/1.25 var(--baslik);margin:10px 0 6px;color:#fff;letter-spacing:-.01em}
.sinyal-ay-bas h3 em{font-style:normal;color:#ffd45a}
.sinyal-ay-bas p{margin:0;opacity:.85;font-size:14.5px}
.sinyal-ay-sayilar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.sinyal-ay-sayilar div{background:rgba(255,255,255,.1);border-radius:14px;padding:12px 14px;min-width:0}
.sinyal-ay-sayilar b{display:block;font:800 22px/1.1 var(--baslik);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sinyal-ay-sayilar span{display:block;font-size:12.5px;opacity:.8;margin-top:4px;line-height:1.3}
@media (max-width:760px){.sinyal-ay{padding:18px 16px 14px;border-radius:18px}.sinyal-ay-sayilar{grid-template-columns:repeat(2,minmax(0,1fr))}.sinyal-ay-sayilar b{font-size:19px}}

/* Alt sekme çubuğu (v105): iOS tarzı; yarı saydam, ince üst çizgi, seçili sekme yalnız renkle; ana ekran çubuğu payı */
@media (max-width:900px){
  .alt-menu{left:0;right:0;bottom:0;border-radius:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:0;background:rgba(251,251,248,.88);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);box-shadow:none;border-top:.5px solid rgba(17,20,23,.18)}
  .alt-menu a,.alt-menu button{color:#7d838b;background:none;border-radius:0;padding:4px 0 2px;gap:3px;font:600 10.5px/1.1 var(--govde);letter-spacing:.01em}
  .alt-menu .ik{width:25px;height:25px;stroke-width:1.8}
  .alt-menu .secili{background:none;color:var(--levha)}
  .alt-menu .secili .ik{stroke-width:2.2}
  .alt-yeni span{width:30px;height:30px;border-radius:50%;background:var(--levha);color:#fff;display:grid;place-items:center}
  .alt-yeni span .ik{width:18px;height:18px;stroke-width:2.6}
  body.tema-sade .alt-menu a,body.tema-sade .alt-menu button{color:#7d838b}
  body.tema-sade .alt-menu .secili{color:var(--levha)}
  .icerik{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
  .bildirimler{bottom:calc(76px + env(safe-area-inset-bottom))}
}
/* Öğretmen ve öğrenci sekme çubuğu: aynı iOS dili (hap vurgusu yok) */
.og-sekme{background:rgba(251,251,248,.88);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid rgba(17,20,23,.18)}
.og-sekme button{color:#676c75;font:600 10.5px/1.1 var(--govde);gap:3px}
.og-sekme button .ik{width:25px;height:25px;stroke-width:1.8;padding:0;background:none!important;border-radius:0}
.og-sekme button.secili{color:var(--levha)}
.og-sekme button.secili .ik{stroke-width:2.2}

/* Yeni sürüm şeridi (v106) */
.surum-serit{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom));z-index:60;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;background:#111417;color:#fff;border-radius:999px;box-shadow:0 12px 30px -10px rgba(0,0,0,.5);font:600 14px/1.2 var(--govde);max-width:calc(100% - 24px)}
.surum-serit button{background:var(--levha);color:#fff;border-radius:999px;padding:8px 14px;font:700 14px/1 var(--baslik)}

/* Ödemeler sekmesi: sade özet (kalan borç, sıradaki taksit, ilerleme, tek "Ödeme al") */
.odeme-ozet{padding:18px 20px 16px;display:grid;gap:14px;min-width:0}
.oo-ust{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px;align-items:stretch}
.oo-kalan,.oo-sonraki{display:flex;flex-direction:column;gap:3px;min-width:0}
.oo-kalan small,.oo-sonraki small{font:800 12px/1.2 var(--baslik);letter-spacing:.08em;text-transform:uppercase;color:var(--soluk)}
.oo-kalan b{font:900 40px/1.05 var(--baslik);color:var(--murekkep);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.oo-kalan.tamam b{color:var(--yesil)}
.oo-kalan span{font-size:13.5px;color:var(--metin)}
.oo-sonraki{border-left:4px solid var(--levha);background:var(--levha-acik);border-radius:0 8px 8px 0;padding:10px 12px}
.oo-sonraki b{font:900 24px/1.15 var(--baslik);color:var(--murekkep);font-variant-numeric:tabular-nums}
.oo-sonraki span{font-size:13.5px;color:var(--metin)}
.oo-sonraki.gecikti{border-left-color:var(--kirmizi);background:var(--kirmizi-acik)}
.oo-sonraki.gecikti small,.oo-sonraki.gecikti b,.oo-sonraki.gecikti span{color:var(--kirmizi)}
.oo-sonraki.gecikti span{font-weight:700}
.oo-sonraki.tamam{border-left-color:var(--yesil);background:var(--yesil-acik)}
.oo-ilerleme{display:grid;gap:6px}
.oo-ilerleme-yazi{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--metin)}
.oo-ilerleme-yazi b{color:var(--murekkep)}
.oo-ilerleme .ilerleme{height:10px;border-radius:5px}
.oo-uyari{display:flex;gap:8px;align-items:center;margin:0;font-size:14px;font-weight:700;color:var(--kirmizi)}
.dg.oo-al{width:100%;height:54px;font-size:18px;border-radius:10px}
.dg.oo-al .ik{width:22px;height:22px}
.oo-menu{border-top:1px solid var(--cizgi-2);padding-top:10px}
.oo-menu>summary{cursor:pointer;list-style:none;font:800 14px/1.2 var(--baslik);color:var(--levha);padding:4px 0;display:flex;align-items:center;gap:6px}
.oo-menu>summary::-webkit-details-marker{display:none}
.oo-menu>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px;transition:transform .15s}
.oo-menu[open]>summary::after{transform:rotate(-135deg) translateY(-1px)}
.oo-menu-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 12px;margin-top:8px}
.oo-menu-liste .dg{justify-content:flex-start;height:auto;min-height:38px;padding:6px 4px;white-space:normal;text-align:left;font-size:14px}
.oo-blok{margin-top:12px}
.oo-blok>summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:14px 20px}
.oo-blok>summary::-webkit-details-marker{display:none}
.oo-blok>summary b{font:800 15px/1.2 var(--baslik);color:var(--murekkep)}
.oo-blok>summary small{color:var(--soluk);font-size:13.5px}
.oo-blok>summary::after{content:"+";margin-left:auto;font:800 18px/1 var(--baslik);color:var(--levha)}
.oo-blok[open]>summary::after{content:"–"}
.oo-blok>.kart-govde{padding-top:0;min-width:0}
.serit-kutu .ilerleme{margin-top:6px;height:4px;min-width:0}
/* Tahsilat penceresi */
.alan input.tahsil-tutar{height:56px;font:800 28px/1 var(--mono);letter-spacing:-.01em}
.tahsil-yontem{flex-wrap:nowrap}
.tahsil-yontem label{flex:1;min-width:0}
.tahsil-yontem span{width:100%;justify-content:center;min-height:44px;padding:0 8px;white-space:nowrap}
.tahsil-alt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:12px;margin-top:14px}
.makbuz-ozet{display:grid;justify-items:center;gap:6px;text-align:center}
.makbuz-ozet b{font:900 30px/1.1 var(--baslik);color:var(--murekkep)}
.makbuz-ozet span{font-size:14px;color:var(--metin)}
/* Özel not: yalnız müdür */
.ozel-not{border-color:var(--sari)}
.ozel-not .kart-bas h3{display:flex;align-items:center;gap:6px}
.ozel-not .kart-bas h3 .ik{width:17px;height:17px;color:var(--turuncu)}
.ozel-not .kart-bas h3 small{font-weight:600;text-transform:none;letter-spacing:0;color:var(--soluk);font-size:13px}
.ozel-not textarea.girdi{height:auto;min-height:84px;padding:10px 12px;resize:vertical;display:block}
.ozel-not-alt{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:8px}
.ozel-not-alt small{color:var(--soluk);font-size:12.5px;flex:1;min-width:0}
@media (max-width:560px){
  .odeme-ozet{padding:16px 14px 14px}
  .oo-ust{grid-template-columns:1fr;gap:10px}
  .oo-kalan b{font-size:36px}
  .tahsil-alt{grid-template-columns:1fr}
  .oo-blok>summary{padding:14px}
  .ozel-not-alt{flex-wrap:wrap}
}
@media print{.ozel-not{display:none!important}}

/* Özel notlar (v114): başlıkta küçük kilit, pencerede tarihli notlar ve resmî ödeme özeti */
.ozel-kilit{position:relative;width:38px;height:38px;border-radius:10px;display:inline-grid;place-items:center;color:var(--soluk);border:1px solid var(--cizgi-2);background:var(--panel)}
.ozel-kilit:hover{color:var(--murekkep);border-color:var(--cizgi)}
.ozel-kilit .ik{width:17px;height:17px}
.ozel-kilit em{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--murekkep);color:#fff;font:700 10.5px/17px var(--govde);font-style:normal;text-align:center}
.ozel-isaret{display:inline-flex;margin-left:6px;vertical-align:-2px;color:var(--soluk)}
.ozel-isaret .ik{width:13px;height:13px}
.ozel-odeme{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.ozel-odeme div{background:var(--panel-2);border-radius:10px;padding:8px 10px;min-width:0}
.ozel-odeme small{display:block;font-size:11.5px;color:var(--soluk);font-weight:700}
.ozel-odeme b{display:block;font-size:14px;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ozel-liste{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px;max-height:260px;overflow:auto}
.ozel-liste li{position:relative;background:var(--sari-acik);border-radius:10px;padding:8px 34px 8px 12px}
.ozel-liste small{font-size:11.5px;color:var(--soluk);font-weight:700}
.ozel-liste p{margin:2px 0 0;font-size:14px;white-space:pre-line;overflow-wrap:anywhere}
.ozel-sil{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:var(--soluk)}
.ozel-sil:hover{background:rgba(0,0,0,.06);color:var(--kirmizi)}
.ozel-sil .ik{width:13px;height:13px}
.ozel-bos{color:var(--soluk);font-size:14px;margin:0 0 12px}
.ozel-ekle{display:flex;gap:8px;align-items:flex-end}
.ozel-ekle textarea.girdi{flex:1;min-width:0;height:auto;min-height:44px;padding:8px 10px;resize:vertical}
.ozel-bilgi{display:flex;gap:6px;align-items:center;margin:12px 0 0;font-size:12.5px;color:var(--soluk)}
.ozel-bilgi .ik{width:13px;height:13px}
@media (max-width:520px){.ozel-odeme{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Ders takvimi: gün / hafta / ay (öğretmen ve öğrenci ekranı) ---------- */
.tk2-ust{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.tk2-mod{display:flex;flex:1 1 100%;background:var(--panel-2);border-radius:10px;padding:3px;gap:2px}
.tk2-mod button{flex:1;padding:6px 12px;border-radius:8px;font:800 13px/1 var(--baslik);color:var(--soluk);min-height:34px}
.tk2-mod button.secili{background:var(--panel);color:var(--murekkep);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.tk2-gez{display:flex;align-items:center;gap:6px;flex:1;min-width:0}
.tk2-gez b{font:800 15px/1.2 var(--baslik);color:var(--murekkep);text-align:center;min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk2-gez button{width:34px;height:34px;border-radius:9px;border:1px solid var(--cizgi-2);background:var(--panel);font:800 20px/1 var(--baslik);color:var(--murekkep);flex:none}
.tk2-bugun{padding:6px 10px;border-radius:9px;font:800 12.5px/1 var(--baslik);color:var(--levha);background:var(--levha-acik);min-height:32px}
.tk2-ozet{font-size:12.5px;color:var(--soluk);margin:-4px 0 10px}
.tk2-bos{color:var(--soluk);font-size:14px;padding:14px 4px;text-align:center}
.tk2-liste{display:flex;flex-direction:column;gap:6px}
.tk2-olay{display:flex;gap:10px;align-items:center;padding:9px 11px;border-radius:9px;background:var(--panel-2);border-left:4px solid var(--levha)}
.tk2-olay>.mono{font-size:14px;color:var(--murekkep);min-width:44px}
.tk2-olay>span{flex:1;min-width:0}
.tk2-olay>span b{display:block;color:var(--murekkep);font-size:14px;line-height:1.3}
.tk2-olay>span small{display:block;color:var(--soluk);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk2-olay.tk2-teorik{border-left-color:var(--sari)}
.tk2-olay.tk2-sinav{border-left-color:var(--kirmizi)}
.tk2-olay.tk2-yapildi{border-left-color:var(--yesil)}
.tk2-olay.tk2-gelmedi{border-left-color:var(--kirmizi);background:var(--kirmizi-acik)}
.tk2-olay.tk2-iptal{border-left-color:var(--cizgi);text-decoration:line-through}
.tk2-olay.gecmis{opacity:.62}
.tk2-hafta{display:flex;flex-direction:column;gap:2px}
.tk2-hgun{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--cizgi-2)}
.tk2-hgun:first-child{border-top:0}
.tk2-hbas{flex:0 0 46px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:4px 0;border-radius:9px;align-self:flex-start}
.tk2-hbas small{font:700 11px/1.2 var(--baslik);color:var(--soluk)}
.tk2-hbas b{font:900 19px/1.1 var(--baslik);color:var(--murekkep)}
.tk2-hgun.bugun .tk2-hbas{background:var(--levha)}
.tk2-hgun.bugun .tk2-hbas small,.tk2-hgun.bugun .tk2-hbas b{color:#fff}
.tk2-hgun.gecmis .tk2-hbas b{color:var(--soluk)}
.tk2-hic{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;justify-content:center}
.tk2-hbos{color:var(--soluk);font-size:14px;padding:8px 2px}
.tk2-ay{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.tk2-agun{font:700 11px/1 var(--baslik);color:var(--soluk);text-align:center;padding:4px 0 6px}
.tk2-ahucre{aspect-ratio:1/1.05;border-radius:9px;background:var(--panel-2);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:5px 2px 3px;gap:1px;min-width:0;position:relative}
.tk2-ahucre b{font:800 14px/1.1 var(--baslik);color:var(--murekkep)}
.tk2-ahucre i{font-style:normal;font:800 10.5px/1 var(--baslik);color:var(--levha)}
.tk2-ahucre.disari{opacity:.35}
.tk2-ahucre.kapali{background:transparent}
.tk2-ahucre.bugun b{color:var(--levha);text-decoration:underline;text-underline-offset:3px}
.tk2-ahucre.secili{background:var(--levha)}
.tk2-ahucre.secili b,.tk2-ahucre.secili i{color:#fff}
.tk2-nokta{display:flex;gap:2px;margin-top:auto}
.tk2-nokta em{width:6px;height:6px;border-radius:50%;background:var(--levha)}
.tk2-nokta em.tk2-teorik{background:var(--sari)}.tk2-nokta em.tk2-sinav{background:var(--kirmizi)}.tk2-nokta em.tk2-yapildi{background:var(--yesil)}.tk2-nokta em.tk2-gelmedi{background:var(--kirmizi)}.tk2-nokta em.tk2-iptal{background:var(--cizgi)}
.tk2-ahucre.secili .tk2-nokta em{box-shadow:0 0 0 1.5px #fff}
.tk2-asecili{margin-top:12px}
.tk2-abas{font:800 13px/1.2 var(--baslik);color:var(--murekkep);margin:0 2px 8px}

/* ---------- Direksiyon planı: haftalık ve aylık görünüm (müdür) ---------- */
.plan-gez{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.plan-gez b{font:800 18px/1.2 var(--baslik);color:var(--murekkep);white-space:nowrap}
.plan-gez .dg-cizgi{width:36px;padding:0;justify-content:center;font-size:20px}
.plan-ozet{display:flex;gap:6px 16px;flex-wrap:wrap;font-size:13.5px;color:var(--soluk);margin:0 2px 12px}
.plan-ozet b{color:var(--murekkep);font-family:var(--baslik)}
.plan-usta{padding-left:16px;border-left:1px solid var(--cizgi)}
.hp-kap{overflow-x:auto}
.hp{display:grid;grid-template-columns:64px repeat(var(--gun),minmax(118px,1fr));min-width:max-content}
.hp-kose{position:sticky;top:0;background:var(--panel);border-bottom:2px solid var(--murekkep)}
.hp-gbas{position:sticky;top:0;z-index:1;background:var(--panel);border-bottom:2px solid var(--murekkep);border-left:1px solid var(--cizgi-2);padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:1px}
.hp-gbas small{font:700 11.5px/1.1 var(--baslik);color:var(--soluk);text-transform:uppercase;letter-spacing:.06em}
.hp-gbas b{font:900 20px/1.1 var(--baslik);color:var(--murekkep)}
.hp-gbas i{font-style:normal;font-size:11.5px;color:var(--soluk)}
.hp-gbas:hover{background:var(--levha-acik)}
.hp-gbas.bugun b{color:#fff;background:var(--levha);border-radius:8px;padding:0 8px}
.hp-gbas.kapali{background:var(--panel-2)}
.hp-saat{height:auto;min-height:54px}
.hp-hucre{border-left:1px solid var(--cizgi-2);border-bottom:1px solid var(--cizgi-2);padding:3px;min-height:54px;display:flex;flex-direction:column;gap:3px}
.hp-hucre.ogle{background:repeating-linear-gradient(-45deg,#e6e5df 0 6px,var(--panel) 6px 12px)}
.hp-hucre.kapali{background:var(--panel-2)}
.hp-hucre.bugun{background:color-mix(in srgb,var(--levha-acik) 45%,var(--panel))}
.hp-ders{border-radius:6px;padding:4px 7px;background:var(--levha);color:#fff;cursor:pointer;min-width:0;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.hp-ders b{display:block;font:800 12.5px/1.25 var(--baslik);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-ders small{display:block;font-size:11px;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-ders.yapildi{background:var(--yesil)}
.hp-ders.gelmedi{background:#fff;color:var(--kirmizi);box-shadow:inset 0 0 0 2px var(--kirmizi)}
.hp-ders.kapanmadi{background:var(--sari-acik);color:var(--kahve);box-shadow:inset 0 0 0 2px var(--sari)}
.plan-lejant{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12.5px;color:var(--soluk);margin:10px 2px 0}
.plan-lejant .hp-ders{display:inline-block;width:14px;height:14px;padding:0;margin-right:-8px;vertical-align:middle;cursor:default}
.ap-kap{padding:10px}
.ap{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.ap-gun{font:700 11.5px/1 var(--baslik);color:var(--soluk);text-align:center;padding:4px 0 6px;text-transform:uppercase;letter-spacing:.06em}
.ap-hucre{min-height:104px;border:1px solid var(--cizgi-2);border-radius:8px;background:var(--panel);padding:6px;display:flex;flex-direction:column;gap:3px;text-align:left;min-width:0}
.ap-hucre:hover{border-color:var(--levha)}
.ap-ust{display:flex;align-items:center;justify-content:space-between}
.ap-ust b{font:800 15px/1 var(--baslik);color:var(--murekkep)}
.ap-ust i{font-style:normal;font:800 11px/1 var(--baslik);color:#fff;background:var(--levha);border-radius:999px;padding:3px 7px}
.ap-hucre.disari{opacity:.4}
.ap-hucre.kapali{background:var(--panel-2)}
.ap-hucre.bugun{box-shadow:inset 0 0 0 2px var(--levha)}
.ap-hucre.bugun .ap-ust b{color:var(--levha)}
.ap-ders{display:block;font-size:11.5px;line-height:1.3;color:var(--metin);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid var(--levha);padding-left:4px}
.ap-ders em{font-style:normal;font-size:10.5px;color:var(--soluk);margin-right:4px}
.ap-ders.yapildi{border-left-color:var(--yesil)}.ap-ders.gelmedi{border-left-color:var(--kirmizi)}.ap-ders.kapanmadi{border-left-color:var(--sari)}
.ap-daha{font-size:11px;color:var(--levha);font-weight:700}
@media (max-width:760px){
  .plan-gez{flex:1 1 100%}
  .ap-hucre{min-height:58px;padding:4px;align-items:center}
  .ap-ders,.ap-daha{display:none}
  .ap-ust{flex-direction:column;gap:3px}
  .plan-usta{padding-left:0;border-left:0}
}

/* ---------- Ortaklık: gelir paylaşımı (müdür, Ayarlar) ve ortağın salt okunur paneli ---------- */
.ort .kart-govde{padding:12px 20px 18px}
.ort-aciklama{font-size:14px;color:var(--soluk);padding-top:6px!important}
.ort-gez{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.ort-gez b{font:800 16px/1.2 var(--baslik);color:var(--murekkep);min-width:120px;text-align:center}
.ort-gez .dg{width:34px;padding:0;justify-content:center;font-size:18px}
.ort-tablo td,.ort-tablo th{padding:9px 10px}
.ort-tablo tfoot td{border-top:2px solid var(--cizgi);background:var(--panel-2)}
.ort-not{display:block;color:var(--soluk);font-size:12px}
.ort-bos{color:var(--soluk);font-size:14px;padding:6px 0}
.ort-alt{font-size:13.5px;color:var(--metin);margin-top:10px}
.ort-borc{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ort-borc li{display:grid;grid-template-columns:110px 1fr;align-items:baseline;gap:2px 12px}
.ort-borc span{color:var(--soluk);font-size:13.5px}
.ort-borc b{font:800 18px/1.2 var(--baslik);color:var(--murekkep);font-variant-numeric:tabular-nums}
.ort-borc small{grid-column:2;color:var(--soluk);font-size:12.5px}
.ort-onay{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:14px;line-height:1.4;cursor:pointer}
.ort-onay input{width:18px;height:18px;margin-top:2px;accent-color:var(--levha);flex:none}
.ort-onay small{display:block;color:var(--soluk);font-size:12.5px}
.ort-onizle{margin-top:12px;font-size:14px;color:var(--metin);min-height:1.2em}
.ort-kabuk{min-height:100vh;background:var(--zemin)}
.ort-ust{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--levha);color:#fff}
.ort-ust b{font:900 18px/1 var(--baslik)}
.ort-ust .logo-isaret{width:28px;height:28px}
.ort-ana{max-width:880px;margin:0 auto;padding:18px 16px 60px}
.ort-panel{display:flex;flex-direction:column;gap:14px}
.ort-panel-bas{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ort-panel-bas small{color:var(--soluk);font:800 12px/1 var(--baslik);letter-spacing:.1em;text-transform:uppercase}
.ort-panel-bas h1{font-size:26px;margin:4px 0 2px}
.ort-panel-bas p{color:var(--soluk);font-size:14px;margin:0}
.ort-guncel{font-size:12.5px;color:var(--soluk)}
.ort-dip{font-size:12.5px;color:var(--soluk);text-align:center;margin-top:6px}
@media (max-width:640px){
  .ort-tablo thead{display:none}
  .ort-tablo,.ort-tablo tbody,.ort-tablo tr,.ort-tablo td,.ort-tablo tfoot{display:block;width:100%}
  .ort-tablo tr{padding:8px 0;border-bottom:1px solid var(--cizgi-2)}
  .ort-tablo td{border:0;padding:2px 0;text-align:left!important}
  .ort-tablo td.sag:empty{display:none}
  .ort-tablo tfoot td{background:none;border:0}
  .ort .kart-govde{padding:10px 14px 14px}
}
@media (max-width:640px){
  .ort-tablo td[data-et]{display:flex;justify-content:space-between;gap:12px}
  .ort-tablo td[data-et]::before{content:attr(data-et);color:var(--soluk);font-size:12.5px;font-family:var(--govde);font-weight:400}
  .ort-tablo td[data-et="Müşteri"]::before,.ort-tablo td[data-et="Tür"]::before{content:none}
}
.ort-yigin{display:flex;flex-direction:column;gap:16px}
.ort-tablo td.mono{white-space:nowrap}
@media (max-width:760px){ .tablo-kap>.tablo.ort-tablo{min-width:0} }
/* mdSinyal Yönetim kabuğu */
.ort-ust-sag{margin-left:auto;display:flex;align-items:center;gap:12px;min-width:0}
.ort-ust-sag small{font-size:13px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ort-ust .bulut-durum{color:#fff;opacity:.85}
.ort-cikis{border:1.5px solid rgba(255,255,255,.7);color:#fff;border-radius:8px;padding:5px 12px;font:800 13px/1 var(--baslik);flex:none}
.ort-cikis:hover{background:rgba(255,255,255,.12)}
.ort-uyeler{list-style:none;margin:0;padding:0}
.ort-uyeler li{display:flex;align-items:center;gap:12px;justify-content:space-between}
.ort-uyeler b{display:block;color:var(--murekkep)}
.ort-uyeler small{display:block;color:var(--soluk);font-size:12.5px}
.ort-kur{max-width:720px}
@media (max-width:640px){ .ort-ust-sag small{display:none} }
/* Kursiyer kartı: geri alınması zor işlemler "⋯" menüsünde */
.kayit-diger{position:relative;display:inline-block}
.kayit-diger>summary{list-style:none;cursor:pointer;min-width:40px;justify-content:center;font-size:18px;line-height:1}
.kayit-diger>summary::-webkit-details-marker{display:none}
.kayit-diger-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;background:var(--panel);border:1.5px solid var(--cizgi);border-radius:10px;padding:6px;display:grid;gap:4px;min-width:230px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.kayit-diger-menu .dg{justify-content:flex-start;width:100%}
/* Erişilebilirlik: dokunmatik ekranda küçük düğmeler de en az 44 px; soluk yazı kontrastı AA */
@media (pointer:coarse){ .dg-kucuk{min-height:44px} }
:root{--soluk:#5f656d}

/* ================= mdSinyal uygulaması (v130): öğrenci ve öğretmen telefonu =================
   Sistem yazı tipi (iPhone'da SF, Android'de Roboto), iOS gruplu liste düzeni, tek yazı ölçeği:
   büyük başlık 34 · bölüm 20 · satır 17 · açıklama 14-15 · dipnot 13.
   Ana sayfada lacivert "gece yolu" üst bölümü tek mesajı taşır; geri kalan her şey sade listeler. */
body.portal-modu{
  --baslik:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --govde:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,sans-serif;
  --zemin:#f2f2f7;--panel:#fff;--panel-2:#f4f4f7;--cizgi:#e3e3e8;--cizgi-2:#ececf0;--soluk:#6b6e76;--metin:#3a3d42;--murekkep:#0b0d10;
  --u-ayrac:rgba(60,60,67,.17);--u-ikincil:#6b6e76;--u-ucuncul:#a3a5ab;--u-vurgu:#0a4da2;--u-vurgu-acik:#e7eefa;--u-gece:#0b1830;--u-sari:#f2b705;--u-yesil:#1e8e4e;--u-kirmizi:#d63a2f;--u-turuncu:#c25e00;
  background:var(--zemin);color:var(--murekkep);font-family:var(--govde);-webkit-tap-highlight-color:transparent;letter-spacing:-.01em}
body.portal-modu .ogr-kabuk{background:var(--zemin)}
body.portal-modu .mono,body.portal-modu .sayi{font-variant-numeric:tabular-nums;font-weight:600}
/* üst çubuk */
.app-ust{position:sticky;top:0;z-index:25;display:flex;align-items:center;gap:10px;min-height:52px;padding:calc(6px + env(safe-area-inset-top)) 16px 6px;background:rgba(242,242,247,.84);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid transparent;transition:border-color .2s}
body.kaydi .app-ust{border-bottom-color:var(--u-ayrac)}
.app-ust .logo-isaret{width:24px;height:24px;flex:none}
.app-ust-ad{flex:1;min-width:0;display:grid;line-height:1.2}
.app-ust-ad b{font-size:15px;font-weight:600;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app-ust-ad small,.app-ust-ad .bulut-durum{font-size:12px;color:var(--u-ikincil);margin:0;padding:0;background:none}
.app-profil{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--u-vurgu);color:#fff;font-size:13px;font-weight:600;letter-spacing:0}
.app-profil:active{opacity:.7}
.app-profil.buyuk{width:56px;height:56px;font-size:20px}
body.hero-acik .app-ust{background:var(--u-gece);border-bottom-color:transparent}
/* kaydırınca üst bölüm çubuğun altından bulanık geçer; sert bir kesik çizgi oluşmaz */
body.hero-acik.kaydi .app-ust{background:rgba(11,24,48,.8);border-bottom-color:rgba(255,255,255,.08)}
body.hero-acik .app-ust-ad b{color:#fff}
body.hero-acik .app-ust-ad small,body.hero-acik .app-ust-ad .bulut-durum{color:rgba(255,255,255,.6)}
body.hero-acik .app-profil{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
@media (min-width:760px){.app-ust{padding-left:max(16px,calc(50% - 260px));padding-right:max(16px,calc(50% - 260px))}}
/* gövde */
.portal-og{max-width:520px;margin:0 auto;padding:6px 16px calc(110px + env(safe-area-inset-bottom))}
.u-onizleme{max-width:520px;margin:10px auto!important}
/* üst bölüm: gece yolu */
.u-hero{position:relative;overflow:hidden;background:radial-gradient(90% 60% at 50% 100%,rgba(74,124,196,.42),transparent 70%),linear-gradient(180deg,#081428,var(--u-gece) 45%,#132f5c);color:#fff;padding:6px 20px 44px}
/* gece manzarası: bütün üst bölüme yayılır, yavaş ve sakin */
.u-gece{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.u-yildiz{animation:u-parla 7s ease-in-out infinite}
@keyframes u-parla{0%,100%{opacity:.2}50%{opacity:.85}}
.u-pencere{animation:u-pencere 16s steps(1) infinite}
@keyframes u-pencere{0%,70%{opacity:1}71%,100%{opacity:.15}}
.u-ay-isik{animation:u-ay 9s ease-in-out infinite}
@keyframes u-ay{50%{opacity:.2}}
@media (prefers-reduced-motion:reduce){.u-yildiz,.u-pencere,.u-ay-isik{animation:none}}
.u-hero::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:22px;background:var(--zemin);border-radius:22px 22px 0 0}
.u-hero:not(.kartli){padding-bottom:92px}
.u-hero-ic{z-index:2}
.u-hero.kartli{padding-bottom:96px}
.u-hero.kartli::after{display:none}
.u-hero.kartli{background:radial-gradient(90% 60% at 50% 100%,rgba(74,124,196,.42),transparent 70%),linear-gradient(180deg,#081428,var(--u-gece) 45%,#132f5c)}
.u-hero-ic{position:relative;z-index:1;max-width:488px;margin:0 auto;animation:u-gel .5s cubic-bezier(.2,.8,.2,1) both}
@keyframes u-gel{from{opacity:0;transform:translateY(8px)}}
@media (prefers-reduced-motion:reduce){.u-hero-ic{animation:none}}
.u-hero-ic>small{display:block;font-size:15px;font-weight:500;color:rgba(255,255,255,.6)}
.u-hero-ust{display:block;margin-top:22px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--u-sari)}
.u-hero h1{font-family:var(--baslik);font-size:34px;line-height:1.1;font-weight:700;letter-spacing:-.025em;color:#fff;margin-top:4px}
.u-hero-ic>small+h1{margin-top:6px;font-size:30px}
.u-hero p{font-size:16px;line-height:1.45;color:rgba(255,255,255,.78);margin-top:8px}
.u-hero-dg{display:flex;gap:8px;margin-top:18px}
.u-cam{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.15);color:#fff;font-size:15px;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.u-cam .ik{width:16px;height:16px}
.u-cam.sari{background:var(--u-sari);color:#111}
.u-cam:active{opacity:.75}
.u-asama{margin-top:28px}
.u-asama-cubuk{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.u-asama-cubuk i{position:relative;height:4px;border-radius:2px;background:rgba(255,255,255,.18);overflow:hidden}
.u-asama-cubuk i.dolu{background:#fff}
.u-asama-cubuk i.simdi::after{content:'';position:absolute;left:0;top:0;bottom:0;width:var(--ic);border-radius:2px;background:var(--u-sari)}
.u-asama span{display:flex;justify-content:space-between;gap:10px;margin-top:9px;font-size:13px;font-weight:500;color:rgba(255,255,255,.78)}
.u-asama span b{font-weight:600;color:#fff}
.hero-alti{padding-top:0}
body.hero-acik .ogr-icerik{padding-top:0}
body.hero-acik .icerik{padding-top:0}
/* sıradaki ders kartı (öğretmen): üst bölüme taşar */
.u-hero.kartli+.portal-og{margin-top:-80px;position:relative}
.u-sira{position:relative;background:#fff;border-radius:20px;padding:18px;box-shadow:0 14px 34px -16px rgba(11,24,48,.5),0 1px 2px rgba(11,24,48,.08);animation:u-gel .5s .08s cubic-bezier(.2,.8,.2,1) both}
@media (prefers-reduced-motion:reduce){.u-sira{animation:none}}
.u-sira-ust{display:flex;align-items:center;justify-content:space-between;gap:10px}
.u-etiket{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--u-ikincil)}
.u-etiket.canli{color:var(--u-yesil)}
.u-etiket.canli::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--u-yesil);animation:u-nabiz 1.6s ease-in-out infinite}
@keyframes u-nabiz{50%{opacity:.3}}
.u-sira-saat{font-size:30px;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--u-vurgu)}
.u-sira-kim{display:flex;align-items:center;gap:12px;margin-top:8px}
.u-sira-kim>div{min-width:0}
.u-sira-kim b{display:block;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--murekkep)}
.u-sira-kim small{display:block;font-size:15px;color:var(--u-ikincil);margin-top:2px}
.u-not{display:flex;gap:8px;margin-top:14px;padding:10px 12px;border-radius:12px;background:var(--panel-2);font-size:15px;line-height:1.4;color:var(--murekkep)}
.u-not .ik{width:16px;height:16px;flex:none;margin-top:2px;color:var(--u-ikincil)}
.u-not.mavi{background:var(--u-vurgu-acik)}
.u-not.mavi .ik{color:var(--u-vurgu)}
.u-sira-dg,.u-sayfa-dg{display:flex;gap:8px;margin-top:16px}
.u-dg{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 18px;border-radius:14px;background:#ececf1;color:var(--murekkep);font-size:17px;font-weight:600;transition:transform .1s}
.u-dg .ik{width:20px;height:20px}
.u-dg.birincil{flex:1;background:var(--u-vurgu);color:#fff}
.u-dg.ikon{width:52px;padding:0;flex:none}
.u-dg:active{transform:scale(.97)}
/* bölümler ve gruplu listeler */
.u-baslik{margin:10px 4px 18px}
.u-baslik h1{font-family:var(--baslik);font-size:34px;font-weight:700;letter-spacing:-.025em;line-height:1.12;color:var(--murekkep)}
.u-baslik small{display:block;font-size:15px;color:var(--u-ikincil);margin-top:3px}
.u-grup{margin-top:28px}
.u-sira+.u-grup{margin-top:30px}
.u-grup-bas{display:flex;align-items:baseline;gap:8px;font-family:var(--baslik);font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--murekkep);margin:0 4px 10px}
.u-grup-bas span{margin-left:auto;font-family:var(--govde);font-size:15px;font-weight:500;letter-spacing:0;color:var(--u-ikincil)}
.u-grup-bas.kirmizi{color:var(--u-kirmizi)}
.u-grup-not{font-size:14px;line-height:1.4;color:var(--u-ikincil);margin:-4px 4px 10px}
.u-grup-not.uyari{margin:10px 4px 0;color:var(--u-turuncu)}
.u-liste{background:#fff;border-radius:14px;overflow:hidden}
.u-satir{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 16px;background:#fff;text-align:left;color:inherit}
.u-satir+.u-satir::before{content:'';position:absolute;top:0;right:0;left:16px;height:.5px;background:var(--u-ayrac)}
.u-satir.dokun{cursor:pointer}
.u-satir.dokun:active{background:#e9e9ee}
.u-satir>.ik{flex:none;width:15px;height:15px;color:#c4c4c9;stroke-width:2.4}
.u-satir-govde{flex:1;min-width:0;display:grid;gap:2px}
.u-satir-govde b{font-size:17px;font-weight:600;line-height:1.25;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u-satir-govde small{font-size:14px;line-height:1.3;color:var(--u-ikincil);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u-satir-govde .uyari{color:var(--u-turuncu)}
.u-bag{font:inherit;color:var(--u-vurgu);text-decoration:underline;text-underline-offset:2px}
.u-deger{flex:none;font-size:16px;color:var(--u-ikincil);font-variant-numeric:tabular-nums;white-space:nowrap}
.u-satir.toplam .u-satir-govde b,.u-satir.toplam .u-deger{font-weight:700;color:var(--murekkep)}
.u-ik{flex:none;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#fff;background:#2f6fde}
.u-ik .ik{width:18px;height:18px}
.u-ik.yesil{background:#28a05a}.u-ik.kirmizi{background:#e0483d}.u-ik.turuncu{background:#f08a24}.u-ik.mor{background:#7a5cd6}.u-ik.gri{background:#8e9198}.u-ik.sari{background:#e3a300}
.u-hap{flex:none;height:32px;padding:0 14px;border-radius:999px;background:var(--u-vurgu-acik);color:var(--u-vurgu);font-size:15px;font-weight:600;white-space:nowrap}
.u-hap.gri{background:#ececf1;color:var(--murekkep)}
.u-hap:active{opacity:.6}
.u-satir-dg{flex:none;display:flex;gap:6px}
.u-nokta{flex:none;width:32px;height:32px;margin-right:-8px;border-radius:50%;display:grid;place-items:center;color:var(--u-ucuncul)}
.u-nokta .ik{width:18px;height:18px}
.u-durum{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--u-ikincil);white-space:nowrap}
.u-durum .ik{width:15px;height:15px;stroke-width:2.6}
.u-durum.yesil{color:var(--u-yesil)}.u-durum.kirmizi{color:var(--u-kirmizi)}.u-durum.mavi{color:var(--u-vurgu)}.u-durum.turuncu{color:var(--u-turuncu)}
.u-saat{flex:none;width:54px;display:grid;font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--murekkep)}
.u-saat small{font-size:12px;font-weight:500;color:var(--u-ikincil)}
.u-satir.kapali .u-saat,.u-satir.kapali .u-satir-govde b{color:var(--u-ucuncul)}
.u-satir.sira .u-saat{color:var(--u-vurgu)}
.u-av{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;object-fit:cover;background:var(--r,#8e9198);color:#fff;font-size:15px;font-weight:600}
.u-av.buyuk{width:60px;height:60px;font-size:22px}
.u-arac.arac-fig{flex:none;width:72px;border-radius:10px;margin:0}
.u-arac figcaption{display:none}
.u-bos{display:grid;justify-items:center;gap:4px;padding:30px 20px;border-radius:14px;background:#fff;text-align:center}
.u-bos>.ik{width:30px;height:30px;color:var(--u-ucuncul);margin-bottom:4px}
.u-bos b{font-size:17px;font-weight:600}
.u-bos p{font-size:15px;line-height:1.4;color:var(--u-ikincil);max-width:300px}
.u-dipnot{font-size:13px;line-height:1.45;color:var(--u-ikincil);margin:16px 4px 0}
/* öğretmen: kazanç */
.u-kazanc{position:relative;overflow:hidden;border-radius:20px;padding:20px;background:linear-gradient(140deg,var(--u-gece),#173d78);color:#fff}
.u-kazanc::after{content:'';position:absolute;right:-30px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(242,183,5,.28),transparent 70%)}
.u-kazanc small{display:block;font-size:14px;color:rgba(255,255,255,.7)}
.u-kazanc b{display:block;margin:6px 0 4px;font-family:var(--baslik);font-size:40px;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.u-kazanc span{font-size:14px;color:rgba(255,255,255,.7)}
/* öğretmen: öğrenci sayfası */
.u-ogr-ust{display:flex;align-items:center;gap:14px;padding:4px 4px 16px}
.u-ogr-ust b{display:block;font-size:20px;font-weight:700;letter-spacing:-.02em}
.u-ogr-ust small{display:block;font-size:15px;color:var(--u-ikincil);margin-top:2px}
.u-ilerleme{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:6px 10px;margin-bottom:12px;padding:14px 16px;border-radius:14px;background:#fff}
.u-ilerleme span{font-size:15px;color:var(--u-ikincil)}
.u-ilerleme b{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}
.u-ilerleme b small{font-size:15px;font-weight:500;color:var(--u-ikincil)}
.u-ilerleme>:last-child{grid-column:1/-1}
/* öğretmen yazıları bir boy büyük */
body.usta-modu .u-satir{min-height:64px}
body.usta-modu .u-satir-govde b{font-size:18px}
body.usta-modu .u-satir-govde small{font-size:15px}
/* alt sekme çubuğu */
.og-sekme{background:rgba(249,249,251,.88);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--u-ayrac)}
.og-sekme button{min-height:50px;color:#676c75;font:500 10.5px/1.1 var(--govde)}
.og-sekme button .ik{width:25px;height:25px;stroke-width:1.8;padding:0;background:none!important}
.og-sekme button.secili{color:var(--u-vurgu)}
.og-sekme button.secili .ik{stroke-width:2.2}
/* alttan açılan sayfa (hesap, öğrenci ayrıntısı) */
.perde.alt-sayfa{align-items:flex-end;padding:0}
.perde.alt-sayfa .pencere{width:min(520px,100%);border-top:0;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform .3s cubic-bezier(.2,.8,.2,1);padding-bottom:calc(12px + env(safe-area-inset-bottom));background:#f2f2f7;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,sans-serif}
.perde.alt-sayfa.acik .pencere{transform:none}
.perde.alt-sayfa .pencere::before{content:'';display:block;width:36px;height:5px;border-radius:3px;background:#c7c7cc;margin:8px auto 0}
.perde.alt-sayfa .pencere header{padding:6px 12px 0 20px}
.perde.alt-sayfa .pencere header h2{font-family:inherit;font-size:17px;font-weight:600}
.perde.alt-sayfa .pencere-govde{padding:10px 16px 8px}
@media (min-width:760px){.perde.alt-sayfa{align-items:center;padding:16px}.perde.alt-sayfa .pencere{border-radius:20px}}
.hs-kim{display:flex;align-items:center;gap:14px;padding:6px 4px 18px}
.hs-kim b{display:block;font-size:20px;font-weight:700;color:var(--murekkep)}
.hs-kim small{display:block;font-size:15px;color:#6b6e76;margin-top:2px}
.hs-liste{background:#fff;border-radius:14px;overflow:hidden;margin-bottom:14px}
.hs-liste>a,.hs-liste>button{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 16px;text-align:left;border-top:.5px solid rgba(60,60,67,.17)}
.hs-liste>:first-child{border-top:0}
.hs-liste>a:active,.hs-liste>button:active{background:#e9e9ee}
.hs-liste>*>.ik{color:#c4c4c9;width:15px;height:15px}
.hs-ik{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#2f6fde;color:#fff;flex:none}
.hs-ik .ik{width:17px;height:17px}
.hs-ik.kirmizi{background:#e0483d}
.hs-metin{flex:1;font-size:17px;color:#0b0d10;line-height:1.25}
.hs-metin small{display:block;font-size:14px;color:#6b6e76}
.hs-cikis .hs-metin{color:#d63a2f}
/* sekmelerin mevcut içeriği aynı dile: çerçevesiz beyaz gruplar, hap rozetler, dolgu düğmeler */
.portal-og .kart,.portal-og .og-isler,.portal-og .og-degerlendir,.portal-og .og-karo,.portal-og .og-ozet-kutu,.portal-og .og-sayac>div{border:0;border-radius:14px;background:#fff;box-shadow:none}
/* ana kart (Deneme sınavı) beyaz kart kuralından sonra: mavi zemini korunur */
.portal-og .og-karo-ana{background:var(--levha)}
.portal-og .og-degerlendir{margin-bottom:10px}
.portal-og .og-grup{margin-top:28px}
.portal-og .og-grup-bas{font-family:var(--baslik);font-size:20px;font-weight:700;letter-spacing:-.02em;text-transform:none;color:var(--murekkep);margin:0 4px 10px}
.portal-og .og-ozet-kutu small{text-transform:none;letter-spacing:0;font-size:13px;font-weight:500}
.portal-og .og-ozet-kutu.tamam{background:#e8f6ee}
.portal-og .dg{border-radius:12px;font-weight:600}
.portal-og .dg-cizgi{border-color:transparent;background:#ececf1;color:var(--murekkep)}
.portal-og .dg-cizgi:active{background:#e1e1e7}
.portal-og .rozet{height:24px;padding:0 9px;border:0;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:0;text-transform:none}
.portal-og .rozet-notr{background:#ececf1;color:var(--metin)}
.portal-og .rozet-yesil{background:#e3f4ea;color:#14663a}
.portal-og .rozet-kirmizi{background:#fde7e5;color:#a8241a}
.portal-og .rozet-mavi{background:var(--u-vurgu-acik);color:var(--u-vurgu)}
.portal-og .rozet-turuncu,.portal-og .rozet-uyari{background:#fdeedd;color:#8a4300}
.portal-og [data-tk-git]{border:0!important;background:#ececf1!important;border-radius:10px!important;min-width:44px;min-height:38px}
.portal-og .og-sira{border-radius:20px}

/* öğretmen programı: Excel tablosu düzeni (ızgara çizgileri, gün sütunu birleşik, bugün vurgulu) */
.u-prog-arac{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.u-bolum{display:flex;padding:2px;border-radius:10px;background:#e3e3e8}
.u-bolum button{min-width:70px;height:32px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--murekkep)}
.u-bolum button.secili{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.u-prog-git{display:flex;gap:6px}
.u-prog-git button{height:34px;min-width:34px;padding:0 10px;border-radius:10px;background:#fff;color:var(--u-vurgu);font-size:14px;font-weight:600;display:grid;place-items:center}
.u-prog-git button .ik{width:16px;height:16px}
.u-prog-git button:disabled{color:var(--u-ucuncul)}
.u-tablo-kap{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 0 0 .5px var(--u-ayrac)}
.u-tablo{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.u-tablo th{background:#f7f7f9;padding:8px 10px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--u-ikincil);border-bottom:1px solid #d9d9df}
.u-tablo td{padding:9px 10px;border-bottom:.5px solid #e6e6eb;vertical-align:middle}
.u-tablo td+td,.u-tablo th+th{border-left:.5px solid #e6e6eb}
.u-tablo tr.gun-ilk td{border-top:1px solid #d9d9df}
.u-tablo tbody tr:first-child td{border-top:0}
.u-gun{width:46px;text-align:center;background:#fafafb}
.u-gun b{display:block;font-size:18px;font-weight:700;line-height:1.1;color:var(--murekkep)}
.u-gun small{display:block;font-size:11.5px;font-weight:600;color:var(--u-ikincil);text-transform:uppercase}
.u-tablo tr.bugun td{background:#eef4fd}
.u-tablo tr.bugun .u-gun{background:var(--u-vurgu)}
.u-tablo tr.bugun .u-gun b,.u-tablo tr.bugun .u-gun small{color:#fff}
.u-t-saat{width:56px;font-weight:600;color:var(--murekkep)}
.u-t-ad{font-weight:600;color:var(--murekkep);line-height:1.25}
.u-t-ad small{display:block;font-size:12.5px;font-weight:400;color:var(--u-ikincil)}
.u-tablo tr.bos td{color:var(--u-ikincil,#6b7079)}
.u-tablo tr.iptal .u-t-saat,.u-tablo tr.iptal .u-t-ad{color:var(--u-ucuncul);text-decoration:line-through}
.u-tablo .u-durum{font-size:13px}
.u-indir{width:100%;margin-top:14px;background:#fff;color:#1d6f42}
.u-indir .ik{color:#1d6f42}
/* öğrenci arama */
.u-ara{display:flex;align-items:center;gap:8px;height:40px;padding:0 10px;margin:0 0 4px;border-radius:12px;background:#e3e3e8;color:var(--u-ikincil)}
.u-ara>.ik{width:17px;height:17px;flex:none}
.u-ara input{flex:1;min-width:0;height:100%;border:0;background:none;font-size:17px;color:var(--murekkep);outline:none;-webkit-appearance:none;appearance:none}
.u-ara input::-webkit-search-cancel-button{display:none}
.u-ara-sil{flex:none;width:22px;height:22px;border-radius:50%;background:#a3a5ab;color:#fff;display:grid;place-items:center}
.u-ara-sil .ik{width:12px;height:12px;stroke-width:3}
.u-ara+.u-liste,.u-ara+.u-grup{margin-top:14px}
.u-bos[data-ara-yok]{margin-top:14px}
.u-prog-git .ik.ters{transform:scaleX(-1)}

/* gündüz (06:00–18:00): sabah göğü; üstü beyaz yazı okunacak kadar koyu, ufka doğru açılır */
.u-hero.gunduz,.u-hero.gunduz.kartli{background:radial-gradient(70% 50% at 84% 16%,rgba(255,236,170,.32),transparent 62%),linear-gradient(180deg,#174f99 0%,#2a6bbd 46%,#5996dc 74%,#93c3ee 100%)}
body.hero-acik.hero-gunduz .app-ust{background:#174f99}
body.hero-acik.hero-gunduz.kaydi .app-ust{background:rgba(23,79,153,.84)}
.u-bulut-kay{animation:u-bulut-kay 420s linear infinite}
@keyframes u-bulut-kay{from{transform:translateX(-760px)}to{transform:translateX(1150px)}}
@media (prefers-reduced-motion:reduce){.u-bulut-kay{animation:none}}
body.portal-modu .ogr-icerik{max-width:none}

/* mdSinyal Yönetim hesap oluşturma: ortaklık bilgileri açılır bölümde */
.yh-ortak{margin:6px 0 2px;padding:12px 14px;border-radius:14px;background:var(--panel-2,#f4f4f7)}
.yh-ortak summary{cursor:pointer;font-weight:700;color:var(--murekkep)}
.yh-ortak summary small{display:block;font-weight:400;font-size:13px;color:var(--soluk)}
.yh-ortak[open] summary{margin-bottom:10px}
.yh-ortak .og-alan{margin-top:10px}

/* ================= mdSinyal Yönetim (v142): uygulama dili; Özet · Kurslar · Defter ================= */
.ort-kabuk .ort-ana{padding:0}
.yn-hero{background:radial-gradient(90% 70% at 85% 0%,#1d3f78,transparent 60%),linear-gradient(180deg,#0b1830,#10254a);color:#fff;padding:16px 20px 60px}
.yn-ic{max-width:760px;margin:0 auto}
.yn-hero small{display:block;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--u-sari,#f2b705)}
.yn-hero h1{margin-top:6px;font-size:30px;line-height:1.1;font-weight:700;letter-spacing:-.025em;color:#fff}
.yn-hero p{margin-top:6px;font-size:15px;color:rgba(255,255,255,.72)}
.yn-olcum{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}
.yn-olcum>div{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.yn-olcum small{font-size:12.5px;font-weight:500;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.7)}
.yn-olcum b{display:block;margin:4px 0 2px;font-size:22px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#fff}
.yn-olcum span{font-size:12.5px;color:rgba(255,255,255,.6)}
@media (max-width:700px){.yn-olcum{grid-template-columns:1fr 1fr}.yn-olcum b{font-size:20px}}
.yn-govde{position:relative;max-width:760px;margin:-36px auto 0;padding:0 16px calc(60px + env(safe-area-inset-bottom))}
.yn-sekme{display:flex;gap:4px;padding:4px;border-radius:14px;background:#fff;box-shadow:0 12px 30px -18px rgba(11,24,48,.55),0 1px 2px rgba(11,24,48,.08)}
.yn-sekme button{flex:1;height:42px;border-radius:10px;font-size:15px;font-weight:600;color:var(--u-ikincil,#6b6e76)}
.yn-sekme button.secili{background:#0b1830;color:#fff}
.yn-sekme em{font-style:normal;margin-left:6px;font-size:12.5px;opacity:.7}
.yn-bolum{margin-top:26px}
.yn-bolum-bas{display:flex;align-items:flex-end;gap:10px;margin:0 4px 10px}
.yn-bolum-bas h2{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--murekkep)}
.yn-bolum-bas small{display:block;margin-top:2px;font-size:14px;color:var(--u-ikincil,#6b6e76)}
.yn-dg{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.yn-dg .u-hap .ik{width:15px;height:15px;margin-right:2px;vertical-align:-2px}
.yn-kart{background:#fff;border-radius:14px;overflow:hidden}
/* eski tablolar yeni dilde: Excel benzeri ızgara */
.yn .tablo-kap{overflow-x:auto;border:0;border-radius:0;margin:0}
.yn .ort-tablo{width:100%;border-collapse:collapse;font-size:14.5px;font-variant-numeric:tabular-nums}
.yn .ort-tablo th{background:#f7f7f9;padding:8px 10px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b6e76;border-bottom:1px solid #d9d9df;white-space:nowrap}
.yn .ort-tablo td{padding:10px;border-bottom:.5px solid #e6e6eb;vertical-align:top}
.yn .ort-tablo td+td,.yn .ort-tablo th+th{border-left:.5px solid #e6e6eb}
.yn .ort-tablo .sag{text-align:right}
.yn .ort-tablo tfoot td{background:#fafafb}
.yn .ort-tablo tr.tik{cursor:pointer}
.yn .ort-tablo tr.tik:hover td{background:#f7f9fd}
.yn .ort-not{display:block;margin-top:2px;font-size:12.5px;color:#6b6e76}
.yn .ort-gez{display:flex;align-items:center;gap:8px;padding:12px 14px;margin:0;border-bottom:.5px solid #e6e6eb}
.yn .ort-gez b{font-size:16px;font-weight:600;min-width:130px;text-align:center}
.yn .ort-gez .dg{min-width:36px;height:34px;padding:0;justify-content:center;border:0;border-radius:10px;background:#ececf1;color:var(--u-vurgu,#0a4da2);font-size:18px}
.yn .ort-gez .dg:disabled{color:#a3a5ab}
.yn .ort-alt{padding:10px 14px;font-size:14px;color:#6b6e76}
.yn .ort-bos{padding:18px 16px;font-size:15px;color:#6b6e76}
.yn .ort-borc{list-style:none;margin:0;padding:0}
.yn .ort-borc li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 16px;border-top:.5px solid #e6e6eb}
.yn .ort-borc li:first-child{border-top:0}
.yn .ort-borc span{font-size:16px;font-weight:600;color:var(--murekkep)}
.yn .ort-borc b{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
.yn .ort-borc small{grid-column:1/-1;font-size:13.5px;color:#6b6e76}
.yn .u-dipnot{margin-top:18px}
/* kurslar */
.yn-kurs-ust{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.yn-filtre{display:flex;gap:6px;overflow-x:auto;padding:2px;scrollbar-width:none;min-width:0;flex:1}
.yn-filtre::-webkit-scrollbar{display:none}
.yn-filtre button{flex:none;height:34px;padding:0 12px;border-radius:999px;background:#fff;font-size:14px;font-weight:600;color:var(--murekkep);box-shadow:inset 0 0 0 .5px rgba(60,60,67,.2)}
.yn-filtre button.secili{background:#0b1830;color:#fff;box-shadow:none}
.yn-filtre em{font-style:normal;margin-left:5px;opacity:.6}
.yn-dosya{position:relative;cursor:pointer;display:inline-flex;align-items:center}
.yn-dosya input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.yn-bos-dg{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.yn-kurslar{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px;margin-top:14px}
.yn-kurs{--renk:#a3a5ab;--acik:#ececf1;--koyu:#3a3d42;position:relative;display:flex;flex-direction:column;background:#fff;border-radius:16px;padding:14px 16px 14px 19px;overflow:hidden;transition:box-shadow .15s,transform .15s}
.yn-kurs::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--renk)}
.yn-kurs[data-yn-kurs]{cursor:pointer}
.yn-kurs[data-yn-kurs]:hover{box-shadow:0 10px 26px -16px rgba(11,24,48,.45)}
.yn-kurs[data-yn-kurs]:active{transform:scale(.99)}
.yn-kurs header{display:flex;align-items:flex-start;gap:10px}
.yn-kurs header b{flex:1;font-size:17px;font-weight:700;line-height:1.25;color:var(--murekkep)}
.yn-durum{flex:none;display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:999px;background:var(--acik);color:var(--koyu);font-size:12.5px;font-weight:600}
.yn-durum .ik{width:13px;height:13px}
.yn-kisi{display:flex;gap:6px;margin-top:8px;font-size:14px;line-height:1.35;color:#6b6e76}
.yn-kisi .ik{flex:none;width:15px;height:15px;margin-top:1px}
.yn-not{margin-top:8px;font-size:15px;line-height:1.45;color:var(--murekkep)}
.yn-sonraki{margin-top:12px;padding:10px 12px;border-radius:12px;background:#f3f6fc}
.yn-sonraki small{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#0a4da2}
.yn-sonraki small b{letter-spacing:0;text-transform:none}
.yn-sonraki span{display:block;margin-top:3px;font-size:14.5px;line-height:1.4;color:var(--murekkep)}
.yn-kurs footer{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.yn-etiket{display:inline-flex;align-items:center;min-height:24px;padding:2px 9px;border-radius:7px;background:#e7eefa;color:#0a4da2;font-size:12.5px;font-weight:600;line-height:1.3}
.yn-etiket.gri{background:#f2f2f5;color:#55585e;font-weight:500}
.yr-yesil{--renk:#28a05a;--acik:#e3f4ea;--koyu:#14663a}
.yr-kirmizi{--renk:#e0483d;--acik:#fde7e5;--koyu:#a8241a}
.yr-turuncu{--renk:#f08a24;--acik:#fdeedd;--koyu:#8a4300}
.yr-sari{--renk:#e3a300;--acik:#fff4cf;--koyu:#7a5200}
.yr-mor{--renk:#7a5cd6;--acik:#ece7fb;--koyu:#4b2fa6}
.yr-gri{--renk:#8e9198;--acik:#ececf1;--koyu:#3a3d42}
.yr-soluk{--renk:#d0d1d6;--acik:#f2f2f5;--koyu:#8e9198}
.yr-soluk header b,.yr-soluk .yn-not{color:#8e9198}
.yn-form textarea{width:100%;min-height:76px;border:0;background:none;resize:vertical;font:inherit;font-size:16px;color:var(--murekkep);outline:none;padding:10px 0}
.yn-form .og-girdi select{width:100%;height:100%;border:0;background:none;font:inherit;font-size:16px;outline:none}
.og-alan-et small{font-weight:400;color:#6b6e76}
.yn-kurs-ust{flex-direction:column-reverse;align-items:stretch}
.yn-kurs-ust .yn-dg{align-self:flex-end}
.yn-kurs-ust .yn-filtre{flex:none;width:100%;max-width:100%;min-width:0}
@media (min-width:760px){.ort-kabuk .app-ust{padding-left:max(16px,calc(50% - 380px));padding-right:max(16px,calc(50% - 380px))}}
.yn .u-satir-govde small{white-space:normal}

/* ===== mdSinyal Yönetim v143: bilgisayarda yan menü, telefonda alt sekme; Ajanda ve Gelir-Gider ===== */
.yn{min-height:calc(100vh - 52px)}
.yn-ana{min-width:0}
.yn-yan{display:none}
.yn-hero{position:relative;padding:16px 20px 44px}
.yn-hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:22px;background:var(--zemin,#f2f2f7);border-radius:22px 22px 0 0}
.yn-govde{margin-top:0;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.yn-govde>:first-child{margin-top:4px}
.yn-olcum>div{min-width:0}
.yn-olcum b,.yn-olcum span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yn-alt em{display:none}
.yn-alt [data-yn-sekme="ajanda"] em{display:inline-grid}
.yn-izgara{display:grid;gap:0 18px}
@media (min-width:860px){.yn-izgara{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (min-width:980px){
  .ort-kabuk .ort-ana{max-width:none}  /* bilgisayarda panel ekranın tamamını kullanır (telefon kutusu gibi ortada sıkışmaz) */
  .yn{display:grid;grid-template-columns:236px minmax(0,1fr)}
  .yn-yan{display:flex;flex-direction:column;gap:2px;position:sticky;top:52px;align-self:start;height:calc(100vh - 52px);padding:18px 12px;background:#fff;border-right:.5px solid rgba(60,60,67,.17)}
  .yn-yan button{display:flex;align-items:center;gap:11px;height:44px;padding:0 12px;border-radius:11px;font-size:15px;font-weight:600;color:#3a3d42;text-align:left}
  .yn-yan button .ik{width:20px;height:20px;color:#8e9198}
  .yn-yan button em{margin-left:auto;display:grid;place-items:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#ececf1;font-style:normal;font-size:12.5px;font-weight:600}
  .yn-yan button:hover:not(.secili){background:#f2f2f5}
  .yn-yan button.secili{background:#0b1830;color:#fff}
  .yn-yan button.secili .ik{color:#fff}
  .yn-yan button.secili em{background:rgba(255,255,255,.18)}
  .yn-alt{display:none!important}
  .ort-kabuk .app-ust{padding-left:20px!important;padding-right:20px!important}
  .yn-hero{padding:26px 36px 50px}
  .yn-ic{max-width:1080px;margin:0}
  .yn-govde{max-width:1080px;margin:0;padding:0 36px 60px}
}
/* ajanda */
.yn-ekle-kart{padding:0}
.yn-is-ekle{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-bottom:.5px solid rgba(60,60,67,.12)}
.yn-is-ekle input[name=baslik]{flex:1 1 200px;min-width:0;height:42px;padding:0 12px;border:0;border-radius:10px;background:#f2f2f5;font:inherit;font-size:16px;color:var(--murekkep);outline:none}
.yn-is-ekle input[name=baslik]:focus{box-shadow:inset 0 0 0 2px #0a4da2;background:#fff}
.yn-is-ekle input[type=date]{height:42px;padding:0 10px;border:0;border-radius:10px;background:#f2f2f5;font:inherit;font-size:15px;color:var(--murekkep)}
.yn-is-ekle .u-hap{height:42px}
.yn-tur{display:flex;padding:3px;border-radius:10px;background:#ececf1}
.yn-tur button{height:36px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:600;color:#3a3d42}
.yn-tur button.secili{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.yn-is .yn-tik{flex:none;width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 2px #c7c7cc;display:grid;place-items:center;color:transparent;transition:background .15s}
.yn-is .yn-tik .ik{width:14px;height:14px;stroke-width:3}
.yn-is .yn-tik:hover{box-shadow:inset 0 0 0 2px #28a05a;color:#28a05a}
.yn-is.bitti .yn-tik{background:#28a05a;box-shadow:none;color:#fff}
.yn-is.bitti .u-satir-govde b{color:#a3a5ab;text-decoration:line-through}
.yn-is.gec .u-satir-govde small{color:#d63a2f}
.yn-is .u-satir-govde{cursor:pointer}
.yn-is .u-satir-govde b{white-space:normal}
.yn-is-gider{font-size:15px;font-weight:700;color:#8e9198}
.yn-is-gider:hover{background:#f2f2f5;color:#0a4da2}
.yn-hedef-et{display:inline-block;margin-right:6px;padding:1px 7px;border-radius:6px;background:#ece7fb;color:#4b2fa6;font-size:12px;font-weight:700;vertical-align:1px}
.yn-say{margin-left:8px;font-size:14px;font-weight:600;color:#8e9198}
.yn-bolum-bas h2.kirmizi{color:#d63a2f}
.yn-biten>summary{cursor:pointer;margin:0 4px 10px;font-size:17px;font-weight:700;color:#6b6e76;list-style:none}
.yn-biten>summary::-webkit-details-marker{display:none}
.yn-biten>summary::before{content:"▸ ";color:#a3a5ab}
.yn-biten[open]>summary::before{content:"▾ "}
.yn-nokta{flex:none;width:10px;height:10px;border-radius:50%;background:var(--renk,#a3a5ab)}
/* gelir-gider */
.yn-kasa-ust{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}
.yn-ay-gez{display:flex;align-items:center;gap:4px;padding:4px;border-radius:12px;background:#fff}
.yn-ay-gez button{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#0a4da2}
.yn-ay-gez button:disabled{color:#c7c7cc}
.yn-ay-gez button .ik{width:16px;height:16px}
.yn-ay-gez .ters{transform:scaleX(-1)}
.yn-ay-gez b{min-width:118px;text-align:center;font-size:15.5px;font-weight:600}
.yn-kasa-kutular{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
@media (max-width:760px){.yn-kasa-kutular{grid-template-columns:repeat(2,minmax(0,1fr))}}
.yn-kasa-kutu{min-width:0;padding:14px;border-radius:14px;background:#fff}
.yn-kasa-kutu small{display:block;font-size:13px;color:#6b6e76}
.yn-kasa-kutu b{display:block;margin:4px 0 2px;font-size:21px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yn-kasa-kutu span{display:block;font-size:12.5px;color:#8e9198;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yn-kasa-kutu.yesil b{color:#1e8e4e}
.yn-kasa-kutu.kirmizi b{color:#d63a2f}
.yn-kasa-kutu.koyu{background:#0b1830}
.yn-kasa-kutu.koyu small,.yn-kasa-kutu.koyu span{color:rgba(255,255,255,.65)}
.yn-kasa-kutu.koyu b{color:#fff}
.yn-kasa-kutu.koyu.kirmizi b{color:#ff8a7a}
.yn-kat{padding:4px 16px 12px}
.yn-kat-sat{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:9px 0;border-top:.5px solid #ececf1}
.yn-kat-sat:first-child{border-top:0}
.yn-kat-sat span{min-width:0;font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yn-kat-sat b{font-size:14.5px;font-variant-numeric:tabular-nums}
.yn-kat-sat i{grid-column:1/-1;height:6px;border-radius:3px;background:linear-gradient(90deg,#f08a24 var(--o),#f2f2f5 var(--o))}
.yn .eksi{color:#d63a2f;font-weight:600;white-space:nowrap}
.yn .arti{color:#1e8e4e;font-weight:600;white-space:nowrap}
.yn .u-deger.eksi,.yn .u-deger.arti{font-size:15px}
.yn-kasa-tablo tr.oto td{color:#6b6e76;background:#fcfcfd}
.yn-kasa-tablo td:first-child{white-space:nowrap}
.yn-belge{width:30px;height:30px;border-radius:8px;background:#e7eefa;color:#0a4da2;display:grid;place-items:center}
.yn-belge .ik{width:16px;height:16px}
.yn-belge-var{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:14px;font-weight:600;color:#1e8e4e}
.yn-belge-var .ik{width:16px;height:16px}
.yn-belge-sec input{padding:10px 0;font-size:14px;width:100%}
.yn-iki{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.yn .ort-bos{padding:16px}

/* ================= Giriş ekranlarında kendiliğinden yardım (v144) ================= */
.og-yardim{margin-top:16px;padding:16px;border-radius:14px;background:#eef6f0;border:1px solid #cfe5d6;display:grid;gap:8px;animation:yardimGel .28s ease-out}
.og-yardim b{font-size:16px;color:var(--murekkep)}
.og-yardim p{font-size:14.5px;line-height:1.45;color:var(--metin)}
.og-yardim-dg{height:48px;border-radius:12px;font-size:15.5px;width:100%;margin-top:4px}
.og-yardim .og-bag{justify-self:start;text-align:left}
.giris .og-yardim{text-align:left}
@keyframes yardimGel{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.og-yardim{animation:none}}

/* ================= Sahip paneli (#/sahip, v144): bütün hesaplar ================= */
body.sahip-modu{
  --baslik:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --govde:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --zemin:#f2f2f7;--panel:#fff;--panel-2:#f4f4f7;--cizgi:#e3e3e8;--cizgi-2:#ececf0;--soluk:#6b6e76;
  background:var(--zemin);font-family:var(--govde);letter-spacing:-.01em}
.sh{min-height:100vh;min-height:100dvh}
.sh-ust{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(16px,calc((100vw - 960px)/2));padding-top:max(12px,env(safe-area-inset-top));background:rgba(242,242,247,.86);backdrop-filter:saturate(1.8) blur(18px);-webkit-backdrop-filter:saturate(1.8) blur(18px);border-bottom:1px solid rgba(60,60,67,.12)}
.sh-marka{display:flex;align-items:center;gap:10px;min-width:0}
.sh-marka svg{width:30px;height:30px;flex:none}
.sh-marka b{display:block;font-size:17px;font-weight:800;color:var(--murekkep);line-height:1.1}
.sh-marka small{display:block;font-size:12.5px;color:var(--soluk)}
.sh-yenile{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:18px;background:#fff;border:1px solid var(--cizgi);font-weight:700;font-size:14px;color:var(--levha)}
.sh-yenile .ik{width:17px;height:17px}
.sh-yenile:disabled{opacity:.6}
.sh-govde{width:min(960px,100%);margin:0 auto;padding:20px 16px 48px}
.sh-giris{display:grid;place-items:center;min-height:calc(100dvh - 70px)}
.sh-giris-kart{width:min(440px,100%);background:#fff;border-radius:22px;padding:28px 24px 22px;box-shadow:0 20px 50px -30px rgba(10,20,40,.45);border:1px solid var(--cizgi-2)}
.sh-giris-ik{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--levha-acik);color:var(--levha);margin-bottom:16px}
.sh-giris-ik .ik{width:26px;height:26px}
.sh-giris-kart h1{font-size:26px;font-weight:800;line-height:1.15;color:var(--murekkep)}
.sh-giris-kart>p{margin-top:8px;font-size:15.5px;line-height:1.5;color:var(--metin)}
.sh-giris-dg{width:100%;height:52px;border-radius:13px;font-size:16px;margin-top:20px}
.sh-dip{margin-top:14px;font-size:13px;line-height:1.45;color:var(--soluk)}
.sh-hata{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding:11px 13px;border-radius:12px;background:var(--kirmizi-acik);color:#8a1d14;font-size:14px;line-height:1.4}
.sh-hata .ik{width:18px;height:18px;flex:none;margin-top:1px}
.sh-bas{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin:6px 0 18px}
.sh-bas h1{font-size:32px;font-weight:800;line-height:1.1;color:var(--murekkep)}
.sh-bas p{margin-top:4px;font-size:15px;color:var(--soluk)}
.sh-bas-dg{display:flex;gap:8px;flex-wrap:wrap}
.sh-bas-dg .dg{border-radius:17px;height:34px;border-color:var(--cizgi);background:#fff;color:var(--levha)}
.sh-bas-dg .ik{width:16px;height:16px}
.sh-talep{background:#fff8e1;border:1px solid #f3dd9a;border-radius:16px;padding:14px 16px;margin-bottom:18px}
.sh-talep h2{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800;color:#5c4100}
.sh-talep h2 .ik{width:19px;height:19px}
.sh-talep h2 span{margin-left:auto;font-size:13px;background:#f2b705;color:#3a2a00;border-radius:10px;padding:1px 8px}
.sh-talep-satir{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 0;margin-top:10px;border-top:1px solid #f0e2b5}
.sh-talep-satir b{display:block;font-size:15.5px;color:var(--murekkep)}
.sh-talep-satir small{display:block;font-size:13px;color:var(--soluk)}
.sh-talep-satir .dg{flex:none;border-radius:16px}
.sh-arac{display:grid;gap:10px;margin-bottom:8px}
.sh-ara{display:flex;align-items:center;gap:8px;height:44px;padding:0 12px;border-radius:12px;background:rgba(118,118,128,.12)}
.sh-ara .ik{width:18px;height:18px;color:var(--soluk);flex:none}
.sh-ara input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:16px;color:var(--murekkep);outline:none}
.sh-suz{display:flex;gap:2px;padding:2px;border-radius:10px;background:rgba(118,118,128,.12);overflow-x:auto;scrollbar-width:none}
.sh-suz::-webkit-scrollbar{display:none}
.sh-suz button{flex:1 0 auto;height:32px;padding:0 12px;border-radius:8px;font-size:13.5px;font-weight:600;color:var(--murekkep);white-space:nowrap}
.sh-suz button.secili{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.sh-grup{margin-top:22px}
.sh-grup h2{display:flex;align-items:baseline;gap:8px;padding:0 4px 8px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--soluk);min-width:0}
.sh-grup h2 span{font-weight:600;letter-spacing:0}
.sh-liste{background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--cizgi-2)}
.sh-satir{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;text-align:left;min-width:0;background:#fff;transition:background .12s}
.sh-satir+.sh-satir{border-top:1px solid var(--cizgi-2)}
.sh-satir:hover{background:#f7f7fa}
.sh-satir:active{background:#eeeef2}
.sh-satir.kapali .sh-satir-ic b{color:var(--soluk);text-decoration:line-through}
.sh-av{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;flex:none;font-weight:800;font-size:16px;color:#fff;background:#8e8e93}
.sh-av-mudur{background:#0a4da2}.sh-av-sekreter{background:#5856d6}.sh-av-usta{background:#c25e00}.sh-av-ogrenci{background:#1e8e4e}.sh-av-ortak{background:#6b3e26}
.sh-satir-ic{flex:1;min-width:0}
.sh-satir-ic b{display:block;font-size:16px;font-weight:600;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-satir-ic small{display:block;font-size:13.5px;color:var(--soluk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-satir-sag{display:flex;align-items:center;gap:6px;flex:none;color:var(--soluk)}
.sh-satir-sag small{font-size:12.5px}
.sh-satir-sag .ik{width:16px;height:16px;opacity:.5}
.sh-rozet{font-style:normal;font-size:12px;font-weight:700;color:#8a1d14;background:var(--kirmizi-acik);border-radius:8px;padding:2px 8px}
.sh-bos{display:grid;justify-items:center;gap:6px;padding:48px 16px;color:var(--soluk);text-align:center}
.sh-bos .ik{width:28px;height:28px}
.sh-bos b{font-size:16px;color:var(--murekkep)}
.sh-bilgi{background:var(--panel-2);border-radius:12px;padding:4px 14px;margin-bottom:14px}
.sh-bilgi-satir{display:flex;justify-content:space-between;gap:12px;padding:10px 0;font-size:14.5px}
.sh-bilgi-satir+.sh-bilgi-satir{border-top:1px solid var(--cizgi-2)}
.sh-bilgi-satir span{color:var(--soluk);flex:none}
.sh-bilgi-satir b{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}
.sh-islem{display:grid;gap:8px}
.sh-islem-dg{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--cizgi);background:#fff;text-align:left}
.sh-islem-dg>.ik{width:22px;height:22px;flex:none;color:var(--levha)}
.sh-islem-dg b{display:block;font-size:15.5px;color:var(--murekkep)}
.sh-islem-dg small{display:block;font-size:13px;line-height:1.35;color:var(--soluk)}
.sh-islem-dg.birincil{background:var(--levha-acik);border-color:#c7d6ee}
.sh-islem-dg.tehlike>.ik,.sh-islem-dg.tehlike b{color:var(--kirmizi)}
.sh-islem-dg:disabled{opacity:.6}
.sh-tehlike{background:var(--kirmizi);color:#fff}
.sh-tehlike:hover{background:#b32217}
.sh-sifre-not{font-size:15px;line-height:1.45;color:var(--metin)}
.sh-sifre{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:14px 16px;border-radius:14px;background:var(--levha-acik)}
.sh-sifre span{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:26px;font-weight:700;letter-spacing:.08em;color:var(--levha-koyu);overflow-wrap:anywhere}
.sh-sifre-et{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--soluk);margin-bottom:6px}
.sh-mesaj{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:14px;line-height:1.45;background:var(--panel-2);border-radius:12px;padding:12px 14px;color:var(--metin)}
@media (min-width:720px){.sh-arac{grid-template-columns:minmax(0,1fr) auto;align-items:center}.sh-suz button{flex:0 0 auto}}
@media (max-width:420px){.sh-satir-sag small{display:none}.sh-bas h1{font-size:28px}}
/* Sahip araçları mdSinyal Yönetim içinde (Hesaplar bölümü) */
.sh-gomulu{min-height:0}
.sh-gomulu.sh-giris{display:grid;place-items:center;min-height:0;padding:8px 0 24px}
.sh-gomulu .sh-bas{margin-top:0;align-items:center}
.sh-gomulu .sh-bas h1{display:none}
.sh-gomulu .sh-bas p{margin-top:0;font-weight:600}
.sh-sen{font-style:normal;font-size:11.5px;font-weight:700;color:var(--levha);background:var(--levha-acik);border-radius:6px;padding:1px 6px;margin-left:4px;vertical-align:2px}
/* Kurslar (v149): duruma göre gruplar, etiketli alanlar */
.yn-kurs-grup{margin-top:22px}
.yn-kurs-grup-bas{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:0 2px}
.yn-kurs-grup-bas b{font-size:15px;font-weight:700;color:var(--murekkep)}
.yn-kurs-grup-bas small{font-size:14px;color:#6b6e76}
.yn-kurs-grup .yn-kurslar{margin-top:10px}
.yn-alanlar{display:grid;gap:10px;margin:12px 0 0}
.yn-alan dt{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8e9198}
.yn-alan dt .ik{width:13px;height:13px}
.yn-alan dd{margin:3px 0 0;font-size:14.5px;line-height:1.45;color:var(--murekkep)}
.yn-sonraki-bas{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.yn-zaman{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:999px;background:#fff;color:#0a4da2;font-size:12.5px;font-weight:600;box-shadow:inset 0 0 0 1px #d5e0f3}
.yn-zaman .ik{width:12px;height:12px}
.yn-kurs footer{display:grid;gap:8px;margin-top:12px}
.yn-alt-satir{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:baseline;gap:8px}
.yn-alt-satir>small{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8e9198}
.yn-etiketler{display:flex;flex-wrap:wrap;gap:6px}
.yn-etiket.uyari{background:#fff4e0;color:#8a4a00;font-weight:500}
.yn-alt-satir .yn-etiket{justify-self:start}
.yn-sonraki .yn-zaman{display:inline-flex;margin-top:0;color:#0a4da2;font-size:12.5px;line-height:1}
.yn-sonraki>span{margin-top:6px}
/* Kurslar (v151): kısa, okunur kutular; ayrıntı dokununca */
.krs-grup{display:flex;align-items:center;gap:8px;margin:0 2px 10px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b6e76}
.krs-grup i{width:8px;height:8px;border-radius:50%;background:var(--renk)}
.krs-grup span{font-weight:600;color:#a3a5ab;letter-spacing:0}
.krs-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.krs{display:flex;flex-direction:column;min-width:0;background:#fff;border-radius:16px;padding:14px 14px 12px;cursor:pointer;box-shadow:0 1px 2px rgba(11,24,48,.06);transition:box-shadow .15s,transform .15s}
.krs:hover{box-shadow:0 10px 24px -14px rgba(11,24,48,.35)}
.krs:active{transform:scale(.985)}
.krs:focus-visible{outline:2px solid #0a4da2;outline-offset:2px}
.krs-ust{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.krs-durum{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--koyu)}
.krs-durum i{width:8px;height:8px;border-radius:50%;background:var(--renk)}
.krs-zaman{min-width:0;font-size:12px;color:#8e9198;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.krs-ad{margin-top:8px;font-size:17px;font-weight:700;line-height:1.25;color:var(--murekkep);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.krs-kisi{margin-top:2px;font-size:13.5px;color:#8e9198;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.krs-sayilar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;border-radius:12px;background:#f5f5f8}
.krs-sayilar>div{min-width:0;padding:8px 10px}
.krs-sayilar>div+div{box-shadow:inset 1px 0 0 #e6e6eb}
.krs-sayilar small{display:block;font-size:11px;font-weight:600;color:#8e9198}
.krs-sayilar b{display:block;margin-top:2px;font-size:15px;font-weight:700;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.krs-sayilar b.krs-yok{color:#c7c7cc;font-weight:600}
.yr-soluk .krs-ad{color:#8e9198}
.krsd-ust{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.krsd-ust small{font-size:13px;color:#8e9198}
.krsd-sayilar{margin-top:0}
.krsd-sayilar b{font-size:18px}
.krsd-liste{margin-top:14px}
.krsd-satir{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px 0;border-top:.5px solid rgba(60,60,67,.14);font-size:15px;line-height:1.4}
.krsd-satir span{color:#8e9198}
.krsd-satir b{font-weight:500;color:var(--murekkep)}
.krsd-bas{margin:18px 0 6px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8e9198}
.krsd-not{font-size:15px;line-height:1.55;color:var(--murekkep)}
.krsd-etiketler{display:flex;flex-wrap:wrap;gap:6px}
.krsd-etiketler span{padding:4px 10px;border-radius:8px;background:#f5f5f8;font-size:13.5px;color:#3a3d42}
.yn-form-ikili{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px}
@media (max-width:420px){.krs-izgara{grid-template-columns:minmax(0,1fr)}.krsd-satir{grid-template-columns:92px minmax(0,1fr)}}
/* Alttan açılan pencere (v154): ekrandan uzun formlarda başlık ve düğmeler sabit kalır, yalnız içerik kayar */
.perde.alt-sayfa .pencere{display:flex;flex-direction:column;max-height:92vh;max-height:92dvh}
.perde.alt-sayfa .pencere>header,.perde.alt-sayfa .pencere>footer{flex:none}
.perde.alt-sayfa .pencere-govde{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@media (min-width:760px){.perde.alt-sayfa .pencere{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}}
/* çok satırlı yazı alanı (Notlar) */
.og-girdi.yn-alan-uzun{height:auto;min-height:52px;align-items:stretch;padding:10px 12px 8px 14px}
.og-girdi.yn-alan-uzun textarea{flex:1;width:100%;min-width:0;min-height:88px;border:0;outline:0;background:none;resize:vertical;font:16px/1.45 var(--govde);color:var(--murekkep)}
.og-girdi.yn-alan-uzun textarea::placeholder{color:#a3a7ad}
.yn-form .og-girdi input[type=number]{-moz-appearance:textfield}
@media (max-width:420px){.yn-form-ikili{grid-template-columns:minmax(0,1fr)}}
/* Sahip araçları (v155): alt sekmeler, kurs istatistikleri, silinenler, destek ve hizmetler */
.sh-alt{margin:4px 0 14px}
.sh-alt button em,.sh-suz button em{font-style:normal;font-weight:600;color:#8e9198;margin-left:2px}
.sh-ist-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.sh-ist{background:#fff;border-radius:16px;padding:14px;border:1px solid var(--cizgi-2);cursor:pointer;min-width:0;transition:box-shadow .15s}
.sh-ist:hover{box-shadow:0 10px 24px -14px rgba(11,24,48,.35)}
.sh-ist header b{display:block;font-size:17px;font-weight:700;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-ist header small{display:block;margin-top:2px;font-size:13px;color:#8e9198}
.sh-ist-kutular{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:12px;border-radius:12px;overflow:hidden;background:#e6e6eb}
.sh-ist-kutular>div{background:#f5f5f8;padding:9px 10px;min-width:0}
.sh-ist-kutular small{display:block;font-size:11px;font-weight:600;color:#8e9198;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-ist-kutular b{display:block;margin-top:2px;font-size:17px;font-weight:700;color:var(--murekkep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-ist-kutular span{display:block;font-size:11.5px;line-height:1.3;color:#8e9198}
.sh-ist footer{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:13px;color:#6b6e76}
.sh-ist footer span{display:inline-flex;align-items:center;gap:5px}
.sh-ist footer .ik{width:14px;height:14px}
.sh-ist footer .uyar{color:#a8241a;font-weight:600}
.sh-silinen{cursor:default}
.sh-silinen .sh-satir-sag{gap:8px}
.sh-silinen .dg{border-radius:16px}
.sh-av-hizmet{background:#1e8e4e}
.sh-av-hizmet .ik{width:18px;height:18px;color:#fff}
.sh-ucret{font-size:14.5px;color:var(--murekkep)}
.sh-t-nokta{width:10px;height:10px;border-radius:50%;flex:none;margin:0 6px 0 4px;background:var(--t-renk,#8e9198)}
.sh-t-acik{--t-renk:#e0483d}.sh-t-inceleniyor{--t-renk:#e3a300}.sh-t-cozuldu{--t-renk:#28a05a}
.sh-t-cozuldu .sh-satir-ic b{color:#8e9198}
.sh-durum-r{font-style:normal;font-size:12px;font-weight:700;color:var(--t-renk,#6b6e76)}
.sh-durum-sec{display:flex;flex-wrap:wrap;gap:6px}
.sh-durum-sec button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:18px;background:#fff;border:1px solid var(--cizgi);font-size:14px;font-weight:600;color:#3a3d42}
.sh-durum-sec button i{width:8px;height:8px;border-radius:50%;background:var(--t-renk,#8e9198)}
.sh-durum-sec button.secili{background:#0b1830;border-color:#0b1830;color:#fff}
/* Kurs tarafı: mdSinyal Destek */
.ds-tur{margin-bottom:4px}
.ds-wa{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;border-radius:12px;background:#eef6f0;color:#14663a;font-weight:600;font-size:14.5px}
.ds-wa .ik{width:20px;height:20px;flex:none}
.ds-wa small{display:block;font-weight:500;color:#5b7a66;font-size:12.5px}
.ds-liste{display:grid;gap:8px}
.ds-talep{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid var(--cizgi-2)}
.ds-talep>div{min-width:0}
.ds-talep b{display:block;font-size:14.5px;font-weight:600;color:var(--murekkep);overflow-wrap:anywhere}
.ds-talep small{display:block;font-size:12.5px;color:#8e9198;margin-top:2px}
.ds-cevap{display:flex;gap:6px;margin-top:6px;font-size:13.5px;line-height:1.4;color:#3a3d42}
.ds-cevap .ik{width:14px;height:14px;flex:none;margin-top:2px;color:#0a4da2}
.ds-cevap b{display:inline;font-size:inherit}
.ds-durum{flex:none;font-style:normal;font-size:12px;font-weight:700;padding:3px 8px;border-radius:8px;background:#fde7e5;color:#a8241a}
.ds-durum.bak{background:#fff4cf;color:#7a5200}.ds-durum.ok{background:#e3f4ea;color:#14663a}
@media (max-width:420px){.sh-ist-izgara{grid-template-columns:minmax(0,1fr)}.sh-silinen .sh-satir-sag{flex-direction:column;align-items:flex-end}}
/* Gelir-Gider: satırda düzenle ve sil (v157) */
.yn-h-dg{white-space:nowrap;text-align:right;width:1%}
.yn-h-dg button{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;color:#6b6e76}
.yn-h-dg button:hover{background:#f0f0f4;color:#0a4da2}
.yn-h-dg button.sil:hover{background:#fde7e5;color:#d52b1e}
.yn-h-dg .ik{width:16px;height:16px}
.yn-h-dg small{font-size:11.5px;color:#a3a5ab}
/* Gelir-Gider telefonda: her hareket tek kart satırı (açıklama + tutar, altta tarih, kategori, belge, düzenle/sil) */
@media (max-width:600px){
  .yn-kasa-tablo thead{display:none}
  .yn-kasa-tablo,.yn-kasa-tablo tbody{display:block;width:100%}
  .yn-kasa-tablo tr{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"ac ac ac tu" "ta ka be dg";align-items:center;gap:2px 8px;padding:10px 12px;border-bottom:.5px solid rgba(60,60,67,.12)}
  .yn-kasa-tablo tr:last-child{border-bottom:0}
  .yn-kasa-tablo td{display:block;padding:0!important;border:0!important;background:none!important;min-width:0}
  .yn-kasa-tablo td::before{display:none!important}
  .yn-kasa-tablo td:nth-child(1){grid-area:ta;font-size:12.5px;color:#8e9198}
  .yn-kasa-tablo td:nth-child(2){grid-area:ac;font-size:15px}
  .yn-kasa-tablo td:nth-child(2) small{display:inline;margin-left:6px;font-size:12.5px;color:#8e9198}
  .yn-kasa-tablo td:nth-child(3){grid-area:ka;font-size:12.5px;color:#8e9198;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .yn-kasa-tablo td:nth-child(4){grid-area:tu;font-weight:700;font-size:15px;text-align:right;white-space:nowrap}
  .yn-kasa-tablo td:nth-child(5){grid-area:be}
  .yn-kasa-tablo td:nth-child(5) .yn-belge{width:28px;height:28px}
  .yn-kasa-tablo td:nth-child(6){grid-area:dg;width:auto}
}

/* ================= Sabit yerleşim (v160): sayfadan sayfaya geçerken hiçbir şey zıplamasın ================= */
/* Üst çubuk her sayfada aynı yükseklikte: uzun alt başlık tek satırda kısalır, kullanıcı düğmesi satır kırmaz */
.ust{height:74px;min-height:0}
.ust-baslik{flex:1 1 auto;min-width:0}
.ust-baslik small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ust .arama{flex:0 1 auto;min-width:0}
.kullanici-cip{flex:none;white-space:nowrap;max-width:180px}
.kullanici-cip b,.kullanici-cip small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kc-bas{display:none}
@media (max-width:900px){
  .ust{height:62px}
  .ust-baslik h1{display:block;-webkit-line-clamp:unset;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
  /* telefonda kullanıcı düğmesi baş harfli yuvarlak: 40×40, hiç kırılmaz */
  .kullanici-cip{width:40px;height:40px;max-width:none;padding:0;border-radius:50%;align-items:center;justify-content:center}
  .kullanici-cip b,.kullanici-cip small{display:none}
  .kc-bas{display:block;font:800 14px/1 var(--baslik);font-style:normal;color:var(--murekkep)}
  .mobil-ust-sol{min-width:40px;min-height:40px}
}
/* dokunma alanları en az 36 px (parmakla rahat basılsın) */
.ziyaretci-serit button{min-height:36px}
@media (max-width:600px){
  .bolum-bas .rol button{min-height:36px}
  .ipucu button{min-height:32px;padding-top:6px;padding-bottom:6px}
  .tablo input[type=checkbox]{width:20px;height:20px}
  .olcum-h a,.gosterge a{display:inline-block;padding:7px 0}
}
/* Pencereler: ekrandan uzun içerikte başlık ve düğmeler yerinde kalır, yalnız içerik kayar */
.pencere{display:flex;flex-direction:column;max-height:88vh;max-height:88dvh}
.pencere>header,.pencere>footer{flex:none}
.pencere-govde{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
@media (max-width:900px){.pencere{max-height:94vh;max-height:94dvh}}
/* başlık bloğu: tarih ve "Kaydedildi" aynı satırda, altında sayfa adı; üst çubuğun yüksekliğini aşmaz */
.ust{padding-top:10px;padding-bottom:10px}
.ust-baslik{display:grid;grid-template-columns:minmax(0,max-content) auto;align-items:center;justify-content:start;column-gap:0}
.ust-baslik small{grid-column:1;min-width:0}
.ust-baslik .bulut-durum{grid-column:2;white-space:nowrap}
.ust-baslik h1{grid-column:1/-1;min-width:0}
.an-bag{display:inline-block;padding:8px 0;margin:-8px 0;color:inherit}

/* ---------- Giriş ekranları gece temasında (v181): kurs ekibi, öğretmen, öğrenci ve Yönetim girişi ---------- */
/* Renkler yalnız giriş kapsayıcısında yeniden tanımlanır; uygulamanın geri kalanı etkilenmez. Tanıtım sitesiyle aynı: gece göğü, cam kart, sinyal sarısı */
.giris,.og-giris{
  --zemin:#070b14;--panel:rgba(255,255,255,.05);--panel-2:rgba(255,255,255,.08);
  --murekkep:#f3f5fa;--metin:rgba(214,222,238,.8);--soluk:rgba(214,222,238,.56);
  --cizgi:rgba(255,255,255,.16);--cizgi-2:rgba(255,255,255,.09);
  --levha:#ffc21a;--levha-koyu:#ffd24d;--levha-acik:rgba(255,194,26,.16);--sari-acik:rgba(255,194,26,.12);
  position:relative;isolation:isolate;color:var(--metin);
  background:radial-gradient(60% 40% at 50% 108%,rgba(255,170,70,.2),transparent 70%),radial-gradient(55% 45% at 15% 0,rgba(46,107,255,.18),transparent 70%),linear-gradient(180deg,#03060c,#0a1222 62%,#111b31)}
.giris::before,.og-giris::before{content:"";position:absolute;z-index:-1;inset:0 0 35% 0;pointer-events:none;opacity:.7;background-image:radial-gradient(1px 1px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 27% 8%,rgba(255,255,255,.8),transparent),radial-gradient(1.2px 1.2px at 44% 22%,#fff,transparent),radial-gradient(1px 1px at 63% 12%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 78% 26%,#fff,transparent),radial-gradient(1px 1px at 88% 9%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 8% 40%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 93% 44%,rgba(255,255,255,.6),transparent),radial-gradient(1.2px 1.2px at 55% 38%,rgba(255,255,255,.5),transparent)}
.giris::after,.og-giris::after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,196,120,.45) 50%,transparent);pointer-events:none}
body:has(.giris),body:has(.og-giris){background:#070b14}
/* kart: cam */
:is(.giris,.og-giris) .giris-levha,:is(.giris,.og-giris) .og-giris-kart{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 40px 90px -40px rgba(0,0,0,.85)}

:is(.giris,.og-giris) .og-giris-ust .logo,:is(.giris,.og-giris) .giris-levha .logo{color:#fff}
/* alanlar */
:is(.giris,.og-giris) .giris-eposta input:not([type=checkbox]),:is(.giris,.og-giris) .og-girdi,:is(.giris,.og-giris) .giris-pin input{background:rgba(255,255,255,.05);border-color:var(--cizgi);color:#fff}
:is(.giris,.og-giris) .og-girdi input,:is(.giris,.og-giris) .giris-eposta input:not([type=checkbox]){color:#fff}
:is(.giris,.og-giris) .og-girdi input::placeholder,:is(.giris,.og-giris) .giris-eposta input::placeholder,:is(.giris,.og-giris) .giris-pin input::placeholder{color:rgba(214,222,238,.4)}
:is(.giris,.og-giris) .giris-eposta input:not([type=checkbox]):focus-visible,:is(.giris,.og-giris) .og-girdi:focus-within{border-color:var(--sari);box-shadow:0 0 0 3px rgba(255,194,26,.2)}
.giris input[type=checkbox],.og-giris input[type=checkbox]{accent-color:#ffc21a}
/* ana düğmeler: sinyal sarısı */
.giris .dg-koyu,:is(.giris,.og-giris) .giris-pin .dg-koyu,.og-giris .dg-ana{background:var(--sari,#ffc21a);color:#0b1220;box-shadow:0 12px 28px -14px rgba(255,170,0,.6)}
.giris .dg-koyu:hover,:is(.giris,.og-giris) .giris-pin .dg-koyu:hover,.og-giris .dg-ana:hover{background:#ffd24d}
.giris .dg-hafif,.og-giris .dg-hafif{background:rgba(255,255,255,.06);color:#fff;border-color:var(--cizgi)}
/* demo ve kişi seçimi */
:is(.giris,.og-giris) .giris-demo{background:rgba(255,255,255,.05);border-color:var(--cizgi-2);color:#fff}
:is(.giris,.og-giris) .giris-demo:hover{background:rgba(255,194,26,.1);border-color:rgba(255,194,26,.4)}
:is(.giris,.og-giris) .giris-kisi{background:rgba(255,255,255,.04);border-color:var(--cizgi);color:#fff}
:is(.giris,.og-giris) .giris-kisi.secili,:is(.giris,.og-giris) .giris-kisi:hover{background:rgba(255,194,26,.14);border-color:rgba(255,194,26,.45);color:#ffd24d}
:is(.giris,.og-giris) .giris-kisi.secili em,:is(.giris,.og-giris) .giris-kisi:hover em{background:rgba(255,255,255,.08)}
:is(.giris,.og-giris) .og-giris-not{background:rgba(255,194,26,.12);color:#ffdf8a}
:is(.giris,.og-giris) .giris-geri:hover{color:#ffd24d}

/* Form doğrulama (denetim B022): zorunlu alan işareti ve alan altında hata */
.alan:has(> [required]) > label::after,.alan.zorunlu > .et::after{content:" *";color:var(--kirmizi);font-weight:700}
.alan-hata{display:block;margin-top:5px;color:var(--kirmizi);font-size:13px;font-weight:600;line-height:1.35}
[aria-invalid="true"]:not([type=radio]):not([type=checkbox]){border-color:var(--kirmizi)!important;box-shadow:0 0 0 3px rgba(198,40,40,.14)!important}
.alan.hatali .secim{border-radius:12px;box-shadow:0 0 0 2px var(--kirmizi)}
label.hatali{color:var(--kirmizi)}

/* Telefonda dokunma hedefleri ve yerleşim (denetim B003, B009, B013, B019) */
@media (max-width:700px){
  .dg-hafif{min-height:40px}
  .portal-og .dg,.og-defter .dg,.og-taksit .dg,.tk2-mod button,.tk2-hgun .dg{min-height:40px}
  .yan nav a{padding:11px 12px}
  .og-ozet-kutular>:nth-child(odd):last-child{grid-column:1/-1}
}
.u-etiket{white-space:nowrap}

/* öğretmen programı: gün etiketi günün ilk dersine hizalı (denetim B002) */
.u-tablo td.u-gun{vertical-align:top;padding-top:12px}

/* pencere açıkken telefonda bildirim üste çıkar; alttaki eylem düğmelerini örtmez (denetim B012) */
@media (max-width:700px){body.kilitli .bildirimler{top:calc(12px + env(safe-area-inset-top,0px));bottom:auto}}

/* evrak satırı: anahtarın ne olduğu yazılı (denetim B015) */
.evrak .anahtar{margin-left:62px}
.evrak .anahtar::before{content:"Teslim";position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);font-size:12.5px;font-weight:700;color:var(--soluk);white-space:nowrap;pointer-events:none}

/* "tik" hem küçük onay işareti hem tıklanabilir tablo satırı sınıfı: satır yazı tipini değiştirmesin (denetim B020) */
tr.tik{font:inherit;color:inherit;margin-right:0}

/* öğrenci dosyası üst kutuları: telefonda kesilmesin, iki satıra insin (denetim B017) */
@media (max-width:700px){.serit-kutu b{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}}

/* plan gün şeridi: kaydırılabildiği kenarlarda belli olsun (denetim B021) */
.gun-sec{-webkit-mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent)}

/* öğrenci listesi (telefon): ilerleme çubuğu ile tutar arasında boşluk (denetim B016) */
@media (max-width:700px){.tablo-mobil td:has(> .yol){padding-right:22px}}

/* Yönetim: üst etikette marka büyük harfe dönmesin; alt sekme yazısı tek satır (denetim B029, B030) */
.yn-ic>small{text-transform:none;letter-spacing:.02em}
.yn-alt button span{white-space:nowrap;letter-spacing:-.01em}

/* Yönetim: telefonda "Hesaplar" alt çubukta değil profil menüsünde (bilgisayarda yan menüde kalır) */
.yn-alt [data-yn-sekme="hesaplar"]{display:none}

/* Direksiyon planı telefonda: saat sırasıyla liste; bilgisayarda araç/öğretmen ızgarası */
.ptl-liste{display:none;list-style:none;margin:0;padding:4px 0}
.ptl-saat{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;align-items:start;padding:10px 14px;border-top:1px solid var(--cizgi-2)}
.ptl-saat:first-child{border-top:0}
.ptl-s{font-family:var(--mono);font-size:15px;font-weight:700;color:var(--murekkep);padding-top:10px}
.ptl-ogle{align-items:center;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(0,0,0,.035) 8px 16px)}
.ptl-ogle .ptl-s{padding-top:0}.ptl-ogle span{color:var(--soluk);font-size:14px}
.ptl-dersler{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-flow:row;gap:6px;min-width:0}
.ptl-ders{display:block;width:100%;text-align:left;padding:9px 12px;border-radius:9px;background:var(--levha);color:#fff;min-height:44px}
.ptl-ders b{display:block;font:800 15px/1.25 var(--baslik)}
.ptl-ders small{display:block;font-size:12.5px;opacity:.88;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ptl-ders.yapildi{background:var(--yesil)}
.ptl-ders.gelmedi{background:var(--kirmizi)}
.ptl-bos{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:9px;border:1.5px dashed var(--cizgi);color:var(--levha);font-weight:700;font-size:14px;background:transparent}
.ptl-bos .ik{width:18px;height:18px}
.ptl-dolu{color:var(--soluk);font-size:14px;padding-top:12px}
.ptl-sec{display:grid;gap:8px}.ptl-sec .dg{justify-content:flex-start;min-height:44px}
@media (max-width:700px){
  .sayfa-plan .takvim{display:none}
  .sayfa-plan .ptl-liste{display:block}
}
/* Ayarlar › Kurs: banka hesapları listesi (v191) */
.iban-liste{display:grid;gap:8px;margin:4px 0 6px}
.iban-satir{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--cizgi);border-radius:var(--r);background:var(--panel)}
.iban-bilgi{display:grid;gap:2px;min-width:0}
.iban-bilgi b{color:var(--murekkep);font-size:14.5px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.iban-bilgi .mono{font-size:13.5px;word-break:break-all;color:var(--metin)}
.iban-bilgi small{color:var(--soluk);font-size:12.5px}
.iban-bos{color:var(--soluk);font-size:13.5px}
.iban-liste>[data-iban-ekle]{justify-self:start}
.og-iban-kart .og-bas+.og-bas{margin-top:12px;padding-top:12px;border-top:1px solid var(--cizgi-2)}
.og-iban-kart .og-bas small+small{display:block;margin-top:2px}
/* Dar sağ sütunlar (Windows'ta %125 ölçek, ~1230 px): taşma düzeltmeleri (v193) */
.yl-satir{grid-template-columns:34px minmax(0,1fr) auto}
.yl-ad{min-width:0;overflow-wrap:anywhere}
.yl-deger{font-size:clamp(22px,2.3vw,34px)}
.dg.dg-sar{white-space:normal;height:auto;min-height:34px;padding-top:6px;padding-bottom:6px;line-height:1.25;text-align:left;max-width:100%}
.dg.dg-sar .ik{flex:none}
/* Sınav güzergâhları: öğrenci ve öğretmen ekranı (v194) */
.og-gz{border-top:1px solid var(--cizgi-2);padding:10px 0}
.og-gz:first-of-type{border-top:0}
.og-gz summary{cursor:pointer;display:grid;gap:2px}
.og-gz summary small{display:block;font-size:13px;opacity:.75;font-weight:400}
.og-deneyim{margin:8px 0;padding:10px 12px;border-left:3px solid var(--sari);background:var(--panel-2);border-radius:6px;font-size:14px;line-height:1.45}
.og-deneyim small{display:block;margin-top:4px;opacity:.7;font-size:12.5px}
.og-gz-form textarea,.og-gz-form select{width:100%;font:inherit;padding:10px;border:1px solid var(--cizgi);border-radius:10px;background:var(--panel)}
.u-gz summary{list-style:none}
