body[data-view="month"] .calendar-editable-item{cursor:grab}
body[data-view="month"] .calendar-editable-item:active{cursor:grabbing}
body[data-view="month"] .calendar-editable-item::after{content:"";position:absolute;right:5px;bottom:4px;width:4px;height:4px;border:1px solid currentColor;border-radius:50%;opacity:0;transition:opacity 140ms ease}
body[data-view="month"] .calendar-editable-item:hover::after{opacity:.42}
body[data-view="month"] .calendar-dragging{opacity:.25!important;filter:saturate(.55);transform:scale(.97)!important}
body[data-view="month"] .calendar-drop-target{z-index:5;outline:2px solid color-mix(in srgb,var(--rc-primary) 65%,white);outline-offset:-2px;background:color-mix(in srgb,var(--rc-primary) 13%,var(--surface-section))!important}
body[data-view="month"] .calendar-drop-target::after{content:attr(data-drop-label);position:absolute;z-index:10;right:5px;bottom:5px;left:5px;padding:4px 5px;border-radius:5px;background:color-mix(in srgb,var(--rc-primary) 88%,#10261f);color:#f1fff7;font-size:.54rem;font-weight:850;line-height:1.2;text-align:center;pointer-events:none}
body[data-view="month"] .cal-item.work_life{--tone:#7d9fc4}
body[data-view="month"] .cal-item.other{--tone:#889b92}
.calendar-action-sheet{max-width:560px;margin:auto}
.calendar-action-sheet>h2{margin:5px 0 7px;font-size:clamp(1.35rem,4vw,2rem)}
.calendar-action-sheet>p{color:var(--rc-text-muted,var(--muted));line-height:1.45}
.calendar-action-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:20px}
.calendar-action-menu button{min-height:80px;padding:12px;border:1px solid var(--rc-border,var(--line));border-radius:12px;background:var(--rc-surface-subtle,var(--card));color:var(--rc-text,var(--ink));text-align:left}
.calendar-action-menu button:hover,.calendar-action-menu button:focus-visible{border-color:var(--rc-primary,var(--green));background:color-mix(in srgb,var(--rc-primary,var(--green)) 10%,var(--rc-surface-subtle,var(--card)))}
.calendar-action-menu button span,.calendar-action-menu button small{display:block}
.calendar-action-menu button span{font-weight:850}.calendar-action-menu button small{margin-top:4px;color:var(--rc-text-muted,var(--muted));font-size:.67rem}
.calendar-action-menu button.danger{border-color:color-mix(in srgb,var(--rc-danger,#db776c) 38%,var(--rc-border,var(--line)))}
.calendar-provenance-note{margin-top:14px!important;font-size:.68rem}
.calendar-action-sheet form{display:grid;gap:10px;margin-top:16px}
.calendar-action-sheet form label{display:grid;gap:5px;color:var(--rc-text-muted,var(--muted));font-size:.68rem;font-weight:800;letter-spacing:.03em}
.calendar-action-sheet form input,.calendar-action-sheet form select,.calendar-action-sheet form textarea{width:100%;margin:0;padding:10px 11px;border:1px solid var(--rc-border,var(--line));border-radius:9px;background:var(--rc-surface-subtle,var(--card));color:var(--rc-text,var(--ink));font:inherit;letter-spacing:0}
.calendar-action-sheet form textarea{min-height:88px;resize:vertical}
.calendar-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}
.calendar-form-actions button{min-width:90px}
.calendar-form-status{display:block;min-height:1.2em;color:var(--rc-text-muted,var(--muted))}
.calendar-delete-confirm .calendar-form-actions{margin-top:22px}
.calendar-protected-summary{display:grid;gap:3px;margin:14px 0;padding:11px 13px;border:1px solid var(--rc-border,var(--line));border-left:3px solid var(--rc-primary,var(--green));border-radius:10px;background:var(--rc-surface-subtle,var(--card))}
.calendar-protected-summary small,.calendar-protected-summary span{color:var(--rc-text-muted,var(--muted));font-size:.68rem}
.calendar-run-request-control{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--rc-primary,var(--green)) 28%,var(--rc-border,var(--line)));border-radius:11px;background:color-mix(in srgb,var(--rc-primary,var(--green)) 7%,var(--rc-surface-subtle,var(--card)))}
.calendar-run-request-control small,.calendar-run-request-control b{display:block}.calendar-run-request-control small{color:var(--rc-text-muted,var(--muted));font-size:.62rem;text-transform:uppercase;letter-spacing:.07em}.calendar-run-request-control b{font-size:.78rem}
.calendar-run-request-control button{flex:0 0 auto}
.calendar-edit-toast{position:fixed;z-index:1000;right:18px;bottom:18px;display:grid;max-width:min(390px,calc(100vw - 32px));gap:4px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--rc-primary,#67bd8f) 42%,var(--rc-border,#29483d));border-radius:12px;background:color-mix(in srgb,var(--rc-surface,#142c25) 96%,black);box-shadow:0 18px 45px rgba(0,0,0,.3);color:var(--rc-text,#edf7f1);opacity:0;transform:translateY(10px);transition:opacity 180ms ease,transform 180ms ease}
.calendar-edit-toast.visible{opacity:1;transform:none}.calendar-edit-toast b{font-size:.8rem}.calendar-edit-toast span{color:var(--rc-text-muted,#a7bcb2);font-size:.69rem;line-height:1.35}.calendar-edit-toast a{margin-top:3px;color:var(--rc-primary,#8bd5aa);font-size:.68rem;font-weight:850;text-decoration:none}
.mobile-activity-card.tone-work{--activity-tone:#7d9fc4}
@media(max-width:760px){
  .calendar-action-menu{grid-template-columns:1fr}.calendar-action-menu button{display:flex;min-height:58px;align-items:center;justify-content:space-between;text-align:left}.calendar-action-menu button small{margin:0}
  .calendar-form-actions{position:sticky;bottom:-20px;padding:10px 0 calc(8px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--rc-surface,var(--card)) 22%)}
  .calendar-run-request-control{align-items:flex-start;flex-direction:column}.calendar-run-request-control button{width:100%}
  .calendar-edit-toast{right:12px;bottom:calc(72px + env(safe-area-inset-bottom));left:12px;max-width:none}
}
@media(prefers-reduced-motion:reduce){.calendar-edit-toast,.calendar-editable-item{transition:none!important}}
