/* Life OS 0.61.4 — calm, contained calendar filters + desktop event edge resize. */

/* Universal containment. */
body.life-ui .cal614-category-popover,
body.life-ui .cal614-category-panel,
body.life-ui .cal614-google,
body.life-ui .cal614-category-popover *,
body.life-ui .cal614-category-panel *,
body.life-ui .cal614-google *{box-sizing:border-box;min-width:0}

body.life-ui .cal614-category-popover{
 overflow:hidden!important;padding:12px!important;border-radius:16px!important;
 background:color-mix(in srgb,var(--life-surface,var(--bg-elevated)) 97%,transparent)!important;
 border:1px solid var(--life-line-soft,var(--border))!important;
 box-shadow:0 18px 54px rgba(0,0,0,.14)!important;
 -webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08)
}
body.life-ui .cal614-category-popover>.cal483-category-filter{max-width:100%;max-height:100%;overflow:hidden}
body.life-ui .cal614-category-panel .cal483-category-mode{align-items:center;flex-wrap:wrap}
body.life-ui .cal614-category-panel .cal483-category-mode>div{max-width:100%;flex:0 1 auto}
body.life-ui .cal614-category-panel .cal483-category-help{
 max-width:100%;overflow-wrap:anywhere;margin-bottom:8px!important
}
body.life-ui .cal614-category-panel .cal483-category-actions{
 display:flex;flex-wrap:wrap;justify-content:flex-start;gap:4px
}
body.life-ui .cal614-category-panel .cal483-category-actions button{
 min-height:30px;padding:6px 8px!important;border-radius:9px!important;white-space:normal;text-align:center
}
body.life-ui .cal614-category-panel .cal483-category-list{
 width:100%;max-width:100%;overflow-x:hidden!important;overflow-y:auto!important;padding-right:4px
}
body.life-ui .cal614-category-panel .cal483-category-list>button{
 width:100%;max-width:100%;grid-template-columns:10px minmax(0,1fr) minmax(0,86px) 16px!important;
 overflow:hidden;padding-right:6px!important
}
body.life-ui .cal614-category-panel .cal483-category-list>button>span,
body.life-ui .cal614-category-panel .cal483-category-list>button>small{
 display:block;min-width:0;max-width:100%!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}

/* Google picker: no overflow, calmer hierarchy. */
body.life-ui .cal614-google{
 width:100%!important;max-width:min(370px,calc(100vw - 24px))!important;
 overflow:hidden!important;padding:12px!important;border-radius:16px!important
}
body.life-ui #cal472-google-popover.cal614-google{
 width:min(370px,calc(100vw - 24px))!important;max-width:min(370px,calc(100vw - 24px))!important
}
body.life-ui .cal614-google .cal613-google-head{
 display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px!important;padding:2px 2px 11px!important
}
body.life-ui .cal614-google .cal613-google-head>div{min-width:0}
body.life-ui .cal614-google .cal613-google-head strong,
body.life-ui .cal614-google .cal613-google-head small{max-width:100%;overflow-wrap:anywhere}
body.life-ui .cal614-google .cal613-google-head small{white-space:normal!important}
body.life-ui .cal614-google .cal613-google-head>span{white-space:nowrap;align-self:start}
body.life-ui .cal614-google .cal613-google-actions{
 display:flex!important;flex-wrap:wrap;gap:5px!important;padding:0 2px 10px!important
}
body.life-ui .cal614-google .cal613-google-actions button{white-space:normal;min-height:30px}
body.life-ui .cal614-google .cal613-google-list{
 width:100%;max-width:100%;max-height:min(320px,45vh);overflow-x:hidden!important;overflow-y:auto!important;padding-right:2px
}
body.life-ui .cal614-google .cal613-google-list>button{
 width:100%!important;max-width:100%!important;grid-template-columns:10px minmax(0,1fr) auto!important;gap:9px!important;
 overflow:hidden
}
body.life-ui .cal614-google .cal613-google-list span{
 min-width:0!important;max-width:100%;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important
}
body.life-ui .cal614-google .cal613-google-list b{white-space:nowrap}

/* Desktop event resizing: invisible hit zones, soft visual affordance only on hover. */
@media(min-width:821px) and (hover:hover) and (pointer:fine){
 body.life-ui .cal164-block.life-cal-resizable-v614{position:absolute;overflow:visible!important}
 body.life-ui .life-cal-resize-handle-v614{
  position:absolute;left:5px;right:5px;height:8px;z-index:6;cursor:ns-resize;touch-action:none
 }
 body.life-ui .life-cal-resize-handle-v614.top{top:-4px}
 body.life-ui .life-cal-resize-handle-v614.bottom{bottom:-4px}
 body.life-ui .life-cal-resize-handle-v614:after{
  content:"";position:absolute;left:50%;width:26px;height:2px;border-radius:999px;
  background:currentColor;opacity:0;transform:translateX(-50%);transition:opacity .14s ease
 }
 body.life-ui .life-cal-resize-handle-v614.top:after{top:3px}
 body.life-ui .life-cal-resize-handle-v614.bottom:after{bottom:3px}
 body.life-ui .cal164-block.life-cal-resizable-v614:hover .life-cal-resize-handle-v614:after,
 body.life-ui .cal164-block.life-cal-resizing-v614 .life-cal-resize-handle-v614:after{opacity:.42}
 body.life-ui .cal164-block.life-cal-resizing-v614{
  z-index:20!important;box-shadow:0 8px 24px rgba(0,0,0,.14)!important;
  transition:none!important;user-select:none
 }
 body.life-cal-resize-active-v614,body.life-cal-resize-active-v614 *{cursor:ns-resize!important;user-select:none!important}
}

/* Mobile filters stay spacious but never wider than their sheet. */
@media(max-width:820px){
 body.life-ui .mc482-filter-sheet,
 body.life-ui .mc482-filter-sheet *{min-width:0;box-sizing:border-box}
 body.life-ui .mc482-filter-sheet .cal614-category-panel,
 body.life-ui .mc482-filter-sheet .cal614-google{
  width:100%!important;max-width:100%!important;overflow:hidden!important
 }
 body.life-ui .mc482-filter-sheet .cal614-category-panel .cal483-category-mode{align-items:stretch!important}
 body.life-ui .mc482-filter-sheet .cal614-category-panel .cal483-category-mode>div{width:100%;max-width:100%}
 body.life-ui .mc482-filter-sheet .cal614-category-panel .cal483-category-actions{gap:6px}
 body.life-ui .mc482-filter-sheet .cal614-category-panel .cal483-category-list>button{
  grid-template-columns:10px minmax(0,1fr) 16px!important
 }
 body.life-ui .mc482-filter-sheet .cal614-category-panel .cal483-category-list>button>small{display:none}
 body.life-ui .mc482-filter-sheet .cal614-google{padding:10px 0 0!important}
 body.life-ui .mc482-filter-sheet .cal614-google .cal613-google-head{grid-template-columns:minmax(0,1fr) auto}
 body.life-ui .mc482-filter-sheet .cal614-google .cal613-google-list{max-height:300px}
}
