.deva-dashboard-card{background:linear-gradient(135deg,#6366f114,#8b5cf60d);border:1px solid #6366f133;border-radius:20px;box-shadow:0 10px 30px -10px #6366f11f;display:flex;flex-direction:column;gap:16px;margin-top:24px;padding:24px;transition:all .3s ease}[data-theme=dark] .deva-dashboard-card{background:linear-gradient(135deg,#1e293bcc,#0f172ae6);border-color:#6366f14d;box-shadow:0 10px 30px -10px #00000080}.deva-card-header{align-items:center;display:flex;justify-content:space-between}.deva-header-info{align-items:center;display:flex;gap:16px}.deva-card-logo-ring{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 4px 16px #6366f14d;display:flex;flex-shrink:0;height:48px;justify-content:center;padding:2px;position:relative;width:48px}.deva-card-logo{background:#1e293b;border-radius:50%;height:100%;object-fit:cover;width:100%}.deva-pulse-dot{background-color:#10b981;border:2px solid #fff;border-radius:50%;bottom:2px;box-shadow:0 0 8px #10b981;height:10px;position:absolute;right:2px;width:10px}.deva-card-title-row{align-items:center;display:flex;gap:10px}.deva-card-title{color:#1e293b;color:var(--text-light-color,#1e293b);font-size:1.25rem;font-weight:700;margin:0}[data-theme=dark] .deva-card-title{color:#f8fafc}.deva-badge{background:linear-gradient(135deg,#6366f133,#8b5cf633);border:1px solid #6366f14d;border-radius:10px;color:#6366f1;font-size:.72rem;font-weight:700;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.deva-card-subtitle{color:#475569;color:var(--text-light-color,#475569);font-size:.88rem;margin:4px 0 0;opacity:.75}[data-theme=dark] .deva-card-subtitle{color:#94a3b8}.deva-card-categories{display:flex;flex-wrap:wrap;gap:8px}.deva-category-pill{background:#fff9;border:1px solid #6366f133;border-radius:20px;color:#64748b;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 16px;transition:all .2s ease}[data-theme=dark] .deva-category-pill{background:#1e293b99;border-color:#ffffff1a;color:#94a3b8}.deva-category-pill:hover{border-color:#6366f1;color:#6366f1}.deva-category-pill.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#0000;box-shadow:0 4px 12px #6366f14d;color:#fff}.deva-card-prompts{display:flex;flex-wrap:wrap;gap:10px}.deva-prompt-chip{align-items:center;background:#fffc;border:1px solid #6366f12e;border-radius:12px;color:#334155;cursor:pointer;display:inline-flex;font-size:.83rem;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}[data-theme=dark] .deva-prompt-chip{background:#1e293be6;border-color:#ffffff1a;color:#e2e8f0}.deva-prompt-chip:hover{border-color:#6366f1;box-shadow:0 4px 12px #6366f126;color:#6366f1;transform:translateY(-2px)}.prompt-icon{color:#6366f1;font-size:.8rem}.deva-card-input-form{align-items:center;display:flex;gap:10px}.deva-card-input{background:#ffffffe6;border:1px solid #6366f140;border-radius:14px;color:#1e293b;flex:1 1;font-size:.92rem;outline:none;padding:12px 18px;transition:all .2s ease}[data-theme=dark] .deva-card-input{background:#0f172acc;border-color:#6366f166;color:#f8fafc}.deva-card-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}.deva-card-submit-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:14px;box-shadow:0 4px 14px #6366f159;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.deva-card-submit-btn:hover:not(:disabled){box-shadow:0 6px 20px #6366f173;transform:translateY(-1px)}.deva-card-submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.assign-roll-card{background:linear-gradient(135deg,var(--purple) 0,var(--blue) 100%);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 12px #00000026;color:var(--text-light-color);cursor:pointer;font-size:.9rem;margin:10px 0;opacity:.9;padding:20px;transition:all .3s ease;width:100%}.assign-roll-card:hover{box-shadow:0 6px 16px #00000040;opacity:1;transform:translateY(-5px)}.assign-roll-card h3{align-items:center;display:flex;font-size:1.2rem;font-weight:600;gap:10px;margin:0 0 10px}.assign-roll-card p{font-size:.95rem;margin:5px 0;opacity:.9}.assign-roll-count{background:#fff3;border-radius:20px;display:inline-block;font-size:.9rem;font-weight:500;margin-top:10px;padding:5px 10px}.assign-roll-modal .ant-modal-content{border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;padding:0}.assign-roll-modal .ant-modal-header{background:var(--card-background-color)!important;border-bottom:1px solid var(--border-color);color:var(--text-light-color);padding:16px 24px}.assign-roll-modal .ant-modal-title{background-color:var(--card-background-color)!important;color:var(--text-light-color)!important;font-size:1.2rem;font-weight:600}.assign-roll-modal .ant-modal-body{background:var(--background-color);padding:24px}.assign-roll-modal .ant-modal-footer{background:var(--card-background-color);border-top:1px solid var(--border-color);padding:16px 24px;text-align:right}.assign-roll-modal .ant-modal-footer button{margin-bottom:0;margin-left:8px}.assign-roll-modal-content{margin-bottom:20px}.assign-roll-info{background:#f5ae3f1a;border-radius:4px;color:var(--subtext-light);font-size:.9rem;margin:10px 0;padding:10px}@media (max-width:1200px){.assign-roll-card{padding:18px}.assign-roll-modal .ant-modal-body{padding:20px}}@media (max-width:768px){.assign-roll-card{padding:16px}.assign-roll-card h3{font-size:1.1rem}.assign-roll-count{font-size:.8rem;padding:4px 8px}.assign-roll-modal .ant-modal-content{max-width:95%;width:95%}.assign-roll-modal .ant-modal-body{padding:16px}.assign-roll-modal .ant-modal-footer{padding:12px 16px}.assign-roll-modal .ant-modal-footer button{margin-bottom:8px;margin-left:4px}.assign-roll-modal .ant-modal-footer{display:flex;flex-direction:column}.assign-roll-modal .ant-modal-footer button{width:100%}}@media (max-width:480px){.assign-roll-card{padding:12px}.assign-roll-card h3{font-size:1rem}.assign-roll-count{font-size:.7rem;padding:3px 6px}.assign-roll-modal .ant-modal-content{max-width:98%;width:98%}.assign-roll-modal .ant-modal-body{padding:12px}.assign-roll-modal .ant-modal-footer{padding:10px 12px}}.dashboard-container.dark-theme .assign-roll-card{background:linear-gradient(135deg,var(--accent-color) 0,var(--modal-secondary-color) 100%);border-color:var(--border-color)}.assign-roll-card{animation:fadeInUp .4s ease;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.assign-roll-card:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.assign-roll-modal .ant-modal-footer button:focus,.assign-roll-modal .ant-modal-footer button:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.segmented-container{background-color:var(--card-primary);border:1px solid var(--border-color);border-radius:25px;box-shadow:0 4px 12px #0000001a,inset 0 0 10px #0003,inset 0 0 5px #0000001a;display:flex;gap:5px;margin-bottom:30px;max-width:-webkit-fit-content;max-width:fit-content;overflow:hidden;padding:4px;width:100%}.segmented-button{background:#0000;border:none;border-radius:25px;color:var(--text-light-color);cursor:pointer;font-size:14px;padding:8px 16px;position:relative;transition:all .3s ease;z-index:1}.segmented-button:hover{background:var(--accent-color-hover);color:#fff}.segmented-button.active{background:var(--accent-color);border:1px solid var(--accent-color);box-shadow:0 4px 12px #00000026;color:var(--white)}.segmented-button.active:after{border-radius:3px;bottom:0;content:"";left:0;opacity:.1;position:absolute;right:0;top:0;z-index:-1}@media (max-width:768px){.segmented-container{overflow-x:auto;width:100%;-ms-overflow-style:none;scrollbar-width:none}.segmented-button{flex:0 0 auto;font-size:13px;max-width:150px;min-width:100px;overflow:hidden;padding:12px 16px;text-overflow:ellipsis;white-space:nowrap}.segmented-container::-webkit-scrollbar{display:none}}@media (max-width:480px){.segmented-container{gap:2px;padding:3px}.segmented-button{font-size:12px;max-width:120px;min-width:80px;padding:10px 12px}}.billing-dashboard{background-color:var(--background-color);color:var(--text-light-color);justify-content:center;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.dashboard-header{margin-bottom:30px}.dashboard-title{font-size:2rem;font-weight:600;margin-bottom:10px}.dashboard-subtitle{color:var(--subtext-light);font-size:1rem}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:24px;gap:24px;margin-bottom:36px;padding:20px 0}.stat-card{align-items:center;background:var(--card-background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px #0003,0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;min-height:160px;overflow:hidden;padding:24px;position:relative;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 8px 24px #000,0 4px 8px #00000026;transform:translateY(-4px)}.stat-card-total{border-left:4px solid var(--primary-color)}.stat-card-paid{border-left:4px solid var(--accent-color)}.stat-card-unpaid{border-left:4px solid var(--secondary-color)}.stat-card-overdue{border-left:4px solid #ff4757;border-left:4px solid var(--danger-color,#ff4757)}.stat-icon{color:var(--primary-color);font-size:2.5rem;margin-bottom:16px}.stat-card h3{color:var(--subtext-light);font-size:1.1rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px}.stat-value{color:var(--text-light-color);font-size:1.8rem;font-weight:700;line-height:1.2;margin:0}.filters-section{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px}.filter-group{display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:200px}.filter-group label{color:var(--text-light-color);font-size:.9rem;font-weight:500}.bills-list{margin-bottom:30px}.bills-list h3{color:var(--text-light-color);font-size:1.3rem;font-weight:600;margin-bottom:20px}.loading{color:var(--subtext-light);font-size:1.1rem;padding:50px;text-align:center}.no-bills{background-color:var(--card-background-color);justify-content:center;min-height:300px;padding:150px}.bills-table-container,.no-bills{border:1px solid var(--border-color);border-radius:16px;margin:20px 0}.bills-table-container{box-shadow:0 4px 12px #0000001a;overflow-x:auto}.bills-table{background-color:var(--card-background-color);border-collapse:collapse;width:100%}.bills-table td,.bills-table th{border-bottom:1px solid var(--border-color);font-size:.95rem;padding:16px;text-align:left}.bills-table th{background:var(--primary-color);color:#fff;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.bills-table tr:hover{background-color:#ffffff0d}.student-column{background-color:var(--primary-color)!important;font-weight:600;left:0;letter-spacing:.2px;min-width:180px;position:-webkit-sticky;position:sticky;z-index:1}.student-column,.student-name{color:#fff!important;font-size:.95rem;text-shadow:0 1px 3px #0006}.student-name{line-height:1.4}.bill-row{transition:all .2s ease}.bill-row:hover{box-shadow:0 4px 12px #00000026;position:relative;transform:translateY(-2px);z-index:2}.student-info{display:flex;flex-direction:column;gap:4px}.student-name{color:var(--white)}.student-id{color:var(--subtext-light);font-family:monospace;font-size:.8rem}.template-name{color:var(--text-light-color);font-weight:600}.template-id{color:var(--subtext-light);font-family:monospace;font-size:.8rem}.amount-value{color:var(--text-light-color);font-size:1.1rem}.amount-details{color:var(--subtext-light);font-size:.85rem;margin-top:4px}.amount-type{background-color:var(--primary-color);border-radius:12px;color:#fff;font-size:.7rem;padding:2px 8px}.due-date{display:flex;flex-direction:column;gap:4px}.due-date-pill{align-items:center;background-color:#8c2a1e14;border:1px solid #8c2a1e26;border-radius:20px;display:inline-flex;gap:6px;max-width:120px;overflow:hidden;padding:6px 14px;text-overflow:ellipsis;white-space:nowrap}.due-date-pill,.due-date-text{color:var(--text-light-color)!important;font-size:.85rem;font-weight:600}.due-date.overdue .due-date-text{color:#ff4757!important;font-weight:700}.days-left{font-size:.8rem;font-weight:500}.days-left.overdue{color:#ff4757;color:var(--danger-color,#ff4757)}.days-left.warning{color:#ffa502;color:var(--warning-color,#ffa502)}.days-left.normal{color:var(--accent-color)}.status-container{align-items:center;display:flex;gap:8px;justify-content:center;min-width:120px;padding:8px 0}.actions-cell{text-align:center}.actions-container{align-items:center;display:flex;flex-direction:column;gap:8px}@media (max-width:768px){.bills-table{min-width:700px}.bill-row td{padding:12px 8px}.student-column{width:150px}}.status-with-icon{align-items:center;display:flex;gap:8px}.status-icon{font-size:1.1rem}.status-icon.paid{color:var(--accent-color)}.status-icon.unpaid{color:var(--secondary-color)}.status-icon.pending{color:#ffa502;color:var(--warning-color,#ffa502)}.status-icon.overdue{color:#ff4757;color:var(--danger-color,#ff4757)}.status-paid{background-color:#2ecc711a;color:var(--accent-color)}.status-paid,.status-unpaid{align-items:center;border-radius:12px;display:inline-flex;font-weight:500;gap:4px;padding:4px 8px}.status-unpaid{background-color:#e74c3c1a;color:var(--secondary-color)}.status-pending{background-color:#f1c40f1a;color:#ffa502;color:var(--warning-color,#ffa502)}.status-overdue,.status-pending{align-items:center;border-radius:12px;display:inline-flex;font-weight:500;gap:4px;padding:4px 8px}.status-overdue{background-color:#e74c3c1a;color:#ff4757;color:var(--danger-color,#ff4757)}.action-btn{background-color:var(--secondary-color);border:none;box-shadow:0 2px 4px #0000001a;font-weight:500;margin:0 5px;padding:10px 16px}.action-btn:hover{background-color:var(--accent-color-hover);box-shadow:0 4px 8px #0003;box-shadow:0 4px 8px #000}.action-buttons{flex-wrap:wrap;justify-content:center}.modal-overlay{background-color:#000000b3;z-index:1000}.modal-content{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:30px;position:relative;width:90%}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.modal-header h3{color:var(--text-light-color);font-size:1.3rem;font-weight:600;margin:0}.modal-close-btn{background:none;border-radius:50%;color:var(--text-light-color);font-size:1.5rem;padding:5px;transition:background-color .2s ease}.modal-close-btn:hover{background-color:var(--border-color)}.payment-gateway-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:15px;gap:15px;margin-bottom:25px}.payment-gateway-btn{align-items:center;background-color:var(--input-background-color);border:2px solid var(--border-color);border-radius:12px;color:var(--text-light-color);cursor:pointer;display:flex;flex-direction:column;font-size:1rem;gap:8px;padding:20px;text-align:center;transition:all .3s ease}.payment-gateway-btn:hover{background-color:var(--primary-color);border-color:var(--primary-color);box-shadow:0 8px 16px #000;color:#fff;transform:translateY(-2px)}.payment-icon{font-size:2rem}.class-payment-list{margin-top:20px}.classes-table-wrapper{border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px #0000001a;overflow-x:auto}.classes-table{background-color:var(--card-background-color);border-collapse:collapse;width:100%}.classes-table td,.classes-table th{border-bottom:1px solid var(--border-color);padding:16px;text-align:left}.classes-table th{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);color:#fff;font-weight:600}.classes-table tr:hover{background-color:#ffffff0d}.class-name{background-color:#476b6b4d;font-weight:600}.editable-input{background-color:var(--input-background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-light-color);padding:8px;width:100px}.action-buttons{display:flex;gap:10px}.primary-button,.secondary-button{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.primary-button{background-color:var(--accent-color);color:#fff}.primary-button:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.secondary-button{background-color:var(--secondary-color);color:#fff}.secondary-button:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.class-payment-management{margin-top:20px}.section-description{color:var(--subtext-light);font-size:.9rem;margin-bottom:20px}.classes-container{display:flex;flex-direction:column;gap:15px}.class-card{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.class-card:hover{box-shadow:0 8px 24px #000;transform:translateY(-4px)}.class-header{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);color:#fff;justify-content:space-between;padding:20px}.class-header,.class-stats{align-items:center;display:flex}.class-stats{gap:15px}.total-amount{font-weight:600}.toggle-button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;padding:5px}.class-content{padding:20px}.payments-table-wrapper{overflow-x:auto}.payments-table{background-color:var(--card-background-color);border-collapse:collapse;width:100%}.payments-table td,.payments-table th{border-bottom:1px solid var(--border-color);padding:16px;text-align:left}.payments-table th{background-color:var(--light-card);color:var(--text-light-color);font-weight:600}.payments-table tr:hover{background-color:#ffffff0d}.error-message{background-color:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#b91c1c}.error-message,.success-message{font-weight:500;margin-bottom:20px;padding:16px}.success-message{background-color:#d1fae5;border:1px solid #a7f3d0;border-radius:12px;color:#065f46}.department-badge{border-radius:15px;color:#fff;display:inline-block;font-size:.8rem;font-weight:500;padding:5px 10px;text-align:center}.readonly-text{color:var(--subtext-light);font-style:italic}.department-actions{background-color:#1430574d;border-radius:8px;margin-bottom:20px;padding:15px}.add-department-form{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:20px}.add-department-form h4{color:var(--text-light-color);margin-bottom:15px;margin-top:0}.form-group{margin-bottom:16px}.form-input{background-color:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-light-color);font-size:1rem;padding:12px;transition:all .2s ease;width:100%}.form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #8c2a1e33;outline:none}.department-autocomplete-dropdown{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #00000026;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.department-autocomplete-dropdown::-webkit-scrollbar{width:6px}.department-autocomplete-dropdown::-webkit-scrollbar-track{background:#0000}.department-autocomplete-dropdown::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.department-suggestion-item{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-light-color);cursor:pointer;display:flex;font-size:.95rem;justify-content:space-between;padding:10px 14px;transition:background-color .15s ease}.department-suggestion-item:last-child{border-bottom:none}.department-suggestion-item:hover{background-color:var(--primary-color);color:#fff}.department-suggestion-item:hover .suggestion-description{color:#ffffffb3}.suggestion-name{font-weight:500}.suggestion-description{color:var(--subtext-light);font-size:.85rem}.form-actions{gap:10px;margin-top:15px}.danger-button{background-color:var(--accent-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.danger-button:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.billing-template-manager{margin-top:20px;min-height:920px}.template-header{border-radius:10px;flex-wrap:wrap;gap:15px;margin-bottom:30px}.template-header h2{color:var(--active-text);margin:0}.refresh-btn,.toggle-form-btn{background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;margin-left:10px;padding:12px 20px;transition:all .3s ease}.refresh-btn:hover,.toggle-form-btn:hover{background-color:var(--dark-card);transform:translateY(-2px)}.refresh-btn:disabled,.toggle-form-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.billing-template-form{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px #0000001a;margin-bottom:30px;padding:25px}.form-section-title{font-size:1.2rem;padding-bottom:10px}.form-group label{font-size:.9rem}.form-input,.form-textarea{background-color:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-light-color);font-size:1rem;padding:12px;transition:all .2s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #8c2a1e33;outline:none}.form-textarea{min-height:100px}.checkbox-group{align-items:center;display:flex;gap:10px}.checkbox-label{align-items:center;color:var(--text-light-color);cursor:pointer;display:flex;font-weight:400}.checkbox-input{cursor:pointer;margin-right:8px}.checkbox-custom{border:2px solid var(--border-color);border-radius:3px;display:inline-block;height:18px;margin-right:8px;position:relative;transition:all .3s ease;width:18px}.checkbox-input:checked+.checkbox-custom:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:8px;left:5px;position:absolute;top:1px;transform:rotate(45deg);width:4px}.radio-label{font-weight:400;margin-bottom:10px;padding:12px;transition:all .3s ease}.radio-label:hover{background-color:#ffffff0d}.radio-input{cursor:pointer;margin-right:8px}.radio-custom{display:inline-block;margin-right:8px;transition:all .3s ease}.radio-input:checked+.radio-custom:after{background-color:var(--accent-color);border-radius:50%;content:"";height:8px;left:5px;position:absolute;top:5px;width:8px}.ant-checkbox{margin-right:8px}.ant-checkbox-wrapper{align-items:center;margin-right:10px}.ant-checkbox-inner{border-radius:3px}.ant-checkbox-checked .ant-checkbox-inner{background-color:var(--accent-color);border-color:var(--accent-color)}.ant-checkbox-checked:after{border:1px solid var(--accent-color)}.ant-checkbox-wrapper span{color:var(--text-light-color)}.form-actions{justify-content:flex-end;margin-top:20px}.submit-btn{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.5px;min-width:150px;padding:14px 30px;text-transform:uppercase;transition:all .3s ease}.templates-list h3{color:var(--text-light-color);font-size:1.3rem;font-weight:600;margin-bottom:20px}.template-card{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;min-height:100%;overflow:hidden;transition:all .3s ease}.template-card:hover{box-shadow:0 12px 24px #0003;transform:translateY(-5px)}.template-header{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);color:#fff;padding:20px}.template-header h4{font-size:1.2rem;margin:0}.status-badge{display:inline-block;font-size:.8rem;font-weight:500;padding:5px 12px}.status-badge.active{background-color:var(--accent-color);color:var(--text-light-color)}.status-badge.inactive{background-color:var(--secondary-color);color:var(--text-light-color)}.template-details{flex-grow:1}.template-description{color:var(--subtext-light);line-height:1.5;margin:0 0 15px}.template-meta{font-size:.9rem}.template-meta p{margin:5px 0}.template-actions{align-self:flex-end;flex-shrink:0;gap:10px;justify-content:flex-end;margin-top:auto;padding:20px;width:100%}.delete-btn,.edit-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .3s ease}.edit-btn{background-color:var(--secondary-color);color:#fff}.edit-btn:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.delete-btn{background-color:var(--accent-color);color:#fff}.delete-btn:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.tag-container{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.5rem}.tag{background-color:var(--primary-color);border-radius:12px;color:var(--text-light-color);cursor:pointer;display:inline-block;font-size:.75rem;padding:.25rem .5rem}.tag-list{gap:.25rem;margin-top:.25rem}.tag-button{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--white)}.tag-button:hover{background-color:var(--accent-color);border-color:var(--accent-color)}.tag-selection-container{margin-top:10px}.no-tags-message{color:var(--subtext-light);font-style:italic}.generate-bill-form{margin:0 auto;max-width:1200px}.generate-bill-form .dashboard-header{margin-bottom:30px;text-align:left}.generate-bill-form .dashboard-title{font-size:1.8rem;margin-bottom:10px}.generate-bill-form .dashboard-subtitle{font-size:1.1rem;margin-bottom:20px}.form-section{border-bottom:1px solid var(--border-color);padding-bottom:24px}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{font-size:1.3rem;margin-bottom:24px;margin-top:0;padding-bottom:12px}.item-row{align-items:flex-end;background-color:var(--input-background-color);display:flex;gap:17px;margin-bottom:20px;padding:20px}.item-row .form-group{flex:1 1;margin-bottom:0}.remove-item-btn{background-color:var(--accent-color);border:none;border-radius:8px;color:#fff;height:-webkit-fit-content;height:fit-content;min-width:80px;padding:12px 16px;transition:all .3s ease}.remove-item-btn:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.add-item-btn{background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;font-size:.95rem;padding:12px 20px;transition:all .3s ease}.add-item-btn:hover{background-color:var(--dark-card);transform:translateY(-2px)}.switch-group,.switch-label{align-items:center;display:flex}.switch-label{color:var(--text-light-color);cursor:pointer;font-size:1rem;font-weight:400}.switch-input{cursor:pointer;margin-right:10px}.switch-slider{background-color:var(--border-color);border-radius:10px;display:inline-block;height:20px;margin-right:10px;position:relative;transition:background-color .3s ease;width:40px}.switch-slider:before{background-color:#fff;border-radius:50%;content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:16px}.switch-input:checked+.switch-slider{background-color:var(--accent-color)}.switch-input:checked+.switch-slider:before{transform:translateX(20px)}.student-details{background-color:#1430574d;margin-top:10px;padding:20px}.student-details p{font-size:.9rem}.department-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px;margin-top:10px}.custom-checkbox{align-items:center;border:1px solid #0000;border-radius:8px;color:var(--text-light-color);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;margin:0;padding:8px 12px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.custom-checkbox:hover{background-color:#ffffff0d;border-color:var(--border-color);color:var(--subtext-light)}.custom-checkbox-input{height:0;margin:0;opacity:0;padding:0;position:absolute;width:0}.custom-checkbox-checkmark{align-items:center;background:#0000;border:2px solid var(--border-color);border-radius:4px;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;margin-right:12px;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);width:20px}.custom-checkbox-checkmark svg{color:var(--text-light-color);height:9px;opacity:0;transform:scale(.8);transition:all .15s cubic-bezier(.4,0,.2,1);width:12px}.custom-checkbox-input:checked+.custom-checkbox-checkmark{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);border-color:var(--primary-color);box-shadow:0 0 0 3px #8c2a1e1a}.custom-checkbox-input:checked+.custom-checkbox-checkmark svg{opacity:1;transform:scale(1)}.custom-checkbox-input:focus+.custom-checkbox-checkmark{border-color:var(--primary-color);box-shadow:0 0 3px #8c2a1e33}.custom-checkbox-label{color:inherit;line-height:1.4;transition:color .2s ease}.department-selection{margin-top:20px!important}.departments-label{color:var(--text-light-color);display:block;font-size:14px;font-weight:600;margin-bottom:16px}.department-checkboxes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;background:var(--card-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);gap:16px;padding:20px}.department-checkbox{padding:12px 0;transition:all .2s ease}.department-checkbox:hover{color:var(--subtext-light);transform:translateX(2px)}.all-departments-checkbox{background:var(--input-background-color);border:1px solid var(--primary-color);border-radius:8px;box-shadow:var(--box-shadow-light);margin-bottom:20px;padding:16px 20px;transition:all .2s ease}.all-departments-checkbox:hover{background:var(--card-primary);border-color:var(--accent-color-hover);box-shadow:var(--box-shadow)}.switch-group{margin-bottom:20px}.switch-group .custom-checkbox{background:var(--card-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);padding:16px 20px;transition:all .2s ease}.switch-group .custom-checkbox:hover{background:var(--card-primary);border-color:var(--primary-color);box-shadow:var(--box-shadow)}.form-section{background:var(--card-background-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--box-shadow);margin-bottom:32px;padding:24px}.form-section-title{border-bottom:2px solid var(--primary-color);color:var(--text-light-color);font-size:18px;font-weight:600;margin-bottom:20px;padding-bottom:8px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-light-color);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-input::placeholder{color:var(--placeholder-color)}.form-textarea{background:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);color:var(--text-light-color);font-family:inherit;font-size:14px;min-height:80px;padding:12px 16px;resize:vertical;transition:all .2s ease;width:100%}.form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 3px #8c2a1e1a;outline:none}.form-textarea::placeholder{color:var(--placeholder-color)}.radio-group{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}.radio-label{align-items:center;background:var(--card-background-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);color:var(--text-light-color);cursor:pointer;display:flex;font-weight:500;padding:12px 16px;transition:all .2s ease}.radio-label:hover{background:var(--card-primary);border-color:var(--primary-color);box-shadow:var(--box-shadow);color:var(--subtext-light)}.radio-input{height:0;opacity:0;position:absolute;width:0}.radio-custom{border:2px solid var(--border-color);border-radius:50%;height:18px;margin-right:10px;position:relative;transition:all .2s ease;width:18px}.radio-custom:after{background:var(--text-light-color);border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease;width:8px}.radio-input:checked+.radio-custom{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);border-color:var(--primary-color)}.radio-input:checked+.radio-custom:after{transform:translate(-50%,-50%) scale(1)}.action-btn{align-items:center;background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);border:1px solid #0000;border-radius:8px;box-shadow:0 2px 6px #0000001a;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;justify-content:center;min-width:80px;overflow:hidden;padding:10px 20px;position:relative;transition:all .3s ease}.action-btn:hover{background:linear-gradient(135deg,var(--accent-color-hover) 0,var(--primary-color) 100%)}.action-btn:hover:before{left:100%}.action-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.reject-btn{background-color:#ff4757;background-color:var(--danger-color,#ff4757);color:#fff}.reject-btn:hover{background-color:#e74c3c;box-shadow:0 4px 12px #ff47574d;transform:translateY(-2px)}.pay-btn{background-color:var(--accent-color)}.pay-btn:hover{background-color:var(--accent-color-hover);box-shadow:0 4px 12px #476b6b4d;transform:translateY(-2px)}.overdue-pay-btn{background-color:#ff4757;background-color:var(--danger-color,#ff4757);color:#fff}.overdue-pay-btn:hover{background-color:#e74c3c;box-shadow:0 4px 12px #ff47574d;transform:translateY(-2px)}.paid-badge{background-color:var(--accent-color);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:8px 16px}.modal-actions{border-top:1px solid var(--border-color);display:flex;gap:15px;justify-content:center;margin-top:20px;padding-top:20px}.cancel-btn{border-radius:8px;font-weight:500;padding:12px 24px}.cancel-btn:hover{background-color:var(--accent-color-hover);transform:translateY(-2px)}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-color-hover) 0,var(--primary-color) 100%);box-shadow:0 8px 20px #8c2a1e4d;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.add-item-btn{background:var(--input-background-color);border:2px solid var(--primary-color);border-radius:6px;color:var(--text-light-color);cursor:pointer;font-size:14px;font-weight:500;margin-bottom:20px;padding:10px 20px;transition:all .2s ease}.add-item-btn:hover{background:var(--primary-color);box-shadow:var(--box-shadow);color:var(--text-light-color);transform:translateY(-1px)}.remove-item-btn{align-self:flex-end;background:#0000;border:2px solid var(--secondary-color);border-radius:6px;color:var(--secondary-color);cursor:pointer;font-size:12px;font-weight:500;margin-left:10px;padding:8px 16px;transition:all .2s ease}.remove-item-btn:hover{background:var(--secondary-color);box-shadow:0 4px 12px #c45d4a4d;color:var(--text-light-color);transform:translateY(-1px)}.form-actions{border-top:1px solid var(--border-color);display:flex;justify-content:center;margin-top:32px;padding-top:24px}.student-details{background:var(--card-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);padding:16px}.student-details p{color:var(--text-light-color);font-size:14px;margin:8px 0}.student-details strong{color:var(--subtext-light)}.dashboard-header{margin-bottom:32px;text-align:center}.dashboard-title{color:var(--text-light-color);font-size:28px;font-weight:700;margin-bottom:8px}.dashboard-subtitle{color:var(--subtext-dark);font-size:16px;font-weight:400}@media (max-width:768px){.dashboard-stats{grid-template-columns:1fr}.filters-section{flex-direction:column;gap:15px}.filter-group{min-width:auto}.bills-table-wrapper{overflow-x:auto}.bills-table{min-width:600px}.department-checkboxes-grid{gap:12px;grid-template-columns:1fr;padding:16px}.radio-group{flex-direction:column;gap:12px}.payment-gateway-options{grid-template-columns:1fr}.custom-checkbox-checkmark{height:18px;width:18px}.custom-checkbox{font-size:13px}.item-row{align-items:stretch;flex-direction:column}.remove-item-btn{align-self:center;margin-left:0;margin-top:10px;width:-webkit-fit-content;width:fit-content}.form-section{margin-bottom:24px;padding:16px}.dashboard-title{font-size:24px}.dashboard-subtitle{font-size:14px}.pagination-controls{align-items:stretch;flex-direction:column;gap:15px}.pagination-buttons{justify-content:center}.pagination-info{text-align:center}}.custom-checkbox:focus-within .custom-checkbox-checkmark,.radio-label:focus-within .radio-custom{border-color:var(--primary-color);box-shadow:0 0 3px #8c2a1e1a}.template-preview{margin-top:16px}.template-preview-content{background:var(--card-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-light);padding:16px}.template-preview-content p{color:var(--text-light-color);font-size:14px;margin:8px 0}.template-preview-content ul{color:var(--subtext-dark);margin:8px 0;padding-left:20px}.template-preview-content li{font-size:14px;margin:4px 0}.tag-suggestions-dropdown{background-color:var(--card-background-color);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 6px #0000001a;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.tag-suggestion-item{border-bottom:1px solid var(--border-color);color:var(--text-light-color);cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.tag-suggestion-item:hover{background-color:var(--primary-color);color:#fff}.tag-suggestion-item:last-child{border-bottom:none}.description-input-container{position:relative}.form-hint{color:var(--subtext-light);font-size:.875rem;margin-bottom:10px;margin-top:5px}.pagination-controls{align-items:center;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;margin-top:20px;padding:20px 0}.pagination-info{color:var(--text-light-color);font-size:.9rem}.pagination-buttons{align-items:center;display:flex;gap:15px}.pagination-btn{background-color:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;min-width:100px;padding:10px 20px;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background-color:var(--dark-card);transform:translateY(-2px)}.pagination-btn:disabled{background-color:var(--secondary-color);cursor:not-allowed;opacity:.6}.pagination-current{color:var(--text-light-color);font-size:.95rem;font-weight:500;min-width:150px;text-align:center}@media (max-width:768px){.pagination-controls{align-items:stretch;flex-direction:column;gap:15px}.pagination-buttons{justify-content:center}.pagination-info{text-align:center}}.modal-content-large{max-width:600px;width:90%}.stripe-payment-element{padding:20px 0}.payment-info{background-color:var(--input-background-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:25px;padding:20px}.payment-info-title{border-bottom:1px solid var(--border-color);color:var(--text-light-color);font-size:1.2rem;font-weight:600;margin-bottom:15px;margin-top:0;padding-bottom:10px}.payment-info-details{display:grid;grid-gap:12px;gap:12px}.payment-info-details p{align-items:center;color:var(--text-light-color);display:flex;font-size:1rem;justify-content:space-between;margin:0}.payment-info-details strong{color:var(--subtext-light);min-width:120px;text-align:left}.payment-method-section{margin-bottom:25px}.payment-method-title{border-bottom:1px solid var(--border-color);color:var(--text-light-color);font-size:1.2rem;font-weight:600;margin-bottom:15px;margin-top:0;padding-bottom:10px}.card-element-container{align-items:center;background-color:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:center;min-height:80px;padding:15px}.card-element-placeholder{color:var(--subtext-light);font-size:.9rem;text-align:center;width:100%}.card-element-placeholder p{font-size:.85rem;margin:5px 0}.card-hint{color:var(--subtext-light);font-size:.85rem;margin-top:10px;text-align:center}.payment-actions{gap:15px;margin-top:30px;padding-top:20px}.pay-btn{background:linear-gradient(135deg,var(--accent-color) 0,var(--primary-color) 100%);border:none;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-width:140px;padding:16px 32px;transition:all .3s ease}.pay-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-color-hover) 0,var(--primary-color) 100%);box-shadow:0 8px 20px #00000026;transform:translateY(-2px)}.pay-btn:disabled{background:var(--secondary-color);cursor:not-allowed;opacity:.6;transform:none}.cancel-btn{background-color:var(--secondary-color);border:none;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:16px 32px;transition:all .3s ease}.cancel-btn:hover:not(:disabled){background-color:var(--accent-color-hover);box-shadow:0 8px 20px #00000026;transform:translateY(-2px)}.cancel-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.payment-error{background-color:#fee2e2;border:1px solid #fecaca;border-radius:12px;box-shadow:0 2px 8px #0000000d;color:#b91c1c;font-size:.95rem;margin:20px 0;padding:15px;text-align:center}.StripeElement{background-color:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px 0 #e6ebf1;padding:15px;transition:box-shadow .15s ease}.StripeElement--focus{box-shadow:0 1px 3px 0 #cfd7df}.StripeElement--invalid{border-color:#fa755a}.StripeElement--webkit-autofill{background-color:#fefde5!important}.email-modal{border-radius:20px;box-shadow:0 25px 60px #0006;max-width:680px;overflow:hidden}.email-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:18px 24px}.email-modal-header-left{align-items:center;display:flex;gap:12px}.email-app-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:10px;display:flex;height:36px;justify-content:center;width:36px}.email-modal-title{color:#fff;font-size:1.15rem;font-weight:600;letter-spacing:.3px}.email-preview-container{background:#f0f2f5;max-height:70vh;overflow-y:auto;padding:0}.email-preview{background:#fff;border-radius:0;box-shadow:none;overflow:hidden}.email-banner{background:linear-gradient(135deg,#1e3a5f,#2d5a7b 50%,#1e3a5f);overflow:hidden;padding:30px 28px;position:relative}.email-banner:before{background:radial-gradient(circle,#ffffff14 0,#0000 70%);height:300px;right:-20%;top:-50%;width:300px}.email-banner:after,.email-banner:before{border-radius:50%;content:"";position:absolute}.email-banner:after{background:radial-gradient(circle,#ffffff0d 0,#0000 70%);bottom:-30%;height:200px;left:-10%;width:200px}.email-banner-logo{align-items:center;display:flex;gap:14px;position:relative;z-index:1}.banner-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:14px;display:flex;height:48px;justify-content:center;width:48px}.banner-title{color:#fff;font-size:1.3rem;font-weight:700;letter-spacing:.5px}.email-header-info{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:20px 28px}.email-header-row{align-items:center;display:flex;font-size:14px;gap:12px;padding:8px 0}.email-header-row:not(:last-child){border-bottom:1px solid #edf2f7}.email-header-label{color:#64748b;font-size:13px;font-weight:600;letter-spacing:.5px;min-width:65px;text-transform:uppercase}.email-header-value{align-items:center;color:#1e293b;display:flex;font-weight:500;gap:8px}.sender-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.email-subject-text{color:#0f172a;font-weight:600}.email-body{padding:32px 28px}.email-greeting-section{align-items:center;display:flex;gap:14px;margin-bottom:28px}.greeting-icon{align-items:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:50%;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.greeting-text{color:#1e293b;font-size:17px;font-weight:600;margin:0}.email-content-section{margin-bottom:28px}.email-paragraph{color:#475569;font-size:15px;line-height:1.8;margin:0 0 24px}.bill-details-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #0000000f;overflow:hidden}.bill-details-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;gap:12px;padding:18px 20px}.bill-details-icon{align-items:center;background:#fff3;border-radius:10px;display:flex;height:36px;justify-content:center;width:36px}.bill-details-title{color:#fff;font-size:1.05rem;font-weight:600;margin:0}.bill-details-body{padding:16px 20px}.detail-row{align-items:center;border-radius:10px;display:flex;justify-content:space-between;padding:14px 16px;transition:background-color .2s ease}.detail-row:not(:last-child){border-bottom:1px solid #e2e8f0}.detail-row:hover{background:#fff9}.detail-label{color:#64748b;font-size:14px;font-weight:600}.detail-value{color:#1e293b;font-size:14px;font-weight:500}.applied-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.3px;padding:4px 14px}.detail-row-status{background:#0000}.email-tags-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b33;border-radius:12px;margin-top:24px;padding:16px 20px}.tags-label{color:#92400e;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.email-tag{background:#fffc;border:1px solid #f59e0b44;border-radius:20px;color:#92400e;font-size:13px;font-weight:600;padding:5px 14px;transition:all .2s ease}.email-tag:hover{background:#f59e0b;color:#fff;transform:translateY(-1px)}.email-closing{border-top:1px solid #e2e8f0;margin-top:32px;padding-top:24px}.email-closing p{color:#475569;font-size:15px;line-height:1.7;margin-bottom:8px}.closing-signature{font-size:14px!important;margin-top:16px!important}.closing-signature strong{color:#1e293b;font-size:15px}.email-footer-bar{align-items:center;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;padding:16px 28px}.footer-icon{color:#94a3b8;flex-shrink:0}.footer-info{display:flex;flex-direction:column;gap:2px}.footer-date{color:#94a3b8;font-size:12px;margin:0}.preview-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s ease}.preview-btn:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.preview-btn:disabled{cursor:not-allowed;opacity:.6}.template-card{cursor:default;transition:all .2s ease}.template-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.template-card-header{align-items:center;background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);color:#fff;display:flex;justify-content:space-between;padding:20px}.template-card-header h4{font-size:1.2rem;margin:0}.status-badge{border-radius:20px;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.active{background:#ffffff40;color:#fff}.status-badge.inactive{background:#ff96964d;color:#ffd0d0}.template-details{padding:20px}.template-description{color:var(--text-light-color);font-size:14px;line-height:1.6;margin:0 0 16px}.template-meta{color:var(--subtext-light);display:flex;flex-direction:column;font-size:13px;gap:8px}.template-meta p{margin:0}.template-meta strong{color:var(--text-light-color)}.template-actions{background:var(--card-background-color);border-radius:0 0 12px 12px;border-top:1px solid var(--border-color);display:flex;gap:8px;padding:16px 20px}.edit-btn{background:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-light-color);cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s ease}.edit-btn:hover:not(:disabled){background:var(--primary-color);border-color:var(--primary-color);color:#fff}.edit-btn:disabled{cursor:not-allowed;opacity:.6}.delete-btn{background:#ef44441a;border:1px solid #ef444433;border-radius:8px;color:#ef4444;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s ease}.delete-btn:hover:not(:disabled){background:#ef4444;border-color:#ef4444;color:#fff}.delete-btn:disabled{cursor:not-allowed;opacity:.6}.modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.email-modal .modal-content{animation:slideUp .3s ease}.modal-close-btn{align-items:center;background:#ffffff26;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close-btn:hover{background:#ffffff40}.email-client-chrome{background:#fff;border-bottom:1px solid #e2e8f0}.email-client-toolbar{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;font-size:13px;justify-content:space-between;padding:12px 20px}.email-client-toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.email-from-label,.email-to-label{color:#64748b;font-size:12px;font-weight:500}.email-from-value,.email-to-value{color:#1e293b;font-size:13px;font-weight:600}.email-client-toolbar-right,.email-date{color:#94a3b8;font-size:12px}.email-client-subject-bar{background:#fff;border-bottom:1px solid #e2e8f0;padding:10px 20px}.email-client-subject{color:#1e293b;font-size:14px;font-weight:600}.email-content-wrapper{background:#fff}.email-table{border-collapse:collapse;width:100%}.email-topbar{background:linear-gradient(135deg,#1e3a5f,#2d5a7b);padding:16px 24px}.email-logo-cell{align-items:center;display:flex;gap:12px}.email-logo-icon{align-items:center;background:#ffffff26;border-radius:10px;display:flex;height:40px;justify-content:center;width:40px}.email-logo-text{color:#fff;font-size:16px;font-weight:700;letter-spacing:.3px}.email-contact-cell{color:#fffc;font-size:13px}.email-body-table{border-collapse:collapse;width:100%}.email-body-cell{background:#fff;padding:28px 24px}.email-greeting{padding-bottom:20px}.email-salutation{color:#1e293b;font-size:16px;font-weight:600;margin:0}.email-text{padding:8px 0}.email-intro{color:#475569;font-size:15px;line-height:1.7;margin:0}.email-section-spacer{height:20px}.email-summary-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-collapse:collapse;border-radius:12px;overflow:hidden;width:100%}.email-summary-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:14px 20px}.email-summary-title{color:#fff;font-size:15px;font-weight:700;letter-spacing:.3px}.email-summary-body{padding:16px 20px}.email-summary-label{color:#64748b;font-size:14px;font-weight:500;padding:10px 0}.email-summary-value{color:#1e293b;font-size:14px;font-weight:600;padding:10px 0;text-align:right}.email-summary-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:3px 12px}.email-status-badge{border-radius:16px;font-size:13px;font-weight:600;padding:4px 14px}.status-active{background:#10b9811a;color:#059669}.status-inactive{background:#ef44441a;color:#dc2626}.email-tags-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b33;border-collapse:collapse;border-radius:12px;overflow:hidden;width:100%}.email-tags-content{padding:16px 20px}.email-tags-label{color:#92400e;display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.email-tags-row{display:flex;flex-wrap:wrap;gap:8px}.email-tag-item{background:#fffc;border:1px solid #f59e0b33;border-radius:16px;color:#92400e;font-size:13px;font-weight:600;padding:4px 14px}.email-reminder{padding:4px 0}.email-reminder-card{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1px solid #ef444433;border-collapse:collapse;border-radius:12px;overflow:hidden;width:100%}.email-reminder-icon{font-size:20px;padding:14px 20px;text-align:center;width:50px}.email-reminder-text{color:#991b1b;font-size:14px;line-height:1.6;padding:14px 20px}.email-closing-section{padding:8px 0}.email-closing-text{margin:0 0 8px}.email-closing-text,.email-thank-you{color:#475569;font-size:15px;line-height:1.7}.email-thank-you{margin:0 0 12px}.email-sign-off{color:#475569;font-size:15px;margin:0 0 12px}.email-signature{color:#1e293b;font-size:14px;margin:0}.email-footer-table{border-collapse:collapse;width:100%}.email-footer-top{padding:0 24px}.email-footer-line{background:#e2e8f0;height:1px;margin:0}.email-footer-content{background:#f8fafc;padding:20px 24px}.email-footer-left{padding-right:16px}.email-footer-brand{color:#1e293b;font-size:14px;font-weight:700;margin:0 0 6px}.email-footer-address{color:#64748b;font-size:12px;line-height:1.6;margin:0}.email-footer-right{text-align:right}.email-footer-meta{color:#94a3b8;font-size:12px;margin:0 0 2px}.email-footer-bottom{background:#f1f5f9;padding:16px 24px}.email-disclaimer{color:#94a3b8;font-size:11px;line-height:1.5;margin:0;text-align:center}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:20px;gap:20px;margin-top:20px}.loading-state,.no-bills{color:var(--subtext-light);padding:40px;text-align:center}.no-bills{font-size:15px}.template-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.toggle-form-btn{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.toggle-form-btn:hover{box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.tag-selection-container{margin-top:8px}.tag-button{margin:2px}.error-message{background:#ef44441a;border:1px solid #ef444433;border-radius:8px;color:#ef4444}.error-message,.success-message{font-size:14px;margin:12px 0;padding:12px 16px}.success-message{background:#10b9811a;border:1px solid #10b98133;border-radius:8px;color:#10b981}@media (max-width:768px){.email-modal{max-width:100%}.email-client-toolbar{align-items:flex-start;flex-direction:column;gap:4px}.email-body-cell{padding:20px 16px}.templates-grid{grid-template-columns:1fr}}.payment-method-selector{padding:0}.payment-bill-summary{background:var(--card-background-color);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:16px}.summary-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.summary-row:not(:last-child){border-bottom:1px solid var(--border-color)}.summary-label{color:var(--subtext-light);font-size:13px;font-weight:500}.summary-value{color:var(--text-light-color);font-size:14px;font-weight:600}.summary-value.amount{color:var(--primary-color);font-size:18px}.payment-methods-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:12px;gap:12px;margin-bottom:20px}.methods-title{color:var(--subtext-light);font-size:14px;font-weight:600;grid-column:1/-1;letter-spacing:.5px;margin:0 0 4px;text-transform:uppercase}.payment-method-card{align-items:center;background:var(--card-background-color);border:2px solid var(--border-color);border-radius:12px;color:var(--text-light-color);cursor:pointer;display:flex;gap:12px;padding:14px 16px;text-align:left;transition:all .2s ease}.payment-method-card:hover{background:#8c2a1e0d;border-color:var(--primary-color);box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.payment-method-card.selected{background:#8c2a1e14;border-color:var(--primary-color);box-shadow:0 0 0 2px #8c2a1e33}.method-icon-wrapper{align-items:center;border-radius:10px;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.method-info{flex:1 1;min-width:0}.method-name{font-size:14px;font-weight:600;margin-bottom:2px}.method-desc{color:var(--subtext-light);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-check{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.payment-notes-section{margin-bottom:20px}.notes-label{color:var(--subtext-light);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.notes-input{background:var(--input-background-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-light-color);font-family:inherit;font-size:13px;padding:10px 12px;resize:vertical;transition:border-color .2s;width:100%}.notes-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #8c2a1e26;outline:none}.notes-input::placeholder{color:var(--subtext-light);font-size:12px}.payment-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:center;padding-top:16px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:120px;padding:12px 28px;transition:all .2s ease}.btn-cancel{background:var(--secondary-color);color:#fff}.btn-cancel:hover{background:var(--accent-color-hover);transform:translateY(-1px)}.btn-confirm{background:var(--primary-color);color:#fff}.btn-confirm:hover{background:var(--dark-card);box-shadow:0 4px 12px #8c2a1e4d;transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.payment-confirmation{padding:0}.confirmation-summary{background:var(--card-background-color);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:24px}.confirmation-method{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:12px;margin-bottom:20px;padding-bottom:16px}.confirmation-method-name{color:var(--text-light-color);font-size:18px;font-weight:700}.confirmation-amount{margin-bottom:16px;text-align:center}.amount-label{color:var(--subtext-light);display:block;font-size:12px;margin-bottom:4px}.amount-value{color:var(--primary-color);display:block;font-size:28px;font-weight:700}.confirmation-student{margin-bottom:12px;text-align:center}.student-label{color:var(--subtext-light);display:block;font-size:12px;margin-bottom:2px}.student-name{color:var(--text-light-color);font-size:15px;font-weight:600}.confirmation-notes{background:#8c2a1e0d;border-radius:8px;color:var(--text-light-color);font-size:13px;padding:10px 14px;text-align:center}.notes-label-small{color:var(--subtext-light);font-weight:500;margin-right:6px}@media (max-width:768px){.payment-methods-grid{grid-template-columns:1fr}.payment-actions{flex-direction:column}.btn{width:100%}.modal-content{padding:20px;width:95%}}:root{--ai-primary:#6366f1;--ai-primary-glow:#6366f159;--ai-glass-bg:#ffffffa6;--ai-glass-border:#fff6;--ai-text-main:#1f2937;--ai-text-muted:#6b7280;--ai-chat-shadow:0 10px 40px -10px #00000026,0 0 1px 1px #0000000d}[data-theme=dark]{--ai-glass-bg:#181825bf;--ai-glass-border:#ffffff14;--ai-text-main:#f3f4f6;--ai-text-muted:#9ca3af;--ai-chat-shadow:0 10px 40px -10px #00000080,0 0 1px 1px #ffffff0d}.ai-assistant-wrapper{bottom:24px;font-family:inherit;position:fixed;right:24px;z-index:1000}.ai-float-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--ai-primary),#8b5cf6);border:none;border-radius:50%;box-shadow:0 4px 20px #6366f159,inset 0 1px 0 #ffffff4d;box-shadow:0 4px 20px var(--ai-primary-glow),inset 0 1px 0 #ffffff4d;color:#fff;cursor:pointer;display:flex;height:56px;justify-content:center;outline:none;overflow:visible;position:relative;transition:box-shadow .2s ease;width:56px}.ai-chat-window{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffa6;background:var(--ai-glass-bg);border:1px solid #fff6;border:1px solid var(--ai-glass-border);border-radius:20px;bottom:72px;box-shadow:0 10px 40px -10px #00000026,0 0 1px 1px #0000000d;box-shadow:var(--ai-chat-shadow);display:flex;flex-direction:column;height:520px;overflow:hidden;position:absolute;right:0;width:380px}@media (max-width:480px){.ai-chat-window{bottom:90px;height:calc(100% - 110px);left:16px;position:fixed;right:16px;width:auto}}.ai-chat-header{align-items:center;background:linear-gradient(135deg,#6366f126,#8b5cf626);border-bottom:1px solid #fff6;border-bottom:1px solid var(--ai-glass-border);display:flex;justify-content:space-between;padding:16px}.ai-header-left{align-items:center;display:flex;gap:12px}.ai-avatar-glow{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--ai-primary),#8b5cf6);border-radius:10px;box-shadow:0 0 10px #6366f159;box-shadow:0 0 10px var(--ai-primary-glow);display:flex;height:34px;justify-content:center;width:34px}.ai-chat-header h3{color:#1f2937;color:var(--ai-text-main);font-size:15px;font-weight:600;line-height:1.2;margin:0}.ai-status{align-items:center;color:#6b7280;color:var(--ai-text-muted);display:flex;font-size:11px;gap:4px}.status-dot{background-color:#10b981;border-radius:50%;box-shadow:0 0 6px #10b981;display:inline-block;height:6px;transition:background-color .3s ease,box-shadow .3s ease;width:6px}.status-dot.streaming{animation:status-pulse 1s ease-in-out infinite;background-color:#f59e0b;box-shadow:0 0 6px #f59e0b}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.4}}.ai-header-actions{display:flex;gap:6px}.header-action-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#6b7280;color:var(--ai-text-muted);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.header-action-btn:hover{background:#fff3;color:#1f2937;color:var(--ai-text-main)}.ai-chat-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.ai-chat-messages::-webkit-scrollbar{width:5px}.ai-chat-messages::-webkit-scrollbar-track{background:#0000}.ai-chat-messages::-webkit-scrollbar-thumb{background:#0000001a;border-radius:4px}[data-theme=dark] .ai-chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a}.ai-message-row{align-items:flex-end;display:flex;gap:8px;max-width:85%}.ai-message-row.user{align-self:flex-end;flex-direction:row-reverse}.ai-message-row.bot{align-self:flex-start}.msg-avatar{align-items:center;background:#6366f11a;border:1px solid #fff6;border:1px solid var(--ai-glass-border);border-radius:50%;color:#6366f1;color:var(--ai-primary);display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.ai-message-bubble{border-radius:18px;color:#1f2937;color:var(--ai-text-main);font-size:13.5px;line-height:1.5;padding:12px 16px;position:relative;word-break:break-word}.ai-message-row.bot .ai-message-bubble{background:#ffffff80;border:1px solid #ffffff4d;border-bottom-left-radius:4px;box-shadow:0 2px 10px #00000005}[data-theme=dark] .ai-message-row.bot .ai-message-bubble{background:#ffffff0a;border:1px solid #ffffff0d}.ai-message-row.user .ai-message-bubble{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--ai-primary),#8b5cf6);border-bottom-right-radius:4px;box-shadow:0 4px 15px #6366f133;color:#fff}.ai-message-bubble.error{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.ai-msg-time{color:#6b7280;color:var(--ai-text-muted);display:block;font-size:10px;margin-top:4px;text-align:right}.ai-message-row.user .ai-msg-time{color:#ffffffb3}.ai-cursor-blink{animation:blink 1s step-start infinite;color:#6366f1;color:var(--ai-primary);font-size:14px;font-weight:700}@keyframes blink{50%{opacity:0}}.ai-token-usage{align-items:center;background:#6366f108;border-top:1px solid #fff6;border-top:1px solid var(--ai-glass-border);color:#6b7280;color:var(--ai-text-muted);display:flex;font-size:10.5px;gap:6px;justify-content:center;padding:6px 16px}[data-theme=dark] .ai-token-usage{background:#6366f10f}.ai-token-usage strong{color:#1f2937;color:var(--ai-text-main);font-weight:600}.ai-token-total strong{color:#6366f1;color:var(--ai-primary)}.ai-token-divider{color:#fff6;color:var(--ai-glass-border);margin:0 2px}.ai-suggestions-bar{border-top:1px solid #fff6;border-top:1px solid var(--ai-glass-border);display:flex;gap:8px;overflow-x:auto;padding:8px 16px;scrollbar-width:none;white-space:nowrap}.ai-suggestions-bar::-webkit-scrollbar{display:none}.ai-suggestion-chip{align-items:center;background:#6366f10f;border:1px solid #6366f126;border-radius:20px;color:#6366f1;color:var(--ai-primary);cursor:pointer;display:flex;font-size:11.5px;padding:6px 12px;transition:all .2s ease}.ai-suggestion-chip:hover:not(:disabled){background:#6366f1;background:var(--ai-primary);box-shadow:0 2px 8px #6366f159;box-shadow:0 2px 8px var(--ai-primary-glow);color:#fff}.ai-suggestion-chip:disabled{cursor:not-allowed;opacity:.5}.ai-chat-input-area{background:#fff3;border-top:1px solid #fff6;border-top:1px solid var(--ai-glass-border);display:flex;gap:8px;padding:12px 16px}[data-theme=dark] .ai-chat-input-area{background:#00000026}.ai-chat-input-area input{background:#ffffff80;border:1px solid #fff6;border:1px solid var(--ai-glass-border);border-radius:12px;color:#1f2937;color:var(--ai-text-main);flex:1 1;font-size:13px;outline:none;padding:10px 14px;transition:all .2s ease}[data-theme=dark] .ai-chat-input-area input{background:#ffffff08}.ai-chat-input-area input:focus{background:#ffffffd9;border-color:#6366f1;border-color:var(--ai-primary);box-shadow:0 0 0 2px #6366f159;box-shadow:0 0 0 2px var(--ai-primary-glow)}[data-theme=dark] .ai-chat-input-area input:focus{background:#0000004d}.ai-send-btn{align-items:center;background:#6366f1;background:var(--ai-primary);border:none;border-radius:12px;box-shadow:0 2px 8px #6366f159;box-shadow:0 2px 8px var(--ai-primary-glow);color:#fff;cursor:pointer;display:flex;height:38px;justify-content:center;transition:all .2s ease;width:38px}.ai-send-btn:hover:not(:disabled){background:#4f46e5;transform:translateY(-1px)}.ai-send-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.ai-stop-btn{background:#ef4444;box-shadow:0 2px 8px #ef44444d}.ai-stop-btn:hover{background:#dc2626!important}.typing-dots{align-items:center;display:flex;gap:4px;height:16px;padding:4px 0}.typing-dots span{animation:typing-bounce 1.4s ease-in-out infinite both;background-color:#6b7280;background-color:var(--ai-text-muted);border-radius:50%;height:6px;width:6px}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.ai-message-formatted p{margin:0 0 8px}.ai-message-formatted p:last-child{margin-bottom:0}.ai-message-formatted h1,.ai-message-formatted h2,.ai-message-formatted h3{color:#1f2937;color:var(--ai-text-main);font-weight:600;margin:8px 0 4px}.ai-message-formatted h3{font-size:14px}.ai-message-formatted h2{font-size:15px}.ai-message-formatted h1{font-size:17px}.ai-message-formatted code{background:#6366f11a;border-radius:4px;color:#c084fc;font-family:monospace;font-size:12px;padding:2px 4px}.ai-list{margin:4px 0;padding-left:20px}.ai-list li{margin-bottom:4px}.ai-table-container{border:1px solid #fff6;border:1px solid var(--ai-glass-border);border-radius:8px;margin:8px 0;overflow-x:auto}.ai-table-container table{border-collapse:collapse;font-size:12px;text-align:left;width:100%}.ai-table-container th{background:#6366f114;font-weight:600}.ai-table-container td,.ai-table-container th{border-bottom:1px solid #fff6;border-bottom:1px solid var(--ai-glass-border);color:#1f2937;color:var(--ai-text-main);padding:6px 10px}.ai-table-container tr:last-child td{border-bottom:none}.deva-float-avatar{border-radius:50%;height:32px;object-fit:cover;width:32px}.deva-header-avatar,.deva-msg-avatar{border-radius:50%;height:24px;object-fit:cover;width:24px}.deva-msg-avatar{display:block}.ai-suggestions-container{background:#00000005;border-top:1px solid #fff6;border-top:1px solid var(--ai-glass-border);display:flex;flex-direction:column;gap:6px}[data-theme=dark] .ai-suggestions-container{background:#ffffff05}.ai-category-tabs{display:flex;gap:4px;overflow-x:auto;padding:8px 12px 0;scrollbar-width:none}.ai-category-tabs::-webkit-scrollbar{display:none}.ai-category-tab{background:#0000;border:1px solid #fff6;border:1px solid var(--ai-glass-border);border-radius:12px;color:#6b7280;color:var(--ai-text-muted);cursor:pointer;font-size:11px;font-weight:600;padding:4px 10px;transition:all .2s ease;white-space:nowrap}.ai-category-tab:hover{background:#6366f114;color:#6366f1;color:var(--ai-primary)}.ai-category-tab.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:linear-gradient(135deg,var(--ai-primary),#8b5cf6);border-color:#0000;box-shadow:0 2px 8px #6366f159;box-shadow:0 2px 8px var(--ai-primary-glow);color:#fff}.lightfall-container{height:100%;overflow:hidden;position:relative;width:100%}