body { 
    font-family: 'Helvetica Neue', Arial, sans-serif; 
    background: #f5f7fa; 
    color: #333; 
    padding: 20px; 
}
.container { 
    max-width: 800px; 
    margin: 0 auto; 
    background: #fff; 
    padding: 25px; 
    border-radius: 12px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.05); 
}
.container h1 {
  font-size: 20px; 
  font-weight: bold; 
  background: linear-gradient(to bottom, #11aa44, #ffff00); 
  -webkit-background-clip: text; 
  -webkit-text-fill-color: transparent; 
  filter: 
    drop-shadow(1px 0px 0px #ff0000) 
    drop-shadow(-1px 0px 0px #ff0000) 
    drop-shadow(0px 1px 0px #ff0000) 
    drop-shadow(0px -1px 0px #ff0000) 
    drop-shadow(2px 2px 0px #000000);    
}
.calendar-header { 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    margin: 15px 0; 
    background: #f8f9fa; 
    padding: 10px; 
    border-radius: 6px; 
}
.nav-btn { 
    padding: 8px 16px; 
    background: #2196f3; 
    color: white; 
    border: none; 
    border-radius: 4px; 
    cursor: pointer; 
    font-weight: bold; 
}
.nav-btn:disabled { 
    background: #ccc; 
    cursor: not-allowed; 
}
.calendar-grid { 
    display: grid; 
    grid-template-columns: repeat(7, 1fr); 
    gap: 5px; 
    text-align: center; 
}
.day-header { 
    font-weight: bold; 
    background: #333; 
    color: #fff; 
    padding: 10px; 
    border-radius: 4px; 
}
.day-cell { 
    background: #fff; 
    border: 1px solid #ddd; 
    padding: 15px 5px; 
    min-height: 50px; 
    cursor: pointer; 
    border-radius: 4px; 
    position: relative; 
}
.day-cell:hover:not(.disabled):not(.blank) { 
    background: #e3f2fd; 
}
.day-cell.disabled { 
    background: #ffebee; 
    color: #c62828; 
    cursor: not-allowed; 
}
.day-cell.past { 
    background: #f5f5f5; 
    color: #999; 
    cursor: not-allowed; 
}
.day-cell.selected { 
    background: #2196f3; 
    color: white !important; 
    font-weight: bold; 
}
.day-cell.blank { 
    background: #fafafa; 
    border: none; 
    cursor: default; 
}
.status-text { 
    display: block; 
    font-size: 11px; 
    margin-top: 5px; 
    font-weight: bold; 
}
.form-group { 
    margin-bottom: 15px; 
}
.form-control { 
    width: 100%; 
    padding: 10px; 
    box-sizing: border-box; 
    border: 1px solid #ccc; 
    border-radius: 6px; 
}
.btn-submit { 
    width: 100%; 
    padding: 14px; 
    background: #2e7d32; 
    color: white; 
    border: none; 
    border-radius: 6px; 
    font-size: 16px; 
    font-weight: bold; 
    cursor: pointer; 
}
.tab-container { 
    display: flex; 
    margin-bottom: 15px; 
    border-bottom: 2px solid #ddd; 
}
.tab-btn { 
    flex: 1; 
    padding: 12px; 
    background: #f5f5f5; 
    border: none; 
    cursor: pointer; 
    font-weight: bold; 
}
.tab-btn.active { 
    background: #2196f3; 
    color: white; 
    border-radius: 6px 6px 0 0; 
}
