.month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:20px}.weekday{padding:13px;text-align:center;background:#eaf0e5;font-size:11px;font-weight:650}.calendar-day{min-height:115px;padding:9px;border-top:1px solid var(--line);border-right:1px solid var(--line)}.calendar-day>strong{font-size:11px;color:var(--muted)}.calendar-day.today{background:#f2f8ed}.calendar-visit{display:block;text-align:left;width:100%;border:0;border-left:3px solid #66a8a0;border-radius:4px;background:#eff5ed;padding:7px;margin-top:5px;font-size:10px;overflow-wrap:anywhere;color:#164e50}.calendar-visit small{display:block;font-size:9px;margin-top:4px}.calendar-visit.cancelled{background:#f8e8e8;border-color:#b65e64}.calendar-visit.rearrange{background:#fbf1df;border-color:#cda953}.calendar-visit.completed{background:#dfeedd;border-color:#588054}.day-group{margin:25px 0}.day-group>h3{margin:12px 0}.visit-card{padding:17px;background:white;border:1px solid var(--line);border-radius:8px;margin:8px 0;display:flex;align-items:center;gap:15px;flex-wrap:wrap;font-size:13px}.visit-card>div:first-child{flex:1;min-width:180px}.visit-card small{display:block;font-size:11px;color:var(--muted);margin-top:6px;line-height:1.7}.client-agreement{margin-top:25px;padding-top:23px;border-top:1px solid var(--line)}.client-agreement h3{margin-bottom:15px}.activity-row{padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.activity-row:last-child{border:0}.activity-row>small{display:block;color:var(--muted);font-size:10px;margin:6px 0}.mobile-page-menu,.mobile-agenda{display:none}.toolbar label{font-size:12px}.toolbar input,.toolbar select{margin-left:6px}.dialog-body .check-row{align-items:flex-start}.dialog-body .check-row input{margin-top:4px}.dialog-body form{margin-top:15px}.dialog-body .callout{margin-top:0}
@media(max-width:1100px){.month-calendar{grid-template-columns:repeat(7,minmax(75px,1fr))}.calendar-day{padding:6px;min-height:100px}.calendar-visit{font-size:9px;padding:5px}.calendar-visit small{font-size:8px}}
@media(max-width:720px){.month-calendar{display:none}.mobile-agenda{display:block}.mobile-page-menu{display:flex;align-items:center;justify-content:flex-end;gap:10px;font-size:12px;margin-bottom:17px}.mobile-page-menu select{padding:9px;border:1px solid var(--line);border-radius:6px;color:var(--teal);background:white}.visit-card .actions{width:100%}.visit-card .btn{flex:1}.toolbar{gap:8px}.toolbar .btn{font-size:10px;padding:8px 11px}.activity-row p{font-size:12px}}
