:root,:root[data-theme=light]{color-scheme:light;--ground: #f1eff2;--surface: #ffffff;--sunk: #e8e5eb;--raised: #faf9fb;--ink: #1a151b;--ink-2: #453d48;--muted: #6d6572;--line: #dfdae3;--line-2: #c7c0cd;--accent: #c42f52;--accent-ink: #93213c;--accent-soft: #fae6eb;--on-accent: #ffffff;--event: #3e4a63;--event-soft: #e7eaf0;--ok: #2e7d57;--warn: #9a5b12;--danger-soft: #fff0f0;--shadow-s: 0 1px 2px rgb(26 21 27 / 5%), 0 7px 22px rgb(26 21 27 / 6%);--font-title: Bitter, Georgia, serif;--font-ui: Onest, "Segoe UI", system-ui, sans-serif;--font-mono: "Roboto Mono", Consolas, monospace;font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizeLegibility}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--ground: #141118;--surface: #1d1922;--sunk: #100d14;--raised: #252030;--ink: #efebf2;--ink-2: #c6bfcc;--muted: #968e9e;--line: #2c2634;--line-2: #403949;--accent: #ef6280;--accent-ink: #f7a0b2;--accent-soft: #331b24;--on-accent: #1a0b10;--event: #9dacc9;--event-soft: #1e2432;--ok: #57bc8c;--warn: #d3a34a;--danger-soft: #32191d;--shadow-s: 0 1px 2px rgb(0 0 0 / 38%), 0 8px 24px rgb(0 0 0 / 24%)}}:root[data-theme=dark]{color-scheme:dark;--ground: #141118;--surface: #1d1922;--sunk: #100d14;--raised: #252030;--ink: #efebf2;--ink-2: #c6bfcc;--muted: #968e9e;--line: #2c2634;--line-2: #403949;--accent: #ef6280;--accent-ink: #f7a0b2;--accent-soft: #331b24;--on-accent: #1a0b10;--event: #9dacc9;--event-soft: #1e2432;--ok: #57bc8c;--warn: #d3a34a;--danger-soft: #32191d;--shadow-s: 0 1px 2px rgb(0 0 0 / 38%), 0 8px 24px rgb(0 0 0 / 24%)}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--ground)}body{min-height:100vh;margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:224px minmax(0,1fr)}.side-panel{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:34px 24px 28px;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,var(--ground))}.brand{display:inline-flex;align-items:center;gap:11px;width:fit-content;min-height:44px}.brand__mark{width:11px;height:11px;flex:0 0 auto;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.brand__name{font-family:var(--font-title);font-size:28px;font-weight:700;letter-spacing:-.025em}.side-nav{display:grid;gap:6px;margin-top:46px}.nav-link{min-height:46px;display:flex;align-items:center;padding:0 14px;border-radius:11px;color:var(--muted);font-weight:600}.nav-link:hover{background:var(--raised);color:var(--ink)}.nav-link.is-active{background:var(--accent-soft);color:var(--accent-ink)}.connection{margin:auto 0 0;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--muted);font-size:12px}.connection:before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--ok)}.connection.is-offline:before{background:var(--warn)}.workspace{width:min(100%,1120px);margin:0 auto;padding:28px clamp(24px,5vw,64px) 72px}.mobile-head,.bottom-nav{display:none}.composer-panel{position:relative;z-index:5;margin-bottom:42px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-s)}.composer-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px}.composer-row input{min-width:0;min-height:48px;padding:0 14px;border:1px solid transparent;border-radius:11px;background:var(--raised);color:var(--ink)}.composer-row input::placeholder,.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.composer-row input:focus{border-color:var(--accent);background:var(--surface)}.primary-button,.voice-button,.secondary-button,.danger-button,.primary-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:0 17px;font-weight:600}.primary-button,.primary-link{background:var(--accent);color:var(--on-accent)}.primary-button:hover,.primary-link:hover{filter:brightness(1.04)}.voice-button,.secondary-button{border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2)}.voice-button:hover,.secondary-button:hover{border-color:var(--accent);color:var(--accent-ink)}.voice-button.is-listening,.secondary-button.is-listening{border-color:var(--accent);background:var(--accent);color:var(--on-accent);animation:listening 1.3s ease-in-out infinite}@keyframes listening{0%,to{box-shadow:0 0 0 0 var(--accent-soft)}50%{box-shadow:0 0 0 7px var(--accent-soft)}}.parse-area,.quick-examples{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;padding:0 2px}.parse-label,.quick-examples>span{color:var(--muted);font-size:12px}.chip,.quick-examples button{min-height:30px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--raised);color:var(--ink-2);font-size:12px}.quick-examples button{cursor:pointer}.quick-examples button:hover{border-color:var(--accent);color:var(--accent-ink)}.chip-title{border-color:var(--line-2);background:var(--surface);color:var(--ink);font-weight:600}.chip.is-accent{border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:var(--accent-soft);color:var(--accent-ink)}.chip.is-event{border-color:color-mix(in srgb,var(--event) 32%,transparent);background:var(--event-soft);color:var(--event)}.destination-chip{border-color:color-mix(in srgb,var(--ok) 35%,transparent);color:var(--ok)}.speech-message{margin:10px 2px 0;color:var(--accent-ink);font-size:13px}.loading,.error-banner{padding:14px 16px;border-radius:12px}.loading{background:var(--raised);color:var(--muted)}.error-banner{background:var(--danger-soft);color:var(--accent-ink)}.page-content{animation:page-in .16s ease-out}@keyframes page-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:30px}.page-head h1{margin:0;font-family:var(--font-title);font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.025em}.page-head p{margin:7px 0 0;color:var(--muted)}.nearest-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 18px;margin:0 0 32px;padding:17px 18px 17px 21px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow-s)}.nearest-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.nearest-card strong{grid-column:1;font-size:16px}.nearest-card>span:last-child{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--accent-ink);font-size:13px;font-weight:600}.nearest-date{color:var(--muted);font-family:var(--font-mono);font-size:11px}.content-section{margin-top:30px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:10px}.section-head h2{margin:0;font-family:var(--font-title);font-size:21px}.section-head>span{color:var(--muted);font-family:var(--font-mono);font-size:11px}.section-list{display:grid;gap:8px}.item-card,.date-row{position:relative;display:grid;align-items:center;gap:12px;min-height:66px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:0 1px 2px #1a151b08}.item-card{grid-template-columns:auto minmax(0,1fr) auto;padding:11px 13px 11px 17px}.item-card:before,.date-row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--event)}.item-card.type-deadline:before,.date-row.type-deadline:before{background:var(--accent)}.item-card.type-plain:before,.date-row.type-plain:before{background:var(--line-2)}.item-card:hover,.date-row:hover{border-color:var(--line-2)}.round-check{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:transparent}.round-check>span{width:19px;height:19px;display:block;border:1.5px solid var(--line-2);border-radius:50%;background:var(--surface)}.round-check:hover>span{border-color:var(--accent)}.is-done .round-check>span{border:5px solid var(--accent);background:var(--surface)}.item-main{min-width:0;display:grid;gap:3px;padding:7px 0}.item-main strong{overflow-wrap:anywhere}.item-meta{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.is-done .item-main{opacity:.56}.is-done .item-main strong{text-decoration:line-through}.text-button{min-height:44px;max-width:150px;border-radius:10px;padding:7px 11px;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:600}.text-button:hover{background:color-mix(in srgb,var(--accent-soft) 78%,var(--accent))}.empty-state{margin:0;padding:22px;border:1px dashed var(--line-2);border-radius:13px;color:var(--muted);text-align:center}.date-row{grid-template-columns:62px auto minmax(0,1fr) auto;padding:10px 16px 10px 12px}.date-stamp{display:grid;justify-items:center;border-right:1px solid var(--line)}.date-stamp strong{font-family:var(--font-title);font-size:27px;line-height:1}.date-stamp span{color:var(--muted);font-family:var(--font-mono);font-size:10px;text-transform:uppercase}.countdown{color:var(--muted);font-family:var(--font-mono);font-size:11px;text-align:right}.overdue-section .section-head h2,.date-row.is-overdue .countdown{color:var(--accent-ink)}.date-row.is-overdue{background:var(--danger-soft)}.details-card,.settings-card,.login-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-s)}.details-card{display:grid;gap:22px;padding:clamp(18px,4vw,34px)}.field-grid,.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field>span{color:var(--muted);font-size:12px;font-weight:600}.field input,.field textarea,.field select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--raised);color:var(--ink)}.field textarea{min-height:148px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);background:var(--surface)}.field-wide{grid-column:1 / -1}.details-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.attachments-section{display:grid;gap:14px;padding-top:22px;border-top:1px solid var(--line)}.attachments-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.attachments-head h2{margin:0;font-family:var(--font-title);font-size:19px}.attachments-head p,.photo-state{margin:4px 0 0;color:var(--muted);font-size:12px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.photo-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--raised)}.photo-preview{width:100%;aspect-ratio:4 / 3;display:grid;place-items:center;overflow:hidden;padding:0;background:var(--sunk);color:var(--muted);font-size:12px}.photo-preview img{width:100%;height:100%;display:block;object-fit:cover}.photo-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px}.photo-caption>span{min-width:0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.photo-caption button,.login-address-button{min-height:36px;padding:0 8px;background:transparent;color:var(--accent-ink);font-size:12px;font-weight:600}.photo-viewer{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:60px 18px 24px;background:color-mix(in srgb,var(--sunk) 94%,transparent)}.photo-viewer>button{position:absolute;top:max(14px,env(safe-area-inset-top));right:18px;min-height:44px;border-radius:10px;padding:0 16px;background:var(--surface);color:var(--ink);font-weight:600}.photo-viewer img{max-width:min(100%,1200px);max-height:100%;border-radius:12px;object-fit:contain}.save-note,.local-note{color:var(--muted);font-size:12px}.danger-zone{display:flex;justify-content:flex-end;padding-top:18px;border-top:1px solid var(--line)}.danger-button{background:var(--danger-soft);color:var(--accent-ink)}.danger-button:hover{background:var(--accent-soft)}.settings-card{padding:20px}.settings-stack{display:grid;gap:16px}.setting-summary{display:grid;gap:3px}.setting-summary span,.setting-description,.setting-address{margin:0;color:var(--muted);font-size:12px}.setting-address span{color:var(--ink-2);overflow-wrap:anywhere}.server-address-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.settings-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.password-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px}.password-form .field-message{grid-column:1 / -1}.field-message{margin:0;color:var(--ok);font-size:12px}.field-message.is-error{color:var(--accent-ink)}.settings-logout{width:fit-content}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice{min-height:44px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:var(--raised);cursor:pointer}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.choice input{accent-color:var(--accent)}.local-note{margin-top:28px;padding:14px 16px;border-radius:12px;background:var(--raised)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,460px);padding:clamp(28px,7vw,48px)}.login-card h1{margin:34px 0 10px;font-family:var(--font-title);font-size:30px}.login-card p{margin:0 0 24px;color:var(--muted)}.loading-card h1{margin-bottom:8px}.login-form{display:grid;gap:14px}.login-form .primary-button{width:100%}.login-address-button{width:fit-content;min-height:44px;padding:0;text-align:left}.login-card .login-offline-note{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:12px}@media(max-width:900px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.side-panel{padding-inline:18px}.workspace{padding-inline:28px}.field-grid,.settings-grid,.password-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.app-shell{display:block;min-height:100vh}.side-panel{display:none}.workspace{width:100%;padding:max(14px,env(safe-area-inset-top)) 14px calc(88px + env(safe-area-inset-bottom))}.mobile-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-inline:4px}.mobile-head .brand__name{font-size:25px}.composer-panel{margin-bottom:28px;padding:10px;border-radius:14px}.composer-row{grid-template-columns:minmax(0,1fr) auto}.composer-row input{grid-column:1 / -1}.voice-button,.primary-button{width:100%}.quick-examples{display:none}.bottom-nav{position:fixed;z-index:20;inset:auto 0 0;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-link{min-height:48px;display:grid;place-items:center;border-radius:10px;color:var(--muted);font-size:12px;font-weight:600}.bottom-link.is-active{background:var(--accent-soft);color:var(--accent-ink)}.page-head{margin-bottom:22px}.page-head h1{font-size:32px}.nearest-card{grid-template-columns:minmax(0,1fr)}.nearest-card>span:last-child{grid-column:1;grid-row:auto;margin-top:5px}.item-card{grid-template-columns:auto minmax(0,1fr);padding-right:10px}.item-card .text-button{grid-column:2;justify-self:start;max-width:none;min-height:36px}.date-row{grid-template-columns:52px auto minmax(0,1fr);gap:7px;padding-inline:8px}.date-row .countdown{grid-column:3;justify-self:start;text-align:left}.field-grid,.settings-grid{grid-template-columns:1fr}.attachments-head,.settings-actions{align-items:stretch;flex-direction:column}.attachments-head .secondary-button,.settings-actions .primary-button,.settings-actions .secondary-button,.settings-logout{width:100%}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.server-address-row,.password-form{grid-template-columns:1fr}.details-card,.settings-card{border-radius:14px}.details-actions,.danger-zone{align-items:stretch;flex-direction:column}.details-actions .secondary-button,.danger-button{width:100%}}@media(max-width:420px){.photo-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
