
.cal-root{max-width:1100px;margin:0 auto;color:#1a2940}
.cal-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 15px}
.cal-toolbar h2{margin:0;min-width:175px;font-size:21px}
.cal-toolbar button{padding:10px 13px}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:16px 0 24px}
.cal-weekday{text-align:center;font-weight:700;font-size:12px;color:#64748b;padding:7px 0}
.cal-blank{min-height:60px}
.cal-day{display:flex;flex-direction:column;gap:6px;align-items:stretch;background:#fff;color:#243550;padding:9px 8px;min-height:74px;text-align:left;border:1px solid #e2e8f0;border-radius:10px;font-weight:600;min-width:0}
.cal-day:hover{background:#f1f7ff}.cal-today{outline:2px solid #91c0ff}
.cal-selected{background:#dfefff;border-color:#2579d5}
.cal-date{font-size:14px}
.cal-dots{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.cal-dot{display:inline-block;width:11px;height:11px;flex:none;border-radius:50%;border:1px solid #0001;vertical-align:middle}
.cal-item{background:white;border:1px solid #e0e7f0;border-left:6px solid #8a94a6;border-radius:14px;padding:14px 17px;margin-bottom:11px;box-shadow:0 2px 6px #20344b08;overflow-wrap:anywhere}
.cal-entry-title{display:flex;align-items:center;gap:10px;font-size:17px}
.cal-entry-title strong{flex:1;min-width:0}
.cal-entry-title input{width:22px;height:22px;flex:none;margin:0}
.cal-meta{font-size:12px;color:#61718a;line-height:1.5;margin:6px 0}
.cal-details{font-size:14px;white-space:pre-wrap;margin:11px 0}
.cal-people{font-size:12px;color:#4b607a;line-height:1.6;margin:6px 0}
.cal-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.cal-inline-actions button{padding:7px 12px;font-size:12px}
.cal-root h3{font-size:16px;color:#273850;margin:15px 0}
.cal-dialog{max-height:88vh;overflow:auto;max-width:min(550px,96vw);width:540px}
.cal-editor{display:grid;gap:12px}
.cal-editor h2{margin:0}
.cal-field{display:grid;gap:5px;margin:0;font-size:13px;font-weight:650;color:#374963}
.cal-field input,.cal-field select,.cal-field textarea{width:100%;padding:10px}
.cal-field textarea{min-height:85px}
.cal-recipients{border:1px solid #e1e8f0;border-radius:11px;max-height:190px;overflow:auto;padding:12px;display:grid;gap:9px}
.cal-recipient{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:450}
.cal-recipient input{width:18px;height:18px;margin:0;flex:none}
.cal-role-list{display:grid;gap:9px;max-height:57vh;overflow:auto;margin:14px 0}
.cal-role-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(170px,1fr);align-items:center;gap:10px;margin:0;font-size:13px}
.cal-role-row select{max-width:100%;padding:9px}
@media(max-width:650px){
.cal-grid{gap:3px}.cal-blank{min-height:49px}.cal-day{min-height:59px;padding:6px 4px}
.cal-date{font-size:12px}.cal-dot{width:9px;height:9px}
.cal-toolbar{gap:6px}.cal-toolbar h2{font-size:18px;min-width:auto}
.cal-toolbar button{font-size:12px;padding:9px}
.cal-role-row{grid-template-columns:1fr;gap:3px}
}