﻿/* Ortak ziyaretçi sayfası kabuğu: ana sayfadaki sabit sol rayın
   Belgelerimiz ve Yangın Ön Değerlendirme sayfalarındaki karşılığı. */
:root { --public-rail: 196px; --public-max: 1280px; --public-gutter: clamp(24px, 3vw, 44px); }

.public-side-nav,
.public-menu-toggle,
.public-nav-backdrop { display: none; }

@media (min-width: 769px) {
  body.public-shell { padding-inline-start: var(--public-rail); }

  .public-side-nav {
    position: fixed;
    z-index: 1200;
    inset: 0 auto 0 0;
    display: flex;
    flex-direction: column;
    inline-size: var(--public-rail);
    block-size: 100dvh;
    padding: 24px 14px 28px;
    overflow-y: auto;
    background: linear-gradient(160deg, #071a38 0%, #0b2147 68%, #112e60 100%);
    box-shadow: 8px 0 28px rgba(5, 20, 47, .18);
  }

  /* Sol panel markası: ray genişliğiyle birlikte okunaklı, ortak logo ölçeği. */
  .public-side-brand { display: block; margin: 0 8px 46px; }
  .public-side-brand img { display: block; inline-size: 100%; max-inline-size: none; border-radius: 6px; }
  .public-side-links { display: grid; gap: 3px; }
  .public-side-links a {
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: rgba(255,255,255,.82);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.3;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
  }
  .public-side-links a:hover,
  .public-side-links a.active { border-color: rgba(255,158,111,.4); background: rgba(255,255,255,.1); color: #fff; transform: translateX(3px); }
  .public-side-location { margin-block-start: auto; padding-top: 26px; color: rgba(255,255,255,.5); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-align: center; }
  .site-visitor-stats { display: grid; gap: 4px; margin-top: 12px; padding: 10px 6px 0; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.58); font-size: 10px; line-height: 1.35; text-align: center; }
  .site-visitor-stats strong { display: block; color: #fdba74; font-size: 13px; }

  .public-shell .public-topbar {
    min-block-size: 74px;
    padding-inline: var(--public-gutter);
    background: #fff;
    border-block-end: 1px solid #dbe5f0;
    color: #0b2147;
  }
  .public-shell .public-topbar .back { color: #0b2147; font-weight: 700; }
  .public-shell .public-topbar .brand { color: #0b2147; }
  .public-shell .public-topbar .brand span { color: #FF9E6F; }

  .public-shell main,
  .public-shell .wrap {
    inline-size: 100%;
    max-inline-size: var(--public-max);
    margin-inline: auto;
    padding-inline: var(--public-gutter);
  }
}

@media (max-width: 768px) {
  body.public-shell { padding-inline-start: 0; }
  .public-shell .public-topbar { min-block-size: 66px; padding-inline: 20px; }
  .public-shell .public-topbar { position: relative; }
  .public-shell .public-topbar .back { display: none; }

  .public-side-nav .site-visitor-stats {
    position: static;
    display: grid;
    gap: 3px;
    margin-top: 16px;
    padding: 10px 6px 0;
    border-top: 1px solid rgba(255,255,255,.13);
    color: #0b2147;
    font-size: 10px;
    line-height: 1.3;
    text-align: center;
    white-space: normal;
    box-sizing: border-box;
  }

  .public-side-nav .site-visitor-stats strong {
    display: block;
    color: #0b2147;
    font-size: 12px;
    font-weight: 800;
  }

  .public-side-nav .site-visitor-stats .visitor-stat-line {
    display: block !important;
    gap: 1px;
    inline-size: 100%;
  }

  .public-side-nav .site-visitor-stats .visitor-stat-line > span,
  .public-side-nav .site-visitor-stats .visitor-stat-line > strong { display: block; }

  .public-menu-toggle {
    position: relative;
    z-index: 1302;
    display: grid;
    inline-size: 44px;
    block-size: 44px;
    place-items: center;
    border: 1px solid rgba(11,33,71,.2);
    border-radius: 12px;
    background: #fff;
    color: #0b2147;
    font-size: 22px;
    cursor: pointer;
  }
  .public-nav-backdrop {
    position: fixed;
    z-index: 1300;
    inset: 0;
    border: 0;
    background: rgba(3,12,30,.55);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .25s ease, visibility 0s linear .25s;
  }
  .public-nav-backdrop.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transition-delay: 0s; }

  .public-side-nav {
    position: fixed;
    z-index: 1301;
    inset: 0 auto 0 0;
    display: flex;
    flex-direction: column;
    inline-size: min(320px, 84vw);
    padding: 30px 20px;
    overflow-y: auto;
    background: linear-gradient(160deg, #071a38, #0b2147);
    box-shadow: 10px 0 40px rgba(0,0,0,.18);
    clip-path: inset(0 100% 0 0);
    visibility: hidden;
    pointer-events: none;
    transition: clip-path .28s ease, visibility 0s linear .28s;
  }
  .public-side-nav.is-open { clip-path: inset(0); visibility: visible; pointer-events: auto; transition-delay: 0s; }
  .public-side-brand { display: block; margin: 0 12px 40px; }
  .public-side-brand img { display: block; inline-size: 100%; border-radius: 6px; }
  .public-side-links { display: grid; gap: 3px; }
  .public-side-links a { padding: 13px 12px; border-block-end: 1px solid rgba(255,255,255,.13); color: #fff; font-size: 15px; font-weight: 650; text-decoration: none; }
  .public-side-links a.active { color: #fdba74; }
  .public-side-location { margin-block-start: auto; padding-top: 30px; color: rgba(255,255,255,.5); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-align: center; }
  .site-visitor-stats { display: grid; gap: 5px; margin-top: 16px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.65); font-size: 11px; line-height: 1.35; text-align: center; }
  .site-visitor-stats strong { color: #fdba74; font-size: 14px; }
  body.public-menu-open { overflow: hidden; }
}



