/* Klinik Programı - Global Polishing CSS
   Adım 1: Ortak görünüm, mobil ergonomi ve premium dokunuşlar.
   Bu dosya HTML içeriğine, route'lara veya Jinja kodlarına dokunmaz.
*/

:root{
    --kp-dark:#0f172a;
    --kp-dark-2:#111827;
    --kp-panel:#ffffff;
    --kp-soft:#f8fafc;
    --kp-border:#e5e7eb;

    --kp-primary:#1d4ed8;
    --kp-primary-dark:#1e3a8a;
    --kp-success:#16a34a;
    --kp-warning:#f59e0b;
    --kp-danger:#dc2626;
    --kp-muted:#64748b;

    --kp-radius-lg:26px;
    --kp-radius-md:18px;
    --kp-shadow:0 18px 38px rgba(0,0,0,.18);
    --kp-shadow-soft:0 10px 24px rgba(15,23,42,.10);
}

html{
    -webkit-text-size-adjust:100%;
    scroll-behavior:smooth;
}

body{
    overflow-x:hidden;
}

.kutu,
.container{
    width:100%;
    box-sizing:border-box;
}

.kart,
.bolum,
.baslik-kart,
.ozet-kart,
.form-kart{
    transition:box-shadow .2s ease, transform .2s ease;
}

.kart:hover,
.bolum:hover,
.baslik-kart:hover{
    box-shadow:0 22px 46px rgba(0,0,0,.20);
}

input,
select,
textarea{
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

input:focus,
select:focus,
textarea:focus{
    outline:none;
    border-color:var(--kp-primary) !important;
    background:#fff !important;
    box-shadow:0 0 0 4px rgba(29,78,216,.12);
}

button,
.buton,
.geri,
.menu a,
.modul-don,
.ay-btn,
.temizle,
.sablon-btn,
.link-btn,
.btn,
.cari-btn{
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

button:hover,
.buton:hover,
.geri:hover,
.menu a:hover,
.modul-don:hover,
.ay-btn:hover,
.temizle:hover,
.sablon-btn:hover,
.link-btn:hover,
.btn:hover,
.cari-btn:hover{
    transform:translateY(-2px);
    filter:brightness(1.02);
}

table tr:hover td{
    background:#f8fafc;
}

.tablo-kutu,
.kart div[style*="overflow:auto"],
div[style*="overflow:auto"]{
    -webkit-overflow-scrolling:touch;
}

.rozet,
.sayac,
.durum,
.fizyo,
.etiket-borc,
.etiket-tahsilat,
.pozitif,
.sifir{
    white-space:nowrap;
}

/* Mobil premium düzeltmeler */
@media(max-width:950px){

    body{
        padding:15px !important;
    }

    .kutu,
    .container{
        max-width:100% !important;
        margin:0 auto !important;
    }

    .kart,
    .bolum,
    .baslik-kart,
    .ozet-kart,
    .form-kart{
        padding:20px !important;
        border-radius:22px !important;
    }

    .ust-alan{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:15px !important;
    }

    h1,
    .ust-alan h1,
    .baslik h1,
    .baslik-kart h1{
        font-size:30px !important;
        line-height:1.15 !important;
    }

    h2,
    .kart h2,
    .bolum h2{
        font-size:22px !important;
        line-height:1.2 !important;
    }

    .geri,
    .buton,
    .modul-don,
    .ay-btn,
    .temizle,
    .sablon-btn,
    .menu a,
    .cikis{
        width:100% !important;
        min-height:48px !important;
        box-sizing:border-box !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        text-align:center !important;
    }

    input,
    select,
    textarea,
    button{
        min-height:48px;
        font-size:16px !important;
    }

    table{
        font-size:13px;
    }

    th,
    td{
        padding:12px !important;
    }

    .kullanici-paneli{
        position:static !important;
        width:100% !important;
        margin-bottom:18px !important;
        box-sizing:border-box !important;
    }

    .login-popup,
    .bildirim-popup{
        top:18px !important;
        left:15px !important;
        right:15px !important;
        min-width:auto !important;
        width:auto !important;
    }

    .alt-not{
        padding-bottom:20px;
        line-height:1.5;
    }
}

/* Küçük telefonlar */
@media(max-width:420px){

    body{
        padding:12px !important;
    }

    .kart,
    .bolum,
    .baslik-kart{
        padding:18px !important;
    }

    h1,
    .ust-alan h1,
    .baslik h1,
    .baslik-kart h1{
        font-size:27px !important;
    }

    .sayi,
    .kart .sayi,
    .finans-kart .sayi{
        font-size:28px !important;
    }
}
