/* Portal styles. .portal-* is the bar injected into the application; body.pt scopes the portal's own pages. */

/* MuhaSoft identity (same mark, word mark and colours as MuhaSoft's other apps): navy #0b2a4a, blue #2f6fed, light #8fc0ff */
.ms-marka { display:flex; align-items:center; gap:8px; text-decoration:none !important; color:#fff; white-space:nowrap; flex:none }
.ms-marka img { width:26px; height:26px; display:block }
.ms-ad { font-size:17px; font-weight:600; letter-spacing:.2px; color:#fff }
.ms-ad b { font-weight:800; color:#8fc0ff }
.ms-urun { font-size:11px; font-weight:600; color:#cfe0ff; border:1px solid rgba(143,192,255,.45); border-radius:10px; padding:1px 8px }
.ms-marka.buyuk { justify-content:center; gap:10px; pointer-events:none }
.ms-marka.buyuk img { width:40px; height:40px }
.ms-marka.buyuk .ms-ad { font-size:25px; color:#0b2a4a } .ms-marka.buyuk .ms-ad b { color:#2f6fed }
.ms-marka.buyuk .ms-urun { color:#2f6fed; border-color:#b9cff8; font-size:12px }
/* application bar: brand on the left, MuhaSoft navy */
#pencereler { background:#0b2a4a !important; align-items:flex-end }
#pencereler > .ms-marka { align-self:center; margin:0 16px 4px 4px }
#pencereler > button:not(.on) { background:#12365f !important }
@media (max-width:800px) { #pencereler > .ms-marka .ms-urun { display:none } }
.portal-sag { margin-left:auto; display:flex; align-items:center; gap:14px; padding:0 4px 4px; color:#d8e4f5; font-size:12.5px; white-space:nowrap }
.portal-sag a { color:#d8e4f5; text-decoration:none; border-bottom:1px solid transparent }
.portal-sag a:hover { color:#fff; border-bottom-color:#9fc0ec }
.portal-kul { font-weight:600; color:#fff; max-width:220px; overflow:hidden; text-overflow:ellipsis }
.portal-kul::before { content:""; display:inline-block; width:7px; height:7px; border-radius:50%; background:#46c47e; margin-right:7px; vertical-align:1px }
.portal-cikis { font:inherit; color:#10233f; background:#dbe8f7; border:0; border-radius:4px; padding:3px 10px; cursor:pointer }
.portal-cikis:hover { background:#fff }
#dogrulamaAc, #s-dogrulama, a[href^="/karsilastirma"] { display:none !important }
@media (max-width:800px) { .portal-sag { gap:10px } .portal-kul { max-width:120px } }

body.pt {
  --pt-bg:#f3f6fb; --pt-yuzey:#ffffff; --pt-cizgi:#d9e1ec; --pt-metin:#16202f; --pt-soluk:#5f6d82; --pt-lacivert:#0b2a4a;
  --pt-vurgu:#2f6fed; --pt-vurgu-acik:#e8f0fc; --pt-iyi:#1d8a4a; --pt-kotu:#c2372f; --pt-sari:#b7791f;
  margin:0; min-height:100vh; background:var(--pt-bg); color:var(--pt-metin);
  font:14px/1.5 "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}
body.pt * { box-sizing:border-box }
.pt [hidden] { display:none !important }
.pt a { color:var(--pt-vurgu) }
.pt h1, .pt h2, .pt h3 { margin:0; font-weight:600; letter-spacing:-.01em }
.pt h2 { font-size:16px }
.pt-soluk { color:var(--pt-soluk) }
.pt-hata { color:var(--pt-kotu); min-height:20px; font-size:13px }

/* header */
.pt-ust { display:flex; align-items:center; gap:18px; background:var(--pt-lacivert); color:#e6eefa; padding:0 20px; height:52px; position:sticky; top:0; z-index:10 }
.pt-marka { color:#fff !important; font-weight:700; font-size:17px; text-decoration:none; letter-spacing:-.01em }
.pt-nav { display:flex; gap:4px }
.pt-nav a { color:#c9d8ee; text-decoration:none; padding:6px 10px; border-radius:6px; font-size:13.5px }
.pt-nav a:hover { background:rgba(255,255,255,.08); color:#fff }
.pt-nav a.on { background:rgba(255,255,255,.14); color:#fff }
.pt-bosluk { flex:1 }
.pt-kul { font-size:13px; color:#fff; font-weight:600; max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }

/* controls */
.pt-dugme { font:inherit; font-size:13.5px; font-weight:600; border:1px solid var(--pt-vurgu); background:var(--pt-vurgu); color:#fff; border-radius:7px; padding:7px 14px; cursor:pointer }
.pt-dugme:hover { filter:brightness(1.08) }
.pt-dugme:disabled { opacity:.6; cursor:default }
.pt-dugme.ikinci { background:transparent; color:var(--pt-vurgu) }
.pt-ust .pt-dugme.ikinci { color:#e6eefa; border-color:rgba(255,255,255,.35); padding:5px 12px }
.pt-dugme.genis { width:100% }
.pt input, .pt select { font:inherit; color:inherit; border:1px solid var(--pt-cizgi); border-radius:7px; padding:7px 10px; background:#fff; min-width:0 }
.pt input:focus, .pt select:focus { outline:2px solid var(--pt-vurgu-acik); border-color:var(--pt-vurgu) }
.pt label { display:flex; flex-direction:column; gap:4px; font-size:12.5px; color:var(--pt-soluk); font-weight:600 }

/* layout */
.pt-ana { max-width:1280px; margin:0 auto; padding:20px; display:flex; flex-direction:column; gap:16px }
.pt-kart { background:var(--pt-yuzey); border:1px solid var(--pt-cizgi); border-radius:10px; padding:16px 18px }
.pt-kart-bas { display:flex; align-items:center; gap:12px; margin-bottom:12px; flex-wrap:wrap }
.pt-kart-bas h2 { margin-right:auto }
.pt-sekmeler { display:flex; gap:4px; border-bottom:1px solid var(--pt-cizgi); flex-wrap:wrap }
.pt-sekmeler button { font:inherit; font-size:13.5px; border:0; background:none; color:var(--pt-soluk); padding:8px 12px; cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-1px }
.pt-sekmeler button.on { color:var(--pt-vurgu); border-bottom-color:var(--pt-vurgu); font-weight:600 }
.pt-form { display:flex; flex-wrap:wrap; gap:10px 12px; align-items:flex-end; margin-bottom:12px }
.pt-form label { flex:1 1 160px }

/* tables */
.pt-tablo-kap { overflow:auto; max-height:70vh; border:1px solid var(--pt-cizgi); border-radius:8px }
.pt-tablo { border-collapse:collapse; width:100%; font-size:13px }
.pt-tablo th { position:sticky; top:0; background:#eef2f8; text-align:left; font-weight:600; color:#334156; padding:7px 10px; border-bottom:1px solid var(--pt-cizgi); white-space:nowrap; z-index:1 }
.pt-tablo td { padding:6px 10px; border-bottom:1px solid #edf1f6; vertical-align:top }
.pt-tablo td.n, .pt-tablo th.n { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap }
.pt-tablo tr.tik { cursor:pointer }
.pt-tablo tr.tik:hover td { background:#f5f8fd }
.pt-tablo tr.secili td { background:var(--pt-vurgu-acik) }
.pt-tablo td.kisa { max-width:360px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.pt-rozet { display:inline-block; padding:1px 8px; border-radius:10px; font-size:11.5px; font-weight:600; background:#eceff4; color:var(--pt-soluk); white-space:nowrap }
.pt-rozet.iyi { background:#dcf3e5; color:var(--pt-iyi) } .pt-rozet.kotu { background:#fbe1df; color:var(--pt-kotu) } .pt-rozet.mavi { background:var(--pt-vurgu-acik); color:var(--pt-vurgu) }
.pt-bos { color:var(--pt-soluk); padding:18px; text-align:center }

/* stat tiles */
.pt-ozet { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:10px; margin-bottom:14px }
.pt-ozet div { border:1px solid var(--pt-cizgi); border-radius:8px; padding:10px 12px; background:#fafcff }
.pt-ozet b { display:block; font-size:20px; font-variant-numeric:tabular-nums; letter-spacing:-.01em }
.pt-ozet span { color:var(--pt-soluk); font-size:12px }

/* progress */
.pt-ilerleme { height:6px; background:#e7edf5; border-radius:3px; overflow:hidden; min-width:60px }
.pt-ilerleme i { display:block; height:100%; background:var(--pt-vurgu); border-radius:3px }

/* login */
.pt-giris { min-height:100vh; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:24px 16px;
  background:radial-gradient(1200px 600px at 50% -10%, #2f6fed 0%, #12365f 42%, #0b2a4a 100%) }
.pt-giris-kart { width:100%; max-width:380px; background:#fff; border-radius:14px; padding:32px 30px 26px; box-shadow:0 18px 50px rgba(5,15,35,.35) }
.pt-logo { margin-bottom:6px } .pt-giris-kart > .pt-soluk { text-align:center }
.pt-giris-kart form { display:flex; flex-direction:column; gap:14px; margin-top:22px }
.pt-giris-kart input { padding:10px 12px; font-size:15px }
.pt-giris-kart .pt-dugme { padding:10px 14px; font-size:15px }
.pt-giris-alt { color:#a9bddb; font-size:12px; margin-top:18px }

/* support videos */
.pt-destek { display:grid; grid-template-columns:340px 1fr; gap:16px; align-items:start }
.pt-video-liste { display:flex; flex-direction:column; gap:6px; margin-top:12px; max-height:calc(100vh - 170px); overflow:auto }
.pt-video-oge { text-align:left; font:inherit; color:inherit; border:1px solid var(--pt-cizgi); background:#fff; border-radius:8px; padding:10px 12px; cursor:pointer; display:flex; flex-direction:column; gap:6px }
.pt-video-oge:hover { border-color:#b7c8e2 }
.pt-video-oge.on { border-color:var(--pt-vurgu); background:var(--pt-vurgu-acik) }
.pt-video-oge b { font-weight:600; font-size:13.5px }
.pt-video-oge small { color:var(--pt-soluk); font-size:12px; display:flex; justify-content:space-between; gap:8px }
.pt-oynatici video { width:100%; max-height:calc(100vh - 230px); background:#0b1220; border-radius:8px; margin-top:12px; display:block }
@media (max-width:860px) {
  .pt-destek { grid-template-columns:1fr }
  .pt-video-liste { max-height:none }
  .pt-ust { gap:10px; padding:0 12px; height:auto; min-height:52px; flex-wrap:wrap }
  .pt-nav a { padding:6px 6px }
  .pt-ana { padding:12px }
}
