*{box-sizing:border-box;margin:0;padding:0}body{color:#1f2937;background-color:#f4f7fb;min-height:100vh;font-family:Arial,Helvetica,sans-serif}.header{color:#fff;background:linear-gradient(135deg,#003b70,#005596);padding:50px 7% 0;box-shadow:0 4px 15px #0000001f}.header-main{max-width:1200px;margin:0 auto 35px}.header-main h1{letter-spacing:-.5px;margin-bottom:8px;font-size:2.5rem;font-weight:700}.header-main p{color:#fffc;font-size:1rem}.tab-type{margin-bottom:20px}.select-directory-tab{gap:10px;max-width:1200px;margin:0 auto;display:flex}.directory-tab-option{color:#fffc;border-radius:8px 8px 0 0;padding:15px 22px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .25s,color .25s}.directory-tab-option:hover{color:#fff;background-color:#ffffff1f}.directory-tab-option.active{color:#003b70;background-color:#f4f7fb}.main-directory{width:90%;max-width:1200px;margin:45px auto}.search{align-items:center;gap:12px;width:100%;max-width:650px;margin-bottom:35px;display:flex}.search-bar{color:#1f2937;background-color:#fff;border:1px solid #d6dde7;border-radius:10px;outline:none;flex:1;height:48px;padding:0 18px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.search-bar::placeholder{color:#9ca3af}.search-bar:focus{border-color:#0072bc;box-shadow:0 0 0 4px #0072bc1a}.enter-search{color:#fff;cursor:pointer;background-color:#0072bc;border:none;border-radius:10px;height:48px;padding:0 24px;font-size:.95rem;font-weight:600;transition:background-color .2s,transform .15s,box-shadow .2s}.enter-search:hover{background-color:#005c99;transform:translateY(-1px);box-shadow:0 5px 14px #0072bc38}.enter-search:active{transform:translateY(0)}.student-info-container{background-color:#fff;border:1px solid #e2e8f0;border-radius:14px;width:100%;overflow:hidden;box-shadow:0 6px 25px #0f172a0f}.student-info-bar{background-color:#eef4f9;border-bottom:1px solid #dde5ed;grid-template-columns:2fr 1fr 1fr 1fr 1fr;align-items:center;min-height:60px;padding:0 24px;display:grid}.add-student{color:#000;background-color:#ccc;border:none;border-radius:10px;margin-bottom:10px;padding:8px;transition:transform .3s,color .3s,background-color .3s}.add-student:hover{cursor:pointer;background-color:#e6e3e3;transform:translateY(-3px)}.student-row{background-color:#fff;border-bottom:1px solid #edf0f3;grid-template-columns:2fr 1fr 1fr 1fr 1fr;align-items:center;min-height:68px;padding:0 24px;transition:background-color .2s,transform .2s;display:grid}.student-row:last-child{border-bottom:none}.student-row:hover{background-color:#f8fbfd}.student-name{color:#172033;font-weight:600}.student-detail{color:#64748b;font-size:.95rem}.status{border-radius:50px;width:fit-content;padding:6px 11px;font-size:.8rem;font-weight:600}.status-paid{color:#267a42;background-color:#e8f7ed}.status-unpaid{color:#b83a32;background-color:#fff0ef}.status-good{color:#1565a9;background-color:#e9f3ff}@media (width<=750px){.header{padding:35px 5% 0}.header-main h1{font-size:1.9rem}.select-directory-tab{white-space:nowrap;overflow-x:auto}.directory-tab-option{padding:14px 16px;font-size:.88rem}.main-directory{width:92%;margin-top:30px}.search{flex-direction:column;align-items:stretch}.search-bar,.enter-search{width:100%}.student-info-container{overflow-x:auto}.student-info-bar,.student-row{min-width:750px}}@media (width<=450px){.header-main h1{font-size:1.65rem}.header-main p{font-size:.9rem}}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal-overlay.active{display:flex}.modal-content{background-color:#fff;border-radius:16px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{color:#fff;background-color:#003b70;border-bottom:1px solid #004a80;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.modal-close{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;font-weight:300;transition:background-color .2s;display:flex}.modal-close:hover{background-color:#ffffff26}.modal-body{padding:28px}.add-student-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:#1f2937;font-size:.9rem;font-weight:600}.form-group input,.form-group select{color:#1f2937;background-color:#fff;border:1px solid #d6dde7;border-radius:8px;outline:none;height:44px;padding:0 16px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder{color:#9ca3af}.form-group input:focus,.form-group select:focus{border-color:#0072bc;box-shadow:0 0 0 3px #0072bc1a}.error-message{color:#b91c1c;min-height:18px;margin-top:4px;font-size:.8rem;display:block}.form-group input.error,.form-group select.error{background-color:#fef2f2;border-color:#b91c1c}.form-group input.error:focus,.form-group select.error:focus{border-color:#b91c1c;box-shadow:0 0 0 3px #b91c1c1a}.form-row{gap:16px;display:flex}.form-row .form-group{flex:1}.form-group textarea{color:#1f2937;resize:vertical;background-color:#fff;border:1px solid #d6dde7;border-radius:8px;outline:none;height:80px;padding:12px 16px;font-family:Arial,Helvetica,sans-serif;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group textarea:focus{border-color:#0072bc;box-shadow:0 0 0 3px #0072bc1a}.modal-actions{gap:12px;margin-top:8px;display:flex}.btn-cancel,.btn-submit{cursor:pointer;border:none;border-radius:8px;flex:1;height:44px;padding:0 20px;font-size:.95rem;font-weight:600;transition:background-color .2s,transform .15s}.btn-cancel{color:#374151;background-color:#e5e7eb}.btn-cancel:hover{background-color:#d1d5db}.btn-submit{color:#fff;background-color:#0072bc}.btn-submit:hover{background-color:#005c99;transform:translateY(-1px)}.btn-submit:active{transform:translateY(0)}.student-main-info{flex-direction:column;gap:6px;min-width:220px;display:flex}.student-basic-info{color:#64748b;flex-wrap:wrap;gap:12px;font-size:.9rem;display:flex}.student-stats{justify-content:flex-end;align-items:center;gap:12px;display:flex}.student-stat{text-align:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;min-width:40px;padding:10px 14px}.student-stat-label{text-transform:uppercase;letter-spacing:.4px;color:#94a3b8;margin-bottom:3px;font-size:.75rem;font-weight:600;display:block}.student-stat-value{color:#1e293b;font-size:.95rem;font-weight:700}.student-actions{align-items:center;gap:8px;display:flex}.student-action-btn{color:#0072bc;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 10px;font-size:.9rem;font-weight:600;transition:background-color .2s}.student-action-btn:hover{background-color:#eef6fc}@media (width<=800px){.student-info-bar{flex-direction:column;align-items:stretch}.student-main-info{min-width:0}.student-stats{justify-content:flex-start}.student-stat{flex:1;min-width:100px}}.remove-student{background-color:red;border-radius:5px;padding:3px}.remove-student:hover{cursor:pointer}.remove-checkboxes{display:none}.confirm-multiple-removal-btn.active{color:#fff;background-color:#9b3232;border-radius:10px;padding:8px;display:block}.confirm-multiple-removal-btn.active:hover{cursor:pointer}.remove-checkboxes{width:10px;height:auto}.student-info-container{background:0 0;flex-direction:column;gap:12px;width:100%;display:flex}.student-info-bar{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;width:100%;min-height:88px;padding:18px 22px;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid;box-shadow:0 2px 8px #0f172a0d}.student-info-bar:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 6px 18px #0f172a14}.student-main-info{flex-direction:column;justify-content:center;gap:7px;min-width:0;display:flex}.student-name{color:#172033;font-size:1.05rem;font-weight:700}.student-basic-info{color:#64748b;flex-wrap:wrap;align-items:center;gap:14px;font-size:.88rem;display:flex}.student-basic-info span{white-space:nowrap}.student-stats{grid-template-columns:minmax(105px,auto) minmax(105px,auto) 38px 20px;align-items:center;gap:10px;display:grid}.student-stat{text-align:center;color:#334155;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;min-width:105px;padding:9px 12px;font-size:.9rem;font-weight:600}.remove-student{cursor:pointer;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;font-size:1rem;transition:background-color .2s,transform .15s,border-color .2s;display:flex;background-color:#fff1f2!important}.remove-student:hover{border-color:#fca5a5;transform:scale(1.05);background-color:#ffe4e6!important}.remove-checkboxes{cursor:pointer;accent-color:#b91c1c;width:18px;height:18px;margin:0;display:none}.remove-checkboxes.active{width:18px;height:18px;display:block}.confirm-multiple-removal-btn{display:none}.confirm-multiple-removal-btn.active{color:#fff;cursor:pointer;background-color:#991b1b;border:none;border-radius:8px;justify-content:center;align-items:center;padding:9px 16px;font-size:.9rem;font-weight:600;transition:background-color .2s,transform .15s;display:inline-flex}.confirm-multiple-removal-btn.active:hover{background-color:#7f1d1d;transform:translateY(-1px)}.no-results{text-align:center;color:#7b8797;padding:50px 20px;font-size:1rem}@media (width<=850px){.student-info-bar{grid-template-columns:1fr;gap:16px}.student-stats{grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) 38px 20px;width:100%}}@media (width<=550px){.student-info-bar{gap:14px;padding:16px}.student-name{font-size:1rem}.student-basic-info{gap:8px;font-size:.82rem}.student-stats{grid-template-columns:1fr 1fr 38px;gap:8px}.student-stat{min-width:0;padding:8px 6px;font-size:.82rem}.remove-checkboxes{grid-column:1/-1;justify-self:end}.remove-checkboxes.active{display:block}}.student-payment-status{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:150px;padding:10px 14px;display:flex}.payment-checkbox{cursor:pointer;accent-color:#15803d;width:20px;height:20px;margin-bottom:2px}.payment-status-label{color:#64748b;text-transform:uppercase;letter-spacing:.3px;text-align:center;font-size:.72rem;font-weight:600}.payment-status-text{color:#334155;font-size:.82rem;font-weight:700}.event-list{flex-direction:column;max-height:520px;display:flex;overflow:hidden auto}.event-list::-webkit-scrollbar{width:7px}.event-list::-webkit-scrollbar-track{background:0 0}.event-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.event-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}
