/* --- GÜNDÜZ MODU --- */
:root {
    color-scheme: light;
    /* Apple ProMotion (120Hz) Yay Efekti: Titremeyi önler, pürüzsüz durur */
    --ios-spring: cubic-bezier(0.22, 1, 0.36, 1);
    --duration-fast: 0.15s;
    --duration-ui: 0.48s; /* Hafifçe uzatıldı; kart animasyonları daha akıcı olur */
    --duration-sidebar: 0.5s;    
    
    /* DİKKAT: box-shadow transition'dan çıkarıldı. GPU kilitlenmesi önlendi! */
    --card-expand-transition: top var(--duration-ui) var(--ios-spring), 
                              left var(--duration-ui) var(--ios-spring), 
                              width var(--duration-ui) var(--ios-spring), 
                              height var(--duration-ui) var(--ios-spring), 
                              transform var(--duration-ui) var(--ios-spring), 
                              border-radius var(--duration-ui) var(--ios-spring);
    --bg-main: #F2F2F7;
    --list-bg: #FFFFFF;
    --text-main: #000000;
    --text-secondary: #8E8E93;
    --accent-blue: #007AFF;
    --separator: #C6C6C8;
    --card-border: rgba(255, 255, 255, 0.6);
    --card-shadow: 0 8px 20px rgba(0, 0, 0, 0.05), 0 2px 6px rgba(0, 0, 0, 0.03);
    --card-hover-shadow: 0 16px 32px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
    --menu-bg: rgba(242, 242, 247, 0.85);
    --menu-btn-shadow: 0 4px 12px rgba(0,0,0,0.08);
    --btn-bg: rgba(0, 0, 0, 0.05);
    --btn-hover: rgba(0, 0, 0, 0.1);
    --card-title-color: rgba(0, 0, 0, 0.85);
    --glass-overlay: rgba(255, 255, 255, 0.75);
    --danger-red: #FF3B30;
    --edit-btn-bg: rgba(0, 122, 255, 0.1);
    --edit-btn-color: #007AFF;

    --theme-blue: linear-gradient(145deg, #D0E4FF 0%, #ABCFFF 100%);
    --theme-orange: linear-gradient(145deg, #FFD6C2 0%, #FFB699 100%);
    --theme-green: linear-gradient(145deg, #CDEED5 0%, #A2DCAE 100%);
    --theme-purple: linear-gradient(145deg, #DFCCFF 0%, #C4A3FF 100%);
    --theme-pink: linear-gradient(145deg, #FFCCDF 0%, #FF99BF 100%);
    --theme-yellow: linear-gradient(145deg, #FFE9A6 0%, #FFD659 100%);
    
}

/* --- GECE MODU --- */
html[data-theme="dark"] {
    color-scheme: dark;
}
[data-theme="dark"] {
    --bg-main: #0B0D13;
    --list-bg: #161922; 
    --text-main: #FFFFFF;
    --text-secondary: rgba(235, 235, 245, 0.64);
    --accent-blue: #00E5FF; 
    --separator: rgba(255, 255, 255, 0.08);
    --card-border: rgba(255, 255, 255, 0.09);
    --card-shadow: 0 12px 36px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.10);
    --card-hover-shadow: 0 20px 50px rgba(0, 0, 0, 0.55), 0 0 24px rgba(0, 229, 255, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.18);
    --menu-bg: rgba(28, 28, 30, 0.85);
    --menu-btn-shadow: none; 
    --btn-bg: rgba(255, 255, 255, 0.1);
    --btn-hover: rgba(255, 255, 255, 0.15);
    --card-title-color: #FFFFFF;
    --glass-overlay: rgba(30, 30, 30, 0.75);
    --danger-red: #FF453A;
    --edit-btn-bg: rgba(10, 132, 255, 0.15);
    --edit-btn-color: #0A84FF;

    --theme-blue: linear-gradient(145deg, #1A3E6D 0%, #2C5B96 100%);
    --theme-orange: linear-gradient(145deg, #6D341A 0%, #964F2C 100%);
    --theme-green: linear-gradient(145deg, #1D5432 0%, #2E7A4A 100%);
    --theme-purple: linear-gradient(145deg, #44266B 0%, #633B96 100%);
    --theme-pink: linear-gradient(145deg, #6B2042 0%, #963360 100%);
    --theme-yellow: linear-gradient(145deg, #6B571A 0%, #967D2C 100%);
}

.theme-blue { background: var(--theme-blue) !important; border-color: rgba(10, 132, 255, 0.3) !important; }
.theme-orange { background: var(--theme-orange) !important; border-color: rgba(255, 159, 10, 0.3) !important;}
.theme-green { background: var(--theme-green) !important; border-color: rgba(48, 209, 88, 0.3) !important;}
.theme-purple { background: var(--theme-purple) !important; border-color: rgba(191, 90, 242, 0.3) !important;}
.theme-pink { background: var(--theme-pink) !important; border-color: rgba(255, 55, 95, 0.3) !important;}
.theme-yellow { background: var(--theme-yellow) !important; border-color: rgba(255, 214, 10, 0.3) !important;}

/* --- MEVSİMSEL RENKLER (BUG FIX - !important ile ezilmeyi önlüyor) --- */
.season-winter { background: linear-gradient(145deg, #d3dce8 0%, #a7b7cc 100%) !important; border-color: rgba(255,255,255,0.4) !important; color: #1c1c1e !important; }
.season-spring { background: linear-gradient(145deg, #cbe5b6 0%, #9fcb7f 100%) !important; border-color: rgba(255,255,255,0.4) !important; color: #1c1c1e !important; }
.season-summer { background: linear-gradient(145deg, #faebb4 0%, #e8ca58 100%) !important; border-color: rgba(255,255,255,0.4) !important; color: #1c1c1e !important; }
.season-autumn { background: linear-gradient(145deg, #ebd1b7 0%, #d1a375 100%) !important; border-color: rgba(255,255,255,0.4) !important; color: #1c1c1e !important; }

[data-theme="dark"] .season-winter { background: linear-gradient(145deg, #222d3b 0%, #151e2b 100%) !important; border-color: rgba(255,255,255,0.05) !important; color: #fff !important; }
[data-theme="dark"] .season-spring { background: linear-gradient(145deg, #28361e 0%, #1a2612 100%) !important; border-color: rgba(255,255,255,0.05) !important; color: #fff !important; }
[data-theme="dark"] .season-summer { background: linear-gradient(145deg, #383115 0%, #26210d 100%) !important; border-color: rgba(255,255,255,0.05) !important; color: #fff !important; }
[data-theme="dark"] .season-autumn { background: linear-gradient(145deg, #362618 0%, #24180e 100%) !important; border-color: rgba(255,255,255,0.05) !important; color: #fff !important; }

.season-winter .month-name, .season-spring .month-name, .season-summer .month-name, .season-autumn .month-name { color: rgba(0,0,0,0.85) !important; }
.season-winter .month-year, .season-spring .month-year, .season-summer .month-year, .season-autumn .month-year,
.season-winter .ios-day-name, .season-spring .ios-day-name, .season-summer .ios-day-name, .season-autumn .ios-day-name { color: rgba(0,0,0,0.55) !important; }
.season-winter .ios-day, .season-spring .ios-day, .season-summer .ios-day, .season-autumn .ios-day { color: #1c1c1e !important; }
.season-winter .ios-day:hover:not(.empty) .ios-day-number, .season-spring .ios-day:hover:not(.empty) .ios-day-number, .season-summer .ios-day:hover:not(.empty) .ios-day-number, .season-autumn .ios-day:hover:not(.empty) .ios-day-number { background-color: rgba(0,0,0,0.1) !important; }

[data-theme="dark"] .season-winter .month-name, [data-theme="dark"] .season-spring .month-name, [data-theme="dark"] .season-summer .month-name, [data-theme="dark"] .season-autumn .month-name { color: #fff !important; }
[data-theme="dark"] .season-winter .month-year, [data-theme="dark"] .season-spring .month-year, [data-theme="dark"] .season-summer .month-year, [data-theme="dark"] .season-autumn .month-year,
[data-theme="dark"] .season-winter .ios-day-name, [data-theme="dark"] .season-spring .ios-day-name, [data-theme="dark"] .season-summer .ios-day-name, [data-theme="dark"] .season-autumn .ios-day-name { color: rgba(255,255,255,0.6) !important; }
[data-theme="dark"] .season-winter .ios-day, [data-theme="dark"] .season-spring .ios-day, [data-theme="dark"] .season-summer .ios-day, [data-theme="dark"] .season-autumn .ios-day { color: #fff !important; }
[data-theme="dark"] .season-winter .ios-day:hover:not(.empty) .ios-day-number, [data-theme="dark"] .season-spring .ios-day:hover:not(.empty) .ios-day-number, [data-theme="dark"] .season-summer .ios-day:hover:not(.empty) .ios-day-number, [data-theme="dark"] .season-autumn .ios-day:hover:not(.empty) .ios-day-number { background-color: rgba(255,255,255,0.1) !important; }

* { 
    -webkit-user-select: none;
    -moz-user-select: none; -ms-user-select: none; user-select: none; box-sizing: border-box; 
    -webkit-tap-highlight-color: transparent; scrollbar-width: none;
}
input, textarea { -webkit-user-select: auto !important; user-select: auto !important; }
*::-webkit-scrollbar { display: none; }

body {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", "Segoe UI", sans-serif;
    background-color: var(--bg-main); color: var(--text-main);
    margin: 0; padding: 0; height: 100vh; width: 100vw;
    display: flex; align-items: flex-start; justify-content: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    overflow: hidden;
    transition: background-color var(--duration-ui) var(--ios-spring), color var(--duration-ui) var(--ios-spring);
}

body.is-dragging, body.is-dragging * { cursor: grabbing !important; }

/* --- SİDEBAR --- */
.menu-btn {
    position: fixed;
    top: 30px; left: 30px; z-index: 105;
    background: var(--menu-bg); backdrop-filter: blur(20px) saturate(180%); -webkit-backdrop-filter: blur(20px) saturate(180%);
    border: 1px solid var(--card-border); border-radius: 50%;
    width: 48px; height: 48px; 
    display: flex; align-items: center; justify-content: center; cursor: pointer; 
    box-shadow: var(--menu-btn-shadow);
    transition: transform var(--duration-fast) var(--ios-spring), background-color var(--duration-ui) var(--ios-spring), box-shadow var(--duration-fast) var(--ios-spring);
    color: var(--text-main);
}
.menu-btn:hover { background-color: var(--btn-hover); transform: translateY(-2px) scale(1.05); box-shadow: 0 8px 20px rgba(0,0,0,0.12); }
.menu-btn:active { transform: scale(0.92); box-shadow: var(--menu-btn-shadow); }
.sidebar-overlay {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); z-index: 110;
    opacity: 0; pointer-events: none; transition: opacity var(--duration-ui) var(--ios-spring);
}
.sidebar-overlay.active { opacity: 1; pointer-events: auto; }

.sidebar {
    position: fixed;
    top: 0; left: 0; bottom: 0; width: 320px; background: var(--menu-bg); 
    backdrop-filter: blur(25px) saturate(200%); -webkit-backdrop-filter: blur(25px) saturate(200%); z-index: 115;
    box-shadow: 4px 0 30px rgba(0,0,0,0.3); transform: translateX(-100%); 
    transition: transform var(--duration-sidebar) var(--ios-spring), background-color var(--duration-ui) var(--ios-spring);
    display: flex; flex-direction: column;
    padding: 80px 20px 30px 20px; border-right: 1px solid var(--card-border);
}
.sidebar.active { transform: translateX(0); }

.sidebar-menu { list-style: none; padding: 0; margin: 0; background-color: var(--list-bg); border-radius: 20px; overflow: hidden; transition: background-color var(--duration-ui) var(--ios-spring); margin-bottom: 20px; box-shadow: 0 1px 0 rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.06); }
[data-theme="dark"] .sidebar-menu { box-shadow: 0 1px 0 rgba(255,255,255,0.06), 0 4px 24px rgba(0,0,0,0.35); }
.sidebar-menu li { padding: 16px 20px; font-size: 1.05em; font-weight: 500; border-bottom: 0.5px solid var(--separator); display: flex; align-items: center; cursor: pointer; transition: background-color var(--duration-fast) var(--ios-spring), color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring); color: var(--text-main); }
.sidebar-menu li:last-child { border-bottom: none; }
.sidebar-menu li:hover { background-color: var(--btn-hover); }
.sidebar-menu li:active { background-color: var(--btn-bg); transform: scale(0.98); }
.sidebar-menu li.active-nav { color: var(--accent-blue); font-weight: 600;}
.sidebar-menu svg { margin-right: 12px; color: var(--text-secondary); transition: color 0.2s;}
.sidebar-menu li.active-nav svg { color: var(--accent-blue); }

.ios-switch { position: relative; display: inline-block; width: 50px; height: 30px; margin-left: auto; }
.ios-switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: var(--separator); transition: 0.4s var(--ios-spring); border-radius: 30px; }
.slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 2px; bottom: 2px; background-color: white; transition: 0.4s var(--ios-spring); border-radius: 50%; box-shadow: 0 2px 5px rgba(0,0,0,0.2); }
input:checked + .slider { background-color: #34C759; } 
input:checked + .slider:before { transform: translateX(20px); }

/* --- GÖRÜNÜM KONTEYNERLERİ VE LOKAL BLUR MASKESİ --- */
.view-container {
            width: 100%;
            height: 100%; position: absolute; top: 0; left: 0;
            display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
            padding: 25px 20px 25px 20px; overflow: hidden;
            contain: layout style;
        }
        /* Sayfa geçişlerinde 0.3s ara opasite crossfade yerine kesin ve anlık geçiş:
           Chromium compositing katmanındaki 15 adet 24px backdrop-filter kartının 
           ara karelerde parlama/glitch yapmasını %100 engeller! */
        .view-hidden {
            display: none !important;
            opacity: 0 !important;
            pointer-events: none !important;
            z-index: -1 !important;
            visibility: hidden !important;
            transition: none !important;
            will-change: auto !important;
        }
        .view-active {
            display: flex !important;
            opacity: 1 !important;
            pointer-events: auto !important;
            z-index: 10 !important;
            visibility: visible !important;
            transition: none !important;
            will-change: auto !important;
        }

.card-overlay { 
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0; 
    background: rgba(0, 0, 0, 0.35); backdrop-filter: blur(16px) saturate(140%); -webkit-backdrop-filter: blur(16px) saturate(140%); 
    z-index: 92;
    opacity: 0; pointer-events: none; transition: opacity var(--duration-ui) var(--ios-spring); border-radius: 0;
}
.card-overlay.active { opacity: 1; pointer-events: auto; }

.page-title {
    width: 100%;
    max-width: 1400px; margin: 0 auto 15px auto;
    font-size: 2em; font-weight: 700; letter-spacing: -0.03em;
    color: var(--text-main);
}
[data-theme="dark"] .page-title { text-shadow: 0 1px 2px rgba(0,0,0,0.35); }

/* --- SİMETRİK IOS AYLIK TAKVİM --- */
.calendar-view-wrapper { 
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%; 
            background: var(--bg-main); display: flex; align-items: center; justify-content: center; 
            z-index: 10; opacity: 0;
            pointer-events: none; visibility: hidden; transition: opacity 0.3s ease-in-out, visibility 0s 0.3s; 
            will-change: opacity;
        }
        .calendar-view-wrapper.active { opacity: 1; pointer-events: auto; z-index: 20; visibility: visible; transition: opacity 0.3s ease-in-out, visibility 0s 0s; }

.calendar-header-actions { position: absolute; top: 30px; right: 30px; z-index: 30; }
.edit-calendar-btn {
    width: 48px;
    height: 48px; background: var(--menu-bg); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px);
    border: 1px solid var(--card-border); border-radius: 50%; display: flex; align-items: center; justify-content: center;
    cursor: pointer; box-shadow: var(--menu-btn-shadow); transition: transform 0.2s, background-color 0.3s, color 0.3s, border-color 0.3s;
    color: var(--text-main);
}
.edit-calendar-btn:hover { background-color: var(--btn-hover); transform: translateY(-2px); }
.edit-calendar-btn.active { background-color: var(--accent-blue); color: white; border-color: var(--accent-blue); }

.month-scroller { height: 70vh; width: 85vw; max-width: 600px; position: relative; perspective: 1200px; display: flex; align-items: center; justify-content: center; }
.month-card-container { width: 100%; height: 100%; transition: transform 0.5s var(--ios-spring); transform-style: preserve-3d; }
.month-card { 
    position: absolute;
    width: 100%; height: 100%;
    border-radius: 36px; box-shadow: var(--card-shadow); 
    display: flex; flex-direction: column; align-items: center; justify-content: flex-start; 
    padding: 30px; -webkit-font-smoothing: antialiased;
    transition: opacity var(--duration-sidebar) var(--ios-spring), transform var(--duration-sidebar) var(--ios-spring), box-shadow var(--duration-sidebar) var(--ios-spring); opacity: 0; pointer-events: none;
    backface-visibility: hidden; transform: translateZ(0); 
    background-color: var(--list-bg); border: 1px solid var(--card-border);
}

.month-card.active { opacity: 1; transform: translateZ(0) scale(1); pointer-events: auto; z-index: 3; }
.month-card.prev { opacity: 0.3; transform: translate3d(0, -55%, -50px) scale(0.85); z-index: 2; }
.month-card.next { opacity: 0.3; transform: translate3d(0, 55%, -50px) scale(0.85); z-index: 2; }

.month-header-area { width: 100%; display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px solid var(--card-border); }
.month-name { font-size: 2.2em; font-weight: 800; color: var(--accent-blue); margin: 0; letter-spacing: -1px;}
.month-year { font-size: 1.3em; font-weight: 600; color: var(--text-secondary); margin: 0; }

.ios-calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); grid-auto-rows: 1fr; width: 100%; gap: 10px 0; flex-grow: 1; align-items: center; justify-items: center; }
.ios-day-name { text-align: center; font-size: 0.85em; font-weight: 700; color: var(--text-secondary); text-transform: uppercase; width: 100%; margin-bottom: 5px; }

.ios-day { position: relative; display: flex; align-items: center; justify-content: center; font-size: 1.15em; font-weight: 500; color: var(--text-main); width: 100%; height: 44px; cursor: pointer; transition: transform 0.1s; z-index: 1;}
.ios-day-number { position: relative; z-index: 2; width: 44px; height: 44px; margin: 0 auto; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background-color 0.2s;}

.ios-day:hover:not(.empty):not(.today) .ios-day-number { background-color: var(--btn-hover); transform: scale(1.1); }
.ios-day:active:not(.empty) .ios-day-number { transform: scale(0.9); }

.ios-day.today .ios-day-number { background-color: transparent; color: var(--danger-red); font-weight: 800; font-size: 1.1em; border-radius: 50%; box-shadow: none; }

/* === Smooth Card Motion ===
   Centralized tweaks for very-smooth grow/shrink animations.
   Applies GPU hints and consistent timing to card-like elements
   without changing functional behavior elsewhere. */
.month-card,
.month-card-container,
.top-widget,
.profile-card,
.pool-wrapper,
.home-cal-card,
.card-overlay,
.widget-front,
.widget-back {
    transform-origin: center center;
    transition: transform var(--duration-ui) var(--ios-spring), box-shadow var(--duration-ui) var(--ios-spring), opacity calc(var(--duration-ui) / 1.2) var(--ios-spring);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.month-card.active,
.month-card.prev,
.month-card.next,
.history-card-wrapper.active,
.history-card-wrapper.prev,
.history-card-wrapper.next {
    will-change: transform, opacity;
}
.month-card.far-off,
.history-card-wrapper.far-off {
    display: none !important;
    will-change: auto !important;
    content-visibility: hidden !important;
}

@media (prefers-reduced-motion: reduce) {
    .month-card,
    .top-widget,
    .profile-card,
    .pool-wrapper {
        transition: none !important;
        will-change: auto !important;
    }
}
.ios-day.today:hover:not(.empty) .ios-day-number { background-color: rgba(255, 59, 48, 0.1); }
.day-tick { position: absolute; bottom: 2px; font-size: 0.55em; color: #34C759; font-weight: 900; pointer-events: none; z-index: 3; }
.ios-day.today .day-tick { color: white; }

/* =========================================================
   PREMIUM AKIŞKAN SEZON ÇERÇEVESİ (NATIVE APPLE GRID)
========================================================= */
/* BÜYÜK SIR BURADA: Izgara boşlukları (gap) SIFIRLANDI ve hücreler ESNETİLDİ (stretch).
   Bu sayede arka plan renkleri üst üste binip koyu çizgi yapmaz, havada boşluk kalmaz! */
.ios-calendar-grid { 
    gap: 0 !important; 
    align-items: stretch !important; 
    justify-items: stretch !important; 
}

/* Hücreler arası boşluk kalmadığı için margin, padding ve sınır kıvrımları iptal! */
.ios-day { 
    height: auto !important; 
    min-height: unset !important; 
    margin: 0 !important; 
    border-radius: 0 !important; 
}

.in-season { position: relative; z-index: 1; }

/* Renk Matrisi: Havuz rengi pürüzsüz ve hafif, Neon ışık çizgisi parlak */
.sc-blue { --s-color: rgba(10, 132, 255, 0.7); --s-bg: rgba(10, 132, 255, 0.15); --s-glow: rgba(10, 132, 255, 0.8); }
.sc-orange { --s-color: rgba(255, 159, 10, 0.7); --s-bg: rgba(255, 159, 10, 0.15); --s-glow: rgba(255, 159, 10, 0.8); }
.sc-green { --s-color: rgba(48, 209, 88, 0.7); --s-bg: rgba(48, 209, 88, 0.15); --s-glow: rgba(48, 209, 88, 0.8); }
.sc-purple { --s-color: rgba(191, 90, 242, 0.7); --s-bg: rgba(191, 90, 242, 0.15); --s-glow: rgba(191, 90, 242, 0.8); }
.sc-pink { --s-color: rgba(255, 55, 95, 0.7); --s-bg: rgba(255, 55, 95, 0.15); --s-glow: rgba(255, 55, 95, 0.8); }
.sc-yellow { --s-color: rgba(255, 214, 10, 0.7); --s-bg: rgba(255, 214, 10, 0.15); --s-glow: rgba(255, 214, 10, 0.8); }

/* 1. KATMAN: ZEMİN HAVUZU */
/* Hücrenin tamamını kaplar. gap:0 olduğu için 19 ve 20 yan yana gelince sıfıra sıfır kaynaşır! */
.in-season::before {
    content: ''; position: absolute;
    top: 0; bottom: 0; left: 0; right: 0; 
    background: var(--s-bg);
    z-index: -2; pointer-events: none;
}

/* 2. KATMAN: NEON IŞIK SINIRLARI */
/* Şeffaf sınır çizilir, drop-shadow ile sadece bu dış sınır parlatılır */
.in-season::after {
    content: ''; position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    border: 0 solid transparent;
    z-index: -1; pointer-events: none;
    filter: drop-shadow(0 0 3px var(--s-color)) drop-shadow(0 0 6px var(--s-glow));
}

/* Sadece komşusu olmayan dış duvarlara çizgi çekilir */
.in-season.edge-t::after { border-top: 1.5px solid var(--s-color); }
.in-season.edge-b::after { border-bottom: 1.5px solid var(--s-color); }
.in-season.edge-l::after { border-left: 1.5px solid var(--s-color); }
.in-season.edge-r::after { border-right: 1.5px solid var(--s-color); }

/* 3. DIŞ KÖŞE KIVRIMLARI */
/* 19 ve 25 gibi çapraz köşelerde border-radius UYGULANMAZ. Bu sayede köşede 90 derece ile birbirlerine değerek kusursuz bir zigzag oluştururlar! */
.in-season.edge-t.edge-l::before, .in-season.edge-t.edge-l::after { border-top-left-radius: 12px; }
.in-season.edge-t.edge-r::before, .in-season.edge-t.edge-r::after { border-top-right-radius: 12px; }
.in-season.edge-b.edge-l::before, .in-season.edge-b.edge-l::after { border-bottom-left-radius: 12px; }
.in-season.edge-b.edge-r::before, .in-season.edge-b.edge-r::after { border-bottom-right-radius: 12px; }

/* Gün Numaraları Merkezde ve Net Kalsın */
.ios-day-number { position: relative; z-index: 1; text-shadow: 0 1px 2px rgba(0,0,0,0.2); width: 44px; height: 44px; }
.home-cal-card .ios-day-number { width: 28px !important; height: 28px !important; }

/* =========================================================
   IOS STİLİ KAYAN (FLOATING) TAKVİM YÖN BUTONLARI
========================================================= */
/* Consolidated floating month navigation styles moved to end-of-file. */

[data-theme="light"] button[onclick*="moveMonth"] {
    background: rgba(255, 255, 255, 0.7) !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
    color: var(--accent-blue) !important;
}

button[onclick*="moveMonth"]:active {
    transform: scale(0.9) !important;
}

/* Yukarı Oku (Önceki Ay) - Ekranın tam ortasının biraz üstü */
button[onclick*="moveMonth(-1)"] {
    top: calc(50% - 35px) !important; 
}

/* Aşağı Oku (Sonraki Ay) - Ekranın tam ortasının biraz altı */
button[onclick*="moveMonth(1)"] {
    top: calc(50% + 35px) !important; 
}

/* İkonların boyutunu ayarla */
button[onclick*="moveMonth"] svg {
    width: 22px !important;
    height: 22px !important;
    stroke-width: 2.5 !important;
}

/* --- EN ÜST WIDGET --- */
.top-widget-wrapper {
    width: 100%;
    max-width: 1400px; margin: 0 auto 15px auto; flex-shrink: 0; display: flex; justify-content: center;
    height: 90px; min-height: 90px;
}
.top-widget {
    width: 100%;
    height: 90px; border-radius: 28px; border: 1px solid var(--card-border);
    display: flex; align-items: center; justify-content: space-between; padding: 0 30px; 
    color: white;
    cursor: pointer; overflow: hidden; margin: 0; 
    box-shadow: 0 10px 30px rgba(0,0,0,0.12);
    transition: transform var(--duration-ui) var(--ios-spring), box-shadow var(--duration-ui) var(--ios-spring), border-radius var(--duration-ui) var(--ios-spring), padding var(--duration-ui) var(--ios-spring);
    -webkit-font-smoothing: antialiased; backface-visibility: hidden;
    transform: translateZ(0); 
}
.top-widget:hover:not(.expanded-active) { transform: translateY(-3px); box-shadow: 0 15px 35px rgba(0,0,0,0.2); }
.top-widget:active:not(.expanded-active) { transform: scale(0.98); }

.top-widget.expanded-active { 
    align-items: flex-start;
    padding-top: 40px; flex-direction: column; justify-content: flex-start; 
    cursor: default; z-index: 95 !important; border-radius: 36px; box-shadow: 0 24px 50px rgba(0,0,0,0.5) !important;
    transform: translateZ(0); 
}

.sky-morning { background: linear-gradient(180deg, #1C4670 0%, #D27255 100%); }
.sky-day { background: linear-gradient(180deg, #2A8DE1 0%, #5CB4EC 100%); }
.sky-evening { background: linear-gradient(180deg, #172F53 0%, #8C5779 100%); }
.sky-night { background: linear-gradient(180deg, #071526 0%, #1A2E46 100%); }

.widget-top-bar { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.widget-title-area { text-align: left; }
.widget-title-area h1 { margin: 0; font-size: 1.4em; font-weight: 700; letter-spacing: -0.5px; text-shadow: 0 1px 4px rgba(0,0,0,0.2); transition: font-size var(--duration-ui) var(--ios-spring); }
.widget-title-area p { margin: 4px 0 0 0; font-weight: 500; font-size: 0.9em; opacity: 0.9; text-shadow: 0 1px 4px rgba(0,0,0,0.2);}

.widget-mini-forecast { display: flex; gap: 20px; text-align: center; }
.widget-mini-forecast > div { display: flex; flex-direction: column; align-items: center; font-size: 1.1em; font-weight: 600; text-shadow: 0 1px 4px rgba(0,0,0,0.2);}
.widget-mini-forecast small { opacity: 0.8; font-size: 0.75em; font-weight: 500; margin-bottom: 2px;}

/* V1.2.6 Akıcı Büyüme/Küçülme: display: none ile anlık patlama yerine kademeli opaklık ve dönüşüm */
.weather-details {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.24s cubic-bezier(0.16, 1, 0.3, 1), transform 0.24s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.top-widget:not(.expanded-active) .weather-details {
    display: none !important;
}
.top-widget.expanded-active.is-animating .weather-details {
    display: flex !important;
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}
.top-widget.expanded-active:not(.is-animating) .weather-details {
    display: flex !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}
.huge-temp { font-size: 5.5em; font-weight: 200; text-align: center; margin: 10px 0 40px 0; text-shadow: 0 2px 10px rgba(0,0,0,0.2); }
.forecast-row { display: flex; justify-content: space-between; padding: 14px 20px; border-bottom: 0.5px solid rgba(255,255,255,0.2); font-weight: 500; font-size: 1.1em;}
.forecast-row:last-child { border-bottom: none; }

.widget-mini-forecast {
    transition: opacity 0.22s ease, transform 0.22s ease !important;
}
.top-widget.expanded-active .widget-mini-forecast,
.top-widget.is-animating .widget-mini-forecast {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(0.92) !important;
}
.top-widget:not(.expanded-active):not(.is-animating) .widget-mini-forecast {
    opacity: 1 !important;
    transform: scale(1) !important;
}
.top-widget.expanded-active .widget-top-bar { justify-content: center; }
.top-widget.expanded-active .widget-title-area { text-align: center; }
.top-widget.expanded-active .widget-title-area h1 { font-size: 2.2em; }

/* --- TAKVİM KARTLARI & 3D FLIP MİMARİSİ --- */
.calendar-grid { 
    display: grid;
    grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 1fr); 
    gap: 20px; width: 100%; max-width: 1400px; margin: 0 auto;
    flex-grow: 1; min-height: 0;
}

/* Kart genişletme sırasında grid boşluğu (çift id üretmeden) */
.card-placeholder {
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
}

.day-card {
            border-radius: 24px;
            padding: 0 !important; box-shadow: var(--card-shadow); 
            height: 100%; min-height: 0; display: flex; flex-direction: column; border: 1px solid var(--card-border);
            transition: transform 0.4s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.4s; 
            position: relative; z-index: 1; overflow: hidden; background: transparent !important;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            text-rendering: optimizeLegibility;
            backface-visibility: hidden;
        }
.day-card:hover:not(.expanded-active):not(.is-animating):not(.card-editing):not(.card-flipped):not(.is-flipping):not(.history-deck-card) { transform: translateY(-2px); box-shadow: var(--card-hover-shadow); z-index: 2; }
.day-card:has(.exercise-item:hover),
.day-card:has(.icon-btn:hover),
.day-card:has(button:hover) { transform: none !important; }
.day-card:active:not(.expanded-active):not(.is-animating):not(.card-editing):not(.card-flipped):not(.is-flipping):not(.history-deck-card) { transform: translateY(0) scale(0.98); box-shadow: var(--card-shadow); }

/* Geçmiş kartları ve düzenleme (edit) modundaki kartlarda hover zıplamasını kesinlikle engelle */
.history-card-wrapper .day-card,
.history-card-wrapper .day-card:hover,
.history-deck-card,
.history-deck-card:hover,
.day-card.card-editing,
.day-card.card-editing:hover,
.day-card.card-flipped,
.day-card.card-flipped:hover,
.day-card.is-flipping,
.day-card.is-flipping:hover {
    transform: none !important;
}
.day-card.is-flipping {
    pointer-events: none !important;
}

.day-card .exercise-list:not(.ios-drag-floating-ghost) {
    background-color: rgba(255, 255, 255, 0.38);
}
[data-theme="dark"] .day-card .exercise-list:not(.ios-drag-floating-ghost) {
    background-color: rgba(44, 44, 46, 0.5);
}

/* --- YENİ NESİL APPLE SPRING KATMAN GEÇİŞ SİSTEMİ --- */
.day-card.is-flipping {
    transition: none !important;
    pointer-events: none !important;
    perspective: none !important;
    -webkit-perspective: none !important;
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
}

.card-front, .card-back {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex; flex-direction: column; padding: 20px; width: 100%; height: 100%;
}
.card-back { display: none; }

@keyframes softPulseLight {
    0% { text-shadow: 0 0 8px rgba(0, 122, 255, 0.3); }
    50% { text-shadow: 0 0 16px rgba(0, 122, 255, 0.6); }
    100% { text-shadow: 0 0 8px rgba(0, 122, 255, 0.3); }
}
@keyframes softPulseDark {
    0% { text-shadow: 0 0 10px rgba(255,255,255,0.4); }
    50% { text-shadow: 0 0 20px rgba(255,255,255,0.8); }
    100% { text-shadow: 0 0 10px rgba(255,255,255,0.4); }
}

.current-day-highlight { filter: brightness(1.05) saturate(1.15); border: 1.5px solid var(--accent-blue) !important; }
.current-day-highlight .card-front .day-title { color: var(--accent-blue); animation: softPulseLight 3s infinite ease-in-out; }
[data-theme="dark"] .current-day-highlight { filter: brightness(1.15) saturate(1.2); border: 1.5px solid rgba(255,255,255,0.4) !important; box-shadow: 0 8px 30px rgba(0,0,0,0.4), inset 0 0 20px rgba(255,255,255,0.1) !important; }
[data-theme="dark"] .current-day-highlight .card-front .day-title { color: #FFF; animation: softPulseDark 3s infinite ease-in-out; }

.day-header { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--card-border); }
.header-left { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; overflow: hidden; padding: 15px 20px 20px 15px; margin: -15px -20px -20px -15px; } 
.day-title { font-size: 1.5em; font-weight: 700; letter-spacing: 0.5px; white-space: nowrap; margin: 0; padding: 0; transition: color 0.4s; }.workout-type-container { display: flex; align-items: center; gap: 8px; overflow: hidden; }
.workout-subtitle { font-size: 0.9em; font-weight: 600; color: var(--text-main); opacity: 0.75; transition: color 0.4s, opacity 0.4s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.edit-subtitle-btn { background-color: var(--edit-btn-bg); color: var(--edit-btn-color); border: none; border-radius: 12px; padding: 4px 10px; font-size: 0.75em; font-weight: 700; cursor: pointer; transition: background-color 0.2s, color 0.4s, transform 0.1s; flex-shrink: 0; }
.edit-subtitle-btn:hover { filter: brightness(1.1); }
.edit-subtitle-btn:active { transform: scale(0.92); opacity: 0.8;}

.header-actions { display: flex; align-items: center; gap: 8px; margin-top: -2px; flex-shrink: 0;}
.icon-btn { background-color: var(--btn-bg); border: none; border-radius: 50%; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background-color 0.2s, color 0.4s, transform 0.1s; }
.icon-btn.blue { color: var(--accent-blue); }
.icon-btn.main { color: var(--text-main); }
.icon-btn:hover { background-color: var(--btn-hover); transform: scale(1.04); }
.icon-btn:active { transform: scale(0.9); }


.workout-menu-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0; background: var(--glass-overlay); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
    z-index: 50; display: flex; flex-direction: column;
    padding: 24px; opacity: 0; pointer-events: none; transition: opacity 0.3s ease;
}
.workout-menu-overlay.active { opacity: 1; pointer-events: auto; }
.workout-menu-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; color: var(--text-main); }
.workout-menu-header h3 { margin: 0; font-size: 1.2em; font-weight: 700; }
.text-btn { background: transparent; color: var(--accent-blue); border: none; font-size: 1em; font-weight: 600; cursor: pointer; transition: opacity 0.2s; padding: 0; }
.text-btn:hover { opacity: 0.8; }
.text-btn:active { opacity: 0.5; }

.variation-selector { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 16px; background-color: var(--btn-bg); padding: 4px; border-radius: 10px; }
.var-btn { flex: 1; min-width: 35px; background: transparent; border: none; color: var(--text-main); padding: 8px 0; border-radius: 8px; font-weight: 600; font-size: 0.85em; cursor: pointer; transition: background-color 0.2s, box-shadow 0.2s, color 0.2s, transform 0.1s; }
.var-btn:hover:not(.active) { background-color: rgba(0,0,0,0.05); }
[data-theme="dark"] .var-btn:hover:not(.active) { background-color: rgba(255,255,255,0.05); }
.var-btn:active { transform: scale(0.95); }
.var-btn.active { background-color: var(--list-bg); box-shadow: 0 1px 3px rgba(0,0,0,0.12); color: var(--text-main); }

.type-list { list-style: none; padding: 0; margin: 0; background-color: var(--list-bg); border-radius: 12px; overflow-y: auto; box-shadow: 0 1px 3px rgba(0,0,0,0.1); flex-grow: 1; }
.type-list::-webkit-scrollbar { display: none; }
.type-list li { padding: 14px 16px; border-bottom: 0.5px solid var(--separator); color: var(--text-main); font-size: 0.95em; font-weight: 500; cursor: pointer; transition: background-color 0.2s, color 0.2s; position: relative; }
.type-list li:last-child { border-bottom: none; }
.type-list li:hover { background-color: var(--btn-hover); }
.type-list li:active { background-color: var(--btn-bg); }
.type-list li.active { color: var(--accent-blue); font-weight: 600; }
.type-list li.active::after { content: '✓'; position: absolute; right: 16px; font-size: 1.1em; font-weight: bold; }

/* --- 12 SATIR UYUMU VE SÜPERSET İKONU --- */
.exercise-list:not(.ios-drag-floating-ghost) { 
            list-style: none;
            padding: 0; margin: 0; background-color: var(--bg-main); border-radius: 14px; 
            overflow-y: auto; flex-grow: 1; transition: background-color 0.3s; position: relative; 
            -ms-overflow-style: none;
            scrollbar-width: none; 
            border: 1px solid var(--card-border);
            box-shadow: inset 0 2px 8px rgba(0,0,0,0.08);
            transform: translateZ(0);
        }
        .day-card.expanded-active .exercise-list:not(.ios-drag-floating-ghost) { padding: 0; border-radius: 16px; }
        
        .exercise-list::-webkit-scrollbar { width: 5px; background: transparent; } 
        .exercise-list::-webkit-scrollbar-thumb { background: transparent; border-radius: 10px; transition: background 0.3s; }
        .day-card.expanded-active .exercise-list::-webkit-scrollbar-thumb { background: var(--text-secondary); }
        
        .exercise-item { 
            padding: 10px 14px;
            display: flex; align-items: center; justify-content: space-between;
            border-bottom: 0.5px solid var(--separator); color: var(--text-main); transition: background-color 0.2s; 
            min-height: 44px; box-sizing: border-box;
            position: relative;
            font-weight: 500; letter-spacing: 0.3px; font-size: 0.9em; cursor: pointer;
            background-color: transparent;
        }
        .exercise-item:last-child { border-bottom: none; }
        .exercise-item:hover { background-color: var(--btn-hover); }
        .day-card.expanded-active .exercise-item { padding: 12px 16px; font-size: 0.96em; min-height: 50px; border-radius: 0; margin-bottom: 0; background-color: transparent; border-bottom: 0.5px solid var(--separator); box-shadow: none; }
        .day-card.expanded-active .exercise-item:last-child { border-bottom: none; }

.exercise-item { 
    padding: 6px 12px;
    display: flex; align-items: center; justify-content: space-between;
    border-bottom: 0.5px solid var(--separator); color: var(--text-main);
    transition: background-color var(--duration-fast) var(--ios-spring), border-radius var(--duration-fast) var(--ios-spring), opacity var(--duration-fast) var(--ios-spring);
    min-height: 40px; box-sizing: border-box;
    overflow: visible; position: relative;
    font-weight: 500; letter-spacing: 0.3px; font-size: 0.9em; cursor: pointer;
}
.exercise-item:last-child { border-bottom: none; }
.exercise-item:hover { background-color: var(--btn-hover); border-radius: 8px; }
.day-card.expanded-active .exercise-item { padding: 8px 14px; font-size: 0.96em; min-height: 46px; border-radius: 0; } 

.ex-name-wrap { display: flex; align-items: center; flex: 1; overflow: hidden; margin-right: 8px; pointer-events: none;}
.ex-index { color: var(--text-secondary); margin-right: 6px; font-weight: 600; flex-shrink: 0; opacity: 0.7;}
.ex-name-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; width: 100%; }

.ex-sets { color: var(--text-main); opacity: 0.8; font-size: 0.85em; font-weight: 700; flex-shrink: 0; white-space: nowrap; background: var(--btn-bg); padding: 4px 8px; border-radius: 6px; display: inline-block; pointer-events: none; }
.link-icon-btn {
            position: absolute;
            right: 10px; bottom: -11px;
            width: 22px; height: 22px; background: var(--list-bg); border: 1px solid var(--separator);
            border-radius: 50%; display: flex; align-items: center;
            justify-content: center; opacity: 0; pointer-events: none; transform: scale(0.5);
            cursor: pointer; z-index: 10; color: var(--text-secondary); transition: all 0.3s;
        }
        .day-card.expanded-active .link-icon-btn { opacity: 1; pointer-events: auto; transform: scale(1); }
.link-icon-btn:hover { background: var(--accent-blue); color: white; border-color: var(--accent-blue); transform: scale(1.1); }
.link-icon-btn.linked { bottom: -11px; background: var(--accent-blue); color: white; border-color: var(--accent-blue); }
.link-icon-btn.linked:hover { background: var(--danger-red); border-color: var(--danger-red); }

.drag-handle { display: block; width: 0; opacity: 0; overflow: hidden; cursor: grab; padding: 5px 0; color: var(--text-secondary); touch-action: none; flex-shrink: 0; transition: all 0.3s;}
        .drag-handle:hover { color: var(--accent-blue); }
        .drag-handle:active { cursor: grabbing; color: var(--text-main); }
        .day-card.expanded-active .drag-handle { width: 30px; opacity: 1; padding: 5px 10px 5px 0; }

.exercise-item.dragging { 
    opacity: 0.90;
    background: var(--menu-bg);
    border: none !important;
    outline: none !important;
    border-radius: 14px !important;
    transform: scale(1.02); 
    box-shadow: 0 12px 28px rgba(0,0,0,0.22) !important;
    z-index: 100;
}

.drag-action-bar {
    position: absolute;
    bottom: 0; left: 0; right: 0; height: 85px; display: flex;
    transform: translateY(100%); transition: transform 0.4s var(--ios-spring);
    z-index: 60;
    border-radius: 0 0 24px 24px; overflow: hidden;
}
.day-card.is-drag-active .drag-action-bar { transform: translateY(0); }

.drag-zone { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; color: white; gap: 4px; font-size: 0.9em; font-weight: 600; transition: filter 0.2s; }
.drag-zone svg { width: 24px; height: 24px; pointer-events: none;}
.edit-zone { background-color: var(--accent-blue); }
.delete-zone { background-color: var(--danger-red); }
.drag-zone:hover { filter: brightness(1.15); }
.drag-zone.drag-over { filter: brightness(0.8); }

.day-card-actions { display: flex; gap: 12px; margin-top: 0; flex-shrink: 0; width: 100%; height: 0; opacity: 0; overflow: hidden; pointer-events: none; transition: all 0.3s var(--ios-spring); border: none; }
        /* Butonların hover olduğunda (büyüdüğünde) sınırları taşıp köşeli kesilmesini engeller */
        .day-card.expanded-active .day-card-actions,
        .day-card.card-nextweek-locked .day-card-actions { height: 44px; opacity: 1; margin-top: 12px; pointer-events: auto; overflow: visible; }
.action-btn-split {
    flex: 1;
    border: none; border-radius: 14px; padding: 12px 0;
    font-size: 0.92em; font-weight: 600; cursor: pointer; box-shadow: 0 2px 6px rgba(0,0,0,0.06);
    transition: filter var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring), box-shadow var(--duration-fast) var(--ios-spring);
    display: flex; align-items: center; justify-content: center; gap: 6px;
}
.finish-log-btn { transition: background-color var(--duration-ui) var(--ios-spring), color var(--duration-ui) var(--ios-spring), opacity var(--duration-ui) var(--ios-spring), transform var(--duration-fast) var(--ios-spring); }
.action-btn-split:hover { filter: brightness(0.95); transform: translateY(-2px) scale(1.02); box-shadow: 0 6px 12px rgba(0,0,0,0.08); }
[data-theme="dark"] .action-btn-split:hover { filter: brightness(1.1); transform: translateY(-2px) scale(1.02); box-shadow: 0 6px 12px rgba(0,0,0,0.2); }
.action-btn-split:active { transform: scale(0.96); box-shadow: 0 2px 4px rgba(0,0,0,0.04); }.btn-add { background-color: var(--list-bg); color: var(--accent-blue); }
.btn-comp { background-color: var(--list-bg); color: var(--text-main); }
.btn-comp.completed-active { background-color: #34C759; color: white; }
.day-card.expanded-active .icon-btn.blue { display: none; }

/* KART ARKASI LOG (VERİ GİRİŞİ) CSS */
.input-group { position: relative; display: flex; align-items: center; flex: 1; }
.input-group input { width: 100%; padding-right: 22px; text-align: center; }
.input-group .unit { position: absolute; right: 8px; color: var(--text-secondary); font-size: 0.85em; font-weight: 600; pointer-events: none;}
.error-border { border-color: var(--danger-red) !important; box-shadow: 0 0 0 1px var(--danger-red), 0 0 5px rgba(255, 59, 48, 0.2) !important; }

.log-inp {
    flex: 1;
    min-width: 0;
    background: var(--list-bg); border: 1px solid var(--separator);
    border-radius: 8px; padding: 6px 2px; text-align: center;
    color: var(--text-main); font-weight: 500;
    font-size: 0.9em;
    transition: border-color var(--duration-fast) var(--ios-spring), box-shadow var(--duration-fast) var(--ios-spring), background-color var(--duration-fast) var(--ios-spring);
}
.log-inp:focus { border-color: var(--accent-blue); outline: none; }
.log-inp::placeholder { color: var(--text-secondary); opacity: 0.6;}

/* RIR Dinamik Buton */
.rir-btn {
    background: var(--btn-bg);
    color: var(--accent-blue);
    border: 1px solid var(--separator); border-radius: 8px;
    padding: 6px 2px; font-weight: 700; font-size: 0.9em;
    cursor: pointer;
    transition: background-color var(--duration-fast) var(--ios-spring), border-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring);
    flex: 1; min-width:0;
}
.rir-btn:hover { background: var(--btn-hover); border-color: var(--accent-blue);}
.rir-btn:active { transform: scale(0.95); }

/* --- PROFİL & SEZON KARTLARI (RENKLİ CAM EKLENDİ) --- */
.profile-card { 
    border-radius: 36px;
    padding: 40px;
    box-shadow: var(--card-shadow), 0 0 0 0.5px rgba(0,0,0,0.04);
    width: 100%; max-width: 550px; display: flex; flex-direction: column; 
    border: 1px solid var(--card-border);
    transition: background var(--duration-ui) var(--ios-spring), border-color var(--duration-ui) var(--ios-spring), box-shadow var(--duration-ui) var(--ios-spring); margin: 0 auto;
    background-color: var(--list-bg);
}
[data-theme="dark"] .profile-card { box-shadow: var(--card-shadow), 0 0 0 0.5px rgba(255,255,255,0.06); }
.profile-header-area { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; }
.profile-header-area h2 { margin: 0; font-size: 2em; font-weight: 800; color: var(--text-main); letter-spacing: -0.5px;}
.profile-avatar-container { display: flex; flex-direction: column; align-items: center; margin-bottom: 30px; }
.profile-avatar { 
    width: 100px;
    height: 100px; border-radius: 50%; background: var(--theme-blue); 
    display: flex; align-items: center; justify-content: center; font-size: 2.5em; font-weight: 700; color: #FFF;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1); margin-bottom: 12px;
}
.ios-list-group { background: var(--bg-main); border-radius: 16px; margin-bottom: 24px; overflow: hidden; border: 1px solid var(--card-border); }
.ios-list-item { display: flex; justify-content: space-between; align-items: center; padding: 0 20px; height: 56px; border-bottom: 0.5px solid var(--separator); font-size: 1.05em; box-sizing: border-box; }
.ios-list-item:last-child { border-bottom: none; }
.profile-label { font-weight: 500; color: var(--text-main); }
.profile-val { 
    font-weight: 500; color: var(--text-secondary); text-align: right; 
    flex: 1; padding: 0; margin: 0 0 0 20px; 
}
.profile-input {
    background: transparent; border: none; text-align: right; font-size: 1em; font-weight: 500;
    color: var(--accent-blue); outline: none; flex: 1; padding: 0; margin: 0 0 0 20px; transition: opacity 0.2s; font-family: inherit;
}
.profile-input::placeholder { color: var(--text-secondary); opacity: 0.5; }
.profile-input:focus { opacity: 0.7; }

.date-input {
    background: var(--btn-bg);
    color: var(--accent-blue);
    padding: 8px 14px; border-radius: 10px; cursor: pointer;
    font-weight: 600; text-align: center; width: 55%;
    transition: background 0.2s, transform 0.1s;
}
.date-input:hover { background: var(--btn-hover); }
.date-input:active { transform: scale(0.96); }

/* --- DİNAMİK HAVUZ (POOL) --- */
.pool-wrapper { border-radius: 36px; padding: 40px; box-shadow: var(--card-shadow), 0 0 0 0.5px rgba(0,0,0,0.04); width: 100%; max-width: 600px; height: 80vh; display: flex; flex-direction: column; border: 1px solid var(--card-border); transition: background var(--duration-ui) var(--ios-spring), border-color var(--duration-ui) var(--ios-spring), box-shadow var(--duration-ui) var(--ios-spring); margin: 0 auto; background-color: var(--list-bg);}
[data-theme="dark"] .pool-wrapper { box-shadow: var(--card-shadow), 0 0 0 0.5px rgba(255,255,255,0.06); }

.pool-header { font-size: 2em; font-weight: 800; margin: 0 0 20px 0; letter-spacing: -0.5px; color: var(--text-main); text-align: center;}
.pool-add-box { background-color: var(--bg-main); border-radius: 16px; padding: 16px; margin-bottom: 20px; border: 1px solid var(--card-border); display: flex; flex-direction: column; gap: 12px; transition: background-color 0.3s;}
.pool-input { width: 100%; background: transparent; border: none; font-size: 1.1em; color: var(--text-main); outline: none; padding: 4px 0; border-bottom: 1px solid var(--separator); transition: border-color 0.3s;}
.pool-input:focus { border-bottom-color: var(--accent-blue); }
.pool-input::placeholder { color: var(--text-secondary); }
.pool-controls { display: flex; gap: 10px; align-items: center; position: relative;}

.custom-select-container { flex: 1; position: relative; }
.custom-select-trigger { background-color: var(--list-bg); border: 1px solid var(--separator); padding: 10px 12px; border-radius: 8px; font-size: 0.95em; font-weight: 500; display: flex; justify-content: space-between; align-items: center; cursor: pointer; transition: background-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring), border-color var(--duration-fast) var(--ios-spring); }
.custom-select-trigger:hover { background-color: var(--btn-hover); }
.custom-select-trigger:active { transform: scale(0.98); }
.custom-select-trigger .placeholder { color: var(--text-secondary); }
.custom-select-trigger .selected { color: var(--text-main); }
.custom-select-menu { position: absolute; top: calc(100% + 8px); left: 0; right: 0; background: var(--glass-overlay); backdrop-filter: blur(25px); -webkit-backdrop-filter: blur(25px); border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.2); margin: 0; padding: 0; list-style: none; z-index: 100; opacity: 0; pointer-events: none; transform: translateY(-10px); transition: opacity 0.3s ease, transform 0.3s var(--ios-spring); overflow: hidden; border: 0.5px solid rgba(255, 255, 255, 0.2); }
.custom-select-menu.active { opacity: 1; pointer-events: auto; transform: translateY(0); }
.custom-select-menu li { padding: 12px 16px; border-bottom: 0.5px solid var(--separator); color: var(--text-main); background-color: transparent; font-size: 0.95em; cursor: pointer; transition: background-color 0.2s; }
.custom-select-menu li:last-child { border-bottom: none; }
.custom-select-menu li:hover, .custom-select-menu li:active { background-color: var(--btn-bg); }

.pool-add-btn { background-color: var(--accent-blue); color: white; border: none; border-radius: 99px; padding: 10px 22px; font-weight: 600; font-size: 1em; cursor: pointer; box-shadow: 0 2px 8px rgba(10, 132, 255, 0.25); transition: background-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease, transform var(--duration-fast) var(--ios-spring);}
.pool-add-btn:hover { background-color: #0071E3; box-shadow: 0 4px 14px rgba(10, 132, 255, 0.35); transform: translateY(-1.5px); }
.pool-add-btn:active { transform: scale(0.97); box-shadow: 0 1px 4px rgba(10, 132, 255, 0.2); }

.pool-list-container { flex-grow: 1; border-radius: 14px; overflow-y: auto; padding: 0 5px; transition: background-color 0.3s;}
.pool-list-container::-webkit-scrollbar { display: none; }

.pool-group { margin-bottom: 12px; background: var(--bg-main); border-radius: 14px; overflow: hidden; border: 1px solid var(--card-border); transition: background-color 0.3s; }
.pool-group-header { padding: 16px; font-weight: 600; font-size: 1.05em; display: flex; justify-content: space-between; align-items: center; cursor: pointer; color: var(--text-main); transition: background-color 0.2s;}
.pool-group-header:hover { background-color: rgba(0,0,0,0.02); }
[data-theme="dark"] .pool-group-header:hover { background-color: rgba(255,255,255,0.02); }
.pool-group-header:active { background-color: var(--btn-bg); }
.pool-group-header svg { transition: transform 0.4s var(--ios-spring); color: var(--text-secondary); }
.pool-group.expanded .pool-group-header svg { transform: rotate(180deg); color: var(--accent-blue); }
.pool-group-content { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 0.35s var(--ios-spring); }
.pool-group.expanded .pool-group-content { grid-template-rows: 1fr; }
.pool-group-inner { overflow: hidden; }

.pool-item { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; border-top: 1px solid var(--separator); color: var(--text-main); background: var(--list-bg); transition: background-color 0.3s;}
.pool-item-name { font-size: 1em; font-weight: 500; }
.pool-del-btn { background: var(--danger-red); color: #FFF; border: none; border-radius: 8px; padding: 6px 14px; font-size: 0.85em; font-weight: 600; cursor: pointer; transition: opacity 0.2s, transform 0.1s; }
.pool-del-btn:active { opacity: 0.8; transform: scale(0.92); }

.pool-edit-btn {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-secondary);
    border: 1px solid var(--card-border);
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.2s var(--ios-spring);
}
.pool-edit-btn:hover {
    background: rgba(10, 132, 255, 0.18);
    color: var(--accent-blue);
    border-color: rgba(10, 132, 255, 0.45);
    transform: scale(1.06);
}
.pool-edit-btn:active {
    opacity: 0.75;
    transform: scale(0.92);
}

#editPoolExerciseModal {
    z-index: 240 !important;
}
#poolMuscleModal {
    z-index: 350 !important;
}
@media (max-width: 540px) {
    .edit-pool-two-col {
        grid-template-columns: 1fr !important;
    }
}

.ios-dialog-pill { background: rgba(255, 255, 255, 0.06); border: 1px solid var(--card-border); border-radius: 8px; color: var(--text-main); font-size: 0.82em; font-weight: 600; padding: 7px 4px; cursor: pointer; transition: all 0.2s ease; }
.ios-dialog-pill.active { background: var(--accent-blue); color: #FFF; border-color: var(--accent-blue); box-shadow: 0 0 10px rgba(10, 132, 255, 0.4); }

/* --- MODALLAR --- */
.modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.4); z-index: 200; display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity var(--duration-ui) var(--ios-spring); backdrop-filter: blur(10px) saturate(150%); -webkit-backdrop-filter: blur(10px) saturate(150%); }
.modal-overlay.active { opacity: 1; pointer-events: auto; }

.ios-alert { background: rgba(255,255,255,0.88); backdrop-filter: blur(24px) saturate(180%); -webkit-backdrop-filter: blur(24px) saturate(180%); width: 300px; border-radius: 24px; display: flex; flex-direction: column; text-align: center; transform: scale(1.1) translateY(15px) translateZ(0); opacity: 0; transition: transform var(--duration-ui) var(--ios-spring), opacity var(--duration-fast) ease-out; box-shadow: 0 24px 48px rgba(0,0,0,0.18), 0 0 0 0.5px rgba(255,255,255,0.5) inset; }
[data-theme="dark"] .ios-alert { background: rgba(30,30,30,0.92); box-shadow: 0 24px 48px rgba(0,0,0,0.55), 0 0 0 0.5px rgba(255,255,255,0.08) inset; }
.modal-overlay.active .ios-alert { transform: scale(1) translateY(0) translateZ(0); opacity: 1; }.alert-title { font-weight: 600; font-size: 1.1em; margin: 20px 16px 5px 16px; color: var(--text-main);}
.alert-message { font-size: 0.9em; margin: 0 16px 20px 16px; color: var(--text-main); line-height: 1.3;}
.alert-btn { border-top: 0.5px solid var(--separator); background: transparent; border-left: none; border-right: none; border-bottom: none; color: var(--accent-blue); font-size: 1.05em; font-weight: 600; padding: 12px; cursor: pointer; width: 100%; border-radius: 0 0 24px 24px; transition: background-color 0.2s;}
.alert-btn:hover { background-color: rgba(0,0,0,0.03); }
[data-theme="dark"] .alert-btn:hover { background-color: rgba(255,255,255,0.03); }
.alert-btn:active { background: var(--btn-bg); }

.action-sheet { position: absolute; bottom: 20px; width: calc(100% - 40px); max-width: 400px; display: flex; flex-direction: column; gap: 8px; transform: translateY(150%); transition: transform 0.4s var(--ios-spring); }
.modal-overlay.active .action-sheet { transform: translateY(0); }
.sheet-menu { background: rgba(255,255,255,0.9); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: 20px; overflow: hidden; }
[data-theme="dark"] .sheet-menu { background: rgba(30,30,30,0.9); }
.sheet-header { padding: 12px; text-align: center; font-size: 0.85em; font-weight: 600; color: var(--text-secondary); border-bottom: 0.5px solid var(--separator); }

.sheet-list { max-height: 300px; overflow-y: auto; overflow-x: hidden; list-style: none; padding: 0; margin: 0; }
.sheet-list::-webkit-scrollbar { display: none; }

.slide-in-right { animation: slideInRight 0.4s var(--ios-spring) forwards; }
.slide-in-left { animation: slideInLeft 0.4s var(--ios-spring) forwards; }
@keyframes slideInRight { from { transform: translate3d(50px, 0, 0); opacity: 0; } to { transform: translate3d(0, 0, 0); opacity: 1; } }
@keyframes slideInLeft { from { transform: translate3d(-50px, 0, 0); opacity: 0; } to { transform: translate3d(0, 0, 0); opacity: 1; } }

.sheet-btn { background: transparent; border: none; border-bottom: 0.5px solid var(--separator); width: 100%; padding: 16px; font-size: 1.1em; color: var(--accent-blue); cursor: pointer; text-align: center; transition: background-color 0.2s;}
.sheet-btn:hover { background-color: rgba(0,0,0,0.02); }
[data-theme="dark"] .sheet-btn:hover { background-color: rgba(255,255,255,0.02); }
.sheet-btn:last-child { border-bottom: none; }
.sheet-btn:active { background: var(--btn-bg); }
.sheet-cancel { background: rgba(255,255,255,0.9); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: none; border-radius: 20px; width: 100%; padding: 16px; font-size: 1.1em; font-weight: 600; color: var(--accent-blue); cursor: pointer; transition: background-color 0.2s;}
[data-theme="dark"] .sheet-cancel { background: rgba(30,30,30,0.9); }
.sheet-cancel:hover { filter: brightness(0.95); }
[data-theme="dark"] .sheet-cancel:hover { filter: brightness(1.1); }
.sheet-cancel:active { background: var(--btn-bg); }

.prompt-inputs-container { display: flex; flex-direction: column; gap: 10px; width: 90%; margin: 0 auto 20px auto; }
.prompt-input { background: var(--bg-main); border: 1px solid var(--card-border); padding: 10px; border-radius: 8px; color: var(--text-main); font-size: 1em; outline: none; text-align: center; transition: box-shadow 0.3s, border-color 0.3s; width: 100%;}
.prompt-input:focus { border-color: var(--accent-blue); box-shadow: 0 0 0 3px rgba(0, 122, 255, 0.2); }
.prompt-input::placeholder { color: var(--text-secondary); }
.prompt-row { display: flex; gap: 10px; }

@media (prefers-reduced-motion: reduce) {
    .slide-in-right, .slide-in-left { animation: none; opacity: 1; transform: none; }
    .weather-details { animation: none; }
    .current-day-highlight .card-front .day-title,
    [data-theme="dark"] .current-day-highlight .card-front .day-title { animation: none !important; text-shadow: none; }
}
/* FOTOĞRAF ÇEKİMİ İÇİN DÜZELTMELER */
.day-card.is-capturing { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; box-shadow: none !important; }
.day-card.is-capturing::before { display: none !important; }
.day-card.is-capturing .exercise-list:not(.ios-drag-floating-ghost) { box-shadow: none !important; }

/* --- KART ANİMASYON OPTİMİZASYONU (KASMAYI ÖNLER) --- */
.day-card.is-animating {
    will-change: top, left, width, height, transform;
    transform: translateZ(0); /* Donanımsal hızlandırmayı sadece uçuş anında açar, bug yaratmaz */
}
.day-card.is-animating * {
    /* Kart büyürken içindeki yazı ve listelerin gereksiz hesaplanmasını durdurur */
    transition: none !important; 
}

/* --- SAYI GİRİŞİ OKLARINI GİZLEME (Zıplamayı Önler) --- */

/* Chrome, Safari, Edge, Opera için */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox için */
input[type="number"] {
    -moz-appearance: textfield;
    appearance: textfield;
}

/* --- SÜPERSET GÖRSEL DÜZENLEMELERİ (KESİN ÇÖZÜM) --- */
.exercise-item.linked-to-next { 
    border-bottom: none !important; 
    padding-top: 2px !important; 
    padding-bottom: 0px !important; 
    min-height: 22px !important; 
    z-index: 2;
}
.exercise-item.linked-to-prev { 
    border-top: none !important; 
    padding-top: 0px !important; 
    padding-bottom: 2px !important; 
    min-height: 22px !important; 
    z-index: 1;
}
/* --- GEÇMİŞ ANTRENMANLAR (HISTORY) 3D CAROUSEL --- */
.history-card-wrapper {
    position: absolute;
    width: 100%; height: 100%;
    transition: opacity 0.5s var(--ios-spring), transform 0.5s var(--ios-spring), filter 0.5s var(--ios-spring);
    transform-style: preserve-3d;
}

/* Ortadaki aktif kart (En yeni) */
.history-card-wrapper.active { 
    opacity: 1; transform: translateZ(0) scale(1); z-index: 3; filter: blur(0); pointer-events: auto; 
}
/* Soldaki eski kartlar */
.history-card-wrapper.prev { 
    opacity: 0.5; transform: translate3d(-65%, 0, -120px) scale(0.85); z-index: 2; filter: blur(3px); pointer-events: none; 
}
/* Sağdaki daha yeni kartlar (Sola kaydırdıysan görünür) */
.history-card-wrapper.next { 
    opacity: 0.5; transform: translate3d(65%, 0, -120px) scale(0.85); z-index: 2; filter: blur(3px); pointer-events: none; 
}
/* Ekranda görünmeyen çok uzak kartlar */
.history-card-wrapper.far-prev { opacity: 0; transform: translate3d(-100%, 0, -250px) scale(0.7); z-index: 1; pointer-events: none; }
.history-card-wrapper.far-next { opacity: 0; transform: translate3d(100%, 0, -250px) scale(0.7); z-index: 1; pointer-events: none; }

/* --- WIDGET DIŞI SEZON GÖSTERGESİ KUTUSU (KESİN ÇÖZÜM) --- */
.season-out-ring-box {
    width: 100%;
    height: 100%;
    background: transparent;
    border: none;
    display: flex; 
    flex-direction: row; 
    align-items: center; 
    justify-content: flex-start; 
    pointer-events: none; 
    -webkit-font-smoothing: antialiased;
    overflow: hidden; 
    gap: 15px; /* Daire ile metin arasındaki kesin boşluk */
}

.ring-container {
    position: relative; 
    width: 52px; 
    height: 52px;
    flex: 0 0 52px; /* Dairenin ezilip oval olmasını engeller (Beton) */
    display: flex; 
    align-items: center; 
    justify-content: center; /* Yüzdeyi (%92) tam merkeze oturtur */
}

.season-ring-svg { 
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
    transform: rotate(-90deg); overflow: visible;
}

.ring-bg { fill: none; stroke: var(--bg-main); stroke-width: 3.5; }
.ring-fill { 
    fill: none; stroke-width: 3.5; stroke-linecap: round; 
    transition: stroke-dasharray 1s cubic-bezier(0.28, 1.12, 0.55, 1);
}

.ring-icon { 
    font-size: 0.9em; 
    font-weight: 800; 
    color: var(--text-main); 
    z-index: 2; /* Yazıyı SVG'nin üstünde tutar */
}

.season-text-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden; /* Uzun metin taşmasını kilitler */
    flex: 1; 
    min-width: 0; 
}

.season-title-text { 
    font-size: 1.05em; 
    font-weight: 800; 
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; /* Sığmayan isimler sonuna ... koyar */
    margin-bottom: 2px;
}

.season-sub-text { 
    font-size: 0.8em; 
    font-weight: 600; 
    color: var(--text-secondary); 
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* --- IOS HAVA DURUMU ARKA PLANLARI (SADECE ÖN YÜZ İÇİN) --- */
.sky-morning .widget-front { background: linear-gradient(160deg, #8ECAE6 0%, #219EBC 100%) !important; }
.sky-day .widget-front { background: linear-gradient(160deg, #4A90E2 0%, #007AFF 100%) !important; }
.sky-evening .widget-front { background: linear-gradient(160deg, #FF7E5F 0%, #FEB47B 100%) !important; }
.sky-night .widget-front { background: linear-gradient(160deg, #09101a 0%, #152336 100%) !important; }

/* Widget Büyüdüğünde Fatigue (Flip) Butonunu Gizle */
.top-widget.expanded-active .icon-btn { 
    display: none !important; 
}

/* Sadece iç yazıları hizala, boyutlandırmayı JavaScript'e (orijinal koduna) bırak */
.top-widget.expanded-active .widget-front { 
    align-items: flex-start; 
    padding-top: 40px; 
    flex-direction: column; 
    justify-content: flex-start; 
}

/* BLUR TUZAĞINI KIRAN KOD: Widget büyüdüğünde ana taşıyıcısını karanlık perdenin üstüne fırlatır! */
.top-widget-wrapper:has(.expanded-active) {
    z-index: 9999 !important;
}

/* 3D DÖNÜŞ (FLIP) ANİMASYONU VE KONTROLLERİ - KESİN ÇÖZÜM */
.top-widget { 
    width: 100%; 
    height: 100%;
    /* JavaScript'in boyut animasyonu yapabilmesi için transition serbest bırakıldı */
    transition: top var(--duration-ui) var(--ios-spring), 
                left var(--duration-ui) var(--ios-spring), 
                width var(--duration-ui) var(--ios-spring), 
                height var(--duration-ui) var(--ios-spring), 
                transform var(--duration-ui) var(--ios-spring),
                border-radius var(--duration-ui) var(--ios-spring);
    background: transparent !important; 
    border: none !important; 
}

.top-widget:hover:not(.expanded-active):not(.is-flipped) { transform: translateY(-3px); }
.top-widget:active:not(.expanded-active):not(.is-flipped) { transform: scale(0.98); }

/* GÖRÜNMEZLİK BUG'INI KÖKÜNDEN ÇÖZEN KALKAN */
.widget-front, .widget-back { 
    visibility: visible !important; 
    opacity: 1 !important;
    backface-visibility: hidden !important; 
    -webkit-backface-visibility: hidden !important; 
}

#flipInner { 
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d !important; 
    -webkit-transform-style: preserve-3d !important;
    transition: none !important;
}

#flipInner.is-flipped {
    box-shadow: 0 15px 40px rgba(0,0,0,0.4) !important;
}

/* Hayalet Tıklamaları Önleme (Geri tuşunu canlandırır) */
#flipInner:not(.is-flipped) .widget-back { pointer-events: none !important; }
#flipInner.is-flipped .widget-front { pointer-events: none !important; }
#flipInner.is-flipped .widget-back { pointer-events: auto !important; }
/* Widget Büyüme (Expand) ayarı */
.top-widget.expanded-active .widget-front { 
    align-items: flex-start; padding-top: 40px; flex-direction: column; justify-content: flex-start; 
}

/* Tıklama Çakışmalarını Önleme (Hayalet Butonları Engeller) */
.top-widget:not(.is-flipped) .widget-back { pointer-events: none !important; }
.top-widget.is-flipped .widget-front { pointer-events: none !important; }
.top-widget.is-flipped .widget-back { pointer-events: auto !important; }

/* ÖN YÜZ TASARIMI */
.widget-front {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
    backface-visibility: hidden; -webkit-backface-visibility: hidden;
    display: flex; align-items: center; justify-content: space-between; 
    padding: 0 30px; border-radius: 28px; color: white; z-index: 2;
}

/* ARKA YÜZ TASARIMI */
.widget-back {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
    backface-visibility: visible !important; -webkit-backface-visibility: visible !important;
    transform: none !important; border-radius: 28px; 
    background: linear-gradient(145deg, #1A1A1D 0%, #09090b 100%); 
    display: none; flex-direction: column; align-items: stretch; justify-content: flex-start; 
    padding: 0; border: 1px solid rgba(255,255,255,0.08); box-sizing: border-box; cursor: default; z-index: 1;
}

/* Widget Büyüme (Expand) ayarı */
.top-widget.expanded-active .widget-front { 
    align-items: flex-start; padding-top: 40px; flex-direction: column; justify-content: flex-start; 
}

/* KASMA VE BUTON (HAYALET TIKLAMA) SORUNUNU KÖKÜNDEN ÇÖZEN MANTIK */
/* Kart dönerken 0.25 saniye (tam yatay olduğu kör nokta) sonra görünmez olan yüzü sistemden sileriz. */
.top-widget.is-flipped .widget-front { pointer-events: none !important; visibility: hidden; transition: visibility 0s 0.25s; }
.top-widget.is-flipped .widget-back { pointer-events: auto !important; z-index: 3; }
.top-widget:not(.is-flipped) .widget-back { pointer-events: none !important; visibility: hidden; transition: visibility 0s 0.25s; }

/* --- 120FPS KART ANİMASYONLARI (SAF GPU HIZLANDIRMASI) --- */
.day-card {
    transform: translateZ(0); 
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    perspective: 1000px;
}

/* Kart Büyüdüğündeki Gölge Optimizasyonu */
.day-card.expanded-active:not(.flip-anim-out-back):not(.flip-anim-in-back):not(.flip-anim-out-front):not(.flip-anim-in-front) {
    /* Gölge, boyut animasyonu bittikten 0.15sn sonra yumuşakça belirir. Bu sayede kasma sıfıra iner. */
    transition: var(--card-expand-transition), box-shadow 0.3s ease-in 0.15s, background-color 0.3s;
}

/* Eski 3D flip keyframe'leri Apple Spring Depth mimarisi ile değiştirildi */
.day-card.is-flipping {
    pointer-events: none !important;
}

/* Kart arkası (Antrenmanı Gir / Geçmiş Düzenle) alt buton yüksekliği sabitlemesi - Egzersiz yokken devasa olmasını önler */
.card-back .action-btn-split,
.card-back .finish-log-btn {
    flex: 0 0 auto !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 0 20px !important;
    width: 100% !important;
    margin-top: auto !important;
}

/* --- 1. KASMA SORUNUNUN KESİN ÇÖZÜMÜ (GPU OPTİMİZASYONU) --- */
.card-overlay {
    /* Blur efekti kart büyürken GPU'yu kilitler. Performans için saf siyah şeffaflığa çevrildi. */
    background: rgba(0, 0, 0, 0.58) !important;
    backdrop-filter: none !important; 
    -webkit-backdrop-filter: none !important;
}

.day-card {
    transform: translateZ(0); 
}

/* 3D DÖNÜŞ (FLIP) ANİMASYONU VE KONTROLLERİ - KESİN ÇÖZÜM */
.top-widget { 
    /* JS'nin silemeyeceği kalıcı yapı taşları buraya eklendi! */
    flex: 1;
    width: 100%; 
    height: 100%;
    margin: 0;
    padding: 0 !important;
    overflow: visible !important;
    perspective: 1500px;
    
    /* Javascript'in boyut animasyonu yapabilmesi için transition serbest bırakıldı */
    transition: top var(--duration-ui) var(--ios-spring), 
                left var(--duration-ui) var(--ios-spring), 
                width var(--duration-ui) var(--ios-spring), 
                height var(--duration-ui) var(--ios-spring), 
                transform var(--duration-ui) var(--ios-spring),
                border-radius var(--duration-ui) var(--ios-spring);
    background: transparent !important; 
    border: none !important; 
}

/* Sadece iç yazıları hizala, boyutlandırmayı JavaScript'e (orijinal koduna) bırak */
.top-widget.expanded-active .widget-front { 
    align-items: flex-start; 
    padding-top: 40px; 
    flex-direction: column; 
    justify-content: flex-start; 
}

/* BLUR TUZAĞINI KIRAN KOD: Widget büyüdüğünde ana taşıyıcısını karanlık perdenin üstüne fırlatır! */
.top-widget-wrapper:has(.expanded-active) {
    z-index: 9999 !important;
}

/* Widget Büyüdüğünde Fatigue (Flip) Butonunu Kesin Olarak Gizle */
.top-widget.expanded-active .fatigue-btn { 
    display: none !important; 
    opacity: 0 !important;
    pointer-events: none !important;
}

/* --- WIDGET AÇILDIĞINDAKİ İÇERİK HİZALAMASI VE FERAH GÖRÜNÜM --- */
.top-widget.expanded-active .widget-front { 
    padding: 50px 40px !important; 
    align-items: center !important; 
    justify-content: flex-start !important; 
    flex-direction: column !important;
    /* İÇERİK UZUNSA TAŞMAYI ÖNLER: Alt kısımların kesilmesini engelleyip kaydırılabilir yapar */
    overflow-y: auto !important; 
}

.top-widget.expanded-active .widget-title-area { 
    text-align: center !important; 
    width: 100% !important;
}

.top-widget.expanded-active .weather-details {
    margin-top: 30px !important;
    /* EKSİK OLAN BOŞLUK BURADA: En alt satır ile çerçeve arasına nefes aldırır */
    padding-bottom: 40px !important; 
    width: 100% !important;
    max-width: 450px !important; 
}

/* --- WIDGET AÇILDIĞINDAKİ İÇERİK HİZALAMASI, KAYDIRMA VE ALT BOŞLUK --- */
.top-widget.expanded-active .widget-front { 
    padding: 50px 40px !important; /* Yazıların kenarlara yapışmasını engeller */
    align-items: center !important; 
    justify-content: flex-start !important; 
    flex-direction: column !important;
    overflow-y: auto !important; /* Ekran küçükse şıkça kaydırma (scroll) sağlar */
    -webkit-overflow-scrolling: touch !important; /* Mobilde akıcı kaydırma */
}

.top-widget.expanded-active .widget-title-area { 
    text-align: center !important; 
    width: 100% !important;
    flex-shrink: 0 !important;
}

.top-widget.expanded-active .weather-details {
    margin-top: 30px !important;
    padding-bottom: 50px !important; /* EN ALTTAKİ SATIRI KURTARAN KUSURSUZ BOŞLUK */
    width: 100% !important;
    max-width: 450px !important; 
    flex-shrink: 0 !important;
}

/* --- WIDGET AÇILDIĞINDA SEZON HALKASINI KARARTMA PERDESİNİN ARKASINA AT --- */
/* Karanlık perde (card-overlay) z-index: 10 olduğu için, z-index: 5 onu perdenin arkasına hapseder. */
.top-widget-wrapper.widget-is-expanded #seasonRingContainer {
    z-index: 5 !important;
    transition: z-index 0.3s ease; /* Pürüzsüz geçiş için */
}

/* --- WIDGET BÜYÜDÜĞÜNDE SEZON HALKASINI CAMIN ARKASINA GİZLE --- */
.top-widget-wrapper:has(.expanded-active) #seasonRingContainer {
    opacity: 0.15 !important; /* Koyu perdenin arkasında kalma (kararma) efekti */
    filter: blur(1px) !important; /* Hafif bir derinlik/uzaklık hissi verir */
    pointer-events: none !important;
    transition: opacity 0.4s ease, filter 0.4s ease !important;
}

/* =========================================================
   KAS YORGUNLUĞU %0 (PR) EFEKTİ (GPU SIFIR YÜK OPTİMİZASYONU)
========================================================= */
.pr-glow-text {
    color: #FFD60A !important;
    /* Gölge boyutunu küçültmek yerine sabitliyoruz, parlaklığı açıp kapatıyoruz */
    text-shadow: 0 0 6px rgba(255, 214, 10, 0.6) !important; 
    animation: prOpacityPulse 1.5s infinite alternate ease-in-out !important;
}

.pr-glow-bar {
    /* Gölge sabit ve hesaplaması çok ucuzdur */
    box-shadow: 0 0 10px rgba(255, 214, 10, 0.8) !important;
    animation: prOpacityPulse 1.5s infinite alternate ease-in-out !important;
}

/* Kasan boyut büyütme yerine, kasmayan saydamlık (Opacity) animasyonu */
@keyframes prOpacityPulse {
    0% { opacity: 0.4; }
    100% { opacity: 1; }
}

/* =========================================================
   PREMIUM IOS ARKA PLAN: RAFİNE TİTANYUM VE YUMUŞAK SİRİ
========================================================= */
.premium-bg {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
    z-index: -1; 
    /* 1. DÜZELTME: Sabit siyah yerine temaya (Gündüz/Gece) duyarlı ana renk kullanıldı */
    background-color: var(--bg-main); 
    overflow: hidden; pointer-events: none;
    transition: background-color var(--duration-ui) var(--ios-spring);
}

/* 2. DÜZELTME: "TV Karıncalanması" hissiyatı veren sert doku %25'ten %4'e düşürülerek mikroskobik, zarif bir kumlama yapıldı */
.titanium-texture {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    opacity: 0.04; 
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
    background-size: 200px 200px;
    background-repeat: repeat;
    mix-blend-mode: overlay;
    transform: translateZ(0);
    contain: strict;
}

/* Karanlık Mod Işıkları (Daha belirgin ama yumuşak) */
[data-theme="dark"] .glow-1 {
    box-shadow: inset 0 0 250px rgba(10, 132, 255, 0.12), 
                inset 0 0 100px rgba(191, 90, 242, 0.08);
}
[data-theme="dark"] .glow-2 {
    box-shadow: inset 0 0 200px rgba(255, 55, 95, 0.06), 
                inset 0 0 150px rgba(48, 209, 88, 0.05);
}

/* Gündüz Modu Işıkları (Kirli görünmemesi için çok çok hafif ve saydam) */
html:not([data-theme="dark"]) .glow-1 {
    box-shadow: inset 0 0 150px rgba(10, 132, 255, 0.05), 
                inset 0 0 80px rgba(191, 90, 242, 0.03);
}
html:not([data-theme="dark"]) .glow-2 {
    box-shadow: inset 0 0 150px rgba(255, 55, 95, 0.03), 
                inset 0 0 80px rgba(48, 209, 88, 0.03);
}

/* =========================================================
   APPLE FITNESS: FLUID MESH & TAMAMLANMA (GLOW) EFEKTLERİ
========================================================= */

/* 1. KART İÇİ YAŞAYAN AKIŞKAN ARKA PLAN (FLUID MESH GRADIENT) */
.day-card {
    position: relative;
    overflow: hidden; /* Renk bulutlarının kart dışına taşmasını engeller */
}

/* Renk bulutu için zemin hazırlığı (BUG FIX: Sabit Boyutlandırma) */
/* =========================================================
   SADE VE PREMIUM CAM ETKİSİ (Derin ve Tok Renkler)
========================================================= */
.day-card::before {
    display: none !important; 
}

/* =========================================================
   GÜN KARTI KOPYALA / YAPIŞTIR BUTONU & IOS POPOVER MENÜSÜ
========================================================= */
.day-copypaste-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

/* Küçük kartlarda kesin gizle */
.day-card:not(.expanded-active) .day-copypaste-wrap {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* SADECE kart genişletildiğinde (.expanded-active) görünür olsun */
.day-card.expanded-active .day-copypaste-wrap {
    display: inline-flex !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.day-copypaste-btn {
    color: var(--text-main);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.day-copypaste-btn:hover {
    color: var(--accent-blue, #0A84FF);
    background: var(--btn-hover, rgba(255, 255, 255, 0.1));
}
.day-copypaste-btn.is-active {
    background: rgba(10, 132, 255, 0.18) !important;
    color: #0A84FF !important;
    transform: scale(0.95);
}

/* Apple iOS UIMenu Floating Popover (Kart Rengiyle Uyumlu & Birebir Simetrik Animasyon) */
.ios-copypaste-popover {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 172px;
    /* Kartın kendi rengiyle tonlanmış derin obsidian cam zemin */
    background: linear-gradient(165deg, 
        rgba(var(--theme-rgb, 20, 24, 33), 0.32) 0%, 
        rgba(16, 18, 24, 0.96) 60%
    );
    backdrop-filter: blur(28px) saturate(200%);
    -webkit-backdrop-filter: blur(28px) saturate(200%);
    border: 1px solid rgba(var(--theme-rgb, 255, 255, 255), 0.38);
    border-radius: 14px;
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.6), 
                0 0 20px rgba(var(--theme-rgb, 0, 0, 0), 0.22),
                inset 0 1px 1px rgba(255, 255, 255, 0.2);
    padding: 6px;
    z-index: 150;
    display: flex;
    flex-direction: column;
    transform-origin: top right;

    /* Açılış ve Kapanış: Birebir simetrik 0.2s cubic-bezier animasyonu */
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: scale(0.88) translateY(-6px);
    transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.2s cubic-bezier(0.16, 1, 0.3, 1),
                visibility 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.ios-copypaste-popover.active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: scale(1) translateY(0);
}

/* Açık temada kart rengiyle harmanlanmış şık cam (asla bembeyaz patlamaz) */
[data-theme="light"] .ios-copypaste-popover {
    background: linear-gradient(165deg, 
        rgba(var(--theme-rgb, 220, 230, 242), 0.38) 0%, 
        rgba(240, 243, 248, 0.96) 65%
    );
    border: 1px solid rgba(var(--theme-rgb, 0, 0, 0), 0.28);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.16), 
                0 0 16px rgba(var(--theme-rgb, 0, 0, 0), 0.12),
                inset 0 1px 1px rgba(255, 255, 255, 0.7);
}

.ios-popover-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 9px 12px;
    background: transparent;
    border: none;
    border-radius: 9px;
    color: #FFFFFF !important;
    font-size: 0.88rem;
    font-weight: 600;
    letter-spacing: -0.2px;
    cursor: pointer;
    text-align: left;
    transition: background 0.15s ease, color 0.15s ease, transform 0.1s ease;
    user-select: none;
}

[data-theme="light"] .ios-popover-item {
    color: #1C1C1E !important;
}

.ios-popover-item:hover:not(.is-disabled) {
    background: rgba(var(--theme-rgb, 255, 255, 255), 0.22);
    color: #FFFFFF !important;
}

[data-theme="light"] .ios-popover-item:hover:not(.is-disabled) {
    background: rgba(var(--theme-rgb, 0, 0, 0), 0.12);
    color: #000000 !important;
}

.ios-popover-item:active:not(.is-disabled) {
    transform: scale(0.97);
}

.ios-popover-item.is-disabled {
    opacity: 0.32;
    cursor: not-allowed;
    pointer-events: none;
}

.ios-popover-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-accent, #3898FF) !important;
    flex-shrink: 0;
    transition: transform 0.15s ease;
}

.ios-popover-item:hover:not(.is-disabled) .ios-popover-icon {
    transform: scale(1.12);
}

.ios-popover-text {
    flex: 1;
    white-space: nowrap;
}

.ios-popover-badge {
    margin-left: auto;
    font-size: 0.70rem;
    font-weight: 700;
    color: var(--theme-accent, #3898FF) !important;
    background: rgba(var(--theme-rgb, 255, 255, 255), 0.18);
    border: 1px solid rgba(var(--theme-rgb, 255, 255, 255), 0.28);
    padding: 2px 7px;
    border-radius: 6px;
}

[data-theme="light"] .ios-popover-badge {
    background: rgba(var(--theme-rgb, 0, 0, 0), 0.08);
    border-color: rgba(var(--theme-rgb, 0, 0, 0), 0.18);
    color: var(--theme-accent, #007AFF) !important;
}

.ios-popover-divider {
    height: 1px;
    margin: 4px 6px;
    background: rgba(var(--theme-rgb, 255, 255, 255), 0.16);
}

[data-theme="light"] .ios-popover-divider {
    background: rgba(var(--theme-rgb, 0, 0, 0), 0.1);
}

/* =========================================================
   GÜN KARTI TEMİZLE (ÇÖP) BUTONU (SADECE BÜYÜK KARTTA)
========================================================= */
/* Küçük kartlarda kesin gizle */
.day-card:not(.expanded-active) .clear-day-btn {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* SADECE kart genişletildiğinde (.expanded-active) ve tamamlanmamışsa görünür olsun */
.day-card.expanded-active:not(.card-completed) .clear-day-btn {
    display: flex !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Tamamlanan kartlarda kesin gizle */
.day-card.card-completed .clear-day-btn {
    display: none !important;
    pointer-events: none !important;
}

.clear-day-btn {
    color: var(--text-secondary);
    transition: color var(--duration-fast) var(--ios-spring), background-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring);
}

.clear-day-btn:hover {
    color: var(--danger-red) !important;
    background-color: rgba(255, 69, 58, 0.12) !important;
    transform: translateY(-2px) scale(1.08) !important;
}

.clear-day-btn:active {
    transform: scale(0.92) !important;
}

/* =========================================================
   AŞAMA 1: PLANLI DİNLENME / İZİN (REST OVERRIDE) STILLERI
   ========================================================= */

/* Rest Day Override Butonu: Çöp kutusunun solunda, aynı boyut ve animasyonda */
.day-card:not(.expanded-active) .rest-day-override-btn {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.day-card.expanded-active:not(.card-completed) .rest-day-override-btn {
    display: flex !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.day-card.card-completed .rest-day-override-btn {
    display: none !important;
    pointer-events: none !important;
}

.rest-day-override-btn {
    color: var(--text-secondary);
    transition: color var(--duration-fast) var(--ios-spring), background-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring);
}

.rest-day-override-btn:hover {
    color: #FF9F0A !important;
    background-color: rgba(255, 159, 10, 0.14) !important;
    transform: translateY(-2px) scale(1.08) !important;
}

.rest-day-override-btn:active {
    transform: scale(0.92) !important;
}

/* Planlı İzni Geri Al Butonu */
.day-card:not(.expanded-active) .undo-rest-override-btn {
    display: none !important;
    pointer-events: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.day-card.expanded-active .undo-rest-override-btn {
    display: flex !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.undo-rest-override-btn {
    color: #FF9F0A;
    background-color: rgba(255, 159, 10, 0.12);
    transition: color var(--duration-fast) var(--ios-spring), background-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring);
}

.undo-rest-override-btn:hover {
    color: #FFB340 !important;
    background-color: rgba(255, 159, 10, 0.22) !important;
    transform: translateY(-2px) scale(1.08) !important;
}

.undo-rest-override-btn:active {
    transform: scale(0.92) !important;
}

/* Gün Kartı İzinli Durum Vurgusu */
/* Gün Kartı İzinli Durum Vurgusu */
.day-card.card-rest-override {
    border-color: rgba(255, 159, 10, 0.4) !important;
    box-shadow: 0 4px 20px rgba(255, 159, 10, 0.1), var(--card-shadow) !important;
}

.day-card.card-rest-override::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #FF9F0A, #FFB340);
    border-top-left-radius: var(--card-radius);
    border-top-right-radius: var(--card-radius);
    z-index: 5;
    pointer-events: none;
}

.day-card.card-rest-override .exercise-list {
    opacity: 0.38 !important;
    filter: blur(7px) !important;
    -webkit-filter: blur(7px) !important;
    pointer-events: none !important;
    user-select: none !important;
}

/* Planlanmamış Sonraki Hafta Kartı ile Birebir Simetrik Dinlenme Katmanı */
.rest-override-overlay {
    position: absolute;
    inset: 0;
    z-index: 20;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 90px;
    gap: 10px;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
    background: radial-gradient(circle at center 120px, rgba(255, 159, 10, 0.12) 0%, rgba(15, 18, 26, 0.22) 100%);
    pointer-events: auto;
}

.rest-override-icon-badge {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(255, 159, 10, 0.42);
    color: #FF9F0A;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.95);
    transition: transform var(--duration-fast) var(--ios-spring);
}

[data-theme="dark"] .rest-override-icon-badge {
    background: rgba(24, 28, 38, 0.90);
    border-color: rgba(255, 159, 10, 0.5);
    color: #FF9F0A;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.rest-override-text {
    font-size: 0.92em;
    font-weight: 800;
    letter-spacing: -0.015em;
    color: var(--text-main);
    padding: 6px 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 159, 10, 0.28);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
    white-space: nowrap;
}

[data-theme="dark"] .rest-override-text {
    background: rgba(20, 24, 34, 0.88);
    border-color: rgba(255, 159, 10, 0.35);
    color: #FFFFFF;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.50);
}

.rest-override-undo-btn {
    margin-top: 4px;
    font-size: 0.76rem;
    font-weight: 700;
    color: #FF9F0A;
    background: rgba(255, 159, 10, 0.12);
    border: 1px solid rgba(255, 159, 10, 0.3);
    padding: 5px 14px;
    border-radius: 20px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all var(--duration-fast) var(--ios-spring);
}

.rest-override-undo-btn:hover {
    background: rgba(255, 159, 10, 0.24);
    border-color: rgba(255, 159, 10, 0.5);
    transform: translateY(-1px) scale(1.04);
}

.rest-override-undo-btn:active {
    transform: scale(0.95);
}

.btn-comp.btn-undo-rest {
    background: rgba(255, 159, 10, 0.16) !important;
    border-color: rgba(255, 159, 10, 0.38) !important;
    color: #FF9F0A !important;
}

.btn-comp.btn-undo-rest:hover {
    background: rgba(255, 159, 10, 0.28) !important;
    border-color: rgba(255, 159, 10, 0.55) !important;
}
/* =========================================================
   YENİDEN TASARLANAN GEÇMİŞ DİNLENME KARTI (APPLE FITNESS STİLİ)
   ========================================================= */
.history-rest-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px 8px 10px 8px;
    min-height: 380px;
}

.hist-rest-hero-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 10px;
    padding: 0 16px;
}

.hist-rest-hero-glyph {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 159, 10, 0.22) 0%, rgba(255, 159, 10, 0.05) 70%);
    border: 1px solid rgba(255, 159, 10, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FF9F0A;
    margin-bottom: 16px;
    box-shadow: 0 8px 24px rgba(255, 159, 10, 0.2);
}

.hist-rest-hero-title {
    font-size: 1.18rem;
    font-weight: 800;
    color: var(--text-main);
    letter-spacing: -0.4px;
    margin-bottom: 8px;
    line-height: 1.3;
}

.hist-rest-hero-sub {
    font-size: 0.85rem;
    color: var(--text-secondary);
    max-width: 400px;
    line-height: 1.5;
    margin-bottom: 8px;
}

.hist-rest-tiles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 20px 0;
    padding: 0 4px;
}

.hist-rest-tile {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 14px 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-theme="light"] .hist-rest-tile {
    background: rgba(0, 0, 0, 0.03);
    border: 1px solid rgba(0, 0, 0, 0.07);
}

.hist-rest-tile .hrt-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="light"] .hist-rest-tile .hrt-icon {
    background: rgba(0, 0, 0, 0.04);
}

.hist-rest-tile .hrt-label {
    font-size: 0.72rem;
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.hist-rest-tile .hrt-value {
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.hist-rest-footer-action {
    display: flex;
    justify-content: center;
    padding-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

[data-theme="light"] .hist-rest-footer-action {
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.hist-rest-undo-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 159, 10, 0.12);
    border: 1px solid rgba(255, 159, 10, 0.28);
    color: #FF9F0A;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 10px;
    cursor: pointer;
    transition: all var(--duration-fast) var(--ios-spring);
}

.hist-rest-undo-action-btn:hover {
    background: rgba(255, 159, 10, 0.22);
    border-color: rgba(255, 159, 10, 0.45);
    transform: translateY(-1px) scale(1.02);
}

.hist-rest-undo-action-btn:active {
    transform: scale(0.96);
}
/* 2. Egzersiz Ekle Butonu Kontrastını Artır (Zeminde Kaybolmasın) */
.day-card .btn-add {
    background: rgba(0, 0, 0, 0.08) !important; /* Gündüz Modu: Belirgin Gri */
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    color: var(--text-main) !important;
}
[data-theme="dark"] .day-card .btn-add {
    background: rgba(255, 255, 255, 0.12) !important; /* Gece Modu: Şeffaf Beyaz */
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3) !important;
}
[data-theme="dark"] .day-card .btn-add:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

/* =========================================================
   BUG FIX: BÜYÜK KARTTA ÜSTTEKİ EKLE (+) BUTONUNU GİZLE
========================================================= */
.day-card.expanded-active .header-actions .add-ex-top-btn {
    display: none !important;
}

/* =========================================================
   TAMAMLANAN KARTLAR İÇİN ZARİF (SUBTLE) NEON ÇERÇEVE
========================================================= */
/* Gündüz Modu: İnce yeşil sınır ve çok hafif iç yansıma */
.day-card.card-completed {
    border: 1px solid rgba(52, 199, 89, 0.4) !important;
    box-shadow: inset 0 0 15px rgba(52, 199, 89, 0.05) !important;
}

/* Gece Modu: Karanlık zeminle uyumlu, göz yormayan elit yeşil neon */
[data-theme="dark"] .day-card.card-completed {
    border: 1px solid rgba(48, 209, 88, 0.25) !important;
    box-shadow: inset 0 0 20px rgba(48, 209, 88, 0.08) !important; 
}

/* =========================================================
   BUG FIX: WIDGET MOD DEĞİŞTİRME TUŞLARINDA HOVER İPTALİ
========================================================= */
/* Ön yüzdeki (Hava Durumu) ve Arka yüzdeki (Fatigue) flip butonları kendi arka plan rengini korur */
.flip-btn:hover,
.widget-back button:hover {
    transform: none !important;
    background: revert !important;
    background-color: revert !important;
    opacity: 0.8 !important; 
}

/* =========================================================
   AYDINLIK/KARANLIK MOD UYUMLU PR KARTI (KİŞİSEL REKORLAR)
========================================================= */
/* Gündüz Modu - Premium Apple Beji ve Parlak Altın */
.pr-special-card {
    background: linear-gradient(160deg, #FAF9F6 0%, #F5F5F0 100%) !important;
    border: 1px solid rgba(184, 134, 11, 0.25) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,1) !important;
}
.pr-header { border-bottom: 1px solid rgba(184, 134, 11, 0.15) !important; padding-bottom: 12px; margin-bottom: 12px; }
.pr-icon-wrap {
    background: linear-gradient(135deg, rgba(249, 212, 35, 0.2) 0%, rgba(218, 165, 32, 0.1) 100%);
    padding: 8px; border-radius: 12px; border: 0.5px solid rgba(184, 134, 11, 0.3);
    display:flex; align-items:center; justify-content:center; box-shadow: 0 4px 10px rgba(184, 134, 11, 0.08);
}
.pr-title-text {
    font-size: 1.4em; font-weight: 900; background: linear-gradient(135deg, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0px 1px 1px rgba(0,0,0,0.1));
    -webkit-text-stroke: 0.5px rgba(60, 40, 10, 0.6); /* Yazının dışına eklenen çok ince koyu kontür */
}
.pr-text-dim { color: rgba(60, 60, 67, 0.6) !important; font-weight: 500; }
.pr-text-bold { color: #1C1C1E !important; font-weight: 700; }
.pr-list-container {
    background: rgba(255, 255, 255, 0.5) !important; border: 1px solid rgba(184, 134, 11, 0.1) !important;
    box-shadow: inset 0 2px 5px rgba(0,0,0,0.02) !important; pointer-events: none; overflow: hidden; flex-grow: 1; display: flex; flex-direction: column;
    border-radius: 12px;
}
.pr-list-item { border-bottom: 0.5px solid rgba(184, 134, 11, 0.1) !important; cursor: default; background-color: transparent; }
.pr-list-item:last-child { border-bottom: none !important; }
.pr-detail-badge {
    background: linear-gradient(145deg, #F9D423, #B8860B) !important;
    border: none !important; color: #FFF !important;
    box-shadow: 0 2px 6px rgba(184, 134, 11, 0.3) !important; text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important; font-weight: 700;
}

/* Karanlık Mod (Dark Theme) - Koyu Titanyum ve Neon Sarısı */
[data-theme="dark"] .pr-special-card {
    background: linear-gradient(160deg, #1c1c1e 0%, #000000 100%) !important;
    border: 1px solid rgba(249, 212, 35, 0.25) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.1) !important;
}
[data-theme="dark"] .pr-header { border-bottom: 1px solid rgba(249, 212, 35, 0.15) !important; }
[data-theme="dark"] .pr-icon-wrap {
    border: 0.5px solid rgba(249, 212, 35, 0.3); box-shadow: 0 4px 10px rgba(249, 212, 35, 0.1);
}
[data-theme="dark"] .pr-title-text {
    background: linear-gradient(135deg, #BF953F, #FCF6BA, #B38728, #FBF5B7, #AA771C) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: 0px 2px 15px rgba(249, 212, 35, 0.3);
}
[data-theme="dark"] .pr-text-dim { color: rgba(255, 255, 255, 0.6) !important; }
[data-theme="dark"] .pr-text-bold { color: #fff !important; }
[data-theme="dark"] .pr-list-container {
    background: rgba(255, 255, 255, 0.02) !important; border: 1px solid rgba(249, 212, 35, 0.1) !important;
    box-shadow: inset 0 2px 10px rgba(0,0,0,0.5) !important;
}
[data-theme="dark"] .pr-list-item { border-bottom: 0.5px solid rgba(249, 212, 35, 0.1) !important; }
[data-theme="dark"] .pr-detail-badge {
    background: linear-gradient(145deg, rgba(249, 212, 35, 0.15), rgba(184, 134, 11, 0.05)) !important;
    border: 0.5px solid rgba(249, 212, 35, 0.3) !important; color: #F9D423 !important;
    box-shadow: 0 2px 8px rgba(249, 212, 35, 0.1) !important; text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important;
}

/* =========================================================
   ANA SAYFA MİNİ TAKVİM ÖZEL STİLLERİ
========================================================= */
.home-cal-card {
    /* Arka plan kodlarını sildik ki tema (mevsim) renkleri cam efektiyle gözükebilsin! */
    border: 1px solid var(--card-border) !important;
}

/* YENİ: Günlere tıklanmayı, hover efekti almayı (yuvarlak belirmesini) ve imleci tamamen iptal et */
.home-cal-card .ios-day {
    pointer-events: none !important; 
    cursor: default !important;
}

.home-calendar-day-name {
    text-align: center;
    font-size: 0.65em;
    font-weight: 800;
    color: var(--text-secondary);
    opacity: 0.6;
    margin-bottom: 2px;
    text-transform: uppercase;
}

/* Sezon şeritleri mini boyuta uyarlanırken boşluklar SIFIRLANDI */
.home-cal-card .in-season::before, 
.home-cal-card .in-season::after {
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
}

/* Mini takvimdeki tiklerin konumu ve boyutu */
.home-cal-card .day-tick {
    font-size: 0.7em !important;
    bottom: -2px !important;
}

/* Bugün vurgusunu mini boyuta uyarla */
.home-cal-card .ios-day.today .ios-day-number {
    font-size: 0.9em;
    background: var(--accent-blue);
    color: white;
}

/* =========================================================
   ANA SAYFA MİNİ TAKVİM - KESİN GÖRSEL FİX (SIFIR BOŞLUK)
========================================================= */
/* Izgara boşluklarını ve hücre hizalamasını mini kartta sıfırlıyoruz */
.home-cal-card .ios-calendar-grid {
    gap: 0 !important;
    grid-auto-rows: minmax(32px, auto) !important;
    align-items: stretch !important;
}

/* Hücrelerin içindeki tüm kısıtlamaları kaldırıyoruz */
.home-cal-card .ios-day {
    height: 100% !important;
    min-height: 32px !important;
    padding: 0 !important;
}

/* Sezon şeritlerini (Blobları) tam genişlik ve sıfır boşluk yapıyoruz */
.home-cal-card .in-season::before, 
.home-cal-card .in-season::after {
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
}

/* Çapraz günlerde (19-25 gibi) köşelerin birleşmesini sağlar, ancak DIŞ köşeleri yuvarlak bırakır */
.home-cal-card .in-season.edge-t.edge-l::before, 
.home-cal-card .in-season.edge-t.edge-l::after { border-top-left-radius: 10px !important; }
.home-cal-card .in-season.edge-t.edge-r::before, 
.home-cal-card .in-season.edge-t.edge-r::after { border-top-right-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-l::before, 
.home-cal-card .in-season.edge-b.edge-l::after { border-bottom-left-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-r::before, 
.home-cal-card .in-season.edge-b.edge-r::after { border-bottom-right-radius: 10px !important; }

/* =========================================================
   TİK BOYUTLARI (BÜYÜK VE MİNİ TAKVİM AYRIMI)
========================================================= */
/* 1. Büyük Takvimdeki Tikler (Boyutu Artırıldı) */
.month-card .day-tick {
    font-size: 1.2em !important; /* Eskisine göre oldukça büyütüldü */
    bottom: -5px !important; /* Büyüdüğü için rakama değmesin diye biraz daha aşağı çekildi */
    z-index: 10 !important;
}

/* 2. Ana Sayfa Mini Takvimdeki Tikler (Eski Boyutunda Korundu) */
.home-cal-card .day-tick {
    display: block !important;
    font-size: 0.7em !important; /* Boyut sabit bırakıldı */
    bottom: -1px !important;
    z-index: 10 !important;
}

/* =========================================================
   GEÇMİŞ ANTRENMANLAR - IOS NAVİGASYON BUTONLARI
========================================================= */
.history-nav-btn {
    width: 54px !important;
    height: 54px !important;
    border-radius: 27px !important;
    background: rgba(150, 150, 150, 0.15) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25) !important;
    color: var(--text-main) !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), background 0.2s !important;
    cursor: pointer !important;
}

[data-theme="light"] .history-nav-btn {
    background: rgba(255, 255, 255, 0.6) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
    color: var(--accent-blue) !important;
}

.history-nav-btn:active {
    transform: scale(0.9) !important;
    background: rgba(150, 150, 150, 0.3) !important;
}

/* =========================================================
   KARANLIK MOD: YÖN BUTONLARI GÖLGE İPTALİ (TAKVİM & GEÇMİŞ)
========================================================= */
[data-theme="dark"] .history-nav-btn,
[data-theme="dark"] button[onclick*="moveMonth"] {
    box-shadow: none !important;
}

/* DÜZENLE MODU AÇIKKEN GÜNLERİN TIKLANABİLİR OLDUĞUNU GÖSTEREN İMLEÇ */
body.edit-mode .ios-day {
    cursor: pointer !important;
}
body.edit-mode .ios-day.is-future-day {
    cursor: not-allowed !important;
    opacity: 0.32 !important;
    pointer-events: none !important;
}

/* =========================================================
   BUG FIX: ANA SAYFA KART YERLEŞİMİ (PR VE TAKVİM)
========================================================= */
/* PR kartını açıkça 2. satır, 1. sütuna yerleşmeye zorlar */
.pr-special-card {
    grid-row: 2 !important;
    grid-column: 1 !important;
}

/* Takvim kartını açıkça 2. satır, 2. sütuna (PR kartının yanına) yerleşmeye zorlar */
.home-cal-card {
    grid-row: 2 !important;
    grid-column: 2 !important;
}

/* =========================================================
   SMALL STATS GRID: 4 KÜÇÜK KART TASARIMI
========================================================= */
.small-stats-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 1fr 1fr !important;
    gap: 20px !important; /* Diğer kartlar arasındaki boşlukla birebir aynı */
    height: 100% !important;
}

.small-stat-card {
    background: var(--list-bg) !important;
    border: 1px solid var(--card-border) !important;
    border-radius: 20px !important;
    padding: 15px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: var(--card-shadow) !important;
    transition: transform 0.2s var(--ios-spring) !important;
}

.small-stat-card:hover { transform: translateY(-3px); box-shadow: var(--card-hover-shadow) !important; }

.stat-icon {
    width: 28px; height: 28px;
    background: rgba(0, 122, 255, 0.1);
    color: var(--accent-blue);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 8px;
}

.stat-info { display: flex; flex-direction: column; }
.stat-val { font-size: 1.2em; font-weight: 800; color: var(--text-main); }
.stat-val small { font-size: 0.6em; opacity: 0.6; margin-left: 2px; }
.stat-label { font-size: 0.7em; font-weight: 700; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.5px; margin-top: 2px; }

/* Karanlık Mod Uyumları */
[data-theme="dark"] .small-stat-card { background: rgba(44, 44, 46, 0.6) !important; backdrop-filter: blur(10px); }
[data-theme="dark"] .stat-icon { background: rgba(10, 132, 255, 0.2); }

/* =========================================================
   BUG FIX: ANA SAYFA 6. KART (SAĞ ALT) YERLEŞİMİ
========================================================= */
/* Boş kartı açıkça 2. satır, 3. sütuna (Takvimin yanına) yerleştirir */
.home-empty-card {
    grid-row: 2 !important;
    grid-column: 3 !important;
    /* PR kartı stiline sahip olması için özel gölge efekti */
    border: 1px solid rgba(184, 134, 11, 0.1) !important;
}

/* PR ve Takvim kartlarının yerleşimlerini de tekrar kontrol ederek sabitliyoruz */
.pr-special-card:not(.home-empty-card) {
    grid-row: 2 !important;
    grid-column: 1 !important;
}

.home-cal-card {
    grid-row: 2 !important;
    grid-column: 2 !important;
}


/* --- KART ÇEVİRME (FLIP) BUTONU --- */
.flip-btn {
    width: 34px !important; height: 34px !important;
    min-width: 34px !important; min-height: 34px !important;
    border-radius: 50% !important;
    background: rgba(150, 150, 150, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: var(--text-main) !important;
    cursor: pointer !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    z-index: 999 !important;
    padding: 0 !important;
    pointer-events: auto;
    transition: transform 0.22s var(--ios-spring), background-color 0.2s ease, border-color 0.2s ease;
}
.flip-btn:hover { transform: scale(1.06); }
.flip-btn:active { transform: scale(0.92); }


/* Cleanup/override: normalize floating month navigation buttons (remove earlier conflicting duplicates) */
button[onclick*="moveMonth"] {
    position: fixed !important;
    right: -100px !important;
    z-index: 1000 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    background: rgba(150, 150, 150, 0.15) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.25) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--text-main) !important;
    cursor: pointer !important;
    transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), background 0.2s !important;
}
button[onclick*="moveMonth(-1)"] { top: calc(50% - 55px) !important; }
button[onclick*="moveMonth(1)"] { top: calc(50% + 5px) !important; }

/* =========================================================
   PERFORMANS & 120FPS AKICILIK OPTİMİZASYONLARI
========================================================= */
/* Gizli görünümlerdeki tüm sonsuz animasyonları durdurarak arka plan CPU/GPU yükünü sıfırla */
.view-hidden *,
.view-hidden *::before,
.view-hidden *::after,
.calendar-view-wrapper:not(.active) *,
.calendar-view-wrapper:not(.active) *::before,
.calendar-view-wrapper:not(.active) *::after {
    animation-play-state: paused !important;
}

/* Kart büyütme/küçültme veya tam ekran görünüm sırasında arka plandaki parçacık/parlama animasyonlarını duraklat */
body.has-expanded-card .current-day-highlight .card-front .day-title,
body.has-expanded-card .pr-glow-text,
body.has-expanded-card .pr-glow-bar,
body.has-expanded-card .nba-live-badge {
    animation-play-state: paused !important;
}

/* Uçuş (expand/collapse) anında pahalı backdrop-filter yeniden hesaplamalarını devre dışı bırak */
.day-card.is-animating,
.day-card.is-animating .exercise-list,
.top-widget.is-animating {
    will-change: top, left, width, height, transform !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}


/* =========================================================
   MİKRO ETKİLEŞİM VE PR KUTLAMA ANİMASYONLARI
========================================================= */
@keyframes microPop {
    0% { transform: scale(1); }
    45% { transform: scale(1.14); }
    100% { transform: scale(1); }
}

.micro-pop {
    animation: microPop 0.24s var(--ios-spring);
}

@keyframes supersetFlash {
    0% { box-shadow: 0 0 0 0 rgba(10, 132, 255, 0.65); }
    50% { box-shadow: 0 0 0 6px rgba(10, 132, 255, 0); }
    100% { box-shadow: 0 0 0 0 rgba(10, 132, 255, 0); }
}

.superset-flash-anim {
    animation: supersetFlash 0.6s ease-out;
}

.ios-dynamic-toast {
    position: fixed;
    top: 22px;
    left: 50%;
    transform: translate3d(-50%, -90px, 0) scale(0.85);
    z-index: 99999;
    background: rgba(20, 20, 22, 0.92);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
    padding: 10px 20px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.88em;
    font-weight: 800;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.45);
    pointer-events: none;
    opacity: 0;
    transition: transform 0.45s var(--ios-spring), opacity 0.3s ease;
}

.ios-dynamic-toast.show {
    transform: translate3d(-50%, 0, 0) scale(1);
    opacity: 1;
}

.ios-dynamic-toast.is-pr {
    border-color: rgba(255, 214, 10, 0.55);
    box-shadow: 0 14px 40px rgba(249, 212, 35, 0.28), 0 0 18px rgba(255, 214, 10, 0.22);
}

.pr-confetti-particle {
    position: fixed;
    z-index: 99998;
    width: 8px;
    height: 8px;
    border-radius: 2px;
    pointer-events: none;
    will-change: transform, opacity;
    animation: confettiBurst 1.35s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes confettiBurst {
    0% {
        transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
        opacity: 1;
    }
    100% {
        transform: translate3d(var(--tx, 0px), var(--ty, 180px), 0) rotate(var(--rot, 360deg)) scale(0.4);
        opacity: 0;
    }
}

@keyframes prCardCelebrateGlow {
    0%, 100% { box-shadow: var(--card-shadow); }
    50% { box-shadow: 0 0 35px rgba(255, 214, 10, 0.55), inset 0 0 20px rgba(255, 214, 10, 0.25); }
}

.pr-card-celebrate {
    animation: prCardCelebrateGlow 1.4s ease-in-out 2;
}

#homeView.view-active #weatherFx,
#homeView.view-active #weatherFx *,
#homeView.view-active #weatherFx *::before,
#homeView.view-active #weatherFx *::after {
    animation-play-state: running !important;
}


/* Gizli Katmanlarda ve Kart Uçuş Animasyonları Esnasında Gereksiz GPU Blur Yükünü Kaldır (120FPS Akıcılık) */
.day-card.is-flipping,
.day-card.is-animating,
.workout-menu-overlay:not(.active),
.sidebar-overlay:not(.active),
.modal-overlay:not(.active),
.custom-select-menu:not(.active) {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.workout-menu-overlay:not(.active),
.sidebar-overlay:not(.active),
.modal-overlay:not(.active):not(.closing),
.custom-select-menu:not(.active) {
    visibility: hidden !important;
}

.modal-overlay.closing {
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.22s ease-out !important;
}
.modal-overlay.closing .ios-modal-card {
    transform: scale(0.94) translateY(14px) !important;
    opacity: 0 !important;
    transition: transform 0.22s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.18s ease-out !important;
}
.modal-overlay.closing .ios-alert {
    transform: translateY(10px) scale(0.95) !important;
    opacity: 0 !important;
    transition: transform 0.22s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.18s ease-out !important;
}

/* Antrenman Kartı Flip Sırasında Boyut/Yaylanma Çakışmasını Kesin Olarak Kapatır */
.day-card.is-flipping,
.day-card.expanded-active.is-flipping {
    transition: none !important;
    animation: none !important;
    filter: none !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
    will-change: transform !important;
}


/* 3'LÜ SÜPERSET (TRI-SET) ORTA SATIR & MODAL SEÇİCİ STİLLERİ */
.exercise-item.linked-middle {
    border-top: none !important;
    border-bottom: none !important;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    min-height: 20px !important;
    z-index: 2;
}

.ss-third-toggle-btn {
    width: 100%;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px dashed var(--separator);
    background: var(--btn-bg);
    color: var(--text-secondary);
    font-size: 0.82em;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    transition: all 0.2s var(--ios-spring);
}

.ss-third-toggle-btn.active {
    border-style: solid;
    border-color: var(--accent-blue);
    background: rgba(10, 132, 255, 0.14);
    color: var(--accent-blue);
    font-weight: 700;
}

/* =========================================================
   IOS 18 / APPLE FITNESS+ AURORA & PREMIUM EFEKT PAKETİ (V2)
========================================================= */

/* 1. ARKA PLAN & DİNAMİK AMBILIGHT ORTAM IŞIĞI */
.premium-bg {
    position: fixed;
    inset: 0;
    z-index: -1;
    background-color: var(--bg-main);
    overflow: hidden;
    pointer-events: none;
}

.sky-ambient-glow {
    position: absolute;
    top: -180px;
    left: 50%;
    transform: translateX(-50%) translateZ(0);
    width: min(1350px, 96vw);
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(ellipse at center, var(--ambient-sky-color, rgba(10, 132, 255, 0.22)) 0%, rgba(94, 92, 230, 0.08) 45%, transparent 72%);
    filter: blur(45px);
    opacity: 0.9;
    transition: background 1.2s ease;
    pointer-events: none;
}

.ambilight-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(75px);
    pointer-events: none;
    will-change: transform;
    transform: translateZ(0);
}

.ambilight-orb.orb-1 {
    width: 520px;
    height: 520px;
    top: -140px;
    left: -120px;
    background: radial-gradient(circle, rgba(10, 132, 255, 0.16) 0%, rgba(94, 92, 230, 0.06) 55%, transparent 75%);
    animation: ambilightFloat1 22s ease-in-out infinite alternate;
}

.ambilight-orb.orb-2 {
    width: 560px;
    height: 560px;
    bottom: -180px;
    right: -130px;
    background: radial-gradient(circle, rgba(191, 90, 242, 0.15) 0%, rgba(255, 55, 95, 0.06) 55%, transparent 75%);
    animation: ambilightFloat2 26s ease-in-out infinite alternate;
}

.ambilight-orb.orb-3 {
    width: 460px;
    height: 460px;
    bottom: 8%;
    left: 28%;
    background: radial-gradient(circle, rgba(48, 209, 88, 0.11) 0%, rgba(255, 159, 10, 0.05) 55%, transparent 75%);
    animation: ambilightFloat3 28s ease-in-out infinite alternate;
}

[data-theme="dark"] .ambilight-orb.orb-1 {
    background: radial-gradient(circle, rgba(10, 132, 255, 0.22) 0%, rgba(94, 92, 230, 0.09) 55%, transparent 75%);
}
[data-theme="dark"] .ambilight-orb.orb-2 {
    background: radial-gradient(circle, rgba(191, 90, 242, 0.20) 0%, rgba(255, 55, 95, 0.08) 55%, transparent 75%);
}
[data-theme="dark"] .ambilight-orb.orb-3 {
    background: radial-gradient(circle, rgba(48, 209, 88, 0.14) 0%, rgba(255, 159, 10, 0.07) 55%, transparent 75%);
}

@keyframes ambilightFloat1 {
    0% { transform: translate3d(0, 0, 0) scale(1); }
    100% { transform: translate3d(90px, 65px, 0) scale(1.12); }
}
@keyframes ambilightFloat2 {
    0% { transform: translate3d(0, 0, 0) scale(1); }
    100% { transform: translate3d(-85px, -60px, 0) scale(1.1); }
}
@keyframes ambilightFloat3 {
    0% { transform: translate3d(0, 0, 0) scale(0.96); }
    100% { transform: translate3d(65px, -50px, 0) scale(1.08); }
}

/* 2. GÜN KARTLARI: AURORA MESH KÖŞELERİ & SPECULAR CAM ÇERÇEVE */
.day-card.theme-blue {
    --theme-accent: #007AFF;
    --theme-accent-2: #5856D6;
    --theme-rgb: 10, 132, 255;
    --theme-rgb-2: 88, 86, 214;
}
.day-card.theme-orange {
    --theme-accent: #FF8C00;
    --theme-accent-2: #FF3B30;
    --theme-rgb: 255, 149, 0;
    --theme-rgb-2: 255, 59, 48;
}
.day-card.theme-green {
    --theme-accent: #28CD41;
    --theme-accent-2: #00C7BE;
    --theme-rgb: 48, 209, 88;
    --theme-rgb-2: 0, 199, 190;
}
.day-card.theme-purple {
    --theme-accent: #AF52DE;
    --theme-accent-2: #5856D6;
    --theme-rgb: 191, 90, 242;
    --theme-rgb-2: 94, 92, 230;
}
.day-card.theme-pink {
    --theme-accent: #FF2D55;
    --theme-accent-2: #AF52DE;
    --theme-rgb: 255, 55, 95;
    --theme-rgb-2: 191, 90, 242;
}
.day-card.theme-yellow {
    --theme-accent: #E6A800;
    --theme-accent-2: #FF9500;
    --theme-rgb: 255, 204, 0;
    --theme-rgb-2: 255, 149, 0;
}

[data-theme="dark"] .day-card.theme-blue { --theme-accent: #3898FF; }
[data-theme="dark"] .day-card.theme-orange { --theme-accent: #FF9F0A; }
[data-theme="dark"] .day-card.theme-green { --theme-accent: #30D158; }
[data-theme="dark"] .day-card.theme-purple { --theme-accent: #CA7BFF; }
[data-theme="dark"] .day-card.theme-pink { --theme-accent: #FF4F79; }
[data-theme="dark"] .day-card.theme-yellow { --theme-accent: #FFD60A; }

/* Gündüz Modu Aurora Mesh + Specular Rim Light (Klasik Renkli Cam Modu) */
body.card-theme-vibrant .day-card.theme-blue,
body.card-theme-vibrant .day-card.theme-orange,
body.card-theme-vibrant .day-card.theme-green,
body.card-theme-vibrant .day-card.theme-purple,
body.card-theme-vibrant .day-card.theme-pink,
body.card-theme-vibrant .day-card.theme-yellow {
    background:
        radial-gradient(115% 90% at 96% 4%, rgba(var(--theme-rgb), 0.30) 0%, rgba(var(--theme-rgb), 0.10) 38%, transparent 65%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.22) 0%, transparent 60%),
        linear-gradient(155deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.32) !important;
    box-shadow:
        0 12px 28px -6px rgba(var(--theme-rgb), 0.14),
        0 4px 12px rgba(0, 0, 0, 0.04),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95),
        inset 1px 0 0 rgba(255, 255, 255, 0.75) !important;
}

/* Gece Modu Aurora Mesh + Specular Rim Light (Klasik Renkli Cam Modu) */
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-blue,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-orange,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-green,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-purple,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-pink,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-yellow {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(var(--theme-rgb), 0.45) 0%, rgba(var(--theme-rgb), 0.14) 42%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.28) 0%, transparent 60%),
        linear-gradient(160deg, #161820 0%, #0E1015 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.38) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.55),
        0 0 24px -6px rgba(var(--theme-rgb), 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

body.card-theme-vibrant .day-card:hover:not(.expanded-active):not(.is-animating):not(.event-card-wrapper):not(.home-cal-card) {
    box-shadow:
        0 18px 38px -6px rgba(var(--theme-rgb, 10, 132, 255), 0.26),
        0 6px 16px rgba(0, 0, 0, 0.12),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35) !important;
}

.day-card > .card-front,
.day-card > .card-back {
    z-index: 1;
}

/* CANLI TÜR ROZETLERİ (WORKOUT TYPE PILL) */
.workout-type-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.76em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--theme-accent, var(--accent-blue));
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.13);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.30);
    box-shadow: 0 2px 8px rgba(var(--theme-rgb, 10, 132, 255), 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.25);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
[data-theme="dark"] .workout-type-pill {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.18);
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.38);
}
.workout-type-pill svg {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}

/* 3. EGZERSİZ SATIRLARI & SÜPERSET BÜTÜNLEŞİK HOVER SİSTEMİ */
.day-card .exercise-list:not(.ios-drag-floating-ghost) {
    background: rgba(255, 255, 255, 0.52) !important;
    border: 1px solid rgba(var(--theme-rgb, 120, 120, 128), 0.16) !important;
    padding: 6px !important;
    border-radius: 16px !important;
}
[data-theme="dark"] .day-card .exercise-list:not(.ios-drag-floating-ghost) {
    background: rgba(10, 12, 18, 0.52) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.day-card .exercise-item:not(.pr-list-item) {
    margin-bottom: 4px;
    border-radius: 11px !important;
    border-bottom: none !important;
    background: rgba(255, 255, 255, 0.66);
    border: 1px solid rgba(0, 0, 0, 0.04);
    padding: 7px 11px 7px 20px !important;
    transition: transform 0.22s var(--ios-spring), background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}
[data-theme="dark"] .day-card .exercise-item:not(.pr-list-item) {
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.055);
}
.day-card .exercise-item:not(.pr-list-item):last-child {
    margin-bottom: 0;
}

/* Tekli Egzersiz Sol Tarafı: Sabit Nokta İndikatörü */
.day-card .exercise-item:not(.pr-list-item)::before {
    content: '';
    position: absolute;
    left: 7px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--theme-accent, var(--accent-blue));
    box-shadow: 0 0 0 2.5px rgba(var(--theme-rgb, 10, 132, 255), 0.18);
    opacity: 0.85;
    transition: transform 0.2s var(--ios-spring), opacity 0.2s ease, box-shadow 0.2s ease;
}

.day-card.expanded-active .exercise-item:not(.pr-list-item)::before {
    display: none !important;
}
.day-card.expanded-active .exercise-item:not(.pr-list-item) {
    padding-left: 13px !important;
}

/* Tekli egzersiz hover */
.day-card .exercise-item:not(.pr-list-item):not(.linked-to-next):not(.linked-to-prev):hover {
    transform: translateX(2px);
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.28);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
[data-theme="dark"] .day-card .exercise-item:not(.pr-list-item):not(.linked-to-next):not(.linked-to-prev):hover {
    background: rgba(255, 255, 255, 0.085);
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.35);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28);
}
.day-card .exercise-item:not(.pr-list-item):not(.linked-to-next):not(.linked-to-prev):hover::before {
    opacity: 1;
    transform: translateY(-50%) scale(1.12);
    box-shadow: 0 0 0 3.5px rgba(var(--theme-rgb, 10, 132, 255), 0.26);
}

/* SÜPERSET SATIRLARININ TEK BİR BÜTÜN OLARAK GÖRÜNMESİ VE BİRLİKTE HOVER OLMASI */
/* --- SÜPERSET BİRLEŞİK İOS KAPSÜL MİMARİSİ (TEK PARÇA BİRLEŞİK GÖRÜNÜM) --- */
.day-card .exercise-item.linked-to-next:not(.linked-to-prev),
.day-card.expanded-active .exercise-item.linked-to-next:not(.linked-to-prev) {
    margin-bottom: 0 !important;
    padding-top: 7px !important;
    padding-bottom: 3px !important;
    min-height: 30px !important;
    height: auto !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom: none !important;
    background: rgba(255, 255, 255, 0.058) !important;
    box-shadow: none !important;
}
[data-theme="light"] .day-card .exercise-item.linked-to-next:not(.linked-to-prev) {
    background: rgba(0, 0, 0, 0.045) !important;
}

.day-card .exercise-item.linked-middle,
.day-card.expanded-active .exercise-item.linked-middle {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    min-height: 28px !important;
    height: auto !important;
    border-radius: 0 !important;
    border-top: none !important;
    border-bottom: none !important;
    background: rgba(255, 255, 255, 0.058) !important;
    box-shadow: none !important;
}

.day-card .exercise-item.linked-to-prev:not(.linked-to-next),
.day-card.expanded-active .exercise-item.linked-to-prev:not(.linked-to-next) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    padding-top: 3px !important;
    padding-bottom: 7px !important;
    min-height: 30px !important;
    height: auto !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-top: none !important;
    background: rgba(255, 255, 255, 0.058) !important;
    box-shadow: none !important;
}
[data-theme="light"] .day-card .exercise-item.linked-to-prev:not(.linked-to-next) {
    background: rgba(0, 0, 0, 0.045) !important;
    border-top: none !important;
}
.day-card .exercise-item.linked-to-prev:not(.linked-to-next):last-child {
    margin-bottom: 0 !important;
}

/* 44px min-height kuralının süperset satırlarını ezmesini kesin engelle */
.day-card .exercise-item.linked-to-next,
.day-card .exercise-item.linked-to-prev,
.day-card .exercise-item.linked-middle,
.day-card.expanded-active .exercise-item.linked-to-next,
.day-card.expanded-active .exercise-item.linked-to-prev,
.day-card.expanded-active .exercise-item.linked-middle {
    min-height: 30px !important;
    max-height: 38px !important;
}

/* Zincir hover olduğunda tek bir gölge ve ortak zemin */
.day-card .exercise-item.ss-chain-hover {
    transform: translateX(2px) !important;
    background: rgba(255, 255, 255, 0.095) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.36) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
}
[data-theme="light"] .day-card .exercise-item.ss-chain-hover {
    background: rgba(0, 0, 0, 0.07) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06) !important;
}

.day-card .exercise-item.linked-to-next::before,
.day-card .exercise-item.linked-to-prev::before {
    display: none !important;
}

/* Birleşmiş 2 veya 3 süperset satırından herhangi birinin üzerine gelindiğinde tüm grubun tek parça olarak hover olması */
.day-card .exercise-item.ss-chain-hover {
    transform: translateX(2px) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.30) !important;
    box-shadow: none !important;
}

[data-theme="dark"] .day-card .exercise-item.ss-chain-hover {
    background: rgba(255, 255, 255, 0.088) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.36) !important;
    box-shadow: none !important;
}

/* Süperset Sabit Mimari Bağlantı Rayı */
.superset-energy-bridge {
    position: absolute;
    left: 8px;
    width: 2.5px;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.55);
    border-radius: 99px;
    z-index: 6;
    pointer-events: none;
}
.superset-energy-bridge::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--list-bg);
    border: 2px solid var(--theme-accent, var(--accent-blue));
    box-sizing: border-box;
}
.exercise-item.linked-to-next:not(.linked-to-prev) .superset-energy-bridge {
    top: 50%;
    bottom: -2px;
}
.exercise-item.linked-to-next:not(.linked-to-prev) .superset-energy-bridge::after {
    top: 0%;
}
.exercise-item.linked-middle .superset-energy-bridge {
    top: -2px;
    bottom: -2px;
}
.exercise-item.linked-middle .superset-energy-bridge::after {
    top: 50%;
}
.exercise-item.linked-to-prev:not(.linked-to-next) .superset-energy-bridge {
    top: -2px;
    bottom: 50%;
}
.exercise-item.linked-to-prev:not(.linked-to-next) .superset-energy-bridge::after {
    top: 100%;
}

/* Geçmiş Antrenmanlarda Tek Satır Süperset Görünümü (Vurgusuz, Tek Satır) */
.history-superset-single-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 7px 11px 7px 20px !important;
}
.history-ss-names-stack {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1;
}
.history-ss-name-line {
    font-size: 0.9em;
    font-weight: 500;
    line-height: 1.22;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* İkili Renkli Kapsüller (Ağırlık + Set/Tekrar) */
.ex-badges-wrap {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
    pointer-events: none;
}

.ex-weight-pill {
    font-size: 0.78em;
    font-weight: 800;
    padding: 3px 8px;
    border-radius: 7px;
    color: var(--theme-accent, var(--accent-blue));
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.14);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
    white-space: nowrap;
    letter-spacing: -0.1px;
}
[data-theme="dark"] .ex-weight-pill {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.20);
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.36);
}

.ex-reps-pill {
    font-size: 0.76em;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 7px;
    color: var(--text-main);
    opacity: 0.85;
    background: var(--btn-bg);
    border: 1px solid rgba(150, 150, 150, 0.14);
    white-space: nowrap;
}

/* 4. GEÇMİŞ ANTRENMANLARDA AKTİF PR EGZERSİZ SATIRI (ALTIN & PARLAYAN PR STİLİ) */
.day-card .exercise-item.history-pr-row {
    background:
        radial-gradient(110% 100% at 96% 10%, rgba(249, 212, 35, 0.28) 0%, transparent 60%),
        linear-gradient(135deg, #FFFDF7 0%, #FDF4D2 60%, #F9E7A8 100%) !important;
    border: 1px solid rgba(184, 134, 11, 0.55) !important;
    box-shadow:
        0 4px 14px rgba(184, 134, 11, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    position: relative;
    overflow: hidden;
}
[data-theme="dark"] .day-card .exercise-item.history-pr-row {
    background:
        radial-gradient(115% 100% at 96% 10%, rgba(249, 212, 35, 0.30) 0%, transparent 62%),
        linear-gradient(135deg, rgba(48, 37, 10, 0.94) 0%, rgba(24, 19, 8, 0.96) 100%) !important;
    border: 1px solid rgba(249, 212, 35, 0.52) !important;
    box-shadow:
        0 4px 16px rgba(249, 212, 35, 0.16),
        0 0 12px rgba(249, 212, 35, 0.10),
        inset 0 1px 0 rgba(255, 246, 186, 0.25) !important;
}

.day-card .exercise-item.history-pr-row::before {
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 100%) !important;
    box-shadow: 0 0 0 3px rgba(249, 212, 35, 0.28), 0 0 8px rgba(249, 212, 35, 0.55) !important;
    opacity: 1 !important;
}

.day-card .exercise-item.history-pr-row::after {
    content: '';
    position: absolute;
    top: 0;
    left: -120%;
    width: 55%;
    height: 100%;
    background: linear-gradient(
        115deg,
        transparent 0%,
        rgba(255, 246, 186, 0.04) 30%,
        rgba(255, 246, 186, 0.26) 50%,
        rgba(255, 246, 186, 0.04) 70%,
        transparent 100%
    );
    transform: skewX(-20deg);
    animation: prShimmerSweep 7s cubic-bezier(0.4, 0, 0.2, 1) infinite !important;
    animation-delay: 0s !important;
    pointer-events: none;
    z-index: 1;
}

.history-pr-row .ex-name-text {
    font-weight: 800 !important;
    color: #5C3D00 !important;
}
[data-theme="dark"] .history-pr-row .ex-name-text {
    color: #FFF4C2 !important;
    text-shadow: 0 1px 8px rgba(249, 212, 35, 0.35);
}

.history-pr-tag {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    margin-left: 7px;
    padding: 2px 7px;
    border-radius: 999px;
    font-size: 0.68em;
    font-weight: 900;
    letter-spacing: 0.4px;
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 55%, #B8860B 100%);
    color: #2B1B00;
    border: 1px solid rgba(255, 245, 190, 0.85);
    box-shadow: 0 2px 6px rgba(184, 134, 11, 0.35);
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

/* 5. KART ARKASI (ANTRENMANI GİR) CANLI PR ÖNİZLEME STİLLERİ */
.log-ex-box {
    background: var(--btn-bg);
    border: 1px solid rgba(150, 150, 150, 0.14);
    border-radius: 14px;
    padding: 10px 14px;
    margin-bottom: 10px;
    transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.2s var(--ios-spring);
}
.log-ex-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}
.log-ex-title {
    font-weight: 700;
    font-size: 0.94em;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.log-pr-badge {
    font-size: 0.7em;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(150, 150, 150, 0.14);
    color: var(--text-secondary);
    border: 1px solid rgba(150, 150, 150, 0.2);
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.25s var(--ios-spring);
}
.log-pr-badge.is-locked {
    opacity: 0.65;
}
.log-ex-box.live-pr-active {
    background:
        radial-gradient(110% 100% at 96% 10%, rgba(249, 212, 35, 0.25) 0%, transparent 60%),
        linear-gradient(135deg, rgba(255, 248, 220, 0.9) 0%, rgba(253, 242, 195, 0.85) 100%) !important;
    border-color: rgba(184, 134, 11, 0.65) !important;
    box-shadow: 0 4px 16px rgba(249, 212, 35, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}
[data-theme="dark"] .log-ex-box.live-pr-active {
    background:
        radial-gradient(115% 100% at 96% 10%, rgba(249, 212, 35, 0.28) 0%, transparent 62%),
        linear-gradient(135deg, rgba(52, 40, 10, 0.92) 0%, rgba(28, 22, 8, 0.95) 100%) !important;
    border-color: rgba(249, 212, 35, 0.65) !important;
    box-shadow: 0 4px 18px rgba(249, 212, 35, 0.20), 0 0 12px rgba(249, 212, 35, 0.12), inset 0 1px 0 rgba(255, 246, 186, 0.22) !important;
}
.log-ex-box.live-pr-active .log-ex-title {
    color: #5C3D00 !important;
    font-weight: 800;
}
[data-theme="dark"] .log-ex-box.live-pr-active .log-ex-title {
    color: #FFF4C2 !important;
}
.log-pr-badge.is-live-pr {
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 55%, #B8860B 100%) !important;
    color: #2B1B00 !important;
    border-color: rgba(255, 245, 190, 0.9) !important;
    font-weight: 900 !important;
    box-shadow: 0 2px 8px rgba(249, 212, 35, 0.4) !important;
    transform: scale(1.04);
}
.log-ex-box.live-pr-active .log-inp.log-w {
    border-color: rgba(249, 212, 35, 0.75) !important;
    font-weight: 800;
}

/* 6. ÜST WIDGET: KÜÇÜK/BÜYÜK HAVA DURUMU & CNS HAZIRLIK HALKASI TASARIMI */
.widget-sub-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 4px;
    flex-wrap: wrap;
}
.top-widget.expanded-active .widget-sub-row {
    justify-content: center;
}
.weather-climate-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.74em;
    font-weight: 800;
    letter-spacing: 0.2px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.28);
    color: #FFFFFF;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.35);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.widget-mini-forecast {
    display: flex;
    gap: 10px !important;
    align-items: center;
}
.widget-forecast-capsule {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 13px !important;
    border-radius: 15px !important;
    background: rgba(255, 255, 255, 0.14) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.10), inset 0 1px 0 rgba(255, 255, 255, 0.30) !important;
}
.wf-cap-emoji {
    font-size: 1.35em;
    line-height: 1;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
}
.wf-cap-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.15;
}
.wf-cap-day {
    font-size: 0.64em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    opacity: 0.82;
}
.wf-cap-temp {
    font-size: 0.98em;
    font-weight: 800;
    letter-spacing: -0.3px;
}
.wf-cap-temp small {
    font-size: 0.78em;
    opacity: 0.72;
    font-weight: 600;
    margin-left: 2px;
}

/* Büyük Hava Durumu: Range Bar & 2x2 Bento Grid */
.top-widget.expanded-active .weather-details {
    max-width: 500px !important;
    margin-top: 16px !important;
    padding-bottom: 30px !important;
}
.weather-hero-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 4px 0 18px 0;
}
.weather-hero-wrap .huge-temp {
    font-size: 4.4em !important;
    font-weight: 200 !important;
    margin: 0 !important;
    line-height: 1 !important;
    letter-spacing: -2px;
}
.weather-hero-sub {
    font-size: 0.92em;
    font-weight: 700;
    opacity: 0.92;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.weather-forecast-card {
    background: rgba(10, 18, 32, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 20px;
    padding: 6px 16px;
    margin-bottom: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
}
.forecast-row-pro {
    display: grid;
    grid-template-columns: 88px 34px 34px 1fr 34px;
    align-items: center;
    gap: 8px;
    padding: 9px 0;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.15);
    font-size: 0.94em;
    font-weight: 600;
}
.forecast-row-pro:last-child {
    border-bottom: none;
}
.fc-day-name {
    font-weight: 700;
    text-align: left;
}
.fc-emoji {
    text-align: center;
    font-size: 1.15em;
}
.fc-min {
    text-align: right;
    opacity: 0.72;
    font-variant-numeric: tabular-nums;
    font-size: 0.92em;
}
.fc-max {
    text-align: left;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    font-size: 0.92em;
}
.weather-range-track {
    width: 100%;
    height: 6px;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.16);
    position: relative;
    overflow: visible;
}
.weather-range-fill {
    position: absolute;
    top: 0;
    bottom: 0;
    border-radius: 99px;
    background: linear-gradient(90deg, #38BDF8 0%, #34D399 45%, #FBBF24 80%, #F97316 100%);
    box-shadow: 0 0 10px rgba(56, 189, 248, 0.45);
    transition: left 0.5s cubic-bezier(0.16, 1, 0.3, 1), width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.weather-range-dot {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #FFFFFF;
    border: 2px solid #0A84FF;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.85), 0 2px 5px rgba(0, 0, 0, 0.45);
    z-index: 2;
    transition: left 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.weather-hourly-strip {
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 7px;
    margin-bottom: 7px;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.14);
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.weather-hourly-strip::-webkit-scrollbar {
    display: none;
}
.wf-hour-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    flex: 0 0 auto;
    min-width: 44px;
    padding: 3px 6px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.09);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.wf-hour-chip:hover {
    background: rgba(255, 255, 255, 0.12);
    transform: translateY(-1px);
}
.wf-hour-chip.is-now {
    background: rgba(10, 132, 255, 0.22);
    border-color: rgba(10, 132, 255, 0.42);
    box-shadow: 0 2px 8px rgba(10, 132, 255, 0.2);
}
.wf-h-time {
    font-size: 0.68em;
    font-weight: 600;
    opacity: 0.82;
    white-space: nowrap;
}
.wf-hour-chip.is-now .wf-h-time {
    color: var(--accent-blue, #0A84FF);
    font-weight: 800;
    opacity: 1;
}
.wf-h-emoji {
    font-size: 1.05em;
    line-height: 1;
}
.wf-h-temp {
    font-size: 0.82em;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.weather-bento-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    width: 100%;
}
.weather-bento-box {
    background: rgba(10, 18, 32, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 18px;
    padding: 11px 14px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
    text-align: left;
}
.wb-header {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    opacity: 0.78;
}
.wb-val {
    font-size: 1.45em;
    font-weight: 800;
    letter-spacing: -0.5px;
    line-height: 1.1;
}
.wb-sub {
    font-size: 0.74em;
    font-weight: 600;
    opacity: 0.82;
}

/* CNS & Bitkinlik Modu Arka Yüz (Biyometrik Aurora + Toplam Hazırlık Halkası + Çentikli Barlar) */
.cns-readiness-ring-wrap {
    position: relative;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cns-readiness-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
    overflow: visible;
}
.cns-readiness-val {
    font-size: 0.88em;
    font-weight: 900;
    color: #FFFFFF;
    z-index: 2;
    letter-spacing: -0.4px;
    font-variant-numeric: tabular-nums;
}
.cns-ecg-pulse {
    animation: cnsEcgPulseAnim 2.2s ease-in-out infinite;
    transform-origin: center;
    filter: drop-shadow(0 0 3px currentColor);
    will-change: transform, opacity;
}
@keyframes cnsEcgPulseAnim {
    0%, 100% { opacity: 0.55; transform: scale(0.96); }
    40% { opacity: 0.85; transform: scale(1.02); }
    50% { opacity: 1; transform: scale(1.06); }
    60% { opacity: 0.85; transform: scale(1.02); }
}
.cns-bar-track {
    width: 100%;
    background: rgba(255, 255, 255, 0.09);
    height: 9px;
    border-radius: 99px;
    position: relative;
    overflow: hidden;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.55);
}
.cns-bar-segments {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background-image: linear-gradient(
        90deg,
        transparent 24.5%, rgba(0, 0, 0, 0.45) 24.5%, rgba(0, 0, 0, 0.45) 25.5%, transparent 25.5%,
        transparent 49.5%, rgba(0, 0, 0, 0.45) 49.5%, rgba(0, 0, 0, 0.45) 50.5%, transparent 50.5%,
        transparent 74.5%, rgba(0, 0, 0, 0.45) 74.5%, rgba(0, 0, 0, 0.45) 75.5%, transparent 75.5%
    );
}
.cns-sub-status {
    font-size: 10px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.58);
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cns-sub-status.is-ready {
    color: #FFD60A;
    font-weight: 700;
}

/* STREAK (ANTRENMAN SERİSİ) ALEV GÖSTERGESİ */
.pr-streak-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8.5px;
    border-radius: 99px;
    background: rgba(255, 149, 0, 0.16);
    border: 1px solid rgba(255, 149, 0, 0.38);
    color: #FF9F0A;
    font-size: 11px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.2px;
}
[data-theme="dark"] .pr-streak-pill {
    background: rgba(255, 149, 0, 0.22);
    border-color: rgba(255, 159, 10, 0.44);
    color: #FFB340;
}
.streak-flame {
    display: inline-block;
    filter: drop-shadow(0 0 3px #FF9500);
    animation: flameFlickerAnim 1.6s ease-in-out infinite alternate;
}
@keyframes flameFlickerAnim {
    0% { transform: scale(0.94); opacity: 0.85; }
    100% { transform: scale(1.12); opacity: 1; filter: drop-shadow(0 0 6px #FF453A); }
}

/* APPLE WATCH TARZI MİKRO METALİK IŞILTI PR KUTLAMASI */
@keyframes prAppleWatchMicroGlow {
    0% {
        box-shadow: 0 0 0 1px rgba(255, 214, 10, 0.4), 0 0 20px rgba(255, 214, 10, 0.35);
    }
    45% {
        box-shadow: 0 0 0 2.5px rgba(255, 214, 10, 0.85), 0 0 42px rgba(255, 214, 10, 0.65), inset 0 0 16px rgba(255, 214, 10, 0.22);
    }
    100% {
        box-shadow: 0 0 0 1px rgba(255, 214, 10, 0), 0 0 0 rgba(255, 214, 10, 0);
    }
}
.pr-micro-glow-active {
    animation: prAppleWatchMicroGlow 2.4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards !important;
}

/* GLOBAL TABULAR NUMS (RAKAMLAR DEĞİŞİRKEN TİTREMEYİ SIFIRLAMA) */
.tnum,
.font-tabular,
.ex-sets,
.pr-gold-weight-pill,
.cns-readiness-val,
.day-card-date-badge,
.watch-stat-val,
.pvk-main-weight,
.pvbr-val-first,
.pvbr-val-latest,
.pvbr-delta-pill {
    font-variant-numeric: tabular-nums !important;
    -webkit-font-feature-settings: "tnum" 1 !important;
    font-feature-settings: "tnum" 1 !important;
}

/* KATMANLI IŞIKLANDIRMA (AMBIENT RIM LIGHTING) */
[data-theme="dark"] .day-card {
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 14px 34px -4px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

/* 7. EGZERSİZ HAVUZU: CANLI ARAMA ÇUBUĞU, RENKLİ KATEGORİ ROZETLERİ & DOLULUK BARLARI */
.pool-search-bar {
    position: relative;
    display: flex;
    align-items: center;
    background: var(--bg-main);
    border: 1px solid var(--card-border);
    border-radius: 14px;
    padding: 9px 14px;
    margin-bottom: 14px;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.04);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.pool-search-bar:focus-within {
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.15);
}
.pool-search-icon {
    color: var(--text-secondary);
    margin-right: 10px;
    flex-shrink: 0;
}
.pool-search-input {
    flex: 1;
    border: none;
    background: transparent;
    color: var(--text-main);
    font-size: 0.94em;
    font-weight: 500;
    outline: none;
}
.pool-search-input::placeholder {
    color: var(--text-secondary);
    opacity: 0.75;
}
.pool-search-clear {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: none;
    background: var(--separator);
    color: var(--text-main);
    font-size: 0.95em;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin-left: 6px;
}

.pool-cat-badge {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 11px;
    flex-shrink: 0;
}
.pool-cat-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 0;
    margin-right: 12px;
}
.pool-cat-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.pool-cat-count-pill {
    font-size: 0.72em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
}
.pool-cat-bar-track {
    width: 100%;
    height: 4px;
    border-radius: 99px;
    background: rgba(150, 150, 150, 0.16);
    overflow: hidden;
}
.pool-cat-bar-fill {
    height: 100%;
    border-radius: 99px;
    transition: width 0.4s var(--ios-spring);
}
.pool-item-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-right: 10px;
    flex-shrink: 0;
}

/* 8. SAĞ ÜSTTEKİ 4 KÜÇÜK İSTATİSTİK KARTINI CANLANDIRMA */
.small-stat-card {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 22px !important;
    transition: transform 0.26s var(--ios-spring), box-shadow 0.26s ease, border-color 0.26s ease !important;
}

.small-stat-card.stat-tonaj {
    --theme-rgb: 10, 132, 255;
    --stat-accent: #0A84FF;
    --stat-accent-2: #5E5CE6;
}
.small-stat-card.stat-disiplin {
    --theme-rgb: 48, 209, 88;
    --stat-accent: #30D158;
    --stat-accent-2: #00C7BE;
}
.small-stat-card.stat-sure {
    --theme-rgb: 255, 159, 10;
    --stat-accent: #FF9F0A;
    --stat-accent-2: #FF6B00;
}
.small-stat-card.stat-seri {
    --theme-rgb: 255, 55, 95;
    --stat-accent: #FF375F;
    --stat-accent-2: #FF9F0A;
}

body.card-theme-vibrant .small-stat-card {
    background:
        radial-gradient(110% 95% at 96% 6%, rgba(var(--theme-rgb), 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.28) !important;
    box-shadow:
        0 10px 24px -6px rgba(var(--theme-rgb), 0.14),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.9) !important;
}

[data-theme="dark"] body.card-theme-vibrant .small-stat-card {
    background:
        radial-gradient(115% 95% at 96% 6%, rgba(var(--theme-rgb), 0.34) 0%, transparent 64%),
        linear-gradient(160deg, #181A22 0%, #101218 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 12px 28px -6px rgba(0, 0, 0, 0.5),
        0 0 18px -6px rgba(var(--theme-rgb), 0.2),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.18) !important;
}

.small-stat-card:hover {
    transform: translateY(-4px) scale(1.015) !important;
    box-shadow:
        0 16px 32px -6px rgba(var(--theme-rgb), 0.28),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.32) !important;
}

.small-stat-card .stat-icon {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(var(--theme-rgb), 0.22) 0%, rgba(var(--theme-rgb), 0.08) 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.35);
    color: var(--stat-accent) !important;
    box-shadow: 0 4px 10px rgba(var(--theme-rgb), 0.18);
    position: relative;
    z-index: 2;
}

.small-stat-card.stat-seri .stat-icon svg {
    filter: drop-shadow(0 0 5px rgba(255, 55, 95, 0.6));
    animation: flameIconPulse 2s ease-in-out infinite alternate;
}
@keyframes flameIconPulse {
    0% { transform: scale(0.95); }
    100% { transform: scale(1.12); }
}

.stat-bg-graphic {
    position: absolute;
    right: 10px;
    bottom: 8px;
    width: 68px;
    height: 44px;
    opacity: 0.22;
    pointer-events: none;
    z-index: 1;
    color: var(--stat-accent);
    transition: transform 0.35s var(--ios-spring), opacity 0.3s ease;
}
[data-theme="dark"] .stat-bg-graphic {
    opacity: 0.28;
}
.small-stat-card:hover .stat-bg-graphic {
    transform: scale(1.08) translateY(-2px);
    opacity: 0.42;
}

.small-stat-card .stat-info {
    position: relative;
    z-index: 2;
}
.small-stat-card .stat-val {
    font-size: 1.35em;
    font-weight: 900;
    letter-spacing: -0.5px;
    font-variant-numeric: tabular-nums;
}

/* 9. KİŞİSEL REKORLAR (PR) SHIMMER IŞIĞI & MADALYA İKONLARI */
.pr-special-card {
    position: relative;
    overflow: hidden;
}
.pr-special-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -130%;
    width: 65%;
    height: 100%;
    background: linear-gradient(
        115deg,
        transparent 0%,
        rgba(255, 235, 150, 0.03) 35%,
        rgba(255, 246, 186, 0.18) 50%,
        rgba(255, 235, 150, 0.03) 65%,
        transparent 100%
    );
    transform: skewX(-20deg);
    animation: prShimmerSweep 7s ease-in-out infinite;
    pointer-events: none;
    z-index: 5;
}
@keyframes prShimmerSweep {
    0%, 64% {
        left: -150%;
        opacity: 0;
    }
    65% {
        opacity: 0.95;
    }
    85% {
        left: 170%;
        opacity: 1;
    }
    86%, 100% {
        left: 170%;
        opacity: 0;
    }
}

.pr-medal-badge {
    width: 26px;
    height: 26px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.78em;
    font-weight: 900;
    margin-right: 10px;
    flex-shrink: 0;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}
.pr-medal-badge.medal-1 {
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 55%, #B47B00 100%);
    color: #2B1B00;
    border: 1px solid rgba(255, 235, 153, 0.8);
}
.pr-medal-badge.medal-2 {
    background: linear-gradient(135deg, #F1F3F5 0%, #ADB5BD 55%, #6C757D 100%);
    color: #1C1C1E;
    border: 1px solid rgba(255, 255, 255, 0.75);
}
.pr-medal-badge.medal-3 {
    background: linear-gradient(135deg, #F3B787 0%, #C87A41 55%, #8A4A1C 100%);
    color: #261103;
    border: 1px solid rgba(255, 210, 175, 0.65);
}
.pr-medal-badge.medal-other {
    background: rgba(249, 212, 35, 0.14);
    color: #F9D423;
    border: 1px solid rgba(249, 212, 35, 0.3);
}

/* 10. MİNİ TAKVİM & AYLIK TAKVİM: "BUGÜN" NEFES ALAN HALKA & TAMAMLANAN GÜN ZÜMRÜT DAİRESİ */
.ios-day.is-done-day:not(.today) .ios-day-number {
    background: radial-gradient(circle at 30% 30%, rgba(52, 199, 89, 0.32), rgba(48, 209, 88, 0.18)) !important;
    border: 1px solid rgba(48, 209, 88, 0.55) !important;
    color: #1E8E3E !important;
    font-weight: 800 !important;
    box-shadow: 0 2px 8px rgba(48, 209, 88, 0.2) !important;
}
[data-theme="dark"] .ios-day.is-done-day:not(.today) .ios-day-number {
    color: #4DF077 !important;
    background: radial-gradient(circle at 30% 30%, rgba(48, 209, 88, 0.28), rgba(48, 209, 88, 0.12)) !important;
}

.home-cal-card .ios-day.today .ios-day-number,
.month-card .ios-day.today .ios-day-number {
    background: linear-gradient(135deg, #0A84FF 0%, #5E5CE6 100%) !important;
    color: #FFFFFF !important;
    font-weight: 800 !important;
    animation: todayBreathingRing 2.6s ease-in-out infinite !important;
}

@keyframes todayBreathingRing {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(10, 132, 255, 0.55), 0 3px 10px rgba(10, 132, 255, 0.35);
    }
    50% {
        box-shadow: 0 0 0 5px rgba(10, 132, 255, 0.0), 0 4px 14px rgba(94, 92, 230, 0.5);
    }
}

/* 11. MANYETİK BUTONLAR VE YAYLANAN İKONLAR */
.icon-btn svg,
.flip-btn svg,
.edit-calendar-btn svg,
.menu-btn svg {
    transition: transform 0.32s var(--ios-spring);
}
.add-ex-top-btn:hover svg {
    transform: rotate(90deg) scale(1.16);
}
.expand-btn:hover svg {
    transform: scale(1.16);
}
.day-copypaste-btn:hover svg {
    transform: scale(1.12);
}
.menu-btn:hover svg {
    transform: scale(1.12);
}
.fatigue-btn:hover svg {
    transform: scale(1.15) rotate(-6deg);
}




/* ============================================================================
   IOS 18 HAVA DURUMU MOTORU, SIFIR SÜNME CANVAS & 120FPS OPTİMİZASYONU (V26)
============================================================================ */

/* 1. WIDGET DIŞINA (ESKİ KONUMU DAHİL) TIKLAYINCA KAPANMA GARANTİSİ */
.top-widget-wrapper {
    z-index: 60 !important;
}
.top-widget-wrapper.widget-is-expanded,
.top-widget-wrapper:has(.expanded-active) {
    z-index: 9999 !important;
    pointer-events: none !important;
}
.top-widget.expanded-active {
    pointer-events: auto !important;
}
@media (max-width: 1540px) {
    .top-widget:not(.expanded-active) .widget-front {
        padding-left: 66px !important;
    }
}

/* 2. WIDGET DAR VE GENİŞ MOD HİZALAMALARI */
.top-widget:not(.expanded-active) .widget-front {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 30px !important;
}

.top-widget:not(.expanded-active) .widget-top-bar {
    width: 100% !important;
    flex: 1 1 100% !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 !important;
}

.top-widget:not(.expanded-active) .widget-right-cluster {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    margin-left: auto !important;
    flex-shrink: 0 !important;
}

/* 3. HAVA EFEKTLERİ SAHNESİ (#weatherFx & #weatherCanvas)
   KRİTİK FİX: #weatherCanvas width:100% / height:100% KULLANMAZ!
   Sabit 1400x680 piksel (1:1 ölçek) kullanılır ve #weatherFx (overflow:hidden) pencere gibi kırpar.
   Böylece Widget büyürken veya küçülürken bulutlar ve yağmur ASLA sünmez, ezilmez ve donmaz! */
#weatherFx {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    contain: strict !important;
}

#weatherCanvas {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 1400px !important;
    height: 680px !important;
    max-width: none !important;
    max-height: none !important;
    pointer-events: none !important;
    z-index: 1 !important;
    display: block !important;
}

/* Widget büyüme/küçülme uçuşu (.is-animating) sırasında iç detayların her karede yeniden hesaplanmasını (reflow) engelle */
.top-widget.expanded-active .weather-details {
    width: 440px !important;
    max-width: calc(100vw - 80px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    contain: layout style !important;
}
.top-widget.is-animating .widget-front {
    overflow: hidden !important;
}
.top-widget:not(.expanded-active) .weather-details {
    display: none !important;
}
.top-widget.expanded-active.is-animating .weather-details {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}
.top-widget.expanded-active:not(.is-animating) .weather-details {
    opacity: 1 !important;
    transition: opacity 0.18s ease-out !important;
}

/* 4. ZAMAN DİLİMİ & HAVA DURUMU GÖKYÜZÜ PALETLERİ */
.top-widget .widget-front {
    transition: background 0.6s ease !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.30), inset 0 -1px 0 rgba(0, 0, 0, 0.16) !important;
}

.sky-sunrise .widget-front {
    background: linear-gradient(166deg, #172243 0%, #3E3466 26%, #964967 55%, #DF765B 80%, #F7B963 100%) !important;
}
.sky-sunrise.overcast .widget-front {
    background: linear-gradient(166deg, #2A344E 0%, #52516E 44%, #8E6E78 78%, #C4977A 100%) !important;
}
.sky-sunrise.rainy .widget-front {
    background: linear-gradient(166deg, #1D263D 0%, #38405A 48%, #6B5768 82%, #9B746D 100%) !important;
}
.sky-sunrise.snowy .widget-front {
    background: linear-gradient(166deg, #354361 0%, #646F8D 48%, #A28F9E 80%, #D4B5A7 100%) !important;
}
.sky-sunrise.stormy .widget-front {
    background: linear-gradient(166deg, #101526 0%, #23233C 48%, #4A354B 82%, #744D4C 100%) !important;
}

.sky-morning .widget-front {
    background: linear-gradient(165deg, #155EB0 0%, #2E86DE 44%, #63B7F0 78%, #9FD9FC 100%) !important;
}
.sky-morning.overcast .widget-front {
    background: linear-gradient(165deg, #4B6482 0%, #6B85A2 50%, #95ADC6 85%, #BACCE0 100%) !important;
}
.sky-morning.rainy .widget-front {
    background: linear-gradient(165deg, #263C57 0%, #3C5778 52%, #5D7999 100%) !important;
}
.sky-morning.snowy .widget-front {
    background: linear-gradient(165deg, #47678A 0%, #6D8EB0 50%, #9FBBD6 85%, #C8DEF0 100%) !important;
}
.sky-morning.stormy .widget-front {
    background: linear-gradient(165deg, #151F2E 0%, #26354A 52%, #3D4F66 100%) !important;
}

.sky-noon .widget-front,
.sky-day .widget-front {
    background: linear-gradient(165deg, #0742AD 0%, #156CE3 42%, #3D9BF2 78%, #75C2FA 100%) !important;
}
.sky-noon.overcast .widget-front,
.sky-day.overcast .widget-front {
    background: linear-gradient(165deg, #3F5775 0%, #5F7996 50%, #88A0B9 85%, #AFC2D4 100%) !important;
}
.sky-noon.rainy .widget-front,
.sky-day.rainy .widget-front {
    background: linear-gradient(165deg, #1E324C 0%, #314B6B 52%, #4E6B8C 100%) !important;
}
.sky-noon.snowy .widget-front,
.sky-day.snowy .widget-front {
    background: linear-gradient(165deg, #3A5A7E 0%, #5E80A4 52%, #90B0D0 85%, #BBD5EE 100%) !important;
}
.sky-noon.stormy .widget-front,
.sky-day.stormy .widget-front {
    background: linear-gradient(165deg, #121B2A 0%, #213044 52%, #364961 100%) !important;
}

.sky-sunset .widget-front,
.sky-evening .widget-front {
    background: linear-gradient(166deg, #101533 0%, #352052 25%, #822E58 54%, #D15647 79%, #F59848 100%) !important;
}
.sky-sunset.overcast .widget-front,
.sky-evening.overcast .widget-front {
    background: linear-gradient(166deg, #22253E 0%, #483A5A 48%, #805667 80%, #B37968 100%) !important;
}
.sky-sunset.rainy .widget-front,
.sky-evening.rainy .widget-front {
    background: linear-gradient(166deg, #151A2E 0%, #2F2B47 52%, #5D4459 85%, #865E5D 100%) !important;
}
.sky-sunset.snowy .widget-front,
.sky-evening.snowy .widget-front {
    background: linear-gradient(166deg, #29304E 0%, #52496B 50%, #8A6B80 82%, #BD918A 100%) !important;
}
.sky-sunset.stormy .widget-front,
.sky-evening.stormy .widget-front {
    background: linear-gradient(166deg, #0B0E1D 0%, #1E1A33 52%, #422A42 85%, #683E46 100%) !important;
}

.sky-night .widget-front {
    background: linear-gradient(168deg, #030712 0%, #091326 42%, #132541 78%, #1D3558 100%) !important;
}
.sky-night.overcast .widget-front {
    background: linear-gradient(168deg, #0A101D 0%, #152033 52%, #25354C 100%) !important;
}
.sky-night.rainy .widget-front {
    background: linear-gradient(168deg, #060B16 0%, #0F1A2C 52%, #1A2B42 100%) !important;
}
.sky-night.snowy .widget-front {
    background: linear-gradient(168deg, #0B1528 0%, #182842 52%, #2B4061 85%, #3E597E 100%) !important;
}
.sky-night.stormy .widget-front {
    background: linear-gradient(168deg, #03050C 0%, #0A101E 52%, #161F33 100%) !important;
}

/* 5. DERİN GPU & CPU PERFORMANS OPTİMİZASYONU */
.titanium-texture,
.ambilight-orb,
.sky-ambient-glow {
    display: none !important;
    animation: none !important;
    filter: none !important;
}

.premium-bg {
    background:
        radial-gradient(circle at 14% 12%, rgba(0, 122, 255, 0.08) 0%, transparent 48%),
        radial-gradient(circle at 86% 88%, rgba(175, 82, 222, 0.07) 0%, transparent 48%),
        radial-gradient(circle at 50% 50%, rgba(0, 229, 255, 0.04) 0%, transparent 55%),
        var(--bg-main) !important;
}
[data-theme="dark"] .premium-bg {
    background:
        radial-gradient(circle at 12% 10%, rgba(0, 229, 255, 0.12) 0%, transparent 46%),
        radial-gradient(circle at 88% 90%, rgba(175, 82, 222, 0.10) 0%, transparent 46%),
        radial-gradient(circle at 50% 40%, rgba(10, 132, 255, 0.06) 0%, transparent 55%),
        0%, transparent 40%),
        #0A0D14 !important;
}

.in-season::after {
    filter: none !important;
    -webkit-filter: none !important;
}

.current-day-highlight,
[data-theme="dark"] .current-day-highlight,
.org-logo-top,
.focus-logo,
.wf-cap-emoji,
.pr-title-text,
.cns-readiness-svg path {
    filter: none !important;
    -webkit-filter: none !important;
}

.current-day-highlight .card-front .day-title,
[data-theme="dark"] .current-day-highlight .card-front .day-title,
.home-cal-card .ios-day.today .ios-day-number,
.month-card .ios-day.today .ios-day-number,
.small-stat-card.stat-seri .stat-icon svg,
.pr-glow-text,
.pr-glow-bar,
.live-dot {
    animation: none !important;
    filter: none !important;
}

.pr-special-card::before,
.day-card .exercise-item.history-pr-row::after {
    display: none !important;
    animation: none !important;
}

.menu-btn,
.edit-calendar-btn,
.sidebar,
.sidebar-overlay,
.workout-menu-overlay,
.custom-select-menu,
.modal-overlay,
.ios-alert,
.sheet-menu,
.sheet-cancel,
.history-nav-btn,
button[onclick*="moveMonth"],
.ios-dynamic-toast {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.sidebar,
.workout-menu-overlay,
.custom-select-menu,
.ios-alert,
.sheet-menu,
.sheet-cancel {
    background: var(--list-bg) !important;
}

#flipInner {
    transform-style: preserve-3d !important;
    -webkit-transform-style: preserve-3d !important;
    transition: none !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.18) !important;
}
#flipInner.is-flipped {
    box-shadow: 0 10px 30px rgba(0,0,0,0.18) !important;
}

/* 6. SAĞ ÜST 4 KÜÇÜK KART: IOS ANTRENMAN PERFORMANS KARTLARI TASARIMI */
.small-stats-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 1fr 1fr !important;
    gap: 16px !important;
    height: 100% !important;
}

.small-stat-card.watch-stat-card {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 22px !important;
    padding: 13px 15px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    cursor: default !important;
    user-select: none !important;
}

.small-stat-card.stat-steps {
    --theme-rgb: 48, 209, 88;
    --stat-accent: #30D158;
}
.small-stat-card.stat-calories {
    --theme-rgb: 255, 159, 10;
    --stat-accent: #FF9F0A;
}
.small-stat-card.stat-hr {
    --theme-rgb: 255, 55, 95;
    --stat-accent: #FF375F;
}
.small-stat-card.stat-sleep {
    --theme-rgb: 94, 92, 230;
    --stat-accent: #7D7AFF;
}

.watch-stat-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    width: 100%;
    z-index: 2;
}

.watch-sync-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 7px;
    border-radius: 999px;
    font-size: 0.60em;
    font-weight: 800;
    letter-spacing: 0.3px;
    background: rgba(var(--theme-rgb), 0.14);
    color: var(--stat-accent);
    border: 1px solid rgba(var(--theme-rgb), 0.28);
    white-space: nowrap;
}

.watch-sync-dot {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--stat-accent);
    display: inline-block;
}

.watch-stat-mid {
    display: flex;
    flex-direction: column;
    gap: 1px;
    z-index: 2;
    margin-top: 2px;
}

.watch-stat-val {
    font-size: 1.32em;
    font-weight: 900;
    color: var(--text-main);
    letter-spacing: -0.5px;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.watch-stat-val small {
    font-size: 0.56em;
    font-weight: 700;
    color: var(--text-secondary);
    margin-left: 3px;
}

.watch-stat-label {
    font-size: 0.66em;
    font-weight: 800;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.watch-stat-bottom {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 100%;
    z-index: 2;
}

.watch-progress-track {
    width: 100%;
    height: 5px;
    border-radius: 99px;
    background: rgba(150, 150, 150, 0.16);
    overflow: hidden;
}

.watch-progress-fill {
    height: 100%;
    border-radius: 99px;
    background: var(--stat-accent);
    transition: width 0.55s var(--ios-spring);
}

@keyframes watchSyncPulse {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.65); opacity: 0.65; }
    100% { transform: scale(1); opacity: 1; }
}

.watch-sync-dot.is-syncing {
    animation: watchSyncPulse 0.7s ease-out;
}

.watch-stat-sub {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.62em;
    font-weight: 700;
    color: var(--text-secondary);
}
.watch-stat-sub b {
    color: var(--stat-accent);
    font-weight: 800;
}

/* ============================================================================
   IOS 18 MEVSİMSEL TAKVİM KARTLARI & WATERMARK İLLÜSTRASYONLARI (V27)
============================================================================ */

/* 1. TAKVİM SAYFASI GENEL ARKA PLANI: DÜZ GRİ YERİNE ANA SAYFA AURORA ARKA PLANI */
.calendar-view-wrapper {
    background: transparent !important;
}

.premium-bg {
    background:
        radial-gradient(circle at 14% 12%, rgba(0, 122, 255, 0.08) 0%, transparent 48%),
        radial-gradient(circle at 86% 88%, rgba(175, 82, 222, 0.07) 0%, transparent 48%),
        radial-gradient(circle at 50% 50%, rgba(0, 229, 255, 0.04) 0%, transparent 55%),
        var(--bg-main) !important;
}
[data-theme="dark"] .premium-bg {
    background:
        radial-gradient(circle at 12% 10%, rgba(0, 229, 255, 0.12) 0%, transparent 46%),
        radial-gradient(circle at 88% 90%, rgba(175, 82, 222, 0.10) 0%, transparent 46%),
        radial-gradient(circle at 50% 40%, rgba(10, 132, 255, 0.06) 0%, transparent 55%),
        0%, transparent 40%),
        #0A0D14 !important;
}

/* ============================================================================
   STRIVE — PS5 DİNAMİK IŞIK HÜZMESİ VE BOKEH PARTİKÜL MOTORU
   - Sol üst sinematik ışık konisi (Çift katmanlı GPU opaklık çapraz geçişi)
   - 42 parçacıklı S-kavisi bokeh & yıldız tozu akışı
   - Mevsim ve günün saatine duyarlı dinamik fırınlanmış paletler
   - Koyu/Açık tema koruması & Sistem hareket azaltma (prefers-reduced-motion) desteği
============================================================================ */

/* 1. PS5 Koyu Zemin: Katıksız Derin Siyah (Koyu Mod) */
[data-theme="dark"] .premium-bg {
    background-color: #06080D !important;
}

/* 2. Açık Mod Tabanı: Standart Açık Zemin */
html:not([data-theme="dark"]) .premium-bg {
    background-color: var(--bg-main, #F2F2F7) !important;
}

/* 3. Sol Üst Işık Hüzmesi Katmanları (Çift katmanlı opaklık çapraz geçişi) */
.ps5-beam-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
    opacity: 0;
    transition: opacity 2.4s cubic-bezier(0.4, 0, 0.2, 1);
    background-repeat: no-repeat;
    contain: strict;
    will-change: opacity;
}

.ps5-beam-layer.is-active {
    opacity: 1;
}

/* Koyu mod ışık hüzmesi: Sol üstten çapraz yayılan konik huzme */
[data-theme="dark"] .ps5-beam-layer {
    mix-blend-mode: screen;
}

/* Açık mod ışık hüzmesi: İpeksi şampanya/inci yansıması */
html:not([data-theme="dark"]) .ps5-beam-layer {
    mix-blend-mode: multiply;
}

/* 4. PS5 Bokeh & Partikül Tuvali */
.ps5-bokeh-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

/* Açık modda partiküllerin arka plandaki hafifliğini dengeleyen filtre */
html:not([data-theme="dark"]) .ps5-bokeh-canvas {
    opacity: 0.85;
}

/* 5. Kapatma, Duraklatma ve Erişilebilirlik Kuralları */
/* Kullanıcı Ayarlarından Arka Plan Kapatıldığında */
body.ambient-bg-off .ps5-beam-layer,
body.ambient-bg-off .ps5-bokeh-canvas {
    display: none !important;
}

/* Pencere küçültüldüğünde veya gizlendiğinde tuval çizimini durdur */
body.ambient-bg-paused .ps5-bokeh-canvas {
    visibility: hidden;
}

/* Performans Modu veya Azaltılmış Animasyonlar */
body.perf-mode-active .ps5-bokeh-canvas,
body.anim-reduced .ps5-bokeh-canvas {
    opacity: 0.4 !important;
}

/* Sistem Düzeyinde Hareket Azaltma (prefers-reduced-motion: reduce):
   Hareket sıfırlanır, tuval durağan ve sakin kalır */
@media (prefers-reduced-motion: reduce) {
    .ps5-bokeh-canvas {
        opacity: 0.35 !important;
    }
}

.pool-edit-muscle-btn { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 8px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.14); color: var(--text-secondary); cursor: pointer; transition: all 0.18s ease; flex-shrink: 0; }
.pool-edit-muscle-btn:hover { background: rgba(10, 132, 255, 0.18); border-color: rgba(10, 132, 255, 0.45); color: var(--accent-blue); transform: translateY(-1px); }
.pool-edit-muscle-btn:active { transform: scale(0.92); }
.clear-day-btn:hover { color: #FF453A !important; border-color: rgba(255, 69, 58, 0.45) !important; background: rgba(255, 69, 58, 0.15) !important; }

/* 2. MEVSİM TEMA DEĞİŞKENLERİ (KIŞ, İLKBAHAR, YAZ, SONBAHAR) */
.season-winter {
    --season-rgb: 56, 189, 248;
    --season-rgb-2: 14, 165, 233;
    --season-accent: #0284C7;
    --season-art-color: #0284C7;
}
[data-theme="dark"] .season-winter {
    --season-rgb: 56, 189, 248;
    --season-rgb-2: 10, 132, 255;
    --season-accent: #7DD3FC;
    --season-art-color: #7DD3FC;
}

.season-spring {
    --season-rgb: 48, 209, 88;
    --season-rgb-2: 16, 185, 129;
    --season-accent: #15803D;
    --season-art-color: #16A34A;
}
[data-theme="dark"] .season-spring {
    --season-rgb: 48, 209, 88;
    --season-rgb-2: 16, 185, 129;
    --season-accent: #4ADE80;
    --season-art-color: #4ADE80;
}

.season-summer {
    --season-rgb: 245, 158, 11;
    --season-rgb-2: 234, 88, 12;
    --season-accent: #B45309;
    --season-art-color: #D97706;
}
[data-theme="dark"] .season-summer {
    --season-rgb: 250, 204, 21;
    --season-rgb-2: 245, 158, 11;
    --season-accent: #FDE047;
    --season-art-color: #FACC15;
}

.season-autumn {
    --season-rgb: 194, 106, 27;
    --season-rgb-2: 146, 64, 14;
    --season-accent: #9A3412;
    --season-art-color: #B45309;
}
[data-theme="dark"] .season-autumn {
    --season-rgb: 217, 119, 6;
    --season-rgb-2: 154, 52, 18;
    --season-accent: #FBBF24;
    --season-art-color: #F59E0B;
}

/* 3. IOS 18 AURORA TAKVİM KARTI GÖVDESİ (.month-card & .home-cal-card)
   Anasayfadaki .day-card tasarımıyla birebir aynı Specular Rim Light ve Aurora Mesh yapısı */
.month-card.season-winter,
.month-card.season-spring,
.month-card.season-summer,
.month-card.season-autumn {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    overflow: hidden !important;
}

.month-card.season-winter,
.month-card.season-spring,
.month-card.season-summer,
.month-card.season-autumn,
.day-card.home-cal-card.season-winter,
.day-card.home-cal-card.season-spring,
.day-card.home-cal-card.season-summer,
.day-card.home-cal-card.season-autumn,
.pool-wrapper.season-winter,
.pool-wrapper.season-spring,
.pool-wrapper.season-summer,
.pool-wrapper.season-autumn,
.profile-card.season-winter,
.profile-card.season-spring,
.profile-card.season-summer,
.profile-card.season-autumn {
    overflow: hidden;
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(var(--season-rgb), 0.34) 0%, rgba(var(--season-rgb), 0.12) 42%, transparent 68%),
        radial-gradient(100% 90% at 4% 96%, rgba(var(--season-rgb-2), 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--season-rgb), 0.36) !important;
    box-shadow:
        0 14px 32px -6px rgba(var(--season-rgb), 0.16),
        0 4px 12px rgba(0, 0, 0, 0.05),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95),
        inset 1px 0 0 rgba(255, 255, 255, 0.75) !important;
    color: var(--text-main) !important;
}

/* Sonbahar ve Yaz için gündüz modunda hafif sıcak zemin tonu */
.month-card.season-autumn,
.day-card.home-cal-card.season-autumn {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(194, 106, 27, 0.38) 0%, rgba(146, 64, 14, 0.15) 44%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(146, 64, 14, 0.26) 0%, transparent 64%),
        linear-gradient(155deg, #FFFBF7 0%, #F7EFE6 100%) !important;
}
.month-card.season-summer,
.day-card.home-cal-card.season-summer {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(245, 158, 11, 0.36) 0%, rgba(234, 88, 12, 0.13) 44%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(234, 88, 12, 0.22) 0%, transparent 64%),
        linear-gradient(155deg, #FFFDF7 0%, #FCF6E6 100%) !important;
}
.month-card.season-spring,
.day-card.home-cal-card.season-spring {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(48, 209, 88, 0.34) 0%, rgba(16, 185, 129, 0.13) 44%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(16, 185, 129, 0.22) 0%, transparent 64%),
        linear-gradient(155deg, #F8FEF9 0%, #ECF9F0 100%) !important;
}
.month-card.season-winter,
.day-card.home-cal-card.season-winter {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(56, 189, 248, 0.36) 0%, rgba(14, 165, 233, 0.14) 44%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(14, 165, 233, 0.24) 0%, transparent 64%),
        linear-gradient(155deg, #F7FCFF 0%, #EAF4FC 100%) !important;
}

/* Gece Modu (Dark Mode) Mevsimsel Aurora Kart Gövdesi */
[data-theme="dark"] .month-card.season-winter,
[data-theme="dark"] .day-card.home-cal-card.season-winter,
[data-theme="dark"] .pool-wrapper.season-winter,
[data-theme="dark"] .profile-card.season-winter {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(56, 189, 248, 0.46) 0%, rgba(14, 165, 233, 0.16) 45%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(10, 132, 255, 0.30) 0%, transparent 64%),
        linear-gradient(160deg, #131D2B 0%, #0B1018 100%) !important;
    border: 1px solid rgba(56, 189, 248, 0.42) !important;
    box-shadow:
        0 16px 38px -6px rgba(0, 0, 0, 0.6),
        0 0 26px -6px rgba(56, 189, 248, 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

[data-theme="dark"] .month-card.season-spring,
[data-theme="dark"] .day-card.home-cal-card.season-spring,
[data-theme="dark"] .pool-wrapper.season-spring,
[data-theme="dark"] .profile-card.season-spring {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(48, 209, 88, 0.44) 0%, rgba(16, 185, 129, 0.15) 45%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(16, 185, 129, 0.28) 0%, transparent 64%),
        linear-gradient(160deg, #132319 0%, #0B130E 100%) !important;
    border: 1px solid rgba(48, 209, 88, 0.40) !important;
    box-shadow:
        0 16px 38px -6px rgba(0, 0, 0, 0.6),
        0 0 26px -6px rgba(48, 209, 88, 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

[data-theme="dark"] .month-card.season-summer,
[data-theme="dark"] .day-card.home-cal-card.season-summer,
[data-theme="dark"] .pool-wrapper.season-summer,
[data-theme="dark"] .profile-card.season-summer {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(250, 204, 21, 0.44) 0%, rgba(245, 158, 11, 0.16) 45%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(234, 88, 12, 0.28) 0%, transparent 64%),
        linear-gradient(160deg, #251F12 0%, #14110A 100%) !important;
    border: 1px solid rgba(250, 204, 21, 0.40) !important;
    box-shadow:
        0 16px 38px -6px rgba(0, 0, 0, 0.6),
        0 0 26px -6px rgba(250, 204, 21, 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

[data-theme="dark"] .month-card.season-autumn,
[data-theme="dark"] .day-card.home-cal-card.season-autumn,
[data-theme="dark"] .pool-wrapper.season-autumn,
[data-theme="dark"] .profile-card.season-autumn {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(217, 119, 6, 0.48) 0%, rgba(180, 83, 9, 0.20) 45%, transparent 70%),
        radial-gradient(100% 90% at 4% 96%, rgba(146, 64, 14, 0.36) 0%, transparent 64%),
        linear-gradient(160deg, #261810 0%, #140D08 100%) !important;
    border: 1px solid rgba(217, 119, 6, 0.44) !important;
    box-shadow:
        0 16px 38px -6px rgba(0, 0, 0, 0.6),
        0 0 26px -6px rgba(217, 119, 6, 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

/* 4. SİLİK MEVSİMSEL WATERMARK İLLÜSTRASYON KATMANI (.season-bg-art)
   Takvimin okunabilirliğini asla bozmaz, zarif iOS vektör çizimi olarak arka planda durur */
.season-bg-art {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none !important;
    z-index: 0 !important;
    overflow: hidden;
    border-radius: inherit;
    color: var(--season-art-color);
    opacity: 0.16;
}
[data-theme="dark"] .season-bg-art {
    opacity: 0.18;
}
.home-cal-card .season-bg-art {
    opacity: 0.15;
}
[data-theme="dark"] .home-cal-card .season-bg-art {
    opacity: 0.17;
}
.season-bg-art svg {
    width: 100%;
    height: 100%;
    display: block;
}

/* 5. TAKVİM KARTI ÜST BAŞLIK, MEVSİM ROZETİ & İÇ CAM IZGARA KUTUSU */
.month-card {
    padding: 24px 26px !important;
    border-radius: 32px !important;
}

.month-card .month-header-area {
    position: relative;
    z-index: 2;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid rgba(var(--season-rgb), 0.22) !important;
}

.month-title-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.month-title-row {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.month-card .month-name {
    font-size: 2.05em !important;
    font-weight: 900 !important;
    letter-spacing: -0.9px !important;
    line-height: 1.05 !important;
    color: var(--text-main) !important;
}

.month-card .month-year {
    font-size: 1.15em !important;
    font-weight: 700 !important;
    color: var(--text-secondary) !important;
    opacity: 0.85;
}

.season-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.72em;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--season-accent);
    background: rgba(var(--season-rgb), 0.15);
    border: 1px solid rgba(var(--season-rgb), 0.34);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
    width: fit-content;
}

.month-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: 12px;
    font-size: 0.78em;
    font-weight: 800;
    color: var(--text-main);
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(var(--season-rgb), 0.26);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
[data-theme="dark"] .month-stat-pill {
    background: rgba(10, 12, 18, 0.55);
    border-color: rgba(var(--season-rgb), 0.30);
}

/* Anasayfadaki .exercise-list iç kutusuyla uyumlu yarı saydam takvim ızgara çerçevesi */
.month-card .ios-calendar-grid {
    position: relative;
    z-index: 2;
    background: rgba(255, 255, 255, 0.28) !important;
    border: 1px solid rgba(var(--season-rgb), 0.22) !important;
    border-radius: 22px !important;
    padding: 12px 10px !important;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .month-card .ios-calendar-grid {
    background: rgba(10, 12, 18, 0.24) !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.28) !important;
}

.home-cal-card .ios-calendar-grid {
    position: relative;
    z-index: 2;
    background: rgba(255, 255, 255, 0.28) !important;
    border: 1px solid rgba(var(--season-rgb), 0.20) !important;
    border-radius: 16px !important;
    padding: 6px 6px !important;
    box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .home-cal-card .ios-calendar-grid {
    background: rgba(10, 12, 18, 0.24) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.month-card .ios-day-name,
.home-cal-card .home-calendar-day-name {
    color: var(--season-accent) !important;
    opacity: 0.9 !important;
    font-weight: 800 !important;
}


/* ============================================================================
   V29 BÜYÜK GÜNCELLEME: 12 MADDELİK IOS 18 TASARIM & MİMARİ PAKETİ
============================================================================ */

/* ----------------------------------------------------------------------------
   MADDE 3 & 8: SADELEŞTİRİLMİŞ SOL MENÜ, AÇMA BUTONU VE PROFİL KARTI
---------------------------------------------------------------------------- */
.menu-btn {
    position: fixed !important;
    top: 28px !important;
    left: 26px !important;
    z-index: 108 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    background: linear-gradient(160deg, #FFFFFF 0%, #F3F5F9 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.09) !important;
    box-shadow:
        0 8px 20px -4px rgba(0, 0, 0, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.98) !important;
    color: var(--text-main) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: transform 0.24s var(--ios-spring), opacity 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
}

[data-theme="dark"] .menu-btn {
    background: linear-gradient(160deg, #1C1F28 0%, #13151C 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow:
        0 10px 24px -4px rgba(0, 0, 0, 0.55),
        inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
}

.menu-btn:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(10, 132, 255, 0.45) !important;
    box-shadow: 0 12px 26px -4px rgba(10, 132, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.menu-btn:active {
    transform: scale(0.94) !important;
}
.menu-btn.is-open {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(0.86) translateX(-10px) !important;
}

.sidebar-overlay {
    background: rgba(4, 6, 10, 0.48) !important;
    z-index: 112 !important;
}

.sidebar {
    position: fixed !important;
    top: 16px !important;
    left: 16px !important;
    bottom: 16px !important;
    width: 312px !important;
    max-width: calc(100vw - 32px) !important;
    border-radius: 28px !important;
    padding: 16px 14px 14px 14px !important;
    z-index: 118 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: linear-gradient(170deg, #F9FAFD 0%, #F1F3F9 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow:
        0 20px 50px -10px rgba(0, 0, 0, 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.98) !important;
    transform: translate3d(calc(-100% - 32px), 0, 0) !important;
    transition: transform 0.44s var(--ios-spring) !important;
}

[data-theme="dark"] .sidebar {
    background: linear-gradient(170deg, #171922 0%, #101218 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    box-shadow:
        0 24px 56px -10px rgba(0, 0, 0, 0.72),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.16) !important;
}

.sidebar.active {
    transform: translate3d(0, 0, 0) !important;
}

.sb-top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    padding: 0 4px;
    flex-shrink: 0;
}

.sb-brand-text {
    font-size: 0.78em;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--text-secondary);
}

.sb-close-btn {
    width: 30px;
    height: 30px;
    border-radius: 10px;
    border: 1px solid rgba(150, 150, 150, 0.18);
    background: rgba(150, 150, 150, 0.08);
    color: var(--text-main);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.18s var(--ios-spring), background-color 0.18s ease;
}
.sb-close-btn:hover {
    background: rgba(150, 150, 150, 0.16);
    transform: scale(1.05);
}

.sb-profile-card {
    position: relative;
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 20px;
    padding: 12px 13px;
    margin-bottom: 14px;
    cursor: pointer;
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: transform 0.2s var(--ios-spring), border-color 0.2s ease, box-shadow 0.2s ease;
}

[data-theme="dark"] .sb-profile-card {
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.sb-profile-card:hover {
    transform: translateY(-1.5px);
    border-color: rgba(10, 132, 255, 0.38);
}
.sb-profile-card.active-nav {
    border-color: var(--accent-blue) !important;
    background: rgba(10, 132, 255, 0.08) !important;
}
[data-theme="dark"] .sb-profile-card.active-nav {
    background: rgba(10, 132, 255, 0.14) !important;
}

/* Sağ üstte profilin düzenlenebileceği yere gideceğini belirten simge */
.sb-profile-edit-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: rgba(10, 132, 255, 0.12);
    border: 1px solid rgba(10, 132, 255, 0.24);
    color: var(--accent-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s var(--ios-spring), background-color 0.2s ease;
}
.sb-profile-card:hover .sb-profile-edit-badge {
    background: var(--accent-blue);
    color: #FFFFFF;
    transform: scale(1.06);
}

.sb-profile-main {
    display: flex;
    align-items: center;
    gap: 11px;
    padding-right: 30px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(150, 150, 150, 0.13);
}

.sb-avatar-wrap {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
}

.sb-avatar {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%);
    color: #FFFFFF;
    font-size: 0.96em;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(10, 132, 255, 0.28);
}

.sb-profile-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.sb-profile-name {
    font-size: 0.94em;
    font-weight: 800;
    color: var(--text-main);
    letter-spacing: -0.2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sb-profile-meta {
    font-size: 0.73em;
    font-weight: 700;
    color: var(--accent-blue);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sb-quick-stats {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 8px;
}

.sb-qstat {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
}

.sb-qstat b {
    font-size: 0.84em;
    font-weight: 800;
    color: var(--text-main);
    font-variant-numeric: tabular-nums;
}

.sb-qstat span {
    font-size: 0.60em;
    font-weight: 700;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.sb-qstat-divider {
    width: 1px;
    height: 18px;
    background: rgba(150, 150, 150, 0.16);
}

.sb-section-label {
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    color: var(--text-secondary);
    padding: 0 8px;
    margin: 2px 0 5px 0;
    opacity: 0.8;
    flex-shrink: 0;
}

.sidebar .sidebar-menu {
    list-style: none !important;
    padding: 4px !important;
    margin: 0 0 12px 0 !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
    overflow: hidden !important;
    transition: none !important;
    flex-shrink: 0;
}

[data-theme="dark"] .sidebar .sidebar-menu {
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.07) !important;
    box-shadow: none !important;
}

.sidebar .sidebar-menu.sb-prefs-menu {
    margin-bottom: 0 !important;
}

.sidebar .sidebar-menu li {
    position: relative !important;
    padding: 7px 10px !important;
    margin-bottom: 2px !important;
    border-radius: 12px !important;
    border: 1px solid transparent !important;
    border-bottom: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    font-size: 0.90em !important;
    font-weight: 600 !important;
    color: var(--text-main) !important;
    cursor: pointer !important;
    transition: background-color 0.16s ease, color 0.16s ease !important;
}

.sidebar .sidebar-menu li:last-child {
    margin-bottom: 0 !important;
}

.sidebar .sidebar-menu li:hover:not(.active-nav) {
    background: rgba(150, 150, 150, 0.09) !important;
}

.sidebar .sidebar-menu li.active-nav {
    background: rgba(0, 122, 255, 0.11) !important;
    border-color: rgba(0, 122, 255, 0.24) !important;
    color: var(--accent-blue) !important;
    font-weight: 700 !important;
}

[data-theme="dark"] .sidebar .sidebar-menu li.active-nav {
    background: rgba(10, 132, 255, 0.18) !important;
    border-color: rgba(10, 132, 255, 0.34) !important;
    color: #FFFFFF !important;
}

.sb-icon-box {
    width: 29px;
    height: 29px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #FFFFFF !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.sidebar .sidebar-menu .sb-icon-box svg,
.sb-icon-box svg {
    margin-right: 0 !important;
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

.sb-blue   { background: linear-gradient(135deg, #0A84FF 0%, #0062CC 100%); }
.sb-purple { background: linear-gradient(135deg, #AF52DE 0%, #5856D6 100%); }
.sb-amber  { background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%); }
.sb-orange { background: linear-gradient(135deg, #FF9500 0%, #FF3B30 100%); }
.sb-cyan   { background: linear-gradient(135deg, #32ADE6 0%, #007AFF 100%); }
.sb-green  { background: linear-gradient(135deg, #34C759 0%, #15803D 100%); }
.sb-teal   { background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important; }
.sb-pink   { background: linear-gradient(135deg, #FF2D55 0%, #C026D3 100%); }
.sb-indigo { background: linear-gradient(135deg, #5856D6 0%, #3634A3 100%); }
.sb-gold   { background: linear-gradient(135deg, #F59E0B 0%, #EA580C 100%); }

.sb-item-label {
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sb-item-badge {
    font-size: 0.70em;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 999px;
    background: rgba(150, 150, 150, 0.12);
    color: var(--text-secondary);
    white-space: nowrap;
    flex-shrink: 0;
}

/* ----------------------------------------------------------------------------
   MADDE 2 & 11: PAZAR TEMASI (.theme-cyan) VE PR KARTI (.theme-gold / .pr-special-card)
---------------------------------------------------------------------------- */
.day-card.theme-cyan {
    --theme-accent: #0088CC;
    --theme-accent-2: #007AFF;
    --theme-rgb: 50, 173, 230;
    --theme-rgb-2: 10, 132, 255;
}
[data-theme="dark"] .day-card.theme-cyan {
    --theme-accent: #64D2FF;
}

.day-card.pr-special-card,
.day-card.theme-gold {
    --theme-accent: #D97706;
    --theme-accent-2: #B45309;
    --theme-rgb: 245, 158, 11;
    --theme-rgb-2: 217, 119, 6;
}
[data-theme="dark"] .day-card.pr-special-card,
[data-theme="dark"] .day-card.theme-gold {
    --theme-accent: #FBBF24;
}

/* Gündüz Modu: Pazar ve PR Kartı (Klasik Canlı Renkli Cam) */
body.card-theme-vibrant .day-card.theme-cyan,
body.card-theme-vibrant .day-card.pr-special-card,
body.card-theme-vibrant .day-card.theme-gold {
    background:
        radial-gradient(115% 90% at 96% 4%, rgba(var(--theme-rgb), 0.30) 0%, rgba(var(--theme-rgb), 0.10) 38%, transparent 65%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.22) 0%, transparent 60%),
        linear-gradient(155deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 12px 28px -6px rgba(var(--theme-rgb), 0.14),
        0 4px 12px rgba(0, 0, 0, 0.04),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95),
        inset 1px 0 0 rgba(255, 255, 255, 0.75) !important;
}

/* Gece Modu: Pazar ve PR Kartı (Klasik Canlı Renkli Cam) */
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-cyan,
[data-theme="dark"] body.card-theme-vibrant .day-card.pr-special-card,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-gold {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(var(--theme-rgb), 0.44) 0%, rgba(var(--theme-rgb), 0.14) 42%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.28) 0%, transparent 60%),
        linear-gradient(160deg, #161820 0%, #0E1015 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.40) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.55),
        0 0 24px -6px rgba(var(--theme-rgb), 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

.pr-header-count-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 0.75em;
    font-weight: 800;
    color: var(--theme-accent);
    background: rgba(var(--theme-rgb), 0.14);
    border: 1px solid rgba(var(--theme-rgb), 0.32);
}

.day-card.pr-special-card .pr-list-container {
    background: rgba(255, 255, 255, 0.52) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.18) !important;
    padding: 6px !important;
    border-radius: 16px !important;
    box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-container {
    background: rgba(10, 12, 18, 0.52) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.35) !important;
}

.day-card.pr-special-card .pr-list-item {
    margin-bottom: 4px !important;
    border-radius: 11px !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    background: rgba(255, 255, 255, 0.68) !important;
    padding: 7px 11px !important;
    min-height: 44px !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(255, 255, 255, 0.055) !important;
}
.day-card.pr-special-card .pr-list-item:last-child {
    margin-bottom: 0 !important;
}

.pr-item-text-col {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
}
.pr-item-name {
    font-weight: 700 !important;
    color: var(--text-main) !important;
    font-size: 0.94em;
}
.pr-item-date {
    font-size: 0.72em;
    font-weight: 600;
    color: var(--text-secondary);
    margin-top: 1px;
}

/* ----------------------------------------------------------------------------
   MADDE 4: TÜM KARTLARIN HOVER ALT IŞIK RENGİNİN KARTIN KENDİ RENGİ OLMASI
---------------------------------------------------------------------------- */
/* 1. Gün Kartları & PR Kartı (--theme-rgb) */
.day-card.theme-blue:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-orange:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-green:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-purple:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-pink:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-yellow:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-cyan:hover:not(.expanded-active):not(.is-animating),
.day-card.pr-special-card:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-gold:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-5px) !important;
    border-color: rgba(var(--theme-rgb), 0.62) !important;
    box-shadow:
        0 20px 42px -6px rgba(var(--theme-rgb), 0.42),
        0 6px 18px -2px rgba(var(--theme-rgb), 0.25),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.38) !important;
}

/* 2. Ana Sayfa Mini Takvim & Aylık Takvim Kartları (--season-rgb) */
.day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
.month-card.active:hover {
    border-color: rgba(var(--season-rgb), 0.62) !important;
    box-shadow:
        0 20px 42px -6px rgba(var(--season-rgb), 0.42),
        0 6px 18px -2px rgba(var(--season-rgb), 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35) !important;
}

/* 3. Sağ Üst 4 Küçük Biyometrik Saat Kartı (--theme-rgb) */
.small-stat-card.watch-stat-card:hover {
    transform: translateY(-4px) scale(1.015) !important;
    border-color: rgba(var(--theme-rgb), 0.62) !important;
    box-shadow:
        0 18px 36px -6px rgba(var(--theme-rgb), 0.44),
        0 5px 14px -2px rgba(var(--theme-rgb), 0.25),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35) !important;
}



/* 5. Üst Hava Durumu Widget'ı Hover Işığı */
.top-widget.sky-sunrise:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -4px rgba(247, 185, 99, 0.42) !important; }
.top-widget.sky-morning:hover:not(.expanded-active) #flipInner,
.top-widget.sky-noon:hover:not(.expanded-active) #flipInner,
.top-widget.sky-day:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -4px rgba(21, 108, 227, 0.42) !important; }
.top-widget.sky-sunset:hover:not(.expanded-active) #flipInner,
.top-widget.sky-evening:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -4px rgba(209, 86, 71, 0.42) !important; }
.top-widget.sky-night:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -4px rgba(29, 53, 88, 0.55) !important; }

/* ----------------------------------------------------------------------------
   MADDE 5: ANA SAYFA SAĞ ÜST SEZON İLERLEME DURUM BELİRTECİ (#seasonRingContainer)
---------------------------------------------------------------------------- */
#seasonRingContainer.ios-season-top-widget {
    --s-ring-rgb: 10, 132, 255;
    --s-ring-hex: #0A84FF;
    position: absolute !important;
    left: calc(100% + 16px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    height: 90px !important;
    width: 196px !important;
    border-radius: 26px !important;
    padding: 0 15px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 10 !important;
    background:
        radial-gradient(120% 95% at 95% 5%, rgba(var(--s-ring-rgb), 0.24) 0%, transparent 65%),
        linear-gradient(155deg, #FFFFFF 0%, #F6F8FC 100%) !important;
    border: 1px solid rgba(var(--s-ring-rgb), 0.30) !important;
    box-shadow:
        0 10px 26px -6px rgba(var(--s-ring-rgb), 0.14),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
    transition: transform 0.25s var(--ios-spring), box-shadow 0.25s ease, border-color 0.25s ease !important;
}

[data-theme="dark"] #seasonRingContainer.ios-season-top-widget {
    background:
        radial-gradient(120% 95% at 95% 5%, rgba(var(--s-ring-rgb), 0.34) 0%, transparent 66%),
        linear-gradient(160deg, #161820 0%, #0E1015 100%) !important;
    border: 1px solid rgba(var(--s-ring-rgb), 0.36) !important;
    box-shadow:
        0 12px 28px -6px rgba(0, 0, 0, 0.55),
        0 0 20px -6px rgba(var(--s-ring-rgb), 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.18) !important;
}

#seasonRingContainer.ios-season-top-widget:hover {
    transform: translateY(calc(-50% - 3px)) !important;
    border-color: rgba(var(--s-ring-rgb), 0.60) !important;
    box-shadow:
        0 18px 36px -6px rgba(var(--s-ring-rgb), 0.38),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.32) !important;
}

.s-ring-circle-wrap {
    position: relative;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.s-ring-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
    overflow: visible;
}

.s-ring-track {
    fill: none;
    stroke: rgba(150, 150, 150, 0.18);
    stroke-width: 3.4;
}

.s-ring-value {
    fill: none;
    stroke-width: 3.4;
    stroke-linecap: round;
    transition: stroke-dasharray 0.8s var(--ios-spring);
}

.s-ring-pct {
    font-size: 0.86em;
    font-weight: 900;
    color: var(--text-main);
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.3px;
    z-index: 2;
}

.s-ring-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    min-width: 0;
    gap: 1px;
}

.s-ring-kicker {
    font-size: 0.56em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--s-ring-hex);
}

.s-ring-title {
    font-size: 0.86em;
    font-weight: 800;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    letter-spacing: -0.2px;
}

.s-ring-sub {
    font-size: 0.72em;
    font-weight: 700;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ----------------------------------------------------------------------------
   MADDE 1: TAKVİM SEZON BLOB TASARIMI, TARİH SEÇİCİ & SEZON ŞERİT KARTLARI
---------------------------------------------------------------------------- */
/* 1A. Takvim Sezon Belirteci (Blob) — Komşuluk ve sıfır-boşluk mantığını bozmadan sade iOS 18 cam/ipek dolgu */
.sc-blue   { --s-rgb: 10, 132, 255; }
.sc-orange { --s-rgb: 255, 159, 10; }
.sc-green  { --s-rgb: 48, 209, 88; }
.sc-purple { --s-rgb: 191, 90, 242; }
.sc-pink   { --s-rgb: 255, 55, 95; }
.sc-yellow { --s-rgb: 245, 158, 11; }

.in-season::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(var(--s-rgb, 10, 132, 255), 0.16) !important;
    border-radius: 0;
    z-index: -2;
    pointer-events: none;
}

[data-theme="dark"] .in-season::before {
    background: rgba(var(--s-rgb, 10, 132, 255), 0.22) !important;
    border-radius: 0;
}

.in-season::after {
    content: '';
    position: absolute;
    inset: 0;
    border: 0 solid transparent;
    z-index: -1;
    pointer-events: none;
    filter: none !important;
}

.in-season.edge-t::after {
    border-top: 1.5px solid rgba(var(--s-rgb, 10, 132, 255), 0.55) !important;
    box-shadow: none !important;
}
.in-season.edge-b::after {
    border-bottom: 1.5px solid rgba(var(--s-rgb, 10, 132, 255), 0.55) !important;
}
.in-season.edge-l::after {
    border-left: 1.5px solid rgba(var(--s-rgb, 10, 132, 255), 0.55) !important;
}
.in-season.edge-r::after {
    border-right: 1.5px solid rgba(var(--s-rgb, 10, 132, 255), 0.55) !important;
}

.in-season.edge-t.edge-l::before, .in-season.edge-t.edge-l::after { border-top-left-radius: 14px !important; }
.in-season.edge-t.edge-r::before, .in-season.edge-t.edge-r::after { border-top-right-radius: 14px !important; }
.in-season.edge-b.edge-l::before, .in-season.edge-b.edge-l::after { border-bottom-left-radius: 14px !important; }
.in-season.edge-b.edge-r::before, .in-season.edge-b.edge-r::after { border-bottom-right-radius: 14px !important; }

.home-cal-card .in-season.edge-t.edge-l::before, .home-cal-card .in-season.edge-t.edge-l::after { border-top-left-radius: 10px !important; }
.home-cal-card .in-season.edge-t.edge-r::before, .home-cal-card .in-season.edge-t.edge-r::after { border-top-right-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-l::before, .home-cal-card .in-season.edge-b.edge-l::after { border-bottom-left-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-r::before, .home-cal-card .in-season.edge-b.edge-r::after { border-bottom-right-radius: 10px !important; }

/* 1B. Sezon Ekleme Tarih Seçici Butonu (.date-input) ve iOS 18 Tarih Seçici Popover (#datePickerModalOverlay) */
.date-input {
    background: rgba(150, 150, 150, 0.12) !important;
    border: 1px solid rgba(150, 150, 150, 0.22) !important;
    color: var(--text-secondary) !important;
    padding: 8px 14px !important;
    border-radius: 11px !important;
    font-size: 0.92em !important;
    font-weight: 700 !important;
    width: auto !important;
    min-width: 145px !important;
    text-align: center !important;
    transition: all 0.2s var(--ios-spring) !important;
}
.date-input:hover {
    border-color: var(--accent-blue) !important;
    color: var(--accent-blue) !important;
}
.date-input.has-value {
    background: rgba(10, 132, 255, 0.14) !important;
    border-color: rgba(10, 132, 255, 0.42) !important;
    color: var(--accent-blue) !important;
}
[data-theme="dark"] .date-input.has-value {
    color: #7DD3FC !important;
}

.ios-datepicker-card {
    width: 356px !important;
    max-width: calc(100vw - 32px) !important;
    padding: 18px 18px 16px 18px !important;
    border-radius: 28px !important;
}

.dp-top-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    margin-bottom: 10px;
    border-bottom: 1px solid rgba(150, 150, 150, 0.16);
}

.dp-title-cluster {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.dp-kicker {
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--accent-blue);
}

.dp-month-title {
    margin: 0;
    font-size: 1.18em;
    font-weight: 800;
    letter-spacing: -0.4px;
    color: var(--text-main);
}

.dp-nav-btns {
    display: flex;
    align-items: center;
    gap: 6px;
}

.dp-nav-btn {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    border: 1px solid rgba(150, 150, 150, 0.18);
    background: rgba(150, 150, 150, 0.10);
    color: var(--text-main);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.18s var(--ios-spring), background-color 0.18s ease;
}
.dp-nav-btn:hover {
    background: rgba(10, 132, 255, 0.16);
    color: var(--accent-blue);
    transform: scale(1.06);
}

.dp-calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
    margin-bottom: 14px;
}

.dp-day-name {
    text-align: center;
    font-size: 0.68em;
    font-weight: 800;
    color: var(--text-secondary);
    text-transform: uppercase;
    padding-bottom: 4px;
}

.dp-day-cell {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    max-height: 40px;
    border-radius: 12px;
    border: 1px solid transparent;
    background: rgba(150, 150, 150, 0.08);
    color: var(--text-main);
    font-size: 0.90em;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    transition: transform 0.16s var(--ios-spring), background-color 0.16s ease, border-color 0.16s ease;
}
.dp-day-cell.is-empty {
    background: transparent !important;
    pointer-events: none;
}
.dp-day-cell:hover:not(.is-empty):not(.is-selected) {
    background: rgba(10, 132, 255, 0.16);
    border-color: rgba(10, 132, 255, 0.35);
    color: var(--accent-blue);
    transform: scale(1.06);
}
.dp-day-cell.is-today:not(.is-selected) {
    border-color: var(--accent-blue);
    color: var(--accent-blue);
    font-weight: 900;
}
.dp-day-cell.is-selected {
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%) !important;
    color: #FFFFFF !important;
    font-weight: 900;
    box-shadow: 0 4px 12px rgba(10, 132, 255, 0.35);
}
.dp-workout-dot {
    position: absolute;
    bottom: 3px;
    left: 50%;
    transform: translateX(-50%);
    width: 4.5px;
    height: 4.5px;
    border-radius: 50%;
    background: #30D158;
}
.dp-day-cell.is-selected .dp-workout-dot {
    background: #FFFFFF;
}

/* 1C. Sezon Yönetimi Ekranı & Eklenen Sezon Şerit Kartları (.season-strip-card) */
#seasonView {
    overflow-y: auto !important;
    padding-bottom: 40px !important;
}
#seasonCard {
    padding: 24px 26px !important;
    border-radius: 28px !important;
    margin-bottom: 16px !important;
}
#seasonCard .profile-header-area {
    margin-bottom: 16px !important;
}
#seasonCard .profile-header-area h2 {
    font-size: 1.45em !important;
}
#seasonCard .ios-list-group {
    margin-bottom: 16px !important;
}

.season-empty-state {
    padding: 22px;
    border-radius: 20px;
    text-align: center;
    font-size: 0.88em;
    font-weight: 600;
    color: var(--text-secondary);
    background: rgba(150, 150, 150, 0.08);
    border: 1px dashed rgba(150, 150, 150, 0.25);
}

.day-card.season-strip-card {
    height: auto !important;
    min-height: 84px !important;
    padding: 15px 18px !important;
    border-radius: 22px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    flex-shrink: 0 !important;
}

.season-strip-left {
    display: flex;
    align-items: center;
    gap: 13px;
    flex: 1;
    min-width: 0;
}

.season-strip-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.18);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.36);
    color: var(--theme-accent, var(--accent-blue));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.season-strip-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 0;
}

.season-strip-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.season-strip-title {
    margin: 0;
    font-size: 1.05em;
    font-weight: 800;
    color: var(--text-main);
    letter-spacing: -0.3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.season-strip-badge {
    font-size: 0.65em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    flex-shrink: 0;
}
.season-strip-badge.is-active {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.18);
    color: var(--theme-accent, var(--accent-blue));
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.35);
}
.season-strip-badge.is-upcoming {
    background: rgba(255, 159, 10, 0.16);
    color: #FF9F0A;
    border: 1px solid rgba(255, 159, 10, 0.32);
}
.season-strip-badge.is-done {
    background: rgba(48, 209, 88, 0.16);
    color: #30D158;
    border: 1px solid rgba(48, 209, 88, 0.32);
}

.season-strip-dates {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.76em;
    font-weight: 600;
    color: var(--text-secondary);
}
.season-strip-dates b {
    color: var(--theme-accent, var(--accent-blue));
    font-weight: 800;
}

.season-strip-progress-track {
    width: 100%;
    height: 5px;
    border-radius: 99px;
    background: rgba(150, 150, 150, 0.18);
    overflow: hidden;
    margin-top: 2px;
}

.season-strip-progress-fill {
    height: 100%;
    border-radius: 99px;
    background: var(--theme-accent, var(--accent-blue));
    transition: width 0.5s var(--ios-spring);
}


.season-strip-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}
.season-strip-edit-btn {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 132, 255, 0.12);
    border: 1px solid rgba(10, 132, 255, 0.28);
    color: var(--accent-blue);
    cursor: pointer;
    transition: all 0.2s var(--ios-spring);
}
.season-strip-edit-btn:hover {
    background: var(--accent-blue);
    border-color: var(--accent-blue);
    color: #FFFFFF;
    transform: scale(1.08);
}
.season-strip-edit-btn:active {
    transform: scale(0.92);
}

.season-strip-del-btn {
    width: 36px;
    height: 36px;
    border-radius: 11px;
    border: 1px solid rgba(255, 59, 48, 0.28);
    background: rgba(255, 59, 48, 0.12);
    color: var(--danger-red);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: transform 0.18s var(--ios-spring), background-color 0.18s ease;
}
.season-strip-del-btn:hover {
    background: var(--danger-red);
    color: #FFFFFF;
    transform: scale(1.06);
}

/* ----------------------------------------------------------------------------
   MADDE 11: HAFTALIK PROGRAM GÜN EKLEME / ÇIKARMA BARI & DİNAMİK IZGARA
---------------------------------------------------------------------------- */
.weekly-header-bar {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto 14px auto;
    padding-left: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.weekly-title-cluster {
    display: flex;
    align-items: center;
    gap: 12px;
}

.weekly-active-count-pill {
    font-size: 0.76em;
    font-weight: 800;
    padding: 4px 11px;
    border-radius: 999px;
    background: rgba(10, 132, 255, 0.14);
    border: 1px solid rgba(10, 132, 255, 0.30);
    color: var(--accent-blue);
}

.weekly-day-pills-bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(0, 0, 0, 0.07);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
    flex-wrap: wrap;
}
[data-theme="dark"] .weekly-day-pills-bar {
    background: rgba(22, 24, 32, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
}

.weekly-day-toggle-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 11px;
    border-radius: 11px;
    font-size: 0.76em;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid transparent;
    background: transparent;
    color: var(--text-secondary);
    transition: all 0.2s var(--ios-spring);
}

.weekly-day-toggle-pill .wd-pill-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    opacity: 0.45;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.weekly-day-toggle-pill .wd-pill-state {
    font-size: 0.92em;
    font-weight: 900;
    opacity: 0.65;
}

.weekly-day-toggle-pill.is-active {
    background: rgba(255, 255, 255, 0.95);
    border-color: rgba(0, 0, 0, 0.08);
    color: var(--text-main);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}
[data-theme="dark"] .weekly-day-toggle-pill.is-active {
    background: rgba(255, 255, 255, 0.10);
    border-color: rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
}
.weekly-day-toggle-pill.is-active .wd-pill-dot {
    opacity: 1;
    transform: scale(1.15);
}
.weekly-day-toggle-pill.is-active .wd-pill-state {
    color: #30D158;
    opacity: 1;
}

.weekly-day-toggle-pill:hover {
    transform: translateY(-1px);
    color: var(--text-main);
}

/* Haftalık Program Izgara Düzeni: Gün sayısına göre (1..7 gün) dengeli yerleşim */
#weeklyGrid[data-day-count="1"] { grid-template-columns: minmax(320px, 520px); grid-template-rows: 1fr; justify-content: center; }
#weeklyGrid[data-day-count="2"] { grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr; }
#weeklyGrid[data-day-count="3"] { grid-template-columns: repeat(3, 1fr); grid-template-rows: 1fr; }
#weeklyGrid[data-day-count="4"] { grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); }
#weeklyGrid[data-day-count="5"],
#weeklyGrid[data-day-count="6"] { grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 1fr); }
#weeklyGrid[data-day-count="7"] { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); }

/* ----------------------------------------------------------------------------
   MADDE 9: GEÇMİŞ ANTRENMANLAR İSKAMBİL DESTESİ (DECK) VE TARİH SEÇEREK ÇEKME
---------------------------------------------------------------------------- */
.history-top-bar {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto 16px auto;
    padding-left: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.history-title-left {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.history-subtitle-text {
    font-size: 0.84em;
    font-weight: 600;
    color: var(--text-secondary);
}

.history-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.history-date-picker-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 15px;
    border-radius: 14px;
    background: linear-gradient(155deg, #FFFFFF 0%, #F3F5FA 100%);
    border: 1px solid rgba(10, 132, 255, 0.32);
    color: var(--accent-blue);
    font-size: 0.84em;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(10, 132, 255, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: transform 0.2s var(--ios-spring), box-shadow 0.2s ease, border-color 0.2s ease;
}
[data-theme="dark"] .history-date-picker-btn {
    background: linear-gradient(160deg, #1A1E29 0%, #11141C 100%);
    border-color: rgba(10, 132, 255, 0.42);
    color: #7DD3FC;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}
.history-date-picker-btn:hover {
    transform: translateY(-2px);
    border-color: var(--accent-blue);
    box-shadow: 0 10px 24px rgba(10, 132, 255, 0.26);
}

.history-step-btns {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 6px;
    border-radius: 14px;
    background: rgba(150, 150, 150, 0.10);
    border: 1px solid rgba(150, 150, 150, 0.18);
}

.history-step-btn {
    width: 30px;
    height: 30px;
    border-radius: 10px;
    border: none;
    background: var(--list-bg);
    color: var(--text-main);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.16s var(--ios-spring), background-color 0.16s ease;
}
.history-step-btn:hover {
    background: var(--accent-blue);
    color: #FFFFFF;
}

.history-step-indicator {
    font-size: 0.78em;
    font-weight: 800;
    color: var(--text-main);
    padding: 0 6px;
    font-variant-numeric: tabular-nums;
}

.history-deck-stage {
    width: 100%;
    max-width: 1180px;
    flex: 1;
    min-height: 0;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 350px 1fr;
    gap: 28px;
    align-items: center;
}

/* Soldaki İskambil Kartı Destesi (.history-deck-column) */
.history-deck-column {
    height: 100%;
    max-height: 620px;
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 28px;
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 10px 28px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}
[data-theme="dark"] .history-deck-column {
    background: rgba(18, 20, 28, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.09);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 14px 34px rgba(0, 0, 0, 0.45);
}

.history-deck-header {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0 4px 12px 4px;
    border-bottom: 1px solid rgba(150, 150, 150, 0.15);
    margin-bottom: 12px;
    flex-shrink: 0;
}

.history-deck-kicker {
    font-size: 0.68em;
    font-weight: 900;
    letter-spacing: 0.6px;
    color: var(--accent-blue);
}

.history-deck-sub {
    font-size: 0.74em;
    font-weight: 600;
    color: var(--text-secondary);
}

.history-deck-fan {
    flex: 1;
    overflow-y: auto;
    padding: 8px 6px 24px 6px;
    display: flex;
    flex-direction: column;
}

/* İskambil Destesi Kartları: Üst üste binen (overlap) gerçek deste katmanları */
.history-deck-card {
    position: relative;
    border-radius: 20px;
    padding: 13px 15px;
    margin-top: -22px;
    cursor: pointer;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.38);
    background:
        radial-gradient(115% 90% at 96% 6%, rgba(var(--theme-rgb, 10, 132, 255), 0.34) 0%, transparent 65%),
        linear-gradient(155deg, #FFFFFF 0%, #F4F6FB 100%);
    box-shadow:
        0 -4px 14px rgba(0, 0, 0, 0.06),
        0 8px 18px rgba(0, 0, 0, 0.06),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95);
    transform: rotate(calc((var(--deck-i, 0) % 3 - 1) * 0.8deg));
    transition: transform 0.28s var(--ios-spring), margin 0.28s var(--ios-spring), box-shadow 0.25s ease, border-color 0.25s ease;
    flex-shrink: 0;
}
.history-deck-card:first-child {
    margin-top: 0;
}

[data-theme="dark"] .history-deck-card {
    background:
        radial-gradient(115% 90% at 96% 6%, rgba(var(--theme-rgb, 10, 132, 255), 0.45) 0%, transparent 68%),
        linear-gradient(160deg, #181B24 0%, #101218 100%);
    box-shadow:
        0 -6px 16px rgba(0, 0, 0, 0.55),
        0 8px 20px rgba(0, 0, 0, 0.45),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20);
}

.history-deck-card:hover {
    transform: translateY(-6px) translateX(6px) rotate(0deg) !important;
    z-index: 20;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.75);
    box-shadow:
        0 14px 28px -4px rgba(var(--theme-rgb, 10, 132, 255), 0.38),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35);
}

.history-deck-card.is-drawn {
    transform: translateX(10px) rotate(0deg) !important;
    margin-bottom: 14px;
    border: 1.5px solid var(--accent-blue) !important;
    box-shadow:
        0 12px 28px -4px rgba(10, 132, 255, 0.35),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35);
    z-index: 15;
}

.hdc-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.hdc-date-pill {
    font-size: 0.72em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.16);
    color: var(--theme-accent, var(--accent-blue));
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.32);
}

.hdc-status-tag {
    font-size: 0.65em;
    font-weight: 900;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
}
.history-deck-card.is-drawn .hdc-status-tag {
    color: var(--accent-blue);
}

.hdc-mid-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 4px;
}

.hdc-day-name {
    font-size: 1.05em;
    font-weight: 900;
    color: var(--text-main);
    letter-spacing: -0.3px;
}

.hdc-workout-type {
    font-size: 0.75em;
    font-weight: 800;
    color: var(--theme-accent, var(--accent-blue));
    text-transform: uppercase;
}

.hdc-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.72em;
    font-weight: 600;
    color: var(--text-secondary);
}
.hdc-draw-hint {
    font-weight: 800;
    color: var(--accent-blue);
}

/* Sağdaki Aktif Çekilmiş Kart Sahnesi (.history-active-stage) */
.history-active-stage {
    position: relative;
    height: 100%;
    max-height: 620px;
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* İskambil Destesinden Kart Çekme Animasyonu */
@keyframes deckCardDrawIn {
    0% {
        opacity: 0.25;
        transform: translate3d(-160px, 18px, -80px) rotate(-7deg) scale(0.86);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
    }
}

.history-card-wrapper.active.deck-draw-anim {
    animation: deckCardDrawIn 0.46s var(--ios-spring) forwards !important;
}

/* ----------------------------------------------------------------------------
   MADDE 12: GÜN KARTI ANTRENMAN TÜRÜ MENÜSÜ (.workout-menu-overlay) VE POP-UP MODALLAR
---------------------------------------------------------------------------- */
.day-card .workout-menu-overlay {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(var(--theme-rgb, 10, 132, 255), 0.22) 0%, transparent 65%),
        linear-gradient(165deg, #FFFFFF 0%, #F4F6FB 100%) !important;
    padding: 18px 18px 16px 18px !important;
    border-radius: inherit !important;
}
[data-theme="dark"] .day-card .workout-menu-overlay {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(var(--theme-rgb, 10, 132, 255), 0.32) 0%, transparent 68%),
        linear-gradient(165deg, #161821 0%, #0E1016 100%) !important;
}

.workout-menu-header {
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid rgba(150, 150, 150, 0.16) !important;
}

.wm-kicker {
    display: block;
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.6px;
    color: var(--theme-accent, var(--accent-blue));
    margin-bottom: 2px;
}

.wm-done-pill-btn {
    background: var(--accent-blue);
    color: #FFFFFF;
    border: none;
    border-radius: 999px;
    padding: 6px 16px;
    font-size: 0.84em;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(10, 132, 255, 0.3);
    transition: transform 0.18s var(--ios-spring);
}
.wm-done-pill-btn:hover {
    transform: scale(1.05);
}

.wm-section-label {
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.6px;
    color: var(--text-secondary);
    margin: 2px 0 6px 2px;
}

.day-card .variation-selector {
    background: rgba(150, 150, 150, 0.12) !important;
    border: 1px solid rgba(150, 150, 150, 0.16) !important;
    border-radius: 12px !important;
    padding: 4px !important;
    margin-bottom: 12px !important;
}

.day-card .var-btn {
    border-radius: 9px !important;
    font-weight: 700 !important;
    padding: 6px 0 !important;
}
.day-card .var-btn.active {
    background: var(--accent-blue) !important;
    color: #FFFFFF !important;
    box-shadow: 0 2px 8px rgba(10, 132, 255, 0.32) !important;
}

.day-card .type-list {
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding-right: 2px !important;
}

.ios-type-option {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 11px !important;
    border-radius: 13px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    border-bottom: none !important;
    transition: transform 0.16s var(--ios-spring), background-color 0.16s ease, border-color 0.16s ease !important;
}
[data-theme="dark"] .ios-type-option {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.07) !important;
}
.ios-type-option:hover {
    transform: translateX(2px);
}
.ios-type-option.active {
    background: rgba(10, 132, 255, 0.14) !important;
    border-color: rgba(10, 132, 255, 0.42) !important;
}
.ios-type-option.active::after {
    display: none !important;
}

.ios-type-opt-icon {
    width: 30px;
    height: 30px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ios-type-opt-icon svg {
    width: 15px;
    height: 15px;
}

.ios-type-opt-info {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}
.ios-type-opt-name {
    font-size: 0.90em;
    font-weight: 800;
    color: var(--text-main);
}
.ios-type-opt-desc {
    font-size: 0.70em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ios-type-opt-check {
    font-size: 0.95em;
    font-weight: 900;
    color: var(--accent-blue);
    opacity: 0;
    transform: scale(0.6);
    transition: opacity 0.16s ease, transform 0.16s var(--ios-spring);
}
.ios-type-option.active .ios-type-opt-check {
    opacity: 1;
    transform: scale(1);
}

/* Egzersiz Ekleme Pop-up'ı (#pickerModal) ve Hedef Girme Pop-up'ı (#promptModal) */
.ios-modal-card.picker-modal-card {
    width: 420px;
    max-width: calc(100vw - 32px);
    max-height: 82vh;
    border-radius: 28px;
    padding: 20px 18px 16px 18px;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.18) 0%, transparent 65%),
        linear-gradient(160deg, #FFFFFF 0%, #F4F6FB 100%);
    border: 1px solid rgba(10, 132, 255, 0.26);
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.25),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.98);
    transform: scale(0.94) translateY(12px);
    opacity: 0;
    transition: transform 0.32s var(--ios-spring), opacity 0.22s ease;
}
[data-theme="dark"] .ios-modal-card.picker-modal-card {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.30) 0%, transparent 66%),
        linear-gradient(165deg, #171A24 0%, #0E1016 100%);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow:
        0 26px 64px rgba(0, 0, 0, 0.72),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20);
}
.modal-overlay.active .ios-modal-card.picker-modal-card {
    transform: scale(1) translateY(0);
    opacity: 1;
}

.ios-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    margin-bottom: 10px;
    border-bottom: 1px solid rgba(150, 150, 150, 0.16);
}

.ios-modal-title-group {
    display: flex;
    flex-direction: column;
    gap: 2px;
    text-align: left;
}

.ios-modal-kicker {
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--accent-blue);
}

.ios-modal-title {
    margin: 0;
    font-size: 1.22em;
    font-weight: 800;
    letter-spacing: -0.4px;
    color: var(--text-main);
}

.ios-modal-close-btn {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    border: 1px solid rgba(150, 150, 150, 0.18);
    background: rgba(150, 150, 150, 0.10);
    color: var(--text-main);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.ios-picker-body {
    flex: 1;
    max-height: 360px !important;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 2px 2px 6px 2px !important;
}

.ios-picker-cat-row {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(0, 0, 0, 0.06);
    cursor: pointer;
    text-align: left;
    transition: transform 0.18s var(--ios-spring), border-color 0.18s ease, background-color 0.18s ease;
}
[data-theme="dark"] .ios-picker-cat-row {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}
.ios-picker-cat-row:hover {
    transform: translateX(3px);
    border-color: rgba(10, 132, 255, 0.42);
}

.ios-picker-cat-icon {
    width: 36px;
    height: 36px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ios-picker-cat-info {
    display: flex;
    flex-direction: column;
    gap: 1px;
    flex: 1;
    min-width: 0;
}

.ios-picker-cat-name {
    font-size: 0.96em;
    font-weight: 800;
    color: var(--text-main);
}

.ios-picker-cat-sub {
    font-size: 0.72em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ios-picker-cat-count {
    font-size: 0.74em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
    flex-shrink: 0;
}

.ios-picker-chevron {
    color: var(--text-secondary);
    opacity: 0.65;
    flex-shrink: 0;
}


/* Picker Navigasyon ve Arama Çubuğu */
.picker-nav-box {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 8px;
    width: 100%;
}

.ios-picker-back-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 12px;
    background: rgba(10, 132, 255, 0.12);
    border: 1px solid rgba(10, 132, 255, 0.28);
    color: var(--accent-blue);
    font-size: 0.82em;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.18s ease;
}
.ios-picker-back-btn:hover {
    background: rgba(10, 132, 255, 0.22);
    transform: translateY(-1px);
}
.ios-picker-back-btn:active {
    transform: scale(0.98);
}

.ios-picker-search-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
}
.ios-picker-search-icon {
    position: absolute;
    left: 12px;
    color: var(--text-secondary);
    opacity: 0.65;
    pointer-events: none;
}
.ios-picker-search-input {
    width: 100%;
    padding: 9px 34px 9px 36px;
    font-size: 0.88em;
    font-weight: 600;
    font-family: inherit;
    color: var(--text-main);
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(0, 0, 0, 0.10);
    border-radius: 12px;
    outline: none;
    transition: all 0.2s ease;
    box-sizing: border-box;
}
[data-theme="dark"] .ios-picker-search-input {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #fff;
}
.ios-picker-search-input:focus {
    border-color: var(--accent-blue);
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.18);
}
[data-theme="dark"] .ios-picker-search-input:focus {
    background: rgba(255, 255, 255, 0.10);
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.28);
}
.ios-picker-search-clear {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: none;
    background: rgba(142, 142, 147, 0.25);
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    transition: background 0.15s ease;
}
.ios-picker-search-clear:hover {
    background: rgba(142, 142, 147, 0.45);
    color: var(--text-main);
}

/* Kas Grubu Satırları */
.ios-picker-muscle-row {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 13px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(0, 0, 0, 0.06);
    cursor: pointer;
    text-align: left;
    transition: transform 0.18s var(--ios-spring), border-color 0.18s ease, background-color 0.18s ease;
}
[data-theme="dark"] .ios-picker-muscle-row {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}
.ios-picker-muscle-row:hover {
    transform: translateX(3px);
    border-color: rgba(10, 132, 255, 0.42);
}
.ios-picker-muscle-row:active {
    transform: scale(0.98);
}
.ios-picker-muscle-badge {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}
.ios-picker-muscle-info {
    display: flex;
    flex-direction: column;
    gap: 1px;
    flex: 1;
    min-width: 0;
}
.ios-picker-muscle-name {
    font-size: 0.94em;
    font-weight: 700;
    color: var(--text-main);
}
.ios-picker-muscle-count {
    font-size: 0.74em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
    flex-shrink: 0;
}


.ios-picker-ex-row {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 13px;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(0, 0, 0, 0.06);
    color: var(--text-main);
    font-size: 0.92em;
    font-weight: 700;
    cursor: pointer;
    text-align: left;
    transition: transform 0.16s var(--ios-spring), border-color 0.16s ease;
}
[data-theme="dark"] .ios-picker-ex-row {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}
.ios-picker-ex-row:hover {
    transform: translateX(3px);
    border-color: var(--accent-blue);
}

.ios-picker-ex-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.ios-picker-ex-name {
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ios-picker-ex-add-tag {
    font-size: 0.76em;
    font-weight: 800;
    color: var(--accent-blue);
    background: rgba(10, 132, 255, 0.12);
    padding: 3px 9px;
    border-radius: 999px;
}

.ios-picker-empty {
    padding: 24px 16px;
    text-align: center;
    color: var(--text-secondary);
    font-size: 0.88em;
    line-height: 1.45;
}

.ios-modal-footer {
    padding-top: 10px;
    border-top: 1px solid rgba(150, 150, 150, 0.14);
}

.ios-modal-secondary-btn {
    width: 100%;
    padding: 11px;
    border-radius: 13px;
    border: 1px solid rgba(150, 150, 150, 0.22);
    background: rgba(150, 150, 150, 0.10);
    color: var(--text-main);
    font-size: 0.94em;
    font-weight: 700;
    cursor: pointer;
}

/* iOS 18 Aurora Dialog (#promptModal, #supersetModal, #confirmDeleteModal, #confirmSeasonDeleteModal) */
.ios-alert.ios-aurora-dialog {
    width: 344px;
    max-width: calc(100vw - 32px);
    border-radius: 28px !important;
    padding: 20px 18px 16px 18px;
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.18) 0%, transparent 65%),
        linear-gradient(160deg, #FFFFFF 0%, #F4F6FB 100%) !important;
    border: 1px solid rgba(10, 132, 255, 0.26) !important;
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.98) !important;
}
[data-theme="dark"] .ios-alert.ios-aurora-dialog {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.30) 0%, transparent 66%),
        linear-gradient(165deg, #171A24 0%, #0E1016 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow:
        0 26px 64px rgba(0, 0, 0, 0.72),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

.ios-dialog-badge {
    align-self: center;
    font-size: 0.62em;
    font-weight: 900;
    letter-spacing: 0.7px;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(10, 132, 255, 0.14);
    border: 1px solid rgba(10, 132, 255, 0.32);
    color: var(--accent-blue);
    margin-bottom: 8px;
}
.ios-dialog-badge.is-danger {
    background: rgba(255, 59, 48, 0.14);
    border-color: rgba(255, 59, 48, 0.34);
    color: var(--danger-red);
}

.ios-aurora-dialog .alert-title {
    margin: 0 0 6px 0 !important;
    font-size: 1.2em !important;
    font-weight: 800 !important;
    letter-spacing: -0.3px;
}

.ios-aurora-dialog .alert-message {
    margin: 0 0 16px 0 !important;
    font-size: 0.84em !important;
    color: var(--text-secondary) !important;
    line-height: 1.4 !important;
}

.ios-aurora-dialog .prompt-inputs-container {
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    gap: 10px !important;
}

.ios-field-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    width: 100%;
}

.ios-field-label {
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
    padding-left: 4px;
}

.ios-max-chip {
    border: 1px solid rgba(10, 132, 255, 0.32);
    background: rgba(10, 132, 255, 0.12);
    color: var(--accent-blue);
    border-radius: 6px;
    padding: 1px 6px;
    font-size: 0.62em;
    font-weight: 800;
    cursor: pointer;
}

.ios-aurora-dialog .prompt-input {
    border-radius: 12px !important;
    padding: 10px 12px !important;
    font-weight: 700 !important;
    background: rgba(150, 150, 150, 0.10) !important;
    border: 1px solid rgba(150, 150, 150, 0.20) !important;
}
.ios-aurora-dialog .prompt-input:focus {
    border-color: var(--accent-blue) !important;
    background: rgba(10, 132, 255, 0.06) !important;
}

.ios-unlink-btn {
    width: 100%;
    padding: 9px;
    border-radius: 11px;
    border: 1px solid rgba(255, 59, 48, 0.32);
    background: rgba(255, 59, 48, 0.12);
    color: var(--danger-red);
    font-size: 0.84em;
    font-weight: 800;
    cursor: pointer;
}

.ios-dialog-actions {
    display: flex;
    gap: 8px;
    width: 100%;
}

.ios-dialog-btn {
    flex: 1;
    padding: 11px 12px;
    border-radius: 13px;
    font-size: 0.92em;
    font-weight: 800;
    cursor: pointer;
    border: 1px solid transparent;
    transition: transform 0.16s var(--ios-spring), filter 0.16s ease;
}
.ios-dialog-btn:active {
    transform: scale(0.96);
}
.ios-dialog-btn.is-cancel {
    background: rgba(150, 150, 150, 0.12);
    border-color: rgba(150, 150, 150, 0.20);
    color: var(--text-main);
}
.ios-dialog-btn.is-primary {
    background: linear-gradient(135deg, #0A84FF 0%, #0062CC 100%);
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(10, 132, 255, 0.3);
}
.ios-dialog-btn.is-danger {
    background: linear-gradient(135deg, #FF453A 0%, #D70015 100%);
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(255, 59, 48, 0.3);
}


/* V29 MİKRO İNCE AYARLAR: SAĞ ÜST SEZON GENİŞLİĞİ, 2 SÜTUNLU TÜR SEÇİCİ & DESTE ALT BARI */
#seasonRingContainer.ios-season-top-widget {
    width: 214px !important;
    left: calc(100% + 14px) !important;
}

#seasonCard > .action-btn-split.btn-comp {
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%) !important;
    color: #FFFFFF !important;
    border-radius: 16px !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 22px -4px rgba(10, 132, 255, 0.35) !important;
}

/* Küçük kart içinde Antrenman Türü menüsünü 2 sütunlu kompakt Bento ızgara yap */
.day-card:not(.expanded-active) .type-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 6px !important;
    align-content: start !important;
}
.day-card:not(.expanded-active) .ios-type-option {
    padding: 7px 9px !important;
    gap: 8px !important;
}
.day-card:not(.expanded-active) .ios-type-opt-icon {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
}
.day-card:not(.expanded-active) .ios-type-opt-desc {
    display: none !important;
}

/* Geçmiş Antrenman Destesi Alt Özet & Tarihten Çek Barı */
.history-deck-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding-top: 12px;
    margin-top: auto;
    border-top: 1px solid rgba(150, 150, 150, 0.15);
    flex-shrink: 0;
}
.hdf-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 56px;
}
.hdf-stat b {
    font-size: 0.96em;
    font-weight: 900;
    color: var(--text-main);
}
.hdf-stat span {
    font-size: 0.62em;
    font-weight: 700;
    color: var(--text-secondary);
    text-transform: uppercase;
}
.hdf-divider {
    width: 1px;
    height: 22px;
    background: rgba(150, 150, 150, 0.18);
}
.hdf-pick-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 12px;
    background: rgba(10, 132, 255, 0.14);
    border: 1px solid rgba(10, 132, 255, 0.34);
    color: var(--accent-blue);
    font-size: 0.76em;
    font-weight: 800;
    cursor: pointer;
    transition: transform 0.18s var(--ios-spring), background-color 0.18s ease;
}
[data-theme="dark"] .hdf-pick-btn {
    color: #7DD3FC;
}
.hdf-pick-btn:hover {
    background: var(--accent-blue);
    color: #FFFFFF;
    transform: translateY(-1px);
}


/* ============================================================================
   V31 GÜNCELLEMESİ: 5 MADDELİK GÖRSEL, SİMETRİ VE ANALİZ PAKETİ
============================================================================ */

/* ----------------------------------------------------------------------------
   MADDE 1: YENİ EGZERSİZ GELİŞİM & GRAFİK KARTI (3D FLIP, PR ALTIN NOKTA,
   YEŞİL/MAVİ GELİŞİM TEMASI & TURUNCU/KIRMIZI PLATO TEMASI)
---------------------------------------------------------------------------- */
.day-card.progress-card-wrapper {
    position: relative !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.progress-card-front,
.progress-card-back {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    padding: 14px 16px !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden !important;
    transform: none !important;
}

/* GELİŞİMDE TEMASI: Yeşil / Mavi Arası (Teal - Cyan - Emerald Aurora) */
.day-card.progress-theme-improving {
    --theme-rgb: 6, 182, 212;
    --theme-rgb-2: 16, 185, 129;
    --theme-accent: #0891B2;
}
[data-theme="dark"] .day-card.progress-theme-improving {
    --theme-rgb: 0, 210, 211;
    --theme-rgb-2: 16, 185, 129;
    --theme-accent: #22D3EE;
}

body.card-theme-vibrant .progress-theme-improving .progress-card-front,
body.card-theme-vibrant .progress-theme-improving .progress-card-back {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(6, 182, 212, 0.34) 0%, rgba(16, 185, 129, 0.16) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(10, 132, 255, 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #F7FEFF 0%, #ECFDF5 100%) !important;
    border: 1px solid rgba(6, 182, 212, 0.42) !important;
    box-shadow:
        0 12px 28px -6px rgba(6, 182, 212, 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] body.card-theme-vibrant .progress-theme-improving .progress-card-front,
[data-theme="dark"] body.card-theme-vibrant .progress-theme-improving .progress-card-back {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(0, 210, 211, 0.42) 0%, rgba(16, 185, 129, 0.22) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(10, 132, 255, 0.30) 0%, transparent 62%),
        linear-gradient(160deg, #0F1E26 0%, #0A141A 100%) !important;
    border: 1px solid rgba(0, 210, 211, 0.45) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.6),
        0 0 24px -6px rgba(0, 210, 211, 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

/* PLATO / GERİYE GİDİŞ TEMASI (En az 3 antrenman üst üste): Turuncu / Kırmızı Aurora */
.day-card.progress-theme-plateau {
    --theme-rgb: 255, 69, 58;
    --theme-rgb-2: 255, 149, 0;
    --theme-accent: #EA580C;
}
[data-theme="dark"] .day-card.progress-theme-plateau {
    --theme-rgb: 255, 94, 58;
    --theme-rgb-2: 255, 159, 10;
    --theme-accent: #FF6B4A;
}

body.card-theme-vibrant .progress-theme-plateau .progress-card-front,
body.card-theme-vibrant .progress-theme-plateau .progress-card-back {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(255, 69, 58, 0.34) 0%, rgba(255, 149, 0, 0.16) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(255, 149, 0, 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #FFF9F6 0%, #FEF2F2 100%) !important;
    border: 1px solid rgba(255, 69, 58, 0.42) !important;
    box-shadow:
        0 12px 28px -6px rgba(255, 69, 58, 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] body.card-theme-vibrant .progress-theme-plateau .progress-card-front,
[data-theme="dark"] body.card-theme-vibrant .progress-theme-plateau .progress-card-back {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(255, 69, 58, 0.45) 0%, rgba(255, 149, 0, 0.22) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(255, 159, 10, 0.30) 0%, transparent 62%),
        linear-gradient(160deg, #251313 0%, #160B0B 100%) !important;
    border: 1px solid rgba(255, 94, 58, 0.48) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.6),
        0 0 24px -6px rgba(255, 69, 58, 0.26),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

.day-card.progress-card-wrapper:hover:not(.expanded-active) .progress-card-front,
.day-card.progress-card-wrapper:hover:not(.expanded-active) .progress-card-back {
    border-color: rgba(var(--theme-rgb), 0.72) !important;
    box-shadow:
        0 20px 42px -6px rgba(var(--theme-rgb), 0.42),
        0 6px 18px -2px rgba(var(--theme-rgb), 0.25),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35) !important;
}

.prog-front-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(var(--theme-rgb), 0.22);
    flex-shrink: 0;
}

.prog-header-left {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
    min-width: 0;
}

.prog-ex-Selector-row {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.prog-cycle-btn {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    border: 1px solid rgba(var(--theme-rgb), 0.32);
    background: rgba(var(--theme-rgb), 0.14);
    color: var(--text-main);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    transition: transform 0.16s var(--ios-spring), background-color 0.16s ease;
}
.prog-cycle-btn:hover {
    background: rgba(var(--theme-rgb), 0.28);
    transform: scale(1.07);
}

.prog-ex-title {
    font-size: 1.08em;
    font-weight: 900;
    letter-spacing: -0.4px;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.prog-status-row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    min-width: 0;
}

.prog-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.66em;
    font-weight: 800;
    letter-spacing: 0.3px;
    white-space: nowrap;
    flex-shrink: 0;
}
.prog-status-pill.is-improving {
    background: rgba(6, 182, 212, 0.18);
    color: #0E7490;
    border: 1px solid rgba(6, 182, 212, 0.38);
}
[data-theme="dark"] .prog-status-pill.is-improving {
    background: rgba(0, 210, 211, 0.20);
    color: #5EEAD4;
    border: 1px solid rgba(0, 210, 211, 0.42);
}

.prog-status-pill.is-plateau {
    background: rgba(255, 69, 58, 0.18);
    color: #C2410C;
    border: 1px solid rgba(255, 69, 58, 0.38);
}
[data-theme="dark"] .prog-status-pill.is-plateau {
    background: rgba(255, 94, 58, 0.22);
    color: #FF8A65;
    border: 1px solid rgba(255, 94, 58, 0.45);
}

.prog-status-sub {
    font-size: 0.68em;
    font-weight: 700;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.prog-header-right {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.prog-pr-gold-pill {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 0.68em;
    font-weight: 900;
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 55%, #B8860B 100%);
    color: #2B1B00;
    border: 1px solid rgba(255, 245, 190, 0.85);
    box-shadow: 0 2px 8px rgba(245, 159, 0, 0.28);
    white-space: nowrap;
}

.prog-flip-btn,
.prog-back-flip-btn {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
}

/* SVG ÇİZGİ GRAFİĞİ VE PR ALTIN NOKTA STİLLERİ */
.prog-chart-box {
    flex: 1;
    min-height: 0;
    width: 100%;
    margin: 8px 0;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.52);
    border: 1px solid rgba(var(--theme-rgb), 0.22);
    padding: 4px 6px 2px 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}
[data-theme="dark"] .prog-chart-box {
    background: rgba(8, 11, 16, 0.56);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.prog-chart-svg {
    width: 100%;
    height: 100%;
    max-height: 140px;
    display: block;
    overflow: visible;
}

.prog-grid-line {
    stroke: rgba(150, 150, 150, 0.16);
    stroke-width: 1;
    stroke-dasharray: 3 3;
}

.ex-chart-axis-lbl {
    font-size: 8.5px;
    font-weight: 700;
    fill: var(--text-secondary);
    opacity: 0.75;
}
.ex-chart-axis-lbl.is-active {
    fill: var(--text-main);
    font-weight: 900;
    opacity: 1;
}

.ex-chart-pt-val {
    font-size: 8.5px;
    font-weight: 800;
    fill: var(--text-main);
    opacity: 0.85;
}

/* PR OLAN NOKTA: PR ALTIN RENGİ (#FFD60A) */
.pr-gold-halo {
    fill: rgba(255, 214, 10, 0.34);
    stroke: rgba(255, 214, 10, 0.65);
    stroke-width: 1.2;
}
.pr-gold-dot {
    fill: #FFD60A !important;
    stroke: #FFF9DB !important;
    stroke-width: 2px !important;
}
.pr-gold-tag-bg {
    fill: #FFD60A;
    stroke: #B8860B;
    stroke-width: 0.8;
}
.pr-gold-tag-txt {
    font-size: 8px;
    font-weight: 900;
    fill: #2B1B00;
    letter-spacing: 0.2px;
}

/* Alt Telemetri Çubuğu (Seçili Nokta Detayı) */
.prog-telemetry-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(var(--theme-rgb), 0.20);
    flex-shrink: 0;
}
[data-theme="dark"] .prog-telemetry-bar {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.ptb-left {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}
.ptb-date {
    font-size: 0.70em;
    font-weight: 800;
    color: var(--text-secondary);
    white-space: nowrap;
}
.ptb-pr-tag {
    font-size: 0.66em;
    font-weight: 900;
    padding: 1px 6px;
    border-radius: 6px;
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 100%);
    color: #2B1B00;
    white-space: nowrap;
}
.ptb-pr-tag.is-volume-pr {
    background: linear-gradient(135deg, #FFD166 0%, #FF9F1C 100%);
    color: #2B1800;
    box-shadow: 0 0 8px rgba(255, 159, 28, 0.35);
}
.ptb-delta {
    font-size: 0.66em;
    font-weight: 800;
    color: var(--theme-accent);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ptb-right {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}
.ptb-metric-chip {
    font-size: 0.68em;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(var(--theme-rgb), 0.15);
    color: var(--text-main);
    border: 1px solid rgba(var(--theme-rgb), 0.28);
    white-space: nowrap;
}
.ptb-metric-chip.is-rir {
    color: var(--theme-accent);
}

/* ARKA YÜZ: EGZERSİZ ANALİZ LİSTESİ (YEŞİL/MAVİ GELİŞİM & TURUNCU/KIRMIZI PLATO) */
.prog-back-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid rgba(var(--theme-rgb), 0.22);
    flex-shrink: 0;
}

.prog-back-title-wrap {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.prog-back-title {
    font-size: 0.74em;
    font-weight: 900;
    letter-spacing: 0.5px;
    color: var(--text-main);
}

.prog-back-counts {
    display: flex;
    align-items: center;
    gap: 8px;
}

.pbc-chip {
    font-size: 0.64em;
    font-weight: 800;
}
.pbc-chip.is-improving { color: #10B981; }
[data-theme="dark"] .pbc-chip.is-improving { color: #22D3EE; }
.pbc-chip.is-plateau { color: #FF5E3A; }

.prog-back-list-scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-right: 2px;
}

.ex-progress-list-row {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 10px 7px 14px;
    border-radius: 12px;
    cursor: pointer;
    flex-shrink: 0;
    transition: transform 0.16s var(--ios-spring), border-color 0.16s ease, background-color 0.16s ease;
}

.ex-progress-list-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 5px;
    bottom: 5px;
    width: 3.5px;
    border-radius: 0 4px 4px 0;
}

/* Arka Yüz: Yeşil/Mavi Gelişim Satırı */
.ex-progress-list-row.is-improving {
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.14) 0%, rgba(16, 185, 129, 0.10) 100%);
    border: 1px solid rgba(6, 182, 212, 0.34);
}
[data-theme="dark"] .ex-progress-list-row.is-improving {
    background: linear-gradient(135deg, rgba(0, 210, 211, 0.16) 0%, rgba(16, 185, 129, 0.12) 100%);
    border: 1px solid rgba(0, 210, 211, 0.36);
}
.ex-progress-list-row.is-improving::before {
    background: linear-gradient(180deg, #00D2D3 0%, #10B981 100%);
}

/* Arka Yüz: Turuncu/Kırmızı Plato & Düşüş Satırı */
.ex-progress-list-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.15) 0%, rgba(255, 149, 0, 0.11) 100%);
    border: 1px solid rgba(255, 69, 58, 0.38);
}
[data-theme="dark"] .ex-progress-list-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.20) 0%, rgba(255, 159, 10, 0.14) 100%);
    border: 1px solid rgba(255, 94, 58, 0.44);
}
.ex-progress-list-row.is-plateau::before {
    background: linear-gradient(180deg, #FF453A 0%, #FF9F0A 100%);
}

.ex-progress-list-row:hover {
    transform: translateX(2px);
}
.ex-progress-list-row.is-selected {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
}

.eplr-left {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.eplr-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.eplr-name {
    font-size: 0.78em;
    font-weight: 800;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.eplr-status-pill {
    font-size: 0.60em;
    font-weight: 800;
    padding: 1.5px 7px;
    border-radius: 999px;
    white-space: nowrap;
    flex-shrink: 0;
}
.eplr-status-pill.pill-improving {
    background: rgba(6, 182, 212, 0.22);
    color: #0E7490;
}
[data-theme="dark"] .eplr-status-pill.pill-improving {
    background: rgba(0, 210, 211, 0.24);
    color: #5EEAD4;
}
.eplr-status-pill.pill-plateau {
    background: rgba(255, 69, 58, 0.24);
    color: #C2410C;
}
[data-theme="dark"] .eplr-status-pill.pill-plateau {
    background: rgba(255, 94, 58, 0.28);
    color: #FF8A65;
}

.eplr-sub-row {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.64em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.eplr-sub-row b {
    color: var(--text-main);
    font-weight: 800;
}
.eplr-pr-inline {
    color: #D97706;
    font-weight: 800;
}
[data-theme="dark"] .eplr-pr-inline {
    color: #FFD60A;
}
.eplr-chevron {
    color: var(--text-secondary);
    opacity: 0.7;
    flex-shrink: 0;
}


/* ----------------------------------------------------------------------------
   MADDE 2: ANTRENMAN GEÇMİŞİ DESTE KARTLARI TASARIMI & KAYMA BUGFIX
---------------------------------------------------------------------------- */
.history-deck-card.theme-blue {
    --theme-accent: #007AFF;
    --theme-accent-2: #5856D6;
    --theme-rgb: 10, 132, 255;
    --theme-rgb-2: 88, 86, 214;
}
.history-deck-card.theme-orange {
    --theme-accent: #FF8C00;
    --theme-accent-2: #FF3B30;
    --theme-rgb: 255, 149, 0;
    --theme-rgb-2: 255, 59, 48;
}
.history-deck-card.theme-green {
    --theme-accent: #28CD41;
    --theme-accent-2: #00C7BE;
    --theme-rgb: 48, 209, 88;
    --theme-rgb-2: 0, 199, 190;
}
.history-deck-card.theme-purple {
    --theme-accent: #AF52DE;
    --theme-accent-2: #5856D6;
    --theme-rgb: 191, 90, 242;
    --theme-rgb-2: 94, 92, 230;
}
.history-deck-card.theme-pink {
    --theme-accent: #FF2D55;
    --theme-accent-2: #AF52DE;
    --theme-rgb: 255, 55, 95;
    --theme-rgb-2: 191, 90, 242;
}
.history-deck-card.theme-yellow {
    --theme-accent: #E6A800;
    --theme-accent-2: #FF9500;
    --theme-rgb: 255, 204, 0;
    --theme-rgb-2: 255, 149, 0;
}
.history-deck-card.theme-cyan {
    --theme-accent: #0088CC;
    --theme-accent-2: #007AFF;
    --theme-rgb: 50, 173, 230;
    --theme-rgb-2: 10, 132, 255;
}

[data-theme="dark"] .history-deck-card.theme-blue   { --theme-accent: #3898FF; }
[data-theme="dark"] .history-deck-card.theme-orange { --theme-accent: #FF9F0A; }
[data-theme="dark"] .history-deck-card.theme-green  { --theme-accent: #30D158; }
[data-theme="dark"] .history-deck-card.theme-purple { --theme-accent: #CA7BFF; }
[data-theme="dark"] .history-deck-card.theme-pink   { --theme-accent: #FF4F79; }
[data-theme="dark"] .history-deck-card.theme-yellow { --theme-accent: #FFD60A; }
[data-theme="dark"] .history-deck-card.theme-cyan   { --theme-accent: #64D2FF; }

.history-deck-fan {
    flex: 1;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 6px 6px 14px 6px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* Destedeki kartlar Anasayfa gün kartları ile birebir aynı Aurora + Specular Rim Light tasarım dilini kullanır ve kayma yapmaz */
.history-deck-card,
.history-deck-card.theme-blue,
.history-deck-card.theme-orange,
.history-deck-card.theme-green,
.history-deck-card.theme-purple,
.history-deck-card.theme-pink,
.history-deck-card.theme-yellow,
.history-deck-card.theme-cyan {
    position: relative !important;
    margin: 0 !important;
    border-radius: 18px !important;
    padding: 12px 14px !important;
    cursor: pointer !important;
    transform: none !important;
    background:
        radial-gradient(115% 90% at 96% 6%, rgba(var(--theme-rgb, 10, 132, 255), 0.30) 0%, rgba(var(--theme-rgb, 10, 132, 255), 0.10) 40%, transparent 66%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2, 88, 86, 214), 0.20) 0%, transparent 60%),
        linear-gradient(155deg, #FFFFFF 0%, #F6F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.34) !important;
    box-shadow:
        0 6px 16px -4px rgba(var(--theme-rgb, 10, 132, 255), 0.14),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
    transition: transform 0.2s var(--ios-spring), border-color 0.2s ease, box-shadow 0.2s ease !important;
    flex-shrink: 0 !important;
}

[data-theme="dark"] .history-deck-card,
[data-theme="dark"] .history-deck-card.theme-blue,
[data-theme="dark"] .history-deck-card.theme-orange,
[data-theme="dark"] .history-deck-card.theme-green,
[data-theme="dark"] .history-deck-card.theme-purple,
[data-theme="dark"] .history-deck-card.theme-pink,
[data-theme="dark"] .history-deck-card.theme-yellow,
[data-theme="dark"] .history-deck-card.theme-cyan {
    background:
        radial-gradient(115% 92% at 96% 6%, rgba(var(--theme-rgb, 10, 132, 255), 0.44) 0%, rgba(var(--theme-rgb, 10, 132, 255), 0.14) 42%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2, 88, 86, 214), 0.26) 0%, transparent 60%),
        linear-gradient(160deg, #161820 0%, #0E1015 100%) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.40) !important;
    box-shadow:
        0 8px 20px -4px rgba(0, 0, 0, 0.5),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

.history-deck-card:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.72) !important;
    box-shadow:
        0 12px 24px -4px rgba(var(--theme-rgb, 10, 132, 255), 0.34),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.35) !important;
}

.history-deck-card.is-drawn {
    margin: 0 !important;
    transform: none !important;
    border: 1.5px solid var(--theme-accent, var(--accent-blue)) !important;
    box-shadow:
        0 10px 24px -4px rgba(var(--theme-rgb, 10, 132, 255), 0.42),
        0 0 0 2px rgba(var(--theme-rgb, 10, 132, 255), 0.20),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.40) !important;
    z-index: 5;
}

.hdc-top-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px !important;
}

.hdc-day-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    min-width: 0;
}

.hdc-day-name {
    font-size: 1.04em !important;
    font-weight: 900 !important;
    color: var(--text-main) !important;
    letter-spacing: -0.4px !important;
    line-height: 1.1;
}

.hdc-type-pill {
    font-size: 0.68em !important;
    padding: 2px 8px !important;
}

.hdc-right-meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    flex-shrink: 0;
}

.hdc-status-tag {
    font-size: 0.62em !important;
    font-weight: 900 !important;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
}
.history-deck-card.is-drawn .hdc-status-tag {
    color: var(--theme-accent, var(--accent-blue)) !important;
}

.hdc-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 6px;
    border-top: 1px solid rgba(var(--theme-rgb, 150, 150, 150), 0.16);
    font-size: 0.72em;
    font-weight: 700;
    color: var(--text-secondary);
}

.hdc-draw-hint {
    font-weight: 800;
    color: var(--theme-accent, var(--accent-blue)) !important;
}


/* ----------------------------------------------------------------------------
   MADDE 3: 2'Lİ VE 3'LÜ SÜPERSET SÜRÜKLEME İKONU (DRAG HANDLE) TAM ORTALAMA
---------------------------------------------------------------------------- */
.drag-handle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}
.drag-handle svg {
    display: block !important;
    flex-shrink: 0 !important;
}

.drag-handle.ss-floating-drag {
    position: absolute !important;
    left: 13px !important;
    z-index: 15 !important;
    width: 0 !important;
    opacity: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}

.day-card.expanded-active .drag-handle.ss-floating-drag {
    width: 24px !important;
    height: 28px !important;
    opacity: 1 !important;
    padding: 0 !important;
    pointer-events: auto !important;
}

/* 2'li süpersette 1. satırın alt sınırı (top: 100%) iki birleşik satırın tam dikey merkezidir */
.drag-handle.ss-floating-drag.ss-drag-center-2 {
    top: 100% !important;
    transform: translateY(-50%) !important;
}

/* 3'lü süpersette 2. (orta) satırın merkezi (top: 50%) üç birleşik satırın tam dikey merkezidir */
.drag-handle.ss-floating-drag.ss-drag-center-3 {
    top: 50% !important;
    transform: translateY(-50%) !important;
}


/* ----------------------------------------------------------------------------
   MADDE 4: GÜN ANTRENMAN KARTLARINDAKİ TARİHLERİN "DÜZENLE" İLE TAM HİZALANMASI
---------------------------------------------------------------------------- */
.day-card .day-header {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
}

.day-card .header-left {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 6px !important;
}

.day-card .workout-type-container {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 26px !important;
    margin-top: 0 !important;
}

.day-card .day-header-right {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    flex-shrink: 0 !important;
}

.day-card .day-card-date-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 26px !important;
    margin: 0 2px 0 0 !important;
    padding: 0 !important;
    font-size: 0.8em !important;
    font-weight: 700 !important;
    color: var(--text-secondary) !important;
    opacity: 0.78 !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}


/* ----------------------------------------------------------------------------
   MADDE 5: EGZERSİZ EKLEME / DÜZENLEME POP-UP (#promptModal) SET & TEKRAR SİMETRİSİ
---------------------------------------------------------------------------- */
#promptSetsRepsRow.prompt-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
    align-items: stretch;
}
#promptModal.is-cardio #promptSetsRepsRow,
#promptSetsRepsRow.is-hidden,
#promptSetsRepsRow[style*="display: none"] {
    display: none !important;
}

.ios-field-label-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 2px !important;
    box-sizing: border-box !important;
}

.ios-field-label-row .ios-field-label {
    padding-left: 2px !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.ios-field-label-row .ios-max-chip {
    margin: 0 !important;
    height: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

/* V31 EK GÖRSEL İNCE AYAR: ARKA YÜZ LİSTE KONTRASTI & GENİŞLETİLMİŞ SÜPERSET KÖPRÜ KONUMU */
/* Arka yüz kartın kendi Aurora gövdesini kullanır */

.day-card.expanded-active .exercise-item[data-ss-chain] .superset-energy-bridge {
    left: 38px !important;
}
.day-card.expanded-active .exercise-item[data-ss-chain] .ex-name-wrap {
    padding-left: 10px !important;
}




/* ============================================================================
   V33 BUGFIX & PERFORMANS GÜÇLENDİRMESİ:
   1. #progressCard TAM KART 3D FLIP, SIFIR BLUR & SABİT FONT AĞIRLIĞI (NO BOLD JUMP)
   2. #progressCard TAM GENİŞLİKLİ KESİNTİSİZ OKUNUR YORUM ŞERİDİ (.prog-comment-strip)
   3. BÜYÜK WIDGET (#skyWidget.expanded-active) FERAH, DENGELİ DAĞILIM & SIFIR SCROLL
   4. 120FPS GPU KATMAN TEMİZLİĞİ VE SOL MENÜ "EGZERSİZ VERİLERİ" BÖLMESİ
============================================================================ */

#weatherCanvas {
    height: 740px !important;
}

/* 1. ANA SAYFA ALT SATIR KART KONUMLARI (R2-C1: PR, R2-C2: TAKVİM, R2-C3: İLERLEME TAKİBİ) */
#prCard.pr-special-card {
    grid-row: 2 !important;
    grid-column: 1 !important;
}

#homeMiniCalendar.home-cal-card {
    grid-row: 2 !important;
    grid-column: 2 !important;
}

#progressCard.progress-card-wrapper,
.day-card.progress-card-wrapper {
    grid-row: 2 !important;
    grid-column: 3 !important;
}

/* 2. GENEL PERFORMANS: DİNLENME HALİNDEKİ KARTLARDA GEREKSİZ 3D PERSPECTIVE / GPU KATMANLARINI KALDIR */
/* 2. GENEL PERFORMANS: KARTLARDA 120FPS 3D FLIP PERSPEKTİF VE DONANIM HIZLANDIRMA */
.day-card {
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
}

.day-card.is-flipping {
    transition: none !important;
    animation: none !important;
    will-change: transform !important;
    pointer-events: none !important;
}

.day-card:not(:hover):not(.expanded-active):not(.is-flipping):not(.is-animating) {
    transform: none !important;
}

/* 3. #progressCard TAM KART FLIP MİMARİSİ, SIFIR BLUR & FONT SABİTLEME */
#progressCard.day-card.progress-card-wrapper {
    position: relative !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    padding: 0 !important;
}

/* Kart dururken (fare üzerinde olsa bile) hiçbir 3D/2D transform uygulanmaz -> Yazılar %100 jilet gibi net kalır */
#progressCard:not(.is-flipping):not(.is-animating),
#progressCard:hover:not(.is-flipping):not(.is-animating) {
    transform: none !important;
    perspective: none !important;
    -webkit-perspective: none !important;
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
    will-change: auto !important;
    filter: none !important;
}

/* Gelişimde (Yeşil/Mavi) ve Plato/Gerileme (Turuncu/Kırmızı) Gövde Teması Doğrudan #progressCard Üzerinde */
#progressCard.day-card.progress-theme-improving {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(6, 182, 212, 0.34) 0%, rgba(16, 185, 129, 0.16) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(10, 132, 255, 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #F7FEFF 0%, #ECFDF5 100%) !important;
    border: 1px solid rgba(6, 182, 212, 0.42) !important;
    box-shadow:
        0 12px 28px -6px rgba(6, 182, 212, 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] #progressCard.day-card.progress-theme-improving {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(0, 210, 211, 0.40) 0%, rgba(16, 185, 129, 0.20) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(10, 132, 255, 0.28) 0%, transparent 62%),
        linear-gradient(160deg, #101E26 0%, #0B141A 100%) !important;
    border: 1px solid rgba(0, 210, 211, 0.45) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.6),
        0 0 24px -6px rgba(0, 210, 211, 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

#progressCard.day-card.progress-theme-plateau {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(255, 69, 58, 0.34) 0%, rgba(255, 149, 0, 0.16) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(255, 149, 0, 0.24) 0%, transparent 62%),
        linear-gradient(155deg, #FFF9F6 0%, #FEF2F2 100%) !important;
    border: 1px solid rgba(255, 69, 58, 0.42) !important;
    box-shadow:
        0 12px 28px -6px rgba(255, 69, 58, 0.18),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] #progressCard.day-card.progress-theme-plateau {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(255, 69, 58, 0.42) 0%, rgba(255, 149, 0, 0.20) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(255, 159, 10, 0.28) 0%, transparent 62%),
        linear-gradient(160deg, #241313 0%, #150B0B 100%) !important;
    border: 1px solid rgba(255, 94, 58, 0.48) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.6),
        0 0 24px -6px rgba(255, 69, 58, 0.24),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

#progressCard.day-card:hover:not(.is-flipping) {
    border-color: rgba(var(--theme-rgb), 0.72) !important;
    box-shadow:
        0 18px 38px -6px rgba(var(--theme-rgb), 0.38),
        0 6px 16px -2px rgba(var(--theme-rgb), 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.32) !important;
}

/* Ön ve Arka Yüz: Saf 2D Yüzey (translateZ veya rotateY yok -> Blur ve Bold Sıçraması Yok!) */
#progressCard .progress-card-front,
#progressCard .progress-card-back {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 14px 16px !important;
    border-radius: 24px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: none !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
    will-change: auto !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden !important;
}

/* Dönüş sırasında ve sonrasında alt piksel (subpixel) font kalınlaşmasını/boldlaşmasını kesin olarak engeller */
#progressCard,
#progressCard * {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: geometricPrecision !important;
    font-synthesis: none !important;
}

/* Arka Yüz Liste Satırları: Dengeli, Boldlaşmayan Sabit Font Ağırlıkları */
#progressCard .ex-progress-list-row {
    transform: none !important;
    will-change: auto !important;
    transition: background-color 0.16s ease, border-color 0.16s ease !important;
}
#progressCard .ex-progress-list-row:hover {
    transform: none !important;
    border-color: rgba(var(--theme-rgb), 0.68) !important;
}
#progressCard .eplr-name {
    font-size: 0.80em !important;
    font-weight: 600 !important;
    letter-spacing: -0.1px !important;
}
#progressCard .eplr-status-pill {
    font-size: 0.61em !important;
    font-weight: 600 !important;
}
#progressCard .eplr-sub-row {
    font-size: 0.65em !important;
    font-weight: 500 !important;
}
#progressCard .eplr-sub-row b {
    font-weight: 600 !important;
}
#progressCard .eplr-pr-inline {
    font-weight: 600 !important;
}

/* 4. #progressCard ÖN YÜZ BAŞLIK & TAM GENİŞLİKLİ YORUM ŞERİDİ (.prog-comment-strip) */
.prog-front-header {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    padding-bottom: 7px !important;
    border-bottom: 1px solid rgba(var(--theme-rgb), 0.20) !important;
    flex-shrink: 0 !important;
}

.prog-front-top-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
}

.prog-ex-Selector-row {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.prog-ex-title {
    font-size: 1.02em !important;
    font-weight: 800 !important;
    letter-spacing: -0.3px !important;
    color: var(--text-main) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.prog-header-right {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    flex-shrink: 0 !important;
}

/* Tam Genişlikli, Kesilmeyen (No Ellipsis) Yorum Şeridi */
.prog-comment-strip {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 4.5px 9px !important;
    border-radius: 9px !important;
    font-size: 0.69em !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    color: var(--text-main) !important;
    background: rgba(255, 255, 255, 0.56) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.24) !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    box-sizing: border-box !important;
}

[data-theme="dark"] .prog-comment-strip {
    background: rgba(255, 255, 255, 0.055) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.30) !important;
    color: rgba(255, 255, 255, 0.92) !important;
}

.prog-comment-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
    background: #00D2D3;
}
.prog-comment-strip.is-plateau .prog-comment-dot {
    background: #FF5E3A;
}

.prog-comment-text {
    flex: 1;
    min-width: 0;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

/* Otomatik Kayarak Egzersiz Değiştirme Sahnesi (.prog-slide-stage) - Dinlenmede Transform Yok */
.prog-slide-stage {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    transform: none;
    will-change: auto;
}

@keyframes progSlideOutLeft {
    0% { opacity: 1; transform: translateX(0); }
    100% { opacity: 0; transform: translateX(-28px); }
}

@keyframes progSlideOutRight {
    0% { opacity: 1; transform: translateX(0); }
    100% { opacity: 0; transform: translateX(28px); }
}

@keyframes progSlideInFromRight {
    0% { opacity: 0; transform: translateX(28px); }
    100% { opacity: 1; transform: none; }
}

@keyframes progSlideInFromLeft {
    0% { opacity: 0; transform: translateX(-28px); }
    100% { opacity: 1; transform: none; }
}

.prog-slide-stage.prog-sliding-out-left {
    animation: progSlideOutLeft 0.18s cubic-bezier(0.4, 0, 1, 1) forwards !important;
}
.prog-slide-stage.prog-sliding-out-right {
    animation: progSlideOutRight 0.18s cubic-bezier(0.4, 0, 1, 1) forwards !important;
}
.prog-slide-stage.prog-sliding-in-right {
    animation: progSlideInFromRight 0.26s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}
.prog-slide-stage.prog-sliding-in-left {
    animation: progSlideInFromLeft 0.26s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}

.prog-chart-box {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    margin: 5px 0 !important;
    padding: 3px 6px 1px 6px !important;
}

.prog-bottom-stack {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex-shrink: 0;
}

.prog-carousel-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding-top: 1px;
    height: 8px;
}

.prog-carousel-dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    border: none;
    padding: 0;
    cursor: pointer;
    background: rgba(150, 150, 150, 0.32);
    transition: width 0.26s var(--ios-spring), background-color 0.26s ease, opacity 0.2s ease;
    opacity: 0.7;
}
.prog-carousel-dot:hover {
    opacity: 1;
}
.prog-carousel-dot.is-active {
    width: 18px;
    opacity: 1;
    background: #00D2D3;
}
.prog-carousel-dot.is-plateau-dot.is-active {
    background: #FF5E3A;
}

/* 5. BÜYÜK WIDGET (#skyWidget.expanded-active) FERAH, BASIK OLMAYAN ESTETİK DAĞILIM & SIFIR SCROLL */
.top-widget.expanded-active,
#skyWidget.expanded-active,
#skyWidget.expanded-active #flipInner,
.top-widget.expanded-active .widget-front {
    overflow: hidden !important;
    overflow-y: hidden !important;
    overflow-x: hidden !important;
    overscroll-behavior: none !important;
}

.top-widget.expanded-active .widget-front {
    padding: clamp(20px, 2.8vh, 28px) clamp(24px, 3.8vw, 36px) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 100% !important;
    box-sizing: border-box !important;
}

.top-widget.expanded-active .widget-top-bar {
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
}

.top-widget.expanded-active .widget-title-area h1 {
    font-size: clamp(1.65em, 2.6vh, 1.92em) !important;
    line-height: 1.15 !important;
    margin: 0 !important;
}

.top-widget.expanded-active .widget-sub-row {
    margin-top: 6px !important;
    gap: 10px !important;
}

.top-widget.expanded-active .weather-details {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 550px !important;
    margin: clamp(8px, 1.4vh, 14px) auto 0 auto !important;
    padding-bottom: 0 !important;
    gap: clamp(10px, 1.8vh, 16px) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.top-widget.expanded-active .weather-hero-wrap {
    margin: 0 !important;
    padding: 2px 0 !important;
    flex: 0 0 auto !important;
}

.top-widget.expanded-active .weather-hero-wrap .huge-temp {
    font-size: clamp(3.5em, 6.2vh, 4.25em) !important;
    line-height: 0.98 !important;
    margin: 0 !important;
    letter-spacing: -2px !important;
}

.top-widget.expanded-active .weather-hero-sub {
    margin-top: 6px !important;
    font-size: 0.92em !important;
}

/* 5 Günlük Tahmin Kartı: Ortadaki boşluğu ferah ve eşit aralıklarla doldurur (Asla basık durmaz) */
.top-widget.expanded-active .weather-forecast-card {
    margin: 0 !important;
    padding: clamp(8px, 1.4vh, 14px) 20px !important;
    border-radius: 20px !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-evenly !important;
    background: rgba(8, 16, 30, 0.30) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.top-widget.expanded-active .forecast-row-pro {
    flex: 1 1 0 !important;
    display: grid !important;
    grid-template-columns: 96px 38px 36px 1fr 36px !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 !important;
    min-height: 30px !important;
    font-size: 0.94em !important;
}

/* Alt 2x2 Bento Grid: Ferah, Dengeli ve Okunaklı */
.top-widget.expanded-active .weather-bento-grid {
    gap: clamp(10px, 1.5vh, 14px) !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
}

.top-widget.expanded-active .weather-bento-box {
    padding: clamp(10px, 1.6vh, 15px) 16px !important;
    border-radius: 18px !important;
    gap: 4px !important;
    min-height: clamp(76px, 10.6vh, 94px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    background: rgba(8, 16, 30, 0.30) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.top-widget.expanded-active .wb-header {
    font-size: 0.72em !important;
}

.top-widget.expanded-active .wb-val {
    font-size: clamp(1.28em, 2.2vh, 1.48em) !important;
    line-height: 1.08 !important;
}

.top-widget.expanded-active .wb-sub {
    font-size: 0.74em !important;
    line-height: 1.24 !important;
}



/* ============================================================================
   V35 DISCORD TARZI ÇERÇEVESİZ MASAÜSTÜ PENCERESİ (FRAMELESS EXE WINDOW)
============================================================================ */

.discord-window-frame {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 100002;
    border: none !important;
    box-sizing: border-box;
}

[data-theme="dark"] .discord-window-frame {
    border: none !important;
}

body.is-window-maximized .discord-window-frame {
    border: none !important;
}

.discord-titlebar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 32px;
    z-index: 100001;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0 0 12px;
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
    -webkit-app-region: drag;
    user-select: none;
    -webkit-user-select: none;
    box-sizing: border-box;
}

[data-theme="dark"] .discord-titlebar {
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.dtb-left {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 100%;
    min-width: 0;
    -webkit-app-region: no-drag !important;
    pointer-events: auto !important;
    position: relative;
    z-index: 100003;
}

.dtb-app-icon {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%);
    color: #FFFFFF;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(10, 132, 255, 0.35);
    flex-shrink: 0;
}

.dtb-app-title {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.7px;
    color: var(--text-main);
    opacity: 0.88;
    white-space: nowrap;
}

.dtb-pro-badge {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.5px;
    padding: 1.5px 6px;
    border-radius: 5px;
    background: rgba(10, 132, 255, 0.16);
    color: var(--accent-blue);
    border: 1px solid rgba(10, 132, 255, 0.34);
    flex-shrink: 0;
}

.dtb-sync-pill {
    -webkit-app-region: no-drag;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 6px;
    padding: 2.5px 9px;
    border-radius: 999px;
    background: rgba(48, 209, 88, 0.12);
    border: 1px solid rgba(48, 209, 88, 0.32);
    color: #15803D;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.2px;
    cursor: pointer;
    transition: transform 0.15s var(--ios-spring), background-color 0.15s ease, border-color 0.15s ease;
}

[data-theme="dark"] .dtb-sync-pill {
    background: rgba(48, 209, 88, 0.15);
    border-color: rgba(48, 209, 88, 0.38);
    color: #4ADE80;
}

.dtb-sync-pill:hover {
    background: rgba(48, 209, 88, 0.24);
    border-color: rgba(48, 209, 88, 0.65);
    transform: translateY(-0.5px);
}

.dtb-sync-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #30D158;
    box-shadow: 0 0 6px #30D158;
    flex-shrink: 0;
}

.dtb-drag-spacer {
    flex: 1 1 auto;
    height: 100%;
    -webkit-app-region: drag;
}

.dtb-window-controls {
    display: flex;
    align-items: stretch;
    height: 32px;
    -webkit-app-region: no-drag;
    flex-shrink: 0;
}

.dtb-win-btn {
    width: 46px;
    height: 32px;
    border: none;
    background: transparent;
    color: rgba(60, 60, 67, 0.78);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    margin: 0;
    outline: none;
    transition: background-color 0.12s ease, color 0.12s ease;
}

[data-theme="dark"] .dtb-win-btn {
    color: rgba(235, 235, 245, 0.76);
}

.dtb-win-btn.dtb-min-btn:hover,
.dtb-win-btn.dtb-max-btn:hover {
    background-color: rgba(0, 0, 0, 0.08);
    color: #000000;
}

[data-theme="dark"] .dtb-win-btn.dtb-min-btn:hover,
[data-theme="dark"] .dtb-win-btn.dtb-max-btn:hover {
    background-color: rgba(255, 255, 255, 0.09);
    color: #FFFFFF;
}

/* Discord İkonik Kırmızı Kapatma (X) Butonu */
.dtb-win-btn.dtb-close-btn:hover {
    background-color: #ED4245 !important;
    color: #FFFFFF !important;
}

.dtb-win-btn:active {
    opacity: 0.85;
}

/* Başlık Çubuğu Altındaki Elemanların Hizalaması */
.view-container {
    padding: 44px 20px 22px 20px !important;
}

.menu-btn {
    top: 44px !important;
    -webkit-app-region: no-drag !important;
}

/* Neden: Ana sayfadaki üst widget içeriğinin (tarih ve hava durumu başlığı) hamburger menü butonu ile çakışmasını önler */
.top-widget .widget-front {
    padding-left: 72px !important;
}
.top-widget .widget-back {
    padding-left: 72px !important;
}

.sidebar {
    top: 42px !important;
    bottom: 14px !important;
}

.calendar-header-actions {
    top: 44px !important;
}

.ios-dynamic-toast {
    top: 44px !important;
}

.watch-sync-pill {
    cursor: pointer !important;
    pointer-events: auto !important;
    transition: transform 0.15s var(--ios-spring), border-color 0.15s ease !important;
}
.watch-sync-pill:hover {
    transform: scale(1.04);
    border-color: var(--stat-accent) !important;
}


/* ============================================================================
   V36 EGZERSİZ VERİLERİ MERKEZİ, EN AZ 3 KAYIT KURALI & CANLI BİYOMETRİ STİLLERİ
============================================================================ */

/* 1. NÖTR TEMA: EN AZ 3 VERİ GİRİŞİ OLMAYAN (1 VEYA 2 KAYITLI) EGZERSİZLER İÇİN */
.day-card.progress-theme-neutral,
#progressCard.day-card.progress-theme-neutral {
    --theme-rgb: 50, 173, 230;
    --theme-rgb-2: 88, 86, 214;
    --theme-accent: #0284C7;
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(50, 173, 230, 0.30) 0%, rgba(88, 86, 214, 0.14) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(10, 132, 255, 0.20) 0%, transparent 62%),
        linear-gradient(155deg, #F8FAFC 0%, #EFF6FF 100%) !important;
    border: 1px solid rgba(50, 173, 230, 0.38) !important;
    box-shadow:
        0 12px 28px -6px rgba(50, 173, 230, 0.16),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] .day-card.progress-theme-neutral,
[data-theme="dark"] #progressCard.day-card.progress-theme-neutral {
    --theme-rgb: 100, 210, 255;
    --theme-rgb-2: 94, 92, 230;
    --theme-accent: #64D2FF;
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(50, 173, 230, 0.36) 0%, rgba(94, 92, 230, 0.20) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(10, 132, 255, 0.26) 0%, transparent 62%),
        linear-gradient(160deg, #131B28 0%, #0C111A 100%) !important;
    border: 1px solid rgba(100, 210, 255, 0.40) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.6),
        0 0 24px -6px rgba(50, 173, 230, 0.20),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

.prog-status-pill.is-neutral,
.eplr-status-pill.pill-neutral {
    background: rgba(50, 173, 230, 0.18);
    color: #0369A1;
    border: 1px solid rgba(50, 173, 230, 0.38);
}

[data-theme="dark"] .prog-status-pill.is-neutral,
[data-theme="dark"] .eplr-status-pill.pill-neutral {
    background: rgba(100, 210, 255, 0.20);
    color: #7DD3FC;
    border: 1px solid rgba(100, 210, 255, 0.42);
}

.prog-comment-strip.is-neutral .prog-comment-dot {
    background: #38BDF8;
}

.prog-carousel-dot.is-neutral-dot.is-active {
    background: #38BDF8;
}

.ex-progress-list-row.is-neutral {
    background: linear-gradient(135deg, rgba(50, 173, 230, 0.14) 0%, rgba(88, 86, 214, 0.10) 100%);
    border: 1px solid rgba(50, 173, 230, 0.34);
}
[data-theme="dark"] .ex-progress-list-row.is-neutral {
    background: linear-gradient(135deg, rgba(100, 210, 255, 0.16) 0%, rgba(94, 92, 230, 0.12) 100%);
    border: 1px solid rgba(100, 210, 255, 0.36);
}
.ex-progress-list-row.is-neutral::before {
    background: linear-gradient(180deg, #38BDF8 0%, #6366F1 100%);
}

/* 2. RADİKAL VURGU ROZETİ (ANA SAYFA & EGZERSİZ VERİLERİ) */
.prog-radical-badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 7px;
    border-radius: 999px;
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.3px;
    white-space: nowrap;
    flex-shrink: 0;
}

.prog-radical-badge.is-extra-gain {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.22) 0%, rgba(6, 182, 212, 0.22) 100%);
    color: #047857;
    border: 1px solid rgba(16, 185, 129, 0.45);
}
[data-theme="dark"] .prog-radical-badge.is-extra-gain {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.26) 0%, rgba(0, 210, 211, 0.24) 100%);
    color: #6EE7B7;
    border-color: rgba(52, 211, 153, 0.5);
}

.prog-radical-badge.is-serious-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.22) 0%, rgba(255, 159, 10, 0.22) 100%);
    color: #B91C1C;
    border: 1px solid rgba(255, 69, 58, 0.45);
}
[data-theme="dark"] .prog-radical-badge.is-serious-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.28) 0%, rgba(255, 159, 10, 0.24) 100%);
    color: #FCA5A5;
    border-color: rgba(255, 94, 58, 0.52);
}

.prog-open-all-btn {
    width: 100%;
    margin-top: 6px;
    padding: 8px 12px;
    border-radius: 11px;
    border: 1px solid rgba(var(--theme-rgb), 0.36);
    background: rgba(var(--theme-rgb), 0.14);
    color: var(--text-main);
    font-size: 0.72em;
    font-weight: 800;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-shrink: 0;
    transition: background-color 0.18s ease, border-color 0.18s ease;
}
.prog-open-all-btn:hover {
    background: rgba(var(--theme-rgb), 0.26);
    border-color: rgba(var(--theme-rgb), 0.65);
}

/* 3. SOL MENÜ "EGZERSİZ VERİLERİ" SAYFASI (#exerciseDataView) */
#exerciseDataView {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
}

.exdata-top-shell {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto 14px auto;
    padding-left: 56px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex-shrink: 0;
}

.exdata-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.exdata-title-cluster {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.exdata-subtitle-text {
    font-size: 0.84em;
    font-weight: 600;
    color: var(--text-secondary);
}

.exdata-kpi-strip {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.exdata-kpi-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 13px;
    font-size: 0.75em;
    font-weight: 800;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 0, 0, 0.08);
    color: var(--text-main);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
[data-theme="dark"] .exdata-kpi-pill {
    background: rgba(22, 25, 34, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35);
}
.exdata-kpi-pill b {
    font-size: 1.08em;
    font-weight: 900;
}
.exdata-kpi-pill.kpi-radical b { color: #F59E0B; }
.exdata-kpi-pill.kpi-improving b { color: #10B981; }
[data-theme="dark"] .exdata-kpi-pill.kpi-improving b { color: #22D3EE; }
.exdata-kpi-pill.kpi-plateau b { color: #FF5E3A; }
.exdata-kpi-pill.kpi-neutral b { color: #38BDF8; }

.exdata-controls-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.exdata-filter-pills {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 4px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(0, 0, 0, 0.07);
}
[data-theme="dark"] .exdata-filter-pills {
    background: rgba(20, 22, 30, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.09);
}

.exdata-filter-btn {
    padding: 6px 11px;
    border-radius: 10px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.74em;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.18s var(--ios-spring);
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}
.exdata-filter-btn:hover {
    color: var(--text-main);
}
.exdata-filter-btn.active {
    background: var(--accent-blue);
    color: #FFFFFF;
    box-shadow: 0 3px 10px rgba(10, 132, 255, 0.32);
}

.exdata-search-sort-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.exdata-search-box {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(0, 0, 0, 0.08);
    min-width: 240px;
}
[data-theme="dark"] .exdata-search-box {
    background: rgba(22, 25, 34, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.10);
}
.exdata-search-input {
    border: none;
    background: transparent;
    color: var(--text-main);
    font-size: 0.80em;
    font-weight: 600;
    outline: none;
    flex: 1;
    min-width: 0;
}
.exdata-search-clear {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: none;
    background: rgba(150, 150, 150, 0.25);
    color: var(--text-main);
    font-size: 0.80em;
    font-weight: 900;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.exdata-sort-select {
    padding: 7px 11px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(0, 0, 0, 0.08);
    color: var(--text-main);
    font-size: 0.76em;
    font-weight: 800;
    outline: none;
    cursor: pointer;
}
[data-theme="dark"] .exdata-sort-select {
    background: rgba(22, 25, 34, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.10);
}

/* Egzersiz Verileri Kart Izgarası: Ana Sayfadaki Grafik Kartı Formatında 3 Sütunlu Bento Grid */
.exdata-cards-scroll {
    width: 100%;
    max-width: 1400px;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding: 4px 4px 28px 4px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 295px;
    gap: 18px;
    align-content: start;
}

@media (max-width: 1180px) {
    .exdata-cards-scroll {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 760px) {
    .exdata-cards-scroll {
        grid-template-columns: 1fr;
    }
}

.day-card.ex-data-card {
    grid-row: auto !important;
    grid-column: auto !important;
    height: 295px !important;
    min-height: 295px !important;
    max-height: 295px !important;
    position: relative !important;
    border-radius: 24px !important;
    overflow: hidden !important;
}

.day-card.ex-data-card.is-highlighted-card {
    box-shadow:
        0 14px 34px -6px rgba(var(--theme-rgb), 0.30),
        0 0 0 1.5px rgba(var(--theme-rgb), 0.55),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.32) !important;
}

.ex-data-card .progress-card-front,
.ex-data-card .progress-card-back {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 13px 15px !important;
    border-radius: 24px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.exdata-cat-tag {
    font-size: 0.60em;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(150, 150, 150, 0.16);
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.4px;
    flex-shrink: 0;
}

.exdata-session-count-pill {
    font-size: 0.64em;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(var(--theme-rgb), 0.14);
    color: var(--theme-accent);
    white-space: nowrap;
}


   V37 GÜNCELLEMESİ:
   1. 4 VERİ KARTINDA SADECE SAĞ ÜST "APPLE SAĞLIK" BUTONU TIKLANABİLİR
   2. EGZERSİZ GELİŞİM & EGZERSİZ VERİLERİ TEK KELİMELİK BÜYÜK DURUM ROZETLERİ
============================================================================ */
.small-stat-card.watch-stat-card {
    cursor: default !important;
}

.small-stat-card.watch-stat-card:hover {
    transform: none !important;
}

button.watch-sync-pill,
.watch-sync-pill {
    appearance: none;
    -webkit-appearance: none;
    font-family: inherit;
    cursor: pointer !important;
    pointer-events: auto !important;
    padding: 3.5px 9px !important;
    font-size: 0.65em !important;
    font-weight: 800 !important;
    transition: transform 0.16s var(--ios-spring), background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
}

button.watch-sync-pill:hover,
.watch-sync-pill:hover {
    transform: translateY(-1px) scale(1.04) !important;
    background: rgba(var(--theme-rgb), 0.24) !important;
    border-color: var(--stat-accent) !important;
    box-shadow: 0 4px 10px rgba(var(--theme-rgb), 0.25) !important;
}

button.watch-sync-pill:active,
.watch-sync-pill:active {
    transform: scale(0.95) !important;
}

/* Ana Sayfa Gelişim Kartı & Egzersiz Verileri Kartları Sol Üst Tek Kelimelik Büyük Rozetler */
#progressCard .prog-comment-strip,
.ex-data-card .prog-comment-strip,
.prog-comment-strip {
    padding: 5.5px 10px !important;
    gap: 8px !important;
    border-radius: 11px !important;
    font-size: 12px !important;
    align-items: center !important;
}

#progressCard .prog-radical-badge,
#progressCard .prog-status-pill,
.ex-data-card .prog-radical-badge,
.ex-data-card .prog-status-pill,
.prog-radical-badge,
.prog-status-pill {
    font-size: 12.5px !important;
    font-weight: 800 !important;
    padding: 3.5px 11px !important;
    border-radius: 8px !important;
    letter-spacing: 0.2px !important;
    line-height: 1.2 !important;
    flex-shrink: 0 !important;
}

#progressCard .prog-comment-text,
.ex-data-card .prog-comment-text,
.prog-comment-text {
    font-size: 11.8px !important;
    font-weight: 600 !important;
    line-height: 1.28 !important;
}

#progressCard .eplr-status-pill,
.ex-data-card .eplr-status-pill,
.eplr-status-pill {
    font-size: 11.5px !important;
    font-weight: 800 !important;
    padding: 3px 9.5px !important;
    border-radius: 8px !important;
}

.ex-data-card .exdata-cat-tag,
.exdata-cat-tag {
    font-size: 11px !important;
    font-weight: 800 !important;
    padding: 3px 8px !important;
    border-radius: 7px !important;
}


/* ============================================================================
   1. BÖLÜM: YENİ 4 ADET İOS VERİ KARTI STİLLERİ (.small-stats-grid)
   (Kalite Skoru, Kesintisiz Plan Serisi, Taşınan Sezon Kartı, Haftalık Tonaj)
============================================================================ */

/* Neden: Sağ üstteki eski sezon halkası alanı boş bırakıldı; sezon kartı 3. karta taşındı */
.top-widget-wrapper > #seasonRingContainer,
#seasonRingContainer.ios-season-top-widget {
    display: none !important;
}

/* Neden: 4 yeni kartın her birine kendine özgü iOS sistem vurgu rengi tanımlanır */
.small-stat-card.stat-quality {
    --theme-rgb: 10, 132, 255;
    --stat-accent: #0A84FF;
}
.small-stat-card.stat-series {
    --theme-rgb: 48, 209, 88;
    --stat-accent: #30D158;
}
.small-stat-card.stat-season {
    --theme-rgb: 191, 90, 242;
    --stat-accent: #BF5AF2;
}
.small-stat-card.stat-tonnage {
    --theme-rgb: 255, 159, 10;
    --stat-accent: #FF9F0A;
}

/* Neden: 3. kart olan Sezon Kartı tıklanabilir olduğu için iOS dokunma ve hover geri bildirimi alır */
.small-stat-card.stat-season.is-clickable-stat-card {
    cursor: pointer !important;
    transition: transform 0.28s var(--ios-spring), box-shadow 0.28s var(--ios-spring), border-color 0.24s ease !important;
}
.small-stat-card.stat-season.is-clickable-stat-card:hover {
    transform: translateY(-3px) scale(1.012) !important;
    border-color: rgba(var(--theme-rgb), 0.62) !important;
}
.small-stat-card.stat-season.is-clickable-stat-card:active {
    transform: scale(0.975) !important;
}

/* Neden: 3. kart içindeki dairesel sezon progress halkasını diğer kartların sol üst ikonuyla aynı hizada ve boyutta tutar */
.stat-season-ring-mini {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.stat-season-ring-mini .s-ring-svg {
    width: 100% !important;
    height: 100% !important;
    filter: drop-shadow(0 0 5px rgba(var(--theme-rgb), 0.42)); /* Neden: Sezon halkasına yumuşak iOS ışıması verir */
}
.stat-season-ring-mini .s-ring-track {
    stroke: rgba(var(--theme-rgb), 0.18) !important;
    stroke-width: 3.6 !important;
}
.stat-season-ring-mini .s-ring-value {
    stroke-width: 3.6 !important;
    stroke-linecap: round !important;
}
.stat-season-ring-mini .s-ring-pct {
    font-size: 0.64em !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    color: var(--text-main) !important;
}

/* Neden: Sezon ismi uzun olduğunda 3. kartta taşma yapmadan zarifçe sığmasını sağlar */
.stat-season-title-val {
    font-size: 1.12em !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
}

/* Neden: Bilgi amaçlı sağ üst rozetlerde gereksiz buton tıklama hissini kaldırıp cam pill dokusu verir */
.watch-sync-pill.is-static-pill {
    cursor: default !important;
    pointer-events: none !important;
    background: rgba(var(--theme-rgb), 0.13) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.28) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}


/* ============================================================================
   2. BÖLÜM: GENEL ARAYÜZ GÖRSEL KALİTE VE PREMİUM iOS RAFİNELERİ
   (Layout ve hiyerarşi korunarak sadece tipografi, gölge, kontrast ve doku iyileştirildi)
============================================================================ */

/* 1. TİPOGRAFİ RAFİNESİ */
:root,
[data-theme="dark"] {
    /* Neden: Katmanlı ambient + contact shadow mimarisiyle kartlara doğal derinlik kazandırıldı */
    --card-shadow:
        0 10px 28px -6px rgba(0, 0, 0, 0.06),
        0 2px 6px -1px rgba(0, 0, 0, 0.035),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
    --card-hover-shadow:
        0 18px 38px -8px rgba(0, 0, 0, 0.10),
        0 4px 12px -2px rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

[data-theme="dark"] {
    /* Neden: Dark mode'da gölgeler daha yumuşak/doğal, ikincil metin kontrastı ise daha net ve okunabilir yapıldı */
    --text-secondary: rgba(235, 235, 245, 0.68);
    --card-border: rgba(255, 255, 255, 0.085);
    --card-shadow:
        0 14px 34px -8px rgba(0, 0, 0, 0.52),
        0 3px 10px -2px rgba(0, 0, 0, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);
    --card-hover-shadow:
        0 22px 46px -10px rgba(0, 0, 0, 0.68),
        0 6px 16px -3px rgba(0, 0, 0, 0.42),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

/* Neden: Sayfa ve kart başlıklarına Apple SF Pro Display standardında sıkı harf aralığı ve dengeli ağırlık verildi */
.page-title {
    font-weight: 700 !important;
    letter-spacing: -0.032em !important;
    line-height: 1.15 !important;
}

.day-card .day-title span {
    font-weight: 800 !important;
    letter-spacing: -0.028em !important;
    line-height: 1.18 !important;
}

/* Neden: Küçük etiketler (RIR, set×tekrar, tarih, rozet metinleri) tabular-nums ve net kontrast ile daha zarif hale getirildi */
.day-card .day-card-date-badge {
    font-size: 0.78em !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    font-variant-numeric: tabular-nums !important;
    opacity: 0.86 !important;
}

.ex-weight-pill,
.ex-reps-pill,
.rir-btn,
.ptb-metric-chip,
.exdata-session-count-pill {
    font-variant-numeric: tabular-nums !important;
    letter-spacing: -0.01em !important;
    line-height: 1.25 !important;
}

/* 2. GÖLGE, BORDER VE DERİNLİK & 3. RENK VE KONTRAST İNCE AYARI */
/* Neden: Egzersiz ağırlık ve tekrar rozetlerinin kenar keskinliği, iç highlight'ı ve doygunluğu yükseltildi */
.ex-weight-pill {
    font-weight: 700 !important;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.15) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.32) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.24) !important;
}
[data-theme="dark"] .ex-weight-pill {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.22) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.42) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

.ex-reps-pill {
    font-weight: 600 !important;
    opacity: 0.92 !important;
    border: 1px solid rgba(150, 150, 150, 0.20) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

/* Neden: Durum göstergelerinin (Gelişim, Düşüş, Plato, PR) doygunluğu ve kenar zarafeti güçlendirildi */
.prog-radical-badge.is-extra-gain,
.prog-status-pill.is-improving,
.eplr-status-pill.pill-improving {
    box-shadow: 0 2px 6px rgba(6, 182, 212, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.prog-radical-badge.is-serious-plateau,
.prog-status-pill.is-plateau,
.eplr-status-pill.pill-plateau {
    box-shadow: 0 2px 6px rgba(255, 69, 58, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.20) !important;
}

/* 4. MİKRO-ETKİLEŞİM & 5. GENEL YÜZEY VE DOKUSAL KALİTE */
/* Neden: 4 küçük istatistik kartına yumuşak mat-cam derinliği, üst kenar specular highlight ve akıcı yay geçişi eklendi */
.small-stat-card.watch-stat-card {
    background:
        radial-gradient(120% 100% at 96% 4%, rgba(var(--theme-rgb), 0.22) 0%, rgba(var(--theme-rgb), 0.06) 46%, transparent 70%),
        linear-gradient(160deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.28) !important;
    box-shadow:
        0 10px 26px -6px rgba(var(--theme-rgb), 0.12),
        0 2px 6px rgba(0, 0, 0, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    transition: transform 0.28s var(--ios-spring), box-shadow 0.28s var(--ios-spring), border-color 0.24s ease !important;
}

[data-theme="dark"] .small-stat-card.watch-stat-card {
    background:
        radial-gradient(120% 100% at 96% 4%, rgba(var(--theme-rgb), 0.32) 0%, rgba(var(--theme-rgb), 0.10) 48%, transparent 72%),
        linear-gradient(165deg, #191B24 0%, #101218 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 14px 30px -8px rgba(0, 0, 0, 0.56),
        0 0 18px -6px rgba(var(--theme-rgb), 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
}

.watch-stat-val {
    font-size: 1.34em !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.12 !important;
    font-variant-numeric: tabular-nums !important;
}

.watch-stat-label {
    font-size: 0.67em !important;
    font-weight: 700 !important;
    letter-spacing: 0.045em !important;
    opacity: 0.88 !important;
}

.watch-stat-sub {
    font-size: 0.63em !important;
    font-weight: 600 !important;
    letter-spacing: -0.005em !important;
    font-variant-numeric: tabular-nums !important;
}


/* ============================================================================
   3. BÖLÜM: ANA SAYFADAKİ ÜST WİDGET (.top-widget) GÖRSEL KALİTE GÜNCELLEMESİ
   (Fonksiyonlar ve veri bağları %100 korunarak iOS Weather sadeliği ve derinliği uygulandı)
============================================================================ */

/* 1. YÜZEY VE DERİNLİK & 7. MİKRO-ETKİLEŞİM */
/* Neden: Collapsed halde 28px border-radius korunarak çok katmanlı ambient shadow ve üst iç cam yansıması (inner highlight) güçlendirildi */
.top-widget #flipInner {
    border-radius: 28px !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.22),
        0 4px 12px -2px rgba(0, 0, 0, 0.12) !important;
    transition: transform 0.52s var(--ios-spring), box-shadow 0.38s var(--ios-spring) !important;
}

[data-theme="dark"] .top-widget #flipInner {
    /* Neden: Dark mode'da daha zengin ama abartısız, doğal derinlik veren ambient gölge */
    box-shadow:
        0 18px 42px -8px rgba(0, 0, 0, 0.58),
        0 4px 14px -2px rgba(0, 0, 0, 0.36) !important;
}

.top-widget .widget-front {
    /* Neden: İnce 1px cam kenarlığı ve üst kenar specular highlight ile gerçek iOS native widget dokusu */
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.36),
        inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}

.top-widget:hover:not(.expanded-active):not(.is-flipped) {
    /* Neden: Mevcut spring eğrisi korunarak daha tatmin edici, zarif hover kalkışı */
    transform: translateY(-2.5px) scale(1.003) !important;
}

.top-widget:active:not(.expanded-active):not(.is-flipped) {
    /* Neden: Tıklama anında iOS native kart hissiyatı veren yumuşak press feedback */
    transform: scale(0.986) !important;
}

/* 2. SKY GRADIENT & ARKA PLAN */
/* Neden: Mevcut sky-morning, sky-day, sky-evening, sky-night renk kimliği korunarak geçişler çok duraklı (multi-stop) doğal atmosferik iOS Weather tonlarına yumuşatıldı */
.sky-sunrise .widget-front {
    background: linear-gradient(165deg, #182344 0%, #3A3261 28%, #884463 56%, #D66E57 82%, #F3B062 100%) !important;
}
.sky-morning .widget-front {
    background: linear-gradient(165deg, #1354A2 0%, #2678CF 38%, #52A7E8 74%, #8ED0F9 100%) !important;
}
/* 1. SİNEMATİK 8 DİURNAL GÖKYÜZÜ ARA SAATLERİ (Apple Weather & VisionOS Atmosferi) */
.sky-deep-night .widget-front {
    background: linear-gradient(168deg, #03060E 0%, #08101E 42%, #0E1A2E 78%, #162640 100%) !important;
}
.sky-blue-hour .widget-front {
    background: linear-gradient(165deg, #081326 0%, #152242 40%, #2A284D 75%, #423058 100%) !important;
}
.sky-golden-dawn .widget-front {
    background: linear-gradient(165deg, #161D3A 0%, #48233C 35%, #923D3A 68%, #DB7244 88%, #F4B258 100%) !important;
}
.sky-morning .widget-front {
    background: linear-gradient(165deg, #16567A 0%, #2275A8 42%, #58BDE8 82%, #7DE3ED 100%) !important;
}
.sky-zenith .widget-front,
.sky-noon .widget-front,
.sky-day .widget-front {
    background: linear-gradient(165deg, #005A99 0%, #007ACC 40%, #1EA5FC 76%, #72CEFB 100%) !important;
}
/* ALTIN SAAT (İkindi): Referans ekran görüntüsüyle birebir aynı - Sol sıcak kehribardan sağ alacakaranlık laciverte yatay geçiş! */
.sky-golden-hour .widget-front {
    background: linear-gradient(90deg, #582A0C 0%, #823E15 18%, #4A2832 46%, #18233C 76%, #0A1324 100%) !important;
}
.sky-sunset .widget-front,
.sky-evening .widget-front {
    background: linear-gradient(165deg, #140E26 0%, #441436 30%, #982638 60%, #DF5628 85%, #F4983E 100%) !important;
}
.sky-dusk .widget-front,
.sky-night .widget-front {
    background: linear-gradient(168deg, #060D1A 0%, #0E1A2E 45%, #182B48 80%, #22385C 100%) !important;
}

/* Hava durumu atmosfer filtreleri */
.top-widget.overcast .widget-front { filter: saturate(0.72) brightness(0.88); }
.top-widget.stormy .widget-front { filter: saturate(0.65) brightness(0.68) contrast(1.15); }
.top-widget.fog .widget-front { filter: saturate(0.60) brightness(0.92); }

/* Neden: Atmosferik bulut/yağış katmanı aşırı keskin durmaması için hafifçe yumuşatıldı */
#weatherCanvas {
    opacity: 0.92 !important;
}

/* 3. TİPOGRAFİ (ÜST WİDGET) */
/* Neden: Tarih, konum ve alt bilgilerin font-weight, letter-spacing ve satır yüksekliği iOS standartlarına göre dengelendi */
.widget-title-area h1#currentDateText {
    font-size: 1.42em !important;
    font-weight: 700 !important;
    letter-spacing: -0.026em !important;
    line-height: 1.18 !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.18) !important;
}

.widget-title-area .widget-sub-row p {
    font-size: 0.88em !important;
    font-weight: 500 !important;
    letter-spacing: -0.008em !important;
    line-height: 1.3 !important;
    opacity: 0.94 !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.16) !important;
}

/* 4. PİLL'LER VE KÜÇÜK BİLEŞENLER */
/* Neden: "İdeal Antrenman Havası" etiketi ve Bugün/Yarın mini forecast kapsüllerinin cam opasitesi, kenar netliği ve yazı kontrastı yükseltildi */
/* 2. SOL AKILLI ANTRENMAN HAPI & SAĞ BUZLU CAM KAPSÜLLER (VisionOS Seviyesi) */
.weather-climate-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 13px !important;
    border-radius: 999px !important;
    font-size: 0.75em !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    background: rgba(255, 149, 0, 0.22) !important;
    border: 1px solid rgba(255, 179, 64, 0.40) !important;
    box-shadow:
        0 2px 10px rgba(0, 0, 0, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.36) !important;
    color: #FFFFFF !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
}

.pill-glow-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    display: inline-block;
}
.pill-glow-orange { background: #FF9500; box-shadow: 0 0 8px #FF9500; }
.pill-glow-amber  { background: #FFB340; box-shadow: 0 0 8px #FFB340; }
.pill-glow-purple { background: #BF5AF2; box-shadow: 0 0 8px #BF5AF2; }
.pill-glow-blue   { background: #0A84FF; box-shadow: 0 0 8px #0A84FF; }
.pill-glow-cyan   { background: #64D2FF; box-shadow: 0 0 8px #64D2FF; }
.pill-glow-slate  { background: #8E8E93; box-shadow: 0 0 8px #8E8E93; }

/* Sağ Taraf: BUGÜN ve YARIN Buzlu Cam Kapsülleri */
.widget-forecast-capsule {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 7px 16px !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    box-shadow:
        0 4px 16px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    transition: transform 0.22s var(--ios-spring), background-color 0.2s ease !important;
}

.widget-forecast-capsule:hover {
    transform: translateY(-2px) scale(1.02) !important;
    background: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.40) !important;
}

.wf-cap-emoji {
    font-size: 1.40em !important;
    line-height: 1 !important;
    filter: drop-shadow(0 2px 5px rgba(0,0,0,0.25)) !important;
}

.wf-cap-day {
    font-size: 0.64em !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    opacity: 0.84 !important;
}

.wf-cap-temp {
    font-size: 1.05em !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    font-variant-numeric: tabular-nums !important;
}

.wf-cap-temp small {
    font-size: 0.76em !important;
    opacity: 0.70 !important;
    font-weight: 600 !important;
    margin-left: 3px !important;
}

/* Sağ Taraf: EKG Nabız / CNS Flip Butonu */
.fatigue-btn {
    width: 44px !important;
    height: 44px !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    box-shadow:
        0 4px 16px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: transform 0.20s ease, background 0.20s ease !important;
}
.fatigue-btn:hover {
    transform: translateY(-2px) scale(1.04) !important;
    background: rgba(255, 255, 255, 0.24) !important;
}

/* 6. EXPAND DURUMU (AÇILIR HAVA DURUMU DETAYLARI) */
/* Neden: Expanded halde huge-temp, 5 günlük tahmin satırları ve bento kutuları daha ferah, dengeli ve iOS Weather kalitesinde hizalandı */
.top-widget.expanded-active .weather-hero-wrap .huge-temp {
    font-weight: 200 !important;
    letter-spacing: -0.04em !important;
    font-variant-numeric: tabular-nums !important;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.22) !important;
}

.top-widget.expanded-active .weather-hero-sub {
    font-size: 0.92em !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em !important;
    opacity: 0.95 !important;
}

.top-widget.expanded-active .weather-forecast-card,
.top-widget.expanded-active .weather-bento-box {
    background: rgba(10, 18, 34, 0.32) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.26) !important;
}

.top-widget.expanded-active .forecast-row-pro {
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.16) !important;
    font-variant-numeric: tabular-nums !important;
}
.top-widget.expanded-active .forecast-row-pro:last-child {
    border-bottom: none !important;
}

.top-widget.expanded-active .wb-header {
    font-weight: 700 !important;
    letter-spacing: 0.055em !important;
    opacity: 0.82 !important;
}

.top-widget.expanded-active .wb-val {
    font-weight: 700 !important;
    letter-spacing: -0.03em !important;
    font-variant-numeric: tabular-nums !important;
}

.top-widget.expanded-active .wb-sub {
    font-weight: 500 !important;
    opacity: 0.86 !important;
}


/* Neden: 4 küçük kartın alt satır metinlerinin taşmadan tek satırda hizalı durmasını sağlar */
.watch-stat-sub {
    gap: 6px !important;
    white-space: nowrap !important;
}
.watch-stat-sub span,
.watch-stat-sub b {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Neden: Üst widget sağındaki Bugün/Yarın mini forecast kapsüllerinin güneş efektleri üzerinde bile yüksek kontrastla okunmasını sağlar */
.widget-forecast-capsule {
    background: rgba(12, 24, 48, 0.28) !important;
    backdrop-filter: blur(12px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(160%) !important;
    border: 1px solid rgba(255, 255, 255, 0.32) !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.32) !important;
}


/* ============================================================================
   V39 60/120 FPS SENIOR PERFORMANCE & GPU COMPOSITING ENGINE
   (Görsel tasarım, renkler, gölgeler ve yay animasyonları %100 korunarak
   GPU katmanları, backdrop-filter, content-visibility ve композитор optimize edildi)
============================================================================ */

/* 1. COMPOSITING & GPU KATMAN YÖNETİMİ */
/* Neden: Dinlenme halindeki görünüm konteynerlerinde ve #flipInner üzerinde gereksiz kalıcı GPU doku (will-change) tahsisini serbest bırakır */
.view-container:not(.is-transitioning),
.calendar-view-wrapper:not(.is-transitioning),
#flipInner:not(.is-flipping) {
    will-change: auto !important;
}

/* Neden: Sadece aktif 3D dönüş, kayma veya büyüme/küçülme esnasında GPU hızlandırma katmanı (will-change) açılır */
#flipInner.is-flipping,
.day-card.is-flipping,
.prog-slide-stage.prog-sliding-out-left,
.prog-slide-stage.prog-sliding-out-right,
.prog-slide-stage.prog-sliding-in-right,
.prog-slide-stage.prog-sliding-in-left,
.history-card-wrapper.active.deck-draw-anim {
    will-change: transform, opacity !important;
}

/* Neden: Geçmişteki 20 kartın tamamında preserve-3d tutmak yerine düz (flat) katman kullanılır; gereksiz 3D yüzey birleştirmelerini önler */
.history-card-wrapper:not(.deck-draw-anim) {
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
}

/* 2. BACKDROP-FILTER & BLUR MALİYETİ OPTİMİZASYONU */
/* Neden: 60fps çalışan #weatherCanvas üzerinde her karede 2 kez gerçek zamanlı Gaussian blur hesaplanmasını önler;
   birebir aynı buzlu cam kontrastını çok duraklı yarı saydam iOS cam gradyanı ve specular iç yansıma ile sıfır GPU maliyetiyle verir */
.widget-forecast-capsule {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background: linear-gradient(145deg, rgba(14, 28, 54, 0.44) 0%, rgba(10, 20, 40, 0.30) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.34) !important;
    box-shadow:
        0 4px 14px rgba(0, 0, 0, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
}

/* Neden: Sürükle-bırak (drag) sırasında hareket eden öğede her karede arka plan blur hesaplanmasını engeller */
.exercise-item.dragging {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background: var(--list-bg) !important;
}

/* 3. ANİMASYON PERFORMANSI & REFLOW İZOLASYONU */
/* Neden: Kart büyürken/küçülürken (.is-animating) iç egzersiz listesinin layout ve boyamasını izole ederek her karede alt düğüm reflow'unu keser */
.day-card.is-animating .exercise-list:not(.ios-drag-floating-ghost) {
    contain: layout paint !important;
    pointer-events: none !important;
}

/* Neden: Hover durumunda pahalı box-shadow yeniden boyamalarını (repaint) hızlandırmak için yalnız transform ve border-color geçişini önceliklendirir */
.day-card:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transition: transform 0.34s var(--ios-spring), border-color 0.22s ease !important;
}

/* 4. DOM & RENDER OPTİMİZASYONU (CONTENT-VISIBILITY & CONTAINMENT) */
/* Neden: Gizli olan görünümlerin (.view-hidden) tarayıcı stil ve layout ağacında hesaplanmasını tamamen atlar */
.view-container.view-hidden,
.calendar-view-wrapper:not(.active) {
    content-visibility: hidden !important;
    contain: strict !important;
}

.view-container.view-active,
.calendar-view-wrapper.active {
    content-visibility: visible !important;
    contain: layout style !important;
}

/* Neden: Uzun listelerde (Egzersiz Verileri ızgarası, Geçmiş destesi, Egzersiz Havuzu, Sezon listesi) ekran dışında kalan kartların boyama maliyetini sıfırlar */
.ex-data-card {
    content-visibility: auto;
    contain-intrinsic-size: 380px 295px;
    contain: layout style paint;
}

.history-deck-card {
    content-visibility: auto;
    contain-intrinsic-size: 310px 88px;
    contain: layout style paint;
}

.pool-group {
    content-visibility: auto;
    contain-intrinsic-size: 520px 68px;
    contain: layout style;
}

.season-strip-card {
    content-visibility: auto;
    contain-intrinsic-size: 560px 88px;
    contain: layout style paint;
}

/* Neden: Sabit boyutlu küçük istatistik kartlarında iç değişikliklerin dış ızgarayı etkilemesini (reflow) engeller */
.small-stat-card.watch-stat-card {
    contain: layout style paint;
}

/* 5. GÜÇLENDİRİLMİŞ PREFERS-REDUCED-MOTION DESTEĞİ */
/* Neden: Hareket azaltma tercihi açık olan cihazlarda tüm yay ve parçacık animasyonlarını sıfır maliyetli anlık geçişe çevirir */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}


/* ============================================================================
   V40 WIDGET EXPAND/COLLAPSE SIFIR KAYMA VE CNS 3D FLIP BUGFIX PAKETİ
============================================================================ */

/* 1. AY VE BULUTLARIN BÜYÜME/KÜÇÜLME SIRASINDA KAYMASINI ÖNLEYEN MERKEZ KİLİDİ:
   #skyWidget hem dar (1400px) hem geniş (640px) modda ekranın yatay merkezindedir.
   #weatherCanvas yatay merkeze (left: 50%; translate3d(-50%, 0, 0)) kilitlendiğinde,
   widget kenarları açılıp kapanırken Ay, Güneş, Yıldızlar ve Bulutlar ekranda 1 piksel bile kaymaz! */
#weatherCanvas {
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translate3d(-50%, 0, 0) !important;
    width: 1400px !important;
    height: 740px !important;
    max-width: none !important;
    max-height: none !important;
    pointer-events: none !important;
}

/* 2. WIDGET BÜYÜTÜLÜP KÜÇÜLTÜLÜRKEN TAKILMALARI (REFLOW / FONT / SHADOW) ÖNLEME */
.widget-title-area h1,
#currentDateText {
    transition: none !important;
}

.top-widget.is-animating #flipInner {
    transition: none !important;
}

.top-widget.expanded-active.is-animating .weather-details {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

/* 3. CNS ARKA YÜZ 3D FLIP BUGFIX:
   preserve-3d + overflow:hidden çakışmasını ve ön yüzün ters dönmesini tamamen ortadan kaldırır. */
.top-widget #flipInner {
    transform-style: preserve-3d !important;
    -webkit-transform-style: preserve-3d !important;
    transition: box-shadow 0.35s ease !important;
}

.top-widget .widget-front,
.top-widget .widget-back {
    transform: none !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
    transition: background 0.5s ease !important;
}

#flipInner:not(.is-flipped) .widget-front {
    display: flex !important;
    pointer-events: auto !important;
    visibility: visible !important;
}

#flipInner:not(.is-flipped) .widget-back {
    display: none !important;
    pointer-events: none !important;
}

#flipInner.is-flipped .widget-front {
    display: none !important;
    pointer-events: none !important;
}

#flipInner.is-flipped .widget-back {
    display: flex !important;
    pointer-events: auto !important;
    visibility: visible !important;
    transform: none !important;
}



/* ============================================================================
   V41 UI/UX MÜHENDİSLİK PAKETİ (9 MADDENİN EKSİKSİZ UYGULAMASI)
   - Madde 1: #progressCard Hover + Ana Sayfa & Haftalık Program Sakin/Tutarlı Hover
   - Madde 3: Premium iOS Altın Kişisel Rekorlar (#prCard) Liste Tasarımı
   - Madde 5: 4 Küçük Karttan Yalnızca 3. Sezon Kartına Kart Hover, Diğer 3 Kartta Sadece İç Grafik/İkon Hafif Hover
   - Madde 6: #progressCard Saf Veri Tasarımı (Ön Yüz 4 Egzersiz, Arka Yüz Farklı 4 Egzersiz -> Veri Merkezi Yönlendirmesi)
   - Madde 7: Tüm Kart ve Animasyonlarda Yazı Bulanıklığı (Subpixel / Fractional Scale / 3D Layer Blur) Tamamen Giderildi
   - Madde 8: Egzersiz Havuzu Sağ Üst 2 Modlu Veri Değiştirici Buton
   - Madde 9: Geçmiş Antrenman Destesi Minimalist iOS En Üste (Son Antrenmana) Dön Butonu
============================================================================ */

/* ----------------------------------------------------------------------------
   MADDE 7: YAZILARIN ANİMASYON SIRASINDA VE SONRASINDA HER ZAMAN NET KALMASI
   (GPU Layer Promotion/Demotion, 3D Perspective ve Küsüratlı Scale Kaynaklı Blur Engeli)
---------------------------------------------------------------------------- */
.day-card,
.day-card *,
.top-widget,
.top-widget .widget-front,
.top-widget .widget-back,
.small-stat-card,
.small-stat-card *,
.month-card,
.profile-card,
.pool-wrapper,
.history-card-wrapper,
.history-deck-card,
.ios-alert,
.ios-modal-card,
.exercise-list,
.exercise-item {
    will-change: auto !important;
    backface-visibility: visible !important;
    -webkit-backface-visibility: visible !important;
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
    perspective: none !important;
    -webkit-perspective: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Dinlenme ve expanded durumunda küsüratlı veya 3D transform bırakma (Flip anı hariç!) */
.day-card:not(:hover):not(.expanded-active):not(.is-animating):not(.is-flipping),
.day-card.expanded-active:not(.is-flipping):not(.ios-drag-ghost-host),
.top-widget:not(:hover):not(.expanded-active):not(.is-animating):not(.is-flipped),
.top-widget.expanded-active,
.exercise-list:not(.ios-drag-floating-ghost) {
    transform: none !important;
}

/* Modallarda scale(0.94) / scale(1.1) kaynaklı yazı bulanıklığını kaldır; saf tam-sayı Y + opacity kullan */
.ios-alert,
.ios-alert.ios-aurora-dialog,
.ios-modal-card.picker-modal-card {
    transform: translateY(8px) !important;
    transition: transform 0.24s var(--ios-spring), opacity 0.18s ease !important;
}
.modal-overlay.active .ios-alert,
.modal-overlay.active .ios-alert.ios-aurora-dialog,
.modal-overlay.active .ios-modal-card.picker-modal-card {
    transform: none !important;
    opacity: 1 !important;
}

/* İskambil destesinden kart çekme animasyonunda scale/rotate kaynaklı yazı bulanıklığını kaldır */
@keyframes deckCardDrawInCrisp {
    0% {
        opacity: 0;
        transform: translateY(8px);
    }
    100% {
        opacity: 1;
        transform: none;
    }
}
.history-card-wrapper.active.deck-draw-anim {
    animation: deckCardDrawInCrisp 0.26s var(--ios-spring) forwards !important;
}

/* Butonlarda küsüratlı scale(...) yerine net tam-sayı hareket */
.menu-btn:hover,
.icon-btn:hover,
.action-btn-split:hover,
.pool-add-btn:hover,
.history-date-picker-btn:hover,
.hdf-pick-btn:hover,
.dtb-sync-pill:hover {
    transform: translateY(-1px) !important;
}
.menu-btn:active,
.icon-btn:active,
.action-btn-split:active,
.pool-add-btn:active,
.ios-dialog-btn:active {
    transform: translateY(0) !important;
}

/* ----------------------------------------------------------------------------
   MADDE 1: ANA SAYFADAKİ TÜM KARTLAR (SAĞ ALTTAKİ #progressCard DAHİL) İLE
   HAFTALIK PROGRAM GÜN KARTLARINDA SAKİN, HAFİF VE TUTARLI HOVER SEVİYESİ
---------------------------------------------------------------------------- */
.day-card:not(.expanded-active):not(.is-animating):not(.is-flipping),
#progressCard.day-card:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transition: transform 0.26s var(--ios-spring), border-color 0.22s ease, box-shadow 0.26s ease !important;
}

/* Ana Sayfa & Haftalık Program Gün Kartları, PR Kartı ve Sağ Alt Egzersiz Gelişim Kartı (#progressCard) Ortak Sakin Hover */
.day-card.theme-blue:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-orange:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-green:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-purple:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-pink:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-yellow:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-cyan:hover:not(.expanded-active):not(.is-animating),
.day-card.pr-special-card:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-gold:hover:not(.expanded-active):not(.is-animating),
#progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
.day-card.progress-card-wrapper:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.46) !important;
    box-shadow:
        0 14px 28px -8px rgba(var(--theme-rgb, 10, 132, 255), 0.18),
        0 4px 10px -2px rgba(0, 0, 0, 0.05),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.92) !important;
}

[data-theme="dark"] .day-card.theme-blue:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-orange:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-green:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-purple:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-pink:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-yellow:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-cyan:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.pr-special-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-gold:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] #progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
[data-theme="dark"] .day-card.progress-card-wrapper:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.52) !important;
    box-shadow:
        0 16px 32px -8px rgba(0, 0, 0, 0.56),
        0 0 18px -6px rgba(var(--theme-rgb, 10, 132, 255), 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22) !important;
}

/* Ana Sayfa Mini Takvim Kartı Sakin Hover */
.day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--season-rgb, 10, 132, 255), 0.46) !important;
    box-shadow:
        0 14px 28px -8px rgba(var(--season-rgb, 10, 132, 255), 0.18),
        0 4px 10px -2px rgba(0, 0, 0, 0.05),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.90) !important;
}
[data-theme="dark"] .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--season-rgb, 10, 132, 255), 0.50) !important;
    box-shadow:
        0 16px 32px -8px rgba(0, 0, 0, 0.56),
        0 0 18px -6px rgba(var(--season-rgb, 10, 132, 255), 0.20),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22) !important;
}

/* Üst Hava Durumu Widget'ı Sakin Hover */
.top-widget:hover:not(.expanded-active):not(.is-flipped) {
    transform: translateY(-2px) !important;
}
.top-widget.sky-sunrise:hover:not(.expanded-active) #flipInner,
.top-widget.sky-morning:hover:not(.expanded-active) #flipInner,
.top-widget.sky-noon:hover:not(.expanded-active) #flipInner,
.top-widget.sky-day:hover:not(.expanded-active) #flipInner,
.top-widget.sky-sunset:hover:not(.expanded-active) #flipInner,
.top-widget.sky-evening:hover:not(.expanded-active) #flipInner,
.top-widget.sky-night:hover:not(.expanded-active) #flipInner {
    box-shadow: 0 14px 30px -6px rgba(0, 0, 0, 0.26) !important;
}

/* ----------------------------------------------------------------------------
   MADDE 5: ANA SAYFADAKİ 4 KÜÇÜK İSTATİSTİK KARTI HOVER KURALI
   - Sadece 3. olan Sezon Kartı (.stat-season.is-clickable-stat-card) kart hover'ı alır.
   - Diğer 3 kart (.stat-quality, .stat-series, .stat-tonnage) kart olarak HOVER ALMAZ;
     yalnızca içlerindeki tasarım elementleri (kadran, tik işareti, bar grafiği ve ikon) çok hafif hover alır.
---------------------------------------------------------------------------- */
.small-stat-card.watch-stat-card:not(.is-clickable-stat-card),
.small-stat-card.watch-stat-card:not(.is-clickable-stat-card):hover {
    transform: none !important;
    border-color: rgba(var(--theme-rgb), 0.28) !important;
    box-shadow:
        0 10px 26px -6px rgba(var(--theme-rgb), 0.12),
        0 2px 6px rgba(0, 0, 0, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
    cursor: default !important;
}

[data-theme="dark"] .small-stat-card.watch-stat-card:not(.is-clickable-stat-card),
[data-theme="dark"] .small-stat-card.watch-stat-card:not(.is-clickable-stat-card):hover {
    transform: none !important;
    border-color: rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 14px 30px -8px rgba(0, 0, 0, 0.56),
        0 0 18px -6px rgba(var(--theme-rgb), 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
    cursor: default !important;
}

/* Tıklanmayan 3 küçük kartın içindeki tasarım elementlerinin (kadran, tik işareti, bar, ikon) çok hafif hover'ı */
.small-stat-card.watch-stat-card .stat-bg-graphic,
.small-stat-card.watch-stat-card .stat-icon {
    transition: transform 0.26s var(--ios-spring), opacity 0.26s ease, border-color 0.22s ease, background-color 0.22s ease !important;
}

.small-stat-card.watch-stat-card:not(.is-clickable-stat-card):hover .stat-bg-graphic {
    transform: translateY(-2px) !important;
    opacity: 0.34 !important;
}
[data-theme="dark"] .small-stat-card.watch-stat-card:not(.is-clickable-stat-card):hover .stat-bg-graphic {
    transform: translateY(-2px) !important;
    opacity: 0.40 !important;
}
.small-stat-card.watch-stat-card:not(.is-clickable-stat-card):hover .stat-icon {
    transform: translateY(-1px) !important;
    border-color: rgba(var(--theme-rgb), 0.52) !important;
}

/* 3. Kart (Sezon Kartı): Tıklanabilir olduğu için sakin kart hover'ı almaya devam eder */
#homeGrid #seasonRingContainer.small-stat-card.stat-season.is-clickable-stat-card {
    display: flex !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    cursor: pointer !important;
}
#homeGrid #seasonRingContainer.small-stat-card.stat-season.is-clickable-stat-card:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--theme-rgb), 0.48) !important;
    box-shadow:
        0 14px 28px -8px rgba(var(--theme-rgb), 0.20),
        0 4px 10px -2px rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}
[data-theme="dark"] #homeGrid #seasonRingContainer.small-stat-card.stat-season.is-clickable-stat-card:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(var(--theme-rgb), 0.54) !important;
    box-shadow:
        0 16px 32px -8px rgba(0, 0, 0, 0.58),
        0 0 18px -6px rgba(var(--theme-rgb), 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.20) !important;
}
#homeGrid #seasonRingContainer.small-stat-card.stat-season.is-clickable-stat-card:hover .stat-bg-graphic {
    transform: translateY(-2px) !important;
    opacity: 0.36 !important;
}

/* ----------------------------------------------------------------------------
   MADDE 3: YENİDEN TASARLANAN PREMIUM IOS ALTIN PR KARTI (#prCard)
---------------------------------------------------------------------------- */
.day-card.pr-special-card {
    --theme-rgb: 217, 155, 22;
    --theme-rgb-2: 180, 115, 12;
    --theme-accent: #B45309;
    position: relative !important;
    overflow: hidden !important;
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(245, 185, 35, 0.28) 0%, rgba(217, 119, 6, 0.08) 45%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(234, 179, 8, 0.16) 0%, transparent 60%),
        linear-gradient(155deg, #FFFDF9 0%, #FAF6EC 100%) !important;
    border: 1px solid rgba(217, 155, 22, 0.38) !important;
}

[data-theme="dark"] .day-card.pr-special-card {
    --theme-rgb: 250, 204, 21;
    --theme-rgb-2: 217, 119, 6;
    --theme-accent: #FACC15;
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(250, 204, 21, 0.32) 0%, rgba(217, 119, 6, 0.12) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(180, 83, 9, 0.20) 0%, transparent 62%),
        linear-gradient(160deg, #1A1710 0%, #100E0A 100%) !important;
    border: 1px solid rgba(250, 204, 21, 0.38) !important;
}

.pr-bg-watermark {
    position: absolute;
    inset: 0;
    pointer-events: none !important;
    z-index: 0 !important;
    color: #D97706;
    opacity: 0.11;
}
[data-theme="dark"] .pr-bg-watermark {
    color: #FACC15;
    opacity: 0.12;
}
.pr-bg-watermark svg {
    width: 100%;
    height: 100%;
    display: block;
}

.pr-card-header-v2 {
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid rgba(217, 155, 22, 0.20) !important;
}

.pr-title-cluster {
    display: flex;
    align-items: center;
    gap: 8px;
}

.pr-header-trophy-box {
    width: 28px;
    height: 28px;
    border-radius: 9px;
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.26) 0%, rgba(217, 119, 6, 0.14) 100%);
    border: 1px solid rgba(217, 155, 22, 0.42);
    color: #B45309;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}
[data-theme="dark"] .pr-header-trophy-box {
    color: #FDE047;
    border-color: rgba(250, 204, 21, 0.45);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.20);
}

.pr-gold-type-pill {
    color: #B45309 !important;
    background: rgba(245, 158, 11, 0.14) !important;
    border-color: rgba(245, 158, 11, 0.34) !important;
}
[data-theme="dark"] .pr-gold-type-pill {
    color: #FDE047 !important;
    background: rgba(250, 204, 21, 0.16) !important;
    border-color: rgba(250, 204, 21, 0.36) !important;
}

.pr-latest-meta-tag {
    font-size: 0.72em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.pr-header-right-col {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
}

.pr-header-count-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 11px;
    border-radius: 999px;
    font-size: 0.74em;
    font-weight: 800;
    color: #78350F;
    background: linear-gradient(135deg, #FEF08A 0%, #F59E0B 100%);
    border: 1px solid rgba(254, 240, 138, 0.9);
    box-shadow: 0 2px 8px rgba(217, 119, 6, 0.22);
}
[data-theme="dark"] .pr-header-count-pill {
    color: #271500;
    background: linear-gradient(135deg, #FDE047 0%, #F59E0B 100%);
}

.day-card.pr-special-card .pr-list-container {
    pointer-events: auto !important;
    background: rgba(255, 255, 255, 0.56) !important;
    border: 1px solid rgba(217, 155, 22, 0.22) !important;
    padding: 6px !important;
    border-radius: 16px !important;
    overflow-y: auto !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-container {
    background: rgba(12, 11, 8, 0.56) !important;
    border: 1px solid rgba(250, 204, 21, 0.16) !important;
}

.day-card.pr-special-card .pr-list-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 5px !important;
    padding: 7px 11px !important;
    min-height: 46px !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.80) !important;
    border: 1px solid rgba(217, 155, 22, 0.18) !important;
    cursor: pointer !important;
    transition: background-color 0.18s ease, border-color 0.18s ease !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(250, 204, 21, 0.14) !important;
}
.day-card.pr-special-card .pr-list-item:first-child {
    background: linear-gradient(135deg, rgba(254, 243, 199, 0.85) 0%, rgba(255, 255, 255, 0.90) 100%) !important;
    border-color: rgba(217, 119, 6, 0.36) !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item:first-child {
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.13) 0%, rgba(255, 255, 255, 0.05) 100%) !important;
    border-color: rgba(250, 204, 21, 0.34) !important;
}
.day-card.pr-special-card .pr-list-item:last-child {
    margin-bottom: 0 !important;
}
.day-card.pr-special-card .pr-list-item:hover {
    background: rgba(254, 249, 195, 0.92) !important;
    border-color: rgba(217, 119, 6, 0.48) !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item:hover {
    background: rgba(250, 204, 21, 0.14) !important;
    border-color: rgba(250, 204, 21, 0.42) !important;
}

.pr-row-left {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 0;
    margin: 0 !important;
}

.pr-medal-badge {
    width: 28px !important;
    height: 28px !important;
    border-radius: 9px !important;
    margin-right: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.74em !important;
    font-weight: 800 !important;
    flex-shrink: 0 !important;
}
.pr-rank-num {
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.03em;
}

.pr-item-title-line {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.pr-item-name {
    font-size: 0.92em !important;
    font-weight: 700 !important;
    letter-spacing: -0.015em !important;
    color: var(--text-main) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    max-width: 175px !important;
}

.pr-item-meta-line {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 2px;
    font-size: 0.68em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 175px;
}

.pr-item-cat-pill {
    font-weight: 700;
    color: #B45309;
}
[data-theme="dark"] .pr-item-cat-pill {
    color: #FBBF24;
}

.pr-item-dot {
    opacity: 0.45;
}

.pr-item-gain-tag {
    color: #059669;
    font-weight: 700;
}
[data-theme="dark"] .pr-item-gain-tag {
    color: #34D399;
}

.pr-row-right {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
}

.pr-gold-weight-pill {
    font-size: 0.80em;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    padding: 3.5px 9px;
    border-radius: 8px;
    color: #78350F;
    background: linear-gradient(135deg, rgba(254, 240, 138, 0.85) 0%, rgba(251, 191, 36, 0.45) 100%);
    border: 1px solid rgba(217, 119, 6, 0.42);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
    white-space: nowrap;
}
[data-theme="dark"] .pr-gold-weight-pill {
    color: #FEF08A;
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.24) 0%, rgba(180, 83, 9, 0.18) 100%);
    border: 1px solid rgba(250, 204, 21, 0.45);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.pr-sub-reps-pill {
    font-size: 0.73em;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    padding: 3.5px 8px;
    border-radius: 8px;
    color: var(--text-main);
    background: rgba(150, 150, 150, 0.12);
    border: 1px solid rgba(150, 150, 150, 0.20);
    white-space: nowrap;
}

.pr-empty-box {
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    padding: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
.pr-empty-icon-ring {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: rgba(245, 158, 11, 0.14);
    border: 1px solid rgba(245, 158, 11, 0.34);
    color: #D97706;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
}
[data-theme="dark"] .pr-empty-icon-ring {
    color: #FACC15;
}
.pr-empty-title {
    font-size: 1.02em;
    font-weight: 800;
    color: var(--text-main);
}
.pr-empty-sub {
    font-size: 0.80em;
    color: var(--text-secondary);
    max-width: 88%;
    line-height: 1.4;
}

/* ----------------------------------------------------------------------------
   MADDE 6: SAĞ ALT EGZERSİZ GELİŞİM/PLATO SAF VERİ KARTI (#progressCard) YENİ TASARIMI
---------------------------------------------------------------------------- */
#progressCard .progress-card-front,
#progressCard .progress-card-back {
    padding: 13px 15px !important;
    transition: opacity 0.16s ease !important;
}

#progressCard .prog-slide-stage {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    gap: 6px;
    transition: opacity 0.15s ease;
}

.prog-v2-top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-shrink: 0;
}

.prog-v2-title-group {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    flex: 1;
}

.prog-v2-status-pill {
    font-size: 0.66em;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 3.5px 9px;
    border-radius: 7px;
    white-space: nowrap;
    flex-shrink: 0;
}
.prog-v2-status-pill.is-improving {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.24) 0%, rgba(6, 182, 212, 0.22) 100%);
    color: #047857;
    border: 1px solid rgba(16, 185, 129, 0.45);
}
[data-theme="dark"] .prog-v2-status-pill.is-improving {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.28) 0%, rgba(0, 210, 211, 0.24) 100%);
    color: #6EE7B7;
    border-color: rgba(52, 211, 153, 0.48);
}
.prog-v2-status-pill.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.24) 0%, rgba(255, 159, 10, 0.22) 100%);
    color: #B91C1C;
    border: 1px solid rgba(255, 69, 58, 0.45);
}
[data-theme="dark"] .prog-v2-status-pill.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.30) 0%, rgba(255, 159, 10, 0.24) 100%);
    color: #FCA5A5;
    border-color: rgba(255, 94, 58, 0.52);
}
.prog-v2-status-pill.is-neutral {
    background: rgba(56, 189, 248, 0.20);
    color: #0369A1;
    border: 1px solid rgba(56, 189, 248, 0.40);
}
[data-theme="dark"] .prog-v2-status-pill.is-neutral {
    color: #7DD3FC;
}

.prog-v2-ex-name {
    font-size: 1.02em !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
}

.prog-v2-switch-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    border-radius: 9px;
    font-size: 0.70em;
    font-weight: 700;
    color: var(--text-main);
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(var(--theme-rgb), 0.32);
    cursor: pointer;
    flex-shrink: 0;
    transition: background-color 0.18s ease, border-color 0.18s ease;
}
[data-theme="dark"] .prog-v2-switch-btn {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(var(--theme-rgb), 0.38);
}
.prog-v2-switch-btn:hover {
    background: rgba(var(--theme-rgb), 0.22);
    border-color: rgba(var(--theme-rgb), 0.58);
}

/* Ön Yüz 4 Egzersiz Sekmesi (4-Tab Selector) */
.prog-v2-tabs {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
    flex-shrink: 0;
}

.prog-v2-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 4.5px 6px;
    border-radius: 8px;
    border: 1px solid rgba(150, 150, 150, 0.18);
    background: rgba(255, 255, 255, 0.48);
    color: var(--text-secondary);
    font-size: 0.68em;
    font-weight: 700;
    cursor: pointer;
    min-width: 0;
    transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
[data-theme="dark"] .prog-v2-tab {
    background: rgba(255, 255, 255, 0.045);
    border-color: rgba(255, 255, 255, 0.09);
}
.prog-v2-tab:hover {
    color: var(--text-main);
    border-color: rgba(var(--theme-rgb), 0.38);
}
.prog-v2-tab.is-active {
    color: var(--text-main);
    font-weight: 800;
    background: rgba(255, 255, 255, 0.90);
    border-color: rgba(var(--theme-rgb), 0.55);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
[data-theme="dark"] .prog-v2-tab.is-active {
    color: #FFFFFF;
    background: rgba(var(--theme-rgb), 0.22);
    border-color: rgba(var(--theme-rgb), 0.58);
}

.prog-v2-tab-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
    background: #10B981;
}
.prog-v2-tab.tab-plateau .prog-v2-tab-dot {
    background: #FF5E3A;
}

.prog-v2-tab-txt {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Ön Yüz 3'lü Saf Veri KPI Şeridi */
.prog-v2-kpi-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    flex-shrink: 0;
}

.prog-v2-kpi-box {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 5.5px 8px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(var(--theme-rgb), 0.22);
    min-width: 0;
}
[data-theme="dark"] .prog-v2-kpi-box {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.09);
}

.prog-v2-kpi-box.is-delta-kpi.is-improving {
    background: rgba(16, 185, 129, 0.12);
    border-color: rgba(16, 185, 129, 0.34);
}
[data-theme="dark"] .prog-v2-kpi-box.is-delta-kpi.is-improving {
    background: rgba(0, 210, 211, 0.14);
    border-color: rgba(0, 210, 211, 0.36);
}
.prog-v2-kpi-box.is-delta-kpi.is-plateau {
    background: rgba(255, 69, 58, 0.12);
    border-color: rgba(255, 69, 58, 0.36);
}
[data-theme="dark"] .prog-v2-kpi-box.is-delta-kpi.is-plateau {
    background: rgba(255, 69, 58, 0.16);
    border-color: rgba(255, 94, 58, 0.40);
}

.pvk-lbl {
    font-size: 0.58em;
    font-weight: 800;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    text-transform: uppercase;
    white-space: nowrap;
}

.pvk-val {
    font-size: 0.78em;
    font-weight: 800;
    color: var(--text-main);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pvk-val small {
    font-size: 0.86em;
    font-weight: 600;
    opacity: 0.82;
}

.prog-v2-chart-box {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 3px 6px 1px 6px !important;
    border-radius: 13px !important;
}

.ex-chart-pt-val.is-pr-lbl {
    fill: #B45309 !important;
    font-weight: 900 !important;
}
[data-theme="dark"] .ex-chart-pt-val.is-pr-lbl {
    fill: #FDE047 !important;
}

/* Arka Yüz: Farklı 4 Egzersiz Saf Veri Listesi */
.prog-v2-back-top {
    padding-bottom: 6px;
    margin-bottom: 6px;
    border-bottom: 1px solid rgba(var(--theme-rgb), 0.22);
}

.prog-v2-back-titles {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.prog-v2-back-heading {
    font-size: 0.74em;
    font-weight: 800;
    letter-spacing: 0.03em;
    color: var(--text-main);
}

.prog-v2-back-sub {
    font-size: 0.65em;
    font-weight: 600;
    color: var(--text-secondary);
}

.prog-v2-back-list {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 5px;
    overflow-y: auto;
}

.prog-v2-back-row {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    padding: 8.5px 12px 8.5px 14px;
    border-radius: 12px;
    cursor: pointer;
    flex: 1 1 0;
    min-height: 48px;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.18s var(--ios-spring);
}
.prog-v2-back-row:hover {
    transform: translateX(2px);
}

.prog-v2-back-row::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 3.5px;
    border-radius: 0 4px 4px 0;
}

.prog-v2-back-row.is-improving {
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.12) 0%, rgba(16, 185, 129, 0.08) 100%);
    border: 1px solid rgba(6, 182, 212, 0.30);
}
[data-theme="dark"] .prog-v2-back-row.is-improving {
    background: linear-gradient(135deg, rgba(0, 210, 211, 0.14) 0%, rgba(16, 185, 129, 0.10) 100%);
    border: 1px solid rgba(0, 210, 211, 0.32);
}
.prog-v2-back-row.is-improving::before {
    background: linear-gradient(180deg, #00D2D3 0%, #10B981 100%);
}
.prog-v2-back-row.is-improving:hover {
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.20) 0%, rgba(16, 185, 129, 0.14) 100%);
    border-color: rgba(6, 182, 212, 0.55);
}

.prog-v2-back-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.13) 0%, rgba(255, 149, 0, 0.09) 100%);
    border: 1px solid rgba(255, 69, 58, 0.30);
}
[data-theme="dark"] .prog-v2-back-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.16) 0%, rgba(255, 159, 10, 0.12) 100%);
    border: 1px solid rgba(255, 94, 58, 0.38);
}
.prog-v2-back-row.is-plateau::before {
    background: linear-gradient(180deg, #FF453A 0%, #FF9F0A 100%);
}
.prog-v2-back-row.is-plateau:hover {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.22) 0%, rgba(255, 149, 0, 0.16) 100%);
    border-color: rgba(255, 94, 58, 0.60);
}

.pvbr-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.pvbr-title-group {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
}

.pvbr-status-badge {
    font-size: 10px;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    letter-spacing: 0.04em;
    flex-shrink: 0;
}
.pvbr-status-badge.is-improving {
    background: rgba(16, 185, 129, 0.22);
    color: #047857;
}
[data-theme="dark"] .pvbr-status-badge.is-improving {
    background: rgba(0, 210, 211, 0.24);
    color: #5EEAD4;
}
.pvbr-status-badge.is-plateau {
    background: rgba(255, 69, 58, 0.24);
    color: #B91C1C;
}
[data-theme="dark"] .pvbr-status-badge.is-plateau {
    background: rgba(255, 94, 58, 0.28);
    color: #FCA5A5;
}

.pvbr-name {
    font-size: 13.5px;
    font-weight: 700;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pvbr-right-delta {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.pvbr-delta-pill {
    font-size: 11.5px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    padding: 2.5px 8px;
    border-radius: 7px;
}
.pvbr-delta-pill.is-improving {
    color: #047857;
    background: rgba(16, 185, 129, 0.18);
}
[data-theme="dark"] .pvbr-delta-pill.is-improving {
    color: #6EE7B7;
    background: rgba(16, 185, 129, 0.24);
}
.pvbr-delta-pill.is-plateau {
    color: #C2410C;
    background: rgba(255, 69, 58, 0.18);
}
[data-theme="dark"] .pvbr-delta-pill.is-plateau {
    color: #FDBA74;
    background: rgba(255, 94, 58, 0.24);
}

.pvbr-arrow {
    color: var(--text-secondary);
    opacity: 0.75;
    transition: transform 0.2s var(--ios-spring);
}
.prog-v2-back-row:hover .pvbr-arrow {
    transform: translateX(2px);
    opacity: 1;
}

.pvbr-metrics {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 11.5px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pvbr-prog-path {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pvbr-val-first,
.pvbr-val-latest {
    color: var(--text-main);
    font-weight: 700;
}
.pvbr-val-rir {
    color: var(--text-secondary);
    font-size: 10.5px;
    opacity: 0.85;
}
.pvbr-m-sep {
    opacity: 0.55;
    font-size: 11px;
}
.pvbr-m-pr {
    margin-left: auto;
    font-size: 11px;
    font-weight: 800;
    color: #D97706;
    flex-shrink: 0;
}
[data-theme="dark"] .pvbr-m-pr {
    color: #FACC15;
}

.prog-empty-icon-wrap {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: rgba(6, 182, 212, 0.15);
    border: 1px solid rgba(6, 182, 212, 0.34);
    color: #0891B2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
}
[data-theme="dark"] .prog-empty-icon-wrap {
    color: #22D3EE;
}

@keyframes exDataCardFocusPulse {
    0%, 100% {
        box-shadow: 0 14px 34px -6px rgba(var(--theme-rgb), 0.30);
    }
    50% {
        box-shadow: 0 0 0 3px var(--accent-blue), 0 18px 40px -4px rgba(10, 132, 255, 0.45);
    }
}
.day-card.ex-data-card.exdata-focus-pulse {
    animation: exDataCardFocusPulse 0.9s ease-in-out 2 !important;
}

/* ----------------------------------------------------------------------------
   MADDE 8: EGZERSİZ HAVUZU SAĞ ÜST MOD DEĞİŞTİRİCİ BUTON (#poolDataModeBtn)
---------------------------------------------------------------------------- */
#mainPoolCard {
    position: relative !important;
}

.pool-top-bar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
    min-height: 38px;
}

.pool-top-bar .pool-header {
    margin: 0 !important;
}

.pool-txt-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.pool-txt-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.70);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    color: var(--text-main);
    padding: 6px 12px;
    border-radius: 9px;
    font-size: 0.82em;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: all 0.2s var(--ios-spring);
}

.pool-txt-btn:hover {
    background: rgba(10, 132, 255, 0.14);
    border-color: rgba(10, 132, 255, 0.45);
    color: var(--accent-blue);
    transform: translateY(-1.5px);
    box-shadow: 0 4px 14px rgba(10, 132, 255, 0.16);
}

.pool-txt-btn:active {
    transform: scale(0.96);
}

[data-theme="dark"] .pool-txt-btn {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

[data-theme="dark"] .pool-txt-btn:hover {
    background: rgba(10, 132, 255, 0.22);
    border-color: rgba(10, 132, 255, 0.55);
    color: #38BDF8;
}

.pool-mode-toggle-btn {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 13px;
    border-radius: 999px;
    font-size: 0.76em;
    font-weight: 800;
    letter-spacing: -0.01em;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(10, 132, 255, 0.34);
    color: var(--text-main);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    z-index: 5;
}
[data-theme="dark"] .pool-mode-toggle-btn {
    background: rgba(24, 27, 36, 0.88);
    border-color: rgba(10, 132, 255, 0.42);
    color: #FFFFFF;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}
.pool-mode-toggle-btn:hover {
    border-color: var(--accent-blue);
    background: rgba(10, 132, 255, 0.14);
}
.pool-mode-toggle-btn.is-empty-mode {
    border-color: rgba(255, 159, 10, 0.45);
}

.pmtb-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #30D158;
    box-shadow: 0 0 6px rgba(48, 209, 88, 0.65);
    flex-shrink: 0;
}
.pool-mode-toggle-btn.is-empty-mode .pmtb-dot {
    background: #FF9F0A;
    box-shadow: 0 0 6px rgba(255, 159, 10, 0.65);
}

/* ----------------------------------------------------------------------------
   MADDE 9: GEÇMİŞ ANTRENMANLAR DESTESİ MİNİMALİST IOS EN ÜSTE DÖN BUTONU
---------------------------------------------------------------------------- */
.history-deck-fan-wrap {
    position: relative;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.history-deck-top-btn {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 30;
    height: 28px;
    padding: 0 11px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 0.72em;
    font-weight: 800;
    letter-spacing: -0.01em;
    color: var(--accent-blue);
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(10, 132, 255, 0.36);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.95);
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, background-color 0.18s ease, color 0.18s ease;
}
[data-theme="dark"] .history-deck-top-btn {
    color: #7DD3FC;
    background: rgba(24, 28, 38, 0.94);
    border-color: rgba(10, 132, 255, 0.45);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}
.history-deck-top-btn.is-visible {
    opacity: 1;
    pointer-events: auto;
}
.history-deck-top-btn:hover {
    background: var(--accent-blue);
    color: #FFFFFF;
    border-color: var(--accent-blue);
}



/* ============================================================================
   V42 KAPSAMLI GÜNCELLEME PAKETİ (10 MADDENİN TAMAMI + PROGRESSIVE OVERLOAD)
============================================================================ */

/* MADDE 5: GÜNEŞ VARKEN WIDGET SOL KENARINDA OLUŞAN 1PX SARI ÇİZGİYİ KESİN ENGELLE */
.top-widget .widget-front,
.top-widget .widget-back,
.day-card,
.small-stat-card,
.month-card,
.history-deck-card,
.profile-card,
.pool-wrapper {
    background-origin: border-box !important;
    background-repeat: no-repeat !important;
}

/* MADDE 5: ÜST WIDGET 3D FLIP ANİMASYONU SIRASINDA TRANSFORM İZNİ */
.top-widget #flipInner.is-flipping {
    will-change: transform !important;
}

/* MADDE 1: PR KARTINDAKİ LİSTE SADECE LİSTE OLMALI (TIKLANAMAZ, HOVERSIZ, EFEKTSİZ)
   Sadece PR kartının kendisi (#prCard) hover alır. */
.day-card.pr-special-card .pr-list-item,
.day-card.pr-special-card .pr-list-item:first-child,
.day-card.pr-special-card .pr-list-item:hover,
.day-card.pr-special-card .pr-list-item:first-child:hover {
    cursor: default !important;
    pointer-events: none !important;
    transform: none !important;
    transition: none !important;
    box-shadow: none !important;
}
.day-card.pr-special-card .pr-list-item,
.day-card.pr-special-card .pr-list-item:hover {
    background: rgba(255, 255, 255, 0.80) !important;
    border: 1px solid rgba(217, 155, 22, 0.18) !important;
}
.day-card.pr-special-card .pr-list-item:first-child,
.day-card.pr-special-card .pr-list-item:first-child:hover {
    background: linear-gradient(135deg, rgba(254, 243, 199, 0.85) 0%, rgba(255, 255, 255, 0.90) 100%) !important;
    border-color: rgba(217, 119, 6, 0.36) !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item,
[data-theme="dark"] .day-card.pr-special-card .pr-list-item:hover {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(250, 204, 21, 0.14) !important;
}
[data-theme="dark"] .day-card.pr-special-card .pr-list-item:first-child,
[data-theme="dark"] .day-card.pr-special-card .pr-list-item:first-child:hover {
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.13) 0%, rgba(255, 255, 255, 0.05) 100%) !important;
    border-color: rgba(250, 204, 21, 0.34) !important;
}

/* MADDE 3: TÜM SİTEDEKİ KARTLARIN HOVER EFEKTİNİ BİRAZ DAHA ARTTIR */
.day-card.theme-blue:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-orange:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-green:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-purple:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-pink:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-yellow:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-cyan:hover:not(.expanded-active):not(.is-animating),
.day-card.pr-special-card:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-gold:hover:not(.expanded-active):not(.is-animating),
#progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
.day-card.progress-card-wrapper:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.60) !important;
    box-shadow:
        0 18px 36px -6px rgba(var(--theme-rgb, 10, 132, 255), 0.30),
        0 6px 14px -2px rgba(var(--theme-rgb, 10, 132, 255), 0.16),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.94) !important;
}

[data-theme="dark"] .day-card.theme-blue:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-orange:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-green:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-purple:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-pink:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-yellow:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-cyan:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.pr-special-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-gold:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] #progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
[data-theme="dark"] .day-card.progress-card-wrapper:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.66) !important;
    box-shadow:
        0 20px 40px -6px rgba(0, 0, 0, 0.65),
        0 0 26px -4px rgba(var(--theme-rgb, 10, 132, 255), 0.34),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}

.day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb, 10, 132, 255), 0.58) !important;
    box-shadow:
        0 18px 36px -6px rgba(var(--season-rgb, 10, 132, 255), 0.30),
        0 6px 14px -2px rgba(var(--season-rgb, 10, 132, 255), 0.16),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.92) !important;
}
[data-theme="dark"] .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb, 10, 132, 255), 0.64) !important;
    box-shadow:
        0 20px 40px -6px rgba(0, 0, 0, 0.65),
        0 0 26px -4px rgba(var(--season-rgb, 10, 132, 255), 0.32),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}

.top-widget:hover:not(.expanded-active):not(.is-flipped) {
    transform: translateY(-3.5px) !important;
}
.top-widget.sky-sunrise:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -5px rgba(247, 185, 99, 0.38) !important; }
.top-widget.sky-morning:hover:not(.expanded-active) #flipInner,
.top-widget.sky-noon:hover:not(.expanded-active) #flipInner,
.top-widget.sky-day:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -5px rgba(21, 108, 227, 0.38) !important; }
.top-widget.sky-sunset:hover:not(.expanded-active) #flipInner,
.top-widget.sky-evening:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -5px rgba(209, 86, 71, 0.38) !important; }
.top-widget.sky-night:hover:not(.expanded-active) #flipInner { box-shadow: 0 18px 38px -5px rgba(29, 53, 88, 0.48) !important; }

/* MADDE 4: ANA SAYFADAKİ 4 KÜÇÜK KARTIN SEZON KARTI DÜZELTMESİ
   - Kartın tamamı hover olmaz ve tıklanamaz (diğer 3 küçük kart gibi).
   - İçindeki şimşek tasarımı (.stat-bg-graphic) diğer 3 kart gibi hover olur.
   - Sadece sağ üstteki "Aktif Sezon" pill'i (.is-season-nav-pill) hafif hover olur ve tıklanabilir. */
#homeGrid #seasonRingContainer.small-stat-card.stat-season,
#homeGrid #seasonRingContainer.small-stat-card.stat-season:hover {
    display: flex !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    cursor: default !important;
    border-color: rgba(var(--theme-rgb), 0.28) !important;
    box-shadow:
        0 10px 26px -6px rgba(var(--theme-rgb), 0.12),
        0 2px 6px rgba(0, 0, 0, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}
[data-theme="dark"] #homeGrid #seasonRingContainer.small-stat-card.stat-season,
[data-theme="dark"] #homeGrid #seasonRingContainer.small-stat-card.stat-season:hover {
    transform: none !important;
    cursor: default !important;
    border-color: rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 14px 30px -8px rgba(0, 0, 0, 0.56),
        0 0 18px -6px rgba(var(--theme-rgb), 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
}
.small-stat-card.watch-stat-card:hover .stat-bg-graphic,
#homeGrid #seasonRingContainer.small-stat-card.stat-season:hover .stat-bg-graphic {
    transform: translateY(-2.5px) scale(1.06) !important;
    opacity: 0.38 !important;
}
[data-theme="dark"] .small-stat-card.watch-stat-card:hover .stat-bg-graphic,
[data-theme="dark"] #homeGrid #seasonRingContainer.small-stat-card.stat-season:hover .stat-bg-graphic {
    transform: translateY(-2.5px) scale(1.06) !important;
    opacity: 0.44 !important;
}
button.watch-sync-pill.is-season-nav-pill {
    cursor: pointer !important;
    pointer-events: auto !important;
    background: rgba(var(--theme-rgb), 0.15) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.34) !important;
    color: var(--stat-accent) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
    transition: transform 0.2s var(--ios-spring), background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}
button.watch-sync-pill.is-season-nav-pill:hover {
    transform: translateY(-1px) scale(1.04) !important;
    background: rgba(var(--theme-rgb), 0.26) !important;
    border-color: rgba(var(--theme-rgb), 0.65) !important;
    box-shadow: 0 4px 12px rgba(var(--theme-rgb), 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}
button.watch-sync-pill.is-season-nav-pill:active {
    transform: scale(0.96) !important;
}

/* MADDE 6: GÜN ANTRENMAN KARTI "DÜZENLE" -> "BİTTİ" KAPANMA ANİMASYONU (AÇILMASI GİBİ YUMUŞAK KAPANMA) */
.day-card .workout-menu-overlay,
.workout-menu-overlay {
    opacity: 0 !important;
    transform: scale(0.96) translateY(6px) !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.32s var(--ios-spring), transform 0.32s var(--ios-spring), visibility 0s linear 0.32s !important;
}
.day-card .workout-menu-overlay.active,
.workout-menu-overlay.active {
    opacity: 1 !important;
    transform: scale(1) translateY(0) !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition: opacity 0.32s var(--ios-spring), transform 0.32s var(--ios-spring), visibility 0s linear 0s !important;
}

/* MADDE 2: SÜPERSET IŞIKLI NOKTALI ÇUBUK (2 ÇİZGİNİN SOLUNDA), 2 ÇİZGİ HİZASI, NUMARA HİZASI VE IOS BAĞLAMA BUTONU */
.day-card .exercise-item:not(.pr-list-item),
.day-card.expanded-active .exercise-item:not(.pr-list-item),
.day-card.expanded-active.card-completed .exercise-item:not(.pr-list-item) {
    padding: 8px 14px 8px 18px !important;
    min-height: 44px !important;
    box-sizing: border-box !important;
}

/* Işıklı noktalı çubuk (.superset-energy-bridge) her zaman en solda (2 çizginin solunda) durur ve tamamlanmış günlerde asla kaymaz */
.superset-energy-bridge,
.day-card .exercise-item[data-ss-chain] .superset-energy-bridge,
.day-card.expanded-active .exercise-item[data-ss-chain] .superset-energy-bridge,
.day-card.card-completed .exercise-item[data-ss-chain] .superset-energy-bridge {
    left: 8px !important;
    width: 2.5px !important;
    background: linear-gradient(180deg, var(--theme-accent, #0A84FF) 0%, rgba(var(--theme-rgb, 10, 132, 255), 0.85) 100%) !important;
    box-shadow: 0 0 8px rgba(var(--theme-rgb, 10, 132, 255), 0.72) !important;
    border-radius: 99px !important;
    z-index: 8 !important;
}
.day-card.expanded-active .exercise-item[data-ss-chain] .superset-energy-bridge {
    left: 8px !important;
}
.superset-energy-bridge::after {
    width: 7px !important;
    height: 7px !important;
    background: #FFFFFF !important;
    border: 2px solid var(--theme-accent, var(--accent-blue)) !important;
    box-shadow: 0 0 6px rgba(var(--theme-rgb, 10, 132, 255), 0.85) !important;
}
.history-superset-single-row .superset-energy-bridge {
    top: 8px !important;
    bottom: 8px !important;
    left: 8px !important;
}
.history-superset-single-row .superset-energy-bridge::after {
    top: 50% !important;
}

/* 2 çizgi (.drag-handle) ve Egzersiz Numaraları (.ex-index) her zaman alt alta aynı hizada!
   Neden: Kart küçükken de yerini rezerve tutarak kart büyürken/küçülürken metinlerin sağa-sola zıplamasını %100 önler */
.day-card .exercise-item[data-ss-chain] .ex-name-wrap,
.day-card.expanded-active .exercise-item[data-ss-chain] .ex-name-wrap {
    padding-left: 0 !important;
    margin-left: 0 !important;
}
/* replaced by compact/expanded rule */
.day-card.expanded-active:not(.card-completed) .drag-handle:not(.ss-floating-drag) {
    opacity: 0.85 !important;
    pointer-events: auto !important;
    cursor: grab !important;
}
.day-card.expanded-active:not(.card-completed) .drag-handle.ss-floating-drag {
    left: 12px !important;
    width: 20px !important;
    height: 24px !important;
    padding: 0 !important;
    opacity: 0.9 !important;
    cursor: grab !important;
}
.day-card.expanded-active:not(.card-completed) .drag-handle:hover {
    opacity: 1 !important;
    color: var(--theme-accent, var(--accent-blue)) !important;
}
.ex-index {
    display: inline-block !important;
    min-width: 20px !important;
    margin-right: 5px !important;
    text-align: left !important;
    font-variant-numeric: tabular-nums !important;
}

/* Sağdaki Süperset Bağlama Butonu (.link-icon-btn): Aynı yer ve boyutta, iOS 18 cam tasarım diline uygun */
.link-icon-btn {
    position: absolute !important;
    right: 10px !important;
    bottom: -11px !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle at 30% 25%, #FFFFFF 0%, #EDF3FF 100%) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.45) !important;
    color: var(--theme-accent, var(--accent-blue)) !important;
    box-shadow:
        0 3px 8px rgba(var(--theme-rgb, 10, 132, 255), 0.22),
        0 1px 3px rgba(0, 0, 0, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
    z-index: 14 !important;
    transition: transform 0.22s var(--ios-spring), background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, opacity 0.22s ease !important;
}
[data-theme="dark"] .link-icon-btn {
    background: radial-gradient(circle at 30% 25%, rgba(42, 48, 66, 0.96) 0%, rgba(20, 24, 34, 0.98) 100%) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.55) !important;
    color: var(--theme-accent, var(--accent-blue)) !important;
    box-shadow:
        0 4px 10px rgba(0, 0, 0, 0.55),
        0 0 8px rgba(var(--theme-rgb, 10, 132, 255), 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.day-card.expanded-active .link-icon-btn:hover {
    background: linear-gradient(135deg, var(--theme-accent, #0A84FF) 0%, #5856D6 100%) !important;
    color: #FFFFFF !important;
    border-color: rgba(255, 255, 255, 0.6) !important;
    transform: scale(1.14) !important;
    box-shadow: 0 5px 14px rgba(var(--theme-rgb, 10, 132, 255), 0.48) !important;
}

/* 120FPS Sürükle-Bırak Yüzen Cam Önizleme & Yer Tutucu */
.exercise-item.is-drag-placeholder {
    opacity: 0.16 !important;
    border: none !important;
    border-radius: 12px !important;
    background: rgba(var(--theme-rgb, 120, 120, 128), 0.14) !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Sürükleme Anında ve Odaklanmada Keskin Köşeli Çerçeveleri Sıfırla */
.exercise-item,
.exercise-item:focus,
.exercise-item:active,
.exercise-item:focus-visible,
.exercise-item *,
.drag-handle,
.drag-handle:focus,
.drag-handle:active {
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
}
.ios-drag-floating-ghost {
    border-radius: 13px !important;
    overflow: hidden !important;
    border: none !important;
    outline: none !important;
    border-radius: 14px !important;
    box-shadow:
        0 20px 44px rgba(0, 0, 0, 0.30),
        0 4px 14px rgba(0, 0, 0, 0.12),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.85) !important;
    background: rgba(255, 255, 255, 0.95) !important;
    transition: box-shadow 0.2s ease !important;
}
[data-theme="dark"] .ios-drag-floating-ghost {
    background: rgba(24, 28, 38, 0.96) !important;
    border: none !important;
    outline: none !important;
    border-radius: 14px !important;
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.72),
        0 6px 18px rgba(0, 0, 0, 0.40),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.25) !important;
}
.ios-drag-floating-ghost .exercise-item {
    background: transparent !important;
    margin-bottom: 0 !important;
}

/* MADDE 7: EGZERSİZ GELİŞİM TAKİP & VERİ MERKEZİ PARLAK NEON GRAFİK STİLLERİ */
.prog-chart-box,
[data-theme="dark"] .prog-chart-box {
    background: radial-gradient(120% 100% at 50% 0%, rgba(16, 24, 40, 0.92) 0%, rgba(9, 13, 22, 0.96) 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.28) !important;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.45) !important;
}
.prog-axis-line {
    stroke: rgba(160, 178, 210, 0.22);
    stroke-width: 1;
}
.prog-grid-line {
    stroke: rgba(160, 178, 210, 0.14) !important;
    stroke-width: 1 !important;
    stroke-dasharray: 2.5 3.5 !important;
}
.ex-chart-yaxis-lbl {
    font-size: 8.5px;
    font-weight: 700;
    fill: rgba(185, 200, 226, 0.68);
    font-variant-numeric: tabular-nums;
}

/* MADDE 8: EGZERSİZ HAVUZU SAĞ EN ÜST DIŞ MİNİMALİST TEST MODU BUTONU */
.pool-header-actions {
    position: absolute;
    top: 44px;
    right: 30px;
    z-index: 30;
}
.pool-mode-toggle-btn.is-minimal-corner {
    position: static !important;
    transform: none !important;
    height: 36px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    background: var(--menu-bg) !important;
    border: 1px solid var(--card-border) !important;
    font-size: 0.75em !important;
    font-weight: 700 !important;
    color: var(--text-secondary) !important;
    box-shadow: var(--menu-btn-shadow) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    transition: transform 0.2s var(--ios-spring), color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease !important;
}
.pool-mode-toggle-btn.is-minimal-corner:hover {
    transform: translateY(-1.5px) !important;
    color: var(--text-main) !important;
    border-color: rgba(10, 132, 255, 0.42) !important;
}

/* MADDE 9: GEÇMİŞ ANTRENMANLAR "EN ÜST" BUTONU (SOL KARTIN SAĞ EN ÜST KÖŞESİ) & LİSTE KAYMA ALANI */
.history-deck-header.history-deck-header-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
}
.history-deck-header-texts {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.history-deck-header .history-deck-top-btn {
    position: static !important;
    flex-shrink: 0 !important;
    height: 28px !important;
    padding: 0 10px !important;
    opacity: 0.55;
    pointer-events: auto !important;
}
.history-deck-header .history-deck-top-btn.is-visible {
    opacity: 1 !important;
}
#historyDeckStackContainer .history-deck-fan {
    position: relative !important;
    padding-bottom: 430px !important;
    scroll-behavior: smooth;
}

/* MADDE 10: HAFTALIK PROGRAM BAŞLIĞI, "SONRAKİ HAFTA" / "BU HAFTA" MOD BUTONU,
   3. YÜZ (PLANLAMA YÜZÜ) VE SONRAKİ HAFTA KİLİTLİ (BLUR) KART SİSTEMİ */
.ios-weekly-brand-cluster {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}
.ios-weekly-title-icon {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: linear-gradient(135deg, #AF52DE 0%, #5856D6 100%);
    color: #FFFFFF;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 16px rgba(175, 82, 222, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.35);
    flex-shrink: 0;
}
.ios-weekly-title-row {
    display: flex;
    align-items: center;
    gap: 10px;
}
.ios-weekly-main-title {
    font-size: 1.75em !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    background: linear-gradient(135deg, var(--text-main) 0%, var(--accent-blue) 160%);
    -webkit-background-clip: text;
}
.ios-weekly-mode-badge {
    font-size: 0.66em;
    font-weight: 800;
    letter-spacing: 0.06em;
    padding: 3.5px 9px;
    border-radius: 999px;
    background: rgba(10, 132, 255, 0.14);
    border: 1px solid rgba(10, 132, 255, 0.32);
    color: var(--accent-blue);
    white-space: nowrap;
}
.ios-weekly-mode-badge.is-next-week {
    background: rgba(191, 90, 242, 0.18);
    border-color: rgba(191, 90, 242, 0.45);
    color: #BF5AF2;
}
[data-theme="dark"] .ios-weekly-mode-badge.is-next-week {
    color: #E0B0FF;
}

.weekly-header-right-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ios-next-week-toggle-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    padding: 0 15px;
    border-radius: 14px;
    font-size: 0.82em;
    font-weight: 800;
    letter-spacing: -0.01em;
    cursor: pointer;
    color: #FFFFFF;
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%);
    border: 1px solid rgba(255, 255, 255, 0.26);
    box-shadow: 0 8px 20px -4px rgba(10, 132, 255, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.35);
    transition: transform 0.22s var(--ios-spring), box-shadow 0.22s ease, background 0.22s ease;
    white-space: nowrap;
}
.ios-next-week-toggle-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 26px -4px rgba(10, 132, 255, 0.52), inset 0 1px 0 rgba(255, 255, 255, 0.45);
}
.ios-next-week-toggle-btn.is-next-week-active {
    background: linear-gradient(135deg, #AF52DE 0%, #5856D6 100%);
    box-shadow: 0 8px 20px -4px rgba(175, 82, 222, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.35);
}
.ios-next-week-toggle-btn .inwt-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.nw-planned-badge {
    font-size: 0.52em;
    font-weight: 800;
    padding: 2.5px 8px;
    border-radius: 999px;
    background: rgba(48, 209, 88, 0.18);
    border: 1px solid rgba(48, 209, 88, 0.42);
    color: #30D158;
    vertical-align: middle;
    margin-left: 6px;
    letter-spacing: 0.02em;
}

/* Sonraki Hafta Modu – Kilitli Kart Kuralı (Dış çerçeve net, sadece iç liste blur + asma kilit + metin) */
.exercise-list-lock-shell {
    position: relative;
    flex-grow: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    border-radius: 16px;
    overflow: hidden;
}
.exercise-list-lock-shell .exercise-list:not(.ios-drag-floating-ghost) {
    height: 100%;
    flex-grow: 1;
}
.exercise-list.is-blurred-list {
    filter: blur(7px) !important;
    -webkit-filter: blur(7px) !important;
    opacity: 0.38 !important;
    pointer-events: none !important;
    user-select: none !important;
}
.next-week-lock-overlay {
    position: absolute;
    inset: 0;
    z-index: 20;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 90px;
    gap: 10px;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
    background: radial-gradient(circle at center 120px, rgba(15, 18, 26, 0.26) 0%, rgba(15, 18, 26, 0.08) 100%);
    pointer-events: auto;
}
.nw-lock-icon-badge {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.38);
    color: var(--theme-accent, var(--accent-blue));
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.95);
}
[data-theme="dark"] .nw-lock-icon-badge {
    background: rgba(24, 28, 38, 0.90);
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.48);
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}
.nw-lock-text {
    font-size: 0.92em;
    font-weight: 800;
    letter-spacing: -0.015em;
    color: var(--text-main);
    padding: 6px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
}
[data-theme="dark"] .nw-lock-text {
    background: rgba(20, 24, 34, 0.88);
    border-color: rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.50);
}

/* 3. YÜZ: PLANLAMA YÜZÜ (.card-plan) STİLLERİ */
.card-plan {
    position: absolute;
    inset: 0;
    display: none;
    flex-direction: column;
    padding: 20px;
    width: 100%;
    height: 100%;
    z-index: 2;
    box-sizing: border-box;
}
.plan-face-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--card-border);
    padding-bottom: 10px;
    margin-bottom: 12px;
    flex-shrink: 0;
}
.pfh-left {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.pfh-kicker {
    font-size: 0.64em;
    font-weight: 900;
    letter-spacing: 0.06em;
    color: var(--theme-accent, var(--accent-blue));
    text-transform: uppercase;
}
.pfh-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
}
.pfh-day-name {
    font-size: 1.22em;
    font-weight: 900;
    letter-spacing: -0.025em;
    color: var(--text-main);
}
.pfh-type-pill {
    font-size: 0.72em;
    font-weight: 800;
    padding: 2.5px 9px;
    border-radius: 999px;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.16);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.34);
    color: var(--theme-accent, var(--accent-blue));
}
.plan-face-scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-right: 4px;
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.plan-ex-box {
    background: var(--btn-bg);
    border: 1px solid rgba(150, 150, 150, 0.16);
    border-radius: 14px;
    padding: 10px 13px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.plan-ex-box.is-pr-broken {
    background:
        radial-gradient(110% 100% at 96% 10%, rgba(249, 212, 35, 0.22) 0%, transparent 62%),
        linear-gradient(135deg, rgba(255, 248, 220, 0.85) 0%, rgba(253, 242, 195, 0.75) 100%);
    border-color: rgba(217, 155, 22, 0.55);
}
[data-theme="dark"] .plan-ex-box.is-pr-broken {
    background:
        radial-gradient(115% 100% at 96% 10%, rgba(249, 212, 35, 0.24) 0%, transparent 62%),
        linear-gradient(135deg, rgba(48, 38, 10, 0.88) 0%, rgba(26, 20, 8, 0.92) 100%);
    border-color: rgba(250, 204, 21, 0.52);
}
.plan-ex-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.plan-ex-name-cluster {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
}
.plan-ex-title {
    font-weight: 800;
    font-size: 0.92em;
    color: var(--text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.plan-pr-gold-badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 7px;
    border-radius: 999px;
    font-size: 0.66em;
    font-weight: 900;
    background: linear-gradient(135deg, #FFE066 0%, #F59F00 55%, #B8860B 100%);
    color: #2B1B00;
    border: 1px solid rgba(255, 245, 190, 0.9);
    box-shadow: 0 2px 6px rgba(245, 159, 0, 0.35);
    flex-shrink: 0;
}
.plan-smart-chip {
    font-size: 0.68em;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.15);
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.32);
    color: var(--theme-accent, var(--accent-blue));
    white-space: nowrap;
    flex-shrink: 0;
}
.plan-last-set-reminder {
    font-size: 0.75em;
    font-weight: 600;
    color: var(--text-secondary);
    letter-spacing: -0.01em;
    font-variant-numeric: tabular-nums;
    margin-bottom: 2px;
}
.plan-inputs-row {
    display: flex;
    gap: 8px;
    align-items: center;
}
.plan-face-actions {
    display: flex;
    gap: 10px;
    width: 100%;
    margin-top: auto;
    flex-shrink: 0;
}
.plan-btn-secondary {
    flex: 1;
    height: 48px !important;
    background: rgba(150, 150, 150, 0.16) !important;
    border: 1px solid rgba(150, 150, 150, 0.28) !important;
    color: var(--text-main) !important;
    font-weight: 700 !important;
}
.plan-btn-primary {
    flex: 1.35;
    height: 48px !important;
    background: linear-gradient(135deg, #34C759 0%, #15803D 100%) !important;
    color: #FFFFFF !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 18px rgba(52, 199, 89, 0.32) !important;
}



/* ============================================================================
   V43 KULLANICI İSTEKLERİ GÜNCELLEMESİ (6 MADDENİN TAMAMI)
============================================================================ */

/* MADDE 2: Haftalık Program Tamamlanmış Karttan veya Kilitli Karttan "Planla" Butonu */
.action-btn-split.btn-plan-nextweek {
    background: linear-gradient(135deg, #0A84FF 0%, #5856D6 100%) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 18px rgba(10, 132, 255, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    opacity: 1 !important;
}
.action-btn-split.btn-plan-nextweek:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 24px rgba(10, 132, 255, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
    filter: brightness(1.06) !important;
}

/* MADDE 3: Kartlarda Apple Spring Katman Derinliği & Üst Widget'ta Ultra Akıcı 3D Flip */
.day-card.is-flipping,
.day-card.expanded-active.is-flipping,
#progressCard.day-card.is-flipping,
.day-card.ex-data-card.is-flipping {
    transition: none !important;
    perspective: none !important;
    -webkit-perspective: none !important;
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
    will-change: transform, opacity !important;
    pointer-events: none !important;
}

/* Ana Sayfa Üst Widget: 3D Flip Katmanı */
.top-widget {
    perspective: 1800px !important;
    -webkit-perspective: 1800px !important;
}

.top-widget #flipInner {
    transform-style: preserve-3d !important;
    -webkit-transform-style: preserve-3d !important;
}

.top-widget #flipInner.is-flipping {
    will-change: transform !important;
    pointer-events: none !important;
}

/* MADDE 4: Ana Sayfadaki Üst Widget Hover'da Yazıların Bulanıklaşmasını Önleme (Subpixel Transform Sıfırlama) */
.top-widget:hover:not(.expanded-active):not(.is-flipped) {
    transform: none !important;
}
.top-widget:hover:not(.expanded-active):not(.is-flipped) .widget-front {
    box-shadow: 0 16px 38px -4px rgba(0, 0, 0, 0.28), 0 4px 14px -2px rgba(0, 0, 0, 0.14) !important;
}
.top-widget.sky-sunrise:hover:not(.expanded-active) #flipInner { box-shadow: 0 12px 28px -5px rgba(247, 185, 99, 0.24) !important; }
.top-widget.sky-morning:hover:not(.expanded-active) #flipInner,
.top-widget.sky-noon:hover:not(.expanded-active) #flipInner,
.top-widget.sky-day:hover:not(.expanded-active) #flipInner { box-shadow: 0 12px 28px -5px rgba(21, 108, 227, 0.24) !important; }
.top-widget.sky-sunset:hover:not(.expanded-active) #flipInner,
.top-widget.sky-evening:hover:not(.expanded-active) #flipInner { box-shadow: 0 12px 28px -5px rgba(209, 86, 71, 0.24) !important; }
.top-widget.sky-night:hover:not(.expanded-active) #flipInner { box-shadow: 0 12px 28px -5px rgba(29, 53, 88, 0.32) !important; }

/* CNS modunda veya sağdaki mod değiştirme butonuna basarken widget kesinlikle içe batmasın */
.top-widget.is-flipped:active,
.top-widget:has(.fatigue-btn:active),
.top-widget:has(.cns-back-btn:active),
.top-widget:has(.widget-back button:active) {
    transform: none !important;
}
.widget-back button:active,
.cns-back-btn:active,
.fatigue-btn:active {
    transform: none !important;
}

/* MADDE 5: Antrenman Geçmişi Destesinde Seçili Kartın Hemen Üstündeki Kartın Küçük Bir Kısmının Gözükmesi */
.history-deck-card.is-peek-above {
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.58) !important;
    box-shadow: 0 4px 14px -2px rgba(var(--theme-rgb, 10, 132, 255), 0.25) !important;
    cursor: pointer !important;
}
.history-deck-card.is-peek-above:hover {
    transform: translateY(-2px) !important;
    border-color: var(--accent-blue) !important;
}

/* MADDE 6: Egzersiz Verileri Başlığı (Haftalık Program İle Aynı iOS Sadeliğinde) &
   Grafik Kartlarının Alt Işık Köşesi ve Dış Kılıf Çizgilerinin Giderilmesi */
.ios-weekly-title-icon.ios-exdata-title-icon {
    background: linear-gradient(135deg, #32ADE6 0%, #007AFF 100%) !important;
    box-shadow: 0 6px 16px rgba(10, 132, 255, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}
.ios-weekly-mode-badge.ios-exdata-mode-badge {
    background: rgba(50, 173, 230, 0.14) !important;
    border: 1px solid rgba(50, 173, 230, 0.34) !important;
    color: #0284C7 !important;
}
[data-theme="dark"] .ios-weekly-mode-badge.ios-exdata-mode-badge {
    background: rgba(50, 173, 230, 0.18) !important;
    border-color: rgba(100, 210, 255, 0.38) !important;
    color: #64D2FF !important;
}

/* Egzersiz Verileri kartlarında alt ışıkların köşeli kesilmesini (contain: paint) ve çift çerçeve (dış kılıf) görünümünü tamamen kaldır */
.exdata-cards-scroll {
    padding: 10px 14px 36px 14px !important;
    overflow-x: visible !important;
}

.day-card.ex-data-card,
.day-card.ex-data-card.is-highlighted-card {
    content-visibility: visible !important;
    contain: none !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    background-clip: padding-box !important;
    -webkit-background-clip: padding-box !important;
}

/* İç yüzlerdeki (.progress-card-front / .progress-card-back) ikinci çerçeve, gölge ve arka planı tamamen sıfırla ki dış kılıf çizgisi oluşmasın */
.day-card.ex-data-card .progress-card-front,
.day-card.ex-data-card .progress-card-back,
.day-card.ex-data-card:hover .progress-card-front,
.day-card.ex-data-card:hover .progress-card-back,
[data-theme="dark"] .day-card.ex-data-card .progress-card-front,
[data-theme="dark"] .day-card.ex-data-card .progress-card-back,
[data-theme="dark"] .day-card.ex-data-card:hover .progress-card-front,
[data-theme="dark"] .day-card.ex-data-card:hover .progress-card-back {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Kartın tüm Aurora yüzeyi ve yumuşak alt ışığı doğrudan tek katman olarak .day-card.ex-data-card üzerinde dursun */
.day-card.ex-data-card.progress-theme-improving {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(6, 182, 212, 0.32) 0%, rgba(16, 185, 129, 0.14) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(10, 132, 255, 0.22) 0%, transparent 62%),
        linear-gradient(155deg, #F7FEFF 0%, #ECFDF5 100%) !important;
    border: 1px solid rgba(6, 182, 212, 0.36) !important;
    box-shadow: 0 12px 26px -8px rgba(6, 182, 212, 0.18), 0 4px 10px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .day-card.ex-data-card.progress-theme-improving {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(0, 210, 211, 0.38) 0%, rgba(16, 185, 129, 0.18) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(10, 132, 255, 0.26) 0%, transparent 62%),
        linear-gradient(160deg, #101E26 0%, #0B141A 100%) !important;
    border: 1px solid rgba(0, 210, 211, 0.38) !important;
    box-shadow: 0 14px 30px -8px rgba(0, 0, 0, 0.55), 0 8px 22px -10px rgba(0, 210, 211, 0.20) !important;
}

.day-card.ex-data-card.progress-theme-plateau {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(255, 69, 58, 0.32) 0%, rgba(255, 149, 0, 0.14) 44%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(255, 149, 0, 0.22) 0%, transparent 62%),
        linear-gradient(155deg, #FFF9F6 0%, #FEF2F2 100%) !important;
    border: 1px solid rgba(255, 69, 58, 0.36) !important;
    box-shadow: 0 12px 26px -8px rgba(255, 69, 58, 0.18), 0 4px 10px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .day-card.ex-data-card.progress-theme-plateau {
    background:
        radial-gradient(120% 95% at 96% 4%, rgba(255, 69, 58, 0.40) 0%, rgba(255, 149, 0, 0.18) 45%, transparent 68%),
        radial-gradient(100% 88% at 4% 96%, rgba(255, 159, 10, 0.26) 0%, transparent 62%),
        linear-gradient(160deg, #241313 0%, #150B0B 100%) !important;
    border: 1px solid rgba(255, 94, 58, 0.40) !important;
    box-shadow: 0 14px 30px -8px rgba(0, 0, 0, 0.55), 0 8px 22px -10px rgba(255, 69, 58, 0.22) !important;
}

.day-card.ex-data-card.progress-theme-neutral {
    border: 1px solid rgba(50, 173, 230, 0.34) !important;
    box-shadow: 0 12px 26px -8px rgba(50, 173, 230, 0.16), 0 4px 10px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .day-card.ex-data-card.progress-theme-neutral {
    border: 1px solid rgba(100, 210, 255, 0.36) !important;
    box-shadow: 0 14px 30px -8px rgba(0, 0, 0, 0.55), 0 8px 22px -10px rgba(50, 173, 230, 0.18) !important;
}

.day-card.ex-data-card {
    transition: border-color 0.22s ease, box-shadow 0.22s ease !important;
}
.day-card.ex-data-card:hover {
    transform: none !important;
    border-color: rgba(var(--theme-rgb), 0.58) !important;
    box-shadow: 0 14px 28px -6px rgba(var(--theme-rgb), 0.25) !important;
}
[data-theme="dark"] .day-card.ex-data-card:hover {
    transform: none !important;
    border-color: rgba(var(--theme-rgb), 0.62) !important;
    box-shadow: 0 16px 32px -6px rgba(0, 0, 0, 0.6), 0 0 16px -4px rgba(var(--theme-rgb), 0.25) !important;
}


/* ============================================================================
   V44 GÜNCELLEMESİ (7 MADDENİN TAMAMI - FLIP, WIDGET KALIP SİLME, IOS SIRALA,
   GRAFİK KARTI ÜST KISIM YENİ TASARIM & SARI YASAKLI 7 ÖZGÜN GÜN RENGİ)
============================================================================ */

/* ----------------------------------------------------------------------------
   MADDE 2 & 3: SAF 3D FLIP (İÇE GÖÇME / SCALE YOK, 120FPS PÜRÜZSÜZ GEÇİŞ)
   Büyük Gün Kartı (.expanded-active) dahil tüm kartlarda kusursuz 3D dönüş
---------------------------------------------------------------------------- */
.day-card.is-flipping,
.day-card.expanded-active.is-flipping,
#progressCard.day-card.is-flipping,
.day-card.ex-data-card.is-flipping {
    transition: none !important;
    perspective: none !important;
    -webkit-perspective: none !important;
    transform-style: flat !important;
    -webkit-transform-style: flat !important;
    transform-origin: center center !important;
    will-change: transform, opacity !important;
    pointer-events: none !important;
}

/* ----------------------------------------------------------------------------
   MADDE 4: ANASAYFA ÜST WIDGET FLIP OLURKEN ARKADA KALIP / GÖLGE İZİ KALMAMASI
---------------------------------------------------------------------------- */
#topWidgetWrapper,
.top-widget,
.top-widget.sky-sunrise,
.top-widget.sky-morning,
.top-widget.sky-noon,
.top-widget.sky-day,
.top-widget.sky-sunset,
.top-widget.sky-evening,
.top-widget.sky-night,
.top-widget:hover,
.top-widget.expanded-active,
.top-widget #flipInner,
#flipInner,
#flipInner.is-flipped,
#flipInner.is-flipping,
.top-widget.sky-sunrise:hover:not(.expanded-active) #flipInner,
.top-widget.sky-morning:hover:not(.expanded-active) #flipInner,
.top-widget.sky-noon:hover:not(.expanded-active) #flipInner,
.top-widget.sky-day:hover:not(.expanded-active) #flipInner,
.top-widget.sky-sunset:hover:not(.expanded-active) #flipInner,
.top-widget.sky-evening:hover:not(.expanded-active) #flipInner,
.top-widget.sky-night:hover:not(.expanded-active) #flipInner {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

/* Gölge ve kenarlık yalnızca dönen yüzeylerin (.widget-front ve .widget-back) kendisinde bulunur */
.top-widget .widget-front,
.top-widget .widget-back {
    border-radius: 28px !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.22),
        0 4px 12px -2px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        inset 0 -1px 0 rgba(0, 0, 0, 0.18) !important;
}
[data-theme="dark"] .top-widget .widget-front,
[data-theme="dark"] .top-widget .widget-back {
    box-shadow:
        0 18px 42px -8px rgba(0, 0, 0, 0.56),
        0 4px 14px -2px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.28),
        inset 0 -1px 0 rgba(0, 0, 0, 0.24) !important;
}
.top-widget.expanded-active .widget-front {
    border-radius: 36px !important;
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}

/* ----------------------------------------------------------------------------
   MADDE 5: VERİ MERKEZİ (.ios-sort-dropdown) IOS 18 UYUMLU ÖZEL SIRALAMA MENÜSÜ
---------------------------------------------------------------------------- */
.exdata-top-shell {
    position: relative;
    z-index: 25;
}

.ios-sort-dropdown {
    position: relative;
    display: inline-flex;
    align-items: center;
    z-index: 40;
}

.ios-sort-trigger {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7.5px 13px;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.92);
    color: var(--text-main);
    font-family: inherit;
    font-size: 0.77em;
    font-weight: 700;
    cursor: pointer;
    transition: transform 0.2s var(--ios-spring), border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
    white-space: nowrap;
}

[data-theme="dark"] .ios-sort-trigger {
    background: rgba(24, 27, 36, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.11);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.14);
    color: #FFFFFF;
}

.ios-sort-trigger:hover {
    border-color: rgba(10, 132, 255, 0.45);
    transform: translateY(-1px);
}

.ios-sort-dropdown.is-open .ios-sort-trigger {
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.16);
}

.ios-sort-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-blue);
}

.ios-sort-label-prefix {
    color: var(--text-secondary);
    font-weight: 700;
}

.ios-sort-label-val {
    color: var(--text-main);
    font-weight: 800;
    letter-spacing: -0.01em;
}

.ios-sort-chevron {
    color: var(--text-secondary);
    margin-left: 2px;
    transition: transform 0.26s var(--ios-spring), color 0.2s ease;
}

.ios-sort-dropdown.is-open .ios-sort-chevron {
    transform: rotate(180deg);
    color: var(--accent-blue);
}

.ios-sort-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 248px;
    margin: 0;
    padding: 6px;
    list-style: none;
    border-radius: 18px;
    background: linear-gradient(165deg, #FFFFFF 0%, #F4F6FB 100%);
    border: 1px solid rgba(10, 132, 255, 0.24);
    box-shadow:
        0 20px 44px -8px rgba(0, 0, 0, 0.22),
        0 4px 12px rgba(0, 0, 0, 0.06),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.98);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px) scale(0.96);
    transform-origin: top right;
    transition: opacity 0.22s ease, transform 0.26s var(--ios-spring), visibility 0s linear 0.22s;
    z-index: 200;
}

[data-theme="dark"] .ios-sort-menu {
    background: linear-gradient(165deg, #1A1E29 0%, #11141C 100%);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow:
        0 24px 52px -8px rgba(0, 0, 0, 0.72),
        0 0 0 1px rgba(10, 132, 255, 0.20),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.18);
}

.ios-sort-dropdown.is-open .ios-sort-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    transition: opacity 0.22s ease, transform 0.26s var(--ios-spring), visibility 0s linear 0s;
}

.ios-sort-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 12px;
    cursor: pointer;
    transition: background-color 0.16s ease;
    margin-bottom: 2px;
}
.ios-sort-option:last-child {
    margin-bottom: 0;
}
.ios-sort-option:hover {
    background: rgba(150, 150, 150, 0.10);
}
.ios-sort-option.active {
    background: rgba(10, 132, 255, 0.13);
}
[data-theme="dark"] .ios-sort-option.active {
    background: rgba(10, 132, 255, 0.22);
}

.iso-opt-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(150, 150, 150, 0.12);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.88em;
    flex-shrink: 0;
}
.ios-sort-option.active .iso-opt-icon {
    background: rgba(10, 132, 255, 0.20);
}

.iso-opt-texts {
    display: flex;
    flex-direction: column;
    gap: 1px;
    flex: 1;
    min-width: 0;
}
.iso-opt-title {
    font-size: 0.80em;
    font-weight: 800;
    color: var(--text-main);
    white-space: nowrap;
}
.ios-sort-option.active .iso-opt-title {
    color: var(--accent-blue);
}
[data-theme="dark"] .ios-sort-option.active .iso-opt-title {
    color: #7DD3FC;
}
.iso-opt-sub {
    font-size: 0.65em;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}
.iso-opt-check {
    font-size: 0.86em;
    font-weight: 900;
    color: var(--accent-blue);
    opacity: 0;
    transform: scale(0.7);
    transition: opacity 0.16s ease, transform 0.18s var(--ios-spring);
}
.ios-sort-option.active .iso-opt-check {
    opacity: 1;
    transform: scale(1);
}

/* ----------------------------------------------------------------------------
   MADDE 6: ANA SAYFA #progressCard ÜST KPI BÖLÜMÜ YENİDEN TASARIMI
   ("Seçili" ve "Net Durum & PR" içindeki açıklamalar asla kesilmez, tam sığar)
---------------------------------------------------------------------------- */
#progressCard .prog-slide-stage {
    gap: 5px !important;
}

#progressCard .prog-v2-kpi-strip {
    display: grid !important;
    grid-template-columns: 0.88fr 1.08fr 1.14fr !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
}

#progressCard .prog-v2-kpi-box {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 3px !important;
    padding: 5.5px 8px !important;
    border-radius: 11px !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

.pvk-head-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    width: 100%;
    min-width: 0;
}

#progressCard .pvk-lbl {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    color: var(--text-secondary) !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pvk-head-tag {
    font-size: 10px;
    font-weight: 700;
    padding: 1.5px 6px;
    border-radius: 5px;
    background: rgba(var(--theme-rgb), 0.16);
    color: var(--theme-accent);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    flex-shrink: 0;
}

.pvk-pr-tag-gold {
    font-size: 10.5px;
    font-weight: 900;
    padding: 1.5px 6px;
    border-radius: 5px;
    background: linear-gradient(135deg, rgba(254, 240, 138, 0.9) 0%, rgba(245, 158, 11, 0.55) 100%);
    color: #78350F;
    border: 1px solid rgba(217, 119, 6, 0.38);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    flex-shrink: 0;
}
[data-theme="dark"] .pvk-pr-tag-gold {
    background: linear-gradient(135deg, rgba(250, 204, 21, 0.26) 0%, rgba(180, 83, 9, 0.22) 100%);
    color: #FEF08A;
    border-color: rgba(250, 204, 21, 0.42);
}

.pvk-main-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 4px;
    width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
}

.pvk-main-weight {
    font-size: 14.5px;
    font-weight: 800;
    color: var(--text-main);
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.02em;
    white-space: nowrap;
}

.pvk-sub-meta {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.pvk-sub-meta b {
    color: var(--theme-accent);
    font-weight: 800;
}

.pvk-delta-summary {
    font-size: 0.75em;
    font-weight: 900;
    color: var(--text-main);
    letter-spacing: -0.02em;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* ----------------------------------------------------------------------------
   MADDE 7: GÜN ANTRENMAN KARTLARINDA SARI YASAK!
   PR (Altın/Sarı), Gelişim (Cyan/Teal) ve Plato (Turuncu/Kırmızı) ile karışmayan
   7 Özgün Haftalık Gün Rengi:
   1. Pazartesi: theme-blue   (Kraliyet Mavisi - #0A84FF)
   2. Salı:      theme-indigo (Derin İndigo / Safir - #5E5CE6)
   3. Çarşamba:  theme-green  (Zümrüt / Orman Yeşili - #28CD41)
   4. Perşembe:  theme-purple (Ametist Moru - #AF52DE)
   5. Cuma:      theme-pink   (Fuşya / Gül Pembesi - #EC4899)
   6. Cumartesi: theme-plum   (Mürdüm / Bordo Vişne - #BE123C)
   7. Pazar:     theme-slate  (Titanyum Arduvaz - #64748B)
---------------------------------------------------------------------------- */
.day-card.theme-indigo,
.history-deck-card.theme-indigo {
    --theme-accent: #4F46E5;
    --theme-accent-2: #3730A3;
    --theme-rgb: 94, 92, 230;
    --theme-rgb-2: 67, 56, 202;
}
[data-theme="dark"] .day-card.theme-indigo,
[data-theme="dark"] .history-deck-card.theme-indigo {
    --theme-accent: #818CF8;
}

.day-card.theme-green,
.history-deck-card.theme-green {
    --theme-accent: #16A34A;
    --theme-accent-2: #15803D;
    --theme-rgb: 34, 197, 94;
    --theme-rgb-2: 21, 128, 61;
}
[data-theme="dark"] .day-card.theme-green,
[data-theme="dark"] .history-deck-card.theme-green {
    --theme-accent: #4ADE80;
}

.day-card.theme-pink,
.history-deck-card.theme-pink {
    --theme-accent: #DB2777;
    --theme-accent-2: #9D174D;
    --theme-rgb: 236, 72, 153;
    --theme-rgb-2: 190, 24, 93;
}
[data-theme="dark"] .day-card.theme-pink,
[data-theme="dark"] .history-deck-card.theme-pink {
    --theme-accent: #F472B6;
}

.day-card.theme-plum,
.history-deck-card.theme-plum {
    --theme-accent: #BE123C;
    --theme-accent-2: #881337;
    --theme-rgb: 190, 18, 60;
    --theme-rgb-2: 136, 19, 55;
}
[data-theme="dark"] .day-card.theme-plum,
[data-theme="dark"] .history-deck-card.theme-plum {
    --theme-accent: #FB7185;
}

.day-card.theme-slate,
.history-deck-card.theme-slate {
    --theme-accent: #475569;
    --theme-accent-2: #334155;
    --theme-rgb: 100, 116, 139;
    --theme-rgb-2: 71, 85, 105;
}
[data-theme="dark"] .day-card.theme-slate,
[data-theme="dark"] .history-deck-card.theme-slate {
    --theme-accent: #94A3B8;
}

/* Gündüz Modu Yeni Gün Temaları (Klasik Canlı Renkli Cam) */
body.card-theme-vibrant .day-card.theme-indigo,
body.card-theme-vibrant .day-card.theme-plum,
body.card-theme-vibrant .day-card.theme-slate,
body.card-theme-vibrant .history-deck-card.theme-indigo,
body.card-theme-vibrant .history-deck-card.theme-plum,
body.card-theme-vibrant .history-deck-card.theme-slate {
    background:
        radial-gradient(115% 90% at 96% 4%, rgba(var(--theme-rgb), 0.30) 0%, rgba(var(--theme-rgb), 0.10) 38%, transparent 65%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.22) 0%, transparent 60%),
        linear-gradient(155deg, #FFFFFF 0%, #F7F8FC 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.34) !important;
    box-shadow:
        0 12px 28px -6px rgba(var(--theme-rgb), 0.14),
        0 4px 12px rgba(0, 0, 0, 0.04),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95),
        inset 1px 0 0 rgba(255, 255, 255, 0.75) !important;
}

/* Gece Modu Yeni Gün Temaları (Klasik Canlı Renkli Cam) */
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-indigo,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-plum,
[data-theme="dark"] body.card-theme-vibrant .day-card.theme-slate,
[data-theme="dark"] body.card-theme-vibrant .history-deck-card.theme-indigo,
[data-theme="dark"] body.card-theme-vibrant .history-deck-card.theme-plum,
[data-theme="dark"] body.card-theme-vibrant .history-deck-card.theme-slate {
    background:
        radial-gradient(115% 92% at 96% 4%, rgba(var(--theme-rgb), 0.44) 0%, rgba(var(--theme-rgb), 0.14) 42%, transparent 68%),
        radial-gradient(95% 85% at 4% 96%, rgba(var(--theme-rgb-2), 0.28) 0%, transparent 60%),
        linear-gradient(160deg, #161820 0%, #0E1015 100%) !important;
    border: 1px solid rgba(var(--theme-rgb), 0.40) !important;
    box-shadow:
        0 14px 34px -6px rgba(0, 0, 0, 0.55),
        0 0 24px -6px rgba(var(--theme-rgb), 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22),
        inset 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}

.day-card.theme-indigo:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-plum:hover:not(.expanded-active):not(.is-animating),
.day-card.theme-slate:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--theme-rgb), 0.60) !important;
    box-shadow:
        0 18px 36px -6px rgba(var(--theme-rgb), 0.30),
        0 6px 14px -2px rgba(var(--theme-rgb), 0.16),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.94) !important;
}

[data-theme="dark"] .day-card.theme-indigo:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-plum:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] .day-card.theme-slate:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--theme-rgb), 0.66) !important;
    box-shadow:
        0 20px 40px -6px rgba(0, 0, 0, 0.65),
        0 0 26px -4px rgba(var(--theme-rgb), 0.34),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}


/* ============================================================================
   V45 SENIOR FRONT-END PERFORMANCE & 60/120 FPS NATIVE IOS ENGINE
   (Görsel kalite, glassmorphism, renkler ve yay animasyonları %100 korunarak
   GPU katman yönetimi, blur maliyeti, layout containment ve netlik optimize edildi)
============================================================================ */

/* 1. WIDGET CNS -> WEATHER BUTONUNA BASILDIĞINDA İÇE BATMA (SINK) ENGELİ */
/* Neden: Butona basıldığında veya CNS modundayken (.is-flipped) widget gövdesinin scale(0.98) ile içe göçmesini tamamen engeller */
.top-widget.is-flipped:active,
.top-widget.no-press-sink:active,
.top-widget:has(#flipInner.is-flipped):active,
.top-widget:has(#flipInner.is-flipping):active,
.top-widget:has(.fatigue-btn:active),
.top-widget:has(.cns-back-btn:active),
.top-widget:has(.widget-back button:active),
.top-widget:active:has(.icon-btn:active) {
    transform: none !important;
}

/* 2. KARTLAR BÜYÜDÜĞÜNDE ARKADAKİ WIDGET ANİMASYONUNUN DONMAMASI */
/* Neden: Ana sayfadaki bir kart büyüdüğünde (body.has-expanded-card) arka planda kalan #skyWidget ve #weatherCanvas döngüsünün duraklatılmasını önler */
body.has-expanded-card #homeView.view-active #skyWidget,
body.has-expanded-card #homeView.view-active #weatherFx,
body.has-expanded-card #homeView.view-active #weatherCanvas {
    animation-play-state: running !important;
}

#weatherCanvas {
    pointer-events: none;
    transform: translateZ(0);
    backface-visibility: hidden;
    will-change: transform;
    contain: strict;
}

/* 3. COMPOSITING & GPU KATMAN YÖNETİMİ */
/* Neden: Sadece aktif 3D dönüş yapan yüzeylerde preserve-3d tutulur; dinlenme halinde flat katman ile GPU VRAM tüketimi düşürülür */
.month-card-container:not(.is-scrolling-month) {
    transform-style: flat;
}
.day-card.is-animating,
.top-widget.is-animating {
    /* Neden: Sadece kart açılıp kapanırken geçici GPU katmanı açılır; animasyon bitince will-change: auto ile serbest bırakılır */
    will-change: top, left, width, height, transform !important;
}
.day-card:not(.is-animating):not(.is-flipping),
.top-widget:not(.is-animating):not(.is-flipping) {
    will-change: auto !important;
}

/* 4. ANİMASYON BİTİŞİNDE YAZILARIN HER ZAMAN JİLET GİBİ NET KALMASI */
/* Neden: Dinlenme durumunda küsüratlı scale veya kalıcı translateZ(0) dokusu bırakılmayarak alt-piksel (subpixel) font keskinliği korunur */
.day-card:not(:hover):not(.expanded-active):not(.is-animating):not(.is-flipping) .card-front,
.day-card.expanded-active:not(.is-animating):not(.is-flipping) .card-front,
.day-card.expanded-active:not(.is-animating):not(.is-flipping) .card-back,
.day-card.expanded-active:not(.is-animating):not(.is-flipping) .card-plan {
    transform: none !important;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

    

/* ============================================================================
   V46 KAPSAMLI IOS AYARLAR (SETTINGS) SAYFASI & DİNAMİK TERCİH STİLLERİ
   (Neden: Mevcut hiçbir stili ezmeden yalnızca yeni ve spesifik seçicilerle
   iOS 18 Settings tasarım dilini, kart yoğunluğunu, hover/animasyon/performans
   modlarını uygular.)
============================================================================ */

/* Neden: Sidebar'daki yeni Ayarlar ikonu için iOS sistem grisi/metalik ikon kutusu */
.sb-slate-gear {
    background: linear-gradient(135deg, #636366 0%, #3A3A3C 100%);
}
[data-theme="dark"] .sb-slate-gear {
    background: linear-gradient(135deg, #8E8E93 0%, #48484A 100%);
}

/* Neden: Ayarlar görünümünün diğer sayfalarla aynı max-width ve padding dilinde dikey kaydırılabilir olması */
#settingsView {
    overflow-y: auto !important;
    padding-bottom: 48px !important;
}

.settings-scroll-shell {
    position: relative;
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-bottom: 36px;
}

/* Neden: Ayarlar ana kartı mevcut .profile-card cam ve mevsimsel aurora dilini korur */
.profile-card.settings-main-card {
    max-width: 680px !important;
    padding: 28px 30px !important;
    border-radius: 32px !important;
    margin: 0 auto !important;
}

.settings-group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.72em;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-secondary);
    padding: 0 12px;
    margin: 10px 0 6px 0;
}
.settings-group-header:first-of-type {
    margin-top: 0;
}

.settings-group-footnote {
    font-size: 0.74em;
    font-weight: 500;
    color: var(--text-secondary);
    padding: 0 14px;
    margin: -14px 0 18px 0;
    line-height: 1.4;
    opacity: 0.85;
}

/* Neden: Klasik iOS Settings satır yapısı (sol ikon kutusu + başlık/alt açıklama + sağ değer/chevron/switch) */
#settingsView .ios-list-group {
    margin-bottom: 20px;
    border-radius: 16px;
}

#settingsView .ios-list-item.settings-row {
    min-height: 56px;
    height: auto;
    padding: 10px 18px;
    gap: 12px;
    transition: background-color var(--duration-fast) var(--ios-spring), transform var(--duration-fast) var(--ios-spring);
}

#settingsView .ios-list-item.settings-row.is-clickable {
    cursor: pointer;
}
#settingsView .ios-list-item.settings-row.is-clickable:hover {
    background-color: var(--btn-hover);
}
#settingsView .ios-list-item.settings-row.is-clickable:active {
    background-color: var(--btn-bg);
    transform: scale(0.992);
}

.settings-row-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
}

.settings-row-icon {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #FFFFFF;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28);
}
.settings-row-icon svg {
    width: 16px;
    height: 16px;
    stroke: #FFFFFF;
}

.settings-row-texts {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.settings-row-title {
    font-size: 0.96em;
    font-weight: 600;
    color: var(--text-main);
    letter-spacing: -0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.settings-row-sub {
    font-size: 0.72em;
    font-weight: 500;
    color: var(--text-secondary);
    line-height: 1.28;
}

.settings-row-right {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
}

.settings-row-value {
    font-size: 0.90em;
    font-weight: 600;
    color: var(--text-secondary);
    text-align: right;
}

.settings-row-value.is-accent {
    color: var(--accent-blue);
}

.settings-chevron {
    color: var(--text-secondary);
    opacity: 0.55;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    transition: transform 0.2s var(--ios-spring), opacity 0.2s ease;
}
#settingsView .ios-list-item.settings-row.is-clickable:hover .settings-chevron {
    transform: translateX(2px);
    opacity: 0.9;
}

/* Neden: Tehlikeli aksiyonlar (Tüm Verileri Sıfırla) kırmızı tonla ve ayrı grupta durur */
#settingsView .ios-list-group.settings-danger-group {
    border-color: rgba(255, 59, 48, 0.28);
    background: linear-gradient(145deg, rgba(255, 59, 48, 0.06) 0%, var(--bg-main) 100%);
}
[data-theme="dark"] #settingsView .ios-list-group.settings-danger-group {
    border-color: rgba(255, 69, 58, 0.34);
    background: linear-gradient(145deg, rgba(255, 69, 58, 0.10) 0%, var(--bg-main) 100%);
}

#settingsView .ios-list-item.settings-row.is-danger-row .settings-row-title {
    color: var(--danger-red) !important;
    font-weight: 700;
}
#settingsView .ios-list-item.settings-row.is-danger-row .settings-row-icon {
    background: linear-gradient(135deg, #FF453A 0%, #D70015 100%);
}
#settingsView .ios-list-item.settings-row.is-danger-row:hover {
    background-color: rgba(255, 59, 48, 0.10);
}

/* Geliştirici Modu (DevMode): Kapalıyken simülasyon ve test araçlarını tamamen gizle */
body:not(.dev-mode-active) .dev-mode-only {
    display: none !important;
}

/* --- AYAR ETKİ SINIFLARI (KART YOĞUNLUĞU, HOVER ŞİDDETİ, ANİMASYONLAR, PERFORMANS MODU) --- */

/* 1. Kart Yoğunluğu: Kompakt (Mevcut kartları bozmadan padding ve boşlukları sıkılaştırır) */
body.density-compact .calendar-grid {
    gap: 14px !important;
}
body.density-compact .day-card:not(.expanded-active) .card-front {
    padding: 14px 16px !important;
}
body.density-compact .day-card:not(.expanded-active) .day-header {
    margin-bottom: 8px !important;
    padding-bottom: 7px !important;
}
body.density-compact .day-card:not(.expanded-active) .exercise-item:not(.pr-list-item) {
    min-height: 34px !important;
    padding: 4px 10px 4px 12px !important;
    margin-bottom: 3px !important;
    font-size: 0.86em !important;
}
body.density-compact .small-stats-grid {
    gap: 12px !important;
}
body.density-compact .small-stat-card.watch-stat-card {
    padding: 10px 13px !important;
}

/* 2. Hover Şiddeti: Hafif (Tüm day-card ve ilgili kartların hover transform/gölge şiddetini yumuşatır) */
body.hover-intensity-light .day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
body.hover-intensity-light #progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 12px 24px -8px rgba(var(--theme-rgb, 10, 132, 255), 0.16),
        0 3px 8px -2px rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.65) !important;
}
body.hover-intensity-light .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 12px 24px -8px rgba(var(--season-rgb, 10, 132, 255), 0.22),
        0 3px 8px -2px rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.65) !important;
}
[data-theme="dark"] body.hover-intensity-light .day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping),
[data-theme="dark"] body.hover-intensity-light #progressCard.day-card:hover:not(.expanded-active):not(.is-animating):not(.is-flipping) {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 14px 28px -8px rgba(0, 0, 0, 0.48),
        0 0 14px -6px rgba(var(--theme-rgb, 10, 132, 255), 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}
[data-theme="dark"] body.hover-intensity-light .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-1.5px) !important;
    box-shadow:
        0 14px 28px -8px rgba(0, 0, 0, 0.48),
        0 0 16px -4px rgba(var(--season-rgb, 10, 132, 255), 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}
body.hover-intensity-light .top-widget:hover:not(.expanded-active):not(.is-flipped) {
    transform: translateY(-1px) !important;
}

/* 3. Animasyonlar: Azaltılmış (Mevcut animasyonları kapatmadan sadece süreyi ve yay şiddetini düşürür) */
body.anim-reduced {
    --duration-fast: 0.09s;
    --duration-ui: 0.24s;
    --duration-sidebar: 0.26s;
    --ios-spring: cubic-bezier(0.25, 0.9, 0.35, 1);
}

/* 4. Son Set Hatırlatıcıları: Kapalı (Planlama yüzündeki "En son set..." metinlerini gizler) */
body.hide-last-set-reminders .plan-last-set-reminder {
    display: none !important;
}

/* 5. Performans Modu: Açık (Ağır gölge ve efektleri geçici olarak kısar) */
body.perf-mode-active .day-card,
body.perf-mode-active .small-stat-card,
body.perf-mode-active .month-card,
body.perf-mode-active .profile-card,
body.perf-mode-active .pool-wrapper,
body.perf-mode-active .top-widget .widget-front,
body.perf-mode-active .top-widget .widget-back {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}
body.perf-mode-active .season-bg-art,
body.perf-mode-active .pr-bg-watermark,
body.perf-mode-active .stat-bg-graphic {
    opacity: 0.06 !important;
}

/* ============================================================================
   CNS WIDGET GENİŞLETİLMİŞ ANATOMİK ISI HARİTASI ENTEGRASYONU
============================================================================ */

/* 1. Arka plandaki 6 ana kartın derinliğe itilmesi (120 FPS Sıfır Kasma GPU Compositor Mimarisi) */
body.has-expanded-cns #homeGrid {
    transform: scale(0.98) translateZ(0) !important;
    opacity: 0.65 !important;
    pointer-events: none !important;
    transform-origin: center top !important;
    will-change: transform, opacity !important;
    transition: transform var(--duration-ui) var(--ios-spring), 
                opacity var(--duration-ui) var(--ios-spring) !important;
}

#homeGrid {
    transform-origin: center top;
    transition: transform var(--duration-ui) var(--ios-spring), 
                opacity var(--duration-ui) var(--ios-spring);
}

/* 2. CNS Genişletilmiş Kart Düzeni */
.top-widget.cns-expanded-active,
#skyWidget.expanded-active.is-flipped {
    border-radius: 28px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.12) !important;
}

#skyWidget.is-flipped #flipInner {
    height: 100% !important;
    border-radius: inherit !important;
}

/* Arka Yüz (CNS / Fatigue Modu): Hem küçük hem büyük modda aynı temel geometri */
#skyWidget.is-flipped .widget-back {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    height: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    background: radial-gradient(120% 100% at 8% 0%, rgba(10, 132, 255, 0.22) 0%, transparent 55%), radial-gradient(100% 100% at 92% 100%, rgba(48, 209, 88, 0.16) 0%, transparent 55%), linear-gradient(145deg, #161820 0%, #0D0F14 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

[data-theme="light"] #skyWidget.is-flipped .widget-back {
    background: radial-gradient(120% 100% at 8% 0%, rgba(0, 122, 255, 0.12) 0%, transparent 55%), radial-gradient(100% 100% at 92% 100%, rgba(52, 199, 89, 0.1) 0%, transparent 55%), linear-gradient(145deg, #FFFFFF 0%, #ECECF2 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

/* CNS Üst Şerit (Halka Gösterge + 3 Bar): Hem küçük hem büyük modda %100 SABİT VE AYNI KONUM */
#skyWidget.is-flipped .cns-top-strip-wrapper {
    height: 84px !important;
    flex: 0 0 84px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 24px !important;
    border-bottom: 1px solid transparent !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    position: relative !important;
    transition: border-bottom-color 0.35s ease !important;
}

#skyWidget.expanded-active.is-flipped .cns-top-strip-wrapper {
    border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

[data-theme="light"] #skyWidget.expanded-active.is-flipped .cns-top-strip-wrapper {
    border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}

/* Genişletilmiş Isı Haritası & Kas Kartları Alanı */
#skyWidget.expanded-active.is-flipped #cnsHeatmapExpandedContainer {
    display: flex !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    opacity: 1 !important;
    transition: opacity 0.32s cubic-bezier(0.2, 0, 0, 1) 0.14s !important;
}

.top-widget.is-animating #cnsHeatmapExpandedContainer {
    opacity: 0 !important;
    pointer-events: none !important;
}

#skyWidget:not(.expanded-active) #cnsHeatmapExpandedContainer {
    display: none !important;
}

/* CNS Geri Dön Butonu (Hava Durumuna Dön) */
#skyWidget.is-flipped .cns-back-btn {
    position: absolute !important;
    top: 21px !important;
    right: 24px !important;
    width: 42px !important;
    height: 42px !important;
    z-index: 100 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: white !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    transition: right 0.45s cubic-bezier(0.25, 1, 0.35, 1), transform 0.2s var(--ios-spring) !important;
}

/* Panel Genişlediğinde Geri Butonu Kapatma Butonuna Yer Açmak İçin 74px'e Pürüzsüz Kayar */
#skyWidget.expanded-active.is-flipped .cns-back-btn {
    right: 74px !important;
}

/* Panel Kapatma (Esc / X) Butonu: Küçükken gizli, genişlediğinde 24px'te belirir */
#skyWidget.is-flipped .cns-expand-close-btn {
    position: absolute !important;
    top: 21px !important;
    right: 24px !important;
    width: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 100 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: white !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(0.85) !important;
    visibility: hidden !important;
    transition: opacity 0.3s ease, transform 0.3s var(--ios-spring), visibility 0s 0.3s !important;
}

#skyWidget.expanded-active.is-flipped .cns-expand-close-btn {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: scale(1) !important;
    visibility: visible !important;
    transition: opacity 0.3s ease, transform 0.3s var(--ios-spring) !important;
}

/* --- MOBİL UYDU VE SENKRONİZASYON MERKEZİ --- */
.dtb-left-brandmark {
    width: 24px;
    height: 24px;
    border-radius: 7px;
    overflow: hidden;
    background: transparent;
    box-shadow: 0 0 9px rgba(0, 229, 255, 0.16);
}
.dtb-left-brandmark img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}
.dtb-left .dtb-sync-pill {
    margin-left: 0;
}
.mobile-sync-modal-card {
    max-width: 680px;
    width: 95%;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    border-radius: 28px;
    padding: 24px;
    background: #1C1C1E !important;
    background-color: #1C1C1E !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 32px 84px rgba(0, 0, 0, 0.75), 0 8px 32px rgba(0, 0, 0, 0.45) !important;
    overflow: hidden;
    position: relative;
    z-index: 250;
}
[data-theme="light"] .mobile-sync-modal-card {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28), 0 4px 16px rgba(0, 0, 0, 0.08) !important;
}
[data-theme="dark"] .mobile-sync-modal-card {
    background: #1C1C1E !important;
    background-color: #1C1C1E !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 32px 84px rgba(0, 0, 0, 0.75), 0 8px 32px rgba(0, 0, 0, 0.45) !important;
}

.msm-tabs-row {
    display: flex;
    gap: 8px;
    padding: 0 20px 14px 20px;
    border-bottom: 1px solid var(--separator);
}

.msm-tab-btn {
    padding: 8px 16px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid transparent;
    color: var(--text-secondary);
    font-size: 0.88em;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    transition: all 0.15s var(--ios-spring);
}

.msm-tab-btn.active {
    background: rgba(10, 132, 255, 0.15);
    border-color: rgba(10, 132, 255, 0.35);
    color: var(--accent-blue);
}

.msm-panel {
    display: none;
    padding: 18px 20px;
    overflow-y: auto;
}

.msm-panel.active {
    display: block;
}

.msm-grid-cols {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 16px;
}

@media (max-width: 620px) {
    .msm-grid-cols {
        grid-template-columns: 1fr;
    }
}

.msm-code-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--card-border);
    border-radius: 18px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.msm-code-label {
    font-size: 0.74em;
    font-weight: 700;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.msm-code-val-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.msm-code-display {
    font-size: 2.2em;
    font-weight: 900;
    letter-spacing: 4px;
    color: var(--accent-blue);
    font-family: -apple-system, monospace;
}

.msm-copy-btn {
    padding: 6px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid var(--card-border);
    color: var(--text-main);
    font-size: 0.78em;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    transition: background 0.15s;
}

.msm-copy-btn:hover {
    background: rgba(255, 255, 255, 0.15);
}

.msm-code-sub {
    font-size: 0.76em;
    color: var(--text-secondary);
    line-height: 1.4;
}

.msm-actions-box {
    margin-top: 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.msm-action-btn {
    height: 44px;
    border-radius: 14px;
    border: 1px solid var(--card-border);
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-main);
    font-size: 0.88em;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.15s var(--ios-spring);
}

.msm-action-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    transform: translateY(-1px);
}

.msm-action-btn.primary {
    background: var(--accent-blue);
    color: #ffffff;
    border: none;
    box-shadow: 0 4px 16px rgba(10, 132, 255, 0.3);
}

.msm-action-btn.primary:hover {
    background: #0071E3;
}

.msm-qr-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--card-border);
    border-radius: 18px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
}

.msm-qr-title {
    font-size: 0.82em;
    font-weight: 700;
    color: var(--text-main);
}

.msm-qr-box {
    background: #ffffff;
    padding: 8px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}

.msm-wifi-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    max-width: 100%;
}

.msm-wifi-label {
    font-size: 0.7em;
    color: var(--text-secondary);
}

.msm-wifi-link {
    font-size: 0.78em;
    color: var(--accent-blue);
    text-decoration: underline;
    word-break: break-all;
}

/* iPhone 6s Simülatör Çerçevesi */
.iphone-sim-container {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 0;
}

.iphone-sim-frame {
    width: 375px;
    height: 580px;
    background: #000000;
    border-radius: 40px;
    border: 4px solid #333336;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.1);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.iphone-sim-notch {
    width: 130px;
    height: 18px;
    background: #000000;
    border-radius: 0 0 12px 12px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.iphone-sim-iframe {
    width: 100%;
    height: 100%;
    border: none;
    background: #0C0C0E;
}

    
/* --- ANATOMİK KAS & SİNERJİST CHIP SEÇİCİ (APPLE HIG) --- */
.ios-muscle-chips-scroll {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding: 4px 2px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.ios-muscle-chips-scroll::-webkit-scrollbar { display: none; }
.ios-muscle-chip {
    flex-shrink: 0;
    padding: 5px 10px;
    border-radius: 99px;
    font-size: 0.76em;
    font-weight: 700;
    border: 1px solid rgba(150, 150, 150, 0.22);
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.16s var(--ios-spring);
    user-select: none;
}
.ios-muscle-chip:hover {
    background: rgba(255, 255, 255, 0.12);
    color: var(--text-main);
}
.ios-muscle-chip.active-primary {
    background: var(--accent-blue) !important;
    color: #ffffff !important;
    border-color: var(--accent-blue) !important;
    box-shadow: 0 2px 10px rgba(10, 132, 255, 0.38);
    transform: scale(1.03);
}
.ios-muscle-chip.active-secondary {
    background: rgba(255, 159, 10, 0.22) !important;
    color: #FF9F0A !important;
    border-color: rgba(255, 159, 10, 0.55) !important;
    box-shadow: 0 2px 8px rgba(255, 159, 10, 0.25);
}
.ios-field-hint-chip {
    font-size: 0.72em;
    padding: 1px 6px;
    border-radius: 6px;
    background: rgba(10, 132, 255, 0.15);
    color: var(--accent-blue);
    font-weight: 700;
}


/* ==========================================================================
   HAVUZ KAS DAĞILIMI ÖZET ŞERİDİ & AÇILIR MODAL STİLLERİ
   ========================================================================== */
.pool-anatomy-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 10px;
    padding: 8px 14px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--card-border);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.pool-anatomy-strip:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(10, 132, 255, 0.4);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
.pas-content {
    display: flex;
    align-items: center;
    min-width: 0;
    flex: 1;
}
.pas-badge-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.pas-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 8px;
    font-size: 0.78em;
    font-weight: 600;
    white-space: nowrap;
}
.pas-badge-primary {
    background: rgba(10, 132, 255, 0.12);
    border: 1px solid rgba(10, 132, 255, 0.32);
    color: #60A5FA;
}
.pas-badge-primary strong {
    color: #93C5FD;
    font-weight: 700;
}
.pas-badge-secondary {
    background: rgba(255, 159, 10, 0.12);
    border: 1px solid rgba(255, 159, 10, 0.32);
    color: #FBBF24;
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pas-badge-secondary span.pas-sec-names {
    color: #FDE68A;
    font-weight: 600;
}
.pas-edit-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: var(--text-main);
    font-size: 0.78em;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.16s ease;
}
.pas-edit-btn:hover {
    background: var(--accent-blue);
    border-color: var(--accent-blue);
    color: #FFFFFF;
    box-shadow: 0 0 12px rgba(10, 132, 255, 0.45);
}

/* HAVUZ ANATOMİK KAS ŞERİDİ: TÜR SEÇİLMEDEN ÖNCE & KARDİYO/DİĞER İÇİN KİLİTLİ DURUMLAR */
.pool-anatomy-strip.is-disabled {
    opacity: 0.36 !important;
    filter: blur(2px) !important;
    pointer-events: none !important;
    cursor: not-allowed !important;
    user-select: none !important;
    border-color: rgba(255, 255, 255, 0.06) !important;
    box-shadow: none !important;
    transition: opacity 0.35s ease, filter 0.35s ease, border-color 0.35s ease !important;
}

.pool-anatomy-strip.is-disabled .pas-edit-btn {
    pointer-events: none !important;
    opacity: 0.4 !important;
    cursor: not-allowed !important;
}

.pool-anatomy-strip.is-cardio-or-other {
    opacity: 0.42 !important;
    filter: blur(1.5px) !important;
    pointer-events: none !important;
    cursor: not-allowed !important;
    user-select: none !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
    transition: opacity 0.35s ease, filter 0.35s ease, border-color 0.35s ease !important;
}

.pool-anatomy-strip.is-cardio-or-other .pas-edit-btn {
    pointer-events: none !important;
    opacity: 0.4 !important;
    cursor: not-allowed !important;
}

/* MODAL KART (#poolMuscleModal) */
.pool-muscle-modal-card {
    width: 620px !important;
    max-width: calc(100vw - 32px) !important;
    max-height: 86vh !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 22px 22px 18px 22px !important;
    background: radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.18) 0%, transparent 65%), linear-gradient(165deg, #1C1C1E 0%, #121214 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.65), 0 0 1px rgba(255, 255, 255, 0.3) inset !important;
}
.pmm-header {
    margin-bottom: 12px;
}
.pmm-badge {
    display: inline-block;
    font-size: 0.68em;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 6px;
    background: rgba(10, 132, 255, 0.18);
    color: var(--accent-blue);
    border: 1px solid rgba(10, 132, 255, 0.35);
    margin-bottom: 6px;
}
.pmm-scrollable-body {
    overflow-y: auto;
    max-height: calc(86vh - 180px);
    padding-right: 6px;
    margin-bottom: 14px;
}
.pmm-scrollable-body::-webkit-scrollbar {
    width: 6px;
}
.pmm-scrollable-body::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.18);
    border-radius: 3px;
}
.pmm-section-block {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    padding: 12px 14px;
}
.pmm-section-title-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2px;
}
.pmm-sec-label {
    font-size: 0.80em;
    font-weight: 800;
    color: var(--text-main);
    letter-spacing: 0.3px;
}
.pmm-sec-sub {
    font-size: 0.88em;
    font-weight: 700;
    color: var(--accent-blue);
}
.pmm-sec-badge {
    font-size: 0.72em;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 6px;
}
.pmm-sec-badge.primary {
    background: rgba(10, 132, 255, 0.20);
    color: #60A5FA;
    border: 1px solid rgba(10, 132, 255, 0.40);
}
.pmm-sec-badge.secondary {
    background: rgba(255, 159, 10, 0.20);
    color: #FBBF24;
    border: 1px solid rgba(255, 159, 10, 0.40);
}
.pmm-hint-text {
    font-size: 0.72em;
    color: var(--text-secondary);
    margin-bottom: 10px;
}
.pmm-chips-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(136px, 1fr));
    gap: 8px;
}
.pmm-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    color: var(--text-secondary);
    font-size: 0.78em;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
    transition: all 0.15s ease;
    white-space: nowrap;
}
.pmm-chip:hover {
    background: rgba(255, 255, 255, 0.10);
    color: var(--text-main);
    transform: translateY(-1px);
}
.pmm-chip-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}
.pmm-chip.active-primary {
    background: rgba(10, 132, 255, 0.24) !important;
    color: #93C5FD !important;
    border-color: #0A84FF !important;
    box-shadow: 0 0 12px rgba(10, 132, 255, 0.40);
    font-weight: 700;
    transform: scale(1.02);
}
.pmm-chip.active-secondary {
    background: rgba(255, 159, 10, 0.22) !important;
    color: #FDE68A !important;
    border-color: #FF9F0A !important;
    box-shadow: 0 0 12px rgba(255, 159, 10, 0.40);
    font-weight: 700;
    transform: scale(1.02);
}
.pmm-chip.is-disabled {
    opacity: 0.35 !important;
    pointer-events: none !important;
    filter: grayscale(0.8) !important;
}
.pmm-actions-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}
.pmm-auto-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: var(--text-secondary);
    font-size: 0.78em;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.16s ease;
}
.pmm-auto-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    color: var(--text-main);
}
.pmm-right-btns {
    display: flex;
    align-items: center;
    gap: 10px;
}


/* ==========================================================================
   GÜN KARTLARI KÜÇÜK VE BÜYÜK BOYUT METİN HİZALAMA DÜZENİ
   ========================================================================== */
/* 1. GÜN KARTI KÜÇÜKKEN (.day-card:not(.expanded-active)):
   - Drag handle tamamen gizlenir, genişlik ve margin'i 0 yapılır.
   - Sol taraftaki gereksiz 46px boşluk sıfırlanır.
   - Numaralar ve isimler sol baştan ferah ve dengeli başlar.
*/
.day-card:not(.expanded-active) .drag-handle {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

.day-card:not(.expanded-active) .exercise-item:not(.pr-list-item) {
    padding: 6px 10px 6px 12px !important;
    min-height: 38px !important;
}

.day-card:not(.expanded-active) .exercise-item:not(.pr-list-item)::before {
    display: none !important;
}

.day-card:not(.expanded-active) .exercise-item[data-ss-chain] {
    padding-left: 14px !important;
}

.day-card:not(.expanded-active) .ex-name-wrap {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin-right: 8px !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.day-card:not(.expanded-active) .ex-index {
    display: inline-block !important;
    min-width: 18px !important;
    margin-right: 4px !important;
    text-align: left !important;
    font-size: 0.86em !important;
    font-weight: 700 !important;
    color: var(--theme-accent, var(--accent-blue)) !important;
    opacity: 0.95 !important;
    flex-shrink: 0 !important;
    font-variant-numeric: tabular-nums !important;
}

.day-card:not(.expanded-active) .exercise-item {
    padding: 5px 12px !important;
    min-height: 36px !important;
}

.day-card:not(.expanded-active) .ex-name-text {
    font-size: 0.88em !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    text-align: left !important;
}

/* 2. GÜN KARTI BÜYÜTÜLDÜĞÜNDE (.day-card.expanded-active):
   Geniş ekranda drag handle görünür, tutamak ve metinler nizami yerleşir */
.day-card.expanded-active:not(.card-completed) .drag-handle:not(.ss-floating-drag) {
    display: flex !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 24px !important;
    margin-right: 8px !important;
    padding: 0 !important;
    opacity: 0.85 !important;
    pointer-events: auto !important;
    cursor: grab !important;
    visibility: visible !important;
    transition: opacity 0.22s ease !important;
}

.day-card.expanded-active .exercise-item:not(.pr-list-item) {
    padding: 10px 14px 10px 12px !important;
}

.day-card.expanded-active .ex-index {
    display: inline-block !important;
    min-width: 20px !important;
    margin-right: 6px !important;
    text-align: left !important;
    font-size: 0.94em !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
}

.day-card.expanded-active .ex-name-text {
    font-size: 0.94em !important;
    font-weight: 600 !important;
}


/* ==========================================================================
   SÜPERSET BİRLEŞİK İOS KAPSÜL MİMARİSİ VE KOMPAKT KORUMASI (KESİN ÇÖZÜM)
   ========================================================================== */

/* 0. Işıklı Süperset Çubuğunu (.superset-energy-bridge) Tamamen Kaldır */
.superset-energy-bridge,
.day-card .exercise-item[data-ss-chain] .superset-energy-bridge,
.day-card.expanded-active .exercise-item[data-ss-chain] .superset-energy-bridge,
.day-card.card-completed .exercise-item[data-ss-chain] .superset-energy-bridge,
.exercise-item .superset-energy-bridge {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* 1. Süperset Birleşme Çizgileri: Fermuar / Aralıklı Çizgileri Kesin Olarak Sıfırla */
.day-card .exercise-item.linked-to-prev,
.day-card .exercise-item.linked-middle,
.day-card.expanded-active .exercise-item.linked-to-prev,
.day-card.expanded-active .exercise-item.linked-middle,
[data-theme="light"] .day-card .exercise-item.linked-to-prev,
[data-theme="light"] .day-card .exercise-item.linked-middle,
[data-theme="dark"] .day-card .exercise-item.linked-to-prev,
[data-theme="dark"] .day-card .exercise-item.linked-middle {
    border-top: none !important;
}

.day-card .exercise-item.linked-to-next,
.day-card .exercise-item.linked-middle,
.day-card.expanded-active .exercise-item.linked-to-next,
.day-card.expanded-active .exercise-item.linked-middle {
    border-bottom: none !important;
}

/* 2. Kompakt Kartta (.day-card:not(.expanded-active) ve body.density-compact) Satırların Ayrılmasını Kesin Önle */
.day-card:not(.expanded-active) .exercise-item.linked-to-next:not(.linked-to-prev),
body.density-compact .day-card:not(.expanded-active) .exercise-item.linked-to-next:not(.linked-to-prev),
body.density-compact .day-card .exercise-item.linked-to-next:not(.linked-to-prev) {
    margin-bottom: 0 !important;
    border-bottom: none !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 11px !important;
    border-top-right-radius: 11px !important;
    padding-top: 5px !important;
    padding-bottom: 2px !important;
    min-height: 28px !important;
    max-height: 34px !important;
}

.day-card:not(.expanded-active) .exercise-item.linked-middle,
body.density-compact .day-card:not(.expanded-active) .exercise-item.linked-middle,
body.density-compact .day-card .exercise-item.linked-middle {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-top: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
    min-height: 26px !important;
    max-height: 32px !important;
}

.day-card:not(.expanded-active) .exercise-item.linked-to-prev:not(.linked-to-next),
body.density-compact .day-card:not(.expanded-active) .exercise-item.linked-to-prev:not(.linked-to-next),
body.density-compact .day-card .exercise-item.linked-to-prev:not(.linked-to-next) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 11px !important;
    border-bottom-right-radius: 11px !important;
    padding-top: 2px !important;
    padding-bottom: 5px !important;
    min-height: 28px !important;
    max-height: 34px !important;
}

.day-card:not(.expanded-active) .exercise-item.linked-to-prev:not(.linked-to-next):last-child,
body.density-compact .day-card:not(.expanded-active) .exercise-item.linked-to-prev:not(.linked-to-next):last-child {
    margin-bottom: 0 !important;
}

/* 3. Süperset Satırlarının Sol Hizalaması (Işıklı çubuk kalktığı için tekli satırlarla %100 aynı) */
.day-card:not(.expanded-active) .exercise-item[data-ss-chain] {
    padding-left: 12px !important;
}
.day-card.expanded-active .exercise-item[data-ss-chain] {
    padding-left: 12px !important;
}

/* 4. Açık Kartta (.day-card.expanded-active) Süperset Satır Orantıları */
.day-card.expanded-active .exercise-item.linked-to-next:not(.linked-to-prev) {
    margin-bottom: 0 !important;
    border-bottom: none !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 12px !important;
    border-top-right-radius: 12px !important;
    padding-top: 7px !important;
    padding-bottom: 3px !important;
    min-height: 32px !important;
    max-height: 38px !important;
}

.day-card.expanded-active .exercise-item.linked-middle {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-top: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    min-height: 30px !important;
    max-height: 36px !important;
}

.day-card.expanded-active .exercise-item.linked-to-prev:not(.linked-to-next) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    border-top: none !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
    padding-top: 3px !important;
    padding-bottom: 7px !important;
    min-height: 32px !important;
    max-height: 38px !important;
}

.day-card.expanded-active .exercise-item.linked-to-prev:not(.linked-to-next):last-child {
    margin-bottom: 0 !important;
}

/* 5. Süperset Yüzen Egzersiz Numarası (.ex-index.ss-floating-index): 2 satırın tam dikey merkezinde, yatayda 2. ve 4. ile tam hizada */
.ex-index.ss-floating-index {
    position: absolute !important;
    z-index: 12 !important;
    display: inline-flex !important;
    align-items: center !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums !important;
    color: var(--text-secondary) !important;
    opacity: 0.75 !important;
    line-height: 1 !important;
}

/* 2'li süpersette 1. satırın alt sınırında (top: 100%) tam ortalanır */
.ex-index.ss-floating-index.ss-index-center-2 {
    top: 100% !important;
    transform: translateY(-50%) !important;
}

/* 3'lü süpersette 2. satırın merkezinde (top: 50%) tam ortalanır */
.ex-index.ss-floating-index.ss-index-center-3 {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Açık gün kartında (.day-card.expanded-active) 2. ve 4. egzersiz numaralarıyla YATAYDA BİREBİR AYNI HİZA:
   Normal kartta padding-left 12px + drag-handle 20px + margin-right 8px = 40px */
.day-card.expanded-active .ex-index.ss-floating-index {
    left: 40px !important;
    font-size: 0.94em !important;
    min-width: 20px !important;
}

/* Kapalı/Kompakt gün kartında (.day-card:not(.expanded-active)) 2. ve 4. egzersiz numaralarıyla YATAYDA BİREBİR AYNI HİZA:
   Kompakt kartta drag-handle kapalı olduğundan numaralar doğrudan padding-left 10px hizasındadır */
.day-card:not(.expanded-active) .ex-index.ss-floating-index {
    left: 12px !important;
    color: var(--text-secondary) !important;
    opacity: 0.8 !important;
    font-size: 0.86em !important;
    min-width: 18px !important;
}

/* Süperset satırlarındaki yer tutucu spacer: Her zaman görünmezdir, sadece ismin yatay hizasını korur */
.ex-index.ss-index-spacer {
    visibility: hidden !important;
    pointer-events: none !important;
    opacity: 0 !important;
}

/* Açık kartta süperset drag handle'ı tekli egzersiz drag handle'ları (left: 12px) ile aynı hizada ve dikey merkezli */
.day-card.expanded-active:not(.card-completed) .drag-handle.ss-floating-drag {
    left: 12px !important;
    width: 20px !important;
    height: 24px !important;
    padding: 0 !important;
    opacity: 0.85 !important;
    cursor: grab !important;
}

/* 6. 120FPS Sürükle-Bırak Yüzen Hayalet Taşıyıcı ve Kapsül (.ios-drag-ghost-host & .ios-drag-floating-ghost) */
.day-card.ios-drag-ghost-host {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    transition: none !important;
    pointer-events: none !important;
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
    overflow: visible !important;
    will-change: transform !important;
}

.ios-drag-floating-ghost {
    border-radius: 13px !important;
    overflow: hidden !important;
    border: none !important;
    outline: none !important;
    border-radius: 14px !important;
    box-shadow:
        0 20px 44px rgba(0, 0, 0, 0.30),
        0 4px 14px rgba(0, 0, 0, 0.12),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.85) !important;
    background: rgba(255, 255, 255, 0.95) !important;
    transition: box-shadow 0.2s ease !important;
}

[data-theme="dark"] .ios-drag-floating-ghost {
    background: rgba(24, 28, 38, 0.96) !important;
    border: none !important;
    outline: none !important;
    border-radius: 14px !important;
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.72),
        0 6px 18px rgba(0, 0, 0, 0.40),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.25) !important;
}

.ios-drag-floating-ghost .exercise-item {
    background: transparent !important;
    margin-bottom: 0 !important;
    border-bottom: none !important;
    border-top: none !important;
}

/* Sürükleme anında listede kalan yer tutucu kapsülün birleşik görünümü */
.exercise-item.is-drag-placeholder.linked-to-next {
    border-bottom: none !important;
}
.exercise-item.is-drag-placeholder.linked-to-prev {
    border-top: none !important;
}


/* ==========================================================================
   YENİ DİL: SADE KRİSTAL CAM (QUIET LUXURY GLASS - DEFAULT)
   Apple iOS Frosted Glass: Yüksek şeffaflık, derin blur, zarif speküler yansıma
   ve fonksiyonel sol kenar neon kimliği (var(--theme-accent))
   ========================================================================== */

/* ==========================================================================
   YENİ DİL: SADE KRİSTAL CAM (QUIET LUXURY OPTICAL GLASS - DEFAULT)
   Apple iOS 18 & VisionOS Premium Cam:
   - Tamamen şeffaf ve derin buzlu cam yapısı (Ultra-translucent optical glass).
   - Arkadaki animasyonlu bokeh partikülleri kartların arkasından kırılarak görünür!
   - Kalın renkli sol şeritler KALDIRILDI; homojen, jilet gibi 1px hairline çerçeve.
   - Renkler sadece tamamlanma çentiği, PR etiketi gibi mikro vurgularda kullanılır.
   ========================================================================== */

/* 1. GÜN KARTLARI (Tüm gün kartları, mini takvim, PR kartı, ilerleme kartı) */
body:not(.card-theme-vibrant) .day-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.45) 0%, rgba(255, 255, 255, 0.16) 100%) !important;
    backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.65) !important;
    box-shadow:
        0 10px 28px -6px rgba(0, 0, 0, 0.05),
        0 2px 8px -2px rgba(0, 0, 0, 0.03),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95),
        inset 0 -1px 0 rgba(0, 0, 0, 0.02) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .day-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.015) 100%), rgba(12, 16, 25, 0.22) !important;
    backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    -webkit-backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.13) !important;
    box-shadow:
        0 14px 36px -8px rgba(0, 0, 0, 0.42),
        0 2px 10px rgba(0, 0, 0, 0.25),
        inset 0 1.2px 0 rgba(255, 255, 255, 0.28),
        inset 0 -1px 0 rgba(0, 0, 0, 0.25) !important;
}

/* Hover Efekti: Kristal cam speküler ışıltı ve zarif 3px yükselme */
body:not(.card-theme-vibrant) .day-card:hover:not(.expanded-active):not(.is-animating):not(.event-card-wrapper):not(.home-cal-card) {
    transform: translateY(-3px) !important;
    border-color: rgba(255, 255, 255, 0.85) !important;
    border-left-color: rgba(255, 255, 255, 0.85) !important;
    box-shadow:
        0 14px 32px -6px rgba(0, 0, 0, 0.08),
        inset 0 1.5px 0 rgba(255, 255, 255, 1) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .day-card:hover:not(.expanded-active):not(.is-animating):not(.event-card-wrapper):not(.home-cal-card) {
    transform: translateY(-3px) !important;
    border-color: rgba(255, 255, 255, 0.26) !important;
    border-left-color: rgba(255, 255, 255, 0.26) !important;
    box-shadow:
        0 18px 40px -6px rgba(0, 0, 0, 0.65),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.40) !important;
}

/* Tamamlanan Antrenman Kartı: Zümrüt Yeşili Mikro Vurgu (Kalın şerit yok, sadece zarif yeşil iç rim highlight) */
body:not(.card-theme-vibrant) .day-card.card-completed {
    border-color: rgba(52, 199, 89, 0.45) !important;
    border-left-color: rgba(52, 199, 89, 0.45) !important;
    box-shadow:
        0 10px 28px -6px rgba(52, 199, 89, 0.12),
        inset 0 1.5px 0 rgba(52, 199, 89, 0.60),
        inset 0 -1px 0 rgba(0, 0, 0, 0.02) !important;
}
[data-theme="dark"] body:not(.card-theme-vibrant) .day-card.card-completed {
    border-color: rgba(48, 209, 88, 0.35) !important;
    border-left-color: rgba(48, 209, 88, 0.35) !important;
    box-shadow:
        0 14px 36px -8px rgba(0, 0, 0, 0.45),
        inset 0 1.2px 0 rgba(48, 209, 88, 0.55),
        inset 0 -1px 0 rgba(0, 0, 0, 0.25) !important;
}

/* 2. KÜÇÜK İSTATİSTİK KARTLARI (Small Stat Cards) */
body:not(.card-theme-vibrant) .small-stat-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.48) 0%, rgba(255, 255, 255, 0.18) 100%) !important;
    backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.65) !important;
    box-shadow:
        0 8px 22px -6px rgba(0, 0, 0, 0.05),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .small-stat-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.015) 100%), rgba(12, 16, 25, 0.22) !important;
    backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    -webkit-backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.13) !important;
    box-shadow:
        0 10px 26px -6px rgba(0, 0, 0, 0.42),
        inset 0 1.2px 0 rgba(255, 255, 255, 0.28) !important;
}

body:not(.card-theme-vibrant) .small-stat-card:hover {
    transform: translateY(-3px) scale(1.01) !important;
    border-color: rgba(255, 255, 255, 0.85) !important;
    box-shadow:
        0 14px 28px -6px rgba(0, 0, 0, 0.08),
        inset 0 1.5px 0 rgba(255, 255, 255, 1) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .small-stat-card:hover {
    transform: translateY(-3px) scale(1.01) !important;
    border-color: rgba(255, 255, 255, 0.26) !important;
    box-shadow:
        0 16px 32px -6px rgba(0, 0, 0, 0.65),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.38) !important;
}

/* 3. SEZON İLERLEME WIDGETI (#seasonRingContainer) */
body:not(.card-theme-vibrant) #seasonRingContainer.ios-season-top-widget {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.48) 0%, rgba(255, 255, 255, 0.18) 100%) !important;
    backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.65) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) #seasonRingContainer.ios-season-top-widget {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.015) 100%), rgba(12, 16, 25, 0.22) !important;
    backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    -webkit-backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.13) !important;
}

/* 4. GEÇMİŞ ANTRENMAN DESTE KARTLARI (.history-deck-card) */
body:not(.card-theme-vibrant) .history-deck-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.48) 0%, rgba(255, 255, 255, 0.18) 100%) !important;
    backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.65) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .history-deck-card {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.015) 100%), rgba(12, 16, 25, 0.22) !important;
    backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    -webkit-backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.13) !important;
}

/* 5. SEZON YÖNETİMİ & PROFİL KARTLARI (Sade Kristal Modunda Opak Boya İptal Edilir) */
body:not(.card-theme-vibrant) .profile-card,
body:not(.card-theme-vibrant) #seasonCard,
body:not(.card-theme-vibrant) .pool-wrapper {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.50) 0%, rgba(255, 255, 255, 0.20) 100%) !important;
    backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(190%) contrast(102%) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    box-shadow: 0 10px 28px -6px rgba(0, 0, 0, 0.06), inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .profile-card,
[data-theme="dark"] body:not(.card-theme-vibrant) #seasonCard,
[data-theme="dark"] body:not(.card-theme-vibrant) .pool-wrapper {
    background: linear-gradient(155deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.015) 100%), rgba(12, 16, 25, 0.22) !important;
    backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    -webkit-backdrop-filter: blur(24px) saturate(200%) contrast(105%) brightness(1.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 16px 40px -8px rgba(0, 0, 0, 0.50), inset 0 1.2px 0 rgba(255, 255, 255, 0.30) !important;
}

body:not(.card-theme-vibrant) .pool-add-box {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}
body:not(.card-theme-vibrant) .pool-item {
    background: rgba(255, 255, 255, 0.02) !important;
    border-color: rgba(255, 255, 255, 0.06) !important;
}
body:not(.card-theme-vibrant) .pool-category-select,
body:not(.card-theme-vibrant) .pool-search-input {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

body.card-theme-vibrant .pool-wrapper {
    background: radial-gradient(120% 90% at 96% 4%, rgba(var(--season-rgb, 10, 132, 255), 0.22) 0%, transparent 65%), rgba(20, 24, 34, 0.82) !important;
    border: 1px solid rgba(var(--season-rgb, 10, 132, 255), 0.38) !important;
    box-shadow: 0 20px 48px -10px rgba(var(--season-rgb, 10, 132, 255), 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
}
body.card-theme-vibrant .pool-add-box {
    background: rgba(var(--season-rgb, 10, 132, 255), 0.06) !important;
    border: 1px solid rgba(var(--season-rgb, 10, 132, 255), 0.20) !important;
}
body.card-theme-vibrant .pool-item {
    background: rgba(255, 255, 255, 0.03) !important;
    border-color: rgba(var(--season-rgb, 10, 132, 255), 0.14) !important;
}


/* ==========================================================================
   B.1: GÜN KARTLARI KÜÇÜK HALDEYKEN SATIR HOVER EFEKTİNİ İPTAL ET
   ========================================================================== */
.day-card:not(.expanded-active) .exercise-item:not(.history-pr-row):hover,
[data-theme="dark"] .day-card:not(.expanded-active) .exercise-item:not(.history-pr-row):hover {
    transform: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border-color: transparent !important;
}
.day-card:not(.expanded-active) .exercise-item {
    cursor: default !important;
}
.day-card:not(.expanded-active) .exercise-item:hover {
    transform: none !important;
}
.day-card:not(.expanded-active) .exercise-item:not(.history-pr-row):hover::before {
    opacity: 0.7 !important;
    transform: translateY(-50%) !important;
    box-shadow: none !important;
}

/* Küçük gün kartlarında PR altın ışıltısını güçlü ve net şekilde koru */
.day-card:not(.expanded-active) .exercise-item.history-pr-row {
    background:
        radial-gradient(110% 100% at 96% 10%, rgba(249, 212, 35, 0.28) 0%, transparent 60%),
        linear-gradient(135deg, #FFFDF7 0%, #FDF4D2 60%, #F9E7A8 100%) !important;
    border: 1px solid rgba(184, 134, 11, 0.55) !important;
    box-shadow:
        0 4px 14px rgba(184, 134, 11, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}
[data-theme="dark"] .day-card:not(.expanded-active) .exercise-item.history-pr-row {
    background:
        radial-gradient(115% 100% at 96% 10%, rgba(249, 212, 35, 0.30) 0%, transparent 62%),
        linear-gradient(135deg, rgba(48, 37, 10, 0.94) 0%, rgba(24, 19, 8, 0.96) 100%) !important;
    border: 1px solid rgba(249, 212, 35, 0.52) !important;
    box-shadow:
        0 4px 16px rgba(249, 212, 35, 0.16),
        0 0 12px rgba(249, 212, 35, 0.10),
        inset 0 1px 0 rgba(255, 246, 186, 0.25) !important;
}

/* ==========================================================================
   B.3: PC BAŞLIK ÇUBUĞU (TITLEBAR): ORTALI STRIVE BRAND + EN SOLDA UYDU BUTONU
   ========================================================================== */
.dtb-center-brand {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    gap: 8px;
    pointer-events: none;
    -webkit-app-region: drag;
    user-select: none;
}
.dtb-center-brand .dtb-wordmark {
    width: clamp(112px, 14vw, 160px);
    height: 30px;
    object-fit: contain;
    display: block;
}
.dtb-sync-pill {
    -webkit-app-region: no-drag;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 12px;
    padding: 3.5px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: var(--text-main) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: transform 0.15s var(--ios-spring), background-color 0.15s ease, border-color 0.15s ease !important;
}
[data-theme="dark"] .dtb-sync-pill {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(255, 255, 255, 0.13) !important;
    color: #F2F2F7 !important;
}
.dtb-sync-pill:hover {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
    transform: translateY(-0.5px);
}
.dtb-sync-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #30D158 !important;
    box-shadow: 0 0 8px rgba(48, 209, 88, 0.8) !important;
    flex-shrink: 0;
}

/* ==========================================================================
   B.4: MOBİL UYDU MODALI FERAH & KUTUYA TAM SIĞAN TASARIM
   ========================================================================== */
.mobile-sync-modal-card {
    max-height: 88vh !important;
    overflow-y: auto !important;
    padding: 22px 24px 20px 24px !important;
    width: 630px !important;
    max-width: 95vw !important;
    box-sizing: border-box !important;
}
.msm-net-mode-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    padding: 3.5px 10px;
    border-radius: 999px;
    background: rgba(48, 209, 88, 0.14);
    border: 1px solid rgba(48, 209, 88, 0.32);
    color: #30D158;
    font-size: 0.72rem;
    font-weight: 800;
}
.msm-net-mode-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #30D158;
    box-shadow: 0 0 6px #30D158;
}
.msm-qr-info-box {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 8px 12px;
    text-align: left;
    width: 100%;
    margin-top: 8px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.msm-info-line {
    font-size: 0.72rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

/* ==========================================================================
   B.5: GEÇMİŞ ANTRENMAN KARTLARINDA SET DETAYLARI ŞERİDİ & PR PARILTI KUTUSU
   ========================================================================== */
.history-exercise-row {
    cursor: pointer !important;
    transition: background-color 0.18s ease;
}
.history-sets-strip {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 6px 6px 28px;
    margin-top: -2px;
    margin-bottom: 6px;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.history-sets-strip::-webkit-scrollbar {
    display: none;
}
.hist-set-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3.5px 8.5px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: var(--text-main);
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}
[data-theme="light"] .hist-set-pill {
    background: rgba(0, 0, 0, 0.04);
    border-color: rgba(0, 0, 0, 0.08);
}
.hist-set-pill .hsp-num {
    color: var(--text-secondary);
    font-size: 0.72rem;
    font-weight: 600;
}
.hist-set-pill .hsp-reps {
    color: var(--text-main);
    font-weight: 800;
}
/* PR olan son set kutucuğunun altın sarısı parlaması */
.hist-set-pill.hist-set-pill-pr {
    background: rgba(245, 158, 11, 0.22) !important;
    border: 1.2px solid #F59E0B !important;
    color: #FBBF24 !important;
    box-shadow: 0 0 12px rgba(245, 158, 11, 0.38) !important;
}
.hist-set-pill.hist-set-pill-pr .hsp-reps {
    color: #FBBF24 !important;
}

/* Geçmiş Antrenman Düzenleme (Edit) Set Giriş ve RIR Simetrik Izgarası */
.hist-edit-sets-strip {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 6px;
    width: 100%;
    margin-top: 6px;
    box-sizing: border-box;
}
.hist-edit-set-input-box {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    padding: 6px 4px;
    box-sizing: border-box;
    transition: background 0.2s ease, border-color 0.2s ease;
}
[data-theme="dark"] .hist-edit-set-input-box {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}
.hist-edit-set-input-box span {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--text-secondary);
    white-space: nowrap;
    text-align: center;
    line-height: 1.1;
}
.hist-edit-set-input-box input {
    width: 100%;
    height: 28px;
    padding: 2px 4px;
    text-align: center;
    border-radius: 6px;
    border: 1px solid var(--card-border);
    background: var(--bg-main);
    color: var(--text-main);
    font-weight: 800;
    font-size: 0.85rem;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.hist-edit-set-input-box input:focus {
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 2px rgba(10, 132, 255, 0.25);
}
.hist-edit-rir-box {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    background: rgba(255, 159, 10, 0.08);
    border: 1px solid rgba(255, 159, 10, 0.28);
    border-radius: 10px;
    padding: 6px 4px;
    box-sizing: border-box;
    transition: background 0.2s ease, border-color 0.2s ease;
}
[data-theme="dark"] .hist-edit-rir-box {
    background: rgba(255, 159, 10, 0.12);
    border: 1px solid rgba(255, 159, 10, 0.32);
}
.hist-edit-rir-box span {
    font-size: 0.66rem;
    font-weight: 700;
    color: #FF9F0A;
    white-space: nowrap;
    text-align: center;
    line-height: 1.1;
}
.hist-edit-rir-btn {
    width: 100%;
    height: 28px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    border: 1px solid rgba(255, 159, 10, 0.4);
    background: rgba(255, 159, 10, 0.2);
    color: #FF9F0A;
    font-weight: 800;
    font-size: 0.78rem;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.2s ease;
    user-select: none;
    -webkit-user-select: none;
}
.hist-edit-rir-btn:hover {
    background: rgba(255, 159, 10, 0.32);
    border-color: rgba(255, 159, 10, 0.6);
    transform: scale(1.02);
}
.hist-edit-rir-btn:active {
    transform: scale(0.96);
}


/* ==========================================================================
   B.1 & B.5: SUPERSET GRUP ETKİLEŞİMİ & SENKRONİZE PR IŞILTI KAYMASI
   ========================================================================== */
.day-card .exercise-item[data-ss-chain]:hover {
    background-color: transparent !important;
}

.day-card .exercise-item[data-ss-chain].ss-chain-hover,
.exercise-list:has(> .exercise-item[data-ss-chain="0"]:hover) > .exercise-item[data-ss-chain="0"],
.exercise-list:has(> .exercise-item[data-ss-chain="1"]:hover) > .exercise-item[data-ss-chain="1"],
.exercise-list:has(> .exercise-item[data-ss-chain="2"]:hover) > .exercise-item[data-ss-chain="2"],
.exercise-list:has(> .exercise-item[data-ss-chain="3"]:hover) > .exercise-item[data-ss-chain="3"],
.exercise-list:has(> .exercise-item[data-ss-chain="4"]:hover) > .exercise-item[data-ss-chain="4"],
.exercise-list:has(> .exercise-item[data-ss-chain="5"]:hover) > .exercise-item[data-ss-chain="5"],
.exercise-list:has(> .exercise-item[data-ss-chain="6"]:hover) > .exercise-item[data-ss-chain="6"],
.exercise-list:has(> .exercise-item[data-ss-chain="7"]:hover) > .exercise-item[data-ss-chain="7"] {
    background-color: var(--btn-hover) !important;
}
[data-theme="dark"] .day-card .exercise-item[data-ss-chain].ss-chain-hover,
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="0"]:hover) > .exercise-item[data-ss-chain="0"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="1"]:hover) > .exercise-item[data-ss-chain="1"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="2"]:hover) > .exercise-item[data-ss-chain="2"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="3"]:hover) > .exercise-item[data-ss-chain="3"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="4"]:hover) > .exercise-item[data-ss-chain="4"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="5"]:hover) > .exercise-item[data-ss-chain="5"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="6"]:hover) > .exercise-item[data-ss-chain="6"],
[data-theme="dark"] .exercise-list:has(> .exercise-item[data-ss-chain="7"]:hover) > .exercise-item[data-ss-chain="7"] {
    background-color: rgba(255, 255, 255, 0.08) !important;
}

.day-card .exercise-item.history-pr-row,
.day-card:not(.expanded-active) .exercise-item.history-pr-row,
.history-card-wrapper .exercise-item.history-pr-row {
    position: relative !important;
    overflow: hidden !important;
}
.day-card .exercise-item.history-pr-row::after,
.day-card:not(.expanded-active) .exercise-item.history-pr-row::after,
.history-card-wrapper .exercise-item.history-pr-row::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -150% !important;
    width: 60% !important;
    height: 100% !important;
    background: linear-gradient(
        110deg,
        transparent 0%,
        rgba(255, 255, 255, 0.05) 25%,
        rgba(255, 240, 160, 0.45) 50%,
        rgba(255, 255, 255, 0.75) 55%,
        rgba(255, 240, 160, 0.45) 60%,
        rgba(255, 255, 255, 0.05) 75%,
        transparent 100%
    ) !important;
    transform: skewX(-22deg) !important;
    animation: prShimmerSweep 7s cubic-bezier(0.4, 0, 0.2, 1) infinite !important;
    animation-delay: 0s !important;
    pointer-events: none !important;
    z-index: 5 !important;
}

/* =========================================================
   IOS AKIŞKAN SIVI SEZON BLOBU (LIQUID CAPSULE) - KESİNTİSİZ TASARIM
========================================================= */
/* Sezon bloğunun içindeki günlerin tüm hücre sınır çizgilerini ve bölücülerini kaldır */
.ios-day.in-season,
.home-cal-card .ios-day.in-season,
.month-card .ios-day.in-season {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Izgara boşluklarını ve hücre hizalamasını her iki takvimde de sıfır boşluk ve kesintisiz yap */
.month-card .ios-calendar-grid,
.home-cal-card .ios-calendar-grid {
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
    align-items: stretch !important;
    justify-items: stretch !important;
}

.month-card .ios-day,
.home-cal-card .ios-day {
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    border: none !important;
}

/* Sezon bloğu alt katmanı: Tam hücreye sıfır boşlukla oturur */
.in-season::before {
    inset: 0 !important;
    border-radius: 0;
}

/* Sezon bloğu dış hatları: Yalnızca çevreleyen dış sınırlarda neon çerçeve */
.in-season::after {
    inset: 0 !important;
    border-width: 0 !important;
    box-shadow: none !important;
    border-radius: 0;
}

/* Dış Sınır Köşeleri Yuvarlama (Apple iOS Liquid Capsule) */
.in-season.edge-t.edge-l::before, .in-season.edge-t.edge-l::after { border-top-left-radius: 14px !important; }
.in-season.edge-t.edge-r::before, .in-season.edge-t.edge-r::after { border-top-right-radius: 14px !important; }
.in-season.edge-b.edge-l::before, .in-season.edge-b.edge-l::after { border-bottom-left-radius: 14px !important; }
.in-season.edge-b.edge-r::before, .in-season.edge-b.edge-r::after { border-bottom-right-radius: 14px !important; }

.home-cal-card .in-season.edge-t.edge-l::before, .home-cal-card .in-season.edge-t.edge-l::after { border-top-left-radius: 10px !important; }
.home-cal-card .in-season.edge-t.edge-r::before, .home-cal-card .in-season.edge-t.edge-r::after { border-top-right-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-l::before, .home-cal-card .in-season.edge-b.edge-l::after { border-bottom-left-radius: 10px !important; }
.home-cal-card .in-season.edge-b.edge-r::before, .home-cal-card .in-season.edge-b.edge-r::after { border-bottom-right-radius: 10px !important; }

/* =========================================================
   APPLE TABULAR NUMS & SAYISAL STABİLİTE MİMARİSİ
========================================================= */
.ex-weight-pill,
.ex-reps-pill,
.ex-sets,
.ios-day-number,
.stat-val,
.streak-text,
.log-inp,
.prompt-input,
.stepper-number,
.set-tab-pill,
.pr-gold-weight-pill,
.pr-sub-reps-pill,
.rest-pill span {
    font-variant-numeric: tabular-nums !important;
    -webkit-font-feature-settings: "tnum" 1 !important;
    font-feature-settings: "tnum" 1 !important;
}

/* =========================================================
   ANA SAYFA MİNİ TAKVİM: DAİMA AKTİF MEVSİM RENGİYLE HOVER
========================================================= */
.day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
body:not(.card-theme-vibrant) .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb), 0.60) !important;
    border-left-color: var(--season-accent, rgba(var(--season-rgb), 0.85)) !important;
    box-shadow:
        0 18px 40px -6px rgba(var(--season-rgb), 0.32),
        0 4px 14px rgba(0, 0, 0, 0.06),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] body:not(.card-theme-vibrant) .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb), 0.65) !important;
    border-left-color: var(--season-accent, rgba(var(--season-rgb), 0.90)) !important;
    box-shadow:
        0 20px 44px -6px rgba(0, 0, 0, 0.65),
        0 0 24px -4px rgba(var(--season-rgb), 0.38),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}

/* =========================================================
   ANA SAYFA MİNİ TAKVİM: MEVSİME ÖZEL KESİN HOVER IŞIKLARI
========================================================= */
.day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
body:not(.card-theme-vibrant) .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
body.card-theme-vibrant .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
#homeMiniCalendar:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb, 194, 106, 27), 0.65) !important;
    border-left-color: var(--season-accent, #9A3412) !important;
    box-shadow:
        0 18px 40px -6px rgba(var(--season-rgb, 194, 106, 27), 0.36),
        0 6px 16px -2px rgba(var(--season-rgb, 194, 106, 27), 0.20),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}

[data-theme="dark"] .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] body:not(.card-theme-vibrant) .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] body.card-theme-vibrant .day-card.home-cal-card:hover:not(.expanded-active):not(.is-animating),
[data-theme="dark"] #homeMiniCalendar:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
    border-color: rgba(var(--season-rgb, 217, 119, 6), 0.70) !important;
    border-left-color: var(--season-accent, #FBBF24) !important;
    box-shadow:
        0 20px 44px -6px rgba(0, 0, 0, 0.70),
        0 0 26px -4px rgba(var(--season-rgb, 217, 119, 6), 0.48),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}

/* Sonbahar (Ekim) Mini Takvim Kesin Kehribar/Altın Hover */
.day-card.home-cal-card.season-autumn:hover,
#homeMiniCalendar.season-autumn:hover {
    border-color: rgba(194, 106, 27, 0.65) !important;
    border-left-color: #9A3412 !important;
    box-shadow:
        0 18px 40px -6px rgba(194, 106, 27, 0.38),
        0 6px 16px -2px rgba(194, 106, 27, 0.22),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.95) !important;
}
[data-theme="dark"] .day-card.home-cal-card.season-autumn:hover,
[data-theme="dark"] #homeMiniCalendar.season-autumn:hover {
    border-color: rgba(217, 119, 6, 0.70) !important;
    border-left-color: #FBBF24 !important;
    box-shadow:
        0 20px 44px -6px rgba(0, 0, 0, 0.70),
        0 0 26px -4px rgba(217, 119, 6, 0.50),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.28) !important;
}

/* =========================================================
   EGZERSİZ GELİŞİM TAKİP KARTI ARKA YÜZ & HOVER STABİLİTESİ
========================================================= */
#progressCard.day-card {
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s ease, border-color 0.28s ease !important;
}
#progressCard.day-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
}

/* Arka Yüz Egzersiz Satırları: Renkli ve Sade Kristal Modlarına Tam Uyumlu */
/* 1. Sade Kristal Modu (Varsayılan - Quiet Luxury Glass) */
body:not(.card-theme-vibrant) .prog-v2-back-row {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 8px 12px 8px 14px !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    flex: 1 1 0 !important;
    min-height: 48px !important;
    background: rgba(255, 255, 255, 0.65) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.18s var(--ios-spring), box-shadow 0.2s ease !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .prog-v2-back-row {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35) !important;
}

body:not(.card-theme-vibrant) .prog-v2-back-row:hover {
    transform: translateX(3px) !important;
    background: rgba(255, 255, 255, 0.90) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.45) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08) !important;
}

[data-theme="dark"] body:not(.card-theme-vibrant) .prog-v2-back-row:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.55) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.48) !important;
}

/* 2. Renkli Cam Modu (Ayarlardan Açıldığında - Vibrant Aurora Glass) */
body.card-theme-vibrant .prog-v2-back-row {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 8px 12px 8px 14px !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    flex: 1 1 0 !important;
    min-height: 48px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.18s var(--ios-spring), box-shadow 0.2s ease !important;
}

body.card-theme-vibrant .prog-v2-back-row.is-improving {
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.20) 0%, rgba(16, 185, 129, 0.14) 100%) !important;
    border: 1px solid rgba(6, 182, 212, 0.45) !important;
}
[data-theme="dark"] body.card-theme-vibrant .prog-v2-back-row.is-improving {
    background: linear-gradient(135deg, rgba(0, 210, 211, 0.22) 0%, rgba(16, 185, 129, 0.16) 100%) !important;
    border: 1px solid rgba(0, 210, 211, 0.48) !important;
}
body.card-theme-vibrant .prog-v2-back-row.is-improving:hover {
    transform: translateX(3px) !important;
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.30) 0%, rgba(16, 185, 129, 0.22) 100%) !important;
    border-color: rgba(6, 182, 212, 0.65) !important;
}

body.card-theme-vibrant .prog-v2-back-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.22) 0%, rgba(255, 149, 0, 0.15) 100%) !important;
    border: 1px solid rgba(255, 69, 58, 0.45) !important;
}
[data-theme="dark"] body.card-theme-vibrant .prog-v2-back-row.is-plateau {
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.24) 0%, rgba(255, 159, 10, 0.18) 100%) !important;
    border: 1px solid rgba(255, 94, 58, 0.50) !important;
}
body.card-theme-vibrant .prog-v2-back-row.is-plateau:hover {
    transform: translateX(3px) !important;
    background: linear-gradient(135deg, rgba(255, 69, 58, 0.32) 0%, rgba(255, 149, 0, 0.24) 100%) !important;
    border-color: rgba(255, 94, 58, 0.70) !important;
}

body.card-theme-vibrant .prog-v2-back-row.is-neutral {
    background: linear-gradient(135deg, rgba(10, 132, 255, 0.20) 0%, rgba(94, 92, 230, 0.14) 100%) !important;
    border: 1px solid rgba(10, 132, 255, 0.42) !important;
}
[data-theme="dark"] body.card-theme-vibrant .prog-v2-back-row.is-neutral {
    background: linear-gradient(135deg, rgba(10, 132, 255, 0.24) 0%, rgba(94, 92, 230, 0.18) 100%) !important;
    border: 1px solid rgba(10, 132, 255, 0.48) !important;
}
body.card-theme-vibrant .prog-v2-back-row.is-neutral:hover {
    transform: translateX(3px) !important;
    background: linear-gradient(135deg, rgba(10, 132, 255, 0.30) 0%, rgba(94, 92, 230, 0.22) 100%) !important;
    border-color: rgba(10, 132, 255, 0.65) !important;
}

/* Sol Kenar Durum Çizgisi */
.prog-v2-back-row::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 6px !important;
    bottom: 6px !important;
    width: 3.5px !important;
    border-radius: 0 4px 4px 0 !important;
}
.prog-v2-back-row.is-improving::before {
    background: linear-gradient(180deg, #00D2D3 0%, #10B981 100%) !important;
}
.prog-v2-back-row.is-plateau::before {
    background: linear-gradient(180deg, #FF453A 0%, #FF9F0A 100%) !important;
}
.prog-v2-back-row.is-neutral::before {
    background: linear-gradient(180deg, #0A84FF 0%, #5E5CE6 100%) !important;
}

/* =========================================================
   GELİŞİM TAKİP KARTI HOVER STABİLİTESİ & TİTREME ÖNLEME
========================================================= */
#progressCard.is-flipping {
    pointer-events: none !important;
}
#progressCard.day-card.is-flipping:not(.expanded-active) {
    transform: translateY(-4px) !important;
}

/* =========================================================
   IOS AKIŞKAN SIVI SEZON BLOBU (LIQUID CAPSULE) - İÇBÜKEY KÖŞELER
========================================================= */
.blob-concave-fillet {
    position: absolute;
    width: 14px;
    height: 14px;
    z-index: 1;
    pointer-events: none;
    overflow: visible;
}
.home-cal-card .blob-concave-fillet {
    width: 10px;
    height: 10px;
}
.blob-concave-fillet.fillet-br { right: -14px; bottom: -14px; }
.home-cal-card .blob-concave-fillet.fillet-br { right: -10px; bottom: -10px; }
.blob-concave-fillet.fillet-bl { left: -14px; bottom: -14px; }
.home-cal-card .blob-concave-fillet.fillet-bl { left: -10px; bottom: -10px; }
.blob-concave-fillet.fillet-tr { right: -14px; top: -14px; }
.home-cal-card .blob-concave-fillet.fillet-tr { right: -10px; top: -10px; }
.blob-concave-fillet.fillet-tl { left: -14px; top: -14px; }
.home-cal-card .blob-concave-fillet.fillet-tl { left: -10px; top: -10px; }

.blob-concave-fillet .bcf-fill {
    fill: var(--s-bg);
}
.blob-concave-fillet .bcf-stroke {
    fill: none;
    stroke: var(--s-color);
    stroke-width: 1.5;
    filter: drop-shadow(0 0 3px var(--s-color)) drop-shadow(0 0 6px var(--s-glow));
}

/* 90 Derece Köşeleri Kaldıran Trim (Cut) Sınıfları */
.in-season.edge-b.cut-bl::after { left: 14px !important; }
.in-season.edge-b.cut-br::after { right: 14px !important; }
.in-season.edge-t.cut-tl::after { left: 14px !important; }
.in-season.edge-t.cut-tr::after { right: 14px !important; }
.in-season.edge-r.cut-tr::after { top: 14px !important; }
.in-season.edge-r.cut-br::after { bottom: 14px !important; }
.in-season.edge-l.cut-tl::after { top: 14px !important; }
.in-season.edge-l.cut-bl::after { bottom: 14px !important; }

.home-cal-card .in-season.edge-b.cut-bl::after { left: 10px !important; }
.home-cal-card .in-season.edge-b.cut-br::after { right: 10px !important; }
.home-cal-card .in-season.edge-t.cut-tl::after { left: 10px !important; }
.home-cal-card .in-season.edge-t.cut-tr::after { right: 10px !important; }
.home-cal-card .in-season.edge-r.cut-tr::after { top: 10px !important; }
.home-cal-card .in-season.edge-r.cut-br::after { bottom: 10px !important; }
.home-cal-card .in-season.edge-l.cut-tl::after { top: 10px !important; }
.home-cal-card .in-season.edge-l.cut-bl::after { bottom: 10px !important; }

/* =========================================================
   HAVA DURUMU KESİN VE NET VEKTÖREL SVG İKON STANDARTLARI
========================================================= */
.wf-svg-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35em;
    height: 1.35em;
    vertical-align: middle;
    flex-shrink: 0;
}
.wf-svg-icon-wrap svg {
    width: 100%;
    height: 100%;
    overflow: visible;
}


/* Stable hover after card flips and animated history set disclosure. */
.history-card-wrapper .day-card.history-hover-locked,.history-card-wrapper .day-card.history-hover-locked:hover{box-shadow:var(--card-shadow)!important;filter:none!important}
.day-card.ex-data-card.exdata-hover-locked,.day-card.ex-data-card.exdata-hover-locked:hover{border-color:var(--card-border)!important;box-shadow:var(--card-shadow)!important;filter:none!important}
.history-sets-shell{list-style:none;max-height:0;overflow:hidden;opacity:0;transform:translateY(-4px);transition:max-height 240ms cubic-bezier(.22,1,.36,1),opacity 180ms ease,transform 220ms cubic-bezier(.22,1,.36,1)}
.history-sets-shell.is-expanded{opacity:1;transform:translateY(0)}
.history-sets-strip{display:flex;align-items:center;gap:6px;padding:4px 6px 8px 28px;margin:0 0 4px;overflow-x:auto;scrollbar-width:none}
.history-sets-strip::-webkit-scrollbar{display:none}
.history-edit-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(78px,.34fr);align-items:stretch;gap:9px;width:100%;min-width:0;margin-top:10px;flex:0 0 auto;box-sizing:border-box}
.history-edit-actions>button{min-width:0!important;width:100%;box-sizing:border-box}
.history-edit-actions .action-btn-split{height:48px;max-height:48px;padding:0 clamp(7px,1.2vw,16px)!important;font-size:clamp(.76rem,.95vw,1rem)!important;white-space:nowrap}
.history-delete-action{height:48px;padding:0 9px;background:rgba(255,69,58,.15);border:1px solid rgba(255,69,58,.45);color:#FF453A;border-radius:12px;font-weight:700;font-size:.86em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:background .2s ease,border-color .2s ease}
.history-delete-action:hover{background:rgba(255,69,58,.23);border-color:rgba(255,69,58,.65)}
@media(max-width:420px){.history-edit-actions{grid-template-columns:minmax(0,1fr) 76px;gap:7px}.history-edit-actions .action-btn-split{font-size:.72rem!important}.history-delete-action{padding:0 5px;font-size:.78em;gap:3px}}
.exdata-muscle-tag{display:inline-flex;align-items:center;flex:0 1 auto;min-width:0;max-width:150px;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--muscle-color,var(--accent-blue)) 17%,transparent);border:1px solid color-mix(in srgb,var(--muscle-color,var(--accent-blue)) 43%,transparent);color:var(--muscle-color,var(--accent-blue));box-shadow:0 2px 8px color-mix(in srgb,var(--muscle-color,var(--accent-blue)) 14%,transparent);font-size:.61em;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exdata-volume-pill{display:inline-flex;align-items:center;width:fit-content;padding:3px 8px;border-radius:999px;color:var(--text-secondary);background:rgba(var(--theme-rgb),.10);border:1px solid rgba(var(--theme-rgb),.20);white-space:nowrap}
#progressCard .prog-v2-kpi-box.is-delta-kpi,#progressCard .prog-v2-kpi-box.is-delta-kpi .pvk-main-row{min-width:0!important}
#progressCard .pvk-delta-summary{display:block;max-width:100%;min-width:0;font-size:clamp(.62rem,.76em,.80rem)!important;line-height:1.08;letter-spacing:-.035em;white-space:normal!important;overflow-wrap:anywhere}
.ios-drag-ghost-host{overflow:hidden!important;border-radius:14px!important}
.ios-drag-ghost-host>.ios-drag-floating-ghost,.ios-drag-floating-ghost{background:transparent!important;border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important}
[data-theme="dark"] .ios-drag-ghost-host{background:rgba(24,28,38,.96)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 22px 48px rgba(0,0,0,.72),0 6px 18px rgba(0,0,0,.40),inset 0 1.5px 0 rgba(255,255,255,.25)!important}
[data-theme="light"] .ios-drag-ghost-host{background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.85)!important;box-shadow:0 20px 44px rgba(0,0,0,.30),0 4px 14px rgba(0,0,0,.12),inset 0 1.5px 0 rgba(255,255,255,.85)!important}
.month-card .ios-day.in-season,.home-cal-card .ios-day.in-season{overflow:visible!important;z-index:1!important}
.month-card .ios-day.in-season::before,.home-cal-card .ios-day.in-season::before{inset:0!important;z-index:0!important}
.month-card .ios-day.in-season::after,.home-cal-card .ios-day.in-season::after{inset:0!important;z-index:1!important;filter:none!important}
.month-card .ios-day.in-season .ios-day-number,.home-cal-card .ios-day.in-season .ios-day-number{z-index:3!important}
.month-card .ios-day.in-season .day-tick,.home-cal-card .ios-day.in-season .day-tick{z-index:4!important}
.blob-concave-fillet{z-index:2!important;overflow:visible!important}
.blob-concave-fillet .bcf-stroke{stroke-width:1.15!important;filter:none!important;vector-effect:non-scaling-stroke}
.month-card .in-season.edge-t.edge-l::before,.month-card .in-season.edge-t.edge-l::after{border-top-left-radius:14px!important}
.month-card .in-season.edge-t.edge-r::before,.month-card .in-season.edge-t.edge-r::after{border-top-right-radius:14px!important}
.month-card .in-season.edge-b.edge-l::before,.month-card .in-season.edge-b.edge-l::after{border-bottom-left-radius:14px!important}
.month-card .in-season.edge-b.edge-r::before,.month-card .in-season.edge-b.edge-r::after{border-bottom-right-radius:14px!important}
.home-cal-card .in-season.edge-t.edge-l::before,.home-cal-card .in-season.edge-t.edge-l::after{border-top-left-radius:10px!important}
.home-cal-card .in-season.edge-t.edge-r::before,.home-cal-card .in-season.edge-t.edge-r::after{border-top-right-radius:10px!important}
.home-cal-card .in-season.edge-b.edge-l::before,.home-cal-card .in-season.edge-b.edge-l::after{border-bottom-left-radius:10px!important}
.home-cal-card .in-season.edge-b.edge-r::before,.home-cal-card .in-season.edge-b.edge-r::after{border-bottom-right-radius:10px!important}
.weather-city-modal-card{width:min(430px,94vw);max-height:min(78vh,680px)}
.weather-city-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 18px 16px;overflow-y:auto}
.weather-city-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:11px 12px;border:1px solid var(--card-border);border-radius:13px;background:rgba(255,255,255,.055);color:var(--text-main);font:inherit;font-size:.88rem;font-weight:700;text-align:left;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.weather-city-option:hover{background:rgba(var(--theme-rgb),.11);border-color:rgba(var(--theme-rgb),.38);transform:translateY(-1px)}
.weather-city-option.is-selected{background:rgba(var(--theme-rgb),.16);border-color:rgba(var(--theme-rgb),.52);color:var(--theme-accent)}
.weather-city-check{flex:0 0 1em;text-align:center}
@media(max-width:380px){.weather-city-options{grid-template-columns:1fr}}

/* Keep animated cards stable until the pointer has truly left the finished card. */
#historyCardContainer .history-card-wrapper .day-card.history-hover-locked,
#historyCardContainer .history-card-wrapper .day-card.history-hover-locked:hover {
    transform: none !important;
    border-color: var(--card-border) !important;
    box-shadow: var(--card-shadow) !important;
    filter: none !important;
}
#exerciseDataGrid .day-card.ex-data-card.exdata-hover-locked,
#exerciseDataGrid .day-card.ex-data-card.exdata-hover-locked:hover {
    transform: none !important;
    border-color: var(--card-border) !important;
    box-shadow: var(--card-shadow) !important;
    filter: none !important;
}

/* Ignore neighboring rows beneath a dragged preview so their hover shape does not show through. */
body.is-dragging .day-card:not(.ios-drag-ghost-host) .exercise-list > .exercise-item:not(.is-drag-placeholder) {
    pointer-events: none !important;
}
.ios-drag-ghost-host .ios-drag-floating-ghost .exercise-item {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Raise concave fillets above adjacent calendar cells and overlap hairline seams. */
.month-card .ios-day.in-season.has-concave-fillet,
.home-cal-card .ios-day.in-season.has-concave-fillet {
    z-index: 5 !important;
}
.month-card .ios-day.in-season::after,
.home-cal-card .ios-day.in-season::after {
    inset: -0.3px !important;
    box-sizing: border-box !important;
}


/* TXT Havuz Yönetimi Modalı */
.ios-modal-card.pool-txt-settings-card {
    width: 480px;
    max-width: calc(100vw - 32px);
    border-radius: 28px;
    padding: 22px 22px 18px 22px;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(255, 149, 0, 0.16) 0%, transparent 65%),
        linear-gradient(160deg, #FFFFFF 0%, #F5F6FA 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.35),
        0 4px 16px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(40px) saturate(180%);
    -webkit-backdrop-filter: blur(40px) saturate(180%);
    opacity: 0;
    transform: translateY(8px);
    transition: transform 0.24s var(--ios-spring), opacity 0.18s ease !important;
}

[data-theme="dark"] .ios-modal-card.pool-txt-settings-card {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(255, 149, 0, 0.22) 0%, transparent 66%),
        linear-gradient(165deg, #1C1E26 0%, #12131A 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.85),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.22) !important;
}

.modal-overlay.active .ios-modal-card.pool-txt-settings-card {
    opacity: 1 !important;
    transform: none !important;
}

.pool-txt-modal-body {
    padding: 10px 0 16px 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.pool-txt-modal-desc {
    margin: 0;
    font-size: 0.89em;
    line-height: 1.55;
    color: var(--text-main);
    background: rgba(0, 0, 0, 0.04);
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

[data-theme="dark"] .pool-txt-modal-desc {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    color: rgba(255, 255, 255, 0.90);
}

.pool-txt-modal-desc code {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.92em;
    font-weight: 700;
    color: var(--accent-orange, #FF9500);
    background: rgba(255, 149, 0, 0.14);
    padding: 2px 7px;
    border-radius: 6px;
    border: 1px solid rgba(255, 149, 0, 0.28);
}

.pool-txt-modal-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.pool-txt-action-btn {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 13px 15px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(0, 0, 0, 0.08);
    cursor: pointer;
    text-align: left;
    transition: transform 0.18s var(--ios-spring), background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

[data-theme="dark"] .pool-txt-action-btn {
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.pool-txt-action-btn:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 149, 0, 0.50);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
}

[data-theme="dark"] .pool-txt-action-btn:hover {
    background: rgba(255, 255, 255, 0.13);
    border-color: rgba(255, 149, 0, 0.60);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.pool-txt-action-btn:active {
    transform: scale(0.98);
}

.pool-txt-action-btn .ptab-icon {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(255, 149, 0, 0.15);
    color: #FF9500;
}

.pool-txt-action-btn .ptab-text {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.pool-txt-action-btn .ptab-title {
    font-size: 0.95em;
    font-weight: 800;
    color: var(--text-main);
}

.pool-txt-action-btn .ptab-sub {
    font-size: 0.76em;
    font-weight: 600;
    color: var(--text-secondary);
    line-height: 1.35;
}

.pool-txt-action-btn .ptab-chevron {
    color: var(--text-secondary);
    opacity: 0.65;
    flex-shrink: 0;
}


/* =========================================================
   STRIVE PROMPT 4: PC ARAYÜZ CİLASI & DETAY POLİTAŞI
   ========================================================= */

/* 4.1 (B1): Takvim Kartlarında İçbükey Köşeler ve Düz Kenarlar */
.month-card .ios-day.in-season.edge-t.cut-tl::after { left: 14px !important; }
.month-card .ios-day.in-season.edge-t.cut-tr::after { right: 14px !important; }
.month-card .ios-day.in-season.edge-b.cut-bl::after { left: 14px !important; }
.month-card .ios-day.in-season.edge-b.cut-br::after { right: 14px !important; }
.month-card .ios-day.in-season.edge-l.cut-tl::after { top: 14px !important; }
.month-card .ios-day.in-season.edge-l.cut-bl::after { bottom: 14px !important; }
.month-card .ios-day.in-season.edge-r.cut-tr::after { top: 14px !important; }
.month-card .ios-day.in-season.edge-r.cut-br::after { bottom: 14px !important; }

.home-cal-card .ios-day.in-season.edge-t.cut-tl::after { left: 10px !important; }
.home-cal-card .ios-day.in-season.edge-t.cut-tr::after { right: 10px !important; }
.home-cal-card .ios-day.in-season.edge-b.cut-bl::after { left: 10px !important; }
.home-cal-card .ios-day.in-season.edge-b.cut-br::after { right: 10px !important; }
.home-cal-card .ios-day.in-season.edge-l.cut-tl::after { top: 10px !important; }
.home-cal-card .ios-day.in-season.edge-l.cut-bl::after { bottom: 10px !important; }
.home-cal-card .ios-day.in-season.edge-r.cut-tr::after { top: 10px !important; }
.home-cal-card .ios-day.in-season.edge-r.cut-br::after { bottom: 10px !important; }

.blob-concave-fillet {
    z-index: 3 !important;
    overflow: visible !important;
    pointer-events: none !important;
}
.blob-concave-fillet .bcf-stroke {
    stroke-width: 1.5 !important;
    stroke: var(--s-color) !important;
    stroke-linecap: round !important;
    filter: none !important;
    vector-effect: non-scaling-stroke !important;
}
.blob-concave-fillet .bcf-fill {
    fill: var(--s-bg) !important;
}

/* 4.2 (B2): Geçmiş Kartı Düzenleme Butonları Sığdırma & Sınırlandırma */
.history-edit-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(78px, 0.32fr) !important;
    align-items: stretch !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 10px !important;
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
}
.history-edit-actions .action-btn-split {
    width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    max-height: 48px !important;
    padding: 0 clamp(6px, 1.1vw, 14px) !important;
    font-size: clamp(0.74rem, 0.92vw, 0.96rem) !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}
.history-delete-action {
    width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    max-height: 48px !important;
    box-sizing: border-box !important;
}

/* 4.3 (B3): Geçmiş Kartında Egzersiz Satırı Açılma & Kapanma Animasyonu */
.history-sets-shell {
    list-style: none !important;
    max-height: 0;
    overflow: hidden !important;
    opacity: 0;
    transform: translateY(-4px);
    transition: max-height var(--duration-ui, 0.36s) var(--ios-spring, cubic-bezier(0.32, 0.72, 0, 1)),
                opacity 0.20s ease,
                transform var(--duration-ui, 0.36s) var(--ios-spring, cubic-bezier(0.32, 0.72, 0, 1)) !important;
    will-change: max-height, opacity, transform;
}
.history-sets-shell.is-expanded {
    opacity: 1 !important;
    transform: translateY(0) !important;
}
@media (prefers-reduced-motion: reduce) {
    .history-sets-shell {
        transition: none !important;
        transform: none !important;
    }
}

/* 4.4 (B4): Çevrilen Kartlarda Paylaşılan Hover Kilidi */
.card-hover-locked,
.card-hover-locked:hover,
.day-card.card-hover-locked,
.day-card.card-hover-locked:hover,
#historyCardContainer .history-card-wrapper .day-card.history-hover-locked,
#historyCardContainer .history-card-wrapper .day-card.history-hover-locked:hover,
#exerciseDataGrid .day-card.ex-data-card.exdata-hover-locked,
#exerciseDataGrid .day-card.ex-data-card.exdata-hover-locked:hover {
    transform: none !important;
    box-shadow: var(--card-shadow) !important;
    filter: none !important;
}

/* 4.5 (B5): Egzersiz Veri Merkezi Kas Pill'i & Hacim Pill'i */
.exdata-muscle-tag {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: 155px !important;
    padding: 3px 8.5px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--muscle-color, var(--accent-blue)) 18%, transparent) !important;
    border: 1px solid color-mix(in srgb, var(--muscle-color, var(--accent-blue)) 46%, transparent) !important;
    color: var(--muscle-color, var(--accent-blue)) !important;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--muscle-color, var(--accent-blue)) 16%, transparent) !important;
    font-size: 0.63em !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.exdata-muscle-tag.is-neutral {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: var(--text-secondary) !important;
    box-shadow: none !important;
}
.exdata-volume-pill {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    color: var(--text-secondary) !important;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.10) !important;
    border: 1px solid rgba(var(--theme-rgb, 10, 132, 255), 0.22) !important;
    font-size: 0.74em !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

/* 4.6 (B6): Net Durum Kutusu Tek Satır & Taşırmayan Metin */
#progressCard .pvk-delta-summary {
    display: block !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(0.58rem, 0.74vw, 0.78rem) !important;
    line-height: 1.15 !important;
    letter-spacing: -0.025em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* 4.7 (B7): Gün Kartında Satır Sürükleme Köşe Yarıçapı ve Kırpma Tutarlılığı */
.exercise-item.is-drag-placeholder {
    opacity: 0.18 !important;
    border: none !important;
    border-radius: 14px !important;
    background: rgba(var(--theme-rgb, 120, 120, 128), 0.14) !important;
    box-shadow: none !important;
    outline: none !important;
    overflow: hidden !important;
}
.exercise-item.is-drag-placeholder.linked-to-next {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.exercise-item.is-drag-placeholder.linked-to-prev {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}
.ios-drag-ghost-host {
    overflow: hidden !important;
    border-radius: 14px !important;
}
.ios-drag-ghost-host .exercise-item {
    border-radius: 0 !important;
    box-shadow: none !important;
}



/* =========================================================
   HAVA DURUMU ŞEHİR SEÇİMİ MODALI (FROSTED GLASS AURORA)
   ========================================================= */
.ios-modal-card.weather-city-modal-card {
    width: 440px !important;
    max-width: calc(100vw - 32px) !important;
    max-height: min(82vh, 640px) !important;
    border-radius: 28px !important;
    padding: 22px 22px 18px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.18) 0%, transparent 65%),
        linear-gradient(160deg, #FFFFFF 0%, #F4F6FB 100%) !important;
    border: 1px solid rgba(10, 132, 255, 0.26) !important;
    box-shadow:
        0 28px 64px rgba(0, 0, 0, 0.35),
        0 4px 16px rgba(0, 0, 0, 0.12),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(40px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
    transform: translateY(8px) scale(0.96) !important;
    opacity: 0 !important;
    transition: transform 0.28s var(--ios-spring), opacity 0.20s ease !important;
}

[data-theme="dark"] .ios-modal-card.weather-city-modal-card {
    background:
        radial-gradient(120% 90% at 96% 4%, rgba(10, 132, 255, 0.28) 0%, transparent 66%),
        linear-gradient(165deg, #171A24 0%, #0E1016 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    box-shadow:
        0 30px 72px rgba(0, 0, 0, 0.75),
        0 6px 20px rgba(0, 0, 0, 0.40),
        inset 0 1.5px 0 rgba(255, 255, 255, 0.20) !important;
}

.modal-overlay.active .ios-modal-card.weather-city-modal-card {
    transform: translateY(0) scale(1) !important;
    opacity: 1 !important;
}

.weather-city-options {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    padding: 14px 2px 18px !important;
    overflow-y: auto !important;
    max-height: 48vh !important;
}

.weather-city-option {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    min-width: 0 !important;
    padding: 11px 14px !important;
    border: 1px solid var(--card-border) !important;
    border-radius: 13px !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: var(--text-main) !important;
    font: inherit !important;
    font-size: 0.90rem !important;
    font-weight: 700 !important;
    text-align: left !important;
    cursor: pointer !important;
    transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease !important;
}

[data-theme="light"] .weather-city-option {
    background: rgba(0, 0, 0, 0.04) !important;
    border-color: rgba(0, 0, 0, 0.10) !important;
}

.weather-city-option:hover {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.12) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.38) !important;
    transform: translateY(-1px) !important;
}

.weather-city-option.is-selected {
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.18) !important;
    border-color: rgba(var(--theme-rgb, 10, 132, 255), 0.54) !important;
    color: var(--theme-accent, #0A84FF) !important;
}


/* =========================================================
   NET DURUM & GRAFİK ÜST KPI STRİP: KUSURSUZ SIĞMA & DENGELİ DÜZEN
   ========================================================= */
#progressCard .prog-v2-kpi-strip {
    display: grid !important;
    grid-template-columns: 1.12fr 0.98fr 1.25fr !important;
    gap: 5px !important;
    flex-shrink: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

#progressCard .prog-v2-kpi-box {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 5px 6.5px !important;
    border-radius: 11px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#progressCard .pvk-head-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 3px !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

#progressCard .pvk-lbl {
    font-size: clamp(7.2px, 0.72vw, 8.6px) !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
    color: var(--text-secondary) !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex-shrink: 0 !important;
}

#progressCard .pvk-head-tag {
    font-size: clamp(7.6px, 0.75vw, 8.8px) !important;
    font-weight: 700 !important;
    padding: 1px 4.5px !important;
    border-radius: 4px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    font-variant-numeric: tabular-nums !important;
    line-height: 1.15 !important;
}

#progressCard .pvk-pr-tag-gold {
    font-size: clamp(7.8px, 0.78vw, 9.0px) !important;
    font-weight: 900 !important;
    padding: 1px 4.5px !important;
    border-radius: 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex-shrink: 1 !important;
    max-width: 62% !important;
    box-sizing: border-box !important;
}

#progressCard .pvk-main-row {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 3px !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin-top: 2px !important;
}

#progressCard .pvk-main-weight {
    font-size: clamp(0.92rem, 1.08vw, 1.05rem) !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

#progressCard .pvk-sub-meta {
    font-size: clamp(0.58rem, 0.70vw, 0.72rem) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
    color: var(--text-secondary) !important;
}

#progressCard .pvk-delta-summary {
    display: block !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(0.58rem, 0.72vw, 0.76rem) !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
}


/* =========================================================
   TAKVİM İÇBÜKEY KÖŞELER: PÜRÜZSÜZ & SIFIR-BOŞLUKLU GEÇİŞ
   ========================================================= */
/* Hücre sınır çizgisi tam 0 koordinatına oturtulur, dışarı taşma/öteleme sıfırlanır */
.month-card .ios-day.in-season::after,
.home-cal-card .ios-day.in-season::after {
    inset: 0 !important;
    box-sizing: border-box !important;
    filter: none !important;
}

.month-card .ios-day.in-season.edge-t.cut-tr::after { right: 14px !important; }
.month-card .ios-day.in-season.edge-t.cut-tl::after { left: 14px !important; }
.month-card .ios-day.in-season.edge-b.cut-br::after { right: 14px !important; }
.month-card .ios-day.in-season.edge-b.cut-bl::after { left: 14px !important; }
.month-card .ios-day.in-season.edge-l.cut-tl::after { top: 14px !important; }
.month-card .ios-day.in-season.edge-l.cut-bl::after { bottom: 14px !important; }
.month-card .ios-day.in-season.edge-r.cut-tr::after { top: 14px !important; }
.month-card .ios-day.in-season.edge-r.cut-br::after { bottom: 14px !important; }

.home-cal-card .ios-day.in-season.edge-t.cut-tr::after { right: 10px !important; }
.home-cal-card .ios-day.in-season.edge-t.cut-tl::after { left: 10px !important; }
.home-cal-card .ios-day.in-season.edge-b.cut-br::after { right: 10px !important; }
.home-cal-card .ios-day.in-season.edge-b.cut-bl::after { left: 10px !important; }
.home-cal-card .ios-day.in-season.edge-l.cut-tl::after { top: 10px !important; }
.home-cal-card .ios-day.in-season.edge-l.cut-bl::after { bottom: 10px !important; }
.home-cal-card .ios-day.in-season.edge-r.cut-tr::after { top: 10px !important; }
.home-cal-card .ios-day.in-season.edge-r.cut-br::after { bottom: 10px !important; }

.blob-concave-fillet {
    position: absolute !important;
    z-index: 4 !important;
    overflow: visible !important;
    pointer-events: none !important;
}

.month-card .blob-concave-fillet {
    width: 14px !important;
    height: 14px !important;
}
.home-cal-card .blob-concave-fillet {
    width: 10px !important;
    height: 10px !important;
}

.month-card .blob-concave-fillet.fillet-br { right: -14px !important; bottom: -14px !important; }
.month-card .blob-concave-fillet.fillet-bl { left: -14px !important; bottom: -14px !important; }
.month-card .blob-concave-fillet.fillet-tr { right: -14px !important; top: -14px !important; }
.month-card .blob-concave-fillet.fillet-tl { left: -14px !important; top: -14px !important; }

.home-cal-card .blob-concave-fillet.fillet-br { right: -10px !important; bottom: -10px !important; }
.home-cal-card .blob-concave-fillet.fillet-bl { left: -10px !important; bottom: -10px !important; }
.home-cal-card .blob-concave-fillet.fillet-tr { right: -10px !important; top: -10px !important; }
.home-cal-card .blob-concave-fillet.fillet-tl { left: -10px !important; top: -10px !important; }

/* Kavis çizgisi düz kenar çizgisiyle birebir aynı stilde, ek bulanıklık olmadan kesintisiz birleşir */
.blob-concave-fillet .bcf-stroke {
    stroke: var(--s-color) !important;
    stroke-width: 1.5 !important;
    stroke-linecap: round !important;
    vector-effect: non-scaling-stroke !important;
    filter: none !important;
}

/* Kavis dolgusu hücre zemin dolgusuyla birebir aynı ton ve saydamlıkta kaynaşır */
.blob-concave-fillet .bcf-fill {
    fill: rgba(var(--s-rgb, 10, 132, 255), 0.16) !important;
    stroke: rgba(var(--s-rgb, 10, 132, 255), 0.16) !important;
    stroke-width: 0.6px !important;
}
[data-theme="dark"] .blob-concave-fillet .bcf-fill {
    fill: rgba(var(--s-rgb, 10, 132, 255), 0.22) !important;
    stroke: rgba(var(--s-rgb, 10, 132, 255), 0.22) !important;
    stroke-width: 0.6px !important;
}

/* =========================================================
   YENİLENMİŞ SADE GRAFİK KPI ŞERİDİ & SIFIR-ZIPLAMA HOVER
   ========================================================= */
.prog-clean-kpi-bar {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 7px 10px !important;
    margin: 4px 0 6px 0 !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-radius: 12px !important;
    flex-shrink: 0 !important;
}

[data-theme="light"] .prog-clean-kpi-bar {
    background: rgba(0, 0, 0, 0.035) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
}

.pck-col {
    flex: 1 1 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 3px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.pck-active-col, .pck-delta-col, .pck-pr-col {
    flex: 1 1 0 !important;
    align-items: flex-start !important;
}

.pck-divider {
    width: 1px !important;
    align-self: stretch !important;
    background: rgba(255, 255, 255, 0.10) !important;
    flex-shrink: 0 !important;
}

[data-theme="light"] .pck-divider {
    background: rgba(0, 0, 0, 0.08) !important;
}

.pck-kicker {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    min-width: 0 !important;
}

.pck-dot {
    width: 5px !important;
    height: 5px !important;
    border-radius: 50% !important;
    background: var(--theme-accent, #0A84FF) !important;
    box-shadow: 0 0 6px var(--theme-accent, #0A84FF) !important;
    flex-shrink: 0 !important;
}

.pck-kicker-lbl {
    font-size: 8px !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
    color: var(--text-secondary) !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-pr-badge-pill {
    font-size: 8px !important;
    font-weight: 800 !important;
    padding: 1px 5px !important;
    border-radius: 4px !important;
    background: rgba(255, 214, 10, 0.18) !important;
    color: #FFD60A !important;
    border: 1px solid rgba(255, 214, 10, 0.35) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-tag-date {
    font-size: 8px !important;
    font-weight: 700 !important;
    padding: 1px 4.5px !important;
    border-radius: 4px !important;
    background: rgba(var(--theme-rgb, 10, 132, 255), 0.16) !important;
    color: var(--theme-accent, #0A84FF) !important;
    font-variant-numeric: tabular-nums !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-value-wrap {
    display: flex !important;
    align-items: baseline !important;
    gap: 4px !important;
    min-width: 0 !important;
}

.pck-weight {
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums !important;
    color: var(--text-main) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-reps {
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    color: var(--text-main) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-rir {
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    color: var(--theme-accent, #0A84FF) !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.pck-delta-chip {
    font-size: 8px !important;
    font-weight: 800 !important;
    padding: 1px 5px !important;
    border-radius: 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 95px !important;
    flex-shrink: 0 !important;
}

.pck-delta-chip.is-improving {
    background: rgba(48, 209, 88, 0.18) !important;
    color: #30D158 !important;
    border: 1px solid rgba(48, 209, 88, 0.32) !important;
}

.pck-delta-chip.is-plateau {
    background: rgba(255, 159, 10, 0.18) !important;
    color: #FF9F0A !important;
    border: 1px solid rgba(255, 159, 10, 0.32) !important;
}

.pck-delta-chip.is-neutral {
    background: rgba(255, 255, 255, 0.10) !important;
    color: var(--text-secondary) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
}

.pck-sub-info {
    display: flex !important;
    align-items: baseline !important;
    gap: 3px !important;
    min-width: 0 !important;
    font-size: 0.70rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.pck-sub-dim {
    color: var(--text-secondary) !important;
    font-size: 0.68rem !important;
}

.pck-sub-val {
    font-weight: 600 !important;
    color: var(--text-main) !important;
    font-variant-numeric: tabular-nums !important;
}

.pck-pr-wrap {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
}

#progressCard .pvk-pr-tag-gold {
    font-size: 8.5px !important;
    font-weight: 900 !important;
    padding: 2px 6px !important;
    border-radius: 5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 105px !important;
}

/* Kart çevrilirken (front <-> back geçişinde) dış kartın hover zıplamasını kesin önleme */
#progressCard.day-card {
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s ease, border-color 0.28s ease !important;
}
#progressCard.day-card:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
}
#progressCard.day-card.card-flipped:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
}
#progressCard.day-card.is-flipped:hover:not(.expanded-active):not(.is-animating) {
    transform: translateY(-4px) !important;
}


/* ==========================================================================
   AŞAMA 2: SEZON BLOK VE DELOAD SİSTEMİ STİLLERİ
   ========================================================================== */

/* Gün kartlarındaki Deload Rozeti */
.card-deload-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: rgba(48, 209, 88, 0.16);
    border: 1px solid rgba(48, 209, 88, 0.35);
    color: #30D158;
    font-size: 0.72rem;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    margin-left: 6px;
    cursor: pointer;
    vertical-align: middle;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.card-deload-pill:hover {
    background: rgba(48, 209, 88, 0.28);
    transform: scale(1.05);
}

/* Sezon Yönetimi Listesindeki Blok Döngüsü Rozetleri */
.season-block-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 6px;
    letter-spacing: 0.2px;
}
.season-block-pill.is-load {
    background: rgba(10, 132, 255, 0.14);
    color: #0A84FF;
    border: 1px solid rgba(10, 132, 255, 0.3);
}
.season-block-pill.is-deload {
    background: rgba(48, 209, 88, 0.16);
    color: #30D158;
    border: 1px solid rgba(48, 209, 88, 0.38);
    box-shadow: 0 0 10px rgba(48, 209, 88, 0.2);
}
.season-block-pill.is-cycle-cfg {
    background: rgba(255, 159, 10, 0.14);
    color: #FF9F0A;
    border: 1px solid rgba(255, 159, 10, 0.3);
}
.season-block-pill.is-none {
    background: rgba(142, 142, 147, 0.14);
    color: #8E8E93;
    border: 1px solid rgba(142, 142, 147, 0.3);
}

/* Ana Sayfa 3. Kart (Sezon Kartı) Deload Haftası İhlali / Vurgusu */
.stat-season.is-deload-week {
    border-color: rgba(48, 209, 88, 0.45) !important;
    box-shadow: 0 6px 22px rgba(48, 209, 88, 0.22) !important;
}

/* Deload Giriş Modalı Reçete Özeti Kutusu */
.deload-recipe-card-box {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    padding: 12px 14px;
    margin: 14px 0 6px 0;
}
[data-theme="dark"] .deload-recipe-card-box {
    background: rgba(0, 0, 0, 0.28);
    border-color: rgba(255, 255, 255, 0.09);
}
.drcb-title {
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #30D158;
    margin-bottom: 8px;
}
.drcb-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.drcb-item {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 10px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
[data-theme="dark"] .drcb-item {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.07);
}
.drcb-lbl {
    font-size: 0.68rem;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--text-sub);
    letter-spacing: 0.3px;
}
.drcb-val {
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--text-main);
}
.drcb-sub {
    font-size: 0.68rem;
    color: var(--text-sub);
    line-height: 1.2;
}


/* ==================== STRIVE DUO: PARTNER MODU VE AKORDEON STILLERI ==================== */
/* Sol Menü Akordeon */
.sb-duo-parent {
    position: relative;
    cursor: pointer;
    display: flex;
    align-items: center;
    user-select: none;
    transition: background 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s ease;
}
.sb-duo-parent:hover {
    background: rgba(255, 255, 255, 0.06);
}
.sb-duo-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #8e8e93;
    margin-left: auto;
    margin-right: 8px;
    transition: background 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}
.sb-duo-status-dot.online {
    background: #30d158;
    box-shadow: 0 0 10px rgba(48, 209, 88, 0.75);
    transform: scale(1.1);
}
.sb-duo-chevron {
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), color 0.2s ease;
    display: flex;
    align-items: center;
    color: var(--text-tertiary);
}
.sb-duo-parent.expanded .sb-duo-chevron {
    transform: rotate(180deg);
    color: var(--text-primary);
}
.sb-submenu {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.32s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.32s cubic-bezier(0.25, 1, 0.5, 1), margin 0.32s cubic-bezier(0.25, 1, 0.5, 1), padding 0.32s cubic-bezier(0.25, 1, 0.5, 1);
    pointer-events: none;
}
.sb-submenu.open {
    max-height: 280px;
    opacity: 1;
    margin: 4px 0 8px 10px;
    padding: 2px 0 2px 6px;
    pointer-events: auto;
}
.sb-submenu li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    margin: 3px 0;
    border-radius: 10px;
    font-size: 0.86rem;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: background 0.2s cubic-bezier(0.16, 1, 0.3, 1), color 0.2s ease, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}
.sb-submenu li:hover {
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-primary);
}
.sb-submenu li.active-nav {
    background: rgba(88, 86, 214, 0.16);
    color: #5856D6;
    font-weight: 700;
    box-shadow: inset 0 0 0 1px rgba(88, 86, 214, 0.32);
}
body.card-theme-vibrant .sb-submenu li.active-nav {
    background: linear-gradient(135deg, rgba(88, 86, 214, 0.26) 0%, rgba(94, 92, 230, 0.14) 100%);
    color: #7B79FF;
    box-shadow: inset 0 0 0 1px rgba(88, 86, 214, 0.42), 0 4px 14px rgba(88, 86, 214, 0.18);
}
.sb-sub-icon {
    width: 22px;
    height: 22px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), background 0.2s ease, box-shadow 0.2s ease;
}
.sb-sub-icon svg {
    margin-right: 0 !important;
    display: block;
}
.sb-sub-icon-weekly {
    background: rgba(10, 132, 255, 0.15);
    color: #0A84FF;
}
.sb-sub-icon-data {
    background: rgba(88, 86, 214, 0.15);
    color: #5856D6;
}
.sb-sub-icon-history {
    background: rgba(48, 209, 88, 0.15);
    color: #30D158;
}
.sb-sub-icon-bio {
    background: rgba(16, 185, 129, 0.15);
    color: #10B981;
}
.sb-submenu li:hover .sb-sub-icon {
    transform: none;
}
.sb-submenu li.active-nav .sb-sub-icon {
    transform: scale(1.18);
    box-shadow: 0 0 10px currentColor;
}
.sb-sub-tag {
    margin-left: auto;
    font-size: 0.62rem;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(255, 159, 10, 0.15);
    color: #ff9f0a;
    border: 1px solid rgba(255, 159, 10, 0.3);
    font-weight: 700;
    text-transform: uppercase;
}

/* Hızlı Tepki Barı (Duo Reactions) */
.duo-reaction-bar {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    margin-right: 12px;
    transition: all 0.2s ease;
}
body.card-theme-vibrant .duo-reaction-bar {
    background: rgba(88, 86, 214, 0.12);
    border-color: rgba(88, 86, 214, 0.28);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
}
.duo-react-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.2rem;
    padding: 4px 8px;
    border-radius: 9px;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), background 0.18s ease;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.duo-react-btn:hover {
    background: rgba(255, 255, 255, 0.12);
    transform: scale(1.2);
}
.duo-react-btn:active {
    transform: scale(0.92);
}
.duo-react-count {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--text-secondary);
}

/* Eşleşme Modalı */
.duo-pairing-modal-card {
    max-width: 680px;
    width: 92%;
    max-height: 88vh !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 24px;
    background: var(--bg-surface, #1c1c1e);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.55), 0 0 35px rgba(88, 86, 214, 0.15);
    overflow: hidden !important;
    backdrop-filter: blur(32px) saturate(180%);
    -webkit-backdrop-filter: blur(32px) saturate(180%);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.duo-pairing-modal-card .ios-modal-header {
    flex: 0 0 auto !important;
    padding: 24px 26px 14px 26px !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-sizing: border-box !important;
}
.duo-pairing-modal-card .ios-modal-title-group {
    padding-left: 2px !important;
}
.duo-pairing-modal-card .ios-modal-kicker {
    margin-bottom: 3px !important;
}
.duo-action-box {
    min-height: 236px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
}
.duo-code-display {
    margin-top: 10px !important;
    padding: 8px 12px !important;
    box-sizing: border-box !important;
}
.day-workout-emoji {
    position: absolute !important;
    bottom: -3px !important;
    font-size: 0.75em !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: 5 !important;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,0.6)) !important;
    user-select: none !important;
}
.home-cal-card .day-workout-emoji {
    bottom: -2px !important;
    font-size: 0.65em !important;
}
.month-card .day-workout-emoji {
    bottom: -4px !important;
    font-size: 0.95em !important;
}
body.card-theme-vibrant .duo-pairing-modal-card {
    background: radial-gradient(120% 90% at 96% 4%, rgba(88, 86, 214, 0.22) 0%, transparent 65%), linear-gradient(160deg, rgba(28, 28, 30, 0.96) 0%, rgba(18, 18, 20, 0.98) 100%);
    border-color: rgba(94, 92, 230, 0.3);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.55), 0 0 45px rgba(88, 86, 214, 0.25);
}
[data-theme="light"] .duo-pairing-modal-card {
    background: radial-gradient(120% 90% at 96% 4%, rgba(88, 86, 214, 0.12) 0%, transparent 65%), linear-gradient(160deg, #FFFFFF 0%, #F5F6FA 100%);
    border-color: rgba(0, 0, 0, 0.08);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.12);
}
.duo-pairing-body {
    padding: 20px 24px 26px 24px;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: calc(88vh - 75px) !important;
    flex: 1 1 auto !important;
}
.duo-pairing-body::-webkit-scrollbar {
    width: 6px;
}
.duo-pairing-body::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.18);
    border-radius: 4px;
}
.duo-section-desc {
    font-size: 0.9rem;
    color: var(--text-secondary);
    line-height: 1.55;
    margin: 0 0 20px 0;
}
.duo-input-card {
    margin-bottom: 22px;
}
.duo-input-label {
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--text-tertiary);
    margin-bottom: 7px;
    letter-spacing: 0.5px;
}
.duo-text-input {
    width: 100%;
    padding: 12px 16px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: var(--text-primary);
    font-size: 0.96rem;
    outline: none;
    transition: all 0.2s ease;
}
.duo-text-input:focus {
    border-color: #5856D6;
    box-shadow: 0 0 0 3px rgba(88, 86, 214, 0.25);
}
.duo-actions-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.duo-action-box {
    padding: 20px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.duo-action-box:hover {
    transform: translateY(-2px);
    border-color: rgba(88, 86, 214, 0.38);
    background: rgba(255, 255, 255, 0.06);
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.22);
}
body.card-theme-vibrant .duo-action-box:hover {
    box-shadow: 0 10px 28px rgba(88, 86, 214, 0.2);
}
.duo-box-icon {
    font-size: 2rem;
    margin-bottom: 8px;
}
.duo-action-box h4 {
    margin: 0 0 6px 0;
    font-size: 1.02rem;
    font-weight: 800;
    color: var(--text-primary);
}
.duo-action-box p {
    font-size: 0.78rem;
    color: var(--text-secondary);
    line-height: 1.45;
    margin: 0 0 16px 0;
    flex-grow: 1;
}
.duo-primary-btn, .duo-secondary-btn {
    width: 100%;
    padding: 11px 16px;
    border-radius: 11px;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    border: none;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.duo-primary-btn {
    background: linear-gradient(135deg, #5856D6 0%, #4338CA 100%);
    color: #FFFFFF;
    box-shadow: 0 4px 14px rgba(88, 86, 214, 0.35);
}
.duo-primary-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(88, 86, 214, 0.5);
    opacity: 0.95;
}
.duo-primary-btn:active {
    transform: scale(0.98);
}
.duo-secondary-btn {
    background: rgba(88, 86, 214, 0.14);
    color: #7B79FF;
    border: 1px solid rgba(88, 86, 214, 0.35);
}
.duo-secondary-btn:hover {
    background: rgba(88, 86, 214, 0.22);
    transform: translateY(-1px);
    border-color: rgba(88, 86, 214, 0.5);
}
.duo-secondary-btn:active {
    transform: scale(0.98);
}
.duo-code-input {
    width: 100%;
    padding: 11px 14px;
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: var(--text-primary);
    font-size: 1.05rem;
    font-weight: 800;
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
    letter-spacing: 2px;
    text-align: center;
    margin-bottom: 12px;
    outline: none;
    transition: all 0.2s ease;
}
.duo-code-input:focus {
    border-color: #5856D6;
    box-shadow: 0 0 0 3px rgba(88, 86, 214, 0.25);
}
.duo-code-display {
    margin-top: 12px;
    padding: 10px 14px;
    border-radius: 12px;
    background: rgba(88, 86, 214, 0.16);
    border: 1px dashed rgba(88, 86, 214, 0.5);
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.duo-code-text {
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #A4A2FF;
}
.duo-copy-btn {
    background: #5856D6;
    color: #FFFFFF;
    border: none;
    padding: 5px 10px;
    border-radius: 8px;
    font-size: 0.78rem;
    cursor: pointer;
    font-weight: 700;
    transition: all 0.18s ease;
}
.duo-copy-btn:hover {
    background: #4338CA;
    transform: scale(1.05);
}

/* Durum Kartı (Zaten Bağlıysa) */
.duo-status-card {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px 22px;
    border-radius: 16px;
    background: rgba(88, 86, 214, 0.12);
    border: 1px solid rgba(88, 86, 214, 0.3);
    margin-bottom: 22px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}
body.card-theme-vibrant .duo-status-card {
    background: linear-gradient(135deg, rgba(88, 86, 214, 0.18) 0%, rgba(94, 92, 230, 0.08) 100%);
    border-color: rgba(94, 92, 230, 0.38);
    box-shadow: 0 8px 26px rgba(88, 86, 214, 0.15);
}
.duo-status-icon {
    font-size: 2.4rem;
}
.duo-status-info {
    flex-grow: 1;
}
.duo-status-partner-name {
    font-size: 1.2rem;
    font-weight: 900;
    letter-spacing: -0.3px;
    color: var(--text-primary);
}
.duo-status-room {
    font-size: 0.84rem;
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
    color: #A4A2FF;
    margin: 3px 0;
    font-weight: 700;
}
.duo-status-time {
    font-size: 0.76rem;
    color: var(--text-tertiary);
}
.duo-online-pill {
    padding: 4px 12px;
    border-radius: 20px;
    background: rgba(48, 209, 88, 0.15);
    color: #30d158;
    font-size: 0.76rem;
    font-weight: 800;
    border: 1px solid rgba(48, 209, 88, 0.35);
    box-shadow: 0 0 10px rgba(48, 209, 88, 0.2);
}
.duo-paired-actions {
    display: flex;
    gap: 12px;
}
.duo-sync-btn, .duo-disconnect-btn {
    padding: 12px 18px;
    border-radius: 12px;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    transition: all 0.2s ease;
}
.duo-sync-btn {
    background: linear-gradient(135deg, #5856D6 0%, #4338CA 100%);
    color: #FFFFFF;
    border: none;
    flex-grow: 1;
    box-shadow: 0 4px 14px rgba(88, 86, 214, 0.35);
}
.duo-sync-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(88, 86, 214, 0.5);
}
.duo-disconnect-btn {
    background: rgba(255, 69, 58, 0.12);
    color: #ff453a;
    border: 1px solid rgba(255, 69, 58, 0.3);
}
.duo-disconnect-btn:hover {
    background: rgba(255, 69, 58, 0.2);
    transform: translateY(-1px);
}

/* Boş Durum Kartı (Eşleşilmediğinde Sayfalarda Görünecek) */
.duo-empty-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 440px;
    text-align: center;
    padding: 40px 20px;
    width: 100%;
}
.duo-empty-card {
    max-width: 500px;
    width: 100%;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 24px;
    padding: 44px 34px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(28px);
    -webkit-backdrop-filter: blur(28px);
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    overflow: hidden;
}
body.card-theme-vibrant .duo-empty-card {
    background: radial-gradient(120% 90% at 50% 0%, rgba(88, 86, 214, 0.18) 0%, transparent 65%), rgba(28, 28, 30, 0.65);
    border-color: rgba(94, 92, 230, 0.32);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 35px rgba(88, 86, 214, 0.2);
}
.duo-empty-icon {
    font-size: 3.2rem;
    margin-bottom: 14px;
}
.duo-empty-card h2 {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--text-primary);
    margin: 0 0 10px 0;
    letter-spacing: -0.3px;
}
.duo-empty-card p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    line-height: 1.55;
    margin: 0 0 24px 0;
}

/* Strive Duo Salt Okunur Kart Satırları ve Deste Kartları */
.duo-readonly-item {
    transition: background 0.18s ease, border-color 0.18s ease;
}
.duo-readonly-item:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
}
.history-deck-card {
    position: relative;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}
.history-deck-card:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.14);
    transform: translateX(3px);
}
.history-deck-card.active-drawn-card {
    background: rgba(88, 86, 214, 0.18) !important;
    border-color: rgba(88, 86, 214, 0.45) !important;
    box-shadow: inset 3px 0 0 #5856D6, 0 8px 24px rgba(88, 86, 214, 0.15);
    transform: translateX(4px);
}
body.card-theme-vibrant .history-deck-card.active-drawn-card {
    background: linear-gradient(135deg, rgba(88, 86, 214, 0.25) 0%, rgba(94, 92, 230, 0.12) 100%) !important;
    border-color: rgba(94, 92, 230, 0.5) !important;
    box-shadow: inset 3px 0 0 #7B79FF, 0 8px 24px rgba(88, 86, 214, 0.25);
}

/* ==================== YAŞAM & BİYOMETRİ KARTLARI ==================== */
/* Üst Tarih Gezgini */
.bio-top-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
}
.bio-date-navigator {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 3px 6px;
    gap: 8px;
}
.bio-nav-arrow {
    background: none;
    border: none;
    color: var(--text-secondary);
    padding: 6px 8px;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.18s ease, color 0.18s ease;
}
.bio-nav-arrow:hover {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary);
}
.bio-date-label {
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--text-primary);
    min-width: 140px;
    text-align: center;
}

/* Kartlar Izgarası */
.bio-cards-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    padding: 10px 4px 50px 4px;
}
.bio-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 18px;
}

/* Sidebar ve Ayarlar Yaşam & Biyometri İkonu */
.sb-teal,
.settings-row-icon.sb-teal,
.sb-icon-box.sb-teal {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
}
.sb-teal svg,
.settings-row-icon.sb-teal svg,
.sb-icon-box.sb-teal svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

/* STRIVE İMZA TASARIMI: YAŞAM & BİYOMETRİ DAY-CARD */
.bio-day-card {
    min-height: 235px;
    height: auto;
    border-radius: 24px;
    display: flex;
    flex-direction: column;
    position: relative;
    cursor: default;
}
.bio-day-card .card-front {
    position: relative !important;
    top: auto !important; left: auto !important; right: auto !important; bottom: auto !important;
    width: 100%;
    height: 100%;
    min-height: 235px;
    padding: 22px 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
    z-index: 2;
}
.bio-day-card.bio-card-full-width {
    grid-column: 1 / -1;
    min-height: 195px;
}
.bio-day-card.bio-card-full-width .card-front {
    min-height: 195px;
}

/* Kart Başlık Alanı */
.bio-day-card .day-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--card-border);
}
.bio-day-card .header-left {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 0;
}
.bio-day-card .day-title {
    font-size: 1.22em;
    font-weight: 800;
    letter-spacing: -0.4px;
    margin: 0;
    color: var(--text-main);
    display: flex;
    align-items: center;
    gap: 8px;
}
.bio-day-card .workout-subtitle.workout-type-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 9px;
    border-radius: 8px;
    font-size: 0.74rem;
    font-weight: 700;
    background: rgba(var(--theme-rgb), 0.14);
    color: var(--theme-accent);
    border: 1px solid rgba(var(--theme-rgb), 0.28);
    width: fit-content;
    margin-top: 3px;
}
.bio-day-card .workout-subtitle.workout-type-pill svg {
    width: 13px;
    height: 13px;
    stroke-width: 2.3;
}
.bio-status-badge {
    font-size: 0.68rem;
    font-weight: 800;
    padding: 3px 8px;
    border-radius: 8px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    background: rgba(var(--theme-rgb), 0.12);
    color: var(--theme-accent);
    border: 1px solid rgba(var(--theme-rgb), 0.22);
}

/* Gövde ve İnteraktif Stepper Öğeleri */
.bio-card-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    margin: 6px 0;
}
.bio-stepper-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 4px 0;
}
.bio-stepper-btn {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    border: 1px solid rgba(var(--theme-rgb), 0.35);
    background: rgba(var(--theme-rgb), 0.10);
    color: var(--text-main);
    font-size: 1.25rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s var(--ios-spring);
    user-select: none;
    flex-shrink: 0;
}
.bio-stepper-btn:hover {
    background: rgba(var(--theme-rgb), 0.24);
    transform: scale(1.06);
    border-color: var(--theme-accent);
}
.bio-stepper-btn:active {
    transform: scale(0.92);
}
.bio-num-input-wrap {
    display: flex;
    align-items: baseline;
    gap: 8px;
}
.bio-val-input {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(var(--theme-rgb), 0.25);
    border-radius: 14px;
    color: var(--text-main);
    font-size: 1.75rem;
    font-weight: 900;
    letter-spacing: -0.5px;
    padding: 6px 12px;
    width: 110px;
    text-align: center;
    outline: none;
    transition: all 0.2s ease;
}
.bio-val-input:focus {
    border-color: var(--theme-accent);
    background: rgba(var(--theme-rgb), 0.12);
    box-shadow: 0 0 16px rgba(var(--theme-rgb), 0.25);
}
.bio-unit-label {
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--text-secondary);
}

/* Çift Girişli Kartlar (Uyku, Beslenme) */
.bio-dual-stepper-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 4px 0;
}
.bio-input-cardlet {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(var(--theme-rgb), 0.20);
    border-radius: 14px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.bio-input-cardlet-lbl {
    font-size: 0.70rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--text-secondary);
}
.bio-input-cardlet-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}
.bio-cardlet-input {
    background: transparent;
    border: none;
    outline: none;
    color: var(--text-main);
    font-size: 1.25rem;
    font-weight: 900;
    width: 100%;
}
.bio-mini-step-btn {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    border: 1px solid rgba(var(--theme-rgb), 0.3);
    background: rgba(var(--theme-rgb), 0.1);
    color: var(--text-main);
    font-size: 0.95rem;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s ease;
    flex-shrink: 0;
}
.bio-mini-step-btn:hover {
    background: rgba(var(--theme-rgb), 0.22);
    transform: scale(1.08);
}
.bio-mini-step-btn:active {
    transform: scale(0.9);
}

/* Takviye Tamamlama Butonu */
.bio-supp-action-btn {
    width: 100%;
    padding: 14px 18px;
    border-radius: 16px;
    font-size: 0.96rem;
    font-weight: 800;
    cursor: pointer;
    border: 1.5px solid rgba(48, 209, 88, 0.35);
    background: rgba(48, 209, 88, 0.08);
    color: var(--text-main);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.25s var(--ios-spring);
    margin: 6px 0;
}
.bio-supp-action-btn.active {
    background: linear-gradient(135deg, rgba(48, 209, 88, 0.28) 0%, rgba(0, 199, 190, 0.22) 100%);
    border-color: #30D158;
    color: #30D158;
    box-shadow: 0 0 24px rgba(48, 209, 88, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.2);
}
.bio-supp-action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(48, 209, 88, 0.2);
}
.bio-supp-action-btn:active {
    transform: scale(0.97);
}

/* İdman Kutusu (Strive Otomatik) */
.bio-workout-info-box {
    padding: 12px 16px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(var(--theme-rgb), 0.22);
    margin: 4px 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.bio-workout-info-title {
    font-size: 1rem;
    font-weight: 900;
    color: var(--text-main);
    display: flex;
    align-items: center;
    gap: 8px;
}
.bio-workout-info-meta {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
}

/* Gün Stres Puanı Şeridi */
.bio-stress-strip-container {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 4px 0;
}
.bio-stress-strip-row {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    gap: 8px;
}
.bio-stress-pill-btn {
    padding: 12px 0;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-main);
    font-size: 1.05rem;
    font-weight: 900;
    cursor: pointer;
    text-align: center;
    transition: all 0.2s var(--ios-spring);
    user-select: none;
}
.bio-stress-pill-btn:hover {
    transform: translateY(-3px) scale(1.05);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
}
.bio-stress-pill-btn:active {
    transform: scale(0.92);
}
.bio-stress-pill-btn.active.lvl-calm {
    background: linear-gradient(135deg, #30D158 0%, #28CD41 100%);
    border-color: #30D158;
    color: #FFFFFF;
    box-shadow: 0 4px 18px rgba(48, 209, 88, 0.45);
    transform: scale(1.08);
}
.bio-stress-pill-btn.active.lvl-mid {
    background: linear-gradient(135deg, #FF9F0A 0%, #FF8C00 100%);
    border-color: #FF9F0A;
    color: #FFFFFF;
    box-shadow: 0 4px 18px rgba(255, 159, 10, 0.45);
    transform: scale(1.08);
}
.bio-stress-pill-btn.active.lvl-high {
    background: linear-gradient(135deg, #FF453A 0%, #FF3B30 100%);
    border-color: #FF453A;
    color: #FFFFFF;
    box-shadow: 0 4px 18px rgba(255, 69, 58, 0.45);
    transform: scale(1.08);
}

/* İlerleme Çubuğu */
.bio-progress-bar {
    width: 100%;
    height: 7px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.08);
    overflow: hidden;
    margin-top: 8px;
}
.bio-progress-fill {
    height: 100%;
    background: var(--theme-accent, #FF9F0A);
    border-radius: 4px;
    transition: width 0.35s ease;
}

/* Kart Alt Bilgi (Footer Trend) */
.bio-card-footer-sub {
    font-size: 0.78rem;
    color: var(--text-secondary);
    font-weight: 600;
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid var(--card-border);
}

/* Arkadaş Paylaşımı Kapatmışsa Kart */
.bio-partner-disabled-card {
    grid-column: 1 / -1;
    text-align: center;
    padding: 60px 24px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px dashed rgba(255, 255, 255, 0.15);
    border-radius: 24px;
    max-width: 540px;
    margin: 40px auto;
}
.bio-disabled-icon {
    font-size: 3rem;
    margin-bottom: 12px;
}
.bio-partner-disabled-card h3 {
    margin: 0 0 8px 0;
    font-size: 1.25rem;
    color: var(--text-main);
}
.bio-partner-disabled-card p {
    font-size: 0.88rem;
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0;
}


/* ==================== IOS TARZI GRUPLANMIŞ ANA AYARLAR (MASTER-DETAIL) ==================== */
.ios-settings-master-container {
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
    will-change: transform, opacity;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
.ios-settings-master-container.is-hidden {
    display: none !important;
}

.ios-settings-category-card {
    background: var(--bg-surface, rgba(28, 28, 30, 0.8));
    border: 1px solid var(--card-border, rgba(255, 255, 255, 0.08));
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}
.ios-inline-profile-input {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 8px;
    color: var(--text-primary);
    font-size: 0.92rem;
    font-weight: 600;
    padding: 6px 12px;
    text-align: right;
    width: 140px;
    box-sizing: border-box;
    transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}
.ios-inline-profile-input:focus {
    outline: none;
    background: rgba(255, 255, 255, 0.12);
    border-color: var(--accent-blue);
    box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.25);
}
.ios-settings-cancel-pill {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: var(--text-secondary);
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
}
.ios-settings-cancel-pill:hover {
    background: rgba(255, 255, 255, 0.15);
    color: var(--text-primary);
}
.ios-settings-save-pill {
    background: var(--accent-blue);
    border: none;
    color: #fff;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(10, 132, 255, 0.35);
    transition: transform 0.15s ease, filter 0.15s ease;
}
.ios-settings-save-pill:hover {
    filter: brightness(1.1);
    transform: translateY(-1px);
}
body.card-theme-vibrant .ios-settings-category-card {
    background: radial-gradient(120% 90% at 96% 4%, rgba(88, 86, 214, 0.12) 0%, transparent 65%), rgba(28, 28, 30, 0.75);
    border-color: rgba(94, 92, 230, 0.22);
}

.ios-settings-cat-row {
    display: flex;
    align-items: center;
    padding: 14px 18px;
    gap: 14px;
    cursor: pointer;
    user-select: none;
    border-bottom: 0.5px solid var(--separator, rgba(255, 255, 255, 0.08));
    transition: background 0.18s ease, transform 0.18s ease;
}
.ios-settings-cat-row:last-child {
    border-bottom: none;
}
.ios-settings-cat-row:hover {
    background: rgba(255, 255, 255, 0.06);
}
.ios-settings-cat-row:active {
    background: rgba(255, 255, 255, 0.1);
    transform: scale(0.99);
}

.ios-settings-cat-icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #FFFFFF;
    box-shadow: 0 4px 10px rgba(0,0,0,0.22);
}
.ios-settings-cat-info {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ios-settings-cat-title {
    font-size: 0.96rem;
    font-weight: 700;
    color: var(--text-primary);
}
.ios-settings-cat-sub {
    font-size: 0.76rem;
    color: var(--text-secondary);
    line-height: 1.35;
}
.ios-settings-cat-chevron {
    color: var(--text-tertiary);
    display: flex;
    align-items: center;
    transition: transform 0.2s ease, color 0.2s ease;
}
.ios-settings-cat-row:hover .ios-settings-cat-chevron {
    color: var(--text-primary);
    transform: translateX(2px);
}

/* Detay Sayfası Konteyneri */
.ios-settings-detail-container {
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
    will-change: transform, opacity;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}
.ios-settings-detail-container.is-hidden {
    display: none !important;
}

@keyframes iosSettingsSlideIn {
    from {
        opacity: 0;
        transform: translateX(24px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.ios-settings-top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 4px 10px 4px;
    border-bottom: 1px solid var(--card-border, rgba(255, 255, 255, 0.08));
    margin-bottom: 12px;
}
.ios-settings-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(88, 86, 214, 0.12);
    color: #7B79FF;
    border: 1px solid rgba(88, 86, 214, 0.3);
    border-radius: 12px;
    padding: 7px 14px;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.ios-settings-back-btn:hover {
    background: rgba(88, 86, 214, 0.22);
    transform: translateX(-2px);
    border-color: rgba(88, 86, 214, 0.5);
}
.ios-settings-detail-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--text-primary);
}


/* ==================== BİYOMETRİ SEGMENTLİ SEKMELER & EXCEL İŞLEMLERİ ==================== */
.bio-view-segmented-tabs {
    display: inline-flex;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    padding: 3px;
    gap: 4px;
}
.bio-tab-btn {
    background: transparent;
    border: none;
    color: var(--text-secondary);
    font-size: 0.84rem;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 11px;
    cursor: pointer;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.5, 1);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.bio-tab-btn:hover {
    color: var(--text-primary);
}
.bio-tab-btn.active {
    background: #5856D6;
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(88, 86, 214, 0.4);
}

.bio-excel-action-group {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.bio-excel-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 11px;
    font-size: 0.8rem;
    font-weight: 700;
    background: rgba(48, 209, 88, 0.14);
    color: #30D158;
    border: 1px solid rgba(48, 209, 88, 0.32);
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.5, 1);
}
.bio-excel-btn:hover {
    background: rgba(48, 209, 88, 0.25);
    transform: translateY(-1px);
    border-color: rgba(48, 209, 88, 0.5);
}
.bio-excel-btn.btn-secondary {
    background: rgba(88, 86, 214, 0.14);
    color: #7B79FF;
    border-color: rgba(88, 86, 214, 0.32);
}
.bio-excel-btn.btn-secondary:hover {
    background: rgba(88, 86, 214, 0.25);
    border-color: rgba(88, 86, 214, 0.5);
}


/* ==================== BİYOMETRİ ÖZEL VERİ MERKEZİ (ANALYTICS) ==================== */
.bio-analytics-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 10px 4px 60px 4px;
    animation: bioFadeIn 0.3s ease;
}
.bio-analytics-container.is-hidden {
    display: none !important;
}
@keyframes bioFadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.bio-kpi-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 14px;
}
.bio-kpi-cardlet {
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 4px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}
body.card-theme-vibrant .bio-kpi-cardlet {
    background: radial-gradient(120% 90% at 96% 4%, rgba(88, 86, 214, 0.16) 0%, transparent 65%), rgba(28, 28, 30, 0.65);
    border-color: rgba(94, 92, 230, 0.28);
}
.bio-kpi-lbl {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--text-tertiary);
    letter-spacing: 0.4px;
}
.bio-kpi-val {
    font-size: 1.5rem;
    font-weight: 900;
    color: var(--text-primary);
    letter-spacing: -0.5px;
    margin: 2px 0;
}
.bio-kpi-sub {
    font-size: 0.76rem;
    color: var(--text-secondary);
}

.bio-analytics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(460px, 1fr));
    gap: 18px;
}
.bio-chart-card {
    min-height: 320px;
    border-radius: 24px;
    padding: 22px 24px;
    display: flex;
    flex-direction: column;
    background: var(--bg-surface, rgba(28, 28, 30, 0.8));
    border: 1px solid var(--card-border, rgba(255, 255, 255, 0.08));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}
body.card-theme-vibrant .bio-chart-card {
    background: radial-gradient(120% 90% at 96% 4%, rgba(88, 86, 214, 0.18) 0%, transparent 65%), rgba(28, 28, 30, 0.8);
    border-color: rgba(94, 92, 230, 0.28);
}
.bio-chart-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 14px;
}
.bio-chart-title {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--text-primary);
}
.bio-chart-sub {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 2px;
}
.bio-chart-svg-box {
    flex-grow: 1;
    width: 100%;
    min-height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
}



/* ==========================================================================
   STRIVE v1.2.4: SETTINGS GROUP ISOLATION, SIDEBAR GLOW, BIO SLIDE & DATA CENTER
   ========================================================================== */

/* 1. Ayarlar Kategori İzolasyonu & Genel Gizleme */
.is-hidden,
.settings-cat-group.is-hidden,
.ios-settings-detail-container.is-hidden,
.ios-settings-master-container.is-hidden {
    display: none !important;
}

/* 2. Sol Menü Tüm Satırları İçin Premium Parlama Efekti */
.sidebar .sidebar-menu li.active-nav,
.sb-submenu li.active-nav {
    background: rgba(0, 122, 255, 0.16) !important;
    border-color: rgba(0, 122, 255, 0.38) !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
    box-shadow: inset 0 0 0 1px rgba(0, 122, 255, 0.38), 0 4px 18px rgba(0, 122, 255, 0.24) !important;
}

[data-theme="dark"] .sidebar .sidebar-menu li.active-nav,
[data-theme="dark"] .sb-submenu li.active-nav {
    background: rgba(10, 132, 255, 0.20) !important;
    border-color: rgba(10, 132, 255, 0.45) !important;
    color: #FFFFFF !important;
    box-shadow: inset 0 0 0 1px rgba(10, 132, 255, 0.42), 0 4px 20px rgba(10, 132, 255, 0.28) !important;
}

.sidebar .sidebar-menu li.active-nav .sb-icon-box {
    box-shadow: 0 0 14px currentColor, inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
    transform: scale(1.06);
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease;
}

/* 3. Biyometri Gün Değişim Kayma Animasyonları */
@keyframes bioSlideInLeft {
    from { opacity: 0; transform: translateX(-35px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes bioSlideInRight {
    from { opacity: 0; transform: translateX(35px); }
    to { opacity: 1; transform: translateX(0); }
}

.bio-slide-in-left {
    animation: bioSlideInLeft 0.28s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.bio-slide-in-right {
    animation: bioSlideInRight 0.28s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* 4. İdman Kartı Egzersiz Hapları (Chips) */
.bio-workout-exercises-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.bio-ex-pill {
    font-size: 0.72rem;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-primary);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

/* 5. Biyometri Veri Merkezi Excel Popover Eylem Butonu */
.bio-excel-popover-wrap {
    position: relative;
    display: inline-block;
}

.bio-excel-popover-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(16, 185, 129, 0.16);
    border: 1px solid rgba(16, 185, 129, 0.35);
    color: #10B981;
    border-radius: 9px;
    padding: 7px 14px;
    font-size: 0.82rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.bio-excel-popover-btn:hover {
    background: rgba(16, 185, 129, 0.25);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25);
}

.bio-excel-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: rgba(20, 24, 35, 0.95);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45);
    padding: 6px;
    min-width: 230px;
    z-index: 1000;
    display: none;
    flex-direction: column;
    gap: 2px;
}

.bio-excel-menu.is-open {
    display: flex;
}

.bio-excel-menu-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 8px;
    color: #FFFFFF;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    transition: background 0.15s ease;
}

.bio-excel-menu-item:hover {
    background: rgba(255, 255, 255, 0.08);
}


/* Titreşimsiz, silik başlık çubuğu sürüm etiketi */
.dtb-version-tag {
    font-size: 0.68rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.32);
    letter-spacing: -0.2px;
    padding: 2px 7px;
    margin: 0 4px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
    user-select: none;
    -webkit-user-select: none;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    pointer-events: none;
}


/* ==========================================================================
   STRIVE v1.2.5: YAŞAM & BİYOMETRİ VE BİYOMETRİ VERİ MERKEZİ DÜZENLEMELERİ
   ========================================================================== */

/* Tüm Yaşam & Biyometri günlük kartları eşit boyut ve simetrik dağılım */
.bio-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto 18px auto !important;
    justify-content: center !important;
}

.bio-day-card {
    height: 245px !important;
    min-height: 245px !important;
    max-height: 245px !important;
    grid-column: span 1 !important;
    border-radius: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    cursor: default !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.bio-day-card .card-front {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 245px !important;
    max-height: 245px !important;
    padding: 18px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    z-index: 2 !important;
}

/* En alttaki tam genişlikte yatay uzun Stres Şeridi */
.bio-stress-bottom-container {
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
}

.bio-stress-strip-card {
    height: auto !important;
    min-height: 120px !important;
    max-height: none !important;
    border-radius: 24px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.bio-stress-strip-card .card-front {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: 18px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    box-sizing: border-box !important;
}

.bio-stress-strip-card .bio-stress-strip-container {
    width: 100% !important;
    margin: 2px 0 !important;
}

.bio-stress-strip-card .bio-stress-strip-row {
    display: grid !important;
    grid-template-columns: repeat(10, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
}

.bio-stress-strip-card .bio-stress-pill-btn {
    height: 42px !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    border-radius: 12px !important;
}

.bio-stress-pill-btn {
    height: 32px !important;
    font-size: 0.88rem !important;
    border-radius: 10px !important;
}

/* Gün değiştirirken yumuşak, hissedilir ve akıcı Apple iOS yaylanma animasyonu */
.bio-slide-in-left {
    animation: bioSlideInLeft 0.44s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}

.bio-slide-in-right {
    animation: bioSlideInRight 0.44s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}

@keyframes bioSlideInLeft {
    from { opacity: 0; transform: translateX(-24px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes bioSlideInRight {
    from { opacity: 0; transform: translateX(24px); }
    to { opacity: 1; transform: translateX(0); }
}

/* Biyometri Veri Merkezi Kartları: Egzersiz Veri Merkezi ile Birebir Uyum */
.day-card.bio-data-card {
    height: 295px !important;
    min-height: 295px !important;
    max-height: 295px !important;
}

/* ============================================================================
   V1.2.6 UX & ATMOSFERİK RAFİNMAN PAKETİ
   1. BÜYÜK WIDGET KAPATMA BUTONU (.weather-expand-close-btn)
   2. BÜYÜK WİDGET AKICI İÇERİK GEÇİŞİ (SIFIR SIÇRAMA / SIFIR REFLOW)
   3. İKİNDİ (GOLDEN HOUR) DİKEY GÖKYÜZÜ GEÇİŞİ
   4. KART KATMAN STABİLİZASYONU (SAYFA GEÇİŞİNDE SIFIR GLITCH)
============================================================================ */

/* 1. Büyük Widget Kapatma Butonu (VisionOS Buzlu Cam Çemberi) */
.weather-expand-close-btn {
    display: none !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.16) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    color: #FFFFFF !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.18s ease, transform 0.18s var(--ios-spring) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18) !important;
    z-index: 100 !important;
}

.weather-expand-close-btn:hover {
    background: rgba(255, 255, 255, 0.28) !important;
    transform: scale(1.06) !important;
}

.weather-expand-close-btn:active {
    transform: scale(0.94) !important;
}

/* Küçük modda kesinlikle gizli; sadece büyük modda görünür */
.top-widget:not(.expanded-active) .weather-expand-close-btn {
    display: none !important;
}

.top-widget.expanded-active .weather-expand-close-btn {
    display: flex !important;
}

/* Büyük modda fatigue (CNS flip) butonu gizlenir, yerine kapat butonu gelir */
.top-widget.expanded-active .widget-top-bar {
    position: relative !important;
}

.top-widget.expanded-active .weather-expand-close-btn {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
}

/* 2. Büyük Widget Açılırken/Kapanırken İçeriklerin Yumuşak Geçişi (Pop/Atlama Yok) */
.weather-details {
    opacity: 0;
    transition: opacity 0.26s cubic-bezier(0.16, 1, 0.3, 1), transform 0.26s cubic-bezier(0.16, 1, 0.3, 1) !important;
    transform: translateY(8px);
}

.top-widget.expanded-active:not(.is-animating) .weather-details {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

.top-widget.expanded-active.is-animating .weather-details {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

/* Sağ mini tahmin kapsülleri büyüme anında akıcı kaybolur */
.top-widget.expanded-active .widget-mini-forecast {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: scale(0.92) !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
}

/* 3. Büyük modda İkindi (Golden Hour) Dikey Gökyüzü Atmosferi:
   Üstte alacakaranlık laciverti, altta ufukta sıcak kehribar ışıltısı! */
.top-widget.expanded-active.sky-golden-hour .widget-front {
    background: linear-gradient(175deg, #0A1324 0%, #16243E 30%, #3D2232 60%, #763618 85%, #AA4E1A 100%) !important;
}

.top-widget.expanded-active.sky-golden-dawn .widget-front {
    background: linear-gradient(175deg, #10162C 0%, #2A1A32 30%, #582436 60%, #9E4534 85%, #E68846 100%) !important;
}

.top-widget.expanded-active.sky-sunset .widget-front {
    background: linear-gradient(175deg, #0F0A1E 0%, #2E122C 30%, #681B2E 60%, #B83C24 85%, #E67A2E 100%) !important;
}

/* 4. Sayfa Geçişlerinde Kartların GPU Katmanını Sabitleme (Glitch ve Titremeyi Önler) */
.day-card:not(.expanded-active):not(.is-animating),
.ex-data-card,
.home-cal-card,
.progress-card-wrapper {
    transform: translateZ(0) !important;
    backface-visibility: hidden !important;
    will-change: auto !important;
}

body.has-expanded-card #homeGrid {
    transform: none !important;
}

.day-card.expanded-active,
.day-card.is-animating {
    transform: none !important;
    z-index: 1000 !important;
}

/* ============================================================================
   STRIVE v1.2.7: KPI SIMETRISI, BIYOMETRI KAYMA SISTEMI & TIPI
   ============================================================================ */

/* Sol Menü: Biyometri Veri Merkezi Canlı Camgöbeği (Radiant Cyan) */
.sb-icon-box.sb-cyan {
    background: linear-gradient(135deg, #00E5FF, #0072FF) !important;
    box-shadow: 0 3px 14px rgba(0, 229, 255, 0.45) !important;
}

.sb-sub-icon-cyan {
    background: rgba(0, 229, 255, 0.16) !important;
    color: #00E5FF !important;
}

/* Hava Durumu: Tipi (Kar Fırtınası) Gökyüzü Atmosferi */
#skyWidget.blizzard .widget-front {
    background: linear-gradient(175deg, #0f172a 0%, #1e293b 50%, #334155 100%) !important;
}

/* Egzersiz Gelişim Kartı (#progressCard): Simetrik 3 Sütunlu Temiz KPI Barı */
.prog-clean-kpi-bar {
    display: flex;
    align-items: stretch;
    gap: 8px;
    margin: 8px 0 10px 0;
    width: 100%;
    box-sizing: border-box;
}

.pck-col {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding: 9px 12px;
    background: rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    box-sizing: border-box;
}

.pck-divider {
    display: none;
}

.pck-kicker {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
}

.pck-kicker-lbl {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    color: rgba(255, 255, 255, 0.50);
    text-transform: uppercase;
}

.pck-tag-date {
    display: inline-flex;
    align-items: center;
    background: rgba(0, 229, 255, 0.18);
    color: #00E5FF;
    padding: 1.5px 6px;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.02em;
}

.pck-delta-chip {
    display: inline-flex;
    align-items: center;
    padding: 1.5px 6px;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.02em;
}

.pck-delta-chip.is-improving {
    background: rgba(16, 185, 129, 0.22);
    color: #10B981;
}

.pck-delta-chip.is-plateau {
    background: rgba(255, 94, 58, 0.22);
    color: #FF5E3A;
}

.pck-delta-chip.is-neutral {
    background: rgba(56, 189, 248, 0.22);
    color: #38BDF8;
}

.pck-pr-badge-pill {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 214, 10, 0.20);
    color: #FFD60A;
    padding: 1.5px 6px;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 800;
}

.pck-main-val {
    font-size: 1.15rem;
    font-weight: 900;
    color: #FFFFFF;
    letter-spacing: -0.02em;
    margin: 4px 0 2px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

.pck-sub-row {
    display: flex;
    align-items: center;
    gap: 4px;
    width: 100%;
    margin-top: 2px;
}

.pck-pill-cyan {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(0, 229, 255, 0.50);
    background: rgba(0, 229, 255, 0.10);
    color: #00E5FF;
    padding: 1.5px 6px;
    border-radius: 6px;
    font-weight: 800;
    font-size: 0.66rem;
    letter-spacing: 0.03em;
}

.pck-pill-rir {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.85);
    padding: 1.5px 6px;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.66rem;
}

.pck-sub-dim {
    color: rgba(255, 255, 255, 0.55);
    font-size: 0.68rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Egzersiz Gelişim Kartı: Arka Yüz Satır Sol Işık Çubuğu */
.prog-v2-back-row {
    position: relative !important;
    padding-left: 18px !important;
}

.pvbr-left-glow-bar {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
}

.pvbr-left-glow-bar.is-improving {
    background: #00E5FF !important;
    box-shadow: 0 0 10px rgba(0, 229, 255, 0.75) !important;
}

.pvbr-left-glow-bar.is-plateau {
    background: #FF5E3A !important;
    box-shadow: 0 0 10px rgba(255, 94, 58, 0.75) !important;
}

.pvbr-left-glow-bar.is-neutral {
    background: #38BDF8 !important;
    box-shadow: 0 0 10px rgba(56, 189, 248, 0.75) !important;
}

.pvbr-new-tag {
    font-size: 0.72rem;
    font-weight: 900;
    margin-right: 6px;
    letter-spacing: 0.04em;
}

.pvbr-new-tag.is-improving { color: #00E5FF; }
.pvbr-new-tag.is-plateau { color: #FF5E3A; }
.pvbr-new-tag.is-neutral { color: #38BDF8; }

/* Biyometri Veri Merkezi: Kayma (Slide) Mimarisi (3D Flip Yok!) */
.bio-data-card {
    height: 380px !important;
    position: relative !important;
    overflow: hidden !important;
}

.bio-slide-viewport {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 24px;
}

.bio-slide-track {
    display: flex;
    width: 200%;
    height: 100%;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
}

.bio-slide-face {
    width: 50%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: 18px 20px 20px 20px;
    flex-shrink: 0;
}

.bio-slide-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    color: var(--text-main, #FFFFFF);
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.18s ease;
}

.bio-slide-btn:hover {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.30);
    transform: translateY(-1px);
}

.bio-full-chart-box {
    flex: 1 1 auto;
    min-height: 0;
    margin-top: 10px;
    background: rgba(8, 14, 24, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 16px;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bio-full-chart-box svg {
    width: 100%;
    height: 100%;
    max-height: 220px;
}

/* Biyometri Arka Yüz Bento Grid & Geçmiş */
.bio-back-bento-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.bio-bento-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 9px 12px;
    display: flex;
    flex-direction: column;
}

.bio-bento-lbl {
    font-size: 0.68rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.55);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
}

.bio-bento-val {
    font-size: 1.05rem;
    font-weight: 900;
    color: #FFFFFF;
}

.bio-recent-scroll-wrap {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-right: 4px;
}

.bio-recent-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 7px 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 10px;
    font-size: 0.78rem;
}

.bio-recent-date {
    color: rgba(255, 255, 255, 0.70);
    font-weight: 600;
}

.bio-recent-val {
    color: #00E5FF;
    font-weight: 800;
}


/* ==========================================================================
   STRIVE v1.2.8: 2K / 4K VE YÜKSEK ÇÖZÜNÜRLÜKLÜ EKRANLARDA 1080P OPTİMAL
   KART DAĞILIMI, EN-BOY ORANI VE DENGELİ KENAR BOŞLUKLARI
   ========================================================================== */

/* 1. Tüm Takvim ve Program Izgaralarında Maksimum Yükseklik Kilidi */
.calendar-grid {
    max-height: 868px !important;
}

/* 2. Ana Sayfa (Home View): 2K/4K Ekranlarda 1080p Oranlarını Koruyan Otomatik Dikey Ortalama */
#homeView .top-widget-wrapper {
    margin-top: auto !important;
    margin-bottom: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#homeView .calendar-grid,
#homeView #homeGrid {
    margin-top: 0 !important;
    margin-bottom: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-height: 868px !important;
}

/* 3. Haftalık Program & Strive Duo Haftalık Görünümlerinde Dikey Ortalama & Oran Kilidi */
#weeklyView .weekly-header-bar,
#duoWeeklyView .weekly-header-bar {
    margin-top: auto !important;
    margin-bottom: 14px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#weeklyView .calendar-grid,
#weeklyView #weeklyGrid,
#duoWeeklyView .calendar-grid,
#duoWeeklyView #duoWeeklyGrid {
    margin-top: 0 !important;
    margin-bottom: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-height: 868px !important;
}

/* ============================================================================
   STRIVE v1.3.0: SEZON BLOK DÖNGÜSÜ ÖZEL ANİMASYONLU DROPDOWN
   ============================================================================ */
select, select option {
    background-color: #1C1C1E !important;
    color: #F2F2F7 !important;
}
[data-theme="light"] select, [data-theme="light"] select option {
    background-color: #FFFFFF !important;
    color: #1C1C1E !important;
}

#seasonCard,
.profile-card#seasonCard,
#seasonCard.season-winter,
#seasonCard.season-spring,
#seasonCard.season-summer,
#seasonCard.season-autumn,
#editSeasonModal .profile-card,
#editSeasonModal .ios-alert {
    overflow: visible !important;
}

#seasonCard .ios-list-group,
#editSeasonModal .ios-list-group {
    overflow: visible !important;
}

#seasonCard .ios-list-item,
#editSeasonModal .ios-list-item {
    overflow: visible !important;
    position: relative;
}

#seasonCard .ios-list-item:has(.cycle-picker-dropdown.is-open),
#seasonCard .ios-list-item.is-picker-open,
#editSeasonModal .ios-list-item:has(.cycle-picker-dropdown.is-open),
#editSeasonModal .ios-list-item.is-picker-open {
    z-index: 100020 !important;
}

.custom-season-cycle-picker {
    position: relative;
    display: inline-block;
    z-index: 100025 !important;
}

.custom-season-cycle-picker:has(.cycle-picker-dropdown.is-open),
.custom-season-cycle-picker.is-active-open {
    z-index: 100030 !important;
}

.cycle-picker-trigger {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    padding: 7px 12px;
    color: var(--text-main);
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    outline: none;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

.cycle-picker-trigger:hover {
    background: rgba(255, 255, 255, 0.09);
    border-color: rgba(255, 255, 255, 0.22);
}

.cycle-picker-trigger.is-modal-field {
    width: 100%;
    justify-content: space-between;
    padding: 11px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.cycle-picker-chevron {
    transition: transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
    opacity: 0.7;
    flex-shrink: 0;
}

.cycle-picker-trigger.is-open .cycle-picker-chevron {
    transform: rotate(180deg);
}

.cycle-picker-dropdown {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 290px;
    background: rgba(28, 28, 30, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(28px) saturate(180%);
    -webkit-backdrop-filter: blur(28px) saturate(180%);
    border-radius: 14px;
    padding: 6px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.65), 0 0 20px rgba(0, 0, 0, 0.35);
    z-index: 10005 !important;
    opacity: 0;
    visibility: hidden;
    transform: scale(0.95) translateY(-6px);
    pointer-events: none;
    transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.2s cubic-bezier(0.16, 1, 0.3, 1),
                visibility 0.2s;
}

.cycle-picker-trigger.is-modal-field + .cycle-picker-dropdown {
    left: 0;
    right: 0;
    min-width: unset;
}

.cycle-picker-dropdown.is-open {
    opacity: 1;
    visibility: visible;
    transform: scale(1) translateY(0);
    pointer-events: auto;
}

.cycle-picker-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 0.86rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    user-select: none;
}

.cycle-picker-item:hover {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-main);
}

.cycle-picker-item.is-selected {
    background: rgba(10, 132, 255, 0.16);
    color: #0A84FF;
}

.cycle-item-check {
    opacity: 0;
    font-size: 0.9rem;
    font-weight: 800;
    color: #0A84FF;
    transition: opacity 0.15s ease;
}

.cycle-picker-item.is-selected .cycle-item-check {
    opacity: 1;
}

/* Ayarlar Kategorisinden Geriye Dönüş Akıcı Animasyonu (iosSettingsSlideOut) */
@keyframes iosSettingsSlideOut {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        transform: translate3d(24px, 0, 0);
    }
}
@keyframes iosSettingsMasterEnter {
    from {
        opacity: 0;
        transform: translate3d(-18px, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
@keyframes iosSettingsDetailEnter {
    from {
        opacity: 0;
        transform: translate3d(24px, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.settings-pages-viewport {
    position: relative !important;
    width: 100% !important;
    max-width: 680px !important;
    margin: 0 auto !important;
    overflow: hidden !important;
}
.ios-settings-detail-container:not(.is-hidden):not(.is-sliding-out) {
    position: relative !important;
    width: 100% !important;
    animation: iosSettingsDetailEnter 0.20s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.ios-settings-detail-container.is-sliding-out {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 10 !important;
    pointer-events: none !important;
    animation: iosSettingsSlideOut 0.20s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}
.ios-settings-master-container.is-sliding-in {
    position: relative !important;
    width: 100% !important;
    animation: iosSettingsMasterEnter 0.20s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

/* ==========================================================================
   STRIVE V2.1.0 HOTFIXES: B1, B2, B3, B4
   ========================================================================== */

/* B1: Strive Duo Kartları - Hover Titremesini ve Döngüsel Zıplamayı Önle */
.duo-weekly-card,
.duo-weekly-card:hover,
.duo-weekly-card:active,
.duo-data-card,
.duo-data-card:hover,
.duo-history-active-card,
.duo-history-active-card:hover {
    transform: none !important;
}
.duo-weekly-card:hover {
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.45) !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
}

/* B2: Ayarlar Geri Gitme Glitch Önleme - Kararlı Kapsayıcı */
.settings-scroll-shell {
    position: relative !important;
    min-height: 100% !important;
    overflow-x: hidden !important;
}

/* B3: Sezon Yönetimi - Blok Döngüsü Açılan Listesi Daima En Üstte */
#seasonCard {
    position: relative !important;
    z-index: 100 !important;
}
#seasonCard:has(.cycle-picker-dropdown.is-open),
#seasonCard:has(.is-active-open),
#seasonCard.is-cycle-dropdown-open {
    z-index: 5000 !important;
}
.custom-season-cycle-picker {
    position: relative;
    z-index: 5010 !important;
}
.cycle-picker-dropdown {
    z-index: 5020 !important;
}
#seasonView .profile-card:not(#seasonCard),
#seasonListContainer,
.season-item-card {
    position: relative;
    z-index: 10 !important;
}

/* B4: Yaşam ve Biyometri - Buton/Veri Girişinde Kart Zıplamasını Önle */
.bio-day-card,
.bio-day-card:hover,
.bio-day-card:focus-within,
.bio-day-card:active {
    transform: none !important;
}
.bio-day-card:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
}


/* ==========================================================================
   STRIVE V2.1.0 ENHANCEMENTS: DUO WEEKLY GRID & TITLEBAR MOBIL PILL
   ========================================================================== */

/* B1/Prompt 4-7: Duo Haftalık Program Izgara ve Kart Oranları */
#duoWeeklyView .calendar-grid,
#duoWeeklyView #duoWeeklyGrid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-template-rows: repeat(2, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    flex-grow: 1 !important;
    min-height: 0 !important;
    max-height: 868px !important;
}

.duo-weekly-card {
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    transform: none !important;
}

.duo-weekly-card:hover,
.duo-weekly-card:active {
    transform: none !important;
}

.duo-weekly-card .card-front {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 20px !important;
    width: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
}

.duo-weekly-card .exercise-list-lock-shell {
    flex: 1 1 0% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* Sol En Üstteki Mobil Butonu Tıklanabilirliği */
.dtb-sync-pill,
#dtbMobileSyncPill {
    -webkit-app-region: no-drag !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 99999 !important;
    cursor: pointer !important;
}

/* Sezon Kartı Blok Döngüsü Açılan Menüsü - En Üst Z-Index */
#seasonCard {
    position: relative !important;
    z-index: 100 !important;
    overflow: visible !important;
}
#seasonCard:has(.cycle-picker-dropdown.is-open),
#seasonCard.is-cycle-dropdown-open {
    position: relative !important;
    z-index: 99999 !important;
}
#seasonCard .ios-list-group,
#seasonCard .ios-list-item {
    overflow: visible !important;
}
.custom-season-cycle-picker {
    position: relative !important;
    z-index: 100025 !important;
}
.cycle-picker-dropdown {
    position: absolute !important;
    z-index: 100050 !important;
}
#seasonsListContainer,
#seasonView #seasonsListContainer,
#seasonView .season-strip-card,
.season-strip-card {
    position: relative !important;
    z-index: 1 !important;
}


/* ==========================================================================
   STRIVE: ÇİZGİ SEZON BELİRTECİ & SEZON HAPLARI MİMARİSİ (YENİ TASARIM)
   ========================================================================== */

/* 1. Aylık Takvim Sezon Bilgi Hapları Şeridi */
.calendar-season-pills-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 6px 0 14px 0;
    padding: 0 4px;
}

.season-legend-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 4.5px 12px;
    border-radius: 999px;
    background: var(--pill-bg, rgba(10, 132, 255, 0.14));
    border: 1px solid var(--pill-border, rgba(10, 132, 255, 0.35));
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.1px;
    color: var(--text-primary);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.season-legend-pill:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.season-legend-pill .slp-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--pill-color, #0A84FF);
    box-shadow: 0 0 8px var(--pill-color, #0A84FF);
    flex-shrink: 0;
}

.season-legend-pill .slp-name {
    color: var(--text-primary);
    font-weight: 800;
}

.season-legend-pill .slp-status {
    color: var(--text-secondary);
    font-weight: 600;
}

/* 2. Ana Sayfa Mini Takvim Sezon Şeridi */
.mini-calendar-season-strip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    padding: 2px 4px;
    font-size: 0.74rem;
    font-weight: 700;
    color: var(--text-primary);
}

.mini-calendar-season-strip .mini-slp-dot {
    width: 6.5px;
    height: 6.5px;
    border-radius: 50%;
    flex-shrink: 0;
    box-shadow: 0 0 6px currentColor;
}

.mini-calendar-season-strip .mini-slp-title {
    font-weight: 800;
    color: var(--text-primary);
}

.mini-calendar-season-strip .mini-slp-sub {
    color: var(--text-secondary);
    font-weight: 600;
}

/* 3. Gün Hücreleri ve Tamamlanma Noktası */
.ios-day {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
}

.ios-day.today .ios-day-number {
    color: #FF453A !important;
    font-weight: 900 !important;
}

.day-completed-dot {
    width: 4.5px;
    height: 4.5px;
    border-radius: 50%;
    background: #30D158;
    box-shadow: 0 0 6px rgba(48, 209, 88, 0.85);
    margin-top: 2px;
    margin-bottom: 2px;
    flex-shrink: 0;
}

.home-cal-card .day-completed-dot {
    width: 3.5px;
    height: 3.5px;
    margin-top: 1px;
}

/* 4. Çizgi Sezon Belirteci (Segmentler) */
.season-line-segment {
    position: absolute;
    bottom: 3px;
    height: 3.5px;
    background: var(--season-line-color, #0A84FF);
    box-shadow: 0 0 8px var(--season-line-color, rgba(10, 132, 255, 0.45));
    pointer-events: none;
    z-index: 3;
}

/* Tek günlük sezon segmenti */
.season-line-segment.line-solo {
    left: 4px;
    right: 4px;
    border-radius: 3px;
}

/* Başlangıç segmenti (Sol oval, sağ kesintisiz uzar) */
.season-line-segment.line-start {
    left: 4px;
    right: -1px;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

/* Orta segment (İki yana kesintisiz bağlanır) */
.season-line-segment.line-middle {
    left: -1px;
    right: -1px;
    border-radius: 0;
}

/* Bitiş segmenti (Sol kesintisiz, sağ oval kapanır) */
.season-line-segment.line-end {
    left: -1px;
    right: 4px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

/* Mini Takvim için oranlar */
.home-cal-card .season-line-segment {
    bottom: 2px;
    height: 2.5px;
}
.home-cal-card .season-line-segment.line-solo {
    left: 3px;
    right: 3px;
    border-radius: 2px;
}
.home-cal-card .season-line-segment.line-start {
    left: 3px;
    right: -1px;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}
.home-cal-card .season-line-segment.line-middle {
    left: -1px;
    right: -1px;
}
.home-cal-card .season-line-segment.line-end {
    left: -1px;
    right: 3px;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

/* Eski SVG blob ve içbükey köşe stillerini devre dışı bırak */
.blob-concave-fillet,
.has-concave-fillet svg {
    display: none !important;
}
.ios-day.in-season {
    background: transparent !important;
    border: none !important;
    border-radius: 8px !important;
}
