:root{--bg:#f5f7f5;--surface:#ffffffdb;--surface-solid:#fff;--surface-soft:#eef3ef;--line:#dbe5df;--line-strong:#c9d6cf;--ink:#1f2a26;--muted:#6f7d76;--faint:#9aa8a1;--green:#275e48;--green-2:#1e4538;--mint:#dff1e8;--blue:#426f94;--amber:#b97637;--rose:#a85a5f;--shadow:0 22px 60px #202c261c;--shadow-soft:0 12px 28px #202c2612;--radius:8px;color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, #dff1e88f, transparent 360px), linear-gradient(115deg, #426f9414, transparent 42%), var(--bg);letter-spacing:0;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}svg{flex:none}.boot-screen{place-items:center;min-height:100vh;display:grid}.boot-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:min(360px,100vw - 32px);box-shadow:var(--shadow);text-align:center;justify-items:center;gap:10px;padding:28px;display:grid}.boot-card svg{color:var(--green)}.boot-card span,.topbar span,.section-title p,.settings-card p,.record-card span,.rank-row span,.stat-card small{color:var(--muted)}.auth-page{background:radial-gradient(circle at 50% 12%,#fffffff2,#0000 34%),radial-gradient(circle at 20% 78%,#426f9424,#0000 32%),radial-gradient(circle at 78% 72%,#b976371f,#0000 30%),linear-gradient(#dff1e894,#f5f7f5f5);place-items:center;min-height:100vh;padding:28px;display:grid}.auth-card{border-radius:var(--radius);width:min(440px,100vw - 32px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffdb;border:1px solid #c9d6cfeb;gap:24px;padding:28px;display:grid}.auth-brand{align-items:center;gap:12px;display:flex}.auth-brand strong,.auth-brand span{display:block}.auth-brand span{color:var(--muted);margin-top:2px;font-size:12px}.auth-copy h1{margin:8px 0;font-size:30px;line-height:1.12}.auth-copy p{color:var(--muted);margin:0;line-height:1.7}.auth-form{gap:12px;display:grid}.auth-form .field{flex-direction:column;justify-content:center;align-items:stretch;gap:4px;min-height:58px;padding:8px 14px}.auth-form .field span{color:var(--muted);font-size:12px;font-weight:760}.auth-error{color:#9a3f48;margin:0;font-size:13px;line-height:1.5}.auth-submit{width:100%;margin-top:4px}.auth-switch{color:var(--green);background:0 0;border:0;justify-self:center;font-weight:760}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffb8;flex-direction:column;gap:28px;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border-radius:var(--radius);background:var(--green);color:#fff;place-items:center;width:36px;height:36px;font-weight:800;display:grid;box-shadow:0 12px 24px #275e4838}.brand strong,.brand span{display:block}.brand span{color:var(--muted);margin-top:2px;font-size:12px}.nav-list{gap:6px;display:grid}.nav-item,.mobile-nav-item{color:var(--muted);background:0 0;border:0;align-items:center;text-decoration:none;transition:all .18s cubic-bezier(.2,.8,.2,1);display:grid}.nav-item{border-radius:var(--radius);text-align:left;grid-template-columns:28px 1fr;height:42px;padding:0 12px 0 8px}.nav-item[draggable=true]{cursor:grab;grid-template-columns:16px 26px 1fr}.nav-item.dragging{opacity:.48;transform:scale(.985)}.nav-drag-handle{color:var(--faint);opacity:0;transition:opacity .16s cubic-bezier(.2,.8,.2,1)}.nav-item:hover .nav-drag-handle,.nav-item.dragging .nav-drag-handle{opacity:1}.nav-item:hover,.nav-item.active{background:var(--surface-soft);color:var(--green-2)}.nav-item.active{font-weight:760}.nav-item svg,.mobile-nav-item svg{width:18px;height:18px}.main{min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f7f5c7;justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:16px 36px;display:flex;position:sticky;top:0}.topbar h1{margin:3px 0 0;font-size:28px;line-height:1.15}.top-actions,.modal-actions,.action-buttons{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.user-menu{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc2;align-items:center;gap:8px;height:44px;padding-left:12px;display:inline-flex}.user-menu span{color:var(--green-2);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:180px;font-size:13px;font-weight:760;display:inline-flex;overflow:hidden}.user-menu .icon-btn{border-radius:0 var(--radius) var(--radius) 0;background:0 0;border-width:0 0 0 1px;width:42px;height:42px}.segmented{border:1px solid var(--line);background:var(--surface-solid);border-radius:var(--radius);grid-auto-flow:column;height:40px;display:inline-grid;overflow:hidden}.segmented button{min-width:62px;color:var(--muted);background:0 0;border:0;padding:0 14px}.segmented button.active{background:var(--green);color:#fff}.primary-btn,.ghost-btn,.icon-btn{border-radius:var(--radius);justify-content:center;align-items:center;gap:8px;height:44px;font-weight:760;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1),background .18s cubic-bezier(.2,.8,.2,1);display:inline-flex}.primary-btn{background:var(--green);color:#fff;border:0;padding:0 20px;box-shadow:0 14px 26px #275e4833}.primary-btn:hover{background:var(--green-2);box-shadow:0 18px 34px #275e483d}.ghost-btn,.icon-btn{border:1px solid var(--line);background:var(--surface-solid);color:var(--ink);padding:0 14px}.icon-btn{width:44px;padding:0}.primary-btn:active,.ghost-btn:active,.icon-btn:active{transform:translateY(1px)}.page{padding:28px 36px 36px}.today-grid{grid-template-columns:minmax(560px,1.3fr) minmax(380px,.86fr);align-items:start;gap:24px;display:grid}.focus-card,.metric-card,.record-card,.todo-card,.goal-setting-row,.goal-card,.journal-lock-card,.journal-library,.journal-note-card,.journal-editor-shell,.chart-card,.stat-card,.settings-card,.todo-composer,.goal-cloud-panel,.goal-manager,.goal-north-star,.inspiration-cloud-panel,.inspiration-editor,.inspiration-list-row,.chat-archive-hero,.chat-link-panel,.chat-link-card,.empty-state{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.focus-card{min-height:610px;box-shadow:var(--shadow);grid-template-rows:auto auto auto minmax(300px,1fr);gap:18px;padding:30px;display:grid;position:relative;overflow:hidden}.focus-card.break{background:radial-gradient(circle at 54% 18%,#426f941a,#0000 32%),#ffffffdb}.card-head,.section-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-title{margin-bottom:16px}.section-title h2{margin:0;font-size:18px}.section-title p{margin:5px 0 0;font-size:13px;line-height:1.6}.eyebrow{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:780}.state-pill{background:var(--mint);color:var(--green-2);border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:760;display:inline-flex}.state-pill:before{content:"";background:var(--green);border-radius:50%;width:8px;height:8px}.state-pill.running:before{animation:1.5s infinite pulse}.state-pill.break{color:#315f80;background:#426f941f}.state-pill.break:before{background:#426f94}@keyframes pulse{50%{box-shadow:0 0 0 8px #275e4800}}.intent-grid,.session-control-row{grid-template-columns:minmax(0,1fr) minmax(320px,380px);align-items:center;gap:14px;display:grid}.timer-action-buttons{grid-template-columns:minmax(136px,1.2fr) .75fr .75fr;gap:8px;display:grid}.timer-action-buttons .primary-btn,.timer-action-buttons .ghost-btn{height:40px;padding-left:12px;padding-right:12px}.field{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc7;align-items:center;gap:10px;min-height:52px;padding:0 14px;transition:all .18s cubic-bezier(.2,.8,.2,1);display:flex}.field:focus-within{border-color:#275e4875;box-shadow:0 0 0 4px #275e4814}.field input,.field select,.field textarea{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.field textarea{resize:vertical}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#ffffffc7;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:13px;font-weight:700;display:inline-flex}.chip.active{background:var(--mint);color:var(--green-2);border-color:#275e4833}.tag-picker{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tag-picker>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:780}.tag-picker .chip{box-shadow:0 10px 22px #202c260a}.tag-picker .chip.active{box-shadow:0 12px 24px #275e481a}.dot{background:var(--green);border-radius:50%;width:8px;height:8px}.dot.blue{background:var(--blue)}.dot.amber{background:var(--amber)}.dot.rose{background:var(--rose)}.timer-wrap{place-items:center;min-height:360px;display:grid}.hourglass-timer{justify-items:center;gap:14px;width:min(520px,100%);display:grid}.hourglass-stage{isolation:isolate;place-items:center;width:min(460px,100%);height:320px;display:grid;position:relative}.hourglass-stage:before{content:"";z-index:-1;filter:blur(12px);background:radial-gradient(circle at 50% 35%,#fffffffa,#dff1e847 38%,#0000 66%),radial-gradient(circle at 50% 76%,#d7a75f33,#0000 34%),radial-gradient(circle at 50% 80%,#275e482e,#0000 52%);border-radius:50%;position:absolute;inset:24px 22px}.hourglass-stage.is-running:before{animation:4.8s ease-in-out infinite hourglass-aura}@keyframes hourglass-aura{50%{opacity:.9;transform:scale(1.04)}}.hourglass-canvas{filter:drop-shadow(0 22px 28px #1f2a2629);position:absolute;inset:0}.hourglass-canvas canvas{display:block;width:100%!important;height:100%!important}.hourglass-readout{text-align:center;text-shadow:0 2px 18px #fffffff2;justify-items:center;width:min(260px,72%);display:grid}.hourglass-readout strong{width:100%;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:52px;line-height:1;display:block}.hourglass-readout span{color:var(--muted);margin-top:12px;font-size:14px;font-weight:700;display:block}.fixed-duration-pill{border-radius:var(--radius);background:var(--green);color:#fff;white-space:nowrap;border:1px solid #275e4833;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-weight:760;display:inline-flex;box-shadow:0 12px 24px #275e4829}.modal-duration{min-height:52px}.today-side{gap:22px;display:grid}.metric-row,.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.metric-card,.stat-card{min-height:92px;padding:14px}.metric-card strong,.stat-card strong{font-variant-numeric:tabular-nums;font-size:24px;display:block}.metric-card span,.stat-card span{color:var(--muted);margin-top:10px;font-size:12px;display:block}.goal-card{margin-top:10px;padding:14px}.goal-card>div:first-child{justify-content:space-between;gap:12px;font-size:13px;display:flex}.progress-track{background:#e7eee9;border-radius:999px;height:8px;margin-top:12px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--green);height:100%}.record-stack,.records-list,.rank-list,.insight-list{gap:10px;display:grid}.record-card{grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.record-card time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.record-card strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.record-card span{margin-top:5px;font-size:12px;display:block}.record-card em{background:var(--mint);color:var(--green-2);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:12px;font-style:normal;font-weight:760}.delete-btn,.text-btn{color:var(--green);background:0 0;border:0;font-weight:760}.delete-btn{color:var(--faint)}.delete-btn:hover{color:var(--rose)}.empty-state{color:var(--muted);border-style:dashed;padding:24px;line-height:1.7}.mini-week{border-top:1px solid var(--line);padding-top:18px}.mini-bars{grid-template-columns:repeat(7,1fr);align-items:end;gap:10px;height:120px;display:grid}.mini-bar{justify-items:center;gap:8px;display:grid}.mini-bar span{border-radius:5px 5px 2px 2px;width:100%;max-width:28px;min-height:4px}.mini-bar small{color:var(--muted)}.analytics-grid{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:22px;display:grid}.analytics-grid .stat-grid,.analytics-grid .wide{grid-column:1/-1}.analytics-grid .stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{gap:8px;min-height:126px;display:grid}.stat-card svg{color:var(--green)}.stat-card strong{font-size:30px}.chart-card{padding:20px}.chart-height{height:320px}.rank-row{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff9e;padding:14px}.rank-row>div:first-child{justify-content:space-between;gap:10px;display:flex}.pie-layout{grid-template-columns:170px minmax(0,1fr);align-items:center;gap:16px;display:grid}.legend{gap:10px;display:grid}.legend div{color:var(--muted);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:13px;display:grid}.legend span{border-radius:50%;width:10px;height:10px}.heatmap{grid-template-columns:repeat(14,minmax(0,1fr));gap:6px;display:grid}.heat-cell{aspect-ratio:1;background:#e7eee9;border:1px solid #275e4814;border-radius:4px;min-height:17px}.heat-cell span{border-radius:inherit;background:var(--green);width:100%;height:100%;display:block}.heat-cell.rest span{background:#dce4de}.heat-cell.light span{background:#8fa79b}.heat-cell.over span{background:var(--amber)}.insight-list p{color:var(--muted);border:1px solid var(--line);border-radius:var(--radius);background:#ffffff9e;margin:0;padding:14px;line-height:1.7}.records-page{gap:18px;display:grid}.goals-page{grid-template-columns:minmax(560px,1fr) minmax(340px,.42fr);align-items:start;gap:22px;display:grid}.inspiration-page{grid-template-columns:minmax(620px,1fr) minmax(320px,.36fr);align-items:start;gap:22px;display:grid}.chat-links-page,.practice-page{grid-template-columns:minmax(620px,1fr) minmax(340px,.42fr);align-items:start;gap:22px;display:grid}.chat-archive-hero,.practice-hero,.chat-link-panel,.practice-panel{box-shadow:var(--shadow-soft);padding:22px}.chat-archive-hero,.practice-hero{background:radial-gradient(circle at 12% 16%, #426f941f, transparent 32%), linear-gradient(135deg, #dff1e8db, #ffffffe0), var(--surface);grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(340px,.44fr);align-items:end;gap:18px;display:grid}.chat-archive-hero{background:radial-gradient(circle at 84% 18%, #b976371f, transparent 30%), radial-gradient(circle at 16% 18%, #426f9421, transparent 32%), linear-gradient(135deg, #ffffffeb, #dff1e8c2), var(--surface)}.chat-archive-hero h2,.practice-hero h2{margin:8px 0 0;font-size:36px}.chat-archive-hero p,.practice-hero p{max-width:720px;color:var(--muted);line-height:1.7}.chat-archive-stats,.practice-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.chat-link-panel.wide{grid-area:2/1;min-width:0}.chat-link-panel:not(.wide){grid-area:2/2}.practice-panel.wide{min-width:0}.chat-link-form,.practice-form,.practice-rule-list{gap:10px;display:grid}.chat-notes-field,.practice-description-field{align-items:flex-start;min-height:96px;padding-top:12px;padding-bottom:12px}.chat-notes-field textarea,.practice-description-field textarea{min-height:70px}.chat-toolbar{grid-template-columns:minmax(0,1fr) minmax(240px,340px);align-items:start;gap:14px;margin-bottom:18px;display:grid}.search-box{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc2;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.search-box svg{color:var(--muted)}.search-box input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.chat-link-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.chat-link-card{background:radial-gradient(circle at 88% 10%,#b976371a,#0000 28%),#ffffffc7;gap:12px;min-width:0;padding:16px;display:grid}.chat-link-head,.chat-card-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.chat-link-head span{background:var(--mint);min-height:28px;color:var(--green-2);border:1px solid #275e482e;border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:780;display:inline-flex}.chat-link-head time{color:var(--muted);font-size:12px;font-weight:740}.chat-title-input,.chat-source-input,.chat-notes-input{width:100%;min-width:0;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:10px;outline:0;transition:all .16s cubic-bezier(.2,.8,.2,1)}.chat-title-input{padding:4px 0;font-size:20px;font-weight:820}.chat-source-input{max-width:140px;color:var(--muted);padding:6px 8px;font-size:13px;font-weight:760}.chat-notes-input{resize:vertical;min-height:92px;color:var(--muted);background:#f5f7f594;padding:10px;line-height:1.65}.chat-title-input:focus,.chat-source-input:focus,.chat-notes-input:focus{background:#ffffffd1;border-color:#275e4847;box-shadow:0 0 0 4px #275e4814}.chat-link-url{width:fit-content;max-width:100%;color:var(--green);align-items:center;gap:6px;font-weight:760;text-decoration:none;display:inline-flex}.chat-link-url:hover{color:var(--green-2)}.practice-segmented{width:fit-content}.practice-calendar-board{grid-template-columns:repeat(auto-fit,minmax(328px,1fr));gap:14px;display:grid}.practice-calendar-board.compact{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.practice-calendar-card{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 16% 20%,#dff1e89e,#0000 38%),#ffffffbd;gap:12px;padding:14px;display:grid}.practice-calendar-head,.practice-calendar-foot{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.practice-calendar-head>div{gap:4px;min-width:0;display:grid}.practice-calendar-head strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.practice-calendar-head small,.practice-calendar-foot{color:var(--muted);font-size:12px;font-weight:740}.practice-calendar-head>span{background:var(--mint);min-width:48px;min-height:34px;color:var(--green-2);font-variant-numeric:tabular-nums;border:1px solid #275e482e;border-radius:999px;place-items:center;font-weight:860;display:grid}.practice-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.practice-cell{aspect-ratio:1;border:1px solid var(--line);width:100%;min-width:0;color:var(--muted);font-variant-numeric:tabular-nums;background:#eff4f1e0;border-radius:8px;place-items:center;gap:1px;font-size:12px;font-weight:820;display:grid}.practice-cell small{opacity:.78;font-size:9px;line-height:1}.practice-cell.done,.practice-cell.manual{background:var(--green);color:#fff;border-color:#275e484d;box-shadow:0 8px 16px #275e4829}.practice-cell.manual{background:linear-gradient(135deg, var(--green), var(--blue))}.practice-cell.missed{background:#a85a5f2e;border-color:#a85a5f38}.practice-cell.off,.practice-cell.future{opacity:.58;background:#ffffff9e}.practice-cell:disabled{cursor:default}.practice-calendar-board.compact .practice-calendar-card{padding:12px}.practice-calendar-board.compact .practice-cell{border-radius:7px;font-size:11px}.practice-calendar-board.compact .practice-calendar-head small,.practice-calendar-board.compact .practice-calendar-foot{display:none}.practice-rule-card{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffb8;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.practice-rule-card.inactive{opacity:.62}.practice-rule-card p{color:var(--muted);margin:5px 0;line-height:1.55}.practice-rule-card small{color:var(--green-2);font-weight:760}.practice-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.goal-cloud-panel{min-height:672px;box-shadow:var(--shadow);padding:28px;overflow:visible}.inspiration-cloud-panel{min-height:672px;box-shadow:var(--shadow);padding:28px}.goal-count-pill{background:var(--mint);min-height:34px;color:var(--green-2);border:1px solid #275e482e;border-radius:999px;align-items:center;padding:0 12px;font-size:13px;font-weight:760;display:inline-flex}.goal-cloud{border-radius:var(--radius);background:radial-gradient(circle at 46% 44%,#fffffff5,#dff1e875 36%,#0000 68%),radial-gradient(circle at 68% 72%,#426f941f,#0000 34%),radial-gradient(circle at 30% 72%,#b976371f,#0000 30%);min-height:560px;position:relative;overflow:visible}.inspiration-cloud{border-radius:var(--radius);background:radial-gradient(circle at 38% 42%,#fffffff5,#dff1e861 36%,#0000 66%),radial-gradient(circle at 74% 28%,#426f9424,#0000 30%),radial-gradient(circle at 72% 78%,#b9763721,#0000 32%),radial-gradient(circle at 25% 78%,#a85a5f1a,#0000 30%);min-height:560px;position:relative;overflow:visible}.inspiration-cloud:before{content:"";opacity:.76;pointer-events:none;border:1px solid #275e4814;border-radius:46% 54% 52% 48%;position:absolute;inset:34px}.inspiration-empty{color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid;position:absolute;inset:0}.inspiration-empty svg{color:var(--amber)}.goal-cloud:before{content:"";opacity:.7;border:1px solid #275e4814;border-radius:50%;position:absolute;inset:32px}.goal-word{box-sizing:border-box;max-width:min(720px,54%);color:var(--green);font-variant-numeric:tabular-nums;text-shadow:0 18px 38px #1f2a2614,0 1px #ffffffeb;transform-origin:50%;white-space:normal;overflow-wrap:anywhere;text-align:center;background:0 0;border:0;padding:6px;font-weight:860;line-height:.98;transition:filter .18s cubic-bezier(.2,.8,.2,1),text-shadow .18s cubic-bezier(.2,.8,.2,1);display:block;position:absolute}.goal-word.edge-left{text-align:left}.goal-word.edge-right{text-align:right}.inspiration-word{max-width:min(520px,64%);color:var(--green);text-shadow:0 16px 34px #1f2a2614,0 1px #fffffff0;white-space:normal;overflow-wrap:anywhere;text-align:center;background:0 0;border:0;padding:7px;font-weight:860;line-height:.98;transition:filter .18s cubic-bezier(.2,.8,.2,1),text-shadow .18s cubic-bezier(.2,.8,.2,1);display:block;position:absolute;translate:-50% -50%}.inspiration-word.edge-left{text-align:left;translate:0 -50%}.inspiration-word.edge-right{text-align:right;translate:-100% -50%}.inspiration-word:hover,.inspiration-word:focus-visible{filter:saturate(1.14);text-shadow:0 18px 42px #1f2a2621,0 0 24px #dff1e8e6}.goal-word:hover,.goal-word:focus-visible{filter:saturate(1.12);text-shadow:0 18px 42px #1f2a2621,0 0 26px #dff1e8e6}.goal-word.green{color:var(--green)}.goal-word.blue{color:var(--blue)}.goal-word.amber{color:var(--amber)}.goal-word.rose{color:var(--rose)}.inspiration-word.green,.goal-word.green{color:var(--green)}.inspiration-word.blue,.goal-word.blue{color:var(--blue)}.inspiration-word.amber,.goal-word.amber{color:var(--amber)}.inspiration-word.rose,.goal-word.rose{color:var(--rose)}.goal-tooltip,.inspiration-tooltip{z-index:30;border-radius:var(--radius);color:#fff;opacity:0;pointer-events:none;text-align:left;background:#1f2a26f0;gap:7px;width:300px;padding:14px;font-size:13px;font-style:normal;font-weight:500;line-height:1.6;transition:opacity .16s cubic-bezier(.2,.8,.2,1),transform .16s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,-6px);box-shadow:0 20px 48px #1f2a2642}.goal-tooltip:before,.inspiration-tooltip:before{content:"";background:inherit;width:16px;height:16px;position:absolute;top:-8px;left:50%;transform:translate(-50%)rotate(45deg)}.inspiration-word.edge-left .inspiration-tooltip{left:0;transform:translateY(-6px)}.inspiration-word.edge-left .inspiration-tooltip:before{left:26px}.inspiration-word.edge-right .inspiration-tooltip{left:auto;right:0;transform:translateY(-6px)}.inspiration-word.edge-right .inspiration-tooltip:before{left:auto;right:26px}.goal-word.edge-left .goal-tooltip{left:0;transform:translateY(-6px)}.goal-word.edge-left .goal-tooltip:before{left:26px}.goal-word.edge-right .goal-tooltip{left:auto;right:0;transform:translateY(-6px)}.goal-word.edge-right .goal-tooltip:before{left:auto;right:26px}.inspiration-word.edge-bottom .inspiration-tooltip{top:auto;bottom:calc(100% + 14px)}.inspiration-word.edge-bottom .inspiration-tooltip:before{top:auto;bottom:-8px}.goal-tooltip strong,.goal-tooltip small,.goal-tooltip p,.inspiration-tooltip strong,.inspiration-tooltip small,.inspiration-tooltip p{z-index:1;position:relative}.goal-tooltip strong,.inspiration-tooltip strong{font-size:15px;font-weight:820}.goal-tooltip small,.inspiration-tooltip small{color:var(--mint);font-weight:760}.goal-tooltip p,.inspiration-tooltip p{color:#ffffffd1;margin:0}.goal-word:hover .goal-tooltip,.goal-word:focus-visible .goal-tooltip,.inspiration-word:hover .inspiration-tooltip,.inspiration-word:focus-visible .inspiration-tooltip{opacity:1;transform:translate(-50%)}.goal-word.edge-left:hover .goal-tooltip,.goal-word.edge-left:focus-visible .goal-tooltip,.goal-word.edge-right:hover .goal-tooltip,.goal-word.edge-right:focus-visible .goal-tooltip,.inspiration-word.edge-left:hover .inspiration-tooltip,.inspiration-word.edge-left:focus-visible .inspiration-tooltip,.inspiration-word.edge-right:hover .inspiration-tooltip,.inspiration-word.edge-right:focus-visible .inspiration-tooltip{transform:translate(0)}.goal-side,.inspiration-side{gap:16px;display:grid}.goal-north-star,.goal-manager,.goal-setting-row,.inspiration-editor{padding:18px}.goal-north-star{background:linear-gradient(135deg, #dff1e8db, #ffffffdb), var(--surface);position:relative;overflow:hidden}.goal-north-star strong{margin-top:10px;font-size:30px;line-height:1.12;display:block}.goal-north-star p{color:var(--muted);margin:12px 0 0;line-height:1.7}.goal-target-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.goal-target-stats div{border-radius:var(--radius);color:var(--green-2);background:#ffffff9e;border:1px solid #275e481f;gap:2px;padding:12px;display:grid}.goal-target-stats span{font-variant-numeric:tabular-nums;font-size:32px;font-weight:860;line-height:1}.goal-target-stats small{color:var(--muted);font-weight:760}.goal-form,.inspiration-form{gap:10px;display:grid}.goal-description-field,.inspiration-description-field{align-items:flex-start;min-height:100px;padding-top:12px;padding-bottom:12px}.goal-description-field textarea,.inspiration-description-field textarea{min-height:74px}.inspiration-list{gap:10px;display:grid}.inspiration-list-row{min-height:46px;color:var(--ink);text-align:left;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.inspiration-list-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inspiration-list-row em{color:var(--muted);font-variant-numeric:tabular-nums;font-style:normal;font-weight:820}.goal-weight-field,.goal-tomato-field{gap:8px;display:grid}.goal-weight-field span,.goal-tomato-field span{color:var(--muted);font-size:13px;font-weight:760}.goal-weight-field input,.goal-setting-controls input{width:100%;accent-color:var(--green)}.goal-tomato-field div{border:1px solid var(--line);border-radius:var(--radius);min-height:44px;color:var(--green-2);background:#ffffffb8;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:0 12px;display:grid}.goal-tomato-field input,.goal-tomato-setting input{color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;font-weight:780}.goal-settings-list,.goal-setting-row{gap:10px;display:grid}.goal-setting-row.completed{background:linear-gradient(135deg, #eff4f1eb, #ffffffb8), var(--surface)}.goal-setting-row.completed input,.goal-setting-row.completed textarea{color:var(--muted)}.goal-setting-head{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.goal-setting-head input,.goal-setting-row textarea{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.goal-setting-head input{font-weight:820}.goal-setting-row textarea{resize:vertical;min-height:54px;color:var(--muted);line-height:1.6}.complete-goal-btn{border-radius:var(--radius);height:30px;color:var(--green-2);white-space:nowrap;background:#ffffffb8;border:1px solid #275e482e;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:820;display:inline-flex}.complete-goal-btn:hover{background:var(--mint);border-color:#275e4847}.complete-goal-btn.done{color:var(--muted);background:#eff4f1d1}.goal-completed-note{width:fit-content;color:var(--muted);background:#275e4814;border-radius:999px;align-items:center;padding:4px 9px;font-size:12px;font-weight:760;display:inline-flex}.goal-setting-controls{grid-template-columns:minmax(0,1fr) 116px auto auto;align-items:center;gap:12px;display:grid}.goal-setting-controls label{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;display:grid}.goal-setting-controls span{color:var(--green-2);font-variant-numeric:tabular-nums;font-weight:820}.goal-tomato-setting{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffad;min-height:34px;padding:0 9px}.goal-tomato-setting input{text-align:right;min-width:0}.weight-save-btn{border-radius:var(--radius);background:var(--mint);height:30px;color:var(--green-2);border:1px solid #275e4833;padding:0 10px;font-size:12px;font-weight:800}.weight-save-btn:disabled{color:var(--faint);background:#ffffffa3}.goal-row-colors{gap:6px;display:inline-flex}.dot-button{border:1px solid var(--line);background:#ffffffb3;border-radius:999px;place-items:center;width:26px;height:26px;display:grid}.dot-button.active{background:var(--mint);border-color:#275e484d}.todos-page{grid-template-columns:minmax(0,1.18fr) minmax(320px,.72fr);align-items:start;gap:22px;display:grid}.todo-main,.todo-side{gap:18px;display:grid}.todo-composer{padding:20px}.todo-form{grid-template-columns:minmax(260px,1fr) 180px 160px auto;align-items:center;gap:12px;display:grid}.todo-list{gap:10px;display:grid}.todo-list.compact .todo-card{grid-template-columns:34px minmax(0,1fr) auto;padding:12px}.todo-card{grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.todo-card.completed{background:#ffffff94}.todo-card.completed strong{color:var(--muted);-webkit-text-decoration:line-through #6f7d7670;text-decoration:line-through #6f7d7670}.todo-card strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.todo-card span{color:var(--muted);margin-top:5px;font-size:12px;display:block}.todo-check{background:var(--surface-soft);width:34px;height:34px;color:var(--green);border:0;border-radius:999px;place-items:center;display:grid}.todo-card.completed .todo-check{background:var(--mint)}.todo-start{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.todo-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.journal-lock-page{place-items:center;min-height:calc(100vh - 170px);display:grid}.journal-lock-card{width:min(540px,100%);box-shadow:var(--shadow);background:linear-gradient(145deg,#1f453814,#0000 42%),linear-gradient(#fffffff0,#eef3efc7);gap:18px;padding:28px;display:grid;position:relative;overflow:hidden}.journal-lock-card:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#275e4812 1px,#0000 1px),linear-gradient(#275e480f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#00000080,#0000 72%);mask-image:linear-gradient(#00000080,#0000 72%)}.journal-lock-card>*{z-index:1;position:relative}.journal-lock-card>svg{border-radius:var(--radius);background:var(--green);color:#fff;width:48px;height:48px;padding:10px;box-shadow:0 16px 30px #275e4838}.journal-lock-card h2{margin:6px 0 0;font-size:30px}.journal-lock-card p{color:var(--muted);margin:10px 0 0;line-height:1.8}.journal-lock-card form,.journal-note-list{gap:12px;display:grid}.journal-error{color:var(--rose);margin:0;font-size:13px;font-weight:760}.journal-workspace{grid-template-columns:minmax(260px,.28fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.journal-library{gap:14px;max-height:calc(100vh - 146px);padding:16px;display:grid;position:sticky;top:110px;overflow:hidden}.journal-library-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.journal-library-head h2{margin:4px 0 0;font-size:20px}.journal-note-list{padding-right:2px;overflow:auto}.journal-note-card{box-shadow:none;grid-template-columns:minmax(0,1fr) 30px;align-items:start;gap:8px;padding:10px;transition:border .18s cubic-bezier(.2,.8,.2,1),background .18s cubic-bezier(.2,.8,.2,1);display:grid}.journal-note-card.active{background:var(--mint);border-color:#275e4842}.journal-note-main{min-width:0;color:inherit;text-align:left;background:0 0;border:0;gap:5px;padding:0;display:grid}.journal-note-main time{color:var(--faint);font-variant-numeric:tabular-nums;font-size:12px;font-weight:760}.journal-note-main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.journal-note-main span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.5;overflow:hidden}.journal-editor-shell{background:linear-gradient(180deg, #fffffff0, #ffffffd1), var(--surface);min-height:calc(100vh - 146px);box-shadow:var(--shadow);grid-template-rows:auto auto minmax(520px,1fr);gap:12px;padding:26px min(5vw,64px);display:grid}.journal-editor-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.journal-date-field{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc7;align-items:center;min-height:40px;padding:0 10px;display:inline-flex}.journal-date-field input{color:var(--muted);background:0 0;border:0;outline:0}.journal-mode-switch{height:40px;margin-left:auto}.journal-mode-switch button{min-width:54px}.journal-title-input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;outline:0;padding:14px 0 18px;font-size:clamp(32px,4vw,52px);font-weight:780;line-height:1.12}.journal-title-input::placeholder{color:#b8c2bc}.journal-markdown-surface{min-height:0;display:grid}.markdown-editor,.markdown-preview{width:100%;min-height:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:17px;line-height:1.9}.markdown-editor{resize:none;font-family:ui-serif,Georgia,Songti SC,Noto Serif CJK SC,serif}.markdown-editor::placeholder{color:#b8c2bc}.markdown-preview{padding-bottom:36px;font-family:ui-serif,Georgia,Songti SC,Noto Serif CJK SC,serif;overflow:auto}.markdown-preview.empty{color:var(--faint)}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{color:var(--ink);margin:1.2em 0 .46em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,sans-serif;line-height:1.24}.markdown-preview h1{font-size:32px}.markdown-preview h2{font-size:24px}.markdown-preview h3{font-size:20px}.markdown-preview p{margin:0 0 1em}.markdown-preview ul,.markdown-preview ol{margin:0 0 1em;padding-left:1.35em}.markdown-preview li{margin:.28em 0}.markdown-preview blockquote{color:var(--muted);border-left:3px solid #275e4852;margin:1.1em 0;padding:.2em 0 .2em 1em}.markdown-preview blockquote p{margin:.2em 0}.markdown-preview pre{border:1px solid var(--line);border-radius:var(--radius);background:#eef3ef;padding:14px;overflow:auto}.markdown-preview code{color:var(--green-2);background:#eef3ef;border-radius:5px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92em}.markdown-preview pre code{background:0 0;padding:0}.markdown-preview a{color:var(--blue);text-underline-offset:4px;text-decoration-thickness:1px}.records-toolbar{grid-template-columns:minmax(260px,1fr) 180px 180px;gap:12px;display:grid}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-card{gap:12px;padding:20px;display:grid}.settings-card h2{margin:0;font-size:18px}.settings-card p{margin:0;line-height:1.7}.settings-card textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffc7;outline:0;min-height:140px;padding:12px}.locked-options{flex-wrap:wrap;gap:8px;display:flex}.locked-options span{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#ffffffb8;border-radius:999px;align-items:center;gap:8px;padding:6px 11px;font-size:13px;font-weight:720;display:inline-flex}.manager-form{gap:10px;display:grid}.manager-form .primary-btn{justify-self:start}.sound-settings{gap:12px;display:grid}.sound-setting-row{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffb8;gap:8px;padding:12px;display:grid}.sound-setting-row span{color:var(--green-2);align-items:center;gap:8px;font-size:13px;font-weight:780;display:inline-flex}.sound-setting-row input{width:100%;accent-color:var(--green)}.settings-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.color-options{flex-wrap:wrap;gap:8px;display:flex}.color-chip{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#ffffffb3;border-radius:999px;align-items:center;gap:8px;padding:6px 11px;font-size:13px;font-weight:720;transition:border .18s cubic-bezier(.2,.8,.2,1),background .18s cubic-bezier(.2,.8,.2,1),color .18s cubic-bezier(.2,.8,.2,1);display:inline-flex}.color-chip.active{background:var(--mint);color:var(--green-2);border-color:#275e483d}.db-path{color:var(--green-2);background:var(--mint);border-radius:var(--radius);padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1f2a2647;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);gap:14px;width:min(560px,100%);padding:22px;display:grid;box-shadow:0 30px 80px #1f2a2638}.modal-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.toast{z-index:60;border-radius:var(--radius);background:var(--green-2);color:#fff;max-width:340px;padding:12px 14px;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 40px #1f2a263d}.error-banner{border-radius:var(--radius);color:#7f3d43;background:#f0dddd;border:1px solid #a85a5f38;margin:18px 36px 0;padding:12px 14px}.mobile-nav{display:none}@media (width<=1120px){.app-shell{grid-template-columns:1fr}.main{padding-bottom:76px}.sidebar{display:none}.today-grid,.analytics-grid,.goals-page,.inspiration-page,.chat-links-page,.chat-archive-hero,.practice-page,.practice-hero,.todos-page,.journal-page{grid-template-columns:1fr}.topbar,.page{padding-left:22px;padding-right:22px}.focus-card{min-height:auto}.journal-library{max-height:none;position:static}.chat-link-panel.wide,.chat-link-panel:not(.wide){grid-area:auto}.chat-toolbar{grid-template-columns:1fr}.mobile-nav{z-index:40;border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;grid-template-columns:repeat(10,minmax(0,1fr));height:64px;display:grid;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 16px 40px #1f2a2629}.mobile-nav-item{color:var(--muted);place-items:center;gap:3px;font-size:9px}.mobile-nav-item.active{color:var(--green);font-weight:760}}@media (width<=720px){.topbar{min-height:72px;padding:16px 18px}.topbar h1{font-size:22px}.topbar .segmented,.topbar .icon-btn{display:none}.topbar .user-menu{padding-left:8px}.topbar .user-menu span{max-width:92px}.topbar .user-menu .icon-btn{display:inline-flex}.page{padding:16px}.focus-card{grid-template-rows:auto auto auto auto;gap:12px;min-height:auto;padding:16px}.intent-grid,.session-control-row,.records-toolbar,.goals-page,.inspiration-page,.todo-form,.journal-page,.settings-grid,.modal-grid{grid-template-columns:1fr}.tag-picker{flex-direction:column;align-items:flex-start;gap:8px}.journal-lock-page{min-height:calc(100vh - 132px)}.journal-lock-card,.journal-library,.journal-editor-shell,.journal-note-card{padding:16px}.journal-lock-card h2{font-size:24px}.journal-editor-shell{grid-template-rows:auto auto minmax(420px,1fr);min-height:calc(100vh - 168px)}.journal-editor-toolbar{align-items:stretch}.journal-editor-toolbar .ghost-btn,.journal-editor-toolbar .primary-btn,.journal-mode-switch,.journal-date-field{flex:45%}.journal-title-input{font-size:30px}.markdown-editor,.markdown-preview{font-size:16px}.goal-cloud-panel,.inspiration-cloud-panel{min-height:auto;padding:16px}.goal-cloud,.inspiration-cloud{min-height:520px}.goal-word,.inspiration-word{font-size:36px!important}.goal-tooltip,.inspiration-tooltip{width:min(280px,100vw - 42px)}.goal-setting-controls{grid-template-columns:1fr}.goal-setting-head{grid-template-columns:1fr;align-items:stretch}.complete-goal-btn{justify-content:center}.timer-wrap{min-height:clamp(304px,78vw,360px)}.hourglass-stage{width:100%;height:clamp(220px,56vw,286px)}.hourglass-stage:before{inset:32px 24px}.hourglass-readout strong{font-size:38px}.hourglass-readout span{font-size:13px}.action-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.action-buttons .primary-btn{order:-1;grid-column:1/-1}.timer-action-buttons{grid-template-columns:1.3fr .85fr .85fr;width:100%}.timer-action-buttons .primary-btn{order:0;grid-column:auto}.metric-row,.analytics-grid .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card:nth-child(4){grid-column:1/-1}.metric-card,.stat-card{min-height:82px;padding:12px 10px}.metric-card strong,.stat-card strong{font-size:20px}.record-card{grid-template-columns:46px minmax(0,1fr)}.record-card em,.delete-btn{grid-column:2;justify-self:start}.todo-card{grid-template-columns:38px minmax(0,1fr)}.todo-card .todo-start,.todo-card .delete-btn{grid-column:2;justify-self:start}.todo-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-week{display:none}.chart-height{height:280px}.pie-layout{grid-template-columns:1fr;justify-items:center}.heatmap{grid-template-columns:repeat(7,minmax(0,1fr))}.toast{bottom:86px;left:16px;right:16px}}
