/* Shared alert presentation for public pages, the client area, and cart. */
body:is(.hexa-client, .hexa-alert-page) .alert:not(.hexa-validation-alert):not(#totalDueToday) {
    position: relative;
    margin-bottom: 20px;
    padding: 18px 20px 18px 64px;
    border: 1px solid var(--hexa-alert-border);
    border-left: 4px solid var(--hexa-alert-accent);
    border-radius: 12px;
    background: var(--hexa-alert-bg);
    color: var(--hexa-alert-text);
    font-size: 14px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
body:is(.hexa-client, .hexa-alert-page) .alert:not(.hexa-validation-alert):not(#totalDueToday)::before {
    content: "";
    position: absolute;
    top: 19px;
    left: 20px;
    width: 26px;
    height: 26px;
    background: var(--hexa-alert-accent);
    -webkit-mask: var(--hexa-alert-icon) center / contain no-repeat;
    mask: var(--hexa-alert-icon) center / contain no-repeat;
    pointer-events: none;
}
body:is(.hexa-client, .hexa-alert-page) .alert {
    --hexa-alert-bg: #eff6ff;
    --hexa-alert-border: #ccdef8;
    --hexa-alert-accent: #2464b5;
    --hexa-alert-text: #204a7c;
    --hexa-alert-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%2011v6M12%207h.01%22%2F%3E%3C%2Fsvg%3E");
}
body:is(.hexa-client, .hexa-alert-page) .alert-success {
    --hexa-alert-bg: #f0faf4;
    --hexa-alert-border: #cce8d6;
    --hexa-alert-accent: #23834b;
    --hexa-alert-text: #215e3a;
    --hexa-alert-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22m8%2012%203%203%205-6%22%2F%3E%3C%2Fsvg%3E");
}
body:is(.hexa-client, .hexa-alert-page) .alert-warning {
    --hexa-alert-bg: #fffaed;
    --hexa-alert-border: #eedfb7;
    --hexa-alert-accent: #a16a12;
    --hexa-alert-text: #76500f;
    --hexa-alert-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%2010%2018H2L12%203Z%22%2F%3E%3Cpath%20d%3D%22M12%209v5M12%2017h.01%22%2F%3E%3C%2Fsvg%3E");
}
body:is(.hexa-client, .hexa-alert-page) .alert-danger, body:is(.hexa-client, .hexa-alert-page) .alert-error {
    --hexa-alert-bg: #fff5f5;
    --hexa-alert-border: #f2d3d6;
    --hexa-alert-accent: #c93749;
    --hexa-alert-text: #8d2635;
    --hexa-alert-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v6M12%2017h.01%22%2F%3E%3C%2Fsvg%3E");
}
body:is(.hexa-client, .hexa-alert-page) .alert :is(h1,h2,h3,h4,h5,h6,.alert-heading) { color: inherit; font-size: 16px; line-height: 1.5; }
body:is(.hexa-client, .hexa-alert-page) .alert p { margin: 0 0 8px; }
body:is(.hexa-client, .hexa-alert-page) .alert ul { margin: 8px 0 0; padding-left: 20px; }
body:is(.hexa-client, .hexa-alert-page) .alert li + li { margin-top: 5px; }
body:is(.hexa-client, .hexa-alert-page) .alert > :last-child { margin-bottom: 0; }
body:is(.hexa-client, .hexa-alert-page) .alert a:not(.btn) { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
body:is(.hexa-client, .hexa-alert-page) .alert a:focus-visible, body:is(.hexa-client, .hexa-alert-page) .alert .close:focus-visible { outline: 3px solid #6ea3fa; outline-offset: 3px; }
body:is(.hexa-client, .hexa-alert-page) .alert.alert-dismissible:not(.hexa-validation-alert):not(#totalDueToday) { padding-right: 48px; }
body:is(.hexa-client, .hexa-alert-page) .alert:empty::before { content: none; }
/* Shared alerts own the leading icon; suppress duplicate template glyphs only. */
body:is(.hexa-client, .hexa-alert-page) .alert:not(.hexa-validation-alert):not(#totalDueToday) > :is(i.fa, i.fas, i.far, i.fal, i.fab, i.fad, svg.svg-inline--fa) { display: none; }
/* Alerts with a dedicated icon layout retain that layout without a second icon. */
body:is(.hexa-client, .hexa-alert-page) .alert:has(.hexa-email-alert-icon)::before { content: none; }
body:is(.hexa-client, .hexa-alert-page) .alert:has(.hexa-email-alert-icon) { padding-left: 20px; }
/* Checkout's security notice uses one lock instead of a warning/lock overlay. */
body:is(.hexa-client, .hexa-alert-page) .alert.checkout-security-msg {
    --hexa-alert-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E");
}
/* Existing cart validation alerts already include their own icon. */
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) .alert { --hexa-alert-bg: #153747; --hexa-alert-border: #2b5b70; --hexa-alert-accent: #7ec9e2; --hexa-alert-text: #b5e4f2; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) .alert-success { --hexa-alert-bg: #153c2d; --hexa-alert-border: #2b644b; --hexa-alert-accent: #72d79a; --hexa-alert-text: #b9ebcb; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) .alert-warning { --hexa-alert-bg: #3c311b; --hexa-alert-border: #69532b; --hexa-alert-accent: #efc76e; --hexa-alert-text: #f4dfaa; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) .alert-danger,
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) .alert-error { --hexa-alert-bg: #40242b; --hexa-alert-border: #70404a; --hexa-alert-accent: #f28e9e; --hexa-alert-text: #ffc2ca; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) #order-standard_cart .hexa-validation-alert { background: #40242b; border-color: #70404a; border-left-color: #f28e9e; color: #ffc2ca; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) #order-standard_cart .hexa-validation-alert-content p { color: inherit; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) #order-standard_cart .hexa-validation-alert-icon { background: #59313b; color: #ffc2ca; }
@media (max-width: 575px) {
    body:is(.hexa-client, .hexa-alert-page) .alert:not(.hexa-validation-alert):not(#totalDueToday) { padding: 16px 14px 16px 52px; }
    body:is(.hexa-client, .hexa-alert-page) .alert:not(.hexa-validation-alert):not(#totalDueToday)::before { left: 14px; top: 17px; width: 22px; height: 22px; }
    body:is(.hexa-client, .hexa-alert-page) .alert.alert-dismissible:not(.hexa-validation-alert):not(#totalDueToday) { padding-right: 42px; }
    body:is(.hexa-client, .hexa-alert-page) .alert:has(.hexa-email-alert-icon) { padding-left: 14px; }
}

/* Neutral notices use the same layout without a severity color. */
body:is(.hexa-client, .hexa-alert-page) .alert-secondary,
body:is(.hexa-client, .hexa-alert-page) .alert-light,
body:is(.hexa-client, .hexa-alert-page) .alert-dark { --hexa-alert-bg: #f5f7fa; --hexa-alert-border: #dce3ec; --hexa-alert-accent: #64748b; --hexa-alert-text: #334155; }
html[data-hexa-theme="dark"] body:is(.hexa-client, .hexa-alert-page) :is(.alert-secondary, .alert-light, .alert-dark) { --hexa-alert-bg: #252f40; --hexa-alert-border: #42506a; --hexa-alert-accent: #b1bed2; --hexa-alert-text: #dce5f3; }
