.sonixmodal-back {
    position:fixed; inset:0; z-index:1300; display:flex; align-items:center; justify-content:center;
    padding:1.5rem; background:rgba(15,23,42,.45); backdrop-filter:blur(3px);
    opacity:0; transition:opacity .2s ease;
}
.sonixmodal-back.is-open { opacity:1; }

.sonixmodal {
    width:min(300px, 100%); border-radius:1.05rem; overflow:hidden; text-align:center;
    background:rgba(250,250,250,.92); backdrop-filter:blur(20px);
    box-shadow:0 20px 60px -20px rgba(15,23,42,.5);
    transform:scale(.92); transition:transform .2s cubic-bezier(.2,.9,.3,1.2);
}
.sonixmodal-back.is-open .sonixmodal { transform:scale(1); }

.sonixmodal-body { padding:1.25rem 1.1rem 1.05rem; }
.sonixmodal-title { margin:0 0 .3rem; font-size:1.0625rem; font-weight:700; color:#0b0b0c; }
.sonixmodal-text  { margin:0; font-size:.8125rem; line-height:1.45; color:#3c3c43; }

.sonixmodal-actions { display:flex; border-top:1px solid rgba(60,60,67,.29); }
.sonixmodal-btn {
    flex:1 1 0; padding:.75rem .5rem; border:0; background:transparent;
    font-size:1.0625rem; color:#007aff; cursor:pointer;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
    transition:background .12s ease;
}
.sonixmodal-btn + .sonixmodal-btn { border-left:1px solid rgba(60,60,67,.29); }
.sonixmodal-btn:active { background:rgba(60,60,67,.12); }
.sonixmodal-btn.is-strong  { font-weight:600; }
.sonixmodal-btn.is-danger  { color:#ff3b30; }

@media (prefers-color-scheme: dark) {
    :root:not([data-bs-theme="light"]) .sonixmodal { background:rgba(37,37,40,.94); }
    :root:not([data-bs-theme="light"]) .sonixmodal-title { color:#f5f5f7; }
    :root:not([data-bs-theme="light"]) .sonixmodal-text  { color:#c7c7cc; }
}
:root[data-bs-theme="dark"] .sonixmodal { background:rgba(37,37,40,.94); }
:root[data-bs-theme="dark"] .sonixmodal-title { color:#f5f5f7; }
:root[data-bs-theme="dark"] .sonixmodal-text  { color:#c7c7cc; }

.sonixmodal-back.is-sheet { align-items:flex-end; padding:0; }
.sonixmodal-sheet {
    width:100%; max-height:92vh; max-height:92dvh; display:flex; flex-direction:column;
    border-radius:1.25rem 1.25rem 0 0; background-color:#f5f6f8; background-image:linear-gradient(var(--basic-body-bg, transparent), var(--basic-body-bg, transparent)); color:var(--basic-body-color, inherit);
    box-shadow:0 -18px 50px -20px rgba(15,23,42,.45);
    transform:translateY(100%); transition:transform .28s cubic-bezier(.2,.9,.3,1);
}
.sonixmodal-back.is-sheet.is-open .sonixmodal-sheet { transform:translateY(0); }
.sonixmodal-sheet-head { position:relative; flex:0 0 auto; display:flex; align-items:center; justify-content:center; padding:1.15rem 3.25rem .65rem; touch-action:none; }
.sonixmodal-grip { position:absolute; top:.45rem; left:50%; width:2.5rem; height:.3rem; margin-left:-1.25rem; border-radius:1rem; background:rgba(60,60,67,.28); }
.sonixmodal-sheet-title { margin:0; font-size:1rem; font-weight:700; text-align:center; color:var(--basic-heading-color, #0b0b0c); }
.sonixmodal-sheet-close {
    position:absolute; right:.65rem; top:calc(50% + .25rem); transform:translateY(-50%);
    display:inline-flex; align-items:center; justify-content:center; width:2.25rem; height:2.25rem;
    border:0; border-radius:50%; background:rgba(60,60,67,.1); color:inherit; font-size:.9rem;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.sonixmodal-sheet-body { flex:1 1 auto; min-height:0; overflow-y:auto; -webkit-overflow-scrolling:touch; overscroll-behavior:contain; padding-bottom:env(safe-area-inset-bottom); }
body.sonixmodal-kilit { position:fixed; left:0; right:0; width:100%; overflow:hidden; }
@media (prefers-reduced-motion: reduce) { .sonixmodal-sheet { transition:none; } }
.sonixmodal-back.is-sheet.is-full .sonixmodal-sheet { height:100vh; height:100dvh; max-height:none; border-radius:0; box-shadow:none; }
.sonixmodal-back.is-sheet.is-full .sonixmodal-sheet-head { padding-top:calc(1.15rem + env(safe-area-inset-top)); border-bottom:1px solid var(--basic-border-color, rgba(60,60,67,.12)); }
.sonixmodal-back.is-sheet.is-full .sonixmodal-grip { top:calc(.45rem + env(safe-area-inset-top)); }
@media (min-width: 768px) {
    .sonixmodal-back.is-sheet.is-orta { align-items:center; padding:1.5rem; }
    .sonixmodal-back.is-sheet.is-orta .sonixmodal-sheet {
        width:min(34rem, 100%); max-height:calc(100dvh - 3rem); border-radius:1.25rem;
        transform:translateY(1rem) scale(.98); opacity:0; transition:transform .24s cubic-bezier(.2,.9,.3,1), opacity .2s ease;
    }
    .sonixmodal-back.is-sheet.is-orta.is-open .sonixmodal-sheet { transform:none; opacity:1; }
    .sonixmodal-back.is-sheet.is-orta .sonixmodal-grip { display:none; }
}
@media (prefers-reduced-motion: reduce) { .sonixmodal-back.is-sheet.is-orta .sonixmodal-sheet { transition:none; } }
@media (prefers-color-scheme: dark) {
    :root:not([data-bs-theme="light"]) .sonixmodal-sheet { background-color:#121418; }
}
:root[data-bs-theme="dark"] .sonixmodal-sheet { background-color:#121418; }
.sonixmodal-back.is-gorsel { flex-direction:column; padding:3.5rem 1rem 1.25rem; background:rgba(8,10,16,.82); backdrop-filter:blur(6px); transition:opacity .28s ease; }
.sonixmodal-gorsel { margin:0; display:flex; flex-direction:column; align-items:center; gap:.85rem; max-width:min(1100px, 100%); max-height:100%; }
.sonixmodal-gorsel img {
    display:block; max-width:100%; max-height:calc(100dvh - 9rem); width:auto; height:auto; object-fit:contain; cursor:zoom-out;
    border-radius:14px; box-shadow:0 30px 80px -30px rgba(0,0,0,.8); transform-origin:center center;
    transition:transform .32s cubic-bezier(.2,.8,.2,1);
}
.sonixmodal-gorsel-alt { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.6rem 1rem; color:#f3f4f6; font-size:.875rem; font-weight:600; opacity:0; transform:translateY(8px); transition:opacity .25s ease .12s, transform .25s ease .12s; }
.sonixmodal-back.is-gorsel.is-open .sonixmodal-gorsel-alt { opacity:1; transform:none; }
.sonixmodal-gorsel-git { display:inline-flex; align-items:center; gap:.3rem; padding:.45rem .95rem; border-radius:999px; background:#fff; color:#0e0e10; text-decoration:none; font-weight:700; }
.sonixmodal-gorsel-git:hover { color:#0e0e10; background:#e5e7eb; }
.sonixmodal-gorsel-kapat {
    position:absolute; top:max(.85rem, env(safe-area-inset-top)); right:.85rem; width:2.6rem; height:2.6rem; border-radius:50%;
    border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.12); color:#fff; font-size:1rem;
    display:inline-flex; align-items:center; justify-content:center;
}
.sonixmodal-gorsel-kapat:hover { background:rgba(255,255,255,.22); }
@media (prefers-reduced-motion: reduce) { .sonixmodal-gorsel img, .sonixmodal-gorsel-alt { transition:none; } }
