.Header-module__arFiJq__header{z-index:50;background-color:color-mix(in srgb, var(--background) 80%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(8px)) or (backdrop-filter:blur(8px))){.Header-module__arFiJq__header{background-color:color-mix(in srgb, var(--background) 60%, transparent)}}.Header-module__arFiJq__inner{justify-content:space-between;align-items:center;width:100%;max-width:80rem;height:3.5rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;display:flex}.Header-module__arFiJq__logo{font-size:1.25rem;font-family:var(--font-heading);letter-spacing:-.025em;color:var(--primary);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;display:flex}.Header-module__arFiJq__logoImage{border-radius:9999px}.Header-module__arFiJq__nav{align-items:center;gap:.75rem;display:flex}.Header-module__arFiJq__navLink{color:var(--muted-foreground);font-size:.875rem;text-decoration:none;transition:color .15s}.Header-module__arFiJq__navLink:hover{color:var(--foreground)}.Header-module__arFiJq__coffeeButton{border-radius:9999px;font-size:.75rem;font-weight:500}.Header-module__arFiJq__submitButton{background-color:var(--primary);color:var(--primary-foreground);border-radius:9999px}.Header-module__arFiJq__submitButton:hover{background-color:color-mix(in srgb, var(--primary) 90%, transparent)}.Header-module__arFiJq__signInButton{border-radius:9999px}.Header-module__arFiJq__hamburger{cursor:pointer;color:var(--foreground);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:none}.Header-module__arFiJq__mobileMenu{border-bottom:1px solid var(--border);flex-direction:column;padding:.5rem 1rem 1rem;display:none}.Header-module__arFiJq__mobileMenuLink{color:var(--foreground);border-bottom:1px solid var(--border);cursor:pointer;text-align:left;background:0 0;border-top:none;border-left:none;border-right:none;width:100%;padding:.75rem 0;font-size:.9375rem;text-decoration:none;display:block}.Header-module__arFiJq__mobileMenuLink:last-child{border-bottom:none}.Header-module__arFiJq__mobileMenuLink:hover{color:var(--secondary)}@media (max-width:767px){.Header-module__arFiJq__nav{display:none}.Header-module__arFiJq__hamburger,.Header-module__arFiJq__mobileMenuOpen{display:flex}}
.PageHeader-module__bykAEq__container{margin-bottom:2.5rem}.PageHeader-module__bykAEq__containerWithAction{justify-content:space-between;align-items:flex-start;margin-bottom:2rem;display:flex}.PageHeader-module__bykAEq__title{font-family:var(--font-heading);letter-spacing:-.025em;color:var(--color-primary);font-weight:500}.PageHeader-module__bykAEq__titleLg,.PageHeader-module__bykAEq__titleMd{font-size:2.25rem;line-height:2.5rem}.PageHeader-module__bykAEq__titleSm{font-size:1.875rem;font-weight:600;line-height:2.25rem}.PageHeader-module__bykAEq__subtitle{color:var(--color-muted-foreground);margin-top:.75rem;font-size:.875rem;line-height:1.625}.PageHeader-module__bykAEq__subtitleCompact{margin-top:.25rem}.PageHeader-module__bykAEq__subtitleConstrained{max-width:32rem}@media (min-width:768px){.PageHeader-module__bykAEq__titleLg{font-size:3rem;line-height:3.5rem}}
.page-module__E0kJGG__page{flex-direction:column;min-height:100vh;display:flex}.page-module__E0kJGG__main{flex:1;width:100%;max-width:80rem;margin-inline:auto;padding-block:2rem;padding-inline:1rem}.page-module__E0kJGG__searchFilterGroup{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.page-module__E0kJGG__loadingFallback{text-align:center;color:var(--color-muted-foreground);padding-block:3rem}.page-module__E0kJGG__fab{z-index:50;background-color:var(--color-primary);width:3.5rem;height:3.5rem;color:var(--color-primary-foreground,#fff);border-radius:9999px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 12px #00000026}@media (max-width:767px){.page-module__E0kJGG__fab{display:none}}.page-module__E0kJGG__fab:hover{opacity:.9}.page-module__E0kJGG__footer{margin-top:auto}.page-module__E0kJGG__footerInner{text-align:center;max-width:80rem;color:var(--color-muted-foreground);margin-inline:auto;padding-block:1.5rem;padding-inline:1rem;font-size:.75rem}.page-module__E0kJGG__footerLink{color:inherit;text-decoration:none;transition:color .15s}.page-module__E0kJGG__footerLink:hover{color:var(--color-foreground)}
.PressureChart-module__MpPY_a__emptyCompact{color:#827472;background-color:#fdf8f8;border-radius:16px;justify-content:center;align-items:center;height:130px;display:flex}.PressureChart-module__MpPY_a__emptyFull{color:#827472;border-radius:8px;justify-content:center;align-items:center;height:200px;display:flex}.PressureChart-module__MpPY_a__compactContainer{width:100%;height:100%}.PressureChart-module__MpPY_a__fullContainer{width:100%;height:200px}
.PressureSparkline-module__LbaLLG__empty{color:var(--color-muted-foreground);justify-content:center;align-items:center;font-size:.75rem;display:flex}
.RatingStars-module__yDroCG__container{align-items:center;display:flex}.RatingStars-module__yDroCG__containerSm{gap:.375rem}.RatingStars-module__yDroCG__containerLg{gap:.75rem}.RatingStars-module__yDroCG__stars{display:flex}.RatingStars-module__yDroCG__starsSm{gap:.125rem}.RatingStars-module__yDroCG__starsLg{gap:.25rem}.RatingStars-module__yDroCG__starButton{background:0 0;border:none;padding:0}.RatingStars-module__yDroCG__starInteractive{cursor:pointer;transition:transform .15s}.RatingStars-module__yDroCG__starInteractive:hover{transform:scale(1.1)}.RatingStars-module__yDroCG__starStatic{cursor:default}.RatingStars-module__yDroCG__starSubmitting{opacity:.5}.RatingStars-module__yDroCG__starIcon{display:block}.RatingStars-module__yDroCG__count{color:var(--color-muted-foreground)}.RatingStars-module__yDroCG__countSm{font-size:.75rem}.RatingStars-module__yDroCG__countLg{font-size:.875rem}
.RoastBadge-module__3mZJPq__badge{border:0;font-size:.75rem;font-weight:500}.RoastBadge-module__3mZJPq__light{color:#8b6914;background-color:#f5e6c8}.RoastBadge-module__3mZJPq__mediumLight{color:#7a5c12;background-color:#e8d5a8}.RoastBadge-module__3mZJPq__medium{color:#5c3d1a;background-color:#d4a574}.RoastBadge-module__3mZJPq__mediumDark{color:#fafaf8;background-color:#8b5e3c}.RoastBadge-module__3mZJPq__dark{color:#fafaf8;background-color:#3c2415}
.QrPopover-module__bzKyyq__noLink{color:var(--color-muted-foreground);font-size:.75rem}.QrPopover-module__bzKyyq__modalContainer{flex-direction:column;align-items:center;gap:.75rem;display:flex}.QrPopover-module__bzKyyq__modalHint{color:var(--color-muted-foreground);font-size:.75rem}.QrPopover-module__bzKyyq__modalGetButton{background-color:var(--color-secondary);color:var(--color-secondary-foreground)}.QrPopover-module__bzKyyq__copyLink{color:var(--color-muted-foreground);cursor:pointer;background:0 0;border:none;font-size:.75rem}.QrPopover-module__bzKyyq__copyLink:hover{color:var(--color-foreground)}.QrPopover-module__bzKyyq__tableButton{white-space:nowrap;border:1px solid var(--color-border);background-color:var(--color-background);box-shadow:var(--shadow-xs);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;gap:.5rem;height:2rem;padding:0 .75rem;font-size:.75rem;font-weight:500;transition:all .15s;display:inline-flex}.QrPopover-module__bzKyyq__tableButton:hover{background-color:var(--color-accent);color:var(--color-accent-foreground)}.QrPopover-module__bzKyyq__popover{z-index:9999;position:absolute}.QrPopover-module__bzKyyq__popoverInner{background-color:var(--color-popover);border:1px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:.375rem;padding:1rem}.QrPopover-module__bzKyyq__popoverContent{flex-direction:column;align-items:center;gap:.5rem;display:flex}.QrPopover-module__bzKyyq__popoverHint{color:var(--color-muted-foreground);font-size:.75rem}
.BrewLinkImport-module__2cLITW__wrapper{text-align:center;max-width:28rem;margin-left:auto;margin-right:auto;padding-top:4rem;padding-bottom:4rem}.BrewLinkImport-module__2cLITW__card{background-color:var(--color-card);border-radius:1rem;padding:2rem;box-shadow:0 1px 4px #0000000a}.BrewLinkImport-module__2cLITW__title{font-family:var(--font-heading);color:var(--color-primary);margin-bottom:.25rem;font-size:1.25rem;font-weight:500}.BrewLinkImport-module__2cLITW__subtitle{color:var(--color-muted-foreground);margin-bottom:1.5rem;font-size:.75rem}.BrewLinkImport-module__2cLITW__inputRow{gap:.5rem;display:flex}.BrewLinkImport-module__2cLITW__importButton{background-color:var(--color-secondary);color:var(--color-secondary-foreground);border-radius:9999px}.BrewLinkImport-module__2cLITW__importButton:hover:not(:disabled){background-color:color-mix(in srgb, var(--color-secondary) 90%, transparent)}.BrewLinkImport-module__2cLITW__divider{align-items:center;gap:.75rem;margin-top:1.25rem;margin-bottom:1.25rem;display:flex}.BrewLinkImport-module__2cLITW__dividerLine{background-color:var(--color-border);flex:1;height:1px}.BrewLinkImport-module__2cLITW__dividerText{color:var(--color-muted-foreground);font-size:.75rem}.BrewLinkImport-module__2cLITW__skipButton{color:var(--color-muted-foreground);cursor:pointer;background:0 0;border:none;font-size:.875rem;transition:color .15s}.BrewLinkImport-module__2cLITW__skipButton:hover{color:var(--color-foreground)}
.CurveInput-module__iU14wa__container{flex-direction:column;gap:.75rem;display:flex}.CurveInput-module__iU14wa__header{justify-content:space-between;align-items:center;display:flex}.CurveInput-module__iU14wa__headerLabel{font-size:.875rem;font-weight:500}.CurveInput-module__iU14wa__points{flex-direction:column;gap:.5rem;display:flex}.CurveInput-module__iU14wa__pointRow{align-items:center;gap:.5rem;display:flex}.CurveInput-module__iU14wa__pointField{flex:1}.CurveInput-module__iU14wa__deleteButton{color:var(--color-destructive)}.CurveInput-module__iU14wa__preview{align-items:center;gap:.5rem;display:flex}.CurveInput-module__iU14wa__previewLabel,.CurveInput-module__iU14wa__emptyText{color:var(--color-muted-foreground);font-size:.75rem}
.SubmitForm-module__eVfUiG__form{max-width:64rem}.SubmitForm-module__eVfUiG__columns{flex-direction:column;gap:2rem;display:flex}@media (min-width:1024px){.SubmitForm-module__eVfUiG__columns{flex-direction:row}}.SubmitForm-module__eVfUiG__leftCol{flex-direction:column;flex:1;gap:1.5rem;display:flex}.SubmitForm-module__eVfUiG__fieldGrid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:768px){.SubmitForm-module__eVfUiG__fieldGrid{grid-template-columns:1fr 1fr}}.SubmitForm-module__eVfUiG__paramGrid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (min-width:768px){.SubmitForm-module__eVfUiG__paramGrid{grid-template-columns:repeat(4,1fr)}}.SubmitForm-module__eVfUiG__sectionDivider{padding-top:.5rem}.SubmitForm-module__eVfUiG__sectionTitle{font-family:var(--font-heading);margin-bottom:1rem;font-size:1rem;font-weight:500}.SubmitForm-module__eVfUiG__rightCol{flex-shrink:0}@media (min-width:1024px){.SubmitForm-module__eVfUiG__rightCol{width:340px}}.SubmitForm-module__eVfUiG__curveSticky{position:static}@media (min-width:1024px){.SubmitForm-module__eVfUiG__curveSticky{position:sticky;top:5rem}}.SubmitForm-module__eVfUiG__curveHeader{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.SubmitForm-module__eVfUiG__curveLabel{text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted-foreground);font-size:10px;font-weight:500}.SubmitForm-module__eVfUiG__curveCard{background-color:var(--color-card);border-radius:1rem;padding:1rem;box-shadow:0 1px 4px #0000000a}.SubmitForm-module__eVfUiG__importedNotice{color:var(--color-muted-foreground);align-items:center;gap:.5rem;margin-top:.75rem;font-size:.75rem;display:flex}.SubmitForm-module__eVfUiG__importedIcon{color:#16a34a}.SubmitForm-module__eVfUiG__submitBar{justify-content:center;margin-top:2.5rem;display:flex}.SubmitForm-module__eVfUiG__submitButton{background-color:var(--color-primary);color:var(--color-primary-foreground);border-radius:9999px;padding:1.25rem 2.5rem;font-size:.875rem}.SubmitForm-module__eVfUiG__submitButton:hover:not(:disabled){background-color:color-mix(in srgb, var(--color-primary) 90%, transparent)}
.page-module__vIfrIa__main{max-width:var(--container-width,1280px);margin-inline:auto;padding-block:2rem;padding-inline:1rem}.page-module__vIfrIa__submitButton{border-radius:9999px;gap:.375rem;font-size:.875rem}
.page-module__wTXZBq__main{max-width:var(--container-width,1280px);margin-inline:auto;padding-block:2rem;padding-inline:1rem}
.ProfileActions-module__ywhNgG__container{border-top:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.ProfileActions-module__ywhNgG__deleteButton{color:var(--color-destructive);border-color:color-mix(in srgb, var(--color-destructive) 30%, transparent)}.ProfileActions-module__ywhNgG__deleteButton:hover{background-color:color-mix(in srgb, var(--color-destructive) 10%, transparent)}
.page-module__xgPmsG__main{max-width:var(--container-width,1280px);max-width:42rem;margin-inline:auto;padding-block:2rem;padding-inline:1rem}.page-module__xgPmsG__content{max-width:none}.page-module__xgPmsG__content>*+*{margin-top:1.5rem}.page-module__xgPmsG__sectionTitle{letter-spacing:-.015em;color:var(--color-foreground);font-size:1.125rem;font-weight:600}.page-module__xgPmsG__sectionText{color:var(--color-muted-foreground);font-size:.875rem;line-height:1.625}.page-module__xgPmsG__link{color:var(--color-secondary);text-decoration:none}.page-module__xgPmsG__link:hover{text-decoration:underline}
.page-module__O-Dmqq__main{max-width:var(--container-width,1280px);max-width:42rem;margin-inline:auto;padding-block:2rem;padding-inline:1rem}.page-module__O-Dmqq__notFoundMain{max-width:var(--container-width,1280px);text-align:center;margin-inline:auto;padding-block:4rem;padding-inline:1rem}.page-module__O-Dmqq__notFoundTitle{font-size:1.5rem;font-family:var(--font-heading);color:var(--color-primary);margin-bottom:.5rem;font-weight:600}.page-module__O-Dmqq__notFoundText{color:var(--color-muted-foreground);margin-bottom:1rem}.page-module__O-Dmqq__backLink{color:var(--color-muted-foreground);margin-bottom:1.5rem;font-size:.875rem;text-decoration:none;transition:color .15s;display:inline-block}.page-module__O-Dmqq__backLink:hover{color:var(--color-foreground)}.page-module__O-Dmqq__titleBlock{margin-bottom:1rem}.page-module__O-Dmqq__title{font-family:var(--font-heading);letter-spacing:-.025em;color:var(--color-primary);font-size:1.875rem;font-weight:600}.page-module__O-Dmqq__titleMeta{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.page-module__O-Dmqq__metaText{color:var(--color-muted-foreground);font-size:.875rem}.page-module__O-Dmqq__tag{background-color:var(--color-accent);color:var(--color-muted-foreground);border-radius:9999px;padding-block:.125rem;padding-inline:.5rem;font-size:.75rem}.page-module__O-Dmqq__forkedFrom{color:var(--color-muted-foreground);margin-top:.5rem;font-size:.75rem}.page-module__O-Dmqq__link{color:var(--color-secondary);text-decoration:none}.page-module__O-Dmqq__link:hover{text-decoration:underline}.page-module__O-Dmqq__chartSection{margin-top:1.5rem}.page-module__O-Dmqq__paramsGrid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem;display:grid}@media (min-width:768px){.page-module__O-Dmqq__paramsGrid{grid-template-columns:repeat(3,1fr)}}.page-module__O-Dmqq__paramLabel{color:var(--color-muted-foreground);font-size:.75rem}.page-module__O-Dmqq__paramValue{margin-top:.125rem;font-size:.875rem;font-weight:500}.page-module__O-Dmqq__section{margin-top:1rem}.page-module__O-Dmqq__sectionLabel{color:var(--color-muted-foreground);margin-bottom:.25rem;font-size:.75rem}.page-module__O-Dmqq__sectionText{font-size:.875rem}.page-module__O-Dmqq__sectionTextRelaxed{font-size:.875rem;line-height:1.625}.page-module__O-Dmqq__ratingSection{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem}.page-module__O-Dmqq__ratingLabel{color:var(--color-muted-foreground);margin-bottom:.5rem;font-size:.75rem}.page-module__O-Dmqq__buyLink{text-align:center;margin-top:1rem}.page-module__O-Dmqq__buyLinkAnchor{color:var(--color-secondary);font-size:.875rem;text-decoration:none}.page-module__O-Dmqq__buyLinkAnchor:hover{text-decoration:underline}
