:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#16171c;background:#f2f2f7;font-size:16px;--bg:#f2f2f7;--panel:#fff;--text:#16171c;--muted:#777982;--line:#e7e7ed;--accent:#5b61d6;--soft:#ededf8;--shadow:0 8px 30px #2424410a;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit;background:transparent}button:disabled{opacity:.5;cursor:wait}a{color:var(--accent)}button:focus-visible,a:focus-visible{outline:3px solid #9296ff;outline-offset:3px}input,select,textarea{color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;max-width:100%;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #9a9eef;border-color:transparent}h1,h2,h3,p{margin:0}h1{font-size:2.25rem;letter-spacing:-.045em;line-height:1.15}h2{font-size:1.6rem;letter-spacing:-.035em}h3{font-size:1.15rem}svg{width:24px;height:24px;vertical-align:middle;flex-shrink:0}small,.muted{color:var(--muted)}small{font-size:.875rem}.shell{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:230px 1fr;min-height:100dvh;padding:35px 32px 135px;gap:60px}.sidebar{position:sticky;top:35px;align-self:start}.wordmark{display:flex;align-items:center;gap:10px;margin:0 0 35px;font-size:1.45rem;font-weight:800;letter-spacing:.12em}.wordmark img{width:38px;height:38px}.side-label{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--muted);margin:25px 12px 10px}.nav-item{width:100%;display:flex;gap:12px;align-items:center;padding:13px;border-radius:12px;text-align:left;margin-bottom:4px;min-height:48px}.nav-item.active{background:var(--soft);color:var(--accent);font-weight:650}.nav-item .count{margin-left:auto;font-size:.875rem;color:var(--muted)}.workspace{min-width:0}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}.date{color:var(--muted);margin-top:6px}.round{width:48px;height:48px;border-radius:50%;background:var(--panel);box-shadow:var(--shadow);display:inline-flex;justify-content:center;align-items:center;flex-shrink:0}.top-actions{display:flex;gap:10px}.mobile-menu{display:none}.section-head{margin:27px 8px 12px;display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600;color:var(--muted)}.group{background:var(--panel);border-radius:24px;padding:0 18px;box-shadow:var(--shadow)}.event{display:flex;align-items:center;gap:14px;padding:20px 0;position:relative}.event+.event{border-top:1px solid var(--line)}.check{width:30px;height:30px;border:1.6px solid #9899a2;border-radius:50%;padding:3px;flex-shrink:0;align-self:center}.check:hover{border-color:var(--accent);background:var(--soft)}.check svg{width:20px;height:20px;opacity:0}.check:hover svg{opacity:1}.event-open{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-width:0;text-align:left;padding:0}.event-info{min-width:0;flex:1}.event-title{font-size:1.15rem;font-weight:650;display:flex;align-items:flex-start;gap:8px;line-height:1.35}.event-title span{overflow-wrap:anywhere}.event-note{color:var(--muted);margin:7px 0 0 32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem;max-width:310px}.event-meta{margin:6px 0 0 32px;color:var(--muted);font-size:.875rem}.danger{color:#d14b54!important}.due{color:#b17713!important}.counter{display:flex;flex-direction:column;align-items:center;flex-shrink:0;gap:5px}.digits{display:flex;gap:5px}.digit{display:flex;align-items:center;justify-content:center;width:35px;height:42px;border-radius:9px;background:var(--text);color:var(--panel);font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums}.digit.zero{background:var(--bg);color:#b8b8c0}.counter-label{text-transform:uppercase;font-size:.75rem;color:var(--muted);letter-spacing:.02em}.empty{padding:55px 24px;text-align:center;background:var(--panel);border-radius:24px;margin-top:28px}.empty img{width:64px;opacity:.85;margin-bottom:20px}.empty p{color:var(--muted);margin:12px auto 24px;max-width:360px;line-height:1.6}.primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:14px;padding:14px 20px;background:var(--accent);color:white;font-weight:600;text-decoration:none;min-height:48px}.secondary{background:var(--soft);color:var(--accent);padding:13px 18px;border-radius:14px;min-height:48px}.toolbar{position:fixed;bottom:60px;left:calc(50% + 115px);transform:translateX(-50%);width:min(660px,calc(100% - 48px));display:flex;gap:12px;align-items:center;padding:8px;border-radius:40px;background:color-mix(in srgb,var(--panel) 85%,transparent);box-shadow:0 5px 45px #25253520;backdrop-filter:blur(20px);z-index:3}.search-wrap{display:flex;gap:10px;align-items:center;flex:1;min-width:0;padding-left:15px}.search-wrap input{width:100%;border:0;background:transparent;padding:12px 0;outline:none}.toolbar .add{background:var(--accent);color:white;width:52px;height:52px;box-shadow:none}.brand{position:fixed;bottom:0;left:0;right:0;z-index:6;text-align:center;padding:10px 12px calc(10px + env(safe-area-inset-bottom));font-size:.75rem;color:var(--muted);background:var(--bg);border-top:1px solid var(--line)}.brand a{color:inherit;text-decoration:none;font-weight:600}.auth-panel{max-width:460px;margin:60px auto 100px;padding:32px;background:var(--panel);border-radius:26px;box-shadow:var(--shadow)}.auth-panel .wordmark{margin-bottom:25px}.auth-panel p{margin:12px 0 24px;color:var(--muted);line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;font-size:.9rem}.field.full{grid-column:1/-1}.field textarea{resize:vertical;min-height:90px}.auth-panel .field{margin:0}.auth-panel form{display:grid;gap:16px}.error{color:#d14b54;line-height:1.5;padding:12px;border-radius:12px;background:#d14b5410;font-size:.9rem}.loading{text-align:center;margin-top:30vh;color:var(--muted)}dialog{border:0;color:var(--text);background:var(--bg);width:min(660px,calc(100vw - 28px));max-height:calc(100dvh - 90px);border-radius:30px;padding:24px;box-shadow:0 20px 90px #15152c30}dialog::backdrop{background:#20203070;backdrop-filter:blur(5px)}.sheet-header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:25px}.sheet-header h2{flex:1}.sheet-actions{display:flex;gap:8px}.summary{border-radius:23px;background:var(--panel);padding:25px;margin-bottom:24px}.summary-title{display:flex;align-items:center;gap:10px;font-size:1.3rem;font-weight:700}.elapsed{display:flex;align-items:baseline;gap:12px;margin:25px 0}.elapsed strong{font-size:3.7rem;font-weight:650;letter-spacing:-.03em}.elapsed span{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div+div{border-left:1px solid var(--line);padding-left:15px}.stats strong{font-size:1.25rem;display:block;margin-bottom:5px}.stats small{text-transform:uppercase;font-size:.75rem}.history{border-radius:23px;background:var(--panel);padding:22px;margin-top:16px}.history-entry{position:relative;padding:0 0 25px 28px;border-left:2px dashed var(--line);margin-left:7px}.history-entry:last-child{padding-bottom:0;border:0}.history-entry::before{content:"";position:absolute;left:-7px;top:4px;background:var(--accent);width:12px;height:12px;border-radius:50%}.history-entry strong{font-size:1rem;line-height:1.4}.history-entry p{color:var(--muted);margin-top:8px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.history-entry .gap{display:inline-block;border:1px solid var(--line);padding:4px 9px;border-radius:8px;margin-top:12px;font-size:.875rem;color:var(--muted)}.entry-top{display:flex;gap:8px;justify-content:space-between}.text-button{color:var(--accent);font-size:.875rem;padding:0 0 0 5px;flex-shrink:0}.attachment{display:block;margin-top:9px;font-size:.875rem;overflow-wrap:anywhere}.bottom-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.bottom-actions .primary{flex:1}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:17px 0;gap:16px;border-bottom:1px solid var(--line)}.setting-row:last-child{border:0}.setting-row p{font-size:.875rem;color:var(--muted);margin-top:5px;line-height:1.4}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.chip{padding:9px 12px;border-radius:10px;background:var(--panel);color:var(--muted);font-size:.875rem}.chip.active{background:var(--soft);color:var(--accent)}.helper{font-size:.875rem;color:var(--muted);line-height:1.5;margin-bottom:18px}.success{color:#298866;font-size:.875rem;line-height:1.5}#toast{position:fixed;bottom:145px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--panel);padding:13px 20px;border-radius:16px;z-index:10;max-width:90vw;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}.sort-control{max-width:160px}.menu-panel .nav-item{margin-bottom:8px}.activity-row{padding:18px 0;border-bottom:1px solid var(--line)}.activity-row:last-child{border:0}.activity-row .date{font-size:.875rem}.confirm-box{padding:20px;background:var(--panel);border-radius:18px}.confirm-box p{color:var(--muted);line-height:1.6;margin:14px 0}.confirm-box input{width:100%;margin:15px 0}.dark{--bg:#17171c;--panel:#25252d;--text:#f3f3f7;--muted:#a0a0ae;--line:#373740;--soft:#33334e;--accent:#969bff;color-scheme:dark;background:var(--bg);color:var(--text)}.dark .digit.zero{background:#35353d;color:#73737e}.dark .primary{background:#696ee1;color:white}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media(max-width:800px){.shell{display:block;max-width:700px;padding:22px 20px 135px}.sidebar{display:none}.mobile-menu{display:inline-flex}.topline{margin-bottom:26px;align-items:flex-start;gap:15px}.topline h1{font-size:2.1rem}.toolbar{left:50%;bottom:55px;width:calc(100% - 36px);max-width:640px}.top-actions{gap:8px}.event{gap:11px;padding:18px 0}.group{padding:0 14px}.event-title{font-size:1.07rem}.event-note{max-width:210px;font-size:.9rem}.digit{width:30px;height:38px;font-size:1.25rem}.digits{gap:4px}.check{width:26px;height:26px}.event-meta{font-size:.8rem}.auth-panel{margin:28px 18px 85px}.sheet-header h2{font-size:1.35rem}dialog{padding:20px;max-height:calc(100dvh - 65px)}.summary{padding:22px}.history{padding:20px}.summary-title{font-size:1.15rem}.brand{font-size:.7rem}}@media(max-width:390px){.shell{padding-left:12px;padding-right:12px}.event-open{gap:8px}.event-title{font-size:1rem}.event-note{max-width:140px}.digit{width:26px;height:34px;font-size:1.1rem}.event-title svg{width:21px}.counter-label{font-size:.7rem}.event-note,.event-meta{margin-left:29px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.stats strong{font-size:1.05rem}.top-actions .round{width:42px;height:42px}}@media(min-width:801px) and (max-width:1000px){.shell{gap:30px;padding-left:25px;padding-right:25px;grid-template-columns:190px 1fr}.toolbar{left:calc(50% + 95px);width:calc(100% - 300px)}}
.settings-note{margin-top:20px}
/* Keep mobile form text large enough to avoid focus-triggered browser zoom. */
@media(max-width:800px){input,select,textarea{font-size:16px}}
.contact-details{margin:4px 0 20px;border-top:1px solid var(--line);padding-top:14px}.contact-details summary{cursor:pointer;color:var(--muted);font-size:.9rem;min-height:32px}.contact-details[open] summary{margin-bottom:12px}.contact-details summary:focus-visible{outline:3px solid #9296ff;outline-offset:3px}
.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:40px 20px 85px;background:radial-gradient(ellipse at 18% 12%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 52%),radial-gradient(ellipse at 90% 80%,#0aaeb110,transparent 50%),var(--bg)}.auth-screen .login-card{width:100%;max-width:440px;margin:0;padding:36px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:30px;box-shadow:0 18px 70px #2424410d}.login-brand{text-align:center;margin-bottom:32px}.login-brand img{display:block;margin:0 auto 15px;width:64px;height:64px;border-radius:18px;box-shadow:0 8px 24px #5b61d61a}.login-name{font-size:1.75rem;font-weight:800;letter-spacing:.15em;padding-left:.15em}.auth-panel .login-tagline{margin:7px 0 0;font-size:.95rem;color:var(--accent);letter-spacing:.015em}.login-card h1{font-size:1.65rem;text-align:center}.login-card h1+p{text-align:center;font-size:.95rem;margin:10px 0 27px}.login-card input{width:100%;min-height:48px;background:var(--bg)}.login-card form{gap:18px}.login-card .primary{width:100%;margin-top:4px;box-shadow:0 5px 15px #5b61d620}.login-note{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:.8rem;margin-top:25px}.login-note svg{width:16px;height:16px}@media(max-width:480px){.auth-screen{padding:24px 16px 75px}.auth-screen .login-card{padding:28px 24px;border-radius:26px}.login-brand{margin-bottom:28px}}@media(max-height:650px){.auth-screen{place-items:start center;padding-top:22px}}
.subscriber-list{margin-top:24px}.subscriber-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px 0}.subscriber-row+.subscriber-row{border-top:1px solid var(--line)}.subscriber-info{min-width:0}.subscriber-info strong{font-size:1.05rem}.subscriber-info p{color:var(--muted);font-size:.9rem;margin:6px 0 9px;overflow-wrap:anywhere}.subscriber-controls{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.account-status{font-size:.875rem;font-weight:600}.subscriber-controls .secondary{font-size:.875rem;padding:10px 14px}@media(max-width:390px){.subscriber-row{gap:10px}.subscriber-info small{font-size:.8rem}}
.name-field{position:relative}.tracker-suggestions{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;margin-top:0}.tracker-suggestions[hidden]{display:none}.tracker-idea{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:11px 13px;min-height:56px}.tracker-idea+.tracker-idea{border-top:1px solid var(--line)}.tracker-idea:hover,.tracker-idea.chosen{background:var(--soft)}.tracker-idea span{font-size:.95rem;line-height:1.35;overflow-wrap:anywhere}.tracker-idea small{display:block;font-size:.8rem;color:var(--muted);margin-top:3px}
