/* ================================================================
   PLANSAL — DENEMEANALIZ SAYFASI STİLLERİ
   (denemeanaliz.html içindeki <style> blokları birleştirildi)
   ================================================================ */

/* ===== Orijinal satır 11-183 ===== */
        :root{--color-primary:#4f46e5;--color-primary-hover:#4338ca;--color-primary-light:#e0e7ff;--color-primary-lighter:#eef2ff;--color-primary-border:#c7d2fe;--color-primary-shadow:rgba(79,70,229,0.2);--color-primary-shadow-md:rgba(79,70,229,0.3);--color-success:#28a745;--color-success-hover:#218838;--color-success-light:#d4edda;--color-success-border:#c3e6cb;--color-danger:#d9534f;--color-danger-hover:#c9302c;--color-danger-light:#ffeaea;--color-danger-border:#ffc2c2;--color-warning:#ffc107;--color-bg-page:#f3f4f6;--color-bg-card:#ffffff;--color-bg-input:#f8f9fa;--color-bg-hover:#e0e7ff;--color-text-main:#1f2937;--color-text-secondary:#374151;--color-text-muted:#6b7280;--color-text-light:#9ca3af;--color-text-placeholder:#9ca3af;--color-border:#e5e7eb;--color-border-medium:#d1d5db;--color-border-strong:#9ca3af;--shadow-xs:0 2px 4px rgba(0,0,0,0.04);--shadow-sm:0 2px 4px rgba(0,0,0,0.1);--shadow-md:0 4px 10px rgba(0,0,0,0.1);--shadow-card:0 8px 20px rgba(0,0,0,0.06);--shadow-modal:0 10px 30px rgba(0,0,0,0.2);--shadow-primary:0 4px 10px var(--color-primary-shadow);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:20px;--radius-full:50%;--transition-fast:all 0.2s ease;--transition-base:all 0.3s ease;}
        *{box-sizing:border-box;margin:0;padding:0;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;}
        body{background:radial-gradient(ellipse at top right, #e0e7ff, #f3f4f6 50%, #ede9fe 100%);color:var(--color-text-main);height:100vh;display:flex;flex-direction:column;overflow:hidden;}

        /* HEADER - Glassmorphism */
        .header{display:flex;justify-content:space-between;align-items:center;background-color:rgba(255,255,255,0.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:14px 25px;box-shadow:0 10px 30px rgba(0,0,0,0.10), 0 4px 10px rgba(0,0,0,0.05);margin:20px auto 15px auto;width:calc(100% - 40px);max-width:1400px;border-radius:var(--radius-lg);position:sticky;top:20px;z-index:100;flex-shrink:0;}

        /* ANA İÇERİK - Glassmorphism */
        .template-content{width:calc(100% - 40px);max-width:1400px;margin:10px auto 20px auto;flex:1;min-height:0;background-color:rgba(255,255,255,0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-xl);box-shadow:0 15px 40px rgba(0,0,0,0.12), 0 5px 15px rgba(0,0,0,0.06);border:1px solid rgba(255,255,255,0.6);display:flex;flex-direction:column;overflow:hidden;}
        .logo-container{display:flex;align-items:center;gap:10px;cursor:pointer;transition:transform 0.2s;}
        .logo-container:hover{transform:scale(1.02);}
        .logo-icon{width:28px;height:28px;background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);color:white;border-radius:var(--radius-full);display:flex;justify-content:center;align-items:center;font-size:13px;box-shadow:0 4px 10px rgba(79,70,229,0.3);}
        .logo-text{font-size:16px;font-weight:700;color:var(--color-text-main);letter-spacing:0.5px;}
        .header-center-title{position:absolute;left:50%;transform:translateX(-50%);font-size:22px;font-weight:900;color:var(--color-text-main);display:flex;align-items:center;gap:8px;}
        .btn-outline{background-color:rgba(255,255,255,0.6);color:var(--color-primary);border:2px solid var(--color-primary);padding:8px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:700;cursor:pointer;transition:var(--transition-base);backdrop-filter:blur(4px);}
        .btn-outline:hover{background-color:var(--color-primary);color:#fff;box-shadow:0 4px 15px rgba(79,70,229,0.3);transform:translateY(-2px);}
        .btn-primary{background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);color:#fff;border:none;padding:8px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:700;cursor:pointer;transition:var(--transition-base);box-shadow:0 4px 15px rgba(79,70,229,0.3);}
        .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(79,70,229,0.4);}
        .menu-btn{display:flex;align-items:center;gap:10px;font-size:24px;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;transition:color 0.2s,transform 0.2s;padding:5px 10px;}
        .menu-text{font-size:16px;font-weight:700;}.menu-btn:hover{color:var(--color-primary);transform:scale(1.05);}

        /* REKLAMLAR */
        .ad-space-left,.ad-space-right{position:fixed;top:50%;transform:translateY(-50%);width:10vw;height:600px;max-height:80vh;background:rgba(255,255,255,0.4);backdrop-filter:blur(8px);border:2px dashed rgba(79,70,229,0.15);border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:50;color:#9ca3af;font-weight:800;font-size:16px;text-align:center;}
        .ad-space-left{left:20px;}.ad-space-right{right:20px;}
        @media(max-width:900px){.ad-space-left,.ad-space-right{display:none!important;}}

        /* LOADER - Gradient */
        .page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,#ffffff,#e0e7ff);z-index:9999;display:flex;justify-content:center;align-items:center;transition:opacity 0.5s,visibility 0.5s;}
        .page-loader.hidden{opacity:0;visibility:hidden;}
        .loader-content{display:flex;flex-direction:column;align-items:center;gap:15px;animation:floatLoader 2s infinite ease-in-out;}
        .loader-logo{width:80px;height:80px;font-size:34px;background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);border-radius:20px;box-shadow:0 10px 25px rgba(79,70,229,0.4);}
        .loader-title{font-size:26px;font-weight:800;color:#1e1b4b;letter-spacing:-0.5px;margin-top:5px;}
        .loader-text{font-size:14px;font-weight:600;color:#6b7280;margin-top:5px;letter-spacing:0.5px;}
        .spinner{width:44px;height:44px;border:4px solid rgba(79,70,229,0.1);border-top:4px solid #4f46e5;border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-top:5px;}
        @keyframes spin{100%{transform:rotate(360deg);}}
        @keyframes floatLoader{0%{transform:translateY(0);}50%{transform:translateY(-10px);}100%{transform:translateY(0);}}

        /* YAN MENÜ */
        .menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.4);backdrop-filter:blur(3px);z-index:4000;opacity:0;visibility:hidden;transition:var(--transition-base);}
        .menu-overlay.show{opacity:1;visibility:visible;}
        .side-menu{position:fixed;top:0;right:-320px;width:300px;height:100vh;background-color:var(--color-bg-card);box-shadow:-5px 0 25px rgba(0,0,0,0.1);z-index:4001;transition:right 0.3s cubic-bezier(0.25,0.8,0.25,1);display:flex;flex-direction:column;}
        .side-menu.open{right:0;}
        .side-menu-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid rgba(79,70,229,0.1);background:linear-gradient(135deg,#eef2ff 0%,#f0f4ff 100%);}
        .side-menu-header h2{font-size:18px;font-weight:800;color:#4f46e5;display:flex;align-items:center;gap:10px;}
        .close-menu-btn { font-size:26px; font-family:Arial,sans-serif; font-weight:300; color:var(--color-text-light); cursor:pointer; transition:all 0.2s; line-height:1; background:var(--color-bg-input); border:none; width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; padding:1px 0 0 0; }
        .close-menu-btn:hover { background:var(--color-danger-light); color:var(--color-danger); }
        .side-menu-content{padding:20px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;}
        .menu-item{display:flex;align-items:center;gap:15px;padding:12px 15px;color:var(--color-text-secondary);text-decoration:none;font-size:14px;font-weight:700;border-radius:10px;transition:var(--transition-fast);background-color:#fcfcfc;border:1px solid transparent;}
        .menu-item:hover{background-color:var(--color-primary-lighter);color:var(--color-primary);border-color:var(--color-primary-border);transform:translateX(5px);}
        .menu-item i{font-size:16px;color:var(--color-primary);width:20px;text-align:center;}
        .menu-item.active-page{background-color:var(--color-primary-lighter);color:#4f46e5;border-color:var(--color-primary-border);}

        /* MODAL STİLLERİ */
        .custom-modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.35);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);justify-content:center;align-items:center;}
        @keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
        .custom-modal-content{background-color:#fff;width:95%;max-width:650px;border-radius:var(--radius-xl);box-shadow:0 15px 30px rgba(0,0,0,0.15);display:flex;flex-direction:column;overflow:hidden;animation:slideUp 0.3s ease;}
        @keyframes slideUp{from{transform:translateY(20px);opacity:0;}to{transform:translateY(0);opacity:1;}}
        .modal-header{padding:15px 25px;background-color:var(--color-bg-input);border-bottom:1px solid #eef2f5;display:flex;justify-content:space-between;align-items:center;}
        .modal-header h3{font-size:16px;font-weight:800;color:var(--color-text-main);}
        .close-modal-btn { font-size:26px; font-family:Arial,sans-serif; font-weight:300; cursor:pointer; color:var(--color-text-light); transition:all 0.2s; line-height:1; background:var(--color-bg-input); border:none; width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; padding:1px 0 0 0; }
        .close-modal-btn:hover { background:var(--color-danger-light); color:var(--color-danger); }
        .modal-body{padding:0 25px 25px;display:flex;flex-direction:column;gap:18px;}
        .modal-footer{padding:15px 25px;background-color:var(--color-bg-input);border-top:1px solid #eef2f5;display:flex;justify-content:flex-end;gap:12px;}
        .modal-centered{max-width:380px!important;text-align:center;padding:30px;}
        .modal-icon-primary{font-size:40px;color:var(--color-primary);margin-bottom:15px;display:block;}
        .modal-icon-danger{font-size:40px;color:var(--color-danger);margin-bottom:15px;display:block;}
        .modal-title{margin-bottom:10px;font-size:18px;color:var(--color-text-main);}
        .modal-desc{color:var(--color-text-muted);font-size:14px;margin-bottom:25px;line-height:1.5;}
        .modal-actions{display:flex;gap:12px;justify-content:center;}
        .modal-input{width:100%;padding:12px 15px;border:1px solid var(--color-border-medium);border-radius:10px;font-size:13px;font-family:inherit;color:var(--color-text-main);background-color:#fcfcfc;transition:border-color 0.2s,box-shadow 0.2s;outline:none;}
        .modal-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(0,123,255,0.1);background-color:#fff;}
        .input-group{display:flex;flex-direction:column;gap:6px;}
        .input-group label{font-size:13px;font-weight:700;color:var(--color-text-secondary);margin-left:4px;}
        .required-star{color:var(--color-danger);}
        .error-msg{color:var(--color-danger);font-size:12px;font-weight:700;display:none;text-align:center;}
        .save-note-btn{background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);color:#fff;border:none;padding:10px 20px;border-radius:10px;font-weight:800;font-size:13px;cursor:pointer;transition:var(--transition-fast);}
        .save-note-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(79,70,229,0.3);}
        .cancel-note-btn{background-color:#fff;color:var(--color-text-secondary);border:1px solid #ccc;padding:10px 20px;border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;transition:var(--transition-fast);}
        .cancel-note-btn:hover{background-color:#f0f0f0;color:var(--color-text-main);}
        .bg-danger{background:var(--color-danger)!important;}
        .bg-success{background:var(--color-success)!important;}

        /* DENEME TAB BUTONLARI */
        .exam-tabs{display:flex;gap:30px;}
        .exam-tab-btn{background:none;border:none;font-size:18px;font-weight:800;color:var(--color-text-light);cursor:pointer;padding-bottom:8px;border-bottom:3px solid transparent;transition:var(--transition-base);}
        .exam-tab-btn:hover{color:var(--color-text-secondary);}
        .exam-tab-btn.active{color:#4f46e5;border-bottom-color:#4f46e5;}

        /* DERS SATIRI (DYB) */
        .subject-input-row{display:flex;align-items:center;justify-content:space-between;background:var(--color-bg-input);padding:12px 18px;border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:10px;transition:transform 0.2s,box-shadow 0.2s;}
        .subject-input-row:hover{transform:translateY(-2px);box-shadow:0 4px 10px rgba(0,0,0,0.03);border-color:var(--color-primary-border);}
        .subject-name{font-size:13px;font-weight:800;color:var(--color-text-secondary);flex:1;}
        .dyb-inputs{display:flex;gap:12px;}
        .dyb-box{display:flex;flex-direction:column;align-items:center;gap:4px;}
        .dyb-box label{font-size:10px;font-weight:800;color:var(--color-text-muted);}
        .dyb-input{width:45px;padding:6px 4px;border:1px solid var(--color-border-medium);border-radius:var(--radius-sm);text-align:center;font-size:13px;font-weight:700;color:var(--color-text-main);transition:var(--transition-fast);outline:none;}
        .dyb-box:nth-child(1) label{color:var(--color-success);}.dyb-box:nth-child(1) .dyb-input:focus{border-color:var(--color-success);box-shadow:0 0 0 2px rgba(40,167,69,0.1);}
        .dyb-box:nth-child(2) label{color:var(--color-danger);}.dyb-box:nth-child(2) .dyb-input:focus{border-color:var(--color-danger);box-shadow:0 0 0 2px rgba(217,83,79,0.1);}
        .dyb-box:nth-child(3) label{color:#6c757d;}.dyb-box:nth-child(3) .dyb-input:focus{border-color:#6c757d;box-shadow:0 0 0 2px rgba(108,117,125,0.1);}
        .dyb-input::-webkit-outer-spin-button,.dyb-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
        .dyb-input[type=number]{-moz-appearance:textfield;}
        .subject-inputs-container{max-height:260px;overflow-y:auto;padding-right:8px;}
        .subject-inputs-container::-webkit-scrollbar{width:5px;}
        .subject-inputs-container::-webkit-scrollbar-thumb{background-color:var(--color-primary-border);border-radius:5px;}

        /* CUSTOM SELECT (TCS) */
        .task-custom-select{position:relative;width:100%;user-select:none;}
        .tcs-trigger{display:flex;justify-content:space-between;align-items:center;background-color:#fcfcfc;border:1px solid var(--color-border-medium);padding:12px 15px;border-radius:10px;font-size:13px;font-weight:700;color:var(--color-text-main);cursor:pointer;transition:var(--transition-fast);}
        .tcs-trigger:hover{border-color:var(--color-primary);}
        .task-custom-select.open .tcs-trigger{border-color:var(--color-primary);border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 4px 10px rgba(0,123,255,0.1);}
        .task-custom-select.open .tcs-trigger i{transform:rotate(180deg);}
        .task-custom-select.tcs-up.open .tcs-trigger{border-radius:8px; border-top-left-radius:0; border-top-right-radius:0; box-shadow:0 -4px 10px rgba(0,123,255,0.1);}
        .tcs-options{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid var(--color-primary);border-top:none;border-bottom-left-radius:10px;border-bottom-right-radius:10px;box-shadow:0 8px 15px rgba(0,0,0,0.1);z-index:999;display:none;max-height:200px;overflow-y:auto;}
        .task-custom-select.open .tcs-options{display:block;}
        .tcs-option{padding:10px 15px;font-size:13px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:background 0.2s;border-bottom:1px solid #f1f1f1;}
        .tcs-option:last-child{border-bottom:none;}
        .tcs-option:hover{background-color:var(--color-primary-lighter);color:var(--color-primary);}
        .tcs-option.selected{background-color:var(--color-bg-hover);color:var(--color-primary);font-weight:800;}

        /* CUSTOM NUMBER INPUT */
        .custom-number-input{position:relative;display:flex;align-items:center;}
        .custom-number-input .modal-input{padding-right:120px;}
        .cni-controls{position:absolute;right:6px;display:flex;gap:4px;}
        .cni-btn{background-color:var(--color-primary-lighter);border:1px solid var(--color-primary-border);color:var(--color-primary);width:28px;height:28px;border-radius:var(--radius-md);display:flex;justify-content:center;align-items:center;cursor:pointer;transition:var(--transition-fast);}
        .cni-btn:hover{background-color:var(--color-primary);color:#fff;box-shadow:0 2px 6px rgba(0,123,255,0.2);}
        .no-spinner::-webkit-outer-spin-button,.no-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
        .no-spinner[type=number]{-moz-appearance:textfield;}

        /* TRACK SWITCH (SAY/EA/SOZ/DIL) */
        .track-switch-container { display: flex; background-color: var(--color-bg-input); border-radius: 10px; padding: 4px; border: 1px solid var(--color-border); }
        .track-btn { flex: 1; border: none; background: transparent; padding: 8px 0; font-size: 13px; font-weight: 800; color: var(--color-text-muted); border-radius: 8px; cursor: pointer; transition: var(--transition-fast); }
        .track-btn.active { background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%); color: #fff; box-shadow: 0 2px 8px rgba(79,70,229,0.3); }
        
        /* SWITCH */
        .switch{position:relative;display:inline-block;width:36px;height:20px;margin-top:4px;}
        .switch input{opacity:0;width:0;height:0;}
        .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#dce4ec;transition:.4s;border-radius:34px;}
        .slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:white;transition:.4s;border-radius:var(--radius-full);box-shadow:0 2px 4px rgba(0,0,0,0.2);}
        input:checked+.slider{background-color:var(--color-warning);}
        input:checked+.slider:before{transform:translateX(16px);}

        /* TOAST */
        .action-toast{position:fixed;top:-100px;left:50%;transform:translateX(-50%);background-color:rgba(255,255,255,0.95);backdrop-filter:blur(12px);padding:12px 25px;border-radius:50px;box-shadow:0 10px 30px rgba(79,70,229,0.12);z-index:9999;transition:all 0.5s cubic-bezier(0.68,-0.55,0.265,1.55);display:flex;align-items:center;border:1px solid rgba(199,210,254,0.4);}
        .action-toast.show{top:30px;}
        .toast-content{display:flex;align-items:center;gap:12px;}
        .toast-spinner{width:18px;height:18px;border:3px solid #f3f3f3;border-top:3px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;}
        #toastText{font-size:14px;font-weight:700;color:var(--color-text-main);}

        /* İÇERİK DÜZEN */
        .da-inner{flex:1;min-height:0;display:flex;flex-direction:row;overflow:hidden;}
        /* Sol panel */
        .da-sidebar{width:320px;background:rgba(255,255,255,0.95);border-right:1px solid rgba(199,210,254,0.4);display:flex;flex-direction:column;flex-shrink:0;position:relative;}
        .da-sidebar-header{padding:20px;border-bottom:1px solid rgba(199,210,254,0.4);}
        .da-sidebar-header h3{font-size:22px;margin:0;color:var(--color-text-main);margin-bottom:12px;}
        .da-tabs{display:flex;align-items:center;gap:15px;flex-wrap:wrap;}
        .da-exam-count{color:var(--color-text-muted);font-size:12px;background:var(--color-primary-lighter);padding:2px 8px;border-radius:var(--radius-sm);}
        .da-list{flex:1;overflow-y:auto;padding:15px;display:flex;flex-direction:column;gap:10px;padding-bottom:80px;}
        .da-list::-webkit-scrollbar{width:4px;}.da-list::-webkit-scrollbar-thumb{background:var(--color-primary-border);border-radius:4px;}
        .da-bottom-bar{position:absolute;bottom:0;left:0;width:100%;background:rgba(255,255,255,0.95);backdrop-filter:blur(8px);border-top:1px solid rgba(199,210,254,0.4);padding:12px 15px;display:flex;flex-direction:column;gap:10px;z-index:10;box-shadow:0 -4px 15px rgba(79,70,229,0.04);}
        /* Sağ panel */
        .da-charts{flex:1;overflow-y:auto;padding:25px;display:flex;flex-direction:column;gap:20px;background:linear-gradient(180deg,rgba(238,242,255,0.5) 0%,rgba(243,244,246,0.3) 100%);}
        .da-charts::-webkit-scrollbar{width:6px;}.da-charts::-webkit-scrollbar-thumb{background:var(--color-primary-border);border-radius:6px;}
        .da-chart-box{background:rgba(255,255,255,0.9);backdrop-filter:blur(8px);border-radius:16px;padding:20px;box-shadow:0 4px 15px rgba(79,70,229,0.04);border:1px solid rgba(199,210,254,0.4);}

        /* DENEME KART */
        .da-exam-card{display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,0.9);padding:10px 14px;border-radius:var(--radius-md);border:1px solid rgba(199,210,254,0.3);box-shadow:0 2px 6px rgba(79,70,229,0.03);transition:transform 0.2s,box-shadow 0.2s;cursor:pointer;flex-shrink:0;}
        .da-exam-card:hover{transform:translateY(-2px);box-shadow:0 6px 15px rgba(79,70,229,0.08);border-color:var(--color-primary-border);}
        .da-exam-card.targeted{border:2px solid var(--color-danger)!important;background-color:#fff0f0;}
        .da-exam-card-left{display:flex;flex-direction:row;align-items:center;gap:8px;overflow:hidden;flex:1;padding-right:10px;}
        .da-exam-title{font-size:12px;font-weight:700;color:var(--color-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .da-exam-date{font-size:10px;font-weight:600;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;}
        .da-exam-net{font-size:12px;font-weight:900;color:#17a2b8;background:#e0f7fa;padding:3px 6px;border-radius:var(--radius-sm);flex-shrink:0;}
        .placeholder-text{color:var(--color-text-light);font-size:13px;font-weight:600;border:2px dashed #f0f0f0;padding:20px;border-radius:var(--radius-lg);text-align:center;width:100%;}


/* ===== Orijinal satır 631-727 ===== */
            #examModalBodyFlex { flex-direction: row; }
            #examModalRightCol .subject-inputs-container { max-height: 340px; overflow-y: auto; padding-right: 8px; }
            @media (max-width: 800px) {
                #examModalBodyFlex { flex-direction: column; overflow-y: auto; }
            }
        
        /* --- PLANSAL BİLDİRİM SİSTEMİ (Toast + Confirm Modal) --- */
        .plansal-toast-container{position:fixed;top:30px;left:50%;transform:translateX(-50%);z-index:99999;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;}
        .plansal-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 24px;border-radius:16px;font-size:14px;font-weight:700;color:#fff;box-shadow:0 10px 40px rgba(0,0,0,0.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.15);opacity:0;transform:translateY(-20px) scale(0.95);transition:all 0.4s cubic-bezier(0.22,1,0.36,1);max-width:90vw;text-align:left;line-height:1.4;}
        .plansal-toast.show{opacity:1;transform:translateY(0) scale(1);}
        .plansal-toast.exit{opacity:0;transform:translateY(-20px) scale(0.95);}
        .plansal-toast i{font-size:18px;flex-shrink:0;}
        .plansal-toast.error{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);}
        .plansal-toast.success{background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);}
        .plansal-toast.warning{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);}
        .plansal-toast.info{background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);}
        .plansal-toast .toast-close{background:none;border:none;color:rgba(255,255,255,0.7);font-size:16px;cursor:pointer;padding:0 0 0 8px;transition:color 0.2s;}
        .plansal-toast .toast-close:hover{color:#fff;}

        .plansal-confirm-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.55);z-index:100000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all 0.3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}
        .plansal-confirm-overlay.show{opacity:1;visibility:visible;}
        .plansal-confirm-box{background:#fff;width:90%;max-width:380px;border-radius:20px;padding:30px 28px 24px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,0.2);transform:scale(0.85) translateY(10px);transition:transform 0.35s cubic-bezier(0.22,1,0.36,1);position:relative;}
        .plansal-confirm-overlay.show .plansal-confirm-box{transform:scale(1) translateY(0);}
        .plansal-confirm-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:24px;}
        .plansal-confirm-icon.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706;}
        .plansal-confirm-icon.danger{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;}
        .plansal-confirm-icon.info{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4f46e5;}
        .plansal-confirm-title{font-size:18px;font-weight:800;color:#1f2937;margin-bottom:8px;}
        .plansal-confirm-msg{font-size:14px;color:#6b7280;line-height:1.6;margin-bottom:24px;white-space:pre-line;}
        .plansal-confirm-actions{display:flex;gap:10px;justify-content:center;}
        .plansal-confirm-actions button{flex:1;padding:12px 20px;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all 0.25s ease;border:none;}
        .plansal-confirm-actions .cancel-btn{background:#f3f4f6;color:#6b7280;}
        .plansal-confirm-actions .cancel-btn:hover{background:#e5e7eb;}
        .plansal-confirm-actions .yes-btn{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;box-shadow:0 4px 15px rgba(79,70,229,0.3);}
        .plansal-confirm-actions .yes-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(79,70,229,0.4);}
        .plansal-confirm-actions .yes-btn.danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 15px rgba(239,68,68,0.3);}
        .plansal-confirm-actions .yes-btn.danger:hover{box-shadow:0 6px 20px rgba(239,68,68,0.4);}

    
        /* --- PLANSAL ÖZEL TARİH SEÇİCİ --- */
        .plansal-dp-wrap { position: relative; display: inline-block; width: 100%; }
        .plansal-dp-trigger {
            display: flex; align-items: center; gap: 10px; width: 100%; padding: 11px 14px;
            border: 1.5px solid var(--color-border, #dce4ec); border-radius: 10px;
            background: var(--color-bg-input, #fff); cursor: pointer;
            transition: all 0.25s ease; font-family: inherit; position: relative;
        }
        .plansal-dp-trigger:hover { border-color: var(--color-primary, #4f46e5); }
        .plansal-dp-trigger.active { border-color: var(--color-primary, #4f46e5); box-shadow: 0 0 0 3px rgba(79,70,229,0.1); }
        .plansal-dp-trigger i.dp-icon { color: var(--color-primary, #4f46e5); font-size: 15px; flex-shrink: 0; }
        .plansal-dp-trigger .dp-text { flex: 1; font-size: 14px; font-weight: 600; color: var(--color-text-main, #333); }
        .plansal-dp-trigger .dp-text.empty { color: var(--color-text-muted, #9ca3af); font-weight: 500; }
        .plansal-dp-trigger .dp-clear { color: var(--color-text-muted, #aaa); font-size: 13px; padding: 2px 4px; border-radius: 6px; transition: all 0.2s; opacity: 0; pointer-events: none; }
        .plansal-dp-trigger:hover .dp-clear.visible { opacity: 1; pointer-events: auto; }
        .plansal-dp-trigger .dp-clear:hover { color: var(--color-danger, #ef4444); background: rgba(239,68,68,0.08); }

        .plansal-dp-dropdown {
            position: fixed; z-index: 99999;
            background: #fff; border-radius: 14px; padding: 12px;
            box-shadow: 0 10px 35px rgba(0,0,0,0.15), 0 0 0 1px rgba(0,0,0,0.04);
            opacity: 0; visibility: hidden; transform: translateY(-6px) scale(0.97);
            transition: all 0.2s cubic-bezier(0.22,1,0.36,1); width: 260px;
            user-select: none;
        }
        .plansal-dp-dropdown.open { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }

        .dp-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
        .dp-header .dp-month-year { font-size: 13px; font-weight: 800; color: var(--color-text-main, #1f2937); padding: 3px 6px; border-radius: 6px; transition: background 0.2s; }
        .dp-nav-btn { width: 28px; height: 28px; border: none; background: var(--color-bg-hover, #f3f4f6); color: var(--color-text-main, #333); border-radius: 7px; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 11px; transition: all 0.2s; }
        .dp-nav-btn:hover { background: var(--color-primary, #4f46e5); color: #fff; }

        .dp-weekdays { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; margin-bottom: 4px; }
        .dp-weekdays span { font-size: 10px; font-weight: 800; color: var(--color-text-muted, #9ca3af); text-align: center; padding: 2px 0; text-transform: uppercase; letter-spacing: 0.3px; }

        .dp-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; }
        .dp-day {
            width: 100%; aspect-ratio: 1; display: flex; align-items: center; justify-content: center;
            font-size: 12px; font-weight: 600; color: var(--color-text-main, #333);
            border-radius: 8px; cursor: pointer; transition: all 0.15s ease; border: 1.5px solid transparent;
        }
        .dp-day:hover { background: var(--color-bg-hover, #f0f4ff); }
        .dp-day.other-month { color: var(--color-text-muted, #ccc); }
        .dp-day.today { border-color: var(--color-primary, #4f46e5); color: var(--color-primary, #4f46e5); font-weight: 800; }
        .dp-day.selected { background: linear-gradient(135deg, var(--color-primary, #4f46e5), #3b82f6); color: #fff; font-weight: 800; border-color: transparent; box-shadow: 0 3px 10px rgba(79,70,229,0.3); }
        .dp-day.selected:hover { background: linear-gradient(135deg, #4338ca, #2563eb); }


        /* Styled-date-input (/ders not tarihleri) için özel override */
        .date-box .plansal-dp-trigger {
            border: none; background: transparent; padding: 0; gap: 0;
            box-shadow: none !important;
        }
        .date-box .plansal-dp-trigger .dp-icon { display: none; }
        .date-box .plansal-dp-trigger .dp-text { font-size: 13px; font-weight: 700; }
        .date-box .plansal-dp-trigger .dp-clear { display: none; }




