/* COLIBRI — component styles. Every value comes from tokens.css. */
.cb-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-pill);border:2px solid transparent;font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s}
.cb-btn:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.cb-btn--buy{background:var(--mango);color:var(--ink)}
.cb-btn--buy:hover{background:var(--cream);border-color:var(--mango)}
.cb-btn--primary{background:var(--ink);color:var(--on-ink)}
.cb-btn--primary:hover{background:var(--teal-text)}
.cb-btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.cb-btn--ghost:hover{background:var(--ink);color:var(--on-ink)}
.cb-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:6px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:500}
.cb-chip::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--mango)}
.cb-chip--coral::before{background:var(--coral)}
.cb-chip--teal::before{background:var(--teal)}
.cb-flavor{display:flex;flex-direction:column;border-radius:var(--radius-md);overflow:hidden;background:var(--surface-raised);border:1px solid var(--line);font-family:var(--font-sans);color:var(--ink);min-width:0}
.cb-flavor__band{position:relative;overflow:hidden;padding:var(--space-6) var(--space-5);min-height:120px;display:flex;align-items:center}
.cb-flavor__band svg{position:absolute;right:0;top:0;height:100%;width:45%}
.cb-flavor__band circle{opacity:.45}
.cb-flavor__name{position:relative;margin:0;font-size:32px;line-height:36px;font-weight:700;letter-spacing:.1em;color:var(--on-fill)}
.cb-flavor__body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5)}
.cb-flavor__ing{margin:0;font-size:15px;line-height:22px;font-weight:500}
.cb-flavor__ing span{display:block;color:var(--ink-muted)}
.cb-flavor__meta{margin:0;font-size:13px;line-height:18px;font-weight:600;letter-spacing:.18em;color:var(--teal-text);text-transform:uppercase}
.cb-flavor--classic .cb-flavor__band{background:var(--classic)}.cb-flavor--classic circle{fill:var(--classic-tint)}
.cb-flavor--spiced .cb-flavor__band{background:var(--spiced)}.cb-flavor--spiced circle{fill:var(--spiced-tint)}
.cb-flavor--jasmine .cb-flavor__band{background:var(--jasmine)}.cb-flavor--jasmine circle{fill:var(--jasmine-tint)}
.cb-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--cream);border-bottom:1px solid var(--line);font-family:var(--font-sans)}
.cb-header img{height:44px;width:auto;display:block}
.cb-header nav{display:flex;align-items:center;gap:var(--space-5)}
.cb-header nav a{color:var(--ink);text-decoration:none;font-size:15px;font-weight:500}
.cb-header nav a:hover{color:var(--teal-text)}
.cb-header .cb-lang{font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--ink-muted)}
@media (max-width:640px){.cb-header nav a:not(.cb-btn){display:none}}
@media (prefers-reduced-motion:reduce){.cb-btn{transition:none}}
