/**
 * Café Sob Medida Premium
 * Presentation Layer
 */

.aip-premium-presentation {
    --aip-premium-bg: #f7f4ef;
    --aip-premium-surface: #ffffff;
    --aip-premium-text: #2f2925;
    --aip-premium-muted: #6f6761;
    --aip-premium-border: #e6dfd8;
    --aip-premium-accent: #6b4932;
    --aip-premium-accent-hover: #553825;

    --aip-premium-success: #47774d;
    --aip-premium-success-hover: #385f3d;
    --aip-premium-success-soft: #f0f6f1;
    --aip-premium-success-border: #a8c5ad;

    --aip-premium-over: #a45566;
    --aip-premium-over-border: #db9daa;
    --aip-premium-over-soft: #fcf0f2;

    --aip-premium-danger: #a2453f;

    --aip-premium-radius: 16px;

    --aip-premium-shadow:
        0 8px 24px rgba(47, 41, 37, 0.06);

    width: 100%;
    max-width: 1180px;

    margin: 0 auto;

    padding: 32px 24px 64px;

    box-sizing: border-box;

    color: var(--aip-premium-text);
}

.aip-premium-presentation *,
.aip-premium-presentation *::before,
.aip-premium-presentation *::after {
    box-sizing: border-box;
}

/* =========================================================
 * Header
 * ========================================================= */

.aip-premium-page-header {
    margin-bottom: 28px;
}

.aip-premium-page-header__content {
    max-width: 760px;
}

.aip-premium-eyebrow {
    margin: 0 0 8px;

    color: var(--aip-premium-accent);

    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.aip-premium-page-title {
    margin: 0;

    color: var(--aip-premium-text);

    font-size: clamp(2rem, 5vw, 3rem);

    line-height: 1.1;
}

.aip-premium-page-subtitle {
    max-width: 680px;

    margin: 14px 0 0;

    color: var(--aip-premium-muted);

    font-size: 1.05rem;
    line-height: 1.6;
}

/* =========================================================
 * Navegação
 * ========================================================= */

.aip-premium-nav {
    width: 100%;

    margin: 0 0 36px;

    padding: 0 0 14px;

    border-bottom:
        1px solid var(--aip-premium-border);

    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
}

.aip-premium-nav__list {
    display: flex !important;

    flex-wrap: wrap;
    align-items: center;

    gap: 8px;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
    list-style-type: none !important;

    overflow: visible !important;
    max-height: none !important;
}

.aip-premium-nav__item {
    display: block;

    flex: 0 0 auto;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

.aip-premium-nav__item::marker {
    content: '';
    font-size: 0;
}

.aip-premium-nav__item::before,
.aip-premium-nav__item::after,
.aip-premium-nav__list::before,
.aip-premium-nav__list::after {
    display: none !important;
    content: none !important;
}

.aip-premium-nav__button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    appearance: none;
    -webkit-appearance: none;

    margin: 0;

    padding: 9px 14px;

    border: 1px solid transparent;

    border-radius: 999px;

    background: transparent;

    color: var(--aip-premium-muted);

    cursor: pointer;

    font: inherit;
    font-size: 0.94rem;
    font-weight: 600;
    line-height: 1.2;

    white-space: nowrap;

    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease;
}

.aip-premium-nav__button:hover,
.aip-premium-nav__button:focus-visible {
    border-color: var(--aip-premium-border);

    background: var(--aip-premium-surface);

    color: var(--aip-premium-text);

    outline: none;
}

.aip-premium-nav__button.is-active {
    border-color: var(--aip-premium-accent);

    background: var(--aip-premium-accent);

    color: #ffffff;
}

/* =========================================================
 * Corpo
 * ========================================================= */

.aip-premium-presentation__body {
    display: grid;

    gap: 36px;
}

.aip-premium-section-heading {
    margin-bottom: 20px;
}

.aip-premium-section-heading h2 {
    margin: 0;

    color: var(--aip-premium-text);

    font-size: 1.55rem;

    line-height: 1.25;
}

.aip-premium-section-heading p {
    max-width: 720px;

    margin: 8px 0 0;

    color: var(--aip-premium-muted);

    line-height: 1.6;
}

/* =========================================================
 * Visão geral
 * ========================================================= */

.aip-premium-overview {
    padding: 28px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: var(--aip-premium-radius);

    background: var(--aip-premium-bg);
}

.aip-premium-overview-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 16px;
}

.aip-premium-overview-card {
    display: flex;

    min-height: 190px;

    flex-direction: column;
    align-items: flex-start;

    padding: 22px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: 14px;

    background: var(--aip-premium-surface);

    box-shadow: var(--aip-premium-shadow);
}

.aip-premium-overview-card__title {
    margin: 0;

    color: var(--aip-premium-text);

    font-size: 1.15rem;

    line-height: 1.3;
}

.aip-premium-overview-card__description {
    flex: 1;

    margin: 10px 0 18px;

    color: var(--aip-premium-muted);

    line-height: 1.55;
}

.aip-premium-overview-card__action {
    appearance: none;

    padding: 10px 16px;

    border: 0;

    border-radius: 10px;

    background: var(--aip-premium-accent);

    color: #ffffff;

    cursor: pointer;

    font: inherit;
    font-weight: 700;
}

/* =========================================================
 * Módulos
 * ========================================================= */

.aip-premium-module {
    scroll-margin-top: 24px;
}

.aip-premium-module--placeholder {
    padding: 26px;

    border:
        1px dashed var(--aip-premium-border);

    border-radius: var(--aip-premium-radius);

    background: var(--aip-premium-surface);
}

/* =========================================================
 * Receita Recomendada
 * ========================================================= */

.aip-premium-recipe-card {
    width: 100%;

    padding: 28px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: var(--aip-premium-radius);

    background: var(--aip-premium-surface);

    box-shadow: var(--aip-premium-shadow);
}

.aip-premium-recipe-card__header {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 28px;
}

.aip-premium-recipe-card__eyebrow {
    margin: 0 0 8px;

    color: var(--aip-premium-accent);

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.aip-premium-recipe-card__method {
    margin: 0;

    color: var(--aip-premium-text);

    font-size:
        clamp(1.8rem, 4vw, 2.5rem);

    font-weight: 700;

    line-height: 1.1;
}

.aip-premium-recipe-parameters {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 1px;

    overflow: hidden;

    border:
        1px solid var(--aip-premium-border);

    border-radius: 14px;

    background: var(--aip-premium-border);
}

.aip-premium-recipe-parameter {
    display: flex;

    min-width: 0;
    min-height: 112px;

    align-items: center;

    gap: 14px;

    padding: 20px;

    background: var(--aip-premium-surface);
}

.aip-premium-recipe-parameter__icon {
    display: inline-flex;

    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: var(--aip-premium-bg);

    color: var(--aip-premium-accent);
}

.aip-premium-recipe-parameter__value {
    display: flex;

    flex-wrap: wrap;

    align-items: baseline;

    gap: 4px;

    color: var(--aip-premium-text);

    font-size: 1.2rem;
    font-weight: 700;
}

.aip-premium-recipe-parameter__unit {
    color: var(--aip-premium-muted);

    font-size: 0.82rem;
}

.aip-premium-recipe-parameter__label {
    margin-top: 5px;

    color: var(--aip-premium-muted);

    font-size: 0.83rem;
}

.aip-premium-recipe-card__actions {
    display: flex;

    justify-content: center;

    margin-top: 26px;
}

.aip-premium-recipe-primary-action {
    display: inline-flex;

    min-width: 230px;
    min-height: 48px;

    align-items: center;
    justify-content: center;

    gap: 9px;

    border: 0;

    border-radius: 12px;

    background: var(--aip-premium-success);

    color: #ffffff;

    cursor: pointer;

    padding: 12px 22px;

    font: inherit;
    font-weight: 700;
}

/* =========================================================
 * Preparar agora
 * ========================================================= */

#aip-premium-preparation:empty {
    display: none;
}

#aip-premium-preparation.is-active {
    display: block;
}

.aip-premium-preparation-card {
    width: 100%;

    padding: 28px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: var(--aip-premium-radius);

    background: var(--aip-premium-surface);

    box-shadow: var(--aip-premium-shadow);
}

.aip-premium-preparation-card__header {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 24px;

    margin-bottom: 28px;
}

.aip-premium-preparation-card__eyebrow {
    margin: 0 0 12px;

    color: var(--aip-premium-accent);

    font-size: 0.78rem;
    font-weight: 700;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.aip-premium-preparation-card__title {
    display: flex;

    align-items: center;

    gap: 12px;

    margin: 0;

    color: var(--aip-premium-text);

    font-size:
        clamp(1.7rem, 4vw, 2.25rem);

    font-weight: 700;

    line-height: 1.2;

    transition:
        color 0.25s ease;
}

.aip-premium-preparation-card__state-icon {
    display: inline-flex;

    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    align-items: center;
    justify-content: center;

    border-radius: 999px;

    background: var(--aip-premium-bg);

    font-size: 1.1rem;
}

.aip-premium-preparation-card.is-in-range
.aip-premium-preparation-card__title {
    color: var(--aip-premium-success);
}

.aip-premium-preparation-card.is-in-range
.aip-premium-preparation-card__state-icon {
    background: var(--aip-premium-success);

    color: #ffffff;
}

.aip-premium-preparation-card.is-over-range
.aip-premium-preparation-card__title {
    color: var(--aip-premium-over);
}

.aip-premium-preparation-card.is-over-range
.aip-premium-preparation-card__state-icon {
    background: var(--aip-premium-over-soft);

    color: var(--aip-premium-over);

    border:
        1px solid var(--aip-premium-over-border);
}

.aip-premium-preparation-card.is-completed
.aip-premium-preparation-card__title {
    color: var(--aip-premium-success);
}

.aip-premium-preparation-card.is-completed
.aip-premium-preparation-card__state-icon {
    background: var(--aip-premium-success);

    color: #ffffff;
}

.aip-premium-preparation-card__subtitle {
    max-width: 620px;

    margin: 10px 0 0;

    color: var(--aip-premium-muted);

    font-size: 0.96rem;

    line-height: 1.55;
}

.aip-premium-preparation-card__attempt {
    display: inline-flex;

    padding: 7px 11px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: 999px;

    background: var(--aip-premium-bg);

    color: var(--aip-premium-muted);

    font-size: 0.78rem;
    font-weight: 700;

    white-space: nowrap;
}

/* =========================================================
 * Temporizador
 * ========================================================= */

.aip-premium-preparation-timer {
    display: flex;

    min-height: 235px;

    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 30px 24px;

    border:
        2px solid var(--aip-premium-border);

    border-radius: 16px;

    background: var(--aip-premium-bg);

    text-align: center;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.aip-premium-preparation-timer.is-before-range {
    background: var(--aip-premium-bg);

    border-color: var(--aip-premium-border);
}

.aip-premium-preparation-timer.is-in-range {
    background: var(--aip-premium-success-soft);

    border-color: var(--aip-premium-success-border);

    box-shadow:
        0 0 0 3px
        rgba(71, 119, 77, 0.06);
}

.aip-premium-preparation-timer.is-over-range {
    background: var(--aip-premium-over-soft);

    border-color: var(--aip-premium-over-border);

    box-shadow:
        0 0 0 3px
        rgba(164, 85, 102, 0.06);
}

.aip-premium-preparation-timer.is-completed {
    border-width: 2px;
}

.aip-premium-preparation-timer.is-completed.was-before-range {
    background: var(--aip-premium-bg);

    border-color: var(--aip-premium-border);
}

.aip-premium-preparation-timer.is-completed.was-in-range {
    background: var(--aip-premium-success-soft);

    border-color: var(--aip-premium-success-border);
}

.aip-premium-preparation-timer.is-completed.was-over-range {
    background: var(--aip-premium-over-soft);

    border-color: var(--aip-premium-over-border);
}

.aip-premium-preparation-timer__value {
    color: var(--aip-premium-text);

    font-size:
        clamp(3.4rem, 10vw, 5.8rem);

    font-weight: 700;

    letter-spacing: -0.04em;

    line-height: 1;

    font-variant-numeric:
        tabular-nums;
}

.aip-premium-preparation-timer.is-in-range
.aip-premium-preparation-timer__value,
.aip-premium-preparation-timer.is-completed.was-in-range
.aip-premium-preparation-timer__value {
    color: var(--aip-premium-success);
}

.aip-premium-preparation-timer.is-over-range
.aip-premium-preparation-timer__value,
.aip-premium-preparation-timer.is-completed.was-over-range
.aip-premium-preparation-timer__value {
    color: var(--aip-premium-over);
}

.aip-premium-preparation-timer__status {
    min-height: 22px;

    margin-top: 14px;

    color: var(--aip-premium-muted);

    font-size: 0.9rem;
    font-weight: 700;
}

.aip-premium-preparation-timer__alert {
    display: none;

    max-width: 440px;

    margin-top: 6px;

    color: var(--aip-premium-over);

    font-size: 0.8rem;
    font-weight: 600;

    line-height: 1.4;
}

.aip-premium-preparation-timer__alert.is-visible {
    display: block;
}

.aip-premium-preparation-timer.is-completed.was-in-range
.aip-premium-preparation-timer__alert {
    color: var(--aip-premium-success);
}

.aip-premium-preparation-timer__range {
    display: flex;

    flex-direction: column;

    gap: 4px;

    margin-top: 16px;
}

.aip-premium-preparation-timer__range-label {
    color: var(--aip-premium-muted);

    font-size: 0.82rem;
    font-weight: 600;
}

.aip-premium-preparation-timer__range strong {
    color: var(--aip-premium-accent);

    font-size: 1rem;
    font-weight: 700;
}

.aip-premium-preparation-timer__reference {
    margin-top: 4px;

    color: var(--aip-premium-muted);

    font-size: 0.74rem;
}

/* =========================================================
 * Pulso de limite máximo
 * ========================================================= */

.aip-premium-timer-pulse {
    animation:
        aip-premium-timer-pulse
        0.9s ease;
}

@keyframes aip-premium-timer-pulse {

    0% {
        box-shadow:
            0 0 0 0
            rgba(164, 85, 102, 0.30);
    }

    45% {
        box-shadow:
            0 0 0 10px
            rgba(164, 85, 102, 0.12);
    }

    100% {
        box-shadow:
            0 0 0 3px
            rgba(164, 85, 102, 0.06);
    }
}

/* =========================================================
 * Resumo do preparo
 * ========================================================= */

.aip-premium-preparation-summary {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 1px;

    overflow: hidden;

    margin-top: 20px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: 14px;

    background: var(--aip-premium-border);
}

.aip-premium-preparation-summary__item {
    display: flex;

    min-height: 96px;

    align-items: center;

    gap: 12px;

    padding: 18px;

    background: var(--aip-premium-surface);
}

.aip-premium-preparation-summary__icon {
    display: inline-flex;

    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    background: var(--aip-premium-bg);

    color: var(--aip-premium-accent);
}

.aip-premium-preparation-summary__value {
    display: flex;

    flex-wrap: wrap;

    align-items: baseline;

    gap: 4px;

    color: var(--aip-premium-text);

    font-size: 1.08rem;
    font-weight: 700;
}

.aip-premium-preparation-summary__unit {
    color: var(--aip-premium-muted);

    font-size: 0.78rem;
}

.aip-premium-preparation-summary__label {
    margin-top: 4px;

    color: var(--aip-premium-muted);

    font-size: 0.78rem;
}


/* L8.7.2A.1 — parâmetros do card Preparar agora
 * Desktop: 3 campos na primeira linha e 2 na segunda,
 * dando espaço suficiente para nomes de moagem.
 */
.aip-premium-preparation-summary--parameters {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.aip-premium-preparation-summary--parameters
.aip-premium-preparation-summary__item[data-aip-preparation-parameter] {
    grid-column: span 2;
    min-width: 0;
}

.aip-premium-preparation-summary--parameters
.aip-premium-preparation-summary__item[data-aip-preparation-parameter="grind"],
.aip-premium-preparation-summary--parameters
.aip-premium-preparation-summary__item[data-aip-preparation-parameter="ratio"] {
    grid-column: span 3;
}

.aip-premium-preparation-summary--parameters
.aip-premium-preparation-summary__content {
    min-width: 0;
}

.aip-premium-preparation-summary--parameters
.aip-premium-preparation-summary__value {
    overflow-wrap: anywhere;
    word-break: normal;
}

/* =========================================================
 * Aviso sonoro
 * ========================================================= */

.aip-premium-preparation-options {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-top: 20px;

    padding: 4px 2px;
}

.aip-premium-preparation-sound-copy {
    display: flex;

    align-items: center;

    gap: 10px;

    min-width: 0;
}

.aip-premium-preparation-sound-copy > div {
    display: flex;

    flex-wrap: wrap;

    align-items: baseline;

    gap: 4px 12px;
}

.aip-premium-preparation-sound-copy strong {
    color: var(--aip-premium-text);

    font-size: 0.86rem;
}

.aip-premium-preparation-sound-copy span {
    color: var(--aip-premium-muted);

    font-size: 0.76rem;
}

.aip-premium-preparation-sound__icon {
    color: #d48a2b;

    font-size: 1rem;
}

.aip-premium-preparation-sound-switch {
    position: relative;

    display: inline-flex;

    flex: 0 0 auto;

    cursor: pointer;
}

.aip-premium-preparation-sound-switch input {
    position: absolute;

    width: 1px;
    height: 1px;

    overflow: hidden;

    opacity: 0;
}

.aip-premium-preparation-sound-switch__track {
    position: relative;

    display: block;

    width: 44px;
    height: 25px;

    border-radius: 999px;

    background: #c9c6c2;

    transition:
        background-color 0.2s ease;
}

.aip-premium-preparation-sound-switch__thumb {
    position: absolute;

    top: 3px;
    left: 3px;

    width: 19px;
    height: 19px;

    border-radius: 50%;

    background: #ffffff;

    box-shadow:
        0 1px 4px
        rgba(0, 0, 0, 0.18);

    transition:
        transform 0.2s ease;
}

.aip-premium-preparation-sound-switch
input:checked +
.aip-premium-preparation-sound-switch__track {
    background: var(--aip-premium-success);
}

.aip-premium-preparation-sound-switch
input:checked +
.aip-premium-preparation-sound-switch__track
.aip-premium-preparation-sound-switch__thumb {
    transform:
        translateX(19px);
}

/* =========================================================
 * Ações
 * ========================================================= */

.aip-premium-preparation-card__actions {
    display: flex;

    justify-content: center;

    margin-top: 22px;
}

.aip-premium-preparation-start,
.aip-premium-preparation-feedback-action {
    display: inline-flex;

    min-width: 230px;
    min-height: 50px;

    align-items: center;
    justify-content: center;

    gap: 9px;

    appearance: none;
    -webkit-appearance: none;

    padding: 12px 22px;

    border: 0;

    border-radius: 12px;

    background: var(--aip-premium-success);

    color: #ffffff;

    cursor: pointer;

    font: inherit;
    font-size: 0.95rem;
    font-weight: 700;

    box-shadow:
        0 6px 16px
        rgba(47, 41, 37, 0.08);
}

.aip-premium-preparation-start:hover,
.aip-premium-preparation-feedback-action:hover {
    background:
        var(--aip-premium-success-hover);
}

.aip-premium-preparation-start:disabled {
    cursor: default;

    opacity: 0.7;
}

.aip-premium-preparation-card__secondary-actions {
    display: flex;

    justify-content: center;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 12px;
}

.aip-premium-preparation-secondary-action,
.aip-premium-preparation-complete {
    display: inline-flex;

    min-height: 42px;

    align-items: center;
    justify-content: center;

    padding: 9px 16px;

    border-radius: 10px;

    cursor: pointer;

    font: inherit;
    font-size: 0.84rem;
    font-weight: 700;

    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease,
        opacity 0.18s ease;
}

.aip-premium-preparation-secondary-action {
    border:
        1px solid var(--aip-premium-border);

    background:
        var(--aip-premium-surface);

    color:
        var(--aip-premium-muted);
}

.aip-premium-preparation-secondary-action:hover:not(:disabled) {
    border-color:
        var(--aip-premium-accent);

    color:
        var(--aip-premium-accent);
}

.aip-premium-preparation-complete {
    border:
        1px solid var(--aip-premium-accent);

    background:
        var(--aip-premium-accent);

    color: #ffffff;
}

.aip-premium-preparation-complete:hover:not(:disabled) {
    border-color:
        var(--aip-premium-accent-hover);

    background:
        var(--aip-premium-accent-hover);
}

.aip-premium-preparation-secondary-action:disabled,
.aip-premium-preparation-complete:disabled {
    cursor: not-allowed;

    opacity: 0.42;
}

.aip-premium-preparation-complete.is-loading {
    cursor: wait;

    opacity: 0.65;
}

.aip-premium-preparation-card__hint {
    max-width: 540px;

    margin: 12px auto 0;

    color: var(--aip-premium-muted);

    font-size: 0.8rem;

    line-height: 1.5;

    text-align: center;
}

/* =========================================================
 * Erros
 * ========================================================= */

.aip-premium-preparation-message {
    padding: 18px;

    border:
        1px solid var(--aip-premium-border);

    border-radius: 12px;

    background:
        var(--aip-premium-bg);

    line-height: 1.55;
}

.aip-premium-preparation-message p {
    margin: 0;
}

.aip-premium-preparation-message--error {
    border-color:
        rgba(162, 69, 63, 0.25);

    background:
        rgba(162, 69, 63, 0.06);

    color:
        var(--aip-premium-danger);
}

/* =========================================================
 * Tablet
 * ========================================================= */

@media (max-width: 760px) {

    .aip-premium-presentation {
        padding:
            24px 16px 48px;
    }

    .aip-premium-overview-grid {
        grid-template-columns: 1fr;
    }

    .aip-premium-recipe-card {
        padding: 20px;
    }

    .aip-premium-recipe-parameters {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .aip-premium-recipe-parameter {
        min-height: 106px;

        padding: 16px;
    }

    .aip-premium-recipe-primary-action {
        width: 100%;

        min-width: 0;
    }

    .aip-premium-preparation-card {
        padding: 20px;
    }

    .aip-premium-preparation-summary {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .aip-premium-preparation-options {
        align-items: flex-start;
    }

    .aip-premium-preparation-sound-copy > div {
        display: block;
    }

    .aip-premium-preparation-sound-copy span {
        display: block;

        margin-top: 3px;
    }

    .aip-premium-preparation-start,
    .aip-premium-preparation-feedback-action {
        width: 100%;

        min-width: 0;
    }

    .aip-premium-preparation-summary--parameters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aip-premium-preparation-summary--parameters
    .aip-premium-preparation-summary__item[data-aip-preparation-parameter] {
        grid-column: span 1;
    }

    .aip-premium-preparation-summary--parameters
    .aip-premium-preparation-summary__item[data-aip-preparation-parameter="grind"] {
        grid-column: span 2;
    }

}

/* =========================================================
 * Mobile compacto
 * ========================================================= */

@media (max-width: 420px) {

    .aip-premium-presentation {
        padding-right: 12px;
        padding-left: 12px;
    }

    .aip-premium-recipe-card,
    .aip-premium-preparation-card {
        padding: 16px;

        border-radius: 14px;
    }

    .aip-premium-recipe-parameters,
    .aip-premium-preparation-summary {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .aip-premium-preparation-card__header {
        flex-direction: column;

        gap: 12px;
    }

    .aip-premium-preparation-card__title {
        align-items: flex-start;

        font-size: 1.45rem;
    }

    .aip-premium-preparation-card__state-icon {
        width: 32px;
        height: 32px;

        flex-basis: 32px;

        font-size: 0.95rem;
    }

    .aip-premium-preparation-card__attempt {
        align-self: flex-start;
    }

    .aip-premium-preparation-timer {
        min-height: 185px;

        padding:
            22px 14px;
    }

    .aip-premium-preparation-timer__value {
        font-size: 3rem;
    }

    .aip-premium-preparation-options {
        gap: 12px;
    }

    .aip-premium-preparation-sound-copy {
        flex: 1;
    }

    .aip-premium-preparation-sound-copy span {
        font-size: 0.7rem;
    }

    .aip-premium-preparation-card__secondary-actions {
        display: grid;

        grid-template-columns:
            1fr 1fr;

        width: 100%;
    }

    .aip-premium-preparation-secondary-action,
    .aip-premium-preparation-complete {
        width: 100%;
    }
}

/* =========================================================
 * Reduced motion
 * ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .aip-premium-presentation *,
    .aip-premium-presentation *::before,
    .aip-premium-presentation *::after {
        scroll-behavior:
            auto !important;

        transition-duration:
            0.01ms !important;

        animation-duration:
            0.01ms !important;

        animation-iteration-count:
            1 !important;
    }
}
/* =========================================================
   L8.3 — FEEDBACK PÓS-PREPARO
   CORRIGIDO PARA O CONTRATO REAL DO premium.js
   ========================================================= */


/* ---------------------------------------------------------
   1. CONTAINER
   --------------------------------------------------------- */

#aip-premium-feedback {
    width: 100%;
}

#aip-premium-feedback:empty {
    display: none;
}

#aip-premium-feedback.is-active {
    display: block;
}


/* ---------------------------------------------------------
   2. CARD
   --------------------------------------------------------- */

.aip-premium-feedback-card {
    width: 100%;
    max-width: 720px;

    margin: 0 auto;
    padding: 28px;

    border: 1px solid #e2d8cf;
    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0 8px 24px rgba(62, 45, 33, 0.06);

    box-sizing: border-box;
}

.aip-premium-feedback-card *,
.aip-premium-feedback-card *::before,
.aip-premium-feedback-card *::after {
    box-sizing: border-box;
}


/* ---------------------------------------------------------
   3. CABEÇALHO
   --------------------------------------------------------- */

.aip-premium-feedback-card__header {
    max-width: 620px;
    margin-bottom: 24px;
}

.aip-premium-feedback-card__eyebrow {
    margin: 0 0 12px;

    color: #76533b;

    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.aip-premium-feedback-card__title {
    margin: 0;

    color: #29231f;

    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;

    letter-spacing: -0.02em;
}

.aip-premium-feedback-card__subtitle {
    max-width: 590px;

    margin: 12px 0 0;

    color: #685f58;

    font-size: 14px;
    line-height: 1.6;
}


/* ---------------------------------------------------------
   4. GOSTEI / NÃO GOSTEI
   --------------------------------------------------------- */

.aip-premium-feedback-choices {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 12px;
}

.aip-premium-feedback-choice {
    appearance: none;
    -webkit-appearance: none;

    display: flex;

    width: 100%;
    min-height: 52px;

    align-items: center;
    justify-content: center;

    gap: 9px;

    padding: 12px 16px;

    border: 1px solid #d8cec5;
    border-radius: 10px;

    background: #ffffff;
    color: #29231f;

    cursor: pointer;

    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;

    transition:
        border-color 0.18s ease,
        background-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}

.aip-premium-feedback-choice:hover {
    border-color: #a7988c;
    background: #faf7f3;

    transform: translateY(-1px);
}

.aip-premium-feedback-choice:focus-visible {
    outline:
        3px solid rgba(63, 125, 74, 0.18);

    outline-offset: 2px;
}


/* GOSTEI selecionado */

.aip-premium-feedback-choice.is-selected[
    data-aip-feedback-choice="1"
] {
    border-color: #91c19a;

    background: #eff7f0;

    color: #245b35;

    box-shadow:
        inset 0 0 0 1px
        rgba(63, 125, 74, 0.08);
}


/* NÃO GOSTEI selecionado */

.aip-premium-feedback-choice.is-selected[
    data-aip-feedback-choice="0"
] {
    border-color: #d99aa8;

    background: #fcf0f3;

    color: #914b5b;

    box-shadow:
        inset 0 0 0 1px
        rgba(163, 91, 107, 0.08);
}


/* ---------------------------------------------------------
   5. ÍCONES
   --------------------------------------------------------- */

.aip-premium-feedback-choice__icon {
    display: inline-flex;

    width: 28px;
    height: 28px;

    flex: 0 0 28px;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #f7f2ec;

    font-size: 14px;
    line-height: 1;
}

.aip-premium-feedback-choice.is-selected[
    data-aip-feedback-choice="1"
]
.aip-premium-feedback-choice__icon {
    background: #dfeee1;
}

.aip-premium-feedback-choice.is-selected[
    data-aip-feedback-choice="0"
]
.aip-premium-feedback-choice__icon {
    background: #f5dfe4;
}

.aip-premium-feedback-choice__label {
    display: inline-block;
}


/* ---------------------------------------------------------
   6. BLOCO DE FEEDBACK NEGATIVO
   --------------------------------------------------------- */

.aip-premium-feedback-negative {
    margin-top: 24px;
    padding: 20px;

    border: 1px solid #e2d8cf;
    border-radius: 14px;

    background: #faf7f3;
}

.aip-premium-feedback-negative[hidden] {
    display: none !important;
}

.aip-premium-feedback-negative__header {
    margin-bottom: 16px;
}

.aip-premium-feedback-negative__header h3 {
    margin: 0;

    color: #29231f;

    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
}

.aip-premium-feedback-negative__header p {
    margin: 7px 0 0;

    color: #685f58;

    font-size: 13px;
    line-height: 1.5;
}


/* ---------------------------------------------------------
   7. SINTOMAS
   --------------------------------------------------------- */

.aip-premium-feedback-symptoms {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;
}

.aip-premium-feedback-symptom {
    position: relative;

    display: block;

    margin: 0;

    cursor: pointer;
}


/*
 * O radio continua existindo para acessibilidade e
 * funcionamento do formulário, mas não aparece visualmente.
 */
.aip-premium-feedback-symptom input {
    position: absolute;

    width: 1px;
    height: 1px;

    margin: 0;

    overflow: hidden;

    clip: rect(0 0 0 0);
    clip-path: inset(50%);

    white-space: nowrap;

    opacity: 0;
}

.aip-premium-feedback-symptom__label {
    display: flex;

    width: 100%;
    min-height: 48px;

    align-items: center;
    justify-content: center;

    padding: 10px 13px;

    border: 1px solid #d8cec5;
    border-radius: 9px;

    background: #ffffff;
    color: #29231f;

    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;

    text-align: center;

    transition:
        border-color 0.18s ease,
        background-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease;
}

.aip-premium-feedback-symptom:hover
.aip-premium-feedback-symptom__label {
    border-color: #a7988c;
}


/* Sintoma selecionado */

.aip-premium-feedback-symptom
input:checked
+
.aip-premium-feedback-symptom__label {
    border-color: #76533b;

    background: #f5eee8;

    color: #533724;

    box-shadow:
        inset 0 0 0 1px
        rgba(118, 83, 59, 0.07);
}


/* Acessibilidade via teclado */

.aip-premium-feedback-symptom
input:focus-visible
+
.aip-premium-feedback-symptom__label {
    outline:
        3px solid rgba(118, 83, 59, 0.18);

    outline-offset: 2px;
}


/* ---------------------------------------------------------
   8. OBSERVAÇÃO
   --------------------------------------------------------- */

.aip-premium-feedback-notes {
    margin-top: 24px;
}

.aip-premium-feedback-notes label {
    display: block;

    margin: 0 0 8px;

    color: #29231f;

    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
}

.aip-premium-feedback-notes textarea {
    display: block;

    width: 100%;
    min-height: 108px;

    margin: 0;
    padding: 12px 14px;

    resize: vertical;

    border: 1px solid #d8cec5;
    border-radius: 9px;

    background: #ffffff;
    color: #29231f;

    font: inherit;
    font-size: 14px;
    line-height: 1.55;

    transition:
        border-color 0.18s ease,
        box-shadow 0.18s ease;
}

.aip-premium-feedback-notes textarea::placeholder {
    color: #9b938d;
}

.aip-premium-feedback-notes textarea:hover {
    border-color: #a7988c;
}

.aip-premium-feedback-notes textarea:focus {
    border-color: #3f7d4a;

    outline: none;

    box-shadow:
        0 0 0 3px
        rgba(63, 125, 74, 0.12);
}


/* ---------------------------------------------------------
   9. AÇÕES
   --------------------------------------------------------- */

.aip-premium-feedback-actions {
    display: flex;

    justify-content: center;

    margin-top: 22px;
}

.aip-premium-feedback-submit {
    appearance: none;
    -webkit-appearance: none;

    display: inline-flex;

    min-width: 200px;
    min-height: 48px;

    align-items: center;
    justify-content: center;

    padding: 12px 22px;

    border: 1px solid #3f7d4a;
    border-radius: 10px;

    background: #3f7d4a;
    color: #ffffff;

    cursor: pointer;

    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;

    box-shadow:
        0 5px 12px
        rgba(63, 125, 74, 0.16);

    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        opacity 0.18s ease,
        transform 0.18s ease;
}

.aip-premium-feedback-submit:hover:not(:disabled) {
    border-color: #245b35;

    background: #245b35;

    transform: translateY(-1px);

    box-shadow:
        0 7px 16px
        rgba(63, 125, 74, 0.20);
}

.aip-premium-feedback-submit:focus-visible {
    outline:
        3px solid rgba(63, 125, 74, 0.20);

    outline-offset: 3px;
}


/* Botão ainda não disponível */

.aip-premium-feedback-submit:disabled {
    border-color: #d1cac4;

    background: #ddd7d2;
    color: #827b75;

    cursor: not-allowed;

    box-shadow: none;

    opacity: 1;

    transform: none;
}


/* ---------------------------------------------------------
   10. MENSAGEM ABAIXO DO BOTÃO
   --------------------------------------------------------- */

.aip-premium-feedback-message {
    min-height: 20px;

    margin: 10px 0 0;

    color: #685f58;

    font-size: 12px;
    line-height: 1.45;

    text-align: center;
}


/* ---------------------------------------------------------
   11. CTA "AVALIAR MEU PREPARO"
   --------------------------------------------------------- */

.aip-premium-preparation-feedback-action {
    appearance: none;
    -webkit-appearance: none;

    display: inline-flex;

    min-width: 210px;
    min-height: 48px;

    align-items: center;
    justify-content: center;

    gap: 8px;

    padding: 12px 22px;

    border: 1px solid #3f7d4a;
    border-radius: 10px;

    background: #3f7d4a;
    color: #ffffff;

    cursor: pointer;

    font: inherit;
    font-size: 14px;
    font-weight: 700;

    box-shadow:
        0 5px 12px
        rgba(63, 125, 74, 0.16);

    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}

.aip-premium-preparation-feedback-action:hover {
    border-color: #245b35;

    background: #245b35;

    color: #ffffff;

    transform: translateY(-1px);

    box-shadow:
        0 7px 16px
        rgba(63, 125, 74, 0.20);
}


/* ---------------------------------------------------------
   12. MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    .aip-premium-feedback-card {
        padding: 22px 18px;

        border-radius: 14px;
    }

    .aip-premium-feedback-card__title {
        font-size: 24px;
    }

    .aip-premium-feedback-card__subtitle {
        font-size: 13px;
    }

    .aip-premium-feedback-choices {
        gap: 10px;
    }

    .aip-premium-feedback-negative {
        padding: 16px;
    }

    .aip-premium-feedback-negative__header h3 {
        font-size: 18px;
    }

    .aip-premium-feedback-symptoms {
        grid-template-columns: 1fr 1fr;
    }

    .aip-premium-feedback-symptom__label {
        min-height: 50px;

        padding: 9px 10px;

        font-size: 12px;
    }

    .aip-premium-feedback-submit,
    .aip-premium-preparation-feedback-action {
        width: 100%;

        min-width: 0;
    }
}


/* ---------------------------------------------------------
   13. MOBILE COMPACTO
   --------------------------------------------------------- */

@media (max-width: 420px) {

    .aip-premium-feedback-card {
        padding: 18px 14px;
    }

    .aip-premium-feedback-card__title {
        font-size: 22px;
    }

    .aip-premium-feedback-choices {
        grid-template-columns: 1fr;
    }

    .aip-premium-feedback-choice {
        justify-content: flex-start;

        min-height: 48px;
    }

    .aip-premium-feedback-symptoms {
        grid-template-columns: 1fr;
    }

    .aip-premium-feedback-symptom__label {
        justify-content: flex-start;

        min-height: 46px;

        text-align: left;
    }
}


/* =========================================================
   FIM — L8.3 FEEDBACK PÓS-PREPARO
   ========================================================= */
   /* ==========================================================
   L8.5B — FEEDBACK POSITIVO / VOLTAR PARA MEU CAFÉ
   ========================================================== */

.aip-premium-feedback-success__actions {
    display: flex;
    justify-content: center;
    margin-top: 22px;
}

.aip-premium-feedback-success__button {
    appearance: none;
    -webkit-appearance: none;
    min-height: 46px;
    padding: 11px 22px;
    border: 1px solid #3f7d4a;
    border-radius: 9px;
    background: #3f7d4a;
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 5px 12px rgba(63, 125, 74, 0.16);
}

.aip-premium-feedback-success__button:hover {
    border-color: #245b35;
    background: #245b35;
}

.aip-premium-feedback-success__button:focus-visible {
    outline: 2px solid #245b35;
    outline-offset: 3px;
}

/* =========================================================
 * MET012 — Cold Brew | Card aprovado V1
 * ========================================================= */

.aip-premium-recipe-card[data-aip-method-id="MET012"] {
    padding: 28px;
}

.aip-premium-recipe-card[data-aip-method-id="MET012"]
.aip-premium-recipe-parameters {
    margin-bottom: 16px;
}

.aip-premium-cold-brew-infusion {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;

    min-height: 118px;
    padding: 22px 24px;

    border: 1px solid #b9d5ff;
    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            rgba(234, 244, 255, 0.96),
            rgba(246, 250, 255, 0.98)
        );
}

.aip-premium-cold-brew-infusion__icon {
    display: inline-flex;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;

    align-items: center;
    justify-content: center;

    border: 1px solid #9fc6ff;
    border-radius: 12px;

    background: #ffffff;
    color: #2267ba;

    font-size: 1.45rem;
    line-height: 1;
}

.aip-premium-cold-brew-infusion__content {
    min-width: 0;
}

.aip-premium-cold-brew-infusion__value {
    color: #2468b7;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.15;
}

.aip-premium-cold-brew-infusion__label {
    margin-top: 6px;

    color: var(--aip-premium-text);
    font-size: 0.98rem;
    font-weight: 700;
}

.aip-premium-cold-brew-infusion__help {
    margin-top: 7px;

    color: var(--aip-premium-muted);
    font-size: 0.86rem;
    line-height: 1.45;
}

.aip-premium-cold-brew-infusion__fridge {
    display: inline-flex;
    width: 42px;
    height: 52px;

    align-items: center;
    justify-content: center;

    color: #2468b7;
    font-size: 2rem;
    line-height: 1;
}

.aip-premium-cold-brew-time-note {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;

    margin-top: 17px;
    padding-top: 15px;

    border-top: 1px solid var(--aip-premium-border);

    color: var(--aip-premium-muted);
    font-size: 0.84rem;
    line-height: 1.45;
    text-align: center;
}

.aip-premium-cold-brew-time-note strong {
    color: #2468b7;
    font-weight: 800;
}

.aip-premium-cold-brew-time-note__icon {
    color: #2468b7;
    font-size: 1rem;
}

.aip-premium-cold-brew-time-note__separator {
    margin: 0 5px;
    color: #a0a6ad;
}

.aip-premium-recipe-card[data-aip-method-id="MET012"]
.aip-premium-recipe-card__actions {
    margin-top: 18px;
}

@media (max-width: 700px) {
    .aip-premium-cold-brew-infusion {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 14px;

        padding: 18px;
    }

    .aip-premium-cold-brew-infusion__fridge {
        display: none;
    }

    .aip-premium-cold-brew-time-note {
        align-items: flex-start;
        flex-direction: column;
        text-align: left;
    }

    .aip-premium-cold-brew-time-note__separator {
        display: none;
    }
}

/* =========================================================
 * L8.8 — Diário Sensorial / Histórico
 * ========================================================= */
.aip-premium-history { margin-top: 22px; padding: 28px; border: 1px solid var(--aip-premium-border); border-radius: 18px; background: #fff; }
.aip-premium-history__head { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:22px; }
.aip-premium-history__head h2 { margin:5px 0 6px; font-size:1.55rem; }
.aip-premium-history__head p { margin:0; color:var(--aip-premium-muted); }
.aip-premium-history__filters { display:flex; gap:8px; flex-wrap:wrap; }
.aip-premium-history__filters button { border:1px solid var(--aip-premium-border); border-radius:999px; padding:8px 13px; background:#fff; color:var(--aip-premium-muted); font-weight:700; cursor:pointer; }
.aip-premium-history__filters button.is-active { border-color:#9b5b35; color:#7b3f1d; background:#fff7f1; }
.aip-premium-history__list { display:grid; gap:12px; }
.aip-premium-history-card { padding:18px 20px; border:1px solid var(--aip-premium-border); border-radius:14px; background:#fff; }
.aip-premium-history-card__top { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.aip-premium-history-card__date { color:var(--aip-premium-muted); font-size:.82rem; }
.aip-premium-history-card h3 { margin:3px 0 0; font-size:1.08rem; }
.aip-premium-history-card__result { flex:0 0 auto; border-radius:999px; padding:6px 10px; font-size:.82rem; font-weight:800; background:#f1f2f3; }
.aip-premium-history-card__result.is-liked { color:#23734b; background:#eaf7ef; }
.aip-premium-history-card__result.is-not_liked { color:#8a4b22; background:#fff3e8; }
.aip-premium-history-card__meta { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:14px; color:#4c5055; font-size:.9rem; }
.aip-premium-history-card__meta span:not(:last-child)::after { content:'·'; margin-left:14px; color:#b0b4b8; }
.aip-premium-history-card__foot { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:15px; padding-top:13px; border-top:1px solid var(--aip-premium-border); color:var(--aip-premium-muted); font-size:.86rem; }
.aip-premium-history-card__foot button, .aip-premium-history-detail__close { border:0; background:transparent; color:#8b4d29; font-weight:800; cursor:pointer; padding:4px; }
.aip-premium-history-empty, .aip-premium-history-loading { display:flex; flex-direction:column; gap:5px; padding:26px; border:1px dashed var(--aip-premium-border); border-radius:14px; color:var(--aip-premium-muted); }
.aip-premium-history-empty strong { color:#333; }
.aip-premium-history-detail { margin-top:18px; padding:22px; border:1px solid #dfc8b9; border-radius:16px; background:#fffaf6; }
.aip-premium-history-detail__head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.aip-premium-history-detail__head h3 { margin:5px 0 0; }
.aip-premium-history-detail__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:18px; }
.aip-premium-history-detail__grid div { padding:13px; border:1px solid var(--aip-premium-border); border-radius:12px; background:#fff; }
.aip-premium-history-detail__grid strong, .aip-premium-history-detail__grid span { display:block; }
.aip-premium-history-detail__grid span { margin-top:4px; color:var(--aip-premium-muted); font-size:.8rem; }
.aip-premium-history-detail__feedback { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-top:16px; padding:14px; border-radius:12px; background:#fff; }
.aip-premium-history-detail__feedback p { width:100%; margin:4px 0 0; color:var(--aip-premium-muted); }
.aip-premium-history-detail__evolution { margin-top:18px; }
.aip-premium-history-detail__evolution h4 { margin:0 0 10px; }
.aip-premium-history-detail__attempt { display:grid; grid-template-columns:110px 1fr auto; gap:12px; align-items:center; padding:10px 0; border-top:1px solid var(--aip-premium-border); }
.aip-premium-history-detail__attempt span, .aip-premium-history-detail__attempt small { color:var(--aip-premium-muted); }
@media (max-width:700px) {
  .aip-premium-history { padding:20px 16px; }
  .aip-premium-history__head { align-items:flex-start; flex-direction:column; }
  .aip-premium-history-card__top { align-items:flex-start; }
  .aip-premium-history-card__meta span:not(:last-child)::after { display:none; }
  .aip-premium-history-card__meta span { padding:5px 8px; border-radius:8px; background:#f7f7f7; }
  .aip-premium-history-detail__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .aip-premium-history-detail__attempt { grid-template-columns:1fr; gap:3px; }
}

/* L8.8A — refinamento do detalhe e evolução do ciclo */
.aip-premium-history-detail__feedback { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; align-items:stretch; }
.aip-premium-history-detail__feedback-row { display:flex; flex-direction:column; gap:4px; padding:12px 14px; border:1px solid var(--aip-premium-border); border-radius:10px; background:#fff; }
.aip-premium-history-detail__feedback-row span,
.aip-premium-history-detail__feedback-note > span { color:var(--aip-premium-muted); font-size:.78rem; }
.aip-premium-history-detail__feedback-note { grid-column:1 / -1; padding:12px 14px; border:1px solid var(--aip-premium-border); border-radius:10px; background:#fff; }
.aip-premium-history-detail__feedback-note p { width:auto; margin:5px 0 0; color:#333; }
.aip-premium-history-detail__attempt.is-current { margin-left:-8px; margin-right:-8px; padding-left:8px; padding-right:8px; border-radius:9px; background:#fff; }
.aip-premium-history-detail__change { display:flex; align-items:center; gap:8px; padding:5px 0 5px 110px; color:#477c55; font-size:.8rem; }
.aip-premium-history-detail__change span { width:16px; text-align:center; font-weight:800; }
.aip-premium-history-detail__change strong { font-weight:700; }
@media (max-width:700px) {
  .aip-premium-history-detail__feedback { grid-template-columns:1fr; }
  .aip-premium-history-detail__feedback-note { grid-column:auto; }
  .aip-premium-history-detail__change { padding-left:0; }
}

/* =========================================================
   L8.8B — FAVORITOS NO DIÁRIO SENSORIAL
   ========================================================= */
.aip-premium-feedback-success__actions {
    gap: 10px;
    flex-wrap: wrap;
}

.aip-premium-feedback-success__button.is-secondary {
    border-color: var(--aip-premium-border);
    background: #ffffff;
    color: #5d4335;
    box-shadow: none;
}

.aip-premium-feedback-success__button.is-secondary:hover {
    border-color: #9b765f;
    background: #fffaf6;
    color: #5d4335;
}

.aip-premium-history-card__badges {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.aip-premium-history-card__favorite {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 28px;
    border-radius: 999px;
    background: #fff1f1;
    color: #b64040;
    font-size: 0.95rem;
}

.aip-premium-history-detail__favorite {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.aip-premium-history-detail__favorite button {
    appearance: none;
    -webkit-appearance: none;
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid #3f7d4a;
    border-radius: 9px;
    background: #ffffff;
    color: #315f39;
    cursor: pointer;
    font: inherit;
    font-size: .86rem;
    font-weight: 800;
}

.aip-premium-history-detail__favorite button:hover {
    background: #edf7ef;
}

.aip-premium-history-detail__favorite span {
    color: var(--aip-premium-muted);
    font-size: .82rem;
}

@media (max-width: 640px) {
    .aip-premium-feedback-success__actions {
        flex-direction: column;
    }

    .aip-premium-feedback-success__button {
        width: 100%;
    }
}

/* L8.9 — Favoritos e Repreparo */
.aip-premium-history-detail__favorite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare {
    background: #477f52;
    border-color: #477f52;
    color: #fff;
    font-weight: 700;
}
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare:hover,
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare:focus-visible {
    background: #3d7047;
    border-color: #3d7047;
    color: #fff;
}
@media (max-width: 640px) {
    .aip-premium-history-detail__favorite > button {
        width: 100%;
    }
}

/* L8.9 — Favoritos e Repreparo */
.aip-premium-history-detail__favorite {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare {
    background: #477f52;
    border-color: #477f52;
    color: #fff;
    font-weight: 700;
}
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare:hover,
.aip-premium-history-detail__favorite .aip-premium-history-detail__prepare:focus-visible {
    background: #3d7047;
    border-color: #3d7047;
    color: #fff;
}
@media (max-width: 640px) {
    .aip-premium-history-detail__favorite > button {
        width: 100%;
    }
}

/* =========================================================
   L9 — MEU CAFÉ SOB MEDIDA / INTEGRAÇÃO DA EXPERIÊNCIA
   ========================================================= */
.aip-premium-overview--integrated {
    padding: 0;
    border: 0;
    background: transparent;
}

.aip-premium-overview-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(220px, .7fr);
    gap: 22px;
    padding: 28px;
    border: 1px solid var(--aip-premium-border);
    border-radius: var(--aip-premium-radius);
    background: linear-gradient(135deg, #fff 0%, #fbf7f2 100%);
    box-shadow: var(--aip-premium-shadow);
}

.aip-premium-overview-hero__content h2 {
    margin: 0;
    color: var(--aip-premium-text);
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.08;
}

.aip-premium-overview-hero__content > p:not(.aip-premium-eyebrow) {
    max-width: 680px;
    margin: 12px 0 0;
    color: var(--aip-premium-muted);
    line-height: 1.6;
}

.aip-premium-overview-hero__params {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.aip-premium-overview-hero__params span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 6px 10px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 999px;
    background: #fff;
    color: #4b453f;
    font-size: .86rem;
    font-weight: 700;
}

.aip-premium-overview-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.aip-premium-overview-primary,
.aip-premium-overview-secondary {
    appearance: none;
    min-height: 44px;
    padding: 10px 16px;
    border-radius: 10px;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
}

.aip-premium-overview-primary {
    border: 1px solid var(--aip-premium-accent);
    background: var(--aip-premium-accent);
    color: #fff;
}

.aip-premium-overview-secondary {
    border: 1px solid var(--aip-premium-border);
    background: #fff;
    color: #5d4335;
}

.aip-premium-overview-journey {
    display: grid;
    gap: 10px;
    align-content: center;
    padding: 4px 0;
}

.aip-premium-overview-journey span {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 10px;
    align-items: center;
    min-height: 46px;
    color: #504940;
    font-weight: 700;
}

.aip-premium-overview-journey strong {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #edf5ee;
    color: #356b41;
    font-size: .84rem;
}

.aip-premium-overview-grid--actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 16px;
}

.aip-premium-overview-grid--actions .aip-premium-overview-card {
    min-height: 175px;
}

.aip-premium-overview-card__icon {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    border-radius: 10px;
    background: #edf5ee;
    color: #356b41;
    font-size: 1rem;
    font-weight: 900;
}

.aip-premium-nav {
    position: sticky;
    top: 0;
    z-index: 20;
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(8px);
}

.aip-premium-nav__list {
    overflow-x: auto;
    scrollbar-width: thin;
}

.aip-premium-nav__button {
    white-space: nowrap;
}

.aip-premium-module--placeholder {
    border-style: solid;
    background: #fbfaf8;
}

@media (max-width: 900px) {
    .aip-premium-overview-hero {
        grid-template-columns: 1fr;
    }

    .aip-premium-overview-journey {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .aip-premium-overview-journey span {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
        font-size: .82rem;
    }

    .aip-premium-overview-grid--actions {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .aip-premium-overview-hero {
        padding: 20px 16px;
    }

    .aip-premium-overview-hero__content h2 {
        font-size: 2rem;
    }

    .aip-premium-overview-hero__actions {
        flex-direction: column;
    }

    .aip-premium-overview-primary,
    .aip-premium-overview-secondary {
        width: 100%;
    }

    .aip-premium-overview-journey {
        gap: 6px;
    }

    .aip-premium-overview-journey strong {
        width: 30px;
        height: 30px;
    }

    .aip-premium-overview-grid--actions .aip-premium-overview-card {
        min-height: 0;
    }
}

/* ==========================================================
 * L9.1 — Meu Perfil de Café
 * ========================================================== */
.aip-premium-profile-summary {
    margin: 12px 0 18px;
    padding: 18px 20px;
    border: 1px solid #e3d7ca;
    border-radius: 14px;
    background: #fffdf9;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.aip-premium-profile-summary h3,
.aip-premium-profile h2,
.aip-premium-profile h3 {
    margin-top: 0;
}

.aip-premium-profile-summary h3 {
    margin-bottom: 6px;
    font-size: 22px;
}

.aip-premium-profile-summary p {
    margin: 0;
}

.aip-premium-profile-summary__action,
.aip-premium-profile-primary,
.aip-premium-profile-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 9px 14px;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.aip-premium-profile-summary__action,
.aip-premium-profile-primary {
    border: 1px solid #3f7c4d;
    background: #3f7c4d;
    color: #fff;
}

.aip-premium-profile-secondary {
    border: 1px solid #8a5c3d;
    background: #fff;
    color: #70452d;
}

.aip-premium-profile {
    margin-top: 28px;
    padding: 24px;
    border: 1px solid #e3d7ca;
    border-radius: 16px;
    background: #fffaf4;
}

.aip-premium-profile-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eadfd3;
}

.aip-premium-profile-header h2 {
    margin-bottom: 8px;
    font-size: 30px;
}

.aip-premium-profile-header p {
    max-width: 620px;
    margin: 0 0 8px;
}

.aip-premium-profile-updated {
    display: block;
    font-size: 12px;
    color: #6f655d;
}

.aip-premium-profile-block {
    padding: 22px 0;
    border-bottom: 1px solid #eadfd3;
}

.aip-premium-profile-block:last-of-type {
    border-bottom: 0;
}

.aip-premium-profile-block h3 {
    margin-bottom: 14px;
    font-size: 20px;
}

.aip-premium-profile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.aip-premium-profile-stat {
    padding: 13px 14px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #eee3d8;
}

.aip-premium-profile-stat span,
.aip-premium-profile-method span,
.aip-premium-profile-alternatives article > span {
    display: block;
    margin-bottom: 4px;
    font-size: 12px;
    color: #776a61;
}

.aip-premium-profile-stat strong {
    font-size: 15px;
}

.aip-premium-profile-method {
    padding: 16px;
    border: 1px solid #e4d7cb;
    border-radius: 12px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.aip-premium-profile-method strong {
    display: block;
    margin-bottom: 5px;
    font-size: 22px;
}

.aip-premium-profile-badge {
    margin: 0 !important;
    padding: 5px 9px;
    border-radius: 999px;
    background: #eef7ef;
    color: #2f6e40 !important;
    font-weight: 700;
    white-space: nowrap;
}

.aip-premium-profile-alternatives,
.aip-premium-profile-regions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.aip-premium-profile-alternatives article,
.aip-premium-profile-regions article {
    padding: 16px;
    border: 1px solid #e7dbcf;
    border-radius: 12px;
    background: #fff;
}

.aip-premium-profile-alternatives article strong,
.aip-premium-profile-regions article strong {
    display: block;
    margin-bottom: 5px;
}

.aip-premium-profile-alternatives article p,
.aip-premium-profile-regions article p {
    margin: 5px 0 0;
    font-size: 13px;
}

.aip-premium-profile-helper {
    margin-top: -5px;
    margin-bottom: 14px;
    font-size: 13px;
    color: #6d625a;
}

.aip-premium-profile-footer {
    padding-top: 20px;
    display: flex;
    align-items: center;
    gap: 14px;
}

.aip-premium-profile-footer span {
    font-size: 12px;
    color: #6f655d;
}

.aip-premium-profile-empty {
    text-align: left;
}

.aip-premium-profile-empty h2 {
    margin-bottom: 10px;
}

.aip-premium-profile-empty__note {
    margin-top: 12px;
    font-size: 12px;
    color: #6f655d;
}

@media (max-width: 760px) {
    .aip-premium-profile-summary,
    .aip-premium-profile-header,
    .aip-premium-profile-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .aip-premium-profile {
        padding: 18px;
    }

    .aip-premium-profile-header h2 {
        font-size: 25px;
    }

    .aip-premium-profile-grid,
    .aip-premium-profile-alternatives,
    .aip-premium-profile-regions {
        grid-template-columns: 1fr;
    }

    .aip-premium-profile-method {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* =========================================================
 * L10 — Ferramentas Rápidas
 * ======================================================= */
.aip-premium-tools {
    margin-top: 28px;
    padding: 24px;
    border: 1px solid #e3d7ca;
    border-radius: 16px;
    background: #fff;
}

.aip-premium-tools__header h2 {
    margin: 4px 0 8px;
    font-size: 30px;
}

.aip-premium-tools__header > p:last-child {
    max-width: 720px;
    margin: 0;
    color: #5f554e;
}

.aip-premium-tools__tabs {
    display: flex;
    gap: 8px;
    margin: 22px 0 18px;
    padding-bottom: 10px;
    overflow-x: auto;
    border-bottom: 1px solid #eadfd3;
}

.aip-premium-tools__tab {
    flex: 0 0 auto;
    padding: 8px 12px;
    border: 1px solid #e2d6ca;
    border-radius: 999px;
    background: #fff;
    color: #5d5148;
    font-weight: 700;
    cursor: pointer;
}

.aip-premium-tools__tab.is-active {
    border-color: #3f7c4d;
    background: #eef7ef;
    color: #2f6e40;
}

.aip-premium-tool-panel { display: none; }
.aip-premium-tool-panel.is-active { display: block; }

.aip-premium-tool-panel h3 {
    margin: 0 0 6px;
    font-size: 22px;
}

.aip-premium-tool-panel > p {
    margin: 0 0 18px;
    color: #625850;
}

.aip-premium-tool-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.aip-premium-tool-field > span {
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #5f554e;
}

.aip-premium-tool-field > div {
    display: flex;
    align-items: center;
    min-height: 48px;
    border: 1px solid #dfd3c7;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.aip-premium-tool-field input {
    width: 100%;
    min-width: 0;
    padding: 11px 12px;
    border: 0 !important;
    outline: 0;
    box-shadow: none !important;
    background: transparent;
    font: inherit;
    font-weight: 700;
}

.aip-premium-tool-field em {
    padding-right: 12px;
    color: #766a61;
    font-size: 12px;
    font-style: normal;
    white-space: nowrap;
}

.aip-premium-tool-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.aip-premium-tool-primary,
.aip-premium-tool-secondary {
    min-height: 42px;
    padding: 9px 15px;
    border-radius: 8px;
    font-weight: 700;
    cursor: pointer;
}

.aip-premium-tool-primary {
    border: 1px solid #3f7c4d;
    background: #3f7c4d;
    color: #fff;
}

.aip-premium-tool-secondary {
    border: 1px solid #d9cabc;
    background: #fff;
    color: #5b4030;
}

.aip-premium-tool-result {
    display: none;
    margin-top: 16px;
    padding: 14px 16px;
    border: 1px solid #d9e7db;
    border-radius: 10px;
    background: #f4faf5;
}

.aip-premium-tool-result.is-visible { display: block; }
.aip-premium-tool-result strong,
.aip-premium-tool-result span { display: block; }
.aip-premium-tool-result span { margin-top: 4px; color: #625850; font-size: 13px; }

.aip-premium-no-scale {
    margin-top: 16px;
    padding: 12px 14px;
    border: 1px solid #eadfd3;
    border-radius: 10px;
    background: #fffaf4;
}

.aip-premium-no-scale summary {
    font-weight: 700;
    cursor: pointer;
}

.aip-premium-no-scale p {
    margin: 10px 0;
    color: #6d625a;
    font-size: 12px;
}

.aip-premium-no-scale__result {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    font-size: 13px;
}

.aip-premium-tool-time-card,
.aip-premium-tool-baseline {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    border: 1px solid #e3d7ca;
    border-radius: 12px;
    background: #fffaf4;
}

.aip-premium-tool-time-card span,
.aip-premium-tool-baseline span {
    color: #71655c;
    font-size: 12px;
}

.aip-premium-tool-time-card strong { font-size: 20px; }
.aip-premium-tool-time-card b {
    margin-left: auto;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eef7ef;
    color: #2f6e40;
}

.aip-premium-tool-note {
    margin-top: 10px !important;
    font-size: 12px;
}

.aip-premium-tool-baseline {
    justify-content: space-between;
    margin-bottom: 14px;
}

@media (max-width: 760px) {
    .aip-premium-tools { padding: 18px; }
    .aip-premium-tools__header h2 { font-size: 25px; }
    .aip-premium-tool-grid { grid-template-columns: 1fr; }
    .aip-premium-tool-time-card,
    .aip-premium-tool-baseline {
        align-items: flex-start;
        flex-direction: column;
    }
    .aip-premium-tool-time-card b { margin-left: 0; }
    .aip-premium-tool-primary,
    .aip-premium-tool-secondary { width: 100%; }
}

/* =========================================================
 * L10A — Central de Ferramentas alinhada à Entrega I
 * ======================================================= */
.aip-tools-group { margin-top: 28px; }
.aip-tools-group + .aip-tools-group { margin-top: 34px; }
.aip-tools-group__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px; }
.aip-tools-group__heading h3 { margin:2px 0 0; font-size:22px; }
.aip-tools-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.aip-tools-card { display:flex; flex-direction:column; min-height:220px; padding:20px; border:1px solid #e3d7ca; border-radius:14px; background:#fffaf6; }
.aip-tools-group--premium .aip-tools-card { background:#f8fbf7; }
.aip-tools-card__icon { display:grid; place-items:center; width:38px; height:38px; border-radius:10px; background:#eef7ef; color:#2f6e40; font-weight:800; }
.aip-tools-card h4 { margin:16px 0 8px; font-size:20px; }
.aip-tools-card p { margin:0 0 18px; color:#625850; line-height:1.5; }
.aip-tools-card__action { margin-top:auto; align-self:flex-start; min-height:40px; padding:8px 14px; border:1px solid #3f7c4d; border-radius:8px; background:#fff; color:#2f6e40; font-weight:700; cursor:pointer; }
.aip-tools-card__action:hover { background:#eef7ef; }
.aip-tools-panels { margin-top:22px; }
.aip-premium-tool-panel { display:none; padding:22px; border:1px solid #e3d7ca; border-radius:14px; background:#fff; scroll-margin-top:24px; }
.aip-premium-tool-panel.is-active { display:block; }
.aip-tool-panel__top { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:8px; }
.aip-tool-panel__top h3 { margin:2px 0 0; }
.aip-tool-panel__close { width:34px; height:34px; border:1px solid #e2d6ca; border-radius:50%; background:#fff; color:#5d5148; font-size:22px; line-height:1; cursor:pointer; }
.aip-ratio-shortcuts,.aip-package-shortcuts,.aip-yield-modes { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 18px; }
.aip-ratio-shortcuts button,.aip-package-shortcuts button,.aip-yield-modes button { padding:8px 12px; border:1px solid #dfd3c7; border-radius:999px; background:#fff; cursor:pointer; font-weight:700; }
.aip-ratio-shortcuts button small { display:block; margin-top:2px; font-weight:500; color:#75695f; }
.aip-ratio-shortcuts button.is-active,.aip-yield-modes button.is-active { border-color:#3f7c4d; background:#eef7ef; color:#2f6e40; }
.aip-yield-mode { display:none; }
.aip-yield-mode.is-active { display:block; }
.aip-premium-tool-grid--optional { margin-top:12px; grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
.aip-tool-calibration-badge,.aip-tool-pending span { display:inline-block; padding:6px 10px; border-radius:999px; background:#fff3dd; color:#7b5621; font-size:12px; font-weight:700; }
.aip-tool-pending { padding:18px; border:1px solid #ead6b6; border-radius:12px; background:#fffaf0; }
.aip-tool-pending strong { display:block; margin-bottom:6px; font-size:18px; }
.aip-tool-pending p { margin:0 0 12px; color:#655b52; }
.aip-tool-time-center { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:10px 0 0; padding:12px 16px; border:1px solid #e3d7ca; border-radius:10px; background:#fff; }
.aip-tool-time-center span { color:#71655c; font-size:12px; }
.aip-tool-time-center strong { font-size:18px; }

.aip-recipe-scale { margin-top:18px; padding:18px; border:1px solid #e3d7ca; border-radius:14px; background:#fffaf6; }
.aip-recipe-scale__head { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.aip-recipe-scale__head h3 { margin:2px 0 0; font-size:20px; }
.aip-recipe-scale > p { margin:10px 0 0; color:#625850; }
.aip-recipe-scale__toggle { padding:8px 13px; border:1px solid #3f7c4d; border-radius:8px; background:#fff; color:#2f6e40; font-weight:700; cursor:pointer; }
.aip-recipe-scale__body { display:none; margin-top:16px; }
.aip-recipe-scale__body.is-open { display:block; }

.aip-premium-tools--public { max-width:880px; margin:24px auto; }
.aip-public-tools .aip-premium-tools__header { margin-bottom:22px; }

@media (max-width: 760px) {
    .aip-tools-card-grid { grid-template-columns:1fr; }
    .aip-tools-card { min-height:0; }
    .aip-premium-tool-grid,.aip-premium-tool-grid--optional { grid-template-columns:1fr; }
    .aip-tool-panel__top { align-items:center; }
    .aip-premium-tools { padding:18px; }
    .aip-recipe-scale { padding:16px; }
}

/* =========================================================
 * L10B — coeficientes V1 e identificação Gratuita/Premium
 * ======================================================= */
.aip-tools-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.aip-tools-card__tier {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.aip-tools-card__tier--gratuita {
    border: 1px solid #b9d8bf;
    background: #eef7ef;
    color: #2f6e40;
}

.aip-tools-card__tier--premium {
    border: 1px solid #d7c1ad;
    background: #f7eee7;
    color: #6b4932;
}

.aip-no-scale-modes,
.aip-spoon-types,
.aip-spoon-convert-modes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
}

.aip-no-scale-modes button,
.aip-spoon-types button,
.aip-spoon-convert-modes button {
    padding: 8px 12px;
    border: 1px solid #dfd3c7;
    border-radius: 999px;
    background: #fff;
    color: #4f463f;
    font-weight: 700;
    cursor: pointer;
}

.aip-no-scale-modes button.is-active,
.aip-spoon-types button.is-active,
.aip-spoon-convert-modes button.is-active {
    border-color: #3f7c4d;
    background: #eef7ef;
    color: #2f6e40;
}

.aip-no-scale-mode,
.aip-spoon-convert-mode {
    display: none;
}

.aip-no-scale-mode.is-active,
.aip-spoon-convert-mode.is-active {
    display: block;
}

.aip-tool-approx-warning {
    margin: 14px 0 0 !important;
    padding-top: 12px;
    border-top: 1px solid #eadfd5;
    color: #6d625a;
    font-size: 12px;
    line-height: 1.5;
}

@media (max-width: 760px) {
    .aip-tools-card__tier { font-size: 10px; }
}

/* L10D — controles segmentados do modo Preparo sem Balança */
.aip-premium-no-scale .aip-no-scale-controls {
    margin-top: 16px;
}

.aip-premium-no-scale .aip-tool-choice-group {
    margin: 0 0 16px;
}

.aip-premium-no-scale .aip-tool-choice-group__label {
    display: block;
    margin: 0 0 7px;
    color: #4f463f;
    font-size: 13px;
    font-weight: 700;
}

.aip-premium-no-scale .aip-tool-segmented {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 4px;
    border: 1px solid #e2d6ca;
    border-radius: 12px;
    background: #fff;
}

.aip-premium-no-scale .aip-tool-segmented > .aip-tool-segmented__button {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin: 0;
    padding: 8px 14px;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #574c43 !important;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
}

.aip-premium-no-scale .aip-tool-segmented > .aip-tool-segmented__button:hover {
    background: #f8f2ec !important;
}

.aip-premium-no-scale .aip-tool-segmented > .aip-tool-segmented__button.is-active {
    border-color: #3f7c4d !important;
    background: #eef7ef !important;
    color: #2f6e40 !important;
}

.aip-premium-no-scale .aip-tool-segmented > .aip-tool-segmented__button:focus-visible {
    outline: 2px solid #3f7c4d;
    outline-offset: 2px;
}

@media (max-width: 560px) {
    .aip-premium-no-scale .aip-tool-segmented {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .aip-premium-no-scale .aip-tool-segmented > .aip-tool-segmented__button {
        width: 100%;
    }
}

/* L10M — informação contextual de Café por preparo */
.aip-tool-info {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-left: 4px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    vertical-align: middle;
    cursor: help;
    user-select: none;
}

.aip-tool-info::after {
    content: attr(data-aip-tooltip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 8px);
    z-index: 30;
    width: min(280px, 80vw);
    padding: 9px 11px;
    border: 1px solid #d8c8bb;
    border-radius: 8px;
    background: #fffaf5;
    color: #2e241e;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
    text-align: left;
    box-shadow: 0 6px 18px rgba(40, 28, 20, .12);
    transform: translateX(-50%) translateY(3px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
}

.aip-tool-info:hover::after,
.aip-tool-info:focus::after,
.aip-tool-info:focus-visible::after {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.aip-tool-info:focus-visible {
    outline: 2px solid #3f7c4a;
    outline-offset: 2px;
}

@media (max-width: 640px) {
    .aip-tool-info::after {
        left: auto;
        right: -8px;
        transform: translateY(3px);
        width: min(260px, 76vw);
    }

    .aip-tool-info:hover::after,
    .aip-tool-info:focus::after,
    .aip-tool-info:focus-visible::after {
        transform: translateY(0);
    }
}

/* =========================================================
 * L12.1.1 — Conhecimento Foundation
 * ========================================================= */
.aip-premium-knowledge {
    padding: 28px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 22px;
    background: var(--aip-premium-surface);
}
.aip-premium-knowledge__header { max-width: 760px; margin-bottom: 22px; }
.aip-premium-knowledge__header h2 { margin: 4px 0 8px; }
.aip-premium-knowledge__header p:last-child { margin-bottom: 0; color: var(--aip-premium-muted); }
.aip-premium-knowledge__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.aip-premium-knowledge-card { min-width: 0; padding: 20px; border: 1px solid var(--aip-premium-border); border-radius: 18px; background: #fff; }
.aip-premium-knowledge-card__icon { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 8px; margin-bottom: 14px; border-radius: 12px; background: rgba(31,111,82,.09); color: var(--aip-premium-accent); font-weight: 700; }
.aip-premium-knowledge-card h3 { margin: 0 0 7px; font-size: 1.05rem; }
.aip-premium-knowledge-card p { margin: 0 0 16px; color: var(--aip-premium-muted); line-height: 1.5; }
.aip-premium-knowledge-card__action { border: 0; padding: 0; background: transparent; color: var(--aip-premium-accent); font: inherit; font-weight: 700; }
.aip-premium-knowledge-card__action[disabled] { opacity: .55; cursor: default; }
.aip-premium-knowledge__foundation-note { margin: 18px 0 0; font-size: .9rem; color: var(--aip-premium-muted); }
@media (max-width: 900px) { .aip-premium-knowledge__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .aip-premium-knowledge { padding: 20px; } .aip-premium-knowledge__grid { grid-template-columns: 1fr; } }


/* =========================================================
 * L12.2.1 — Equipment Knowledge Reader
 * ========================================================= */
.aip-premium-knowledge-card.is-enabled {
    border-color: rgba(31,111,82,.34);
    box-shadow: 0 8px 22px rgba(31,111,82,.06);
}
.aip-premium-knowledge-card.is-enabled .aip-premium-knowledge-card__action {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
}
.aip-premium-knowledge-card.is-enabled .aip-premium-knowledge-card__action::after { content: '→'; }
.aip-premium-knowledge-equipment {
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid var(--aip-premium-border);
    scroll-margin-top: 24px;
}
.aip-premium-knowledge-equipment__header { max-width: 780px; margin-bottom: 18px; }
.aip-premium-knowledge-equipment__header h3 { margin: 4px 0 7px; font-size: 1.35rem; }
.aip-premium-knowledge-equipment__header p { margin: 0 0 10px; color: var(--aip-premium-muted); }
.aip-premium-knowledge-equipment__count {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(31,111,82,.09);
    color: var(--aip-premium-accent);
    font-size: .82rem;
    font-weight: 700;
}
.aip-premium-knowledge-equipment__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.aip-premium-equipment-reader-card {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 15px;
    background: #fff;
}
.aip-premium-equipment-reader-card__id {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--aip-premium-accent);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .04em;
}
.aip-premium-equipment-reader-card h4 { margin: 0 0 7px; font-size: .98rem; }
.aip-premium-equipment-reader-card p { margin: 0 0 10px; color: var(--aip-premium-muted); font-size: .88rem; line-height: 1.45; }
.aip-premium-equipment-reader-card__status { color: #47715e; font-size: .75rem; font-weight: 700; }
.aip-premium-knowledge-equipment__note { margin: 16px 0 0; color: var(--aip-premium-muted); font-size: .86rem; line-height: 1.5; }
.aip-premium-knowledge-equipment__note code { font-size: .84em; }
@media (max-width: 980px) {
    .aip-premium-knowledge-equipment__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .aip-premium-knowledge-equipment__grid { grid-template-columns: 1fr; }
}


/* L12.2.3 — Equipment Knowledge Presentation */
.aip-premium-equipment-card {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 16px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.aip-premium-equipment-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.aip-premium-equipment-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: rgba(31,111,82,.09);
    color: var(--aip-premium-accent);
}
.aip-premium-equipment-card__id {
    color: var(--aip-premium-muted);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .04em;
}
.aip-premium-equipment-card h4 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.25;
}
.aip-premium-equipment-card__meta {
    margin: 0;
    min-height: 2.5em;
    color: var(--aip-premium-muted);
    font-size: .84rem;
    line-height: 1.45;
}
.aip-premium-equipment-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.aip-premium-equipment-card__badges span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(31,111,82,.08);
    color: #47715e;
    font-size: .72rem;
    font-weight: 700;
}
.aip-premium-equipment-card__action {
    margin-top: auto;
    align-self: flex-start;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--aip-premium-accent);
    font: inherit;
    font-size: .86rem;
    font-weight: 700;
}
.aip-premium-equipment-card__action[disabled] {
    opacity: .55;
    cursor: default;
}

@media (max-width: 760px) {
    .aip-premium-equipment-card {
        padding: 14px;
    }
    .aip-premium-equipment-card__meta {
        min-height: 0;
    }
}


/* L12.2.4 — Fichas educativas J.2 */
.aip-premium-equipment-card__action {
    text-decoration: none;
}
.aip-premium-equipment-card__action:hover,
.aip-premium-equipment-card__action:focus {
    text-decoration: underline;
}
.aip-premium-equipment-details {
    display: grid;
    gap: 18px;
    margin-top: 26px;
}
.aip-premium-equipment-detail {
    scroll-margin-top: 28px;
    padding: 22px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 18px;
    background: #fff;
}
.aip-premium-equipment-detail:target {
    box-shadow: 0 0 0 3px rgba(31,111,82,.10);
}
.aip-premium-equipment-detail__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 14px;
    margin-bottom: 14px;
    border-bottom: 1px solid var(--aip-premium-border);
}
.aip-premium-equipment-detail__id {
    display: inline-block;
    margin-bottom: 4px;
    color: var(--aip-premium-muted);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .05em;
}
.aip-premium-equipment-detail__heading h4 {
    margin: 0;
    font-size: 1.2rem;
    line-height: 1.2;
}
.aip-premium-equipment-detail__method {
    margin: 5px 0 0;
    color: var(--aip-premium-muted);
    font-size: .86rem;
}
.aip-premium-equipment-detail__back {
    flex: 0 0 auto;
    color: var(--aip-premium-accent);
    font-size: .8rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-equipment-detail__block {
    margin-top: 15px;
}
.aip-premium-equipment-detail__block h5 {
    margin: 0 0 6px;
    font-size: .9rem;
}
.aip-premium-equipment-detail__block p {
    margin: 0;
    line-height: 1.55;
}
.aip-premium-equipment-detail__block ul {
    margin: 0;
    padding-left: 19px;
}
.aip-premium-equipment-detail__block li {
    margin: 5px 0;
    line-height: 1.5;
}
.aip-premium-equipment-detail__block--important {
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(31,111,82,.06);
}
.aip-premium-equipment-detail__footer {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--aip-premium-border);
}
.aip-premium-equipment-detail__method-cta {
    color: var(--aip-premium-accent);
    font-size: .86rem;
    font-weight: 700;
}

@media (max-width: 760px) {
    .aip-premium-equipment-detail {
        padding: 17px;
    }
    .aip-premium-equipment-detail__heading {
        display: block;
    }
    .aip-premium-equipment-detail__back {
        display: inline-block;
        margin-top: 10px;
    }
}


/* L12.2.5 — Equipment cards: semantic icons + clean presentation */
.aip-premium-equipment-card__svg {
    display: block;
    width: 22px;
    height: 22px;
}
.aip-premium-equipment-card__badges {
    display: none !important;
}


/* L12.2.6 — Equipment Affiliate Layer / Onde encontrar */
.aip-premium-equipment-detail__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.aip-premium-equipment-detail__method-cta,
.aip-premium-equipment-detail__market-cta {
    min-height: 42px;
    padding: 10px 14px;
    border-radius: 10px;
    font: inherit;
    font-size: .86rem;
    font-weight: 700;
}
.aip-premium-equipment-detail__method-cta {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--aip-premium-border);
    background: #fff;
    color: var(--aip-premium-accent);
}
.aip-premium-equipment-detail__market-cta {
    border: 1px solid #d9bd94;
    background: #fff7ea;
    color: #69431f;
    cursor: pointer;
}
.aip-premium-equipment-detail__market-cta:hover,
.aip-premium-equipment-detail__market-cta:focus {
    background: #f8ead5;
}

.aip-premium-equipment-market[hidden] {
    display: none !important;
}
.aip-premium-equipment-market {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: grid;
    place-items: center;
    padding: 24px;
}
.aip-premium-equipment-market__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(25, 23, 20, .56);
}
.aip-premium-equipment-market__panel {
    position: relative;
    z-index: 1;
    width: min(820px, 100%);
    max-height: min(82vh, 760px);
    overflow: auto;
    padding: 24px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .20);
}
.aip-premium-equipment-market__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.aip-premium-equipment-market__header h4 {
    margin: 2px 0 6px;
    font-size: 1.35rem;
}
.aip-premium-equipment-market__header p {
    margin: 0;
    color: var(--aip-premium-muted);
    line-height: 1.5;
}
.aip-premium-equipment-market__close {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--aip-premium-muted);
    font-size: 1.8rem;
    line-height: 1;
    cursor: pointer;
}
.aip-premium-equipment-market__close:hover,
.aip-premium-equipment-market__close:focus {
    background: rgba(0,0,0,.05);
    color: var(--aip-premium-text);
}
.aip-premium-equipment-market__disclosure {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin: 18px 0;
    padding: 13px 14px;
    border: 1px solid #ead3ae;
    border-radius: 12px;
    background: #fffaf2;
}
.aip-premium-equipment-market__disclosure p {
    margin: 0;
    line-height: 1.5;
}
.aip-premium-equipment-market__empty {
    padding: 26px 18px;
    border: 1px dashed var(--aip-premium-border);
    border-radius: 14px;
    text-align: center;
    background: #fbfaf8;
}
.aip-premium-equipment-market__empty strong {
    display: block;
    margin-bottom: 5px;
}
.aip-premium-equipment-market__empty p {
    margin: 0 auto;
    max-width: 600px;
    color: var(--aip-premium-muted);
    line-height: 1.55;
}
.aip-premium-equipment-market__toolbar {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    color: var(--aip-premium-muted);
    font-size: .82rem;
}
.aip-premium-equipment-market__products {
    display: grid;
    gap: 10px;
}
.aip-premium-equipment-market-product {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 14px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 14px;
}
.aip-premium-equipment-market-product h5 {
    margin: 0 0 7px;
    font-size: .96rem;
}
.aip-premium-equipment-market-product ul {
    margin: 0;
    padding-left: 18px;
}
.aip-premium-equipment-market-product li {
    margin: 3px 0;
    color: var(--aip-premium-muted);
    font-size: .82rem;
}
.aip-premium-equipment-market-product__seller {
    margin: 8px 0 0;
    color: var(--aip-premium-muted);
    font-size: .8rem;
}
.aip-premium-equipment-market-product__buy {
    min-width: 145px;
    display: grid;
    justify-items: end;
    gap: 8px;
}
.aip-premium-equipment-market-product__buy strong {
    font-size: 1rem;
}
.aip-premium-equipment-market-product__buy a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 14px;
    border-radius: 9px;
    background: #5a2f0d;
    color: #fff;
    font-size: .84rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-equipment-market__footer {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--aip-premium-border);
    color: var(--aip-premium-muted);
    font-size: .75rem;
    text-align: center;
}
body.aip-premium-market-open {
    overflow: hidden;
}

@media (max-width: 680px) {
    .aip-premium-equipment-market {
        padding: 12px;
    }
    .aip-premium-equipment-market__panel {
        max-height: 88vh;
        padding: 17px;
        border-radius: 15px;
    }
    .aip-premium-equipment-market__header h4 {
        font-size: 1.15rem;
    }
    .aip-premium-equipment-market-product {
        grid-template-columns: 1fr;
    }
    .aip-premium-equipment-market-product__buy {
        min-width: 0;
        justify-items: stretch;
    }
    .aip-premium-equipment-market-product__buy a {
        justify-content: center;
    }
}


/* L12.2.7C — Produtos reais no modal */
.aip-premium-equipment-market-product {
    grid-template-columns: 92px minmax(0, 1fr) auto;
}
.aip-premium-equipment-market-product__image {
    width: 92px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 10px;
    background: #f8f6f2;
}
.aip-premium-equipment-market-product__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.aip-premium-equipment-market-product__image--empty {
    color: var(--aip-premium-muted);
    font-size: 1.5rem;
}
.aip-premium-equipment-market-product__body {
    min-width: 0;
}

@media (max-width: 680px) {
    .aip-premium-equipment-market-product {
        grid-template-columns: 76px minmax(0, 1fr);
    }
    .aip-premium-equipment-market-product__image {
        width: 76px;
        height: 76px;
    }
    .aip-premium-equipment-market-product__buy {
        grid-column: 1 / -1;
    }
}


/* L12.2.8 — Aba Acessórios */
.aip-premium-knowledge-accessories {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--aip-premium-border);
}
.aip-premium-knowledge-accessories__header {
    margin-bottom: 16px;
}
.aip-premium-knowledge-accessories__header h3 {
    margin: 3px 0 6px;
}
.aip-premium-knowledge-accessories__header p {
    margin: 0;
    color: var(--aip-premium-muted);
}
.aip-premium-knowledge-accessories__count {
    display: inline-flex;
    margin-top: 10px;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(31,111,82,.08);
    color: #47715e;
    font-size: .75rem;
    font-weight: 700;
}
.aip-premium-accessories__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.aip-premium-accessory-card {
    padding: 16px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 16px;
    background: #fff;
}
.aip-premium-accessory-card__icon {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(31,111,82,.08);
    color: var(--aip-premium-accent);
}
.aip-premium-accessory-card h4 {
    margin: 12px 0 4px;
}
.aip-premium-accessory-card__meta {
    margin: 0 0 16px;
    color: var(--aip-premium-muted);
    font-size: .84rem;
}
.aip-premium-accessory-card__action {
    color: var(--aip-premium-accent);
    font-size: .86rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-accessory-details {
    display: grid;
    gap: 18px;
    margin-top: 22px;
}
.aip-premium-accessory-detail {
    scroll-margin-top: 28px;
    padding: 22px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 18px;
    background: #fff;
}
.aip-premium-accessory-detail:target {
    box-shadow: 0 0 0 3px rgba(31,111,82,.10);
}
.aip-premium-accessory-detail__heading {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 14px;
    margin-bottom: 14px;
    border-bottom: 1px solid var(--aip-premium-border);
}
.aip-premium-accessory-detail__category {
    color: var(--aip-premium-muted);
    font-size: .75rem;
    font-weight: 700;
}
.aip-premium-accessory-detail__heading h4 {
    margin: 4px 0 0;
    font-size: 1.2rem;
}
.aip-premium-accessory-detail__heading a {
    color: var(--aip-premium-accent);
    font-size: .8rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-accessory-detail section {
    margin-top: 15px;
}
.aip-premium-accessory-detail h5 {
    margin: 0 0 6px;
}
.aip-premium-accessory-detail p {
    margin: 0;
    line-height: 1.55;
}
.aip-premium-accessory-detail ul {
    margin: 0;
    padding-left: 19px;
}
.aip-premium-accessory-detail li {
    margin: 5px 0;
    line-height: 1.5;
}
.aip-premium-accessory-detail__important {
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(31,111,82,.06);
}
.aip-premium-accessory-detail__actions {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--aip-premium-border);
}
.aip-premium-accessory-detail__commerce-note {
    color: var(--aip-premium-muted);
    font-size: .8rem;
}

@media (max-width: 760px) {
    .aip-premium-accessories__grid {
        grid-template-columns: 1fr;
    }
    .aip-premium-accessory-detail {
        padding: 17px;
    }
    .aip-premium-accessory-detail__heading {
        display: block;
    }
    .aip-premium-accessory-detail__heading a {
        display: inline-block;
        margin-top: 10px;
    }
}


/* L12.2.10 — Microfichas de filtros em Acessórios */
.aip-premium-accessories__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.aip-premium-accessory-micro {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}
.aip-premium-accessory-micro section {
    margin: 0;
    padding: 12px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 12px;
    background: #fbfaf8;
}
.aip-premium-accessory-micro section h5 {
    margin-bottom: 5px;
}
.aip-premium-accessory-micro__cta {
    grid-column: 1 / -1;
    margin-top: 2px;
    padding-top: 12px;
    border-top: 1px solid var(--aip-premium-border);
    color: var(--aip-premium-accent);
    font-size: .86rem;
    font-weight: 700;
}

@media (max-width: 760px) {
    .aip-premium-accessories__grid {
        grid-template-columns: 1fr;
    }
    .aip-premium-accessory-micro {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   L12.3.1A — HUB EDUCATIVO DE CAFÉS
   ========================================================= */
.aip-premium-coffees-hub {
    margin-top: 34px;
    padding-top: 28px;
    border-top: 1px solid var(--aip-premium-border);
}
.aip-premium-coffees-hub__header {
    margin-bottom: 18px;
}
.aip-premium-coffees-hub__header h3 {
    margin: 4px 0 8px;
    font-size: clamp(1.65rem, 3vw, 2.25rem);
    line-height: 1.08;
}
.aip-premium-coffees-hub__header > p:last-child {
    max-width: 650px;
    margin: 0;
}
.aip-premium-coffees-hub__list {
    display: grid;
    gap: 10px;
}
.aip-premium-coffee-topic {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 22px;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 16px;
    background: #fff;
}
.aip-premium-coffee-topic__icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #f6eee5;
    color: #6a3518;
}
.aip-premium-coffee-topic__title-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 4px;
}
.aip-premium-coffee-topic__number {
    flex: 0 0 auto;
    padding: 3px 7px;
    border-radius: 5px;
    background: #9a663c;
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
    line-height: 1;
}
.aip-premium-coffee-topic h4 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.2;
}
.aip-premium-coffee-topic p {
    margin: 0;
    font-size: .9rem;
    line-height: 1.45;
}
.aip-premium-coffee-topic__highlight {
    display: inline-block;
    margin-top: 7px;
    padding: 5px 9px;
    border-radius: 9px;
    background: #f7eadb;
    color: #5b321d;
    font-size: .78rem;
    font-weight: 700;
}
.aip-premium-coffee-topic__arrow {
    color: #6f665f;
    font-size: 2rem;
    line-height: 1;
}
.aip-premium-coffees-curation {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin-top: 18px;
    padding: 20px;
    border: 1px solid #eadbcb;
    border-radius: 16px;
    background: linear-gradient(110deg, #fbf3e9 0%, #fff 75%);
}
.aip-premium-coffees-curation__icon {
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #efe0cd;
    color: #6a3518;
}
.aip-premium-coffees-curation__icon svg {
    width: 38px;
    height: 38px;
}
.aip-premium-coffees-curation h4 {
    margin: 0 0 4px;
    font-size: 1.15rem;
}
.aip-premium-coffees-curation p {
    margin: 0 0 10px;
}
.aip-premium-coffees-curation button {
    border: 0;
    border-radius: 9px;
    padding: 9px 13px;
    background: #6a3518;
    color: #fff;
    font-weight: 700;
    opacity: .55;
    cursor: not-allowed;
}
.aip-premium-coffees-curation small {
    display: block;
    margin-top: 7px;
    color: #786f69;
}

@media (max-width: 640px) {
    .aip-premium-coffee-topic {
        grid-template-columns: 46px minmax(0, 1fr) 18px;
        gap: 10px;
        padding: 14px 12px;
    }
    .aip-premium-coffee-topic__icon {
        width: 46px;
        height: 46px;
    }
    .aip-premium-coffee-topic__title-row {
        align-items: flex-start;
    }
    .aip-premium-coffee-topic__number {
        margin-top: 1px;
    }
    .aip-premium-coffees-curation {
        grid-template-columns: 58px minmax(0, 1fr);
        padding: 16px 14px;
    }
    .aip-premium-coffees-curation__icon {
        width: 58px;
        height: 58px;
    }
}


/* =========================================================
   L12.3.1B — 7 CARDS EDUCATIVOS FUNCIONAIS
   ========================================================= */
a.aip-premium-coffee-topic {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
a.aip-premium-coffee-topic:hover,
a.aip-premium-coffee-topic:focus-visible {
    color: inherit;
    border-color: #cdb69f;
    box-shadow: 0 8px 22px rgba(74, 43, 25, .08);
    transform: translateY(-1px);
    outline: none;
}
.aip-premium-coffee-educational-details {
    display: grid;
    gap: 18px;
    margin-top: 28px;
}
.aip-premium-coffee-detail {
    scroll-margin-top: 28px;
    padding: 20px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 16px;
    background: #fff;
}
.aip-premium-coffee-detail__top {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--aip-premium-border);
    font-size: .78rem;
}
.aip-premium-coffee-detail__top > span {
    display: inline-flex;
    padding: 4px 8px;
    border-radius: 5px;
    background: #9a663c;
    color: #fff;
    font-weight: 700;
}
.aip-premium-coffee-detail__top a {
    color: #6a3518;
    text-decoration: none;
    font-weight: 700;
}
.aip-premium-coffee-detail h4 {
    margin: 0 0 8px;
    font-size: 1.25rem;
}
.aip-premium-coffee-detail__intro {
    margin: 0 0 18px;
    line-height: 1.6;
}
.aip-premium-coffee-detail__section {
    padding-top: 15px;
    margin-top: 15px;
    border-top: 1px solid #eee5dc;
}
.aip-premium-coffee-detail__section h5 {
    margin: 0 0 6px;
    font-size: .92rem;
}
.aip-premium-coffee-detail__section p {
    margin: 0;
    line-height: 1.6;
}
@media (max-width: 640px) {
    .aip-premium-coffee-detail {
        padding: 16px 14px;
    }
    .aip-premium-coffee-detail__top {
        align-items: flex-start;
    }
}


/* =========================================================
   L12.3.2 — CAFÉS PARA CONHECER
   ========================================================= */
.aip-premium-coffees-curation__cta {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 9px 13px;
    border-radius: 9px;
    background: #6a3518;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-coffees-curation__cta:hover,
.aip-premium-coffees-curation__cta:focus-visible {
    color: #fff;
    background: #532711;
}
.aip-premium-coffee-curation {
    scroll-margin-top: 28px;
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid var(--aip-premium-border);
}
.aip-premium-coffee-curation__header h4 {
    margin: 4px 0 7px;
    font-size: 1.35rem;
}
.aip-premium-coffee-curation__header > p:last-child {
    margin: 0;
    line-height: 1.55;
}
.aip-premium-coffee-format-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0 20px;
}
.aip-premium-coffee-format-nav a {
    padding: 7px 10px;
    border: 1px solid #dfcbb8;
    border-radius: 999px;
    background: #fffaf5;
    color: #63381f;
    font-size: .78rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-coffee-format {
    scroll-margin-top: 28px;
    margin-top: 16px;
    padding: 17px;
    border: 1px solid var(--aip-premium-border);
    border-radius: 15px;
    background: #fff;
}
.aip-premium-coffee-format__heading {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-start;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid #eee5dc;
}
.aip-premium-coffee-format__heading h5 {
    margin: 0 0 3px;
    font-size: 1rem;
}
.aip-premium-coffee-format__heading p {
    margin: 0;
    font-size: .84rem;
}
.aip-premium-coffee-format__heading > a {
    flex: 0 0 auto;
    color: #6a3518;
    font-size: .76rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-coffee-curation__empty {
    padding: 18px;
    border: 1px dashed #dfd1c4;
    border-radius: 12px;
    background: #fbfaf8;
    text-align: center;
}
.aip-premium-coffee-curation__empty strong {
    display: block;
    margin-bottom: 4px;
}
.aip-premium-coffee-curation__empty p {
    margin: 0;
    color: #766d67;
    font-size: .82rem;
    line-height: 1.5;
}
.aip-premium-coffee-product-grid {
    display: grid;
    gap: 10px;
}
.aip-premium-coffee-product {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 12px;
    border: 1px solid #eee2d7;
    border-radius: 12px;
}
.aip-premium-coffee-product__image {
    width: 84px;
    height: 84px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 10px;
    background: #f8f2eb;
    color: #6a3518;
}
.aip-premium-coffee-product__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.aip-premium-coffee-product__body {
    min-width: 0;
}
.aip-premium-coffee-product h6 {
    margin: 0 0 5px;
    font-size: .9rem;
}
.aip-premium-coffee-product__features {
    margin: 0 0 7px;
    color: #6f665f;
    font-size: .78rem;
}
.aip-premium-coffee-product__seller {
    font-size: .75rem;
    color: #766d67;
}
.aip-premium-coffee-product__buy {
    display: grid;
    justify-items: end;
    gap: 7px;
    min-width: 120px;
}
.aip-premium-coffee-product__buy strong {
    font-size: .86rem;
}
.aip-premium-coffee-product__buy a {
    display: inline-flex;
    padding: 8px 11px;
    border-radius: 8px;
    background: #6a3518;
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
    text-decoration: none;
}
.aip-premium-coffee-curation__disclosure {
    display: flex;
    gap: 9px;
    margin-top: 16px;
    padding: 12px 13px;
    border: 1px solid #ead3ae;
    border-radius: 11px;
    background: #fffaf2;
}
.aip-premium-coffee-curation__disclosure p {
    margin: 0;
    font-size: .78rem;
    line-height: 1.5;
}

@media (max-width: 640px) {
    .aip-premium-coffee-product {
        grid-template-columns: 70px minmax(0, 1fr);
    }
    .aip-premium-coffee-product__image {
        width: 70px;
        height: 70px;
    }
    .aip-premium-coffee-product__buy {
        grid-column: 1 / -1;
        justify-items: stretch;
    }
    .aip-premium-coffee-product__buy a {
        justify-content: center;
    }
}


/* =========================================================
   L12.4.2 — GLOSSÁRIO | UX/UI FINAL
   ========================================================= */

.aip-premium-glossary {
    scroll-margin-top: 28px;
    margin-top: 30px;
    padding-top: 28px;
    border-top: 1px solid var(--aip-premium-border);
}

.aip-premium-glossary__header {
    max-width: 720px;
    margin-bottom: 18px;
}

.aip-premium-glossary__header h3 {
    margin: 4px 0 8px;
    font-size: clamp(1.65rem, 3vw, 2.15rem);
    line-height: 1.1;
}

.aip-premium-glossary__header > p:last-child {
    margin: 0;
    color: var(--aip-premium-muted);
    line-height: 1.55;
}

/* Busca */
.aip-premium-glossary__search {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 0 16px;
}

.aip-premium-glossary__search > span {
    position: absolute;
    left: 14px;
    z-index: 2;
    color: #7a6b60;
    font-size: 1rem;
    pointer-events: none;
}

.aip-premium-glossary__search input {
    display: block;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 11px 14px 11px 42px;
    border: 1px solid #ddcfc4;
    border-radius: 12px;
    background: #fff;
    color: var(--aip-premium-text);
    box-shadow: none;
    outline: 0;
    font: inherit;
    font-size: .94rem;
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background-color .18s ease;
}

.aip-premium-glossary__search input::placeholder {
    color: #9a8f87;
}

.aip-premium-glossary__search input:hover {
    border-color: #c9b6a8;
}

.aip-premium-glossary__search input:focus {
    border-color: #8a5f43;
    box-shadow: 0 0 0 3px rgba(107, 73, 50, .10);
}

/* Índice alfabético */
.aip-premium-glossary__alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 0 24px;
}

.aip-premium-glossary__alphabet a {
    display: inline-flex;
    min-width: 34px;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 6px 9px;
    border: 1px solid #e1d3c7;
    border-radius: 999px;
    background: #fffaf5;
    color: #65412c;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    transition:
        background-color .15s ease,
        border-color .15s ease,
        color .15s ease,
        transform .15s ease;
}

.aip-premium-glossary__alphabet a:hover,
.aip-premium-glossary__alphabet a:focus-visible {
    border-color: #b99578;
    background: #f4e8dd;
    color: #4f2f1d;
    outline: none;
    transform: translateY(-1px);
}

/* Grupos */
.aip-premium-glossary__groups {
    display: grid;
    gap: 22px;
}

.aip-premium-glossary-group {
    scroll-margin-top: 28px;
}

.aip-premium-glossary-group > h4 {
    margin: 0 0 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #eadfd5;
    color: #5b3a26;
    font-size: 1.15rem;
    line-height: 1.2;
}

.aip-premium-glossary-group__items {
    display: grid;
    gap: 8px;
}

/* Verbetes */
.aip-premium-glossary-entry {
    overflow: hidden;
    border: 1px solid var(--aip-premium-border);
    border-radius: 12px;
    background: #fff;
    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        background-color .15s ease;
}

.aip-premium-glossary-entry:hover {
    border-color: #d6c5b8;
}

.aip-premium-glossary-entry[open] {
    border-color: #cdb49e;
    background: #fffdf9;
    box-shadow: 0 5px 16px rgba(63, 42, 28, .06);
}

.aip-premium-glossary-entry summary {
    display: flex;
    min-height: 46px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 14px;
    cursor: pointer;
    list-style: none;
    color: var(--aip-premium-text);
    font-weight: 700;
    line-height: 1.35;
}

.aip-premium-glossary-entry summary::-webkit-details-marker {
    display: none;
}

.aip-premium-glossary-entry summary::marker {
    content: '';
}

.aip-premium-glossary-entry summary:focus-visible {
    outline: 2px solid #8a5f43;
    outline-offset: -2px;
    border-radius: 10px;
}

.aip-premium-glossary-entry__arrow {
    flex: 0 0 auto;
    color: #7b5a44;
    font-size: 1.35rem;
    line-height: 1;
    transition: transform .18s ease;
}

.aip-premium-glossary-entry[open]
.aip-premium-glossary-entry__arrow {
    transform: rotate(90deg);
}

.aip-premium-glossary-entry__definition {
    padding: 0 14px 14px;
}

.aip-premium-glossary-entry__definition p {
    margin: 0;
    padding-top: 12px;
    border-top: 1px solid #eee4dc;
    color: #514a44;
    font-size: .9rem;
    line-height: 1.65;
}

/* Empty state da busca */
.aip-premium-glossary__empty {
    margin-top: 18px;
    padding: 22px 18px;
    border: 1px dashed #d8cabf;
    border-radius: 12px;
    background: #fbfaf8;
    text-align: center;
}

.aip-premium-glossary__empty strong {
    display: block;
    margin-bottom: 5px;
}

.aip-premium-glossary__empty p {
    margin: 0;
    color: var(--aip-premium-muted);
    font-size: .84rem;
}

/* Mobile */
@media (max-width: 640px) {
    .aip-premium-glossary {
        margin-top: 26px;
        padding-top: 24px;
    }

    .aip-premium-glossary__header h3 {
        font-size: 1.75rem;
    }

    .aip-premium-glossary__search input {
        min-height: 46px;
        font-size: .9rem;
    }

    .aip-premium-glossary__alphabet {
        gap: 6px;
        margin-bottom: 20px;
    }

    .aip-premium-glossary__alphabet a {
        min-width: 32px;
        min-height: 32px;
        padding: 6px 8px;
        font-size: .75rem;
    }

    .aip-premium-glossary__groups {
        gap: 18px;
    }

    .aip-premium-glossary-group > h4 {
        font-size: 1.05rem;
    }

    .aip-premium-glossary-entry summary {
        min-height: 44px;
        padding: 11px 12px;
        font-size: .9rem;
    }

    .aip-premium-glossary-entry__definition {
        padding: 0 12px 12px;
    }

    .aip-premium-glossary-entry__definition p {
        font-size: .86rem;
        line-height: 1.6;
    }
}

@media (max-width: 420px) {
    .aip-premium-glossary__alphabet {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .aip-premium-glossary__alphabet a {
        width: 100%;
        min-width: 0;
    }
}




/* =========================================================
 * 0.8.76 — Conhecimento > Glossário — acabamento Premium
 * Escopo isolado: não altera as demais áreas do Premium.
 * ========================================================= */
#aip-premium-knowledge-glossary.aip-premium-glossary{
    margin-top:0;
    padding-top:8px;
    border-top:0;
}
#aip-premium-knowledge-glossary .aip-premium-glossary__header{
    margin-bottom:20px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary__search{
    margin-bottom:14px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary__search input{
    min-height:50px;
    border-color:#dfcfc2;
    border-radius:13px;
    background:#fff;
    box-shadow:0 3px 12px rgba(63,42,28,.035);
}
#aip-premium-knowledge-glossary .aip-premium-glossary__alphabet{
    gap:7px;
    margin-bottom:26px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary__alphabet a{
    min-width:34px;
    min-height:34px;
    border-color:#dfcbbd;
    background:#fffaf5;
    box-shadow:0 2px 7px rgba(63,42,28,.025);
}
#aip-premium-knowledge-glossary .aip-premium-glossary__alphabet a:hover,
#aip-premium-knowledge-glossary .aip-premium-glossary__alphabet a:focus-visible{
    border-color:#1b3b2b;
    background:#1b3b2b;
    color:#fff;
}
#aip-premium-knowledge-glossary .aip-premium-glossary__groups{
    display:grid;
    gap:28px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-group{
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    scroll-margin-top:28px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-group > h4{
    margin:0 0 9px;
    padding:0 0 8px;
    border-bottom:1px solid #e7d9cd;
    color:#6a3518;
    font-size:1.05rem;
    font-weight:800;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-group__items{
    gap:7px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry{
    border-color:#e5d8cd;
    border-radius:11px;
    box-shadow:0 2px 8px rgba(63,42,28,.02);
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry:hover{
    border-color:#cdb7a5;
    box-shadow:0 4px 12px rgba(63,42,28,.045);
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry[open]{
    border-color:#c9ad96;
    background:#fffdf9;
    box-shadow:0 6px 16px rgba(63,42,28,.055);
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry summary{
    min-height:44px;
    padding:10px 13px;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry__arrow{
    color:#6a3518;
    font-size:1.2rem;
}
#aip-premium-knowledge-glossary .aip-premium-glossary-entry__definition{
    padding:0 13px 13px;
}
@media(max-width:640px){
    #aip-premium-knowledge-glossary .aip-premium-glossary__groups{gap:24px}
    #aip-premium-knowledge-glossary .aip-premium-glossary__alphabet{margin-bottom:22px}
    #aip-premium-knowledge-glossary .aip-premium-glossary-group{margin:0 !important;padding:0 !important}
}
@media(max-width:420px){
    #aip-premium-knowledge-glossary .aip-premium-glossary__groups{gap:22px}
}

/* =========================================================
 * UX final — Acesso / Login Premium — Design System Premium
 * Referência: wireframe Home/Dashboard Café Sob Medida
 * ========================================================= */

.aip-premium-access-state[data-aip-state="login_required"]{
    --csm-green:#073b2d;
    --csm-green-2:#0d4a38;
    --csm-green-soft:#174f3e;
    --csm-cream:#f7f3ed;
    --csm-paper:#fffdf9;
    --csm-gold:#d7ad68;
    --csm-ink:#171713;
    --csm-muted:#665f56;
    --csm-line:#e8e0d6;
    max-width:1220px;
    margin:0 auto;
    padding:34px 26px 72px;
    color:var(--csm-ink);
    font-family:Arial,Helvetica,sans-serif;
}

.aip-premium-access-state[data-aip-state="login_required"] > h2,
.aip-premium-access-state[data-aip-state="login_required"] > p{
    display:none;
}

.aip-premium-entry{
    min-height:610px;
    display:grid;
    grid-template-columns:minmax(390px,.9fr) minmax(480px,1.1fr);
    overflow:hidden;
    border:1px solid var(--csm-line);
    border-radius:26px;
    background:var(--csm-paper);
    box-shadow:0 20px 55px -42px rgba(20,37,30,.48);
}

.aip-premium-entry__intro{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:56px 52px;
    overflow:hidden;
    background:
        radial-gradient(circle at 88% 12%,rgba(215,173,104,.14) 0 94px,transparent 95px),
        linear-gradient(150deg,var(--csm-green-2) 0%,var(--csm-green) 70%,#052e24 100%);
    color:#fff;
}

.aip-premium-entry__intro::before{
    content:"";
    position:absolute;
    left:-80px;
    bottom:-105px;
    width:250px;
    height:250px;
    border:1px solid rgba(215,173,104,.15);
    border-radius:50%;
}

.aip-premium-entry__intro::after{
    content:"☕";
    position:absolute;
    right:38px;
    bottom:28px;
    color:#fff;
    font-size:92px;
    line-height:1;
    opacity:.055;
}

.aip-premium-entry__eyebrow{
    position:relative;
    z-index:1;
    display:inline-flex;
    width:max-content;
    align-items:center;
    min-height:30px;
    padding:0 13px;
    border:1px solid rgba(215,173,104,.48);
    border-radius:999px;
    color:#f1cf96;
    font-size:10px;
    font-weight:800;
    letter-spacing:.14em;
}

.aip-premium-entry__intro h2{
    position:relative;
    z-index:1;
    max-width:520px;
    margin:22px 0 13px;
    color:#fff;
    font-family:Arial,Helvetica,sans-serif;
    font-size:clamp(2.25rem,4vw,3.55rem);
    font-weight:750;
    line-height:1.04;
    letter-spacing:-.035em;
}

.aip-premium-entry__lead{
    position:relative;
    z-index:1;
    max-width:535px;
    margin:0;
    color:rgba(255,255,255,.82);
    font-size:1rem;
    line-height:1.65;
}

.aip-premium-entry__steps{
    position:relative;
    z-index:1;
    display:grid;
    gap:0;
    margin-top:31px;
}

.aip-premium-entry__step{
    display:grid;
    grid-template-columns:38px 1fr;
    gap:12px;
    align-items:start;
    padding:12px 0;
    border-top:1px solid rgba(255,255,255,.12);
}

.aip-premium-entry__step:first-child{border-top:0}

.aip-premium-entry__step-number{
    color:var(--csm-gold);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    padding-top:2px;
}

.aip-premium-entry__step strong{
    display:block;
    margin:0 0 3px;
    color:#fff;
    font-size:.96rem;
    font-weight:700;
}

.aip-premium-entry__step small{
    display:block;
    color:rgba(255,255,255,.66);
    font-size:.84rem;
    line-height:1.42;
}

.aip-premium-entry__note{
    position:relative;
    z-index:1;
    margin:25px 0 0;
    color:#f1cf96;
    font-size:.9rem;
    font-weight:650;
}

.aip-premium-login{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:58px 64px;
    background:
        radial-gradient(circle at 100% 0%,rgba(215,173,104,.08) 0 140px,transparent 141px),
        var(--csm-cream);
}

.aip-premium-login__header{
    max-width:450px;
    margin:0 0 28px;
}

.aip-premium-login__badge{
    display:inline-block;
    margin-bottom:12px;
    color:var(--csm-green);
    font-size:10px;
    font-weight:800;
    letter-spacing:.13em;
}

.aip-premium-login__header h3{
    margin:0 0 9px;
    color:var(--csm-ink);
    font-family:Arial,Helvetica,sans-serif;
    font-size:clamp(1.85rem,3vw,2.4rem);
    font-weight:750;
    line-height:1.12;
    letter-spacing:-.025em;
}

.aip-premium-login__header p{
    margin:0;
    color:var(--csm-muted);
    font-size:.94rem;
    line-height:1.55;
}

.aip-premium-login__form{max-width:450px}

.aip-premium-login__error{
    max-width:450px;
    margin:0 0 18px;
    padding:12px 14px;
    box-sizing:border-box;
    border:1px solid #dfb7b1;
    border-radius:10px;
    background:#fff5f3;
    color:#873b34;
    font-size:.88rem;
    line-height:1.45;
}

.aip-premium-login__field{margin-bottom:16px}

.aip-premium-login__field label{
    display:block;
    margin:0 0 7px;
    color:#292722;
    font-size:.84rem;
    font-weight:700;
}

.aip-premium-login__field input[type="text"],
.aip-premium-login__field input[type="password"]{
    display:block !important;
    width:100% !important;
    height:50px !important;
    min-height:50px !important;
    padding:0 14px !important;
    box-sizing:border-box !important;
    border:1px solid #d8d0c7 !important;
    border-radius:10px !important;
    background:#fff !important;
    color:#171713 !important;
    opacity:1 !important;
    visibility:visible !important;
    font:inherit !important;
    font-size:.94rem !important;
    line-height:normal !important;
    outline:none !important;
    box-shadow:none !important;
    -webkit-appearance:none !important;
    appearance:none !important;
}

.aip-premium-login__field input::placeholder{
    color:#a19a91 !important;
    opacity:1;
}

.aip-premium-login__field input:focus{
    border-color:var(--csm-green-soft) !important;
    box-shadow:0 0 0 3px rgba(7,59,45,.09) !important;
}

.aip-premium-login__options{
    max-width:450px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:3px 0 21px;
    color:var(--csm-muted);
    font-size:.82rem;
}

.aip-premium-login__remember{
    display:inline-flex;
    align-items:center;
    gap:7px;
    white-space:nowrap;
}

.aip-premium-login__remember input{
    width:15px !important;
    height:15px !important;
    margin:0 !important;
    accent-color:var(--csm-green);
}

.aip-premium-login__options a{
    color:var(--csm-green);
    font-weight:600;
    text-decoration:none;
}

.aip-premium-login__options a:hover{text-decoration:underline}

.aip-premium-login__submit{
    display:flex;
    width:100%;
    max-width:450px;
    min-height:52px;
    align-items:center;
    justify-content:center;
    padding:0 22px;
    border:0;
    border-radius:10px;
    background:var(--csm-green);
    color:#fff !important;
    cursor:pointer;
    font:inherit;
    font-size:.92rem;
    font-weight:750;
    box-shadow:none;
}

.aip-premium-login__submit:hover,
.aip-premium-login__submit:focus{
    background:var(--csm-green-soft);
}

.aip-premium-login__support{
    max-width:450px;
    margin:17px 0 0;
    color:#847d74;
    font-size:.77rem;
    line-height:1.5;
    text-align:center;
}

@media(max-width:900px){
    .aip-premium-access-state[data-aip-state="login_required"]{
        padding:26px 18px 58px;
    }
    .aip-premium-entry{
        grid-template-columns:1fr;
        min-height:0;
    }
    .aip-premium-entry__intro{
        padding:42px 38px;
    }
    .aip-premium-entry__intro h2{
        max-width:650px;
        font-size:2.8rem;
    }
    .aip-premium-entry__steps{
        grid-template-columns:repeat(3,1fr);
        gap:12px;
    }
    .aip-premium-entry__step{
        display:block;
        padding:14px 0 0;
    }
    .aip-premium-entry__step-number{
        display:block;
        margin-bottom:7px;
    }
    .aip-premium-login{
        padding:44px 38px 46px;
    }
    .aip-premium-login__header,
    .aip-premium-login__form,
    .aip-premium-login__error,
    .aip-premium-login__options,
    .aip-premium-login__submit,
    .aip-premium-login__support{
        max-width:560px;
        width:100%;
        box-sizing:border-box;
        margin-left:auto;
        margin-right:auto;
    }
}

@media(max-width:640px){
    .aip-premium-access-state[data-aip-state="login_required"]{
        padding:14px 10px 40px;
    }
    .aip-premium-entry{
        border-radius:20px;
    }
    .aip-premium-entry__intro{
        padding:30px 22px 28px;
    }
    .aip-premium-entry__eyebrow{
        font-size:9px;
    }
    .aip-premium-entry__intro h2{
        margin-top:18px;
        font-size:2.15rem;
        line-height:1.07;
    }
    .aip-premium-entry__lead{
        font-size:.93rem;
        line-height:1.58;
    }
    .aip-premium-entry__steps{
        grid-template-columns:1fr;
        gap:0;
        margin-top:22px;
    }
    .aip-premium-entry__step{
        display:grid;
        grid-template-columns:34px 1fr;
        padding:10px 0;
    }
    .aip-premium-entry__note{
        margin-top:17px;
    }
    .aip-premium-login{
        padding:31px 22px 30px;
    }
    .aip-premium-login__header{
        margin-bottom:23px;
    }
    .aip-premium-login__header h3{
        font-size:1.75rem;
    }
    .aip-premium-login__options{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }
    .aip-premium-login__submit{
        min-height:54px;
    }
}


/* 0.8.6 — Correção de contraste do painel institucional de acesso */
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__intro,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__intro h2,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__intro p,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__intro strong,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__intro small {
    color: #ffffff !important;
}

.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__lead {
    color: rgba(255,255,255,.82) !important;
}

.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__step small {
    color: rgba(255,255,255,.72) !important;
}

.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__eyebrow,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__step-number,
.aip-premium-access-state[data-aip-state="login_required"] .aip-premium-entry__note {
    color: #f1cf96 !important;
}


/* =========================================================
 * 0.8.7 — Home / Dashboard Premium — Wireframe V1.2
 * Apresentação apenas. Lógica dos módulos permanece preservada.
 * ========================================================= */

.aip-dashboard-layout{
    --csm-green:#073b2d;
    --csm-green-2:#0d4a38;
    --csm-green-soft:#174f3e;
    --csm-cream:#f7f3ed;
    --csm-paper:#fffdf9;
    --csm-gold:#d7ad68;
    --csm-ink:#171713;
    --csm-muted:#665f56;
    --csm-line:#e8e0d6;
    width:min(1480px,calc(100vw - 32px));
    margin:0 auto 54px;
    display:grid;
    grid-template-columns:224px minmax(0,1fr);
    overflow:hidden;
    border:1px solid var(--csm-line);
    border-radius:24px;
    background:var(--csm-paper);
    box-shadow:0 20px 60px -45px rgba(18,45,35,.55);
    color:var(--csm-ink);
    font-family:Arial,Helvetica,sans-serif;
}

.aip-dashboard-sidebar{
    position:relative;
    min-height:900px;
    display:flex;
    flex-direction:column;
    padding:28px 14px 22px;
    box-sizing:border-box;
    background:linear-gradient(180deg,#0b4434 0%,#052f25 100%);
    color:#fff;
}

.aip-dashboard-brand{
    display:flex;
    align-items:center;
    gap:11px;
    padding:0 14px 28px;
    color:#f2d39c;
}
.aip-dashboard-brand__mark{
    font-size:30px;
    color:#f2d39c;
}
.aip-dashboard-brand strong{
    display:block;
    color:#f2d39c;
    font-size:15px;
    line-height:1.12;
    letter-spacing:.06em;
}
.aip-dashboard-brand small{
    display:block;
    margin-top:4px;
    color:#e8c88f;
    font-size:8px;
    letter-spacing:.26em;
}

.aip-dashboard-sidebar__nav{
    display:grid;
    gap:6px;
}
.aip-dashboard-nav__button{
    width:100%;
    min-height:54px;
    display:grid;
    grid-template-columns:34px 1fr;
    align-items:center;
    gap:9px;
    padding:0 14px;
    border:0;
    border-radius:11px;
    background:transparent;
    color:rgba(255,255,255,.88);
    text-align:left;
    font:inherit;
    font-size:14px;
    cursor:pointer;
}
.aip-dashboard-nav__button:hover,
.aip-dashboard-nav__button.is-active{
    background:rgba(255,255,255,.09);
    color:#fff;
}
.aip-dashboard-nav__icon{
    color:#f2d39c;
    font-size:22px;
    text-align:center;
}

.aip-dashboard-account{
    margin-top:auto;
    min-height:54px;
    display:grid;
    grid-template-columns:30px 1fr auto;
    align-items:center;
    gap:8px;
    padding:0 14px;
    border:1px solid rgba(242,211,156,.22);
    border-radius:11px;
    color:#fff !important;
    text-decoration:none !important;
    font-size:14px;
}

.aip-dashboard-main{
    min-width:0;
    background:linear-gradient(180deg,#fbf8f3 0,#fffdf9 125px);
}
.aip-dashboard-topbar{
    min-height:104px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:22px 38px 16px;
    box-sizing:border-box;
}
.aip-dashboard-greeting h1{
    margin:0;
    color:var(--csm-ink);
    font-size:30px;
    line-height:1.12;
    letter-spacing:-.03em;
}
.aip-dashboard-greeting p{
    margin:8px 0 0;
    color:var(--csm-muted);
    font-size:14px;
}
.aip-dashboard-user{
    display:flex;
    align-items:center;
    gap:22px;
}
.aip-dashboard-help,
.aip-dashboard-user__account{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--csm-ink) !important;
    text-decoration:none !important;
    font-size:13px;
}
.aip-dashboard-help > span{
    width:22px;height:22px;
    display:grid;place-items:center;
    border:1px solid currentColor;border-radius:50%;
    font-weight:700;
}
.aip-dashboard-avatar{
    width:42px;height:42px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#d8c5aa;
    color:var(--csm-green);
    font-weight:800;
}

.aip-dashboard-content{
    padding:0 38px 46px;
}
.aip-dashboard-home{
    display:grid;
    gap:16px;
}
.aip-dashboard-welcome{
    display:grid;
    grid-template-columns:62px 1fr;
    gap:20px;
    padding:22px 24px;
    border:1px solid var(--csm-line);
    border-radius:18px;
    background:linear-gradient(100deg,#fbf3e8 0%,#fffdf9 62%);
}
.aip-dashboard-welcome__icon{
    width:54px;height:54px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#f1e3cf;
    color:#8c472c;
    font-size:28px;
}
.aip-dashboard-welcome h2{
    margin:0 0 7px;
    color:var(--csm-ink);
    font-size:19px;
}
.aip-dashboard-welcome p{
    max-width:720px;
    margin:0 0 8px;
    color:var(--csm-muted);
    font-size:14px;
    line-height:1.55;
}
.aip-dashboard-welcome strong{
    display:block;
    color:#2e2b26;
    font-size:13px;
}
.aip-dashboard-welcome__actions{
    display:flex;gap:12px;flex-wrap:wrap;
    margin-top:15px;
}

.aip-dashboard-maincards{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}
.aip-dashboard-card{
    min-height:250px;
    padding:23px 24px;
    box-sizing:border-box;
    border:1px solid var(--csm-line);
    border-radius:18px;
    background:
        radial-gradient(circle at 96% 4%,rgba(215,173,104,.13) 0 110px,transparent 111px),
        #fffdf9;
}
.aip-dashboard-kicker{
    margin:0 0 17px;
    color:var(--csm-green);
    font-size:11px;
    font-weight:800;
    letter-spacing:.07em;
}
.aip-dashboard-card h2{
    margin:0;
    color:var(--csm-ink);
    font-size:25px;
    line-height:1.15;
}
.aip-dashboard-card p{
    color:var(--csm-muted);
    font-size:14px;
}
.aip-dashboard-profile__content{
    display:grid;
    grid-template-columns:78px 1fr;
    gap:18px;
    align-items:center;
    margin:8px 0 24px;
}
.aip-dashboard-profile__seal{
    width:74px;height:74px;
    display:grid;place-items:center;
    border-radius:50%;
    background:linear-gradient(145deg,#7c2e2e,#a84837);
    color:#fff;
    font-size:35px;
}
.aip-dashboard-score{color:var(--csm-green)}
.aip-dashboard-recipe__params{
    display:grid;
    gap:9px;
    margin:18px 0 28px;
}
.aip-dashboard-recipe__params span{
    display:flex;
    align-items:center;
    gap:9px;
    color:#292722;
    font-size:14px;
}
.aip-dashboard-recipe__params i{
    width:22px;
    font-style:normal;
    text-align:center;
}

.aip-dashboard-primary,
.aip-dashboard-secondary{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 20px;
    box-sizing:border-box;
    border-radius:8px;
    font:inherit;
    font-size:13px;
    font-weight:700;
    text-decoration:none !important;
    cursor:pointer;
}
.aip-dashboard-primary{
    border:1px solid var(--csm-green);
    background:var(--csm-green);
    color:#fff !important;
}
.aip-dashboard-primary:hover{background:var(--csm-green-soft)}
.aip-dashboard-secondary{
    border:1px solid #5f756b;
    background:#fffdf9;
    color:#263a32 !important;
}
.aip-dashboard-secondary:hover{background:#f6f2eb}

.aip-dashboard-quick{
    padding:15px 18px 16px;
    border:1px solid var(--csm-line);
    border-radius:18px;
    background:#fffdf9;
}
.aip-dashboard-quick .aip-dashboard-kicker{margin-bottom:10px}
.aip-dashboard-quick__grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
}
.aip-dashboard-quick__item{
    min-height:68px;
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:12px;
    padding:10px 14px;
    border:0;
    border-radius:11px;
    background:#f7f3ed;
    color:var(--csm-ink);
    text-align:left;
    cursor:pointer;
}
.aip-dashboard-quick__icon{
    font-size:27px;
    text-align:center;
}
.aip-dashboard-quick__item strong{
    display:block;
    font-size:13px;
}
.aip-dashboard-quick__item small{
    display:block;
    margin-top:3px;
    color:var(--csm-muted);
    font-size:11px;
}
.aip-dashboard-quick__arrow{font-size:24px}

.aip-dashboard-content > .aip-premium-module,
.aip-dashboard-content > .aip-premium-profile,
.aip-dashboard-content > .aip-premium-knowledge{
    margin-top:38px;
}

.aip-dashboard-mobile-nav{
    display:none;
}

@media(max-width:1000px){
    .aip-dashboard-layout{
        width:min(100%,calc(100vw - 20px));
        grid-template-columns:190px minmax(0,1fr);
    }
    .aip-dashboard-topbar,
    .aip-dashboard-content{
        padding-left:24px;
        padding-right:24px;
    }
    .aip-dashboard-maincards{grid-template-columns:1fr}
    .aip-dashboard-quick__grid{grid-template-columns:1fr}
}

@media(max-width:760px){
    .aip-dashboard-layout{
        width:100%;
        margin:0;
        display:block;
        border-left:0;
        border-right:0;
        border-radius:0;
        overflow:visible;
        box-shadow:none;
    }
    .aip-dashboard-sidebar{display:none}
    .aip-dashboard-main{padding-bottom:82px}
    .aip-dashboard-topbar{
        min-height:auto;
        align-items:flex-start;
        padding:22px 18px 14px;
    }
    .aip-dashboard-greeting h1{font-size:25px}
    .aip-dashboard-greeting p{
        max-width:260px;
        font-size:12px;
        line-height:1.45;
    }
    .aip-dashboard-user{display:none}
    .aip-dashboard-content{
        padding:0 14px 32px;
    }
    .aip-dashboard-welcome{
        grid-template-columns:1fr;
        gap:12px;
        padding:20px;
    }
    .aip-dashboard-welcome__icon{width:46px;height:46px;font-size:24px}
    .aip-dashboard-welcome__actions{display:grid}
    .aip-dashboard-primary,
    .aip-dashboard-secondary{width:100%}
    .aip-dashboard-card{
        min-height:0;
        padding:20px;
    }
    .aip-dashboard-profile__content{
        grid-template-columns:62px 1fr;
    }
    .aip-dashboard-profile__seal{width:58px;height:58px;font-size:28px}
    .aip-dashboard-quick{padding:14px}
    .aip-dashboard-mobile-nav{
        position:fixed;
        z-index:9999;
        left:0;right:0;bottom:0;
        height:68px;
        display:grid;
        grid-template-columns:repeat(5,1fr);
        border-top:1px solid #ded6cc;
        background:rgba(255,253,249,.97);
        backdrop-filter:blur(12px);
        box-shadow:0 -8px 24px -20px rgba(0,0,0,.4);
    }
    .aip-dashboard-mobile-nav__item{
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        border:0;
        background:transparent;
        color:#766f67;
        font:inherit;
        cursor:pointer;
    }
    .aip-dashboard-mobile-nav__item > span{
        font-size:20px;
        line-height:1;
    }
    .aip-dashboard-mobile-nav__item small{
        font-size:9px;
        font-weight:700;
    }
    .aip-dashboard-mobile-nav__item.is-active{color:var(--csm-green)}
}


/* 0.8.8 — página dedicada /meu-cafe/ */
body.page-meu-cafe .aip-premium-area,
body.page-id-0 .aip-premium-area {
    margin-top: 0;
}


/* 0.8.10 — gateway /premium/ quando o usuário já está autenticado */
.aip-premium-gateway-ready{
    width:min(100% - 32px,680px);
    margin:48px auto 72px;
    padding:44px 38px;
    box-sizing:border-box;
    border:1px solid #e8e0d6;
    border-radius:24px;
    background:#f7f3ed;
    color:#171713;
    text-align:center;
    box-shadow:0 20px 55px -42px rgba(18,45,35,.45);
}
.aip-premium-gateway-ready__eyebrow{
    display:inline-block;
    margin-bottom:12px;
    color:#073b2d;
    font-size:10px;
    font-weight:800;
    letter-spacing:.13em;
}
.aip-premium-gateway-ready h2{
    margin:0 0 10px;
    color:#171713;
    font-size:2rem;
    line-height:1.15;
}
.aip-premium-gateway-ready p{
    margin:0 auto 24px;
    max-width:500px;
    color:#665f56;
    font-size:.95rem;
    line-height:1.55;
}
.aip-premium-gateway-ready__button{
    display:inline-flex;
    min-height:50px;
    align-items:center;
    justify-content:center;
    padding:0 24px;
    border-radius:10px;
    background:#073b2d;
    color:#fff !important;
    text-decoration:none !important;
    font-size:.92rem;
    font-weight:750;
}
.aip-premium-gateway-ready__button:hover{
    background:#174f3e;
}
@media(max-width:640px){
    .aip-premium-gateway-ready{
        width:calc(100% - 24px);
        margin:24px auto 48px;
        padding:32px 22px;
        border-radius:20px;
    }
    .aip-premium-gateway-ready__button{
        width:100%;
        box-sizing:border-box;
    }
}


/* 0.8.11 — L14: Dashboard é a Home; módulos completos abrem por navegação */
.aip-dashboard-content > [hidden] {
    display: none !important;
}

.aip-dashboard-layout {
    min-height: calc(100vh - 32px);
}

.aip-dashboard-sidebar {
    align-self: stretch;
}

@media (max-width: 900px) {
    .aip-dashboard-layout {
        min-height: auto;
    }
}


/* 0.8.12 — Conhecimento como grupo com subcategorias no menu lateral */
.aip-dashboard-nav-group{
    display:grid;
    gap:3px;
}

.aip-dashboard-nav__knowledge{
    grid-template-columns:34px 1fr auto;
}

.aip-dashboard-nav__chevron{
    color:#f2d39c;
    font-size:14px;
    transition:transform .18s ease;
}

.aip-dashboard-nav-group.is-open .aip-dashboard-nav__chevron{
    transform:rotate(180deg);
}

.aip-dashboard-knowledge-subnav{
    display:grid;
    gap:2px;
    margin:0 0 4px 43px;
    padding:3px 0 5px 10px;
    border-left:1px solid rgba(242,211,156,.24);
}

.aip-dashboard-knowledge-subnav[hidden]{
    display:none !important;
}

.aip-dashboard-knowledge-subnav__item{
    min-height:34px;
    display:grid;
    grid-template-columns:12px 1fr;
    align-items:center;
    gap:7px;
    padding:4px 8px;
    border:0;
    border-radius:7px;
    background:transparent;
    color:rgba(255,255,255,.72);
    text-align:left;
    font:inherit;
    font-size:12px;
    cursor:pointer;
}

.aip-dashboard-knowledge-subnav__item:hover,
.aip-dashboard-knowledge-subnav__item.is-active{
    background:rgba(255,255,255,.08);
    color:#fff;
}

.aip-dashboard-knowledge-subnav__item > span:first-child{
    color:#f2d39c;
    font-size:10px;
}

#aip-premium-knowledge > [hidden]{
    display:none !important;
}

#aip-premium-knowledge-equipment,
#aip-premium-knowledge-accessories,
#aip-premium-knowledge-coffees,
#aip-premium-knowledge-selected-products,
#aip-premium-knowledge-glossary{
    scroll-margin-top:28px;
}

@media(max-width:760px){
    .aip-dashboard-knowledge-subnav{
        display:none !important;
    }
}



/* 0.8.15 — Conhecimento > Métodos — UX responsiva final */
#aip-premium-knowledge-methods{
    scroll-margin-top:28px;
    padding:8px 0 30px;
}

.aip-premium-methods__header{
    margin-bottom:16px;
}

.aip-premium-methods__header h3{
    margin:4px 0 7px;
    font-size:1.8rem;
    line-height:1.1;
}

.aip-premium-methods__header p{
    margin:0 0 10px;
    color:var(--aip-premium-muted);
    line-height:1.5;
}

.aip-premium-methods__count{
    display:inline-block;
    padding:5px 10px;
    border-radius:999px;
    background:#eaf5ee;
    color:#174f3c;
    font-size:.76rem;
    font-weight:800;
}

/* Catálogo acima da ficha: evita dupla sidebar no desktop */
.aip-premium-method-workspace{
    display:block;
}

.aip-premium-method-catalog{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin:0 0 16px;
    padding:2px 1px 4px;
}

.aip-premium-method-card{
    width:100%;
    min-height:76px;
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 18px;
    align-items:center;
    gap:9px;
    padding:9px 10px;
    border:1px solid #e7ded4;
    border-radius:12px;
    background:#fffdfa;
    color:#1d2c25;
    text-align:left;
    cursor:pointer;
    transition:border-color .15s ease,background .15s ease,transform .15s ease;
}

.aip-premium-method-card:hover{
    border-color:#9ccab3;
    transform:translateY(-1px);
}

.aip-premium-method-card.is-active{
    border-color:#64b58e;
    background:#f0faf4;
    box-shadow:0 0 0 1px rgba(100,181,142,.16);
}

.aip-premium-method-card__figure{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#f6f1e8;
    color:#6c4f37;
}

.aip-premium-method-figure__svg{
    width:41px;
    height:41px;
}

.aip-premium-method-card__body{
    min-width:0;
}

.aip-premium-method-card__id{
    display:block;
    margin-bottom:2px;
    color:#8b7f73;
    font-size:.56rem;
    letter-spacing:.05em;
}

.aip-premium-method-card__body strong{
    display:block;
    color:#17251f;
    font-size:.84rem;
    line-height:1.18;
}

.aip-premium-method-card__body small{
    display:block;
    margin-top:3px;
    color:#756a61;
    font-size:.7rem;
    line-height:1.2;
}

.aip-premium-method-card__arrow{
    color:#174f3c;
    font-size:20px;
}

/* Ficha usa toda a largura disponível */
.aip-premium-method-details{
    min-width:0;
    width:100%;
}

.aip-premium-method-detail[hidden]{
    display:none !important;
}

.aip-premium-method-detail{
    width:100%;
    scroll-margin-top:20px;
}

.aip-premium-method-detail__crumb{
    margin:0 0 12px;
    color:#7a6f66;
    font-size:.78rem;
}

.aip-premium-method-detail__crumb span{
    padding:0 6px;
}

.aip-premium-method-detail__hero{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
    gap:14px;
    align-items:stretch;
}

.aip-premium-method-detail__identity{
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:18px;
    align-items:center;
    min-width:0;
    padding:18px;
    border:1px solid #e8ded4;
    border-radius:15px;
    background:#fff;
}

.aip-premium-method-detail__figure{
    min-height:150px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:linear-gradient(145deg,#f2ede5,#fbf8f3);
    color:#6b4b34;
}

.aip-premium-method-figure__svg--large{
    width:122px;
    height:122px;
}

.aip-premium-method-detail__identity h3{
    margin:3px 0 7px;
    color:#15231d;
    font-size:2.15rem;
    line-height:1;
}

.aip-premium-method-category{
    display:inline-flex;
    margin:0 0 10px;
    padding:4px 9px;
    border-radius:999px;
    background:#e8f5ed;
    color:#174f3c;
    font-size:.72rem;
    font-weight:800;
}

.aip-premium-method-detail__identity p{
    margin:0;
    color:#665d55;
    line-height:1.55;
    overflow-wrap:anywhere;
}

.aip-premium-method-clock{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:0;
    padding:18px;
    border:1px solid #e5ddd5;
    border-radius:15px;
    background:#fff;
}

.aip-premium-method-clock strong{
    font-size:1.08rem;
}

.aip-premium-method-clock small{
    color:#71675e;
    line-height:1.4;
}

.aip-premium-method-clock__range{
    margin:4px 0 1px;
    color:#174f3c;
    font-size:1rem;
    font-weight:800;
}

.aip-premium-method-clock b{
    padding:8px 0;
    border-top:1px solid #ece5de;
    border-bottom:1px solid #ece5de;
    font-size:2rem;
    text-align:center;
}

.aip-premium-method-clock button{
    min-height:44px;
    border:0;
    border-radius:8px;
    background:#073b2d;
    color:#fff;
    font-weight:800;
    cursor:pointer;
}

/* Segunda faixa: necessários + referência */
.aip-premium-method-detail__columns{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:14px;
    margin-top:14px;
}

.aip-premium-method-panel{
    min-width:0;
    padding:18px;
    border:1px solid #e8ded4;
    border-radius:14px;
    background:#fffdfa;
}

.aip-premium-method-panel h4{
    margin:0 0 14px;
    color:#17251f;
    font-size:1.08rem;
}

.aip-premium-method-needed ul{
    margin:0;
    padding-left:20px;
}

.aip-premium-method-needed li{
    margin:0 0 9px;
    color:#2f3934;
    line-height:1.45;
}

.aip-premium-method-reference{
    background:#f7fbf8;
}

.aip-premium-method-reference h4 span{
    color:#7b8a82;
    font-size:.75rem;
    font-weight:600;
}

.aip-premium-method-reference dl{
    margin:0;
}

.aip-premium-method-reference dl div{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(150px,.9fr);
    gap:15px;
    padding:9px 0;
    border-bottom:1px solid #e4ebe6;
}

.aip-premium-method-reference dl div:last-child{
    border-bottom:0;
}

.aip-premium-method-reference dt{
    color:#2d3933;
    font-weight:700;
}

.aip-premium-method-reference dd{
    margin:0;
    color:#0f5c42;
    font-weight:800;
    text-align:right;
    overflow-wrap:anywhere;
}

/* Terceira faixa: preparo ocupa a maior área */
.aip-premium-method-detail__lower{
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
}

.aip-premium-method-steps ol{
    list-style:none;
    margin:0;
    padding:0;
}

.aip-premium-method-steps li{
    display:grid;
    grid-template-columns:34px 42px minmax(0,1fr);
    gap:10px;
    align-items:center;
    padding:11px 0;
    border-bottom:1px solid #ece5de;
}

.aip-premium-method-steps li:last-child{
    border-bottom:0;
}

.aip-premium-method-step__number{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#0a4a38;
    color:#fff;
    font-size:.8rem;
    font-weight:800;
}

.aip-premium-method-step__icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    color:#2d4138;
}

.aip-premium-method-step__icon svg{
    width:32px;
    height:32px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.aip-premium-method-step__text{
    min-width:0;
    color:#303a35;
    line-height:1.48;
    overflow-wrap:anywhere;
}

.aip-premium-method-tips{
    background:#eff9f3;
    border-color:#d1e9da;
}

.aip-premium-method-tips li{
    list-style:none;
    margin:0 0 10px;
    color:#19724a;
}

.aip-premium-method-tips li span{
    color:#2e3934;
}

.aip-premium-method-adjust{
    margin-top:12px;
    padding:17px;
    border:1px solid #e1d8fb;
    border-radius:14px;
    background:#f5f1ff;
}

.aip-premium-method-adjust h4{
    margin:0 0 7px;
    color:#3f267f;
}

.aip-premium-method-adjust p{
    margin:0 0 12px;
    color:#584c75;
    font-size:.85rem;
    line-height:1.45;
}

.aip-premium-method-adjust button{
    width:100%;
    min-height:42px;
    border:0;
    border-radius:8px;
    background:#5630b8;
    color:#fff;
    font-weight:800;
}

.aip-premium-method-note{
    margin-top:12px;
    padding:13px;
    border:1px solid #f0dfae;
    border-radius:12px;
    background:#fff8e8;
}

.aip-premium-method-note p{
    margin:4px 0 0;
    font-size:.82rem;
    line-height:1.45;
}

.aip-premium-method-footer-note{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:14px;
    padding:12px 14px;
    border:1px solid #f1dfb3;
    border-radius:11px;
    background:#fff8e8;
    color:#695126;
    font-size:.78rem;
}

.aip-premium-method-footer-note strong{
    color:#8a5d11;
}

/* Tablet: cards de métodos em 3 colunas e conteúdo empilhado gradualmente */
@media(max-width:1100px){
    .aip-premium-method-catalog{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .aip-premium-method-detail__hero{
        grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);
    }

    .aip-premium-method-detail__identity{
        grid-template-columns:120px minmax(0,1fr);
    }

    .aip-premium-method-figure__svg--large{
        width:98px;
        height:98px;
    }
}

/* Tablet estreito / mobile landscape */
@media(max-width:900px){
    .aip-premium-method-catalog{
        display:flex;
        gap:9px;
        overflow-x:auto;
        overscroll-behavior-x:contain;
        scroll-snap-type:x proximity;
        padding:2px 2px 8px;
        margin-bottom:14px;
        scrollbar-width:thin;
    }

    .aip-premium-method-card{
        flex:0 0 220px;
        scroll-snap-align:start;
    }

    .aip-premium-method-detail__hero,
    .aip-premium-method-detail__columns,
    .aip-premium-method-detail__lower{
        grid-template-columns:1fr;
    }

    .aip-premium-method-detail__identity{
        grid-template-columns:110px minmax(0,1fr);
    }

    .aip-premium-method-reference dl div{
        grid-template-columns:1fr auto;
    }

    .aip-premium-method-clock{
        order:2;
    }
}

/* Mobile */
@media(max-width:620px){
    #aip-premium-knowledge-methods{
        padding-bottom:82px;
    }

    .aip-premium-methods__header h3{
        font-size:1.55rem;
    }

    .aip-premium-method-catalog{
        margin-left:-2px;
        margin-right:-2px;
    }

    .aip-premium-method-card{
        flex-basis:188px;
        min-height:68px;
        grid-template-columns:44px minmax(0,1fr) 14px;
        gap:8px;
        padding:8px;
    }

    .aip-premium-method-card__figure{
        width:42px;
        height:42px;
    }

    .aip-premium-method-figure__svg{
        width:35px;
        height:35px;
    }

    .aip-premium-method-card__body strong{
        font-size:.8rem;
    }

    .aip-premium-method-card__body small{
        font-size:.66rem;
    }

    .aip-premium-method-detail__crumb{
        font-size:.7rem;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .aip-premium-method-detail__identity{
        grid-template-columns:78px minmax(0,1fr);
        gap:12px;
        padding:14px;
    }

    .aip-premium-method-detail__figure{
        min-height:78px;
    }

    .aip-premium-method-figure__svg--large{
        width:66px;
        height:66px;
    }

    .aip-premium-method-detail__identity h3{
        font-size:1.55rem;
    }

    .aip-premium-method-category{
        font-size:.66rem;
    }

    .aip-premium-method-detail__identity p{
        font-size:.86rem;
    }

    .aip-premium-method-clock,
    .aip-premium-method-panel{
        padding:14px;
    }

    .aip-premium-method-clock b{
        font-size:1.8rem;
    }

    .aip-premium-method-reference dl div{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:10px;
    }

    .aip-premium-method-reference dt,
    .aip-premium-method-reference dd{
        font-size:.82rem;
    }

    .aip-premium-method-steps li{
        grid-template-columns:28px 34px minmax(0,1fr);
        gap:8px;
        align-items:start;
        padding:10px 0;
    }

    .aip-premium-method-step__number{
        width:26px;
        height:26px;
        font-size:.72rem;
    }

    .aip-premium-method-step__icon{
        width:32px;
        height:32px;
    }

    .aip-premium-method-step__icon svg{
        width:28px;
        height:28px;
    }

    .aip-premium-method-step__text{
        font-size:.86rem;
        line-height:1.42;
    }

    .aip-premium-method-footer-note{
        align-items:flex-start;
        flex-direction:column;
        gap:4px;
    }
}


/* 0.8.16 — Menu mobile completo com submenu de Conhecimento */
.aip-dashboard-mobile-more,
.aip-dashboard-mobile-more-backdrop{
    display:none;
}

@media(max-width:760px){
    html.aip-mobile-more-open,
    html.aip-mobile-more-open body{
        overflow:hidden;
    }

    .aip-dashboard-mobile-more-backdrop{
        position:fixed;
        z-index:9997;
        inset:0;
        display:block;
        background:rgba(8,27,20,.44);
        backdrop-filter:blur(2px);
    }

    .aip-dashboard-mobile-more-backdrop[hidden]{
        display:none !important;
    }

    .aip-dashboard-mobile-more{
        position:fixed;
        z-index:9998;
        left:12px;
        right:12px;
        bottom:80px;
        display:block;
        max-height:min(72vh,560px);
        overflow:auto;
        border:1px solid #ddd5cb;
        border-radius:20px;
        background:#fffdf9;
        box-shadow:0 22px 70px -24px rgba(15,42,31,.48);
    }

    .aip-dashboard-mobile-more[hidden]{
        display:none !important;
    }

    .aip-dashboard-mobile-more__header{
        position:sticky;
        top:0;
        z-index:2;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:16px;
        padding:17px 18px 14px;
        border-bottom:1px solid #ebe3d9;
        background:#fffdf9;
    }

    .aip-dashboard-mobile-more__header strong{
        display:block;
        color:#173b2f;
        font-size:1.05rem;
    }

    .aip-dashboard-mobile-more__header small{
        display:block;
        margin-top:2px;
        color:#84786d;
        font-size:.68rem;
    }

    .aip-dashboard-mobile-more__header button{
        width:34px;
        height:34px;
        display:grid;
        place-items:center;
        border:1px solid #ded5ca;
        border-radius:50%;
        background:#f8f4ee;
        color:#3f4c46;
        font-size:22px;
        cursor:pointer;
    }

    .aip-dashboard-mobile-more__body{
        display:grid;
        gap:6px;
        padding:12px;
    }

    .aip-dashboard-mobile-more__link,
    .aip-dashboard-mobile-knowledge__parent{
        width:100%;
        min-height:52px;
        display:grid;
        grid-template-columns:30px minmax(0,1fr) auto;
        align-items:center;
        gap:10px;
        padding:0 13px;
        border:0;
        border-radius:11px;
        background:#f8f4ee;
        color:#233a31 !important;
        text-decoration:none !important;
        text-align:left;
        font:inherit;
        font-size:.9rem;
        font-weight:700;
        cursor:pointer;
    }

    .aip-dashboard-mobile-more__link > span:first-child,
    .aip-dashboard-mobile-knowledge__parent > span:first-child{
        color:#0c5a42;
        font-size:18px;
        text-align:center;
    }

    .aip-dashboard-mobile-knowledge{
        display:grid;
        gap:5px;
    }

    .aip-dashboard-mobile-knowledge__chevron{
        transition:transform .18s ease;
    }

    .aip-dashboard-mobile-knowledge.is-open
    .aip-dashboard-mobile-knowledge__chevron{
        transform:rotate(180deg);
    }

    .aip-dashboard-mobile-knowledge__subnav{
        display:grid;
        gap:4px;
        padding:3px 0 3px 18px;
    }

    .aip-dashboard-mobile-knowledge__subnav[hidden]{
        display:none !important;
    }

    .aip-dashboard-mobile-knowledge__item{
        width:100%;
        min-height:44px;
        display:grid;
        grid-template-columns:14px minmax(0,1fr);
        align-items:center;
        gap:8px;
        padding:0 12px;
        border:1px solid #ece4da;
        border-radius:10px;
        background:#fff;
        color:#44534d;
        text-align:left;
        font:inherit;
        font-size:.84rem;
        cursor:pointer;
    }

    .aip-dashboard-mobile-knowledge__item > span:first-child{
        color:#d0a35f;
        font-size:12px;
    }

    .aip-dashboard-mobile-knowledge__item:hover,
    .aip-dashboard-mobile-knowledge__item.is-active{
        border-color:#91bea8;
        background:#eff8f3;
        color:#0d523d;
    }

    .aip-dashboard-mobile-nav__item[data-aip-mobile-more].is-active{
        color:var(--csm-green);
    }

    /* No mobile, o submenu equivalente é exibido no drawer Mais. */
    .aip-dashboard-knowledge-subnav{
        display:none !important;
    }
}

@media(max-width:420px){
    .aip-dashboard-mobile-more{
        left:8px;
        right:8px;
        bottom:76px;
        border-radius:17px;
    }

    .aip-dashboard-mobile-more__header{
        padding:15px 15px 12px;
    }

    .aip-dashboard-mobile-more__body{
        padding:10px;
    }

    .aip-dashboard-mobile-more__link,
    .aip-dashboard-mobile-knowledge__parent{
        min-height:50px;
        font-size:.86rem;
    }
}


/* =========================================================
 * 0.8.17 — Métodos: correção responsiva mobile
 * Escopo: somente fichas de Conhecimento > Métodos.
 * Mantém menu mobile, submenu de Conhecimento e ícones aprovados.
 * ========================================================= */

@media(max-width:760px){

    /* Garante que a área de Conhecimento use toda a largura útil */
    #aip-premium-knowledge,
    #aip-premium-knowledge-methods,
    .aip-premium-method-workspace,
    .aip-premium-method-details,
    .aip-premium-method-detail{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    #aip-premium-knowledge-methods{
        padding:8px 0 104px !important;
        overflow-x:hidden !important;
    }

    /* Catálogo de métodos vira faixa horizontal compacta */
    .aip-premium-method-catalog{
        display:flex !important;
        gap:10px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        padding:2px 2px 10px !important;
        margin:0 0 14px !important;
        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;
    }

    .aip-premium-method-card{
        flex:0 0 190px !important;
        min-width:190px !important;
        max-width:190px !important;
        min-height:68px !important;
        grid-template-columns:44px minmax(0,1fr) 14px !important;
        gap:8px !important;
        padding:8px !important;
        box-sizing:border-box !important;
        scroll-snap-align:start;
    }

    .aip-premium-method-card__figure{
        width:42px !important;
        height:42px !important;
    }

    .aip-premium-method-figure__svg{
        width:34px !important;
        height:34px !important;
    }

    .aip-premium-method-card__body,
    .aip-premium-method-card__body strong,
    .aip-premium-method-card__body small{
        min-width:0 !important;
        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    /* Toda a ficha vira uma coluna real */
    .aip-premium-method-detail__hero,
    .aip-premium-method-detail__columns,
    .aip-premium-method-detail__lower{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:12px !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    .aip-premium-method-detail__identity,
    .aip-premium-method-clock,
    .aip-premium-method-panel,
    .aip-premium-method-adjust,
    .aip-premium-method-note,
    .aip-premium-method-footer-note{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    /* Identidade do método: ícone pequeno + texto livre */
    .aip-premium-method-detail__identity{
        display:grid !important;
        grid-template-columns:76px minmax(0,1fr) !important;
        gap:12px !important;
        align-items:start !important;
        padding:14px !important;
    }

    .aip-premium-method-detail__figure{
        width:76px !important;
        min-width:76px !important;
        min-height:76px !important;
        height:76px !important;
    }

    .aip-premium-method-figure__svg--large{
        width:62px !important;
        height:62px !important;
    }

    .aip-premium-method-detail__identity > div:last-child{
        min-width:0 !important;
        width:100% !important;
    }

    .aip-premium-method-detail__identity h3{
        margin:2px 0 7px !important;
        font-size:1.62rem !important;
        line-height:1.08 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    .aip-premium-method-detail__identity p,
    .aip-premium-method-detail__identity span,
    .aip-premium-method-category{
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    .aip-premium-method-detail__identity p{
        font-size:.92rem !important;
        line-height:1.5 !important;
    }

    /* Timer/cronômetro */
    .aip-premium-method-clock{
        order:2;
        padding:14px !important;
    }

    .aip-premium-method-clock strong{
        font-size:1.05rem !important;
    }

    .aip-premium-method-clock__range{
        font-size:.94rem !important;
    }

    .aip-premium-method-clock b{
        font-size:1.9rem !important;
    }

    .aip-premium-method-clock button{
        width:100% !important;
        min-height:46px !important;
    }

    /* Você vai precisar */
    .aip-premium-method-needed{
        padding:15px !important;
    }

    .aip-premium-method-needed ul{
        padding-left:20px !important;
    }

    .aip-premium-method-needed li{
        margin-bottom:10px !important;
        font-size:.95rem !important;
        line-height:1.45 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    /* Referência rápida */
    .aip-premium-method-reference{
        padding:15px !important;
    }

    .aip-premium-method-reference dl div{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:10px !important;
        align-items:start !important;
    }

    .aip-premium-method-reference dt,
    .aip-premium-method-reference dd{
        font-size:.86rem !important;
        line-height:1.4 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    .aip-premium-method-reference dd{
        text-align:right !important;
    }

    /* Como preparar */
    .aip-premium-method-steps{
        padding:15px !important;
    }

    .aip-premium-method-steps ol{
        width:100% !important;
    }

    .aip-premium-method-steps li{
        display:grid !important;
        grid-template-columns:30px 38px minmax(0,1fr) !important;
        gap:9px !important;
        align-items:start !important;
        padding:11px 0 !important;
        width:100% !important;
        box-sizing:border-box !important;
    }

    .aip-premium-method-step__number{
        width:28px !important;
        height:28px !important;
        font-size:.75rem !important;
    }

    .aip-premium-method-step__icon{
        width:34px !important;
        height:34px !important;
    }

    .aip-premium-method-step__icon svg{
        width:30px !important;
        height:30px !important;
    }

    .aip-premium-method-step__text{
        min-width:0 !important;
        width:100% !important;
        font-size:.92rem !important;
        line-height:1.46 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    /* Dicas */
    .aip-premium-method-tips{
        padding:15px !important;
    }

    .aip-premium-method-tips ul{
        margin:0 !important;
        padding:0 !important;
    }

    .aip-premium-method-tips li{
        display:flex !important;
        align-items:flex-start !important;
        gap:7px !important;
        margin:0 0 12px !important;
        font-size:.92rem !important;
        line-height:1.46 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
        hyphens:none !important;
    }

    /* Ajustar Meu Preparo */
    .aip-premium-method-adjust{
        margin-top:0 !important;
        padding:15px !important;
    }

    .aip-premium-method-adjust h4{
        font-size:1.2rem !important;
        line-height:1.25 !important;
    }

    .aip-premium-method-adjust p{
        font-size:.9rem !important;
        line-height:1.48 !important;
    }

    .aip-premium-method-adjust button{
        width:100% !important;
        min-height:46px !important;
        white-space:normal !important;
    }

    /* Nota final */
    .aip-premium-method-footer-note{
        display:block !important;
        margin-top:12px !important;
        padding:13px 14px !important;
        font-size:.82rem !important;
        line-height:1.45 !important;
    }

    .aip-premium-method-footer-note strong{
        display:block !important;
        margin-bottom:4px !important;
    }

    /* Breadcrumb sem forçar largura */
    .aip-premium-method-detail__crumb{
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
        font-size:.74rem !important;
    }

    /* Evita que o conteúdo fique sob a navegação fixa */
    .aip-dashboard-main{
        padding-bottom:94px !important;
    }
}

@media(max-width:420px){
    .aip-premium-method-card{
        flex-basis:176px !important;
        min-width:176px !important;
        max-width:176px !important;
    }

    .aip-premium-method-detail__identity{
        grid-template-columns:68px minmax(0,1fr) !important;
        gap:10px !important;
        padding:13px !important;
    }

    .aip-premium-method-detail__figure{
        width:68px !important;
        min-width:68px !important;
        height:68px !important;
        min-height:68px !important;
    }

    .aip-premium-method-figure__svg--large{
        width:56px !important;
        height:56px !important;
    }

    .aip-premium-method-detail__identity h3{
        font-size:1.48rem !important;
    }

    .aip-premium-method-step__text,
    .aip-premium-method-needed li,
    .aip-premium-method-tips li{
        font-size:.88rem !important;
    }
}


/* =========================================================
 * 0.8.18 — Dashboard: Continue de onde parou + Para você
 * ========================================================= */
.aip-dashboard-context-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.aip-dashboard-context-card{
    min-height:180px;
    padding:20px 22px;
    box-sizing:border-box;
    border:1px solid var(--csm-line);
    border-radius:18px;
    background:#fffdf9;
}

.aip-dashboard-context-card[hidden]{
    display:none !important;
}

.aip-dashboard-context-card__body{
    display:grid;
    grid-template-columns:68px minmax(0,1fr);
    gap:16px;
    align-items:center;
}

.aip-dashboard-context-card__visual{
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#f3ede5;
    color:#704c35;
    font-size:27px;
}

.aip-dashboard-context-card--discovery .aip-dashboard-context-card__visual{
    background:#eaf5ee;
    color:#0c5a42;
}

.aip-dashboard-context-card__eyebrow{
    display:block;
    margin-bottom:4px;
    color:#756d64;
    font-size:.74rem;
}

.aip-dashboard-context-card h3{
    margin:0 0 6px;
    color:var(--csm-ink);
    font-size:1.35rem;
    line-height:1.15;
}

.aip-dashboard-context-card p{
    margin:0 0 14px;
    color:var(--csm-muted);
    font-size:.88rem;
    line-height:1.5;
}

@media(max-width:900px){
    .aip-dashboard-context-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:620px){
    .aip-dashboard-context-card{
        min-height:0;
        padding:18px;
    }

    .aip-dashboard-context-card__body{
        grid-template-columns:52px minmax(0,1fr);
        gap:12px;
        align-items:start;
    }

    .aip-dashboard-context-card__visual{
        width:48px;
        height:48px;
        font-size:22px;
    }

    .aip-dashboard-context-card h3{
        font-size:1.15rem;
    }

    .aip-dashboard-context-card p{
        font-size:.84rem;
    }

    .aip-dashboard-context-card .aip-dashboard-secondary{
        width:100%;
    }
}


/* =========================================================
 * 0.8.19 — Dashboard: Como funciona
 * ========================================================= */

.aip-dashboard-help{
    border:0;
    background:transparent;
    cursor:pointer;
    font:inherit;
}

.aip-dashboard-how-backdrop,
.aip-dashboard-how-modal{
    display:none;
}

.aip-dashboard-how-backdrop:not([hidden]){
    position:fixed;
    z-index:10020;
    inset:0;
    display:block;
    background:rgba(7,33,25,.48);
    backdrop-filter:blur(3px);
}

.aip-dashboard-how-modal:not([hidden]){
    position:fixed;
    z-index:10021;
    left:50%;
    top:50%;
    width:min(760px,calc(100vw - 40px));
    max-height:min(86vh,760px);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    transform:translate(-50%,-50%);
    border:1px solid #dfd6cb;
    border-radius:22px;
    background:#fffdf9;
    box-shadow:0 30px 90px -28px rgba(7,42,31,.55);
    color:#171713;
}

html.aip-how-open,
html.aip-how-open body{
    overflow:hidden;
}

.aip-dashboard-how-modal__header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding:24px 26px 18px;
    border-bottom:1px solid #ece4da;
    background:linear-gradient(135deg,#fbf4e9,#fffdf9 70%);
}

.aip-dashboard-how-modal__eyebrow{
    display:block;
    margin-bottom:7px;
    color:#0a553f;
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.12em;
}

.aip-dashboard-how-modal__header h2{
    margin:0 0 7px;
    color:#15251e;
    font-size:1.8rem;
    line-height:1.15;
}

.aip-dashboard-how-modal__header p{
    max-width:610px;
    margin:0;
    color:#665d55;
    font-size:.9rem;
    line-height:1.52;
}

.aip-dashboard-how-modal__close{
    flex:0 0 auto;
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:1px solid #ded5ca;
    border-radius:50%;
    background:#fff;
    color:#32443c;
    font-size:24px;
    cursor:pointer;
}

.aip-dashboard-how-modal__steps{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 14px;
    padding:20px 26px;
    overflow:auto;
}

.aip-dashboard-how-step{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    align-items:start;
    padding:13px;
    border:1px solid #ebe3d9;
    border-radius:12px;
    background:#fff;
}

.aip-dashboard-how-step__number{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#073b2d;
    color:#fff;
    font-size:.76rem;
    font-weight:800;
}

.aip-dashboard-how-step h3{
    margin:1px 0 4px;
    color:#1b2a23;
    font-size:.95rem;
}

.aip-dashboard-how-step p{
    margin:0;
    color:#6c6259;
    font-size:.82rem;
    line-height:1.45;
}

.aip-dashboard-how-modal__footer{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:4px 20px;
    align-items:center;
    padding:16px 26px 20px;
    border-top:1px solid #ece4da;
    background:#f7f3ed;
}

.aip-dashboard-how-modal__footer strong{
    color:#173b2f;
    font-size:.86rem;
}

.aip-dashboard-how-modal__footer span{
    color:#746a61;
    font-size:.8rem;
}

.aip-dashboard-how-modal__footer .aip-dashboard-primary{
    grid-column:2;
    grid-row:1 / span 2;
    width:auto;
    min-width:108px;
}

@media(max-width:760px){
    .aip-dashboard-how-modal:not([hidden]){
        top:auto;
        left:10px;
        right:10px;
        bottom:78px;
        width:auto;
        max-height:calc(100vh - 110px);
        transform:none;
        border-radius:20px;
    }

    .aip-dashboard-how-modal__header{
        padding:19px 18px 15px;
    }

    .aip-dashboard-how-modal__header h2{
        font-size:1.45rem;
    }

    .aip-dashboard-how-modal__header p{
        font-size:.84rem;
    }

    .aip-dashboard-how-modal__steps{
        grid-template-columns:1fr;
        gap:8px;
        padding:14px 16px;
    }

    .aip-dashboard-how-step{
        padding:11px 12px;
    }

    .aip-dashboard-how-modal__footer{
        grid-template-columns:1fr;
        gap:6px;
        padding:14px 16px 16px;
    }

    .aip-dashboard-how-modal__footer .aip-dashboard-primary{
        grid-column:1;
        grid-row:auto;
        width:100%;
        margin-top:7px;
    }
}


/* =========================================================
 * L14.4 — Meu Café Sob Medida final (Wireframe V1.2)
 * Somente apresentação. Dados continuam vindos de L9/L11.
 * ======================================================= */
.aip-mycoffee { background:#fbf8f3; }
.aip-mycoffee__title h2 { margin:0 0 18px; font-size:30px; color:#132b22; }
.aip-mycoffee-active {
    display:flex; align-items:center; gap:14px; padding:14px 16px; margin-bottom:14px;
    border:1px solid #e4ddd4; border-radius:12px; background:#fff;
}
.aip-mycoffee-active__mark,.aip-mycoffee-profile-icon {
    display:grid; place-items:center; flex:0 0 auto; border-radius:50%;
    background:#8f2f2f; color:#fff; font-size:28px;
}
.aip-mycoffee-active__mark { width:44px; height:44px; }
.aip-mycoffee-profile-icon { width:82px; height:82px; font-size:44px; }
.aip-mycoffee-active__copy { display:flex; flex-direction:column; min-width:0; }
.aip-mycoffee-active__copy span,.aip-mycoffee-active__copy small { color:#6f655d; font-size:12px; }
.aip-mycoffee-active__copy strong { font-size:18px; }
.aip-mycoffee-active .aip-premium-profile-secondary { margin-left:auto; }

.aip-mycoffee-card {
    margin-top:14px; padding:18px; border:1px solid #e4ddd4; border-radius:12px; background:#fff;
}
.aip-mycoffee-card h3 { margin:0 0 14px; color:#173b2d; font-size:17px; }
.aip-mycoffee-card h4 { margin:0 0 7px; font-size:25px; color:#171717; }
.aip-mycoffee-sensory__main { display:flex; align-items:center; gap:18px; }
.aip-mycoffee-sensory__copy p { max-width:620px; margin:0; color:#4f4944; }

.aip-mycoffee-preferences {
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:16px;
    border:1px solid #eee6de; border-radius:10px; overflow:hidden;
}
.aip-mycoffee-pref { padding:13px 15px; border-right:1px solid #eee6de; }
.aip-mycoffee-pref:last-child { border-right:0; }
.aip-mycoffee-pref span { display:block; margin-bottom:5px; color:#776a61; font-size:11px; }
.aip-mycoffee-pref strong { display:block; font-size:14px; }
.aip-mycoffee-dots { display:flex; gap:4px; margin-top:7px; }
.aip-mycoffee-dots i { width:8px; height:8px; border-radius:50%; background:#d7d0c8; }
.aip-mycoffee-dots i:nth-child(-n+3) { background:#315f4d; }

.aip-mycoffee-ideal ul { display:grid; gap:8px; padding:0; margin:12px 0 16px; list-style:none; }
.aip-mycoffee-ideal li { color:#403a35; }
.aip-mycoffee-ideal li > span { color:#16643f; font-weight:800; margin-right:8px; }
.aip-mycoffee-helper { margin:6px 0 10px; color:#6d625a; font-size:13px; }

.aip-mycoffee-method__top { display:flex; align-items:center; gap:15px; }
.aip-mycoffee-method__icon {
    width:88px; height:88px; display:grid; place-items:center; border-radius:12px;
    background:#f1ebe4; font-size:38px;
}
.aip-mycoffee-method__copy { position:relative; flex:1; }
.aip-mycoffee-score {
    position:absolute; right:0; top:0; display:grid; place-items:center;
    width:52px; height:52px; border-radius:50%; background:#185a3b; color:#fff;
}
.aip-mycoffee-alts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:8px 0 14px; }
.aip-mycoffee-alts > div { padding:10px 12px; border-radius:9px; background:#f8f4ef; }
.aip-mycoffee-alts strong,.aip-mycoffee-alts span { display:block; }
.aip-mycoffee-alts span { margin-top:3px; color:#315f4d; font-size:12px; font-weight:700; }

.aip-mycoffee-regions__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.aip-mycoffee-regions article { overflow:hidden; border:1px solid #e9e1d8; border-radius:10px; background:#fbfaf8; }
.aip-mycoffee-region__visual {
    height:72px; display:grid; place-items:center; background:linear-gradient(135deg,#dce9df,#efe7d6);
    color:#315f4d; font-size:30px;
}
.aip-mycoffee-regions article strong { display:block; padding:10px 10px 0; }
.aip-mycoffee-regions article p { padding:0 10px 10px; margin:4px 0 0; font-size:12px; }

.aip-mycoffee-pairings__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.aip-mycoffee-pairings__grid > div { padding:12px; text-align:center; border-radius:10px; background:#f8f4ef; }
.aip-mycoffee-pairings__grid span { display:block; margin-bottom:6px; font-size:24px; }

.aip-mycoffee-recipe h4 { font-size:26px; }
.aip-mycoffee-recipe__params { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:12px 0; }
.aip-mycoffee-recipe__params > div { padding:10px 12px; border-radius:9px; background:#f8f4ef; }
.aip-mycoffee-recipe__params span { display:block; color:#776a61; font-size:11px; }
.aip-mycoffee-recipe__params strong { display:block; margin-top:3px; }
.aip-mycoffee-prepare {
    width:100%; min-height:42px; border:0; border-radius:8px; background:#0c5539; color:#fff;
    font-weight:800; cursor:pointer;
}
.aip-mycoffee-outline {
    min-height:38px; padding:8px 14px; border:1px solid #7b9387; border-radius:8px;
    background:#fff; color:#173b2d; font-weight:700; cursor:pointer;
}
.aip-mycoffee-history { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.aip-mycoffee-history h3 { margin-bottom:5px; }
.aip-mycoffee-history p { margin:0; color:#6d625a; font-size:13px; }

@media (min-width: 900px) {
    .aip-mycoffee-ideal,.aip-mycoffee-method,.aip-mycoffee-regions { }
}

@media (max-width: 760px) {
    .aip-mycoffee { padding:12px; }
    .aip-mycoffee__title h2 { font-size:25px; }
    .aip-mycoffee-active { align-items:flex-start; flex-wrap:wrap; }
    .aip-mycoffee-active .aip-premium-profile-secondary { margin-left:0; width:auto; }
    .aip-mycoffee-card { padding:14px; }
    .aip-mycoffee-sensory__main { align-items:flex-start; }
    .aip-mycoffee-profile-icon { width:62px; height:62px; font-size:32px; }
    .aip-mycoffee-card h4 { font-size:21px; }
    .aip-mycoffee-preferences { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .aip-mycoffee-pref { border-bottom:1px solid #eee6de; }
    .aip-mycoffee-pref:nth-child(2n) { border-right:0; }
    .aip-mycoffee-pref:nth-last-child(-n+2) { border-bottom:0; }
    .aip-mycoffee-method__icon { width:72px; height:72px; }
    .aip-mycoffee-score { width:44px; height:44px; font-size:12px; }
    .aip-mycoffee-regions__grid { grid-template-columns:repeat(2,minmax(0,1fr)); overflow-x:auto; }
    .aip-mycoffee-regions article { min-width:150px; }
    .aip-mycoffee-pairings__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .aip-mycoffee-recipe__params { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .aip-mycoffee-history { align-items:stretch; flex-direction:column; }
    .aip-mycoffee-history .aip-mycoffee-outline { width:100%; }
}


/* =========================================================
 * 0.8.21 — Regiões: mapas + Knowledge Hub
 * ======================================================= */
.aip-region-map{
    width:100%;
    height:auto;
    display:block;
    color:#74512f;
}
.aip-region-map__base{
    fill:#EFEBE4;
    stroke:#b69c79;
    stroke-width:2;
}
.aip-region-map__highlight{
    fill:#6E4F32;
    opacity:.92;
}
.aip-region-map__pin{
    fill:#153f31;
    stroke:#fff;
    stroke-width:1.5;
}
.aip-region-map--compact{ width:72px; }
.aip-region-map--profile{ width:92px; margin:auto; }

.aip-mycoffee-region__visual{
    height:92px;
    padding:8px;
    box-sizing:border-box;
    background:#f5efe4;
}
.aip-mycoffee-region__cta{
    width:calc(100% - 20px);
    min-height:32px;
    margin:0 10px 10px;
    border:1px solid #8b9d93;
    border-radius:7px;
    background:#fff;
    color:#173b2d;
    font-size:11px;
    font-weight:700;
    cursor:pointer;
}

.aip-premium-knowledge-regions{ padding:8px 0 28px; scroll-margin-top:24px; }
.aip-premium-regions__header{ margin-bottom:16px; }
.aip-premium-regions__header h3{ margin:4px 0 7px; font-size:1.75rem; }
.aip-premium-regions__header p{ margin:0 0 10px; color:#6f655d; }

.aip-premium-region-catalog{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.aip-premium-region-catalog[hidden]{ display:none !important; }
.aip-premium-region-card{
    min-height:104px;
    display:grid;
    grid-template-columns:76px minmax(0,1fr) 16px;
    gap:10px;
    align-items:center;
    padding:10px;
    border:1px solid #e5ddd4;
    border-radius:12px;
    background:#fffdfa;
    text-align:left;
    color:#1d2c25;
    cursor:pointer;
}
.aip-premium-region-card:hover{
    border-color:#9ccab3;
    background:#f6fbf8;
}
.aip-premium-region-card__map{
    width:72px;
    min-height:72px;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:#f4eee3;
    padding:5px;
    box-sizing:border-box;
}
.aip-premium-region-card__body small,
.aip-premium-region-card__body strong,
.aip-premium-region-card__body span{
    display:block;
}
.aip-premium-region-card__body small{
    color:#8a7d71;
    font-size:.62rem;
}
.aip-premium-region-card__body strong{
    margin:3px 0;
    font-size:.92rem;
}
.aip-premium-region-card__body span{
    color:#6c6259;
    font-size:.72rem;
}

.aip-premium-region-detail[hidden]{ display:none !important; }
.aip-premium-region-detail{ scroll-margin-top:22px; }
.aip-premium-region-detail__hero{
    display:grid;
    grid-template-columns:190px minmax(0,1fr);
    gap:20px;
    align-items:center;
    padding:20px;
    border:1px solid #e5ddd4;
    border-radius:15px;
    background:#fff;
}
.aip-premium-region-detail__map{
    min-height:175px;
    display:grid;
    place-items:center;
    padding:15px;
    border-radius:12px;
    background:#f4eee3;
}
.aip-premium-region-detail__hero h3{
    margin:3px 0 7px;
    font-size:2rem;
}
.aip-premium-region-detail__hero p{
    margin:10px 0 0;
    color:#665d55;
    line-height:1.55;
}
.aip-premium-region-detail__grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:12px 0;
}
.aip-premium-region-facts{
    margin:0;
}
.aip-premium-region-facts div{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:8px 0;
    border-bottom:1px solid #ece5dd;
}
.aip-premium-region-facts div:last-child{ border-bottom:0; }
.aip-premium-region-facts dd{ margin:0; font-weight:800; color:#0d583f; }
.aip-premium-region-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.aip-premium-region-tags span{
    display:inline-flex;
    padding:6px 9px;
    border-radius:999px;
    background:#eef6f1;
    color:#234d3d;
    font-size:.78rem;
}
.aip-premium-region-why p{
    margin:0;
    line-height:1.55;
    color:#4f4944;
}

@media(max-width:900px){
    .aip-premium-region-catalog{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:760px){
    .aip-premium-region-catalog{
        grid-template-columns:1fr;
    }
    .aip-premium-region-card{
        grid-template-columns:68px minmax(0,1fr) 14px;
    }
    .aip-premium-region-detail__hero{
        grid-template-columns:1fr;
        padding:14px;
    }
    .aip-premium-region-detail__map{
        min-height:150px;
    }
    .aip-premium-region-detail__hero h3{
        font-size:1.55rem;
    }
    .aip-premium-region-detail__grid{
        grid-template-columns:1fr;
    }
    .aip-mycoffee-regions__grid{
        grid-template-columns:repeat(2,minmax(155px,1fr));
        overflow-x:auto;
        padding-bottom:5px;
    }
}


/* =========================================================
 * 0.8.25 — Ilustrações autorais das regiões + badges IG
 * ======================================================= */
.aip-region-art{
    width:100%;
    height:auto;
    display:block;
}
.aip-region-art--compact{ width:78px; }
.aip-region-art--profile{ width:96px; margin:auto; }

.aip-region-art__line,
.aip-region-art__stem,
.aip-region-art__beanline,
.aip-region-art__mist{
    fill:none;
    stroke:#8d6a46;
    stroke-width:2.2;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.aip-region-art__mist{
    stroke:#c8b89f;
    stroke-width:3;
}
.aip-region-art__soft{
    fill:#d9cbb5;
    stroke:none;
}
.aip-region-art__leaf{
    fill:#315f48;
    stroke:none;
}
.aip-region-art__leaf--alt{
    fill:#7d9a75;
}
.aip-region-art__coffee{
    fill:#6E4F32;
    stroke:none;
}
.aip-region-art__coffee--alt{
    fill:#9a6840;
}
.aip-region-art__beanline{
    stroke:#efe4d5;
    stroke-width:1.6;
}
.aip-region-art__sun{
    fill:#d6a257;
}
.aip-region-art__trunk{
    fill:none;
    stroke:#6E4F32;
    stroke-width:5;
    stroke-linecap:round;
}
.aip-region-art__canopy{
    fill:#4d6234;
}
.aip-region-art__label{
    fill:#6E4F32;
    font-size:10px;
    font-weight:700;
    font-family:inherit;
}
.aip-region-ig-badge{
    display:inline-flex !important;
    width:max-content;
    max-width:100%;
    margin-top:5px;
    padding:4px 7px;
    border-radius:999px;
    background:#eef6f1;
    color:#24513f !important;
    font-size:.62rem !important;
    font-style:normal;
    font-weight:800;
    line-height:1.2;
}
.aip-region-ig-badge--detail{
    margin:8px 0 0;
    font-size:.72rem !important;
}
.aip-premium-region-card__map{
    background:#f7f1e7;
}
.aip-premium-region-detail__map{
    background:#f7f1e7;
}


/* =========================================================
 * 0.8.27 — catálogo final de Regiões (JSON homologado)
 * ======================================================= */
.aip-region-art{
    filter: drop-shadow(0 2px 2px rgba(74,53,37,.08));
}
.aip-premium-region-card__map,
.aip-premium-region-detail__map,
.aip-mycoffee-region__visual{
    background:#EFEBE4;
}
.aip-region-ig-badge{
    display:inline-flex !important;
    align-items:center;
    width:max-content;
    max-width:100%;
    margin-top:6px;
    padding:4px 8px;
    border:1px solid rgba(74,53,37,.26);
    border-radius:999px;
    background:transparent;
    color:#4A3525 !important;
    font-size:.62rem !important;
    font-style:normal;
    font-weight:700;
    line-height:1.2;
}
.aip-region-ig-badge--detail{
    margin-top:8px;
    font-size:.72rem !important;
}


/* =========================================================
 * 0.8.28 — Regiões com assets editoriais premium
 * ======================================================= */
.aip-region-editorial{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    border-radius:10px;
}
.aip-region-editorial--compact{
    width:100%;
    height:100%;
    min-height:0;
    aspect-ratio:auto;
    object-fit:cover;
}
.aip-region-editorial--profile{
    width:100%;
    height:100%;
    aspect-ratio:auto;
    object-fit:cover;
}
.aip-premium-region-card__map{
    overflow:hidden;
    padding:0 !important;
    background:#EFEBE4;
    border-radius:10px;
}
.aip-premium-region-detail__map{
    overflow:hidden;
    padding:0 !important;
    background:#EFEBE4;
    border-radius:12px;
}
.aip-mycoffee-region__visual{
    overflow:hidden;
    padding:0 !important;
    background:#EFEBE4;
    border-radius:10px;
}


/* =========================================================
 * 0.8.29 — ajuste final: badges DO/IP menores
 * Nenhuma outra alteração visual ou funcional.
 * ======================================================= */
.aip-region-ig-badge{
    font-size:.52rem !important;
    line-height:1.05 !important;
    padding:3px 6px !important;
    margin-top:4px !important;
    font-weight:700 !important;
}
.aip-region-ig-badge--detail{
    font-size:.64rem !important;
    line-height:1.1 !important;
    padding:4px 7px !important;
}


/* 0.8.30 — ilustrações editoriais no catálogo de Métodos */
.aip-method-editorial{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:9px;
}
.aip-premium-method-card__icon{
    overflow:hidden;
    padding:0 !important;
    background:#EFEBE4;
}


/* =========================================================
 * 0.8.31 — mesma ilustração editorial na ficha do Método
 * Ícones instrucionais das etapas permanecem inalterados.
 * ======================================================= */
.aip-premium-method-detail .aip-method-editorial,
.aip-premium-method-hero .aip-method-editorial{
    display:block;
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    border-radius:10px;
}
.aip-premium-method-detail__icon:has(.aip-method-editorial),
.aip-premium-method-hero__icon:has(.aip-method-editorial){
    overflow:hidden;
    padding:0 !important;
    background:#EFEBE4;
}

/* AIP 0.8.32 — L14 Métodos: ilustrações editoriais aprovadas no passo a passo */
.aip-premium-method-step__icon--editorial{
  width:104px !important;
  height:78px !important;
  min-width:104px;
  border-radius:12px;
  overflow:hidden;
  background:#f5f0e8;
  display:block;
}
.aip-premium-method-step__art{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
@media (max-width: 720px){
  .aip-premium-method-step__icon--editorial{
    width:92px !important;
    height:70px !important;
    min-width:92px;
  }
}


/* =========================================================
 * 0.8.34 — correção estrutural da ficha individual de Métodos
 * Como preparar em largura total.
 * Dicas de ouro + Resultado abaixo, lado a lado no desktop.
 * Nenhum conteúdo, ilustração ou parâmetro L11 alterado.
 * ======================================================= */

/* A terceira faixa deixa de ser duas colunas. */
.aip-premium-method-detail__lower{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
    width:100% !important;
    min-width:0 !important;
}

/* Como preparar ocupa toda a largura. */
.aip-premium-method-steps{
    width:100% !important;
    min-width:0 !important;
}

/* Corrige a grade interna dos passos para comportar as artes editoriais de 104px. */
.aip-premium-method-steps li{
    display:grid !important;
    grid-template-columns:34px 104px minmax(0,1fr) !important;
    gap:14px !important;
    align-items:center !important;
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}

.aip-premium-method-step__icon--editorial{
    width:104px !important;
    height:78px !important;
    min-width:104px !important;
    margin:0 !important;
}

.aip-premium-method-step__text{
    min-width:0 !important;
    width:auto !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}

/* O segundo filho da faixa inferior contém Dicas + Resultado/Nota.
   Agora ele vira uma grade horizontal independente. */
.aip-premium-method-detail__lower > div{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
    align-items:start !important;
    width:100% !important;
    min-width:0 !important;
}

/* Se houver nota adicional, ela ocupa a largura disponível sem comprimir os cards. */
.aip-premium-method-detail__lower > div > .aip-premium-method-note{
    grid-column:1 / -1;
}

/* Resultado deixa de depender da margem lateral anterior. */
.aip-premium-method-detail__lower .aip-premium-method-adjust{
    margin-top:0 !important;
    min-width:0 !important;
}

/* Mobile: Dicas e Resultado empilhados; passos continuam legíveis. */
@media(max-width:760px){
    .aip-premium-method-detail__lower > div{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }

    .aip-premium-method-steps li{
        grid-template-columns:32px 92px minmax(0,1fr) !important;
        gap:10px !important;
        align-items:start !important;
    }

    .aip-premium-method-step__icon--editorial{
        width:92px !important;
        height:70px !important;
        min-width:92px !important;
    }
}

@media(max-width:480px){
    .aip-premium-method-steps li{
        grid-template-columns:30px 78px minmax(0,1fr) !important;
        gap:8px !important;
    }

    .aip-premium-method-step__icon--editorial{
        width:78px !important;
        height:60px !important;
        min-width:78px !important;
    }

    .aip-premium-method-step__text{
        font-size:.84rem !important;
        line-height:1.4 !important;
    }
}


/* =========================================================
 * AIP 0.8.35 — Métodos: miniaturas do Como preparar sem corte
 * Alteração exclusivamente visual. Conteúdo e dados preservados.
 * ======================================================= */
.aip-premium-method-step__icon--editorial{
    width:112px !important;
    height:84px !important;
    min-width:112px !important;
    padding:3px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    background:#f5f0e8 !important;
}

.aip-premium-method-step__art{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
    border-radius:9px !important;
}

.aip-premium-method-steps li{
    grid-template-columns:34px 112px minmax(0,1fr) !important;
}

@media(max-width:760px){
    .aip-premium-method-steps li{
        grid-template-columns:32px 100px minmax(0,1fr) !important;
    }
    .aip-premium-method-step__icon--editorial{
        width:100px !important;
        height:76px !important;
        min-width:100px !important;
    }
}

@media(max-width:480px){
    .aip-premium-method-steps li{
        grid-template-columns:30px 86px minmax(0,1fr) !important;
    }
    .aip-premium-method-step__icon--editorial{
        width:86px !important;
        height:66px !important;
        min-width:86px !important;
    }
}


/* =========================================================
 * AIP 0.8.36 — reconstrução das artes do Como preparar
 * Assets com margem interna + enquadramento integral.
 * ======================================================= */
.aip-premium-method-step__icon--editorial{
    width:132px !important;
    height:96px !important;
    min-width:132px !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#F7F1E7 !important;
    border-radius:10px !important;
}
.aip-premium-method-step__art{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    border-radius:10px !important;
}
.aip-premium-method-steps li{
    grid-template-columns:34px 132px minmax(0,1fr) !important;
    align-items:center !important;
    gap:14px !important;
}
@media(max-width:760px){
    .aip-premium-method-step__icon--editorial{
        width:112px !important;
        height:82px !important;
        min-width:112px !important;
    }
    .aip-premium-method-steps li{
        grid-template-columns:32px 112px minmax(0,1fr) !important;
        gap:10px !important;
    }
}
@media(max-width:480px){
    .aip-premium-method-step__icon--editorial{
        width:96px !important;
        height:72px !important;
        min-width:96px !important;
    }
    .aip-premium-method-steps li{
        grid-template-columns:30px 96px minmax(0,1fr) !important;
        gap:8px !important;
    }
}

/* =========================================================
 * AIP 0.8.39 — L14 Métodos: artes finais integradas
 * Cada arte já contém número, instrução e ilustração do passo.
 * Remove a composição antiga número + miniatura + texto duplicado.
 * ======================================================= */
.aip-premium-method-step-gallery{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    width:100% !important;
    margin-top:12px !important;
}
.aip-premium-method-step-card{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:1px solid #e7ddd0 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 1px 2px rgba(60,45,30,.04) !important;
}
.aip-premium-method-step-card .aip-premium-method-step__art{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-width:none !important;
    object-fit:contain !important;
    border-radius:0 !important;
}
@media(max-width:760px){
    .aip-premium-method-step-gallery{gap:12px !important;}
    .aip-premium-method-step-card{border-radius:10px !important;}
}


/* =========================================================
 * AIP 0.8.40 — MET001–MET006: imagem + texto oficial L11
 * MET007–MET013 permanecem congelados e sem texto duplicado.
 * ======================================================= */
.aip-premium-method-step-card.has-step-copy{
    background:#fffdf9 !important;
}
.aip-premium-method-step-copy{
    display:block !important;
    margin:0 !important;
    padding:16px 18px 17px !important;
    border-top:1px solid #e7ddd0 !important;
    background:#fbf7f1 !important;
    color:#173f35 !important;
    font-size:15px !important;
    line-height:1.55 !important;
    font-weight:600 !important;
    text-align:left !important;
}
.aip-premium-method-step-copy span{
    display:block !important;
    max-width:920px !important;
}
@media(max-width:760px){
    .aip-premium-method-step-copy{
        padding:13px 14px 14px !important;
        font-size:14px !important;
        line-height:1.5 !important;
    }
}

/* =========================================================
 * 0.8.43 — Métodos: conteúdo do card "Você vai precisar"
 * Correção global para MET001–MET013: impede textos longos,
 * inclusive termos separados por barras, de ultrapassar o card.
 * ========================================================= */
.aip-premium-method-needed,
.aip-premium-method-needed ul,
.aip-premium-method-needed li {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.aip-premium-method-needed li {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

/* =========================================================
 * AIP 0.8.44 — L14 Métodos: UX final da ficha individual
 * Wireframe homologado: topo + necessários/referência + preparo
 * vertical congelado + dicas em cards + CTA de ajuste compacto.
 * Conteúdo L11 e artes MET001–MET013 preservados.
 * ======================================================= */

/* Segunda faixa: "Você vai precisar" ganha mais largura. */
.aip-premium-method-detail__overview{
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr) !important;
    gap:16px !important;
    align-items:stretch !important;
}

/* Você vai precisar — cards visuais, sem bullets. */
.aip-premium-method-needed{
    background:#fffdfa !important;
}
.aip-premium-method-needed__grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}
.aip-premium-method-needed__grid li{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    min-width:0 !important;
    margin:0 !important;
    padding:12px 8px !important;
    border:1px solid #eee5dc !important;
    border-radius:12px !important;
    background:#fbf7f1 !important;
    color:#27342e !important;
    text-align:center !important;
    line-height:1.28 !important;
}
.aip-premium-method-needed__icon{
    width:58px !important;
    height:58px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:12px !important;
    background:#f3eee6 !important;
    color:#74472d !important;
}
.aip-premium-method-needed__icon svg{
    width:34px !important;
    height:34px !important;
}
.aip-premium-method-needed__label{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    font-size:.86rem !important;
    font-weight:650 !important;
    overflow-wrap:anywhere !important;
}

/* Referência rápida — ícones semânticos + valor técnico destacado. */
.aip-premium-method-reference{
    background:#f8fbf9 !important;
}
.aip-premium-method-reference dl div{
    grid-template-columns:minmax(0,1fr) minmax(120px,.9fr) !important;
    gap:12px !important;
    align-items:center !important;
    padding:10px 0 !important;
}
.aip-premium-method-reference dt{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    min-width:0 !important;
}
.aip-premium-method-reference__icon{
    width:24px !important;
    height:24px !important;
    flex:0 0 24px !important;
    display:grid !important;
    place-items:center !important;
    color:#7a482d !important;
}
.aip-premium-method-reference__icon svg{
    width:22px !important;
    height:22px !important;
}

/* Como preparar permanece exatamente no padrão editorial vertical congelado. */
.aip-premium-method-steps{
    background:#fffdfa !important;
}

/* Pós-preparo: Dicas e Ajuste passam a ocupar toda a largura. */
.aip-premium-method-detail__lower > .aip-premium-method-aftercare{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    width:100% !important;
}

.aip-premium-method-tips{
    width:100% !important;
    background:linear-gradient(180deg,#f2faf5,#eef8f2) !important;
    border-color:#d4eadc !important;
}
.aip-premium-method-tips__grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}
.aip-premium-method-tips__grid li{
    display:grid !important;
    grid-template-columns:38px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    margin:0 !important;
    padding:13px !important;
    border:1px solid #dbece2 !important;
    border-radius:12px !important;
    background:rgba(255,255,255,.72) !important;
    color:#2e3934 !important;
    line-height:1.38 !important;
}
.aip-premium-method-tip__icon{
    width:38px !important;
    height:38px !important;
    display:grid !important;
    place-items:center !important;
    color:#0a6347 !important;
}
.aip-premium-method-tip__icon svg{
    width:30px !important;
    height:30px !important;
}
.aip-premium-method-tips__grid li > span:last-child{
    color:#2e3934 !important;
    font-size:.87rem !important;
    font-weight:650 !important;
}

/* Resultado / Ajustar Meu Preparo — compacto e conectado ao diagnóstico. */
.aip-premium-method-adjust{
    width:100% !important;
    margin-top:0 !important;
    padding:16px 18px !important;
    border:1px solid #eadfd5 !important;
    border-radius:14px !important;
    background:#fffaf4 !important;
}
.aip-premium-method-adjust h4{
    margin:0 0 10px !important;
    color:#17251f !important;
    font-size:1.02rem !important;
}
.aip-premium-method-adjust__body{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:16px !important;
    align-items:end !important;
}
.aip-premium-method-adjust__body p{
    margin:0 0 9px !important;
    color:#4b554f !important;
    font-size:.84rem !important;
}
.aip-premium-method-adjust__chips{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:7px !important;
}
.aip-premium-method-adjust__chips span{
    display:inline-flex !important;
    align-items:center !important;
    min-height:30px !important;
    padding:5px 10px !important;
    border:1px solid #dfd4c8 !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#4f463f !important;
    font-size:.76rem !important;
    font-weight:650 !important;
}
.aip-premium-method-adjust button{
    width:auto !important;
    min-width:190px !important;
    min-height:42px !important;
    padding:0 17px !important;
    border-radius:9px !important;
    background:#07513d !important;
    white-space:nowrap !important;
}

/* Tablet/mobile: reflow real, sem "espremer" o desktop. */
@media(max-width:900px){
    .aip-premium-method-detail__overview{
        grid-template-columns:1fr !important;
    }
    .aip-premium-method-needed__grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media(max-width:760px){
    .aip-premium-method-detail__overview{
        gap:12px !important;
    }
    .aip-premium-method-needed__grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }
    .aip-premium-method-needed__grid li{
        padding:11px 7px !important;
    }
    .aip-premium-method-needed__icon{
        width:52px !important;
        height:52px !important;
    }
    .aip-premium-method-needed__icon svg{
        width:30px !important;
        height:30px !important;
    }
    .aip-premium-method-reference dl div{
        grid-template-columns:minmax(0,1fr) minmax(108px,.9fr) !important;
        gap:9px !important;
    }
    .aip-premium-method-tips__grid{
        grid-template-columns:1fr !important;
        gap:9px !important;
    }
    .aip-premium-method-adjust__body{
        grid-template-columns:1fr !important;
        align-items:stretch !important;
    }
    .aip-premium-method-adjust button{
        width:100% !important;
        min-width:0 !important;
    }
}

@media(max-width:480px){
    .aip-premium-method-panel{
        padding:14px !important;
    }
    .aip-premium-method-needed__label{
        font-size:.81rem !important;
    }
    .aip-premium-method-reference dt,
    .aip-premium-method-reference dd{
        font-size:.82rem !important;
    }
    .aip-premium-method-reference__icon{
        width:21px !important;
        height:21px !important;
        flex-basis:21px !important;
    }
    .aip-premium-method-reference__icon svg{
        width:19px !important;
        height:19px !important;
    }
    .aip-premium-method-adjust__chips{
        gap:6px !important;
    }
    .aip-premium-method-adjust__chips span{
        font-size:.72rem !important;
        padding:5px 9px !important;
    }
}

/* =========================================================
 * AIP 0.8.45 — L14 Métodos: refinamento tipográfico/overview
 * - Necessários em lista vertical informativa (não clicável)
 * - Referência rápida mais compacta e legível
 * - Topo dimensionado para nomes longos dos 13 métodos
 * Conteúdo, timers, diagnóstico e artes permanecem inalterados.
 * ======================================================= */

/* Topo: reduz escala para acomodar nomes longos sem dominar o card. */
.aip-premium-method-detail__identity h3{
    font-size:clamp(1.45rem,2.2vw,1.65rem) !important;
    line-height:1.03 !important;
    letter-spacing:-.025em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}
.aip-premium-method-card__id{
    font-size:.66rem !important;
}
.aip-premium-method-detail__identity p{
    font-size:.94rem !important;
    line-height:1.48 !important;
}
.aip-premium-method-clock > strong{
    font-size:1rem !important;
    line-height:1.25 !important;
}
.aip-premium-method-clock > small,
.aip-premium-method-clock__range{
    font-size:.84rem !important;
}

/* Overview equilibrado: lista de apoio + referência técnica. */
.aip-premium-method-detail__overview{
    grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) !important;
    gap:18px !important;
}

/* Você vai precisar: lista vertical, limpa, informativa e não interativa. */
.aip-premium-method-needed__grid{
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}
.aip-premium-method-needed__grid li{
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) !important;
    align-items:center !important;
    gap:10px !important;
    min-width:0 !important;
    margin:0 !important;
    padding:7px 4px !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#27342e !important;
    text-align:left !important;
    line-height:1.35 !important;
    cursor:default !important;
}
.aip-premium-method-needed__grid li + li{
    border-top:1px solid #f1ebe4 !important;
}
.aip-premium-method-needed__icon{
    width:30px !important;
    height:30px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:8px !important;
    background:#f5f0e9 !important;
    color:#74472d !important;
}
.aip-premium-method-needed__icon svg{
    width:18px !important;
    height:18px !important;
}
.aip-premium-method-needed__label{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    font-size:.88rem !important;
    line-height:1.35 !important;
    font-weight:500 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}

/* Referência rápida: reduz tipografia e dá espaço real entre rótulo/valor. */
.aip-premium-method-reference h4{
    font-size:.98rem !important;
}
.aip-premium-method-reference h4 span{
    font-size:.68rem !important;
}
.aip-premium-method-reference dl div{
    grid-template-columns:minmax(0,.92fr) minmax(112px,1.08fr) !important;
    gap:14px !important;
    align-items:center !important;
    padding:9px 0 !important;
}
.aip-premium-method-reference dt,
.aip-premium-method-reference dd{
    font-size:.80rem !important;
    line-height:1.32 !important;
}
.aip-premium-method-reference dt{
    gap:6px !important;
    font-weight:600 !important;
}
.aip-premium-method-reference dd{
    font-weight:700 !important;
    text-align:right !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}
.aip-premium-method-reference__icon{
    width:19px !important;
    height:19px !important;
    flex:0 0 19px !important;
}
.aip-premium-method-reference__icon svg{
    width:17px !important;
    height:17px !important;
}

@media(max-width:900px){
    .aip-premium-method-detail__overview{
        grid-template-columns:1fr !important;
    }
}

@media(max-width:760px){
    .aip-premium-method-detail__identity h3{
        font-size:1.42rem !important;
    }
    .aip-premium-method-detail__identity p{
        font-size:.90rem !important;
    }
    .aip-premium-method-needed__grid{
        display:flex !important;
        flex-direction:column !important;
        gap:4px !important;
    }
    .aip-premium-method-needed__grid li{
        grid-template-columns:30px minmax(0,1fr) !important;
        padding:7px 2px !important;
    }
    .aip-premium-method-reference dl div{
        grid-template-columns:minmax(0,1fr) minmax(108px,1fr) !important;
        gap:10px !important;
    }
}

@media(max-width:480px){
    .aip-premium-method-detail__identity h3{
        font-size:1.34rem !important;
    }
    .aip-premium-method-needed__label{
        font-size:.84rem !important;
    }
    .aip-premium-method-reference dt,
    .aip-premium-method-reference dd{
        font-size:.77rem !important;
    }
}


/* AIP 0.8.46 — ponte contextual Métodos -> Ajustar Meu Preparo */
.aip-premium-method-adjust__chips button {
    appearance: none;
    border: 1px solid #dccfc2;
    background: #fffaf5;
    color: #3a2b22;
    border-radius: 999px;
    padding: 7px 12px;
    font: inherit;
    font-size: 13px;
    line-height: 1.2;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}
.aip-premium-method-adjust__chips button:hover,
.aip-premium-method-adjust__chips button:focus-visible {
    border-color: #0b5d48;
    outline: none;
}
.aip-premium-method-adjust__chips button.is-selected {
    background: #0b5d48;
    border-color: #0b5d48;
    color: #fff;
    box-shadow: 0 2px 8px rgba(11,93,72,.16);
}
.aip-premium-method-adjust__message {
    min-height: 18px;
    margin: 8px 0 0;
    font-size: 12px;
    color: #9a3e2f;
}
.aip-premium-method-adjust.has-selection-error .aip-premium-method-adjust__chips {
    border-radius: 12px;
    box-shadow: 0 0 0 2px rgba(154,62,47,.08);
}
.aip-premium-adjustment-context {
    max-width: 760px;
    border: 1px solid #e5d9cd;
    border-radius: 18px;
    background: #fffdf9;
    padding: 22px;
}
.aip-premium-adjustment-context__summary {
    display: grid;
    grid-template-columns: minmax(110px, .6fr) 1.4fr;
    gap: 10px 18px;
    padding: 16px;
    border-radius: 14px;
    background: #f7f1ea;
}
.aip-premium-adjustment-context__summary span {
    color: #7a6759;
    font-size: 13px;
}
.aip-premium-adjustment-context__summary strong {
    color: #0b5d48;
    font-size: 15px;
}
.aip-premium-adjustment-context__next {
    margin-top: 20px;
}
.aip-premium-adjustment-context__next h3 {
    margin: 0 0 8px;
}
.aip-premium-adjustment-context__next p {
    line-height: 1.6;
    margin: 0 0 16px;
}
.aip-premium-adjustment-context__note {
    margin-top: 12px !important;
    font-size: 13px;
    color: #6f6258;
}
@media (max-width: 720px) {
    .aip-premium-adjustment-context { padding: 16px; }
    .aip-premium-adjustment-context__summary { grid-template-columns: 1fr; gap: 4px; }
}


/* =========================================================
 * 0.8.47 — Dashboard: identidade visual de perfil, método e região
 * ========================================================= */
.aip-dashboard-profile__seal{
    overflow:hidden;
    font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;
    line-height:1;
}
.aip-dashboard-context-card__visual--image{
    overflow:hidden;
    padding:0;
    background:#f3ede5;
    border:1px solid rgba(89,68,52,.12);
}
.aip-dashboard-context-card__visual--image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.aip-dashboard-context-card__visual--image img:not([src]),
.aip-dashboard-context-card__visual--image img[src=""]{
    visibility:hidden;
}
.aip-mycoffee-active__mark,
.aip-mycoffee-profile-icon{
    font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;
    line-height:1;
}

/* L14 — Equipamentos: catálogo premium + ficha individual */
.aip-premium-equipment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 16px;flex-wrap:wrap}.aip-premium-equipment-filters{display:flex;gap:8px;flex-wrap:wrap}.aip-premium-equipment-filter{border:1px solid var(--aip-premium-border);background:#fff;border-radius:999px;padding:8px 13px;font:inherit;font-size:.8rem;color:#44504b;cursor:pointer}.aip-premium-equipment-filter.is-active{background:var(--aip-premium-accent);border-color:var(--aip-premium-accent);color:#fff;font-weight:700}.aip-premium-equipment-search{display:flex;align-items:center;gap:7px;border:1px solid var(--aip-premium-border);border-radius:10px;background:#fff;padding:8px 11px;min-width:210px}.aip-premium-equipment-search input{border:0;outline:0;background:transparent;width:100%;font:inherit;font-size:.82rem}.aip-premium-knowledge-equipment__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.aip-premium-equipment-card{position:relative;padding:12px;gap:6px;border-radius:14px;transition:.18s ease}.aip-premium-equipment-card:hover{border-color:rgba(31,111,82,.45);box-shadow:0 7px 22px rgba(26,64,49,.07);transform:translateY(-1px)}.aip-premium-equipment-card__click{position:absolute;inset:0;z-index:1;border-radius:inherit}.aip-premium-equipment-card__visual{height:112px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#fbfaf7;overflow:hidden;color:#435c52}.aip-premium-equipment-card__visual img{width:100%;height:100%;object-fit:contain}.aip-premium-equipment-card__visual svg{width:88%;height:88%}.aip-premium-equipment-card__id{font-size:.66rem;color:#3f6b59}.aip-premium-equipment-card h4{font-size:.92rem;line-height:1.2}.aip-premium-equipment-card__meta{min-height:0;font-size:.76rem}.aip-premium-equipment-card__action{font-size:.78rem;position:relative;z-index:2;pointer-events:none}.aip-premium-equipment-no-results{padding:20px;text-align:center;color:var(--aip-premium-muted)}
.aip-premium-equipment-details{margin-top:0}.aip-premium-equipment-detail{padding:0;border:0;background:transparent;box-shadow:none!important}.aip-premium-equipment-detail__back{display:inline-flex;margin:0 0 14px;font-size:.84rem}.aip-premium-equipment-detail__hero{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.2fr);gap:22px;padding:20px;border:1px solid var(--aip-premium-border);border-radius:18px;background:#fff}.aip-premium-equipment-detail__visual{min-height:210px;display:flex;align-items:center;justify-content:center;background:#fbfaf7;border-radius:14px;overflow:hidden;color:#435c52}.aip-premium-equipment-detail__visual img{width:100%;height:100%;max-height:250px;object-fit:contain}.aip-premium-equipment-detail__visual svg{width:80%;height:80%}.aip-premium-equipment-detail__intro h4{font-size:1.7rem;margin:4px 0 3px}.aip-premium-equipment-detail__summary{color:var(--aip-premium-muted);line-height:1.55}.aip-premium-equipment-detail__primary,.aip-premium-equipment-detail__market-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;border-radius:9px;margin-top:9px;text-decoration:none;font-weight:700;font-size:.84rem}.aip-premium-equipment-detail__primary{background:var(--aip-premium-accent);color:#fff}.aip-premium-equipment-detail__market-cta{border:1px solid var(--aip-premium-accent);background:#fff;color:var(--aip-premium-accent);cursor:pointer}.aip-premium-equipment-detail__content{display:grid;gap:12px;margin-top:14px}.aip-premium-equipment-detail__block{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;margin:0;padding:16px;border:1px solid var(--aip-premium-border);border-radius:15px;background:#fff}.aip-premium-equipment-detail__block-icon{width:38px;height:38px;border-radius:10px;background:rgba(31,111,82,.09);color:var(--aip-premium-accent);display:flex;align-items:center;justify-content:center;font-weight:800}.aip-premium-equipment-detail__block h5{font-size:1rem}.aip-premium-equipment-detail__block p,.aip-premium-equipment-detail__block li{font-size:.86rem;color:#45524d}.aip-premium-equipment-detail__block--important{background:rgba(31,111,82,.045)}
@media(max-width:980px){.aip-premium-knowledge-equipment__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.aip-premium-equipment-toolbar{align-items:stretch}.aip-premium-equipment-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.aip-premium-equipment-filter{white-space:nowrap}.aip-premium-equipment-search{width:100%}.aip-premium-knowledge-equipment__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aip-premium-equipment-card__visual{height:100px}.aip-premium-equipment-detail__hero{grid-template-columns:1fr}.aip-premium-equipment-detail__visual{min-height:180px}.aip-premium-equipment-detail__intro h4{font-size:1.45rem}}@media(max-width:430px){.aip-premium-knowledge-equipment__grid{grid-template-columns:1fr 1fr}.aip-premium-equipment-card{padding:10px}.aip-premium-equipment-card h4{font-size:.86rem}}

/* === L14.49 Equipamentos Premium — dashboard aprovado === */
.aip-premium-knowledge-equipment{max-width:1040px!important;margin:0 auto!important}
.aip-premium-equipment-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) 230px!important;align-items:start!important;gap:14px!important}
.aip-premium-equipment-filters{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.aip-premium-equipment-filter{min-height:34px!important;padding:7px 13px!important;border-radius:11px!important;font-size:.78rem!important;cursor:pointer!important}
.aip-premium-equipment-filter:hover,.aip-premium-equipment-filter:focus-visible{border-color:var(--aip-premium-accent)!important;color:var(--aip-premium-accent)!important}
.aip-premium-equipment-filter.is-active{background:#0d5a43!important;border-color:#0d5a43!important;color:#fff!important}
.aip-premium-equipment-search{min-width:0!important;width:230px!important;justify-self:end!important;border-radius:9px!important}
.aip-premium-knowledge-equipment__grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.aip-premium-equipment-card{display:flex!important;flex-direction:column!important;min-height:262px!important;padding:11px!important;border:1px solid #e5d8c9!important;background:#fffdfa!important;border-radius:14px!important;overflow:hidden!important;cursor:pointer!important}
.aip-premium-equipment-card__visual{height:125px!important;margin-bottom:4px!important;background:#fbfaf7!important;border-radius:10px!important}
.aip-premium-equipment-card__visual img{width:100%!important;height:100%!important;object-fit:contain!important}
.aip-premium-equipment-card__id{font-size:.64rem!important;color:#315d4d!important;letter-spacing:.03em!important}
.aip-premium-equipment-card h4{margin:0!important;font-size:.91rem!important;line-height:1.16!important;color:#10251d!important}
.aip-premium-equipment-card__meta{margin:2px 0 0!important;font-size:.75rem!important;color:#6c726f!important}
.aip-premium-equipment-card__action{margin-top:auto!important;padding-top:12px!important;color:#0d5a43!important;font-weight:700!important;font-size:.77rem!important}
.aip-premium-equipment-card:hover{border-color:#83b5a2!important;box-shadow:0 10px 24px rgba(20,75,57,.08)!important}
.aip-premium-equipment-detail{max-width:940px!important;margin:0 auto!important}
.aip-premium-equipment-detail__back{font-weight:700!important;color:#0d5a43!important;text-decoration:none!important;margin-bottom:12px!important}
.aip-premium-equipment-detail__hero{grid-template-columns:220px minmax(0,1fr)!important;gap:24px!important;padding:22px!important;border-radius:18px!important;background:#fffdfa!important;box-shadow:0 8px 28px rgba(30,61,50,.04)!important}
.aip-premium-equipment-detail__visual{min-height:230px!important;background:#fbfaf7!important}
.aip-premium-equipment-detail__visual img{width:100%!important;height:100%!important;object-fit:contain!important}
.aip-premium-equipment-detail__intro{align-self:center!important}
.aip-premium-equipment-detail__id{display:inline-flex!important;padding:4px 8px!important;background:#eef5f1!important;border-radius:999px!important;color:#315d4d!important;font-size:.68rem!important;font-weight:700!important}
.aip-premium-equipment-detail__intro h4{font-size:1.8rem!important;line-height:1.05!important;color:#101c18!important}
.aip-premium-equipment-detail__method{margin:0 0 8px!important;color:#5f6965!important}
.aip-premium-equipment-detail__summary{font-size:.88rem!important;line-height:1.55!important}
.aip-premium-equipment-detail__primary,.aip-premium-equipment-detail__market-cta{min-height:42px!important;border-radius:9px!important;font-size:.82rem!important}
.aip-premium-equipment-detail__content{gap:12px!important;margin-top:14px!important}
.aip-premium-equipment-detail__block{grid-template-columns:42px minmax(0,1fr)!important;gap:13px!important;padding:17px 18px!important;border-radius:14px!important;background:#fffdfa!important}
.aip-premium-equipment-detail__block-icon{width:42px!important;height:42px!important;border-radius:10px!important;background:#edf7f2!important;color:#0d654b!important}
.aip-premium-equipment-detail__block h5{font-size:1rem!important;margin:1px 0 6px!important}
.aip-premium-equipment-detail__block p,.aip-premium-equipment-detail__block li{font-size:.84rem!important;line-height:1.55!important}
.aip-premium-equipment-detail__related{padding:16px 18px!important;border:1px solid #dcebe4!important;border-radius:14px!important;background:#f4fbf7!important}
.aip-premium-equipment-detail__related h5{margin:0 0 8px!important;font-size:.94rem!important;color:#183c30!important}
.aip-premium-equipment-detail__related a{display:block!important;color:#0d5a43!important;text-decoration:none!important;font-size:.84rem!important;font-weight:700!important}
@media(max-width:980px){.aip-premium-knowledge-equipment__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.aip-premium-equipment-toolbar{grid-template-columns:1fr!important}.aip-premium-equipment-search{width:100%!important;justify-self:stretch!important}.aip-premium-equipment-filters{overflow-x:auto!important;flex-wrap:nowrap!important}.aip-premium-knowledge-equipment__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.aip-premium-equipment-card{min-height:235px!important}.aip-premium-equipment-card__visual{height:108px!important}.aip-premium-equipment-detail__hero{grid-template-columns:1fr!important;padding:16px!important}.aip-premium-equipment-detail__visual{min-height:190px!important;max-height:230px!important}.aip-premium-equipment-detail__intro h4{font-size:1.5rem!important}}
@media(max-width:430px){.aip-premium-equipment-card{padding:9px!important;min-height:220px!important}.aip-premium-equipment-card__visual{height:96px!important}.aip-premium-equipment-card h4{font-size:.83rem!important}.aip-premium-equipment-detail__block{grid-template-columns:34px minmax(0,1fr)!important;padding:14px!important}.aip-premium-equipment-detail__block-icon{width:34px!important;height:34px!important}}
\n\n/* === L14.50 Equipamentos — correções finais de filtro, imagens e identidade === */
.aip-premium-equipment-card[hidden]{display:none!important}
.aip-premium-equipment-detail[hidden]{display:none!important}
.aip-premium-equipment-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(185px,230px)!important;align-items:center!important;gap:12px!important;margin:16px 0 18px!important}
.aip-premium-equipment-filters{display:flex!important;gap:7px!important;flex-wrap:wrap!important}
.aip-premium-equipment-filter{min-height:34px!important;padding:7px 12px!important;border:1px solid #dfd6ca!important;border-radius:11px!important;background:#fffdfa!important;color:#43504b!important;font-size:.76rem!important;box-shadow:none!important}
.aip-premium-equipment-filter:hover,.aip-premium-equipment-filter:focus-visible{border-color:#0b6048!important;color:#0b6048!important;background:#f7fbf8!important}
.aip-premium-equipment-filter.is-active{background:#0b6048!important;border-color:#0b6048!important;color:#fff!important;font-weight:700!important}
.aip-premium-equipment-search{min-width:0!important;width:100%!important;min-height:38px!important;border:1px solid #dfd6ca!important;border-radius:10px!important;background:#fffdfa!important;color:#51605a!important}
.aip-premium-knowledge-equipment__grid{gap:10px!important}
.aip-premium-equipment-card{min-height:245px!important;padding:11px!important;border:1px solid #e5ddd3!important;border-radius:14px!important;background:#fffdfa!important;box-shadow:0 2px 8px rgba(50,40,30,.025)!important}
.aip-premium-equipment-card:hover{border-color:#73aa96!important;background:#fff!important;box-shadow:0 8px 22px rgba(28,77,59,.07)!important}
.aip-premium-equipment-card__visual{height:126px!important;margin:0 0 5px!important;padding:7px!important;border:1px solid #f0ebe4!important;border-radius:10px!important;background:#fbfaf7!important;overflow:hidden!important}
.aip-premium-equipment-card__visual img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;border-radius:7px!important}
.aip-premium-equipment-card__id{color:#356553!important;font-size:.65rem!important;font-weight:700!important}
.aip-premium-equipment-card h4{margin:0!important;color:#17241f!important;font-size:.92rem!important;font-weight:700!important;line-height:1.2!important}
.aip-premium-equipment-card__meta{margin:0!important;color:#64716c!important;font-size:.76rem!important;line-height:1.3!important}
.aip-premium-equipment-card__action{margin-top:auto!important;color:#0b6048!important;font-size:.77rem!important;font-weight:700!important}
.aip-premium-equipment-detail__hero{gap:20px!important;padding:18px!important;border:1px solid #e5ddd3!important;border-radius:17px!important;background:#fffdfa!important;box-shadow:0 3px 12px rgba(50,40,30,.03)!important}
.aip-premium-equipment-detail__visual{min-height:220px!important;max-height:270px!important;padding:12px!important;border:1px solid #f0ebe4!important;border-radius:13px!important;background:#fbfaf7!important;overflow:hidden!important}
.aip-premium-equipment-detail__visual img{display:block!important;width:100%!important;height:100%!important;max-height:245px!important;object-fit:contain!important;object-position:center!important}
.aip-premium-equipment-detail__id{display:inline-flex!important;padding:5px 9px!important;border-radius:999px!important;background:#eef7f2!important;color:#356553!important;font-size:.68rem!important}
.aip-premium-equipment-detail__intro h4{color:#17241f!important;font-size:1.65rem!important}
.aip-premium-equipment-detail__method{color:#5e6d67!important}
.aip-premium-equipment-detail__summary{color:#53615c!important}
.aip-premium-equipment-detail__primary{border:1px solid #0b6048!important;background:#0b6048!important;color:#fff!important;box-shadow:none!important}
.aip-premium-equipment-detail__primary:hover,.aip-premium-equipment-detail__primary:focus{background:#084c39!important;color:#fff!important}
.aip-premium-equipment-detail__market-cta{border:1px solid #0b6048!important;background:#fffdfa!important;color:#0b6048!important;box-shadow:none!important}
.aip-premium-equipment-detail__market-cta:hover,.aip-premium-equipment-detail__market-cta:focus{background:#eef7f2!important;color:#0b6048!important}
.aip-premium-equipment-detail__content{gap:11px!important}
.aip-premium-equipment-detail__block{grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;padding:15px!important;border:1px solid #e5ddd3!important;border-radius:14px!important;background:#fffdfa!important}
.aip-premium-equipment-detail__block-icon{width:42px!important;height:42px!important;border-radius:10px!important;background:#eaf6ef!important;color:#0b6048!important}
.aip-premium-equipment-ui-svg{width:23px;height:23px;display:block}
.aip-premium-equipment-detail__block h5{color:#17241f!important;font-size:.98rem!important;font-weight:700!important}
.aip-premium-equipment-detail__block p,.aip-premium-equipment-detail__block li{color:#52605b!important;font-size:.84rem!important}
.aip-premium-equipment-detail__block--important{background:#f2faf5!important}
.aip-premium-equipment-detail__related{padding:15px!important;border:1px solid #dfece5!important;border-radius:14px!important;background:#f2faf5!important}
.aip-premium-equipment-detail__related h5{color:#173d30!important}
.aip-premium-equipment-detail__related a{color:#0b6048!important}
@media(max-width:760px){.aip-premium-equipment-toolbar{grid-template-columns:1fr!important}.aip-premium-equipment-filters{overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:3px!important}.aip-premium-equipment-search{width:100%!important}.aip-premium-equipment-card{min-height:225px!important}.aip-premium-equipment-card__visual{height:112px!important}}

.aip-premium-equipment-detail__primary,.aip-premium-equipment-detail__market-cta{gap:8px!important}.aip-premium-equipment-cta-icon{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center}.aip-premium-equipment-cta-icon .aip-premium-equipment-ui-svg{width:19px;height:19px}


/* === L14.51 — filtro de equipamentos: ocultação garantida === */
.aip-premium-equipment-card[hidden]{display:none!important;}
.aip-premium-equipment-no-results[hidden]{display:none!important;}


/* === L14.53 Equipamentos — visual exatamente no padrão aprovado === */
.aip-premium-equipment-card__visual{
    height:126px!important;
    margin:0 0 5px!important;
    padding:0!important;
    border:0!important;
    border-radius:10px!important;
    background:#fbfaf7!important;
    overflow:hidden!important;
}
.aip-premium-equipment-card__visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    border:0!important;
    border-radius:0!important;
    background:#fbfaf7!important;
}
.aip-premium-equipment-detail__visual img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#fbfaf7!important;
}

/* === L14.54 Acessórios — cards no padrão visual aprovado de Equipamentos === */
.aip-premium-knowledge-accessories{max-width:1040px!important;margin:0 auto!important}
.aip-premium-accessories__grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
.aip-premium-accessory-card{position:relative!important;display:flex!important;flex-direction:column!important;min-height:245px!important;padding:11px!important;border:1px solid #e5ddd3!important;border-radius:14px!important;background:#fffdfa!important;box-shadow:0 2px 8px rgba(50,40,30,.025)!important;overflow:hidden!important}
.aip-premium-accessory-card:hover{border-color:#73aa96!important;background:#fff!important;box-shadow:0 8px 22px rgba(28,77,59,.07)!important}
.aip-premium-accessory-card__click{position:absolute!important;inset:0!important;z-index:2!important;border-radius:14px!important}
.aip-premium-accessory-card__visual{height:126px!important;margin:0 0 5px!important;padding:0!important;border:0!important;border-radius:10px!important;background:#fbfaf7!important;overflow:hidden!important}
.aip-premium-accessory-card__visual img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;border:0!important;border-radius:0!important;background:#fbfaf7!important}
.aip-premium-accessory-card__fallback{display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:center!important;color:#356553!important;font-size:2rem!important}
.aip-premium-accessory-card__id{color:#356553!important;font-size:.65rem!important;font-weight:700!important;letter-spacing:.03em!important}
.aip-premium-accessory-card h4{margin:0!important;color:#17241f!important;font-size:.92rem!important;font-weight:700!important;line-height:1.2!important}
.aip-premium-accessory-card__meta{margin:0!important;color:#64716c!important;font-size:.76rem!important;line-height:1.3!important}
.aip-premium-accessory-card__action{margin-top:auto!important;padding-top:12px!important;color:#0b6048!important;font-size:.77rem!important;font-weight:700!important;pointer-events:none!important}
@media(max-width:980px){.aip-premium-accessories__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.aip-premium-accessories__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.aip-premium-accessory-card{min-height:225px!important}.aip-premium-accessory-card__visual{height:112px!important}}
@media(max-width:430px){.aip-premium-accessory-card{padding:9px!important;min-height:220px!important}.aip-premium-accessory-card__visual{height:96px!important}.aip-premium-accessory-card h4{font-size:.83rem!important}}

/* === L14.56 Acessórios — ficha individual e cards espelhando Equipamentos === */
.aip-premium-accessory-detail[hidden],.aip-premium-accessories__grid[hidden]{display:none!important}
.aip-premium-accessory-detail{margin-top:14px!important}
.aip-premium-accessory-detail__back{display:inline-flex!important;margin:0 0 12px!important;color:#0b6048!important;font-size:.8rem!important;font-weight:700!important;text-decoration:none!important}
.aip-premium-accessory-detail__legacy{display:grid!important;gap:11px!important;margin-top:14px!important}
.aip-premium-accessory-detail__legacy>section{padding:15px!important;border:1px solid #e5ddd3!important;border-radius:14px!important;background:#fffdfa!important}
.aip-premium-accessory-detail__legacy h5{margin:0 0 7px!important;color:#17241f!important;font-size:.98rem!important;font-weight:700!important}
.aip-premium-accessory-detail__legacy p,.aip-premium-accessory-detail__legacy li{color:#52605b!important;font-size:.84rem!important;line-height:1.55!important}
.aip-premium-accessory-micro{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important}
.aip-premium-accessory-micro__cta{grid-column:1/-1!important;padding:0!important;border:0!important;background:transparent!important}
.aip-premium-accessory-micro__cta a{display:inline-flex!important;color:#0b6048!important;font-weight:700!important;text-decoration:none!important}
@media(max-width:760px){.aip-premium-accessory-micro{grid-template-columns:1fr!important}}


/* AIP 0.8.57 — Acessórios: correções finais de fundo, navegação e padronização */
.aip-premium-accessory-card__visual,
.aip-premium-accessory-card__visual img,
.aip-premium-equipment-detail__visual:has(img[src*="/accessories/"]),
.aip-premium-equipment-detail__visual img[src*="/accessories/"]{
    background:#fff!important;
}
.aip-premium-accessory-micro--general section{
    min-height:100%;
}
.aip-premium-accessory-micro--general ul{
    margin:.35rem 0 0 1rem!important;
    padding:0!important;
}
.aip-premium-accessory-micro__note{
    margin:.75rem 0 0!important;
    padding-top:.65rem!important;
    border-top:1px solid #e5ddd3!important;
}


/* =========================================================
   J3 V1 — CAFÉS: HUB + NOTAS SENSORIAIS + ESTILOS (0.8.70)
   ========================================================= */
.aip-premium-coffees-hub.is-detail-view > .aip-premium-coffees-hub__header,
.aip-premium-coffees-hub.is-detail-view > .aip-premium-coffees-hub__list,
.aip-premium-coffees-hub.is-detail-view > .aip-premium-coffees-curation,
.aip-premium-coffees-hub.is-detail-view > #aip-premium-coffee-curation { display:none !important; }
.aip-premium-coffee-detail[hidden] { display:none !important; }
.aip-premium-coffee-detail:not([hidden]) { display:block; }
.aip-premium-coffee-detail { max-width: 960px; margin: 0 auto; }
.aip-premium-coffee-detail > h4 { font-size: clamp(1.55rem, 2.2vw, 2rem); color:#32170f; }
.aip-premium-coffee-detail__intro { max-width: 760px; color:#443a35; font-size:1rem; }
.aip-coffee-sensory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px; }
.aip-coffee-sensory-card { padding:16px; border:1px solid #eadfd5; border-radius:14px; background:#fffdfb; }
.aip-coffee-sensory-card h5 { margin:0 0 6px; color:#5d321b; font-size:1rem; }
.aip-coffee-sensory-card p { margin:0; color:#5f5752; line-height:1.5; }
.aip-coffee-callout { margin-top:14px; padding:17px 18px; border:1px solid #dfe9e4; border-radius:14px; background:#f7fbf9; }
.aip-coffee-callout h5 { margin:0 0 7px; color:#174f3e; font-size:1rem; text-transform:none; }
.aip-coffee-callout p { margin:0 0 8px; line-height:1.55; }
.aip-coffee-callout p:last-child { margin-bottom:0; }
.aip-coffee-callout ul { margin:8px 0 0 18px; padding:0; }
.aip-coffee-callout li { margin:5px 0; }
.aip-coffee-callout--warm { background:#fff9ef; border-color:#f0dfc7; }
.aip-coffee-callout--warm h5 { color:#6d421f; }
.aip-coffee-callout--warning { background:#fff6f5; border-color:#efd8d4; }
.aip-coffee-callout--warning h5 { color:#8f2f2a; }
.aip-coffee-callout--blue { background:#f4f9fc; border-color:#dce9ef; }
.aip-coffee-callout--blue h5 { color:#2b617b; }
.aip-coffee-callout--green { background:#f4faf2; border-color:#dcebd7; }
.aip-coffee-callout--green h5 { color:#376d2e; }
.aip-coffee-styles-list { display:grid; gap:10px; margin-top:18px; }
.aip-coffee-style-card { display:grid; grid-template-columns:64px minmax(260px,.9fr) minmax(240px,1.1fr); gap:18px; align-items:center; padding:16px; border:1px solid #e9e3de; border-radius:16px; background:#fff; box-shadow:0 4px 16px rgba(52,31,18,.04); }
.aip-coffee-style-card__badge { width:54px; height:54px; display:grid; place-items:center; border-radius:50%; color:#fff; font-weight:800; font-size:1.2rem; background:#356c34; }
.aip-coffee-style-card__metrics h5 { margin:0 0 8px; font-size:1.04rem; letter-spacing:.01em; }
.aip-coffee-style-card__metrics dl { margin:0; display:grid; gap:4px; }
.aip-coffee-style-card__metrics dl > div { display:grid; grid-template-columns:90px 1fr; gap:10px; }
.aip-coffee-style-card__metrics dt { font-weight:700; color:#2f2925; }
.aip-coffee-style-card__metrics dd { margin:0; color:#356c34; }
.aip-coffee-style-card__text { margin:0; padding-left:18px; border-left:1px solid #e8ded7; line-height:1.5; color:#423b36; }
.aip-coffee-style-card--gourmet .aip-coffee-style-card__badge { background:#a76520; }
.aip-coffee-style-card--gourmet .aip-coffee-style-card__metrics h5,.aip-coffee-style-card--gourmet .aip-coffee-style-card__metrics dd { color:#a76520; }
.aip-coffee-style-card--superior .aip-coffee-style-card__badge { background:#387595; }
.aip-coffee-style-card--superior .aip-coffee-style-card__metrics h5,.aip-coffee-style-card--superior .aip-coffee-style-card__metrics dd { color:#387595; }
.aip-coffee-style-card--traditional .aip-coffee-style-card__badge { background:#c76713; }
.aip-coffee-style-card--traditional .aip-coffee-style-card__metrics h5,.aip-coffee-style-card--traditional .aip-coffee-style-card__metrics dd { color:#c76713; }
.aip-coffee-style-card--extraforte .aip-coffee-style-card__badge { background:#922927; }
.aip-coffee-style-card--extraforte .aip-coffee-style-card__metrics h5,.aip-coffee-style-card--extraforte .aip-coffee-style-card__metrics dd { color:#922927; }
.aip-coffee-style-notes { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:16px; }
.aip-coffee-style-notes .aip-coffee-callout { margin-top:0; }
.aip-coffee-shopping { margin-top:16px; padding:17px; border:1px solid #f0dfc7; border-radius:14px; background:#fff9ef; }
.aip-coffee-shopping h5 { margin:0 0 14px; color:#5d321b; font-size:1rem; }
.aip-coffee-shopping ol { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); gap:8px; counter-reset:coffee-step; }
.aip-coffee-shopping li { counter-increment:coffee-step; text-align:center; padding:8px; border-right:1px dashed #dcc6aa; }
.aip-coffee-shopping li:last-child { border-right:0; }
.aip-coffee-shopping li::before { content:counter(coffee-step); display:grid; place-items:center; width:28px; height:28px; margin:0 auto 7px; border-radius:50%; background:#956026; color:#fff; font-weight:800; }
.aip-coffee-shopping li span { font-size:.88rem; line-height:1.35; }
@media (max-width:780px) {
  .aip-coffee-sensory-grid { grid-template-columns:1fr; }
  .aip-coffee-style-card { grid-template-columns:52px 1fr; gap:12px; }
  .aip-coffee-style-card__badge { width:46px; height:46px; }
  .aip-coffee-style-card__text { grid-column:1 / -1; padding:10px 0 0; border-left:0; border-top:1px solid #eee4dd; }
  .aip-coffee-style-notes { grid-template-columns:1fr; }
  .aip-coffee-shopping ol { grid-template-columns:1fr; }
  .aip-coffee-shopping li { text-align:left; display:grid; grid-template-columns:34px 1fr; align-items:center; border-right:0; border-bottom:1px dashed #dcc6aa; }
  .aip-coffee-shopping li:last-child { border-bottom:0; }
  .aip-coffee-shopping li::before { margin:0; }
}


/* =========================================================
   J.3 UX — HUB + NOTAS SENSORIAIS + ESTILOS (AIP 0.8.70)
   ========================================================= */
.aip-premium-coffees-hub{max-width:1040px}
.aip-premium-coffees-hub__header{padding:8px 0 10px}
.aip-premium-coffees-hub__header h3{font-size:clamp(2rem,3.4vw,2.7rem);color:#2e160b;letter-spacing:-.025em}
.aip-premium-coffees-hub__header>p:last-child{font-size:1.02rem;line-height:1.6;color:#5f5a56}
.aip-premium-coffees-hub__list{gap:12px}
.aip-premium-coffee-topic{
 grid-template-columns:64px minmax(0,1fr) 28px;gap:17px;min-height:92px;padding:17px 20px;
 border-color:#e8ddd3;border-radius:17px;box-shadow:0 3px 12px rgba(64,39,23,.035)
}
.aip-premium-coffee-topic__icon{width:60px;height:60px;background:#f6eee4;color:#5d2c13}
.aip-premium-coffee-topic__icon svg{width:29px;height:29px}
.aip-premium-coffee-topic__number{padding:4px 7px;background:#a46d3d;font-size:.76rem}
.aip-premium-coffee-topic h4{font-size:1.04rem;color:#271a14}
.aip-premium-coffee-topic p{font-size:.94rem;color:#4f4a46;line-height:1.48}
.aip-premium-coffee-topic__arrow{color:#6a3518;font-weight:500}
.aip-premium-coffee-topic:hover,.aip-premium-coffee-topic:focus-visible{
 border-color:#c9ab90;box-shadow:0 10px 25px rgba(74,43,25,.09);transform:translateY(-2px)
}
.aip-premium-coffees-curation{margin-top:22px;border-radius:18px;padding:22px;background:linear-gradient(105deg,#f7ecdf 0%,#fffaf5 70%,#fff 100%)}
.aip-premium-coffees-curation__cta{display:inline-flex;padding:9px 14px;border-radius:999px;background:#55270f;color:#fff!important;text-decoration:none;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}

/* Tela editorial */
.aip-premium-coffee-detail{max-width:1040px;padding:24px;border-radius:20px;border-color:#e8ddd3;box-shadow:0 8px 30px rgba(60,38,23,.045)}
.aip-premium-coffee-detail__top{border-bottom:0;margin-bottom:10px;padding-bottom:5px}
.aip-premium-coffee-detail__top>a{display:inline-flex;align-items:center;gap:5px}
.aip-coffee-detail-hero{display:grid;grid-template-columns:78px minmax(0,1fr);gap:20px;align-items:start;padding:12px 0 22px;border-bottom:1px solid #eadfd5}
.aip-coffee-detail-hero__mark{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#f5ede2;color:#51250f}
.aip-coffee-detail-hero__mark svg{width:35px;height:35px}
.aip-coffee-detail-hero__copy>h4{font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;color:#9a663c;margin:0 0 5px}
.aip-coffee-detail-hero__lead{margin:0 0 9px;font-size:clamp(1.35rem,2.6vw,1.9rem);line-height:1.15;color:#2f160b}
.aip-coffee-detail-hero .aip-premium-coffee-detail__intro{margin:0;max-width:760px;color:#4d4844;line-height:1.62}

/* Notas sensoriais */
.aip-coffee-sensory-grid{gap:12px;margin-top:22px}
.aip-coffee-sensory-card{display:grid;grid-template-columns:52px 1fr;gap:13px;align-items:center;min-height:88px;padding:14px 16px;background:#fff;border-color:#e8e1da;box-shadow:0 4px 14px rgba(50,31,18,.035)}
.aip-coffee-sensory-card__mark{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#75431f;color:#fff;font-size:1.35rem;font-weight:700}
.aip-coffee-sensory-card h5{font-size:1.02rem;color:#2c211b}
.aip-coffee-sensory-card p{font-size:.92rem}
.aip-coffee-sensory-card--2 .aip-coffee-sensory-card__mark{background:#9a6b36}
.aip-coffee-sensory-card--3 .aip-coffee-sensory-card__mark{background:#c27719}
.aip-coffee-sensory-card--4 .aip-coffee-sensory-card__mark{background:#e79b22}
.aip-coffee-sensory-card--5 .aip-coffee-sensory-card__mark{background:#d95b58}
.aip-coffee-sensory-card--6 .aip-coffee-sensory-card__mark{background:#a06a72}
.aip-coffee-sensory-card--7 .aip-coffee-sensory-card__mark{background:#8c7ac1}
.aip-coffee-sensory-card--8 .aip-coffee-sensory-card__mark{background:#8c5936}
.aip-coffee-callout{border-radius:16px;padding:19px 20px}
.aip-coffee-callout--warm{background:linear-gradient(110deg,#fbf4e8,#fffaf3)}
.aip-coffee-callout--blue{background:linear-gradient(110deg,#eef6fa,#f8fbfd)}
.aip-coffee-callout--warning{background:linear-gradient(110deg,#fff1ef,#fff8f7)}
.aip-coffee-callout--green{background:linear-gradient(110deg,#f0f7ed,#f9fcf7)}

/* Estilos */
.aip-coffee-styles-list{gap:12px;margin-top:22px}
.aip-coffee-style-card{grid-template-columns:70px minmax(260px,.9fr) minmax(240px,1.05fr);padding:18px 20px;border-radius:18px;box-shadow:0 6px 18px rgba(52,31,18,.045)}
.aip-coffee-style-card__badge{width:60px;height:60px;font-size:1.85rem;border:3px solid rgba(255,255,255,.45);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.aip-coffee-style-card__metrics h5{font-size:1.08rem}
.aip-coffee-style-card__metrics dl>div{grid-template-columns:92px 1fr}
.aip-coffee-style-card__text{font-size:.94rem}
.aip-coffee-style-notes{gap:14px}
.aip-coffee-shopping{border-radius:17px;padding:20px;background:linear-gradient(110deg,#fff8ec,#fffdf8)}
.aip-coffee-shopping li::before{width:31px;height:31px}

/* Desktop: hub em duas colunas quando houver espaço útil */
@media (min-width:980px){
 .aip-premium-coffees-hub__list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .aip-premium-coffee-topic{min-height:112px}
 .aip-premium-coffees-curation{grid-template-columns:90px minmax(0,1fr)}
 .aip-premium-coffees-curation__icon{width:84px;height:84px}
}
@media (max-width:780px){
 .aip-premium-coffee-detail{padding:17px 14px}
 .aip-coffee-detail-hero{grid-template-columns:58px minmax(0,1fr);gap:13px;padding-bottom:18px}
 .aip-coffee-detail-hero__mark{width:54px;height:54px}
 .aip-coffee-detail-hero__mark svg{width:27px;height:27px}
 .aip-coffee-sensory-card{grid-template-columns:46px 1fr;padding:13px}
 .aip-coffee-sensory-card__mark{width:42px;height:42px}
 .aip-coffee-style-card{grid-template-columns:54px 1fr;padding:15px}
 .aip-coffee-style-card__badge{width:48px;height:48px;font-size:1.45rem}
}
@media (max-width:640px){
 .aip-premium-coffee-topic{grid-template-columns:48px minmax(0,1fr) 18px;min-height:92px;padding:14px 12px}
 .aip-premium-coffee-topic__icon{width:46px;height:46px}
 .aip-premium-coffee-topic__icon svg{width:24px;height:24px}
 .aip-premium-coffee-topic h4{font-size:1rem}
}


/* =========================================================
   J.3 UX IMAGENS — AIP 0.8.70
   ========================================================= */
.aip-premium-coffees-hub__list{
    grid-template-columns:1fr !important;
    gap:12px;
}
.aip-premium-coffee-topic{
    grid-template-columns:92px minmax(0,1fr) 28px;
    min-height:112px;
    padding:10px 18px 10px 10px;
}
.aip-premium-coffee-topic__image{
    width:88px;
    height:88px;
    overflow:hidden;
    border-radius:14px;
    background:#fff;
}
.aip-premium-coffee-topic__image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.aip-premium-coffee-topic__body{
    min-width:0;
}
.aip-premium-coffee-topic__title-row{
    margin-bottom:6px;
}
.aip-premium-coffee-topic h4{
    font-size:1.08rem;
}
.aip-premium-coffee-topic p{
    max-width:700px;
    font-size:.95rem;
}
.aip-premium-coffees-curation__cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    border:0;
    padding:9px 14px;
    border-radius:999px;
    background:#55270f;
    color:#fff;
    font-size:.85rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.02em;
    cursor:pointer;
    opacity:1;
}
.aip-premium-coffee-curation[hidden]{
    display:none !important;
}
.aip-coffee-detail-hero{
    grid-template-columns:132px minmax(0,1fr);
    align-items:center;
}
.aip-coffee-detail-hero__image{
    width:124px;
    height:124px;
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    border:1px solid #eee4dc;
}
.aip-coffee-detail-hero__image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
@media (min-width:980px){
    .aip-premium-coffees-hub__list{
        grid-template-columns:1fr !important;
    }
    .aip-premium-coffee-topic{
        min-height:116px;
    }
}
@media (max-width:640px){
    .aip-premium-coffee-topic{
        grid-template-columns:72px minmax(0,1fr) 18px;
        min-height:94px;
        padding:10px 11px 10px 9px;
        gap:11px;
    }
    .aip-premium-coffee-topic__image{
        width:68px;
        height:68px;
        border-radius:12px;
    }
    .aip-premium-coffee-topic h4{
        font-size:1rem;
    }
    .aip-premium-coffee-topic p{
        font-size:.9rem;
    }
    .aip-coffee-detail-hero{
        grid-template-columns:82px minmax(0,1fr);
        gap:13px;
    }
    .aip-coffee-detail-hero__image{
        width:78px;
        height:78px;
        border-radius:14px;
    }
}


/* =========================================================
   J.3 UX REFINO — AIP 0.8.70
   ========================================================= */

/* Notas: cards compactos, melhor distribuição e ícones consistentes */
.aip-coffee-sensory-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 14px !important;
    margin:22px 0 !important;
}
.aip-coffee-sensory-card{
    min-height:82px !important;
    margin:0 !important;
    padding:13px 15px !important;
    grid-template-columns:50px minmax(0,1fr) !important;
    align-items:center;
}
.aip-coffee-sensory-card__mark{
    width:46px !important;height:46px !important;
    font-size:1.15rem !important;
    border:2px solid rgba(255,255,255,.7);
    box-shadow:0 3px 9px rgba(55,31,17,.12);
}
.aip-coffee-sensory-card h5{margin:0 0 4px!important;font-size:1rem!important}
.aip-coffee-sensory-card p{margin:0!important;line-height:1.45!important}

/* Estilos: reduzir vazios e equilibrar ícone, métricas e texto */
.aip-coffee-styles-list{gap:14px!important}
.aip-coffee-style-card{
    margin:0!important;
    min-height:146px;
    align-items:center;
    grid-template-columns:72px minmax(245px,.95fr) minmax(220px,1fr)!important;
    gap:18px!important;
}
.aip-coffee-style-card__badge{
    width:58px!important;height:58px!important;
    display:grid;place-items:center;
    line-height:1;
}
.aip-coffee-style-card__metrics dl{margin-bottom:0!important}
.aip-coffee-style-card__text{align-self:stretch;display:flex;align-items:center}

/* Checklist interativo */
.aip-coffee-shopping-guide--interactive{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin:22px 0 16px;
}
.aip-coffee-shopping-guide--interactive .aip-coffee-shopping-step{
    position:relative;
    display:grid;
    grid-template-columns:34px 34px minmax(0,1fr);
    gap:11px;
    align-items:start;
    min-height:0;
    padding:14px 16px;
    cursor:pointer;
    transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.aip-coffee-shopping-step__input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.aip-coffee-shopping-step__check{
    width:30px;height:30px;border:2px solid #cbbcaf;border-radius:8px;
    display:grid;place-items:center;color:transparent;background:#fff;
    font-size:18px;font-weight:900;transition:.18s ease;
}
.aip-coffee-shopping-step__number{
    width:30px!important;height:30px!important;flex-basis:30px!important;
    background:#f4eadf!important;color:#8b542c!important;
}
.aip-coffee-shopping-step__content{display:block}
.aip-coffee-shopping-step__content strong{
    display:block;margin:2px 0 4px;color:#2e1a10;font-size:1.02rem
}
.aip-coffee-shopping-step__content>span{
    display:block;color:#5a504a;line-height:1.48;font-size:.93rem
}
.aip-coffee-shopping-step:has(.aip-coffee-shopping-step__input:checked){
    border-color:#8bb39d;background:#f4faf6;box-shadow:0 4px 14px rgba(30,92,62,.07)
}
.aip-coffee-shopping-step__input:checked + .aip-coffee-shopping-step__check{
    background:#28724e;border-color:#28724e;color:#fff
}
.aip-coffee-checklist-status{
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    padding:15px 17px;border-radius:14px;background:#173f32;color:#fff
}
.aip-coffee-checklist-status>div{display:flex;flex-direction:column;gap:3px}
.aip-coffee-checklist-status strong{font-size:.98rem}
.aip-coffee-checklist-status span[data-aip-coffee-check-message]{font-size:.84rem;opacity:.86}
.aip-coffee-checklist-reset{
    flex:0 0 auto;border:1px solid rgba(255,255,255,.5);border-radius:999px;
    background:transparent;color:#fff;padding:7px 11px;font-weight:700;font-size:.78rem;cursor:pointer
}

/* CTA curadoria */
[data-aip-coffee-curation-open]{pointer-events:auto!important;position:relative;z-index:2}
#aip-premium-coffee-curation[hidden]{display:none!important}

@media(max-width:760px){
    .aip-coffee-sensory-grid{grid-template-columns:1fr}
    .aip-coffee-style-card{grid-template-columns:56px minmax(0,1fr)!important}
    .aip-coffee-style-card__text{grid-column:2;border-left:0!important;border-top:1px solid #eee2d8;padding:11px 0 0!important;margin-top:3px}
    .aip-coffee-checklist-status{align-items:flex-start;flex-direction:column}
}


/* =========================================================
   J.3 NOTAS SENSORIAIS + CURADORIA — AIP 0.8.70
   ========================================================= */

/* Curadoria: estado fechado por padrão e abertura nativa pelo hash */
#aip-premium-coffee-curation{
    display:none;
}
#aip-premium-coffee-curation:target{
    display:block;
}
.aip-premium-coffees-curation__cta{
    text-decoration:none;
}
.aip-premium-coffees-hub.is-detail-view > #aip-premium-coffee-curation:target{
    display:none !important;
}

/* Guia prático de percepção */
.aip-sensory-practice{
    margin:24px 0 18px;
    padding:22px;
    border:1px solid #e5d7c9;
    border-radius:18px;
    background:linear-gradient(145deg,#fffaf4 0%,#ffffff 58%,#f5faf7 100%);
}
.aip-sensory-practice__header{
    margin-bottom:18px;
}
.aip-sensory-practice__header>span{
    display:inline-flex;
    padding:4px 9px;
    margin-bottom:7px;
    border-radius:999px;
    background:#8e5d33;
    color:#fff;
    font-size:.72rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.aip-sensory-practice__header h5{
    margin:0 0 7px;
    color:#32190e;
    font-size:1.25rem;
}
.aip-sensory-practice__header p{
    margin:0;
    max-width:760px;
    color:#62564f;
    line-height:1.55;
}
.aip-sensory-practice__steps{
    display:grid;
    gap:10px;
}
.aip-sensory-practice__step{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    padding:13px 14px;
    border:1px solid #ebdfd3;
    border-radius:14px;
    background:#fff;
}
.aip-sensory-practice__step>span{
    width:30px;height:30px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#9a663c;
    color:#fff;
    font-size:.8rem;
    font-weight:800;
}
.aip-sensory-practice__step strong{
    display:block;
    margin:1px 0 4px;
    color:#322117;
}
.aip-sensory-practice__step p{
    margin:0;
    color:#5e5550;
    line-height:1.5;
    font-size:.92rem;
}
.aip-sensory-practice__check,
.aip-sensory-practice__flavors{
    margin-top:16px;
    padding:16px;
    border-radius:14px;
    background:#f8f5f1;
}
.aip-sensory-practice__check h6,
.aip-sensory-practice__flavors h6{
    margin:0 0 10px;
    color:#392117;
    font-size:1rem;
}
.aip-sensory-practice__check{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px 12px;
}
.aip-sensory-practice__check h6{
    grid-column:1/-1;
}
.aip-sensory-practice__check label{
    display:flex;
    align-items:center;
    gap:7px;
    color:#544b45;
    font-size:.9rem;
    cursor:pointer;
}
.aip-sensory-practice__check input{
    width:17px;height:17px;
    accent-color:#2f7453;
}
.aip-sensory-practice__flavors p{
    margin:-4px 0 11px;
    color:#74675f;
    font-size:.84rem;
}
.aip-sensory-practice__flavors label{
    display:inline-flex;
    margin:0 6px 7px 0;
    cursor:pointer;
}
.aip-sensory-practice__flavors input{
    position:absolute;
    opacity:0;
}
.aip-sensory-practice__flavors label span{
    display:inline-flex;
    padding:7px 10px;
    border:1px solid #dfc9b7;
    border-radius:999px;
    background:#fff;
    color:#60371f;
    font-size:.82rem;
    font-weight:700;
    transition:.15s ease;
}
.aip-sensory-practice__flavors input:checked + span{
    background:#6b3a1f;
    border-color:#6b3a1f;
    color:#fff;
}
.aip-sensory-practice__repertoire{
    margin-top:14px;
    padding:15px 16px;
    border-left:4px solid #85a873;
    border-radius:10px;
    background:#f2f8ef;
}
.aip-sensory-practice__repertoire strong{
    color:#345b2c;
}
.aip-sensory-practice__repertoire p{
    margin:5px 0 0;
    color:#52614d;
    line-height:1.5;
    font-size:.9rem;
}
.aip-sensory-practice__diary{
    margin-top:15px;
    border:0;
    border-radius:999px;
    padding:10px 16px;
    background:#173f32;
    color:#fff;
    font-weight:800;
    cursor:pointer;
}
@media(max-width:760px){
    .aip-sensory-practice{padding:17px 14px}
    .aip-sensory-practice__check{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
    .aip-sensory-practice__check{grid-template-columns:1fr}
}


/* =========================================================
   J.3 GUIA SENSORIAL CONSOLIDADO + CURADORIA NATIVA — AIP 0.8.70
   ========================================================= */

/* Cafés para conhecer: abertura nativa e robusta com details/summary */
.aip-premium-coffees-curation-shell{
    margin-top:22px;
}
.aip-premium-coffees-curation-shell > summary{
    list-style:none;
}
.aip-premium-coffees-curation-shell > summary::-webkit-details-marker{
    display:none;
}
.aip-premium-coffees-curation-shell > .aip-premium-coffees-curation{
    margin-top:0;
    cursor:pointer;
    user-select:none;
}
.aip-premium-coffees-curation-shell .aip-premium-coffees-curation__cta .is-open{
    display:none;
}
.aip-premium-coffees-curation-shell[open] .aip-premium-coffees-curation__cta .is-closed{
    display:none;
}
.aip-premium-coffees-curation-shell[open] .aip-premium-coffees-curation__cta .is-open{
    display:inline;
}
.aip-premium-coffees-curation-shell:not([open]) > #aip-premium-coffee-curation{
    display:none !important;
}
.aip-premium-coffees-curation-shell[open] > #aip-premium-coffee-curation{
    display:block !important;
    margin-top:12px;
    padding:22px 20px 0;
    border:1px solid #eadbcb;
    border-radius:18px;
    background:#fff;
}
.aip-premium-coffees-hub.is-detail-view > .aip-premium-coffees-curation-shell{
    display:none !important;
}

/* Fluxo sensorial */
.aip-sensory-flow{
    display:grid;
    gap:12px;
}
.aip-sensory-stage{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:12px;
    padding:16px;
    border:1px solid #e9ddd2;
    border-radius:16px;
    background:#fff;
}
.aip-sensory-stage__number{
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#9a663c;
    color:#fff;
    font-weight:800;
    font-size:.84rem;
}
.aip-sensory-stage__body h6{
    margin:2px 0 6px;
    color:#2f1c12;
    font-size:1rem;
}
.aip-sensory-stage__body > p{
    margin:0 0 12px;
    color:#5f554f;
    line-height:1.52;
    font-size:.93rem;
}
.aip-sensory-stage--summary{
    border-color:#cdded5;
    background:linear-gradient(145deg,#f7fbf8,#fff);
}
.aip-sensory-stage--summary .aip-sensory-stage__number{
    background:#2f7453;
}

/* Chips */
.aip-sensory-stage__chips{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
}
.aip-sensory-stage__prompt{
    width:100%;
    margin-bottom:2px;
    color:#6c5c53;
    font-size:.84rem;
    font-style:italic;
}
.aip-sensory-chip{
    position:relative;
    display:inline-flex;
    cursor:pointer;
}
.aip-sensory-chip input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.aip-sensory-chip span{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:6px 10px;
    border:1px solid #dec8b6;
    border-radius:999px;
    background:#fff;
    color:#63381f;
    font-size:.8rem;
    font-weight:700;
    transition:.15s ease;
}
.aip-sensory-chip input:checked + span{
    border-color:#6c3c20;
    background:#6c3c20;
    color:#fff;
    box-shadow:0 3px 9px rgba(80,44,24,.12);
}
.aip-sensory-chip.is-none input:checked + span{
    border-color:#68736e;
    background:#68736e;
}

/* Estrutura sensorial: doçura, acidez, amargor e corpo */
.aip-sensory-structure{
    display:flex;
    flex-wrap:wrap;
    gap:9px 12px;
}
.aip-sensory-structure__item{
    display:flex;
    align-items:center;
    gap:7px;
    min-height:34px;
    padding:6px 10px;
    border:1px solid #e1d7cf;
    border-radius:10px;
    background:#fbf9f7;
    color:#493f39;
    font-size:.88rem;
    cursor:pointer;
}
.aip-sensory-structure__item input{
    width:17px;height:17px;
    accent-color:#2f7453;
}

/* Tooltip único reutilizado em Etapa 3 e Resumo */
.aip-sensory-help{
    position:relative;
    display:inline-grid;
    place-items:center;
    width:19px;height:19px;
    border-radius:50%;
    color:#365c4c;
    font-size:.86rem;
    cursor:help;
    outline:none;
}
.aip-sensory-help__text{
    position:absolute;
    z-index:20;
    left:50%;
    bottom:calc(100% + 9px);
    width:260px;
    max-width:70vw;
    padding:9px 10px;
    border-radius:9px;
    background:#243d34;
    color:#fff;
    font-size:.76rem;
    font-weight:500;
    line-height:1.42;
    box-shadow:0 8px 20px rgba(0,0,0,.15);
    transform:translateX(-50%) translateY(4px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:.15s ease;
}
.aip-sensory-help:hover .aip-sensory-help__text,
.aip-sensory-help:focus .aip-sensory-help__text{
    opacity:1;
    visibility:visible;
    transform:translateX(-50%) translateY(0);
}

/* Resumo inteligente */
.aip-sensory-summary{
    display:grid;
    gap:12px;
    margin-top:14px;
}
.aip-sensory-summary__block{
    padding:14px;
    border:1px solid #dce7e1;
    border-radius:13px;
    background:#fff;
}
.aip-sensory-summary__block > strong{
    display:block;
    margin-bottom:9px;
    color:#244638;
    font-size:.93rem;
}
.aip-sensory-summary__hint{
    margin:-4px 0 10px;
    color:#718078;
    font-size:.8rem;
}
.aip-sensory-stage__chips--single .aip-sensory-chip span{
    border-style:dashed;
}
.aip-sensory-stage__chips--single .aip-sensory-chip input:checked + span{
    border-style:solid;
}

/* CTA Diário */
.aip-sensory-practice__diary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:16px;
}
@media(max-width:680px){
    .aip-sensory-stage{
        grid-template-columns:32px minmax(0,1fr);
        gap:10px;
        padding:14px 12px;
    }
    .aip-sensory-stage__number{
        width:30px;height:30px;
    }
    .aip-sensory-chip span{
        min-height:30px;
        padding:5px 9px;
        font-size:.77rem;
    }
    .aip-sensory-help__text{
        left:auto;
        right:-20px;
        transform:none;
    }
    .aip-sensory-help:hover .aip-sensory-help__text,
    .aip-sensory-help:focus .aip-sensory-help__text{
        transform:none;
    }
}


/* =========================================================
   NOTAS SENSORIAIS — CARDS PREMIUM + LIMITE 3 — AIP 0.8.70
   ========================================================= */
.aip-coffee-sensory-grid{
    gap:14px;
}
.aip-coffee-sensory-card{
    position:relative;
    overflow:hidden;
    min-height:112px;
    padding:18px 18px 18px 76px;
    border:1px solid rgba(126,83,51,.18);
    border-radius:18px;
    background:linear-gradient(145deg,#fff 0%,#fffdfb 68%,#faf5ef 100%);
    box-shadow:0 8px 22px rgba(73,45,26,.07), inset 0 1px 0 rgba(255,255,255,.9);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.aip-coffee-sensory-card:hover{
    transform:translateY(-2px);
    border-color:rgba(126,83,51,.28);
    box-shadow:0 12px 28px rgba(73,45,26,.11);
}
.aip-coffee-sensory-card__mark{
    position:absolute;
    left:17px;
    top:19px;
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:50%;
    color:#fff;
    font-size:0;
    box-shadow:0 7px 16px rgba(73,45,26,.18), inset 0 1px 0 rgba(255,255,255,.35);
}
.aip-coffee-sensory-card__mark::before,
.aip-coffee-sensory-card__mark::after{
    content:"";
    display:block;
    position:absolute;
}
/* pictogramas CSS refinados por família */
.aip-coffee-sensory-card:nth-child(1) .aip-coffee-sensory-card__mark::before{
    width:18px;height:18px;border:2px solid #fff;border-radius:2px;
    background:linear-gradient(90deg,transparent 45%,#fff 46%,#fff 54%,transparent 55%),
               linear-gradient(0deg,transparent 45%,#fff 46%,#fff 54%,transparent 55%);
}
.aip-coffee-sensory-card:nth-child(2) .aip-coffee-sensory-card__mark::before{
    width:18px;height:13px;border:2px solid #fff;border-radius:55% 55% 45% 45%;
}
.aip-coffee-sensory-card:nth-child(2) .aip-coffee-sensory-card__mark::after{
    width:10px;height:1.5px;background:#fff;transform:rotate(-7deg);
}
.aip-coffee-sensory-card:nth-child(3) .aip-coffee-sensory-card__mark::before{
    width:16px;height:16px;border:2px solid #fff;transform:rotate(30deg);
    border-radius:3px;
}
.aip-coffee-sensory-card:nth-child(4) .aip-coffee-sensory-card__mark::before{
    width:19px;height:19px;border:2px solid #fff;border-radius:50%;
    background:repeating-conic-gradient(from 0deg,transparent 0 28deg,#fff 29deg 31deg);
}
.aip-coffee-sensory-card:nth-child(5) .aip-coffee-sensory-card__mark::before{
    width:9px;height:9px;border:2px solid #fff;border-radius:50%;
    box-shadow:-7px 5px 0 -1px rgba(255,255,255,.95),7px 5px 0 -1px rgba(255,255,255,.95);
}
.aip-coffee-sensory-card:nth-child(6) .aip-coffee-sensory-card__mark::before{
    width:18px;height:18px;border:2px solid #fff;border-radius:48% 52% 50% 50%;
}
.aip-coffee-sensory-card:nth-child(6) .aip-coffee-sensory-card__mark::after{
    width:6px;height:3px;border:2px solid #fff;border-bottom:0;border-radius:8px 8px 0 0;top:11px;
}
.aip-coffee-sensory-card:nth-child(7) .aip-coffee-sensory-card__mark::before{
    width:8px;height:8px;border-radius:50%;background:#fff;
    box-shadow:0 -7px 0 -1px #fff,0 7px 0 -1px #fff,7px 0 0 -1px #fff,-7px 0 0 -1px #fff,5px 5px 0 -1px #fff,-5px 5px 0 -1px #fff,5px -5px 0 -1px #fff,-5px -5px 0 -1px #fff;
}
.aip-coffee-sensory-card:nth-child(8) .aip-coffee-sensory-card__mark::before{
    width:18px;height:18px;
    background:linear-gradient(45deg,transparent 43%,#fff 44% 56%,transparent 57%),
               linear-gradient(-45deg,transparent 43%,#fff 44% 56%,transparent 57%);
    transform:rotate(45deg);
}
.aip-coffee-sensory-card h5{
    margin:0 0 6px;
    color:#352016;
    font-size:.98rem;
    letter-spacing:-.01em;
}
.aip-coffee-sensory-card p{
    margin:0;
    color:#66564c;
    line-height:1.48;
    font-size:.9rem;
}

/* limite de famílias */
.aip-sensory-stage__prompt small{
    margin-left:5px;
    color:#8b776b;
    font-style:normal;
    font-weight:600;
}
.aip-sensory-limit-row{
    display:flex;
    align-items:center;
    gap:8px;
    margin:-2px 0 9px;
    color:#7b6a61;
    font-size:.8rem;
}
[data-aip-sensory-limit-note].is-limit,
[data-aip-sensory-summary-limit-note].is-limit{
    color:#7b3f20;
    font-weight:800;
}
.aip-sensory-chip input:disabled + span{
    opacity:.42;
    cursor:not-allowed;
    filter:saturate(.55);
}
.aip-sensory-chip:has(input:disabled){
    cursor:not-allowed;
}
@media(max-width:620px){
    .aip-coffee-sensory-card{
        min-height:102px;
        padding:16px 14px 16px 68px;
    }
    .aip-coffee-sensory-card__mark{
        left:14px;top:17px;width:42px;height:42px;
    }
}


/* =========================================================
   NOTAS SENSORIAIS — CORREÇÃO RESPONSIVA DOS CARDS — AIP 0.8.70
   ========================================================= */

/* Desktop/tablet: ícone em coluna própria, nunca sobre o texto */
.aip-coffee-sensory-card{
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:13px !important;
    row-gap:4px !important;
    align-items:start !important;
    min-width:0 !important;
    min-height:112px !important;
    padding:17px !important;
}
.aip-coffee-sensory-card__mark{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
    width:46px !important;
    height:46px !important;
    margin:0 !important;
}
.aip-coffee-sensory-card h5{
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
    margin:1px 0 2px !important;
    line-height:1.28 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}
.aip-coffee-sensory-card p{
    grid-column:2 !important;
    grid-row:2 !important;
    min-width:0 !important;
    margin:0 !important;
    line-height:1.48 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}

/* Quando a largura útil fica pequena, abandonar as duas colunas.
   Evita cards estreitos e palavras quebradas como no print. */
@media(max-width:820px){
    .aip-coffee-sensory-grid{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }
    .aip-coffee-sensory-card{
        min-height:96px !important;
        grid-template-columns:44px minmax(0,1fr) !important;
        padding:15px !important;
        column-gap:12px !important;
    }
    .aip-coffee-sensory-card__mark{
        width:42px !important;
        height:42px !important;
    }
}

/* Celular: mantém leitura horizontal confortável */
@media(max-width:480px){
    .aip-coffee-sensory-card{
        grid-template-columns:40px minmax(0,1fr) !important;
        min-height:auto !important;
        padding:14px 13px !important;
        column-gap:11px !important;
        border-radius:15px !important;
    }
    .aip-coffee-sensory-card__mark{
        width:38px !important;
        height:38px !important;
    }
    .aip-coffee-sensory-card h5{
        font-size:.94rem !important;
    }
    .aip-coffee-sensory-card p{
        font-size:.86rem !important;
        line-height:1.42 !important;
    }
}


/* =========================================================
   GUIA SENSORIAL — PADRONIZAÇÃO VISUAL ETAPAS 1 A 5 — AIP 0.8.70
   ========================================================= */

/* Todas as etapas passam a usar o mesmo padrão visual da etapa 5 */
.aip-sensory-stage{
    border-color:#cdded5 !important;
    background:linear-gradient(145deg,#f7fbf8,#fff) !important;
}

.aip-sensory-stage__number{
    background:#2f7453 !important;
}

/* Mantém a etapa 5 no mesmo padrão, sem destaque cromático adicional */
.aip-sensory-stage--summary{
    border-color:#cdded5 !important;
    background:linear-gradient(145deg,#f7fbf8,#fff) !important;
}

.aip-sensory-stage--summary .aip-sensory-stage__number{
    background:#2f7453 !important;
}


/* =========================================================
   NOTAS SENSORIAIS — EXPLICAÇÃO CONTEXTUAL DOS CARDS — AIP 0.8.70
   ========================================================= */
.aip-coffee-sensory-card{
    display:block !important;
    padding:0 !important;
}
.aip-coffee-sensory-card > summary{
    list-style:none;
}
.aip-coffee-sensory-card > summary::-webkit-details-marker{
    display:none;
}
.aip-coffee-sensory-card__summary{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 24px;
    column-gap:13px;
    align-items:start;
    min-height:110px;
    padding:17px;
    cursor:pointer;
}
.aip-coffee-sensory-card__summary .aip-coffee-sensory-card__mark{
    grid-column:1 !important;
    grid-row:1 !important;
}
.aip-coffee-sensory-card__main{
    grid-column:2;
    min-width:0;
}
.aip-coffee-sensory-card__main h5,
.aip-coffee-sensory-card__main p{
    grid-column:auto !important;
    grid-row:auto !important;
}
.aip-coffee-sensory-card__info{
    grid-column:3;
    width:22px;height:22px;
    display:grid;
    place-items:center;
    margin-top:1px;
    border:1px solid #d8c6b8;
    border-radius:50%;
    background:#fff;
    color:#6d442a;
    font-size:.72rem;
    font-weight:800;
    transition:.16s ease;
}
.aip-coffee-sensory-card:hover .aip-coffee-sensory-card__info,
.aip-coffee-sensory-card[open] .aip-coffee-sensory-card__info{
    background:#6d442a;
    border-color:#6d442a;
    color:#fff;
}
.aip-coffee-sensory-card__context{
    margin:0 16px 16px 77px;
    padding:12px 13px;
    border-left:3px solid #9b6a45;
    border-radius:0 10px 10px 0;
    background:#faf5ef;
}
.aip-coffee-sensory-card__context p{
    margin:0 !important;
    color:#5b4d44;
    font-size:.85rem;
    line-height:1.5;
}
.aip-coffee-sensory-card[open]{
    border-color:rgba(126,83,51,.30);
    box-shadow:0 12px 28px rgba(73,45,26,.10);
}
.aip-coffee-sensory-reference{
    margin:16px 0 4px;
    padding:14px 16px;
    border:1px solid #d8e5dc;
    border-radius:13px;
    background:#f5faf7;
}
.aip-coffee-sensory-reference strong{
    color:#315c49;
    font-size:.9rem;
}
.aip-coffee-sensory-reference p{
    margin:5px 0 0;
    color:#56655e;
    font-size:.86rem;
    line-height:1.5;
}
@media(max-width:820px){
    .aip-coffee-sensory-card__summary{
        grid-template-columns:44px minmax(0,1fr) 22px;
        min-height:94px;
        padding:15px;
        column-gap:12px;
    }
    .aip-coffee-sensory-card__context{
        margin:0 14px 14px 71px;
    }
}
@media(max-width:480px){
    .aip-coffee-sensory-card__summary{
        grid-template-columns:40px minmax(0,1fr) 20px;
        min-height:auto;
        padding:14px 13px;
        column-gap:10px;
    }
    .aip-coffee-sensory-card__context{
        margin:0 12px 13px;
    }
}


/* =========================================================
   CAFÉS > ORIGEM E REGIÃO — CTA PARA CONHECIMENTO > REGIÕES
   AIP 0.8.70
   ========================================================= */
.aip-coffee-regions-cta{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-top:12px;
    padding:9px 14px;
    border:1px solid #2f7453;
    border-radius:999px;
    background:#2f7453;
    color:#fff;
    font:inherit;
    font-size:.86rem;
    font-weight:800;
    line-height:1.2;
    cursor:pointer;
    box-shadow:0 5px 13px rgba(47,116,83,.14);
    transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.aip-coffee-regions-cta:hover,
.aip-coffee-regions-cta:focus-visible{
    background:#245d42;
    border-color:#245d42;
    transform:translateY(-1px);
    box-shadow:0 7px 16px rgba(47,116,83,.20);
}
.aip-coffee-regions-cta span{
    font-size:1rem;
    line-height:1;
}

/* L15.1 — Curadoria V1: 1 produto -> N ofertas comerciais */
.aip-premium-coffee-format-nav button{padding:7px 10px;border:1px solid #dfcbb8;border-radius:999px;background:#fffaf5;color:#63381f;font-size:.78rem;font-weight:700;cursor:pointer}
.aip-premium-coffee-format-nav button.is-active{background:#1b3b2b;border-color:#1b3b2b;color:#fff}
.aip-premium-coffee-format__heading>button{border:0;background:transparent;color:#6a3518;font-size:.76rem;font-weight:700;cursor:pointer}
.aip-premium-market-product__brand{margin:0 0 5px;color:#766d67;font-size:.76rem;font-weight:600}
.aip-premium-market-offers{min-width:250px;display:grid;gap:7px;padding-left:12px;border-left:1px solid #eee2d7}
.aip-premium-market-offers__title{font-size:.72rem;font-weight:800;color:#1b3b2b;text-transform:uppercase;letter-spacing:.04em}
.aip-premium-market-offer{display:grid;grid-template-columns:minmax(90px,1fr) auto auto;gap:10px;align-items:center}
.aip-premium-market-offer__seller{font-size:.78rem;font-weight:700;color:#3d3a37}
.aip-premium-market-offer strong{font-size:.8rem;white-space:nowrap}
.aip-premium-market-offer a{display:inline-flex;justify-content:center;padding:7px 10px;border-radius:8px;background:#1b3b2b;color:#fff;font-size:.75rem;font-weight:700;text-decoration:none;white-space:nowrap}
.aip-premium-coffee-product{grid-template-columns:84px minmax(0,1fr) minmax(250px,auto)}
@media(max-width:760px){.aip-premium-coffee-product,.aip-premium-market-product--multi{grid-template-columns:70px minmax(0,1fr)}.aip-premium-market-offers{grid-column:1/-1;border-left:0;border-top:1px solid #eee2d7;padding:10px 0 0;min-width:0}.aip-premium-market-offer{grid-template-columns:1fr auto}.aip-premium-market-offer a{grid-column:1/-1}.aip-premium-coffee-product__image{width:70px;height:70px}}

/* 0.8.72 — Curadoria complementar de equipamentos (fora dos 16 oficiais) */
.aip-premium-equipment-curated{margin-top:28px;padding-top:22px;border-top:1px solid rgba(27,59,43,.14)}
.aip-premium-equipment-curated__header{margin-bottom:16px}.aip-premium-equipment-curated__header h4{margin:4px 0 6px}.aip-premium-equipment-curated__header p{max-width:720px}
.aip-premium-equipment-curated__price-note{margin:12px 0 0;font-size:12px;opacity:.72}


/* 0.8.76 — Produtos Selecionados: cards horizontais e imagem normalizada */
.aip-premium-selected-products{scroll-margin-top:24px}
.aip-premium-selected-products__header{margin-bottom:18px}
.aip-premium-selected-products__header h3{margin:4px 0 7px;font-size:1.55rem}
.aip-premium-selected-products__header p{margin:0;max-width:760px;line-height:1.55}
.aip-premium-selected-category-nav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 18px}
.aip-premium-selected-category-nav button{padding:8px 12px;border:1px solid #dfcbb8;border-radius:999px;background:#fffaf5;color:#63381f;font-weight:700;cursor:pointer}
.aip-premium-selected-category-nav button.is-active{background:#1b3b2b;border-color:#1b3b2b;color:#fff}
.aip-premium-selected-category__intro{margin:0 0 14px}.aip-premium-selected-category__intro h4{margin:0 0 5px}.aip-premium-selected-category__intro p{margin:0}
.aip-premium-selected-product-list{display:grid;gap:14px}
.aip-premium-selected-product{overflow:hidden;border:1px solid #e8ddd3;border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(63,43,29,.045)}
.aip-premium-selected-product__header{padding:15px 17px 11px;border-bottom:1px solid #f0e7df}
.aip-premium-selected-product__header h5{margin:0;font-size:1rem;line-height:1.35;color:#28231f;overflow-wrap:anywhere}
.aip-premium-selected-product__header p{margin:4px 0 0;color:#766d67;font-size:.8rem;font-weight:600}
.aip-premium-selected-product__content{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;padding:16px 17px 18px;align-items:stretch}
.aip-premium-selected-product__image{width:190px;height:190px;display:grid;place-items:center;position:relative;overflow:hidden;border:1px solid #f0e8e0;border-radius:12px;background:#fff}
.aip-premium-selected-product__image img{display:block;width:82%;height:82%;max-width:82%;max-height:82%;object-fit:contain;object-position:center;padding:0;box-sizing:border-box}
.aip-premium-selected-product__placeholder{display:none;color:#8a7a70}.aip-premium-selected-product__image:not(:has(img)) .aip-premium-selected-product__placeholder,.aip-premium-selected-product__image.is-placeholder .aip-premium-selected-product__placeholder{display:grid}
.aip-premium-selected-product__info{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:12px}
.aip-premium-selected-product__features{margin:0;color:#5f5751;font-size:.86rem;line-height:1.55;overflow-wrap:anywhere}
.aip-premium-selected-product .aip-premium-market-offers{min-width:0;padding:12px 0 0;border-left:0;border-top:1px solid #eee2d7}
.aip-premium-selected-product .aip-premium-market-offer{grid-template-columns:minmax(100px,1fr) auto auto}
.aip-premium-selected-products__disclosure{display:flex;gap:9px;margin-top:18px;padding:11px 13px;border:1px solid #ead3ae;border-radius:11px;background:#fffaf2}
.aip-premium-selected-products__disclosure p{margin:0;font-size:.78rem;line-height:1.5}
@media(max-width:680px){
 .aip-premium-selected-product__content{grid-template-columns:120px minmax(0,1fr);gap:12px;padding:13px}
 .aip-premium-selected-product__image{width:120px;height:135px}
 .aip-premium-selected-product .aip-premium-market-offer{grid-template-columns:1fr auto;gap:7px}
 .aip-premium-selected-product .aip-premium-market-offer a{grid-column:1/-1;justify-self:start}
}
@media(max-width:430px){
 .aip-premium-selected-product__content{grid-template-columns:100px minmax(0,1fr)}
 .aip-premium-selected-product__image{width:100px;height:118px}
}

/* 0.8.77 — Hotfix mobile: Produtos Selecionados */
@media(max-width:680px){
 .aip-premium-selected-products{min-width:0!important;width:100%!important;overflow:visible!important}
 .aip-premium-selected-product-list,.aip-premium-selected-product{min-width:0!important;width:100%!important}
 .aip-premium-selected-product__content{display:flex!important;flex-direction:column!important;gap:12px!important;padding:13px!important;min-width:0!important}
 .aip-premium-selected-product__image{width:100%!important;height:180px!important;max-width:none!important;flex:none!important}
 .aip-premium-selected-product__image img{width:90%!important;height:90%!important;max-width:90%!important;max-height:90%!important;object-fit:contain!important}
 .aip-premium-selected-product__info{width:100%!important;min-width:0!important;display:block!important}
 .aip-premium-selected-product__features{width:100%!important;overflow-wrap:normal!important;word-break:normal!important;white-space:normal!important;line-height:1.5!important}
 .aip-premium-selected-product .aip-premium-market-offers{width:100%!important;min-width:0!important;margin-top:12px!important}
 .aip-premium-selected-product .aip-premium-market-offer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;width:100%!important}
 .aip-premium-selected-product .aip-premium-market-offer a{grid-column:1/-1!important;width:100%!important;box-sizing:border-box!important;justify-self:stretch!important;justify-content:center!important}
 .aip-premium-selected-products__disclosure{width:100%!important;box-sizing:border-box!important;padding:10px 11px!important;gap:7px!important}
 .aip-premium-selected-products__disclosure p{font-size:.76rem!important;line-height:1.42!important;word-break:normal!important;overflow-wrap:normal!important}
}

/* 0.8.78 — Mobile aprovado: cards mais largos e leitura vertical em Cafés/Produtos */
@media (max-width:680px){
 /* Aproveita melhor a largura útil da tela sem alterar desktop. */
 #aip-premium-knowledge-coffees .aip-premium-section__body,
 #aip-premium-knowledge-selected-products{
   width:100%!important;
   max-width:none!important;
   min-width:0!important;
   box-sizing:border-box!important;
 }

 /* Conhecimento > Cafés: card horizontal legível, sem coluna estreita de texto. */
 .aip-premium-coffees-hub__list{width:100%!important;min-width:0!important}
 .aip-premium-coffee-topic{
   width:100%!important;
   min-width:0!important;
   box-sizing:border-box!important;
   grid-template-columns:96px minmax(0,1fr) 22px!important;
   gap:14px!important;
   padding:14px!important;
   align-items:center!important;
 }
 .aip-premium-coffee-topic__image{width:92px!important;height:92px!important;min-width:92px!important}
 .aip-premium-coffee-topic__body{min-width:0!important;width:100%!important}
 .aip-premium-coffee-topic__title-row{display:flex!important;align-items:flex-start!important;gap:9px!important;min-width:0!important}
 .aip-premium-coffee-topic h4,
 .aip-premium-coffee-topic p{
   width:auto!important;
   max-width:none!important;
   min-width:0!important;
   word-break:normal!important;
   overflow-wrap:normal!important;
   white-space:normal!important;
 }
 .aip-premium-coffee-topic h4{font-size:1rem!important;line-height:1.28!important}
 .aip-premium-coffee-topic p{font-size:.91rem!important;line-height:1.48!important;margin-top:4px!important}

 /* Produtos Selecionados: padrão aprovado — imagem em linha própria e texto em largura total. */
 .aip-premium-selected-product{width:100%!important;max-width:none!important;box-sizing:border-box!important}
 .aip-premium-selected-product__header{padding:15px 16px 12px!important}
 .aip-premium-selected-product__content{padding:16px!important;gap:16px!important}
 .aip-premium-selected-product__image{height:210px!important;border-radius:14px!important}
 .aip-premium-selected-product__image img{width:88%!important;height:88%!important;max-width:88%!important;max-height:88%!important}
 .aip-premium-selected-product__features{font-size:.94rem!important;line-height:1.55!important;margin:0!important}
 .aip-premium-selected-product .aip-premium-market-offers{padding-top:14px!important}
}

@media (max-width:430px){
 .aip-premium-coffee-topic{grid-template-columns:86px minmax(0,1fr) 18px!important;gap:11px!important;padding:12px!important}
 .aip-premium-coffee-topic__image{width:82px!important;height:82px!important;min-width:82px!important}
 .aip-premium-selected-product__image{height:195px!important}
}

/* 0.8.79 — Conhecimento mobile: largura uniforme para todos os subitens */
@media (max-width:680px){
  #aip-premium-knowledge-methods,
  #aip-premium-knowledge-regions,
  #aip-premium-knowledge-equipment,
  #aip-premium-knowledge-accessories,
  #aip-premium-knowledge-coffees,
  #aip-premium-knowledge-selected-products,
  #aip-premium-knowledge-glossary{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Métodos: no celular deixa de ser uma faixa estreita/horizontal. */
  .aip-premium-method-catalog{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    overflow:visible!important;
    gap:10px!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:2px 0 6px!important;
  }
  .aip-premium-method-card{
    width:100%!important;
    min-width:0!important;
    min-height:82px!important;
    grid-template-columns:58px minmax(0,1fr) 20px!important;
    gap:12px!important;
    padding:11px 13px!important;
  }
  .aip-premium-method-card__figure{width:54px!important;height:54px!important}
  .aip-premium-method-card__body strong{font-size:.94rem!important;line-height:1.25!important}
  .aip-premium-method-card__body small{font-size:.76rem!important;line-height:1.35!important}

  /* Regiões: um card largo por linha. */
  .aip-premium-region-catalog{grid-template-columns:1fr!important;width:100%!important;gap:10px!important}
  .aip-premium-region-card{width:100%!important;min-width:0!important;box-sizing:border-box!important}

  /* Equipamentos e Acessórios: um card largo por linha. */
  .aip-premium-knowledge-equipment__grid,
  .aip-premium-accessories__grid{
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:12px!important;
  }
  .aip-premium-equipment-card,
  .aip-premium-accessory-card{
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .aip-premium-equipment-card__visual,
  .aip-premium-accessory-card__visual{height:180px!important}

  /* Glossário: entradas usam toda a largura útil. */
  .aip-premium-glossary__groups,
  .aip-premium-glossary-group,
  .aip-premium-glossary-group__items,
  .aip-premium-glossary-entry{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}

/* =========================================================
 * 0.8.80 — MOBILE GLOBAL V1
 * Revisão responsiva transversal do Premium.
 * Escopo exclusivo <= 760px. Desktop e lógica preservados.
 * ========================================================= */
@media (max-width:760px){
  /* 1. O viewport mobile passa a ser a referência real de largura. */
  html,body{max-width:100%;overflow-x:hidden!important}
  .aip-premium-area,
  .aip-dashboard-layout,
  .aip-dashboard-main,
  .aip-dashboard-content,
  .aip-dashboard-home,
  .aip-dashboard-content > *,
  .aip-premium-presentation,
  .aip-premium-module,
  .aip-premium-profile,
  .aip-premium-knowledge,
  .aip-premium-section,
  .aip-premium-section__body{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* 2. Margem lateral global única e confortável. */
  .aip-dashboard-layout{margin:0!important;border-radius:0!important}
  .aip-dashboard-topbar{padding-left:16px!important;padding-right:16px!important}
  .aip-dashboard-content{padding-left:10px!important;padding-right:10px!important}
  .aip-dashboard-content > .aip-premium-module,
  .aip-dashboard-content > .aip-premium-profile,
  .aip-dashboard-content > .aip-premium-knowledge{margin-top:22px!important}
  .aip-premium-presentation{padding-left:0!important;padding-right:0!important}

  /* 3. Containers internos não podem criar uma segunda coluna estreita. */
  .aip-premium-knowledge,
  .aip-premium-module,
  .aip-premium-profile{padding-left:12px!important;padding-right:12px!important}
  .aip-premium-knowledge__grid,
  .aip-premium-region-catalog,
  .aip-premium-knowledge-equipment__grid,
  .aip-premium-accessories__grid,
  .aip-premium-coffees-hub__list,
  .aip-premium-selected-product-list,
  .aip-premium-glossary__groups{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    grid-template-columns:1fr!important;
    box-sizing:border-box!important;
  }

  /* 4. Cards e painéis: largura total e quebra de texto natural. */
  .aip-dashboard-card,
  .aip-dashboard-quick,
  .aip-premium-knowledge-card,
  .aip-premium-method-card,
  .aip-premium-region-card,
  .aip-premium-equipment-card,
  .aip-premium-accessory-card,
  .aip-premium-coffee-topic,
  .aip-premium-selected-product,
  .aip-premium-glossary-entry,
  .aip-premium-recipe-card,
  .aip-premium-preparation-card,
  .aip-tool-panel,
  .aip-premium-history-card{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .aip-dashboard-card *,
  .aip-premium-module *,
  .aip-premium-knowledge *,
  .aip-premium-profile *{
    min-width:0;
  }
  .aip-premium-module p,
  .aip-premium-module h1,.aip-premium-module h2,.aip-premium-module h3,.aip-premium-module h4,.aip-premium-module h5,
  .aip-premium-knowledge p,
  .aip-premium-knowledge h1,.aip-premium-knowledge h2,.aip-premium-knowledge h3,.aip-premium-knowledge h4,.aip-premium-knowledge h5,
  .aip-premium-profile p,
  .aip-premium-profile h1,.aip-premium-profile h2,.aip-premium-profile h3,.aip-premium-profile h4{
    word-break:normal!important;
    overflow-wrap:break-word!important;
    white-space:normal!important;
  }

  /* 5. Conhecimento: uma coluna real em todos os catálogos. */
  .aip-premium-method-catalog{display:grid!important;grid-template-columns:1fr!important;width:100%!important;overflow:visible!important;gap:12px!important}
  .aip-premium-knowledge-equipment__grid,
  .aip-premium-accessories__grid{grid-template-columns:1fr!important;gap:12px!important}
  .aip-premium-equipment-card,
  .aip-premium-accessory-card{padding:14px!important;min-height:0!important}
  .aip-premium-equipment-card__visual,
  .aip-premium-accessory-card__visual{height:190px!important}

  /* 6. Cafés: evita imagem + texto espremendo a descrição. */
  .aip-premium-coffee-topic{grid-template-columns:92px minmax(0,1fr) 20px!important;gap:13px!important;padding:14px!important}
  .aip-premium-coffee-topic__image{width:88px!important;height:88px!important;min-width:88px!important}
  .aip-premium-coffee-topic__body{width:100%!important;min-width:0!important}

  /* 7. Produtos selecionados: composição vertical homologada. */
  .aip-premium-selected-product__content{display:flex!important;flex-direction:column!important;width:100%!important;padding:14px!important;gap:14px!important}
  .aip-premium-selected-product__image{width:100%!important;max-width:none!important;height:210px!important}
  .aip-premium-selected-product__info,
  .aip-premium-selected-product .aip-premium-market-offers{width:100%!important;min-width:0!important}

  /* 8. Formulários, botões e controles nunca ultrapassam o viewport. */
  .aip-premium-module input,
  .aip-premium-module select,
  .aip-premium-module textarea,
  .aip-premium-profile input,
  .aip-premium-profile select,
  .aip-premium-profile textarea{max-width:100%!important;box-sizing:border-box!important}
  img{max-width:100%;height:auto}

  /* 9. Barra inferior preservada e conteúdo nunca fica escondido por ela. */
  .aip-dashboard-main{padding-bottom:92px!important}
  .aip-dashboard-mobile-nav{width:100%!important;max-width:100vw!important;box-sizing:border-box!important}
}

@media (max-width:430px){
  .aip-dashboard-content{padding-left:8px!important;padding-right:8px!important}
  .aip-premium-knowledge,
  .aip-premium-module,
  .aip-premium-profile{padding-left:8px!important;padding-right:8px!important}
  .aip-premium-coffee-topic{grid-template-columns:82px minmax(0,1fr) 18px!important;gap:10px!important;padding:12px!important}
  .aip-premium-coffee-topic__image{width:78px!important;height:78px!important;min-width:78px!important}
  .aip-premium-selected-product__image{height:195px!important}
}

/* =========================================================
 * 0.8.81 — MOBILE RECIPE CARD
 * Correção visual exclusiva da Receita Recomendada <= 760px.
 * ========================================================= */
@media (max-width:760px){
  .aip-premium-recipe-card{
    padding:18px 14px 20px!important;
    width:100%!important;
    max-width:none!important;
  }
  .aip-premium-recipe-card__header{margin-bottom:20px!important;gap:12px!important}
  .aip-premium-recipe-card__method{font-size:clamp(2rem,10vw,2.55rem)!important;line-height:1.05!important}
  .aip-premium-recipe-parameters{grid-template-columns:1fr 1fr!important;width:100%!important}
  .aip-premium-recipe-parameter{
    min-height:116px!important;
    padding:14px 12px!important;
    gap:10px!important;
    align-items:center!important;
  }
  .aip-premium-recipe-parameter__icon{width:36px!important;height:36px!important;flex:0 0 36px!important}
  .aip-premium-recipe-parameter > div:last-child{min-width:0!important;flex:1 1 auto!important}
  .aip-premium-recipe-parameter__value{font-size:1.08rem!important;line-height:1.25!important;overflow-wrap:normal!important;word-break:normal!important}
  .aip-premium-recipe-parameter__unit{font-size:.76rem!important}
  .aip-premium-recipe-parameter__label{font-size:.78rem!important;line-height:1.25!important;overflow-wrap:normal!important;word-break:normal!important}
  .aip-premium-recipe-card__actions{margin-top:18px!important}
  .aip-premium-recipe-primary-action{width:100%!important;min-width:0!important;min-height:54px!important;position:relative!important;z-index:2!important;touch-action:manipulation!important;cursor:pointer!important}
}
@media (max-width:390px){
  .aip-premium-recipe-parameter{padding:12px 9px!important;gap:8px!important}
  .aip-premium-recipe-parameter__icon{width:32px!important;height:32px!important;flex-basis:32px!important}
  .aip-premium-recipe-parameter__value{font-size:1rem!important}
}

/* =========================================================
 * 0.8.83 — DESKTOP UX-01 / UX-02 / UX-03
 * Ajuste exclusivo >= 1001px:
 * - amplia e centraliza o Premium fora da largura estreita do tema;
 * - melhora o aproveitamento da área útil da Home;
 * - remove altura vazia imposta pela sidebar.
 * Mobile e componentes/funcionalidades permanecem inalterados.
 * ========================================================= */
@media (min-width:1001px){
  .aip-dashboard-layout{
    width:min(1120px,calc(100vw - 64px))!important;
    max-width:none!important;
    min-height:0!important;
    position:relative;
    left:50%;
    transform:translateX(-50%);
    margin-left:0!important;
    margin-right:0!important;
    grid-template-columns:210px minmax(0,1fr)!important;
  }

  .aip-dashboard-sidebar{
    min-height:0!important;
    align-self:stretch!important;
  }

  .aip-dashboard-topbar{
    padding-left:34px!important;
    padding-right:34px!important;
  }

  .aip-dashboard-content{
    padding-left:34px!important;
    padding-right:34px!important;
    padding-bottom:34px!important;
  }

  .aip-dashboard-home,
  .aip-dashboard-maincards,
  .aip-dashboard-quick,
  .aip-dashboard-context-grid{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .aip-dashboard-maincards,
  .aip-dashboard-context-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:18px!important;
  }

  .aip-dashboard-card,
  .aip-dashboard-context-card{
    width:100%!important;
    min-width:0!important;
  }

  .aip-dashboard-quick__grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* =========================================================
 * 0.8.84 — REGIÕES: cards internos Premium (desktop)
 * Ajuste visual exclusivo >= 1001px.
 * Não altera conteúdo, imagens, links, motor, receitas ou mobile.
 * ========================================================= */
@media (min-width:1001px){
  .aip-premium-region-detail__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:24px!important;
    row-gap:20px!important;
    margin:22px 0 0!important;
    align-items:stretch!important;
    grid-auto-rows:auto!important;
  }

  .aip-premium-region-detail__grid > .aip-premium-method-panel{
    margin:0!important;
    min-height:0!important;
    height:auto!important;
    padding:22px 24px!important;
    border:1px solid #e5ddd4!important;
    border-radius:16px!important;
    background:#fffdfa!important;
    box-shadow:0 8px 22px rgba(55,42,31,.055)!important;
  }

  .aip-premium-region-detail__grid > .aip-premium-method-panel h4{
    margin:0 0 16px!important;
    font-size:1.06rem!important;
    line-height:1.25!important;
    color:#17251f!important;
  }

  .aip-premium-region-facts div{
    padding:10px 0!important;
  }

  .aip-premium-region-tags{
    gap:8px!important;
    align-content:flex-start!important;
  }

  .aip-premium-region-tags span{
    padding:7px 10px!important;
    border:1px solid rgba(35,77,61,.06)!important;
    background:#eef6f1!important;
  }

  .aip-premium-region-why p{
    line-height:1.65!important;
  }
}

/* =========================================================
 * 0.8.85 — DESKTOP CONSOLIDADO UX-03 / UX-04 / FUNC-02A / FUNC-02B
 * Exclusivo >= 1001px. Mobile, conteúdo, imagens e lógica preservados.
 * ========================================================= */
.aip-premium-method-liked{display:none}
@media (min-width:1001px){
  /* UX-03 — Home: ritmo, alinhamento e hierarquia */
  .aip-dashboard-home{display:flex!important;flex-direction:column!important;gap:0!important}
  .aip-dashboard-maincards{margin-bottom:26px!important}
  .aip-dashboard-quick{margin:0 0 36px!important;padding:20px 22px 22px!important}
  .aip-dashboard-quick__grid{gap:16px!important}
  .aip-dashboard-quick__item{min-height:88px!important;padding:15px 17px!important;border:1px solid #ebe2d8!important;background:#faf7f2!important;box-shadow:0 5px 15px rgba(55,42,31,.035)!important}
  .aip-dashboard-quick__icon{width:44px!important;height:44px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:#eef6f1!important;color:#1f5a45!important}
  .aip-dashboard-quick__item strong{font-size:14px!important}
  .aip-dashboard-quick__item small{font-size:11.5px!important;line-height:1.4!important}
  .aip-dashboard-context-grid{gap:20px!important;margin-top:0!important;align-items:stretch!important}
  .aip-dashboard-context-card{min-height:210px!important;padding:24px!important;display:flex!important;flex-direction:column!important}
  .aip-dashboard-context-card__body{flex:1!important;align-items:center!important}
  .aip-dashboard-context-card .aip-dashboard-secondary{margin-top:auto!important}

  /* UX-04 — Central de Ferramentas */
  .aip-premium-tools .aip-tools-card-grid{gap:20px!important;align-items:stretch!important}
  .aip-premium-tools .aip-tools-card{min-height:238px!important;padding:24px!important;border-color:#e5ddd4!important;border-radius:17px!important;background:#fffdfa!important;box-shadow:0 8px 22px rgba(55,42,31,.05)!important}
  .aip-premium-tools .aip-tools-group--premium .aip-tools-card{background:#f8fbf8!important}
  .aip-premium-tools .aip-tools-card__icon{width:46px!important;height:46px!important;border-radius:13px!important;font-size:1.05rem!important;background:#edf6f0!important;color:#235f48!important}
  .aip-premium-tools .aip-tools-card h4{margin:18px 0 9px!important;font-size:1.16rem!important;line-height:1.25!important}
  .aip-premium-tools .aip-tools-card p{line-height:1.6!important;margin-bottom:20px!important}
  .aip-premium-tools .aip-tools-card__action{min-width:76px!important;min-height:42px!important;padding:9px 17px!important;border-radius:10px!important;background:#fffdfa!important}
  .aip-premium-tools .aip-tools-group--premium .aip-tools-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .aip-premium-tools .aip-premium-tool-panel{border-radius:18px!important;box-shadow:0 10px 28px rgba(55,42,31,.05)!important}
  .aip-premium-tools .aip-premium-tool-primary{border-radius:10px!important}

  /* FUNC-02A — modal Como funciona sempre contido no viewport desktop */
  .aip-dashboard-how-modal:not([hidden]){top:50%!important;bottom:auto!important;width:min(760px,calc(100vw - 56px))!important;max-height:calc(100dvh - 48px)!important;transform:translate(-50%,-50%)!important}
  .aip-dashboard-how-modal__header{flex:0 0 auto!important;padding:20px 24px 16px!important}
  .aip-dashboard-how-modal__steps{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:16px 24px!important}
  .aip-dashboard-how-modal__footer{flex:0 0 auto!important;padding:14px 24px 16px!important}

  /* FUNC-02B — Métodos: leitura -> preparo -> avaliação */
  .aip-premium-method-detail__hero{align-items:stretch!important;margin-bottom:18px!important}
  .aip-premium-method-detail__overview{gap:20px!important;margin:0 0 20px!important;align-items:stretch!important}
  .aip-premium-method-detail__overview > .aip-premium-method-panel{margin:0!important;height:100%!important;box-sizing:border-box!important}
  .aip-premium-method-detail__lower{display:block!important;margin-top:0!important}
  .aip-premium-method-steps{margin:0 0 20px!important}
  .aip-premium-method-aftercare{display:flex!important;flex-direction:column!important;gap:18px!important}
  .aip-premium-method-tips{margin:0!important}
  .aip-premium-method-adjust{margin:0!important;padding:22px 24px!important;border-radius:16px!important;border:1px solid #dbe9e1!important;background:#f6fbf8!important;box-shadow:0 7px 20px rgba(30,73,55,.045)!important}
  .aip-premium-method-adjust__chips{gap:10px!important}
  .aip-premium-method-adjust__chips button{background:#1f6049!important;color:#fff!important;border-color:#1f6049!important;font-weight:700!important;box-shadow:none!important}
  .aip-premium-method-adjust__chips button:hover,.aip-premium-method-adjust__chips button:focus-visible{background:#174c3a!important;color:#fff!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow{width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:22px 24px!important;border-radius:16px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;grid-template-areas:'title range display' 'help range action'!important;gap:5px 22px!important;align-items:center!important;text-align:left!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow strong{grid-area:title!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow small{grid-area:help!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{grid-area:range!important;white-space:nowrap!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow b{grid-area:display!important;min-width:96px!important;text-align:center!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow button{grid-area:action!important;white-space:nowrap!important}
  .aip-premium-method-liked{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:20px 22px!important;border:1px solid #e3ddd5!important;border-radius:16px!important;background:#fffdfa!important;box-shadow:0 6px 18px rgba(55,42,31,.04)!important}
  .aip-premium-method-liked>div{display:flex!important;align-items:center!important;gap:14px!important}
  .aip-premium-method-liked__icon{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#edf6f0!important;color:#1f6049!important;font-size:20px!important}
  .aip-premium-method-liked h4{margin:0 0 4px!important;color:#18352b!important}
  .aip-premium-method-liked p{margin:0!important;color:#6c6259!important}
}


/* =========================================================
 * 0.8.86 — MÉTODOS DESKTOP: hierarquia Premium homologada
 * Somente apresentação >= 1001px. Sem alteração de lógica/mobile.
 * ========================================================= */
@media (min-width:1001px){
  /* Card inicial ocupa toda a largura dos dois cards de apoio. */
  .aip-premium-method-detail__hero{
    display:block!important;
    width:100%!important;
    margin:0 0 18px!important;
  }
  .aip-premium-method-detail__identity{
    width:100%!important;
    max-width:none!important;
    min-height:250px!important;
    box-sizing:border-box!important;
    padding:24px!important;
    border:1px solid #e5ddd4!important;
    border-radius:17px!important;
    background:#fffdfa!important;
    box-shadow:0 8px 22px rgba(55,42,31,.05)!important;
  }
  .aip-premium-method-detail__identity > div{max-width:none!important}
  .aip-premium-method-detail__figure{flex:0 0 250px!important;width:250px!important;min-height:210px!important}

  /* Dois cards de consulta alinhados como um único conjunto. */
  .aip-premium-method-detail__overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
  .aip-premium-method-detail__overview > .aip-premium-method-panel{
    padding:22px 24px!important;border-radius:17px!important;border:1px solid #e5ddd4!important;
    background:#fffdfa!important;box-shadow:0 8px 22px rgba(55,42,31,.045)!important;
  }
  .aip-premium-method-detail__overview > .aip-premium-method-reference{background:#f7fbf8!important;border-color:#dce9e1!important}

  /* Três ações finais: mesmo vocabulário Premium e finalidade explícita. */
  .aip-premium-method-clock.aip-method-clock--desktop-flow,
  .aip-premium-method-adjust,
  .aip-premium-method-liked{
    width:100%!important;box-sizing:border-box!important;border:1px solid #cfe2d7!important;
    border-radius:17px!important;background:linear-gradient(135deg,#f8fcf9 0%,#f3faf6 100%)!important;
    box-shadow:0 9px 24px rgba(30,73,55,.055)!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow{padding:23px 24px!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow strong{font-size:1.08rem!important;color:#173c2f!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow small{max-width:390px!important;line-height:1.5!important;color:#6d625a!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{
    padding:10px 14px!important;border-radius:11px!important;background:#fff8e9!important;color:#164d3a!important;
    font-weight:800!important;text-align:center!important
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow button{min-height:44px!important;border-radius:10px!important}

  .aip-premium-method-adjust{padding:23px 24px!important}
  .aip-premium-method-adjust h4{margin:0 0 7px!important;font-size:1.08rem!important;color:#173c2f!important}
  .aip-premium-method-adjust__intro{margin:0 0 17px!important;max-width:650px!important;color:#6d625a!important;line-height:1.5!important}
  .aip-premium-method-adjust__body{align-items:flex-end!important}
  .aip-premium-method-adjust__chips{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
  .aip-premium-method-adjust__chips button{min-width:112px!important;padding:10px 15px!important;border-radius:9px!important}
  .aip-premium-method-adjust .aip-premium-nav__button{min-height:44px!important;border-radius:10px!important;white-space:nowrap!important}

  .aip-premium-method-liked{padding:22px 24px!important}
  .aip-premium-method-liked__icon{width:48px!important;height:48px!important;background:#dff1e7!important;color:#15513d!important}
  .aip-premium-method-liked h4{font-size:1.08rem!important}
  .aip-premium-method-liked p{line-height:1.5!important}
  .aip-premium-method-liked .aip-dashboard-secondary{min-height:44px!important;padding:10px 16px!important;border-radius:10px!important;white-space:nowrap!important}
}

/* =========================================================
 * 0.8.87 — MÉTODOS DESKTOP: implementação efetiva do padrão aprovado
 * Layout somente >=1001px. O mesmo cronômetro é reposicionado pelo JS
 * de apresentação já existente; lógica e mobile permanecem preservados.
 * ========================================================= */
@media (min-width:1001px){
  .aip-premium-method-detail__hero{display:block!important}
  .aip-premium-method-detail__identity{
    display:grid!important;
    grid-template-columns:minmax(220px,32%) minmax(0,1fr)!important;
    gap:28px!important;
    align-items:center!important;
    min-height:260px!important;
    padding:24px!important;
  }
  .aip-premium-method-detail__figure{
    width:100%!important;
    min-height:220px!important;
    height:220px!important;
  }
  .aip-premium-method-detail__identity h3{font-size:2.25rem!important;line-height:1.02!important}
  .aip-premium-method-detail__identity p{max-width:680px!important;font-size:1rem!important;line-height:1.6!important}

  .aip-premium-method-detail__overview{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
  .aip-premium-method-detail__overview .aip-premium-method-panel{min-height:100%!important}

  .aip-premium-method-aftercare{gap:16px!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow{
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) minmax(210px,.8fr)!important;
    grid-template-areas:'title timer' 'help timer' 'reference timer'!important;
    gap:6px 28px!important;
    align-items:center!important;
    padding:24px!important;
    border-color:#a9d5bf!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow strong{grid-area:title!important;font-size:1.35rem!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow small{grid-area:help!important;font-size:.9rem!important;max-width:560px!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{
    grid-area:reference!important;
    justify-self:stretch!important;
    margin-top:8px!important;
    padding:12px 16px!important;
    border:1px solid #eadfc7!important;
    background:#fff8e9!important;
    text-align:left!important;
    font-size:.95rem!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range::before{
    content:'Tempo recomendado: '!important;
    color:#6b5433!important;
    font-weight:700!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow b{grid-area:timer!important;align-self:start!important;border:0!important;padding:2px 0 12px!important;font-size:2.35rem!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow button{grid-area:timer!important;align-self:end!important;margin-top:58px!important;min-width:210px!important;padding:0 20px!important}

  .aip-premium-method-adjust{
    padding:24px!important;
    border-color:#a9d5bf!important;
  }
  .aip-premium-method-adjust h4{font-size:1.3rem!important}
  .aip-premium-method-adjust__intro{font-size:.92rem!important}
  .aip-premium-method-adjust__body{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:20px!important;
    align-items:end!important;
  }
  .aip-premium-method-adjust__body>div>p:first-child{margin:0 0 9px!important;color:#53655c!important}
  .aip-premium-method-adjust__chips{display:grid!important;grid-template-columns:repeat(5,minmax(92px,1fr))!important;gap:10px!important}
  .aip-premium-method-adjust__chips button{
    min-width:0!important;width:100%!important;min-height:44px!important;
    background:#fffdfa!important;color:#173c2f!important;border:1px solid #b9d5c7!important;
  }
  .aip-premium-method-adjust__chips button:hover,.aip-premium-method-adjust__chips button:focus-visible,
  .aip-premium-method-adjust__chips button.is-active{
    background:#1f6049!important;color:#fff!important;border-color:#1f6049!important;
  }
  .aip-premium-method-adjust .aip-premium-nav__button{width:auto!important;min-width:190px!important;padding:0 18px!important}

  .aip-premium-method-liked{
    padding:24px!important;
    border-color:#a9d5bf!important;
  }
  .aip-premium-method-liked h4{font-size:1.3rem!important}
  .aip-premium-method-liked p{font-size:.92rem!important}
  .aip-premium-method-liked .aip-dashboard-secondary{min-width:210px!important}
}

/* =========================================================
 * 0.8.88 — MÉTODOS DESKTOP: ajuste fino de alinhamento
 * Somente apresentação >=1001px. Sem alteração de lógica/mobile.
 * ========================================================= */
@media (min-width:1001px){
  /* Ritmo vertical e alinhamento geral dos três blocos superiores. */
  .aip-premium-method-detail__hero{margin-bottom:20px!important}
  .aip-premium-method-detail__identity{grid-template-columns:minmax(210px,34%) minmax(0,1fr)!important;gap:24px!important;padding:22px!important}
  .aip-premium-method-detail__figure{height:210px!important;min-height:210px!important}
  .aip-premium-method-detail__overview{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:20px!important;margin-bottom:20px!important}
  .aip-premium-method-detail__overview>.aip-premium-method-panel{padding:22px!important}

  /* Referência rápida: impede colisão entre rótulos e valores em zooms intermediários. */
  .aip-premium-method-reference dl div{grid-template-columns:minmax(0,1fr) minmax(118px,.95fr)!important;gap:12px!important;align-items:center!important;padding:9px 0!important}
  .aip-premium-method-reference dt{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;line-height:1.25!important}
  .aip-premium-method-reference dd{min-width:0!important;line-height:1.25!important;overflow-wrap:normal!important;word-break:normal!important}
  .aip-premium-method-reference__icon{flex:0 0 auto!important}

  /* Cronômetro: duas colunas reais, sem sobreposição entre tempo e CTA. */
  .aip-premium-method-clock.aip-method-clock--desktop-flow{
    grid-template-columns:minmax(0,1fr) minmax(190px,220px)!important;
    grid-template-areas:'title display' 'help display' 'reference action'!important;
    column-gap:28px!important;row-gap:7px!important;padding:24px!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow b{grid-area:display!important;align-self:center!important;justify-self:stretch!important;margin:0!important;padding:0 0 10px!important;text-align:center!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow button{grid-area:action!important;align-self:end!important;justify-self:stretch!important;margin:0!important;min-width:0!important;width:100%!important}
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{margin-top:8px!important;min-width:0!important}

  /* Diagnóstico: opções em uma linha; CTA em linha própria alinhada à direita. */
  .aip-premium-method-adjust__body{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-items:start!important}
  .aip-premium-method-adjust__chips{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;width:100%!important}
  .aip-premium-method-adjust__chips button{min-width:0!important;width:100%!important;min-height:42px!important;padding:8px 6px!important;white-space:normal!important;line-height:1.15!important}
  .aip-premium-method-adjust .aip-premium-nav__button{justify-self:end!important;min-width:190px!important;margin:0!important}

  /* Gostei: conteúdo e ação na mesma linha, com respiro consistente. */
  .aip-premium-method-liked{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:24px!important}
  .aip-premium-method-liked>div{min-width:0!important}
  .aip-premium-method-liked .aip-dashboard-secondary{justify-self:end!important;margin:0!important}
}
\n\n/* === 0.8.89 — Equipamentos Desktop: alinhamento horizontal fino dos cards === */
@media (min-width:981px){
  .aip-premium-knowledge-equipment__grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    align-items:stretch!important;
    grid-auto-rows:1fr!important;
  }
  .aip-premium-equipment-card{
    height:100%!important;
    min-height:245px!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .aip-premium-equipment-card__visual{
    flex:0 0 126px!important;
  }
  .aip-premium-equipment-card h4{
    min-height:2.4em!important;
    display:flex!important;
    align-items:flex-start!important;
  }
  .aip-premium-equipment-card__meta{
    min-height:1.35em!important;
  }
  .aip-premium-equipment-card__action{
    margin-top:auto!important;
    padding-top:10px!important;
  }
}

/* =========================================================
 * 0.8.90 — MÉTODOS DESKTOP: alinhamento final + bloco de tempo
 * Somente apresentação >=1001px. Sem alteração de lógica/mobile.
 * ========================================================= */
@media (min-width:1001px){
  /* Os dois cards de apoio passam a ocupar metades iguais e a compartilhar a mesma altura. */
  .aip-premium-method-detail__overview{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch!important;
  }
  .aip-premium-method-detail__overview>.aip-premium-method-panel{
    height:100%!important;
    min-width:0!important;
  }
  .aip-premium-method-needed__grid li{
    grid-template-columns:28px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:center!important;
  }
  .aip-premium-method-needed__label{
    min-width:0!important;
    font-size:.90rem!important;
    line-height:1.28!important;
    overflow-wrap:break-word!important;
  }
  .aip-premium-method-reference dl div{
    grid-template-columns:minmax(0,1fr) minmax(105px,.9fr)!important;
    gap:10px!important;
  }
  .aip-premium-method-reference dt,
  .aip-premium-method-reference dd{font-size:.88rem!important}
  .aip-premium-method-reference dd{text-align:right!important}

  /* Mantém a composição existente do cronômetro; refina apenas o vão do tempo recomendado. */
  .aip-premium-method-clock.aip-method-clock--desktop-flow{
    grid-template-columns:minmax(0,1fr) minmax(190px,220px)!important;
    grid-template-areas:'title display' 'help display' 'reference action'!important;
    column-gap:22px!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:'label main' 'note note'!important;
    column-gap:8px!important;
    row-gap:2px!important;
    align-items:baseline!important;
    padding:10px 13px!important;
    margin-top:8px!important;
    min-width:0!important;
    white-space:normal!important;
    text-align:left!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range::before{content:none!important}
  .aip-premium-method-time__label{grid-area:label;font-size:.78rem;font-weight:700;color:#6b5433;white-space:nowrap}
  .aip-premium-method-time__main{grid-area:main;font-size:1rem;font-weight:800;color:#164d3a;white-space:nowrap}
  .aip-premium-method-time__range{font-size:.80rem;font-weight:600;color:#6d625a;margin-left:4px;white-space:nowrap}
  .aip-premium-method-time__note{grid-area:note;font-size:.72rem;font-weight:500;color:#766c63;line-height:1.3;margin-top:2px}

  /* Em larguras desktop mais compactas, preserva o alinhamento sem colisões. */
  @media (max-width:1180px){
    .aip-premium-method-needed__label{font-size:.84rem!important}
    .aip-premium-method-reference dt,.aip-premium-method-reference dd{font-size:.82rem!important}
    .aip-premium-method-clock.aip-method-clock--desktop-flow{grid-template-columns:minmax(0,1fr) minmax(175px,205px)!important;column-gap:16px!important}
    .aip-premium-method-time__label{font-size:.72rem}
    .aip-premium-method-time__main{font-size:.92rem}
    .aip-premium-method-time__range{font-size:.74rem}
    .aip-premium-method-time__note{font-size:.68rem}
  }
}

/* =========================================================
 * 0.8.91 — MÉTODOS DESKTOP: alinhamento estrutural + tempo legível
 * Ajuste estritamente visual >=1001px. Mobile e lógica preservados.
 * ========================================================= */
@media (min-width:1001px){
  /* O conjunto dos dois cards usa exatamente a mesma largura dos blocos acima/abaixo. */
  .aip-premium-method-detail__columns.aip-premium-method-detail__overview{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0 0 20px!important;
    padding:0!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:20px!important;
    align-items:stretch!important;
  }
  .aip-premium-method-detail__overview>.aip-premium-method-panel{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  /* Evita que nomes dos itens sejam partidos no meio de palavras. */
  .aip-premium-method-needed__label{
    font-size:.84rem!important;
    line-height:1.30!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }

  /* Referência: reserva espaço suficiente para os valores técnicos. */
  .aip-premium-method-reference dl div{
    grid-template-columns:minmax(0,1fr) minmax(112px,.92fr)!important;
    gap:12px!important;
  }
  .aip-premium-method-reference dd{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }

  /* Cronômetro: mantém o vão existente, mas dá hierarquia ao tempo recomendado. */
  .aip-premium-method-clock.aip-method-clock--desktop-flow{
    grid-template-columns:minmax(0,1fr) minmax(190px,220px)!important;
    grid-template-areas:'title display' 'help display' 'reference action'!important;
    column-gap:22px!important;
    row-gap:8px!important;
  }
  .aip-premium-method-clock.aip-method-clock--desktop-flow .aip-premium-method-clock__range{
    grid-area:reference!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:8px 0 0!important;
    padding:12px 14px!important;
    white-space:normal!important;
    text-align:left!important;
  }
  .aip-premium-method-time__label{
    display:block!important;
    margin:0 0 3px!important;
    font-size:.76rem!important;
    line-height:1.2!important;
    font-weight:700!important;
    color:#6b5433!important;
  }
  .aip-premium-method-time__main{
    display:block!important;
    margin:0!important;
    font-size:1.32rem!important;
    line-height:1.18!important;
    font-weight:800!important;
    color:#164d3a!important;
    white-space:normal!important;
  }
  .aip-premium-method-time__range{
    display:inline!important;
    margin-left:6px!important;
    font-size:.76rem!important;
    line-height:1.2!important;
    font-weight:600!important;
    color:#6d625a!important;
    white-space:normal!important;
  }
  .aip-premium-method-time__note{
    display:block!important;
    margin-top:5px!important;
    font-size:.68rem!important;
    line-height:1.3!important;
    font-weight:500!important;
    color:#766c63!important;
  }

  @media (max-width:1180px){
    .aip-premium-method-detail__columns.aip-premium-method-detail__overview{gap:18px!important}
    .aip-premium-method-needed__label{font-size:.80rem!important}
    .aip-premium-method-reference dt,.aip-premium-method-reference dd{font-size:.80rem!important}
    .aip-premium-method-clock.aip-method-clock--desktop-flow{grid-template-columns:minmax(0,1fr) minmax(180px,205px)!important;column-gap:16px!important}
    .aip-premium-method-time__main{font-size:1.18rem!important}
    .aip-premium-method-time__range{font-size:.70rem!important}
  }
}

/* =========================================================
 * 0.8.92 — COMO FUNCIONA: viewport real no Desktop
 * Modal portado para body pelo JS para nao herdar o containing block
 * transformado do shell. Cabecalho/rodape fixos; miolo rolavel.
 * ========================================================= */
@media (min-width:1001px){
  body > .aip-dashboard-how-backdrop:not([hidden]){position:fixed!important;inset:0!important;z-index:10020!important}
  body > .aip-dashboard-how-modal:not([hidden]){position:fixed!important;left:50%!important;top:50%!important;bottom:auto!important;width:min(760px,calc(100vw - 56px))!important;height:auto!important;max-height:calc(100vh - 48px)!important;max-height:calc(100dvh - 48px)!important;transform:translate(-50%,-50%)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
  body > .aip-dashboard-how-modal .aip-dashboard-how-modal__header{flex:0 0 auto!important}
  body > .aip-dashboard-how-modal .aip-dashboard-how-modal__steps{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  body > .aip-dashboard-how-modal .aip-dashboard-how-modal__footer{flex:0 0 auto!important}
}

/* === AIP 0.8.92 — H.2/H.2.9 Harmonizações V1 (wireframe homologado) === */
.aip-harm-knowledge__header{margin-bottom:20px}.aip-harm-knowledge__header h3,.aip-profile-harmonizations__head h3{margin:2px 0 6px;color:#183c2b;font-size:26px;line-height:1.15}.aip-harm-knowledge__header>p:last-child,.aip-profile-harmonizations__head p{max-width:760px;color:#58655d}.aip-harm-intro{display:flex;gap:16px;align-items:center;padding:18px 20px;margin:0 0 24px;border:1px solid #eadfce;border-radius:14px;background:#fbf7ef}.aip-harm-intro p,.aip-harm-personal-cta p{margin:4px 0 0}.aip-harm-icon,.aip-harm-card__icon{display:flex;align-items:center;justify-content:center;color:#8b4d27}.aip-harm-icon svg{width:48px;height:48px}.aip-harm-explore h4,.aip-harm-top-title h4{margin:0 0 4px;color:#183c2b;font-size:20px}.aip-harm-explore>p,.aip-harm-top-title>p{margin:0 0 14px;color:#68736c}.aip-harm-family-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.aip-harm-family-card{min-height:175px;padding:18px;border:1px solid #e8dfd3;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(33,48,40,.035)}.aip-harm-family-card .aip-harm-icon{justify-content:flex-start;margin-bottom:10px}.aip-harm-family-card strong{display:block;color:#203c30}.aip-harm-family-card p{margin:5px 0 0;color:#667168;font-size:13px;line-height:1.45}.aip-harm-personal-cta{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:22px;padding:18px 20px;border-radius:14px;background:#eaf3ed;border:1px solid #d7e6dc}.aip-harm-personal-cta button{border:0;border-radius:9px;padding:12px 16px;background:#075b3d;color:#fff;font-weight:700;cursor:pointer}.aip-profile-harmonizations{margin-top:18px}.aip-profile-harmonizations__head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.aip-harm-profile-chip{flex:0 0 auto;padding:9px 12px;border:1px solid #e5dccf;border-radius:10px;background:#fbf8f2;color:#69736c;font-size:12px}.aip-harm-profile-chip strong{display:block;color:#183c2b;font-size:14px}.aip-harm-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.aip-harm-card{position:relative;padding:18px;border:1px solid #e5ddd2;border-radius:12px;background:#fff}.aip-harm-card__icon svg{width:64px;height:64px}.aip-harm-card h5{margin:10px 0 7px;color:#203c30;font-size:17px}.aip-harm-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f4e3c7;color:#66451d;font-size:11px;font-weight:700}.aip-harm-card p{min-height:54px;margin:9px 0;color:#5e6962;font-size:13px;line-height:1.45}.aip-harm-card>button{padding:0;border:0;background:transparent;color:#075b3d;font-weight:700;cursor:pointer}.aip-harm-explore-btn{display:grid;width:100%;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:14px;padding:14px 16px;text-align:left;border:1px solid #e5ddd2;border-radius:11px;background:#fff;color:#203c30;cursor:pointer}.aip-harm-explore-btn strong,.aip-harm-explore-btn small{display:block}.aip-harm-explore-btn small{margin-top:2px;color:#6b756f}.aip-harm-overlay{position:fixed;z-index:100000;inset:0;background:rgba(16,28,22,.38)}.aip-harm-overlay[hidden]{display:none!important}.aip-harm-detail,.aip-harm-others{position:absolute;top:0;right:0;height:100%;width:min(460px,92vw);overflow:auto;padding:30px;background:#fff;box-shadow:-10px 0 30px rgba(0,0,0,.12)}.aip-harm-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#173d2b;font-size:28px;line-height:1;cursor:pointer}.aip-harm-detail__title{display:flex;gap:14px;align-items:center;padding-right:25px;margin-bottom:24px}.aip-harm-detail__title h3{margin:0 0 7px;color:#183c2b;font-size:20px}.aip-harm-detail>h4,.aip-harm-tasting h4{margin:18px 0 6px;color:#183c2b}.aip-harm-detail>p,.aip-harm-tasting>p{color:#5f6b64;line-height:1.55}.aip-harm-tasting{margin-top:22px;padding-top:8px;border-top:1px solid #eee6db}.aip-harm-step{display:grid;grid-template-columns:30px 1fr;gap:10px;margin:14px 0}.aip-harm-step>span{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#075b3d;color:#fff;font-weight:700}.aip-harm-step strong{color:#203c30}.aip-harm-step p{margin:2px 0 0;color:#5f6b64;font-size:13px;line-height:1.4}.aip-harm-others{width:min(680px,94vw)}.aip-harm-others>h3{margin:0 30px 5px 0;color:#183c2b}.aip-harm-others>p{color:#637068}.aip-harm-other-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.aip-harm-card.is-secondary{padding:14px}.aip-harm-card.is-secondary .aip-harm-card__icon svg{width:44px;height:44px}.aip-harm-card.is-secondary p{min-height:0}.aip-harm-empty{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:20px;border:1px solid #e6ddd1;border-radius:12px;background:#fbf8f2}.aip-harm-empty>a,.aip-harm-empty>button{padding:10px 12px;border-radius:8px;border:0;background:#075b3d;color:#fff;text-decoration:none;font-weight:700}.aip-harm-empty>button{background:transparent;color:#075b3d;border:1px solid #b8d2c4}
@media(max-width:767px){.aip-harm-knowledge__header h3,.aip-profile-harmonizations__head h3{font-size:23px}.aip-harm-family-grid{display:flex;flex-direction:column;gap:8px}.aip-harm-family-card{display:grid;grid-template-columns:48px 1fr;column-gap:12px;min-height:0;padding:13px}.aip-harm-family-card .aip-harm-icon{grid-row:1/3;margin:0}.aip-harm-family-card p{margin:2px 0}.aip-harm-personal-cta{grid-template-columns:48px 1fr}.aip-harm-personal-cta button{grid-column:1/-1;width:100%}.aip-profile-harmonizations__head{display:block}.aip-harm-profile-chip{display:inline-block;margin-top:10px}.aip-harm-top-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding:2px 14% 8px 0}.aip-harm-card.is-primary{flex:0 0 86%;scroll-snap-align:start}.aip-harm-detail,.aip-harm-others{top:auto;bottom:0;width:100%;height:auto;max-height:88vh;border-radius:18px 18px 0 0;padding:24px 18px}.aip-harm-other-grid{grid-template-columns:1fr}.aip-harm-empty{grid-template-columns:1fr}.aip-harm-empty>a,.aip-harm-empty>button{width:100%;text-align:center}}

/* === AIP 0.8.93 — H.2 biblioteca visual HM001–HM022 + refinamento Meu Café === */
@media (min-width:768px){
  .aip-mycoffee-card{margin-top:10px}
}
.aip-mycoffee-method__icon{overflow:hidden;background:#fff;border:1px solid #ece4da}
.aip-mycoffee-method__icon img{display:block;width:100%;height:100%;object-fit:contain;padding:5px}
.aip-harm-card__image{height:150px;margin:-2px -2px 12px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#fff;overflow:hidden}
.aip-harm-card__image img{display:block;width:100%;height:100%;object-fit:contain}
.aip-harm-detail__image{width:88px;height:88px;flex:0 0 88px;border:1px solid #eee4d8;border-radius:12px;background:#fff;overflow:hidden}
.aip-harm-detail__image img{width:100%;height:100%;object-fit:contain;display:block}
.aip-harm-education-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:12px;margin:0 0 14px}
.aip-harm-education-grid article,.aip-harm-observe,.aip-harm-practice{padding:18px;border:1px solid #e8dfd3;border-radius:12px;background:#fff}
.aip-harm-education-grid strong,.aip-harm-observe strong{display:block;color:#183c2b;font-size:16px;margin-bottom:5px}
.aip-harm-education-grid p,.aip-harm-observe p{margin:0;color:#5f6b64;line-height:1.55}
.aip-harm-observe{margin-bottom:22px;background:#fbf7ef}
.aip-harm-library__head h4,.aip-harm-practice h4{margin:0 0 4px;color:#183c2b;font-size:20px}
.aip-harm-library__head>p{margin:0;color:#68736c}
.aip-harm-library-group{margin-top:20px}
.aip-harm-library-group__head{margin-bottom:10px}
.aip-harm-library-group__head h5{margin:0 0 3px;color:#203c30;font-size:17px}
.aip-harm-library-group__head p{margin:0;color:#68736c;font-size:13px}
.aip-harm-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.aip-harm-library-card{padding:10px;border:1px solid #e8dfd3;border-radius:12px;background:#fff;overflow:hidden}
.aip-harm-library-card__image{height:128px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#fff;overflow:hidden}
.aip-harm-library-card__image img{width:100%;height:100%;object-fit:contain;display:block}
.aip-harm-library-card>strong{display:block;margin:9px 3px 3px;color:#203c30;font-size:14px;line-height:1.3}
.aip-harm-practice{margin-top:22px;background:#fbf8f2}
.aip-harm-practice__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.aip-harm-practice__steps>div{padding:12px;border-radius:10px;background:#fff;border:1px solid #ece3d8}
.aip-harm-practice__steps span{display:grid;width:27px;height:27px;place-items:center;margin-bottom:8px;border-radius:50%;background:#075b3d;color:#fff;font-weight:700}
.aip-harm-practice__steps strong{color:#203c30;font-size:14px}
.aip-harm-practice__steps p{margin:4px 0 0;color:#5f6b64;font-size:12px;line-height:1.45}
@media(max-width:767px){
  .aip-harm-education-grid{grid-template-columns:1fr}
  .aip-harm-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .aip-harm-library-card__image{height:110px}
  .aip-harm-practice__steps{grid-template-columns:1fr}
  .aip-harm-card__image{height:145px}
  .aip-harm-detail__image{width:72px;height:72px;flex-basis:72px}
}

/* AIP 0.8.94 — Harmonizações: refinamento editorial e ritmo Desktop */
@media (min-width:768px){
  .aip-premium-profile .aip-mycoffee-card{margin-top:6px}
  .aip-premium-profile .aip-mycoffee-card + .aip-mycoffee-card{margin-top:8px}
}
.aip-harm-library-card>p{margin:5px 3px 8px;color:#667168;font-size:12px;line-height:1.45}
.aip-harm-library-card>button{margin:0 3px 3px;padding:0;border:0;background:transparent;color:#075b3d;font-weight:700;font-size:13px;cursor:pointer}
.aip-harm-knowledge-detail>h4{margin-top:18px}

/* AIP 0.8.95 — Conhecimento > Harmonizações: teste Desktop com cards horizontais */
@media (min-width:768px){
  .aip-harm-library-group{margin-top:12px}
  .aip-harm-library-group + .aip-harm-library-group{margin-top:14px}
  .aip-harm-library-group__head{margin-bottom:7px}
  .aip-harm-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
  .aip-harm-library-card{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    grid-template-rows:auto 1fr auto;
    column-gap:12px;
    align-items:start;
    min-height:132px;
    padding:10px 12px;
  }
  .aip-harm-library-card__image{
    grid-column:1;
    grid-row:1 / 4;
    width:112px;
    height:112px;
    align-self:center;
  }
  .aip-harm-library-card>strong{
    grid-column:2;
    grid-row:1;
    margin:3px 0 2px;
    font-size:14px;
    line-height:1.3;
  }
  .aip-harm-library-card>p{
    grid-column:2;
    grid-row:2;
    margin:3px 0 6px;
    font-size:12px;
    line-height:1.4;
  }
  .aip-harm-library-card>button{
    grid-column:2;
    grid-row:3;
    justify-self:start;
    align-self:end;
    margin:0 0 3px;
  }
}

/* AIP 0.8.96 — Harmonizações Desktop: cards horizontais compactos conforme referência homologatória */
@media (min-width:768px){
  .aip-harm-library-group{margin-top:10px}
  .aip-harm-library-group + .aip-harm-library-group{margin-top:12px}
  .aip-harm-library-group__head{margin-bottom:6px}
  .aip-harm-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
  .aip-harm-library-card{
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    column-gap:12px;
    row-gap:2px;
    align-items:center;
    min-height:106px;
    padding:10px 12px;
  }
  .aip-harm-library-card__image{
    grid-column:1;
    grid-row:1 / 4;
    width:78px;
    height:78px;
    align-self:center;
    justify-self:center;
    margin:0;
  }
  .aip-harm-library-card>strong{
    grid-column:2;
    grid-row:1;
    align-self:end;
    margin:0;
    font-size:14px;
    line-height:1.25;
  }
  .aip-harm-library-card>p{
    grid-column:2;
    grid-row:2;
    align-self:center;
    margin:1px 0 3px;
    font-size:12px;
    line-height:1.35;
  }
  .aip-harm-library-card>button{
    grid-column:2;
    grid-row:3;
    justify-self:start;
    align-self:start;
    margin:0;
    font-size:12px;
    line-height:1.25;
  }
}


/* AIP 0.8.97 — Harmonizações Desktop: prática 2x2 horizontal + CTA compacto */
@media (min-width:768px){
  .aip-harm-practice{padding:16px 18px!important;margin-top:18px!important;border-radius:12px!important}
  .aip-harm-practice>h4{margin:0 0 12px!important}
  .aip-harm-practice__steps{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px 12px!important;
    margin-top:0!important;
  }
  .aip-harm-practice__steps>div{
    display:grid!important;
    grid-template-columns:32px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:10px!important;
    row-gap:2px!important;
    align-items:start!important;
    min-height:76px!important;
    padding:11px 12px!important;
  }
  .aip-harm-practice__steps span{
    grid-column:1!important;
    grid-row:1 / 3!important;
    width:28px!important;
    height:28px!important;
    margin:0!important;
    align-self:start!important;
  }
  .aip-harm-practice__steps strong{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    line-height:1.25!important;
  }
  .aip-harm-practice__steps p{
    grid-column:2!important;
    grid-row:2!important;
    margin:1px 0 0!important;
    line-height:1.35!important;
  }
  .aip-harm-personal-cta{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr) auto!important;
    gap:14px!important;
    align-items:center!important;
    margin-top:14px!important;
    padding:14px 16px!important;
    min-height:88px!important;
  }
  .aip-harm-personal-cta .aip-harm-icon{
    width:48px!important;
    height:48px!important;
    border-radius:50%!important;
    background:#fff!important;
  }
  .aip-harm-personal-cta .aip-harm-icon svg{width:30px!important;height:30px!important}
  .aip-harm-personal-cta>div{min-width:0!important}
  .aip-harm-personal-cta strong{display:block!important;margin:0!important;line-height:1.25!important}
  .aip-harm-personal-cta p{margin:3px 0 0!important;font-size:12px!important;line-height:1.35!important}
  .aip-harm-personal-cta button{
    justify-self:end!important;
    white-space:nowrap!important;
    padding:11px 15px!important;
  }
}

/* 0.8.98 — Perfis Sensoriais + refinamentos Desktop Meu Café Sob Medida */
.aip-sensory-profiles__head{margin-bottom:18px}.aip-sensory-profiles__head h3{margin:0 0 6px;font-size:28px;color:#173b2d}.aip-sensory-profiles__head p:last-child{max-width:760px;margin:0;color:#655d56}
.aip-sensory-profiles__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.aip-sensory-profile-card{display:flex;gap:14px;min-height:150px;padding:16px;border:1px solid #e4ddd4;border-radius:12px;background:#fff}
.aip-sensory-profile-icon{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:12px}.aip-sensory-profile-icon img{width:28px;height:28px}.aip-sensory-profile-icon.is-soft{background:#FAEEDA}.aip-sensory-profile-icon.is-medium{background:#FAC775}.aip-sensory-profile-icon.is-medium-strong{background:#EF9F27}.aip-sensory-profile-icon.is-strong{background:#BA7517}.aip-sensory-profile-icon.is-strong img{filter:brightness(0) invert(1)}
.aip-sensory-profile-card__body{display:flex;flex:1;min-width:0;flex-direction:column}.aip-sensory-profile-card h4{margin:0 0 5px;color:#173b2d;font-size:16px}.aip-sensory-profile-card p{margin:0 0 9px;color:#625a53;font-size:12px;line-height:1.45}.aip-sensory-profile-intensity{margin-top:auto;color:#795214;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.aip-sensory-profile-card button{align-self:flex-start;margin-top:8px;padding:0;border:0;background:none;color:#175a3d;font-weight:800;cursor:pointer}
.aip-sensory-profile-detail__back{margin:0 0 14px;padding:0;border:0;background:none;color:#315f4d;font-weight:800;cursor:pointer}.aip-sensory-profile-detail__hero{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #e4ddd4;border-radius:12px;background:#fff}.aip-sensory-profile-detail__hero .aip-sensory-profile-icon{width:66px;height:66px;flex-basis:66px}.aip-sensory-profile-detail__hero .aip-sensory-profile-icon img{width:34px;height:34px}.aip-sensory-profile-detail__hero span{font-size:11px;color:#7a7067;font-weight:800}.aip-sensory-profile-detail__hero h3{margin:2px 0 4px;color:#173b2d;font-size:25px}.aip-sensory-profile-detail__hero p{margin:0;color:#625a53}.aip-sensory-profile-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.aip-sensory-profile-detail__grid section,.aip-sensory-profile-traits,.aip-sensory-profile-explore{padding:16px;border:1px solid #e4ddd4;border-radius:12px;background:#fff}.aip-sensory-profile-detail h4{margin:0 0 8px;color:#173b2d}.aip-sensory-profile-detail p{margin:0;color:#554e48;line-height:1.55}.aip-sensory-profile-traits,.aip-sensory-profile-explore{margin-top:12px}.aip-sensory-profile-traits>div{display:grid;grid-template-columns:2fr repeat(3,1fr);border:1px solid #eee6de;border-radius:10px;overflow:hidden}.aip-sensory-profile-traits span{padding:12px;border-right:1px solid #eee6de}.aip-sensory-profile-traits span:last-child{border-right:0}.aip-sensory-profile-traits small,.aip-sensory-profile-traits strong{display:block}.aip-sensory-profile-traits small{margin-bottom:4px;color:#776a61}.aip-sensory-profile-traits strong{font-size:13px}
.aip-mycoffee-profile-learn{margin-top:14px}.aip-mycoffee-alt-cta{margin-top:8px!important;padding:0;border:0;background:transparent;color:#175a3d!important;font-size:12px!important;font-weight:800!important;text-align:left;cursor:pointer}
@media (min-width:761px){.aip-mycoffee-active,.aip-mycoffee-card{width:100%;max-width:none;box-sizing:border-box}.aip-mycoffee-active{margin-bottom:10px}.aip-mycoffee-card{margin-top:10px}.aip-mycoffee__title h2{margin-bottom:14px}.aip-mycoffee-profile-learn{margin-top:12px}}
@media (max-width:760px){.aip-sensory-profiles__grid{grid-template-columns:1fr}.aip-sensory-profile-detail__grid{grid-template-columns:1fr}.aip-sensory-profile-traits>div{grid-template-columns:repeat(2,minmax(0,1fr))}.aip-sensory-profile-traits span{border-bottom:1px solid #eee6de}.aip-sensory-profile-traits span:nth-child(2n){border-right:0}.aip-sensory-profile-traits span:nth-last-child(-n+2){border-bottom:0}}

/* AIP 0.8.99 — identidade oficial dos Perfis Sensoriais em Meu Café Sob Medida. */
.aip-profile-svg-mark{display:flex;align-items:center;justify-content:center}
.aip-profile-svg-mark .aip-profile-svg-icon{width:30px;height:30px;display:block;object-fit:contain}
.aip-mycoffee-active__mark.aip-profile-svg-mark .aip-profile-svg-icon{width:28px;height:28px}


/* AIP 0.8.100 — Perfis Sensoriais: catálogo horizontal + identidade de intensidade na Home. */
@media (min-width:761px){
  .aip-sensory-profiles__grid{display:flex;flex-direction:column;gap:10px}
  .aip-sensory-profile-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;min-height:0;padding:14px 16px;gap:14px}
  .aip-sensory-profile-card__body{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(260px,1.5fr) auto auto;align-items:center;gap:18px}
  .aip-sensory-profile-card h4,.aip-sensory-profile-card p,.aip-sensory-profile-intensity,.aip-sensory-profile-card button{margin:0}
  .aip-sensory-profile-card p{font-size:13px;line-height:1.4}
  .aip-sensory-profile-card button{justify-self:end;white-space:nowrap}
}
.aip-mycoffee-active__mark.aip-profile-svg-mark,.aip-mycoffee-profile-icon.aip-profile-svg-mark{color:#173b2d}
.aip-mycoffee-active__mark.aip-profile-svg-mark.is-soft,.aip-mycoffee-profile-icon.aip-profile-svg-mark.is-soft{background:#FAEEDA}
.aip-mycoffee-active__mark.aip-profile-svg-mark.is-medium,.aip-mycoffee-profile-icon.aip-profile-svg-mark.is-medium{background:#FAC775}
.aip-mycoffee-active__mark.aip-profile-svg-mark.is-medium-strong,.aip-mycoffee-profile-icon.aip-profile-svg-mark.is-medium-strong{background:#EF9F27}
.aip-mycoffee-active__mark.aip-profile-svg-mark.is-strong,.aip-mycoffee-profile-icon.aip-profile-svg-mark.is-strong{background:#BA7517}
.aip-mycoffee-active__mark.aip-profile-svg-mark.is-strong .aip-profile-svg-icon,.aip-mycoffee-profile-icon.aip-profile-svg-mark.is-strong .aip-profile-svg-icon{filter:brightness(0) invert(1)}

/* AIP 0.8.101 — Perfis Sensoriais: uma linha legível e CTAs navegáveis. */
.aip-sensory-profile-open{color:#175a3d;font-weight:800;text-decoration:none;white-space:nowrap}
.aip-sensory-profile-open:hover,.aip-sensory-profile-open:focus{text-decoration:underline}
@media (min-width:761px){
  .aip-sensory-profile-card{grid-template-columns:52px minmax(160px,1fr) minmax(260px,1.55fr) 112px 132px;gap:14px;width:100%;box-sizing:border-box}
  .aip-sensory-profile-card__body{display:contents}
  .aip-sensory-profile-card h4{font-size:14px;line-height:1.3}
  .aip-sensory-profile-card p{font-size:13px;line-height:1.4;margin:0}
  .aip-sensory-profile-intensity{margin:0;font-size:10px;line-height:1.35;white-space:normal}
  .aip-sensory-profile-open{justify-self:end;font-size:12px;line-height:1.25;text-align:right}
}
@media (max-width:760px){
  .aip-sensory-profile-card__body{display:flex}
  .aip-sensory-profile-open{align-self:flex-start;margin-top:8px}
}
.aip-mycoffee-profile-learn{text-decoration:none;display:inline-flex;align-items:center}
\n\n/* AIP 0.8.102 — Perfis Sensoriais: cards horizontais compactos + estado catálogo/ficha. */
#aip-premium-knowledge-profiles .aip-sensory-profiles__grid[hidden],
#aip-premium-knowledge-profiles .aip-sensory-profile-detail[hidden]{display:none!important}
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profiles__grid{display:flex;flex-direction:column;gap:10px;width:100%}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;width:100%;min-width:0;padding:12px 14px;box-sizing:border-box;overflow:hidden}
  #aip-premium-knowledge-profiles .aip-sensory-profile-icon{width:48px;height:48px;flex-basis:48px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-icon img{width:25px;height:25px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card__body{display:grid;grid-template-columns:minmax(128px,.9fr) minmax(150px,1.25fr) 78px 88px;align-items:center;gap:10px;min-width:0}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card h4{margin:0;font-size:13px;line-height:1.3;min-width:0}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card p{margin:0;font-size:12px;line-height:1.35;min-width:0}
  #aip-premium-knowledge-profiles .aip-sensory-profile-intensity{margin:0;font-size:9px;line-height:1.3;white-space:normal}
  #aip-premium-knowledge-profiles .aip-sensory-profile-open{justify-self:end;max-width:88px;font-size:11px;line-height:1.25;text-align:right;white-space:normal}
}

/* AIP 0.8.103 — Perfis Sensoriais: refinamento visual Premium. */
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profiles__head{margin-bottom:20px}
  #aip-premium-knowledge-profiles .aip-sensory-profiles__grid{gap:12px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card{
    grid-template-columns:56px minmax(0,1fr);gap:16px;padding:16px 18px;min-height:82px;
    border-color:#e6ddd0;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#fffdf9 100%);
    box-shadow:0 4px 14px rgba(31,55,43,.045);overflow:visible;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card:hover{border-color:#d8cbb9;box-shadow:0 7px 20px rgba(31,55,43,.075)}
  #aip-premium-knowledge-profiles .aip-sensory-profile-icon{width:56px;height:56px;flex-basis:56px;border-radius:14px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-icon img{width:28px;height:28px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card__body{
    display:grid;grid-template-columns:minmax(145px,.95fr) minmax(190px,1.35fr) 106px 112px;align-items:center;gap:16px;min-width:0
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card h4{font-size:14px;line-height:1.35;font-weight:800;color:#123d2d}
  #aip-premium-knowledge-profiles .aip-sensory-profile-card p{font-size:13px;line-height:1.45;color:#5f5a54}
  #aip-premium-knowledge-profiles .aip-sensory-profile-intensity{
    display:inline-flex;justify-self:start;align-items:center;margin:0;padding:6px 9px;border-radius:999px;
    background:#fbf3e5;color:#775012;font-size:9px;line-height:1.15;font-weight:800;letter-spacing:.035em;white-space:nowrap
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-open{
    display:inline-flex;justify-self:end;align-items:center;justify-content:center;max-width:none;padding:9px 11px;
    border:1px solid #b9cfc4;border-radius:9px;background:#fff;color:#075b3d;font-size:11px;line-height:1.2;text-align:center;white-space:nowrap;text-decoration:none
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-open:hover,#aip-premium-knowledge-profiles .aip-sensory-profile-open:focus{background:#edf5f0;border-color:#8fb3a1;text-decoration:none}

  #aip-premium-knowledge-profiles .aip-sensory-profile-detail{width:100%;box-sizing:border-box}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__back{margin-bottom:16px;color:#075b3d}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__hero{
    gap:18px;padding:20px 22px;border-color:#e3d8ca;border-radius:16px;
    background:linear-gradient(135deg,#fff 0%,#fcf8f1 100%);box-shadow:0 5px 18px rgba(31,55,43,.05)
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__hero .aip-sensory-profile-icon{width:64px;height:64px;flex-basis:64px;border-radius:16px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__hero span{display:inline-block;margin-bottom:2px;color:#8a765f;font-size:10px;letter-spacing:.08em}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__hero h3{font-size:24px;line-height:1.2;margin:2px 0 6px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__hero p{font-size:14px;line-height:1.45}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid section{
    min-height:0;padding:20px 21px;border-color:#e5dccf;border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(31,55,43,.035)
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid h4{font-size:18px;line-height:1.25;margin-bottom:9px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid p{font-size:13px;line-height:1.6}
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits,#aip-premium-knowledge-profiles .aip-sensory-profile-explore{
    margin-top:14px;padding:20px 21px;border-color:#e5dccf;border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(31,55,43,.035)
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits h4,#aip-premium-knowledge-profiles .aip-sensory-profile-explore h4{font-size:18px;margin-bottom:12px}
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits>div{grid-template-columns:2fr repeat(3,1fr);border-color:#eadfD2;border-radius:11px;background:#fdfaf5}
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits span{padding:14px 13px;border-color:#eadfd2}
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits small{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#806f60}
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits strong{font-size:12px;line-height:1.45;color:#173b2d}
  #aip-premium-knowledge-profiles .aip-sensory-profile-explore{background:linear-gradient(135deg,#fbf7ef 0%,#fff 100%)}
  #aip-premium-knowledge-profiles .aip-sensory-profile-explore p{font-size:13px;line-height:1.6}
}

/* AIP 0.8.104 — Perfis Sensoriais: largura final dos cards explicativos no Desktop. */
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid{
    width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-detail__grid section{
    width:auto;max-width:none;margin:0;box-sizing:border-box;
  }
}


/* AIP 0.8.105 — Perfis Sensoriais: alinhamento final da ficha no Desktop. */
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits,
  #aip-premium-knowledge-profiles .aip-sensory-profile-explore{
    width:100%;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box;
  }
}

/* AIP 0.8.106 — Perfis Sensoriais: reduzir somente o espaço entre Características sensoriais e Para explorar no Desktop. */
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profile-traits{margin-bottom:0!important;}
  #aip-premium-knowledge-profiles .aip-sensory-profile-explore{margin-top:8px!important;}
}

/* AIP 0.8.107 — Perfis Sensoriais: correção exclusiva do catálogo geral Desktop. */
@media (min-width:761px){
  #aip-premium-knowledge-profiles .aip-sensory-profiles__grid{
    width:100%;max-width:100%;box-sizing:border-box;overflow:hidden;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card{
    grid-template-columns:52px minmax(0,1fr);gap:14px;width:100%;max-width:100%;min-width:0;
    padding:14px 16px;box-sizing:border-box;overflow:hidden;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-icon{
    width:52px;height:52px;flex-basis:52px;border-radius:13px;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card__body{
    display:grid;grid-template-columns:minmax(118px,.85fr) minmax(0,1.35fr);
    grid-template-rows:auto auto;column-gap:14px;row-gap:8px;align-items:center;width:100%;min-width:0;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card h4{
    grid-column:1;grid-row:1;margin:0;min-width:0;font-size:13px;line-height:1.3;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-card p{
    grid-column:2;grid-row:1;margin:0;min-width:0;font-size:12.5px;line-height:1.4;overflow-wrap:anywhere;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-intensity{
    grid-column:1;grid-row:2;justify-self:start;margin:0;padding:5px 8px;max-width:100%;
    font-size:8.5px;line-height:1.15;white-space:nowrap;box-sizing:border-box;
  }
  #aip-premium-knowledge-profiles .aip-sensory-profile-open{
    grid-column:2;grid-row:2;justify-self:end;margin:0;max-width:100%;padding:7px 10px;
    font-size:10.5px;line-height:1.2;white-space:nowrap;box-sizing:border-box;
  }
}

/* AIP 0.8.108 — Home Desktop: Café Ideal Premium + ritmo vertical + alternativas de método. */
@media (min-width:761px){
  /* Ritmo único entre os sete grandes blocos da Home. Padding interno preservado. */
  .aip-premium-profile .aip-mycoffee-sensory,
  .aip-premium-profile .aip-mycoffee-ideal,
  .aip-premium-profile .aip-mycoffee-method,
  .aip-premium-profile .aip-mycoffee-regions,
  .aip-premium-profile .aip-profile-harmonizations,
  .aip-premium-profile .aip-mycoffee-recipe,
  .aip-premium-profile .aip-mycoffee-history{margin-top:16px!important;margin-bottom:0!important}

  /* Seu Café Ideal — mesma linguagem visual do Perfil Sensorial, sem alterar dados/ação. */
  .aip-mycoffee-ideal{background:#fff;box-shadow:0 5px 18px rgba(31,55,43,.045)}
  .aip-mycoffee-ideal__head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
  .aip-mycoffee-ideal__headicon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:50%;background:#FAEEDA;color:#173b2d}
  .aip-mycoffee-ideal__headicon svg,.aip-mycoffee-ideal__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .aip-mycoffee-ideal__head h3{margin:0 0 3px;font-size:19px}
  .aip-mycoffee-ideal__head .aip-mycoffee-helper{margin:0;font-size:13px}
  .aip-mycoffee-ideal__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 14px;border:1px solid #e9dfd3;border-radius:11px;background:#fdfaf5;overflow:hidden}
  .aip-mycoffee-ideal__item{display:flex;min-width:0;min-height:104px;flex-direction:column;align-items:center;justify-content:center;padding:13px 12px;border-right:1px solid #e9dfd3;text-align:center}
  .aip-mycoffee-ideal__item:last-child{border-right:0}
  .aip-mycoffee-ideal__icon{display:grid;place-items:center;margin-bottom:5px;color:#173b2d}
  .aip-mycoffee-ideal__label{display:block;color:#6f655d;font-size:11px}
  .aip-mycoffee-ideal__item strong{display:block;margin-top:4px;color:#17251f;font-size:14px}
  .aip-mycoffee-ideal__item .aip-mycoffee-dots{justify-content:center;margin-top:7px}
  .aip-mycoffee-ideal__cta{display:flex;width:100%;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:0;border-radius:9px;background:#0c5539;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 2px 6px rgba(12,85,57,.10);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
  .aip-mycoffee-ideal__cta:hover,.aip-mycoffee-ideal__cta:focus{background:#094a32;box-shadow:0 5px 14px rgba(12,85,57,.16);transform:translateY(-1px)}

  /* Alternativas: mais respiro sem crescimento excessivo do bloco. */
  .aip-mycoffee-alts{gap:10px;margin-top:10px;margin-bottom:14px}
  .aip-mycoffee-alts>div{padding:12px 14px}
  .aip-mycoffee-alts span{margin-top:4px}
  .aip-mycoffee-alts .aip-mycoffee-alt-cta{display:inline-flex;align-items:center;margin-top:10px!important;line-height:1.25}
}


/* AIP 0.8.109 — Home Desktop + Mobile: ícones semânticos congelados nos títulos. */
.aip-home-title{display:flex!important;align-items:center;gap:8px}
.aip-home-title .aip-home-title-icon{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:#0c5539;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aip-home-title>span{min-width:0}
.aip-profile-harmonizations__head .aip-home-title{margin-top:0}
@media (max-width:760px){
  .aip-home-title{gap:7px}
  .aip-home-title .aip-home-title-icon{width:16px;height:16px;flex-basis:16px}
}

/* AIP 0.8.110 — retorno contextual da Home. */
.aip-context-home-back{
  appearance:none;
  border:0;
  background:transparent;
  color:#0b5a43;
  font:inherit;
  font-size:13px;
  font-weight:700;
  line-height:1.3;
  padding:0;
  margin:0 0 14px;
  cursor:pointer;
  text-align:left;
}
.aip-context-home-back:hover{ text-decoration:underline; }
.aip-context-home-back[hidden]{ display:none !important; }
