.calendar-header{display:flex;justify-content:space-between;align-items:center;margin:10px 0 20px;flex-wrap:wrap;gap:10px}
.calendar-nav-buttons{display:flex;gap:10px}
.calendar-nav-buttons a{padding:6px 10px;background:#e3e3e3;text-decoration:none;border-radius:4px;font-size:14px;color:#000}
.calendar-title{font-size:20px;max-width:150px;padding:8px 12px;box-shadow:0 0 4px 4px;border-radius:8px;background:rgba(30,0,0,0.42);color:#fff;font-weight:600;text-align:center;flex-grow:1}
.review-button{padding:6px 12px;background:#007bff;color:#fff;border-radius:4px;text-decoration:none;font-size:14px}
.review-button:hover{background-color:#0056b3}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:10px}
.weekday{font-weight:600;text-align:center;padding:5px 0}
.day{border:none;border-radius:10px;min-height:100px;padding:6px;cursor:pointer;background:#fff}
.day:hover{transfrom:scale(1.05);background:#f0fff0}
.day.today{background:#e6f7ff}
.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.weekday-left{font-size:10px;font-weight:600;color:#3b82f6}
.date-right{font-size:10px;font-weight:600;color:#ef4444}
.task-badge{background-color:#f1f5f9;border-left:3px solid #3b82f6;padding:4px 6px;margin:4px 0;border-radius:4px}
.task-title{font-weight:normal;color:#0f172a;margin-bottom:4px;font-size:9px;line-height:1.2}
.task-desc{font-size:8px;color:#475569;line-height:1.3;margin-top:2px;word-break:break-word;white-space:pre-wrap}

#overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:999}#taskModal{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#f0fff0;padding:14px 16px;border-radius:8px;width:90%;max-width:420px;max-height:90vh;z-index:1000;animation:fadeIn .2s ease}#taskModal h3{margin:0 0 8px;font-size:16px;color:#333}#taskModal form{display:flex;flex-direction:column;gap:6px}#taskModal label{font-size:13px;margin-top:6px;margin-bottom:2px}#taskModal input[type="text"],#taskModal input[type="number"],#taskModal textarea,#taskModal select{padding:6px;border:1px solid #ccc;border-radius:4px;font-size:13px;width:100%;box-sizing:border-box}#taskModal textarea{resize:vertical;max-height:80px}#taskModal .modal-buttons{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:10px}#taskModal .modal-buttons button{padding:6px 12px;border:none;border-radius:4px;font-size:13px;cursor:pointer;white-space:nowrap}#taskModal .modal-buttons button[type="submit"]{background:#007bff;color:#fff}#taskModal .modal-buttons button[type="submit"]:hover{background:#0056b3}#taskModal .modal-buttons button[type="button"]{background:#eee;color:#000}#taskModal .modal-buttons button[type="button"]:hover{background:#ccc}@keyframes fadeIn{from{opacity:0;transform:translate(-50%,-55%)}to{opacity:1;transform:translate(-50%,-50%)}}
.prelims-plan-form{background-color:#f9f9ff;padding:20px;border:1px solid #ddd;border-radius:12px;max-width:500px;margin:20px auto;box-shadow:0 4px 12px rgba(0,0,0,0.08);font-family:"Segoe UI",sans-serif}.prelims-plan-form label{font-size:1.1rem;font-weight:600;display:block;margin-bottom:8px;color:#2c3e50}.prelims-plan-form input[type="date"]{padding:10px;font-size:1rem;width:100%;max-width:250px;border:1px solid #ccc;border-radius:8px;margin-bottom:15px}.prelims-plan-form .note{font-size:.9rem;color:#555;margin-bottom:15px;line-height:1.4}.prelims-plan-form button{background-color:#3b82f6;color:#fff;border:none;padding:12px 20px;font-size:1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.prelims-plan-form button:hover{background-color:#2563eb}

@media(max-width:600px){.calendar-header{flex-direction:column;align-items:flex-start}.calendar-title{text-align:left;width:100%;margin-top:10px}.calendar-nav-buttons{width:100%;justify-content:space-between}.calendar-grid{grid-template-columns:repeat(2,1fr)}.day{min-height:80px}}