:root{color:var(--tg-theme-text-color,#101828);background:var(--tg-theme-bg-color,#f5f7fa);font-synthesis:none;text-rendering:optimizelegibility;--surface:var(--tg-theme-section-bg-color,#fff);--surface-secondary:var(--tg-theme-secondary-bg-color,#eef2f6);--text:var(--tg-theme-text-color,#101828);--muted:var(--tg-theme-hint-color,#667085);--accent:var(--tg-theme-button-color,#306cfe);--accent-text:var(--tg-theme-button-text-color,#fff);--danger:var(--tg-theme-destructive-text-color,#d92d20);--border:color-mix(in srgb, var(--muted) 22%, transparent);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--tg-theme-bg-color,#f5f7fa);min-width:320px}button{font:inherit}.app-shell{max-width:760px;min-height:100vh;padding-bottom:calc(82px + var(--safe-bottom));margin:0 auto}.app-header{justify-content:space-between;align-items:center;padding:20px 20px 12px;display:flex}.app-header h1,.page-heading h2{letter-spacing:-.04em;margin:0}.app-header h1{font-size:26px}.eyebrow{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.runtime-badge{border:1px solid var(--border);background:var(--surface);max-width:45%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;display:inline-flex;overflow:hidden}.runtime-dot{background:#12b76a;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 3px #12b76a29}.runtime-badge--local .runtime-dot{background:#f79009;box-shadow:0 0 0 3px #f7900929}.app-content{padding:12px 16px 32px}.page-stack{gap:14px;display:grid}.page-heading{padding:14px 4px 4px}.page-heading h2{font-size:clamp(30px,9vw,44px)}.page-heading p{max-width:480px;color:var(--muted);margin:8px 0 0;line-height:1.5}.page-heading--today{padding-bottom:0}.heading-row{align-items:center;gap:10px;display:flex}.task-count,.section-heading span,.priority-badge{background:var(--surface-secondary);min-width:28px;height:28px;color:var(--muted);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:700;display:inline-grid}.task-section{gap:9px;display:grid}.section-heading{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.section-heading h3{margin:0;font-size:16px}.section-heading span{height:24px}.task-list{gap:8px;display:grid}.task-card{border:1px solid var(--border);background:var(--surface);border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid;box-shadow:0 6px 20px #1018280a}.task-card--risk{border-color:color-mix(in srgb, var(--danger) 28%, var(--border))}.task-complete{border:1.5px solid color-mix(in srgb, var(--accent) 45%, var(--border));color:#0000;cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.task-complete:active,.task-complete:focus-visible{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.task-complete:disabled{color:var(--muted);cursor:wait}.task-body{min-width:0}.task-open{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.task-body strong{overflow-wrap:anywhere;line-height:1.35;display:block}.task-meta{color:var(--muted);flex-wrap:wrap;gap:5px 10px;margin-top:6px;font-size:11px;display:flex}.task-due--risk{color:var(--danger);font-weight:700}.priority-badge{min-width:34px;color:var(--accent)}.task-completed-mark{background:color-mix(in srgb, #12b76a 15%, var(--surface));color:#12b76a;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.task-chevron{width:32px;height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:28px}.task-tabs{background:var(--surface-secondary);border-radius:15px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.task-tab{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:8px 10px;font-weight:700}.task-tab span{opacity:.72;margin-left:4px}.task-tab--active{background:var(--surface);color:var(--text);box-shadow:0 3px 10px #1018280f}.create-fab{z-index:20;right:max(18px,50vw - 362px);bottom:calc(82px + var(--safe-bottom));background:var(--accent);width:58px;height:58px;color:var(--accent-text);box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 38%, transparent);cursor:pointer;border:0;border-radius:19px;place-items:center;padding:0 0 4px;display:grid;position:fixed}.create-fab span{font-size:36px;font-weight:300;line-height:1}.create-fab:active{transform:scale(.96)}.create-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000085;align-items:end;animation:.26s ease-out backdrop-in;display:grid;position:fixed;inset:0}.create-sheet{width:min(100%,760px);max-height:min(88vh,760px);padding:9px 18px calc(20px + var(--safe-bottom));border:1px solid var(--border);background:var(--surface);overscroll-behavior:contain;border-bottom:0;border-radius:26px 26px 0 0;gap:16px;margin:0 auto;animation:.32s cubic-bezier(.22,1,.36,1) sheet-in;display:grid;overflow-y:auto;box-shadow:0 -20px 60px #00000038}.sheet-handle{background:var(--border);border-radius:99px;width:42px;height:4px;margin:0 auto 2px}.create-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.create-heading h2{letter-spacing:-.03em;margin:0;font-size:24px}.sheet-close{background:var(--surface-secondary);width:36px;height:36px;color:var(--muted);cursor:pointer;border:0;border-radius:12px;place-items:center;padding:0 0 3px;font-size:25px;display:grid}.create-input{resize:none;border:1px solid var(--border);background:var(--surface-secondary);width:100%;min-height:104px;color:var(--text);font:inherit;border-radius:16px;outline:none;padding:14px;line-height:1.45}.create-input:focus{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent)}.due-options{gap:8px;display:flex;overflow-x:auto}.due-chip{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:999px;padding:8px 13px;font-weight:650}.due-chip--active{border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--accent)}.create-error{color:var(--danger);margin:-5px 2px 0;font-size:13px}.create-submit{background:var(--accent);min-height:50px;color:var(--accent-text);cursor:pointer;border:0;border-radius:15px;padding:12px 18px;font-weight:750}.create-submit:disabled{opacity:.5;cursor:not-allowed}.composer-actions{grid-template-columns:auto minmax(0,1fr);gap:10px;display:grid}.voice-button{border:1px solid var(--border);background:var(--surface-secondary);min-width:100px;min-height:50px;color:var(--text);cursor:pointer;border-radius:15px;justify-content:center;align-items:center;gap:8px;padding:11px 15px;font-weight:700;display:inline-flex}.voice-button span{color:#e5484d;font-size:17px}.voice-button--recording{background:color-mix(in srgb, #e5484d 12%, var(--surface));color:#e5484d;border-color:#e5484d4d;width:100%}.recording-panel{background:color-mix(in srgb, #e5484d 8%, var(--surface-secondary));text-align:center;border-radius:18px;align-content:center;justify-items:center;gap:9px;min-height:154px;padding:24px 16px;display:grid}.recording-panel>span{color:var(--muted);font-size:12px}.recording-wave{align-items:center;gap:3px;height:38px;display:flex}.recording-wave span{background:#e5484d;border-radius:9px;width:3px;height:10px;animation:.9s ease-in-out infinite alternate voice-wave}.recording-wave span:nth-child(3n){animation-delay:-300ms}.recording-wave span:nth-child(3n+1){animation-delay:-600ms}.composer-progress{background:var(--surface-secondary);border-radius:18px;justify-content:center;align-items:center;gap:14px;min-height:116px;padding:20px;display:flex}.composer-progress div,.capture-result-heading div{gap:4px;display:grid}.composer-progress span,.capture-result-heading span,.capture-muted{color:var(--muted);font-size:12px}.capture-result{gap:10px;display:grid}.capture-result-heading{align-items:center;gap:12px;padding-bottom:4px;display:flex}.capture-success{background:color-mix(in srgb, #12b76a 15%, var(--surface));border-radius:14px;place-items:center;width:40px;height:40px;font-weight:800;display:grid;color:#039855!important}.capture-item{border:1px solid var(--border);background:var(--surface-secondary);border-radius:15px;gap:6px;padding:13px 14px;display:grid}.capture-kind{color:var(--accent);letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:800}.capture-confirm{grid-template-columns:1fr 1fr;gap:8px;margin-top:5px;display:grid}.capture-confirm button{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--text);cursor:pointer;border-radius:11px;font-weight:700}.capture-confirm button:last-child{background:var(--accent);color:var(--accent-text);border-color:#0000}.capture-question{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-radius:14px;margin:0;padding:13px 14px;line-height:1.45}.details-backdrop{z-index:45;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000085;align-items:end;animation:.26s ease-out backdrop-in;display:grid;position:fixed;inset:0}.details-sheet{width:min(100%,760px);max-height:min(92vh,820px);padding:9px 18px calc(20px + var(--safe-bottom));border:1px solid var(--border);background:var(--surface);overscroll-behavior:contain;border-bottom:0;border-radius:26px 26px 0 0;gap:16px;margin:0 auto;animation:.32s cubic-bezier(.22,1,.36,1) sheet-in;display:grid;overflow-y:auto;box-shadow:0 -20px 60px #00000038}.details-loading{min-height:180px;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.field-label{color:var(--muted);gap:7px;font-size:12px;font-weight:700;display:grid}.field-label input,.field-label select,.details-title-input{border:1px solid var(--border);background:var(--surface-secondary);width:100%;min-height:46px;color:var(--text);font:inherit;border-radius:13px;outline:none;padding:11px 12px}.details-title-input{resize:vertical;min-height:76px;line-height:1.4}.field-label input:focus,.field-label select:focus,.details-title-input:focus{border-color:color-mix(in srgb, var(--accent) 58%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent)}.details-grid{grid-template-columns:minmax(0,1.4fr) minmax(100px,.6fr);gap:10px;display:grid}.details-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.action-button{border:1px solid var(--border);background:var(--surface-secondary);min-height:44px;color:var(--text);cursor:pointer;border-radius:13px;padding:10px 12px;font-weight:700}.action-button--success{background:color-mix(in srgb, #12b76a 12%, var(--surface));color:#039855;border-color:#12b76a40}.inline-confirm{background:var(--surface-secondary);border-radius:15px;gap:10px;padding:14px;display:grid}.inline-confirm p{margin:0;font-weight:700}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes backdrop-in{0%{opacity:0}}@keyframes voice-wave{to{height:36px}}@media (prefers-reduced-motion:reduce){.create-sheet,.details-sheet,.create-backdrop,.details-backdrop,.recording-wave span{animation:none}}.confirm-backdrop{z-index:30;padding:18px 16px calc(18px + var(--safe-bottom));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000085;align-items:end;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border);background:var(--surface);border-radius:22px;gap:16px;width:min(100%,520px);margin:0 auto;padding:20px;animation:.16s ease-out dialog-in;display:grid;box-shadow:0 24px 60px #00000047}.confirm-dialog h3{margin:0;font-size:20px}.confirm-dialog p{color:var(--muted);overflow-wrap:anywhere;margin:7px 0 0;line-height:1.45}.confirm-icon{background:color-mix(in srgb, var(--accent) 13%, var(--surface));width:44px;height:44px;color:var(--accent);border-radius:15px;place-items:center;font-size:20px;font-weight:800;display:grid}.confirm-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.confirm-button{cursor:pointer;border-radius:14px;min-height:46px;padding:11px 16px;font-weight:700}.confirm-button--secondary{border:1px solid var(--border);background:var(--surface-secondary);color:var(--text)}.confirm-button--primary{background:var(--accent);color:var(--accent-text);border:1px solid #0000}.confirm-button:disabled{opacity:.6;cursor:wait}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px)scale(.98)}}.state-card,.connection-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;box-shadow:0 8px 28px #1018280d}.state-card{text-align:center;align-content:center;justify-items:center;gap:10px;min-height:190px;padding:32px 24px;display:grid}.state-card p,.connection-card p{color:var(--muted);margin:0;line-height:1.45}.state-card button{background:var(--accent);color:var(--accent-text);cursor:pointer;border:0;border-radius:12px;padding:10px 16px}.state-card--error{border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.state-icon,.connection-mark{background:var(--surface-secondary);width:42px;height:42px;color:var(--accent);border-radius:14px;place-items:center;font-weight:800;display:grid}.state-card--error .state-icon{color:var(--danger)}.spinner{border:3px solid var(--surface-secondary);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.connection-card{align-items:center;gap:14px;padding:18px;display:flex}.connection-mark{background:color-mix(in srgb, #12b76a 14%, var(--surface));color:#039855;flex:none}.bottom-nav{z-index:10;max-width:760px;padding:8px 10px calc(8px + var(--safe-bottom));border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--muted);border-radius:13px;justify-items:center;gap:3px;padding:7px 3px;font-size:10px;font-weight:600;text-decoration:none;display:grid}.nav-item--active{background:color-mix(in srgb, var(--accent) 11%, transparent);color:var(--accent)}.nav-icon{font-size:19px;line-height:1}.standalone-error{place-items:center;min-height:100vh;padding:20px;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=680px){.app-header{padding-top:28px}.app-content{padding-inline:24px}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}
