:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:#16292c;background:#eef6f7;min-height:100vh;margin:0}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}:root{--bg:#eef6f7;--surface:#fff;--surface-rgb:255, 255, 255;--surface-2:#f4fafb;--ink:#16292c;--ink-2:#35494c;--ink-muted:#6c8386;--border:#d7e6e8;--current:#1f8a8c;--current-soft:#e3f4f3;--current-deep:#0f5657;--sync:#2f5da8;--sync-soft:#e6edfb;--sync-deep:#1c3a6e;--danger:#b3413c;--success:#2f8f5b;--card-alpha:.72}:root[data-theme=forest]{--bg:#f3f5ed;--surface:#fff;--surface-rgb:255, 255, 255;--surface-2:#eef2e4;--ink:#1f2a17;--ink-2:#37452a;--ink-muted:#74805f;--border:#dbe3cc;--current:#4c7a3f;--current-soft:#e4efdc;--current-deep:#2c4a22;--sync:#8a6a2e;--sync-soft:#f3ecd9;--sync-deep:#5c4720;--danger:#b3413c;--success:#3f8f52}:root[data-theme=sky]{--bg:#eef6fc;--surface:#fff;--surface-rgb:255, 255, 255;--surface-2:#f2f8fd;--ink:#142433;--ink-2:#33495c;--ink-muted:#6f89a0;--border:#d5e6f2;--current:#2f8fd0;--current-soft:#e2f1fb;--current-deep:#1c5c8a;--sync:#6a5acd;--sync-soft:#ece9fb;--sync-deep:#453a86;--danger:#c0453c;--success:#2f8f6b}:root[data-theme=dark]{--bg:#0d1615;--surface:#142322;--surface-rgb:20, 35, 34;--surface-2:#1a2b29;--ink:#eaf3f1;--ink-2:#c3d6d3;--ink-muted:#7fa19c;--border:#263a37;--current:#35b0ac;--current-soft:#1c3d3a;--current-deep:#0b201e;--sync:#6a93e0;--sync-soft:#1d2b46;--sync-deep:#14203a;--danger:#e2665f;--success:#4cbd85;--card-alpha:.85}#root{height:100vh}.app-shell{grid-template-columns:var(--nav-width,240px) 1fr;background:var(--bg);height:100vh;transition:grid-template-columns .15s;display:grid}.app-shell.nav-collapsed{--nav-width:56px}.app-main{overflow:auto}.auth-screen{background:linear-gradient(#eef6f7 0%,#dcedf0 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border-radius:16px;width:100%;max-width:360px;padding:32px;box-shadow:0 2px 20px #0f56571a}.auth-card h1{color:var(--current-deep);margin:0 0 4px;font-size:22px}.auth-subtitle{color:var(--ink-muted);margin:0 0 20px;font-size:14px}.auth-card form{flex-direction:column;gap:14px;display:flex}.auth-card label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:13px;display:flex}.auth-card input{border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:14px}.auth-card input:focus{border-color:var(--current);outline:none}.auth-card button[type=submit]{background:var(--current);color:#fff;border:none;border-radius:10px;margin-top:6px;padding:11px;font-size:14px;font-weight:600}.auth-card button[type=submit]:disabled{opacity:.6;cursor:default}.link-button{color:var(--current);background:0 0;border:none;padding:0;font-size:13px}.link-button.small{font-size:12px}.auth-card>.link-button{align-self:center;margin-top:14px}.form-error{color:var(--danger);font-size:13px}.form-error.small{padding:0 4px}.form-info{color:var(--success);font-size:13px}.app-nav{background:var(--current-deep);color:#eaf6f6;flex-direction:column;min-width:0;display:flex;position:relative}.app-nav-toggle{background:var(--current-deep);border:2px solid var(--bg);color:#eaf6f6;z-index:5;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:13px;line-height:1;display:flex;position:absolute;top:16px;right:-12px;box-shadow:0 1px 4px #0f292c4d}.app-nav-toggle:hover{background:var(--current);color:#fff}.app-nav-header{min-height:10px;padding:16px 20px 8px}.app-nav.collapsed .app-nav-header{padding:16px 10px 8px}.app-nav-brand{letter-spacing:.2px;white-space:nowrap;font-size:18px;font-weight:700}.app-nav-list{flex-direction:column;flex:1;gap:2px;min-width:0;padding:12px;display:flex}.app-nav.collapsed .app-nav-list{padding:12px 6px}.app-nav-item{color:#cfe7e7;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;transition:background .15s,transform .15s,color .15s;display:flex;overflow:hidden}.app-nav.collapsed .app-nav-item{justify-content:center;padding:10px 0}.app-nav-item:not(.soon):hover{background:#ffffff14;transform:translate(3px)}.app-nav.collapsed .app-nav-item:not(.soon):hover{transform:scale(1.06)}.app-nav-item.active{color:#fff;background:#ffffff29;font-weight:600}.app-nav-item.soon{color:#6f9491;cursor:not-allowed}.app-nav-item-label{align-items:center;gap:6px;display:flex;overflow:hidden}.soon-tag{text-transform:uppercase;letter-spacing:.05em;color:#cfe7e7;background:#ffffff24;border-radius:999px;flex-shrink:0;padding:1px 6px;font-size:9px}.app-nav-icon{text-align:center;width:18px}.app-nav-theme{padding:4px 12px 14px}.app-nav-theme-label{text-transform:uppercase;letter-spacing:.06em;color:#7fa7a6;margin-bottom:8px;font-size:10px}.app-nav-theme-row{gap:8px;display:flex}.theme-swatch{cursor:pointer;border:2px solid #ffffff40;border-radius:50%;width:20px;height:20px;padding:0;transition:transform .15s,border-color .15s}.theme-swatch:hover{transform:scale(1.15)}.theme-swatch.active{border-color:#fff}.app-nav-footer{border-top:1px solid #ffffff1f;padding:14px}.app-nav.collapsed .app-nav-footer{flex-direction:column;align-items:center;padding:14px 6px;display:flex}.app-nav-user{align-items:center;gap:10px;margin-bottom:10px;display:flex}.app-nav.collapsed .app-nav-user{margin-bottom:8px}.app-nav.collapsed .link-button{font-size:16px}.app-nav-name{color:#fff;font-size:13px;font-weight:600}.app-nav-id{color:#a9d4d3;font-size:11px}.app-nav-footer .link-button{color:#a9d4d3}.view-page{max-width:1000px;padding:32px 40px}.view-page h1{color:var(--ink);margin:0 0 4px;font-size:24px}.view-subtitle{color:var(--ink-muted);margin:0 0 24px;font-size:14px}.two-col,.today-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.card{background:rgba(var(--surface-rgb), var(--card-alpha));-webkit-backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:16px;padding:20px;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #0f292c1f}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.card{background:var(--surface)}}.card-wide{max-width:640px}.card-header{margin-bottom:12px}.card-header h2{color:var(--ink);margin:0;font-size:16px}.subheading{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);margin:16px 0 6px;font-size:12px}.empty-hint{color:var(--ink-muted);text-align:center;padding:12px 4px;font-size:13px}.empty-hint.small{padding:6px 0;font-size:12px}.inline-form{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.inline-form input[type=text]{border:1px solid var(--border);border-radius:8px;flex:1;min-width:140px;padding:9px 12px;font-size:14px}.inline-form input[type=date]{border:1px solid var(--border);color:var(--ink-2);border-radius:8px;padding:9px 10px;font-size:13px}.inline-form button{background:var(--current);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600}.inline-form button:disabled{opacity:.5}.task-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.task-row{border-radius:8px;align-items:center;gap:10px;padding:8px 4px;display:flex}.task-row:hover{background:var(--surface-2)}.task-row.done .task-title{color:var(--ink-muted);text-decoration:line-through}.task-title{color:var(--ink);flex:1;font-size:14px}.task-due{color:var(--ink-muted);font-size:12px}.task-check{border:1.5px solid var(--current);width:22px;height:22px;color:var(--current);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.task-check.done{background:var(--current);color:#fff}.row-delete{color:var(--ink-muted);opacity:0;background:0 0;border:none;padding:4px;font-size:11px}.task-row:hover .row-delete,.habit-row:hover .row-delete,.goal-row:hover .row-delete{opacity:1}.habit-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.habit-row{border-radius:8px;align-items:center;gap:10px;padding:8px 4px;display:flex}.habit-row:hover{background:var(--surface-2)}.habit-name{color:var(--ink);flex:1;font-size:14px}.habit-check{border:1.5px solid var(--sync);width:22px;height:22px;color:var(--sync);background:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.habit-check.done{background:var(--sync);color:#fff}.streak-pill{background:var(--sync-soft);color:var(--sync-deep);white-space:nowrap;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:600}.goal-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.goal-row{border-radius:8px;align-items:center;gap:10px;padding:8px 4px;display:flex}.goal-row:hover{background:var(--surface-2)}.goal-row.done .goal-title{color:var(--ink-muted);text-decoration:line-through}.goal-title{color:var(--ink);flex:1;font-size:14px}.messages-shell{grid-template-columns:300px 1fr;height:100%;display:grid}.messages-sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;padding-bottom:16px;display:flex;overflow-y:auto}.my-id-row{background:var(--current-soft);color:var(--current-deep);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;margin:16px 16px 12px;padding:10px 12px;font-size:12px;display:flex;position:relative}.my-id-row strong{letter-spacing:.5px;font-size:13px}.copied-pill{background:var(--ink);color:#fff;border-radius:20px;padding:3px 8px;font-size:11px;position:absolute;top:-22px;right:10px}.add-contact-form{gap:6px;padding:0 16px 10px;display:flex}.add-contact-form input{border:1px solid var(--border);border-radius:8px;flex:1;min-width:0;padding:8px 10px;font-size:13px}.add-contact-form button{background:var(--current);color:#fff;white-space:nowrap;border:none;border-radius:8px;padding:8px 12px;font-size:13px}.add-contact-form button:disabled{opacity:.6}.messages-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);justify-content:space-between;align-items:center;padding:12px 16px 6px;font-size:11px;display:flex}.new-sync-form{background:var(--sync-soft);border-radius:10px;flex-direction:column;gap:8px;margin:0 16px 10px;padding:12px;display:flex}.new-sync-form input[type=text]{border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13px}.new-sync-members{flex-direction:column;gap:4px;max-height:140px;display:flex;overflow-y:auto}.new-sync-member{color:var(--sync-deep);align-items:center;gap:8px;font-size:13px;display:flex}.new-sync-form button[type=submit]{background:var(--sync);color:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.conversation-list{margin-bottom:8px;padding:0 8px}.contact-list{padding:0 8px 8px}.contact-row{cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:10px 8px;display:flex}.contact-row:hover{background:var(--surface-2)}.contact-row.active{background:var(--current-soft)}.avatar{background:var(--current);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:600;display:flex}.avatar.sync{background:var(--sync);border-radius:12px}.contact-name{color:var(--ink);font-size:14px}.conversation-kind{color:var(--ink-muted);font-size:11px}.chat-window{background:var(--surface);flex-direction:column;height:100%;display:flex}.chat-empty{justify-content:center;align-items:center}.chat-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 20px;display:flex}.contact-id-small{color:var(--ink-muted);font-size:12px}.message-list{background:var(--bg);flex-direction:column;flex:1;gap:8px;padding:20px;display:flex;overflow-y:auto}.message-bubble{border-radius:14px;max-width:60%;padding:9px 13px;font-size:14px;line-height:1.4}.message-sender{color:var(--sync-deep);margin-bottom:2px;font-size:11px;font-weight:600}.message-bubble.theirs{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.message-bubble.mine{background:var(--current);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.message-time{opacity:.7;text-align:right;margin-top:4px;font-size:10px}.message-form{border-top:1px solid var(--border);background:var(--surface);gap:10px;padding:14px 20px;display:flex}.message-form input{border:1px solid var(--border);border-radius:10px;flex:1;padding:11px 14px;font-size:14px}.message-form button{background:var(--current);color:#fff;border:none;border-radius:10px;padding:0 20px;font-size:14px;font-weight:600}.message-form button:disabled{opacity:.6}@media (width<=900px){.two-col,.today-grid{grid-template-columns:1fr}}
