:root{--bg:#fff;--side:#f7f7f5;--panel:#fff;--raised:#fff;--text:#1b1b1f;--text-2:#55565e;--muted:#8c8d96;--line:#ececef;--line-strong:#dedee3;--hover:#f1f1f3;--accent:#ff5b36;--accent-soft:#fff0eb;--live:#16a360;--danger:#d93025;--shadow:0 1px 2px #14141e0f, 0 8px 24px #14141e14;--radius:10px;--brand:#6f78f0;--ev-fill:34%;--ev-base:#fff;--ev-ink:#1a1a21;--display:"Bricolage Grotesque", "Inter", ui-sans-serif, system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--body:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--on-accent:#fff;font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:13px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#16171c;--side:#1b1c22;--panel:#1b1c22;--raised:#23242c;--text:#ececf1;--text-2:#b3b4bf;--muted:#7d7f8c;--line:#262730;--line-strong:#32333d;--hover:#24252e;--accent:#ff7058;--accent-soft:#3a211c;--brand:#8e95f7;--live:#34cc80;--danger:#ff8a80;--shadow:0 1px 2px #0000004d, 0 12px 32px #0006;--ev-fill:58%;--ev-base:#fbfbfd;--ev-ink:#17171c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#16171c;--side:#1b1c22;--panel:#1b1c22;--raised:#23242c;--text:#ececf1;--text-2:#b3b4bf;--muted:#7d7f8c;--line:#262730;--line-strong:#32333d;--hover:#24252e;--accent:#ff7058;--accent-soft:#3a211c;--brand:#8e95f7;--live:#34cc80;--danger:#ff8a80;--shadow:0 1px 2px #0000004d, 0 12px 32px #0006;--ev-fill:58%;--ev-base:#fbfbfd;--ev-ink:#17171c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}code{background:var(--hover);border-radius:4px;padding:1px 5px;font-size:12px}kbd{color:var(--text-2);background:var(--raised);border:1px solid var(--line-strong);text-align:center;border-bottom-width:2px;border-radius:4px;min-width:18px;padding:2px 5px;font:500 10.5px/1 Inter,sans-serif;display:inline-block}.muted{color:var(--muted)}.small{font-size:11.5px}.btn{border:1px solid var(--line-strong);background:var(--raised);border-radius:7px;align-items:center;gap:5px;height:28px;padding:0 10px;font-weight:500;transition:background .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--hover)}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn:disabled{opacity:.5;cursor:default}.btn.wide{justify-content:center;width:100%;height:36px;margin-top:4px}.btn.primary:hover{filter:brightness(1.05)}.btn.big{border-radius:12px;height:44px;padding:0 20px;font-size:15px}.icon-btn{width:28px;height:28px;color:var(--text-2);border-radius:7px;place-items:center;transition:background .15s;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.text-btn{color:var(--text-2);font-size:12px}.text-btn:hover{color:var(--text)}.app{grid-template-columns:var(--side-w,300px) minmax(0, 1fr) 300px;height:100%;display:grid;position:relative}.app.no-sidebar{grid-template-columns:minmax(0,1fr) 300px}.app.no-right{grid-template-columns:var(--side-w,300px) minmax(0, 1fr)}.app.no-sidebar.no-right{grid-template-columns:minmax(0,1fr)}.app.no-right .rightbar{display:none}.sidebar{background:var(--side);border-right:1px solid var(--line);flex-direction:column;gap:14px;min-height:0;padding:14px 12px 10px;display:flex}.side-scroll{flex-direction:column;flex:1;gap:16px;min-height:0;margin:0 -4px;padding:0 4px;display:flex;overflow-y:auto}.main{flex-direction:column;min-width:0;min-height:0;display:flex}.rightbar{border-left:1px solid var(--line);background:var(--panel);min-height:0;overflow-y:auto}.mini-head{align-items:center;gap:2px;padding:0 2px 6px 6px;display:flex}.mini-title{flex:1;font-size:12.5px;font-weight:600}.mini-head .icon-btn{width:24px;height:24px}.mini-grid{grid-template-columns:repeat(7,1fr);row-gap:2px;display:grid}.mini-dow{color:var(--muted);text-align:center;padding:4px 0;font-size:10.5px;font-weight:500}.mini-day{font-variant-numeric:tabular-nums;height:26px;color:var(--text);border-radius:6px;place-items:center;font-size:11.5px;transition:background .12s;display:grid;position:relative}.mini-day:hover{background:var(--hover)}.mini-day.other{color:var(--muted);opacity:.65}.mini-day.in-range{border-radius:6px}.mini-day.range-start{border-top-left-radius:7px;border-bottom-left-radius:7px}.mini-day.range-end{border-top-right-radius:7px;border-bottom-right-radius:7px}.mini-num{border-radius:7px;place-items:center;min-width:22px;height:22px;display:inline-grid}.mini-day.today .mini-num{background:var(--accent);color:var(--on-accent);font-weight:600}.mini-dot{background:var(--muted);border-radius:50%;width:3px;height:3px;margin-left:-1.5px;position:absolute;bottom:2px;left:50%}.mini-day.today .mini-dot{background:#fff}.side-label{color:var(--muted);align-items:baseline;gap:6px;min-width:0;padding:0 6px 6px;font-size:11px;display:flex}.side-acct{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;flex:none;font-size:10.5px;font-weight:600}.side-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.warn-dot{background:var(--accent);border-radius:50%;flex:none;align-self:center;width:7px;height:7px}.cals{margin:0;padding:0;list-style:none}.cal-row{text-align:left;border-radius:6px;align-items:center;gap:9px;width:100%;padding:5px 6px;display:flex}.cal-row:hover{background:var(--hover)}.cal-check{color:#fff;border:1.5px solid var(--c);border-radius:4px;flex:none;place-items:center;width:14px;height:14px;transition:background .15s,transform .15s;display:grid}.cal-row.on .cal-check{background:var(--c)}.cal-row:active .cal-check{transform:scale(.85)}.cal-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);overflow:hidden}.cal-row.on .cal-name{color:var(--text)}.skeleton-list{gap:8px;padding:4px 6px;display:grid}.skeleton-list i{background:var(--hover);border-radius:4px;height:12px;animation:1.2s ease-in-out infinite alternate shimmer}.skeleton-list i:nth-child(2){width:70%}.skeleton-list i:nth-child(3){width:55%}@keyframes shimmer{to{opacity:.45}}.soon{background:var(--raised);border:1px dashed var(--line-strong);color:var(--text-2);border-radius:10px;align-items:flex-start;gap:10px;margin:0 2px;padding:10px 11px;display:flex}.soon svg{color:var(--accent);flex:none;margin-top:2px}.soon strong{color:var(--text);margin-bottom:2px;font-size:12.5px;font-weight:600;display:block}.soon span{font-size:11.5px;line-height:1.45}.side-foot{align-items:center;gap:8px;margin-top:auto;padding:0 2px;display:flex}.side-foot .kbd-hint{margin-left:auto}.kbd-hint{color:var(--muted);font-size:11px}.toolbar{align-items:center;gap:8px;padding:12px 14px 10px 10px;display:flex}.title{font:700 22px/1 var(--display);letter-spacing:-.01em;white-space:nowrap;margin:0 0 0 4px}.title-year{color:var(--muted);font-weight:600}.sync-dot{background:0 0;border-radius:50%;width:6px;height:6px;margin-left:2px}.sync-dot.on{background:var(--accent);animation:1s ease-in-out infinite pulse}.toolbar-right{align-items:center;gap:6px;margin-left:auto;display:flex}.nav-pair{display:flex}.menu-wrap{position:relative}.menu{z-index:20;background:var(--raised);border:1px solid var(--line);min-width:190px;box-shadow:var(--shadow);border-radius:10px;padding:5px;animation:.14s ease-out pop;position:absolute;top:calc(100% + 6px);right:0}.menu-item{text-align:left;border-radius:6px;grid-template-columns:16px 1fr auto;align-items:center;gap:6px;width:100%;padding:7px 8px;display:grid}.menu-item:hover{background:var(--hover)}.menu-check{color:var(--accent);font-weight:700}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.banner{background:var(--accent-soft);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 14px 8px;padding:9px 12px;display:flex}.banner.error{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.grid-wrap{flex:1;min-height:0;padding:0 0 0 4px}.fc{--fc-border-color:var(--line);--fc-page-bg-color:var(--bg);--fc-neutral-bg-color:var(--bg);--fc-today-bg-color:transparent;--fc-now-indicator-color:var(--accent);--fc-event-border-color:transparent;--fc-small-font-size:11px;font-size:12px}.fc-theme-standard .fc-scrollgrid{border:0}.fc-theme-standard td,.fc-theme-standard th{border-color:var(--line)}.fc .fc-scrollgrid-section-header>th,.fc .fc-col-header-cell{border-left-color:#0000;border-right-color:#0000}.fc .fc-col-header-cell{padding:4px 0 8px}.fc .fc-col-header-cell-cushion{padding:0}.dh{color:var(--text-2);align-items:center;gap:6px;font-weight:500;display:inline-flex}.dh-num{font-variant-numeric:tabular-nums;min-width:22px;height:22px;color:var(--text);border-radius:7px;place-items:center;font-weight:600;display:inline-grid}.dh.is-today .dh-dow{color:var(--accent);font-weight:600}.dh.is-today .dh-num{background:var(--accent);min-width:24px;height:24px;color:var(--on-accent);box-shadow:0 3px 10px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:50%;padding:0 5px}.fc .fc-timegrid-slot{border-bottom:0;height:24px}.fc .fc-timegrid-slot-minor{border-top-color:#0000}.fc .fc-timegrid-slot-label{vertical-align:top;border:0}.fc .fc-timegrid-slot-label-cushion{color:var(--muted);text-transform:uppercase;padding:0 8px 0 4px;font-size:10.5px;position:relative;top:-7px}.fc .fc-timegrid-axis-cushion{color:var(--muted);font-size:10.5px}.fc .fc-timegrid-axis,.fc .fc-timegrid-slots td:first-child{border-right-color:var(--line)}.fc .fc-day-sat,.fc .fc-day-sun{background:color-mix(in srgb, var(--text) 1.5%, transparent)}.fc .fc-daygrid-body .fc-daygrid-day-frame{min-height:0}.fc .fc-timegrid-now-indicator-line{border-width:2px 0 0}.fc .fc-timegrid-now-indicator-line:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:50%;position:absolute;top:-6px;left:-5px}.fc .fc-timegrid-now-indicator-line{z-index:6;box-shadow:0 0 0 .5px color-mix(in srgb, var(--accent) 40%, transparent);border-width:2px 0 0}.fc .fc-timegrid-now-indicator-arrow{z-index:6;border:0;justify-content:flex-end;width:auto;margin:0;display:flex;left:0;right:0;transform:translateY(-50%)}.now-pill{font-variant-numeric:tabular-nums;color:var(--on-accent);background:var(--accent);white-space:nowrap;box-shadow:0 0 0 2px var(--bg);border-radius:5px;margin-right:2px;padding:2px 5px;font-size:10px;font-weight:700}.fc .tb-event{background:0 0;border:0;border-radius:6px;margin:0 2px 1px 1px;box-shadow:none!important}.fc .fc-timegrid-event-harness-inset .ev{outline:1.5px solid var(--bg)}.fc .tb-event .fc-event-main{height:100%;color:inherit;padding:0}.fc-direction-ltr .fc-daygrid-event.fc-event-end{margin-right:4px}.ev{background:color-mix(in srgb, var(--c) var(--ev-fill), var(--ev-base));height:100%;color:var(--ev-ink);box-shadow:inset 3px 0 0 var(--c);border-radius:7px;padding:3px 7px 3px 9px;line-height:1.3;transition:transform .15s cubic-bezier(.3,.7,.4,1.4),box-shadow .15s,filter .15s;position:relative;overflow:hidden}.fc .tb-event:hover .ev{box-shadow:inset 3px 0 0 var(--c), 0 6px 16px color-mix(in srgb, var(--c) 30%, transparent);transform:translateY(-1px)}.fc .tb-event.is-selected .ev{background:var(--c);color:#fff;box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--c), 0 8px 20px color-mix(in srgb, var(--c) 40%, transparent)}.ev-title{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.005em;font-size:11.5px;font-weight:600;overflow:hidden}.ev-time{opacity:.65;font-variant-numeric:tabular-nums;text-transform:lowercase;font-size:10px;font-weight:500}.ev-time-inline{opacity:.6;margin-left:5px;font-size:10px;font-weight:500}.ev-short{padding-top:1px;padding-bottom:1px}.ev-join{margin-top:5px}.ev-live-dot{background:var(--live);width:7px;height:7px;box-shadow:0 0 0 2px color-mix(in srgb, var(--c) var(--ev-fill), var(--ev-base));border-radius:50%;animation:1.4s ease-in-out infinite pulse;position:absolute;top:5px;right:5px}.ev-allday{padding:2px 7px 2px 9px}.fc .is-free .ev{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--c) 22%, var(--bg)) 0 6px, color-mix(in srgb, var(--c) 8%, var(--bg)) 6px 12px);color:var(--text);box-shadow:inset 3px 0 0 color-mix(in srgb, var(--c) 60%, transparent)}.fc .is-declined .ev{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--muted)}.fc .is-declined .ev-title{text-decoration:line-through}.fc .fc-more-link{color:var(--text-2);font-size:11px}.join{white-space:nowrap;background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text);border-radius:7px;align-items:center;gap:5px;font-weight:600;text-decoration:none;transition:transform .12s,filter .15s,background .15s;display:inline-flex}.join:hover{filter:brightness(1.05);transform:translateY(-1px)}.join:active{transform:scale(.96)}.join-sm{color:var(--ev-ink);background:#ffffffb3;border-radius:5px;padding:2px 7px;font-size:10.5px}.join-md{padding:5px 10px;font-size:12px}.join-lg{background:var(--text);color:var(--bg);border-radius:9px;padding:8px 14px;font-size:13px}.join.live{background:var(--live);color:#fff;box-shadow:0 4px 14px color-mix(in srgb, var(--live) 40%, transparent)}.join-lg.live{animation:2.2s ease-in-out infinite breathe}@keyframes breathe{50%{box-shadow:0 4px 22px color-mix(in srgb, var(--live) 60%, transparent)}}@keyframes pulse{50%{opacity:.35;transform:scale(.85)}}.today-panel{flex-direction:column;padding:14px;display:flex}.hello{background:var(--hello-bg,var(--mood));color:var(--hello-ink,#1f1a2b);isolation:isolate;border-radius:16px;padding:16px 16px 14px;position:relative;overflow:hidden}.hello:after{content:"";background:var(--hello-blob,var(--mood-blob));filter:blur(10px);opacity:.7;z-index:-1;border-radius:50%;width:160px;height:160px;animation:12s ease-in-out infinite alternate drift;position:absolute;top:-50px;right:-40px}@keyframes drift{to{transform:translate(-30px,20px)scale(1.1)}}.mood-dawn{--mood:linear-gradient(135deg, #ffe7d6, #ffd6e0);--mood-blob:#ffc79a}.mood-day{--mood:linear-gradient(135deg, #dff1ff, #e5e9ff);--mood-blob:#b8e0ff}.mood-dusk{--mood:linear-gradient(135deg, #ffe0cc, #e9d9ff);--mood-blob:#ffb59a}.mood-night{--mood:linear-gradient(135deg, #2b2d5c, #40295a);--mood-blob:#6c5bd4;--mood-ink:#f1eefc}.hello.mood-night{color:var(--hello-ink,#f1eefc)}.hello-date{opacity:.7;font-size:11.5px;font-weight:500}.hello-title{font:700 21px/1.15 var(--display);letter-spacing:-.01em;margin:3px 0 4px}.hello-vibe{opacity:.8;font-size:12.5px}.hello-stats{gap:6px;margin-top:14px;display:flex}.stat{background:color-mix(in srgb, var(--hello-ink,#1f1a2b) 9%, #ffffff59);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:10px;flex:1;padding:7px 8px}.mood-night .stat,:root[data-theme=dark] .stat{background:color-mix(in srgb, var(--hello-ink,#fff) 14%, #0000002e)}.stat strong{white-space:nowrap;font:700 14px/1.1 var(--display);font-variant-numeric:tabular-nums;display:block}.stat span{opacity:.7;font-size:10.5px}.load-bar{background:color-mix(in srgb, var(--hello-ink,#1f1a2b) 15%, transparent);border-radius:4px;height:4px;margin-top:10px;overflow:hidden}.mood-night .load-bar{background:#ffffff1f}.load-bar i{opacity:.55;background:currentColor;border-radius:4px;height:100%;transition:width .6s cubic-bezier(.3,.7,.4,1);display:block}.panel-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:20px 2px 8px;font-size:11px;font-weight:600}.next-card{text-align:left;border:1px solid var(--line);background:var(--raised);border-radius:12px;width:100%;transition:transform .15s,box-shadow .15s;animation:.35s cubic-bezier(.2,.8,.3,1.2) rise;display:flex;overflow:hidden}.next-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.next-card.is-live{border-color:color-mix(in srgb, var(--live) 45%, var(--line))}.next-bar{background:var(--c);flex:none;width:4px}.next-body{flex-direction:column;flex:1;gap:4px;min-width:0;padding:11px 12px 12px;display:flex}.next-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.next-meta{color:var(--text-2);align-items:center;gap:5px;font-size:12px;display:inline-flex}.next-join{margin-top:8px}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}.agenda{gap:1px;margin:0;padding:0;list-style:none;display:grid}.agenda-row{text-align:left;border-radius:7px;grid-template-columns:56px 8px 1fr auto;align-items:center;gap:8px;width:100%;padding:6px;display:grid}.agenda-row:hover{background:var(--hover)}.agenda-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.agenda-dot{background:var(--c);border-radius:3px;width:8px;height:8px}.agenda-row.free .agenda-dot{border:1.5px solid var(--c);background:0 0}.agenda-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agenda-video{color:var(--live);font-size:8px}.after-note{color:var(--muted);margin:12px 2px 0;font-size:12px}.clear{text-align:center;border:1px dashed var(--line-strong);border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:18px 10px 20px;display:flex}.clear strong{font:700 15px var(--display);margin-top:4px}.clear span{color:var(--muted);font-size:12px}.clear .sun{fill:#ffc53d}.clear .rays line{stroke:#ffc53d;stroke-width:3px;stroke-linecap:round}.clear .rays{transform-origin:60px 40px;animation:18s linear infinite spin}.clear .cloud{fill:var(--raised);stroke:var(--line-strong);stroke-width:1.5px;animation:4s ease-in-out infinite float}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translate(-6px)}}.event-panel{padding:12px 16px 18px;animation:.22s cubic-bezier(.2,.8,.3,1) slidein}@keyframes slidein{0%{opacity:0;transform:translate(12px)}}.ep-head{justify-content:space-between;align-items:center;display:flex}.ep-chip{text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb, var(--c) 18%, transparent);color:color-mix(in srgb, var(--c) 70%, var(--text));border-radius:20px;padding:3px 8px;font-size:10.5px;font-weight:600}.ep-title{font:700 20px/1.2 var(--display);letter-spacing:-.01em;margin:12px 0 14px}.ep-title.struck{color:var(--muted);text-decoration:line-through}.ep-rows{gap:14px;display:grid}.ep-row{grid-template-columns:16px 1fr;align-items:start;gap:12px;display:grid}.ep-row>svg{color:var(--muted);margin-top:1px}.ep-spacer{width:16px}.ep-join{margin:-4px 0 2px}.ep-join .join{justify-self:start}.people{gap:7px;margin:0;padding:0;list-style:none;display:grid}.people li{grid-template-columns:24px 1fr auto;align-items:center;gap:8px;display:grid}.person{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar{background:hsl(var(--h) 80% 88%);width:24px;height:24px;color:hsl(var(--h) 45% 30%);border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid;position:relative}.avatar:after{content:"";border:2px solid var(--panel);background:var(--muted);border-radius:50%;width:8px;height:8px;position:absolute;bottom:-1px;right:-1px}.avatar.rsvp-accepted:after{background:var(--live)}.avatar.rsvp-declined:after{background:var(--danger)}.avatar.rsvp-tentative:after{background:#f6bf26}.ep-desc{white-space:pre-wrap;color:var(--text-2);overflow-wrap:anywhere;max-height:260px;line-height:1.5;overflow-y:auto}.ep-desc a{color:var(--accent)}.ep-cal{align-items:center;gap:7px;display:flex}.ep-cal i{border-radius:3px;width:9px;height:9px}.ep-open{color:var(--text-2);align-items:center;gap:6px;margin-top:22px;font-size:12px;text-decoration:none;display:inline-flex}.ep-open:hover{color:var(--text)}.overlay{z-index:50;background:#0a0a1447;place-items:center;padding:16px;animation:.15s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.dialog{background:var(--raised);width:380px;max-width:100%;box-shadow:var(--shadow);border-radius:14px;padding:16px 18px 18px;animation:.18s ease-out pop}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.dialog h2{font:700 17px var(--display);margin:0}.keys{gap:2px;margin:0;display:grid}.keys div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.keys div:last-child{border-bottom:0}.keys dt{gap:4px;display:flex}.keys dd{color:var(--text-2);margin:0}.signin{background:radial-gradient(1200px 600px at 90% 10%, color-mix(in srgb, var(--accent) 8%, transparent), transparent), var(--bg);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;min-height:100%;padding:48px clamp(16px,6vw,96px);display:grid}.signin-copy{max-width:440px}.signin h1{font:700 clamp(32px, 4.4vw, 50px)/1.05 var(--display);letter-spacing:-.02em;margin:18px 0 14px}.signin p{color:var(--text-2);margin:0 0 24px;font-size:15px;line-height:1.55}.signin .fine{color:var(--muted);margin-top:28px;font-size:12px}.demo-link{color:var(--text-2);margin-top:14px;font-size:13px;text-decoration:none;display:block}.demo-link:hover{color:var(--accent)}.logo-mark{gap:3px;display:inline-flex}.logo-mark span{background:var(--accent);border-radius:3px;width:9px;height:22px}.logo-mark span:nth-child(2){background:#5b7cfa;height:14px;margin-top:8px}.logo-mark span:nth-child(3){background:#33b679;height:18px;margin-top:4px}.blocks{aspect-ratio:1/1.05;background:var(--side);border:1px solid var(--line);background-image:repeating-linear-gradient(to bottom, transparent 0 39px, var(--line) 39px 40px);border-radius:24px;width:100%;max-height:70vh;position:relative;overflow:hidden}.block{background:color-mix(in srgb, var(--c) 22%, var(--bg));color:color-mix(in srgb, var(--c) 60%, var(--text));box-shadow:inset 4px 0 0 var(--c), var(--shadow);border-radius:10px;padding:8px 10px;font-size:13px;font-weight:600;animation:5s ease-in-out infinite bob;position:absolute}@keyframes bob{50%{transform:translateY(-8px)rotate(-.6deg)}}.splash{place-items:center;height:100%;display:grid}.splash-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite pulse}@media (width<=1180px){.app,.app.no-sidebar{grid-template-columns:minmax(0,1fr)}.app:not(.no-sidebar){grid-template-columns:var(--side-w,300px) minmax(0, 1fr)}.rightbar{display:none}.app.has-detail .rightbar{border:1px solid var(--line);width:320px;box-shadow:var(--shadow);z-index:30;border-radius:14px;display:block;position:fixed;top:60px;bottom:12px;right:12px}}@media (width<=760px){.app:not(.no-sidebar){grid-template-columns:minmax(0,1fr)}.sidebar{z-index:40;width:260px;box-shadow:var(--shadow);position:fixed;top:0;bottom:0;left:0}.title{font-size:18px}.title-year{display:none}.toolbar{gap:4px;padding-right:8px}.signin{grid-template-columns:1fr}.blocks{display:none}.app.has-detail .rightbar{width:auto;max-height:70vh;top:auto;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.sets{background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:9px;gap:2px;padding:3px;display:flex}.sets button{min-width:0;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;border-radius:7px;flex:auto;padding:5px 4px;font-size:11.5px;font-weight:500;transition:background .15s,color .15s;overflow:hidden}.sets button:hover{color:var(--text)}.sets button.on{background:var(--raised);color:var(--text);box-shadow:0 1px 2px #00000014, 0 0 0 1px var(--line)}.no-stats{color:var(--muted);border:1px solid var(--line-strong);border-radius:4px;flex:none;margin-left:auto;padding:0 4px;font-size:10px;line-height:15px}.add-acct{color:var(--text-2);border-radius:6px;align-items:center;gap:8px;padding:5px 6px;font-size:12.5px;display:flex}.add-acct span{border:1.5px dashed var(--line-strong);border-radius:4px;place-items:center;width:14px;height:14px;font-size:11px;line-height:1;display:grid}.add-acct:hover{background:var(--hover);color:var(--text)}.switch{background:var(--line-strong);border-radius:10px;flex:none;width:30px;height:18px;transition:background .18s;position:relative}.switch i{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s cubic-bezier(.3,.7,.4,1.3);position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch.on{background:var(--brand)}.switch.on i{transform:translate(12px)}.switch.mixed{background:color-mix(in srgb, var(--brand) 45%, var(--line-strong))}.switch.mixed i{transform:translate(6px)}.settings{background:var(--raised);width:760px;max-width:100%;height:min(620px,90vh);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:16px;grid-template-columns:190px 1fr;animation:.18s ease-out pop;display:grid;overflow:hidden}.settings-nav{background:var(--side);border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:16px 10px;display:flex}.settings-nav-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 8px 8px;font-size:10.5px;font-weight:600}.settings-nav button{color:var(--text-2);text-align:left;border-radius:7px;align-items:center;gap:9px;padding:7px 8px;display:flex}.settings-nav button:hover{background:var(--hover);color:var(--text)}.settings-nav button.on{background:color-mix(in srgb, var(--brand) 14%, transparent);color:var(--text);font-weight:500}.settings-nav button.on svg{color:var(--brand)}.settings-body{padding:22px 26px 28px;position:relative;overflow-y:auto}.settings-close{position:absolute;top:14px;right:14px}.settings-body h2{font:700 20px var(--display);margin:0 0 6px}.settings-help{color:var(--text-2);max-width:480px;margin:0 0 18px;line-height:1.5}.settings-help strong{color:var(--text);font-weight:600}.acct{border:1px solid var(--line);background:var(--bg);border-radius:12px;margin-bottom:14px;overflow:hidden}.acct-head{align-items:center;gap:10px;padding:12px 14px;display:flex}.acct-avatar{background:hsl(var(--h) 75% 86%);width:30px;height:30px;color:hsl(var(--h) 45% 28%);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.acct-id{flex-direction:column;flex:1;min-width:0;display:flex}.acct-id strong{font-weight:600}.acct-id span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.badge{background:color-mix(in srgb, var(--brand) 14%, transparent);color:var(--brand);border-radius:20px;padding:3px 8px;font-size:10.5px;font-weight:600}.text-btn.danger{color:var(--danger)}.acct-warn{background:var(--accent-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin:0 14px 10px;padding:8px 10px;font-size:12px;display:flex}.btn.small{height:24px;padding:0 8px;font-size:12px}.cal-table{border-top:1px solid var(--line)}.cal-tr{border-bottom:1px solid var(--line);grid-template-columns:1fr 56px 64px 96px;place-items:center start;gap:8px;padding:8px 14px;display:grid}.cal-tr>.switch{justify-self:center}.cal-tr>span:has(>.switch){justify-self:center}.cal-tr .locked{opacity:.35;pointer-events:none}.cal-tr:last-child{border-bottom:0}.cal-th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--side);padding-top:7px;padding-bottom:7px;font-size:10.5px;font-weight:600}.cal-th span:not(:first-child){justify-self:center}.cal-all{background:color-mix(in srgb, var(--side) 50%, transparent)}.cal-cell{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:9px;min-width:0;display:flex;overflow:hidden}.dot{border-radius:50%;flex:none;width:10px;height:10px}.connect-btn{border:1.5px dashed var(--line-strong);text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.connect-btn:hover{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 6%, transparent)}.connect-btn .plus{background:color-mix(in srgb, var(--brand) 16%, transparent);width:30px;height:30px;color:var(--brand);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.connect-btn strong{font-weight:600;display:block}.connect-btn em{color:var(--muted);font-size:12px;font-style:normal}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.setting-row>div:first-child{flex-direction:column;gap:2px;display:flex}.setting-row span{color:var(--muted);font-size:12px}.seg{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:9px;padding:3px;display:flex}.seg button{color:var(--text-2);border-radius:7px;padding:5px 12px;font-weight:500}.seg button.on{background:var(--raised);color:var(--text);box-shadow:0 1px 2px #0000001a, 0 0 0 1px var(--line)}.keys-inline{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.toast{z-index:60;background:var(--text);max-width:min(520px,100% - 32px);color:var(--bg);box-shadow:var(--shadow);cursor:pointer;border-radius:12px;padding:10px 16px;font-weight:500;animation:.3s cubic-bezier(.2,.8,.3,1.2) rise;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.toast.error{background:var(--danger);color:#fff}@media (width<=760px){.settings{grid-template-columns:1fr;height:90vh}.settings-nav{flex-direction:row;padding:10px;overflow-x:auto}.settings-nav-label{display:none}.cal-tr{grid-template-columns:1fr 44px 52px 60px}}.sets-wrap{align-items:center;gap:4px;display:flex}.sets-wrap .sets{flex-wrap:wrap;flex:1;min-width:0}.sets-edit{flex:none;width:26px;height:26px}.set-card{border:1px solid var(--line);background:var(--bg);border-radius:12px;margin-bottom:12px;padding:12px 14px 14px}.set-head{align-items:center;gap:6px;margin-bottom:10px;display:flex}.set-key{min-width:22px;padding:3px 6px;font-size:11px}.set-name{min-width:0;font:600 14px var(--body);color:var(--text);background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:5px 7px}.set-name:hover{border-color:var(--line)}.set-name:focus{border-color:var(--brand);background:var(--raised);outline:none}.flip{transform:rotate(180deg)}.icon-btn:disabled{opacity:.3;cursor:default}.set-acct{grid-template-columns:76px 1fr;align-items:start;gap:8px;padding:4px 0;display:grid}.set-acct-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-top:6px;font-size:10.5px;font-weight:600}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line-strong);color:var(--text-2);border-radius:20px;align-items:center;gap:6px;padding:4px 10px 4px 8px;font-size:12px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip i{border:1.5px solid var(--c);border-radius:50%;width:8px;height:8px}.chip.on{background:color-mix(in srgb, var(--c) 18%, transparent);border-color:color-mix(in srgb, var(--c) 55%, transparent);color:var(--text)}.chip.on i{background:var(--c)}.set-empty{margin:6px 0 0 84px}.text-btn.tiny{margin-left:6px;font-size:11px}.cal-cell-name{text-overflow:ellipsis;overflow:hidden}.add-cal{width:480px}.add-tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.add-tabs button{border:1px solid var(--line);text-align:left;color:var(--text-2);border-radius:10px;flex-direction:column;align-items:flex-start;gap:3px;padding:10px;transition:border-color .15s,background .15s;display:flex}.add-tabs button svg{color:var(--muted);margin-bottom:3px}.add-tabs button strong{color:var(--text);font-size:12.5px;font-weight:600}.add-tabs button span{color:var(--muted);font-size:11px;line-height:1.35}.add-tabs button.on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 8%, transparent)}.add-tabs button.on svg{color:var(--brand)}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field>span{color:var(--text-2);font-size:11.5px;font-weight:600}.field input,.field select{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;padding:8px 10px}.field input:focus,.field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent);outline:none}.field em{color:var(--muted);font-size:11.5px;font-style:normal;line-height:1.45}.swatches{gap:8px;display:flex}.swatches button{border-radius:50%;width:22px;height:22px;transition:transform .12s;box-shadow:inset 0 0 0 1px #00000014}.swatches button.on{box-shadow:0 0 0 2px var(--raised), 0 0 0 4px var(--text)}.swatches button:hover{transform:scale(1.1)}.holiday-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.holiday{border:1px solid var(--line);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.holiday:hover:not(:disabled){border-color:var(--brand)}.holiday em{color:var(--brand);font-size:11px;font-style:normal;font-weight:600}.holiday.added{opacity:.55}.holiday.added em{color:var(--muted)}.add-account p{color:var(--text-2);margin:0 0 14px;line-height:1.5}.add-err{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent);border-radius:8px;margin:12px 0 0;padding:8px 10px;font-size:12px;line-height:1.45}.theme-btn.on{background:var(--hover);color:var(--text)}.theme-menu{width:360px;padding:10px}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.compact .theme-grid{grid-template-columns:repeat(2,1fr);gap:8px}.theme-card{border:1.5px solid var(--line);text-align:left;border-radius:12px;flex-direction:column;gap:8px;padding:8px;transition:border-color .15s,transform .15s;display:flex}.theme-card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.theme-card.on{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent)}.tp-window{background:var(--p-bg);border:1px solid var(--p-line);border-radius:8px;height:78px;display:flex;overflow:hidden}.compact .tp-window{height:56px}.tp-side{background:var(--p-side);flex-direction:column;gap:4px;width:22%;padding:7px 5px;display:flex}.tp-side i{background:color-mix(in srgb, var(--p-text) 18%, transparent);border-radius:2px;height:4px}.tp-side i:first-child{background:color-mix(in srgb, var(--p-text) 40%, transparent);width:70%}.tp-main{flex-direction:column;flex:1;gap:4px;padding:5px 6px;display:flex}.tp-head{justify-content:space-between;align-items:center;display:flex}.tp-head b{font:700 9px var(--p-font);color:var(--p-text)}.tp-head em{background:var(--p-accent);border-radius:50%;width:9px;height:9px}.tp-cols{flex:1;grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.tp-cols>span{border-left:1px solid var(--p-line);position:relative}.tp-cols s{background:color-mix(in srgb, var(--c) var(--p-ev-fill), var(--p-ev-base));box-shadow:inset 2px 0 0 var(--c);border-radius:3px;position:absolute;left:2px;right:1px}.tp-label{flex-direction:column;gap:2px;padding:0 2px 2px;display:flex}.tp-label strong{font-size:13px;font-weight:700}.tp-label span{color:var(--muted);font-size:11px;line-height:1.4}.theme-mode{border-top:1px solid var(--line);color:var(--text-2);justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;font-size:12px;display:flex}:root[data-palette=ana] .title{letter-spacing:0;font-style:italic;font-weight:600}:root[data-palette=ana] .title-year{color:var(--brand);font-style:normal}:root[data-palette=ana] .hello-title{letter-spacing:0;font-size:23px;font-style:italic;font-weight:600}:root[data-palette=ana] .settings-body h2,:root[data-palette=ana] .dialog h2,:root[data-palette=ana] .ep-title{font-style:italic;font-weight:600}:root[data-palette=ana] .fc .tb-event .ev{box-shadow:inset 2px 0 0 var(--c), inset 0 0 0 1px color-mix(in srgb, var(--brand) 25%, transparent);border-radius:3px}:root[data-palette=ana] .ev-title{letter-spacing:.01em;font-weight:600}:root[data-palette=ana] .panel-label,:root[data-palette=ana] .side-acct,:root[data-palette=ana] .settings-nav-label{letter-spacing:.14em;color:var(--brand)}:root[data-palette=ana] .hello{border:1px solid color-mix(in srgb, var(--brand) 45%, transparent);border-radius:4px}:root[data-palette=ana] .next-card,:root[data-palette=ana] .acct,:root[data-palette=ana] .set-card{border-color:color-mix(in srgb, var(--brand) 35%, var(--line));border-radius:4px}:root[data-palette=ana] .dh.is-today .dh-num,:root[data-palette=ana] .mini-day.today .mini-num{box-shadow:0 0 0 2px var(--bg), 0 0 0 3px var(--brand)}:root[data-palette=ana] .join-lg{letter-spacing:.04em;border-radius:2px}:root[data-palette=ana] .fc .fc-timegrid-now-indicator-line{border-color:var(--brand)}:root[data-palette=ana] .fc .fc-timegrid-now-indicator-line:before{background:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 25%, transparent)}.cal-li{position:relative}.cal-li .cal-row{padding-right:26px}.cal-color{opacity:0;border-radius:6px;place-items:center;width:20px;height:20px;transition:opacity .12s,background .12s;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.cal-color i{background:var(--c);width:10px;height:10px;box-shadow:0 0 0 2px var(--side), 0 0 0 3px color-mix(in srgb, var(--c) 60%, transparent);border-radius:50%}.cal-li:hover .cal-color,.cal-color.open,.cal-color:focus-visible{opacity:1}.cal-color:hover{background:var(--hover)}.cal-li:hover .no-stats{visibility:hidden}.color-pop{z-index:45;background:var(--raised);border:1px solid var(--line);width:196px;box-shadow:var(--shadow);border-radius:12px;padding:10px;animation:.14s ease-out pop;position:absolute;top:calc(100% + 4px);right:0}.color-grid{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.color-sw{color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;transition:transform .12s;display:grid;box-shadow:inset 0 0 0 1px #0000001a}.color-sw:hover{transform:scale(1.12)}.color-sw.on{box-shadow:0 0 0 2px var(--raised), 0 0 0 4px var(--text)}.color-custom{cursor:pointer;color:var(--text-2);border-radius:7px;align-items:center;gap:8px;margin-top:10px;padding:6px 4px;font-size:12px;display:flex}.color-custom:hover{background:var(--hover)}.color-custom input{cursor:pointer;background:0 0;border:0;width:22px;height:22px;padding:0}.color-custom input::-webkit-color-swatch-wrapper{padding:0}.color-custom input::-webkit-color-swatch{border:1px solid var(--line-strong);border-radius:50%}.color-auto{width:100%;color:var(--text-2);border-radius:7px;justify-content:space-between;align-items:center;padding:6px 4px;font-size:12px;display:flex}.color-auto:hover{background:var(--hover)}.color-auto.on{color:var(--text);font-weight:500}.dot-wrap{display:inline-flex;position:relative}.dot-wrap .color-pop{left:-6px;right:auto}.dot-btn{cursor:pointer;transition:transform .12s}.dot-btn:hover{transform:scale(1.35)}.fc .fc-bg-event.is-overlay{opacity:1;background:0 0}.ev-overlay{cursor:pointer;background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--c) 13%, transparent) 0 5px, color-mix(in srgb, var(--c) 6%, transparent) 5px 10px);border:1px dashed color-mix(in srgb, var(--c) 45%, transparent);color:color-mix(in srgb, var(--c) 55%, var(--muted));border-radius:6px;padding:3px 6px;font-size:10.5px;font-weight:600;transition:background .15s;position:absolute;inset:0 3px 1px 2px;overflow:hidden}.ev-overlay span{text-overflow:ellipsis;white-space:nowrap;opacity:.85;display:block;overflow:hidden}.ev-overlay:hover{background:color-mix(in srgb, var(--c) 18%, transparent)}.fc .fc-bg-event.is-overlay.is-selected .ev-overlay{border-style:solid;border-color:var(--c)}.fc .fc-timegrid-bg-harness{z-index:1}.fc .fc-timegrid-col-events{z-index:3}:root[data-theme=dark] .ev-overlay{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--c) 20%, transparent) 0 5px, color-mix(in srgb, var(--c) 9%, transparent) 5px 10px);border-color:color-mix(in srgb, var(--c) 55%, transparent);color:color-mix(in srgb, var(--c) 60%, var(--text-2))}.fc .fc-non-business{background:color-mix(in srgb, var(--text) 3.5%, transparent)}:root[data-theme=dark] .fc .fc-non-business{background:#00000038}.time-range{align-items:center;gap:8px;display:flex}.time-range select{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;padding:6px 8px}.time-range select:focus{border-color:var(--brand);outline:none}.day-picks{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.day-picks button{border:1px solid var(--line-strong);min-width:40px;color:var(--text-2);border-radius:8px;padding:6px 0;font-size:12px;font-weight:500}.day-picks button.on{background:color-mix(in srgb, var(--brand) 16%, transparent);border-color:color-mix(in srgb, var(--brand) 55%, transparent);color:var(--text)}.settings-h2-gap{margin-top:28px!important}.setting-row>div:first-child{max-width:360px}.setting-row span{line-height:1.45}.ev.has-join .ev-title,.ev.has-join .ev-time{padding-right:20px}.ev.has-join.ev-live .ev-title,.ev.has-join.ev-live .ev-time{padding-right:50px}.join-badge{z-index:2;min-width:17px;height:17px;color:var(--ev-ink);opacity:.75;background:#ffffffb8;border-radius:5px;justify-content:center;align-items:center;gap:3px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:3px;right:3px}.ev-short .join-badge{min-width:15px;height:15px;top:50%;transform:translateY(-50%)}.join-badge:hover{opacity:1;background:#fff;transform:none}.ev-short .join-badge:hover{transform:translateY(-50%)}.join-badge.live{opacity:1;background:var(--live);color:#fff;box-shadow:0 2px 8px color-mix(in srgb, var(--live) 45%, transparent);padding:0 6px;animation:2.2s ease-in-out infinite breathe}.fc .is-past .join-badge{display:none}.fc .tb-event.is-selected .join-badge:not(.live){background:#ffffffe6}.hello-hours{opacity:.7;color:inherit;border-bottom:1px dashed;margin-top:8px;padding-bottom:1px;font-size:11px;font-weight:500;display:inline-block}.hello-hours:hover{opacity:1}.fc .is-ghost:not(.is-selected) .ev{background:color-mix(in srgb, var(--bg) 70%, transparent);box-shadow:none;border:2px dashed color-mix(in srgb, var(--c) 75%, var(--bg));color:var(--muted);padding:2px 6px;font-style:italic}.fc .is-ghost:not(.is-selected) .ev-title{color:color-mix(in srgb, var(--text) 55%, var(--bg));font-weight:500}.fc .is-ghost:not(.is-selected) .ev-time{opacity:1;color:var(--muted)}.fc .tb-event.is-ghost:hover .ev{box-shadow:none;border-color:var(--c);transform:none}.ev-ref{vertical-align:-1px;color:var(--c);opacity:.9;margin-right:4px;display:inline-grid}.fc .is-ghost .join-badge:not(.live){opacity:.6;background:0 0}.cal-row.on .cal-check.ghost{color:var(--c);background:0 0;border-style:dashed;border-width:2px}.color-pop{width:272px;max-height:70vh;overflow-y:auto}.color-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:8px 2px 6px;font-size:10px;font-weight:600}.color-label:first-child{margin-top:0}.color-grid{grid-template-columns:repeat(8,1fr);gap:6px}.color-grid.more{grid-template-columns:repeat(13,1fr);gap:3px}.color-grid.more .color-sw{width:17px;height:17px}.color-sw{width:24px;height:24px}.style-picks{grid-template-columns:1fr 1fr;gap:6px;display:grid}.style-pick{border:1.5px solid var(--line);border-radius:8px;padding:4px}.style-pick.on{border-color:var(--brand)}.sp-demo{text-align:left;border-radius:5px;padding:6px 7px;font-size:11px;font-weight:600;display:block}.sp-demo.solid{background:color-mix(in srgb, var(--c) var(--ev-fill), var(--ev-base));color:var(--ev-ink);box-shadow:inset 3px 0 0 var(--c)}.sp-demo.ghost{background:color-mix(in srgb, var(--c) 12%, var(--bg));box-shadow:inset 2px 0 0 var(--c);color:var(--text-2);margin-left:45%;font-size:10px;font-weight:500}.color-pop.floating{z-index:80;position:fixed;right:auto}.fc .fc-day-today{background:0 0!important}:root{--ref-lane:36%;--ref-step:6px}.fc .fc-timegrid-event.beside-ref{right:var(--ref-lane)!important}.fc .fc-bg-event.tb-ref{opacity:1;background:0 0}.fc .fc-bg-event.tb-ref:has(.ev-lane){z-index:4}.ev-lane{z-index:calc(1 + var(--i));width:calc(var(--ref-lane) - 5px - var(--i) * var(--ref-step));cursor:pointer;background:color-mix(in srgb, var(--c) 14%, var(--bg));border:1px solid color-mix(in srgb, var(--c) 35%, var(--bg));border-left:3px solid var(--c);color:var(--text-2);box-shadow:-2px 0 0 var(--bg);border-radius:5px;padding:2px 4px 2px 5px;font-size:10px;font-weight:600;line-height:1.25;position:absolute;top:0;bottom:1px;right:2px;overflow:hidden}.ev-lane span{-webkit-line-clamp:8;word-break:normal;overflow-wrap:normal;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ev-lane.roomy{width:calc(100% - 5px - var(--i) * var(--ref-step));font-size:10.5px}.ev-lane:hover{background:color-mix(in srgb, var(--c) 24%, var(--bg));color:var(--text)}.fc .fc-bg-event.tb-ref.is-selected .ev-lane{border-color:var(--c);color:var(--text)}.ep-color-row{align-items:center}.ep-swatch-icon{border-radius:4px;width:14px;height:14px;margin-left:1px}.ep-color-btn{text-align:left;color:var(--text);border-radius:6px;margin:-3px -6px;padding:3px 6px;font-size:12.5px}.ep-color-btn:hover{background:var(--hover)}.ev-lane svg{vertical-align:-1px;color:var(--c);margin-right:1px}.menu-sep{background:var(--line);height:1px;margin:5px 4px}.fc .fc-timegrid-slot{min-height:24px}.fc .fc-timegrid-slots tr:first-child .fc-timegrid-slot-label-cushion{top:2px}.now-pill{padding:2px 4px;font-size:9.5px}.task-list{flex-direction:column;gap:4px;display:flex}.task-add{font:inherit;color:var(--text);background:var(--raised);border:1px solid var(--line);border-radius:8px;margin:0 2px 4px;padding:7px 9px;font-size:12.5px}.task-add::placeholder{color:var(--muted)}.task-add:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 16%, transparent);outline:none}.task-list ul{gap:1px;margin:0;padding:0;list-style:none;display:grid}.task-empty{color:var(--muted);margin:2px 6px;font-size:11.5px;line-height:1.45}.task-row{cursor:pointer;border-radius:7px;align-items:flex-start;gap:8px;padding:5px 6px;display:flex}.task-row:hover{background:var(--hover)}.task-row.on{background:color-mix(in srgb, var(--c) 14%, transparent)}.task-main{flex-direction:column;flex:1;min-width:0;display:flex}.task-title{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.task-bang{color:var(--accent);margin-right:3px;font-weight:800}.task-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:10.5px;display:flex}.task-meta.late,.task-meta.unscheduled{color:var(--danger)}.task-dur{font-variant-numeric:tabular-nums;margin-left:auto}.task-row.done .task-title{color:var(--muted);text-decoration:line-through}.task-done-toggle{color:var(--muted);text-align:left;padding:4px 6px;font-size:11px}.task-done-toggle:hover{color:var(--text)}.task-check{border:1.5px solid var(--c);color:#fff;border-radius:50%;flex:none;place-items:center;width:15px;height:15px;margin-top:1px;transition:background .15s,transform .12s;display:grid}.task-check:hover{background:color-mix(in srgb, var(--c) 25%, transparent)}.task-check:active{transform:scale(.85)}.task-check.on{background:var(--c)}.task-check.big{border-width:2px;width:22px;height:22px}.task-check.sm{border-color:color-mix(in srgb, var(--c) 80%, var(--ev-ink));width:12px;height:12px;margin-top:1px}.ev.ev-task{background:color-mix(in srgb, var(--c) calc(var(--ev-fill) * .75), var(--ev-base));box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--c) 70%, transparent);align-items:flex-start;gap:5px;padding-left:6px;display:flex}.ev-task-body{flex:1;min-width:0}.ev-pin{opacity:.6;position:absolute;top:3px;right:4px}.fc .tb-task{cursor:grab}.fc .tb-task.fc-event-dragging .ev{box-shadow:0 10px 24px #0003, inset 0 0 0 1.5px var(--c);transform:scale(1.02)}.fc .tb-task.is-late .ev{box-shadow:inset 0 0 0 1.5px var(--danger)}.fc .tb-task.is-done .ev{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 45%, transparent);color:var(--muted);background:0 0}.fc .tb-task.is-done .ev-title{text-decoration:line-through}.fc .tb-task.is-selected .ev{background:var(--c);color:#fff}.fc .tb-task .fc-event-resizer-end{cursor:ns-resize;height:8px;bottom:-2px}.tp-title-row{align-items:center;gap:10px;margin:12px 0 8px;display:flex}.tp-title{min-width:0;font:700 19px/1.2 var(--display);color:var(--text);background:0 0;border:1px solid #0000;border-radius:7px;flex:1;margin-left:-6px;padding:3px 6px}.tp-title:hover{border-color:var(--line)}.tp-title:focus{border-color:var(--brand);outline:none}.tp-title.struck{color:var(--muted);text-decoration:line-through}.tp-status{color:var(--text-2);background:color-mix(in srgb, var(--c) 10%, transparent);border-radius:9px;margin-bottom:14px;padding:8px 10px;font-size:12.5px;line-height:1.55}.tp-status.unscheduled,.tp-warn{color:var(--danger)}.tp-status.unscheduled{background:color-mix(in srgb, var(--danger) 10%, transparent)}.tp-pin{color:var(--muted);align-items:center;gap:5px;margin-top:4px;font-size:11.5px;display:flex}.tp-pin .text-btn{color:var(--brand);margin-left:auto;font-size:11.5px}.tp-grid{grid-template-columns:72px 1fr;align-items:center;gap:10px;display:grid}.tp-grid>label{color:var(--muted);font-size:11.5px;font-weight:500}.tp-grid select,.tp-grid input,.tp-notes{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:7px;min-width:0;padding:5px 7px;font-size:12.5px}.tp-grid select:focus,.tp-grid input:focus,.tp-notes:focus{border-color:var(--brand);outline:none}.tp-inline{align-items:center;gap:8px;min-width:0;display:flex}.tp-inline input[type=datetime-local]{flex:1}.seg.small button{padding:4px 9px;font-size:12px}.tp-notes{resize:vertical;width:100%;margin-top:14px;line-height:1.45}.tp-delete{color:var(--danger);opacity:.8;align-items:center;gap:6px;margin-top:14px;font-size:12px;display:inline-flex}.tp-delete:hover{opacity:1}:root[data-palette=mono] .title,:root[data-palette=mono] .hello-title{letter-spacing:-.01em;font-weight:700}:root[data-palette=mono] .title-year{color:var(--accent);font-style:italic}:root[data-palette=mono] .panel-label,:root[data-palette=mono] .side-acct,:root[data-palette=mono] .settings-nav-label{letter-spacing:.2em;color:var(--text)}:root[data-palette=mono] .fc .tb-event .ev,:root[data-palette=mono] .ev-lane,:root[data-palette=mono] .btn,:root[data-palette=mono] .hello,:root[data-palette=mono] .next-card,:root[data-palette=mono] .stat,:root[data-palette=mono] .sets,:root[data-palette=mono] .sets button,:root[data-palette=mono] .task-add{border-radius:0!important}:root[data-palette=mono] .fc .tb-event .ev{box-shadow:inset 2px 0 0 var(--text)}:root[data-palette=mono] .hello{border:1px solid var(--text);background:var(--bg)}:root[data-palette=mono] .hello:after{display:none}:root[data-palette=mono] .next-card{border-color:var(--text)}:root[data-palette=mono] .dh.is-today .dh-num,:root[data-palette=mono] .mini-day.today .mini-num{border-radius:0}:root[data-palette=midnight] .title{text-transform:uppercase;letter-spacing:.2em;font-size:21px;font-weight:300}:root[data-palette=midnight] .title-year{color:var(--accent);font-weight:400}:root[data-palette=midnight] .hello-title{text-transform:uppercase;letter-spacing:.1em;font-size:19px;font-weight:300;line-height:1.25}:root[data-palette=midnight] .hello-date,:root[data-palette=midnight] .panel-label{letter-spacing:.14em;text-transform:uppercase}:root[data-palette=midnight] .hello{background-size:220% 100%;border-radius:6px;animation:14s ease-in-out infinite alternate satin;box-shadow:0 10px 28px #780a1e47}:root[data-palette=midnight] .hello:before{content:"";z-index:-1;background:linear-gradient(160deg,#ffffff2e,#0000 35%,#0000002e 70%,#ffffff14);position:absolute;inset:0}@keyframes satin{0%{background-position:0%}to{background-position:100%}}:root[data-palette=midnight] .next-card{border-left:3px solid var(--accent);border-radius:6px}:root[data-palette=midnight] .fc .tb-event .ev{box-shadow:inset 2px 0 0 var(--c);border-radius:2px}:root[data-palette=midnight] .dh.is-today .dh-num,:root[data-palette=midnight] .mini-day.today .mini-num{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);background:0 0;border-radius:0}:root[data-palette=midnight] .fc .fc-timegrid-now-indicator-line{border-color:var(--accent)}:root[data-palette=haerin] .title,:root[data-palette=haerin] .hello-title{letter-spacing:0;font-weight:700}:root[data-palette=haerin] .fc .tb-event .ev{box-shadow:inset 0 0 0 2px #fff, inset 0 0 0 3.5px var(--c);border-radius:14px;padding-left:9px}:root[data-palette=haerin][data-theme=dark] .fc .tb-event .ev{box-shadow:inset 0 0 0 2px var(--bg), inset 0 0 0 3.5px var(--c)}:root[data-palette=haerin] .hello,:root[data-palette=haerin] .next-card{box-shadow:0 6px 0 color-mix(in srgb, var(--brand) 25%, transparent);border:2px solid #fff;border-radius:26px}:root[data-palette=haerin] .btn,:root[data-palette=haerin] .sets,:root[data-palette=haerin] .sets button,:root[data-palette=haerin] .stat,:root[data-palette=haerin] .task-add{border-radius:999px}:root[data-palette=haerin] .dh.is-today .dh-num{border-radius:999px;padding:0 8px}:root[data-palette=haerin] .hello-title:after{content:" ✧";color:var(--accent)}.task-new{border:1px dashed var(--line-strong);color:var(--text-2);border-radius:8px;align-items:center;gap:8px;margin:0 2px 4px;padding:7px 9px;font-size:12.5px;font-weight:500;display:flex}.task-new span{background:var(--accent);width:16px;height:16px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:13px;line-height:1;display:grid}.task-new kbd{margin-left:auto}.task-new:hover{border-color:var(--accent);color:var(--text);background:color-mix(in srgb, var(--accent) 6%, transparent)}.add-task{width:560px}.at-title{width:100%;font:600 18px var(--display);color:var(--text);border:0;border-bottom:1.5px solid var(--line-strong);background:0 0;margin:2px 0 16px;padding:6px 2px 10px}.at-title:focus{border-color:var(--accent);outline:none}.at-title::placeholder{color:var(--muted);font-weight:500}.at-row{grid-template-columns:70px 1fr;align-items:start;gap:10px;margin-bottom:12px;display:grid}.at-row>label{color:var(--muted);padding-top:6px;font-size:11.5px;font-weight:600}.chips-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip-btn{border:1px solid var(--line-strong);color:var(--text-2);border-radius:20px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.chip-btn:hover{border-color:var(--text-2);color:var(--text)}.chip-btn.on{background:var(--text);border-color:var(--text);color:var(--bg)}.chip-btn.proj i{background:var(--c);border-radius:50%;width:8px;height:8px}.chip-btn.proj.on{background:color-mix(in srgb, var(--c) 22%, transparent);border-color:var(--c);color:var(--text)}.at-date,.at-newproj{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:20px;padding:4px 10px;font-size:12.5px}.at-newproj:focus,.at-date:focus{border-color:var(--brand);outline:none}.at-preview{background:color-mix(in srgb, var(--c) 12%, var(--bg));box-shadow:inset 3px 0 0 var(--c);color:var(--text-2);border-radius:10px;margin:16px 0 14px;padding:10px 12px;font-size:12.5px}.at-preview strong{color:var(--text);font-weight:600}.at-preview.warn{box-shadow:inset 3px 0 #f6bf26}.at-preview.bad{box-shadow:inset 3px 0 0 var(--danger);color:var(--danger)}.at-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.at-actions>span{margin-right:auto}:root[data-palette=ocean] .app{position:relative}:root[data-palette=ocean] .app:after{content:"";pointer-events:none;z-index:70;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}:root[data-palette=ocean][data-theme=dark] .app:after{opacity:.12;mix-blend-mode:screen}:root[data-palette=ocean] .title,:root[data-palette=ocean] .hello-title,:root[data-palette=ocean] .settings-body h2{letter-spacing:.02em;font-weight:400}:root[data-palette=ocean] .panel-label,:root[data-palette=ocean] .side-acct{font-family:var(--display);letter-spacing:.08em}:root[data-palette=ocean] .hello{border-radius:4px;box-shadow:inset 0 0 60px #00000059}:root[data-palette=ocean] .fc .tb-event .ev{filter:saturate(.85);border-radius:3px}:root[data-palette=ocean] .next-card{border-radius:4px}:root[data-palette=ocean] .fc .fc-timegrid-now-indicator-line{border-style:dashed}:root[data-palette=kazuha] .title{text-transform:uppercase;letter-spacing:-.01em;font-size:24px;font-style:italic}:root[data-palette=kazuha] .title-year{color:var(--accent)}:root[data-palette=kazuha] .hello-title{text-transform:uppercase;font-size:20px;font-style:italic;line-height:1.05}:root[data-palette=kazuha] .panel-label,:root[data-palette=kazuha] .side-acct,:root[data-palette=kazuha] .settings-nav-label{color:var(--text);letter-spacing:.14em;font-weight:800}:root[data-palette=kazuha] .fc .tb-event .ev{box-shadow:inset 4px 0 0 var(--text);border-radius:2px}:root[data-palette=kazuha] .fc .tb-event .ev-title{text-transform:uppercase;letter-spacing:.02em;font-size:11px}:root[data-palette=kazuha] .hello,:root[data-palette=kazuha] .next-card,:root[data-palette=kazuha] .btn,:root[data-palette=kazuha] .stat,:root[data-palette=kazuha] .dh.is-today .dh-num,:root[data-palette=kazuha] .mini-day.today .mini-num{border-radius:2px}:root[data-palette=kazuha] .hello{border-left:6px solid var(--accent)}:root[data-palette=kazuha] .btn.primary,:root[data-palette=kazuha] .join-lg{text-transform:uppercase;letter-spacing:.06em;font-weight:800}:root[data-palette=rose] .title{text-transform:lowercase;letter-spacing:-.01em;font-size:28px;font-weight:400}:root[data-palette=rose] .title-year{color:var(--accent);font-style:italic}:root[data-palette=rose] .hello-title{text-transform:lowercase;font-size:27px;font-weight:400;line-height:1.02}:root[data-palette=rose] .hello-date,:root[data-palette=rose] .panel-label,:root[data-palette=rose] .side-acct{text-transform:lowercase;letter-spacing:.04em}:root[data-palette=rose] .hello{border-radius:4px}:root[data-palette=rose] .hello:after{opacity:.35}:root[data-palette=rose] .hello:before{content:"";background:var(--accent);height:3px;position:absolute;top:0;left:16px;right:16px}:root[data-palette=rose] .next-card{border:1.5px solid var(--text);border-radius:4px}:root[data-palette=rose] .fc .tb-event .ev{box-shadow:inset 2px 0 0 var(--text), inset 0 0 0 1px color-mix(in srgb, var(--c) 45%, transparent);border-radius:4px}:root[data-palette=rose][data-theme=dark] .fc .tb-event .ev{box-shadow:inset 2px 0 0 var(--brand)}:root[data-palette=rose] .dh.is-today .dh-num,:root[data-palette=rose] .mini-day.today .mini-num{box-shadow:none;border-radius:50%/38% 38% 62% 62%}:root[data-palette=rose] .btn.primary{background:var(--text);color:var(--bg)}:root[data-palette=rose] .fc .fc-timegrid-now-indicator-line{border-color:var(--accent)}:root[data-palette=seolhyun] .title{letter-spacing:.05em;font-size:24px;font-weight:400}:root[data-palette=seolhyun] .title-year{color:var(--brand)}:root[data-palette=seolhyun] .hello-title{letter-spacing:.02em;font-size:24px;font-weight:400}:root[data-palette=seolhyun] .hello{box-shadow:0 10px 30px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:20px}:root[data-palette=seolhyun] .hello:before{content:"";border:2px solid var(--brand);width:46px;height:13px;box-shadow:0 0 10px color-mix(in srgb, var(--brand) 70%, transparent), inset 0 0 6px color-mix(in srgb, var(--brand) 50%, transparent);border-radius:50%;position:absolute;top:14px;right:20px;transform:rotate(-8deg)}:root[data-palette=seolhyun] .next-card{border-radius:16px}:root[data-palette=seolhyun] .fc .tb-event .ev{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 40%, #fff);background-image:linear-gradient(135deg,#ffffff8c,#fff0 55%);border-radius:10px}:root[data-palette=seolhyun][data-theme=dark] .fc .tb-event .ev{background-image:linear-gradient(135deg,#ffffff4d,#fff0 55%)}:root[data-palette=seolhyun] .dh.is-today .dh-num,:root[data-palette=seolhyun] .mini-day.today .mini-num{box-shadow:0 0 0 2px var(--bg), 0 0 0 3.5px var(--brand), 0 0 12px color-mix(in srgb, var(--brand) 60%, transparent)}:root[data-palette=seolhyun] .fc .fc-timegrid-now-indicator-line{box-shadow:0 0 6px var(--accent)}.overlay.light{background:#0a0a142e;align-items:start;padding-top:18vh}.quick-task{background:var(--raised);border:1px solid var(--line);width:520px;max-width:100%;box-shadow:var(--shadow);border-radius:14px;padding:14px 16px 12px;animation:.16s ease-out pop}.qt-title{width:100%;font:600 17px var(--body);color:var(--text);background:0 0;border:0;padding:2px 0 10px}.qt-title:focus{outline:none}.qt-title::placeholder{color:var(--muted);font-weight:500}.qt-pills{flex-wrap:wrap;gap:6px;display:flex}.qt-anchor{position:relative}.qt-pill{height:26px;color:var(--text-2);border:1px solid var(--line);background:var(--bg);border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:12px;transition:border-color .12s,background .12s;display:inline-flex}.qt-pill:hover,.qt-pill.open{border-color:var(--line-strong);color:var(--text)}.qt-pill.set{color:var(--text);border-color:color-mix(in srgb, var(--c,var(--brand)) 45%, var(--line));background:color-mix(in srgb, var(--c,var(--brand)) 8%, var(--bg))}.qt-pill svg{color:var(--muted)}.qt-flag{font-weight:800}.qt-flag.hi{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--bg))}.qt-dot{border:1.5px solid var(--line-strong);border-radius:50%;flex:none;width:8px;height:8px}.qt-pill.set .qt-dot,.qt-menu .qt-dot{border:0}.qt-menu{z-index:5;background:var(--raised);border:1px solid var(--line);min-width:170px;box-shadow:var(--shadow);border-radius:10px;padding:6px;animation:.12s ease-out pop;position:absolute;top:calc(100% + 6px);left:0}.qt-menu.list{flex-direction:column;gap:1px;display:flex}.qt-menu.list>button{text-align:left;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.qt-menu.list>button:hover{background:var(--hover)}.qt-menu button.on{color:var(--text);background:var(--hover);font-weight:600}.qt-menu input{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:6px;margin-top:4px;padding:5px 8px;font-size:12.5px}.qt-menu input:focus{border-color:var(--brand);outline:none}.qt-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.qt-grid button{border:1px solid var(--line);border-radius:6px;padding:6px 0;font-size:12px}.qt-grid button:hover{border-color:var(--line-strong)}.qt-grid button.on{background:var(--text);color:var(--bg);border-color:var(--text)}.qt-check{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;margin-top:8px;font-size:11.5px;display:flex}.qt-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:10px;display:flex}.qt-where{color:var(--muted);font-size:12px}.qt-where.bad{color:var(--danger)}.qt-where.warn{color:#b7791f}.btn.small kbd{color:inherit;background:0 0;border-color:#fff6;margin-left:4px}.qt-row{color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:11.5px;display:flex}.qt-seg{border:1px solid var(--line);border-radius:6px;display:inline-flex;overflow:hidden}.qt-seg button{border-left:1px solid var(--line);padding:4px 9px;font-size:11.5px}.qt-seg button:first-child{border-left:0}.qt-seg button.on{background:var(--text);color:var(--bg)}.qt-seg button:disabled{opacity:.4}.qt-menu-note{color:var(--muted);padding:2px 4px;font-size:11px}.sets-wrap.empty{justify-content:flex-end;margin-top:-4px}.task-meta.list{color:var(--muted)}.task-meta svg{flex:none}.task-group{margin-bottom:2px}.task-row.parent .task-check{border-style:dashed}.task-pieces{border-left:1.5px solid var(--line);margin-left:13px!important;padding-left:8px!important}.task-row.piece{padding-top:3px;padding-bottom:3px}.task-row.piece .task-title{font-size:12px}.task-row.piece .task-check{width:13px;height:13px}.task-progress{background:var(--line);border-radius:2px;width:28px;height:4px;display:inline-block;overflow:hidden}.task-progress i{background:var(--c);border-radius:2px;height:100%;display:block}.tp-parent{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.tp-parent:hover{color:var(--text)}.tp-note{color:var(--text-2);font-size:12px}.tp-status.list{background:var(--hover)}.tp-pieces{margin-top:16px}.tp-pieces-head{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.tp-pieces-head>span:first-child{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;font-weight:600}.tp-pieces-hint{color:var(--muted);font-size:11.5px}.tp-break{color:var(--text-2);align-items:center;gap:6px;font-size:12.5px;display:flex}.tp-break .chip-btn{padding:3px 11px}.tp-break .text-btn{color:var(--brand);margin-left:4px;font-size:12px}.tp-piece-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.tp-piece-list li{grid-template-columns:16px minmax(0,1fr) auto 20px;align-items:center;column-gap:6px;display:grid}.tp-piece-list li:last-child{display:block}.tp-piece-list input{min-width:0;font:inherit;color:var(--text);background:0 0;border:1px solid #0000;border-radius:6px;flex:1;padding:4px 6px;font-size:12.5px}.tp-piece-list input:hover{border-color:var(--line)}.tp-piece-list input:focus{border-color:var(--brand);background:var(--bg);outline:none}.tp-piece-list select{font:inherit;color:var(--text-2);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:3px 4px;font-size:11.5px}.tp-piece-list li.done input{color:var(--muted);text-decoration:line-through}.tp-piece-when{color:var(--muted);white-space:nowrap;grid-area:2/2;justify-self:start;align-items:center;gap:3px;margin-top:-3px;padding:0 7px 2px;font-size:11px;display:inline-flex}.tp-piece-when:hover{color:var(--brand)}.tp-piece-x{opacity:0;width:20px;height:20px}.tp-piece-list li:hover .tp-piece-x{opacity:.7}.tp-piece-add{color:var(--brand);padding:4px 0 0 22px;font-size:12px}.ev-parent{text-transform:none;font-weight:500}.toast-undo{color:inherit;margin-left:12px;font-weight:700;text-decoration:underline}.resched-btn{align-items:center;gap:6px;display:inline-flex}.resched-btn svg{color:var(--accent)}.ev-repeat{opacity:.6;vertical-align:-1px;margin-left:4px;display:inline-flex}.tp-stack{flex-direction:column;gap:6px;min-width:0;display:flex}.day-picks.small{justify-content:flex-start;gap:3px}.day-picks.small button{width:24px;min-width:24px;height:24px;padding:0;font-size:11px}.qt-days{padding:4px 6px 2px}.tp-done-note{color:var(--muted);font-size:11.5px}.tp-status .text-btn{color:var(--brand);margin-left:6px;font-size:11.5px}:root{--task:#f08c00}:root[data-theme=dark]{--task:#ffa94d}:root:root .fc .tb-event.tb-task .ev{background:color-mix(in srgb, var(--c) 13%, var(--raised));color:var(--text);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--c) 75%, transparent), 0 1px 2px #0000000f;filter:none;border-radius:9px}:root:root .fc .tb-event.tb-task .ev:after{content:none}:root:root .fc .tb-event.tb-task .ev-time{opacity:.6}:root:root .fc .tb-event.tb-task .task-check.sm{border-color:var(--c);background:var(--raised)}:root:root .fc .tb-event.tb-task .task-check.sm.on{background:var(--c)}:root:root .fc .tb-event.tb-task:hover .ev{box-shadow:inset 0 0 0 1.5px var(--c), 0 6px 16px color-mix(in srgb, var(--c) 28%, transparent);transform:translateY(-1px)}:root:root .fc .tb-event.tb-task.is-pinned .ev{box-shadow:inset 0 0 0 1.5px var(--c), inset 0 3px 0 var(--c)}:root:root .fc .tb-event.tb-task.is-late .ev{box-shadow:inset 0 0 0 1.5px var(--danger)}:root:root .fc .tb-event.tb-task.is-done .ev{color:var(--muted);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 40%, transparent);background:0 0}:root:root .fc .tb-event.tb-task.is-selected .ev{background:var(--c);color:#fff;box-shadow:0 0 0 2px var(--bg), 0 0 0 3.5px var(--c)}:root:root .fc .tb-event.tb-task.is-selected .ev-time{opacity:.85}:root:root .fc .tb-event.tb-task.fc-event-dragging .ev{box-shadow:0 10px 24px #0003, inset 0 0 0 1.5px var(--c);transform:scale(1.02)}:root[data-palette]:not([data-palette=timebox]) .fc .ev-title{font-family:var(--display)}:root[data-palette=midnight] .fc .ev-title{text-transform:uppercase;letter-spacing:.07em;font-size:10.5px}:root[data-palette=ocean] .fc .ev-title,:root[data-palette=kazuha] .fc .ev-title{font-weight:400}:root[data-palette=rose] .fc .ev-title{text-transform:lowercase;letter-spacing:0;font-size:13.5px;font-weight:400}:root[data-palette=seolhyun] .fc .ev-title{letter-spacing:.02em;font-size:13px;font-weight:400}:root[data-palette=haerin] .fc .ev-title{font-weight:600}.qt-at{color:var(--text-2);border-top:1px solid var(--line);align-items:center;gap:6px;margin-top:4px;padding:6px 8px 2px;font-size:12px;display:flex}.qt-at input{margin-top:0!important}.qt-at span{color:var(--muted);font-size:11px}.qt-inline{align-items:center;gap:6px;display:flex}.qt-inline .text-btn{color:var(--brand);font-size:11.5px}.side-tasks{flex-direction:column;flex:1;min-height:0;margin:0 -4px;padding:0 4px;display:flex;overflow-y:auto}.side-tasks .side-label{background:var(--side);z-index:1;padding-bottom:6px;position:sticky;top:0}.side-cals{border-top:1px solid var(--line);flex-direction:column;flex:none;min-height:0;max-height:46%;padding-top:8px;display:flex}.side-cals-head{text-align:left;border-radius:6px;align-items:center;gap:8px;width:100%;padding:4px 2px;display:flex}.side-cals-head:hover{background:var(--hover)}.side-cals-head .side-acct{flex:1}.side-set-chip{color:var(--text-2);background:var(--hover);border-radius:10px;padding:1px 8px;font-size:11px}.side-cals-body{flex-direction:column;gap:10px;min-height:0;margin:0 -4px;padding-top:8px;padding-left:4px;padding-right:4px;display:flex;overflow-y:auto}.side-cals-body .side-scroll{flex:none;overflow:visible}.rot{transform:rotate(-90deg)}.mini-title{text-align:left;border-radius:6px;flex:1;align-items:center;gap:4px;margin-left:-4px;padding:2px 4px;display:inline-flex}.mini-title:hover{background:var(--hover)}.mini-title .rot,.mini-title span{color:var(--muted);transition:transform .15s}.side-resize{cursor:col-resize;z-index:20;width:6px;position:absolute;top:0;bottom:0}.side-resize:hover,body.resizing .side-resize{background:color-mix(in srgb, var(--brand) 35%, transparent)}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.right-toggle{transform:scaleX(-1)}.right-toggle.off{opacity:.55}@media (width<=1180px){.right-toggle,.side-resize{display:none}}:root[data-palette=ana] body,:root[data-palette=ana] input,:root[data-palette=ana] select,:root[data-palette=ana] textarea,:root[data-palette=ana] .fc,:root[data-palette=ana] .fc .ev-title,:root[data-palette=ana] .fc .ev-time{font-style:italic}:root[data-palette=ana] kbd{font-style:normal}.rem-bar{border-bottom:1px solid var(--line);min-height:38px;color:var(--muted);align-items:center;gap:8px;padding:6px 14px 6px 16px;display:flex}.rem-bar>svg,.rem-bar>span>svg{flex:none}.rem-chips{scrollbar-width:none;flex:1;align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.rem-chips::-webkit-scrollbar{display:none}.rem-chip{background:color-mix(in srgb, var(--task) 12%, var(--raised));border:1px solid color-mix(in srgb, var(--task) 40%, var(--line));height:26px;color:var(--text);border-radius:13px;flex:none;align-items:center;gap:6px;padding:0 10px 0 6px;font-size:12px;display:inline-flex}.rem-chip.on{border-color:var(--task);box-shadow:0 0 0 2px color-mix(in srgb, var(--task) 25%, transparent)}.rem-chip.due{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--raised))}.rem-check{border:1.5px solid var(--task);border-radius:50%;flex:none;width:14px;height:14px}.rem-chip.due .rem-check{border-color:var(--accent)}.rem-check:hover{background:color-mix(in srgb, var(--task) 30%, transparent)}.rem-title{text-overflow:ellipsis;white-space:nowrap;text-align:left;max-width:240px;overflow:hidden}.rem-title em{color:var(--muted);margin-left:6px;font-size:11px;font-style:normal}.rem-add{min-width:150px;font:inherit;color:var(--text);background:0 0;border:0;flex:1;padding:4px 2px;font-size:12px}.rem-add:focus{outline:none}.rem-add::placeholder{color:var(--muted)}.qt-top{align-items:flex-start;gap:10px;display:flex}.qt-top .qt-title{flex:1;min-width:0}.qt-kind{border:1px solid var(--line);border-radius:7px;flex:none;margin-top:2px;display:inline-flex;overflow:hidden}.qt-kind button{color:var(--text-2);padding:3px 9px;font-size:11.5px}.qt-kind button+button{border-left:1px solid var(--line)}.qt-kind button.on{background:var(--text);color:var(--bg)}.qt-notime{border:1px solid var(--line);text-align:left;border-radius:6px;align-items:baseline;gap:6px;width:100%;margin-bottom:6px;padding:6px 8px;font-size:12px;display:flex}.qt-notime span{color:var(--muted);font-size:11px}.qt-notime.on{background:var(--text);color:var(--bg);border-color:var(--text)}.qt-notime.on span{color:inherit;opacity:.7}.qt-notime:disabled{opacity:.4}.tp-convert{color:var(--brand);margin-top:12px;font-size:12px;display:block}.task-form{background:var(--raised);border:1px solid var(--line);width:480px;max-width:100%;box-shadow:var(--shadow);border-radius:16px;animation:.16s ease-out pop;overflow:hidden}.tf-title{width:100%;font:700 20px/1.3 var(--display);color:var(--text);background:0 0;border:0;padding:18px 20px 4px;display:block}.tf-title:focus,.tf-notes:focus{outline:none}.tf-title::placeholder{color:var(--muted);font-weight:600}.tf-notes{resize:none;width:100%;font:inherit;color:var(--text-2);background:0 0;border:0;min-height:36px;padding:4px 20px 14px;font-size:13px;line-height:1.5;display:block;overflow:hidden}.tf-notes::placeholder{color:var(--muted)}.tf-rows{border-top:1px solid var(--line)}.tf-row{border-bottom:1px solid var(--line)}.tf-row.open{background:color-mix(in srgb, var(--text) 3%, transparent)}.tf-head{text-align:left;align-items:center;gap:10px;width:100%;min-height:42px;padding:0 16px 0 20px;display:flex}button.tf-head:hover{background:var(--hover)}.tf-icon{width:18px;color:var(--muted);flex:none;place-items:center;display:grid}.tf-label{width:92px;color:var(--text-2);flex:none;font-size:13px}.tf-value{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.tf-value.muted{color:var(--muted);font-weight:500}.tf-chev{color:var(--muted);transition:transform .15s}.tf-head .tf-seg{margin-left:auto}.tf-body{flex-direction:column;gap:10px;padding:2px 16px 14px 48px;display:flex}.tf-choices{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tf-choices button,.tf-grid button{border:1px solid var(--line-strong);height:28px;color:var(--text-2);background:var(--raised);border-radius:8px;align-items:center;gap:5px;padding:0 11px;font-size:12.5px;display:inline-flex}.tf-choices button:hover,.tf-grid button:hover{border-color:var(--text-2);color:var(--text)}.tf-choices button.on,.tf-grid button.on{background:var(--text);color:var(--bg);border-color:var(--text)}.tf-choices button:disabled{opacity:.4}.tf-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.tf-grid button{justify-content:center;padding:0}.task-form input:not(.tf-title){font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;min-width:0;height:28px;padding:0 9px;font-size:12.5px}.task-form input:not(.tf-title):focus{border-color:var(--brand);outline:none}.tf-sub{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.tf-sub em{color:var(--muted);font-size:11.5px;font-style:normal}.tf-seg{border:1px solid var(--line-strong);border-radius:8px;display:inline-flex;overflow:hidden}.tf-seg button{height:26px;color:var(--text-2);padding:0 10px;font-size:12px}.tf-seg button+button{border-left:1px solid var(--line-strong)}.tf-seg button.on{background:var(--text);color:var(--bg)}.tf-days{justify-content:flex-start}.tf-foot{align-items:center;gap:8px;padding:12px 16px 14px 20px;display:flex}.tf-where{min-width:0;color:var(--muted);flex:1;font-size:12px}.tf-where.bad{color:var(--danger)}.tf-where.warn{color:#b7791f}.tp-grid{border-top:1px solid var(--line);gap:0}.tp-grid>label,.tp-grid>select,.tp-grid>div,.tp-grid>input,.tp-grid>span{min-height:38px;box-shadow:inset 0 -1px 0 var(--line);border-radius:0;margin:0}.tp-grid>div,.tp-grid>span{align-items:center;display:flex}.tp-grid>div.tp-stack{flex-direction:column;justify-content:center;align-items:stretch;padding:6px 0}.tp-grid>label{align-self:stretch;align-items:center;display:flex}.tp-grid select{cursor:pointer;background-color:#0000;border-color:#0000;font-weight:600}.tp-grid select:hover,.tp-grid input:hover{background-color:var(--hover)}.tp-grid input[type=datetime-local],.tp-grid input[type=time]{background:0 0;border-color:#0000;font-weight:600}.tf-head:focus-visible{background:color-mix(in srgb, var(--brand) 10%, transparent);box-shadow:inset 3px 0 0 var(--brand);outline:none}.tf-head.static:focus-visible .tf-seg{border-color:var(--brand)}.tf-keys{color:var(--muted);opacity:.85;margin-top:3px;font-size:11px;display:block}.tf-keys kbd{margin:0 1px;padding:0 4px;font-size:10px}.tf-foot .btn{border-radius:8px;align-items:center;gap:6px;height:30px;padding:0 12px;font-size:12.5px;line-height:1;display:inline-flex}.tf-foot .btn kbd{background:color-mix(in srgb, currentColor 18%, transparent);min-width:16px;height:16px;color:inherit;border:0;border-radius:4px;place-items:center;padding:0 4px;font-size:10px;line-height:1;display:inline-grid}.tf-foot .btn.primary:disabled{opacity:.5}.confirm{background:var(--raised);border:1px solid var(--line);width:400px;max-width:calc(100% - 32px);box-shadow:var(--shadow);border-radius:14px;padding:18px 18px 14px;animation:.16s ease-out pop}.confirm h3{font:700 16px/1.3 var(--display);color:var(--text);margin:0 0 6px}.confirm p{color:var(--text-2);margin:0 0 14px;font-size:13px;line-height:1.5}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.confirm-actions .btn{border-radius:8px;align-items:center;height:30px;padding:0 12px;font-size:12.5px;display:inline-flex}.btn.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.ep-title-edit{width:100%;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;margin-left:-7px;padding:2px 6px;display:block}.ep-title-edit:hover{border-color:var(--line)}.ep-title-edit:focus{border-color:var(--brand);background:var(--bg);outline:none}.ep-when-edit{flex-direction:column;gap:4px;margin-bottom:2px;display:flex}.ep-when-edit input{font:inherit;color:var(--text);background:0 0;border:1px solid #0000;border-radius:6px;margin-left:-6px;padding:2px 5px;font-size:13px}.ep-when-edit input:hover{border-color:var(--line)}.ep-when-edit input:focus{border-color:var(--brand);background:var(--bg);outline:none}.ep-times{align-items:center;gap:2px;display:inline-flex}.ep-times span{color:var(--muted)}.ep-delete{width:fit-content;margin:18px 0 10px;display:flex}.fc .tb-event:not(.tb-task).fc-event-draggable{cursor:grab}
