:root{color-scheme:light;--cream: #f4f1ea;--cream-2: #fbfaf6;--cream-3: #ece7db;--ink: #2b2a28;--ink-soft: #5d5a54;--line: #e2ddd1;--line-strong: #d3ccba;--teal: #2f8f8b;--teal-dark: #246d6a;--teal-darker: #1b5350;--terracotta: #c2724e;--health: #5b9b6b;--work: #b8893f;--play: #c2724e;--love: #c2566f;--health-text: #3f7a4e;--work-text: #7d5a1f;--play-text: #8f4a2a;--love-text: #96324a;--surface: var(--cream);--surface-raised: var(--cream-2);--surface-sunken: var(--cream-3);--text: var(--ink);--text-muted: var(--ink-soft);--border: var(--line);--border-strong: var(--line-strong);--accent: var(--teal);--accent-text: var(--teal-dark);--accent-text-hover: var(--teal-darker);--accent-soft: color-mix(in srgb, var(--teal) 12%, transparent);--accent-line: color-mix(in srgb, var(--teal) 32%, transparent);--danger-text: #9c3d2a;--success-text: var(--health-text);--font-sans: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Fraunces", Georgia, "Times New Roman", serif;--text-xs: .75rem;--text-sm: .8125rem;--text-md: .9375rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.55;--measure: 68ch;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--space-9: 3rem;--space-10: 4rem;--space-11: 5rem;--space-12: 6rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;--radius: var(--radius-md);--shadow-pop: 0 4px 12px -2px rgba(43, 42, 40, .1), 0 12px 32px -8px rgba(43, 42, 40, .14);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-fast: .12s;--dur-mid: .22s;--content-width: 880px;--header-height: 60px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}[id]{scroll-margin-top:calc(var(--header-height) + var(--space-4))}body{font-family:var(--font-sans);font-size:var(--text-base);background:var(--surface);color:var(--text);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent-text)}img,svg{max-width:100%}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}.skip-link{position:absolute;left:var(--space-3);top:var(--space-3);z-index:100;padding:var(--space-2) var(--space-4);background:var(--accent-text);color:#fff;font-weight:600;font-size:var(--text-md);border-radius:var(--radius-sm);text-decoration:none;transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{max-width:var(--content-width);margin:0 auto;padding:0 var(--space-5)}.site-header{border-bottom:1px solid var(--border);background:var(--surface-raised);position:sticky;top:0;z-index:40}.site-header .wrap{display:flex;align-items:center;gap:var(--space-4);min-height:var(--header-height)}.brand{font-family:var(--font-serif);font-weight:600;font-size:var(--text-lg);text-decoration:none;color:var(--text);display:inline-flex;align-items:baseline;gap:var(--space-2);white-space:nowrap;letter-spacing:-.01em}.brand small{font-family:var(--font-sans);font-weight:600;color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}.brand-mark{width:21px;height:21px;flex:0 0 auto;align-self:center;fill:none;stroke:var(--accent-text);stroke-width:1.5}.brand-mark .needle{fill:var(--accent-text);stroke-linejoin:round}nav.main{display:flex;align-items:center;gap:var(--space-1);margin-left:auto}nav.main a{text-decoration:none;color:var(--text-muted);font-weight:600;font-size:var(--text-md);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}nav.main a:hover{color:var(--accent-text);background:var(--accent-soft)}nav.main a[aria-current=page]{color:var(--accent-text);background:var(--accent-soft)}.who{display:inline-flex;align-items:center;gap:var(--space-3);padding-left:var(--space-4);margin-left:var(--space-2);border-left:1px solid var(--border);flex:0 0 auto}.who .who-email{color:var(--text-muted);font-size:var(--text-sm);max-width:18ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-toggle{display:none;margin-left:auto;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer}.nav-toggle:hover{background:var(--surface-sunken)}.nav-toggle .bar{display:block;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform var(--dur-mid) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.nav-toggle .bar+.bar{margin-top:4px}.nav-toggle[aria-expanded=true] .bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle[aria-expanded=true] .bar:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.linkbtn{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;padding:0;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--accent-text);cursor:pointer;white-space:nowrap;min-height:24px;text-decoration:none}.linkbtn:hover{text-decoration:underline}.iconbtn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;padding:0;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;line-height:1;cursor:pointer;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.iconbtn:hover{color:var(--danger-text);background:color-mix(in srgb,var(--danger-text) 8%,transparent)}main{padding:var(--space-8) 0 var(--space-11)}h1{font-family:var(--font-serif);font-weight:600;font-size:var(--text-3xl);line-height:var(--leading-tight);margin:0 0 var(--space-2);letter-spacing:-.02em;text-wrap:balance}.subtitle{color:var(--text-muted);margin:0 0 var(--space-7);font-size:var(--text-lg);line-height:var(--leading-snug);max-width:var(--measure);text-wrap:pretty}h2.section{color:var(--accent-text);font-size:var(--text-md);font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin:var(--space-8) 0 var(--space-3)}h3{font-size:var(--text-xl);line-height:var(--leading-snug);margin:0 0 var(--space-2)}main p,main li{text-wrap:pretty}.prose{max-width:var(--measure)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:inherit;font-weight:600;font-size:var(--text-md);line-height:1.2;min-height:40px;padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent-text);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-text-hover)}.btn-ghost{background:var(--surface-raised);border-color:var(--border-strong);color:var(--text)}.btn-ghost:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--text-muted)}.btn-sm{min-height:32px;font-size:var(--text-sm);padding:var(--space-1) var(--space-4)}.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6)}.card>p,.card>ul:not(.taglist):not(.optbox) li{max-width:var(--measure)}.card-accent{border-color:var(--accent-line)}.popover{background:var(--surface-raised);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.gauge{margin:var(--space-5) 0}.gauge-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.gauge-title{font-weight:700;font-size:var(--text-base);display:flex;align-items:center;gap:var(--space-2)}.gauge-level{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.gauge-level .delta{margin-left:var(--space-2);font-size:var(--text-xs)}.delta.up{color:var(--success-text)}.delta.down{color:var(--love-text)}.bar{position:relative;height:26px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.bar-fill{position:absolute;inset:0 auto 0 0;border-radius:7px 0 0 7px}.bar .ticks{position:absolute;inset:0;display:flex;pointer-events:none}.bar .ticks span{flex:1;border-right:1px dashed rgba(43,42,40,.18)}.bar .ticks span:last-child{border-right:none}.scale{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1);letter-spacing:.04em}.gauge-reflection{margin:var(--space-3) 0 0;color:var(--text-muted);font-size:var(--text-md);white-space:pre-wrap;max-width:var(--measure)}.area-health .bar-fill{background:var(--health)}.area-work .bar-fill{background:var(--work)}.area-play .bar-fill{background:var(--play)}.area-love .bar-fill{background:var(--love)}.gauge.compact{margin:var(--space-3) 0}.gauge.compact .gauge-head{margin-bottom:var(--space-1)}.gauge.compact .gauge-title{font-size:var(--text-md)}.gauge.compact .bar{height:18px}.trend svg{width:100%;height:auto;display:block}.trend .grid{stroke:var(--border);stroke-width:1}.trend .ytick,.trend .xtick{fill:var(--text-muted);font-size:11px;font-family:var(--font-sans)}.trend .legend{display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center;margin-top:var(--space-3)}.trend .legend-item{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.trend .legend-item i{width:14px;height:3px;border-radius:2px;display:inline-block}label.field{display:block;font-weight:600;font-size:var(--text-md);margin:var(--space-4) 0 var(--space-2)}textarea,select,input[type=text],input[type=email],input[type=date],input[type=month]{width:100%;font-family:inherit;font-size:var(--text-base);line-height:var(--leading-snug);color:var(--text);background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-3);resize:vertical;transition:border-color var(--dur-fast) var(--ease-out)}textarea:hover,select:hover,input[type=text]:hover,input[type=email]:hover,input[type=date]:hover,input[type=month]:hover{border-color:var(--text-muted)}select{appearance:none;resize:none;padding-right:var(--space-8);cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% + 2px),calc(100% - 12px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}label.check{display:flex;gap:var(--space-2);align-items:center;font-size:var(--text-md);margin-top:var(--space-3);cursor:pointer}::placeholder{color:var(--text-muted);opacity:1}input[type=range]{width:100%;accent-color:var(--accent-text);height:24px}input[type=checkbox],input[type=radio]{accent-color:var(--accent-text);width:24px;height:24px;flex:0 0 auto;cursor:pointer}.help{color:var(--text-muted);font-size:var(--text-sm);margin:var(--space-2) 0 0;max-width:var(--measure)}.seg{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-1) 0 var(--space-2)}.seg-opt input{position:absolute;opacity:0;pointer-events:none}.seg-opt span{display:inline-block;padding:var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-full);font-size:var(--text-md);font-weight:600;cursor:pointer;background:var(--surface-raised);user-select:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.seg-opt:hover span{border-color:var(--text-muted)}.seg-opt input:checked+span{background:var(--accent-text);color:#fff;border-color:var(--accent-text)}.seg-opt input:focus-visible+span{outline:2px solid var(--accent-text);outline-offset:2px}.opt{display:flex;gap:var(--space-2);align-items:flex-start;cursor:pointer;padding:var(--space-1) 0}.opt input{margin-top:3px;flex:0 0 auto}.row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.row.section-head{margin:var(--space-8) 0 var(--space-2)}.row.section-head>h2.section{margin:0}.spacer{flex:1}.pill{display:inline-block;font-size:var(--text-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--surface-sunken);color:var(--text-muted)}.pill.gravity{background:color-mix(in srgb,var(--play) 16%,transparent);color:var(--play-text)}.pill.draft{background:color-mix(in srgb,var(--health) 18%,transparent);color:var(--health-text)}.tag{display:inline-block;font-size:var(--text-sm);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--accent-soft);color:var(--accent-text);white-space:nowrap}.taglist{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0}.empty{text-align:center;padding:var(--space-9) var(--space-5);color:var(--text-muted)}.welcome ul.area-intro{list-style:none;margin:var(--space-5) 0;padding:0;display:grid;gap:var(--space-3)}.welcome ul.area-intro li{display:flex;gap:var(--space-3);align-items:flex-start}.welcome .dot{flex:0 0 auto;width:12px;height:12px;border-radius:50%;margin-top:6px}.welcome .dot.area-health{background:var(--health)}.welcome .dot.area-work{background:var(--work)}.welcome .dot.area-play{background:var(--play)}.welcome .dot.area-love{background:var(--love)}ul.history{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}ul.history a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);text-decoration:none;color:inherit;padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}ul.history a:hover{border-color:var(--accent-line);background:var(--surface-sunken)}ul.records{list-style:none;margin:var(--space-6) 0 0;padding:0;display:grid;gap:var(--space-2)}ul.records>li{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5)}.record-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.record-title{font-weight:700}.record-note{margin:var(--space-2) 0 0;max-width:var(--measure)}.record-actions{margin-top:var(--space-2)}.backlink{margin:0 0 var(--space-1);font-size:var(--text-md)}.mini-gauges{display:flex;gap:var(--space-1);flex:0 0 auto}.mini-gauges i{width:8px;height:26px;border-radius:3px;display:block;background:var(--surface-sunken);position:relative;overflow:hidden}.mini-gauges i b{position:absolute;bottom:0;left:0;right:0;display:block}.chat{display:flex;flex-direction:column;gap:var(--space-4);margin:var(--space-5) 0}.msg{max-width:78%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);white-space:pre-wrap;font-size:var(--text-base);line-height:var(--leading-snug)}.msg.user{align-self:flex-end;background:var(--accent-text);color:#fff;border-bottom-right-radius:var(--space-1)}.msg.assistant{align-self:flex-start;background:var(--surface-raised);border:1px solid var(--border);border-bottom-left-radius:var(--space-1)}.composer{display:flex;gap:var(--space-3);align-items:flex-end;position:sticky;bottom:0;background:var(--surface);padding:var(--space-3) 0;border-top:1px solid var(--border)}.composer textarea{flex:1;min-height:48px;max-height:180px}.typing{color:var(--text-muted);font-style:italic;font-size:var(--text-sm)}.notice{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-md);margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text)}.notice[hidden]{display:none}.notice.error{background:color-mix(in srgb,var(--danger-text) 8%,transparent);color:var(--danger-text)}.notice.ok{background:color-mix(in srgb,var(--health) 14%,transparent);color:var(--health-text)}.toast-region{position:fixed;left:50%;bottom:var(--space-5);transform:translate(-50%);z-index:90;display:flex;flex-direction:column;gap:var(--space-2);width:min(30rem,calc(100vw - var(--space-8)));pointer-events:none}.toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--ink);color:var(--cream-2);font-size:var(--text-md);line-height:var(--leading-snug);box-shadow:var(--shadow-pop);pointer-events:auto;animation:toast-in var(--dur-mid) var(--ease-out) both}.toast.error{background:var(--danger-text);color:#fff}.toast.ok{background:var(--health-text);color:#fff}.toast p{margin:0;flex:1}.toast button{flex:0 0 auto;background:none;border:none;padding:0;margin:0;color:inherit;opacity:.75;font:inherit;font-size:var(--text-lg);line-height:1;cursor:pointer}.toast button:hover{opacity:1}.toast.leaving{animation:toast-out var(--dur-fast) var(--ease-out) both}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(4px)}}.stack>*+*{margin-top:var(--space-4)}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.center{text-align:center}@media(max-width:780px){.nav-toggle{display:inline-flex}nav.main{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:var(--space-2);background:var(--surface-raised);border-bottom:1px solid var(--border);box-shadow:var(--shadow-pop)}nav.main.open{display:flex}nav.main a{padding:var(--space-3) var(--space-4);font-size:var(--text-base)}.who{border-left:none;border-top:1px solid var(--border);padding:var(--space-3) var(--space-4) var(--space-1);margin:var(--space-2) 0 0;justify-content:space-between}.who .who-email{max-width:none}.site-header .wrap{position:relative}}@media(max-width:600px){:root{--text-3xl: 1.75rem;--text-2xl: 1.5rem}main{padding:var(--space-6) 0 var(--space-9)}.card{padding:var(--space-4) var(--space-5)}.msg{max-width:88%}.row .btn{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
