.monthly-calendar-grid{border:1px solid var(--border);background:var(--surface);border-radius:22px;margin-bottom:38px;overflow:hidden}.mcg-header{justify-content:space-between;align-items:center;gap:16px;padding:22px 26px 14px;display:flex}.mcg-nav{align-items:center;gap:16px;display:flex}.mcg-nav-btn{border:1px solid var(--border);background:var(--bg);width:38px;height:38px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;transition:background .18s,border-color .18s,transform .12s;display:inline-flex}.mcg-nav-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.mcg-nav-btn:active{transform:scale(.94)}.mcg-title{text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:180px;display:flex}.mcg-title h2{letter-spacing:-.6px;margin:0;font-size:22px;line-height:1.2}.mcg-event-count{color:var(--secondary);font-size:11px;font-weight:500}.mcg-today-btn{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:600;transition:background .18s,border-color .18s;display:inline-flex}.mcg-today-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.mcg-legend{flex-wrap:wrap;align-items:center;gap:6px 16px;padding:0 26px 18px;display:flex}.mcg-legend-item{color:var(--secondary);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.mcg-legend-item i{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.mcg-legend-item.is-application i{background:#60a5fa}.mcg-legend-item.is-late i{background:#fbbf24}.mcg-legend-item.is-exam i{background:#a78bfa}.mcg-legend-item.is-result i{background:#34d399}.mcg-legend-item.is-preference i{background:#fb7185}:root[data-theme=light] .mcg-legend-item.is-application i{background:#1d4ed8}:root[data-theme=light] .mcg-legend-item.is-late i{background:#92400e}:root[data-theme=light] .mcg-legend-item.is-exam i{background:#6d28d9}:root[data-theme=light] .mcg-legend-item.is-result i{background:#047857}:root[data-theme=light] .mcg-legend-item.is-preference i{background:#be123c}.mcg-legend-divider{background:var(--border);width:1px;height:14px;margin:0 4px}.mcg-dot-official{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.mcg-dot-estimated{box-sizing:border-box;background:0 0;border:2px dashed #fbbf24;border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.mcg-grid{padding:0 18px 18px}.mcg-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.mcg-weekday{text-align:center;color:var(--secondary);text-transform:uppercase;letter-spacing:.5px;padding:6px 0;font-size:11px;font-weight:700}.mcg-days{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.mcg-day{cursor:pointer;min-height:68px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:14px;flex-direction:column;justify-content:flex-start;align-items:center;gap:5px;padding:8px 4px 6px;font-family:inherit;transition:background .16s,border-color .16s,transform .1s;display:flex;position:relative}.mcg-day:hover{background:var(--accent-soft);border-color:var(--border)}.mcg-day:active{transform:scale(.96)}.mcg-day:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mcg-day--outside{color:var(--secondary);border-style:dashed}.mcg-day--past .mcg-day-number{color:var(--secondary)}.mcg-day--today{background:var(--accent-soft);border-color:var(--accent)}.mcg-day--today .mcg-day-number{background:var(--accent);color:var(--bg);border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-weight:800;display:inline-flex}.mcg-day--selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), 0 2px 12px -2px #4f46e530}.mcg-day--has-events{background:var(--surface-soft,var(--bg))}.mcg-day--has-events:hover{background:var(--accent-soft)}.mcg-day-number{font-size:14px;font-weight:600;line-height:1}.mcg-dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;max-width:100%;display:flex}.mcg-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:transform .15s}.mcg-dot.is-application{background:#60a5fa}.mcg-dot.is-late{background:#fbbf24}.mcg-dot.is-exam{background:#a78bfa}.mcg-dot.is-result{background:#34d399}.mcg-dot.is-preference{background:#fb7185}:root[data-theme=light] .mcg-dot.is-application{background:#1d4ed8}:root[data-theme=light] .mcg-dot.is-late{background:#92400e}:root[data-theme=light] .mcg-dot.is-exam{background:#6d28d9}:root[data-theme=light] .mcg-dot.is-result{background:#047857}:root[data-theme=light] .mcg-dot.is-preference{background:#be123c}.mcg-dot--est{opacity:.65;animation:2.4s ease-in-out infinite mcg-pulse}@keyframes mcg-pulse{0%,to{opacity:.65}50%{opacity:1}}.mcg-dot-more{color:var(--secondary);font-size:9px;font-weight:700;line-height:1}.mcg-details{border-top:1px solid var(--border);padding:22px 26px 28px;animation:.28s cubic-bezier(.22,1,.36,1) mcg-slide-in}@keyframes mcg-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mcg-details-header{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.mcg-details-header h3{letter-spacing:-.3px;text-transform:capitalize;margin:0;font-size:18px}.mcg-details-badge{background:var(--accent-soft);color:var(--accent);border-radius:20px;padding:5px 12px;font-size:11px;font-weight:650}.mcg-details-empty{color:var(--secondary);text-align:center;padding:20px;font-size:14px}.mcg-details-list{gap:10px;display:grid}.mcg-event-card{border:1px solid var(--border);background:var(--bg);border-radius:16px;grid-template-columns:4px 1fr;gap:16px;padding:18px 20px;transition:border-color .18s,box-shadow .18s;display:grid}.mcg-event-card:hover{border-color:var(--event-color,var(--accent));box-shadow:0 2px 12px -2px var(--event-soft,#4f46e510)}.mcg-event-stripe{background:var(--event-color,var(--accent));border-radius:4px;width:4px;min-height:40px}.mcg-event-content{min-width:0}.mcg-event-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.mcg-event-kind{color:var(--event-color);align-items:center;gap:5px;font-size:11px;font-weight:650;display:inline-flex}.mcg-event-kind i{background:var(--event-color);border-radius:50%;width:7px;height:7px;display:inline-block}.mcg-event-exam{color:var(--secondary);font-size:11px;font-weight:600}.mcg-event-status{border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-size:10px;font-weight:650}.mcg-event-status.is-resmi{color:var(--text);background:var(--surface)}.mcg-event-status.is-tahmini{color:#fcd34d;background:#78350f44}:root[data-theme=light] .mcg-event-status.is-tahmini{color:#78350f;background:#fef3c7}.mcg-event-card h4{letter-spacing:-.2px;overflow-wrap:anywhere;margin:0 0 5px;font-size:15px;line-height:1.4}.mcg-event-dates{color:var(--secondary);margin:0 0 10px;font-size:12px;line-height:1.6}.mcg-event-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.mcg-event-countdown{color:var(--accent);font-size:13px;font-weight:700}.mcg-event-link{color:var(--accent);align-items:center;gap:4px;font-size:12px;font-weight:600;text-decoration:none;transition:gap .15s;display:inline-flex}.mcg-event-link:hover{gap:7px}@media (max-width:700px){.mcg-header{flex-direction:column;align-items:stretch;gap:10px;padding:18px 16px 12px}.mcg-nav{justify-content:space-between}.mcg-today-btn{justify-content:center}.mcg-title{min-width:120px}.mcg-title h2{font-size:19px}.mcg-legend{gap:4px 12px;padding:0 16px 14px}.mcg-grid{padding:0 8px 12px}.mcg-days{gap:3px}.mcg-day{border-radius:10px;min-height:54px;padding:6px 2px 4px}.mcg-day-number{font-size:12px}.mcg-day--today .mcg-day-number{width:24px;height:24px;font-size:11px}.mcg-dot{width:5px;height:5px}.mcg-details{padding:16px}.mcg-details-header h3{font-size:15px}.mcg-event-card{gap:10px;padding:14px 12px}.mcg-event-card h4{font-size:13px}}@media (max-width:400px){.mcg-day{border-radius:8px;min-height:46px;padding:5px 1px 3px}.mcg-day-number{font-size:11px}.mcg-dots{gap:2px}.mcg-dot{width:4px;height:4px}.mcg-event-footer{flex-direction:column;align-items:flex-start;gap:6px}}
