*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}h1,h2,h3,h4,p{margin:0 0 1rem}h1,h2,h3,h4{line-height:1.02;letter-spacing:-.06em;font-weight:600}h1{font-size:clamp(3.2rem,7.5vw,7.5rem);overflow-wrap:anywhere}h2{font-size:clamp(2rem,4vw,3.4rem)}main{max-width:1440px;margin:auto;padding:0 48px 64px}.site-header{max-width:1440px;margin:auto;min-height:108px;padding:24px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:36px}.brand{font-size:42px;font-weight:700;letter-spacing:-.07em;text-decoration:none;line-height:1}.brand-dot{color:var(--blue);font-size:58px;vertical-align:middle;margin-left:5px}.edition,.private-tag,.eyebrow,.site-footer,.panel-caption{font:11px/1.6 var(--mono);letter-spacing:.04em}.site-header nav{margin-left:auto;display:flex;gap:24px;align-items:center;font:12px var(--mono)}.site-header nav form{margin:0}.private-tag{margin-left:auto}.text-button{border:0;background:none;padding:8px 0;font:inherit}.skip{position:absolute;left:16px;top:-100px;z-index:10;padding:12px;background:var(--lime)}.skip:focus{top:10px}.hero,.login-layout{display:grid;grid-template-columns:1.35fr 1fr;min-height:510px;border-bottom:1px solid var(--line)}.hero-copy,.login-copy{padding:48px 36px 48px 0}.hero h1{margin:28px 0;font-size:clamp(3.5rem,6.8vw,7rem);line-height:.95}.repeat-word{display:inline-block;position:relative}.repeat-word>span{font-weight:400;color:var(--blue);letter-spacing:-.12em;margin-left:12px}.intro{font-size:17px;line-height:1.6;margin:24px 0 30px}.button{border:1px solid var(--ink);background:transparent;min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 22px;text-decoration:none;font:14px/1.5 var(--mono);font-weight:600}.button.blue{background:var(--blue);color:white;border-color:var(--blue)}.button:hover{background:var(--lime);color:var(--ink);border-color:var(--ink)}.journal-section{padding-top:44px}.section-title{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:30px}.section-title h2{margin:0}.pink-dot{color:var(--pink)}.filters{display:grid;grid-template-columns:2fr 1.1fr 1fr 1fr auto auto;gap:12px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:24px}.filters .button{min-height:46px}.clear{font:12px var(--mono);padding:12px 0}.field{min-width:0}.field label{display:block;font:11px var(--mono);margin-bottom:9px}.field input,.field select,.field textarea{width:100%;min-width:0;max-width:100%;padding:12px;border:1px solid var(--ink);border-radius:0;background:transparent;font-size:16px}.field input,.field select{min-height:46px}.field textarea{resize:vertical}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.day{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid var(--ink)}.day-label{font:12px/1.5 var(--mono);letter-spacing:0;text-transform:uppercase;padding:30px 20px 30px 0;margin:0}.day-label span{display:block;color:var(--muted);margin-top:8px;font-size:10px}.day-entries{border-left:1px solid var(--ink)}.brew-row{padding:28px 30px;border-bottom:1px solid var(--ink)}.brew-row:last-child{border-bottom:0}.row-top{display:flex;align-items:center;gap:16px;font:11px var(--mono);margin-bottom:16px}.method{padding:6px 12px;background:var(--lilac);border:1px solid var(--ink);font:11px var(--mono)}.method.aeropress{background:var(--lime)}.repeat-link{margin-left:auto;text-decoration:none;font:12px var(--mono)}.brew-row h4{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:20px;overflow-wrap:anywhere}.brew-row h4 a{text-decoration:none}.brew-row h4 a:hover{text-decoration:underline}.brew-metrics{display:flex;gap:26px;flex-wrap:wrap;font:14px var(--mono)}.brew-metrics small{font-size:9px;display:block;color:var(--muted);margin-top:4px}.grind{font:12px var(--mono);margin:20px 0 12px;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:14px;overflow-wrap:anywhere}.empty{min-height:210px;display:flex;align-items:center;gap:40px;padding:40px 24px;background:var(--lilac);margin-top:24px}.empty h3{font-size:30px}.empty p{font-size:15px;margin:0}.empty-symbol{font:48px var(--mono)}.pagination{display:flex;justify-content:center;gap:30px;margin-top:30px;font:13px var(--mono)}.site-footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ink);padding:24px 48px;color:var(--muted)}.notice{border:1px solid var(--ink);background:var(--lime);padding:16px;margin-top:24px;font:13px var(--mono)}.page-head{padding:36px 0 40px;border-bottom:1px solid var(--ink);margin-bottom:32px}.page-head>a{display:block;margin-bottom:32px}.page-head h1{font-size:clamp(3rem,6vw,6rem);margin:22px 0}.page-head p:last-child{margin-bottom:0}.form-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:32px}.paper-form{border:1px solid var(--ink);padding:30px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.wide,.form-errors{grid-column:1/-1}.form-actions{display:flex;gap:24px;align-items:center}.ratio-panel{background:var(--lime);padding:32px;height:fit-content;border:1px solid var(--ink);min-width:0}.ratio-panel output{display:block;font-size:clamp(2.3rem,5vw,5rem);letter-spacing:-.06em;margin:36px 0;overflow-wrap:anywhere;line-height:1}.ratio-panel>span{display:block;text-align:right;font-size:50px}.help{font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}.help ul{padding-left:18px}.errorlist{margin:10px 0;padding-left:18px;font-size:13px;color:#a11030}.form-errors{padding:16px;border:1px solid #a11030;background:#ffe8e9;margin-bottom:12px}.invalid input,.invalid textarea,.invalid select{border-color:#a11030;border-width:2px}.detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:30px 0 0}.danger-link{font:12px var(--mono);margin-left:auto;color:#a11030}.detail-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ink);margin:0 0 40px}.detail-metrics>div{padding:24px;border-right:1px solid var(--ink);min-width:0}.detail-metrics>div:last-child{border:0}.detail-metrics dt{font:10px var(--mono);margin-bottom:18px}.detail-metrics dd{font-size:clamp(1.3rem,3vw,2.8rem);letter-spacing:-.05em;margin:0;overflow-wrap:anywhere}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:48px}.detail-body h2{font-size:32px}.grind-setting{margin-bottom:40px;overflow-wrap:anywhere}.prose{overflow-wrap:anywhere;line-height:1.7}.updated{color:var(--muted);margin-top:36px}.comments{border-left:1px solid var(--ink);padding-left:36px}.comment{border-top:1px solid var(--ink);padding:24px 0}.comment time{display:block;font:10px var(--mono);color:var(--muted);margin-bottom:12px}.comment-actions{display:flex;gap:20px;font:11px var(--mono);margin-top:16px}.comment-form .button{margin-top:16px}.settings-form{max-width:620px}.settings-form .button{margin-top:24px}.login-layout{border:0}.login-copy h1{margin:30px 0}.login-form{max-width:350px;display:grid;gap:20px;margin:32px 0}.login-layout .brewer-panel{margin:36px 0}.login-form .button{margin-top:4px}.login-form ul{padding-left:18px}.confirm{max-width:650px}.confirm form{margin-top:24px}.confirm .button{margin-right:20px}
@media(min-width:1441px){.hero h1{font-size:7rem}}@media(max-width:950px){main{padding:0 28px 48px}.site-header{padding:24px 28px}.edition{display:none}.hero,.login-layout{grid-template-columns:1.2fr 1fr}.hero h1{font-size:4.5rem}.hero-copy{padding-right:20px}.filters{grid-template-columns:2fr 1fr 1fr}.filters .field:first-child{grid-column:1/3}.section-title{align-items:flex-start;flex-direction:column}.day{grid-template-columns:140px 1fr}.brew-row{padding:24px}.form-layout{grid-template-columns:1fr}.ratio-panel{display:none}.site-footer{padding:24px 28px}}
@media(max-width:600px){main{padding:0 20px 40px}.site-header{min-height:88px;padding:20px;gap:12px}.brand{font-size:34px}.brand-dot{font-size:44px}.site-header nav{gap:16px;font-size:11px}.private-tag{font-size:9px}.hero,.login-layout{grid-template-columns:1fr}.hero-copy,.login-copy{padding:32px 0}.hero h1{font-size:clamp(3.7rem,13vw,5rem);margin:22px 0}.intro{font-size:15px}.hero .brewer-panel{border:1px solid var(--ink);margin-bottom:28px}.section-title{gap:12px}.filters{grid-template-columns:1fr 1fr;gap:16px}.filters .field:first-child{grid-column:1/-1}.filters .clear{grid-column:2}.filters .button{grid-column:1}.day{grid-template-columns:1fr}.day-label{display:flex;justify-content:space-between;padding:24px 0 16px}.day-label span{margin:0}.day-entries{border-left:0}.brew-row{padding:24px 0}.brew-row h4{font-size:28px}.brew-metrics{gap:20px;font-size:13px}.empty{padding:28px 20px;gap:20px}.empty-symbol{font-size:28px}.empty h3{font-size:25px}.empty p{font-size:13px}.site-footer{padding:20px;flex-direction:column;font-size:9px;gap:8px}.page-head{padding-top:28px}.page-head h1{font-size:3.3rem}.paper-form{padding:20px}.field-grid{gap:20px 14px}.field label{font-size:10px}.detail-metrics{grid-template-columns:1fr 1fr}.detail-metrics>div{padding:20px}.detail-metrics>div:nth-child(2){border-right:0}.detail-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--ink)}.detail-body{grid-template-columns:1fr;gap:32px}.comments{border-left:0;border-top:1px solid var(--ink);padding:28px 0 0}.detail-actions{gap:12px}.detail-actions .button{padding:12px 16px;font-size:12px}.danger-link{margin:8px 0 0;width:100%}.login-layout .brewer-panel{margin:0}.login-copy h1{font-size:4.5rem}.login-form{max-width:none}.form-actions{gap:16px;font-size:13px}}
