
:root{--bg:#f7f7f2;--paper:#fffefa;--ink:#2c352c;--muted:#73796e;--line:#e3e5da;--green:#53634a;--soft:#edf0e3;--accent:#dce3bd;--peach:#f3e6dc;--danger:#965243;--shadow:0 12px 40px #303b2a06;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a2ad81;outline-offset:3px}button{border:0}svg{flex-shrink:0}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{position:fixed;width:230px;inset:0 auto 0 0;border-right:1px solid var(--line);padding:37px 25px;background:var(--paper);display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;font-family:Georgia,serif;font-size:28px;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand svg{background:var(--green);border-radius:12px;padding:6px;color:#f3f2de;width:37px;height:37px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--muted)}.sidebar .eyebrow{margin:10px 0 42px 49px;letter-spacing:1.5px;font-size:9px}.nav{display:flex;flex-direction:column;gap:8px}.nav button{background:none;color:var(--muted);text-align:left;padding:12px 15px;border-radius:9px;display:flex;align-items:center;gap:12px}.nav button.active{background:var(--soft);color:var(--green);font-weight:650}.nav svg{width:18px;height:18px}.sidebar-bottom{margin-top:auto;color:var(--muted);font-size:12px;padding:20px 10px 0}.private{display:flex;align-items:center;gap:7px}.private svg{width:14px;height:14px}.main{grid-column:2;max-width:1430px;width:100%;margin:auto;padding:31px 48px 55px}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:23px;margin-bottom:32px;font-size:13px;color:var(--muted)}.location{display:flex;align-items:center;gap:7px}.location svg{width:16px;height:16px}.smallbtn{border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--green);width:35px;height:35px;display:inline-grid;place-items:center}.smallbtn svg{width:16px;height:16px}.pagehead{display:flex;align-items:end;justify-content:space-between;margin:0 0 25px;gap:20px}.pagehead h1{font-family:Georgia,serif;font-weight:400;font-size:37px;letter-spacing:-1.1px;line-height:1.2;margin:7px 0 9px}.pagehead p{color:var(--muted);margin:0}.badge{background:var(--soft);border:1px solid var(--line);color:var(--green);border-radius:30px;padding:5px 11px;font-size:11px;white-space:nowrap}.hero{border:1px solid #dce2c9;background:#edf0e1;border-radius:18px;display:flex;justify-content:space-between;overflow:hidden;position:relative;padding:30px 34px;min-height:228px;margin-bottom:25px}.hero-copy{max-width:470px;z-index:1}.hero h2{font:400 32px/1.25 Georgia,serif;letter-spacing:-.6px;margin:9px 0}.hero p{color:#68725d;font-size:14px;max-width:370px;margin:0 0 21px}.hero-art{position:absolute;right:-5px;bottom:0;width:39%;height:100%;opacity:.8}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn{background:var(--green);color:#fff;border-radius:9px;padding:12px 19px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:600;text-decoration:none;min-height:45px}.btn svg{width:17px;height:17px}.btn.secondary{background:var(--paper);border:1px solid var(--line);color:var(--green)}.btn.quiet{background:transparent;border:1px solid #bfc8af;color:var(--green)}.btn.danger{background:var(--danger)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:26px}.stat,.card{border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--shadow)}.stat{padding:20px 24px}.stat .label{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.stat .label svg{width:17px;height:17px}.stat strong{display:block;font:400 34px/1.2 Georgia,serif;margin:10px 0 4px}.stat small{color:var(--muted);font-size:11px}.grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:22px}.card{padding:23px}.card h2{font:400 21px/1.3 Georgia,serif;margin:0}.card p{font-size:13px;color:var(--muted)}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.textbtn{background:none;padding:3px;color:var(--green);font-size:12px}.empty{text-align:center;padding:29px 15px}.empty .empty-icon{width:46px;height:46px;display:inline-grid;place-items:center;background:var(--soft);border-radius:50%;color:var(--green);margin-bottom:9px}.empty h3{font:400 21px Georgia,serif;margin:8px}.empty p{max-width:310px;margin:10px auto 19px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center;margin:15px 0}.day{font-size:12px;border-radius:8px;background:var(--bg);padding:9px 0;color:var(--muted);border:1px solid transparent}.day span{display:block;font-size:10px;margin-bottom:5px}.day i{display:block;width:5px;height:5px;background:var(--line);border-radius:50%;margin:6px auto 0}.day.migraine{background:var(--peach);color:var(--danger)}.day.clear{background:var(--soft);color:var(--green)}.day.today{border-color:var(--green)}.day.migraine i{background:var(--danger)}.day.clear i{background:var(--green)}.legend{display:flex;gap:16px;color:var(--muted);font-size:10px;margin-top:14px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:5px}.dot.peach{background:#c58d75}.dot.gray{background:var(--line)}.envgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:16px}.envcell{border-top:1px solid var(--line);padding:13px 0}.envcell span{display:block;font-size:11px;color:var(--muted)}.envcell strong{font-size:18px;font-weight:500}.envcell small{font-size:10px;color:var(--muted)}.footnote{font-size:11px!important;color:var(--muted);line-height:1.6}.note{background:var(--soft);padding:13px 17px;border-radius:9px;font-size:12px;color:var(--green);margin:17px 0}.section{margin-bottom:20px}.form-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.85fr);gap:24px;align-items:start}.form-layout aside{position:sticky;top:25px}.section-title{display:flex;align-items:center;gap:10px;margin-bottom:20px}.step{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--soft);color:var(--green);font-size:11px}.section-title h2{font-size:20px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label,.field-label{font-size:12px;font-weight:600}.field small{font-size:11px;color:var(--muted)}input,select,textarea{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 11px;min-height:44px;width:100%;min-width:0}textarea{resize:vertical;min-height:83px}input[type=range]{accent-color:var(--green);padding:10px 0;border:0}.range-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.question{padding:15px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.question:last-child{border:0}.question>span{font-size:13px}.seg{display:flex;border:1px solid var(--line);border-radius:8px;padding:3px;flex-shrink:0;gap:2px}.seg button{min-width:43px;min-height:35px;padding:5px 9px;border-radius:5px;background:none;color:var(--muted);font-size:12px}.seg button.selected{background:var(--green);color:#fff}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);padding:8px 12px;border-radius:20px;background:var(--paper);color:var(--muted);font-size:12px;min-height:39px}.chip.selected{background:var(--soft);border-color:#9da98b;color:var(--green)}.savebar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:18px 0}.savebar small{font-size:11px;color:var(--muted)}.entry{border-top:1px solid var(--line);padding:16px 0;display:flex;gap:14px;align-items:center}.entry:last-child{padding-bottom:0}.entry-icon{background:var(--peach);border-radius:10px;padding:9px;color:var(--danger);display:grid;place-items:center}.entry-icon.clear{background:var(--soft);color:var(--green)}.entry-icon svg{width:20px;height:20px}.entry-copy{flex:1;min-width:0}.entry-copy h3{margin:0;font-size:14px;font-weight:550}.entry-copy p{margin:3px 0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry .score{font:20px Georgia,serif;color:var(--danger)}.filters{display:flex;gap:10px;margin-bottom:20px}.filters input{flex:1}.filters select{max-width:190px}.pattern{margin:18px 0;border-top:1px solid var(--line);padding-top:18px}.pattern h3{font-size:14px;font-weight:600;margin:0 0 14px}.barrow{display:grid;grid-template-columns:105px 1fr 65px;align-items:center;gap:12px;font-size:11px;margin:10px 0}.track{height:9px;background:var(--soft);border-radius:10px;overflow:hidden}.fill{height:100%;background:var(--green);border-radius:10px}.fill.alt{background:#c59880}.barrow small{text-align:right;font-size:10px}.settingrow{border-top:1px solid var(--line);padding:20px 0}.settingrow h3{font-size:14px;margin:0 0 7px}.settingrow p{margin:6px 0 15px}.settingrow:first-child{border:0;padding-top:0}.source-list{padding-left:20px;font-size:13px;color:var(--muted)}.source-list li{margin:12px 0}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);border-radius:10px;padding:13px 22px;box-shadow:0 8px 25px #0002;display:none;z-index:50;max-width:90vw;font-size:13px}.error{color:var(--danger);font-size:13px}.mobile-brand{display:none}.dim{--bg:#20271f;--paper:#293027;--ink:#e6e8dc;--muted:#adb6a4;--line:#414b3c;--green:#acbc95;--soft:#35422f;--peach:#48392f;--danger:#e0ab95;--shadow:none;color-scheme:dark}.dim .hero{background:#35422f;border-color:#49563e}.dim .hero p{color:#bcc7af}.dim .btn{background:#acbc95;color:#20271f}.dim .btn.secondary,.dim .btn.quiet{color:var(--green);background:var(--paper)}.dim .seg button.selected{color:#20271f}.dim .hero-art{opacity:.25}.dim .brand svg{background:#53634a}footer{margin-top:32px;color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:15px}.hidden{display:none!important}@media(min-width:1450px){.main{padding:40px 70px}}@media(max-width:1050px){.sidebar{width:195px;padding:30px 16px}.shell{grid-template-columns:195px 1fr}.main{padding:25px}.hero-art{width:35%}.hero-copy{max-width:80%}.grid,.form-layout{grid-template-columns:1fr}.form-layout aside{position:static}.stats{gap:10px}.stat{padding:17px}.pagehead h1{font-size:33px}}@media(max-width:650px){body{font-size:14px}.shell{display:block}.sidebar{position:fixed;inset:auto 0 0;width:100%;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:var(--paper)}.sidebar>.brand,.sidebar>.eyebrow,.sidebar-bottom{display:none}.nav{flex-direction:row;justify-content:space-around;gap:0}.nav button{flex-direction:column;gap:3px;font-size:9px;padding:7px 8px;min-width:54px;min-height:52px}.nav svg{width:20px;height:20px}.main{padding:20px 18px 105px}.topbar{padding-bottom:18px;margin-bottom:25px}.mobile-brand{display:flex;font-size:25px}.mobile-brand svg{width:30px;height:30px;padding:5px;border-radius:9px}.top-date{display:none}.location{font-size:11px}.pagehead{align-items:start}.pagehead h1{font-size:31px}.pagehead p{font-size:13px}.pagehead>.badge{display:none}.hero{padding:24px;min-height:267px;border-radius:14px}.hero-copy{max-width:100%}.hero h2{font-size:28px;max-width:250px}.hero p{max-width:230px;font-size:13px}.hero-art{width:55%;right:-30px;opacity:.35}.hero .actions{max-width:210px}.hero .btn{width:100%}.stats{gap:8px;margin-bottom:18px}.stat{padding:14px 10px;border-radius:11px}.stat .label{font-size:10px;line-height:1.35;min-height:27px}.stat .label svg{display:none}.stat strong{font-size:28px;margin:7px 0}.stat small{font-size:9px;line-height:1.3;display:block}.grid{gap:17px}.card{padding:20px;border-radius:12px}.question{gap:9px}.question>span{font-size:12px}.seg button{min-width:36px;padding:5px 7px}.fields{gap:14px}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.filters select{max-width:none}.savebar{position:sticky;bottom:72px;background:var(--bg);border-top:1px solid var(--line);z-index:5;padding:12px 0}.savebar small{max-width:130px}.barrow{grid-template-columns:85px 1fr 55px;gap:8px}footer{font-size:10px}.actions .btn{flex:1}.entry .score{font-size:17px}.entry{gap:10px}}@media(prefers-reduced-motion:no-preference){.card,.hero{animation:arrive .3s ease-out}@keyframes arrive{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}} @media print{.sidebar,.topbar,.actions,.textbtn,.smallbtn,.savebar,.filters,#toast{display:none!important}.main{padding:0;max-width:none}.shell{display:block}.card{box-shadow:none;break-inside:avoid}.entry-copy p{white-space:normal}.main{grid-column:1}.grid{display:block}.card{margin:15px 0}body{background:white;color:black}}

@media(max-width:650px){input,select,textarea{font-size:16px}.pattern .badge{display:inline-block;white-space:normal;font-size:9px}.pattern h3{line-height:1.8}}