:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;font-weight:400;--bg:#fbfcfa;--surface:#fff;--sidebar:#f3f5f0;--text:#2d3831;--muted:#778079;--faint:#9aa29b;--line:#e6eae3;--green:#3c6755;--accent-soft:#e6ede3;--hover:#edf1e9;--glass:#fbfcfaf0;--muted-dot:#a4aca7;--shadow:0 18px 70px #213b3020;color-scheme:light}:root[data-theme=dark]{--bg:#19211d;--surface:#202a24;--sidebar:#161e19;--text:#e1e8de;--muted:#a2b0a3;--faint:#7f9082;--line:#344238;--green:#a8cab3;--accent-soft:#304739;--hover:#29372e;--glass:#19211df0;--muted-dot:#768479;--shadow:0 18px 70px #0006;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #84a691;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #86a994;outline-offset:1px}a{color:var(--green)}button{transition:background .14s,color .14s,transform .14s}button:active:not(:disabled){transform:translateY(1px)}h1,h2,h3,h4,p{margin:0}svg{flex-shrink:0;stroke-width:1.65}small{display:block}button.primary,.primary{background:var(--green);color:var(--bg);border:1px solid var(--green);border-radius:9px;min-height:43px;padding:11px 18px;font-size:13px;font-weight:550;display:inline-flex;align-items:center;justify-content:center;gap:10px}.primary:hover:not(:disabled){filter:brightness(1.08)}.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--hover);border:1px solid var(--line);border-radius:8px;min-height:40px;padding:10px 14px;font-size:12px}.secondary:hover{background:var(--accent-soft)}.full{width:100%}.icon{width:35px;height:35px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.icon:hover{background:var(--hover);color:var(--text)}.icon.small{width:25px;height:25px}.text-button{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--green);font-weight:550}.text-button:hover{text-decoration:underline}.brand{font-size:25px;font-weight:650;letter-spacing:-1.1px;display:inline-flex;align-items:center;color:var(--text)}.brand-dot{color:#7b977e}.brand-mark{height:27px;width:28px;display:flex;gap:3px;align-items:center;margin-right:11px;transform:rotate(-12deg)}.brand-mark i{display:block;width:5px;background:var(--green);border-radius:4px;transform:rotate(30deg)}.brand-mark i:nth-child(1){height:13px}.brand-mark i:nth-child(2){height:26px}.brand-mark i:nth-child(3){height:18px}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;flex-shrink:0;position:fixed;top:0;bottom:0;background:var(--sidebar);border-right:1px solid var(--line);padding:35px 22px 15px;display:flex;flex-direction:column;overflow:auto;z-index:30}.side-brand{display:flex;justify-content:space-between;margin:0 4px 32px}.workspace{display:flex;align-items:center;gap:10px;padding:12px 8px 24px}.avatar{display:flex;width:35px;height:35px;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--green);font-size:13px;font-weight:600}.workspace strong{font-size:12px;font-weight:550}.workspace small{font-size:10px;color:var(--muted);margin-top:5px}.online-dot{width:6px;height:6px;border-radius:50%;background:#709276;margin-left:auto}.nav-label{color:var(--faint);font-size:10px;font-weight:550;letter-spacing:1.3px;margin:12px 10px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;font-size:12px;padding:12px;border-radius:8px;margin:3px 0;color:var(--muted)}.nav-item svg:last-child:not(:first-child){margin-left:auto}.nav-item.active{color:var(--green);background:var(--accent-soft);font-weight:550}.nav-item:hover{background:var(--hover)}.nav-count{margin-left:auto;background:var(--sidebar);border-radius:4px;padding:2px 5px;font-size:10px}.mini-calendar{margin:31px 4px 20px;padding-bottom:23px;border-bottom:1px solid var(--line)}.mini-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.mini-heading strong{font-size:12px;font-weight:550}.mini-heading>div{display:flex}.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-grid small{text-align:center;font-size:9px;color:var(--faint);padding-bottom:9px}.mini-grid button{width:25px;height:26px;font-size:10px;border-radius:7px;margin:auto}.mini-grid .other-month{color:var(--faint);opacity:.5}.mini-grid .today{color:var(--green);font-weight:750}.mini-grid button.selected{background:var(--green);color:var(--bg)}.mini-grid button:hover{background:var(--accent-soft);color:var(--green)}.group-heading{display:flex;justify-content:space-between;align-items:center}.group-row{display:flex;align-items:center;gap:11px;width:100%;padding:11px 10px;font-size:12px;color:var(--muted);border-radius:7px}.group-row>span:last-child{margin-left:auto;display:flex;color:var(--faint)}.group-row:hover,.group-row.chosen{background:var(--hover);color:var(--text)}.color-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--event-color);flex-shrink:0}.all-dot{width:8px;height:8px;display:block;border:1.5px solid var(--muted);border-radius:50%}.privacy-note{display:flex;gap:9px;color:var(--muted);margin:26px 8px 25px}.privacy-note p{font-size:11px;line-height:1.6}.privacy-note small{font-size:9px;color:var(--faint);margin-top:3px}.side-hint{font-size:11px;color:var(--muted);line-height:1.9;padding:12px}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.profile{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:4px}.small-avatar{width:30px;height:30px;font-size:10px}.profile>span:nth-child(2){font-size:11px}.profile small{font-size:9px;color:var(--faint);margin-top:4px}.profile>svg{margin-left:auto;color:var(--muted)}.main{margin-left:248px;width:calc(100% - 248px)}.topbar{height:79px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 44px;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.breadcrumb{display:flex;align-items:center;gap:13px;font-size:11px;color:var(--faint)}.breadcrumb strong{color:var(--muted);font-weight:400}.top-actions{display:flex;align-items:center;gap:9px}.connection-dot{display:inline-block;width:5px;height:5px;background:#7e9d7c;border-radius:50%;flex-shrink:0}.sync-label{font-size:10px;color:var(--muted);margin-right:10px}.page-content{padding:39px 44px 0;max-width:1540px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:39px;gap:20px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:550;color:var(--faint)}h1{font-size:32px;letter-spacing:-1px;font-weight:550;line-height:1.6;margin-top:8px}.heading-dot{color:#91a28a;margin-left:3px}.page-heading p{color:var(--muted);font-size:11px;margin-top:7px;letter-spacing:.3px}.new-button{margin-top:12px;white-space:nowrap}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:15px}.date-nav{display:flex;align-items:center;gap:12px}.date-nav h2{font-size:17px;font-weight:550;white-space:nowrap;letter-spacing:-.4px}.nav-arrows{display:flex;gap:0}.nav-arrows .icon{width:25px}.today-button{padding:6px 10px;font-size:10px;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.toolbar-right{display:flex;gap:14px}.search{display:flex!important;align-items:center;gap:7px;color:var(--faint);margin:0!important}.search input{width:145px;background:none;border:0;padding:8px 0!important;font-size:10px;color:var(--text)}.segmented{display:flex;padding:3px;background:var(--sidebar);border:1px solid var(--line);border-radius:8px}.segmented button{padding:6px 12px;font-size:10px;color:var(--muted);border-radius:5px;white-space:nowrap}.segmented button.selected{background:var(--surface);box-shadow:0 1px 4px #263c3010;color:var(--text)}.content-columns{display:grid;grid-template-columns:minmax(0,1fr) 231px;gap:30px}.waterfall-area{min-width:0}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:8px;gap:5px}.week-strip button{display:flex;flex-direction:column;align-items:center;padding:11px 5px 7px;border-radius:8px;gap:8px}.week-strip small{font-size:9px;color:var(--faint)}.week-strip span{font-size:20px;font-weight:450;letter-spacing:-.7px}.week-strip i{width:3px;height:3px;background:transparent;border-radius:50%}.week-strip i.has-events{background:var(--muted)}.week-strip button.is-today,.week-strip button.is-selected{background:var(--green);color:var(--bg)}.week-strip .is-today small,.week-strip .is-selected small{color:var(--bg);opacity:.65}.week-strip .is-today i.has-events{background:var(--bg)}.week-strip button:not(.is-today):not(.is-selected):hover{background:var(--hover)}.waterfall-status{display:flex;justify-content:space-between;align-items:center;margin:24px 0 22px;font-size:9px;color:var(--faint)}.waterfall-status>span{display:flex;align-items:center;gap:6px}.waterfall-status i{width:4px;height:4px;background:#8da28e;border-radius:50%}.waterfall-status small{font-size:9px}.day-section{margin-bottom:26px}.day-heading{display:flex;align-items:center;gap:12px;margin-bottom:19px}.day-number{font-size:33px;line-height:1;font-weight:350;letter-spacing:-1.6px;color:var(--text)}.day-heading h3{font-size:12px;font-weight:550;margin-bottom:5px}.day-heading>div>span{font-size:9px;color:var(--faint)}.day-event-count{font-size:9px;color:var(--faint);margin-left:auto;border:1px solid var(--line);border-radius:5px;padding:4px 7px}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:58px;width:1px;background:var(--line);top:0;bottom:0}.timeline-row{display:grid;grid-template-columns:45px 1fr;gap:30px;position:relative;padding:0 0 14px}.time-gutter{padding-top:17px;text-align:right;font-variant-numeric:tabular-nums;font-size:10px}.time-gutter small{font-size:9px;color:var(--faint);margin-top:7px}.timeline-dot{position:absolute;left:55px;top:22px;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px var(--bg);z-index:1}.event-card{width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:16px 19px 14px;box-shadow:0 2px 6px #213b3003;min-width:0}.event-card:hover:not(:disabled){border-color:color-mix(in srgb,var(--event-color) 55%,var(--line));box-shadow:0 4px 14px #213b3007}.event-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.event-category{display:flex;align-items:center;gap:6px;color:var(--event-color);font-size:9px;letter-spacing:.2px}.event-category .color-dot{width:5px;height:5px}.event-indicators{display:flex;gap:8px;align-items:center;color:var(--faint);font-size:9px}.event-card h4{font-size:15px;font-weight:550;line-height:1.6;margin-top:10px;word-break:break-word}.event-card>p{font-size:10px;color:var(--muted);margin-top:7px;line-height:1.8}.event-description{white-space:pre-line;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-footer{display:flex;gap:17px;margin-top:14px;color:var(--faint);font-size:9px;flex-wrap:wrap}.event-footer>span{display:inline-flex;align-items:center;gap:5px;overflow-wrap:anywhere}.is-locked .event-card{background:var(--sidebar);border-style:dashed;opacity:1}.is-locked .event-category{color:var(--faint)}.is-locked h4{color:var(--muted);font-size:13px}.is-locked .time-gutter{color:var(--faint)}.empty-day{min-height:67px;margin-left:75px;position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:18px 0;color:var(--faint)}.empty-day .timeline-dot{left:-20px;top:23px;background:var(--line);width:6px;height:6px}.empty-day p{font-size:10px}.empty-day .text-button{font-size:9px}.timeline-end{display:flex;align-items:center;justify-content:center;gap:13px;font-size:9px;letter-spacing:.7px;color:var(--faint);padding:25px 0 42px}.timeline-end>span{width:25px;height:1px;background:var(--line)}.insights{padding-top:0}.today-overview{background:var(--sidebar);border:1px solid var(--line);border-radius:13px;padding:25px 22px;overflow:hidden;position:relative}.today-overview .eyebrow{font-size:8px;letter-spacing:1.8px}.today-overview h3{font-size:19px;font-weight:500;margin-top:15px;letter-spacing:-.7px}.today-overview p{font-size:10px;color:var(--muted);line-height:2.1;margin-top:11px}.rhythm-art{height:121px;position:relative;margin-top:7px}.rhythm-art>div{position:absolute;border:1px solid #a8b69c70;border-radius:100% 100% 0 0;border-bottom:none;width:110px;height:120px;left:35px;top:10px;transform:rotate(28deg)}.rhythm-art>div:nth-child(2){width:85px;height:105px;left:58px;top:21px;transform:rotate(28deg)}.rhythm-art>div:nth-child(3){width:60px;height:90px;left:80px;top:33px;transform:rotate(28deg)}.rhythm-art>span{position:absolute;width:19px;height:19px;background:#b5bf9e;border-radius:50%;left:122px;top:41px;box-shadow:0 0 0 7px var(--sidebar)}.overview-stats{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;padding-top:19px;margin-top:9px}.overview-stats>div+div{border-left:1px solid var(--line);padding-left:25px}.overview-stats strong{font-size:24px;font-weight:400;letter-spacing:-1px}.overview-stats small{font-size:9px;color:var(--faint);margin-top:6px}.privacy-card{padding:26px 2px 23px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;gap:8px;color:var(--green)}.section-heading h3{font-size:12px;font-weight:550;color:var(--text)}.privacy-card>p{font-size:10px;line-height:2;color:var(--muted);margin-top:12px}.privacy-demo{display:flex;align-items:center;gap:7px;background:var(--sidebar);border:1px dashed var(--line);border-radius:6px;padding:12px 9px;margin:16px 0;color:var(--muted);font-size:9px}.privacy-demo>span:last-child{margin-left:auto;font-size:8px;color:var(--faint)}.privacy-card>.text-button{font-size:10px}.apple-card{display:flex;align-items:center;width:100%;gap:11px;text-align:left;margin-top:21px;padding:16px 0;color:var(--muted)}.apple-card strong{font-size:10px;color:var(--text);font-weight:550}.apple-card small{font-size:9px;margin-top:6px;line-height:1.5}.apple-card>svg:last-child{margin-left:auto}.aside-footnote{font-size:8px;color:var(--faint);line-height:2.2;letter-spacing:1.2px;margin:32px 0}.alert{border:1px solid #c7827460;background:color-mix(in srgb,#b76147 8%,var(--bg));color:#b06552;border-radius:8px;padding:12px 14px;font-size:12px;line-height:1.8;margin-bottom:18px;display:flex;justify-content:space-between;gap:12px}.empty-state{text-align:center;color:var(--muted);padding:70px 0}.empty-state h3{font-size:13px;font-weight:400;margin-top:20px}.onboarding{border:1px dashed var(--line);padding:32px;text-align:center;border-radius:12px;margin:24px 0}.onboard-icon{color:var(--green);display:inline-flex;border-radius:50%;background:var(--accent-soft);padding:12px}.onboarding h3{font-size:17px;font-weight:500;margin:15px 0 8px}.onboarding p{font-size:11px;color:var(--muted);line-height:1.9;margin-bottom:20px}.boot{height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px}.boot>span:last-child{font-size:12px;color:var(--muted)}.mobile-only{display:none}.sheet{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:510px;max-width:100vw;border:0;border-left:1px solid var(--line);background:var(--bg);color:var(--text);padding:0;box-shadow:var(--shadow)}.sheet::backdrop{background:#14291e50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet[open]{animation:sheet-in .22s ease-out}.sheet-inner{padding:31px 32px 40px}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:32px}.sheet-header .eyebrow{font-size:8px}.sheet-header h2{font-size:24px;letter-spacing:-.7px;font-weight:500;margin-top:12px}.sheet form label{display:flex;flex-direction:column;gap:9px;font-size:11px;font-weight:500;margin:18px 0}.sheet label small{font-size:10px;color:var(--muted);font-weight:400;line-height:1.8}input,select,textarea{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:12px;font-size:12px;min-width:0;max-width:100%}textarea{resize:vertical;line-height:1.8}.sheet input,.sheet select,.sheet textarea{width:100%}.sheet input[type=checkbox]{width:15px;height:15px;accent-color:var(--green)}.sheet .checkbox-label{flex-direction:row;align-items:center;gap:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row>label{min-width:0}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.form-actions>.text-button{margin-right:auto}.danger{font-size:12px;border:1px solid #b06552;color:#b06552;border-radius:7px;padding:9px 12px}.danger-text{color:#b06552}.panel-intro{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:24px}.field-hint{font-size:11px;line-height:1.9;color:var(--muted);margin:12px 0 18px}.info-note{font-size:11px;line-height:1.9;color:var(--muted);background:var(--sidebar);padding:12px;border-radius:7px;display:flex;gap:9px;margin:20px 0}.info-note svg{margin-top:3px}.sheet h3{font-size:14px;font-weight:550}.group-setting{border:1px solid var(--line);border-radius:10px;padding:20px;margin:16px 0}.group-setting h3{display:flex;align-items:center;gap:8px;margin-bottom:12px}.badge{margin-left:auto;font-size:9px;font-weight:400;color:var(--muted);background:var(--hover);border-radius:5px;padding:4px 7px}.category-tags{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.category-tags span{padding:5px 9px;border-radius:5px;background:var(--sidebar);font-size:10px;color:var(--muted)}.inline-form{display:flex;gap:7px;margin:15px 0}.inline-form input{flex:1;min-width:0}.inline-form button{white-space:nowrap;font-size:10px;padding:8px 9px}summary{font-size:10px;color:var(--muted);cursor:pointer;padding:10px 0}.new-group-form{padding-top:25px;border-top:1px solid var(--line);margin-top:25px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.setting-row strong{font-size:12px;font-weight:500}.setting-row small{font-size:10px;color:var(--muted);line-height:1.8;margin-top:5px}.toggle{border-radius:20px;background:var(--line);width:39px;height:23px;padding:3px;flex-shrink:0}.toggle span{display:block;width:17px;height:17px;background:var(--surface);border-radius:50%;box-shadow:0 1px 4px #0002;transition:transform .15s}.toggle.on{background:#60836b}.toggle.on span{transform:translate(16px)}.panel-divider{height:1px;background:var(--line);margin:29px 0}.account-summary{display:flex;align-items:center;gap:12px;background:var(--sidebar);padding:16px;border-radius:10px;margin-bottom:32px}.account-summary strong{font-size:13px}.account-summary small{font-size:10px;color:var(--muted);margin-top:5px}.account-summary .icon{margin-left:auto}.sync-status{display:flex;gap:12px;padding:15px;background:var(--sidebar);border:1px solid var(--line);border-radius:9px;align-items:center}.sync-status strong{font-size:12px;font-weight:500}.sync-status small{font-size:10px;color:var(--muted);line-height:1.8;margin-top:6px}.sync-status .icon{margin-left:auto}.error-status{border-color:#c7827460}.error-status .connection-dot{background:#b06552}.privacy-explanation{display:flex;gap:12px;color:var(--green)}.privacy-explanation p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:10px}.conflict-box{border:1px solid #c7827470;background:var(--sidebar);padding:16px;border-radius:9px}.conflict-box p{font-size:11px;color:var(--muted);line-height:1.9;margin:12px 0}.button-row{display:flex;gap:10px}.button-row button{font-size:10px}.sheet fieldset{border:0;padding:0;margin:0;min-width:0}.event-readonly h3{font-size:24px;line-height:1.6;margin:20px 0}.event-readonly p{font-size:12px;color:var(--muted);display:flex;gap:8px;line-height:1.9;margin:18px 0;overflow-wrap:anywhere}.preserve-lines{white-space:pre-wrap}.read-only-badge{font-size:11px;display:inline-flex;gap:6px;align-items:center;background:var(--sidebar);padding:7px 9px;border-radius:6px;color:var(--muted)}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:100;background:var(--text);color:var(--bg);box-shadow:var(--shadow);border-radius:10px;padding:13px 20px;display:flex;align-items:center;gap:10px;font-size:12px;max-width:90vw}.auth-page{min-height:100dvh;display:grid;grid-template-columns:1.12fr 1fr}.auth-left{padding:45px 9%;background:var(--sidebar);display:flex;flex-direction:column;position:relative}.auth-copy{margin:auto 0;padding:60px 0}.auth-copy .eyebrow{font-size:9px;letter-spacing:2px}.auth-copy h1{font-size:clamp(29px,3vw,43px);font-weight:450;line-height:1.65;margin-top:22px;letter-spacing:-1.5px}.auth-copy>p{font-size:12px;line-height:2.1;color:var(--muted);margin-top:20px}.auth-preview{margin-top:36px;max-width:380px;border:1px solid var(--line);border-radius:13px;background:var(--bg);padding:20px 22px;box-shadow:0 16px 40px #273e3406;transform:rotate(-1deg)}.preview-date{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding-bottom:17px;border-bottom:1px solid var(--line)}.preview-date>span:last-child{color:var(--faint);font-size:9px}.preview-item{display:flex;gap:18px;align-items:center;margin-top:24px}.preview-item>span{font-size:11px;color:var(--muted);width:37px}.preview-item>div{border-left:1px solid #89a18b;padding-left:16px;display:flex;flex-direction:column;gap:8px}.preview-item small{font-size:8px;letter-spacing:1.2px;color:var(--green);display:flex;gap:5px}.preview-item strong{font-size:12px;font-weight:500}.preview-item>svg{color:var(--faint);margin-left:auto}.preview-item.private strong{color:var(--muted)}.preview-item.private>div{border-left:1px dashed var(--muted-dot)}.preview-item.private small{color:var(--faint)}.preview-end{text-align:center;color:var(--faint);font-size:9px;margin:24px 0 0;letter-spacing:.4px}.auth-footer{font-size:9px;letter-spacing:1px;color:var(--faint);display:flex;justify-content:space-between}.auth-footer>span{letter-spacing:.5px;font-size:10px}.auth-right{display:flex;align-items:center;justify-content:center;padding:50px}.auth-form-wrap{width:100%;max-width:330px}.form-emblem{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--green);border-radius:15px;margin-bottom:26px}.auth-form-wrap h2{font-size:27px;font-weight:500;letter-spacing:-.7px}.auth-form-wrap>p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:12px;margin-bottom:33px}.auth-form-wrap label{display:flex;flex-direction:column;gap:10px;font-size:11px;margin:20px 0}.auth-form-wrap input{padding:13px 14px;font-size:12px}.auth-form-wrap .primary{margin-top:9px;min-height:46px}.auth-form-wrap .auth-switch{text-align:center;font-size:11px;margin:25px 0 0}.auth-switch .text-button{font-size:11px;margin-left:5px}.auth-security{display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:var(--faint);margin-top:51px;padding-top:22px;border-top:1px solid var(--line)}@keyframes sheet-in{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@media(min-width:1550px){.page-content{padding-top:50px}.page-heading{margin-bottom:45px}.content-columns{grid-template-columns:minmax(0,1fr) 260px;gap:42px}.event-card{padding:20px 25px}.sidebar{width:270px;padding-left:28px;padding-right:28px}.main{margin-left:270px;width:calc(100% - 270px)}}@media(max-width:1200px){.sidebar{width:218px;padding-left:16px;padding-right:16px}.main{margin-left:218px;width:calc(100% - 218px)}.topbar{padding:0 28px}.page-content{padding:30px 28px 0}.content-columns{grid-template-columns:minmax(0,1fr) 200px;gap:22px}h1{font-size:28px}.today-overview{padding:22px 17px}.today-overview h3{font-size:17px}.search input{width:117px}.date-nav{gap:7px}.toolbar-right{gap:8px}.segmented button{padding:6px 9px}.brand{font-size:23px}}@media(max-width:1020px){.insights{display:none}.content-columns{grid-template-columns:minmax(0,1fr)}.page-heading{margin-bottom:30px}.calendar-toolbar{margin-bottom:19px}}@media(max-width:760px){.sidebar{transform:translate(-100%);transition:transform .2s ease-out;width:263px;z-index:60;padding:27px 23px 15px}.sidebar.mobile-open{transform:translate(0)}.mobile-only{display:inline-flex}.mobile-scrim{position:fixed;inset:0;background:#10251c60;z-index:50}.main{margin-left:0;width:100%}.topbar{height:61px;padding:0 20px}.breadcrumb{gap:8px;font-size:10px}.breadcrumb>span{display:none}.top-actions{gap:5px}.sync-label{font-size:9px;margin-right:4px}.top-actions .icon{width:30px}.page-content{padding:27px 20px 0}.page-heading{align-items:flex-start;margin-bottom:27px;gap:9px}.page-heading .eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:25px;margin-top:9px;letter-spacing:-.8px}.page-heading p{font-size:10px;line-height:1.9;max-width:250px;margin-top:6px}.new-button{font-size:0!important;width:38px;min-height:38px!important;padding:0!important;margin-top:25px;gap:0!important}.new-button svg{width:18px}.calendar-toolbar{flex-wrap:wrap;gap:17px}.date-nav{gap:10px}.date-nav h2{font-size:16px}.toolbar-right{width:100%;justify-content:space-between}.search input{width:180px;font-size:11px}.search svg{width:15px}.week-strip{padding:5px;gap:3px;border-radius:10px}.week-strip button{padding:10px 2px 6px;gap:7px}.week-strip small{font-size:9px}.week-strip span{font-size:19px}.waterfall-status{margin:22px 0}.day-number{font-size:30px}.day-heading{margin-bottom:18px}.timeline-row{grid-template-columns:36px 1fr;gap:24px}.timeline:before{left:46px}.timeline-dot{left:43px}.time-gutter{font-size:9px}.time-gutter small{font-size:8px}.event-card{padding:14px;border-radius:9px}.event-card h4{font-size:14px}.event-category{font-size:8px}.event-indicators{gap:5px;font-size:8px}.event-card>p{font-size:10px}.event-footer{gap:10px;font-size:9px;line-height:1.8}.empty-day{margin-left:60px;flex-wrap:wrap}.empty-day .timeline-dot{left:-17px}.day-event-count{font-size:8px}.sheet{width:min(510px,100vw)}.sheet-inner{padding:26px 23px 35px}.sheet-header{margin-bottom:25px}.sheet-header h2{font-size:23px}.sheet input,.sheet select,.sheet textarea{font-size:16px}.form-row{gap:10px}.form-row input{padding:10px 6px;font-size:13px}.toast{font-size:11px;bottom:20px;width:max-content;line-height:1.6}.auth-page{display:flex;flex-direction:column}.auth-left{padding:25px 25px 29px}.auth-left>.brand{font-size:23px}.auth-copy{padding:35px 0 0}.auth-copy h1{font-size:28px;margin-top:12px;line-height:1.6}.auth-copy>p{font-size:11px;margin-top:10px}.auth-copy .eyebrow{font-size:7px;letter-spacing:1.5px}.auth-preview,.auth-footer{display:none}.auth-right{padding:35px 25px 30px;flex:1;align-items:flex-start}.auth-form-wrap{max-width:450px}.form-emblem{display:none}.auth-form-wrap h2{font-size:22px}.auth-form-wrap>p{margin-top:8px;margin-bottom:23px}.auth-form-wrap label{margin:17px 0}.auth-form-wrap input{font-size:16px}.auth-security{margin-top:30px}.onboarding{padding:25px 16px}.onboarding h3{font-size:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(prefers-reduced-transparency:reduce){.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}.sheet::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#14291ebd}}@media(prefers-contrast:more){:root{--muted:#4d5a50;--faint:#59675d;--line:#819085}:root[data-theme=dark]{--muted:#c3d0c4;--faint:#bccabd;--line:#768d7d}.event-card{border-width:2px}}:root[data-theme=dark] .event-category{color:color-mix(in srgb,var(--event-color),var(--text) 55%)}@media(max-width:760px){.sidebar{visibility:hidden;pointer-events:none}.sidebar.mobile-open{visibility:visible;pointer-events:auto}.event-category,.event-footer{font-size:10px}.event-indicators{font-size:9px}.time-gutter,.week-strip small{font-size:10px}}.sync-target-hint{background:var(--sidebar);border:1px solid var(--line);border-radius:8px;padding:13px 14px;margin:12px 0}.sync-target-hint p{font-size:11px;line-height:1.9;color:var(--muted);margin-bottom:9px}.sheet label{display:flex;flex-direction:column;gap:9px;font-size:11px;font-weight:500;margin:18px 0}.calendar-mappings{margin-top:29px}.mapping-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:17px}.mapping-heading h3{font-size:14px;font-weight:600}.mapping-heading p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:6px}.mapping-count{font-size:10px;line-height:1.6;color:var(--muted);background:var(--sidebar);border-radius:5px;padding:4px 7px;white-space:nowrap;margin-top:1px}.mapping-list{border:1px solid var(--line);border-radius:11px;background:var(--surface);overflow:hidden}.mapping-row{display:grid;grid-template-columns:27px minmax(0,1fr) 146px;align-items:center;gap:10px;padding:15px 14px;min-height:76px}.mapping-row+.mapping-row{border-top:1px solid var(--line)}.mapping-calendar-icon{color:var(--faint);display:flex;align-items:center;justify-content:center}.mapping-calendar-name{min-width:0}.mapping-calendar-name strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;line-height:1.5}.mapping-calendar-name small{font-size:10px;color:var(--faint);display:flex;align-items:center;gap:5px;margin-top:5px;line-height:1.5}.mapping-calendar-name i{width:4px;height:4px;background:var(--muted-dot);border-radius:50%}.mapping-enabled .mapping-calendar-name i{background:#71947c}.mapping-enabled .mapping-calendar-icon{color:var(--green)}.sheet .mapping-row select{font-size:12px;min-height:38px;padding:8px 26px 8px 10px;background:var(--bg);border-color:var(--line);border-radius:7px}.mapping-footnote{display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:10px;line-height:1.8;margin:14px 2px 0}.mapping-footnote svg{margin-top:2px}.mapping-rules{margin:7px 2px 0}.mapping-rules summary{font-size:10px;color:var(--green);padding:7px 0}.mapping-rules p{font-size:11px;line-height:1.9;color:var(--muted);padding:3px 0 4px}.generated-key{padding:18px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));border-radius:10px;margin:0 0 22px}.generated-key-heading{display:flex;align-items:center;gap:8px;color:var(--green)}.generated-key-heading h3{font-size:12px}.generated-key-heading button{margin-left:auto}.generated-key>p{font-size:11px;color:var(--muted);line-height:1.8;margin:8px 0 13px}.key-copy-row{display:flex;align-items:stretch;gap:8px}.sheet .key-copy-row input{font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;min-width:0;flex:1;padding:10px 9px}.key-copy-row button{white-space:nowrap;font-size:11px;padding:9px 11px;gap:6px;background:var(--surface)}.generated-key>small{font-size:10px;margin-top:8px;color:var(--muted)}.group-key-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:13px;margin-top:17px}.group-key-actions>span{display:flex;align-items:center;gap:5px;color:var(--faint);font-size:10px}.group-key-actions .text-button{font-size:10px}.regenerate-confirm{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.regenerate-confirm p{font-size:11px;line-height:1.8;color:var(--muted);margin-bottom:13px}.regenerate-confirm .button-row{justify-content:flex-end}.regenerate-confirm button{font-size:11px;min-height:35px;padding:8px 12px}.auto-key-note{display:flex;gap:9px;align-items:flex-start;background:var(--sidebar);border-radius:8px;padding:13px;margin:4px 0 20px;color:var(--green)}.auto-key-note p{font-size:11px;line-height:1.6;color:var(--text)}.auto-key-note small{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.8}@media(max-width:760px){.mapping-row{grid-template-columns:22px minmax(0,1fr) minmax(112px,42%);padding:14px 11px;gap:8px;min-height:75px}.mapping-calendar-name strong{font-size:13px}.sheet .mapping-row select{font-size:13px;min-height:42px;padding-left:9px;padding-right:17px}.mapping-heading{gap:9px}.mapping-heading p{font-size:11px;max-width:220px}.mapping-count{font-size:9px}.key-copy-row{flex-wrap:wrap}.sheet .key-copy-row input{flex-basis:100%;font-size:12px}.key-copy-row button{margin-left:auto;min-height:40px}}.group-symbol{display:flex;align-items:center;justify-content:center;flex-shrink:0}.category-manage-list{margin:13px 0 4px}.category-manage-item+.category-manage-item{border-top:1px solid var(--line)}.category-manage-row{display:flex;align-items:center;gap:9px;min-height:43px;padding:7px 0}.category-manage-row>span{display:flex}.category-manage-row strong{font-size:12px;font-weight:450;word-break:break-word}.category-manage-row .icon{margin-left:auto;flex-shrink:0}.add-category{font-size:11px;margin:12px 0 3px}.legacy-key-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:9px}.item-editor{padding:4px 0 17px}.group-setting>.item-editor{border-bottom:1px solid var(--line);margin:15px 0}.editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.editor-actions button{font-size:11px;min-height:38px;padding:9px 13px}.sheet .color-picker{border:0;margin:19px 0;padding:0}.color-picker legend{font-size:11px;margin-bottom:11px;font-weight:500}.color-swatches{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.swatch{border-radius:50%;width:25px;height:25px;flex-shrink:0;color:#fff;font-size:14px;border:2px solid transparent;box-shadow:0 0 0 1px var(--line)}.swatch.selected{outline:2px solid var(--text);outline-offset:3px}.sheet .custom-color{position:relative;width:26px;height:26px;margin:0!important;border:1px dashed var(--faint);border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--muted)}.custom-color input{position:absolute;inset:0;opacity:0;cursor:pointer;padding:0;width:100%;height:100%}.icon-picker{border-top:1px solid var(--line);padding-top:5px;margin-top:20px}.icon-picker summary{display:flex;align-items:center;gap:9px;font-size:11px;padding:12px 0;color:var(--text);list-style:none}.icon-picker summary:after{content:"⌄";margin-left:auto;color:var(--muted)}.icon-picker summary small{font-size:10px;color:var(--faint);margin-left:4px}.appearance-preview{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:var(--sidebar)}.icon-picker>input{margin:5px 0 12px!important;font-size:12px}.icon-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;max-height:240px;overflow:auto;padding:3px}.icon-grid button{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:7px;color:var(--muted);min-width:0;border:1px solid transparent}.icon-grid button:hover{background:var(--hover)}.icon-grid button.selected{background:var(--accent-soft);color:var(--green);border-color:var(--green)}.event-sync-summary{display:flex;align-items:flex-start;gap:10px;background:var(--sidebar);padding:14px;border-radius:8px;margin-top:21px;color:var(--green)}.event-sync-summary strong{display:block;font-size:12px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}.event-sync-summary small{font-size:10px;color:var(--muted);line-height:1.8;margin-top:5px}.sync-options{margin-top:7px}.sync-options>summary{font-size:11px;color:var(--green)}.install-app{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:10px;padding:16px;margin:25px 0 30px;color:var(--green)}.install-app>div{min-width:0;flex:1}.install-app strong{font-size:12px;font-weight:550;color:var(--text)}.install-app p{font-size:10px;color:var(--muted);line-height:1.9;margin-top:5px}.install-app .install-instructions{font-size:11px;padding-top:7px}.install-app .secondary{padding:7px 10px;min-height:34px;font-size:10px;white-space:nowrap}.pwa-status{position:fixed;bottom:20px;right:20px;z-index:120;background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;padding:12px 15px;display:flex;gap:10px;align-items:center;font-size:12px;max-width:calc(100vw - 40px)}.pwa-status button{color:var(--green);font-size:12px;font-weight:600;white-space:nowrap}@media(max-width:760px){.icon-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.icon-grid button{min-height:39px}.swatch{width:27px;height:27px}.color-swatches{gap:11px}.sheet .icon-picker>input{font-size:16px}.install-app{flex-wrap:wrap}.install-app .secondary{margin-left:33px}.item-editor .checkbox-label{font-size:12px}.group-setting{padding:16px}.group-setting h3{gap:7px}.group-setting .badge{font-size:8px}.editor-actions button{min-height:42px}}@media(display-mode:standalone){.topbar{padding-top:env(safe-area-inset-top);height:calc(79px + env(safe-area-inset-top))}.sheet-inner{padding-bottom:calc(40px + env(safe-area-inset-bottom))}.page-content{padding-bottom:env(safe-area-inset-bottom)}@media(max-width:760px){.topbar{height:calc(61px + env(safe-area-inset-top))}}}.color-swatches{display:grid;grid-template-columns:repeat(7,27px);gap:10px}@media(max-width:360px){.color-swatches{gap:8px;grid-template-columns:repeat(7,27px)}}.interaction-overlay{border:1px solid var(--border,#dce3dc);border-radius:22px;padding:0;width:min(520px,calc(100vw - 32px));max-height:min(85dvh,var(--visible-height,85dvh));color:var(--text,#29362f);background:var(--surface,#fafbf8);box-shadow:0 24px 100px #14251c35;overflow:hidden}.interaction-overlay::backdrop{background:#17271f55;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.interaction-overlay>header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--border,#dce3dc)}.interaction-overlay h2{font-size:20px;margin:0}.overlay-content{padding:24px;overflow-y:auto;max-height:calc(min(85dvh,var(--visible-height,85dvh)) - 82px);overscroll-behavior:contain}.custom-select{width:100%;min-height:46px;padding:11px 14px;border:1px solid var(--border,#dce3dc);border-radius:12px;background:var(--surface,#fafbf8);color:inherit;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit;font-size:15px}.custom-select>span{display:flex;gap:9px;align-items:center;min-width:0}.custom-select>span>span{overflow:hidden;text-overflow:ellipsis}.custom-select:disabled{opacity:.55}.choice-list{display:flex;flex-direction:column;gap:4px;max-height:52dvh;overflow:auto;scrollbar-width:thin;margin-bottom:14px}.choice-list>button{display:flex;align-items:center;text-align:left;gap:12px;padding:13px 12px;min-height:46px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit}.choice-list>button>span:last-child{margin-left:auto}.choice-list>button.selected,.choice-list>button:hover{background:color-mix(in srgb,#527b68 12%,transparent)}.choice-list>button:focus-visible{outline:2px solid #527b68;outline-offset:-2px}.date-jump{display:grid;grid-template-columns:1fr 1fr;gap:16px}.date-picker-grid{margin:16px 0 24px;gap:6px}.date-picker-grid button{min-height:40px}.datetime-row{display:grid;grid-template-columns:55px minmax(0,1fr) 104px;gap:10px;align-items:center;margin:18px 0}.datetime-row>strong{font-size:13px;font-weight:500}.quick-jump{width:192px;margin-bottom:18px}.settings-menu{display:flex;flex-direction:column;gap:10px;margin:24px 0}.settings-menu>button{display:flex;justify-content:space-between;min-height:52px}.icon-category-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.icon-category-tabs button{padding:6px 10px;border-radius:8px;background:transparent;border:1px solid var(--border,#dce3dc);color:inherit;font-size:12px}.icon-category-tabs button.selected{background:#527b68;color:#fafbf8}.icon-grid{max-height:260px;overflow:auto;overscroll-behavior:contain}.sheet{overscroll-behavior:contain}.sheet-inner{padding-bottom:max(28px,env(safe-area-inset-bottom))}button,a,[role=option],.brand,.nav-label{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}input,textarea,[contenteditable],.preserve-lines{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}button:focus-visible{outline:2px solid #527b68;outline-offset:3px}.app-shell{padding-top:env(safe-area-inset-top)}@media(display-mode:standalone){html,body,.sheet,.interaction-overlay{touch-action:pan-x pan-y}body{overscroll-behavior:none}}@media(max-width:640px){.interaction-overlay{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:min(90dvh,var(--visible-height,90dvh));border-radius:22px 22px 0 0;border-bottom:0}.interaction-overlay>header{padding:20px}.overlay-content{padding:20px 20px max(24px,env(safe-area-inset-bottom));max-height:calc(min(90dvh,var(--visible-height,90dvh)) - 74px)}input,textarea,select{font-size:16px!important}.datetime-row{grid-template-columns:42px minmax(0,1fr) 92px;gap:8px}.datetime-row .custom-select{padding:10px 9px;font-size:14px}.sheet{max-height:var(--visible-height,100dvh)}.sheet-inner{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.icon-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.date-nav>.custom-select{width:auto;min-width:174px;background:transparent;border-color:transparent;font-size:20px;font-weight:550;padding-left:0}.icon-picker-trigger{margin:18px 0}.appearance-preview{display:inline-flex}.interaction-overlay.drawer{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:var(--visible-height,100dvh);width:min(580px,100vw);border-radius:22px 0 0 22px}.interaction-overlay.drawer .overlay-content{max-height:calc(var(--visible-height,100dvh) - 84px)}.mapping-row>.custom-select{width:170px;font-size:12px;min-width:0}.item-editor>.alert{margin:12px 0}.sheet form label:has(.custom-select){min-width:0}.datetime-row>.custom-select{white-space:nowrap}@media(max-width:640px){.date-nav>.custom-select{font-size:18px;min-width:148px}.interaction-overlay.drawer{inset:auto 0 0;height:auto;max-height:90dvh;border-radius:22px 22px 0 0}.interaction-overlay.drawer .overlay-content{max-height:calc(min(90dvh,var(--visible-height,90dvh)) - 84px)}.mapping-row>.custom-select{width:140px}}.interaction-overlay form label{display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:500;margin:18px 0}.interaction-overlay input:not([type=color]),.interaction-overlay textarea{width:100%;font-size:16px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text)}.interaction-overlay .custom-color{position:relative;width:28px;height:28px;margin:0!important;border:1px dashed var(--faint);border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--muted)}.interaction-overlay .color-picker{border:0;margin:20px 0;padding:0}.interaction-overlay .panel-intro{line-height:1.9}.interaction-overlay .date-jump label{display:flex;flex-direction:column;gap:10px;font-size:13px}.interaction-overlay .custom-select{background:var(--bg)}.interaction-overlay .icon-grid{max-height:38dvh}.interaction-overlay .generated-key{border:0;padding:0;margin:0}.interaction-overlay .regenerate-confirm{border:0;padding:0;background:transparent}.time-preview{font-size:42px;letter-spacing:2px;font-variant-numeric:tabular-nums;text-align:center;margin:0 0 24px;font-weight:450}.time-preview>span{color:var(--faint);padding:0 8px}.time-caption{font-size:12px;color:var(--muted);margin:20px 0 12px}.time-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:20px}.time-grid button{height:40px;font-size:15px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.time-grid button[aria-pressed=true]{background:var(--green);color:var(--bg);border-color:var(--green)}.form-actions{position:sticky;bottom:0;background:var(--bg);padding:16px 0 max(16px,env(safe-area-inset-bottom));z-index:1}.custom-select>span>span{white-space:nowrap}.interaction-overlay input[type=color]{min-width:0}.managed-calendar-list{border-top:1px solid var(--line);margin:16px 0}.managed-calendar-list>div{display:flex;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.managed-calendar-list>div>svg{color:var(--green)}.managed-calendar-list>div>span{min-width:0;overflow-wrap:anywhere}.managed-calendar-list small{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:11px}.interaction-overlay .mapping-rules{margin:22px 0}html:has(dialog[open]),body:has(dialog[open]){overflow:hidden}.interaction-overlay .choice-search{margin:0 0 16px;width:100%;padding:12px 14px;font-size:16px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text)}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.calendar-weekdays{font-size:12px;color:var(--muted);padding:16px 0 10px;border-bottom:1px solid var(--line)}.infinite-calendar{height:350px;overflow-y:auto;overscroll-behavior:contain;position:relative;overflow-anchor:none;scrollbar-width:thin}.infinite-month{padding:16px 0 20px}.infinite-month h3{font-size:14px;font-weight:550;margin:0 0 12px;color:var(--muted)}.infinite-month.active-month h3{color:var(--green)}.calendar-days{gap:4px}.calendar-days button{height:40px;border-radius:50%;font-size:14px;max-width:40px;width:100%;justify-self:center;font-variant-numeric:tabular-nums}.calendar-days button:hover{background:var(--hover)}.calendar-days button.today{box-shadow:inset 0 0 0 1px var(--green)}.calendar-days button.selected{background:var(--green);color:var(--bg)}.picker-footer{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:20px 0 0;border-top:1px solid var(--line);font-size:12px}.picker-footer>span{color:var(--muted)}.wheel-time-preview{text-align:center;font-size:42px;font-variant-numeric:tabular-nums;letter-spacing:3px;margin:4px 0 22px}.wheel-time-preview>span{color:var(--faint);padding:0 10px}.time-wheels{display:flex;align-items:center;justify-content:center;gap:20px;padding:0 28px}.wheel-column{flex:1;min-width:0}.wheel-label{display:block;text-align:center;font-size:12px;color:var(--muted);margin-bottom:10px;white-space:nowrap}.wheel-window{position:relative;height:220px}.wheel-scroll{height:220px;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;padding:88px 0;-webkit-mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent)}.wheel-scroll::-webkit-scrollbar{display:none}.wheel-option{height:44px;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:44px;color:var(--faint);font-variant-numeric:tabular-nums;cursor:grab;-webkit-user-select:none;user-select:none}.wheel-option.selected{font-weight:550;color:var(--green);font-size:30px}.wheel-selection{pointer-events:none;position:absolute;top:88px;left:0;right:0;height:44px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--green) 6%,transparent);border-radius:8px}.wheel-colon{font-size:26px;color:var(--muted);padding-top:24px}.wheel-hint{text-align:center;font-size:12px;color:var(--muted);margin:20px 0 24px}.sharing-panel>section{margin:26px 0}.sharing-panel h3{display:flex;align-items:center;gap:8px;font-size:15px}.sharing-panel .field-hint{margin:12px 0;line-height:1.9}.sharing-panel input[readonly]{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);font-size:13px;margin:12px 0;-webkit-user-select:text;user-select:text}.sharing-section-heading{display:flex;justify-content:space-between;align-items:center;margin:30px 0 18px}.access-key-list>section{padding:18px 0;border-bottom:1px solid var(--line)}.access-key-list h4{font-weight:550;font-size:14px}.access-key-list p{font-size:12px;color:var(--muted);line-height:1.8;margin:8px 0 14px}.access-key-list small{font-size:11px;color:var(--muted);margin-top:12px;line-height:1.8}.key-actions{display:flex;gap:14px;flex-wrap:wrap}.key-actions button{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--green)}.interaction-overlay label{display:flex;flex-direction:column;gap:9px;margin:18px 0;font-size:13px}.interaction-overlay label.access-check{display:flex;flex-direction:row;align-items:center;gap:10px;font-size:14px;margin:14px 0}.interaction-overlay .access-check input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}.access-check small{font-size:11px;color:var(--muted);line-height:1.8;margin-top:4px}.scope-groups{border:0;padding:10px 0 20px;margin:16px 0}.scope-groups legend{font-size:12px;color:var(--muted)}.scope-icon{display:flex}.share-link-section .button-row a{text-decoration:none}.interaction-overlay .setting-row small{max-width:270px}.interaction-overlay form .setting-row{margin:22px 0}.visitor-empty{padding:30px 0;color:var(--muted);font-size:13px;line-height:1.9}@media(max-width:640px){.infinite-calendar{height:min(350px,42dvh)}.time-wheels{padding:0 12px;gap:18px}.sharing-panel input[readonly]{font-size:16px}.calendar-days button{height:38px}.picker-footer{gap:8px}.wheel-time-preview{font-size:38px}}.interaction-overlay .date-jump label{margin:0}.infinite-calendar{height:clamp(200px,34dvh,350px)}.wheel-scroll:focus-visible,.infinite-calendar:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:8px}.sharing-panel .info-note{margin-top:24px}.sharing-panel .setting-row small{line-height:1.9}.scope-groups input[type=checkbox]{flex-shrink:0}.date-rail{position:relative;display:flex;gap:5px;overflow-x:auto;overflow-y:hidden;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);scrollbar-width:none;overscroll-behavior-x:contain;overflow-anchor:none;min-width:0}.date-rail::-webkit-scrollbar{display:none}.date-rail>button{flex:0 0 calc((100% - 30px)/7);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:11px 4px 8px;border-radius:9px;gap:8px;min-width:0}.date-rail small{font-size:10px;color:var(--muted)}.date-rail button>span{font-size:20px;font-weight:450;letter-spacing:-.5px;white-space:nowrap}.date-rail i{width:3px;height:3px;border-radius:50%;background:transparent}.date-rail i.has-events{background:var(--muted)}.date-rail .month-start{background:var(--accent-soft);color:var(--green)}.date-rail .month-start>span{font-size:17px;font-weight:600;letter-spacing:0}.date-rail .is-today:not(.is-selected){box-shadow:inset 0 0 0 1px var(--green)}.date-rail .is-selected{background:var(--green);color:var(--bg)}.date-rail .is-selected small{color:var(--bg);opacity:.75}.date-rail .is-selected i.has-events{background:var(--bg)}.date-rail>button:not(.is-selected):hover{background:var(--hover)}.appearance-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.appearance-choice{text-align:left;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.appearance-choice:hover{background:var(--hover)}.appearance-choice-label{display:block;font-size:12px;color:var(--muted);margin-bottom:12px}.appearance-choice-value{display:flex;align-items:center;gap:9px;font-size:13px;min-height:30px;white-space:nowrap}.current-color{width:25px;height:25px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000000d;flex-shrink:0}.current-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0}.appearance-chevron{color:var(--faint);font-size:22px;margin-left:auto}.color-selection-preview{display:flex;align-items:center;gap:14px;margin-bottom:26px;font-size:14px}.color-selection-preview>i{width:48px;height:48px;border-radius:14px;box-shadow:inset 0 0 0 1px #0000000d}.color-selection-preview small{font-size:12px;color:var(--muted);margin-top:6px;font-variant-numeric:tabular-nums}.color-palette{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-items:center;justify-items:center;padding:8px 4px 12px}.palette-swatch,.interaction-overlay label.palette-custom{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0;padding:0;line-height:1;font-size:22px;color:#fff;box-shadow:0 0 0 1px var(--line);position:relative}.palette-swatch.selected{outline:2px solid var(--text);outline-offset:4px}.interaction-overlay label.palette-custom{grid-column:span 6;margin-top:10px;width:44px;height:44px;border:1px dashed var(--muted);box-shadow:none;color:var(--muted);overflow:hidden;cursor:pointer}.palette-custom input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;z-index:1}.palette-custom>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:300;line-height:1;pointer-events:none}.color-palette+.field-hint{margin:16px 0 24px;font-size:12px;color:var(--muted);text-align:center}@media(max-width:640px){.date-rail{padding:5px;gap:3px;border-radius:10px}.date-rail>button{flex-basis:calc((100% - 18px)/7);padding:10px 2px 7px;gap:7px}.date-rail button>span{font-size:18px}.date-rail .month-start>span{font-size:15px}.date-rail small{font-size:9px}.appearance-columns{gap:10px}.appearance-choice{padding:12px}.appearance-choice-value{font-size:12px;gap:7px}.color-palette{gap:14px}.palette-swatch{width:36px;height:36px}}.calendar-workspace{height:100dvh;min-height:0;overflow:hidden}.calendar-workspace .main{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.calendar-workspace .topbar{height:48px;min-height:48px;padding:0 20px;position:relative;flex-shrink:0;-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}.calendar-workspace .breadcrumb>h1{font-size:13px;font-weight:550}.calendar-workspace .page-content{padding:8px 20px 0;margin:0;width:100%;max-width:none;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.calendar-workspace .calendar-toolbar{min-height:42px;flex-shrink:0;margin:0 0 8px;gap:8px;flex-wrap:nowrap}.calendar-workspace .date-nav{gap:7px;min-width:0}.calendar-workspace .date-nav>.custom-select{min-height:36px;min-width:150px;font-size:17px;padding:6px 0;border-radius:6px}.calendar-workspace .date-nav .icon{width:29px;height:30px}.calendar-workspace .today-button{height:30px;min-height:30px;padding:5px 10px}.calendar-workspace .toolbar-right{gap:8px}.calendar-workspace .segmented{padding:2px}.calendar-workspace .segmented button{min-height:29px;padding:5px 12px;font-size:12px}.calendar-create.primary{margin:0;padding:7px 12px;min-height:32px;font-size:12px;gap:6px}.calendar-workspace .top-actions{gap:10px}.search-active{color:var(--green);background:var(--accent-soft)}.calendar-stage{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.calendar-stage>.date-rail{flex-shrink:0;padding:4px;gap:3px;border-radius:9px}.calendar-stage>.date-rail>button{flex-basis:calc((100% - 18px)/7);padding:7px 2px 5px;gap:4px}.calendar-stage>.date-rail button>span{font-size:17px}.calendar-stage>.date-rail .month-start>span{font-size:15px}.calendar-stage>.date-rail small{font-size:9px}.hour-calendar{flex:1;min-height:0;display:flex;flex-direction:column}.schedule-summary{height:29px;min-height:29px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);padding:0 2px}.schedule-summary>span{display:flex;align-items:center;gap:8px}.schedule-summary>span>i{width:3px;height:3px;border-radius:50%;background:var(--faint)}.schedule-summary>button{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--green);padding:5px}.calendar-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border-top:1px solid var(--line);position:relative}.time-grid-layout{width:100%;padding-bottom:76px}.time-grid-layout.week-layout{min-width:958px}.time-grid-heading,.all-day-band{display:grid;grid-template-columns:48px repeat(var(--day-count),minmax(0,1fr));position:sticky;background:var(--bg);border-bottom:1px solid var(--line)}.time-grid-heading{height:34px;top:0;z-index:6}.time-grid-heading>button{display:flex;gap:7px;align-items:center;justify-content:center;font-size:11px;color:var(--muted);border-left:1px solid var(--line)}.time-grid-heading strong{font-size:13px;font-weight:550;color:var(--text)}.time-grid-heading .today-column{background:var(--accent-soft);color:var(--green)}.time-grid-heading .today-column strong{color:var(--green)}.axis-corner{font-size:10px;display:flex;align-items:center;justify-content:center;background:var(--bg);position:sticky;left:0;z-index:2;color:var(--muted)}.all-day-band{top:0;z-index:5;min-height:31px}.week-layout .all-day-band{top:34px}.all-day-events{padding:3px;display:flex;flex-direction:column;gap:3px;max-height:87px;overflow-y:auto;border-left:1px solid var(--line)}.all-day-event{display:flex;align-items:center;gap:5px;text-align:left;font-size:11px;min-height:23px;flex-shrink:0;border-radius:5px;padding:4px 6px;background:color-mix(in srgb,var(--block-color) 15%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,var(--block-color) 30%,var(--line))}.all-day-event>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.time-grid-body{display:flex;position:relative}.hour-axis{flex:0 0 48px;width:48px;position:sticky;left:0;z-index:3;background:var(--bg);color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.hour-axis>span{position:absolute;right:9px;transform:translateY(-50%);line-height:16px}.hour-axis>span:first-child{transform:none}.hour-axis>span:last-child{transform:translateY(-100%)}.hour-day-columns{flex:1;min-width:0;display:grid;grid-template-columns:repeat(var(--day-count),minmax(0,1fr))}.hour-day{position:relative;min-width:0;border-left:1px solid var(--line);background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:100% 60px}.hour-day.today-lane{background-color:color-mix(in srgb,var(--green) 1.5%,var(--bg))}.hour-event{position:absolute;display:flex;flex-direction:column;align-items:stretch;text-align:left;overflow:hidden;border:1px solid color-mix(in srgb,var(--block-color) 32%,var(--line));border-left:2px solid var(--block-color);border-radius:6px;background:color-mix(in srgb,var(--block-color) 16%,var(--surface));color:var(--text);padding:5px 7px;z-index:2;min-width:0;transition:filter .12s;box-shadow:none}.hour-event:hover:not(:disabled){filter:brightness(.97)}.hour-event-title{display:flex;gap:4px;align-items:flex-start;min-width:0;line-height:16px}.hour-event-title>svg{margin-top:2px;color:var(--block-color)}.hour-event-title>strong{font-size:12px;font-weight:550;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;flex:1;min-width:0}.hour-event>small{font-size:10px;margin-top:3px;line-height:14px;white-space:nowrap;overflow:hidden;color:var(--muted);font-variant-numeric:tabular-nums}.hour-event-location{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--muted);margin-top:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hour-event.short-event{padding:1px 4px}.short-event .hour-event-title>strong{-webkit-line-clamp:1;font-size:10px;line-height:15px}.short-event .hour-event-title>svg{width:10px;height:10px}.hour-event.locked-event,.all-day-event:disabled{opacity:1;color:var(--muted);cursor:default}.hour-event.conflict-event{border-style:dashed}.hour-conflict{font-size:9px;color:#ad624e;margin-top:3px}.current-time-line{position:absolute;left:0;right:0;height:1px;background:#c57662;pointer-events:none;z-index:4}.current-time-line>i{position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#c57662}.calendar-onboarding{display:flex;justify-content:center;align-items:center;gap:15px;padding:12px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.calendar-workspace .alert{flex-shrink:0;margin:0 0 8px}.calendar-workspace .sidebar{height:100dvh}.calendar-workspace .side-bottom{padding-bottom:env(safe-area-inset-bottom)}@media(max-width:640px){.calendar-workspace .topbar{height:44px;min-height:44px;padding:0 12px}.calendar-workspace .top-actions{gap:5px}.calendar-workspace .topbar .icon{width:31px;height:31px}.calendar-workspace .page-content{padding:4px 10px 0}.calendar-workspace .calendar-toolbar{margin-bottom:5px;min-height:38px;gap:4px}.calendar-workspace .date-nav{gap:3px}.calendar-workspace .date-nav>.custom-select{min-width:129px;font-size:15px;gap:3px}.calendar-workspace .date-nav .icon{width:25px;height:29px}.calendar-workspace .nav-arrows{gap:0}.calendar-workspace .today-button{padding:4px 7px;font-size:11px}.calendar-workspace .segmented button{padding:5px 8px;font-size:11px;min-height:28px}.calendar-workspace .toolbar-right{width:auto;margin:0;justify-content:flex-end}.calendar-create.primary{position:fixed;right:max(17px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:50px;height:50px;min-height:50px;z-index:30;border-radius:50%;padding:0;box-shadow:0 5px 18px #183b3a24}.calendar-create>span{display:none}.calendar-create>svg{width:24px;height:24px}.calendar-stage>.date-rail{border-radius:8px}.calendar-stage>.date-rail>button{padding:5px 2px 4px;gap:3px}.calendar-stage>.date-rail button>span{font-size:16px}.calendar-stage>.date-rail .month-start>span{font-size:14px}.calendar-stage>.date-rail small{font-size:9px}.schedule-summary{height:26px;min-height:26px;font-size:10px}.hour-event{padding:4px 5px}.hour-event-title>strong{font-size:11px}.hour-event>small{font-size:9px}.hour-axis{flex-basis:42px;width:42px;font-size:10px}.time-grid-heading,.all-day-band{grid-template-columns:42px repeat(var(--day-count),minmax(0,1fr))}.time-grid-layout.week-layout{min-width:882px}.calendar-onboarding{gap:8px;padding:8px;font-size:11px}.calendar-onboarding .secondary{font-size:11px;min-height:32px;padding:5px 8px}}@media(max-width:360px){.calendar-workspace .date-nav>.custom-select{min-width:112px;font-size:14px}.calendar-workspace .date-nav .icon{width:22px}.calendar-workspace .segmented button{padding:5px 6px}.calendar-workspace .today-button{padding:4px 5px}}.week-scroll-hint{display:none;font-size:9px;color:var(--faint);margin-left:2px}.calendar-scroll:focus-visible{outline:2px solid var(--green);outline-offset:-2px}@media(max-width:1000px){.week-scroll-hint{display:inline}}.hour-event{container-type:inline-size}@container (max-width:60px){.hour-event-title>svg{display:none}.hour-event-title>strong{font-size:10px}.hour-event-title{gap:0}}.calendar-mappings,.mapping-list,.mapping-row,.mapping-calendar-name{min-width:0;max-width:100%}.mapping-row{grid-template-columns:24px minmax(0,1fr) minmax(0,170px);gap:12px}.mapping-calendar-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapping-row>.custom-select{width:100%;min-width:0;max-width:100%}.mapping-row>.custom-select>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-calendar-list>div{min-width:0}.managed-calendar-list>div>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.browser-install-prompt{position:fixed;bottom:18px;left:calc(50% + 100px);transform:translate(-50%);z-index:35;display:flex;align-items:center;gap:12px;max-width:min(520px,calc(100vw - 32px));padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 4px 24px #183b3a18;font-size:12px}.browser-install-prompt>div{min-width:0}.browser-install-prompt p{color:var(--muted);font-size:11px;margin-top:4px}.browser-install-prompt .install-app{display:flex;flex-wrap:wrap;padding:10px 0}.browser-install-prompt>.icon{flex-shrink:0}.date-rail i.has-events{background:var(--green)}.date-rail .is-selected i.has-events{background:currentColor}@media(max-width:640px){.mapping-row{grid-template-columns:24px minmax(0,1fr);gap:8px 10px}.mapping-row>.custom-select{grid-column:2;max-width:100%;width:100%}.browser-install-prompt{left:12px;right:78px;bottom:max(20px,env(safe-area-inset-bottom));transform:none;max-width:none;padding:10px;gap:5px}.browser-install-prompt>.secondary{padding:7px;min-height:34px}.browser-install-prompt>.icon{width:25px}.browser-install-prompt strong{font-size:11px}}.holiday-subscriptions .setting-row{gap:12px}.holiday-subscriptions .setting-row>svg{color:#a57943}.holiday-subscriptions .setting-row>div{flex:1;min-width:0}.holiday-subscriptions .setting-row>.toggle{flex-shrink:0}.all-day-event[disabled]{cursor:default;opacity:1}.holiday-source{font-size:9px;opacity:.7;display:inline;margin-left:8px}.language-switcher{display:flex;align-items:center;gap:8px;justify-content:flex-end}.auth-form-wrap>.language-switcher{margin-bottom:24px}.language-switcher>button{color:var(--muted);font-size:12px}.settings-menu button{min-width:0;text-align:left;justify-content:space-between}.calendar-workspace .breadcrumb{min-width:0}.calendar-workspace .breadcrumb>h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:640px){.calendar-workspace .sync-label{display:none}}
