:root{font-family:Arial,Helvetica,sans-serif;color:#293e38;background:#f5f4ee;font-synthesis:none;--green:#426851;--muted:#6c786e;--line:#dce0d6;--paper:#fffef9}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer;border:0;background:#345b49;color:white;border-radius:8px;padding:12px 18px}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a57937;outline-offset:4px}button:hover{filter:brightness(.94)}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(42px,5.4vw,68px);letter-spacing:-2px;line-height:1.06;margin-bottom:18px}h1 em{font-weight:400;color:#648366}h2{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:0}h3{font-family:Georgia,serif;font-size:25px;font-weight:400}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2.1px;color:#78806b;margin-bottom:15px}.intro{color:#737b6e;font-size:15px;line-height:1.6}main{max-width:1200px;margin:auto;padding:0 44px}.brand{display:flex;align-items:center;gap:18px;text-decoration:none;font-family:Georgia,serif;font-size:38px}.brand span{font-family:Arial,sans-serif;font-size:10px;letter-spacing:2px;color:#687365}header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}header>div{display:flex;align-items:center;gap:26px}.private-dot{font-size:11px;color:#75806d}.private-dot:before{content:'●';font-size:7px;margin-right:7px;color:#70866a}.quiet{background:transparent;color:#596951;padding:8px;font-size:12px}.heading{padding:49px 0 25px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin:5px 0 21px}.month-switch{display:flex;gap:14px;align-items:center}.icon{background:transparent;border:1px solid #d6dccf;color:#4e624c;border-radius:50%;width:32px;height:32px;padding:0}select{background:transparent;border:0;color:#314f3d;font-size:18px;font-family:Georgia,serif;max-width:200px}.sync{display:flex;gap:16px;align-items:center;font-size:11px;color:#7c8273}.chart-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:29px 30px 19px;box-shadow:0 5px 20px #42583304}.card-heading{display:flex;align-items:center;justify-content:space-between}.card-heading .eyebrow{font-size:9px;margin-bottom:9px}.legend{display:flex;gap:20px;font-size:10px;color:#717b6b}.legend span{display:flex;align-items:center;gap:7px}.dot{width:7px;height:7px;background:#64846b;border-radius:50%;display:inline-block}.line{width:21px;border-top:2px dashed #c3a26d}.chart{width:100%;margin-top:22px}.chart svg{display:block;width:100%;height:auto;overflow:visible}.chart svg text{font:11px Arial,sans-serif;fill:#7c8575}.chart svg .point{cursor:pointer;stroke:var(--paper);stroke-width:2}.chart svg .point:focus{outline:none;stroke:#253e33;stroke-width:4}.chart-footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#7e8575;border-top:1px solid #edf0e7;padding-top:17px;line-height:1.5}.stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr;margin:28px 0 37px;padding:0 12px}.stats div{border-right:1px solid var(--line);padding:0 24px}.stats div:first-child{padding-left:0}.stats strong{font-family:Georgia,serif;font-size:32px;font-weight:400;display:block;color:#45684e;margin-bottom:5px}.stats span{font-size:11px;color:#77806e}.stats p{font-size:11px;line-height:1.7;color:#7b8274;padding-left:28px;margin:0;align-self:center}.stories-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.stories-heading h2{font-size:23px}.stories-heading label{font-size:11px;color:#75806e;display:flex;gap:7px;align-items:center}.stories{display:grid;grid-template-columns:270px 1fr;gap:23px;align-items:start}.stories nav{max-height:550px;overflow-y:auto;padding-right:5px}.day{width:100%;background:transparent;border-radius:9px;color:#43563e;text-align:left;padding:14px;display:grid;grid-template-columns:45px 1fr 26px;gap:10px;border:1px solid transparent;margin-bottom:5px;align-items:center}.day.selected{background:#e7ecdf;border-color:#dce3d0}.day-date{font-size:12px;font-weight:bold;line-height:1.6}.day small{font-size:9px;color:#87917e;font-weight:400;display:block}.day-title{font-size:11px;line-height:1.5;color:#6b7861;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.score{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#edf0e6;font-size:11px;color:#58704b}.negative{background:#f0e3df;color:#996e65}.positive{background:#dfead9;color:#51734b}.detail{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:28px 32px;min-height:350px}#detail{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:28px 32px;min-height:350px}.detail-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.badge{font-size:10px;border:1px solid #dce3d4;border-radius:20px;padding:6px 10px;color:#7a846d}.reason{font-size:14px;line-height:1.7;color:#526449}.source-text{font-size:13px;line-height:1.8;white-space:pre-wrap;color:#5c6656}.evidence{border-left:2px solid #a9ba98;padding:4px 0 4px 16px;font-family:Georgia,serif;font-size:16px;line-height:1.6;color:#5d7353;margin:20px 0}.detail-links{font-size:11px;display:flex;gap:20px;margin-bottom:20px}.review{border-top:1px solid var(--line);margin-top:24px;padding-top:19px}.review summary{font-size:12px;cursor:pointer}.review label{display:block;font-size:11px;margin:17px 0 7px}.review select{font-family:Arial,sans-serif;font-size:13px;border:1px solid var(--line);padding:9px;border-radius:6px;max-width:100%;background:white}.review textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:10px;min-height:65px;font-size:12px;background:white;resize:vertical}.review button{font-size:12px;margin-top:12px}.review .quiet{margin-left:10px}.notice{background:#eee8d9;border:1px solid #e5d9bd;padding:15px 18px;font-size:12px;line-height:1.7;border-radius:8px}.notice button{margin-left:12px;padding:8px 12px;font-size:11px}.method{border-top:1px solid var(--line);margin-top:34px;padding-top:23px;font-size:12px;color:#708066;line-height:1.8}.method summary{cursor:pointer}.method>div{max-width:760px;padding-top:20px}.method a{font-size:12px}footer{padding:34px 0;color:#929887;font-family:Georgia,serif;font-size:13px;font-style:italic}.login{max-width:470px;margin:9vh auto;padding:30px}.login .mark{font-size:48px;font-family:Georgia,serif;margin-bottom:45px}.login h1{font-size:62px}.login form{margin-top:35px}.login label{display:block;font-size:12px;margin-bottom:9px}.login input{display:block;width:100%;padding:13px;border:1px solid #cfd8c5;background:#fffef9;border-radius:7px}.login button{margin-top:15px;width:100%;display:flex;justify-content:space-between}.login #login-error{font-size:12px;color:#a35e51;margin-top:17px}.empty{color:#7a8471;font-size:14px;line-height:1.7;padding:30px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:760px){main{padding:0 20px}header{height:78px}.brand{gap:10px}.brand span{font-size:8px;letter-spacing:1px}header>div{gap:10px}.heading{padding-top:35px}.toolbar{align-items:start;gap:12px}.sync{flex-direction:column;align-items:end;gap:1px}.card-heading{gap:15px;align-items:start}.legend{flex-direction:column;gap:9px}.chart-card{padding:22px 14px 16px}.chart-footer{flex-direction:column;gap:6px}.stats{grid-template-columns:repeat(3,1fr);padding:0;margin:25px 0}.stats div{padding:0 10px}.stats div:nth-child(3){border-right:0}.stats strong{font-size:28px}.stats span{font-size:9px}.stats p{grid-column:1/-1;padding:18px 0 0;font-size:11px}.stats p br{display:none}.stories{grid-template-columns:1fr}.stories nav{display:flex;overflow-x:auto;max-height:none;gap:6px;padding-bottom:8px}.day{min-width:150px;grid-template-columns:37px 1fr;padding:10px}.day-title{font-size:10px}.day .score{display:none}.stories-heading{gap:12px}.stories-heading h2{font-size:20px}.stories-heading label{font-size:9px}#detail{padding:22px}.detail-top{gap:15px}.badge{font-size:9px}.month-switch{gap:6px}select{font-size:16px;max-width:150px}.login h1{font-size:54px}}
.mood-tooltip{position:fixed;z-index:20;pointer-events:none;width:max-content;max-width:min(290px,calc(100vw - 24px));padding:13px 15px;background:#fffef9;border:1px solid #d5decb;border-radius:10px;box-shadow:0 5px 22px #293e3820;color:#43563e;line-height:1.5}.mood-tooltip strong{display:block;font-size:11px;font-weight:600;margin-bottom:5px}.mood-tooltip span{display:block;font-family:Georgia,serif;font-size:14px}.mood-tooltip small{display:block;font-size:10px;color:#7c8772;margin-top:7px}#detail{scroll-margin-top:24px}.chart svg .point{stroke:transparent;stroke-width:0}.chart svg .point:focus-visible{stroke:#718f6b;stroke-width:1.5;outline:none}
.view-switch{display:flex;padding:3px;border:1px solid #dce0d6;border-radius:9px;gap:2px}.view-switch button{font-size:11px;padding:7px 13px;background:transparent;color:#6b7861;border-radius:6px}.view-switch button[aria-pressed=true]{background:#e7ecdf;color:#345b49}.legend .unknown{background:#fffef9;border:1.4px solid #b9c0b5}.chart-card{overflow:visible}@media(max-width:760px){.toolbar{flex-wrap:wrap}.view-switch{order:3}.sync{margin-left:auto}.legend{gap:7px}.card-heading{gap:10px}}
.range-panel{margin-top:20px;border-top:1px solid #edf0e7;padding-top:13px}.range-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;font-size:11px;color:#75806d}.range-heading .quiet{padding:5px 8px}.range-panel svg{display:block;width:100%;height:auto;cursor:crosshair;touch-action:none;user-select:none}.range-panel svg text{font:10px Arial,sans-serif;fill:#7c8575;pointer-events:none}.range-handle{cursor:ew-resize}.range-handle:focus-visible{stroke:#314f3d;stroke-width:2;outline:none}.range-help{font-size:9px;color:#939b87;text-align:right;margin:0;line-height:1.5}@media(max-width:760px){.range-heading{font-size:10px}.range-help{font-size:9px;text-align:left}.range-panel{margin-top:14px}}
