.calendar-block{--calendar-block-line:color-mix(in srgb, var(--muted-foreground) 32%, var(--border));transition:transform var(--dur-press) var(--ease-out), box-shadow var(--dur-press) var(--ease-out), border-color var(--dur-press) var(--ease-out)}.calendar-block:active{transform:scale(.98)}@media (hover:hover) and (pointer:fine){.calendar-block:hover{--calendar-block-line:color-mix(in srgb, var(--action) 40%, var(--border));box-shadow:var(--shadow-md)}}@keyframes calendar-block-land{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--action) 38%, transparent);transform:scale(.985)}40%{box-shadow:0 0 0 4px color-mix(in srgb, var(--action) 16%, transparent);transform:none}to{transform:none;box-shadow:0 0 #0000}}.calendar-block[data-landed]{animation:calendar-block-land var(--dur-slow) var(--ease-out)}@media (prefers-reduced-motion:reduce){.calendar-block[data-landed]{animation:none}}.calendar-block[data-status=completed]:after{content:"";border-radius:inherit;background:var(--card);opacity:.4;pointer-events:none;position:absolute;inset:0}.calendar-block[data-status=completed] [data-block-corner=billing]{z-index:1}.calendar-today-col{background-color:color-mix(in oklch, var(--action) 4%, transparent)}@media (prefers-reduced-motion:reduce){.calendar-block:active{transform:none}}[data-calendar-frame]{display:none}@media (max-width:767px){#main:has([data-calendar-page]){padding-bottom:0}[data-calendar-route]{--calendar-card-drop:calc(var(--shell-content-top) - .5rem);height:auto;position:fixed;inset:.5rem 1rem}[data-calendar-frame]{z-index:32;border:1px solid var(--border);pointer-events:none;height:24px;translate:0 var(--calendar-card-drop);border-bottom:0;border-radius:24px 24px 0 0;display:block;position:absolute;top:0;left:0;right:0}[data-calendar-frame]:before{content:"";height:calc(var(--calendar-card-drop) + 1px);background-color:var(--background);transform-origin:bottom;pointer-events:auto;position:absolute;bottom:100%;left:-2px;right:-2px}[data-calendar-frame]:after{content:"";background:radial-gradient(circle at 100% 100%, transparent 23.75px, var(--background) 24.25px) left top / 24px 24px no-repeat, radial-gradient(circle at 0 100%, transparent 23.75px, var(--background) 24.25px) right top / 24px 24px no-repeat;height:24px;position:absolute;inset:-1px -1px auto}[data-calendar-head]{z-index:31;background-color:var(--card);translate:0 var(--calendar-card-drop);position:relative}body:not(:has(.topbar-slide:is([data-hold],:focus-within))) [data-calendar-route][data-away] :is([data-calendar-frame],[data-calendar-head]){translate:none}body:not(:has(.topbar-slide:is([data-hold],:focus-within))) [data-calendar-route][data-away] [data-calendar-frame]:before{scale:1 0}[data-calendar-page]{--calendar-dock-bottom:calc(var(--tabbar-clearance) + 1.125rem);--calendar-dock-drop:calc(var(--tabbar-clearance) - env(safe-area-inset-bottom,0px));--calendar-dock-inset:calc(var(--calendar-dock-bottom) - var(--calendar-dock-drop) + 3.625rem);--calendar-month-foot:calc(var(--calendar-dock-bottom) + 3.625rem)}body:not(:has(.tabbar-slide:is([data-hold],:focus-within))) [data-calendar-route][data-away] [data-calendar-dock]{translate:0 var(--calendar-dock-drop)}body:has([data-read-only-strip]) [data-calendar-route]{--calendar-card-drop:0px;height:calc(100dvh - var(--shell-content-top) - var(--tabbar-clearance) - .5rem);position:relative;inset:auto}body:has([data-read-only-strip]) [data-calendar-frame]{display:none}body:has([data-read-only-strip]) [data-calendar-page]{--calendar-dock-inset:4.75rem;--calendar-month-foot:4.75rem}body:has(.session-dock) [data-calendar-page]{--calendar-dock-bottom:calc(env(safe-area-inset-bottom,0px) + 82px + var(--tabbar-clearance) * 1.2)}[data-calendar-swipe],[data-calendar-swipe] *{touch-action:pan-y pinch-zoom}body:has([data-calendar-dock]) .feedback-fab{display:none}}@media (max-width:767px) and (prefers-reduced-motion:no-preference){[data-calendar-frame],[data-calendar-head],[data-calendar-dock]{transition:translate var(--bars-back)}[data-calendar-frame]:before{transition:scale var(--bars-back)}[data-calendar-route][data-away] :is([data-calendar-frame],[data-calendar-head],[data-calendar-dock]){transition:translate var(--bars-away)}[data-calendar-route][data-away] [data-calendar-frame]:before{transition:scale var(--bars-away)}}.visit-peek-card{animation:visit-peek-in var(--dur-quick) var(--ease-out) both;transform-origin:0 0}.visit-peek-card[data-placed]{transition:top var(--dur-move) var(--ease-out)}.visit-peek-card[data-gliding]{transition:left var(--dur-move) var(--ease-out), top var(--dur-move) var(--ease-out)}.visit-peek-sheet{animation:visit-peek-up var(--dur-slow) var(--ease-drawer) both}.visit-peek-scrim{animation:visit-peek-fade var(--dur-quick) var(--ease-out) both;background:#060a1047}@keyframes visit-peek-in{0%{opacity:0;transform:scale(.96)}}@keyframes visit-peek-up{0%{transform:translateY(100%)}}@keyframes visit-peek-fade{0%{opacity:0}}.visit-track-dot{background:var(--card);border-color:var(--border);color:var(--card);transition:background-color var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out)}.visit-track-node[data-state=done] .visit-track-dot{background:var(--success);border-color:var(--success)}.visit-track-node[data-lit] .visit-track-dot{animation:visit-track-lit .42s var(--ease-out)}.visit-track-node[data-state=miss] .visit-track-dot{background:var(--warning-soft);border-color:var(--warning);color:var(--warning-ink)}.visit-track-node[data-current][data-state=todo] .visit-track-dot{border-color:var(--action);box-shadow:0 0 0 4px var(--action-soft)}.visit-track-node[data-current][data-state=todo] .visit-track-dot:after{content:"";background:var(--action);border-radius:9999px;width:8px;height:8px}@keyframes visit-track-lit{0%{transform:scale(.7)}60%{transform:scale(1.12)}}.calendar-block[data-arrived]{box-shadow:inset 3px 0 0 var(--success)}.calendar-block[data-live=on]{--calendar-block-line:var(--action);box-shadow:inset 3px 0 0 var(--action)}.calendar-block[data-live=late],.calendar-block[data-live=ask]{--calendar-block-line:color-mix(in srgb, var(--warning) 70%, var(--border));box-shadow:inset 3px 0 0 var(--warning)}.calendar-block .live-fill{height:var(--live-progress,0%);background:color-mix(in srgb, var(--action) 14%, transparent);transition:height 1.2s var(--ease-out)}.calendar-block[data-live=soon]{animation:2.4s ease-in-out infinite calendar-block-soon}@keyframes calendar-block-soon{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 0 4px var(--action-soft)}}.calendar-block .live-tag{animation:live-tag-in var(--dur-enter) var(--ease-out) both}@keyframes live-tag-in{0%{opacity:0;transform:scale(.9)}}@media (prefers-reduced-motion:reduce){.calendar-block[data-live=soon],.calendar-block .live-tag{animation:none}.calendar-block .live-fill{transition:none}.visit-peek-card,.visit-peek-sheet,.visit-peek-scrim,.visit-track-node[data-lit] .visit-track-dot{animation:none}.visit-peek-card[data-placed],.visit-peek-card[data-gliding],.visit-track-dot{transition:none}}.gap-suggestion{background:color-mix(in srgb, var(--action-soft) 35%, transparent);animation:calm-enter var(--dur-enter) var(--ease-out) both}.gap-suggestion.gap-suggestion-leaving{animation:gap-suggestion-out .24s var(--ease-out) forwards}@keyframes gap-suggestion-out{to{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.gap-suggestion,.gap-suggestion.gap-suggestion-leaving{animation:none}}.calendar-block[data-pair-side]{transition:transform var(--dur-press) var(--ease-out), box-shadow var(--dur-press) var(--ease-out), border-color var(--dur-press) var(--ease-out), left var(--dur-move) var(--ease-out), width var(--dur-move) var(--ease-out)}.calendar-block[data-pair-chip]{padding-top:6px}.together-outline>.together-frame{transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out), background-color var(--dur-slow) var(--ease-out);border-radius:14px;position:absolute;inset:0}.together-line{border-radius:inherit;transition:opacity var(--dur-slow) var(--ease-out);position:absolute;inset:0}.together-line-solid{border:1.5px solid color-mix(in srgb, var(--action) 42%, transparent);background:color-mix(in srgb, var(--action) 4%, transparent)}.together-line-dashed{border:1.5px dashed color-mix(in srgb, var(--foreground) 26%, transparent);opacity:0}.together-outline:not([data-together=linked]) .together-line-solid{opacity:0}.together-outline:not([data-together=linked]) .together-line-dashed{opacity:1}.together-outline[data-together=dismissed]>.together-frame{opacity:0;transform:scale(.97)}.together-chip-layer{transition:opacity var(--dur-slow) var(--ease-out), visibility 0s linear 0s}.together-chip-layer[data-together=dismissed]{opacity:0;visibility:hidden;transition:opacity var(--dur-slow) var(--ease-out), visibility 0s linear var(--dur-slow)}.together-chip-row{max-width:calc(100% - 8px);top:-9px}.together-chip{background:var(--card);border:1.5px solid color-mix(in srgb, var(--action) 42%, transparent);height:18px;color:var(--action-ink);white-space:nowrap;transition:border-color var(--dur-quick) var(--ease-out), color var(--dur-quick) var(--ease-out), border-style 0s;border-radius:999px;align-items:center;gap:4px;padding:0 7px 0 5px;font-size:10.5px;font-weight:650;line-height:1;display:inline-flex;position:relative}.together-chip:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.together-chip>.together-rings{flex:none;width:13px;height:13px;overflow:visible}.together-rings circle{transition:transform var(--dur-move) var(--ease-out)}.together-chip-layer:not([data-together=linked]) .together-chip{border-style:dashed;border-color:color-mix(in srgb, var(--foreground) 30%, transparent);color:var(--muted-foreground)}.together-chip-layer:not([data-together=linked]) .calm-ring-a{transform:translate(-3.5px)}.together-chip-layer:not([data-together=linked]) .calm-ring-b{transform:translate(3.5px)}.together-swap{grid-template-areas:"w"}.together-swap>span{transition:opacity var(--dur-quick) var(--ease-out), transform var(--dur-quick) var(--ease-out);grid-area:w}.together-unlink{opacity:0;transform:translateY(3px)}@media (hover:hover) and (pointer:fine){.together-chip-layer[data-together=linked] .together-chip:not(:disabled):has(.together-unlink):hover{border-color:color-mix(in srgb, var(--warning-ink) 55%, transparent);color:var(--warning-ink)}.together-chip:hover .together-unlink{opacity:1;transform:none}.together-chip:hover .together-word:has(+.together-unlink){opacity:0;transform:translateY(-3px)}.together-chip-layer[data-together=linked] .together-chip:has(.together-unlink):hover .calm-ring-a{transform:translate(-2px)}.together-chip-layer[data-together=linked] .together-chip:has(.together-unlink):hover .calm-ring-b{transform:translate(2px)}.together-chip-layer:not([data-together=linked]) .together-chip:hover{border-style:solid;border-color:var(--action);color:var(--action-ink)}.together-chip-layer:not([data-together=linked]) .together-chip:hover .calm-ring-a,.together-chip-layer:not([data-together=linked]) .together-chip:hover .calm-ring-b{transform:none}}.together-chip-layer[data-together=linked] .together-chip:is(:focus-visible,[data-armed]):has(.together-unlink){border-color:color-mix(in srgb, var(--warning-ink) 55%, transparent);color:var(--warning-ink)}.together-chip:is(:focus-visible,[data-armed]) .together-unlink{opacity:1;transform:none}.together-chip:is(:focus-visible,[data-armed]) .together-word:has(+.together-unlink){opacity:0;transform:translateY(-3px)}.together-ripple{border:2px solid var(--action);pointer-events:none;animation:together-ripple .6s var(--ease-out) both;border-radius:999px;position:absolute;inset:-2px}@keyframes together-ripple{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.5,2)}}.together-x{background:var(--card);border:1.5px dashed color-mix(in srgb, var(--foreground) 30%, transparent);width:18px;height:18px;color:var(--muted-foreground);animation:together-x-in .3s .15s var(--ease-out) both;transition:color var(--dur-quick) var(--ease-out), border-color var(--dur-quick) var(--ease-out);border-radius:999px;place-items:center;display:grid}.together-x:focus-visible{outline:2px solid var(--ring);outline-offset:1px}@media (hover:hover) and (pointer:fine){.together-x:hover{border-style:solid;border-color:var(--foreground);color:var(--foreground)}}@keyframes together-x-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.calendar-block[data-pair-side],.together-outline>.together-frame,.together-line,.together-chip-layer,.together-chip-layer[data-together=dismissed],.together-rings circle,.together-swap>span{transition:none}.together-ripple,.together-x{animation:none}}
