.cal-container{max-width:1200px;margin:0 auto;padding:24px 0}.cal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.cal-header h1{margin:0}.cal-nav-btn{padding:8px 20px;border:1px solid #e0e0e0;border-radius:8px;text-decoration:none;color:#5C4ADC;font-size:14px;font-weight:500;transition:all .2s}.cal-nav-btn:hover{background:#F0EEFF;border-color:#5C4ADC}.cal-actions{display:flex;gap:8px;margin-bottom:16px}.cal-print-btn{padding:8px 20px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;transition:all .2s}.cal-print-btn:hover{border-color:#5C4ADC;color:#5C4ADC}.cal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cal-month{min-width:0}.cal-month-title{font-weight:600;font-size:16px;text-align:center;margin-bottom:8px;color:#5C4ADC;text-transform:capitalize}.cal-table{width:100%;border-collapse:collapse;table-layout:fixed}.cal-table th{font-size:11px;font-weight:600;color:#999}.cal-day,.cal-table th{text-align:center;padding:4px 0}.cal-day{font-size:13px;cursor:default;position:relative}.cal-clickable{cursor:pointer}.cal-clickable:hover{background:#F0EEFF;border-radius:4px}.cal-today{background:#5C4ADC;color:#fff;border-radius:50%;font-weight:700}.cal-weekend{color:#FF4D4F}.cal-today.cal-weekend{color:#fff}.cal-empty{color:transparent}.cal-event-dots{display:flex;justify-content:center;gap:2px;margin-top:1px}.cal-event-dot{width:4px;height:4px;border-radius:50%;display:inline-block}.cal-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:1000}.cal-modal{background:#fff;border-radius:12px;padding:24px;width:420px;max-width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.2)}.cal-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.cal-modal-header h3{margin:0;font-size:16px}.cal-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:0;line-height:1}.cal-event-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.cal-event-item{display:flex;align-items:center;gap:10px;padding:8px;background:#f9f9f9;border-radius:8px}.cal-event-color{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cal-event-info{flex:1;display:flex;flex-direction:column}.cal-event-title{font-size:14px;font-weight:500}.cal-event-time{font-size:12px;color:#666;font-family:SF Mono,Roboto Mono,Consolas,monospace}.cal-event-actions{display:flex;gap:4px}.cal-event-actions button{background:none;border:none;cursor:pointer;font-size:14px;padding:2px}.cal-add-event{display:flex;flex-direction:column;gap:8px}.cal-event-input{padding:8px 12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none}.cal-event-input:focus{border-color:#5C4ADC}.cal-time-input{max-width:140px}.cal-color-picker{display:flex;gap:8px}.cal-color-btn{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .2s}.cal-color-active{border-color:#333;transform:scale(1.2)}.cal-add-btn{padding:8px 20px;background:#5C4ADC;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500}.cal-add-btn:hover{background:#4A3BC0}@media (max-width:768px){.cal-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media (max-width:480px){.cal-grid{grid-template-columns:1fr}.cal-header{flex-direction:column;gap:12px}}@media print{.no-print{display:none!important}.cal-container{padding:0}.cal-nav-btn{display:none}.cal-header{justify-content:center}.cal-grid{grid-template-columns:repeat(3,1fr);gap:16px}.cal-clickable:hover{background:none}.cal-event-dots{display:none}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}