/* v1.2.1 — shared hierarchy and touch geometry; final cascade authority. */
#coffee-refined{--ui-ink:#292e2a;--ui-muted:#626b61;--ui-line:#dfe3da;--ui-surface:#f0f2eb;padding:24px 16px 48px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Hiragino Kaku Gothic ProN',sans-serif;color:var(--ui-ink)}
#coffee-refined .app{max-width:560px;padding:28px 24px;border-radius:18px}
#coffee-refined .app>p.small:first-child{margin:0 0 28px}
#coffee-refined h2{font-family:inherit;font-size:24px;font-weight:500;line-height:1.4;letter-spacing:-.02em;margin:28px 0 24px}
#coffee-refined h3{font-size:13px;font-weight:500;line-height:1.5;color:var(--ui-muted);margin:24px 0 8px}
#coffee-refined label{font-size:13px;line-height:1.5;color:var(--ui-muted);margin:18px 0 6px}
#coffee-refined .row{gap:8px;margin:8px 0 0}
#coffee-refined input:not([type=range]){min-height:48px;padding:12px;border:1px solid var(--ui-line);border-radius:8px;background:#f6f6f1;color:var(--ui-ink);font-size:16px;line-height:1.5}
#coffee-refined input.name{font-family:'Yu Mincho','Hiragino Mincho ProN',Georgia,serif;font-size:25px;background:transparent;border:0;border-bottom:1px solid var(--ui-line);border-radius:0;padding:12px 0 16px}
#coffee-refined input::placeholder{color:#737b70;opacity:1}
#coffee-refined button{font-family:inherit;font-size:15px;line-height:1.4;min-height:48px;min-width:44px;border:1px solid transparent;border-radius:9px;padding:11px 12px;background:var(--ui-surface);color:#384134;touch-action:manipulation}
#coffee-refined button[aria-pressed=true]{background:#dce5d4;color:#263521;border-color:#a6b998}
#coffee-refined button.primary{background:#33442f;color:#fff}
#coffee-refined details{margin:20px 0 0}
#coffee-refined summary{min-height:48px;padding:13px 0;font-size:14px;line-height:22px;color:#4e6344}
#coffee-refined details[open]{padding-bottom:8px}
#coffee-refined details[open]>summary{border-bottom:1px solid var(--ui-line);margin-bottom:12px}
#coffee-refined .fine{gap:12px}
#coffee-refined .pour{margin:12px 0;gap:8px}
#coffee-refined .pour label{margin:0;min-width:0}
#coffee-refined .pour input{margin-top:6px}
#coffee-refined .pour button{width:44px;min-height:48px;padding:0;font-size:22px}
#coffee-refined #composer>.row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch;margin-top:24px}
#coffee-refined #composer>.row:has(#journey-skip[hidden]){grid-template-columns:1fr}
#coffee-refined #journey-next{min-width:0;margin:0}
#coffee-refined #journey-skip{background:transparent;font-size:13px;padding:11px 8px;color:#596350}
#coffee-refined .bottom{margin-top:24px;padding-top:16px;border-top:1px solid var(--ui-line)}
#coffee-refined .bottom>.small:first-child{font-size:12px;margin:0 0 8px}
#coffee-refined #journey-links{margin:0}
#coffee-refined #journey-links button{min-height:48px;font-size:14px;line-height:1.6;padding:12px 0;border-bottom:1px solid #e6e8df;border-radius:0;background:transparent}
#coffee-refined .bottom details{margin:12px 0}
#coffee-refined #cw-finish{background:transparent;border:1px solid var(--ui-line);font-size:14px}
#coffee-refined #composer[data-stage=color] #cw-finish{display:none}
#coffee-refined #composer[data-stage=color] .bottom>p:last-child{display:none}
#coffee-refined #cw-result>.row{gap:8px;margin-top:16px}
#coffee-refined #cw-back{border:1px solid var(--ui-line);font-size:14px}
#coffee-refined .color-palette{grid-template-columns:repeat(3,minmax(44px,1fr));gap:8px;margin:16px 0}
#coffee-refined button.color-pick{min-height:60px;padding:6px 0;font-size:11px;border:0;background:transparent}
#coffee-refined button.color-pick[aria-pressed=true]{background:transparent;color:#384134}
#coffee-refined .hue-heading label{margin:0;font-size:12px}
#coffee-refined #coffee-hue{margin:0;min-height:48px}
#coffee-refined .preview{font-size:15px;line-height:1.75}
#coffee-refined #caption-preview{font-size:12px;padding:8px 0}
@media(min-width:480px){#coffee-refined .color-palette{grid-template-columns:repeat(6,minmax(44px,1fr))}}
@media(max-width:480px){#coffee-refined{padding:12px 8px 28px}#coffee-refined .app{padding:22px 16px;border-radius:14px}#coffee-refined .app>p.small:first-child{margin-bottom:24px}#coffee-refined h2{font-size:23px}#coffee-refined [data-panel=color] .coffee-card-image{max-width:240px}}
