/* Flowlo Calendar v1.51 — time grid, task organizer, and flexible reflow. */
.calendar-v147{max-width:1380px}
.cal-head-v147{align-items:center;margin-bottom:14px}
.cal-head-v147 h1{margin:0;font-size:27px;font-weight:720;letter-spacing:-.04em}
.cal-head-v147 .cal-head-actions-v147{gap:7px}
.cal-create-menu-v148{position:relative}
.cal-create-menu-v148>summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer}
.cal-create-menu-v148>summary::-webkit-details-marker{display:none}
.cal-create-menu-v148>div{position:absolute;z-index:12;right:0;top:calc(100% + 7px);display:grid;min-width:155px;padding:5px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:var(--shadow)}
.cal-create-menu-v148>div button{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:7px;color:var(--ink);text-align:left;font-size:12px}
.cal-create-menu-v148>div button:hover{background:var(--hover)}
.cal-toolbar-v147{margin-bottom:10px}
.cal-date-nav-v147{flex-wrap:wrap}
.cal-day-blob-v148{display:inline-flex;align-items:center;margin-left:7px}
.cal-day-reminder-v148{margin-left:2px;color:var(--muted);font-size:10px}
.cal-week-grid-v148{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;min-width:0}
.cal-week-column-v148{display:flex;flex-direction:column;min-width:0;min-height:310px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.cal-week-column-v148.is-today{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent)}
.cal-week-column-v148>header{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:7px 8px;border-bottom:1px solid var(--line)}
.cal-week-column-v148>header>button:first-child{display:grid;justify-items:start;gap:1px;padding:2px 4px;border-radius:7px;text-align:left}
.cal-week-column-v148>header>button:first-child:hover{background:var(--hover)}
.cal-week-column-v148>header small{color:var(--muted);font-size:10px;font-weight:650;text-transform:uppercase}
.cal-week-column-v148>header b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-size:12px}
.cal-week-column-v148.is-today>header b{background:var(--accent);color:#fff}
.cal-week-column-v148>header>button:last-child{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;color:var(--muted)}
.cal-week-column-v148>header>button:last-child:hover{background:var(--hover);color:var(--accent)}
.cal-week-items-v148{display:grid;align-content:start;gap:5px;min-height:245px;padding:6px}
.cal-week-items-v148 .cal-item-v147{grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:7px;border-left-width:3px}
.cal-week-items-v148 .cal-item-time-v147{grid-column:1/-1;font-size:9px}
.cal-week-items-v148 .cal-item-copy-v147{grid-column:1;grid-row:2}
.cal-week-items-v148 .cal-item-copy-v147 b{white-space:normal;overflow-wrap:anywhere;font-size:11px;line-height:1.25}
.cal-week-items-v148 .cal-item-copy-v147 small{white-space:normal;font-size:9px;line-height:1.25}
.cal-week-items-v148 .cal-item-tools-v147{grid-column:2;grid-row:2}
.cal-week-items-v148 .cal-item-tools-v147 button{width:22px;height:23px}
.cal-month-add-v148{display:grid;place-items:center;align-self:end;width:20px;height:20px;margin-top:auto;border-radius:50%;color:var(--muted);font-size:16px;opacity:0}
.cal-month-day-v147:hover .cal-month-add-v148,.cal-month-add-v148:focus-visible{opacity:1}
.cal-pop-head-v148{display:flex;align-items:center;justify-content:space-between;margin:-2px 0 12px}
.cal-pop-head-v148>button{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--muted)}
.cal-pop-head-v148>button:hover{background:var(--hover);color:var(--ink)}
.cal-pop-icon-v148{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent-soft);color:var(--accent)}
.cal-create-options-v148{display:grid;gap:7px;margin:18px 0 4px}
.cal-create-options-v148>button{display:grid;grid-template-columns:28px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;text-align:left}
.cal-create-options-v148>button:hover{border-color:var(--accent);background:var(--accent-soft)}
.cal-create-options-v148>button>.material-symbols-rounded:first-child{color:var(--accent);font-size:21px}
.cal-create-options-v148>button>span{display:grid;gap:3px}
.cal-create-options-v148 b{font-size:12px}.cal-create-options-v148 small{color:var(--muted);font-size:10px}
.dialog form .cal-all-day-v148,.dialog form .cal-roll-forward-v148,.dialog form .cal-use-availability-v148{display:flex;align-items:center;gap:8px;margin:10px 0;color:var(--ink);font-size:12px}
.dialog form .cal-all-day-v148 input,.dialog form .cal-roll-forward-v148 input,.dialog form .cal-use-availability-v148 input{width:16px;min-width:16px;height:16px;margin:0;accent-color:var(--accent)}
.cal-optional-v148{color:var(--muted);font-size:10px;font-weight:450}
.cal-event-details-v148{margin:2px 0 10px}
.cal-event-details-v148>summary,.cal-organizer-options-v148>summary{display:flex;align-items:center;gap:6px;padding:8px 0;color:var(--accent);cursor:pointer;font-size:11px;font-weight:650;list-style:none}
.cal-event-details-v148>summary::-webkit-details-marker,.cal-organizer-options-v148>summary::-webkit-details-marker{display:none}
.cal-event-details-v148>summary:before,.cal-organizer-options-v148>summary:before{content:"›";display:inline-block;transform:rotate(0);transition:transform .15s}
.cal-event-details-v148[open]>summary:before,.cal-organizer-options-v148[open]>summary:before{transform:rotate(90deg)}
.cal-event-details-v148 .cal-form-row-v147{margin-top:8px}
.cal-range-presets-v148{display:flex;flex-wrap:wrap;gap:6px;margin:11px 0}
.cal-range-presets-v148 button{padding:7px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px}
.cal-range-presets-v148 button:hover,.cal-range-presets-v148 button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.cal-schedule-prompt-v148{font-weight:650!important}
.cal-schedule-prompt-v148 input{margin-top:6px!important;font-size:15px!important}
.cal-focus-block-v148{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;margin:10px 0!important;color:var(--muted);font-size:11px!important}
.cal-focus-block-v148 output{color:var(--ink);font-size:11px;font-weight:700}
.cal-focus-block-v148 input[type=range]{grid-column:1/-1;width:100%;margin:1px 0;accent-color:var(--accent)}
.cal-organizer-options-v148{margin-top:13px;padding-top:2px;border-top:1px solid var(--line)}
.cal-task-search-v148{margin:9px 0!important}
.cal-availability-v148{display:grid;gap:10px;margin:14px 0}
.cal-availability-row-v148{min-width:0;margin:0;padding:10px;border:1px solid var(--line);border-radius:10px}
.cal-availability-row-v148 legend{padding:0 5px;color:var(--ink);font-size:11px;font-weight:700}
.cal-availability-row-v148 .cal-weekdays-v147{margin:6px 0}
.cal-roll-forward-v148{margin:16px 0!important}
.cal-settings-v149{max-width:920px}
.cal-settings-section-v149{display:grid;gap:10px;padding:20px 0;border-top:1px solid var(--line)}
.cal-settings-section-v149 h3{margin:0;color:var(--ink);font-size:14px}
.cal-settings-section-v149 p,.cal-settings-section-v149>small,.cal-settings-footer-v149 small{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.cal-timezone-field-v149{display:grid;grid-template-columns:minmax(110px,160px) minmax(220px,360px);align-items:center;gap:12px;color:var(--ink);font-size:12px}
.cal-settings-section-v149 select,.cal-settings-section-v149 input:not([type=checkbox]):not([type=range]){min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px}
.cal-section-copy-v149{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.cal-section-copy-v149>span{min-width:0}
.cal-section-copy-v149>[data-missed-policy-label]{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px}
.cal-policy-slider-v149{width:100%;margin:6px 0 0;accent-color:var(--accent)}
.cal-policy-labels-v149{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.cal-policy-labels-v149 button{min-height:38px;padding:6px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:10px;line-height:1.3;text-align:center}
.cal-policy-labels-v149 button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}
.cal-availability-list-v149{display:grid;gap:7px}
.cal-availability-summary-v149{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.cal-availability-icon-v149{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:var(--accent-soft);color:var(--accent)}
.cal-availability-summary-v149>span:nth-child(2){display:grid;gap:3px;min-width:0}
.cal-availability-summary-v149 b{font-size:12px}.cal-availability-summary-v149 small{overflow-wrap:anywhere;color:var(--muted);font-size:10px}
.cal-availability-summary-v149>button{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;color:var(--muted)}
.cal-availability-summary-v149>button:hover{background:var(--hover);color:var(--ink)}
.cal-availability-empty-v149{margin:0;padding:14px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:11px}
.cal-availability-editor-v149{display:grid;gap:12px;margin-top:4px;padding:14px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface) 75%,var(--hover))}
.cal-availability-scope-v149{display:flex;gap:4px;padding:4px;border-radius:9px;background:var(--hover)}
.cal-availability-scope-v149 button{flex:1;min-height:34px;padding:6px;border-radius:7px;color:var(--muted);font-size:11px}
.cal-availability-scope-v149 button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0001;font-weight:700}
.cal-av-entity-v149{display:grid;gap:5px;color:var(--ink);font-size:11px}
.cal-av-entity-v149[hidden]{display:none}
.cal-availability-editor-v149>label:not(.cal-av-entity-v149){display:grid;gap:5px;color:var(--ink);font-size:11px}
.cal-availability-editor-v149>label span{color:var(--muted);font-weight:400}
.cal-av-days-v149{display:flex;flex-wrap:wrap;gap:6px;margin:0!important}
.cal-av-days-v149 label{position:relative;cursor:pointer}.cal-av-days-v149 input{position:absolute;opacity:0;pointer-events:none}
.cal-av-days-v149 span{display:grid;min-width:42px;height:34px;place-items:center;padding:0 6px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:10px}
.cal-av-days-v149 input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}
.cal-availability-editor-v149 .cal-form-row-v147{margin:0}
.cal-availability-editor-v149 [data-av-add]{justify-self:start}
.cal-settings-footer-v149{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line)}
.cal-task-rule-v149{display:grid;gap:4px;align-self:center;min-width:150px;color:var(--muted);font-size:10px}
.cal-task-row-v147:has(.cal-task-rule-v149){grid-template-columns:24px minmax(0,1fr) minmax(150px,auto)}
.cal-task-rule-v149 select{max-width:190px;min-height:30px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:10px}
.cal-missed-v148{display:grid;gap:4px;margin:14px 0;padding:12px;border:1px solid color-mix(in srgb,#e99a46 30%,var(--line));border-radius:11px;background:color-mix(in srgb,#e99a46 5%,var(--surface))}
.cal-missed-v148>header{padding:0 2px 6px}
.cal-missed-v148>header span,.cal-missed-row-v148>span{display:grid;gap:3px;min-width:0}
.cal-missed-v148>header b{font-size:12px}.cal-missed-v148>header small,.cal-missed-row-v148 small{color:var(--muted);font-size:10px}
.cal-missed-row-v148{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;padding:7px 2px;border-top:1px solid var(--line)}
.cal-missed-row-v148 b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.cal-missed-row-v148 button{padding:6px 7px;border-radius:7px;color:var(--muted);font-size:10px;white-space:nowrap}
.cal-missed-row-v148 button:hover{background:var(--hover);color:var(--accent)}
.cal-missed-action-v148{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--muted)}
.tab-calendar{display:grid!important;grid-template-columns:auto auto!important;align-items:center!important;gap:7px!important}
.tab-calendar>.material-symbols-rounded{font-size:18px;color:var(--muted)}
.tab-calendar.active>.material-symbols-rounded{color:var(--accent)}
@media(max-width:800px){
  .cal-timezone-field-v149{grid-template-columns:1fr;gap:5px}
  .cal-policy-labels-v149{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cal-settings-footer-v149{align-items:stretch;flex-direction:column}
  .cal-settings-footer-v149 .button{width:100%}
  .cal-task-row-v147{grid-template-columns:auto minmax(0,1fr)}
  .cal-task-rule-v149{grid-column:2}
  .cal-head-v147{align-items:center;flex-direction:row;gap:8px}
  .cal-head-v147 h1{font-size:23px}
  .cal-head-actions-v147{width:auto;display:flex;gap:5px}
  .cal-head-actions-v147 .button{min-height:34px;padding:7px 9px;font-size:10px}
  .cal-head-actions-v147 .cal-schedule-v147{grid-column:auto}
  .cal-toolbar-v147{align-items:flex-start;flex-direction:column}
  .cal-date-nav-v147{width:100%;gap:3px}
  .cal-date-nav-v147 strong{flex:1;margin-left:4px;font-size:12px}
  .cal-day-reminder-v148{display:none}
  .cal-view-picker-v147{align-self:flex-end}
  .cal-week-grid-v148{grid-template-columns:repeat(7,minmax(146px,1fr));overflow-x:auto;padding-bottom:5px;scroll-snap-type:x proximity}
  .cal-week-column-v148{min-height:270px;scroll-snap-align:start}
  .cal-week-items-v148{min-height:200px}
  .cal-missed-row-v148{grid-template-columns:minmax(0,1fr) auto auto;}
  .cal-missed-row-v148 [data-cal-toggle]{grid-column:3;grid-row:1}
  .cal-missed-row-v148 [data-cal-snooze]{grid-column:2;grid-row:1}
  .cal-missed-row-v148 [data-cal-push]{grid-column:2;grid-row:2}
  .tab-calendar{flex:0 0 44px!important;min-width:44px!important;max-width:44px!important;grid-template-columns:1fr!important;justify-items:center!important}
  .tab-calendar .tab-title{display:none!important}
  #tabs>button[data-home]{flex:0 0 44px!important;min-width:44px!important;max-width:44px!important;display:grid!important;place-items:center!important}
  #tabs>button[data-home] span:not(.material-symbols-rounded){display:none!important}
}
.calendar-v147{width:100%;max-width:none}
.canvas:has(.calendar-v147){padding:20px 12px 32px}
.cal-month-day-v147{min-height:128px;padding:8px;user-select:none;touch-action:pan-y}
.cal-month-day-v147.is-range-selected{position:relative;z-index:1;background:color-mix(in srgb,var(--accent-soft) 72%,var(--surface));box-shadow:inset 0 0 0 2px var(--accent)}
.cal-month-day-v147[data-cal-range-day]{cursor:crosshair}
.cal-month-item-v147{border-left:3px solid var(--cal-color)!important}
.cal-organize-intro-v151,.cal-task-context-v151{margin:-4px 0 14px;color:var(--muted);font-size:13px;line-height:1.45}
.cal-organize-selection-head-v151{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;color:var(--muted);font-size:12px}
.cal-organize-selection-head-v151 button{padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--accent);font-size:12px;font-weight:650}
.cal-organize-selection-head-v151 button:hover{background:var(--accent-soft)}
.cal-schedule-error-v151{margin:10px 0;padding:10px 12px;border:1px solid color-mix(in srgb,#dc5a56 35%,var(--line));border-radius:9px;background:color-mix(in srgb,#dc5a56 8%,var(--surface));color:var(--ink);font-size:13px;line-height:1.4}
.cal-adjustment-note-v151{padding:9px 11px;border-radius:8px;background:var(--accent-soft);color:var(--ink);font-size:12px}
.cal-task-actions-v151{display:grid;gap:6px;margin-top:18px}
.cal-task-actions-v151 button{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;text-align:left;color:var(--ink);font-size:13px}
.cal-task-actions-v151 button:hover{border-color:var(--accent);background:var(--accent-soft)}
.cal-task-actions-v151 .material-symbols-rounded{color:var(--accent);font-size:18px}
.cal-item-v147{border-left:3px solid var(--cal-color)!important}
.cal-auto-mark-v151{display:inline-flex;vertical-align:middle;margin-right:4px;color:var(--accent);font-style:normal}
.cal-auto-mark-v151 .material-symbols-rounded{font-size:12px}
.cal-week-items-v148,.cal-day-items-v147{position:relative;display:block;min-height:1344px;height:1344px;overflow:visible;padding:0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 55px,var(--line) 55px,var(--line) 56px)}
.cal-week-column-v148{overflow:visible}
.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{position:absolute;z-index:2;top:var(--item-top,0);left:4px;right:4px;min-height:var(--item-height,32px);overflow:hidden;background:var(--surface);}
.cal-week-items-v148 .cal-item-v147 .cal-item-copy-v147,.cal-day-items-v147 .cal-item-v147 .cal-item-copy-v147{min-width:0}
.cal-day-items-v147 .cal-empty-day-v147{position:absolute;top:8px;left:8px}
.cal-now-line-v151{position:absolute;z-index:4;top:var(--cal-now-top,0);left:0;right:0;height:2px;background:#e25555;pointer-events:none}
.cal-now-line-v151:before{position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:#e25555;content:""}
.cal-day-v147{overflow:visible}
.cal-day-time-grid-v151{display:grid;grid-template-columns:52px minmax(0,1fr);gap:0}
.cal-day-hour-labels-v151{position:relative;height:1344px;padding-right:8px;border-right:1px solid var(--line);color:var(--muted);font-size:10px;text-align:right}
.cal-day-hour-labels-v151 span{position:absolute;right:8px;line-height:1;transform:translateY(-50%)}
.cal-day-items-v147{border-top:1px solid var(--line)}
.cal-day-items-v147 .cal-item-v147{left:7px;right:7px}
.cal-week-column-v148.drag-over .cal-week-items-v148,.cal-day-v147.drag-over .cal-day-items-v147{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:-2px}
.cal-item-v147[draggable="true"]{cursor:grab}
.cal-item-v147[draggable="true"]:active{cursor:grabbing}
@media(max-width:800px){.cal-week-grid-v148{grid-template-columns:repeat(7,minmax(146px,1fr))}.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{left:2px;right:2px}.cal-schedule-error-v151{font-size:12px}}
.cal-composer-head-v150{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.cal-composer-head-v150>[data-close-dialog]{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;color:var(--muted)}
.cal-composer-head-v150>[data-close-dialog]:hover{background:var(--hover);color:var(--ink)}
#cal-quick-create-form{display:grid;gap:12px}
#cal-quick-create-form label{display:grid;gap:5px;color:var(--ink);font-size:11px;font-weight:650}
#cal-quick-create-form label[hidden]{display:none}
#cal-quick-create-form label span{color:var(--muted);font-weight:400}
#cal-quick-create-form input:not([type=range]),#cal-quick-create-form select,#cal-quick-create-form textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:12px;outline-color:var(--accent)}
#cal-quick-create-form textarea{resize:vertical}
#cal-quick-create-form .cal-compose-title-v150 input{min-height:46px;font-size:15px}
#cal-quick-create-form .cal-compose-type-v150{grid-template-columns:1fr;max-width:200px}
.cal-schedule-choice-v150{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.cal-schedule-choice-v150 button{display:flex;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:7px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:10px;font-weight:650}
.cal-schedule-choice-v150 button>.material-symbols-rounded{font-size:16px}
.cal-schedule-choice-v150 button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.cal-schedule-choice-v150 button[hidden]{display:none}
.cal-compose-fields-v150{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cal-compose-fields-v150[hidden],.cal-compose-auto-v150[hidden],.cal-compose-extra-v150[hidden]{display:none}
.cal-compose-time-v150 .cal-form-row-v147{grid-column:1/-1;margin:0}
.cal-compose-auto-v150{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cal-duration-v150{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto!important;align-items:center}
.cal-duration-v150 output{color:var(--accent);font-size:11px;font-weight:700}
.cal-duration-v150 input[type=range]{grid-column:1/-1;width:100%;margin:3px 0;accent-color:var(--accent)}
.cal-compose-extra-v150{display:grid;gap:10px;padding-top:4px;border-top:1px solid var(--line)}
.cal-task-row-v147:has(.cal-task-rule-v149){grid-template-columns:24px minmax(0,1fr) minmax(150px,auto)}
@media(max-width:800px){
  .canvas:has(.calendar-v147){padding:14px 7px calc(26px + env(safe-area-inset-bottom))!important}
  .calendar-v147{padding-bottom:20px}
  .cal-month-day-v147{min-height:92px;padding:4px}
  .cal-schedule-choice-v150{grid-template-columns:1fr}
  .cal-compose-fields-v150,.cal-compose-auto-v150{grid-template-columns:1fr}
  .cal-duration-v150{grid-column:auto}
  .cal-task-row-v147:has(.cal-task-rule-v149){grid-template-columns:24px minmax(0,1fr)}
}

/* Calendar v1.52 interaction polish */
.dialog:has(#cal-quick-create-form),.dialog:has(#cal-event-form),.dialog:has(#cal-schedule-form),.dialog:has(#cal-task-reschedule-form){width:min(94vw,620px);max-height:min(88dvh,850px)}
.dialog:has(#cal-quick-create-form) .dialog-inner,.dialog:has(#cal-event-form) .dialog-inner,.dialog:has(#cal-schedule-form) .dialog-inner,.dialog:has(#cal-task-reschedule-form) .dialog-inner{max-height:min(88dvh,850px);overflow:auto}
.cal-all-day-lane-v152{display:grid;gap:3px;padding:5px 7px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--raised) 55%,var(--surface))}
.cal-all-day-lane-v152 .cal-item-v147{position:relative;left:auto;right:auto;top:auto;min-height:27px;padding:4px 7px;border-radius:6px;background:var(--surface);font-size:10px}
.cal-all-day-lane-v152 .cal-item-time-v147{display:none}
.cal-all-day-lane-v152 .cal-item-copy-v147 b{font-size:10px}
.cal-week-column-v148 .cal-all-day-lane-v152{gap:2px;padding:4px}
.cal-week-column-v148 .cal-all-day-lane-v152 .cal-item-v147{min-height:22px;padding:3px 5px}
.cal-week-column-v148 .cal-all-day-lane-v152 .cal-item-copy-v147 b{font-size:9px}
.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{left:calc(4px + var(--item-inset,0) * 14px);right:4px;z-index:calc(3 + var(--item-inset,0));transition:left .12s ease,right .12s ease,top .08s ease;}
.cal-day-items-v147 .cal-item-v147{left:calc(7px + var(--item-inset,0) * 22px);right:7px}
.cal-item-v147.is-overlap-v152{box-shadow:0 2px 7px #182a3a20}
.cal-drag-guide-v152{position:absolute;z-index:8;left:0;right:0;height:2px;background:var(--accent);pointer-events:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.cal-drag-guide-v152:after{position:absolute;right:6px;top:-10px;content:attr(data-time);padding:2px 5px;border-radius:5px;background:var(--accent);color:white;font-size:10px;font-weight:700}
.cal-item-v147[draggable=true]{user-select:none}
.cal-peek-v152{position:fixed;z-index:1100;width:min(320px,calc(100vw - 24px));padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:0 14px 40px #10223630;color:var(--ink)}
.cal-peek-v152 header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cal-peek-v152 header button{display:grid;width:28px;height:28px;place-items:center;border-radius:7px;color:var(--muted)}
.cal-peek-v152 header button:hover{background:var(--hover)}
.cal-peek-kind-v152{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.cal-peek-kind-v152 .material-symbols-rounded{font-size:16px;color:var(--accent)}
.cal-peek-v152 h3{margin:0 0 5px;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.cal-peek-v152 p{display:flex;align-items:center;gap:5px;margin:0 0 5px;color:var(--muted);font-size:11px;line-height:1.45}
.cal-peek-v152 p .material-symbols-rounded{font-size:14px}
.cal-peek-actions-v152{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.cal-peek-actions-v152 button{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:10px}
.cal-peek-actions-v152 button.primary{border-color:var(--accent);background:var(--accent);color:white}
.cal-peek-actions-v152 button .material-symbols-rounded{font-size:15px}
.cal-head-actions-v147 .cal-missed-bell-v152{position:relative;display:grid;width:40px;place-items:center;padding:6px;color:var(--muted)}
.cal-missed-bell-v152 span{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:1px 4px;border-radius:99px;background:#de5b56;color:#fff;font-size:9px;font-weight:750;line-height:15px;text-align:center}
.cal-missed-menu-v152{position:fixed;z-index:1090;width:min(390px,calc(100vw - 24px));max-height:min(60dvh,480px);overflow:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 12px 36px #10223626}
.cal-missed-menu-v152[hidden]{display:none}
.cal-missed-menu-v152>p{margin:8px;color:var(--muted);font-size:12px}
.cal-missed-menu-v152 article{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,32px);align-items:center;gap:4px;padding:8px;border-bottom:1px solid var(--line)}
.cal-missed-menu-v152 article:last-child{border-bottom:0}
.cal-missed-menu-v152 article span{display:grid;gap:3px;min-width:0}
.cal-missed-menu-v152 article b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.cal-missed-menu-v152 article small{color:var(--muted);font-size:9px}
.cal-missed-menu-v152 article button{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;color:var(--muted)}
.cal-missed-menu-v152 article button:hover{background:var(--accent-soft);color:var(--accent)}
@media(max-width:800px){
 .dialog:has(#cal-quick-create-form),.dialog:has(#cal-event-form),.dialog:has(#cal-schedule-form),.dialog:has(#cal-task-reschedule-form){width:min(96vw,620px);max-height:90dvh}
 .dialog:has(#cal-quick-create-form) .dialog-inner,.dialog:has(#cal-event-form) .dialog-inner,.dialog:has(#cal-schedule-form) .dialog-inner,.dialog:has(#cal-task-reschedule-form) .dialog-inner{max-height:90dvh;padding:18px}
 .cal-peek-v152{width:min(320px,calc(100vw - 20px))}
 .cal-head-actions-v147 .cal-missed-bell-v152{grid-column:auto;width:36px}
}
.cal-organize-time-v152{display:grid;gap:7px;margin:10px 0 14px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.cal-organize-time-v152>div:first-child{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}
.cal-organize-time-v152>div:first-child b{color:var(--ink)}
.cal-dual-time-v152{position:relative;height:28px;margin:2px 8px}
.cal-dual-time-v152:before{position:absolute;top:12px;left:0;right:0;height:4px;border-radius:99px;background:var(--line);content:""}
.cal-dual-time-v152 input[type=range]{position:absolute;top:3px;left:0;width:100%;height:22px;margin:0;background:transparent;appearance:none;pointer-events:none}
.cal-dual-time-v152 input[type=range]::-webkit-slider-thumb{width:18px;height:18px;border:3px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent);appearance:none;pointer-events:auto;cursor:ew-resize}
.cal-dual-time-v152 input[type=range]::-moz-range-thumb{width:12px;height:12px;border:3px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent);pointer-events:auto;cursor:ew-resize}
.cal-dual-time-v152 [data-organize-now-marker]{position:absolute;top:7px;height:14px;width:2px;background:#df514c;pointer-events:none}
.cal-time-ends-v152{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}
.cal-hidden-time-fields-v152{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cal-dialog:has(#cal-schedule-form){}
.dialog.cal-organize-preview-v152{width:min(96vw,1280px);height:min(92dvh,980px);max-height:92dvh}
.dialog.cal-organize-preview-v152 .dialog-inner{height:100%;max-height:92dvh;overflow:auto;padding:22px}
.dialog.cal-organize-preview-v152 #cal-schedule-form{min-height:100%;display:flex;flex-direction:column}
.dialog.cal-organize-preview-v152 #cal-schedule-form>.cal-range-presets-v148,.dialog.cal-organize-preview-v152 #cal-schedule-form>.cal-form-row-v147,.dialog.cal-organize-preview-v152 #cal-schedule-form>details{display:none}
.dialog.cal-organize-preview-v152 .cal-schedule-preview-v147{display:block;flex:1;max-height:none;overflow:visible;margin:0;padding:0;border:0;background:transparent}
.cal-preview-head-v152{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-2px 0 14px;padding:8px 0 12px;border-bottom:1px solid var(--line);background:var(--surface)}
.cal-preview-head-v152 h3{margin:0;color:var(--ink);font-size:17px}
.cal-preview-head-v152 p{margin:4px 0 0;color:var(--muted);font-size:11px}
.cal-preview-head-v152 button{display:flex;align-items:center;gap:6px;min-height:42px;padding:9px 14px;border-radius:9px;background:var(--accent);color:#fff;font-weight:700}
.cal-preview-days-v152{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:start;gap:10px}
.cal-preview-days-v152 section{min-width:0;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--raised)}
.cal-preview-days-v152 h4{margin:0 0 7px;color:var(--ink);font-size:12px}
.cal-preview-days-v152 article{display:grid;grid-template-columns:20px minmax(0,1fr) 26px;align-items:center;gap:4px;padding:7px 4px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--accent-soft) 46%,transparent)}
.cal-preview-task-icon-v152{grid-row:span 2;color:var(--accent)}
.cal-preview-task-icon-v152 .material-symbols-rounded{font-size:16px}
.cal-preview-days-v152 article b{overflow:hidden;color:var(--ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.cal-preview-days-v152 article small{grid-column:2;color:var(--muted);font-size:9px}
.cal-preview-days-v152 article button{grid-column:3;grid-row:1/3;display:grid;width:24px;height:24px;place-items:center;border-radius:6px;color:var(--muted)}
.cal-preview-days-v152 article button:hover{background:var(--surface);color:#c64c48}
.cal-preview-days-v152 article button .material-symbols-rounded{font-size:16px}
.dialog.cal-organize-preview-v152 #cal-schedule-form>.dialog-footer{position:sticky;bottom:-22px;z-index:4;margin-top:12px;padding:10px 0 4px;background:var(--surface)}
@media(max-width:800px){
 .dialog.cal-organize-preview-v152{width:96vw;height:90dvh;max-height:90dvh}
 .dialog.cal-organize-preview-v152 .dialog-inner{max-height:90dvh;padding:15px}
 .cal-preview-head-v152{align-items:flex-start;flex-direction:column}
 .cal-preview-head-v152 button{width:100%;justify-content:center}
 .cal-preview-days-v152{grid-template-columns:1fr}
}
.cal-preview-calendar-v152{display:grid;grid-template-columns:repeat(7,minmax(138px,1fr));gap:1px;overflow:auto;max-height:calc(92dvh - 155px);padding-bottom:8px;background:var(--line)}
.cal-preview-day-v152{min-width:0;padding:0!important;border:0!important;border-radius:0!important;background:var(--surface)!important}
.cal-preview-day-v152>h4{position:sticky;top:0;z-index:3;margin:0;padding:9px 5px;border-bottom:1px solid var(--line);background:var(--surface);text-align:center}
.cal-preview-timeline-v152{position:relative;height:840px;margin-left:27px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 34px,var(--line) 34px,var(--line) 35px)}
.cal-preview-timeline-v152.is-drop-target{background-color:color-mix(in srgb,var(--accent-soft) 15%,transparent)}
.cal-preview-hour-v152{position:absolute;left:-26px;transform:translateY(-50%);color:var(--muted);font-size:8px;line-height:1}
.cal-preview-task-v152{position:absolute;z-index:2;top:var(--preview-top);left:3px;right:3px;display:grid;grid-template-columns:minmax(0,1fr) 20px;align-content:start;gap:1px 2px;min-height:var(--preview-height);overflow:hidden;padding:3px 4px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-left:3px solid var(--accent);border-radius:5px;background:color-mix(in srgb,var(--accent-soft) 78%,var(--surface));box-shadow:0 1px 4px #14273b18;cursor:grab}
.cal-preview-task-v152:active{cursor:grabbing}
.cal-preview-task-v152 b{overflow:hidden;color:var(--ink);font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.cal-preview-task-v152 small{overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}
.cal-preview-task-v152 button{grid-column:2;grid-row:1/3;display:grid;width:18px;height:18px;place-items:center;border-radius:4px;color:var(--muted)}
.cal-preview-task-v152 button:hover{background:var(--surface);color:#c64c48}
.cal-preview-task-v152 button .material-symbols-rounded{font-size:13px}
.cal-preview-drop-line-v152{position:absolute;z-index:4;left:0;right:0;height:2px;background:var(--accent);pointer-events:none}
.cal-preview-drop-line-v152:before{position:absolute;left:-3px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent);content:""}
@media(max-width:800px){.cal-preview-calendar-v152{grid-template-columns:repeat(7,minmax(145px,1fr));max-height:calc(90dvh - 195px)}.cal-preview-timeline-v152{height:840px}}
.cal-fill-extra-v152{display:flex!important;align-items:center;gap:8px;margin:7px 0 10px!important;color:var(--muted);font-size:11px!important}
.cal-fill-extra-v152 input{width:15px!important;min-width:15px!important;height:15px;accent-color:var(--accent)}
.dialog.cal-organize-preview-v152 .dialog-inner>.cal-pop-head-v148,.dialog.cal-organize-preview-v152 .dialog-inner>h2,.dialog.cal-organize-preview-v152 .dialog-inner>.cal-organize-intro-v151{display:none}
.dialog.cal-organize-preview-v152 #cal-schedule-form>.dialog-footer{display:none}
.cal-preview-head-v152>[data-close-dialog]{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid var(--line);border-radius:9px;color:var(--muted)}
.cal-preview-head-v152>[data-close-dialog]:hover{background:var(--hover);color:var(--ink)}
.cal-preview-head-v152>[data-cal-approve]{order:3}
.cal-preview-head-v152>span{flex:1}
.cal-preview-task-v152{right:calc(3px + var(--preview-inset,0) * 9px)}
.cal-preview-fixed-v152{position:absolute;z-index:1;top:var(--preview-top);left:3px;right:4px;display:grid;align-content:start;gap:1px;min-height:var(--preview-height);overflow:hidden;padding:3px 4px;border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:5px;background:color-mix(in srgb,var(--raised) 90%,var(--surface));opacity:.74}
.cal-preview-fixed-v152 b{overflow:hidden;color:var(--ink);font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.cal-preview-fixed-v152 small{color:var(--muted);font-size:8px}
.cal-all-day-lane-v152 .cal-item-v147{grid-template-columns:minmax(0,1fr);}

/* Calendar v1.53 density, sticky day context, and unified controls */
.cal-toolbar-v147{flex-wrap:nowrap;align-items:center}
.cal-toolbar-tools-v152{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.cal-filter-menu-v152{position:relative;flex:0 0 auto}
.cal-filter-menu-v152>summary{display:flex;align-items:center;gap:6px;min-height:36px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:11px;font-weight:650;list-style:none;cursor:pointer}
.cal-filter-menu-v152>summary::-webkit-details-marker{display:none}
.cal-filter-menu-v152>summary .material-symbols-rounded{font-size:17px;color:var(--muted)}
.cal-filter-menu-v152>summary>b{display:grid;min-width:17px;height:17px;place-items:center;padding:0 4px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-size:9px}
.cal-filter-panel-v152{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:min(310px,calc(100vw - 28px));max-height:min(62dvh,480px);overflow:auto;padding:9px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:0 12px 36px #10223626}
.cal-filter-panel-v152 h3{margin:9px 5px 5px;color:var(--muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.cal-filter-panel-v152>section{padding:3px 0;border-top:1px solid var(--line)}
.cal-filter-row-v152,.cal-shared-filter-v152{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:6px;border-radius:7px;color:var(--muted);text-align:left;font-size:11px}
.cal-filter-row-v152:hover,.cal-shared-filter-v152:hover{background:var(--hover)}
.cal-filter-row-v152.active,.cal-shared-filter-v152.active{color:var(--ink)}
.cal-filter-row-v152>.material-symbols-rounded,.cal-shared-filter-v152>.material-symbols-rounded{color:var(--accent);font-size:17px}
.cal-filter-row-v152 small{margin-left:auto;color:var(--muted);font-size:9px}
.cal-filter-row-v152.project{padding-left:27px}
.cal-project-swatch-v152{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--project-color)}
.cal-filter-panel-v152>p{margin:8px;color:var(--muted);font-size:11px}
.cal-day-sticky-v152,.cal-week-sticky-v152{position:sticky;top:0;z-index:10;background:var(--surface);box-shadow:0 2px 5px #172b3a0a}
.cal-day-sticky-v152{border-radius:10px 10px 0 0}
.cal-week-sticky-v152{border-radius:10px 10px 0 0}
.cal-week-sticky-v152>header{position:relative;top:auto;z-index:auto;background:transparent}
.cal-month-v147{height:clamp(350px,calc(100dvh - 275px),680px);grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:30px repeat(6,minmax(0,1fr));overflow:hidden;}
.cal-month-day-v147{min-height:0;height:auto;overflow:hidden;gap:2px;padding:4px}
.cal-month-day-v147>button:first-child{width:21px;height:21px;flex:0 0 21px;font-size:10px}
.cal-month-day-v147 .cal-month-add-v148{display:none!important}
.cal-month-item-v147.cal-month-card-v152{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 4px;width:100%;min-width:0;min-height:17px;max-height:20px;padding:2px 4px;border-left:3px solid var(--cal-color)!important;border-radius:4px;background:color-mix(in srgb,var(--cal-color) 10%,var(--surface));cursor:pointer;white-space:normal}
.cal-month-card-v152 small{overflow:hidden;color:var(--muted);font-size:8px;font-weight:650;line-height:1;text-overflow:ellipsis;white-space:nowrap}
.cal-month-card-v152 span{overflow:hidden;color:var(--ink);font-size:9px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.cal-month-card-v152:hover{outline:1px solid color-mix(in srgb,var(--cal-color) 45%,transparent)}
.cal-head-v147{gap:10px;flex-wrap:nowrap}
.cal-head-actions-v147{flex:0 0 auto;flex-wrap:nowrap;gap:7px}
.cal-head-actions-v147 .button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:108px;min-height:40px;padding:8px 11px;white-space:nowrap}
.cal-head-actions-v147 .cal-schedule-v147{min-width:122px}
.cal-head-actions-v147 .cal-missed-bell-v152{width:44px;height:40px;min-width:44px;flex:0 0 44px;padding:3px}
.cal-missed-bell-v152 flowlo-avatar{width:34px;height:34px;pointer-events:none}
.cal-missed-bell-v152 span{top:-4px;right:-4px}
.cal-missed-bell-v152[data-missed-count="0"]>span{display:none}
@media(max-width:800px){
 .cal-toolbar-v147{align-items:center;flex-wrap:wrap;flex-direction:row}
 .cal-toolbar-tools-v152{flex:1;justify-content:flex-end}
 .cal-filter-menu-v152>summary{min-height:32px;padding:5px 7px}
 .cal-filter-menu-v152>summary>span:not(.material-symbols-rounded){display:none}
 .cal-view-picker-v147 button{font-size:9px}
 .cal-month-v147{height:clamp(350px,calc(100dvh - 255px),600px);grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:26px repeat(6,minmax(0,1fr));overflow:hidden;}
 .cal-month-day-v147{min-height:0;padding:2px;gap:1px}
 .cal-month-day-v147>button:first-child{width:18px;height:18px;flex-basis:18px;font-size:9px}
 .cal-month-item-v147.cal-month-card-v152{grid-template-columns:minmax(0,1fr);min-height:15px;max-height:16px;padding:2px 3px}
 .cal-month-card-v152 small{display:none}
 .cal-month-card-v152 span{font-size:8px}
 .cal-head-actions-v147 .button{min-width:0;min-height:38px;padding:7px 8px;font-size:10px}
 .cal-head-actions-v147 .cal-schedule-v147{min-width:0}
 .cal-head-actions-v147 .cal-missed-bell-v152{width:40px;min-width:40px;flex-basis:40px}
 .cal-day-sticky-v152,.cal-week-sticky-v152{top:0}
}
.cal-day-sticky-v152>header{display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 11px;border-bottom:1px solid var(--line);color:var(--ink);font-size:12px;font-weight:700}
.cal-day-sticky-v152>header small{padding:3px 6px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-size:9px}
.cal-day-sticky-v152>header button{display:grid;place-items:center;width:27px;height:27px;margin-left:auto;border-radius:7px;color:var(--muted)}
.cal-day-sticky-v152>header button:hover{background:var(--hover);color:var(--accent)}
.cal-week-sticky-v152>header{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:7px 8px;border-bottom:1px solid var(--line)}
.cal-week-sticky-v152>header>button:first-child{display:grid;justify-items:start;gap:1px;padding:2px 4px;border-radius:7px;text-align:left}
.cal-week-sticky-v152>header>button:first-child:hover{background:var(--hover)}
.cal-week-sticky-v152>header small{color:var(--muted);font-size:10px;font-weight:650;text-transform:uppercase}
.cal-week-sticky-v152>header b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-size:12px}
.cal-week-column-v148.is-today .cal-week-sticky-v152>header b{background:var(--accent);color:#fff}
.cal-week-sticky-v152>header>button:last-child{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;color:var(--muted)}
.cal-week-sticky-v152>header>button:last-child:hover{background:var(--hover);color:var(--accent)}

/* Calendar v1.54: sticky controls, dynamic month rows, and parallel event lanes */
.cal-toolbar-v147{position:sticky;top:0;z-index:18;background:var(--surface)}
.cal-day-sticky-v152,.cal-week-sticky-v152{top:58px;z-index:12}
.cal-month-v147{height:clamp(350px,calc(100dvh - 275px),680px);grid-template-rows:30px repeat(var(--cal-week-rows,6),minmax(0,1fr));}
.cal-week-items-v148 .cal-item-v147{left:calc(4px + var(--item-lane-left,0%));right:auto;width:calc(var(--item-lane-width,100%) - 7px);}
.cal-day-items-v147 .cal-item-v147{left:calc(7px + var(--item-lane-left,0%));right:auto;width:calc(var(--item-lane-width,100%) - 14px);}
.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{transition:left .12s ease,width .12s ease,top .08s ease;}
@media(max-width:800px){
 .cal-month-v147{height:clamp(350px,calc(100dvh - 255px),600px);grid-template-rows:26px repeat(var(--cal-week-rows,6),minmax(0,1fr));}
 .cal-day-sticky-v152,.cal-week-sticky-v152{top:52px}
}
@media(max-width:800px){.cal-day-sticky-v152,.cal-week-sticky-v152{top:84px}}

/* Calendar v1.55: stable full-canvas creation and organization flows. */
.cal-workspace-head-v155{display:flex;align-items:center;gap:13px;margin:2px 0 16px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.cal-workspace-head-v155>button{display:flex;align-items:center;gap:6px;min-height:38px;flex:0 0 auto}
.cal-workspace-head-v155>div:not(.cal-organize-approve-v155){min-width:0}
.cal-workspace-head-v155 .eyebrow{margin:0 0 2px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.09em}
.cal-workspace-head-v155 h1{margin:0;color:var(--ink);font-size:22px;font-weight:720;letter-spacing:-.04em}
.cal-create-page-v155{max-width:900px}
.cal-create-panel-v155{max-width:720px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 8px 26px #172b3a08}
.cal-create-panel-v155 h2{margin:0 0 17px;color:var(--ink);font-size:17px;letter-spacing:-.02em}
.cal-create-panel-v155 #cal-quick-create-form{display:grid;gap:12px}
.cal-create-panel-v155 #cal-quick-create-form label{margin:0;color:var(--muted);font-size:11px;font-weight:650}
.cal-create-panel-v155 #cal-quick-create-form input,.cal-create-panel-v155 #cal-quick-create-form select,.cal-create-panel-v155 #cal-quick-create-form textarea{min-height:40px;border-color:var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}
.cal-create-panel-v155 #cal-quick-create-form .cal-compose-title-v150 input{min-height:48px;font-size:15px}
.cal-create-panel-v155 #cal-quick-create-form .cal-schedule-choice-v150{margin:0}
.cal-create-panel-v155 #cal-quick-create-form .dialog-footer{margin-top:2px}
.cal-create-panel-v155 #cal-quick-create-form .dialog-footer [data-cal-cancel-composer]{padding:9px 13px;border-radius:8px;background:var(--hover);color:var(--ink)}
.cal-organize-page-v155{max-width:none;width:100%}
.cal-organize-subtitle-v155{margin:-8px 0 16px;color:var(--muted);font-size:12px}
.cal-organize-layout-v155{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:16px;align-items:start}
.cal-organize-controls-v155{position:sticky;top:8px;max-height:calc(100dvh - 145px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.cal-organize-layout-v155.is-preview-v155{display:block}
.cal-organize-layout-v155.is-preview-v155 .cal-organize-controls-v155{display:none}
.cal-organize-preview-area-v155{min-width:0}
.cal-range-presets-v148{display:flex;gap:6px}
.cal-range-presets-v148 button{flex:1;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:10px;font-weight:650}
.cal-range-presets-v148 button.active{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--accent-soft);color:var(--accent)}
.cal-organize-controls-v155>.cal-form-row-v147{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}
.cal-organize-controls-v155 label{color:var(--muted);font-size:10px;font-weight:650}
.cal-organize-controls-v155 input[type=date]{min-width:0;min-height:37px;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}
.cal-organize-time-v152{margin:12px 0;padding:10px;border-radius:9px;background:var(--bg)}
.cal-availability-note-v155{margin:-5px 1px 15px;color:var(--muted);font-size:10px;line-height:1.45}
.cal-scope-heading-v155{display:grid;gap:9px;margin:12px 0 8px}
.cal-scope-heading-v155 h2{margin:0;color:var(--ink);font-size:13px}
.cal-scope-heading-v155 p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.4}
.cal-scope-search-v155{display:flex;align-items:center;gap:7px;min-height:37px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--muted)}
.cal-scope-search-v155 .material-symbols-rounded{font-size:17px}
.cal-scope-search-v155 input{width:100%;min-width:0;border:0!important;outline:0;background:transparent!important;color:var(--ink);font-size:11px}
.cal-scope-tree-v155{display:grid;gap:3px;max-height:min(38dvh,360px);overflow:auto;padding:4px 0}
.cal-scope-row-v155{display:flex;align-items:center;gap:8px;min-height:36px;margin:0;padding:5px 8px;border:1px solid transparent;border-radius:7px;color:var(--ink);cursor:pointer}
.cal-scope-row-v155:hover{background:var(--hover)}
.cal-scope-row-v155 input{width:15px;height:15px;margin:0;accent-color:var(--accent)}
.cal-scope-row-v155>.material-symbols-rounded{font-size:17px;color:var(--muted)}
.cal-scope-row-v155 b{overflow:hidden;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.cal-scope-row-v155 small{margin-left:auto;color:var(--muted);font-size:9px}
.cal-scope-row-v155.level-2{padding-left:24px}
.cal-scope-row-v155.level-3{padding-left:42px}
.cal-scope-empty-v155{padding:8px;color:var(--muted);font-size:11px}
.cal-preview-button-v155{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:42px;margin-top:12px}
.cal-schedule-error-v151{padding:9px;border-radius:8px;background:#fff1ed;color:#a33f38;font-size:11px}
.cal-preview-head-v152{top:0}
.cal-preview-head-v152 [data-cal-organizer-adjust]{background:var(--surface);border:1px solid var(--line);color:var(--ink)}
.cal-preview-head-v152 [data-cal-organizer-adjust]:hover{background:var(--hover)}
.cal-organize-preview-area-v155 .cal-preview-calendar-v152{max-height:calc(100dvh - 180px);grid-template-columns:repeat(7,minmax(135px,1fr))}
.cal-organize-preview-area-v155 .cal-preview-timeline-v152{height:840px}
@media(max-width:900px){.cal-organize-layout-v155{grid-template-columns:minmax(0,1fr)}.cal-organize-controls-v155{position:static;max-height:none}.cal-organize-preview-area-v155 .cal-preview-calendar-v152{grid-template-columns:repeat(7,minmax(145px,1fr));max-height:calc(100dvh - 190px)}}
@media(max-width:600px){.cal-workspace-head-v155{gap:8px;flex-wrap:wrap}.cal-workspace-head-v155 h1{font-size:20px}.cal-workspace-head-v155>button{min-height:34px;padding:6px 9px;font-size:10px}.cal-create-panel-v155{padding:15px}.cal-organize-controls-v155{padding:12px}.cal-organize-controls-v155>.cal-form-row-v147{grid-template-columns:1fr 1fr}.cal-preview-head-v152{align-items:stretch;flex-direction:column}.cal-preview-head-v152 button{width:100%;justify-content:center}.cal-organize-preview-area-v155 .cal-preview-calendar-v152{grid-template-columns:repeat(7,minmax(145px,1fr))}}

/* Calendar v1.56: shared workspace header and Blob-led creation/organizing. */
.cal-create-page-v155,.cal-organize-page-v155{max-width:none;width:100%;padding-bottom:24px}
.cal-workspace-head-v155{gap:18px;min-height:58px;margin:0 0 6px;padding:0 0 12px}
.cal-workspace-back-v155{width:142px;justify-content:flex-start!important;gap:8px!important;padding:8px 12px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--surface)!important;color:var(--ink)!important;font-size:12px!important;font-weight:650}
.cal-workspace-back-v155:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))!important;background:var(--accent-soft)!important;color:var(--accent)!important}
.cal-workspace-back-v155 .material-symbols-rounded{font-size:18px}
.cal-workspace-title-v155{display:grid;gap:2px}
.cal-workspace-title-v155 .eyebrow{color:var(--accent)}
.cal-workspace-title-v155 h1{font-size:24px}
.cal-workspace-intro-v155{display:flex;align-items:baseline;gap:8px;margin:11px 0 18px;color:var(--muted);font-size:12px}
.cal-workspace-intro-v155>b{color:var(--ink);font-size:13px;font-weight:680}
.cal-workspace-layout-v155{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:18px;align-items:stretch}
.cal-create-panel-v155{width:100%;max-width:none;min-width:0;padding:clamp(18px,2.2vw,30px);border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:none}
.cal-create-panel-v155 h2{font-size:18px}
.cal-create-panel-v155 #cal-quick-create-form{gap:15px}
.cal-create-panel-v155 #cal-quick-create-form .cal-schedule-choice-v150{margin:1px 0 3px}
.cal-create-panel-v155 #cal-quick-create-form .cal-compose-title-v150 input{min-height:54px;font-size:16px}
.cal-create-panel-v155 #cal-quick-create-form input,.cal-create-panel-v155 #cal-quick-create-form select,.cal-create-panel-v155 #cal-quick-create-form textarea{min-height:44px;background:var(--surface)}
.cal-create-panel-v155 #cal-quick-create-form .dialog-footer{padding-top:6px;border-top:1px solid var(--line)}
.cal-companion-panel-v155{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;min-width:0;min-height:330px;padding:clamp(22px,3vw,40px);border:1px solid var(--line);border-radius:14px;background:var(--raised)}
.cal-companion-blob-v155{display:grid;place-items:center;width:116px;height:116px;border-radius:50%;background:var(--accent-soft);transition:transform .2s ease,box-shadow .2s ease}
.cal-companion-blob-v155.is-large{width:140px;height:140px}
.cal-companion-blob-v155 flowlo-avatar{display:block;width:92px;height:92px;overflow:visible}
.cal-companion-blob-v155.is-large flowlo-avatar{width:112px;height:112px}
.cal-companion-panel-v155>div:nth-child(2){max-width:390px}
.cal-companion-panel-v155 .eyebrow{margin:0 0 6px;color:var(--accent);font-size:9px;font-weight:750;letter-spacing:.1em}
.cal-companion-panel-v155 h2{margin:0 0 8px;color:var(--ink);font-size:clamp(19px,2vw,25px);font-weight:700;letter-spacing:-.04em;line-height:1.16}
.cal-companion-panel-v155 p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.cal-companion-date-v155{display:flex;align-items:center;gap:10px;margin-top:5px;padding-top:15px;border-top:1px solid var(--line);width:100%;color:var(--accent)}
.cal-companion-date-v155>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--surface)}
.cal-companion-date-v155>span:last-child{display:grid;gap:3px}
.cal-companion-date-v155 small{color:var(--muted);font-size:8px;font-weight:750;letter-spacing:.08em}
.cal-companion-date-v155 b{color:var(--ink);font-size:11px;font-weight:650}
.cal-organize-layout-v155{grid-template-columns:minmax(380px,500px) minmax(0,1fr);gap:18px;align-items:stretch}
.cal-organize-controls-v155{top:8px;max-height:calc(100dvh - 190px);padding:20px;border-radius:14px;box-shadow:none}
.cal-organize-companion-v155{position:sticky;top:8px;min-height:calc(100dvh - 205px);max-height:calc(100dvh - 190px);overflow:auto}
.cal-organize-stats-v155{display:flex;align-items:center;gap:18px;width:100%;max-width:380px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cal-organize-stats-v155>span{display:grid;gap:3px;min-width:90px}
.cal-organize-stats-v155 b{color:var(--ink);font-size:24px;font-weight:700;letter-spacing:-.04em}
.cal-organize-stats-v155 small{color:var(--muted);font-size:10px}
.cal-organize-stats-v155>i{width:1px;height:28px;background:var(--line)}
.cal-organize-context-v155{display:flex;align-items:center;gap:10px;max-width:440px;color:var(--accent)}
.cal-organize-context-v155>.material-symbols-rounded{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--surface);font-size:19px}
.cal-organize-context-v155>span:last-child{display:grid;gap:3px}
.cal-organize-context-v155 b{color:var(--ink);font-size:11px;font-weight:650}
.cal-organize-context-v155 small,.cal-organize-promise-v155{color:var(--muted);font-size:10px;line-height:1.45}
.cal-organize-promise-v155{margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.cal-organize-layout-v155.is-preview-v155{display:block}
.cal-organize-layout-v155.is-preview-v155 .cal-companion-panel-v155{display:none}
.cal-organize-preview-area-v155{max-height:none;overflow:visible;margin:0;padding:0;border:0;background:transparent}
.cal-organize-preview-area-v155 .cal-preview-calendar-v152{grid-template-columns:repeat(7,minmax(145px,1fr));max-height:none;overflow:auto}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152{grid-template-columns:minmax(0,1fr);align-content:start;gap:2px;padding:5px}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-time-v147,.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-copy-v147{grid-column:1;grid-row:auto}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-copy-v147 small{display:none}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-copy-v147 b{font-size:9px;line-height:1.1}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-time-v147{font-size:8px}
#toast.cal-toast-v155{display:flex;align-items:center;gap:9px}
#toast.cal-toast-v155 flowlo-avatar{display:block;width:27px;height:27px;flex:0 0 27px}
@media(max-width:1050px){.cal-workspace-layout-v155{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr)}.cal-organize-layout-v155{grid-template-columns:minmax(350px,440px) minmax(0,1fr)}}
@media(max-width:800px){.cal-workspace-head-v155{min-height:52px}.cal-workspace-back-v155{width:auto;min-width:115px}.cal-workspace-layout-v155,.cal-organize-layout-v155{grid-template-columns:minmax(0,1fr)}.cal-companion-panel-v155{min-height:0;gap:13px;padding:20px}.cal-organize-companion-v155{position:static;max-height:none;min-height:0;order:-1}.cal-organize-layout-v155.is-preview-v155 .cal-schedule-preview-v147{display:block}.cal-organize-preview-area-v155 .cal-preview-calendar-v152{max-height:none}}
@media(max-width:520px){.cal-workspace-head-v155{gap:10px}.cal-workspace-back-v155{width:108px;min-width:108px;padding:7px 8px!important;font-size:10px!important}.cal-workspace-title-v155 h1{font-size:20px}.cal-workspace-intro-v155{align-items:flex-start;flex-direction:column;gap:3px;font-size:11px}.cal-create-panel-v155{padding:14px}.cal-create-panel-v155 #cal-quick-create-form .cal-schedule-choice-v150{grid-template-columns:1fr}.cal-organize-controls-v155{padding:13px}.cal-organize-companion-v155{flex-direction:row;flex-wrap:wrap;align-items:center}.cal-organize-companion-v155 .cal-companion-blob-v155{width:74px;height:74px}.cal-organize-companion-v155 .cal-companion-blob-v155 flowlo-avatar{width:58px;height:58px}.cal-organize-companion-v155>div:nth-child(2){flex:1;min-width:150px}.cal-organize-companion-v155 .cal-organize-stats-v155,.cal-organize-context-v155,.cal-organize-promise-v155{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.cal-companion-blob-v155{transition:none}}


/* Calendar v1.57: consistent organizer panel, click-to-create popover, and reliable overlap lanes. */
.cal-organize-layout-v155{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:18px;align-items:stretch}
.cal-organize-companion-v155{position:static;min-height:330px;max-height:none;overflow:visible;padding:clamp(22px,3vw,40px);align-self:stretch}
.cal-organize-companion-v155 .cal-companion-blob-v155.is-large{width:116px;height:116px}
.cal-organize-companion-v155 .cal-companion-blob-v155.is-large flowlo-avatar{width:92px;height:92px}
.cal-organize-companion-v155 .cal-organize-promise-v155{margin-top:auto}
.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{box-sizing:border-box;z-index:3}
.cal-week-items-v148 .cal-item-v147{left:calc(4px + var(--item-lane-left,0%));right:auto;width:calc(var(--item-lane-width,100%) - 8px)}
.cal-day-items-v147 .cal-item-v147{left:calc(7px + var(--item-lane-left,0%));right:auto;width:calc(var(--item-lane-width,100%) - 14px)}
.cal-create-popover-v156{position:fixed;z-index:1000;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 18px 55px #152c4030;color:var(--ink);overscroll-behavior:contain}
.cal-create-popover-v156>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 12px;padding-bottom:11px;border-bottom:1px solid var(--line)}
.cal-create-popover-v156>header>span{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:12px}
.cal-create-popover-v156>header b{color:var(--ink);font-weight:680}
.cal-create-popover-v156>header button{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;color:var(--muted)}
.cal-create-popover-v156>header button:hover{background:var(--hover);color:var(--ink)}
.cal-create-popover-v156 h2{margin:0 0 12px;font-size:15px;letter-spacing:-.02em}
.cal-create-popover-v156 #cal-quick-create-form{gap:10px}
.cal-create-popover-v156 #cal-quick-create-form label{font-size:10px}
.cal-create-popover-v156 #cal-quick-create-form input,.cal-create-popover-v156 #cal-quick-create-form select,.cal-create-popover-v156 #cal-quick-create-form textarea{min-height:37px;padding:8px 9px;font-size:12px}
.cal-create-popover-v156 #cal-quick-create-form .cal-compose-title-v150 input{min-height:44px;font-size:14px}
.cal-create-popover-v156 #cal-quick-create-form .cal-schedule-choice-v150{gap:5px;margin:0}
.cal-create-popover-v156 #cal-quick-create-form .cal-schedule-choice-v150 button{min-height:36px;padding:7px;font-size:10px}
.cal-create-popover-v156 #cal-quick-create-form .dialog-footer{position:sticky;bottom:-16px;margin:2px -16px -16px;padding:10px 16px 14px;border-top:1px solid var(--line);background:var(--surface)}
@media(max-width:1050px){.cal-organize-layout-v155{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr)}}
@media(max-width:800px){.cal-organize-layout-v155{grid-template-columns:minmax(0,1fr)}.cal-organize-companion-v155{min-height:0;padding:20px}.cal-organize-companion-v155 .cal-companion-blob-v155.is-large{width:74px;height:74px}.cal-organize-companion-v155 .cal-companion-blob-v155.is-large flowlo-avatar{width:58px;height:58px}}
@media(max-width:520px){.cal-create-popover-v156{padding:13px;border-radius:12px}.cal-create-popover-v156 #cal-quick-create-form .cal-schedule-choice-v150{grid-template-columns:1fr}}


/* Calendar v1.58: bounded event cards, full preview scroll, and time-range selection. */
.cal-week-items-v148 .cal-item-v147,.cal-day-items-v147 .cal-item-v147{height:var(--item-height,32px);min-height:var(--item-height,32px);box-sizing:border-box;align-content:start;overflow:hidden}
.cal-week-items-v148 .cal-item-v147{grid-template-columns:minmax(0,1fr);gap:1px;padding:3px 5px}
.cal-week-items-v148 .cal-item-v147 .cal-item-time-v147{grid-column:1;grid-row:1;font-size:8px;line-height:1.05;white-space:nowrap}
.cal-week-items-v148 .cal-item-v147 .cal-item-copy-v147{grid-column:1;grid-row:2;display:block;min-height:0;overflow:hidden}
.cal-week-items-v148 .cal-item-v147 .cal-item-copy-v147 b{display:-webkit-box;overflow:hidden;font-size:10px;line-height:1.08;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.cal-week-items-v148 .cal-item-v147 .cal-item-copy-v147 small{display:none}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152{grid-template-columns:minmax(0,1fr);gap:1px;padding:3px 4px}
.cal-day-items-v147 .cal-item-v147{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;padding:2px 5px}
.cal-day-items-v147 .cal-item-v147 .cal-item-time-v147{grid-column:1;grid-row:1;font-size:8px;line-height:1;white-space:nowrap}
.cal-day-items-v147 .cal-item-v147 .cal-item-copy-v147{grid-column:2;grid-row:1;display:block;min-height:0;overflow:hidden}
.cal-day-items-v147 .cal-item-v147 .cal-item-copy-v147 b{display:-webkit-box;overflow:hidden;font-size:9px;line-height:1.05;white-space:normal;text-overflow:clip;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.cal-day-items-v147 .cal-item-v147 .cal-item-copy-v147 small{display:none}
.cal-time-range-selection-v157{position:absolute;z-index:6;left:0;right:0;min-height:14px;border:1px solid color-mix(in srgb,var(--accent) 58%,transparent);border-radius:5px;background:color-mix(in srgb,var(--accent-soft) 80%,transparent);box-shadow:inset 3px 0 var(--accent);pointer-events:none}
.cal-week-items-v148,.cal-day-items-v147{touch-action:pan-x}
.cal-organize-layout-v155.is-preview-v155 .cal-preview-head-v152{position:sticky;top:0;z-index:12;padding:10px 0;background:var(--bg)}
.cal-organize-preview-area-v155 .cal-preview-calendar-v152{height:calc(100dvh - 245px);min-height:420px;max-height:calc(100dvh - 210px);overflow:auto;align-content:start;overscroll-behavior:contain}
.cal-organize-preview-area-v155 .cal-preview-day-v152{align-self:start}
.cal-organize-preview-area-v155 .cal-preview-day-v152>h4{top:0}
.cal-create-popover-v156 .cal-timed-duration-v157{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 10px}
.cal-create-popover-v156 .cal-timed-duration-v157 input{grid-column:1/-1;width:100%;min-height:20px;padding:0;accent-color:var(--accent)}
.cal-create-panel-v155 .cal-timed-duration-v157{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 12px}
.cal-create-panel-v155 .cal-timed-duration-v157 input{grid-column:1/-1;width:100%;accent-color:var(--accent)}
@media(max-width:800px){.cal-organize-preview-area-v155 .cal-preview-calendar-v152{height:calc(100dvh - 300px);min-height:360px;max-height:calc(100dvh - 260px)}.cal-day-items-v147 .cal-item-v147{left:calc(2px + var(--item-lane-left,0%));width:calc(var(--item-lane-width,100%) - 5px)}.cal-week-items-v148 .cal-item-v147{left:calc(2px + var(--item-lane-left,0%));width:calc(var(--item-lane-width,100%) - 5px)}}
@media(max-width:520px){.cal-organize-preview-area-v155 .cal-preview-calendar-v152{height:calc(100dvh - 330px);min-height:320px;max-height:calc(100dvh - 285px)}.cal-create-popover-v156 .cal-timed-duration-v157{grid-column:1}}

/* Preview time blocks obey their schedule and share lanes when times collide. */
.cal-preview-task-v152,.cal-preview-fixed-v152{left:calc(3px + var(--preview-left,0%));right:auto;width:calc(var(--preview-width,100%) - 7px);height:var(--preview-height);min-height:var(--preview-height);box-sizing:border-box}
.cal-preview-task-v152 b,.cal-preview-fixed-v152 b{display:-webkit-box;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}


/* Calendar v1.59: clearer compact cards and a calmer mobile organizer. */
.cal-week-items-v148 .cal-item-time-v147 .material-symbols-rounded{display:none}
@media(max-width:800px){.cal-organize-controls-v155{order:1}.cal-organize-companion-v155{order:2;margin-top:14px}.cal-organize-layout-v155.is-preview-v155 .cal-schedule-preview-v147{order:3}}


/* Calendar v1.60: week cards are intentionally one-line to protect short blocks. */
.cal-week-items-v148 .cal-item-v147 .cal-item-copy-v147 b{-webkit-line-clamp:1}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-item-copy-v147 b{-webkit-line-clamp:1}

/* Todo priority stays visible when the same task is shown on the calendar. */
.cal-priority-tag-v161{display:inline-flex;align-items:center;align-self:center;flex:none;margin-left:4px;padding:1px 5px;border-radius:5px;background:color-mix(in srgb,var(--muted) 10%,var(--surface));color:var(--muted);font-size:8px;font-style:normal;font-weight:720;line-height:1.35;text-transform:capitalize}
.cal-priority-tag-v161.high{color:#b84c4c;background:color-mix(in srgb,#d85050 12%,var(--surface))}
.cal-priority-tag-v161.medium{color:#a9751f;background:color-mix(in srgb,#edb94e 15%,var(--surface))}
.cal-priority-tag-v161.low{color:#43836e;background:color-mix(in srgb,#57b995 13%,var(--surface))}
.cal-item-copy-v147{min-width:0}
.cal-item-copy-v147 b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-item-copy-v147 small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-week-items-v148 .cal-item-copy-v147,.cal-day-items-v147 .cal-item-copy-v147{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:2px}
.cal-week-items-v148 .cal-item-copy-v147 b,.cal-day-items-v147 .cal-item-copy-v147 b{grid-column:1/-1;grid-row:1;min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.cal-week-items-v148 .cal-item-copy-v147 .cal-priority-tag-v161,.cal-day-items-v147 .cal-item-copy-v147 .cal-priority-tag-v161{grid-column:2;grid-row:2;justify-self:end}
.cal-week-items-v148 .cal-item-copy-v147 small,.cal-day-items-v147 .cal-item-copy-v147 small{grid-column:1;grid-row:2;min-width:0}
.cal-week-items-v148 .cal-item-v147.is-overlap-v152 .cal-priority-tag-v161{display:none}

/* Calendar v1.70: continuous week grid with a shared time axis. */
.cal-week-grid-v148{grid-template-columns:50px repeat(7,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.cal-week-time-rail-v170{position:relative;z-index:5;min-width:0;border-right:1px solid var(--line);background:var(--surface);color:var(--muted)}
.cal-week-time-stack-v170{position:sticky;top:58px}
.cal-week-time-head-v170{height:56px;border-bottom:1px solid var(--line)}
.cal-week-time-allday-v170{height:var(--cal-week-all-day-height,0px)}
.cal-week-time-allday-v170.has-all-day{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--raised) 55%,var(--surface))}
.cal-week-hour-labels-v170{position:relative;height:1344px;font-size:10px;text-align:right}
.cal-week-hour-labels-v170 span{position:absolute;right:7px;line-height:1;transform:translateY(-50%)}
.cal-week-column-v148{min-height:310px;overflow:visible;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent}
.cal-week-column-v148:last-child{border-right:0}
.cal-week-column-v148.is-today{box-shadow:none;background:color-mix(in srgb,var(--accent) 2%,var(--surface))}
.cal-week-sticky-v152{border-radius:0}
.cal-week-all-day-slot-v170{height:var(--cal-week-all-day-height,0px);min-height:var(--cal-week-all-day-height,0px);box-sizing:border-box}
.cal-week-all-day-slot-v170>.cal-all-day-lane-v152{min-height:100%;box-sizing:border-box}
@media(max-width:800px){.cal-week-grid-v148{grid-template-columns:44px repeat(7,minmax(146px,1fr));gap:0;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x proximity}.cal-week-time-stack-v170{top:84px}.cal-week-column-v148{min-height:270px;scroll-snap-align:start}}

/* v1.68.8: keep schedule labels readable and make mobile calendar gestures predictable. */
.cal-schedule-choice-v150 button{min-width:0;letter-spacing:normal;text-transform:none}
.cal-schedule-choice-v150 button>.material-symbols-rounded{flex:0 0 16px}
.cal-schedule-choice-v150 button>span{display:block;flex:0 1 auto;min-width:0;max-width:100%;font-size:10px!important;line-height:1.2!important;letter-spacing:normal!important;text-transform:none!important;white-space:normal;word-break:normal;overflow-wrap:normal}
@media(max-width:800px){
  .cal-week-grid-v148{overflow-y:hidden;touch-action:pan-x pan-y}
  .cal-week-items-v148,.cal-day-items-v147{touch-action:auto!important;overscroll-behavior:contain}
  .cal-week-time-rail-v170{position:sticky;left:0;z-index:30;box-shadow:3px 0 8px rgba(15,23,42,.08)}
  .cal-day-hour-labels-v151{position:sticky;left:0;z-index:10;background:var(--surface)}
}
.cal-week-column-v148:has(.cal-all-day-more-v171[open]) .cal-week-sticky-v152{z-index:30}
.cal-all-day-more-v171{position:relative;z-index:2;min-width:0}
.cal-all-day-more-v171>summary{display:flex;align-items:center;justify-content:center;gap:3px;min-height:22px;padding:2px 5px;border:1px dashed color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:6px;color:var(--accent);cursor:pointer;list-style:none;font-size:11px;font-weight:700;line-height:1}
.cal-all-day-more-v171>summary::-webkit-details-marker{display:none}
.cal-all-day-more-v171>summary span{font-size:9px;font-weight:650}
.cal-all-day-overflow-v171{position:absolute;top:calc(100% + 4px);left:0;z-index:31;display:grid;gap:4px;width:max-content;min-width:min(220px,calc(100vw - 32px));max-width:min(300px,calc(100vw - 32px));max-height:min(300px,55vh);overflow:auto;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 10px 30px #172b3a26}
.cal-all-day-overflow-v171 .cal-item-v147{position:relative!important;inset:auto!important;display:grid;width:100%;height:auto!important;min-height:30px!important;overflow:hidden;padding:5px 7px!important;border-radius:6px;background:var(--surface);box-shadow:none!important}
.cal-all-day-overflow-v171 .cal-item-v147 .cal-item-copy-v147 b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}


/* v1.70.1 — keep quick-create controls visible when Event fields expand. */
.cal-create-popover-v156{box-sizing:border-box;max-width:calc(100vw - 24px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
.cal-create-popover-v156 #cal-quick-create-form .dialog-footer{z-index:2;bottom:-16px;}
@media(max-width:520px){.cal-create-popover-v156{max-height:calc(100dvh - 24px);}.cal-create-popover-v156 #cal-quick-create-form .dialog-footer{bottom:-13px;margin:2px -13px -13px;padding:9px 13px max(10px,env(safe-area-inset-bottom));}}
