:root{color:#e1e6ed;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--text-strong:#edf1f6;--text-muted:#858e9b;--border:#303640;--accent:#89a4c4;--progress-accent:#3d7049;--keyboard-inset:0px;background:#0f1115;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:#0f1115;min-width:320px;min-height:100%}body{background:radial-gradient(at 50% -16%,#48628429,#0000 46%),#0f1115;min-width:320px;min-height:100dvh;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}::selection{background:#89a4c452}#root{min-height:100dvh}.app-shell{width:min(100%,520px);min-height:100svh;padding:28px 22px calc(176px + env(safe-area-inset-bottom));box-sizing:border-box;margin:0 auto;position:relative}.page-header{margin-bottom:25px}.brand-row{align-items:center;gap:9px;min-height:30px;margin-bottom:36px;display:flex}.brand-mark{box-sizing:border-box;background:#1c222b;border:1px solid #333b47;border-radius:8px;align-items:end;gap:3px;width:25px;height:25px;padding:6px;display:flex}.brand-mark span{background:var(--accent);border-radius:4px;width:3px}.brand-mark span:first-child{opacity:.6;height:6px}.brand-mark span:nth-child(2){opacity:.82;height:10px}.brand-mark span:nth-child(3){height:13px}.brand-name,.section-kicker,.date-eyebrow{color:var(--text-muted);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:650;line-height:1.3}.brand-name{color:#c3ccd7;letter-spacing:.16em;font-size:11px}.header-spacer{flex:1}.avatar{color:#c5d4e4;background:#222a34;border:1px solid #35404c;border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;font-weight:650;display:grid}.date-eyebrow{color:#9ba6b5;letter-spacing:.07em;text-transform:none;margin:0 0 7px;font-size:11px;font-weight:500}.sync-message{color:#e2b7b8;background:#261e22;border:1px solid #60474a;border-radius:10px;margin:-9px 0 18px;padding:10px 12px;font-size:11px;line-height:1.45}.title-row,.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.title-row h1{color:var(--text-strong);letter-spacing:-.055em;margin:0;font-size:clamp(34px,9vw,42px);font-weight:620;line-height:1.08}.date-pill{border:1px solid var(--border);color:#b1bdcb;white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:8px 10px;font-size:10px;display:inline-flex}.date-view-toggle{cursor:pointer;font:inherit;background:0 0;transition:border-color .15s,background .15s,color .15s}.date-view-toggle:hover{color:#d8e2ed;background:#1b2027;border-color:#465261}.date-view-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.date-pill svg{width:13px;height:13px;color:var(--accent)}.progress-card{background:radial-gradient(at 100% 0,#57749924,#0000 55%),linear-gradient(135deg,#1b2027,#171b21 70%);border:1px solid #303944;border-radius:16px;grid-template-columns:minmax(0,1fr) 52px;align-items:center;gap:14px;margin:0 0 31px;padding:18px 17px 16px;display:grid;overflow:hidden}.progress-copy .section-kicker{color:#93a9c3;letter-spacing:.12em;font-size:9px}.progress-copy p{color:#9da6b2;margin:8px 0 0;font-size:12px}.progress-copy strong{color:var(--text-strong);font-size:14px;font-weight:620}.progress-ring{background:conic-gradient(var(--progress-accent) var(--progress), #343b45 0);border-radius:50%;place-items:center;width:47px;height:47px;display:grid;position:relative}.progress-ring:before{content:"";background:#1b2129;border-radius:50%;position:absolute;inset:4px}.progress-ring span{z-index:1;color:#dce6f1;font-size:10px;font-weight:650}.progress-track{background:#343b45;border-radius:99px;grid-column:1/-1;height:3px;margin-top:1px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#6e89aa,#9db5d2);height:100%;transition:width .22s;display:block}.calendar-panel{background:linear-gradient(145deg,#1b2026,#171b21);border:1px solid #303944;border-radius:16px;margin:0 0 27px;padding:14px}.calendar-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.calendar-toolbar h2{color:#e1e6ed;letter-spacing:-.02em;margin:0;font-size:14px;font-weight:580}.calendar-month-controls{gap:6px;display:flex}.calendar-month-controls button{color:#bdc9d7;cursor:pointer;width:30px;height:30px;font:inherit;background:#222831;border:1px solid #39434f;border-radius:9px;place-items:center;padding:0 0 3px;font-size:21px;line-height:1;display:grid}.calendar-month-controls button:hover{background:#2a323d;border-color:#566579}.calendar-month-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{color:#808a98;text-align:center;font-size:9px;font-weight:550}.calendar-grid{gap:3px 2px}.calendar-day{color:#c6ced8;cursor:pointer;min-width:0;min-height:52px;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;padding:7px 1px 4px;display:flex}.calendar-day:hover{background:#252c34}.calendar-day:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.calendar-day.is-today .calendar-day-number{color:#b9cce1;font-weight:700}.calendar-day.is-selected{color:#f0f4f8;background:#26303b;border-color:#52657c}.calendar-day-empty{cursor:default}.calendar-day-number{font-size:11px;line-height:1.2}.calendar-dots{justify-content:center;align-items:center;gap:3px;min-height:7px;display:flex}.calendar-dots .priority-dot,.calendar-legend .priority-dot{flex:0 0 6px;width:6px;height:6px;margin:0}.calendar-more{color:#9ba8b7;font-size:8px;line-height:1}.calendar-legend{border-top:1px solid #2e353e;justify-content:center;gap:15px;margin-top:12px;padding-top:11px;display:flex}.calendar-legend span{color:#929ba7;align-items:center;gap:5px;font-size:9px;display:inline-flex}.calendar-legend .priority-dot{display:inline-block}.task-section{margin-top:0}.section-heading{align-items:end;margin:0 1px 13px}.section-heading .section-kicker{margin:0 0 5px;font-size:9px}.section-heading h2{color:var(--text-strong);letter-spacing:-.035em;margin:0;font-size:18px;font-weight:570}.task-count{color:#85818d;padding-bottom:2px;font-size:11px}.task-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.task-card{background:linear-gradient(145deg,#1b2026,#181c22);border:1px solid #2d343d;border-radius:14px;align-items:center;gap:12px;min-height:76px;padding:13px 14px;transition:border-color .18s,background .18s,opacity .18s;display:flex}.task-card:hover{border-color:#465261}.task-card.is-complete{background:#171b20}.check-button{color:#17151b;cursor:pointer;background:0 0;border:1px solid #667383;border-radius:50%;flex:0 0 23px;place-items:center;width:23px;height:23px;padding:0;transition:border-color .16s,background .16s,transform .16s;display:grid}.check-button:hover{border-color:var(--accent);transform:scale(1.06)}.check-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.is-complete .check-button{background:#9eb5d1;border-color:#9eb5d1}.check-button svg{stroke:currentColor;stroke-width:2.2px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.task-main{flex:1;min-width:0}.task-title{color:#e1dfe5;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:520;line-height:1.4;overflow:hidden}.is-complete .task-title{color:#827f87;-webkit-text-decoration:line-through #68646e;text-decoration:line-through #68646e}.task-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.task-time,.task-date,.category-chip{border-radius:6px;align-items:center;min-height:19px;padding:2px 7px;font-size:9px;line-height:1;display:inline-flex}.task-time{color:#b1bac5;background:#262c34}.task-date{color:#b5c7dc;background:#252e39}.category-chip{color:#adb5c0;background:#252b33}.category-work{color:#b2c3d8;background:#252e39}.category-home{color:#aebdca;background:#252d34}.category-personal{color:#bec3cb;background:#292d34}.priority-dot{border-radius:50%;flex:0 0 7px;width:7px;height:7px;margin:7px 0 0}.priority-low{background:#3d7049}.priority-medium{background:#c0a046;box-shadow:0 0 8px #c0a04629}.priority-high{background:#bc5d5d;box-shadow:0 0 8px #bc5d5d2e}.task-trailing{align-self:stretch;align-items:flex-start;gap:5px;padding-top:1px;display:flex}.task-edit-button,.details-button{color:#8795a6;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;padding:0;transition:background .15s,border-color .15s,color .15s;display:grid}.task-edit-button:hover,.details-button:hover{color:#c0cfdf;background:#252c35;border-color:#3d4856}.task-edit-button:focus-visible,.details-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-edit-button svg,.details-button svg{stroke:currentColor;stroke-width:1.7px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.empty-state{text-align:center;background:#1b20278c;border:1px dashed #34343a;border-radius:15px;justify-items:center;padding:36px 20px 28px;display:grid}.empty-icon{color:#a9bfd9;background:#26313d;border-radius:12px;place-items:center;width:35px;height:35px;margin-bottom:13px;display:grid}.empty-icon svg{stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.empty-state h3{color:#dedbe4;margin:0 0 5px;font-size:13px;font-weight:560}.empty-state p{color:#8c8992;font-size:11px}.bottom-dock{z-index:5;right:50%;bottom:calc(var(--keyboard-inset,0px) + var(--keyboard-bottom-gap,max(12px, env(safe-area-inset-bottom))));-webkit-backdrop-filter:blur(22px);background:#1a1e24f2;border:1px solid #444e5cd9;border-radius:19px;width:min(100% - 28px,476px);padding:10px 11px 8px;position:fixed;transform:translate(50%);box-shadow:0 18px 54px #0000006b,0 2px 10px #00000040}.bottom-dock.keyboard-open{padding-bottom:10px}.bottom-dock.keyboard-open .quick-add{border-bottom:0;padding-bottom:0}.bottom-dock.keyboard-open .bottom-nav{display:none}.quick-add,.quick-add-launch-row{border-bottom:1px solid #343b45;align-items:center;gap:8px;min-height:46px;padding:0 5px 8px 13px;display:flex}.quick-add-trigger{color:#817d88;cursor:pointer;min-width:0;min-height:42px;font:inherit;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:0;font-size:12px;display:flex}.quick-add-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quick-add-trigger-icon{color:#afbdcc;background:#252c34;border:1px solid #39434f;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;transition:background .15s,border-color .15s,color .15s;display:grid}.quick-add-trigger:hover .quick-add-trigger-icon{color:#d1ddea;background:#2a333e;border-color:#4a596a}.quick-add-trigger-icon svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;width:18px;height:18px}.quick-add input{color:#e3e8ee;min-width:0;font:inherit;background:0 0;border:0;outline:0;flex:1;padding:9px 0;font-size:12px}.quick-add input::placeholder{color:#817d88;opacity:1}.quick-add input:focus-visible{outline:none}.details-button{color:#afbdcc;background:#252c34;border-color:#39434f;flex-basis:32px;width:32px;height:32px}.quick-add-cancel{color:#929eac;cursor:pointer;width:27px;height:30px;font:inherit;background:0 0;border:0;border-radius:8px;flex:0 0 27px;place-items:center;padding:0 0 2px;font-size:21px;line-height:1;display:grid}.quick-add-cancel:hover{color:#e1e6ed;background:#252c35}.quick-add-cancel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.add-button{color:#121820;cursor:pointer;background:linear-gradient(145deg,#9eb5d1,#728ba9);border:0;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;padding:0;transition:opacity .14s,transform .14s;display:grid}.add-button:hover:not(:disabled){transform:translateY(-1px)}.add-button:disabled{cursor:default;opacity:.4}.add-button:focus-visible{outline-offset:2px;outline:2px solid #c7d7e9}.add-button svg{stroke:currentColor;stroke-width:2px;fill:none;stroke-linecap:round;width:18px;height:18px}.bottom-nav{grid-template-columns:repeat(3,1fr);gap:4px;padding-top:7px;display:grid}.nav-item{color:#898590;cursor:pointer;min-height:44px;font:inherit;background:0 0;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:3px 5px;font-size:9px;transition:background .15s,color .15s;display:flex}.nav-item:hover{background:#29272e}.nav-item.is-active{color:#b5c7dc}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-item svg{stroke:currentColor;stroke-width:1.7px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.task-dialog{color:#e1e6ed;background:#191e25;border:1px solid #3b4551;border-radius:21px;width:min(100% - 28px,430px);max-height:min(88dvh,720px);margin:auto;padding:25px;overflow-y:auto;box-shadow:0 24px 80px #0000008c}.task-dialog::backdrop{-webkit-backdrop-filter:blur(5px);background:#05070ac2}.dialog-close{color:#aeb8c4;cursor:pointer;background:#232932;border:1px solid #39414c;border-radius:50%;place-items:center;width:34px;height:34px;padding:0 0 2px;font-size:22px;line-height:1;display:grid;position:absolute;top:15px;right:15px}.dialog-close:hover{color:#e5eaf0;background:#2b333e}.dialog-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dialog-heading{margin-bottom:20px;padding-right:30px}.dialog-heading .section-kicker{color:#8fa4bc;margin:0 0 7px}.dialog-heading h2{color:var(--text-strong);letter-spacing:-.04em;margin:0;font-size:24px;font-weight:590}.dialog-heading p:last-child{color:#929ba7;margin:6px 0 0;font-size:12px}.task-form{gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 11px;display:grid}.form-field{color:#b4bdc8;gap:6px;min-width:0;font-size:11px;font-weight:550;display:grid}.form-field-full{grid-column:1/-1}.form-field small{color:#7f8996;margin-left:4px;font-size:10px;font-weight:400}.form-field input,.form-field select{color:#e1e6ed;width:100%;min-width:0;min-height:43px;font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#13171d;border:1px solid #39434f;border-radius:10px;outline:none;padding:0 10px;font-size:12px}.form-field input:focus,.form-field select:focus{border-color:#7891ae;box-shadow:0 0 0 2px #89a4c426}.form-field input::placeholder{color:#707b89}.dialog-actions{gap:10px;margin-top:5px;display:flex}.save-button,.delete-button{cursor:pointer;min-height:43px;font:inherit;border:1px solid #0000;border-radius:11px;padding:0 15px;font-size:12px;font-weight:620}.save-button{color:#121820;background:linear-gradient(145deg,#9eb5d1,#728ba9);flex:1}.save-button:hover{filter:brightness(1.08)}.save-button:disabled{cursor:wait;opacity:.65}.delete-button{color:#d1a0a2;background:#2a2224;border-color:#493a3d}.delete-button:hover{background:#342729;border-color:#68494c}.save-button:focus-visible,.delete-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-screen{place-items:center;min-height:100dvh;padding:22px;display:grid}.auth-card{background:linear-gradient(145deg,#1b2027,#15191f);border:1px solid #303944;border-radius:19px;width:min(100%,390px);padding:25px;box-shadow:0 20px 60px #00000047}.auth-brand{margin-bottom:34px}.auth-card h1{color:var(--text-strong);letter-spacing:-.045em;margin:0;font-size:27px;font-weight:590}.auth-description{color:#929ba7;margin:8px 0 22px;font-size:12px;line-height:1.5}.auth-mode-switch{background:#13171d;border:1px solid #303944;border-radius:11px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-mode-switch button,.auth-links button{color:#aab4c0;cursor:pointer;font:inherit;background:0 0;border:0}.auth-mode-switch button{border-radius:8px;min-height:35px;font-size:11px}.auth-mode-switch button.is-selected{color:#e2e8ef;background:#252d37}.auth-mode-switch button:focus-visible,.auth-links button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-form{gap:14px;margin-top:17px;display:grid}.auth-feedback{color:#aebfd0;margin:0;font-size:11px;line-height:1.5}.auth-feedback.is-error{color:#e3a4a0}.auth-links{justify-content:center;margin-top:14px;display:flex}.auth-links button{color:#9aacc0;padding:5px;font-size:11px}.auth-submit{width:100%;margin-top:2px}.auth-loading{color:#aeb8c4;font-size:13px}@media (width>=600px){.app-shell{padding-top:36px}.brand-row{margin-bottom:45px}.progress-card{margin-bottom:35px}}@media (width<=599px){.app-shell{padding-top:max(28px, calc(env(safe-area-inset-top) + 12px))}.form-field-date input,.form-field-time input{text-align:center;justify-self:center;width:calc(100% - 8px);min-width:0;max-width:calc(100% - 8px);padding-left:7px;padding-right:7px;overflow:hidden}.form-field-date input[type=date],.form-field-time input[type=time]{font-size:14px}.form-field-date input::-webkit-date-and-time-value{text-align:center;min-width:0;margin:0}.form-field-time input::-webkit-date-and-time-value{text-align:center;min-width:0;margin:0}.form-field-date,.form-field-time{overflow:visible}.form-grid{column-gap:8px}.quick-add input,.form-field input,.form-field select,.auth-form input{font-size:16px}}@media (width<=360px){.app-shell{padding-left:16px;padding-right:16px}.date-pill{padding:7px 8px;font-size:9px}.task-card{gap:10px;padding-left:11px;padding-right:11px}.task-dialog{padding:22px 17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
