*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f3f5f8;color:#1f2937}.login{max-width:380px;margin:12vh auto;background:white;padding:28px;border-radius:14px;box-shadow:0 10px 30px #0001}.login input,.form input,.form select{width:100%;padding:11px;margin:7px 0 14px;border:1px solid #d1d5db;border-radius:8px}.btn{background:#0f2a44;color:white;padding:10px 14px;border:0;border-radius:8px;text-decoration:none;display:inline-block;cursor:pointer}.danger{background:#b91c1c}.layout{display:flex;min-height:100vh}.sidebar{width:230px;background:#0f2a44;color:white;padding:22px}.sidebar a{display:block;color:white;text-decoration:none;padding:11px;border-radius:8px;margin:5px 0}.sidebar a:hover{background:#1d4266}.main{flex:1;padding:22px}.cards{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:14px}.card{background:white;padding:18px;border-radius:12px;box-shadow:0 4px 12px #0000000d}.card b{font-size:24px}.table{width:100%;border-collapse:collapse;background:white;border-radius:12px;overflow:hidden}.table th,.table td{padding:11px;border-bottom:1px solid #eee;text-align:left}.badge{padding:5px 9px;border-radius:20px;font-size:12px}.available{background:#fee2e2;color:#991b1b}.followup{background:#fef3c7;color:#92400e}.active{background:#dcfce7;color:#166534}.filter{background:white;padding:12px;border-radius:12px;margin-bottom:12px;display:flex;gap:8px;flex-wrap:wrap}.filter select,.filter input{padding:9px;border:1px solid #ddd;border-radius:8px}.map{height:76vh;border-radius:14px;overflow:hidden;background:#ddd}.form{background:white;padding:18px;border-radius:12px;max-width:720px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}@media(max-width:800px){.layout{display:block}.sidebar{width:100%}.cards{grid-template-columns:repeat(2,1fr)}.map{height:70vh}}
.form textarea{width:100%;padding:11px;margin:7px 0 14px;border:1px solid #d1d5db;border-radius:8px;font-family:Arial,sans-serif}.map-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px}.map-grid .map{height:76vh}.school-panel{background:white;border-radius:14px;overflow:hidden;height:76vh;display:flex;flex-direction:column}.school-panel-head{padding:14px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;gap:8px;align-items:center}.school-panel-head span{font-size:13px;color:#6b7280}.school-list{overflow:auto;padding:8px}.school-list-item{width:100%;display:block;text-align:left;background:#fff;border:1px solid #eee;border-radius:10px;padding:10px;margin-bottom:8px;cursor:pointer}.school-list-item:hover{background:#f8fafc;border-color:#cbd5e1}.school-list-title{font-weight:700;color:#111827;font-size:14px}.school-list-meta,.school-list-phone{font-size:12px;color:#6b7280;margin-top:3px}.empty-list{padding:14px;color:#6b7280}.popup-actions{display:flex;gap:6px;margin-top:10px}.popup-actions a{background:#0f2a44;color:white;text-decoration:none;border-radius:7px;padding:6px 8px;font-size:12px}.popup-school{min-width:210px}@media(max-width:1100px){.map-grid{grid-template-columns:1fr}.school-panel{height:280px}.map-grid .map{height:65vh}}

/* SmartMap address + district list below map */
.school-panel-bottom{margin-top:14px;height:auto;max-height:360px;background:white;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.school-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;max-height:300px;overflow:auto;padding:10px}.school-list-grid .school-list-item{margin-bottom:0}.map{height:62vh}.school-list-address{font-size:12px;color:#4b5563;margin-top:4px;line-height:1.35}.school-list-code{font-size:12px;color:#6b7280;margin-top:3px}.school-list-actions{font-size:12px;margin-top:5px}.school-list-actions a{color:#0f2a44;text-decoration:none;font-weight:700}.school-list-actions a:hover{text-decoration:underline}@media(max-width:800px){.school-list-grid{grid-template-columns:1fr}.map{height:60vh}.school-panel-bottom{max-height:420px}.school-list-grid{max-height:360px}}

.school-list-click{all:unset;display:block;cursor:pointer;width:100%}.school-list-click:hover .school-list-title{text-decoration:underline}
