body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#3b82f6;--primary-dark:#2563eb;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--sidebar-width:250px;--sidebar-collapsed:70px;--header-height:60px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f3f4f6;background-color:var(--gray-100);color:#1f2937;color:var(--gray-800);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5}.loading-screen{color:#6b7280;color:var(--gray-500);font-size:1.2rem;height:100vh}.loading-screen,.login-page{align-items:center;display:flex;justify-content:center}.login-page{background:linear-gradient(135deg,#3b82f6,#2563eb);background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);min-height:100vh;padding:20px}.login-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:#3b82f6;color:var(--primary);font-size:2rem;margin-bottom:8px}.login-header p{color:#6b7280;color:var(--gray-500)}.login-form .form-group{margin-bottom:20px}.login-form label{color:#374151;color:var(--gray-700);display:block;font-weight:500;margin-bottom:6px}.login-form input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .2s;width:100%}.login-form input:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.login-btn{background:#3b82f6;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px;transition:background .2s;width:100%}.login-btn:hover{background:#2563eb;background:var(--primary-dark)}.login-btn:disabled{background:#9ca3af;background:var(--gray-400);cursor:not-allowed}.error-message{background:#fee2e2;border-radius:8px;color:#ef4444;color:var(--danger);font-size:.9rem;margin-bottom:20px;padding:12px}.login-footer{color:#6b7280;color:var(--gray-500);font-size:.9rem;margin-top:20px;text-align:center}.academy-code-notice{background:#f9fafb;background:var(--gray-50);border-radius:8px;color:#4b5563;color:var(--gray-600);margin-bottom:20px;padding:16px;text-align:center}.academy-code-notice p{font-size:.95rem;margin:0}.input-hint{color:#6b7280;color:var(--gray-500);display:block;font-size:.85rem;margin-top:6px}.current-academy-badge{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-radius:8px;display:flex;gap:10px;justify-content:center;margin-bottom:24px;padding:12px 16px}.current-academy-badge .academy-name{color:#fff;font-size:1.1rem;font-weight:600}.current-academy-badge .change-academy-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:4px 10px;transition:background .2s}.current-academy-badge .change-academy-btn:hover{background:#ffffff4d}.layout{display:flex;min-height:100vh}.sidebar{background:#1f2937;background:var(--gray-800);color:#fff;display:flex;flex-direction:column;height:100vh;position:fixed;transition:width .3s;width:250px;width:var(--sidebar-width);z-index:100}.sidebar.closed{width:70px;width:var(--sidebar-collapsed)}.sidebar-header{align-items:center;border-bottom:1px solid #374151;border-bottom:1px solid var(--gray-700);display:flex;justify-content:space-between;padding:20px}.logo{font-size:1.25rem;font-weight:700;overflow:hidden;white-space:nowrap}.sidebar.closed .logo{display:none}.toggle-btn{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 8px}.nav-item{align-items:center;border-radius:8px;color:#d1d5db;color:var(--gray-300);display:flex;gap:12px;margin-bottom:4px;padding:12px 16px;text-decoration:none;transition:all .2s}.nav-item:hover{background:#374151;background:var(--gray-700);color:#fff}.nav-item.active{background:#3b82f6;background:var(--primary);color:#fff}.nav-icon{flex-shrink:0;font-size:1.25rem}.sidebar.closed .nav-item span{display:none}.sidebar-footer{border-top:1px solid #374151;border-top:1px solid var(--gray-700);padding:16px}.user-info{gap:12px;margin-bottom:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:#3b82f6;background:var(--primary);border-radius:50%;flex-shrink:0;font-weight:600;height:40px;justify-content:center;width:40px}.user-details{display:flex;flex-direction:column;overflow:hidden}.user-name{font-weight:500;white-space:nowrap}.user-role{color:#9ca3af;color:var(--gray-400)}.sidebar.closed .user-details{display:none}.logout-btn{align-items:center;background:none;border:1px solid #4b5563;border:1px solid var(--gray-600);border-radius:8px;color:#d1d5db;color:var(--gray-300);cursor:pointer;display:flex;gap:8px;padding:10px;transition:all .2s;width:100%}.logout-btn:hover{background:#ef4444;background:var(--danger);border-color:#ef4444;border-color:var(--danger);color:#fff}.sidebar.closed .logout-btn span{display:none}.main-content{flex:1 1;margin-left:250px;margin-left:var(--sidebar-width);transition:margin-left .3s}.sidebar.closed+.main-content{margin-left:70px;margin-left:var(--sidebar-collapsed)}.top-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;height:60px;height:var(--header-height);justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;font-size:1.5rem}.welcome{color:#4b5563;color:var(--gray-600)}.content-wrapper{max-width:1400px;padding:24px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-header h2{color:#1f2937;color:var(--gray-800);font-size:1.5rem}.page-header p{color:#6b7280;color:var(--gray-500);margin-top:4px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.btn-primary{background:#3b82f6;background:var(--primary);color:#fff}.btn-primary:hover{background:#2563eb;background:var(--primary-dark)}.btn-secondary{background:#e5e7eb;background:var(--gray-200);color:#374151;color:var(--gray-700)}.btn-secondary:hover{background:#d1d5db;background:var(--gray-300)}.btn-success{background:#10b981;background:var(--success);color:#fff}.btn-warning{background:#f59e0b;background:var(--warning);color:#fff}.btn-danger{background:#ef4444;background:var(--danger);color:#fff}.icon-btn{background:none;border:none;border-radius:6px;color:#6b7280;color:var(--gray-500);cursor:pointer;padding:8px;transition:all .2s}.icon-btn:hover{background:#f3f4f6;background:var(--gray-100);color:#374151;color:var(--gray-700)}.icon-btn.danger:hover{background:#fee2e2;color:#ef4444;color:var(--danger)}.icon-btn.warning:hover{color:#f59e0b;color:var(--warning)}.search-bar{display:flex;gap:8px;margin-bottom:20px}.search-bar input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;flex:1 1;font-size:.9rem;padding:10px 16px}.search-bar input:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.search-bar button{background:#f3f4f6;background:var(--gray-100);border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;cursor:pointer;padding:10px 16px}.table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}table{border-collapse:collapse;width:100%}td,th{padding:14px 16px;text-align:left}th{background:#f9fafb;background:var(--gray-50);color:#4b5563;color:var(--gray-600);font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}td{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200)}tr:hover{background:#f9fafb;background:var(--gray-50)}.empty,.loading{color:#6b7280;color:var(--gray-500);padding:40px!important;text-align:center}.status{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:500;padding:4px 10px}.status.active{background:#d1fae5;color:#065f46}.status.inactive{background:#fee2e2;color:#991b1b}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:500;padding:4px 10px}.status-badge.present{background:#d1fae5;color:#065f46}.status-badge.absent{background:#fee2e2;color:#991b1b}.status-badge.completed{background:#dbeafe;color:#1e40af}.modal-overlay{z-index:200}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;padding:20px}.close-btn,.modal-header h3{font-size:1.25rem}.close-btn{background:none;border:none;color:#6b7280;color:var(--gray-500);cursor:pointer}.modal form{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#374151;color:var(--gray-700);display:block;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;font-size:.95rem;padding:10px 14px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px}.schedule-row{align-items:center;display:flex;gap:8px;margin-bottom:8px}.schedule-row input,.schedule-row select{flex:1 1;padding:8px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:30px}.stat-card{background:#fff;box-shadow:0 1px 3px #0000001a;gap:16px;padding:20px}.stat-card,.stat-icon{align-items:center;border-radius:12px;display:flex}.stat-icon{font-size:1.5rem;height:50px;justify-content:center;width:50px}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700}.section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.section h3{color:#1f2937;color:var(--gray-800);margin-bottom:16px}.quick-actions{display:flex;flex-wrap:wrap;gap:12px}.action-btn{align-items:center;background:#f3f4f6;background:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;cursor:pointer;display:flex;gap:8px;padding:12px 20px;transition:all .2s}.action-btn:hover{background:#3b82f6;background:var(--primary);border-color:#3b82f6;border-color:var(--primary);color:#fff}.empty-message{color:#6b7280;color:var(--gray-500);padding:20px;text-align:center}.class-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.class-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.class-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:12px}.class-header h3{font-size:1.1rem}.class-actions{display:flex;gap:4px}.class-info{display:flex;gap:8px;margin-bottom:12px}.tag{background:#f3f4f6;background:var(--gray-100);border-radius:20px;color:#4b5563;color:var(--gray-600);display:inline-block;font-size:.8rem;padding:4px 10px}.class-schedule{margin-bottom:16px}.schedule-item{background:#dbeafe;border-radius:4px;color:#1e40af;display:inline-block;font-size:.8rem;margin-bottom:8px;margin-right:8px;padding:4px 10px}.class-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);justify-content:space-between;padding-top:12px}.class-footer,.student-count{align-items:center;display:flex}.student-count{color:#6b7280;color:var(--gray-500);font-size:.9rem;gap:4px}.filter-bar{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.filter-group{gap:6px}.filter-group label{color:#4b5563;color:var(--gray-600)}.filter-group input,.filter-group select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;min-width:200px;padding:10px 14px}.student-info{display:flex;flex-direction:column}.student-info .name{font-weight:500}.student-info .sub{color:#6b7280;color:var(--gray-500);font-size:.8rem}.done{color:#9ca3af;color:var(--gray-400);font-size:.9rem}.attendance-summary{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:24px;margin-top:20px;padding:16px}.summary-item{align-items:center}.summary-item .label{font-size:.85rem}.summary-item .value{font-size:1.25rem;font-weight:600}.summary-item.present .value{color:#10b981;color:var(--success)}.summary-item.absent .value{color:#ef4444;color:var(--danger)}.coming-soon{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.coming-soon h2{font-size:1.5rem;margin-bottom:8px}.coming-soon p{color:#6b7280;color:var(--gray-500)}@media (max-width:768px){.sidebar{left:-100%;position:fixed;transition:left .3s}.sidebar.open{left:0}.main-content{margin-left:0!important}.mobile-menu-btn{display:block}.form-row{grid-template-columns:1fr}.filter-bar{flex-direction:column}.filter-group input,.filter-group select{min-width:100%}}.modal.modal-lg{max-width:700px}.modal-body{max-height:60vh;overflow-y:auto;padding:20px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.filters input,.filters select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;font-size:.9rem;padding:10px 14px}.filters-bar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.filters-bar .filter-group{display:flex;flex-direction:column;gap:4px}.filters-bar .filter-group label{color:#4b5563;color:var(--gray-600);font-size:.8rem;font-weight:500}.filters-bar .filter-group input,.filters-bar .filter-group select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;min-width:120px;padding:8px 12px}.filter-summary{background:#f3f4f6;background:var(--gray-100);border-radius:8px;color:#374151;color:var(--gray-700);font-size:.9rem;margin-bottom:16px;padding:10px 16px}.btn-outline{background:#0000}.text-muted{color:#6b7280;color:var(--gray-500);font-size:.9rem}.badge{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:600;padding:4px 10px}.badge-primary{background:#dbeafe;color:#1e40af}.status.warning{background:#fef3c7;color:#92400e}.status.danger{background:#fee2e2;color:#991b1b}.status.refunded{background:#e5e7eb;color:#374151}.results-table{width:100%}.results-table td{padding:8px}.results-table input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;padding:8px}.tabs{gap:4px}.tab{color:#6b7280;color:var(--gray-500);font-size:.95rem}.tab:hover{color:#374151;color:var(--gray-700)}.settings-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.settings-section h3{color:#1f2937;color:var(--gray-800);margin-bottom:20px}.settings-section h4{color:#374151;color:var(--gray-700);font-size:1rem;margin:20px 0 16px}.settings-section hr{border:none;border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);margin:24px 0}.settings-form{max-width:500px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h3{margin:0}.template-list{display:flex;flex-wrap:wrap;gap:8px}.btn-outline{border:1px solid #d1d5db;border:1px solid var(--gray-300);color:#374151;color:var(--gray-700)}.btn-outline:hover{background:#f3f4f6;background:var(--gray-100);border-color:#9ca3af;border-color:var(--gray-400)}.student-select-list{grid-gap:8px;border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:200px;overflow-y:auto;padding:12px}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:8px}.checkbox-label input{width:auto}.cost-preview{background:#f3f4f6;background:var(--gray-100);border-radius:8px;color:#4b5563;color:var(--gray-600);font-size:.9rem;gap:8px;margin-bottom:16px;padding:12px 16px}.cost-preview,.loading-page{align-items:center;display:flex}.loading-page{justify-content:center;min-height:400px}.loading-page,small.text-muted{color:#6b7280;color:var(--gray-500)}small.text-muted{display:block;font-size:.8rem;margin-top:4px}.table-container h3{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);margin:0;padding:16px 20px}.super-login-page{background:linear-gradient(135deg,#1e293b,#334155)}.super-login-page .login-container{border:2px solid #475569}.super-login-page .login-header{background:#1e293b}.super-icon{color:#f59e0b!important}.super-sidebar{background:linear-gradient(180deg,#1e293b,#0f172a)}.super-sidebar .logo{color:#f59e0b}.super-sidebar .nav-item.active,.super-sidebar .nav-item:hover{background:#f59e0b1a;color:#f59e0b}.super-avatar{background:#f59e0b!important;color:#1e293b!important}.super-header{background:#f8fafc}.super-badge{background:#f59e0b;border-radius:20px;color:#1e293b;font-size:.75rem;font-weight:700;letter-spacing:1px;padding:4px 12px}.super-stats .stat-card{border-left:4px solid #3b82f6;border-left:4px solid var(--primary)}.stat-sub{color:#6b7280;color:var(--gray-500);font-size:.8rem;margin-top:2px}.alert-banner{align-items:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.alert-banner svg{font-size:1.25rem}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2fr 1fr}@media (max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}.notification-stats{display:flex;gap:20px;margin-top:16px}.noti-stat-item{align-items:center;background:#f9fafb;background:var(--gray-50);border-radius:8px;display:flex;flex:1 1;gap:16px;padding:16px}.noti-icon{font-size:2rem}.noti-icon.push{color:#3b82f6}.noti-icon.alimtalk{color:#f59e0b}.noti-value{font-size:1.5rem;font-weight:700}.noti-label{color:#6b7280;color:var(--gray-500);font-size:.85rem}.noti-cost{color:#9ca3af;color:var(--gray-400);font-size:.8rem}.search-input{flex:1 1;max-width:300px;position:relative}.search-input svg{color:#9ca3af;color:var(--gray-400);left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-input input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;padding:10px 14px 10px 38px;width:100%}code{background:#f3f4f6;background:var(--gray-100);border-radius:4px;font-size:.85rem;padding:2px 6px}.amount{color:#3b82f6;color:var(--primary);font-weight:600}.summary-banner{align-items:center;background:#dbeafe;border:1px solid #3b82f6;border-radius:8px;color:#1e40af;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.highlight-row{background:#fef9c3!important}.tenant-info{display:flex;flex-direction:column;gap:2px}.tenant-name{font-weight:500}.tenant-id{font-size:.75rem}.action-buttons{display:flex;gap:8px}.processed-info{color:#6b7280;color:var(--gray-500);display:flex;flex-direction:column;gap:2px}.processed-info .note{font-style:italic}.request-summary{background:#f9fafb;background:var(--gray-50);border-radius:8px;margin-bottom:20px;padding:16px}.summary-row{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;padding:8px 0}.summary-row:last-child{border-bottom:none}.confirm-message{align-items:center;border-radius:8px;display:flex;font-size:.9rem;gap:8px;padding:12px 16px}.confirm-message.success{background:#d1fae5;color:#065f46}.btn-full{justify-content:center;width:100%}.activity-list{background:#fff;border-radius:8px;padding:16px}.activity-item{align-items:center;border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--gray-100);display:flex;gap:12px;padding:12px 0}.activity-item:last-child{border-bottom:none}.activity-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:4px 8px;white-space:nowrap}.activity-badge.lesson{background:#dbeafe;color:#1d4ed8}.activity-badge.attendance{background:#d1fae5;color:#065f46}.activity-message{color:#374151;color:var(--gray-700);flex:1 1;font-size:.9rem}.activity-time{color:#9ca3af;color:var(--gray-400);font-size:.8rem;white-space:nowrap}.header-actions{display:flex;gap:12px}.upload-content{padding:20px}.upload-info{margin-bottom:20px}.upload-info p{color:#4b5563;color:var(--gray-600);margin-bottom:8px}.upload-area{align-items:center;border:2px dashed #d1d5db;border:2px dashed var(--gray-300);border-radius:8px;display:flex;gap:16px;margin-bottom:20px;padding:20px}.file-name{color:#4b5563;color:var(--gray-600);font-size:.9rem}.upload-preview{margin-bottom:20px}.upload-preview h4{color:#374151;color:var(--gray-700);margin-bottom:12px}.upload-preview table{font-size:.85rem}.upload-preview td,.upload-preview th{padding:8px 12px}.schedule-row.has-error{border:1px solid #ef4444;border:1px solid var(--danger);border-radius:8px;margin-bottom:4px;padding:8px}.schedule-errors{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;padding-left:8px}.error-text{font-size:.8rem}.inactive-row{background:#f9fafb;background:var(--gray-50);opacity:.6}.icon-btn.warning{color:#f59e0b;color:var(--warning)}.icon-btn.warning:hover{background:#fef3c7;color:#d97706}.icon-btn.success{color:#10b981;color:var(--success)}.icon-btn.success:hover{background:#d1fae5;color:#059669}.students-section{margin-bottom:20px}.students-section h4{color:#374151;color:var(--gray-700);margin-bottom:12px}.student-list{border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;max-height:300px;overflow-y:auto;padding:8px}.student-item{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:4px;padding:10px 12px}.student-item:hover{background:#f9fafb;background:var(--gray-50)}.student-item:last-child{margin-bottom:0}.student-item.grade-match{background:#eff6ff;border-left:3px solid #3b82f6;border-left:3px solid var(--primary)}.text-primary{color:#3b82f6!important;color:var(--primary)!important;font-weight:500}.modal-body hr{border:none;margin:20px 0}.feedback-section,.modal-body hr{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200)}.feedback-section{margin-top:20px;padding-top:16px}.feedback-toggle{align-items:center;background:#f3f4f6;background:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;color:#374151;color:var(--gray-700);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:8px;padding:12px 16px;transition:background .2s;width:100%}.feedback-toggle:hover{background:#e5e7eb;background:var(--gray-200)}.student-feedbacks{margin-top:16px}.feedback-hint{color:#6b7280;color:var(--gray-500);font-size:.85rem;margin-bottom:16px}.student-feedback-item{background:#f9fafb;background:var(--gray-50);border-radius:8px;margin-bottom:16px;padding:12px}.student-feedback-item label{color:#1f2937;color:var(--gray-800);display:block;font-weight:600;margin-bottom:8px}.student-feedback-item textarea{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;padding:10px;resize:vertical;width:100%}.student-feedback-item textarea:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.8rem;font-weight:500;gap:4px;padding:4px 8px}.badge-info{background:var(--primary-light);color:#3b82f6;color:var(--primary)}.badge-success{color:#059669}.badge-warning{color:#d97706}.lesson-preview{padding:20px}.lesson-preview .preview-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);margin-bottom:24px;padding-bottom:16px}.lesson-preview .preview-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.lesson-preview .preview-class{background:#3b82f6;background:var(--primary);border-radius:4px;color:#fff;font-size:.85rem;font-weight:500;padding:4px 10px}.lesson-preview .preview-date{color:#4b5563;color:var(--gray-600);font-size:.9rem}.lesson-preview .preview-sent{color:#10b981;color:var(--success);font-size:.85rem;margin-left:auto}.lesson-preview .preview-title{color:#1f2937;color:var(--gray-800);font-size:1.3rem;margin:0}.lesson-preview .preview-section{margin-bottom:20px}.lesson-preview .preview-section h5{color:#374151;color:var(--gray-700);font-size:1rem;margin-bottom:8px}.lesson-preview .preview-section p{background:#f9fafb;background:var(--gray-50);border-radius:8px;color:#4b5563;color:var(--gray-600);line-height:1.7;padding:12px;white-space:pre-wrap}.lesson-preview .feedback-list{display:flex;flex-direction:column;gap:12px}.lesson-preview .feedback-item{background:#f9fafb;background:var(--gray-50);border-left:3px solid #3b82f6;border-left:3px solid var(--primary);border-radius:8px;padding:12px}.lesson-preview .feedback-item strong{color:#1f2937;color:var(--gray-800);display:block;margin-bottom:4px}.lesson-preview .feedback-item p{background:none;margin:0;padding:0}.preview-view-selector{align-items:center;background:#f3f4f6;background:var(--gray-100);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:12px}.preview-view-selector label{color:#374151;color:var(--gray-700);font-weight:500;white-space:nowrap}.preview-view-selector select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;min-width:200px;padding:8px 12px}.preview-view-selector .view-hint{color:#3b82f6;color:var(--primary);font-size:.85rem;font-weight:500}.tuition-items{display:flex;flex-direction:column;gap:8px}.tuition-item-row{align-items:center;display:flex;gap:8px}.tuition-item-row input,.tuition-item-row select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;padding:8px 12px}.tuition-item-row .icon-btn{flex-shrink:0}.upload-result{background:#f9fafb;background:var(--gray-50);border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;margin-top:16px;padding:16px}.upload-summary{display:flex;font-weight:500;gap:16px;margin-bottom:12px}.upload-summary .success-count{color:#059669}.upload-summary .fail-count{color:#dc2626}.upload-errors{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);padding-top:12px}.upload-errors h5{color:#dc2626;font-size:.9rem;margin-bottom:8px}.upload-errors ul{color:#374151;color:var(--gray-700);font-size:.85rem;margin:0;padding-left:20px}.upload-errors li{margin-bottom:4px}.bulk-info{background:#f3f4f6;background:var(--gray-100);border-radius:8px;margin-bottom:16px;padding:12px}.bulk-info p{color:#374151;color:var(--gray-700);font-size:.9rem;margin:0 0 4px}.bulk-info p:last-child{margin-bottom:0}.staff-notice-page .notice-list{display:flex;flex-direction:column;gap:12px}.notice-item{align-items:flex-start;background:#fff;border-left:4px solid #0000;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:all .2s}.notice-item:hover{box-shadow:0 2px 8px #0000001a}.notice-item.pinned{background:#fffbeb;border-left-color:#f59e0b;border-left-color:var(--warning)}.notice-item.unread{background:#eff6ff;border-left-color:#3b82f6;border-left-color:var(--primary)}.notice-main{flex:1 1}.notice-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.notice-header .pin-icon{color:#f59e0b;color:var(--warning)}.notice-title{color:#1f2937;color:var(--gray-800);font-size:1rem;font-weight:600}.notice-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;color:var(--gray-600);display:-webkit-box;font-size:.9rem;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis}.notice-meta{color:#6b7280;color:var(--gray-500);display:flex;font-size:.8rem;gap:16px}.notice-meta .read-count{align-items:center;cursor:pointer;display:flex;gap:4px}.notice-meta .read-count:hover{color:#3b82f6;color:var(--primary)}.notice-actions{display:flex;gap:8px}.notice-detail-meta{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);color:#4b5563;color:var(--gray-600);display:flex;font-size:.9rem;gap:20px;margin-bottom:16px;padding-bottom:16px}.notice-detail-content p{line-height:1.8;margin-bottom:8px}.readers-summary{background:#f9fafb;background:var(--gray-50);border-radius:8px;margin-bottom:16px;padding:16px;text-align:center}.read-rate{align-items:center;color:#3b82f6;color:var(--primary);display:flex;font-size:1.2rem;font-weight:600;gap:8px;justify-content:center}.readers-list{max-height:300px;overflow-y:auto}.reader-item{align-items:center;border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;padding:10px 0}.reader-name{font-weight:500}.reader-role{color:#6b7280;color:var(--gray-500);font-size:.8rem}.read-time{color:#9ca3af;color:var(--gray-400);font-size:.8rem}.readers-columns{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.readers-column h4{align-items:center;border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--gray-200);display:flex;gap:8px;margin-bottom:12px;padding-bottom:8px}.readers-column h4 .icon-success{color:#10b981;color:var(--success)}.readers-column h4 .icon-danger{color:#ef4444;color:var(--danger)}.reader-item.read{background:#f0fdf4}.reader-item.unread{background:#fef2f2}.target-roles-group{display:flex;gap:16px;margin-top:8px}.target-roles-group .checkbox-label{align-items:center;cursor:pointer;display:flex;gap:6px}.chat-page .chat-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;height:calc(100vh - 180px);overflow:hidden}.chat-sidebar{border-right:1px solid #e5e7eb;border-right:1px solid var(--gray-200);display:flex;flex-direction:column;overflow-y:auto;width:300px}.sidebar-section{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--gray-100);padding:16px}.sidebar-section h4{color:#6b7280;color:var(--gray-500);font-size:.8rem;margin-bottom:12px;text-transform:uppercase}.conversation-list,.user-list{display:flex;flex-direction:column;gap:4px}.conversation-item,.user-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:10px 12px;transition:background .2s}.conversation-item:hover,.user-item:hover{background:#f3f4f6;background:var(--gray-100)}.conversation-item.active,.user-item.active{background:#3b82f6;background:var(--primary);color:#fff}.conversation-item.unread{background:#eff6ff}.conv-avatar,.user-avatar{align-items:center;background:#3b82f6;background:var(--primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:40px;justify-content:center;width:40px}.conversation-item.active .conv-avatar,.user-item.active .user-avatar{background:#fff;color:#3b82f6;color:var(--primary)}.conv-info,.user-info{flex:1 1;min-width:0}.conv-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2px}.conv-name,.user-name{font-size:.95rem;font-weight:500}.conv-time{color:#6b7280;color:var(--gray-500);font-size:.75rem}.conversation-item.active .conv-time{color:#fffc}.conv-preview{align-items:center;display:flex;justify-content:space-between}.conv-message{color:#4b5563;color:var(--gray-600);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item.active .conv-message{color:#ffffffe6}.unread-badge{background:#ef4444;background:var(--danger);border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px}.user-role{color:#6b7280;color:var(--gray-500);font-size:.8rem}.user-role.admin{color:#3b82f6;color:var(--primary)}.user-item.active .user-role{color:#fffc}.chat-main{display:flex;flex:1 1;flex-direction:column}.chat-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);padding:16px 20px}.chat-user{align-items:center;display:flex;gap:12px}.chat-user .user-avatar{height:44px;width:44px}.chat-user .user-name{font-size:1.1rem}.chat-messages{gap:12px;overflow-y:auto;padding:20px}.chat-messages,.empty-messages{display:flex;flex:1 1;flex-direction:column}.empty-messages{align-items:center;color:#9ca3af;color:var(--gray-400);justify-content:center}.empty-messages p{margin:4px 0}.message{display:flex;max-width:70%}.message.mine{margin-left:auto}.message.theirs{margin-right:auto}.message-content{border-radius:16px;padding:10px 14px;position:relative}.message.mine .message-content{background:#3b82f6;background:var(--primary);border-bottom-right-radius:4px;color:#fff}.message.theirs .message-content{background:#f3f4f6;background:var(--gray-100);border-bottom-left-radius:4px;color:#1f2937;color:var(--gray-800)}.message-content p{margin:0;word-break:break-word}.message-time{display:block;font-size:.7rem;margin-top:4px;opacity:.7}.read-indicator{color:#fffc}.chat-input{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);display:flex;gap:12px;padding:16px 20px}.chat-input input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:24px;flex:1 1;font-size:.95rem;outline:none;padding:12px 16px}.chat-input input:focus{border-color:#3b82f6;border-color:var(--primary)}.chat-input button{border-radius:24px;padding:12px 20px}.chat-placeholder{align-items:center;color:#9ca3af;color:var(--gray-400);display:flex;flex:1 1;flex-direction:column;justify-content:center}.chat-placeholder h3{color:#4b5563;color:var(--gray-600);margin-top:16px}.chat-placeholder p{color:#6b7280;color:var(--gray-500)}.teacher-monitoring-page .monitoring-container{display:flex;gap:24px;height:calc(100vh - 180px)}.teacher-list-panel{background:#fff;border-radius:12px;overflow-y:auto;padding:20px;width:280px}.teacher-list-panel h3{align-items:center;display:flex;font-size:1rem;gap:8px;margin-bottom:16px}.teacher-list{display:flex;flex-direction:column;gap:8px}.teacher-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.teacher-item:hover{background:#f3f4f6;background:var(--gray-100)}.teacher-item.active{background:#3b82f6;background:var(--primary);color:#fff}.teacher-item.inactive{opacity:.5}.teacher-avatar{align-items:center;background:#3b82f6;background:var(--primary);border-radius:50%;color:#fff;display:flex;font-weight:600;height:40px;justify-content:center;width:40px}.teacher-item.active .teacher-avatar{background:#fff;color:#3b82f6;color:var(--primary)}.teacher-info{flex:1 1}.teacher-name{display:block;font-weight:500}.teacher-info .status{font-size:.8rem}.stats-panel{background:#fff;border-radius:12px;flex:1 1;overflow-y:auto;padding:24px}.panel-header{align-items:flex-start;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.teacher-detail{align-items:center;display:flex;gap:16px}.teacher-detail .avatar{align-items:center;background:#3b82f6;background:var(--primary);border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:600;height:56px;justify-content:center;width:56px}.teacher-detail .info h3{font-size:1.4rem;margin:0}.teacher-detail .info span{color:#6b7280;color:var(--gray-500)}.date-filter{align-items:center;display:flex;gap:8px}.date-filter input{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.9rem;padding:8px 12px}.issues-section{margin:24px 0}.issues-section h4{align-items:center;color:#f59e0b;color:var(--warning);display:flex;gap:8px;margin-bottom:12px}.issues-list{display:flex;flex-direction:column;gap:8px}.issue-item{align-items:center;border-radius:8px;display:flex;font-size:.9rem;gap:10px;padding:12px 16px}.issue-item.warning{background:#fef3c7;color:#92400e}.issue-item.info{background:#dbeafe;color:#1e40af}.issue-icon{flex-shrink:0}.lessons-section h4{align-items:center;display:flex;gap:8px;margin-bottom:12px}.lesson-list{display:flex;flex-direction:column;gap:8px}.lesson-item{background:#f9fafb;background:var(--gray-50);border-radius:8px;gap:16px;padding:12px 16px}.lesson-date,.lesson-item{align-items:center;display:flex}.lesson-date{color:#4b5563;color:var(--gray-600);font-weight:500;gap:6px;min-width:70px}.lesson-info{display:flex;gap:8px}.lesson-info .class-name{background:#3b82f6;background:var(--primary);border-radius:4px;color:#fff;font-size:.8rem;padding:2px 8px}.lesson-info .subject{color:#4b5563;color:var(--gray-600);font-size:.85rem}.lesson-content{color:#4b5563;color:var(--gray-600);flex:1 1;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.placeholder{align-items:center;color:#9ca3af;color:var(--gray-400);display:flex;flex:1 1;flex-direction:column;justify-content:center}.placeholder h3{color:#4b5563;color:var(--gray-600);margin-top:16px}.counseling-page .content-cell{max-width:250px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}tr.highlight{background:#fef3c7!important}.follow-up-info{display:flex;flex-direction:column;gap:4px}.follow-up-note{background:#f3f4f6;background:var(--gray-100);border-radius:4px;font-size:.8rem;max-width:150px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.class-teachers,.follow-up-note{color:#4b5563;color:var(--gray-600)}.class-teachers{align-items:center;display:flex;font-size:.85rem;gap:6px;margin:8px 0}.class-teachers svg{color:#3b82f6;color:var(--primary)}.modal-xl{max-width:900px}.student-summary{background:#f9fafb;background:var(--gray-50);border-radius:8px;display:flex;gap:24px;margin:0 20px 16px;padding:16px 20px}.summary-item .label{color:#6b7280;color:var(--gray-500);font-size:.8rem;margin-bottom:2px}.summary-item .value{color:#1f2937;color:var(--gray-800);font-weight:500}.detail-tabs{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;gap:8px;margin-bottom:16px;padding:0 20px}.tab-btn{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#4b5563;color:var(--gray-600);cursor:pointer;display:flex;font-size:.9rem;gap:6px;margin-bottom:-1px;padding:10px 16px;transition:all .2s}.tab-btn.active,.tab-btn:hover{color:#3b82f6;color:var(--primary)}.tab-btn.active{border-bottom-color:#3b82f6;border-bottom-color:var(--primary);font-weight:500}.detail-content{max-height:400px;overflow-y:auto;padding:0 20px}.detail-list{display:flex;flex-direction:column;gap:10px}.detail-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:8px;display:flex;gap:16px;padding:12px 16px}.detail-item .date{color:#374151;color:var(--gray-700);font-weight:500;min-width:90px}.detail-item .class-name{background:#3b82f6;background:var(--primary);border-radius:4px;color:#fff;font-size:.8rem;padding:2px 8px}.detail-item .note{color:#6b7280;color:var(--gray-500);flex:1 1;font-size:.85rem}.detail-item.lesson-item{align-items:stretch;flex-direction:column}.lesson-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.lesson-content{color:#374151;color:var(--gray-700);line-height:1.6}.homework{border-top:1px dashed #e5e7eb;border-top:1px dashed var(--gray-200);color:#3b82f6;color:var(--primary);font-size:.9rem;margin-top:8px;padding-top:8px}.detail-item.test-item{justify-content:space-between}.test-name{flex:1 1;font-weight:500}.score{color:#3b82f6;color:var(--primary);font-size:1.1rem;font-weight:600}.detail-item.tuition-item{justify-content:space-between}.month{min-width:80px}.amount,.month{font-weight:500}.amount{color:#1f2937;color:var(--gray-800)}.paid{color:#6b7280;color:var(--gray-500);font-size:.9rem}.detail-item.counsel-item{align-items:stretch;flex-direction:column}.counsel-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.method{color:#6b7280;color:var(--gray-500);font-size:.85rem}.counsel-content{color:#374151;color:var(--gray-700);line-height:1.6;white-space:pre-wrap}.counsel-footer{margin-top:8px;text-align:right}.author{color:#6b7280;color:var(--gray-500);font-size:.85rem}.badge-success{background:#d1fae5;color:#065f46}.badge-danger{background:#fee2e2;color:#991b1b}.badge-warning{background:#fef3c7;color:#92400e}.badge-info{background:#dbeafe;color:#1e40af}.badge-default{background:#e5e7eb;background:var(--gray-200);color:#374151;color:var(--gray-700)}.notice-read-summary{align-items:center;background:#f9fafb;background:var(--gray-50);border-radius:8px;color:#4b5563;color:var(--gray-600);display:flex;font-size:.9rem;gap:8px;margin-bottom:16px;padding:12px 16px}.notice-read-summary svg{color:#3b82f6;color:var(--primary)}.notice-read-summary .unread-count{color:#ef4444;color:var(--danger);font-weight:500}.notice-read-summary .btn{margin-left:auto}.notice-detail-meta .target-info{background:#f3f4f6;background:var(--gray-100);border-radius:4px;font-size:.85rem;padding:2px 8px}.unread-indicator{align-items:center;color:#ef4444;color:var(--danger);display:inline-flex;font-weight:500;gap:4px;margin-left:8px}.unread-indicator svg{font-size:.9rem}.badge-outline{background:#0000;border:1px solid #d1d5db;border:1px solid var(--gray-300);color:#4b5563;color:var(--gray-600)}.register-page{min-height:100vh;padding:40px 20px}.register-container{max-width:500px}.register-form .section-title{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);color:#4b5563;color:var(--gray-600);font-size:.95rem;margin:20px 0 12px;padding-bottom:8px}.register-form .section-title:first-of-type{margin-top:0}.input-with-status{align-items:center;display:flex;position:relative}.input-with-status input{flex:1 1;padding-right:40px}.status-indicator{align-items:center;display:flex;position:absolute;right:12px}.status-indicator .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.text-success{color:#10b981;color:var(--success)}.text-danger{color:#ef4444;color:var(--danger)}.login-form small{display:block;font-size:.8rem;margin-top:4px}.login-form small.text-success{color:#10b981;color:var(--success)}.login-form small.text-danger{color:#ef4444;color:var(--danger)}.label-hint{color:#6b7280;color:var(--gray-500);font-size:.8rem;font-weight:400;margin-left:4px}.login-footer a{color:#3b82f6;color:var(--primary);font-weight:500;text-decoration:none}.login-footer a:hover{text-decoration:underline}.success-message{padding:20px 0;text-align:center}.success-message .success-icon{color:#10b981;color:var(--success);font-size:3rem;margin-bottom:16px}.success-message h3{color:#1f2937;color:var(--gray-800);margin-bottom:8px}.success-message p{color:#4b5563;color:var(--gray-600);margin-bottom:20px}.academy-info{background:#f9fafb;background:var(--gray-50);border-radius:8px;margin:20px 0;padding:16px;text-align:left}.academy-info .info-item{margin-bottom:12px}.academy-info .info-item:last-child{margin-bottom:0}.academy-info label{color:#6b7280;color:var(--gray-500);display:block;font-size:.8rem;margin-bottom:4px}.academy-info code{background:#fff;border-radius:4px;color:#3b82f6;color:var(--primary);display:block;font-size:1rem;font-weight:500;padding:8px 12px}.plan-recommendation{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #93c5fd;border-radius:12px;margin:24px 0;padding:20px;text-align:left}.plan-header{align-items:center;color:#3b82f6;color:var(--primary);gap:8px;margin-bottom:12px}.plan-header h4{font-size:1.1rem;font-weight:600;margin:0}.plan-message{color:#374151;color:var(--gray-700);font-size:.95rem;line-height:1.6;margin-bottom:16px;white-space:pre-line}.plan-features{list-style:none;margin:0;padding:0}.plan-features li{align-items:center;color:#374151;color:var(--gray-700);display:flex;font-size:.9rem;gap:8px;padding:8px 0}.plan-features li svg{color:#10b981;color:var(--success);flex-shrink:0}.info-note{background:#fef3c7;border-radius:8px;color:#6b7280;color:var(--gray-500);font-size:.85rem;margin-bottom:20px;padding:12px;text-align:left}.suggested-tests-section h5,.test-section h5{align-items:center;display:flex;gap:8px}.suggested-tests-section h5 svg,.test-section h5 svg{color:#3b82f6;color:var(--primary)}.linked-tests{display:flex;flex-direction:column;gap:12px}.linked-test-card{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:12px;padding:16px}.test-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.test-card-header .test-name{color:#1f2937;color:var(--gray-800);font-size:1rem;font-weight:600}.btn-unlink{background:none;border:none;border-radius:4px;color:#6b7280;color:var(--gray-500);cursor:pointer;padding:4px;transition:all .2s}.btn-unlink:hover{background:#ef44441a;color:#ef4444;color:var(--danger)}.test-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.stat-item{background:#fff;border-radius:8px;padding:10px 8px;text-align:center}.stat-label{color:#6b7280;color:var(--gray-500);display:block;font-size:.75rem;margin-bottom:4px}.stat-value{color:#374151;color:var(--gray-700);display:block;font-size:1.1rem}.stat-value.highlight{font-size:1.25rem}.linked-test-card .test-subject{background:#fff;border-radius:4px;color:#4b5563;color:var(--gray-600);display:inline-block;font-size:.8rem;margin-top:12px;padding:4px 10px}.section-hint{color:#6b7280;color:var(--gray-500);font-size:.85rem;margin:8px 0 12px}.suggested-tests{display:flex;flex-direction:column;gap:8px}.suggested-test-item{align-items:center;background:#f9fafb;background:var(--gray-50);border:1px dashed #d1d5db;border:1px dashed var(--gray-300);border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.suggested-test-item .test-info{align-items:center;display:flex;gap:12px}.suggested-test-item .test-name{color:#374151;color:var(--gray-700);font-weight:500}.suggested-test-item .test-subject{background:#e5e7eb;background:var(--gray-200);border-radius:4px;color:#6b7280;color:var(--gray-500);font-size:.8rem;padding:2px 8px}.btn-sm{font-size:.85rem;padding:6px 12px}.btn-outline{background:#fff;border:1px solid #3b82f6;border:1px solid var(--primary);color:#3b82f6;color:var(--primary)}.btn-outline:hover{background:#3b82f6;background:var(--primary);color:#fff}.btn-outline svg{margin-right:4px}.points-page{padding:20px}.points-page .header-actions{display:flex;gap:10px}.plan-info-card{background:#fff;border-left:4px solid #3b82f6;border-left:4px solid var(--primary);border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.plan-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.plan-header h3{font-size:1.5rem;margin-bottom:8px}.reset-date{align-items:center;color:#6b7280;color:var(--gray-500);display:flex;font-size:.9rem;gap:6px;margin-top:4px}.balance-display{text-align:right}.balance-label{color:#6b7280;color:var(--gray-500);display:block;font-size:.85rem;margin-bottom:4px}.balance-value{color:#3b82f6;color:var(--primary);display:block;font-size:2rem;font-weight:700}.points-bar{margin-top:16px}.points-info{color:#4b5563;color:var(--gray-600);display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:8px}.progress-bar{background:#e5e7eb;background:var(--gray-200);border-radius:6px;height:12px;overflow:hidden}.progress-fill{background:#3b82f6;background:var(--primary);height:100%;transition:width .3s ease}.quotas-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:16px}.quota-item{align-items:center;background:#f9fafb;background:var(--gray-50);border-radius:8px;display:flex;gap:12px;padding:16px}.quota-item>div{display:flex;flex-direction:column}.quota-label{color:#6b7280;color:var(--gray-500);font-size:.85rem}.quota-value{color:#1f2937;color:var(--gray-800);font-size:1.1rem;font-weight:600;margin-top:2px}.usage-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.usage-stat-card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;padding:20px}.usage-stat-card .stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.stat-details{display:flex;flex:1 1;flex-direction:column}.stat-details .stat-label{color:#6b7280;color:var(--gray-500);font-size:.9rem;margin-bottom:4px}.stat-details .stat-count{color:#1f2937;color:var(--gray-800);font-size:1.5rem;font-weight:700;margin-bottom:6px}.stat-breakdown{display:flex;font-size:.8rem;gap:12px;margin-bottom:4px}.stat-breakdown .free{color:#10b981;color:var(--success)}.stat-breakdown .paid{color:#f59e0b;color:var(--warning)}.stat-details .stat-cost{color:#3b82f6;color:var(--primary);font-size:.95rem;font-weight:600}.total-cost-card{background:linear-gradient(135deg,#3b82f6,#2563eb);background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-radius:12px;color:#fff;display:flex;flex-direction:column;gap:12px;padding:24px}.cost-row{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:12px 0}.cost-row:last-child{border-bottom:none}.cost-label{align-items:center;display:flex;font-size:1rem;gap:8px}.cost-value{font-size:1.2rem;font-weight:600}.cost-value.highlight{font-size:1.5rem;font-weight:700}.billing-month{background:#f3f4f6;background:var(--gray-100);border-radius:6px;color:#6b7280;color:var(--gray-500);font-size:.9rem;padding:4px 12px}.points-history-page,.points-usage-page{padding:20px}.btn-back{align-items:center;background:none;border:none;border-radius:6px;color:#4b5563;color:var(--gray-600);cursor:pointer;display:inline-flex;justify-content:center;margin-right:12px;padding:8px;transition:all .2s}.btn-back:hover{background:#e5e7eb;background:var(--gray-200);color:#1f2937;color:var(--gray-800)}.page-header>div:first-child{align-items:flex-start;display:flex}.filter-section{align-items:flex-end;background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:20px}.filter-group{display:flex;flex-direction:column;min-width:160px}.filter-group label{color:#374151;color:var(--gray-700);font-size:.85rem;font-weight:500;margin-bottom:6px}.filter-group input[type=date],.filter-group input[type=month],.filter-group select{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;font-size:.95rem;padding:10px 12px;transition:border-color .2s}.filter-group input:focus,.filter-group select:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.btn-reset{align-items:center;background:#f3f4f6;background:var(--gray-100);border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;color:#374151;color:var(--gray-700);cursor:pointer;display:flex;font-size:.95rem;gap:6px;padding:10px 16px;transition:all .2s}.btn-reset:hover{background:#e5e7eb;background:var(--gray-200)}.history-list,.usage-list{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;padding:20px}.history-item,.usage-item{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;gap:16px;padding:20px;transition:background .2s}.history-item:last-child,.usage-item:last-child{border-bottom:none}.history-item:hover,.usage-item:hover{background:#f9fafb;background:var(--gray-50)}.history-icon,.usage-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.history-content,.usage-content{display:flex;flex:1 1;flex-direction:column;gap:6px}.history-main,.usage-main{align-items:center;display:flex;justify-content:space-between}.history-reason,.usage-service{color:#1f2937;color:var(--gray-800);font-size:1rem;font-weight:600}.history-amount{font-size:1.1rem;font-weight:700}.usage-quantity{color:#4b5563;color:var(--gray-600);font-size:.95rem;font-weight:600}.history-meta,.usage-meta{color:#6b7280;color:var(--gray-500);display:flex;font-size:.85rem;gap:12px}.history-tag,.usage-month{background:#f3f4f6;background:var(--gray-100);border-radius:4px;padding:2px 8px}.history-note,.usage-description{background:#f9fafb;background:var(--gray-50);border-radius:6px;color:#4b5563;color:var(--gray-600);font-size:.85rem;margin-top:4px;padding:8px 12px}.history-balance{display:flex;flex-direction:column;gap:4px;min-width:100px;text-align:right}.history-balance .balance-label{color:#6b7280;color:var(--gray-500);font-size:.75rem}.history-balance .balance-value{color:#1f2937;color:var(--gray-800);font-size:1.1rem;font-weight:600}.usage-breakdown{display:flex;flex-direction:column;gap:6px;min-width:120px;text-align:right}.usage-row{display:flex;font-size:.9rem;gap:12px;justify-content:space-between;padding:4px 0}.usage-row.free{color:#10b981;color:var(--success)}.usage-row.paid{color:#f59e0b;color:var(--warning)}.usage-row.cost{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);font-weight:600;padding-top:8px}.cost-value{color:#3b82f6;color:var(--primary);font-weight:700}.stats-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.stat-box{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;gap:8px;padding:20px}.stat-box.free{border-left:4px solid #10b981;border-left:4px solid var(--success)}.stat-box.paid{border-left:4px solid #f59e0b;border-left:4px solid var(--warning)}.stat-box.cost{border-left:4px solid #3b82f6;border-left:4px solid var(--primary)}.stat-box .stat-label{color:#6b7280;color:var(--gray-500);font-size:.85rem}.stat-box .stat-value{color:#1f2937;color:var(--gray-800);font-size:1.8rem;font-weight:700}.pagination{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);gap:16px;justify-content:center;margin-top:24px;padding-top:24px}.btn-page,.pagination{align-items:center;display:flex}.btn-page{background:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:6px;color:#374151;color:var(--gray-700);cursor:pointer;font-size:.95rem;gap:6px;padding:8px 16px;transition:all .2s}.btn-page:hover:not(:disabled){background:#3b82f6;background:var(--primary);border-color:#3b82f6;border-color:var(--primary);color:#fff}.btn-page:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#4b5563;color:var(--gray-600);font-size:.95rem;font-weight:500}.points-charge-page{padding:20px}.tabs{border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--gray-200);margin-bottom:24px}.tab,.tabs{display:flex;gap:8px}.tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#4b5563;color:var(--gray-600);cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:12px 24px;transition:all .2s}.tab.active,.tab:hover{color:#3b82f6;color:var(--primary)}.tab.active{border-bottom-color:#3b82f6;border-bottom-color:var(--primary)}.charge-section,.match-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2fr 1fr}@media (max-width:968px){.charge-section,.match-section{grid-template-columns:1fr}}.charge-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:32px}.charge-card h3{color:#1f2937;color:var(--gray-800);font-size:1.5rem;margin-bottom:8px}.charge-card .description{color:#6b7280;color:var(--gray-500);font-size:.95rem;margin-bottom:32px}.charge-card .form-group{margin-bottom:24px}.charge-card label{color:#374151;color:var(--gray-700);display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.charge-card input[type=date],.charge-card input[type=number],.charge-card input[type=text],.charge-card textarea{border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .2s;width:100%}.charge-card input:focus,.charge-card textarea:focus{border-color:#3b82f6;border-color:var(--primary);outline:none}.amount-display{color:#3b82f6;color:var(--primary);display:block;font-size:1.2rem;font-weight:700;margin-top:8px}.btn-block{justify-content:center;width:100%}.info-box{align-items:flex-start;background:#f9fafb;background:var(--gray-50);border-left:4px solid #3b82f6;border-left:4px solid var(--primary);border-radius:12px;display:flex;gap:16px;height:-webkit-fit-content;height:fit-content;padding:24px}.info-box>svg{color:#3b82f6;color:var(--primary);flex-shrink:0;margin-top:2px}.info-box h4{color:#1f2937;color:var(--gray-800);font-size:1rem;margin-bottom:12px}.info-box ul{list-style:none;margin:0;padding:0}.info-box li{color:#4b5563;color:var(--gray-600);font-size:.9rem;padding:8px 0 8px 20px;position:relative}.info-box li:before{color:#3b82f6;color:var(--primary);content:"•";font-weight:700;left:0;position:absolute}.deposits-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.deposit-item{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;gap:16px;justify-content:space-between;padding:20px;transition:background .2s}.deposit-item:last-child{border-bottom:none}.deposit-item:hover{background:#f9fafb;background:var(--gray-50)}.deposit-info{display:flex;flex:1 1;flex-direction:column;gap:8px}.deposit-main{align-items:center;display:flex;justify-content:space-between}.deposit-amount{color:#10b981;color:var(--success);font-size:1.3rem;font-weight:700}.deposit-date{color:#6b7280;color:var(--gray-500);font-size:.85rem}.deposit-details{display:flex;flex-wrap:wrap;gap:12px}.depositor{color:#1f2937;color:var(--gray-800);font-weight:600}.memo{background:#f3f4f6;background:var(--gray-100);border-radius:4px;color:#4b5563;color:var(--gray-600);font-size:.85rem;padding:2px 8px}.suggestion{background:#ebf5ff;border-radius:6px;color:#3b82f6;color:var(--primary);font-size:.85rem;padding:8px 12px}.btn-match,.suggestion{align-items:center;display:flex;gap:6px}.btn-match{background:#10b981;background:var(--success);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s;white-space:nowrap}.btn-match:hover:not(:disabled){background:#059669;box-shadow:0 4px 8px #10b9814d;transform:translateY(-1px)}.btn-match:disabled{cursor:not-allowed;opacity:.5}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;overflow:hidden;width:100%}.modal-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);padding:32px;text-align:center}.modal-header.success{background:linear-gradient(135deg,#10b981,#059669);background:linear-gradient(135deg,var(--success) 0,#059669 100%);border-bottom:none;color:#fff}.modal-header svg{margin-bottom:16px}.modal-header h3{font-size:1.5rem;margin:0}.modal-body{padding:32px}.result-row{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;font-size:1rem;justify-content:space-between;padding:16px 0}.result-row:last-child{border-bottom:none}.result-row.total{border-top:2px solid #d1d5db;border-top:2px solid var(--gray-300);font-size:1.2rem;font-weight:600;margin-top:8px;padding-top:20px}.result-row .highlight{color:#10b981;color:var(--success);font-size:1.4rem;font-weight:700}.modal-footer{padding:0 32px 32px}.billing-detail-page,.billing-page{padding:20px}.billings-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:24px}.billing-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;cursor:pointer;padding:24px;transition:all .2s}.billing-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.billing-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.billing-header,.billing-month{align-items:center;display:flex}.billing-month{color:#1f2937;color:var(--gray-800);font-size:1.3rem;font-weight:700;gap:10px}.status-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 12px}.billing-stats{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.billing-stats .stat-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.billing-stats .stat-row.total{border-top:2px solid #e5e7eb;border-top:2px solid var(--gray-200);margin-top:8px;padding-top:12px}.stat-label{color:#4b5563;color:var(--gray-600);font-size:.9rem}.stat-value{color:#1f2937;color:var(--gray-800);font-weight:600}.stat-value.highlight{color:#3b82f6;color:var(--primary);font-size:1.3rem}.billing-actions{display:flex;gap:8px;margin-bottom:12px}.btn-confirm,.btn-download{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s}.btn-download{background:#f3f4f6;background:var(--gray-100);color:#374151;color:var(--gray-700)}.btn-download:hover{background:#e5e7eb;background:var(--gray-200)}.btn-confirm{background:#10b981;background:var(--success);color:#fff}.btn-confirm:hover{background:#059669}.billing-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);padding-top:12px;text-align:center}.view-detail{align-items:center;color:#3b82f6;color:var(--primary);display:inline-flex;font-size:.9rem;font-weight:500;gap:4px}.billing-summary-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:32px}.summary-header{align-items:center;border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--gray-200);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.summary-header>div:first-child{align-items:center;display:flex;gap:12px}.summary-header h3{font-size:1.5rem;margin:0}.summary-date{align-items:center;color:#4b5563;color:var(--gray-600);display:flex;font-size:1.1rem;font-weight:600;gap:8px}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{display:flex;flex-direction:column;gap:8px}.summary-label{color:#6b7280;color:var(--gray-500);font-size:.9rem}.summary-value{color:#1f2937;color:var(--gray-800);font-size:1.2rem;font-weight:700}.summary-value.highlight{color:#3b82f6;color:var(--primary);font-size:1.5rem}.service-breakdown-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.service-breakdown-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.service-header{gap:12px;margin-bottom:20px}.service-header,.service-icon{align-items:center;display:flex}.service-icon{border-radius:12px;height:48px;justify-content:center;width:48px}.service-name{color:#1f2937;color:var(--gray-800);font-size:1.1rem;font-weight:600}.service-stats{display:flex;flex-direction:column;gap:10px}.service-stat{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.service-stat.total{border-top:2px solid #e5e7eb;border-top:2px solid var(--gray-200);font-weight:600;margin-top:8px;padding-top:12px}.service-stat .stat-value.free{color:#10b981;color:var(--success)}.service-stat .stat-value.paid{color:#f59e0b;color:var(--warning)}.usage-table{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;padding:20px}.usage-table table{border-collapse:collapse;width:100%}.usage-table td,.usage-table th{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);padding:12px;text-align:left}.usage-table th{color:#374151;color:var(--gray-700);font-size:.9rem;font-weight:600}.usage-table tbody tr:hover,.usage-table th{background:#f9fafb;background:var(--gray-50)}.usage-table td.free{color:#10b981;color:var(--success)}.usage-table td.paid{color:#f59e0b;color:var(--warning)}.usage-table td.amount{color:#3b82f6;color:var(--primary);font-weight:600}.usage-table td.description{color:#4b5563;color:var(--gray-600);font-size:.9rem}.service-tag{background:#f3f4f6;background:var(--gray-100);border-radius:4px;display:inline-block;font-size:.85rem;font-weight:600;padding:4px 8px}.register-steps{align-items:center;display:flex;justify-content:center;margin:30px 0;padding:0 20px}.step-indicator{align-items:center;display:flex;flex-direction:column;gap:8px;opacity:.5;transition:all .3s}.step-indicator.active{opacity:1}.step-indicator.completed{opacity:.7}.step-number{align-items:center;background:#d1d5db;background:var(--gray-300);border-radius:50%;color:#fff;display:flex;font-weight:600;height:40px;justify-content:center;transition:all .3s;width:40px}.step-indicator.active .step-number{background:#3b82f6;background:var(--primary);transform:scale(1.1)}.step-indicator.completed .step-number{background:#10b981;background:var(--success)}.step-label{color:#4b5563;color:var(--gray-600);font-size:.9rem;font-weight:500}.step-indicator.active .step-label{color:#3b82f6;color:var(--primary);font-weight:600}.step-divider{background:#d1d5db;background:var(--gray-300);height:2px;margin:0 10px 30px;width:60px}.info-section{border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--gray-200);margin:30px 0 20px;padding-bottom:20px;text-align:center}.info-section svg{color:#3b82f6;color:var(--primary);margin-bottom:10px}.info-section h4{color:#1f2937;color:var(--gray-800);font-size:1.1rem;margin:0 0 8px}.info-section p{color:#4b5563;color:var(--gray-600);font-size:.9rem;margin:0}.operation-type-selector{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin:20px 0}.operation-card{background:#fff;border:2px solid #d1d5db;border:2px solid var(--gray-300);border-radius:12px;cursor:pointer;padding:24px;text-align:center;transition:all .3s}.operation-card:hover{box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.operation-card.selected,.operation-card:hover{border-color:#3b82f6;border-color:var(--primary)}.operation-card.selected{background:#eff6ff;box-shadow:0 4px 12px #3b82f633}.operation-card svg{color:#3b82f6;color:var(--primary);margin-bottom:12px}.operation-card h5{color:#1f2937;color:var(--gray-800);font-size:1.1rem;margin:0 0 8px}.operation-card p{color:#4b5563;color:var(--gray-600);font-size:.9rem;margin:0}.operation-card.selected h5{color:#3b82f6;color:var(--primary)}.form-actions{display:flex;gap:12px;margin-top:24px}.form-actions button{flex:1 1}.form-actions .btn-secondary{background:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);color:#374151;color:var(--gray-700)}.form-actions .btn-secondary:hover{background:#f9fafb;background:var(--gray-50)}.success-icon{color:#10b981;color:var(--success);margin-bottom:20px}.error-text{color:#ef4444;color:var(--danger);display:block;font-size:.85rem;margin-top:4px}.error-text.center{margin-top:12px;text-align:center}.stats-list{display:flex;flex-direction:column;gap:16px}.stats-list-item{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:120px 1fr 60px}.stats-list-label{color:#374151;color:var(--gray-700);font-size:.95rem;font-weight:500}.stats-list-bar{background:#f3f4f6;background:var(--gray-100);border-radius:14px;height:28px;overflow:hidden;position:relative}.stats-list-bar-fill{background:#3b82f6;background:var(--primary);border-radius:14px;height:100%;transition:width .5s ease}.stats-list-value{color:#1f2937;color:var(--gray-800);font-size:.95rem;font-weight:600;text-align:right}.operation-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.operation-stat-item{align-items:center;background:#f9fafb;background:var(--gray-50);border:2px solid #e5e7eb;border:2px solid var(--gray-200);border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .3s}.operation-stat-item:hover{border-color:#3b82f6;border-color:var(--primary);box-shadow:0 4px 12px #3b82f61a;transform:translateY(-2px)}.operation-icon{align-items:center;background:#fff;border-radius:12px;color:#3b82f6;color:var(--primary);display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.operation-info{flex:1 1}.operation-label{color:#4b5563;color:var(--gray-600);font-size:.9rem;margin-bottom:4px}.operation-value{color:#1f2937;color:var(--gray-800);font-size:1.5rem;font-weight:700;margin-bottom:4px}.operation-percentage{color:#3b82f6;color:var(--primary);font-size:.85rem;font-weight:600}.toggle-switch{display:inline-block;height:26px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:26px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:20px;left:3px;position:absolute;transition:.3s;width:20px}.toggle-switch input:checked+.toggle-slider{background-color:#3b82f6;background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.notification-settings{display:flex;flex-direction:column;gap:24px}.notification-card{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:12px;padding:24px}.notification-card h4{align-items:center;color:#1f2937;color:var(--gray-800);display:flex;font-size:1.1rem;gap:10px;margin:0 0 16px}.notification-card h4 svg{color:#3b82f6;color:var(--primary)}.notification-card .card-description{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);color:#4b5563;color:var(--gray-600);font-size:.9rem;margin-bottom:20px;padding-bottom:16px}.toggle-row{align-items:center;display:flex;justify-content:space-between;padding:12px 0}.toggle-row .label{color:#374151;color:var(--gray-700);font-weight:500}.toggle-row .description{color:#6b7280;color:var(--gray-500);font-size:.85rem;margin-top:2px}.sub-options{background:#f9fafb;background:var(--gray-50);border-radius:8px;margin-left:24px;margin-top:12px;padding:16px}.sub-options .checkbox-row{align-items:center;display:flex;gap:8px;padding:8px 0}.sub-options .checkbox-row input[type=checkbox]{height:18px;width:18px}.sub-options .checkbox-row label{color:#374151;color:var(--gray-700);cursor:pointer;font-size:.9rem}.point-info-box{align-items:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:16px}.point-info-box svg{color:#f59e0b;flex-shrink:0}.point-info-box .info-content{flex:1 1}.point-info-box .info-content p{color:#374151;color:var(--gray-700);font-size:.9rem;margin:0}.point-info-box .btn{white-space:nowrap}
/*# sourceMappingURL=main.bd141afe.css.map*/