.app-root .ecal .ectz{--ectz-gutter:20px;--ectz-ease:cubic-bezier(.2, .8, .2, 1);--ectz-soft:color-mix(in srgb, var(--text) 7%, transparent);--ectz-night:color-mix(in srgb, var(--text) 6%, transparent);--ectz-work:color-mix(in srgb, var(--text) 4%, transparent);--ectz-l0:color-mix(in srgb, var(--text) 3%, transparent);--ectz-l1:color-mix(in srgb, var(--text) 8%, transparent);--ectz-l2:color-mix(in srgb, var(--text) 15%, transparent);--ectz-common:color-mix(in srgb, var(--text) 42%, transparent);--ectz-ring:color-mix(in srgb, var(--bg) 85%, transparent);--ectz-danger-soft:color-mix(in srgb, var(--danger) 10%, transparent);background:var(--bg);min-width:0;min-height:0;color:var(--text);font-family:var(--font);flex:1;font-size:14px;line-height:1.45;position:relative;overflow:clip auto}.app-root .ecal .ectz.is-scrubbing,.app-root .ecal .ectz.is-scrubbing *,.app-root .ecal .ectz.is-reordering,.app-root .ecal .ectz.is-reordering *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.app-root .ecal .ectz button:focus-visible,.app-root .ecal .ectz [role=slider]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-root .ecal .ectz-top{z-index:40;padding:0 var(--ectz-gutter);background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0}.app-root .ecal .ectz-bar{align-items:center;gap:10px;min-width:0;height:52px;display:flex}.app-root .ecal .ectz-back{background:0 0;flex:none;gap:2px;margin-left:-4px;padding:0 9px 0 5px;font-weight:500}.app-root .ecal .ectz-title{letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:16px;font-weight:600;line-height:20px;overflow:hidden}.app-root .ecal .ectz-bar-right{flex:none;align-items:center;gap:6px;display:flex}.app-root .ecal .ectz-copy{color:var(--text-2);background:0 0}@media (hover:hover){.app-root .ecal .ectz-copy:hover{color:var(--text);background:var(--bg-hover)}}.app-root .ecal .ectz-hour{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg);flex:none;grid-template-columns:1fr 1fr;height:30px;padding:3px;font-size:12px;line-height:16px;display:inline-grid;position:relative}.app-root .ecal .ectz-hour:before{content:"";border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg-hover);width:calc(50% - 3px);transition:transform .16s var(--ectz-ease);position:absolute;top:3px;bottom:3px;left:3px}.app-root .ecal .ectz-hour[aria-checked=true]:before{transform:translate(100%)}.app-root .ecal .ectz-hour-opt{z-index:1;color:var(--text-3);white-space:nowrap;justify-content:center;align-items:center;padding:0 9px;transition:color .14s;display:inline-flex;position:relative}.app-root .ecal .ectz-hour-opt.is-on{color:var(--text)}.app-root .ecal .ectz-paused{flex-wrap:wrap;align-items:center;gap:8px;padding:0 0 10px;animation:.16s both ectz-fade;display:flex}.app-root .ecal .ectz .ecal-btn.ectz-primary{background:var(--accent);color:var(--accent-text);font-weight:500}@media (hover:hover){.app-root .ecal .ectz .ecal-btn.ectz-primary:hover{background:color-mix(in srgb, var(--accent) 86%, var(--bg))}}@keyframes ectz-blink{0%,42%{opacity:1}50%,92%{opacity:.28}to{opacity:1}}@keyframes ectz-fade{0%{opacity:0}to{opacity:1}}@keyframes ectz-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes ectz-flash{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--text) 45%, transparent)}to{box-shadow:0 0 0 12px color-mix(in srgb, var(--text) 0%, transparent)}}.app-root .ecal .ectz-colon.is-live{animation:1s ease-in-out infinite ectz-blink}.app-root .ecal .ectz-main{max-width:1240px;padding:20px var(--ectz-gutter) 160px;margin:0 auto}.app-root .ecal .ectz-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid;position:relative}.app-root .ecal .ectz-card{border:1px solid var(--line);border-radius:var(--radius-12);background:var(--bg);min-width:0;min-height:210px;transition:border-color .16s var(--ectz-ease), box-shadow .16s var(--ectz-ease);flex-direction:column;padding:18px 20px 20px;display:flex;position:relative}@media (hover:hover){.app-root .ecal .ectz-card:hover{border-color:var(--line-strong)}}.app-root .ecal .ectz-card.is-home{border-color:color-mix(in srgb, var(--text) 55%, transparent)}@media (hover:hover){.app-root .ecal .ectz-card.is-home:hover{border-color:color-mix(in srgb, var(--text) 55%, transparent)}}.app-root .ecal .ectz-card:focus-within,.app-root .ecal .ectz-card.is-editing{z-index:6}.app-root .ecal .ectz-card.is-dragging{z-index:12;box-shadow:var(--raised-shadow);transition:none}.app-root .ecal .ectz-card.is-fresh{animation:ectz-pop .18s var(--ectz-ease) both}.app-root .ecal .ectz-card.is-flash{animation:ectz-flash .7s var(--ectz-ease)}.app-root .ecal .ectz-card-head{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;height:30px;margin:0 -4px 0 0;display:flex;position:relative}.app-root .ecal .ectz-card.is-editing .ectz-card-head,.app-root .ecal .ectz-add .ectz-card-head{cursor:auto;margin:0 -4px}.app-root .ecal .ectz-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:16px;line-height:22px;overflow:hidden}.app-root .ecal .ectz-city{color:var(--text)}.app-root .ecal .ectz-country{color:var(--text-3)}.app-root .ecal .ectz-actions{opacity:0;flex:none;gap:1px;transition:opacity .14s;display:flex}.app-root .ecal .ectz-card:focus-within .ectz-actions{opacity:1}@media (hover:hover){.app-root .ecal .ectz-card:hover .ectz-actions{opacity:1}}@media (hover:none){.app-root .ecal .ectz-actions{opacity:1}}.app-root .ecal .ectz .ectz-act{width:26px;height:26px;color:var(--text-3)}@media (hover:hover){.app-root .ecal .ectz .ectz-act.is-danger:hover{background:var(--ectz-danger-soft);color:var(--danger)}}.app-root .ecal .ectz .ectz-grip{cursor:grab;touch-action:none}.app-root .ecal .ectz-time-row{justify-content:space-between;align-items:flex-start;gap:8px;margin-top:8px;display:flex}.app-root .ecal .ectz-time{color:var(--text);white-space:nowrap;align-items:baseline;gap:6px;line-height:1;display:inline-flex}.app-root .ecal .ectz-digits{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:30px;font-weight:400;line-height:32px}.app-root .ecal .ectz-ap{color:var(--text-3);font-size:20px;line-height:24px}.app-root .ecal .ectz-badges{flex:none;align-items:center;gap:6px;padding-top:3px;display:flex}.app-root .ecal .ectz-rel{border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text-2);font-variant-numeric:tabular-nums;padding:2px 7px;font-size:13px;line-height:17px}.app-root .ecal .ectz-home-tag{border-radius:var(--radius-pill);background:var(--text);color:var(--bg);align-items:center;gap:4px;padding:2px 8px 2px 6px;font-size:11px;font-weight:500;line-height:15px;display:inline-flex}.app-root .ecal .ectz-night{color:var(--text-3);display:inline-flex}.app-root .ecal .ectz-meta{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;margin-top:9px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ectz-sep{color:var(--text-4)}.app-root .ecal .ectz-date-wrap{position:relative}.app-root .ecal .ectz-date{border-radius:var(--radius-4);color:var(--text-2);margin:-1px -4px;padding:1px 4px;font-size:13px;line-height:18px;transition:color .14s,background-color .14s}@media (hover:hover){.app-root .ecal .ectz-date:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal .ectz-date.is-shifted{color:var(--text);text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1px}.app-root .ecal .ectz-date-wrap .ecal-mini{white-space:normal;top:calc(100% + 8px);left:-10px}.app-root .ecal .ectz-scrub{margin-top:auto;padding:16px 9px 0}.app-root .ecal .ectz-track{cursor:pointer;touch-action:pan-y;height:24px;position:relative}.app-root .ecal .ectz-band{pointer-events:none;border-radius:3px;position:absolute;top:3px;bottom:0}.app-root .ecal .ectz-band.is-night{background:var(--ectz-night)}.app-root .ecal .ectz-band.is-work{background:var(--ectz-work)}.app-root .ecal .ectz-ticks{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.app-root .ecal .ectz-tick-q{stroke:var(--text-4);stroke-width:1px}.app-root .ecal .ectz-tick-h{stroke:var(--text-3);stroke-width:1px}.app-root .ecal .ectz-now-mark{background:var(--text);width:5px;height:5px;box-shadow:0 0 0 2px var(--bg);pointer-events:none;border-radius:50%;margin-left:-2.5px;position:absolute;top:-4px}.app-root .ecal .ectz-thumb{background:var(--text);width:20px;height:20px;color:var(--bg);box-shadow:0 0 0 4px var(--ectz-ring), 0 1px 2px #0f0f0f1f;cursor:grab;touch-action:none;transition:left .16s var(--ectz-ease), transform .12s var(--ectz-ease);border-radius:50%;place-items:center;margin:-10px 0 0 -10px;display:grid;position:absolute;top:50%}@media (hover:hover){.app-root .ecal .ectz-thumb:hover{transform:scale(1.08)}}.app-root .ecal .ectz.is-scrubbing .ectz-thumb{transition:transform .12s var(--ectz-ease)}.app-root .ecal .ectz-scale{height:15px;color:var(--text-4);margin-top:6px;font-size:12px;line-height:15px;position:relative}.app-root .ecal .ectz-scale span{position:absolute;top:0;transform:translate(-50%)}.app-root .ecal .ectz-add{border:1px dashed var(--line-strong);background:0 0;padding:0}@media (hover:hover){.app-root .ecal .ectz-add:hover{border-color:var(--text-4)}}.app-root .ecal .ectz-add.is-open{border-style:solid;border-color:var(--line-strong);background:var(--bg);padding:12px 14px}.app-root .ecal .ectz-add-btn{border-radius:inherit;color:var(--text-3);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;transition:color .16s;display:flex}@media (hover:hover){.app-root .ecal .ectz-add-btn:hover{color:var(--text)}}.app-root .ecal .ectz-add-plus{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.app-root .ecal .ectz-add-label{font-size:13px;font-weight:500;line-height:18px}.app-root .ecal .ectz-search{flex:1;min-width:0;position:relative}.app-root .ecal .ectz-search-bar{border:1px solid var(--line-strong);border-radius:var(--radius-10);background:var(--bg);align-items:center;gap:8px;height:32px;padding:0 4px 0 9px;transition:border-color .14s,box-shadow .14s;display:flex}.app-root .ecal .ectz-search-bar:focus-within{border-color:var(--text-2);box-shadow:0 0 0 3px var(--ectz-soft)}.app-root .ecal .ectz-search-icon{color:var(--text-3);display:inline-flex}.app-root .ecal .ectz-search-input{min-width:0;height:100%;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:14px;line-height:18px}.app-root .ecal .ectz-search-input::placeholder{color:var(--text-4)}.app-root .ecal .ectz-search-close{border-radius:var(--radius-6);width:24px;height:24px;color:var(--text-3);flex:none;place-items:center;display:grid}@media (hover:hover){.app-root .ecal .ectz-search-close:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal .ectz-results{z-index:30;border-radius:var(--radius-12);background:var(--raised-solid);box-shadow:var(--raised-shadow);cursor:auto;padding:4px;animation:.12s both ectz-fade;position:absolute;top:calc(100% + 6px);left:-6px;right:-6px;container-type:inline-size}.app-root .ecal .ectz-results ul{margin:0;padding:0;list-style:none}.app-root .ecal .ectz-opt{border-radius:var(--radius-7);height:34px;color:var(--text-2);cursor:pointer;align-items:center;gap:8px;padding:0 8px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ectz-opt.is-active{background:var(--menu-hover,var(--bg-hover));color:var(--text)}.app-root .ecal .ectz-opt-off{border:1px solid var(--line);border-radius:var(--radius-4);color:var(--text-2);font-family:var(--mono);font-variant-numeric:tabular-nums;flex:none;padding:2px 6px;font-size:10.5px;line-height:14px}.app-root .ecal .ectz-opt-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.app-root .ecal .ectz-opt-country{color:var(--text-3)}.app-root .ecal .ectz-opt-city{color:var(--text)}.app-root .ecal .ectz-opt mark{color:var(--text);background:0 0;font-weight:600}.app-root .ecal .ectz-opt-time{color:var(--text-3);font-family:var(--mono);font-variant-numeric:tabular-nums;flex:none;font-size:11px;line-height:14px}.app-root .ecal .ectz-opt-tag{border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--text-3);flex:none;padding:1px 7px;font-size:10.5px;line-height:14px}.app-root .ecal .ectz-opt-icon{color:var(--text-3);display:inline-flex}.app-root .ecal .ectz-opt.is-action .ectz-opt-name{color:inherit}.app-root .ecal .ectz-opt.is-danger,.app-root .ecal .ectz-opt.is-danger .ectz-opt-icon{color:var(--danger)}.app-root .ecal .ectz-results-empty{color:var(--text-3);padding:9px 8px;font-size:13px;line-height:18px}@container (max-width:290px){.app-root .ecal .ectz-opt-time{display:none}}.app-root .ecal .ectz-ov{border:1px solid var(--line);border-radius:var(--radius-12);background:var(--bg-soft);margin-top:32px;padding:18px 18px 14px}.app-root .ecal .ectz-ov-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 20px;margin-bottom:16px;display:flex}.app-root .ecal .ectz-ov-text{flex:280px;min-width:0}.app-root .ecal .ectz-ov-head h2{font-size:13px;font-weight:600;line-height:18px}.app-root .ecal .ectz-ov-sum{max-width:68ch;color:var(--text-3);font-variant-numeric:tabular-nums;margin-top:4px;font-size:13px;line-height:19px}.app-root .ecal .ectz-ov-sum strong{color:var(--text);font-weight:500}.app-root .ecal .ectz-ov-acts{flex-wrap:wrap;gap:6px;display:flex}.app-root .ecal .ectz-ov-body{gap:10px;display:flex}.app-root .ecal .ectz-ov-labels{flex-direction:column;flex:none;gap:3px;width:clamp(64px,16%,150px);min-width:0;display:flex}.app-root .ecal .ectz-ov-corner{height:16px;color:var(--text-4);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;line-height:16px;overflow:hidden}.app-root .ecal .ectz-ov-label{min-width:0;height:22px;color:var(--text-2);align-items:center;gap:5px;font-size:12px;line-height:16px;display:flex}.app-root .ecal .ectz-ov-label span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-root .ecal .ectz-ov-label.is-home{color:var(--text)}.app-root .ecal .ectz-ov-label.is-home svg{flex:none}.app-root .ecal .ectz-ov-cells{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex;position:relative;container-type:inline-size}.app-root .ecal .ectz-ov-hours,.app-root .ecal .ectz-ov-row{grid-template-columns:repeat(24,minmax(0,1fr));gap:2px;display:grid}.app-root .ecal .ectz-ov-hours{height:16px;color:var(--text-3);font-family:var(--mono);font-size:10px;line-height:16px}.app-root .ecal .ectz-ov-hours span{white-space:nowrap;overflow:visible}.app-root .ecal .ectz-ov-hours .is-mid,.app-root .ecal .ectz-ov-hours .is-minor{visibility:hidden}.app-root .ecal .ectz-ov-row{height:22px}.app-root .ecal .ectz-ov-cell{background:var(--ectz-l0);color:#0000;font-family:var(--mono);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;font-size:10px;line-height:14px;transition:background-color .14s;display:flex;position:relative;overflow:hidden}.app-root .ecal .ectz-ov-cell.l1{background:var(--ectz-l1)}.app-root .ecal .ectz-ov-cell.l2{background:var(--ectz-l2)}.app-root .ecal .ectz-ov-cell.is-common{background:var(--ectz-common)}@media (hover:hover){.app-root .ecal .ectz-ov-cell:hover{box-shadow:inset 0 0 0 1px var(--text-3)}}.app-root .ecal .ectz-ov-cell.is-midnight{overflow:visible}.app-root .ecal .ectz-ov-cell.is-midnight:before{content:"";background:var(--text-4);width:1px;position:absolute;top:-2px;bottom:-2px;left:-2px}.app-root .ecal .ectz-ov-band{border:1px solid var(--text);border-radius:var(--radius-6);pointer-events:none;margin:0 -2px;position:absolute;top:18px;bottom:-3px}.app-root .ecal .ectz-ov-now{background:var(--text);width:2px;box-shadow:0 0 0 2px var(--ectz-ring);pointer-events:none;transition:left .16s var(--ectz-ease);border-radius:1px;margin-left:-1px;position:absolute;top:14px;bottom:-5px}.app-root .ecal .ectz.is-scrubbing .ectz-ov-now{transition:none}@container (min-width:380px){.app-root .ecal .ectz-ov-hours .is-mid{visibility:visible}}@container (min-width:620px){.app-root .ecal .ectz-ov-hours .is-minor{visibility:visible}}@container (min-width:720px){.app-root .ecal .ectz-ov-cell{color:var(--text-4)}.app-root .ecal .ectz-ov-cell.l1{color:var(--text-3)}.app-root .ecal .ectz-ov-cell.l2{color:var(--text-2)}.app-root .ecal .ectz-ov-cell.is-common{color:var(--bg)}}.app-root .ecal .ectz-ov-legend{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:14px;font-size:11.5px;line-height:16px;display:flex}.app-root .ecal .ectz-ov-legend span{align-items:center;gap:6px;display:inline-flex}.app-root .ecal .ectz-sw{border-radius:2px;width:10px;height:10px;display:inline-block}.app-root .ecal .ectz-sw.l2{background:var(--ectz-l2)}.app-root .ecal .ectz-sw.l1{background:var(--ectz-l1)}.app-root .ecal .ectz-sw.common{background:var(--ectz-common);box-shadow:0 0 0 1px var(--text)}.app-root .ecal .ectz-toast-region{z-index:60;pointer-events:none;justify-content:flex-end;display:flex;position:fixed;bottom:20px;left:20px;right:20px}.app-root .ecal .ectz-toast{border-radius:var(--radius-16);background:var(--raised-solid);max-width:min(100%,416px);box-shadow:var(--raised-shadow);color:var(--text);pointer-events:auto;animation:ectz-pop .18s var(--ectz-ease) both;align-items:center;gap:10px;padding:12px 16px;font-size:13px;line-height:18px;display:inline-flex}.app-root .ecal .ectz-toast.has-action{padding:8px 8px 8px 16px}.app-root .ecal .ectz-toast button{border-radius:var(--radius-pill);background:var(--bg-hover);height:30px;padding:0 10px;font-weight:600}.app-root .ecal .ectz-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:560px){.app-root .ecal .ectz{--ectz-gutter:16px}.app-root .ecal .ectz-bar{gap:8px}.app-root .ecal .ectz-copy-label{display:none}.app-root .ecal .ectz-hour-opt{padding:0 7px}.app-root .ecal .ectz-main{padding-top:16px}.app-root .ecal .ectz-grid{grid-template-columns:minmax(0,1fr);gap:12px}.app-root .ecal .ectz-card{padding:14px 16px 16px}.app-root .ecal .ectz-ov{margin-top:24px;padding:14px 12px 12px}.app-root .ecal .ectz-ov-body{gap:6px}.app-root .ecal .ectz-ov-labels{width:78px}.app-root .ecal .ectz-ov-label span{white-space:normal;overflow-wrap:anywhere;font-size:11px;line-height:11px}.app-root .ecal .ectz-toast-region{justify-content:center}}@media (prefers-reduced-motion:reduce){.app-root .ecal .ectz-colon.is-live{animation:none!important}.app-root .ecal .ectz-thumb,.app-root .ecal .ectz-ov-now,.app-root .ecal .ectz-hour:before{transition:none!important}}.app-root .ecal .ectz-more{display:none;position:relative}.app-root .ecal .ectz-more-menu{z-index:30;border:1px solid var(--line);border-radius:var(--radius-10);background:var(--raised-solid,var(--surface));min-width:170px;box-shadow:var(--raised-shadow);padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.app-root .ecal .ectz-more-menu button{border-radius:var(--radius-6);height:36px;color:var(--text);text-align:left;align-items:center;gap:8px;padding:0 10px;font-size:14px;display:flex}.app-root .ecal .ectz-more-menu button.is-danger{color:var(--danger)}@media (max-width:767px){.app-root .ecal .ectz-more{display:inline-flex}.app-root .ecal .ectz-actions>.ectz-act:not(.ectz-grip):not(.ectz-more-btn){display:none}}.app-root .ecal .ectz-view{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--bg);flex:none;grid-template-columns:1fr 1fr;height:30px;padding:3px;display:inline-grid;position:relative}.app-root .ecal .ectz-view:before{content:"";border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg-hover);width:calc(50% - 3px);transition:transform .16s var(--ectz-ease);position:absolute;top:3px;bottom:3px;left:3px}.app-root .ecal .ectz-view[data-view=clocks]:before{transform:translate(100%)}.app-root .ecal .ectz-view-opt{z-index:1;border-radius:var(--radius-pill);width:30px;color:var(--text-3);place-items:center;transition:color .14s;display:inline-grid;position:relative}.app-root .ecal .ectz-view-opt.is-on{color:var(--text)}@media (hover:hover){.app-root .ecal .ectz-view-opt:not(.is-on):hover{color:var(--text-2)}}.app-root .ecal .ectz-grid.is-clocks{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:14px}.app-root .ecal .ectz-card.ectz-clock{--ectz-second:#e5484d;border-radius:var(--radius-16);touch-action:pan-y;align-items:center;gap:10px;min-height:0;padding:14px 14px 13px}:root[data-theme=dark] .app-root .ecal .ectz-card.ectz-clock{--ectz-second:#ff6369}@media (hover:hover) and (pointer:fine){.app-root .ecal .ectz-card.ectz-clock:not(.is-editing){cursor:grab}}.app-root .ecal .ectz-card.ectz-clock.is-editing{grid-column:span 2;justify-content:flex-start;align-items:stretch}.app-root .ecal .ectz-clock-head{justify-content:center;align-self:stretch;min-width:0;height:26px;padding:0 26px;display:flex;position:relative}.app-root .ecal .ectz-clock-label{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;flex-wrap:wrap;justify-content:center;align-items:center;column-gap:5px;min-width:0;height:26px;font-size:10px;font-weight:600;line-height:26px;display:flex;overflow:hidden}.app-root .ecal .ectz-clock-city{text-overflow:ellipsis;max-width:100%;color:var(--text-2);overflow:hidden}.app-root .ecal .ectz-clock-country{color:var(--text-4);font-weight:500}.app-root .ecal .ectz-card.is-home .ectz-clock-city{color:var(--text)}.app-root .ecal .ectz-clock .ectz-more{display:inline-flex;position:absolute;top:0;right:-6px}.app-root .ecal .ectz-clock .ectz-more-btn{cursor:pointer}@media (hover:hover){.app-root .ecal .ectz-clock .ectz-more{opacity:0;transition:opacity .14s}.app-root .ecal .ectz-clock:hover .ectz-more,.app-root .ecal .ectz-clock:focus-within .ectz-more{opacity:1}}.app-root .ecal .ectz-clock-dial{aspect-ratio:1;width:min(100%,128px)}.app-root .ecal .ectz-clock-foot{min-height:19px;color:var(--text-3);white-space:nowrap;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.app-root .ecal .ectz-clock-time{color:var(--text);font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:12px;line-height:16px}.app-root .ecal .ectz-clock-rel{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px;line-height:16px}.app-root .ecal .ectz-clock .ectz-home-tag{padding:1px 7px 1px 5px;font-size:10px;line-height:14px}.app-root .ecal .ectz-grid.is-clocks .ectz-add{min-height:150px}.app-root .ecal .ectz-grid.is-clocks .ectz-add.is-open{grid-column:span 2}.app-root .ecal .ectz-dial{width:100%;height:100%;display:block;overflow:visible}.app-root .ecal .ectz-dial-face{fill:var(--bg);stroke:var(--line-strong);stroke-width:1px}.app-root .ecal .ectz-dial-minor{stroke:var(--text-4);stroke-width:.6px;stroke-linecap:round}.app-root .ecal .ectz-dial-major{stroke:var(--text-3);stroke-width:1px;stroke-linecap:round}.app-root .ecal .ectz-dial-numeral{fill:var(--text-3);font-family:var(--font);letter-spacing:.04em;font-size:9px;font-weight:500}.app-root .ecal .ectz-dial-hour,.app-root .ecal .ectz-dial-minute{stroke:var(--text);stroke-linecap:round}.app-root .ecal .ectz-dial-hour{stroke-width:2.8px}.app-root .ecal .ectz-dial-minute{stroke-width:1.7px}.app-root .ecal .ectz-dial-second{stroke:var(--ectz-second);stroke-width:.9px;stroke-linecap:round}.app-root .ecal .ectz-dial-cap{fill:var(--text)}.app-root .ecal .ectz-dial-pin{fill:var(--ectz-second)}.app-root .ecal .ectz-dial-step{display:none}.app-root .ecal .ectz-dial-sweep{transform-box:fill-box;transform-origin:50%;animation:60s linear infinite ectz-sweep}@keyframes ectz-sweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.app-root .ecal .ectz-dial-step{display:inline}.app-root .ecal .ectz-dial-sweep{display:none}.app-root .ecal .ectz-view:before{transition:none!important}}@media (max-width:560px){.app-root .ecal .ectz-grid.is-clocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-root .ecal .ectz-card.ectz-clock{padding:12px 10px}.app-root .ecal .ectz-view-opt{width:26px}}@media (max-width:430px){.app-root .ecal .ectz-title{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-root .ecal .ectz-bar-right{margin-left:auto}}.app-root .ecal .ectz-clock-dial{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:50%}@media (hover:hover) and (pointer:fine){.app-root .ecal .ectz-card.ectz-clock .ectz-clock-dial{cursor:grab}}.app-root .ecal .ectz-card.ectz-clock .ectz-clock-dial.is-turning{cursor:grabbing}.app-root .ecal .ectz-dial-halo{stroke:color-mix(in srgb, var(--text) 20%, transparent);stroke-width:7px;stroke-linecap:round}.app-root .ecal .ectz-clock .ectz-clock-grip{position:absolute;top:0;left:-6px}@media (hover:hover){.app-root .ecal .ectz-clock .ectz-clock-grip{opacity:0;transition:opacity .14s}.app-root .ecal .ectz-clock:hover .ectz-clock-grip,.app-root .ecal .ectz-clock:focus-within .ectz-clock-grip{opacity:1}}.app-root .ecal .ectz-clock-day{color:var(--text-3);text-align:center;font-variant-numeric:tabular-nums;flex-basis:100%;font-size:11px;line-height:14px}
.app-root .ecal .ecal-side .ecal-slot-menu{color:var(--text);align-items:center;gap:4px;margin-left:-5px;padding:2px 5px;display:inline-flex}.app-root .ecal .ecal-side .ecal-slot-menu .side-title-h{font-size:14px;font-weight:600}.app-root .ecal .ecal-side .ecal-slot-menu svg{color:var(--text-3)}.app-root .ecal .ecal-side .ecal-bp-slot{padding:0 6px 96px;overflow-y:auto}.app-root .ecal .ecal-side .ecal-bp-slot>.side-head{margin:0 -6px}.app-root .ecal .ecal-side .ecal-links{padding-bottom:96px;overflow-y:auto}.app-root .ecal .ecal-links-empty{text-align:center;color:var(--text-2);flex-direction:column;align-items:center;gap:6px;margin:24px 16px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-links-empty strong{color:var(--text);font-weight:600}.app-root .ecal .ecal-links-make{color:var(--text);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.app-root .ecal .ecal-links-list{flex-direction:column;gap:2px;margin:0;padding:0 6px;list-style:none;display:flex}.app-root .ecal .ecal-link-row{border-radius:var(--radius-6,6px);cursor:pointer;align-items:flex-start;gap:8px;padding:7px 4px 7px 8px;display:flex}@media (hover:hover){.app-root .ecal .ecal-link-row:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-link-dot{background:var(--hue-blue,#3a7faa);border-radius:50%;flex:none;width:7px;height:7px;margin-top:6px}.app-root .ecal .ecal-link-row.used .ecal-link-dot{background:var(--text-4,var(--text-3))}.app-root .ecal .ecal-link-row.used .ecal-link-main strong{color:var(--text-3)}.app-root .ecal .ecal-link-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.app-root .ecal .ecal-link-main strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:13px;font-weight:600;line-height:18px;overflow:hidden}.app-root .ecal .ecal-link-main span{color:var(--text-3);font-size:12px;line-height:16px}.app-root .ecal .ecal-bp-menu a[role=menuitem]{color:var(--text);border-radius:6px;padding:6px 10px;font-size:13px;text-decoration:none;display:block}@media (hover:hover){.app-root .ecal .ecal-bp-menu a[role=menuitem]:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-links-new{justify-content:center;width:100%;margin-top:6px}.app-root .ecal .ecal-side .ecal-builder{padding:0 6px 96px;overflow-y:auto}.app-root .ecal .ecal-builder-head{gap:6px;margin:0 -6px}.app-root .ecal .ecal-builder-title{min-width:0;height:30px;color:var(--text);font:inherit;background:0 0;border:0;border-radius:6px;flex:1;padding:0 6px;font-size:14px;font-weight:600}.app-root .ecal .ecal-builder-title:focus-visible{background:var(--bg-hover);outline:none}.app-root .ecal .ecal-builder-notes{width:calc(100% - 4px);color:var(--text);font:inherit;resize:vertical;background:0 0;border:0;border-radius:6px;margin:0 2px 6px;padding:6px 8px;font-size:13px;line-height:18px}.app-root .ecal .ecal-builder-notes:focus-visible{background:var(--bg-hover);outline:none}.app-root .ecal .ecal-builder-rows{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding-top:6px;display:flex}.app-root .ecal .ecal-builder-rows>.ecal-bp-te-row,.app-root .ecal .ecal-builder-rows>.ecal-bp-te-adv{padding-left:8px;padding-right:4px}.app-root .ecal .ecal-builder-rows .ecal-bp-te-row select,.app-root .ecal .ecal-builder-rows .ecal-bp-te-row input:not([type=checkbox]){max-width:62%}.app-root .ecal .ecal-builder-times{flex-direction:column;gap:2px;padding:4px 8px 8px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-builder-times strong{color:var(--text);font-weight:600}.app-root .ecal .ecal-builder-time{color:var(--text-2);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:6px;font-size:12px;display:flex}.app-root .ecal .ecal-builder-x{width:18px;height:18px;color:var(--text-3);border-radius:50%;place-items:center;display:grid}@media (hover:hover){.app-root .ecal .ecal-builder-x:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal .ecal-builder-foot{justify-content:flex-end;align-items:center;gap:6px;padding:10px 4px 4px;display:flex}.app-root .ecal .ecal-split{display:inline-flex;position:relative}.app-root .ecal .ecal-split>.ecal-bp-save:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.app-root .ecal .ecal-split-more{border-left:1px solid color-mix(in srgb, var(--bg) 30%, transparent);border-top-left-radius:0;border-bottom-left-radius:0;min-width:0;padding:0 6px}.app-root .ecal .ecal-split-menu{flex-direction:column;min-width:170px;display:flex;position:absolute;top:auto;bottom:calc(100% + 4px);right:0}.app-root .ecal .ecal-split-label{color:var(--text-3);padding:4px 10px 2px;font-size:11px}.app-root .ecal .ecal-builder-hint{color:var(--text-3);margin:8px 8px 0;font-size:12px;line-height:16px}.app-root .ecal .tg-cols.painting .ev{opacity:.55}.app-root .ecal .ecal-paint{z-index:9;cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;display:grid;position:absolute;inset:0}.app-root .ecal .ecal-paint-day{min-width:0;position:relative}.app-root .ecal .ecal-win{border-radius:var(--radius-event);color:color-mix(in oklab, var(--hue-blue,#3a7faa) 72%, var(--text));background:color-mix(in srgb, var(--hue-blue,#3a7faa) 11%, var(--bg));border:1.5px dashed color-mix(in srgb, var(--hue-blue,#3a7faa) 55%, transparent);cursor:grab;justify-content:space-between;align-items:flex-start;gap:4px;padding:3px 6px;font-size:11px;line-height:14px;display:flex;position:absolute;left:1px;right:3px;overflow:hidden}.app-root .ecal .ecal-win.painting{pointer-events:none;background:color-mix(in srgb, var(--hue-blue,#3a7faa) 14%, var(--bg));border-style:solid;border-color:#0000;box-shadow:0 10px 28px -6px #00000047}.app-root .ecal .ecal-win-text{flex-direction:column;min-width:0;display:flex}.app-root .ecal .ecal-win-text strong{font-variant-numeric:tabular-nums;font-weight:600}.app-root .ecal .ecal-win-text small{opacity:.85;font-size:10.5px}.app-root .ecal .ecal-win-x{background:color-mix(in srgb, var(--hue-blue,#3a7faa) 18%, var(--bg));width:16px;height:16px;color:color-mix(in oklab, var(--hue-blue,#3a7faa) 72%, var(--text));cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.app-root .ecal .ecal-win-edge{cursor:ns-resize;height:6px;position:absolute;left:0;right:0}.app-root .ecal .ecal-win-edge.top{top:-3px}.app-root .ecal .ecal-win-edge.bottom{bottom:-3px}.app-root .ecal .ecal-side.ecal-links-sheet.picking{border-top:1px solid var(--line);border-radius:14px 14px 0 0;height:46dvh;top:auto;box-shadow:0 -12px 32px -12px #00000040}.app-root .ecal .ecal-side.ecal-links-sheet .side-head{padding-right:52px}
.app-root .ecal{--gutter:80px;--clock-w:52px;--off:#37352f06;--today:var(--accent);--on-today:var(--accent-text);--radius-event:var(--radius-4);--event-fill-mix:19%;--event-text-mix:62%;--ev-ink-l:.42;--ev-ink-c:.13;--frame-gap:14px;height:100dvh;min-height:0;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;flex-direction:column;font-size:14px;line-height:1.45;display:flex}:root[data-theme=dark] .app-root .ecal{--event-text-mix:88%;--ev-ink-l:.86;--ev-ink-c:.08}.app-root .ecal .ecal-hdr{height:56px;padding:16px var(--frame-gap) 12px 20px;flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.app-root .ecal .ecal-hdr-left,.app-root .ecal .ecal-hdr-right{align-items:center;gap:8px;min-width:0;display:flex}.app-root .ecal .ecal-title-wrap{min-width:0;position:relative}.app-root .ecal .ecal-title-h{min-width:0;font:inherit;margin:0;display:flex}.app-root .ecal .ecal-title{border-radius:var(--radius-6);letter-spacing:-.025em;white-space:nowrap;min-width:0;color:var(--text);transition:background var(--hover-t);align-items:center;gap:4px;margin-left:-6px;padding:4px 6px;font-size:18px;font-weight:600;line-height:1;display:inline-flex}@media (hover:hover){.app-root .ecal button.ecal-title:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-title span{text-overflow:ellipsis;min-width:0;overflow:hidden}.app-root .ecal .ecal-title svg{color:var(--text-3);flex:none}.app-root .ecal .ecal-title:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.app-root .ecal .ecal-mini{z-index:60;border-radius:var(--radius-12);background:var(--raised);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:248px;box-shadow:var(--raised-shadow);padding:10px;position:absolute;top:calc(100% + 6px);left:-6px}.app-root .ecal .ecal-mini-head{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-mini-head strong{font-weight:600}.app-root .ecal .ecal-mini-head .ecal-icon-btn{width:24px;height:24px}.app-root .ecal .ecal-mini-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.app-root .ecal .ecal-mini-dow{height:22px;color:var(--text-3);place-items:center;font-size:10.5px;line-height:14px;display:grid}.app-root .ecal .ecal-mini-cell{border-radius:var(--radius-6);height:30px;color:var(--text);font-variant-numeric:tabular-nums;transition:background var(--hover-t);font-size:12.5px;line-height:16px}@media (hover:hover){.app-root .ecal .ecal-mini-cell:hover{background:var(--menu-hover)}}.app-root .ecal .ecal-mini-cell.out{color:var(--text-4)}.app-root .ecal .ecal-mini-cell.in-view:not(.sel){background:var(--bg-hover);border-radius:0}.app-root .ecal .ecal-mini-cell.sel{background:var(--bg-active);color:var(--text)}.app-root .ecal .ecal-mini-cell.today{background:var(--today);color:var(--on-today)}.app-root .ecal .ecal-mini-cell:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.app-root .ecal .ecal-note{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;line-height:16px;overflow:hidden}.app-root .ecal .ecal-hdr-left>.ecal-title-wrap,.app-root .ecal .ecal-hdr-left>.ecal-title-h,.app-root .ecal .ecal-hdr-right{flex:none}@media (max-width:1099px){.app-root .ecal .ecal-note{display:none}}.app-root .ecal .ecal-btn{border-radius:var(--radius-6);height:26px;color:var(--text);background:var(--bg-hover);transition:background var(--hover-t), transform 80ms;white-space:nowrap;align-items:center;gap:6px;padding:0 9px;font-size:12.5px;display:inline-flex}@media (hover:hover){.app-root .ecal .ecal-btn:hover{background:var(--bg-active)}}.app-root .ecal .ecal-btn:active{transform:translateY(.5px)}.app-root .ecal .ecal-nav{display:flex}.app-root .ecal .ecal-icon-btn{border-radius:var(--radius-7);width:26px;height:28px;color:var(--text-2);transition:background var(--hover-t), color var(--hover-t), transform 90ms ease;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.app-root .ecal .ecal-icon-btn:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal .ecal-icon-btn:active{background:var(--bg-active);transform:scale(.94)}.app-root .ecal .ecal-btn:focus-visible,.app-root .ecal .ecal-icon-btn:focus-visible,.app-root .ecal .tg-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.app-root .ecal .ecal-view{min-height:0;margin:0 var(--frame-gap) var(--frame-gap);border:1px solid var(--line);border-radius:var(--radius-12);background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}@media (max-width:767px){.app-root .ecal{--gutter:58px}.app-root .ecal .ecal-view{border:0;border-top:1px solid var(--line);touch-action:pan-y;border-radius:0;margin:0}.app-root .ecal .ecal-hdr{height:52px;padding:8px 10px 8px 16px}.app-root .ecal .ecal-hdr>.ecal-title-wrap{flex:1}.app-root .ecal .ecal-hdr-right{flex:none}.app-root .ecal .ecal-btn{height:32px;padding:0 11px;font-size:14px}.app-root .ecal .ecal-note{display:none}}.app-root .ecal .ecal-strip{grid-template-columns:var(--gutter) repeat(7, minmax(0, 1fr));border-bottom:1px solid var(--line);touch-action:pan-y;flex:none;display:grid}.app-root .ecal .ecal-strip-day{min-height:48px;color:var(--text-2);flex-direction:column;align-items:center;gap:3px;padding:5px 0;font-size:12px;line-height:16px;display:flex}.app-root .ecal .ecal-strip-day.weekend{background:var(--bg-soft)}.app-root .ecal .ecal-strip-day .dom{border-radius:var(--radius-4);min-width:18px;height:18px;color:var(--text);font-variant-numeric:tabular-nums;place-items:center;padding:0 4px;font-size:12.5px;line-height:18px;display:inline-grid}.app-root .ecal .ecal-strip-day.on .dom{background:var(--bg-active)}.app-root .ecal .ecal-strip-day.today{color:var(--today)}.app-root .ecal .ecal-strip-day.today .dom{background:var(--today);color:var(--on-today);font-size:11.5px;font-weight:600}.app-root .ecal .ecal-strip-day:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.app-root .ecal[data-phone][data-view=day] .tg-head{display:none}.app-root .ecal[data-shell]{flex:1;height:auto}.app-root .ecal .ecal-view-btn{color:var(--text);gap:4px}.app-root .ecal .ecal-view-btn svg{color:var(--text-3)}.app-root .ecal .view-menu-wrap{position:relative}.app-root .ecal .view-menu{width:232px;font-family:var(--font);-webkit-font-smoothing:antialiased}.app-root .ecal .view-menu .menu-sub-wrap{position:relative}.app-root .ecal .view-menu .menu-sub{width:160px;min-width:0;top:-4px;left:auto;right:calc(100% + 2px)}.app-root .ecal .view-menu .menu-hint{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;padding-left:8px;font-size:12px}.app-root .ecal .modal.dialog.ndays{width:320px}.app-root .ecal .ndays-row{align-items:center;gap:10px;font-size:13px;display:flex}.app-root .ecal .ndays-row .input{font-variant-numeric:tabular-nums;width:80px}.app-root .ecal .ndays .btn.outline{background:var(--surface);border-color:var(--line-strong)}@media (hover:hover){.app-root .ecal .ndays .btn.outline:hover{background:var(--bg-hover)}}.app-root .ecal .month{flex-direction:column;flex:1;min-height:0;display:flex}.app-root .ecal .month-head{border-bottom:1px solid var(--line);flex:none;display:grid}.app-root .ecal .month-head div{color:var(--text-2);padding:8px 10px;font-size:12px;line-height:16px}.app-root .ecal .month-grid{flex:1;grid-auto-rows:minmax(0,1fr);min-height:0;display:grid}.app-root .ecal .m-cell{border-left:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;min-height:0;padding:4px;display:flex;position:relative;overflow:hidden;container:m-cell/inline-size}.app-root .ecal .m-cell.first{border-left:0}.app-root .ecal .m-cell.out{background:var(--bg-soft)}.app-root .ecal .m-cell.out .m-date{color:var(--text-4)}.app-root .ecal .m-date{border-radius:var(--radius-6);min-width:22px;height:22px;color:var(--text-2);font-variant-numeric:tabular-nums;align-self:flex-start;place-items:center;padding:0 4px;font-size:12.5px;font-weight:400;line-height:22px;display:inline-grid}.app-root .ecal .m-cell.today .m-date{background:var(--today);color:var(--on-today)}@media (hover:hover){.app-root .ecal button.m-date:hover{background:var(--bg-hover)}.app-root .ecal .m-cell.today button.m-date:hover{background:var(--today)}.app-root .ecal button.m-more:hover{color:var(--text);background:var(--bg-hover)}}.app-root .ecal button.m-date,.app-root .ecal button.m-more{cursor:pointer}.app-root .ecal button.m-more{border-radius:var(--radius-4)}.app-root .ecal button.m-date:focus-visible,.app-root .ecal button.m-more:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.app-root .ecal .m-cell.drop{background:color-mix(in srgb, var(--focus) 8%, transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--focus) 45%, transparent)}.app-root .ecal .m-chip.dragging{opacity:.35}.app-root .ecal .m-chips{flex-direction:column;gap:2px;min-height:0;margin-top:2px;display:flex}.app-root .ecal .m-chip{border-radius:var(--radius-4);white-space:nowrap;align-items:center;gap:5px;height:19px;padding:1px 5px;font-size:11.5px;line-height:17px;display:flex;overflow:hidden}.app-root .ecal .m-chip:before{content:"";background:var(--c);border-radius:50%;flex:none;width:6px;height:6px}.app-root .ecal .m-chip.allday{color:color-mix(in srgb, var(--c) var(--event-text-mix), var(--text));background:color-mix(in srgb, var(--c) var(--event-fill-mix), var(--surface));font-weight:500}.app-root .ecal .m-chip.allday:before{display:none}.app-root .ecal .m-chip.past{opacity:.6}.app-root .ecal .m-chip.done .m-title{text-decoration:line-through}.app-root .ecal .m-time{color:var(--text-3);font-variant-numeric:tabular-nums;flex:none}.app-root .ecal .m-title{text-overflow:ellipsis;overflow:hidden}@container m-cell (max-width:72px){.app-root .ecal .m-chip{gap:3px;padding:1px 3px}.app-root .ecal .m-chip:before{width:5px;height:5px}.app-root .ecal .m-time{display:none}.app-root .ecal .m-title{text-overflow:clip;flex:1;min-width:0;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 10px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 10px),#0000)}}.app-root .ecal .m-more{color:var(--text-3);white-space:nowrap;align-self:flex-start;padding:0 6px;font-size:11px;line-height:16px}@container m-cell (max-width:72px){.app-root .ecal .m-more{padding:0 3px}.app-root .ecal .m-more-word{display:none}}.app-root .ecal .tg{flex-direction:column;flex:1;min-height:0;display:flex}.app-root .ecal .tg-head,.app-root .ecal .tg-allday{border-bottom:1px solid var(--line);padding-right:var(--tg-sb,0px);flex:none;display:flex}.app-root .ecal .tg-gutters{width:calc(var(--gutter) + var(--clock-w) * var(--clocks,0));flex:none;display:flex}.app-root .ecal .tg-clock-head{width:var(--clock-w);color:var(--text-3);border-right:1px solid var(--line);flex-direction:column;justify-content:center;align-items:center;gap:0;font-size:10.5px;line-height:1.2;display:flex;overflow:hidden}.app-root .ecal .tg-clock-head span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;overflow:hidden}.app-root .ecal .tg-clock-head small{color:var(--text-4);font-size:10px}.app-root .ecal .tg-clock-head.primary{width:var(--gutter);border-right:0;flex-direction:row;justify-content:flex-end;padding:0 8px 0 4px}.app-root .ecal .tg-allday .tg-gutters{justify-content:flex-end}.app-root .ecal .tg-gutter.secondary{width:var(--clock-w);border-right:1px solid var(--line);background:var(--bg-soft)}.app-root .ecal .tg-gutter.secondary .tg-hour-label{text-align:center;width:100%;color:var(--text-2);left:0;right:auto}.app-root .ecal .tg-gutter.secondary .tg-hour-label.night{color:var(--text-4)}.app-root .ecal .tg-offhours{background:var(--off);pointer-events:none;position:absolute;left:0;right:0}.app-root .ecal .tg-days{flex:1;min-width:0;display:grid}.app-root .ecal .tg-day-head{height:28px;color:var(--text-2);border-left:1px solid var(--line);justify-content:center;align-items:center;gap:5px;font-size:12px;line-height:16px;display:flex}.app-root .ecal .tg-day-head .dow{color:var(--text-3)}.app-root .ecal .tg-day-head .dom{color:var(--text);font-variant-numeric:tabular-nums;font-weight:500}.app-root .ecal .tg-day-head.weekend{background:var(--off)}.app-root .ecal .tg-day-head.today .dow{color:var(--today);font-weight:600}.app-root .ecal .tg-day-head.today .dom{border-radius:var(--radius-4);background:var(--today);min-width:18px;height:18px;color:var(--on-today);place-items:center;padding:0 4px;font-size:11.5px;font-weight:600;line-height:18px;display:inline-grid}.app-root .ecal .tg-allday-label{width:var(--gutter);color:var(--text-3);justify-content:flex-end;align-items:center;padding-right:8px;font-size:10.5px;line-height:14px;display:flex}.app-root .ecal .tg-allday-grid{display:grid;position:relative}.app-root .ecal .tg-allday-cell{border-left:1px solid var(--line);min-height:0}.app-root .ecal .tg-allday-cell.weekend{background:var(--off)}.app-root .ecal .allday-bar{--fill:color-mix(in srgb, var(--c) 19%, var(--bg));z-index:1;border-radius:var(--radius-event);min-width:0;height:20px;color:color-mix(in srgb, var(--c) 62%, var(--text));background:var(--fill);box-shadow:0 0 0 1px var(--bg);align-items:center;margin:1px 2px;padding:0 8px 0 11px;font-size:11.5px;font-weight:500;line-height:20px;display:flex;position:relative}.app-root .ecal .allday-bar:before{content:"";background:var(--c);border-radius:2px;width:3px;position:absolute;top:4px;bottom:4px;left:4px}.app-root .ecal .allday-bar .bar-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-root .ecal .allday-bar.cont-l{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.app-root .ecal .allday-bar.cont-l:before{display:none}.app-root .ecal .allday-bar.cont-r{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.app-root .ecal .tg-scroll{min-height:0;padding-bottom:var(--tg-below,0px);flex:1;position:relative;overflow:hidden auto}.app-root .ecal .tg-body{display:flex;position:relative}.app-root .ecal .tg-gutter{width:var(--gutter);flex:none;position:relative}.app-root .ecal .tg-hour-label{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;line-height:14px;position:absolute;right:8px;transform:translateY(-50%)}.app-root .ecal .tg-now-label{z-index:3;border-radius:var(--radius-4);background:var(--today);color:var(--on-today);font-variant-numeric:tabular-nums;white-space:nowrap;padding:1px 5px;font-size:10.5px;font-weight:600;line-height:14px;position:absolute;right:6px;transform:translateY(-50%)}@media (max-width:767px){.app-root .ecal .tg-now-label{padding:1px 3px;font-size:10px;right:2px}}.app-root .ecal .tg-cols{background-image:repeating-linear-gradient(to bottom, var(--line) 0, var(--line) 1px, transparent 1px, transparent var(--hh));flex:1;min-width:0;display:grid;position:relative}.app-root .ecal .tg-col{border-left:1px solid var(--line);position:relative}.app-root .ecal .tg-col.weekend{background:var(--off)}.app-root .ecal .tg-col.weekend .tg-offhours{background:0 0}.app-root .ecal .tg-now{z-index:1;background:var(--today);pointer-events:none;height:2px;margin-top:-1px;position:absolute;left:0;right:0}.app-root .ecal .tg-now-faint{z-index:1;background:color-mix(in srgb, var(--today) 18%, transparent);pointer-events:none;height:1px;position:absolute;left:0;right:0}.app-root .ecal .tg-now-dot{z-index:9;background:var(--today);pointer-events:none;border-radius:1.5px;width:3px;height:10px;margin-top:-5px;position:absolute;left:0}.app-root .ecal .ev{--fill:color-mix(in srgb, var(--c) 19%, var(--bg));--ink:color-mix(in oklab, var(--c) 55%, var(--text));z-index:2;border-radius:var(--radius-event);color:var(--ink);background:var(--fill);box-shadow:0 0 0 1.5px var(--bg);padding:3px 5px 3px 11px;position:absolute;overflow:hidden}@supports (color:oklch(from red l c h)){.app-root .ecal .ev{--ink:oklch(from var(--c) var(--ev-ink-l) min(c, var(--ev-ink-c)) h)}}.app-root .ecal .ev:before{content:"";background:var(--c);border-radius:1.5px;width:3px;position:absolute;top:4px;bottom:4px;left:4px}.app-root .ecal .ev-inner{min-width:0;height:min(100%, var(--text-h,100%));flex-direction:column;gap:0;display:flex}.app-root .ecal .ev-title{align-items:center;gap:3px;font-size:11px;font-weight:500;line-height:1.3;display:flex;overflow:hidden}.app-root .ecal .ev-title span{text-overflow:ellipsis;-webkit-line-clamp:var(--lines,1);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.app-root .ecal .ev-big .ev-title{font-size:12px}.app-root .ecal .ev-bar .ev-inner{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-root .ecal .ev-time,.app-root .ecal .ev-loc{opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:11px;line-height:1.45;overflow:hidden}.app-root .ecal .ev-compact{padding-top:0;padding-bottom:0}.app-root .ecal .ev-compact .ev-inner{flex-direction:row;align-items:center;gap:5px;height:100%}.app-root .ecal .ev-compact .ev-title{white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block}.app-root .ecal .ev-compact:before{top:2px;bottom:2px}.app-root .ecal .ev-compact .ev-time{flex:none}.app-root .ecal .ev-narrow{padding-left:7px;padding-right:2px}.app-root .ecal .ev-narrow:before{width:2px;left:3px}.app-root .ecal .ev-narrow .ev-time,.app-root .ecal .ev-narrow .ev-loc{text-overflow:clip;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 6px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 6px),#0000)}.app-root .ecal .ev-focus{background-image:repeating-linear-gradient(135deg, transparent 0 6px, color-mix(in srgb, var(--c) 9%, transparent) 6px 7px)}.app-root .ecal .ev-hold{color:var(--text-3);background:repeating-linear-gradient(135deg, var(--bg-soft) 0 5px, var(--bg-active) 5px 6px);box-shadow:inset 0 0 0 1px var(--line-strong)}.app-root .ecal .ev-hold:before{background:var(--text-4)}.app-root .ecal .ev-declined .ev-title{text-decoration:line-through}.app-root .ecal .ev-needs-reply{background:var(--bg);box-shadow:0 0 0 1.5px var(--bg), inset 0 0 0 1px color-mix(in srgb, var(--c) 55%, transparent);background-image:repeating-linear-gradient(135deg, transparent 0 6px, color-mix(in srgb, var(--c) 10%, transparent) 6px 8px)}.app-root .ecal .ev-title svg{opacity:.75;flex:none}.app-root .ecal .ev-task{--fill:var(--bg);color:var(--text-2);box-shadow:0 0 0 1.5px var(--bg), inset 0 0 0 1px color-mix(in srgb, var(--hue-slate) 60%, transparent);padding-left:6px}.app-root .ecal .ev-task:before{display:none}.app-root .ecal .ev-task-done{opacity:.6}.app-root .ecal .ev-task-done .ev-title span{text-decoration:line-through}.app-root .ecal .ecal-status{border-top:1px solid var(--line);color:var(--text-2);flex:none;padding:6px 12px;font-size:12px;line-height:16px}.app-root .ecal .ev-taskbox{border-radius:var(--radius-4);border:1.5px solid color-mix(in srgb, var(--text) 45%, transparent);color:#fff;cursor:pointer;background:0 0;flex:none;place-items:center;width:12px;height:12px;padding:0;display:grid}.app-root .ecal .ev-taskbox.on{background:var(--text-3);border-color:var(--text-3)}.app-root .ecal .ev-taskbox:focus-visible,.app-root .ecal .ev-open:focus-visible,.app-root .ecal .allday-fold:focus-visible{outline:2px solid var(--focus);outline-offset:1px}@media (pointer:coarse){.app-root .ecal .ev-taskbox{position:relative}.app-root .ecal .ev-taskbox:after{content:"";position:absolute;inset:-8px}.app-root .ecal .ecal-hdr .ecal-title,.app-root .ecal .ecal-hdr .ecal-btn{position:relative}.app-root .ecal .ecal-hdr .ecal-title:after,.app-root .ecal .ecal-hdr .ecal-btn:after{content:"";position:absolute;inset:calc(-22px + 50%) -2px}.app-root .ecal .allday-fold:after{content:"";position:absolute;inset:-1px -2px -23px}.app-root .ecal .pmonth-box .ev-taskbox:after{inset:-15px -5px -15px -25px}.app-root .ecal .pmonth-title.ev-open{position:relative}.app-root .ecal .pmonth-title.ev-open:after{content:"";position:absolute;inset:-12px 0}}.app-root .ecal .ev-task .ev-title{gap:4px}.app-root .ecal .ev-task-title{text-overflow:ellipsis;-webkit-line-clamp:var(--lines,1);-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.app-root .ecal .ev-task.ev-compact .ev-title{align-items:center;min-width:0;display:flex}.app-root .ecal .ev-compact .ev-task-title{white-space:nowrap;display:block}.app-root .ecal .ev-task-done .ev-task-title{text-decoration:line-through}.app-root .ecal .ev-open{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}@media (hover:hover){.app-root .ecal .ev-open:hover{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:2px}}.app-root .ecal .allday-task{color:var(--text-2);background:var(--bg);box-shadow:0 0 0 1px var(--bg), inset 0 0 0 1px color-mix(in srgb, var(--hue-slate) 60%, transparent);gap:5px;padding:0 8px 0 5px;font-weight:400}.app-root .ecal .allday-task:before{display:none}.app-root .ecal .allday-task .bar-title{min-width:0}.app-root .ecal .allday-task.done{opacity:.6}.app-root .ecal .allday-task.done .bar-title{text-decoration:line-through}.app-root .ecal .allday-fold{z-index:1;border-radius:var(--radius-4);height:20px;color:var(--text-3);white-space:nowrap;cursor:pointer;background:0 0;border:0;justify-self:start;margin:1px 2px;padding:0 6px;font-size:11px;line-height:20px;position:relative}@media (hover:hover){.app-root .ecal .allday-fold:hover{color:var(--text);background:var(--bg-hover)}}.app-root .ecal .m-chip.m-task:before{width:7px;height:7px;box-shadow:inset 0 0 0 1.25px color-mix(in srgb, var(--text) 45%, transparent);background:0 0;border-radius:2px}.app-root .ecal .m-chip.m-task{color:var(--text-2)}.app-root .ecal .m-chip .ev-open.m-title{white-space:nowrap;min-width:0}.app-root .ecal .ev-narrow .ev-title span,.app-root .ecal .ev-narrow .ev-task-title{-webkit-line-clamp:unset;max-height:calc(var(--lines,1) * 1.2 * 11px);text-overflow:clip;line-height:1.2;display:block;overflow:hidden}.app-root .ecal .ev-narrow.ev-big .ev-title span,.app-root .ecal .ev-narrow.ev-big .ev-task-title{max-height:calc(var(--lines,1) * 1.2 * 12px)}.app-root .ecal .ev-narrow.ev-compact .ev-title{text-overflow:clip}.app-root .ecal .pmonth{flex-direction:column;flex:1;min-height:0;display:flex}.app-root .ecal .pmonth .month-head div{text-align:center;color:var(--text-3);padding:6px 0;font-size:11px;line-height:14px}.app-root .ecal .pmonth-grid{border-bottom:1px solid var(--line);flex:none;display:grid}.app-root .ecal .pmonth-day{height:46px;color:var(--text);flex-direction:column;align-items:center;gap:3px;padding:5px 0 0;display:flex}.app-root .ecal .pmonth-day.out{color:var(--text-4)}.app-root .ecal .pmonth-num{border-radius:var(--radius-6);font-variant-numeric:tabular-nums;place-items:center;min-width:26px;height:26px;padding:0 4px;font-size:15px;line-height:26px;display:inline-grid}.app-root .ecal .pmonth-day.sel .pmonth-num{background:var(--bg-active);font-weight:600}.app-root .ecal .pmonth-day.today .pmonth-num{background:var(--today);color:var(--on-today);font-weight:600}.app-root .ecal .pmonth-dots{gap:3px;height:5px;display:flex}.app-root .ecal .pmonth-dots i{background:var(--c);border-radius:50%;width:5px;height:5px}.app-root .ecal .pmonth-day.out .pmonth-dots i{opacity:.45}.app-root .ecal .pmonth-day:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.app-root .ecal .pmonth-list{flex:1;min-height:0;padding:6px 0 12px;overflow-y:auto}.app-root .ecal .pmonth-item{align-items:flex-start;gap:10px;padding:12px 16px;font-size:15px;line-height:20px;display:flex}.app-root .ecal .pmonth-item+.pmonth-item{border-top:1px solid var(--line)}.app-root .ecal .pmonth-time{width:64px;color:var(--text-2);font-variant-numeric:tabular-nums;flex-direction:column;flex:none;font-size:13px;line-height:20px;display:flex}.app-root .ecal .pmonth-time small{color:var(--text-3);font-size:12px;line-height:16px}.app-root .ecal .pmonth-bar{background:var(--c);border-radius:1.5px;flex:none;align-self:stretch;width:3px}.app-root .ecal .pmonth-box{flex:none;place-items:center;width:14px;height:20px;display:grid}.app-root .ecal .pmonth-box .ev-taskbox{width:14px;height:14px}.app-root .ecal .pmonth-text{flex-direction:column;flex:1;min-width:0;display:flex}.app-root .ecal .pmonth-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-root .ecal .pmonth-text small{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:18px;overflow:hidden}.app-root .ecal .pmonth-item.task{color:var(--text-2)}.app-root .ecal .pmonth-item.done .pmonth-title,.app-root .ecal .pmonth-item.declined .pmonth-title{text-decoration:line-through}.app-root .ecal .pmonth-item.done{opacity:.6}.app-root .ecal .pmonth-none{color:var(--text-3);margin:0;padding:14px 16px;font-size:14px;line-height:20px}.app-root .ecal .tg-cols.editable{cursor:default;-webkit-user-select:none;user-select:none}.app-root .ecal .ev-opens,.app-root .ecal .allday-bar.opens,.app-root .ecal .m-chip.opens,.app-root .ecal .pmonth-item.opens{cursor:pointer}.app-root .ecal .ev-chosen,.app-root .ecal .allday-bar.chosen,.app-root .ecal .m-chip.chosen{box-shadow:0 0 0 1.5px var(--bg), 0 0 0 3px color-mix(in srgb, var(--c) 70%, var(--text));z-index:4}.app-root .ecal .ev-dragging{opacity:.35}.app-root .ecal .ev-ghost{z-index:6;opacity:.92;pointer-events:none;box-shadow:0 0 0 1.5px var(--bg), 0 6px 16px -4px #0f0f0f38}.app-root .ecal .ev-ghost .ev-time{opacity:.8}.app-root .ecal .ev-resize{cursor:ns-resize;height:6px;position:absolute;bottom:0;left:0;right:0}.app-root .ecal .tg-scroll:has(.ev-ghost){cursor:grabbing}.app-root .ecal .ev-resize.top{top:0;bottom:auto}.app-root .ecal .ev-resize-sm{height:4px}.app-root .ecal .ev-placeholder{z-index:3;border-radius:var(--radius-event);background:color-mix(in srgb, var(--text) 11%, var(--bg));pointer-events:none;position:absolute;left:1px;right:7px}.app-root .ecal .drag-float{z-index:80;pointer-events:none;opacity:.94;position:fixed}.app-root .ecal .drag-float .ev{width:100%;box-shadow:var(--raised-shadow);position:relative;inset:auto}.app-root .ecal .tg[data-dragging],.app-root .ecal .tg[data-dragging] *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.app-root .ecal .tg[data-dragging] .ev-resize{pointer-events:none}.app-root .ecal .tg[data-refused],.app-root .ecal .tg[data-refused] *{cursor:not-allowed!important}@media (pointer:coarse){.app-root .ecal .tg-cols{touch-action:pan-y}}.app-root .ecal .tg-fine .tg-cols,.app-root .ecal .tg-fine .tg-cols *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='3'%3E%3Crect x='0' y='0' width='22' height='3' rx='1.5' fill='%23ffe0a9'/%3E%3Crect x='1' y='0.5' width='20' height='2' rx='1' fill='%23ffd88f'/%3E%3C/svg%3E") 11 1,crosshair}.app-root .ecal .slot-marker{z-index:45;background:color-mix(in srgb, var(--text) 70%, transparent);pointer-events:none;height:2px;margin-top:-1px;position:absolute;left:1px;right:3px}.app-root .ecal .slot-marker span{border-radius:var(--radius-4);background:var(--text);color:var(--bg);font-variant-numeric:tabular-nums;white-space:nowrap;padding:2px 5px;font-size:10px;font-weight:500;line-height:1.2;position:absolute;top:50%;left:0;transform:translateY(-50%)}.app-root .ecal .ecal-editor{z-index:70;border-radius:var(--radius-12);background:var(--raised-solid);width:320px;max-height:calc(100dvh - 24px);box-shadow:var(--raised-shadow);flex-direction:column;gap:10px;padding:14px;font-size:13px;line-height:18px;display:flex;position:fixed;overflow-y:auto}.app-root .ecal .ecal-ed-title{width:100%;box-shadow:none;appearance:none;color:var(--text);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;outline:none;padding:2px 0 4px;font-size:16px;font-weight:600;line-height:22px}.app-root .ecal .ecal-ed-title:focus{border-bottom-color:var(--line-strong);box-shadow:none;outline:none}.app-root .ecal .ecal-ed-when{flex-direction:column;gap:6px;display:flex}.app-root .ecal .ecal-ed-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.app-root .ecal .ecal-ed-row input{flex:1 1 0;min-width:0}.app-root .ecal .ecal-ed-row input,.app-root .ecal .ecal-ed-select,.app-root .ecal .ecal-ed-input,.app-root .ecal .ecal-ed-notes{border:1px solid var(--line);border-radius:var(--radius-6);background:var(--bg);height:30px;font:inherit;color:var(--text);font-variant-numeric:tabular-nums;padding:0 8px;font-size:13px;line-height:18px}.app-root .ecal .ecal-ed-select,.app-root .ecal .ecal-ed-input,.app-root .ecal .ecal-ed-notes{width:100%}.app-root .ecal .ecal-ed-notes{resize:vertical;height:auto;min-height:60px;padding:6px 8px}.app-root .ecal .ecal-ed-row input:focus,.app-root .ecal .ecal-ed-select:focus,.app-root .ecal .ecal-ed-input:focus,.app-root .ecal .ecal-ed-notes:focus{outline:2px solid var(--focus);outline-offset:-1px}.app-root .ecal .ecal-ed-quiet{border-radius:var(--radius-4);text-align:left;width:100%;min-height:24px;color:var(--text-3);overflow-wrap:anywhere;margin:-2px 0;padding:3px 0;font-size:13px;line-height:18px;display:block}.app-root .ecal .ecal-ed-quiet.filled{color:var(--text)}.app-root .ecal .ecal-ed-quiet.multi.filled{white-space:pre-wrap;max-height:108px;color:var(--text-2);overflow:hidden}@media (hover:hover){.app-root .ecal .ecal-ed-quiet:hover{color:var(--text)}}.app-root .ecal .ecal-ed-quiet:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-root .ecal .ecal-ed-dash{color:var(--text-3)}.app-root .ecal .ecal-ed-check{color:var(--text-2);align-items:center;gap:6px;font-size:13px;line-height:18px;display:inline-flex}.app-root .ecal .ecal-ed-delete{border-radius:var(--radius-6);height:28px;color:var(--danger);align-self:flex-start;margin-left:-6px;padding:0 6px;font-size:13px;line-height:18px}@media (hover:hover){.app-root .ecal .ecal-ed-delete:hover{background:color-mix(in srgb, var(--danger) 10%, transparent)}}.app-root .ecal .ecal-ed-ro-title{margin:0;font-size:16px;font-weight:600;line-height:22px}.app-root .ecal .ecal-ed-line{color:var(--text-2);margin:0}.app-root .ecal .ecal-ed-notes-ro{white-space:pre-wrap;color:var(--text-2);margin:0}.app-root .ecal .ecal-ed-why{border-top:1px solid var(--line);color:var(--text-3);margin:4px 0 0;padding-top:8px;font-size:12px;line-height:16px}.app-root .ecal .ecal-sheet-scrim{z-index:70;background:#0f0f0f47;align-items:flex-end;display:flex;position:fixed;inset:0}.app-root .ecal .ecal-sheet{width:100%;max-height:86dvh;padding:6px 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--raised-solid);box-shadow:var(--raised-shadow);border-radius:14px 14px 0 0;flex-direction:column;gap:12px;font-size:15px;line-height:20px;display:flex;overflow-y:auto}.app-root .ecal .ecal-sheet-head{justify-content:flex-end;align-items:center;height:44px;display:flex;position:relative}.app-root .ecal .ecal-sheet-grab{background:var(--line-strong);border-radius:3px;width:36px;height:5px;margin-left:-18px;position:absolute;top:6px;left:50%}.app-root .ecal .ecal-sheet-done{min-width:44px;height:44px;color:var(--text);padding:0 4px;font-size:15px;font-weight:600;line-height:20px}.app-root .ecal .ecal-sheet .ecal-ed-title{min-height:44px;font-size:18px;line-height:24px}.app-root .ecal .ecal-sheet .ecal-ed-row input,.app-root .ecal .ecal-sheet .ecal-ed-select,.app-root .ecal .ecal-sheet .ecal-ed-input,.app-root .ecal .ecal-sheet .ecal-ed-notes,.app-root .ecal .ecal-sheet .ecal-ed-check,.app-root .ecal .ecal-sheet .ecal-ed-delete{min-height:44px;font-size:15px;line-height:20px}.app-root .ecal .ecal-sheet .ecal-ed-row input,.app-root .ecal .ecal-sheet .ecal-ed-select,.app-root .ecal .ecal-sheet .ecal-ed-input,.app-root .ecal .ecal-sheet .ecal-ed-notes{font-size:16px}.app-root .ecal .ecal-sheet .ecal-ed-delete{height:44px}.app-root .ecal .ecal-sheet .ecal-ed-quiet{min-height:44px;padding:12px 0;font-size:15px;line-height:20px}.app-root .ecal .ecal-toasts{z-index:90;right:16px;bottom:calc(24px + env(safe-area-inset-bottom,0px));pointer-events:none;flex-direction:column-reverse;align-items:flex-end;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed}.app-root .ecal .ecal-toasts .ecal-toast{pointer-events:auto}.app-root .ecal[data-shell]:not([data-phone]) .ecal-toasts{bottom:var(--toast-bottom,82px)}.app-root .ecal[data-shell][data-phone] .ecal-toasts{width:auto;left:16px;right:16px;bottom:calc(var(--askbar-top,120px) + 24px + env(safe-area-inset-bottom,0px));align-items:center}.app-root .ecal .allday-task.drags{cursor:grab;touch-action:none}.app-root .ecal .allday-task.dragging{opacity:.35}.app-root .ecal .tg-allday-cell.drop{background:color-mix(in srgb, var(--hue-slate) 14%, transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--hue-slate) 55%, transparent)}.app-root .ecal .pmonth-day.drop .pmonth-num{box-shadow:0 0 0 2px var(--text-3)}.app-root .ecal .pmonth-item.task{touch-action:pan-y}.app-root .ecal .pmonth-carry{z-index:95;border-radius:var(--radius-6);background:var(--raised-solid);max-width:60vw;box-shadow:var(--raised-shadow);color:var(--text);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;padding:6px 10px;font-size:13px;line-height:18px;position:fixed;overflow:hidden;transform:translate(-50%,-140%)}.app-root .ecal .ecal-moved{border-bottom:1px solid var(--line);color:var(--text-2);flex-wrap:wrap;flex:none;align-items:baseline;gap:2px 8px;padding:7px 12px;font-size:12.5px;line-height:18px;display:flex}.app-root .ecal .ecal-moved button{color:var(--text);padding:0;font-size:12.5px;font-weight:500;line-height:18px}@media (hover:hover){.app-root .ecal .ecal-moved button:hover{text-underline-offset:2px;text-decoration:underline}}.app-root .ecal .ecal-moved button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-root .ecal .ecal-moved-acts{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.app-root .ecal .ecal-moved-acts>span[aria-hidden]{color:var(--text-4)}@media (pointer:coarse){.app-root .ecal .ecal-moved button{position:relative}.app-root .ecal .ecal-moved button:after{content:"";position:absolute;inset:-13px -6px}}.app-root .ecal .ecal-ed-zone{flex-direction:column;gap:4px;display:flex}.app-root .ecal .ecal-ed-zone-list{flex-direction:column;max-height:200px;display:flex;overflow-y:auto}.app-root .ecal .ecal-ed-zone-row{border-radius:var(--radius-6);text-align:left;min-height:30px;color:var(--text);justify-content:space-between;align-items:baseline;gap:8px;padding:5px 8px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-ed-zone-row small{color:var(--text-3);white-space:nowrap;font-size:12px;line-height:16px}.app-root .ecal .ecal-ed-zone-row:focus-visible{background:var(--menu-hover)}@media (hover:hover){.app-root .ecal .ecal-ed-zone-row:hover{background:var(--menu-hover)}}.app-root .ecal .ecal-sheet .ecal-ed-zone-row{min-height:44px;font-size:15px;line-height:20px}.app-root .ecal .ev-more{z-index:1;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--c) 30%, var(--bg));min-width:22px;height:16px;color:var(--ink,var(--text));font-variant-numeric:tabular-nums;padding:0 5px;font-size:10.5px;font-weight:600;line-height:16px;position:absolute;top:2px;right:2px}.app-root .ecal .ev-more:focus-visible{outline:2px solid var(--focus);outline-offset:1px}@media (pointer:coarse){.app-root .ecal .ev-more:after{content:"";position:absolute;inset:-14px -11px}}.app-root .ecal .ev-has-more .ev-inner{margin-right:24px}.app-root .ecal .ev-more-below .ev-inner{padding-top:18px}.app-root .ecal .ev-rail{z-index:3;background:var(--c);pointer-events:none;border-radius:1.5px;width:3px;position:absolute}.app-root .ecal .ecal-ov{gap:0}.app-root .ecal .ecal-editor.ecal-ov{padding:6px}.app-root .ecal .ecal-ov-list{margin:0;padding:0;list-style:none}.app-root .ecal .ecal-ov-item{border-radius:var(--radius-6);align-items:center;gap:10px;min-height:44px;padding:0 8px;display:flex}.app-root .ecal .ecal-ov-item+.ecal-ov-item{border-top:1px solid var(--line)}.app-root .ecal .ecal-ov-bar{background:var(--c);border-radius:1.5px;flex:none;align-self:stretch;width:3px;margin:8px 0}.app-root .ecal .ecal-ov-box{flex:none;place-items:center;width:14px;display:grid}.app-root .ecal .ecal-ov-row{text-align:left;min-width:0;min-height:44px;color:var(--text);flex-direction:column;flex:1;justify-content:center;align-items:flex-start;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-sheet .ecal-ov-row{font-size:15px;line-height:20px}.app-root .ecal .ecal-ov-row small{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px;line-height:16px}.app-root .ecal .ecal-ov-title{overflow-wrap:break-word}.app-root .ecal .ecal-ov-item.done .ecal-ov-title{color:var(--text-3);text-decoration:line-through}@media (hover:hover){.app-root .ecal .ecal-editor .ecal-ov-row:hover{color:var(--text)}.app-root .ecal .ecal-editor .ecal-ov-item:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-ov-row:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-root .ecal .ecal-editor.ecal-pp{width:300px;padding:12px 6px 6px;top:64px;right:24px}.app-root .ecal .ecal-pp-title{color:var(--text);margin:0 0 4px;padding:0 8px;font-size:13px;font-weight:600;line-height:18px}.app-root .ecal .ecal-sheet .ecal-pp-title{font-size:17px;line-height:24px}.app-root .ecal .ecal-pp-note{color:var(--text-3);margin:0;padding:8px;font-size:13px;line-height:18px}.app-root .ecal .ecal-editor.ecal-bp{width:340px;max-height:calc(100dvh - 88px);padding:12px 6px 10px;overflow-y:auto}.app-root .ecal .ecal-bp-head{justify-content:space-between;align-items:center;padding-right:4px;display:flex}.app-root .ecal .ecal-bp-link{align-items:center;gap:6px;min-height:32px;padding:0 4px 0 8px;display:flex}.app-root .ecal .ecal-bp-link a{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;flex:1;font-size:13px;line-height:18px;overflow:hidden}.app-root .ecal .ecal-bp-row{min-height:32px;color:var(--text);padding:0 8px}.app-root .ecal .ecal-bp-paused{border-radius:var(--radius-6);background:var(--bg-hover);color:var(--text-2);margin:0 8px 4px;padding:6px 8px;font-size:12px;line-height:16px}.app-root .ecal .ecal-bp-away{text-align:left;color:var(--text-2);margin:0 8px 4px;padding:0;font-size:12px;line-height:16px;display:block}@media (hover:hover){.app-root .ecal .ecal-bp-away:hover{color:var(--text);text-decoration:underline}}.app-root .ecal .ecal-bp-failed{color:var(--danger)}.app-root .ecal .ecal-bp-new{justify-content:center;align-items:center;gap:6px;width:calc(100% - 16px);margin:6px 8px;display:flex}.app-root .ecal .ecal-bp-types{margin:0;padding:0;list-style:none}.app-root .ecal .ecal-bp-type{border-radius:var(--radius-6);cursor:pointer;align-items:center;gap:4px;min-height:44px;padding:4px 4px 4px 2px;display:flex}@media (hover:hover){.app-root .ecal .ecal-bp-type:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-bp-type.dim .ecal-bp-type-main{opacity:.55}.app-root .ecal .ecal-bp-type.dragging{opacity:.4}.app-root .ecal .ecal-bp-grip{width:16px;height:24px;color:var(--text-3);cursor:grab;flex:none;place-items:center;display:grid}.app-root .ecal .ecal-bp-type-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-root .ecal .ecal-bp-type-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:18px;overflow:hidden}.app-root .ecal .ecal-bp-type-main span{color:var(--text-3);font-size:12px;line-height:16px}.app-root .ecal .ecal-bp-more{position:relative}.app-root .ecal .ecal-bp-menu{z-index:5;border-radius:var(--radius-8);background:var(--raised-solid);width:180px;box-shadow:var(--raised-shadow);flex-direction:column;padding:4px;display:flex;position:absolute;top:100%;right:0}.app-root .ecal .ecal-bp-menu button{border-radius:var(--radius-4);text-align:left;height:28px;color:var(--text);padding:0 8px;font-size:13px;line-height:18px}@media (hover:hover){.app-root .ecal .ecal-bp-menu button:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-bp-menu button.danger{color:var(--danger)}.app-root .ecal .ecal-bp-menu-sep{background:var(--line);height:1px;margin:4px 0}.app-root .ecal .ecal-bp-te{border:1px solid var(--line);border-radius:var(--radius-8);background:var(--bg);flex-direction:column;gap:6px;margin:4px 0;padding:10px 8px;display:flex}.app-root .ecal .ecal-bp-te input,.app-root .ecal .ecal-bp-te textarea,.app-root .ecal .ecal-bp-te select{color:var(--text);font-size:13px;line-height:18px}.app-root .ecal .ecal-bp-te-title{border:1px solid var(--line);border-radius:var(--radius-6);height:28px;padding:0 6px;font-weight:600}.app-root .ecal .ecal-bp-te-notes{border:1px solid var(--line);border-radius:var(--radius-6);resize:vertical;padding:4px 6px}.app-root .ecal .ecal-bp-te-row{justify-content:space-between;align-items:center;gap:8px;min-height:28px;display:flex}.app-root .ecal .ecal-bp-te-row.col{flex-direction:column;align-items:stretch;gap:4px}.app-root .ecal .ecal-bp-te-row small{color:var(--text-3);font-size:11px;line-height:14px}.app-root .ecal .ecal-bp-te-row input:not([type=checkbox]),.app-root .ecal .ecal-bp-te-row select{border:1px solid var(--line);border-radius:var(--radius-6);background:var(--bg);min-width:0;height:28px;padding:0 6px}.app-root .ecal .ecal-bp-te-label{color:var(--text-2);align-items:center;gap:6px;font-size:12px;line-height:16px;display:inline-flex}.app-root .ecal .ecal-bp-dot{border-radius:50%;width:8px;height:8px}.app-root .ecal .ecal-bp-te-addr{color:var(--text-3);align-items:center;gap:2px;font-size:12px;line-height:16px;display:flex}.app-root .ecal .ecal-bp-te-addr input{flex:1}.app-root .ecal .ecal-bp-te-adv{color:var(--text-2);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;align-self:flex-start;font-size:12px;line-height:16px}.app-root .ecal .ecal-bp-te-actions{align-items:center;gap:6px;margin-top:4px;display:flex}.app-root .ecal .ecal-bp-grow{flex:1}.app-root .ecal .ecal-bp-delete{color:var(--danger)}.app-root .ecal .ecal-bp-save{background:var(--text);color:var(--bg)}.app-root .ecal .ecal-bp-save:disabled{opacity:.4}.app-root .ecal .ecal-bp-sub{color:var(--text-3);margin:8px 0 2px;padding:0 8px;font-size:12px;font-weight:600;line-height:16px}.app-root .ecal .ecal-bp-booked-row{color:var(--text-3);flex-direction:column;padding:4px 8px;font-size:12px;line-height:16px;display:flex}.app-root .ecal .ecal-bp-booked-row strong{color:var(--text);font-size:13px;font-weight:500;line-height:18px}.app-root .ecal .ecal-sheet .ecal-bp-link a{font-size:15px;line-height:20px}.app-root .ecal .ecal-sheet .ecal-bp-te input,.app-root .ecal .ecal-sheet .ecal-bp-te textarea,.app-root .ecal .ecal-sheet .ecal-bp-te select{font-size:16px}.app-root .ecal .ecal-sheet .ecal-bp-te-row,.app-root .ecal .ecal-sheet .ecal-bp-menu button,.app-root .ecal .ecal-sheet .ecal-bp-te-title,.app-root .ecal .ecal-sheet .ecal-bp-te-row input:not([type=checkbox]),.app-root .ecal .ecal-sheet .ecal-bp-te-row select{min-height:44px}.app-root .ecal .allday-task.late,.app-root .ecal .ev-late .ev-task-title,.app-root .ecal .m-chip.m-task.late,.app-root .ecal .pmonth-item.task.late,.app-root .ecal .ecal-ov-item.late .ecal-ov-title{color:var(--text)}.app-root .ecal .m-chip.late{opacity:1}.app-root .ecal .late-mark{background:var(--late-mark);vertical-align:2px;border-radius:50%;flex:none;width:5px;height:5px;margin:0 4px 0 0;display:inline-block}.app-root .ecal .ev-preview{z-index:8;border-radius:var(--radius-event);background:color-mix(in srgb, var(--text) 9%, var(--bg));color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;align-items:flex-start;gap:6px;padding:3px 7px;font-size:11px;font-weight:600;line-height:15px;display:flex;position:absolute;left:1px;right:3px;overflow:hidden}.app-root .ecal .ev-preview small{color:var(--text-2);font-size:11px;font-weight:400}.app-root .ecal[data-side]{grid-template-rows:auto minmax(0,1fr);grid-template-columns:auto minmax(0,1fr);display:grid}.app-root .ecal[data-side]>.ecal-side{grid-area:1/1/span 2}.app-root .ecal[data-side]>.ecal-hdr{grid-area:1/2;min-width:0}.app-root .ecal[data-side]>.ecal-view{grid-area:2/2;min-width:0;min-height:0}.app-root .ecal .ecal-side{background:var(--bg-soft);border-right:1px solid var(--line);flex-direction:column;min-width:0;min-height:0;font-size:12.5px;line-height:1.45;display:flex;position:relative}.app-root .ecal .ecal-side.ecal-tasks-sheet{z-index:60;top:0;left:0;right:0;bottom:calc(var(--bottom-bar-h,56px) + env(safe-area-inset-bottom,0px));width:auto;padding-top:env(safe-area-inset-top,0px);border-right:0;transition:transform .22s,opacity .22s;position:fixed}.app-root .ecal .ecal-side.ecal-tasks-sheet.lowered{opacity:0;pointer-events:none;transform:translateY(100%)}.app-root .ecal .ecal-side.ecal-tasks-sheet .side-head{padding-right:52px}.app-root .ecal .ecal-tasks-sheet .ecal-tasks-close{top:calc(env(safe-area-inset-top,0px) + 6px);width:44px;height:44px;position:absolute;right:4px}@media (prefers-reduced-motion:reduce){.app-root .ecal .ecal-side.ecal-tasks-sheet{transition:none}}.app-root .ecal .ecal-side .to-schedule .side-actions{align-items:center;gap:6px}.app-root .ecal .ecal-side .to-schedule .to-schedule-all{margin:0;font-size:12.5px}.app-root .ecal .ecal-side .side-body{flex-direction:column;flex:1;height:100%;min-height:0;padding:0;display:flex;overflow:visible}.app-root .ecal .ecal-side .side-head{height:56px;padding:0 10px 0 14px}.app-root .ecal .ecal-side .side-title,.app-root .ecal .ecal-side .side-title-h{margin:0;font-size:14px;font-weight:600;line-height:1.45}.app-root .ecal .ecal-side .side-filter{font-size:14px;line-height:1.45}.app-root .ecal .ecal-side svg[width="10"][height="10"]{width:10px;height:10px}.app-root .ecal .ecal-side svg[width="11"][height="11"]{width:11px;height:11px}.app-root .ecal .ecal-side svg[width="12"][height="12"]{width:12px;height:12px}.app-root .ecal .ecal-side svg[width="13"][height="13"]{width:13px;height:13px}.app-root .ecal .ecal-side svg[width="14"][height="14"]{width:14px;height:14px}.app-root .ecal .ecal-side svg[width="15"][height="15"]{width:15px;height:15px}.app-root .ecal .ecal-side svg[width="16"][height="16"]{width:16px;height:16px}.app-root .ecal .ecal-side svg[width="18"][height="18"]{width:18px;height:18px}.app-root .ecal .ecal-side svg[width="20"][height="20"]{width:20px;height:20px}.app-root .ecal .ecal-side .side-filter-label{max-width:152px}.app-root .ecal .ecal-side .side-actions .icon-btn{width:26px;height:26px}.app-root .ecal .ecal-side .tabs{flex:none;align-self:flex-start;margin:0 10px 8px}.app-root .ecal .ecal-side .tab{height:24px;padding:0 9px;font-size:12.5px}.app-root .ecal .ecal-side .tab-count{font-size:11px}.app-root .ecal .ecal-side .task-filter-block{flex:none;margin:0 12px 0 14px;font-size:13px}.app-root .ecal .ecal-side .task-filter-block input{font-size:13px}.app-root .ecal .ecal-side .tasks-scroll{scrollbar-width:thin;flex:1;min-height:0;margin:0;padding:0 6px 12px;overflow-y:auto}.app-root .ecal .ecal-side .task,.app-root .ecal .ecal-side .task-add,.app-root .ecal .ecal-side .task-add-row{gap:10px;min-height:36px;padding:0 12px}.app-root .ecal .ecal-side .task-title,.app-root .ecal .ecal-side .task-input,.app-root .ecal .ecal-side .task-add,.app-root .ecal .ecal-side .task-add-row{font-size:13px}.app-root .ecal .ecal-side .task-check{width:15px;height:15px}.app-root .ecal .ecal-side .task-due,.app-root .ecal .ecal-side .task-steps-count{font-size:11px}.app-root .ecal .ecal-side .task-mark.waiting{max-width:88px;font-size:11px;line-height:18px}.app-root .ecal .ecal-side .task-day,.app-root .ecal .ecal-side .task-done-head{font-size:12px}.app-root .ecal .ecal-side .task-empty{font-size:12.5px}.app-root .ecal .ecal-side .task.drags{cursor:grab}.app-root .ecal .ecal-side .task.lifting{z-index:2;background:var(--surface);box-shadow:var(--raised-shadow);transition:transform .16s ease-out,box-shadow .16s ease-out;transform:scale(1.03)}.app-root .ecal .ecal-side .side-resize{z-index:5;cursor:col-resize;touch-action:none;background:0 0;width:6px;height:auto;position:absolute;top:0;bottom:0;right:-3px}.app-root .ecal .ecal-side .side-resize:after{content:"";transition:background var(--hover-t);background:0 0;border-radius:2px;position:absolute;inset:0 2px}@media (hover:hover){.app-root .ecal .ecal-side .side-resize:hover{background:0 0}.app-root .ecal .ecal-side .side-resize:hover:after{background:var(--focus)}}.app-root .ecal .ecal-side .tasks-drop-hint{display:none}.app-root .ecal .ecal-side.drop-active{background:color-mix(in srgb, var(--accent) 5%, var(--bg-soft))}.app-root .ecal .ecal-side.drop-active .tasks-drop-hint{border:1.5px dashed color-mix(in srgb, var(--text) 35%, transparent);border-radius:var(--radius-10);height:64px;color:var(--text);background:var(--surface);justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex;position:absolute;inset:54px 10px auto}.app-root .ecal .task-drag-chip{font-size:12.5px}.app-root .ecal .task-drag-chip.touch{max-width:min(320px,80vw);padding:7px 12px}.app-root .ecal .ev-carried{background:color-mix(in srgb, var(--text) 9%, var(--bg));color:var(--text)}.app-root .ecal .ev-carried:before{display:none}.app-root .ecal .ecal-offline{color:var(--text-3);white-space:nowrap;align-items:center;gap:6px;padding:0 6px;font-size:12px;line-height:1.45;display:inline-flex}.app-root .ecal .ecal-offline[data-quiet]:before{display:none}.app-root .ecal .ecal-offline:before{content:"";background:var(--qa-time);border-radius:50%;flex:none;width:6px;height:6px}.app-root .ecal .ev-unsent{outline:1.5px dashed color-mix(in srgb, var(--text) 55%, transparent);outline-offset:1px}.app-root .ecal .ecal-av{color:#fff;border-radius:50%;flex:none;place-items:center;font-style:normal;font-weight:600;display:inline-grid}.app-root .ecal .ecal-av.xs{width:16px;height:16px;font-size:9px;line-height:16px}.app-root .ecal .ecal-av.sm{width:20px;height:20px;font-size:10px;line-height:20px}.app-root .ecal .ecal-av.more{background:color-mix(in srgb, var(--hue-violet) 25%, var(--bg));color:color-mix(in oklab, var(--hue-violet) 70%, var(--text))}.app-root .ecal .ecal-muted{color:var(--text-3)}.app-root .ecal .ecal-pw-scrim{z-index:75;background:#0f0f0f1f;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.app-root .ecal .ecal-pw{border-radius:var(--radius-12);background:var(--raised-solid);width:min(500px,100vw - 32px);max-height:70vh;box-shadow:var(--raised-shadow);flex-direction:column;font-size:13px;line-height:18px;display:flex;overflow:hidden}.app-root .ecal .ecal-pw.ecal-pw-sheet{border-radius:14px 14px 0 0;gap:0;width:100%;max-height:86dvh}.app-root .ecal .ecal-chips{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:5px;padding:6px 14px;display:flex}.app-root .ecal .ecal-pw-input{min-width:160px;height:36px;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:14px;line-height:20px}.app-root .ecal .ecal-pw-sheet .ecal-pw-input{height:44px;font-size:16px;line-height:22px}.app-root .ecal .ecal-chip-person{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--c) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--c) 30%, transparent);align-items:center;gap:5px;height:24px;padding:0 4px 0 3px;font-size:12.5px;line-height:16px;display:inline-flex}.app-root .ecal .ecal-chip-person button{width:16px;height:16px;color:var(--text-3);border-radius:50%;place-items:center;display:grid}.app-root .ecal .ecal-pw-list{padding:4px;overflow-y:auto}.app-root .ecal .ecal-pw-row{align-items:center;gap:4px;display:flex}.app-root .ecal .ecal-pw-item{border-radius:var(--radius-6);text-align:left;min-width:0;height:36px;color:var(--text);flex:1;align-items:center;gap:10px;padding:0 10px;display:flex}.app-root .ecal .ecal-pw-sheet .ecal-pw-item{height:44px}.app-root .ecal .ecal-pw-item[data-active]{background:var(--bg-hover)}.app-root .ecal .ecal-pw-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.app-root .ecal .ecal-pw-detail{color:var(--text-2);font-variant-numeric:tabular-nums;flex:none;font-size:12px;line-height:16px}.app-root .ecal .ecal-pw-empty{color:var(--text-3);padding:14px;font-size:12.5px;line-height:18px}.app-root .ecal .ecal-pw-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px 8px 14px;display:flex}.app-root .ecal .ecal-pw-length{color:var(--text-2);flex:none;align-items:center;gap:6px;font-size:12px;line-height:16px;display:inline-flex}.app-root .ecal .ecal-pw-length select{border:1px solid var(--line);border-radius:var(--radius-6);background:var(--bg);height:26px;color:var(--text);padding:0 6px;font-size:12px;line-height:16px}.app-root .ecal .ecal-pw-keys{min-width:0;color:var(--text-3);flex:1;font-size:11.5px;line-height:16px}.app-root .ecal .ecal-pw-keys kbd{font:inherit;border:1px solid var(--line);border-radius:4px;padding:0 4px}.app-root .ecal .ecal-pw-go,.app-root .ecal .ecal-card-btn.primary{border-radius:var(--radius-6);background:var(--text);height:28px;color:var(--bg);padding:0 12px;font-size:12.5px;font-weight:500;line-height:16px}.app-root .ecal .ecal-pw-go{white-space:nowrap;flex:none}.app-root .ecal .ecal-pw-go:disabled{opacity:.4}.app-root .ecal .ecal-pw-sheet .ecal-pw-go{height:44px}.app-root .ecal .ecal-zone{flex:none;position:relative}.app-root .ecal .ecal-zone-btn{border-radius:var(--radius-6);height:24px;color:var(--text-2);white-space:nowrap;padding:0 6px;font-size:12px;line-height:16px}.app-root .ecal .ecal-zone-pop{z-index:90;border-radius:var(--radius-8,8px);background:var(--raised-solid);width:220px;box-shadow:var(--raised-shadow);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.app-root .ecal .ecal-zone-q{border:1px solid var(--line);border-radius:var(--radius-6);background:var(--bg);height:30px;color:var(--text);padding:0 8px;font-size:13px;line-height:18px}.app-root .ecal .ecal-zone-item{border-radius:var(--radius-6);text-align:left;height:30px;color:var(--text);padding:0 8px;font-size:13px;line-height:18px}@media (hover:hover){.app-root .ecal .ecal-zone-btn:hover,.app-root .ecal .ecal-zone-item:hover,.app-root .ecal .ecal-chip-person button:hover{background:var(--bg-hover)}}.app-root .ecal .ecal-visit-pill{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--hue-violet) 10%, var(--bg));border:1px solid color-mix(in srgb, var(--hue-violet) 30%, transparent);white-space:nowrap;align-items:center;gap:8px;min-width:0;height:30px;padding:0 4px 0 6px;font-size:12.5px;line-height:16px;display:inline-flex;position:relative}.app-root .ecal .ecal-visit-pill.compact{flex:none;gap:2px;padding:0 2px 0 4px}.app-root .ecal .ecal-visit-who{border-radius:var(--radius-pill);min-width:0;height:24px;color:color-mix(in oklab, var(--hue-violet) 70%, var(--text));align-items:center;gap:6px;padding:0 6px 0 2px;font-weight:500;display:inline-flex}.app-root .ecal .ecal-visit-who.open{background:color-mix(in srgb, var(--hue-violet) 12%, transparent)}@media (hover:hover){.app-root .ecal .ecal-visit-who:hover{background:color-mix(in srgb, var(--hue-violet) 12%, transparent)}}.app-root .ecal .ecal-visit-names{text-overflow:ellipsis;min-width:0;overflow:hidden}.app-root .ecal .ecal-visit-avatars{display:inline-flex}.app-root .ecal .ecal-visit-avatars .ecal-av+.ecal-av{box-shadow:0 0 0 1.5px var(--bg);margin-left:-5px}.app-root .ecal .ecal-visit-warn{color:#d9a400;display:inline-flex}.app-root .ecal .ecal-seg{border-radius:var(--radius-6);background:color-mix(in srgb, var(--text) 5%, transparent);padding:2px;display:inline-flex}.app-root .ecal .ecal-seg-btn{height:22px;color:var(--text-2);border-radius:5px;padding:0 8px;font-size:12px;line-height:16px}.app-root .ecal .ecal-seg-btn.on{background:var(--bg);color:var(--text);box-shadow:0 1px 2px #00000014}.app-root .ecal .ecal-pill-x,.app-root .ecal .ecal-icon-x{width:18px;height:18px;color:var(--text-3);border-radius:50%;flex:none;place-items:center;display:grid}.app-root .ecal[data-phone] .ecal-pill-x{width:28px;height:28px}@media (hover:hover){.app-root .ecal .ecal-pill-x:hover,.app-root .ecal .ecal-icon-x:hover{background:var(--bg-active);color:var(--text)}}.app-root .ecal .ecal-visit-menu{z-index:80;border-radius:var(--radius-12);background:var(--raised-solid);width:340px;max-width:calc(100vw - 24px);box-shadow:var(--raised-shadow);white-space:normal;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.app-root .ecal[data-phone] .ecal-visit-menu{width:auto;max-width:none;position:fixed;top:56px;left:12px;right:12px}.app-root .ecal .ecal-visit-modes{padding:2px 2px 8px}.app-root .ecal .ecal-visit-modes .ecal-seg{display:flex}.app-root .ecal .ecal-visit-modes .ecal-seg-btn{flex:1;height:32px;font-size:13px;line-height:18px}.app-root .ecal .ecal-visit-person{border-radius:var(--radius-6);align-items:center;gap:8px;padding:6px 6px 6px 8px;display:flex}.app-root .ecal .ecal-visit-person.hidden{background:color-mix(in srgb, var(--danger) 9%, transparent)}.app-root .ecal .ecal-vp-text{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.app-root .ecal .ecal-vp-name{color:var(--text);align-items:center;gap:4px;font-size:13px;line-height:18px;display:inline-flex}.app-root .ecal .ecal-vp-name svg{color:#d9a400}.app-root .ecal .ecal-vp-sub{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-3);font-size:11px;line-height:15px;overflow:hidden}.app-root .ecal .ecal-link{color:var(--text);text-underline-offset:2px;padding:0;font-size:11px;line-height:15px;text-decoration:underline}.app-root .ecal .ecal-menu-sep{background:var(--line);height:1px;margin:4px 6px}.app-root .ecal .ecal-visit-add{border-radius:var(--radius-6);height:32px;color:var(--text);align-items:center;gap:8px;padding:0 8px;font-size:13px;line-height:18px;display:flex}@media (hover:hover){.app-root .ecal .ecal-visit-add:hover{background:var(--bg-hover)}}.app-root .ecal .ev-their{z-index:1;border-radius:var(--radius-event);pointer-events:none;color:color-mix(in srgb, var(--c) 75%, var(--text));border:1.5px dashed color-mix(in srgb, var(--c) 60%, transparent);background:color-mix(in srgb, var(--c) 7%, transparent);flex-direction:column;padding:2px 7px;font-size:11px;line-height:14px;display:flex;position:absolute;left:2px;right:4px;overflow:hidden}.app-root .ecal .ev-their-title{font-size:11.5px;font-weight:500;line-height:15px}.app-root .ecal .tg-visit-both .ev-their,.app-root .ecal .tg-visit-theirs .ev-their{z-index:5;background:color-mix(in srgb, var(--c) 18%, var(--bg));border-style:solid}.app-root .ecal .tg-visit-both .ev:not(.ev-ghost){opacity:.4}.app-root .ecal .tg-visit-theirs .ev:not(.ev-ghost){display:none}.app-root .ecal .tg-visit-free .ev:not(.ev-ghost){opacity:.25}.app-root .ecal .tg-visit-free .ev-their{opacity:.35}.app-root .ecal .tg-free{z-index:6;border-radius:var(--radius-6);text-align:left;color:var(--ok);background:color-mix(in srgb, var(--ok) 13%, var(--surface));border:1.5px solid color-mix(in srgb, var(--ok) 55%, transparent);cursor:pointer;flex-direction:column;align-items:flex-start;padding:3px 7px;font-size:11px;font-weight:600;line-height:14px;display:flex;position:absolute;left:2px;right:4px;overflow:hidden}.app-root .ecal .tg-free small{opacity:.85;font-size:11px;font-weight:500;line-height:14px}@media (hover:hover){.app-root .ecal .tg-free:hover{background:color-mix(in srgb, var(--ok) 22%, var(--surface))}}.app-root .ecal .ecal-view{position:relative}.app-root .ecal .ecal-visit-loading,.app-root .ecal .ecal-visit-card{z-index:40;background:var(--raised-solid);box-shadow:var(--raised-shadow);position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.app-root .ecal .ecal-visit-loading{border-radius:var(--radius-pill);color:var(--text-2);white-space:nowrap;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;line-height:16px;display:inline-flex}.app-root .ecal .ecal-spinner{border:1.5px solid var(--line-strong);border-top-color:var(--text-2);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite ep-people-spin;display:inline-block}.app-root .ecal .ecal-spinner.xs{width:10px;height:10px}.app-root .ecal .ecal-visit-card{border-radius:var(--radius-12);text-align:center;width:min(360px,90%);padding:18px;font-size:13px;line-height:18px}.app-root .ecal .ecal-visit-card strong{font-size:14px;font-weight:600;line-height:20px;display:block}.app-root .ecal .ecal-visit-card p{color:var(--text-2);margin:6px 0 14px;font-size:12.5px;line-height:18px}.app-root .ecal .ecal-visit-card div{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.app-root .ecal .ecal-card-btn{border-radius:var(--radius-6);background:color-mix(in srgb, var(--text) 6%, transparent);height:28px;color:var(--text);padding:0 12px;font-size:12.5px;font-weight:500;line-height:16px}.app-root .ecal .ecal-card-btn.ghost{color:var(--text-2);background:0 0}.app-root .ecal[data-phone] .ecal-card-btn,.app-root .ecal[data-phone] .ecal-card-btn.primary{height:44px}@media (hover:hover){.app-root .ecal .ecal-card-btn:not(.primary):hover{background:var(--bg-hover)}}.app-root .ecal .ecal-card-btn:focus-visible,.app-root .ecal .ecal-pw-go:focus-visible,.app-root .ecal .tg-free:focus-visible,.app-root .ecal .ecal-seg-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-root .ecal .ecal-sw-scrim{padding-top:64px}.app-root .ecal .ecal-pw.ecal-sw:not(.ecal-pw-sheet){width:min(760px,100vw - 32px);max-height:min(560px,100vh - 96px)}.app-root .ecal .ecal-sw-field{flex-wrap:wrap;row-gap:4px;min-height:48px}.app-root .ecal .ecal-sw-glass{color:var(--text-3);flex:none;margin-right:4px}.app-root .ecal .ecal-sw-ghost{flex:1;align-items:center;min-width:120px;display:flex;position:relative}.app-root .ecal .ecal-sw-ghost input{z-index:1;position:relative}.app-root .ecal .ecal-sw-mirror{white-space:pre;pointer-events:none;align-items:center;font-size:14px;display:flex;position:absolute;inset:0;overflow:hidden}.app-root .ecal .ecal-pw-sheet .ecal-sw-mirror{font-size:16px}.app-root .ecal .ecal-sw-typed{color:#0000}.app-root .ecal .ecal-sw-tail{color:var(--text-3);opacity:.8}.app-root .ecal .ecal-sw-chip{border-radius:var(--radius-6);max-width:220px;height:24px;color:color-mix(in srgb, var(--c) 70%, var(--text));background:color-mix(in srgb, var(--c) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--c) 24%, transparent);flex:none;align-items:center;gap:5px;padding:0 4px 0 8px;font-size:12.5px;font-weight:500;display:inline-flex}.app-root .ecal .ecal-sw-chip-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-root .ecal .ecal-sw-chip button{width:16px;height:16px;color:inherit;opacity:.7;border-radius:4px;place-items:center;display:grid}@media (hover:hover){.app-root .ecal .ecal-sw-chip button:hover{opacity:1;background:color-mix(in srgb, var(--c) 18%, transparent)}}.app-root .ecal .ecal-sw-group{color:var(--text-3);padding:10px 10px 4px;font-size:11px;font-weight:500;line-height:14px}.app-root .ecal .ecal-sw-item{width:100%;height:auto;min-height:34px}.app-root .ecal .ecal-sw-ghost input:focus,.app-root .ecal .ecal-sw-ghost input:focus-visible{box-shadow:none;outline:0}.app-root .ecal .ecal-sw-dot{border-radius:50%;flex:none;width:8px;height:8px}.app-root .ecal .ecal-sw-icon{flex:none;place-items:center;width:14px;display:grid}.app-root .ecal .ecal-sw-kind{color:var(--text-3);font-size:12px}.app-root .ecal .ecal-sw-kbd{border:1px solid var(--line);font:inherit;border-radius:4px;margin-right:6px;padding:0 4px;font-size:10.5px}.app-root .ecal .ecal-sw-stack{flex-direction:column;gap:1px;padding:5px 0;display:flex}.app-root .ecal .ecal-sw-title,.app-root .ecal .ecal-sw-snippet-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-root .ecal .ecal-sw-snippet{min-width:0;color:var(--text-3);align-items:center;gap:5px;font-size:12.5px;display:flex}.app-root .ecal .ecal-sw-snippet svg{flex:none}.app-root .ecal .ecal-sw mark{background:color-mix(in srgb, var(--focus) 22%, transparent);color:inherit;box-shadow:0 0 0 1px color-mix(in srgb, var(--focus) 10%, transparent);border-radius:4px}.app-root .ecal .ecal-sw-more .ecal-pw-label{color:var(--text-3)}.app-root .ecal .ecal-moved{align-items:center;padding:6px 12px}.app-root .ecal .ecal-moved strong{color:var(--text);font-weight:600}.app-root .ecal .ecal-moved-acts{gap:6px}.app-root .ecal .ecal-moved-acts button{border-radius:var(--radius-pill);background:var(--bg-hover);height:24px;padding:0 10px;font-size:12px;line-height:16px}.app-root .ecal .ecal-moved-acts button.primary{background:var(--text);color:var(--bg)}.app-root .ecal .ecal-moved-acts button.ghost{color:var(--text-2);background:0 0}@media (hover:hover){.app-root .ecal .ecal-moved-acts button:hover{filter:brightness(.97);text-decoration:none}}.app-root .ecal .tg-clock-head{position:relative}.app-root .ecal .tg-clock-head.primary{justify-content:space-between;gap:2px}.app-root .ecal .tg-add-zone{border-radius:var(--radius-6);width:18px;height:18px;color:var(--text-3);flex:none;place-items:center;display:grid}.app-root .ecal .tg-add-zone.tg-fold-zones{font-variant-numeric:tabular-nums;width:auto;min-width:18px;color:var(--text-2);background:var(--bg-hover);padding:0 4px;font-size:10.5px;font-weight:600}@media (hover:hover){.app-root .ecal .tg-add-zone:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal button.tg-zone-abbr{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;color:var(--text-3);border-radius:4px;padding:1px 4px;font-size:10.5px;line-height:14px;overflow:hidden}@media (hover:hover){.app-root .ecal button.tg-zone-abbr:not(:disabled):hover,.app-root .ecal button.tg-zone-abbr.open{background:var(--bg-hover);color:var(--text-2)}}.app-root .ecal .tg-clock-btn{border-radius:var(--radius-6);width:100%;min-width:0;height:100%;color:var(--text-3);flex-direction:column;justify-content:center;align-items:center;font-size:10.5px;line-height:1.2;display:flex}.app-root .ecal .tg-clock-btn span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;overflow:hidden}.app-root .ecal .tg-clock-btn small{color:var(--text-4);font-size:10px}@media (hover:hover){.app-root .ecal .tg-clock-btn:not(:disabled):hover,.app-root .ecal .tg-clock-btn.open{background:var(--bg-hover)}}.app-root .ecal .tg-travel .tg-clock-head.primary{background:var(--text);color:var(--bg)}.app-root .ecal .tg-travel .tg-clock-head.primary .tg-zone-abbr,.app-root .ecal .tg-travel .tg-clock-head.primary .tg-add-zone{color:var(--bg)}@media (hover:hover){.app-root .ecal .tg-travel .tg-clock-head.primary .tg-zone-abbr:hover,.app-root .ecal .tg-travel .tg-clock-head.primary .tg-add-zone:hover{background:color-mix(in srgb, var(--bg) 18%, transparent);color:var(--bg)}}.app-root .ecal .tg-travel .tg-gutter:not(.secondary) .tg-hour-label{color:var(--text);font-weight:500}.app-root .ecal .clock-menu{width:240px}.app-root .ecal .clock-menu .menu-val{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;max-width:90px;margin-left:auto;padding-left:8px;font-size:12px;overflow:hidden}.app-root .ecal .clock-menu .menu-item.danger{color:var(--danger)}.app-root .ecal .clock-rename{gap:6px;width:240px;padding:8px;display:grid}.app-root .ecal .clock-menu,.app-root .ecal .clock-rename{background:var(--raised-solid,var(--surface));border:1px solid var(--line);box-shadow:var(--raised-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.app-root .ecal .clock-rename-hint{color:var(--text-3);font-size:11.5px}.app-root .ecal .ecal-zp-gmt{width:72px;color:var(--text-3);font-variant-numeric:tabular-nums;flex:none;align-items:center;font-size:11px;display:inline-flex}.app-root .ecal .ecal-zp-long{color:var(--text-3);font-size:12px}.app-root .ecal .ecal-zp-list{max-height:420px}.app-root .ecal .ecal-strip-gutter{justify-content:center;align-items:center;display:flex}.app-root .ecal .ecal-strip-gutter .tg-fold-zones{min-width:26px;height:22px;font-size:11.5px}.app-root .ecal .tg-travel .tg-clock-head.primary{justify-content:flex-end;padding:0 4px}.app-root .ecal .tg-travel .tg-clock-head.primary .tg-zone-abbr{text-align:right;flex:1;overflow:visible}.app-root .ecal .tg-gutter-name{display:none}.app-root .ecal[data-phone][data-view=day] .tg-gutter-name{z-index:3;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-3);background:var(--bg-soft);padding:3px 2px;font-size:10.5px;line-height:14px;display:block;position:sticky;top:0;overflow:hidden}.app-root .ecal .ev-picked,.app-root .ecal .ev-kbmove{z-index:6;overflow:visible}.app-root .ecal .ev-picked .ev-inner,.app-root .ecal .ev-kbmove .ev-inner{overflow:hidden}.app-root .ecal .ev-picked{background:color-mix(in srgb, var(--c) 28%, var(--bg));box-shadow:0 0 0 1.5px var(--bg), 0 0 0 3px var(--c), 0 4px 10px -2px #0000002e}.app-root .ecal .ev-kbmove{z-index:7;background:color-mix(in srgb, var(--c) 28%, var(--bg));box-shadow:0 8px 20px #0000003d,0 2px 6px #00000024}.app-root .ecal.kb-moving .ev:not(.ev-kbmove){opacity:.5}.app-root .ecal .ev-card{z-index:30;pointer-events:none;border-radius:var(--radius-10);background:var(--raised-solid);min-width:140px;max-width:260px;color:var(--text);box-shadow:var(--raised-shadow);white-space:nowrap;flex-direction:column;gap:1px;padding:7px 10px;font-size:12.5px;line-height:16px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.app-root .ecal .ev-card strong{text-overflow:ellipsis;font-weight:600;overflow:hidden}.app-root .ecal .ev-card span{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12px}.app-root .ecal .ecal-pw.ecal-shortcuts{width:min(640px,100vw - 32px)}.app-root .ecal .ecal-sc-list{padding-bottom:6px}.app-root .ecal .ecal-sc-row{min-height:30px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:13px;line-height:18px;display:flex}.app-root .ecal .ecal-keys{color:var(--text-3);flex:none;align-items:center;gap:4px;font-size:11.5px;line-height:16px;display:inline-flex}.app-root .ecal .ecal-keys kbd{border:1px solid var(--line);background:var(--bg);min-width:20px;color:var(--text-2);font:inherit;text-align:center;border-radius:4px;padding:0 5px}.app-root .ecal .ecal-keys-or{color:var(--text-3)}.app-root .ecal button.tg-day-head{border:0;border-left:1px solid var(--line);font:inherit;cursor:pointer;background:0 0;margin:0;padding:0;font-size:12px;line-height:16px;transition:background .12s}.app-root .ecal button.tg-day-head.weekend{background:var(--off)}@media (hover:hover){.app-root .ecal button.tg-day-head:hover{background:var(--bg-hover,#0000000a)}}.app-root .ecal button.tg-day-head:focus-visible{outline:2px solid var(--focus,currentColor);outline-offset:-2px}.app-root .ecal .ev-circle{color:#eb5757e6;pointer-events:none;z-index:1;width:calc(100% + 18px);height:34px;max-height:calc(100% + 12px);position:absolute;top:-6px;left:-14px;overflow:visible}.app-root .ecal .ev.ev-circled{overflow:visible}.app-root .ecal .ev.ev-circled .ev-inner{overflow:hidden}.app-root .ecal .ecal-notice{border-radius:var(--radius-10,10px);color:var(--text);background:color-mix(in srgb, #f2b24c 18%, var(--bg));border:1px solid #e59a2f66;flex:none;align-items:center;gap:10px;margin:0 0 8px;padding:6px 8px 6px 12px;font-size:12.5px;line-height:18px;display:flex}.app-root .ecal .ecal-notice-text{flex:1;min-width:0}.app-root .ecal .ecal-notice button{border-radius:var(--radius-pill,999px);height:24px;color:var(--text-2);background:0 0;flex:none;padding:0 10px;font-size:12px}@media (hover:hover){.app-root .ecal .ecal-notice button:hover{background:var(--bg-hover);color:var(--text)}}.app-root .ecal .tg-travel .tg-clock-head.primary{justify-content:space-between;gap:1px;padding:0 2px}.app-root .ecal .tg-travel .tg-clock-head.primary .tg-add-zone{width:16px}.app-root .ecal .tg-travel .tg-clock-head.primary .tg-zone-abbr{text-align:center;text-overflow:clip;flex:auto;min-width:0;padding:1px;overflow:hidden}.app-root .ecal[data-phone] .ecal-offline{text-overflow:ellipsis;flex-shrink:1;gap:4px;min-width:0;padding:0 2px;font-size:11px;overflow:hidden}.app-root .ecal[data-phone] .ecal-hdr-right{min-width:0}.app-root .ecal[data-phone] .ecal-hdr:has(.ecal-offline){gap:6px}.app-root .ecal[data-phone] .ecal-hdr:has(.ecal-offline) .ecal-hdr-right{gap:4px}.app-root .ecal[data-phone] .ecal-offline{gap:3px;padding:0;font-size:10.5px}.app-root .ecal[data-phone] .ecal-offline:before{width:5px;height:5px}
