.espresso-page{--espresso-muted:#595e57;--espresso-accent:#805433;--espresso-border:#d4d3cb;--espresso-soft:#ede9e1}
.espresso-page button,.espresso-page input,.espresso-page select{font:inherit}.espresso-page select{max-width:100%}.espresso-page .header nav a[aria-current]{border-bottom:1px solid var(--bronze)}
.espresso-hero{display:grid;grid-template-columns:1.6fr .75fr;gap:72px;padding-block:64px 58px;align-items:center}.espresso-hero h1{font-size:clamp(2.8rem,4.4vw,4.9rem);line-height:1.09;margin-top:24px}.espresso-hero h1 em{font-size:.85em}.espresso-lead{font-size:1.0625rem;color:var(--espresso-muted);line-height:1.8;max-width:660px;margin-top:26px}.espresso-benefits{display:flex;flex-wrap:wrap;gap:9px 24px;margin-top:27px;font-size:.8125rem;color:var(--espresso-muted)}.espresso-benefits span{display:flex;align-items:center;gap:8px}.espresso-benefits span:before{content:'';width:5px;height:5px;background:var(--bronze);border-radius:50%}
.espresso-principle{padding-left:36px;border-left:1px solid var(--espresso-border)}.cup-drawing{width:160px;height:109px;color:var(--ink);margin-bottom:14px}.espresso-principle .eyebrow{color:var(--espresso-accent)}.principle-title{font-size:1.35rem;line-height:1.5;margin-top:13px;letter-spacing:-.02em}.espresso-principle>p:last-child{font-size:.875rem;color:var(--espresso-muted);margin-top:14px;max-width:240px}
.espresso-workspace{padding-bottom:72px;scroll-margin-top:28px}.loading-copy{padding:40px;border:1px solid var(--line)}.espresso-nojs{border:1px solid var(--line);padding:32px}.espresso-nojs h2{font-size:1.75rem;margin-bottom:18px}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.tool-main{min-width:0;border:1px solid var(--espresso-border);background:#fff;box-shadow:0 6px 24px #20232104}.tool-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;border-bottom:1px solid var(--espresso-border);font-size:.8125rem}.tool-kicker{font-weight:600;letter-spacing:.07em}.quiet-button{background:transparent;border:0;color:var(--espresso-muted);text-decoration:underline;text-underline-offset:4px;font-size:.8125rem;padding:7px 0;min-height:36px}.tool-steps{display:flex;gap:0;list-style:none;padding:0;margin:0;border-bottom:1px solid var(--espresso-border)}.tool-steps li{flex:1;min-width:0}.tool-steps button{width:100%;height:58px;border:0;background:#f8f7f4;color:var(--espresso-muted);font-size:.8125rem;display:flex;align-items:center;justify-content:center;gap:7px;padding:8px}.tool-steps button:disabled{opacity:.65}.tool-steps button[aria-current]{background:var(--ink);color:#fff}.step-index{width:20px;height:20px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;flex:none}.tool-panel{padding:32px}.tool-panel h2,.result-heading{font-size:clamp(1.8rem,2.4vw,2.55rem);line-height:1.16;letter-spacing:-.035em;scroll-margin-top:24px}.tool-panel h2:focus,.result-heading:focus{outline:0}.step-description{margin-top:14px;color:var(--espresso-muted);max-width:640px}.step-description a{text-decoration:underline}.tool-panel fieldset{margin-top:28px}.tool-panel legend,.field-label{font-size:.9375rem;font-weight:600;letter-spacing:0;line-height:1.5;margin-bottom:12px}.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.option-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.option-grid.one{grid-template-columns:1fr}.radio-card{display:flex;gap:10px;align-items:flex-start;position:relative;padding:17px 14px;min-height:68px;border:1px solid var(--espresso-border);cursor:pointer;border-radius:2px;background:#fff;line-height:1.4}.radio-card:has(input:checked){border-color:#7c6149;background:#f3eee6;box-shadow:inset 0 0 0 1px #7c6149}.radio-card:hover{border-color:#9d8a76}.radio-card input{margin:3px 0 0;width:16px;height:16px;accent-color:var(--ink);flex:none}.radio-card strong{font-size:.875rem;display:block;font-weight:600}.radio-card small{display:block;font-size:.8125rem;color:var(--espresso-muted);margin-top:7px;line-height:1.55}.radio-card:has(input:focus-visible){outline:3px solid var(--bronze);outline-offset:3px}.radio-card input:focus-visible{outline:none}.question-note{font-size:.8125rem;color:var(--espresso-muted);margin-top:12px}.select-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}.input-label{display:block;min-width:0;font-size:.875rem}.input-label>span{display:block;margin-bottom:8px;font-weight:600}.input-label select,.input-label input{width:100%;padding:12px 11px;border:1px solid #a8ada3;border-radius:2px;background:#fff;color:var(--ink);font-size:1rem;min-width:0;height:48px}.input-label small{display:block;font-size:.75rem;color:var(--espresso-muted);margin-top:6px}.unit-input{position:relative}.unit-input input{padding-right:38px}.unit-input>span{position:absolute;right:13px;top:12px;color:var(--espresso-muted);font-size:.9375rem;pointer-events:none}.recipe-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.recipe-inputs .input-label{min-width:0}.field-error{font-size:.8125rem;line-height:1.5;color:#a12d20;margin-top:7px}.input-label input[aria-invalid=true]{border-color:#a12d20}.form-error{border-left:3px solid #a12d20;background:#fff2ee;padding:13px 16px;color:#8e251a;font-size:.875rem;margin-top:20px}.live-ratio{margin-top:20px;padding:16px 18px;background:var(--espresso-soft);font-size:.9375rem}.extra-options{margin-top:26px;border-top:1px solid var(--espresso-border);border-bottom:1px solid var(--espresso-border)}.extra-options summary{padding:17px 0;cursor:pointer;font-size:.875rem;font-weight:600}.extra-inner{padding-bottom:22px}.extra-inner .select-row{margin-top:0}.extra-inner .input-label+.input-label{margin-top:0}.extra-inner>.input-label{margin-top:18px}.conditional-question{margin-top:26px}.tool-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--espresso-border);margin-top:30px;padding-top:24px}.tool-bottom .button{min-width:164px;min-height:48px}.tool-bottom .quiet-button{min-height:44px}.step-count{color:var(--espresso-muted);font-size:.8125rem;margin-top:20px}.tool-sidebar{background:var(--ink);color:var(--paper);padding:28px 24px;position:sticky;top:24px}.tool-sidebar .eyebrow{color:var(--bronze-light)}.tool-sidebar h3{font-family:var(--serif);font-size:1.75rem;line-height:1.3;margin-top:20px}.tool-sidebar>p:not(.eyebrow){font-size:.875rem;line-height:1.7;color:#d2d5cd;margin-top:16px}.sidebar-summary{margin:26px 0 0;border-top:1px solid #4a5048;padding-top:16px}.sidebar-summary>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:.8125rem;padding-block:7px}.sidebar-summary dt{color:#bdc5b7}.sidebar-summary dd{margin:0;text-align:right;max-width:170px}.sidebar-summary a{text-decoration:underline;text-underline-offset:3px}.side-progress{height:3px;background:#4a5048;margin-top:24px;overflow:hidden}.side-progress span{display:block;height:100%;background:var(--bronze-light);transition:width .2s}.sidebar-footnote{border-top:1px solid #4a5048;margin-top:22px;padding-top:16px;font-size:.75rem;color:#bdc5b7}
.result-banner{background:#ede9e1;color:var(--ink);padding:15px 28px;font-size:.8125rem;display:flex;justify-content:space-between;gap:12px}.result-banner.success{background:#e7eee5}.result-banner span:last-child{color:var(--espresso-muted)}.result-panel{padding:32px}.result-eyebrow{color:var(--espresso-accent);font-size:.75rem;letter-spacing:.1em;font-weight:600;margin-bottom:16px}.result-intro{font-size:1.0625rem;color:var(--espresso-muted);margin-top:18px}.change-focus{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid #c8b69f;background:#f8f4ec;margin-top:24px}.change-focus svg{width:26px;height:26px;flex:none;color:var(--espresso-accent)}.change-focus strong{display:block;font-size:.9375rem}.change-focus span{display:block;font-size:.8125rem;color:var(--espresso-muted);margin-top:4px}.result-recipe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 0;border-block:1px solid var(--espresso-border);padding-block:20px;gap:12px}.result-recipe>div{min-width:0}.result-recipe dt{font-size:.75rem;color:var(--espresso-muted);margin-bottom:6px}.result-recipe dd{margin:0;font-family:var(--serif);font-size:1.7rem;line-height:1.2}.result-recipe dd span{font-family:var(--sans);font-size:.8125rem;color:var(--espresso-muted)}.result-section{margin-top:28px}.result-section h3{font-size:1.125rem;font-weight:600;margin-bottom:14px}.result-steps{counter-reset:trial;list-style:none;margin:0;padding:0;display:grid;gap:18px}.result-steps li{display:flex;gap:14px;line-height:1.7;font-size:.9375rem}.result-steps li:before{counter-increment:trial;content:counter(trial);width:25px;height:25px;border-radius:50%;border:1px solid #bcb9ad;display:flex;align-items:center;justify-content:center;flex:none;font-size:.75rem;margin-top:2px}.result-watch{padding:21px 22px;background:#f5f6f2;border-left:3px solid #7a866d;margin-top:26px}.result-watch h3{font-size:.875rem;font-weight:600;margin-bottom:8px}.result-watch p{font-size:.9375rem;color:var(--espresso-muted)}.result-detail{border-top:1px solid var(--espresso-border);margin-top:24px}.result-detail summary{padding:17px 0;cursor:pointer;font-size:.875rem;font-weight:600}.result-detail ul{padding-left:20px;font-size:.875rem;color:var(--espresso-muted);margin-top:0}.result-detail li+li{margin-top:10px}.result-detail p{font-size:.875rem;color:var(--espresso-muted);margin-bottom:16px}.result-help-note{font-size:.8125rem;color:var(--espresso-muted);margin-top:20px}.result-help-note a{text-decoration:underline}.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.outline-button{border:1px solid #a9aca1;background:transparent;color:var(--ink);padding:12px 16px;font-size:.8125rem;line-height:1.4;min-height:44px}.outline-button:hover{background:#eeeee8}.result-start-again{border-top:1px solid var(--espresso-border);margin-top:25px;padding-top:17px;display:flex;flex-wrap:wrap;gap:10px 24px}.status-line{font-size:.8125rem;min-height:22px;margin-top:12px;color:var(--espresso-muted)}.feedback-panel{padding:24px;background:#f3f0e8;border:1px solid var(--espresso-border);margin-top:28px}.feedback-panel h3{font-size:1.4rem;margin-bottom:12px}.feedback-panel p{font-size:.875rem;color:var(--espresso-muted)}.feedback-panel fieldset{margin-top:22px}.feedback-panel legend{font-size:.875rem;margin-bottom:10px}.feedback-panel .radio-card{min-height:50px;padding:13px}.feedback-panel .recipe-inputs{grid-template-columns:1fr 1fr}.feedback-panel .button{margin-top:22px;min-height:48px}.journal{margin-top:24px;border:1px solid var(--espresso-border);padding:25px;background:#fff}.journal h3{font-size:1.25rem}.journal ol{padding:0;margin:18px 0 0;list-style:none;display:grid;gap:13px}.journal li{border-top:1px solid var(--espresso-border);padding-top:13px;font-size:.875rem}.journal strong{font-weight:600;display:block}.journal small{display:block;color:var(--espresso-muted);font-size:.8125rem;margin-top:4px}.journal-outcome{color:var(--espresso-accent);font-weight:600}.session-bar{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:18px;align-items:center}.session-bar p{font-size:.75rem;color:var(--espresso-muted);flex-basis:100%}.feedback-panel .form-error{background:#fff}.share-fallback{margin-top:15px}.share-fallback input{width:100%;padding:10px;border:1px solid #a8ada3;font-size:.8125rem;border-radius:0}.share-fallback label{font-size:.8125rem;display:block;margin-bottom:5px}.success-title{color:#394c31}.success-note{font-size:.9375rem;color:var(--espresso-muted);margin-top:20px;line-height:1.8}
.espresso-knowledge{border-top:1px solid var(--espresso-border);padding-block:62px 72px}.knowledge-heading{display:grid;grid-template-columns:1fr 2fr;gap:36px}.knowledge-heading>.eyebrow{color:var(--espresso-muted);padding-top:6px}.knowledge-heading h2{font-size:clamp(2rem,3vw,3.2rem)}.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:42px}.knowledge-number{font-family:var(--serif);font-size:1.75rem;color:var(--espresso-accent)}.knowledge-grid h3{font-size:1.125rem;line-height:1.5;margin-top:14px}.knowledge-grid p{font-size:.9375rem;color:var(--espresso-muted);margin-top:14px}.espresso-faq{margin-top:42px;max-width:940px}.espresso-faq details{border-top:1px solid var(--espresso-border)}.espresso-faq details:last-child{border-bottom:1px solid var(--espresso-border)}.espresso-faq summary{padding:20px 0;font-size:1rem;cursor:pointer}.espresso-faq details>p,.espresso-faq details>ul{font-size:.9375rem;color:var(--espresso-muted);margin-bottom:20px;max-width:860px}.espresso-faq details a{text-decoration:underline;text-underline-offset:3px}.source-list{padding-left:22px}.source-list li+li{margin-top:8px}.espresso-faq .small-copy{font-size:.8125rem}.espresso-course{background:#eae7df}.espresso-course-inner{display:grid;grid-template-columns:1.5fr 1fr;gap:64px;padding-block:60px;align-items:center}.espresso-course h2{font-size:clamp(2rem,3vw,3rem);margin-top:22px}.espresso-course p:not(.eyebrow){max-width:620px;margin-top:22px;color:var(--espresso-muted)}.espresso-course-actions{display:flex;align-items:flex-start;flex-direction:column;gap:18px}.espresso-page .footer-links{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1080px){.espresso-hero{gap:38px}.tool-layout{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.tool-panel,.result-panel{padding:26px}.tool-sidebar{padding:24px 20px}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-steps button{font-size:.75rem}.tool-toolbar{padding-inline:24px}}
@media(max-width:850px){.espresso-hero{grid-template-columns:1fr;padding-block:42px}.espresso-hero h1{font-size:clamp(2.7rem,6vw,4rem)}.espresso-principle{display:none}.tool-layout{grid-template-columns:minmax(0,1fr)}.tool-sidebar{position:static;display:none}.knowledge-heading{grid-template-columns:1fr 2fr}.knowledge-grid{gap:24px}.espresso-course-inner{gap:32px}.tool-panel,.result-panel{padding:30px}.tool-steps button{font-size:.8125rem}}
@media(max-width:600px){.espresso-hero{padding-block:32px}.espresso-hero h1{font-size:clamp(2.25rem,8.2vw,3rem);letter-spacing:-.045em}.espresso-lead{font-size:1rem;line-height:1.7}.espresso-benefits{font-size:.75rem;gap:8px 16px}.espresso-page .section{width:calc(100% - 32px)}.tool-toolbar{padding:13px 18px;align-items:flex-start;gap:10px}.tool-kicker{font-size:.6875rem;padding-top:9px}.tool-toolbar .quiet-button{font-size:.75rem;max-width:140px;text-align:right}.tool-steps button{height:57px;font-size:.6875rem;flex-direction:column;gap:3px;padding:6px 2px;line-height:1.3}.step-index{width:18px;height:18px;font-size:.625rem}.tool-panel,.result-panel{padding:24px 18px}.tool-panel h2,.result-heading{font-size:1.85rem}.step-description{font-size:.9375rem}.option-grid,.option-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.option-grid.one,.option-grid.basket-grid{grid-template-columns:1fr}.radio-card{padding:13px 11px;gap:8px}.radio-card strong{font-size:.8125rem}.radio-card small{font-size:.75rem;line-height:1.5}.radio-card input{width:15px;height:15px}.select-row{grid-template-columns:1fr;gap:18px}.recipe-inputs{grid-template-columns:1fr 1fr;gap:18px 12px}.recipe-inputs>.input-label:last-child{grid-column:1/-1}.input-label>span{font-size:.8125rem}.input-label input,.input-label select{font-size:1rem}.tool-bottom{gap:15px}.tool-bottom .button{min-width:0;padding:15px 16px;max-width:75%}.result-banner{padding:13px 18px;font-size:.75rem}.result-banner span:last-child{display:none}.result-intro{font-size:1rem}.change-focus{padding:15px}.result-recipe{gap:12px}.result-recipe dd{font-size:1.45rem}.result-recipe dt{font-size:.6875rem}.result-steps li{font-size:.875rem;gap:10px}.result-watch{padding:17px}.result-watch p{font-size:.875rem}.feedback-panel{padding:18px 14px}.feedback-panel .recipe-inputs{grid-template-columns:1fr 1fr}.feedback-panel .recipe-inputs>.input-label:last-child{grid-column:auto}.feedback-panel .button{width:100%}.journal{padding:22px 18px}.knowledge-heading{display:block}.knowledge-heading>.eyebrow{margin-bottom:22px}.knowledge-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.knowledge-grid article{border-top:1px solid var(--espresso-border);padding-top:20px}.knowledge-grid h3{margin-top:7px}.knowledge-grid p{margin-top:10px}.espresso-knowledge{padding-block:42px 48px}.espresso-course-inner{grid-template-columns:1fr;gap:28px;padding-block:42px}.espresso-course-actions{align-items:stretch}.espresso-course-actions .text-link{align-self:flex-start}.espresso-workspace{padding-bottom:42px}.result-actions>.button{width:100%}.result-actions>.outline-button{flex:1}.result-help-note{font-size:.75rem}.status-line{font-size:.75rem}.espresso-faq summary{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.side-progress span{transition:none}}
@media print{body.espresso-page{background:#fff;font-size:10pt}.espresso-page .header,.espresso-hero,.espresso-knowledge,.espresso-course,.espresso-page .footer,.tool-toolbar,.tool-steps,.tool-sidebar,.result-actions,.feedback-panel,.result-start-again,.session-bar,.status-line,.result-help-note,.tool-bottom,.share-fallback,.skip,.screen-only{display:none!important}.espresso-page .section{width:100%}.tool-layout{display:block}.tool-main,.journal{border:0;box-shadow:none}.result-panel,.journal{padding:0}.result-heading{font-size:23pt}.result-intro{font-size:11pt}.result-section,.result-watch,.change-focus,.journal li{break-inside:avoid}.result-detail{display:block}.result-detail>*{display:block!important}.result-detail summary{font-weight:bold;list-style:none;padding-block:12pt 6pt}.result-recipe dd{font-size:17pt}.result-recipe dt{font-size:9pt}.result-steps li,.result-watch p{font-size:10pt}.result-banner{background:white;padding:8pt 0}.espresso-workspace{padding:0}.tool-panel{padding:0}.journal{margin-top:20pt}.result-panel:after{content:'KAFFIKO · kaffiko.de/espresso-fehlerhilfe.html';display:block;margin-top:20pt;font-size:9pt;color:#555}}

.input-label>label{display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.extra-inner>label.input-label+label.input-label{margin-top:18px}.grind-note{margin-top:14px;font-size:.875rem;overflow-wrap:anywhere}.grind-note span{color:var(--espresso-muted);font-size:.8125rem}
