/* Assinatura visual oficial mobileOS. Este arquivo é a única fonte de estilo da marca. */
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@800&display=swap");

.mobileos-marca {
    --mobileos-marca-cor: #6366f1;
    display: inline-flex !important;
    align-items: baseline !important;
    width: max-content;
    color: inherit;
    font-family: Manrope, sans-serif !important;
    font-size: 1.38rem !important;
    font-style: normal !important;
    font-weight: 800 !important;
    font-synthesis: none;
    line-height: 1 !important;
    letter-spacing: -.07em !important;
    text-transform: none !important;
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    isolation: isolate;
}

.mobileos-marca--clara { color: #fff !important; }
.mobileos-marca--escura { color: #14201d !important; }
.mobileos-marca--pequena { font-size: 1rem !important; }
.mobileos-marca--grande { font-size: 2.25rem !important; }
.mobileos-marca--compacta {
    align-items: baseline !important;
    justify-content: center !important;
    font-size: 1rem !important;
    letter-spacing: -.08em !important;
}
.mobileos-marca--compacta .mobileos-marca__texto {
    font-size: 1rem !important;
    font-weight: 800 !important;
}
.mobileos-marca--compacta .mobileos-marca__ponto {
    width: 5px !important;
    min-width: 5px !important;
    max-width: 5px !important;
    height: 5px !important;
    min-height: 5px !important;
    max-height: 5px !important;
    flex-basis: 5px !important;
    margin-left: 2px !important;
    background: var(--mobileos-marca-cor, #6366f1) !important;
    box-shadow: 0 0 10px rgba(99, 102, 241, .7) !important;
}
.mobileos-marca--compacta .mobileos-marca__detalhe-sazonal {
    display: none !important;
}

.mobileos-marca__texto {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font: inherit !important;
    font-style: normal !important;
    font-weight: 800 !important;
    letter-spacing: inherit !important;
    text-shadow: none !important;
    transform: none !important;
}

/* Ponto de extensão único para detalhes sazonais da marca. */
.mobileos-marca__detalhe-sazonal {
    display: none;
    position: absolute;
    pointer-events: none;
    user-select: none;
}

/*
 * Aderecos sazonais da marca.
 * Cada campanha utiliza uma ilustracao vetorial propria e preserva a leitura
 * da assinatura mobileOS em qualquer tamanho ou fundo.
 */
body:is(
    [data-tema-sazonal="carnaval"], .site-tema-carnaval, .tema-carnaval,
    [data-tema-sazonal="consumidor"], .site-tema-consumidor, .tema-consumidor,
    [data-tema-sazonal="maes"], .site-tema-maes, .tema-maes,
    [data-tema-sazonal="namorados"], .site-tema-namorados, .tema-namorados,
    [data-tema-sazonal="festa_junina"], .site-tema-festa_junina, .tema-festa_junina,
    [data-tema-sazonal="pais"], .site-tema-pais, .tema-pais,
    [data-tema-sazonal="semana_brasil"], .site-tema-semana_brasil, .tema-semana_brasil,
    [data-tema-sazonal="halloween"], .site-tema-halloween, .tema-halloween,
    [data-tema-sazonal="black_friday"], .site-tema-black_friday, .tema-black_friday,
    [data-tema-sazonal="ano_novo"], .site-tema-ano_novo, .tema-ano_novo
) .mobileos-marca__detalhe-sazonal {
    display: block;
    z-index: 2;
    left: auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform-origin: 50% 82%;
}

/* Carnaval: mascara de festa com pequenas plumas coloridas. */
body:is([data-tema-sazonal="carnaval"], .site-tema-carnaval, .tema-carnaval) .mobileos-marca__detalhe-sazonal {
    width: 1.12em;
    height: .82em;
    right: .14em;
    top: -.62em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 112 82'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='18' y1='32' x2='94' y2='71'%3E%3Cstop stop-color='%23d946ef'/%3E%3Cstop offset='.52' stop-color='%236366f1'/%3E%3Cstop offset='1' stop-color='%2322d3ee'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M36 35C26 21 29 8 38 2c4 14 13 22 25 27C58 14 63 4 74 0c2 14 7 23 16 31z' fill='%23facc15'/%3E%3Cpath d='M11 38c20-10 39-9 51 2 14-10 29-11 43-3-1 21-13 36-31 36-7 0-12-4-16-10-5 7-12 11-20 11-17 0-27-14-27-36z' fill='url(%23a)'/%3E%3Cellipse cx='38' cy='50' rx='12' ry='7' fill='%230b1020'/%3E%3Cellipse cx='78' cy='49' rx='12' ry='7' fill='%230b1020'/%3E%3Ccircle cx='16' cy='27' r='4' fill='%23f472b6'/%3E%3Ccircle cx='98' cy='22' r='4' fill='%235eead4'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .12em .13em rgba(61, 20, 92, .25));
    transform: rotate(-7deg);
    animation: mobileos-marca-festa 4.6s ease-in-out infinite;
}

/* Dia do Consumidor: etiqueta comercial com percentual. */
body:is([data-tema-sazonal="consumidor"], .site-tema-consumidor, .tema-consumidor) .mobileos-marca__detalhe-sazonal {
    width: .84em;
    height: .76em;
    right: -.06em;
    top: -.52em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 76'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='8' y1='6' x2='70' y2='69'%3E%3Cstop stop-color='%2322d3ee'/%3E%3Cstop offset='1' stop-color='%236366f1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M8 8h45l23 23-40 40L8 43z' fill='url(%23g)'/%3E%3Ccircle cx='25' cy='25' r='6' fill='%23fff' fill-opacity='.9'/%3E%3Cpath d='M33 50 52 29M34 31h1M51 49h1' stroke='%23fff' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .12em .14em rgba(24, 70, 130, .24));
    transform: rotate(8deg);
    animation: mobileos-marca-etiqueta 5s ease-in-out infinite;
}

/* Dia das Maes: flor leve, diferente do simbolo de Namorados. */
body:is([data-tema-sazonal="maes"], .site-tema-maes, .tema-maes) .mobileos-marca__detalhe-sazonal {
    width: .86em;
    height: .86em;
    right: .06em;
    top: -.66em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 86'%3E%3Cdefs%3E%3ClinearGradient id='p' x1='12' y1='8' x2='72' y2='77'%3E%3Cstop stop-color='%23f9a8d4'/%3E%3Cstop offset='1' stop-color='%23ec4899'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='url(%23p)'%3E%3Cellipse cx='43' cy='18' rx='13' ry='18'/%3E%3Cellipse cx='43' cy='68' rx='13' ry='18'/%3E%3Cellipse cx='18' cy='43' rx='18' ry='13'/%3E%3Cellipse cx='68' cy='43' rx='18' ry='13'/%3E%3Cellipse cx='25' cy='25' rx='12' ry='17' transform='rotate(-45 25 25)'/%3E%3Cellipse cx='61' cy='61' rx='12' ry='17' transform='rotate(-45 61 61)'/%3E%3C/g%3E%3Ccircle cx='43' cy='43' r='14' fill='%23facc15'/%3E%3Ccircle cx='39' cy='39' r='5' fill='%23fff' fill-opacity='.55'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .11em .13em rgba(157, 37, 99, .2));
    transform: rotate(-9deg);
    animation: mobileos-marca-flor 5.2s ease-in-out infinite;
}

/* Dia dos Namorados: dois coracoes entrelacados. */
body:is([data-tema-sazonal="namorados"], .site-tema-namorados, .tema-namorados) .mobileos-marca__detalhe-sazonal {
    width: .92em;
    height: .74em;
    right: -.04em;
    top: -.52em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 76'%3E%3Cpath d='M47 66C13 48 8 28 17 17c9-11 25-7 31 5 7-12 23-16 32-5 10 12 4 32-33 49z' fill='%23fb7185'/%3E%3Cpath d='M69 64C45 51 39 37 45 28c6-9 18-7 23 2 5-9 17-11 23-2 7 10 1 24-22 36z' fill='%23e11d48' stroke='%23fff' stroke-width='3'/%3E%3Cpath d='M25 23c5-5 11-4 15 1' fill='none' stroke='%23fff' stroke-width='5' stroke-linecap='round' opacity='.65'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .12em .14em rgba(145, 20, 57, .23));
    transform: rotate(5deg);
    animation: mobileos-marca-coracoes 3.8s ease-in-out infinite;
}

/* Festa Junina: chapeu de palha apoiado na ultima letra. */
body:is([data-tema-sazonal="festa_junina"], .site-tema-festa_junina, .tema-festa_junina) .mobileos-marca__detalhe-sazonal {
    width: 1.16em;
    height: .72em;
    right: .12em;
    top: -.55em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 116 72'%3E%3Cdefs%3E%3ClinearGradient id='s' x1='20' y1='8' x2='91' y2='65'%3E%3Cstop stop-color='%23fde68a'/%3E%3Cstop offset='1' stop-color='%23d97706'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cellipse cx='58' cy='55' rx='55' ry='14' fill='%23eab308'/%3E%3Cpath d='M31 48c3-27 12-41 27-41s25 14 28 41z' fill='url(%23s)'/%3E%3Cpath d='M29 42h59l3 13H25z' fill='%23dc2626'/%3E%3Cpath d='m66 47 20-13 10 20-24 4z' fill='%2306b6d4'/%3E%3Cpath d='M38 15 71 46M50 9l31 29M29 30l27 25' stroke='%23a16207' stroke-width='2' opacity='.38'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .12em .12em rgba(91, 48, 5, .24));
    transform: rotate(-7deg);
    animation: mobileos-marca-festa 4.8s ease-in-out infinite;
}

/* Dia dos Pais: gravata discreta ao final da assinatura. */
body:is([data-tema-sazonal="pais"], .site-tema-pais, .tema-pais) .mobileos-marca__detalhe-sazonal {
    width: .56em;
    height: .94em;
    right: -.08em;
    top: -.47em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 94'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='8' y1='5' x2='48' y2='88'%3E%3Cstop stop-color='%2338bdf8'/%3E%3Cstop offset='1' stop-color='%231e3a8a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='m16 5 12 9L40 5l8 14-13 14 12 42-19 15L9 75l12-42L8 19z' fill='url(%23g)'/%3E%3Cpath d='m20 32 8 8 8-8-8-9z' fill='%23fff' fill-opacity='.45'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .11em .12em rgba(17, 49, 98, .22));
    transform: rotate(8deg);
    animation: mobileos-marca-gravata 5s ease-in-out infinite;
}

/* Semana do Brasil: faixa verde e amarela junto ao ponto da marca. */
body:is([data-tema-sazonal="semana_brasil"], .site-tema-semana_brasil, .tema-semana_brasil) .mobileos-marca__detalhe-sazonal {
    width: 1.04em;
    height: .62em;
    right: -.04em;
    top: -.43em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 62'%3E%3Cpath d='M5 16C28 2 50 3 70 14c12 7 21 8 29 4v26c-11 6-24 4-37-4C45 30 27 29 5 43z' fill='%2316a34a'/%3E%3Cpath d='M5 25c21-11 39-9 56 1 15 9 27 11 38 5v10c-11 6-24 4-37-4-17-10-35-11-57 3z' fill='%23facc15'/%3E%3Cpath d='M48 17 72 30 49 43 25 30z' fill='%23fde047'/%3E%3Ccircle cx='49' cy='30' r='8' fill='%232563eb'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .1em .12em rgba(15, 87, 45, .2));
    transform: rotate(-5deg);
    animation: mobileos-marca-faixa 4.4s ease-in-out infinite;
}

/* Halloween: chapeu de bruxa com faixa violeta. */
body:is([data-tema-sazonal="halloween"], .site-tema-halloween, .tema-halloween) .mobileos-marca__detalhe-sazonal {
    width: 1.18em;
    height: .92em;
    right: .14em;
    top: -.73em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 118 92'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='29' y1='6' x2='77' y2='74'%3E%3Cstop stop-color='%236d28d9'/%3E%3Cstop offset='1' stop-color='%231b102d'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M53 3c15 18 27 38 35 61H30C42 40 49 20 53 3z' fill='url(%23g)'/%3E%3Cpath d='M49 17c15 9 25 14 39 9-6 13-16 18-26 17z' fill='%23140b24'/%3E%3Cpath d='M26 55h65l6 14H19z' fill='%23f97316'/%3E%3Cellipse cx='58' cy='71' rx='55' ry='15' fill='%23140b24'/%3E%3Cpath d='m73 54 7 7-7 7-7-7z' fill='%23facc15'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .13em .14em rgba(29, 8, 53, .34));
    transform: rotate(-8deg);
    animation: mobileos-marca-festa 5.1s ease-in-out infinite;
}

/* Black Friday: etiqueta escura com percentual em destaque. */
body:is([data-tema-sazonal="black_friday"], .site-tema-black_friday, .tema-black_friday) .mobileos-marca__detalhe-sazonal {
    width: .9em;
    height: .78em;
    right: -.08em;
    top: -.56em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 78'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='7' y1='4' x2='78' y2='70'%3E%3Cstop stop-color='%2318181b'/%3E%3Cstop offset='1' stop-color='%23000000'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M7 7h46l30 29-38 37L7 37z' fill='url(%23g)' stroke='%23f59e0b' stroke-width='4'/%3E%3Ccircle cx='25' cy='24' r='6' fill='%23f59e0b'/%3E%3Cpath d='M37 55 56 31M38 33h1M55 53h1' stroke='%23fff' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E");
    filter: drop-shadow(0 .12em .15em rgba(0, 0, 0, .34));
    transform: rotate(8deg);
    animation: mobileos-marca-etiqueta 4.4s ease-in-out infinite;
}

/* Ano Novo: explosao dourada de luz sobre o ponto da marca. */
body:is([data-tema-sazonal="ano_novo"], .site-tema-ano_novo, .tema-ano_novo) .mobileos-marca__detalhe-sazonal {
    width: .92em;
    height: .92em;
    right: -.07em;
    top: -.72em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 92 92'%3E%3Cdefs%3E%3CradialGradient id='g'%3E%3Cstop stop-color='%23fff7bf'/%3E%3Cstop offset='.45' stop-color='%23facc15'/%3E%3Cstop offset='1' stop-color='%23f59e0b'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cg stroke='%23f59e0b' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M46 3v19M46 70v19M3 46h19M70 46h19M16 16l14 14M62 62l14 14M76 16 62 30M30 62 16 76'/%3E%3C/g%3E%3Cg stroke='%236366f1' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='m28 7 6 13M58 72l6 13M7 64l13-6M72 34l13-6'/%3E%3C/g%3E%3Ccircle cx='46' cy='46' r='17' fill='url(%23g)'/%3E%3Ccircle cx='46' cy='46' r='7' fill='%23fff'/%3E%3C/svg%3E");
    filter: drop-shadow(0 0 .14em rgba(245, 158, 11, .58));
    transform: rotate(0deg) scale(.94);
    animation: mobileos-marca-fogos 3.6s ease-in-out infinite;
}

@keyframes mobileos-marca-festa {
    0%, 82%, 100% { transform: rotate(-7deg); }
    90% { transform: rotate(-2deg) translateY(-.025em); }
}

@keyframes mobileos-marca-etiqueta {
    0%, 80%, 100% { transform: rotate(8deg); }
    88% { transform: rotate(3deg) translateY(-.025em); }
}

@keyframes mobileos-marca-flor {
    0%, 78%, 100% { transform: rotate(-9deg) scale(1); }
    88% { transform: rotate(-2deg) scale(1.04); }
}

@keyframes mobileos-marca-coracoes {
    0%, 76%, 100% { transform: rotate(5deg) scale(1); }
    84% { transform: rotate(5deg) scale(1.06); }
    91% { transform: rotate(5deg) scale(1.01); }
}

@keyframes mobileos-marca-gravata {
    0%, 82%, 100% { transform: rotate(8deg); }
    90% { transform: rotate(3deg); }
}

@keyframes mobileos-marca-faixa {
    0%, 78%, 100% { transform: rotate(-5deg) skewY(0deg); }
    88% { transform: rotate(-3deg) skewY(2deg); }
}

@keyframes mobileos-marca-fogos {
    0%, 70%, 100% { transform: rotate(0deg) scale(.94); opacity: .92; }
    82% { transform: rotate(8deg) scale(1.08); opacity: 1; }
}

/* Natal: chapéu vetorial proporcional ao tamanho da marca. */
body[data-tema-sazonal="natal"] .mobileos-marca__detalhe-sazonal,
body.site-tema-natal .mobileos-marca__detalhe-sazonal,
body.tema-natal .mobileos-marca__detalhe-sazonal {
    display: block;
    z-index: 2;
    width: 1.18em;
    height: .88em;
    left: auto;
    right: .22em;
    top: -.66em;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 78'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='13' y1='15' x2='74' y2='62' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23ff5454'/%3E%3Cstop offset='.58' stop-color='%23d7192d'/%3E%3Cstop offset='1' stop-color='%239b0d20'/%3E%3C/linearGradient%3E%3ClinearGradient id='w' x1='19' y1='52' x2='84' y2='66' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%23e9eef5'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M20 54C24 32 39 15 62 9c8-2 17-1 25 2-10 7-18 17-21 30l-4 17z' fill='url(%23g)'/%3E%3Cpath d='M19 49c16-3 33-1 49 6 4 2 6 7 4 11-2 5-7 7-12 5-13-6-26-7-39-4-5 1-10-2-11-7-1-5 3-10 9-11z' fill='url(%23w)'/%3E%3Ccircle cx='87' cy='13' r='11' fill='%23ffffff'/%3E%3Ccircle cx='87' cy='13' r='7' fill='%23f3f6fa'/%3E%3C/svg%3E") center / contain no-repeat;
    filter: drop-shadow(0 .12em .12em rgba(50, 10, 16, .22));
    transform: scaleX(-1) rotate(-10deg);
    transform-origin: 50% 82%;
    animation: mobileos-marca-chapeu-natal 4.8s ease-in-out infinite;
}

@keyframes mobileos-marca-chapeu-natal {
    0%, 82%, 100% { transform: scaleX(-1) rotate(-10deg); }
    88% { transform: scaleX(-1) rotate(-6deg) translateY(-.02em); }
    94% { transform: scaleX(-1) rotate(-12deg); }
}

@media (prefers-reduced-motion: reduce) {
    .mobileos-marca__detalhe-sazonal {
        animation: none !important;
    }
}

.mobileos-marca__ponto {
    display: inline-block !important;
    width: 6px !important;
    min-width: 6px !important;
    max-width: 6px !important;
    height: 6px !important;
    min-height: 6px !important;
    max-height: 6px !important;
    flex: 0 0 6px !important;
    margin: 0 0 0 3px !important;
    border-radius: 999px !important;
    background: var(--mobileos-marca-cor, #6366f1) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    vertical-align: baseline !important;
    transform: translateY(0) !important;
}
