:root{--ground:#F5F3EF;--surface:#FFFFFF;--surface-2:#F0EDE7;--ink:#1B2129;--ink-muted:#5C6672;--line:#E3DFD6;--accent:#1E7F5C;--accent-ink:#FFFFFF;--accent-soft:#E4F2EC;--warn:#B34632;--warn-soft:#F7E6E1;--info:#2B6CB0;--info-soft:#E4EDF7;--temp-fresh:#2E9E6B;--temp-reactivate:#C08A2E;--temp-followup:#3E6FD9;--temp-event:#8B5CC9;--temp-block:#8A93A0;--temp-cold:#5B7A9E;--shadow: 0 1px 2px rgba(27,33,41,.06), 0 8px 24px -12px rgba(27,33,41,.18)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--ground:#12161B;--surface:#1B2129;--surface-2:#212932;--ink:#E7EAEE;--ink-muted:#9AA5B1;--line:#2A313B;--accent:#33A87D;--accent-ink:#0B1210;--accent-soft:#173028;--warn:#D97B62;--warn-soft:#33201B;--info:#6FA3DE;--info-soft:#182838;--temp-fresh:#3FBE87;--temp-reactivate:#D9A94E;--temp-followup:#6E93E8;--temp-event:#A98AE0;--temp-block:#8A93A0;--temp-cold:#5B7A9E;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6)}}:root[data-theme=dark]{--ground:#12161B;--surface:#1B2129;--surface-2:#212932;--ink:#E7EAEE;--ink-muted:#9AA5B1;--line:#2A313B;--accent:#33A87D;--accent-ink:#0B1210;--accent-soft:#173028;--warn:#D97B62;--warn-soft:#33201B;--info:#6FA3DE;--info-soft:#182838;--temp-fresh:#3FBE87;--temp-reactivate:#D9A94E;--temp-followup:#6E93E8;--temp-event:#A98AE0;--temp-block:#8A93A0;--temp-cold:#5B7A9E;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,.label{font-family:Manrope,ui-sans-serif,system-ui,sans-serif;text-wrap:balance}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}button{font-family:inherit}::-webkit-scrollbar{width:0;height:0}#app{max-width:520px;margin:0 auto;width:100%;display:flex;flex-direction:column;min-height:100vh}header.topbar{position:sticky;top:0;z-index:10;background:var(--ground);padding:14px 16px 8px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.brand-right{display:flex;align-items:center;gap:10px}.count-stack{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}.count-due{color:var(--accent);font-weight:600}.daily-reminder{position:fixed;left:0;right:0;bottom:0;z-index:9;background:#f5f3eff0;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);overflow-y:auto;padding:16px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .daily-reminder{background:#12161bf0}}.dr-inner{max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.dr-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 16px 16px;box-shadow:var(--shadow)}.dr-title{font-family:Manrope,sans-serif;font-size:17px;font-weight:800;padding-right:30px}.dr-sub{font-size:13px;color:var(--ink-muted);margin-top:4px;line-height:1.45}.dr-x{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-muted);font-size:18px;line-height:1;cursor:pointer}.dr-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.dr-actions .primary-btn{padding:12px;font-size:14px}.dr-dismiss{padding:10px;border-radius:12px;border:none;background:var(--surface-2);color:var(--ink-muted);font-size:13px;font-weight:600;cursor:pointer}.dr-track{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin-top:10px}.dr-fill{height:100%;background:var(--accent);border-radius:99px}.top-sync{padding:6px 14px;border-radius:99px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.top-sync.unsaved{background:#ff1f1f;border-color:#ff1f1f;color:#fff;box-shadow:0 0 0 3px #ff1f1f40}.top-sync:disabled{opacity:.6;cursor:default}.brand h1{font-size:17px;font-weight:800;margin:0;letter-spacing:-.01em}.brand .count{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted);font-variant-numeric:tabular-nums}nav.tabs{display:flex;gap:3px;background:var(--surface-2);border-radius:10px;padding:3px}nav.tabs button{flex:1;border:none;background:transparent;color:var(--ink-muted);font-size:10.5px;font-weight:600;padding:7px 2px;border-radius:8px;cursor:pointer;line-height:1.25}nav.tabs button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}nav.tabs button.unsaved{color:var(--warn)}.sync-status{border-radius:12px;padding:14px;margin-bottom:14px}.sync-status.unsaved{background:var(--warn-soft)}.sync-status.unsaved .sync-status-head{color:var(--warn)}.sync-status.clean{background:var(--accent-soft)}.sync-status.clean .sync-status-head{color:var(--accent)}.sync-status-head{font-family:Manrope,sans-serif;font-size:17px;font-weight:800;letter-spacing:-.01em}.sync-status-sub{font-size:12.5px;color:var(--ink-muted);margin-top:3px;line-height:1.45}.sync-note{font-size:12px;color:var(--ink-muted);line-height:1.5;margin-top:10px}.sync-note.warn{color:var(--warn)}.sync-changes{margin-top:16px}.sync-changes .mb-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:6px}.sync-change-item{border-bottom:1px solid var(--line)}.sync-change-item:last-child{border-bottom:none}.sync-change-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px;font-size:13px;cursor:pointer}.sync-change-item.open .sync-change-row{font-weight:700}.sync-change-tag{font-size:11px;color:var(--ink-muted);white-space:nowrap}.sync-change-detail{padding:2px 2px 12px}.sync-field-empty{font-size:12.5px;color:var(--ink-muted);font-style:italic;margin-bottom:10px}.sync-field-row{padding:7px 0;border-top:1px dashed var(--line)}.sync-field-row:first-child{border-top:none}.sync-field-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:3px}.sync-field-vals{display:flex;align-items:baseline;gap:6px;font-size:13px;flex-wrap:wrap}.sync-field-before{color:var(--ink-muted);text-decoration:line-through}.sync-field-arrow{color:var(--ink-muted)}.sync-field-after{color:var(--ink);font-weight:600}.revert-btn{display:block;width:100%;margin-top:10px;padding:10px;border-radius:10px;border:1px solid var(--warn);background:transparent;color:var(--warn);font-size:12.5px;font-weight:700;cursor:pointer}main{flex:1;padding:16px 16px 100px}.banner{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:10px 12px;font-size:12.5px;margin-bottom:14px;line-height:1.4;font-weight:500}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.card+.card{margin-top:12px}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:99px;text-transform:uppercase;letter-spacing:.04em}.pill.fresh{background:color-mix(in srgb,var(--temp-fresh) 16%,transparent);color:var(--temp-fresh)}.pill.reactivate{background:color-mix(in srgb,var(--temp-reactivate) 16%,transparent);color:var(--temp-reactivate)}.pill.followup{background:color-mix(in srgb,var(--temp-followup) 16%,transparent);color:var(--temp-followup)}.pill.event{background:color-mix(in srgb,var(--temp-event) 16%,transparent);color:var(--temp-event)}.pill.block{background:color-mix(in srgb,var(--temp-block) 16%,transparent);color:var(--temp-block)}.pill.cold{background:color-mix(in srgb,var(--temp-cold) 16%,transparent);color:var(--temp-cold)}.pill.type-client{background:var(--info-soft);color:var(--info)}.pill.hungup{background:var(--warn-soft);color:var(--warn)}.chip.sel.hungup{background:var(--warn)}.pill.mr-good{background:var(--accent-soft);color:var(--accent)}.pill.mr-up{background:var(--info-soft);color:var(--info)}.pill.mr-bad{background:var(--warn-soft);color:var(--warn)}.pill.mem-hot{background:#d4a01738;color:#a77b00}.pill.heat-cooldown{background:#ece6f7;color:#6b4fa3}.pill.heat-hot{background:#ffe1d6;color:#d93a12}.pill.heat-heating{background:#ffe7cc;color:#c25e00}.pill.heat-warming{background:#fff0c2;color:#9a6a00}.pill.heat-warm{background:#fff6d6;color:#8a6d00}.pill.heat-cooling{background:#e1eefb;color:#2b6cb0}.pill.heat-freezing{background:#d8e6f7;color:#1f4e8c}.pill.heat-frozen{background:#e3e7ec;color:#4a5664}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .pill[class*=heat-]{filter:saturate(1.1);background:color-mix(in srgb,currentColor 22%,transparent)}}.pill.mem-angry{background:var(--warn-soft);color:var(--warn)}.pill.mem-remember{background:var(--accent-soft);color:var(--accent)}.pill.mem-forgot{background:color-mix(in srgb,var(--temp-block) 18%,transparent);color:var(--ink-muted)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .pill.mem-hot{color:#e8b923}}.pill.type-recruit{background:var(--accent-soft);color:var(--accent)}.rec-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:4px}.edit-icon-btn{flex:none;padding:7px 12px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:11.5px;font-weight:700;cursor:pointer}.rec-name{font-family:Manrope,sans-serif;font-size:21px;font-weight:800;letter-spacing:-.01em}.rec-number{font-size:14px;color:var(--ink-muted);margin-top:2px}.rec-pills{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:14px 0}.meta-item .label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:2px}.meta-item .value{font-size:13.5px;font-weight:500}.meta-item .value.mono{font-size:13px}.meta-item .value.empty{color:var(--ink-muted);font-weight:400}.meta-item .value.fu-early{color:var(--warn);font-weight:700}.meta-item .value.fu-due{color:var(--accent);font-weight:700}.info-box{background:var(--surface-2);border-radius:10px;padding:12px;font-size:13.5px;line-height:1.5;margin-top:6px;white-space:pre-wrap}.info-box.empty{color:var(--ink-muted);font-style:italic}textarea.queue-notes{display:block;width:100%;border:1px solid transparent;color:var(--ink);font-family:inherit;font-size:16px;resize:none;overflow:hidden;min-height:48px}textarea.queue-notes::placeholder{color:var(--ink-muted);font-style:italic}textarea.queue-notes:focus{outline:none;border-color:var(--accent);background:var(--surface)}.lang-hl{color:var(--warn);font-weight:700}.meeting-block{margin-top:10px}.meeting-block .mb-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:5px}.meeting-badge{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface-2);border-radius:10px;padding:11px 12px}.meeting-badge .mb-text{font-size:13.5px;font-weight:700}.meeting-badge .mb-sub{font-size:11.5px;color:var(--ink-muted);margin-top:2px}.meeting-badge.upcoming{background:var(--info-soft)}.meeting-badge.upcoming .mb-text{color:var(--info)}.meeting-badge.past .mb-text{color:var(--ink-muted)}.meeting-badge.res-good{background:var(--accent-soft)}.meeting-badge.res-good .mb-text{color:var(--accent)}.meeting-badge.res-blue{background:var(--info-soft)}.meeting-badge.res-blue .mb-text{color:var(--info)}.meeting-badge.res-bad{background:var(--warn-soft)}.meeting-badge.res-bad .mb-text{color:var(--warn)}.meeting-badge .mb-sub b{color:var(--ink);font-weight:600}.mb-more{float:right;text-transform:none;letter-spacing:0;font-weight:600;color:var(--info)}.mh-row{padding:9px 10px;border-radius:9px;background:var(--surface);margin-top:6px;border-left:3px solid var(--line)}.mh-row.res-good{border-left-color:var(--accent)}.mh-row.res-bad{border-left-color:var(--warn)}.mh-row.upcoming,.mh-row.res-blue{border-left-color:var(--info)}.mh-row.res-blue .mh-res{color:var(--info)}.mh-top{display:flex;gap:8px;align-items:baseline;font-size:13.5px}.mh-top .mono{color:var(--ink-muted);font-size:12.5px}.mh-res{margin-left:auto;font-size:12px;font-weight:800}.mh-row.res-good .mh-res{color:var(--accent)}.mh-row.res-bad .mh-res{color:var(--warn)}.mh-sub{font-size:11.5px;color:var(--ink-muted);margin-top:2px}.cal-btn{flex:none;padding:8px 12px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:11.5px;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap;display:inline-block}.remove-event-btn{display:block;width:100%;margin-top:8px;padding:10px;border-radius:10px;border:1px solid var(--warn);background:transparent;color:var(--warn);font-size:12.5px;font-weight:700;cursor:pointer}.call-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;padding:16px;border-radius:14px;border:none;background:var(--accent);color:var(--accent-ink);font-size:17px;font-weight:800;text-decoration:none;cursor:pointer;letter-spacing:-.01em}.call-btn svg{width:18px;height:18px}.result-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:10px}.result-row button{padding:12px 4px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:12.5px;font-weight:700;cursor:pointer}.result-row button.answered{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.result-row button.noanswer{background:var(--surface-2)}.result-row button.oos{background:var(--warn-soft);border-color:transparent;color:var(--warn)}.result-row button.ringless{background:color-mix(in srgb,var(--temp-block) 16%,transparent);border-color:transparent;color:var(--temp-block)}.answered-full{display:block;width:100%;margin-top:8px;padding:12px;border-radius:12px;border:none;background:var(--accent-soft);color:var(--accent);font-size:13.5px;font-weight:800;cursor:pointer}.sort-row{display:flex;align-items:center;gap:8px;margin:-2px 0 12px}.sort-row label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;white-space:nowrap}.sort-row select{flex:1;padding:9px 11px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c0f80;display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal-card{background:var(--surface);border-radius:16px;padding:20px;max-width:360px;width:100%;box-shadow:var(--shadow);max-height:85vh;overflow-y:auto}.modal-msg{font-size:14.5px;line-height:1.5;margin-bottom:16px}.modal-title{font-family:Manrope,sans-serif;font-size:16px;font-weight:800;margin-bottom:10px}.modal-number{font-size:22px;font-weight:700;text-align:center;padding:14px 10px;border-radius:10px;background:var(--surface-2);user-select:text;-webkit-user-select:text;letter-spacing:.01em}.modal-message{margin-top:10px;padding:12px;border-radius:10px;background:var(--surface-2);font-size:13.5px;line-height:1.5;white-space:pre-wrap;user-select:text;-webkit-user-select:text}.modal-hint{font-size:11.5px;color:var(--ink-muted);text-align:center;margin:10px 0 16px}.modal-actions{display:flex;flex-direction:column;gap:8px}.qf-hint{font-size:11.5px;color:var(--ink-muted);line-height:1.4;margin:-1px 0 8px}details.qf{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);margin-bottom:6px;overflow:hidden}details.qf summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:700;cursor:pointer}details.qf summary::-webkit-details-marker{display:none}details.qf summary:after{content:"▾";font-size:10px;color:var(--ink-muted)}details.qf[open] summary:after{content:"▴"}.qf-state{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--ink-muted);white-space:nowrap}.qf-state.on{color:var(--accent);font-weight:800}.qf-body{display:flex;flex-direction:column;gap:2px;padding:4px 12px 10px;border-top:1px solid var(--line)}.qf-check{display:flex!important;align-items:center;gap:10px;font-size:14px;padding:7px 0;cursor:pointer;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-weight:600!important;margin:0!important}.field .qf-check input{width:20px;height:20px;accent-color:var(--accent);margin:0;padding:0;flex:none}.util-row{display:flex;gap:8px;margin-top:10px}.util-row button{flex:1;padding:9px 6px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--ink-muted);font-size:11.5px;font-weight:600;cursor:pointer}form.editform{margin-top:14px;display:flex;flex-direction:column;gap:12px}.field label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:10px 11px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:14.5px;font-family:inherit}.field textarea{min-height:64px;resize:vertical}.field .hint{font-size:11px;color:var(--ink-muted);margin-top:4px}.field-copy-row{display:flex;gap:8px;align-items:stretch}.field-copy-row input{flex:1;min-width:0}.field-copy-btn{flex:none;padding:0 14px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:12px;font-weight:700;cursor:pointer}.field-clear-row{display:flex;gap:8px;align-items:stretch}.field-clear-row input{flex:1;min-width:0}.field-clear-btn{flex:none;width:38px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:17px;line-height:1;font-weight:700;cursor:pointer}.edit-section{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);overflow:hidden}.edit-section summary{padding:11px 12px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--ink-muted);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center}.edit-section summary::-webkit-details-marker{display:none}.edit-section summary:after{content:"▾";font-size:10px}.edit-section[open] summary:after{content:"▴"}.edit-section .section-body{padding:12px;display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--line)}.chiprow{display:flex;flex-wrap:wrap;gap:7px}.chip{padding:7px 12px;border-radius:99px;border:1px solid var(--line);background:var(--surface-2);font-size:12px;font-weight:600;cursor:pointer;color:var(--ink-muted)}.chip.sel{border-color:transparent;color:#fff}.chip.sel.fresh{background:var(--temp-fresh)}.chip.sel.reactivate{background:var(--temp-reactivate)}.chip.sel.followup{background:var(--temp-followup)}.chip.sel.event{background:var(--temp-event)}.chip.sel.block{background:var(--temp-block)}.chip.sel.cold{background:var(--temp-cold)}.chip.sel.type-recruit{background:var(--accent)}.chip.sel.type-client{background:var(--info)}.diff-list{margin-top:4px}.primary-btn{padding:14px;border-radius:12px;border:none;background:var(--accent);color:var(--accent-ink);font-size:15px;font-weight:800;cursor:pointer}.ghost-btn{padding:11px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--ink-muted);font-size:13px;font-weight:600;cursor:pointer}.search-box{margin-bottom:12px}.search-box input{width:100%;padding:11px 13px;border-radius:11px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14.5px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px;cursor:pointer}.list-row+.list-row{margin-top:8px}.list-row .lr-main .lr-name{font-weight:700;font-size:14.5px}.list-row .lr-main .lr-sub{font-size:12px;color:var(--ink-muted);margin-top:2px}.list-row .lr-main .lr-note{font-size:12px;color:var(--ink-muted);margin-top:2px;line-height:1.4}.list-row .lr-badge{font-size:11px;color:var(--ink-muted)}.lr-qvals{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:5px;font-size:11.5px;color:var(--ink-muted)}.lr-qvals b{color:var(--ink);font-weight:600;font-family:IBM Plex Mono,monospace}.lr-fu{font-size:12.5px;font-weight:700;margin-top:2px;white-space:nowrap;color:var(--ink-muted)}.lr-fu.fu-early{color:var(--warn)}.lr-fu.fu-due{color:var(--accent)}.browse-row{display:block;cursor:default;padding:12px 14px}.browse-row .lr-top{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.browse-row .lr-gap{font-size:11px;color:var(--ink-muted);margin-top:2px}.browse-row.open .lr-gap{color:var(--info)}.call-session-row{display:block;cursor:default;padding:12px 14px}.call-session-row .lr-top{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.day-group-row{display:block;cursor:default;padding:12px 14px}.day-group-row .lr-top{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.lr-detail{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.lr-detail-meta{font-size:11.5px;color:var(--ink-muted);margin-top:8px;line-height:1.5}.lr-detail-actions{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin-top:10px}.log-intro{font-size:12px;color:var(--ink-muted);line-height:1.5;margin:-2px 0 12px}.log-row{display:block;cursor:default;padding:12px 14px}.log-row .lr-top{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.log-date{font-weight:700;font-size:14px;white-space:nowrap}.log-date .sub{display:block;font-size:11px;font-weight:500;color:var(--ink-muted);margin-top:1px}.log-nums{flex:none;display:flex;gap:9px;font-size:11.5px;color:var(--ink-muted);white-space:nowrap}.log-nums span{white-space:nowrap}.log-nums b{color:var(--ink);font-weight:700;font-family:IBM Plex Mono,monospace}.dt-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.dt-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:var(--ink-muted)}.dt-span{font-size:11.5px;color:var(--ink-muted);font-family:IBM Plex Mono,monospace}.dt-grid{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}.dt-hour{display:flex;align-items:center;gap:8px}.dt-hlabel{flex:none;width:42px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-muted)}.dt-track{position:relative;flex:1;height:18px;border-radius:5px;background:var(--surface-2);overflow:hidden}.dt-hour.has .dt-track{background:var(--accent-soft)}.dt-hour.has .dt-hlabel{color:var(--ink);font-weight:600}.dt-half{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--line)}.dt-mark{position:absolute;top:3px;bottom:3px;width:3px;margin-left:-1px;border-radius:2px;background:var(--accent)}.dt-mark.invite{background:var(--info);top:1px;bottom:1px;width:5px;margin-left:-2px}.dt-mark.kt{background:var(--temp-event);top:1px;bottom:1px;width:5px;margin-left:-2px}.dt-count{flex:none;width:22px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted)}.dt-hour.has .dt-count{color:var(--ink);font-weight:600}.dt-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--ink-muted);margin-bottom:10px}.dt-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:-1px}.dt-note{font-size:11px;color:var(--ink-muted);margin:-4px 0 10px;line-height:1.4}.dt-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:10px}.dt-tabs button{padding:9px 4px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}.dt-tabs button.sel{background:var(--accent);color:var(--accent-ink);border-color:transparent}.dt-item{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-top:1px dashed var(--line);font-size:13px}.dt-item:first-child{border-top:none}.dt-item .t{flex:none;width:58px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted)}.dt-item .n{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dt-item .r{flex:none;font-size:11.5px;color:var(--ink-muted);text-align:right;max-width:45%}.cal-untimed{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:4px 0 8px;padding:8px 11px;border-radius:9px;background:var(--surface-2);border:1px dashed var(--ink-muted);cursor:pointer}.cal-untimed b{font-size:13px;font-weight:700}.cal-untimed span{font-size:11.5px;color:var(--ink-muted)}.cal-untimed.sel{outline:2px solid var(--ink);outline-offset:1px}.cal-scroll{height:340px;overflow-y:scroll;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);margin:4px 0 12px;padding-right:6px}.cal-scroll::-webkit-scrollbar{width:6px;height:0}.cal-scroll::-webkit-scrollbar-thumb{background:var(--ink-muted);border-radius:3px}.cal-scroll::-webkit-scrollbar-track{background:transparent}.cal-day{position:relative}.cal-line{position:absolute;left:50px;right:0;height:1px;background:var(--line)}.cal-hl{position:absolute;left:0;width:44px;transform:translateY(-50%);text-align:right;font-size:10.5px;color:var(--ink-muted);font-family:IBM Plex Mono,monospace}.cal-block{position:absolute;left:56px;right:2px;border-radius:7px;background:var(--info);color:#fff;padding:5px 9px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:1px;box-shadow:0 1px 2px #00000026}.cal-block b{font-size:13px;font-weight:700;line-height:1.2}.cal-block span{font-size:11px;opacity:.92;line-height:1.25}.cal-block.short{flex-direction:row;align-items:baseline;gap:6px;padding-top:4px}.cal-block.short span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-block.sel{outline:2px solid var(--ink);outline-offset:1px}.dt-empty{font-size:12.5px;color:var(--ink-muted);padding:6px 0 4px}.empty-state{text-align:center;color:var(--ink-muted);font-size:13.5px;padding:40px 20px;line-height:1.6}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);background:var(--ink);color:var(--ground);padding:10px 18px;border-radius:99px;font-size:13px;font-weight:600;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:50}.toast.show{opacity:1;transform:translate(-50%) translateY(-6px)}@media (prefers-reduced-motion: reduce){*{transition:none!important}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}nav.tabs{flex-wrap:wrap;row-gap:3px}nav.tabs button{flex:1 0 18%}nav.tabs .extras-btn.open{background:var(--surface);color:var(--ink)}nav.tabs.nav2 button.grp{flex:1 1 0;font-size:12.5px;font-weight:700;padding:9px 2px}nav.tabs.nav2 .subtabs{flex:1 0 100%;display:flex;gap:3px;padding:3px;margin-top:3px;border-radius:9px;background:var(--surface);border:1px solid var(--line)}nav.tabs.nav2 .subtabs button{flex:1 1 0;padding:8px 2px;font-size:11px;line-height:1.2}nav.tabs.nav2 .subtabs button.active{background:var(--accent-soft);color:var(--accent);box-shadow:none}nav.tabs .extras-menu{flex:1 0 100%;display:flex;gap:4px;padding:4px;margin-top:2px;border-radius:9px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}nav.tabs .extras-menu button{flex:1 1 0;padding:9px 4px;font-size:12px}nav.tabs .extras-menu button.active{background:var(--surface-2);color:var(--ink);box-shadow:none}.da-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:700;margin:22px 4px 8px}.lr-detail .da{margin-top:14px}:root{--ground:#F5F3EF;--surface:#FFFFFF;--surface-2:#F0EDE7;--ink:#1B2129;--ink-muted:#5C6672;--line:#E3DFD6;--accent:#1E7F5C;--accent-ink:#FFFFFF;--accent-soft:#E4F2EC;--warn:#B34632;--warn-soft:#F7E6E1;--info:#2B6CB0;--info-soft:#E4EDF7;--well:#2E9E6B;--well-soft:#E3F4EC;--improve:#B8842E;--improve-soft:#F7EEDD;--focus:#3E6FD9;--focus-soft:#E7EDFB;--calls-bar:#1E7F5C;--invites-bar:#3E6FD9;--shadow: 0 1px 2px rgba(27,33,41,.06), 0 8px 24px -12px rgba(27,33,41,.18)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--ground:#12161B;--surface:#1B2129;--surface-2:#212932;--ink:#E7EAEE;--ink-muted:#9AA5B1;--line:#2A313B;--accent:#33A87D;--accent-ink:#0B1210;--accent-soft:#173028;--warn:#D97B62;--warn-soft:#33201B;--info:#6FA3DE;--info-soft:#182838;--well:#3FBE87;--well-soft:#173028;--improve:#D9A94E;--improve-soft:#332A18;--focus:#6E93E8;--focus-soft:#1B2438;--calls-bar:#3FBE87;--invites-bar:#6E93E8;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6)}}:root[data-theme=dark]{--ground:#12161B;--surface:#1B2129;--surface-2:#212932;--ink:#E7EAEE;--ink-muted:#9AA5B1;--line:#2A313B;--accent:#33A87D;--accent-ink:#0B1210;--accent-soft:#173028;--warn:#D97B62;--warn-soft:#33201B;--info:#6FA3DE;--info-soft:#182838;--well:#3FBE87;--well-soft:#173028;--improve:#D9A94E;--improve-soft:#332A18;--focus:#6E93E8;--focus-soft:#1B2438;--calls-bar:#3FBE87;--invites-bar:#6E93E8;--shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6)}.da .card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.da .card+.card{margin-top:12px}.da .section-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:700;margin:0 0 10px}.da .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.da .stat-tile{background:var(--surface-2);border-radius:14px;padding:14px}.da .stat-tile .num{font-family:IBM Plex Mono,monospace;font-size:28px;font-weight:600;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}.da .stat-tile .lbl{font-size:11.5px;color:var(--ink-muted);font-weight:600;margin-top:6px}.da .summary-block{margin-top:2px}.da .summary-block+.summary-block{margin-top:10px}.da .summary-head{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.02em;margin-bottom:5px}.da .summary-dot{width:8px;height:8px;border-radius:50%;flex:none}.da .summary-body{font-size:13.5px;line-height:1.55;color:var(--ink);padding:11px 12px;border-radius:10px}.da .summary-body.empty{color:var(--ink-muted);font-style:italic}.da .well .summary-dot{background:var(--well)}.da .well .summary-head{color:var(--well)}.da .well .summary-body{background:var(--well-soft)}.da .improve .summary-dot{background:var(--improve)}.da .improve .summary-head{color:var(--improve)}.da .improve .summary-body{background:var(--improve-soft)}.da .focus .summary-dot{background:var(--focus)}.da .focus .summary-head{color:var(--focus)}.da .focus .summary-body{background:var(--focus-soft)}.da .today .summary-dot{background:var(--accent)}.da .today .summary-head{color:var(--accent)}.da .today .summary-body{background:var(--accent-soft)}.da .why .summary-dot{background:var(--info)}.da .why .summary-head{color:var(--info)}.da .why .summary-body{background:var(--info-soft)}.da .summary-meta{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.da .summary-meta .ts{font-size:11px;color:var(--ink-muted)}.da .regen-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:11px;font-weight:700;padding:6px 11px;border-radius:8px;cursor:pointer}.da .regen-btn:disabled{opacity:.5;cursor:default}.da .thinking{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-muted);padding:14px 0}.da .spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.da .streak-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.da .streak-row .streak-chip{flex-basis:22%!important}.da .streak-row .streak-chip{flex:1 1 0;padding:10px 3px;min-width:min-content}@media (max-width:340px){.da .streak-row .streak-chip .lbl{font-size:9.5px}}.da .streak-chip{flex:1;background:var(--surface-2);border-radius:12px;padding:11px 12px;text-align:center}.da .streak-chip .num{font-family:IBM Plex Mono,monospace;font-size:19px;font-weight:600}.da .streak-chip .lbl{font-size:10.5px;color:var(--ink-muted);font-weight:600;margin-top:3px}.da .goal-time-line{display:flex;align-items:center;justify-content:space-between;gap:10px}.da .gtl-new{flex:none;padding:5px 12px;font-size:12px;white-space:nowrap}.da .goal-missed-days{color:var(--warn);font-weight:700}.da .ff-toggle{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.35;margin:6px 0 10px;cursor:pointer}.da .ff-toggle input{margin-top:3px;width:18px;height:18px;flex:none}.da .ff-hint{color:var(--ink-muted);font-size:11.5px}.da .ms-st{display:inline-block;margin-left:8px;font-size:10.5px;font-weight:700;letter-spacing:.02em;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--ink-muted);vertical-align:1px;text-decoration:none}.da .ms-st-inProgress{color:var(--pace-orange);border-color:var(--pace-orange)}.da .ms-st-late{color:var(--warn);border-color:var(--warn)}.da .ms-st-done{color:var(--pace-green);border-color:var(--pace-green)}.da .ms-st-doneLate{color:var(--pace-blue);border-color:var(--pace-blue)}.da .ms-st-forfeit{color:var(--ink-muted);border-style:dashed}.da .ms-item.done .ms-text .ms-st{text-decoration:none}.da .ms-item.forfeit .ms-text{color:var(--ink-muted)}.da .ms-pop-text{font-size:14px;font-weight:600;margin:0 0 10px}.da .goal-time-line{font-size:12.5px;color:var(--ink-muted);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:10px}.da .goal-time-line b{color:var(--warn)}.da .goal-time-line.done b{color:var(--accent)}.da .age-chart{display:flex;flex-direction:column;gap:7px}.da .age-row{display:flex;align-items:center;gap:8px}.da .age-lbl{flex:none;width:92px;font-size:12px;color:var(--ink-muted);font-weight:600}.da .age-track{flex:1;height:16px;border-radius:5px;background:var(--surface-2);overflow:hidden}.da .age-bar{height:100%;border-radius:5px;background:var(--calls-bar)}.da .age-bar.muted{background:var(--ink-muted);opacity:.45}.da .age-n{flex:none;width:34px;text-align:right;font-size:12.5px;font-weight:600}.da .legend-row{display:flex;gap:16px;margin-bottom:10px}.da .legend-item{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-muted);font-weight:600}.da .legend-swatch{width:10px;height:10px;border-radius:3px}.da .chart-scroll{overflow-x:auto}.da .empty-state{text-align:center;color:var(--ink-muted);font-size:13px;padding:30px 14px;line-height:1.6}.da .search-box input{width:100%;padding:11px 13px;border-radius:11px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;margin-bottom:12px}.da .day-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 14px;cursor:pointer}.da .day-row+.day-row{margin-top:8px}.da .day-row .dr-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.da .dr-date{font-weight:700;font-size:14px}.da .dr-date .rel{color:var(--ink-muted);font-weight:500;font-size:12px;margin-left:5px}.da .dr-nums{display:flex;flex:none;gap:9px;font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--ink-muted)}.da .dr-nums span{white-space:nowrap}.da .dr-nums b{color:var(--ink);font-weight:600}.da .dt-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px}.da .dt-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:var(--ink-muted)}.da .dt-span{font-size:11.5px;color:var(--ink-muted);font-family:IBM Plex Mono,monospace}.da .dt-grid{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}.da .dt-hour{display:flex;align-items:center;gap:8px}.da .dt-hlabel{flex:none;width:42px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-muted)}.da .dt-track{position:relative;flex:1;height:18px;border-radius:5px;background:var(--surface-2);overflow:hidden}.da .dt-hour.has .dt-track{background:var(--accent-soft)}.da .dt-hour.has .dt-hlabel{color:var(--ink);font-weight:600}.da .dt-half{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--line)}.da .dt-mark{position:absolute;top:3px;bottom:3px;width:3px;margin-left:-1px;border-radius:2px;background:var(--calls-bar)}.da .dt-mark.invite{background:var(--focus);top:1px;bottom:1px;width:5px;margin-left:-2px}.da .dt-mark.kt{background:var(--improve);top:1px;bottom:1px;width:5px;margin-left:-2px}.da .dt-count{flex:none;width:22px;text-align:right;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-muted)}.da .dt-hour.has .dt-count{color:var(--ink);font-weight:600}.da .dt-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--ink-muted);margin-bottom:10px}.da .dt-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:-1px}.da .dt-note{font-size:11px;color:var(--ink-muted);margin:-4px 0 10px;line-height:1.4}.da .dt-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:10px}.da .dt-tabs .btn{padding:8px 4px;font-size:12px}.da .dt-tabs .btn.sel{background:var(--accent);color:var(--accent-ink);border-color:transparent}.da .dt-list{margin-bottom:12px}.da .dt-item{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-top:1px dashed var(--line);font-size:13px}.da .dt-item:first-child{border-top:none}.da .dt-item .t{flex:none;width:58px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted)}.da .dt-item .n{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.da .dt-item .r{flex:none;font-size:11.5px;color:var(--ink-muted);text-align:right;max-width:45%}.da .dt-empty{font-size:12.5px;color:var(--ink-muted);padding:6px 0 12px}.da .dr-detail{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.da .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.da .field-mini label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:4px}.da .field-mini input{width:100%;padding:8px 9px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:14px;font-family:IBM Plex Mono,monospace}.da .notes-list{display:flex;flex-direction:column;gap:6px;margin:10px 0}.da .note-item{font-size:12.5px;line-height:1.5;background:var(--surface-2);border-radius:9px;padding:8px 10px}.da .note-item .note-time{color:var(--ink-muted);font-size:10.5px;margin-right:6px}.da .add-note-row{display:flex;gap:8px}.da .add-note-row input{flex:1;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:13px}.da .btn{padding:9px 13px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:12.5px;font-weight:700;cursor:pointer}.da .btn.primary{background:var(--accent);color:var(--accent-ink);border:none}.da .btn:disabled{opacity:.5;cursor:default}.da .save-row{display:flex;gap:8px;margin-top:2px}.da .upload-card{border:1.5px dashed var(--line);border-radius:14px;padding:20px;text-align:center}.da .upload-card input[type=file]{display:none}.da .upload-btn{display:inline-flex;align-items:center;gap:7px;background:var(--accent);color:var(--accent-ink);border:none;padding:11px 18px;border-radius:11px;font-size:13.5px;font-weight:800;cursor:pointer}.da .upload-hint{font-size:11.5px;color:var(--ink-muted);margin-top:8px}.da .journal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.da .journal-header-hint{font-size:12px;color:var(--ink-muted);line-height:1.4}.da .journal-header .btn.primary{flex:none;white-space:nowrap}.da .journal-day-row{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;box-shadow:var(--shadow);transition:border-color .15s ease}.da .journal-day-row:hover,.da .journal-day-row.is-open{border-color:var(--accent)}.da .journal-day-row+.journal-day-row{margin-top:10px}.da .journal-day-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.da .journal-day-chevron{flex:none;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--ink-muted);transition:transform .18s ease}.da .journal-day-row.is-open .journal-day-chevron{transform:rotate(90deg);color:var(--accent)}.da .journal-day-sub{font-size:12.5px;color:var(--ink-muted);margin-top:6px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.da .journal-entry-detail{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:16px}.da .je-block .je-label{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:6px}.da .je-block .je-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.da .je-goal-slot{display:block;width:100%;text-align:left;margin-top:6px;padding:12px 14px;border-style:dashed;font-size:14px}.da .je-goal-slot.set{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.da .je-goal-slot.set span{display:block;font-size:11.5px;font-weight:600;color:var(--ink-muted);margin-top:2px}.da .je-goal-slot.checklist{margin-top:12px;border-style:solid}.da .sg-line-row{display:flex;gap:6px;align-items:stretch}.da .sg-line-row .sg-line{flex:1;min-width:0}.da .sg-line-row .sg-track{flex:none;padding:0 10px;font-size:12px;white-space:nowrap}.da .je-goals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.da .je-goals li{font-size:13.5px;line-height:1.4;display:flex;align-items:flex-start;gap:9px}.da .je-goals li:before{content:"";width:15px;height:15px;margin-top:1.5px;border-radius:5px;border:1.5px solid var(--ink-muted);flex:none;box-sizing:border-box}.da .je-goal-item{cursor:pointer}.da .je-goal-item .je-goal-text{flex:1}.da .je-goal-item .dg-status-tag{flex:none;margin-top:1.5px}.da .je-goal-item.je-done:before{content:"✓";display:flex;align-items:center;justify-content:center;background:var(--well);border-color:var(--well);color:#fff;font-size:10px;font-weight:800}.da .je-goal-item.je-done .je-goal-text{color:var(--ink-muted);text-decoration:line-through}.da .je-affirmation{position:relative;font-size:13.5px;font-style:italic;line-height:1.6;padding:12px 14px 12px 18px;border-radius:10px;background:var(--focus-soft);color:var(--ink);border-left:3px solid var(--focus)}.da .je-grateful{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;counter-reset:grateful}.da .je-grateful li{font-size:13.5px;line-height:1.4;display:flex;align-items:flex-start;gap:10px;counter-increment:grateful}.da .je-grateful li:before{content:counter(grateful);flex:none;width:18px;height:18px;border-radius:50%;background:var(--well-soft);color:var(--well);font-size:10.5px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}.da ul.coaching-list li:before{content:"";width:7px;height:7px;margin:6px 5px 0 6px;background:var(--info)}.da ol.coaching-list li:before{background:var(--info-soft);color:var(--info)}.da .dt-goal-list{display:flex;flex-direction:column;gap:2px;margin-top:8px;padding:6px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.da .dt-goal-check{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:14px;font-weight:600;cursor:pointer;border-top:1px dashed var(--line)}.da .dt-goal-check:first-child{border-top:none}.da .jt-head{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--ink-muted);margin:4px 2px 8px}.da .jt-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.da .jt-grid .btn{display:flex;align-items:center;gap:8px;justify-content:flex-start;padding:12px;border-radius:12px;font-size:13.5px;text-align:left;background:var(--surface);border:1.5px solid var(--line);color:var(--ink);box-shadow:var(--shadow)}.da .jt-grid .btn .ic{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex:none;background:color-mix(in srgb,var(--c) 14%,transparent)}.da .jt-grid .btn .tl{font-weight:800;color:var(--c);line-height:1.15}.da .jt-grid .btn .sb{display:block;font-size:10.5px;font-weight:600;color:var(--ink-muted);margin-top:1px}.da .jt-hint{font-size:11.5px;color:var(--ink-muted);line-height:1.45;margin:10px 2px 16px}.da .md-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.da .md-stat{background:var(--surface-2);border-radius:10px;padding:8px 4px;text-align:center}.da .md-stat .n{font-family:IBM Plex Mono,monospace;font-size:17px;font-weight:600}.da .md-stat .l{font-size:10px;color:var(--ink-muted);font-weight:700;margin-top:2px}.da .md-big{display:flex;align-items:baseline;gap:8px}.da .md-big .n{font-family:IBM Plex Mono,monospace;font-size:34px;font-weight:600;line-height:1}.da .md-big .l{font-size:13px;color:var(--ink-muted);font-weight:600}.da .md-sum{font-size:13.5px;line-height:1.55;margin-top:12px;padding:11px 12px;border-radius:10px;background:var(--focus-soft)}.da .md-sec-sub{font-size:12.5px;color:var(--ink-muted);text-align:center;margin-top:2px;line-height:1.45}.da .md-showbtn{width:100%;margin-top:12px}.da .why-statement{font-size:15px;line-height:1.65;font-weight:500;padding:14px 16px;border-radius:12px;background:var(--well-soft);border-left:4px solid var(--well)}.da .why-pillars{display:flex;flex-direction:column;gap:8px;margin-top:12px}.da .why-pillar{padding:10px 12px;border-radius:10px;background:var(--surface-2)}.da .why-pillar b{display:block;font-size:13.5px}.da .why-pillar span{font-size:12.5px;color:var(--ink-muted);line-height:1.45}.da .why-scenes{display:grid;grid-template-columns:1fr;gap:12px}.da .why-scene{border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}.da .why-scene .art{aspect-ratio:400/260;background:var(--surface-2);display:flex;align-items:center;justify-content:center;color:var(--ink-muted);font-size:12px}.da .why-scene .art img{width:100%;height:100%;display:block;object-fit:cover}.da .why-scene .cap{padding:10px 12px 12px}.da .why-scene .cap b{display:block;font-size:14px}.da .why-scene .cap span{font-size:12.5px;color:var(--ink-muted);line-height:1.45}.da .why-photos{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:10px}.da .why-photo{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--surface-2)}.da .why-photo img{width:100%;height:100%;object-fit:cover;display:block}.da .why-photo button{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;border:none;background:#0000008c;color:#fff;font-size:14px;line-height:1;cursor:pointer}@media (min-width:480px){.da .why-scenes{grid-template-columns:1fr 1fr}}.da .cc-log{display:flex;flex-direction:column;gap:10px;padding:12px 0 4px}.da .cc-msg{max-width:86%;padding:10px 13px;border-radius:16px;font-size:14.5px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.da .cc-msg.coach{align-self:flex-start;background:var(--info-soft);color:var(--ink);border-bottom-left-radius:5px}.da .cc-msg.me{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:5px}.da .cc-who{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--info);margin-bottom:3px}.da .cc-input{position:sticky;bottom:0;display:flex;gap:8px;align-items:flex-end;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));background:var(--ground);border-top:1px solid var(--line)}.da .cc-input textarea{flex:1;min-height:44px;max-height:160px;resize:none;font-size:16px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit}.da .cc-input .btn{flex:none;height:44px}.da .cc-transcript summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--info)}.da .cc-transcript .cc-log{padding-top:8px}.da .dg-pick{display:flex;align-items:flex-start;gap:10px;padding:11px 0;border-top:1px dashed var(--line);cursor:pointer}.da .dg-pick:first-child{border-top:none}.da .dg-pick input{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--accent)}.da .dg-pick-title{font-size:14px;font-weight:700;line-height:1.35}.da .dg-pick-meta{font-size:12px;color:var(--ink-muted);margin-top:3px;line-height:1.4}.da .dt-goal-check input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--focus)}.da .dt-goal-tags{display:flex;flex-wrap:wrap;gap:6px}.da .dt-goal-tag{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:99px;background:var(--focus-soft);color:var(--focus)}.da .je-qa .je-question{font-weight:800;font-size:13.5px;margin-bottom:8px;color:var(--ink)}.da .je-qa .je-answer{font-size:13.5px;line-height:1.6;color:var(--ink);padding:12px 14px;border-radius:10px;background:var(--well-soft);border-left:3px solid var(--well);white-space:pre-wrap}.da .je-reflect{font-size:13.5px;line-height:1.55;color:var(--ink);padding:11px 13px;border-radius:10px;white-space:pre-wrap}.da .je-reflect.well{background:var(--well-soft);border-left:3px solid var(--well)}.da .je-reflect.improve{background:var(--focus-soft);border-left:3px solid var(--focus)}.da .je-actions{display:flex;gap:8px;justify-content:flex-end}.da .je-actions .btn{padding:7px 14px;font-size:12.5px}.da .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c0f8c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.da .modal-card{background:var(--surface);border-radius:16px;padding:16px;max-width:400px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:var(--shadow)}.da .modal-card img{width:100%;border-radius:10px;display:block}.da .modal-title{font-family:Manrope,sans-serif;font-size:15px;font-weight:800;margin:12px 0 6px}.da .modal-card textarea{width:100%;min-height:60px;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:13.5px;font-family:inherit;resize:vertical;margin-top:6px}.da .modal-card input[type=text],.da .modal-card input[type=date]{width:100%;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:13.5px;font-family:inherit;margin-top:6px;box-sizing:border-box}.da .modal-actions{display:flex;gap:8px;margin-top:12px}.da .modal-actions .btn{flex:1}.da .modal-close{background:transparent;border:none;color:var(--ink-muted);font-size:13px;font-weight:700;cursor:pointer;float:right}.da .je-flabel{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:700;margin-top:14px}.da .je-flabel:first-of-type{margin-top:12px}.da .je-static{font-size:13.5px;font-weight:600;color:var(--ink);margin-top:6px}.da .goal-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;display:flex;gap:12px;align-items:center}.da .goal-card+.goal-card{margin-top:10px}.da .goal-thumb{width:52px;height:52px;border-radius:11px;flex:none;object-fit:cover;background:var(--surface-2)}.da .goal-thumb.placeholder{display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--ink-muted)}.da .goal-card-main{flex:1;min-width:0}.da .goal-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.da .goal-card-title{font-weight:700;font-size:14.5px}.da .goal-card-pct{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--ink-muted);font-weight:600}.da .goal-card-sub{font-size:11.5px;color:var(--ink-muted);margin-top:2px}.da .progress-track{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden;margin-top:8px}.da .progress-track.sm{height:5px;margin-top:6px}.da .progress-fill{height:100%;border-radius:99px;background:var(--accent);transition:width .3s}.da .progress-fill.over{background:var(--well)}.da{--pace-blue:#3E7BD9;--pace-orange:#E8892B;--pace-green:#2E9E6B}.da .progress-fill.pace-catchup{background:var(--pace-blue)}.da .progress-fill.pace-ontrack{background:var(--pace-orange)}.da .ms-list{display:flex;flex-direction:column}.da .ms-item{display:flex;align-items:flex-start;gap:10px;padding:9px 2px;border-top:1px dashed var(--line);cursor:pointer;font-size:13.5px;line-height:1.4}.da .ms-item:first-child{border-top:none}.da .ms-box{flex:none;width:18px;height:18px;margin-top:1px;border-radius:5px;border:1.5px solid var(--ink-muted);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff}.da .ms-item.done .ms-box{background:var(--well);border-color:var(--well)}.da .ms-item.done .ms-text{color:var(--ink-muted);text-decoration:line-through}.da .ms-text{flex:1;min-width:0}.da .ms-due{flex:none;font-size:11.5px;color:var(--ink-muted);margin-top:2px}.da .ms-due.late{color:var(--warn);font-weight:700}.da .ms-del{flex:none;border:none;background:transparent;color:var(--ink-muted);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.da .ms-add{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.da .ms-add input[type=text]{flex:1 1 100%;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:16px}.da .ms-add input[type=date]{flex:1;padding:8px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:15px}.da .pace-wrap{position:relative;max-width:330px;margin:0 auto}.da .pace-svg{width:100%;display:block;--needle:#9AA1A9}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .da .pace-svg{--needle:#000}}:root[data-theme=dark] .da .pace-svg{--needle:#000}.da .pace-center{position:absolute;left:0;right:0;bottom:22%;text-align:center;pointer-events:none}.da .pace-prob{font-size:26px;font-weight:700;line-height:1;background:var(--surface);display:inline-block;padding:2px 6px;border-radius:8px}.da .pace-zone{font-size:12px;font-weight:800;margin-top:2px}.da .pace-zone.catchup,.da .pace-scale .catchup,.da .pace-line.catchup{color:var(--pace-blue)}.da .pace-zone.ontrack,.da .pace-scale .ontrack,.da .pace-line.ontrack{color:var(--pace-orange)}.da .pace-zone.achieving,.da .pace-scale .achieving,.da .pace-line.achieving{color:var(--pace-green)}.da .pace-scale{display:flex;justify-content:space-between;max-width:260px;margin:2px auto 8px;font-size:11px;font-weight:700}.da .pace-ms{max-width:300px;margin:0 auto 10px;display:flex;flex-direction:column;gap:4px}.da .pace-ms-row{display:flex;align-items:center;gap:8px;font-size:12.5px}.da .pace-ms-n{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex:none}.da .pace-ms-t{flex:1;font-weight:700}.da .pace-ms-d{font-weight:500;color:var(--ink-muted)}.da .pace-ms-p{font-weight:800}.da .pace-ms-p.catchup{color:var(--pace-blue)}.da .pace-ms-p.ontrack{color:var(--pace-orange)}.da .pace-ms-p.achieving{color:var(--pace-green)}.da .pace-ms-cap{font-size:11px;color:var(--ink-muted);text-align:center;margin-top:2px}.da .ms-val{font-size:11px;color:var(--ink-muted);margin-left:auto;padding:0 4px}.da .pace-nums{text-align:center;font-size:12px;color:var(--ink-muted);margin-bottom:8px}.da .pace-line{font-size:14px;font-weight:700;line-height:1.4}.da .pace-note{font-size:13.5px;line-height:1.55;margin-top:8px;padding:11px 12px;border-radius:10px;background:var(--surface-2)}.da .pace-meta{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:11px;color:var(--ink-muted)}.da .new-goal-btn{width:100%;padding:13px;border-radius:12px;border:1.5px dashed var(--line);background:transparent;color:var(--ink-muted);font-size:13px;font-weight:700;cursor:pointer;margin-bottom:12px}.da .goal-drag-handle{cursor:grab;color:var(--ink-muted);font-size:17px;line-height:1;padding:4px 6px;flex:none;touch-action:none;-webkit-user-select:none;user-select:none}.da .dg-list{margin-top:8px}.da .dg-row{padding:8px 0;border-top:1px dashed var(--line);cursor:pointer;font-size:13px}.da .dg-row:first-child{border-top:none}.da .dg-row-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.da .dg-title-wrap{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden}.da .dg-title{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.da .dg-status-tag{font-size:10.5px;font-weight:700;white-space:nowrap;flex:none}.da .dg-status-tag.achieved{color:var(--well)}.da .dg-status-tag.missed{color:var(--warn)}.da .goal-status-badge{display:inline-block;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:99px;margin-top:6px}.da .goal-status-badge.achieved{background:var(--well-soft);color:var(--well)}.da .goal-status-badge.missed{background:var(--warn-soft);color:var(--warn)}.da .prevg-day-row{padding:8px 0;border-top:1px dashed var(--line)}.da .prevg-day-row:first-child{border-top:none}.da .prevg-day-label{font-size:11.5px;font-weight:700;color:var(--ink-muted);margin-bottom:4px}.da .prevg-day-empty{font-size:12px;color:var(--ink-muted)}.da .prevg-active-tag{display:inline-block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:99px;margin-left:7px;vertical-align:middle}.da .dg-pct{font-family:IBM Plex Mono,monospace;color:var(--ink-muted);font-size:12px;font-weight:600;white-space:nowrap}.da .goal-card.dragging{opacity:.55;box-shadow:none}.da .dropdown-head{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.da .chev-open{transform:rotate(90deg);color:var(--accent)}.da .month-row{background:var(--surface-2)}.da .goal-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.da .goal-title-row .section-title{flex:1;min-width:0}.da .goal-plus1-btn{flex:none;padding:5px 12px;font-size:12px;white-space:nowrap;margin-top:-2px}.da .goal-history-toggle{width:100%;margin-top:8px;padding:6px;font-size:12px}.da .goal-detail-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.da .back-btn{border:none;background:transparent;color:var(--ink-muted);font-size:13px;font-weight:700;cursor:pointer;padding:4px 0}.da .goal-banner{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:14px;margin-bottom:12px;background:var(--surface-2)}.da .goal-top-row{display:flex;gap:14px;align-items:flex-start;margin-top:2px}.da .goal-top-left{flex:1;min-width:0}.da .goal-top-photo{flex:none;width:100px;border-radius:12px;background:var(--surface-2);cursor:pointer;overflow:hidden}.da .goal-top-photo img{width:100%;height:auto;display:block;object-fit:contain}.da .goal-big-pct{font-family:IBM Plex Mono,monospace;font-size:34px;font-weight:600;line-height:1}.da .goal-big-sub{font-size:13px;color:var(--ink-muted);margin-top:4px}.da .progress-track.lg{height:12px;margin-top:14px}.da .goal-period-note{font-size:11.5px;color:var(--ink-muted);margin-top:8px}.da .entry-item{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:13px;padding:8px 0;border-top:1px dashed var(--line)}.da .entry-item:first-child{border-top:none}.da .entry-amt{font-family:IBM Plex Mono,monospace;font-weight:700;white-space:nowrap}.da .entry-amt.neg{color:var(--warn)}.da .entry-amt.pos{color:var(--well)}.da .entry-note{flex:1;color:var(--ink-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.da .entry-time{font-size:10.5px;color:var(--ink-muted);white-space:nowrap}.da .goal-photo-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:12px}.da .goal-photo{position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--line);aspect-ratio:1;background:var(--surface-2);cursor:pointer}.da .goal-photo img{width:100%;height:100%;object-fit:cover;display:block}.da .chat-box{display:flex;flex-direction:column;gap:8px}.da .chat-log{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;padding-right:2px}.da .chat-bubble{font-size:13px;line-height:1.5;padding:9px 11px;border-radius:12px;max-width:88%}.da .chat-bubble.user{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}.da .chat-bubble.assistant{align-self:flex-start;background:var(--surface-2);color:var(--ink);border-bottom-left-radius:4px}.da .chat-empty{font-size:12.5px;color:var(--ink-muted);font-style:italic;padding:6px 0}.da .chat-input-row{display:flex;gap:8px}.da .chat-input-row input{flex:1;padding:10px 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:13.5px}.da .chat-send-btn{border:none;background:var(--accent);color:var(--accent-ink);font-size:12.5px;font-weight:800;padding:0 16px;border-radius:11px;cursor:pointer}.da .chat-send-btn:disabled{opacity:.5;cursor:default}.da .sync-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px dashed var(--line)}.da .sync-status-row:first-child{border-top:none}.da .sync-status-label{font-size:13px;font-weight:600}.da .sync-status-sub{font-size:11.5px;color:var(--ink-muted);margin-top:1px}.da .sync-pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:99px;white-space:nowrap}.da .sync-pill.ok{background:var(--well-soft);color:var(--well)}.da .sync-pill.bad{background:var(--warn-soft);color:var(--warn)}.da .sync-pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.da .activity-item{display:flex;gap:10px;padding:9px 0;border-top:1px dashed var(--line)}.da .activity-item:first-child{border-top:none}.da .activity-icon{flex:none;width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--surface-2)}.da .activity-main{flex:1;min-width:0}.da .activity-text{font-size:13px;line-height:1.4}.da .activity-time{font-size:11px;color:var(--ink-muted);margin-top:2px}.da .sync-op-list{display:flex;flex-direction:column}.da .sync-op-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px dashed var(--line)}.da .sync-op-row:first-child{border-top:none}.da .sync-op-row.conflict{background:var(--warn-soft);margin:0 -18px;padding:9px 18px;border-top:none;border-radius:8px}.da .sync-op-text{font-size:12.5px;line-height:1.4;color:var(--ink)}.da .sync-revert-btn{flex:none;padding:6px 11px;font-size:11.5px}.da .conflict-tag{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--warn);margin-left:4px}.da .sync-actions{display:flex;gap:8px;margin-top:12px}.da .sync-actions .btn{flex:1}.da .goal-form .field-mini{margin-bottom:10px}.da .goal-form label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin-bottom:4px}.da .goal-form input[type=text],.da .goal-form input[type=number],.da .goal-form select{width:100%;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-size:14px;font-family:inherit}.da .goal-type-row{display:flex;gap:8px}.da .goal-type-row button{flex:1;padding:9px 6px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-muted);font-size:12.5px;font-weight:700;cursor:pointer}.da .goal-type-row button.sel{background:var(--accent);color:var(--accent-ink);border-color:transparent}.da .toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);background:var(--ink);color:var(--ground);padding:10px 18px;border-radius:99px;font-size:13px;font-weight:600;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:50}.da .toast.show{opacity:1;transform:translate(-50%) translateY(-6px)}.da a:focus-visible,.da button:focus-visible,.da input:focus-visible,.da textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.da .modal-actions{flex-direction:row}.da .je-genrow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.da .je-genrow .je-flabel{margin-top:0}.da .je-gen-btn{flex:none;padding:5px 10px;font-size:11.5px;border-radius:8px;color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}body.je-open #app{display:none}.da .je-page{display:block;max-width:520px;margin:0 auto;min-height:100vh;background:var(--ground)}.da .je-topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:var(--ground);border-bottom:1px solid var(--line)}.da .je-topbar-title{font-family:Manrope,sans-serif;font-weight:800;font-size:15px}.da .je-topbar .btn{padding:8px 16px;font-size:14px}.da .je-page .modal-card{max-width:none;max-height:none;overflow:visible;border-radius:0;box-shadow:none;background:transparent;padding:4px 16px 45vh}.da .je-page textarea,.da .je-page input[type=text],.da .je-page input[type=date],.da .je-page .field-mini input,.da .je-page .field-mini select,.da .je-page select,.da .je-page input[type=number]{font-size:16px}.da .goal-page .modal-card{padding-top:12px}.da .je-gen-note{font-size:11.5px;color:var(--ink-muted);line-height:1.45;margin-top:5px;font-style:italic}.da .modal-card textarea.je-question-input{min-height:44px;font-weight:600}input,select,textarea{font-size:16px!important}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}header.topbar{padding-top:max(12px,env(safe-area-inset-top))}.wide{width:100%}.muted{color:var(--ink-muted)}.primary-btn:disabled,.ghost-btn:disabled{opacity:.55;cursor:default}.primary-btn.danger{background:var(--warn);color:#fff}.ghost-btn.danger,.link-btn.danger{color:var(--warn)}.link-btn{background:none;border:none;padding:6px 0;color:var(--accent);font-weight:600;font-size:14px;cursor:pointer;font-family:inherit}.link-btn:disabled{opacity:.5}.form-error{margin-top:10px;padding:9px 11px;border-radius:9px;background:var(--warn-soft);color:var(--warn);font-size:13.5px}.row-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.row-actions>button{flex:1 1 140px}.empty-state.small{padding:10px 0;font-size:13px}.save-ind{font-size:11.5px;font-weight:700;padding:3px 8px;border-radius:999px;white-space:nowrap}.save-ind.saving{color:var(--ink-muted);background:var(--surface-2)}.save-ind.saved{color:var(--accent);background:var(--accent-soft)}.save-ind.offline{color:var(--info);background:var(--info-soft)}.save-ind.error{color:var(--warn);background:var(--warn-soft)}.brand-right{display:flex;align-items:center;gap:8px}.signin{padding:40px 16px 80px}.signin-brand{text-align:center;margin-bottom:22px}.signin-brand img{border-radius:14px}.signin-brand h1{font-size:24px;font-weight:800;margin:10px 0 4px}.signin-brand p{margin:0;color:var(--ink-muted)}.signin form .primary-btn{margin-top:12px}.signin-note{margin:0 0 12px;color:var(--ink-muted);font-size:14px}.signin-check{margin-bottom:12px}.signin-check-title{font-family:Manrope,sans-serif;font-weight:800;font-size:17px;margin-bottom:6px}.signin-links{display:flex;justify-content:space-between;margin-top:8px}.signin .field input{width:100%}.placeholder h2{margin:0 0 6px;font-size:18px}.placeholder p{margin:0 0 12px;color:var(--ink-muted);line-height:1.45}.settings{display:flex;flex-direction:column;gap:10px}.settings-section summary{font-size:15px}.section-sub{font-weight:500;color:var(--ink-muted);font-size:12.5px}.settings-hint{margin:0 0 12px;color:var(--ink-muted);font-size:13.5px;line-height:1.45}.settings-hint code{font-family:IBM Plex Mono,monospace;font-size:12.5px}.settings .field{margin-bottom:10px}.tmpl{padding:12px 0 14px;border-top:1px solid var(--line)}.tmpl:first-of-type{border-top:none;padding-top:2px}.tmpl-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.tmpl-head label{font-weight:800;font-size:14.5px;font-family:Manrope,sans-serif}.tmpl-when{font-size:12.5px;color:var(--ink-muted);margin:2px 0 8px}.tmpl textarea{line-height:1.45}.ph-chips{display:flex;flex-wrap:wrap;gap:6px}.ph-chips .chip{font-family:IBM Plex Mono,monospace;font-size:12px;padding:6px 9px}.tmpl-actions{display:flex;gap:16px;margin-top:4px}.tmpl-preview{white-space:pre-wrap;background:var(--surface);border:1px dashed var(--line);border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.45}.room-row{border:1px solid var(--line);border-radius:10px;padding:10px 10px 4px;margin-bottom:10px;background:var(--surface)}.info-box{white-space:pre-wrap;margin-bottom:10px}.fullpage{margin:-16px -16px 0}.fullpage-bar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 16px;background:var(--ground);border-bottom:1px solid var(--line)}.fullpage-bar .primary-btn,.fullpage-bar .ghost-btn{padding:9px 14px}.fullpage-title{text-align:center;font-weight:800;font-family:Manrope,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fullpage-body{padding:16px}.small-note{font-size:12px;color:var(--ink-muted);line-height:1.45;margin-top:6px}.tappable{cursor:pointer}button.chip{font-family:inherit}.queue-pos{font-size:11px;color:var(--ink-muted);font-weight:700;margin-bottom:10px}.link-btn.small{font-size:12.5px;padding:2px 0}.info-btn{border-color:var(--info)!important;color:var(--info)!important;display:block;width:100%;text-align:center;margin-top:8px}.accent-btn{color:var(--accent)!important;border-color:var(--accent)!important;font-weight:700!important}.lr-detail-actions.single{grid-template-columns:1fr}.lr-detail-actions .primary-btn{padding:11px}.pn-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.pn-tabs .ghost-btn.active,.sort-row .ghost-btn.active{border-color:var(--accent);color:var(--accent)}.sort-row .ghost-btn{padding:9px 12px;white-space:nowrap}.list-meta{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--ink-muted);margin:-4px 0 10px;flex-wrap:wrap}.list-meta span{margin-right:auto}.slot-row{display:block;margin-top:6px;cursor:pointer}.slot-row.picked{border-color:var(--accent)}.fields-sec{margin-top:12px;background:var(--surface)}.fields-day{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-weight:700;margin:12px 0 4px}.list-row.full{opacity:.75}.list-row[role=button]{cursor:pointer}.lr-sub.booked{color:var(--info);font-weight:600}.ev-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.ev-pills{display:flex;gap:6px}.cal-btn.small{padding:5px 9px;font-size:10.5px}.chev{display:inline-block;transition:transform .15s}.chev.up{transform:rotate(180deg)}.qf-sub{font-weight:500;color:var(--ink-muted);font-size:12px}.section-sub-normal{text-transform:none;letter-spacing:0;font-weight:600}.today-rows{margin-bottom:10px}.day-extras{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.day-extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stepper{display:grid;grid-template-columns:40px 1fr 40px;gap:6px}.stepper button{border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:18px;font-weight:700;cursor:pointer}.stepper input{text-align:center}.day-note{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px dashed var(--line);font-size:14px}.cal-page .card{text-align:center}.cal-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:800}.cal-page h2{margin:6px 0 4px}.cal-when{font-weight:700;margin:0 0 6px}.cal-where{color:var(--ink-muted);word-break:break-all;margin:0 0 14px}.cal-page .row-actions>*{flex:1 1 auto;width:100%}.link-as-btn{display:block;text-align:center;text-decoration:none}body.fullpage-open header.topbar{display:none}body.fullpage-open .fullpage-bar{padding-top:max(10px,env(safe-area-inset-top))}.cal-where a{color:var(--accent)}.da .row-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.da .small-btn{padding:3px 9px;font-size:11px;text-transform:none;letter-spacing:0;font-weight:700}.da .dg-status-tag.muted,.dg-status-tag.muted{color:var(--ink-muted)}.da .wide-btn{width:100%}.da .log-progress{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.da .je-static{white-space:pre-wrap;font-size:14px;line-height:1.45;padding:6px 0;border-bottom:1px dashed var(--line)}.da .clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;border-bottom:none;padding:2px 0 0;color:var(--ink-muted)}.da .je-block{cursor:pointer;padding:10px 2px;border-top:1px solid var(--line)}.da .je-block:first-child{border-top:none}.da .journal-day-row{margin-top:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.da .journal-day-row>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;font-weight:700;font-size:14px}.da .journal-day-row>summary::-webkit-details-marker{display:none}.da .journal-entry-detail{padding:0 12px 10px}.da details.month-row>summary{list-style:none;cursor:pointer}.da details.month-row>summary::-webkit-details-marker{display:none}.da .md-sec-sub{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0}.da .sg-line-row{display:flex;gap:8px;margin-bottom:8px}.da .sg-line-row input{flex:1;min-width:0;padding:10px 11px;border-radius:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink)}.da .je-page .field input,.da .field input{width:100%}.da .prevg-day-row{margin-top:8px}.da .ms-add{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.da .dropdown-head{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.da .journal-day-row>summary .journal-day-sub{white-space:nowrap;overflow:visible;max-width:none;flex:none;margin-left:10px}.da .field{margin-bottom:10px}.da .hint{font-size:12px;color:var(--ink-muted);line-height:1.4;margin-top:4px}.da .je-flabel{margin-top:6px}.day-extras-grid>*{min-width:0}input[type=date],input[type=time]{min-width:0;max-width:100%;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block}.list-row .lr-main .lr-name{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.list-row .lr-name .rec-pills{display:inline-flex;flex-wrap:wrap;gap:4px;margin:0}.list-row .lr-name .rec-pills .pill{font-size:10px;padding:2px 7px}.period-row{display:flex;gap:8px;align-items:stretch}.period-row>.btn{flex:1;min-width:0}.period-summary-btn.on{border-color:var(--accent);color:var(--accent)}.import-src{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.import-src .btn{font-size:13px;padding:10px 4px}.import-src .btn.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.import-row{display:flex;gap:10px;align-items:flex-start;padding:12px}.import-row+.import-row{margin-top:8px}.import-row.off{opacity:.55}.import-check input{width:20px;height:20px;margin-top:10px}.import-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.import-fields input{width:100%;min-width:0;font-size:16px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit}.import-two{display:grid;grid-template-columns:1fr 1fr;gap:6px}.import-flag{font-size:12px;font-weight:700;color:var(--improve)}.import-flag.dnc{color:var(--warn)}.audit-row{font-size:13px;line-height:1.4;padding:8px 0;border-bottom:1px solid var(--line);word-break:break-word}.audit-when{font-size:11px;color:var(--ink-muted)}.pub{max-width:760px;margin:0 auto;padding:16px 16px 40px}.pub-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pub-nav .ghost-btn{text-decoration:none}.pub-brand{font-weight:800;font-size:20px;color:var(--ink);text-decoration:none}.pub-hero{text-align:center;padding:28px 4px 20px}.pub-hero h1{font-size:30px;line-height:1.15;margin:0 0 12px}.pub-hero p{font-size:16px;line-height:1.5;color:var(--ink-muted);margin:0 auto 18px;max-width:520px}.pub-cta{display:inline-block;text-decoration:none;padding:14px 26px;font-size:16px;margin-bottom:8px}.pub-grid{display:grid;gap:12px}@media (min-width:640px){.pub-grid{grid-template-columns:repeat(3,1fr)}}.pub-grid .card+.card{margin-top:0}.pub h2{font-size:17px;margin:6px 0 8px}.pub ul{padding-left:18px;margin:0 0 6px;line-height:1.5;font-size:14px}.pub-icon{font-size:26px}.pub-trust{margin-top:12px}.pub-trust a,.pub-foot a{color:var(--accent)}.pub-doc h1{font-size:24px;margin:0 0 10px}.pub-doc h2{margin-top:20px}.pub-doc p{font-size:14.5px;line-height:1.6}.doc-note{background:var(--improve-soft);color:var(--ink);border-radius:10px;padding:10px 12px;font-size:13.5px;margin-bottom:12px}.pub-foot{text-align:center;font-size:12.5px;color:var(--ink-muted);margin-top:24px;line-height:1.8}.signin-legal{text-align:center;font-size:12.5px;margin-top:14px}.signin-legal a{color:var(--ink-muted)}.brand-left{display:flex;align-items:center;gap:10px;min-width:0}.nav-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:999px;cursor:pointer;font-family:inherit;white-space:nowrap}header.topbar.nav-hidden .brand{margin-bottom:0}.da .upload-btn{position:relative;overflow:hidden}.da .upload-btn input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer;font-size:0}.import-src{grid-template-columns:repeat(2,1fr)!important}.import-fields textarea{width:100%;min-width:0;font-size:16px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit;resize:none}.paste-box{width:100%;min-height:90px;font-size:16px;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:ui-monospace,monospace}.shortcut-steps li{margin-bottom:6px}.shortcut-steps code{font-size:12.5px;background:var(--surface-2);padding:1px 5px;border-radius:5px}body.fullpage-open .daily-reminder{display:none}.signin-or{display:flex;align-items:center;gap:10px;margin:14px 0;color:var(--ink-muted);font-size:12.5px}.signin-or:before,.signin-or:after{content:"";flex:1;height:1px;background:var(--line)}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border-radius:12px;border:1px solid #dadce0;background:#fff;color:#1f1f1f;font:600 15px/1.2 inherit;font-family:inherit;cursor:pointer}.google-btn:disabled{opacity:.6}.locked{position:relative}.locked-blur{filter:blur(5px);opacity:.55;pointer-events:none;-webkit-user-select:none;user-select:none;max-height:260px;overflow:hidden}.locked>.paywall{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92%,340px)}.locked>.paywall:only-child{position:static;transform:none;width:auto}.paywall{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center;box-shadow:var(--shadow)}.paywall-title{font-weight:800;font-size:14px;margin-bottom:4px}.paywall-sub{font-size:12.5px;color:var(--ink-muted);line-height:1.4;margin-bottom:10px}.paywall.compact{padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.paywall.compact .paywall-title{margin:0;font-size:13px}.paywall .primary-btn{padding:8px 14px;font-size:13px}.plan-grid{display:grid;gap:8px;margin:8px 0}.plan-card{border:1px solid var(--line);border-radius:12px;padding:12px}.plan-card.on{border-color:var(--accent);background:var(--accent-soft)}.plan-card b{font-size:15px}.plan-card .plan-price{float:right;font-weight:800}.plan-card p{margin:6px 0 0;font-size:12.5px;color:var(--ink-muted);line-height:1.4}.game-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.game-tabs::-webkit-scrollbar{display:none}.game-tab{flex:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 12px;font:600 13px/1.2 inherit;font-family:inherit;cursor:pointer;white-space:nowrap}.game-tab.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.game-box{position:relative;border-radius:14px;overflow:hidden;background:#000}.game-box iframe{width:100%;height:100%;border:0;display:block}.game-box.full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;border-radius:0;height:100dvh}.game-full-btn{position:absolute;left:50%;transform:translate(-50%);top:10px;z-index:2;border:1px solid rgba(255,255,255,.5);background:#00000073;color:#fff;border-radius:999px;padding:6px 11px;font:700 12px/1 inherit;font-family:inherit;cursor:pointer}.game-box.full .game-full-btn{top:max(10px,env(safe-area-inset-top))}.game-intro{font-size:12.5px;color:var(--ink-muted);margin:0 2px 8px;line-height:1.4}body.game-full header.topbar{display:none}.game-soon{text-align:center}.game-soon-icon{font-size:40px}.cal-block.meeting{background:var(--well)}
