/* source: public/css/ampol-v12.13-unified-account.css */
/* AMPOL SHOP v12.13.0 — unified account, payment, cart and KYC surfaces */
html[data-theme] body.ampol-app:is(.is-cart-route,.is-card-payment-route,.is-identity-route) {
    color: var(--v12-text);
    background: radial-gradient(circle at 8% 8%,var(--v12-accent-soft),transparent 31rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt)) !important;
}

/* Dashboard action cards */
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    overflow: hidden;
    border: 1px solid var(--v12-line-strong) !important;
    border-radius: 1.45rem !important;
    padding: 1.15rem !important;
    color: var(--v12-text) !important;
    background: linear-gradient(135deg,var(--v12-panel-strong),color-mix(in srgb,var(--v12-accent-soft) 70%,var(--v12-panel-soft))) !important;
    box-shadow: 0 18px 48px var(--v12-shadow),inset 0 1px 0 color-mix(in srgb,#fff 46%,transparent) !important;
}
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card)::after {
    content: '';
    position: absolute;
    width: 13rem;
    height: 13rem;
    inset: -7rem auto auto -5rem;
    border-radius: 50%;
    pointer-events: none;
    background: var(--v12-accent-soft);
    filter: blur(35px);
}
html[data-theme] body.ampol-app :is(.ampol-correction-required-card__icon,.ampol-kyc-required-card__icon) {
    position: relative;
    z-index: 1;
    display: grid;
    width: 2.7rem;
    height: 2.7rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid var(--v12-line-strong);
    border-radius: .9rem;
    color: var(--v12-action-text);
    background: linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent));
    box-shadow: 0 10px 28px var(--v12-accent-soft);
    font-size: 1rem;
    font-weight: 1000;
}
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) > * { position: relative; z-index: 1; }
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) :is(h2,b) { color: var(--v12-text) !important; }
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) p { color: var(--v12-muted) !important; }
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) p:first-child { color: var(--v12-accent-text) !important; }
html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card) div span {
    border-color: var(--v12-line) !important;
    color: var(--v12-muted) !important;
    background: var(--v12-panel-soft) !important;
}

/* Card-to-card payment */
.ampol-card-payment-page {
    background: radial-gradient(circle at 8% 10%,var(--v12-accent-soft),transparent 29rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt));
}
.ampol-payment-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem; }
.ampol-payment-heading h1 { margin-top:.45rem;color:var(--v12-text)!important;font-size:clamp(1.55rem,3vw,2.4rem);font-weight:1000;line-height:1.4; }
.ampol-payment-heading p:last-child { margin-top:.4rem;color:var(--v12-muted);font-size:.78rem;line-height:1.9; }
.ampol-payment-layout { display:grid;gap:1.1rem;align-items:start; }
.ampol-payment-destination,.ampol-payment-form {
    overflow:hidden;
    border:1px solid var(--v12-line);
    border-radius:1.8rem;
    box-shadow:0 22px 58px var(--v12-shadow);
}
.ampol-payment-destination {
    position:relative;
    padding:1.35rem;
    color:var(--v12-deep-text);
    background:linear-gradient(145deg,color-mix(in srgb,var(--v12-accent-2) 52%,var(--v12-deep)),var(--v12-deep-2));
}
.ampol-payment-destination::after { content:'';position:absolute;width:18rem;height:18rem;inset:-9rem auto auto -7rem;border-radius:50%;background:var(--v12-accent);opacity:.18;filter:blur(35px); }
.ampol-payment-destination>* { position:relative;z-index:1; }
.ampol-payment-card-top,.ampol-payment-form-head { display:flex;align-items:center;justify-content:space-between;gap:1rem; }
.ampol-payment-card-top small,.ampol-payment-form-head small { color:var(--v12-accent-3);font-family:monospace;font-size:.56rem;font-weight:900;letter-spacing:.16em; }
.ampol-payment-card-top h2 { margin-top:.3rem;color:#f7fffb!important;font-size:1rem;font-weight:950; }
.ampol-payment-card-top>span { border:1px solid color-mix(in srgb,var(--v12-accent-3) 45%,transparent);border-radius:999px;padding:.45rem .7rem;color:var(--v12-accent-3);background:var(--v12-accent-soft);font-size:.58rem;font-weight:900; }
.ampol-payment-card-number { display:grid;width:100%;gap:.35rem;margin-top:1rem;border:1px solid color-mix(in srgb,var(--v12-accent-3) 38%,rgba(255,255,255,.14));border-radius:1.25rem;padding:1.1rem;color:#f7fffb;background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);text-align:center;transition:.2s ease; }
.ampol-payment-card-number:hover { border-color:var(--v12-accent-3);background:rgba(255,255,255,.12);transform:translateY(-2px); }
.ampol-payment-card-number b { color:#f7fffb!important;font-family:monospace;font-size:clamp(1.25rem,4vw,2rem);font-weight:1000;letter-spacing:.16em; }
.ampol-payment-card-number span { color:#a9c1b3;font-size:.6rem; }
.ampol-payment-details { display:grid;gap:.2rem;margin-top:1rem; }
.ampol-payment-details>div { display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.08);padding:.75rem 0; }
.ampol-payment-details dt { color:#91aa9b;font-size:.68rem; }
.ampol-payment-details dd { color:#f7fffb;font-size:.75rem;font-weight:900; }
.ampol-payment-details .is-total { margin-top:.35rem;border:0;border-radius:1rem;padding:.9rem;background:var(--v12-accent-soft); }
.ampol-payment-details .is-total dd { color:var(--v12-accent-3);font-size:1.15rem; }
.ampol-payment-details small { font-size:.58rem; }
.ampol-payment-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-top:1rem; }
.ampol-payment-steps>div { display:grid;place-items:center;gap:.2rem;border:1px solid rgba(255,255,255,.09);border-radius:1rem;padding:.7rem .35rem;text-align:center;background:rgba(255,255,255,.04); }
.ampol-payment-steps span { display:grid;width:1.6rem;height:1.6rem;place-items:center;border-radius:.55rem;color:var(--v12-action-text);background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent));font-size:.58rem;font-weight:1000; }
.ampol-payment-steps b { color:#f5fff9!important;font-size:.6rem; }
.ampol-payment-steps small { color:#809789;font-size:.48rem; }
.ampol-payment-note { margin-top:1rem;border:1px solid rgba(255,255,255,.09);border-radius:1rem;padding:.85rem;color:#a3b9ac;font-size:.62rem;line-height:1.9;background:rgba(0,0,0,.12); }
.ampol-payment-form { padding:1.15rem;background:var(--v12-panel-strong); }
.ampol-payment-form-head { margin-bottom:1rem; }
.ampol-payment-form-head h2 { margin-top:.3rem;color:var(--v12-text)!important;font-size:1.05rem;font-weight:950; }
.ampol-payment-form-head>span { border:1px solid var(--v12-line);border-radius:999px;padding:.45rem .7rem;color:var(--v12-accent-text);background:var(--v12-accent-soft);font-family:monospace;font-size:.62rem;font-weight:900; }
.ampol-payment-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem; }
.ampol-payment-fields .is-wide { grid-column:1/-1; }
.ampol-payment-fields label:not(.ampol-receipt-upload) { min-width:0; }
.ampol-payment-alert { border:1px solid var(--v12-line);border-radius:1rem;padding:.9rem;color:var(--v12-text);background:var(--v12-panel-soft);font-size:.7rem;line-height:1.9; }
.ampol-payment-alert b { color:var(--v12-text)!important; }
.ampol-payment-alert p { margin-top:.2rem;color:var(--v12-muted); }
.ampol-payment-alert.is-warning,.ampol-payment-alert.is-pending { border-color:color-mix(in srgb,#f59e0b 36%,var(--v12-line));background:color-mix(in srgb,#f59e0b 9%,var(--v12-panel-strong)); }
.ampol-payment-alert.is-rejected { border-color:color-mix(in srgb,#f43f5e 34%,var(--v12-line));background:color-mix(in srgb,#f43f5e 8%,var(--v12-panel-strong)); }
.ampol-payment-alert.is-approved { border-color:var(--v12-line-strong);background:linear-gradient(135deg,var(--v12-accent-soft),var(--v12-panel-strong)); }
.ampol-payment-alert .btn-primary { margin-top:.65rem; }
.ampol-receipt-upload { display:grid;min-height:8rem;place-items:center;align-content:center;gap:.3rem;border:2px dashed var(--v12-line-strong);border-radius:1.15rem;color:var(--v12-muted);background:var(--v12-panel-soft);text-align:center;cursor:pointer;transition:.2s ease; }
.ampol-receipt-upload:hover { border-color:var(--v12-accent);background:var(--v12-accent-soft); }
.ampol-receipt-upload input { position:absolute;width:1px;height:1px;opacity:0; }
.ampol-receipt-upload>span { display:grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:.8rem;color:var(--v12-action-text);background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent));font-size:1.2rem;font-weight:1000; }
.ampol-receipt-upload b { color:var(--v12-text)!important;font-size:.75rem; }
.ampol-receipt-upload small { font-size:.58rem; }

/* Cart */
html[data-theme] body.ampol-app .ampol-cart-page { color:var(--v12-text)!important;background:radial-gradient(circle at 8% 8%,var(--v12-accent-soft),transparent 30rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt))!important; }
html[data-theme] body.ampol-app .ampol-cart-page>.pointer-events-none.absolute.inset-0 { display:none; }
html[data-theme] body.ampol-app .ampol-cart-page :is(h1,h2,h3,b) { color:var(--v12-text)!important; }
html[data-theme] body.ampol-app .ampol-cart-page :is(p,small) { color:var(--v12-muted)!important; }
.ampol-cart-empty { isolation:isolate;border:1px solid var(--v12-line-strong)!important;background:linear-gradient(145deg,var(--v12-panel-strong),var(--v12-panel-soft))!important;box-shadow:0 28px 76px var(--v12-shadow),inset 0 1px 0 color-mix(in srgb,#fff 48%,transparent)!important; }
.ampol-cart-empty::before { content:'';position:absolute;z-index:-1;width:24rem;height:24rem;inset:-13rem auto auto -9rem;border-radius:50%;background:var(--v12-accent-soft);filter:blur(40px); }
.ampol-cart-empty>.pointer-events-none { display:none!important; }
.ampol-cart-empty .ampol-cart-animation { border-color:var(--v12-line-strong)!important;color:var(--v12-accent-text)!important;background:var(--v12-accent-soft)!important;box-shadow:0 18px 55px var(--v12-shadow)!important; }
.ampol-cart-empty .btn-primary { min-width:12rem; }

/* KYC guide and history — override legacy fixed colors with active theme */
html[data-theme] body.ampol-app.is-identity-route main { color:var(--v12-text);background:radial-gradient(circle at 8% 8%,var(--v12-accent-soft),transparent 30rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt)); }
html[data-theme] body.ampol-app.is-identity-route main :is(h1,h2,h3) { color:var(--v12-text)!important; }
html[data-theme] body.ampol-app.is-identity-route main :is(.text-slate-500,.text-slate-600) { color:var(--v12-muted)!important; }
html[data-theme] body.ampol-app.is-identity-route main :is(.bg-white,.bg-emerald-50\/70,.bg-emerald-50\/40) { border-color:var(--v12-line)!important;background:var(--v12-panel-soft)!important; }
html[data-theme] .kyc-form-column { border-color:var(--v12-line)!important;background:color-mix(in srgb,var(--v12-panel-strong) 82%,transparent)!important;box-shadow:0 18px 48px var(--v12-shadow); }
html[data-theme] .kyc-document-switch button { border-color:var(--v12-line)!important;color:var(--v12-muted)!important;background:var(--v12-panel-strong)!important; }
html[data-theme] .kyc-document-switch button b { color:var(--v12-text)!important; }
html[data-theme] .kyc-document-switch button>span { color:var(--v12-muted)!important;background:var(--v12-panel-soft)!important; }
html[data-theme] .kyc-document-switch button.is-active { border-color:var(--v12-accent)!important;background:linear-gradient(145deg,var(--v12-accent-soft),var(--v12-panel-strong))!important;box-shadow:0 0 0 3px var(--v12-accent-soft)!important; }
html[data-theme] .kyc-document-switch button.is-active>span { color:var(--v12-action-text)!important;background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent))!important; }
html[data-theme] .kyc-capture-frame { border-color:var(--v12-line-strong)!important;background:linear-gradient(145deg,var(--v12-panel-soft),color-mix(in srgb,var(--v12-accent-soft) 70%,var(--v12-panel-strong)))!important;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 35%,transparent); }
html[data-theme] .kyc-frame-head { color:var(--v12-muted)!important; }
html[data-theme] .kyc-frame-head b { color:var(--v12-accent-text)!important; }
html[data-theme] .kyc-step { border-color:var(--v12-panel-strong)!important;color:var(--v12-action-text)!important;background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent))!important; }
html[data-theme] .kyc-bank-card { background:linear-gradient(135deg,var(--v12-accent-2),var(--v12-accent) 62%,var(--v12-accent-3))!important;box-shadow:0 18px 48px var(--v12-shadow)!important; }
html[data-theme] .kyc-check-grid .is-good { border-color:var(--v12-line-strong)!important;color:var(--v12-accent-text)!important;background:var(--v12-accent-soft)!important; }
html[data-theme] .kyc-check-grid .is-bad { border-color:color-mix(in srgb,#f43f5e 28%,var(--v12-line))!important;background:color-mix(in srgb,#f43f5e 7%,var(--v12-panel-strong))!important; }
html[data-theme] .kyc-security-alert { border-color:color-mix(in srgb,#f59e0b 30%,var(--v12-line))!important;color:color-mix(in srgb,#f59e0b 65%,var(--v12-text))!important;background:color-mix(in srgb,#f59e0b 8%,var(--v12-panel-strong))!important; }
html[data-theme] .kyc-upload-box { border-color:var(--v12-line-strong)!important;background:var(--v12-panel-soft)!important; }
html[data-theme] .kyc-upload-box.has-file { border-color:var(--v12-accent)!important; }
html[data-theme] .kyc-upload-icon { color:var(--v12-action-text)!important;background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent))!important;box-shadow:0 10px 25px var(--v12-accent-soft); }
html[data-theme] .kyc-upload-box b { color:var(--v12-text)!important; }
html[data-theme] .kyc-upload-box small { color:var(--v12-muted)!important; }
html[data-theme] .kyc-preview button,html[data-theme] .kyc-pdf-preview button { color:var(--v12-text)!important;background:var(--v12-panel-soft)!important; }
html[data-theme] .kyc-pdf-preview { color:var(--v12-accent-text)!important; }
html[data-theme] .kyc-confirm-row { border-color:var(--v12-line)!important;background:var(--v12-panel-strong)!important; }
html[data-theme] .kyc-confirm-row b { color:var(--v12-text)!important; }
html[data-theme] .kyc-confirm-row small { color:var(--v12-muted)!important; }
html[data-theme] .kyc-confirm-check { border-color:var(--v12-line-strong)!important; }
html[data-theme] .kyc-confirm-row.is-confirmed { border-color:var(--v12-accent)!important;background:linear-gradient(145deg,var(--v12-accent-soft),var(--v12-panel-strong))!important; }
html[data-theme] .kyc-confirm-row.is-confirmed .kyc-confirm-check { border-color:var(--v12-accent)!important;color:var(--v12-action-text)!important;background:linear-gradient(145deg,var(--v12-accent-2),var(--v12-accent))!important; }

@media (min-width: 900px) {
    .ampol-payment-layout { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); }
    .ampol-payment-destination { position:sticky;top:6.5rem; }
}
@media (max-width: 720px) {
    html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card,.ampol-identity-approved-card) { align-items:flex-start;flex-wrap:wrap;padding:.9rem!important; }
    html[data-theme] body.ampol-app :is(.ampol-correction-required-card,.ampol-kyc-required-card) .btn-primary { width:100%; }
    .ampol-payment-heading { align-items:stretch;flex-direction:column; }
    .ampol-payment-heading .btn-secondary { width:100%; }
    .ampol-payment-fields { grid-template-columns:1fr; }
    .ampol-payment-fields>* { grid-column:1/-1; }
    .ampol-payment-steps { gap:.3rem; }
    .ampol-payment-steps small { display:none; }
    .ampol-payment-card-number b { letter-spacing:.09em; }
}

/* source: public/css/ampol-v12.13.1-my-cards.css */
/* AMPOL SHOP v12.13.1 — My Cards and secured KYC declaration */
html[data-theme] body.ampol-app.is-cards-route {
    color:var(--v12-text);
    background:radial-gradient(circle at 8% 8%,var(--v12-accent-soft),transparent 31rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt))!important;
}
.ampol-my-cards-page { color:var(--v12-text);background:radial-gradient(circle at 8% 8%,var(--v12-accent-soft),transparent 31rem),linear-gradient(145deg,var(--v12-page),var(--v12-page-alt)); }
.ampol-my-cards-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:1rem; }
.ampol-my-cards-heading h1 { margin-top:.45rem;color:var(--v12-text)!important;font-size:clamp(1.8rem,4vw,3rem);font-weight:1000;letter-spacing:-.04em; }
.ampol-my-cards-heading p:last-child { max-width:43rem;margin-top:.5rem;color:var(--v12-muted);font-size:.75rem;line-height:2; }
.ampol-cards-security-note { display:flex;align-items:center;gap:.9rem;margin-top:1.4rem;border:1px solid var(--v12-line);border-radius:1.25rem;padding:1rem;color:var(--v12-text);background:linear-gradient(135deg,var(--v12-accent-soft),var(--v12-panel-strong));box-shadow:0 15px 40px var(--v12-shadow); }
.ampol-cards-security-note>span { display:grid;width:2.8rem;height:2.8rem;flex:0 0 auto;place-items:center;border:1px solid var(--v12-line-strong);border-radius:.9rem;background:var(--v12-panel-strong); }
.ampol-cards-security-note b { color:var(--v12-text)!important;font-size:.78rem; }
.ampol-cards-security-note p { margin-top:.2rem;color:var(--v12-muted);font-size:.62rem;line-height:1.9; }
.ampol-bank-card-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.4rem; }
.ampol-bank-card-item { min-width:0;border:1px solid var(--v12-line);border-radius:1.8rem;padding:.7rem;background:var(--v12-panel-strong);box-shadow:0 24px 65px var(--v12-shadow);transition:.28s var(--v12-ease); }
.ampol-bank-card-item:hover { border-color:var(--v12-line-strong);box-shadow:0 30px 75px var(--v12-shadow),0 0 45px var(--v12-accent-soft);transform:translateY(-4px); }
.ampol-bank-card-visual { position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.586/1;border:1px solid rgba(255,255,255,.18);border-radius:1.4rem;padding:1.15rem;color:#fff;background:linear-gradient(145deg,var(--bank-a),var(--bank-b));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 18px 45px color-mix(in srgb,var(--bank-a) 32%,transparent); }
.ampol-bank-card-visual::before { content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.10) 48%,transparent 52%),repeating-linear-gradient(125deg,transparent 0 22px,rgba(255,255,255,.025) 23px 24px); }
.ampol-bank-card-visual::after { content:'';position:absolute;z-index:-1;width:14rem;height:14rem;inset:auto -5rem -8rem auto;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 2.6rem rgba(255,255,255,.035),0 0 0 5.2rem rgba(255,255,255,.025); }
.ampol-bank-card-glow { position:absolute;z-index:-1;width:13rem;height:13rem;inset:-7rem auto auto -5rem;border-radius:50%;background:#fff;opacity:.18;filter:blur(35px); }
.ampol-bank-card-visual header,.ampol-bank-card-visual footer { display:flex;align-items:center;justify-content:space-between;gap:.8rem; }
.ampol-bank-logo { display:flex;min-width:0;align-items:center;gap:.65rem; }
.ampol-bank-logo>span { display:grid;width:2.35rem;height:2.35rem;flex:0 0 auto;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:.75rem;color:#fff;background:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.2);font-size:1rem;font-weight:1000;backdrop-filter:blur(12px); }
.ampol-bank-logo b,.ampol-bank-logo small { display:block; }
.ampol-bank-logo b { overflow:hidden;color:#fff!important;font-size:.76rem;font-weight:950;white-space:nowrap;text-overflow:ellipsis; }
.ampol-bank-logo small { margin-top:.15rem;color:rgba(255,255,255,.62);font-family:monospace;font-size:.42rem;letter-spacing:.08em; }
.ampol-card-verified { display:inline-flex;flex:0 0 auto;align-items:center;gap:.25rem;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:.38rem .55rem;color:#fff;background:rgba(0,0,0,.14);font-size:.48rem;font-weight:900;backdrop-filter:blur(12px); }
.ampol-bank-chip { display:grid;width:2.65rem;height:2rem;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:1.35rem;overflow:hidden;border:1px solid rgba(91,67,18,.25);border-radius:.48rem;padding:.3rem;background:linear-gradient(145deg,#ffe891,#cba43e);box-shadow:inset 0 1px 0 rgba(255,255,255,.5); }
.ampol-bank-chip i { border-inline-end:1px solid rgba(91,67,18,.22); }
.ampol-bank-card-number { display:grid;grid-template-columns:repeat(4,auto);justify-content:center;gap:clamp(.55rem,3vw,1.3rem);margin-top:1.05rem;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.18);font-family:monospace;font-size:clamp(1rem,2.4vw,1.35rem);font-weight:900;letter-spacing:.08em;direction:ltr; }
.ampol-bank-card-visual footer { position:absolute;inset:auto 1.15rem 1rem; }
.ampol-bank-card-visual footer small,.ampol-bank-card-visual footer b { display:block; }
.ampol-bank-card-visual footer small { color:rgba(255,255,255,.58);font-size:.42rem; }
.ampol-bank-card-visual footer b { margin-top:.15rem;color:#fff!important;font-size:.62rem;font-weight:850; }
.ampol-bank-card-visual footer strong { color:#fff;font-family:Figtree,sans-serif;font-size:.63rem;letter-spacing:.04em; }
.ampol-bank-card-visual footer strong span { color:rgba(255,255,255,.62); }
.ampol-bank-card-meta { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;padding:.7rem 0 0; }
.ampol-bank-card-meta>div { min-width:0;border:1px solid var(--v12-line);border-radius:.9rem;padding:.65rem;background:var(--v12-panel-soft); }
.ampol-bank-card-meta small,.ampol-bank-card-meta b { display:block; }
.ampol-bank-card-meta small { overflow:hidden;color:var(--v12-muted);font-size:.48rem;white-space:nowrap;text-overflow:ellipsis; }
.ampol-bank-card-meta b { margin-top:.25rem;overflow:hidden;color:var(--v12-text)!important;font-size:.61rem;font-weight:900;white-space:nowrap;text-overflow:ellipsis; }
.ampol-my-cards-empty { display:grid;min-height:25rem;place-items:center;align-content:center;gap:.7rem;margin-top:1.4rem;border-radius:1.8rem;padding:2rem;text-align:center; }
.ampol-my-cards-empty>span { display:grid;width:5rem;height:5rem;place-items:center;border:1px solid var(--v12-line-strong);border-radius:1.5rem;background:var(--v12-accent-soft);box-shadow:0 18px 45px var(--v12-shadow);font-size:2rem; }
.ampol-my-cards-empty h2 { color:var(--v12-text)!important;font-size:1.25rem;font-weight:1000; }
.ampol-my-cards-empty p { max-width:35rem;color:var(--v12-muted);font-size:.72rem;line-height:2; }
.ampol-my-cards-empty .btn-primary { margin-top:.5rem; }

/* The declaration remains selectable/copyable but cannot be edited. */
html[data-theme] .kyc-locked-declaration { cursor:default;border-style:dashed!important;border-color:var(--v12-line-strong)!important;color:var(--v12-text)!important;background:linear-gradient(145deg,var(--v12-panel-soft),var(--v12-accent-soft))!important;caret-color:transparent; }
html[data-theme] .kyc-locked-declaration:focus { border-color:var(--v12-accent)!important;box-shadow:0 0 0 4px var(--v12-accent-soft)!important; }

@media(max-width:850px){.ampol-bank-card-grid{grid-template-columns:1fr}.ampol-bank-card-item{max-width:38rem;width:100%;margin-inline:auto}}
@media(max-width:620px){.ampol-my-cards-heading{align-items:stretch;flex-direction:column}.ampol-my-cards-heading .btn-secondary{width:100%}.ampol-cards-security-note{align-items:flex-start}.ampol-bank-card-visual{padding:.9rem}.ampol-bank-card-visual footer{inset:auto .9rem .8rem}.ampol-bank-card-number{gap:.48rem;font-size:.95rem}.ampol-bank-card-meta{grid-template-columns:1fr 1fr}.ampol-bank-card-meta>div:first-child{grid-column:1/-1}.ampol-bank-logo small{display:none}}
@media(max-width:370px){.ampol-bank-card-visual{aspect-ratio:1.48/1}.ampol-card-verified{font-size:.42rem}.ampol-bank-card-number{font-size:.82rem;letter-spacing:.04em}}

/* source: public/css/ampol-v12.14-experience.css */
/* AMPOL SHOP v12.14 — customer control, favorites, rules and resilient experience */
:root{
 --v14-accent:var(--v12-accent,#18d879);--v14-accent2:var(--v12-accent-2,#087443);--v14-accent3:var(--v12-accent-3,#a7f3d0);
 --v14-page:var(--v12-page,#07110e);--v14-page2:var(--v12-page-alt,#0c1814);--v14-panel:var(--v12-panel-strong,#111d19);
 --v14-soft:var(--v12-panel-soft,rgba(255,255,255,.045));--v14-line:var(--v12-line,rgba(255,255,255,.1));
 --v14-text:var(--v12-text,#f5fff9);--v14-muted:var(--v12-muted,#899b92);--v14-shadow:var(--v12-shadow,rgba(0,0,0,.32));
}
html[data-theme] :is(.ampol-restricted-page,.ampol-success-page){color:var(--v14-text);background:radial-gradient(circle at 10% 15%,color-mix(in srgb,var(--v14-accent) 13%,transparent),transparent 30rem),linear-gradient(145deg,var(--v14-page),var(--v14-page2))!important}

/* Global blocked account notice */
.ampol-blocked-banner{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:.7rem;min-height:3.5rem;border-bottom:1px solid rgba(251,113,133,.28);padding:.7rem 1rem;color:#ffe8ec;background:linear-gradient(90deg,#581c2b,#881337 48%,#581c2b);box-shadow:0 12px 34px rgba(76,5,25,.25);text-align:center}
.ampol-blocked-banner span{display:grid;width:1.8rem;height:1.8rem;place-items:center;border-radius:.6rem;background:rgba(255,255,255,.13);font-weight:1000}.ampol-blocked-banner b{font-size:.8rem}.ampol-blocked-banner small{max-width:48rem;color:#fecdd3;font-size:.68rem}.ampol-blocked-banner i{font-style:normal;font-weight:1000}

/* Favorites */
.store-product-card{position:relative}.ampol-favorite-form{position:absolute;z-index:35;inset:3.75rem auto auto .8rem}.ampol-favorite-button{display:flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.14);border-radius:.75rem;padding:.48rem .58rem;color:#e8fff3;background:rgba(4,15,11,.68);box-shadow:0 8px 22px rgba(0,0,0,.22);backdrop-filter:blur(12px);font-size:.58rem;font-weight:900;transition:.22s ease}.ampol-favorite-button svg{width:1rem;height:1rem}.ampol-favorite-button:hover{border-color:var(--v14-accent);color:var(--v14-accent3);transform:translateY(-2px)}.ampol-favorite-button.is-saved{border-color:color-mix(in srgb,var(--v14-accent) 60%,transparent);color:var(--v14-accent3);background:color-mix(in srgb,var(--v14-accent2) 78%,transparent)}
.ampol-favorites-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:2rem;overflow:hidden;border:1px solid var(--v14-line);border-radius:2rem;padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(135deg,var(--v14-panel),color-mix(in srgb,var(--v14-accent) 8%,var(--v14-soft)));box-shadow:0 28px 80px var(--v14-shadow)}.ampol-favorites-hero:after{content:"";position:absolute;width:18rem;height:18rem;inset:-9rem auto auto -8rem;border-radius:50%;background:var(--v14-accent);opacity:.12;filter:blur(45px)}.ampol-favorites-hero>*{position:relative;z-index:1}.ampol-favorites-hero h1{color:var(--v14-text)!important}.ampol-favorites-count{display:grid;min-width:10rem;place-items:center;border:1px solid var(--v14-line);border-radius:1.5rem;padding:1.4rem;background:var(--v14-soft);text-align:center}.ampol-favorites-count b{color:var(--v14-accent3);font-size:2.3rem}.ampol-favorites-count span{margin-top:.4rem;color:var(--v14-muted);font-size:.65rem;font-weight:800}

/* Account restriction */
.ampol-restriction-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,#fb7185 30%,var(--v14-line));border-radius:2.2rem;padding:clamp(1.5rem,5vw,3.5rem);background:linear-gradient(145deg,var(--v14-panel),color-mix(in srgb,#881337 11%,var(--v14-panel)));box-shadow:0 32px 90px var(--v14-shadow)}.ampol-restriction-card__glow{position:absolute;width:24rem;height:24rem;inset:-12rem auto auto -10rem;border-radius:50%;background:#e11d48;opacity:.14;filter:blur(55px)}.ampol-security-icon{display:grid;width:4rem;height:4rem;place-items:center;border:1px solid rgba(251,113,133,.3);border-radius:1.25rem;color:#fda4af;background:rgba(244,63,94,.1);box-shadow:0 0 35px rgba(225,29,72,.14)}.ampol-security-icon svg{width:2rem;height:2rem}.ampol-restriction-lock{position:relative;display:grid;aspect-ratio:1;max-width:15rem;place-items:center;margin-inline:auto;border:1px solid var(--v14-line);border-radius:50%;background:radial-gradient(circle,var(--v14-soft),transparent 68%)}.ampol-restriction-lock:before,.ampol-restriction-lock:after{content:"";position:absolute;inset:12%;border:1px dashed color-mix(in srgb,#fb7185 35%,transparent);border-radius:50%;animation:v14-spin 16s linear infinite}.ampol-restriction-lock:after{inset:25%;animation-direction:reverse;animation-duration:9s}.ampol-restriction-lock b{display:grid;width:4rem;height:4rem;place-items:center;border-radius:1.3rem;color:#fff;background:linear-gradient(145deg,#be123c,#4c0519);font-size:1.7rem;box-shadow:0 0 35px rgba(225,29,72,.3)}.ampol-restriction-lock span{position:absolute;bottom:14%;color:#fda4af;font-family:monospace;font-size:.55rem;font-weight:900;letter-spacing:.18em}

/* Cache console */
.ampol-cache-console{overflow:hidden;border:1px solid var(--v14-line);border-radius:2rem;padding:clamp(1.3rem,3vw,2.2rem);background:linear-gradient(145deg,var(--v14-panel),color-mix(in srgb,var(--v14-accent) 6%,var(--v14-soft)));box-shadow:0 25px 70px var(--v14-shadow)}.ampol-cache-console>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ampol-cache-console h2{color:var(--v14-text)!important}.ampol-cache-pulse{display:grid;min-width:5.5rem;place-items:center;gap:.5rem;border:1px solid var(--v14-line);border-radius:1.3rem;padding:1rem;color:var(--v14-accent3);background:var(--v14-soft);font-family:monospace;font-size:.55rem;font-weight:900;letter-spacing:.15em}.ampol-cache-pulse i{width:.75rem;height:.75rem;border-radius:50%;background:var(--v14-accent);box-shadow:0 0 0 .45rem color-mix(in srgb,var(--v14-accent) 12%,transparent),0 0 22px var(--v14-accent);animation:v14-pulse 1.8s ease-in-out infinite}.ampol-cache-target{position:relative;display:grid;min-height:9rem;align-content:start;gap:.55rem;border:1px solid var(--v14-line);border-radius:1.3rem;padding:1rem;background:var(--v14-soft);cursor:pointer;transition:.22s ease}.ampol-cache-target:hover{border-color:color-mix(in srgb,var(--v14-accent) 45%,var(--v14-line));transform:translateY(-2px)}.ampol-cache-target input{position:absolute;opacity:0}.ampol-cache-target__check{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--v14-line);border-radius:.65rem;color:transparent;background:var(--v14-panel)}.ampol-cache-target b{color:var(--v14-text);font-size:.8rem}.ampol-cache-target small{color:var(--v14-muted);font-size:.58rem;line-height:1.7}.ampol-cache-target:has(input:checked){border-color:var(--v14-accent);background:color-mix(in srgb,var(--v14-accent) 9%,var(--v14-soft));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--v14-accent) 10%,transparent)}.ampol-cache-target:has(input:checked) .ampol-cache-target__check{border-color:var(--v14-accent);color:var(--v12-action-text,#fff);background:linear-gradient(145deg,var(--v14-accent2),var(--v14-accent))}

/* Store rules */
.ampol-rules-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 13rem;align-items:center;gap:2rem;overflow:hidden;border:1px solid var(--v14-line);border-radius:2.2rem;padding:clamp(1.6rem,5vw,3.5rem);background:linear-gradient(135deg,var(--v14-panel),color-mix(in srgb,var(--v14-accent) 8%,var(--v14-panel)));box-shadow:0 30px 85px var(--v14-shadow)}.ampol-rules-hero h1{color:var(--v14-text)!important}.ampol-rules-seal{position:relative;display:grid;aspect-ratio:1;place-items:center;border:1px solid var(--v14-line);border-radius:50%;background:radial-gradient(circle,var(--v14-soft),transparent)}.ampol-rules-seal:before{content:"";position:absolute;inset:10%;border:1px dashed var(--v14-accent);border-radius:50%;animation:v14-spin 18s linear infinite}.ampol-rules-seal b{color:var(--v14-accent3);font-size:3rem}.ampol-rules-seal span{position:absolute;bottom:20%;color:var(--v14-muted);font-family:monospace;font-size:.48rem;font-weight:900;letter-spacing:.14em}.ampol-rule-card{display:flex;gap:1rem;border:1px solid var(--v14-line);border-radius:1.5rem;padding:1.25rem;background:var(--v14-panel);box-shadow:0 14px 36px var(--v14-shadow);transition:.22s ease}.ampol-rule-card:hover{border-color:color-mix(in srgb,var(--v14-accent) 38%,var(--v14-line));transform:translateY(-3px)}.ampol-rule-card>span{display:grid;width:2.5rem;height:2.5rem;flex:0 0 auto;place-items:center;border-radius:.8rem;color:var(--v14-accent3);background:color-mix(in srgb,var(--v14-accent) 10%,var(--v14-soft));font-family:monospace;font-size:.65rem;font-weight:900}.ampol-rule-card h2{color:var(--v14-text);font-size:.9rem;font-weight:950}.ampol-rule-card p{margin-top:.55rem;color:var(--v14-muted);font-size:.7rem;line-height:2}

/* Friendly conflict state */
.ampol-conflict-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,#f59e0b 32%,var(--v14-line));border-radius:2.2rem;padding:clamp(1.6rem,5vw,3.5rem);background:linear-gradient(145deg,var(--v14-panel),color-mix(in srgb,#f59e0b 7%,var(--v14-panel)));box-shadow:0 32px 90px var(--v14-shadow);text-align:center}.ampol-conflict-card:after{content:"";position:absolute;width:18rem;height:18rem;inset:-10rem auto auto -8rem;border-radius:50%;background:#f59e0b;opacity:.12;filter:blur(45px)}.ampol-conflict-card>*{position:relative;z-index:1}.ampol-conflict-card__icon{display:grid;width:4.5rem;height:4.5rem;place-items:center;margin-inline:auto;border:1px solid rgba(245,158,11,.25);border-radius:1.4rem;color:#fcd34d;background:rgba(245,158,11,.1);font-size:2rem;animation:v14-pulse 2s ease-in-out infinite}

/* Purchase success */
.ampol-success-stage{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--v14-accent) 32%,var(--v14-line));border-radius:2.4rem;padding:clamp(1.7rem,5vw,4rem);background:linear-gradient(145deg,var(--v14-panel),color-mix(in srgb,var(--v14-accent) 8%,var(--v14-panel)));box-shadow:0 35px 100px var(--v14-shadow);text-align:center}.ampol-success-stage h1{color:var(--v14-text)!important}.ampol-success-stage:before{content:"";position:absolute;width:28rem;height:28rem;inset:-16rem auto auto 50%;translate:-50% 0;border-radius:50%;background:var(--v14-accent);opacity:.12;filter:blur(65px)}.ampol-success-orbit{position:relative;display:grid;width:7.5rem;height:7.5rem;place-items:center;margin-inline:auto;border:1px solid color-mix(in srgb,var(--v14-accent) 35%,transparent);border-radius:50%;box-shadow:0 0 70px color-mix(in srgb,var(--v14-accent) 16%,transparent)}.ampol-success-orbit span{display:grid;width:4.1rem;height:4.1rem;place-items:center;border-radius:1.35rem;color:var(--v12-action-text,#fff);background:linear-gradient(145deg,var(--v14-accent2),var(--v14-accent));font-size:2rem;font-weight:1000;animation:v14-pop .75s cubic-bezier(.2,.9,.3,1.3)}.ampol-success-orbit i{position:absolute;width:.55rem;height:.55rem;border-radius:50%;background:var(--v14-accent3);box-shadow:0 0 14px var(--v14-accent);animation:v14-orbit 5s linear infinite}.ampol-success-orbit i:nth-child(2){animation-delay:-1.6s}.ampol-success-orbit i:nth-child(3){animation-delay:-3.2s}.ampol-success-order{display:grid;width:min(100%,25rem);gap:.35rem;margin:1.8rem auto 0;border:1px solid var(--v14-line);border-radius:1.4rem;padding:1rem;color:var(--v14-text);background:var(--v14-soft);transition:.2s ease}.ampol-success-order:hover{border-color:var(--v14-accent);transform:translateY(-2px)}.ampol-success-order span,.ampol-success-order small{color:var(--v14-muted);font-size:.6rem;font-weight:800}.ampol-success-order b{color:var(--v14-accent3);font-size:1.8rem}.ampol-success-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;max-width:47rem;margin:1rem auto 0}.ampol-success-metrics>div{display:grid;gap:.45rem;border:1px solid var(--v14-line);border-radius:1.2rem;padding:1rem;background:var(--v14-soft)}.ampol-success-metrics small{color:var(--v14-muted);font-size:.58rem}.ampol-success-metrics b{color:var(--v14-text);font-size:.72rem}.ampol-success-confetti i{position:absolute;top:-2rem;left:calc((var(--i) * 5.4%) - 2%);width:.42rem;height:.9rem;border-radius:.2rem;background:hsl(calc(var(--i) * 38deg) 75% 58%);opacity:.75;animation:v14-fall calc(3s + var(--i)*.08s) linear infinite;animation-delay:calc(var(--i)*-.23s)}

/* Restored animated loader, themed instead of a plain screen */
#ampol-page-loader{position:fixed!important;z-index:9999!important;inset:0!important;display:grid!important;place-items:center!important;visibility:hidden;opacity:0;background:color-mix(in srgb,var(--v14-page) 92%,transparent)!important;backdrop-filter:blur(16px);transition:opacity .2s ease,visibility .2s ease}
#ampol-page-loader.is-visible{visibility:visible;opacity:1}.ampol-v8-loader{position:relative!important;display:grid!important;width:min(78vw,18rem)!important;aspect-ratio:1!important;place-items:center!important}.ampol-v8-loader__ring{position:absolute!important;inset:5%!important;border:1px solid color-mix(in srgb,var(--v14-accent) 32%,transparent)!important;border-radius:50%!important;animation:v14-spin 9s linear infinite!important}.ampol-v8-loader__ring.is-inner{inset:23%!important;border-style:dashed!important;animation-direction:reverse!important;animation-duration:5s!important}.ampol-v8-loader__token,.ampol-v8-loader__inner-token{position:absolute!important;display:grid!important;place-items:center!important;border:1px solid var(--v14-line)!important;border-radius:.7rem!important;color:var(--v14-accent3)!important;background:var(--v14-panel)!important;box-shadow:0 8px 24px var(--v14-shadow)!important;font-size:.62rem!important;font-weight:1000!important}.ampol-v8-loader__token{width:2.25rem!important;height:2.25rem!important}.ampol-v8-loader__inner-token{width:1.7rem!important;height:1.7rem!important}.ampol-v8-loader__token.is-gem{top:-1.1rem;left:calc(50% - 1.1rem)}.ampol-v8-loader__token.is-cp{right:-1.1rem;top:calc(50% - 1.1rem)}.ampol-v8-loader__token.is-uc{bottom:-1.1rem;left:calc(50% - 1.1rem)}.ampol-v8-loader__token.is-star{left:-1.1rem;top:calc(50% - 1.1rem)}.ampol-v8-loader__inner-token.is-one{top:-.85rem;left:calc(50% - .85rem)}.ampol-v8-loader__inner-token.is-two{bottom:-.85rem;left:calc(50% - .85rem)}.ampol-v8-loader__core{position:relative!important;z-index:2!important;display:grid!important;place-items:center!important;gap:.45rem!important;text-align:center!important}.ampol-v8-loader__mark{display:grid!important;width:4rem!important;height:4rem!important;place-items:center!important;border-radius:1.3rem!important;color:var(--v12-action-text,#fff)!important;background:linear-gradient(145deg,var(--v14-accent2),var(--v14-accent))!important;box-shadow:0 0 55px color-mix(in srgb,var(--v14-accent) 24%,transparent)!important;font-size:1.8rem!important;font-weight:1000!important;animation:v14-pulse 1.8s ease-in-out infinite!important}.ampol-v8-loader__core b{color:var(--v14-text)!important;font-family:monospace!important;font-size:.72rem!important;letter-spacing:.16em!important}.ampol-v8-loader__core small{color:var(--v14-muted)!important;font-size:.58rem!important}.ampol-v8-loader__dots{display:flex!important;gap:.25rem!important}.ampol-v8-loader__dots i{width:.3rem!important;height:.3rem!important;border-radius:50%!important;background:var(--v14-accent)!important;animation:v14-dots 1s ease-in-out infinite!important}.ampol-v8-loader__dots i:nth-child(2){animation-delay:.15s!important}.ampol-v8-loader__dots i:nth-child(3){animation-delay:.3s!important}

@keyframes v14-spin{to{transform:rotate(1turn)}}@keyframes v14-pulse{50%{transform:scale(.88);opacity:.65}}@keyframes v14-pop{0%{transform:scale(.2) rotate(-20deg);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes v14-orbit{from{transform:rotate(0) translateX(3.7rem) rotate(0)}to{transform:rotate(1turn) translateX(3.7rem) rotate(-1turn)}}@keyframes v14-fall{0%{transform:translateY(-2rem) rotate(0);opacity:0}15%{opacity:.8}100%{transform:translateY(38rem) rotate(2turn);opacity:0}}@keyframes v14-dots{50%{transform:translateY(-.25rem);opacity:.4}}
@media(max-width:720px){.ampol-blocked-banner{align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}.ampol-blocked-banner small{width:calc(100% - 2.5rem);margin-inline-start:2.5rem;text-align:start}.ampol-favorites-hero,.ampol-cache-console>header{align-items:flex-start;flex-direction:column}.ampol-favorites-count{width:100%}.ampol-rules-hero{grid-template-columns:1fr}.ampol-rules-seal{display:none}.ampol-success-metrics{grid-template-columns:1fr}.ampol-favorite-form{inset:3.35rem auto auto .55rem}.ampol-favorite-button span{display:none}}
@media(prefers-reduced-motion:reduce){.ampol-restriction-lock:before,.ampol-restriction-lock:after,.ampol-rules-seal:before,.ampol-success-orbit i,.ampol-success-confetti i,.ampol-v8-loader__ring,.ampol-v8-loader__mark,.ampol-v8-loader__dots i{animation:none!important}}
.product-service-favorite{display:flex;width:100%;align-items:center;justify-content:center;gap:.55rem;margin-top:.7rem;border:1px solid var(--v14-line);border-radius:1rem;padding:.85rem;color:var(--v14-muted);background:var(--v14-soft);font-size:.7rem;font-weight:900;transition:.2s ease}.product-service-favorite svg{width:1.15rem;height:1.15rem}.product-service-favorite:hover,.product-service-favorite.is-saved{border-color:var(--v14-accent);color:var(--v14-accent3);background:color-mix(in srgb,var(--v14-accent) 9%,var(--v14-soft))}
#ampol-page-loader{pointer-events:none}#ampol-page-loader.is-visible{pointer-events:auto}

/* source: public/css/ampol-v12.15-checkout-fields.css */
/* AMPOL v12.15 — atomic checkout, conditional fields and compact mobile navigation */
:root {
    --v15-accent: var(--v12-accent, #1686d9);
    --v15-success: #16a56b;
    --v15-danger: #e34a62;
    --v15-surface: color-mix(in srgb, var(--v12-card, #fff) 94%, transparent);
    --v15-border: color-mix(in srgb, var(--v15-accent) 24%, transparent);
    --v15-text: var(--v12-text, #102b46);
    --v15-muted: var(--v12-muted, #66809a);
}

body.ampol-modal-open { overflow: hidden !important; }

.ampol-checkout-method { position: relative; isolation: isolate; }
.ampol-checkout-method > input[type="radio"] {
    width: 1.35rem !important; height: 1.35rem !important; flex: 0 0 1.35rem;
    appearance: none; border: 2px solid color-mix(in srgb, currentColor 35%, transparent) !important;
    border-radius: 999px; background: var(--v15-surface) !important; display: grid; place-content: center;
}
.ampol-checkout-method > input[type="radio"]::before {
    content: ""; width: .68rem; height: .68rem; border-radius: inherit; transform: scale(0);
    background: var(--v15-success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--v15-success) 20%, transparent);
    transition: transform .18s ease;
}
.ampol-checkout-method > input[type="radio"]:checked::before { transform: scale(1); }
.ampol-checkout-method.is-selected {
    outline: 3px solid color-mix(in srgb, var(--v15-accent) 28%, transparent);
    border-color: var(--v15-accent) !important;
    box-shadow: 0 15px 45px color-mix(in srgb, var(--v15-accent) 18%, transparent);
    transform: translateY(-2px);
}

.ampol-checkout-card-form {
    margin-top: 1rem; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid var(--v15-border);
    border-radius: 1.5rem; background: var(--v15-surface); color: var(--v15-text);
    box-shadow: inset 0 1px color-mix(in srgb, #fff 70%, transparent), 0 18px 50px color-mix(in srgb, var(--v15-accent) 10%, transparent);
}
.ampol-checkout-bank-card {
    position: relative; overflow: hidden; min-height: 11rem; padding: 1.35rem; border-radius: 1.4rem;
    color: #fff; background: linear-gradient(135deg, #0b568b, var(--v15-accent) 60%, #55b8e9);
    box-shadow: 0 18px 45px color-mix(in srgb, var(--v15-accent) 28%, transparent);
}
.ampol-checkout-bank-card::after { content:"A"; position:absolute; inset-inline-end:1rem; bottom:-2.8rem; font-size:9rem; font-weight:900; opacity:.08; }
.ampol-checkout-bank-card small,.ampol-checkout-bank-card em { display:block; font-size:.68rem; font-style:normal; opacity:.75; }
.ampol-checkout-bank-card__number { position:relative; z-index:1; display:block; margin:1.15rem 0; border:0; color:#fff; background:transparent; font-size:clamp(1.05rem,4vw,1.55rem); font-weight:900; letter-spacing:.16em; cursor:pointer; }
.ampol-checkout-bank-card > div { display:flex; justify-content:space-between; gap:1rem; font-size:.78rem; }
.ampol-checkout-receipt-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1.25rem; }
.ampol-checkout-receipt-fields label > span { display:block; margin-bottom:.45rem; font-size:.73rem; font-weight:900; color:var(--v15-text); }
.ampol-checkout-receipt-fields .is-wide { grid-column:1/-1; }
.ampol-checkout-receipt-fields .field { color:var(--v15-text) !important; background:color-mix(in srgb,var(--v15-surface) 94%,#fff) !important; border-color:var(--v15-border) !important; }
.ampol-file-field { padding:.75rem !important; }
.ampol-checkout-card-form__notice { margin-top:1rem; padding:.9rem 1rem; border-radius:1rem; background:color-mix(in srgb,var(--v15-success) 10%,transparent); color:color-mix(in srgb,var(--v15-success) 78%,var(--v15-text)); font-size:.72rem; font-weight:900; }

.ampol-terms-accepted { border-color:var(--v15-success)!important; background:color-mix(in srgb,var(--v15-success) 10%,transparent)!important; }
.ampol-terms-accepted input[type="checkbox"], .product-order-confirm input:checked + span + i {
    box-shadow:0 0 0 5px color-mix(in srgb,var(--v15-success) 18%,transparent)!important;
}
.ampol-terms-accepted input[type="checkbox"] { accent-color:var(--v15-success); width:1.35rem!important; height:1.35rem!important; }

.ampol-rules-modal { position:fixed; inset:0; z-index:9999; display:grid; place-items:center; padding:1rem; }
.ampol-rules-modal__backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(4,15,27,.72); backdrop-filter:blur(12px); }
.ampol-rules-modal__panel { position:relative; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(880px,100%); max-height:min(88vh,850px); overflow:hidden; border:1px solid var(--v15-border); border-radius:2rem; background:var(--v15-surface); color:var(--v15-text); box-shadow:0 35px 120px rgba(0,0,0,.4); }
.ampol-rules-modal__panel > header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.25rem 1.5rem; border-bottom:1px solid var(--v15-border); }
.ampol-rules-modal__panel > header h2 { margin-top:.3rem; font-size:1.35rem; font-weight:950; }
.ampol-rules-modal__panel > header > button { width:2.7rem; height:2.7rem; border:1px solid var(--v15-border); border-radius:1rem; background:transparent; color:var(--v15-text); font-size:1.6rem; }
.ampol-rules-modal__body { overflow:auto; overscroll-behavior:contain; padding:1.25rem 1.5rem; }
.ampol-rules-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
.ampol-rule-card { display:flex; gap:.9rem; min-width:0; padding:1rem; border:1px solid var(--v15-border); border-radius:1.2rem; background:color-mix(in srgb,var(--v15-surface) 88%,var(--v15-accent) 4%); }
.ampol-rule-card > span { display:grid; place-content:center; width:2rem; height:2rem; flex:0 0 2rem; border-radius:.75rem; background:color-mix(in srgb,var(--v15-accent) 14%,transparent); color:var(--v15-accent); font-size:.65rem; font-weight:900; }
.ampol-rule-card h3,.ampol-rule-card h2 { color:var(--v15-text)!important; font-size:.85rem; font-weight:950; }
.ampol-rule-card p { margin-top:.4rem; color:var(--v15-muted)!important; font-size:.7rem; line-height:1.9; }
.ampol-rules-warning { grid-column:1/-1; padding:1.15rem; border:1px solid color-mix(in srgb,var(--v15-danger) 25%,transparent); border-radius:1.2rem; background:color-mix(in srgb,var(--v15-danger) 8%,var(--v15-surface)); color:var(--v15-text); }
.ampol-rules-warning strong { color:var(--v15-danger); font-size:.9rem; }
.ampol-rules-warning p { margin-top:.45rem; color:var(--v15-muted); font-size:.73rem; font-weight:700; line-height:1.9; }
.ampol-rules-modal__panel > footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.5rem; border-top:1px solid var(--v15-border); }
.ampol-rules-modal__panel > footer button { min-height:3rem; padding:0 1.25rem; border:0; border-radius:1rem; background:linear-gradient(135deg,var(--v15-success),#77d5a9); color:#fff; font-size:.78rem; font-weight:950; }
.ampol-rules-modal__panel > footer a { color:var(--v15-accent); font-size:.72rem; font-weight:900; }

.ampol-order-radio-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
.ampol-order-radio { position:relative; min-height:4.4rem; display:grid; place-content:center; border:1px solid var(--v15-border); border-radius:1.1rem; background:var(--v15-surface); color:var(--v15-text); cursor:pointer; transition:.2s ease; }
.ampol-order-radio input { position:absolute; opacity:0; pointer-events:none; }
.ampol-order-radio i { position:absolute; top:.5rem; inset-inline-end:.55rem; display:grid; place-content:center; width:1.25rem; height:1.25rem; border-radius:999px; background:color-mix(in srgb,var(--v15-muted) 18%,transparent); color:transparent; font-style:normal; font-size:.65rem; }
.ampol-order-radio span { font-size:.82rem; font-weight:950; }
.ampol-order-radio.is-selected { border:2px solid var(--v15-success); background:color-mix(in srgb,var(--v15-success) 10%,var(--v15-surface)); transform:translateY(-2px); box-shadow:0 12px 30px color-mix(in srgb,var(--v15-success) 16%,transparent); }
.ampol-order-radio.is-selected i { background:var(--v15-success); color:#fff; }

.ampol-payment-resume { padding:clamp(1.1rem,4vw,2.2rem); border:1px solid var(--v15-border); border-radius:2rem; background:var(--v15-surface); color:var(--v15-text); box-shadow:0 30px 90px color-mix(in srgb,var(--v15-accent) 14%,transparent); }
.ampol-payment-resume__head { display:flex; align-items:flex-start; justify-content:space-between; gap:1.2rem; }
.ampol-payment-resume__head h1 { margin-top:.6rem; font-size:clamp(1.7rem,5vw,2.8rem); font-weight:950; }
.ampol-payment-resume__head p { margin-top:.65rem; color:var(--v15-muted); font-size:.8rem; line-height:2; }
.ampol-payment-resume__head > div:last-child { flex:0 0 auto; padding:1rem; border-radius:1.1rem; background:color-mix(in srgb,var(--v15-accent) 10%,transparent); text-align:center; }
.ampol-payment-resume__head > div:last-child small,.ampol-payment-resume__head > div:last-child b { display:block; }
.ampol-payment-resume__head > div:last-child small { color:var(--v15-muted); font-size:.65rem; }
.ampol-payment-resume__head > div:last-child b { margin-top:.35rem; font-size:1rem; }
.ampol-payment-choice-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.85rem; margin-top:1.5rem; }
.ampol-payment-choice { position:relative; display:flex; align-items:center; gap:.75rem; min-height:7rem; padding:1rem; border:1px solid var(--v15-border); border-radius:1.25rem; background:color-mix(in srgb,var(--v15-surface) 92%,var(--v15-accent) 3%); cursor:pointer; transition:.2s ease; }
.ampol-payment-choice input { position:absolute; opacity:0; }
.ampol-payment-choice > i { position:absolute; top:.6rem; inset-inline-end:.6rem; width:1.25rem; height:1.25rem; display:grid; place-content:center; border-radius:50%; background:color-mix(in srgb,var(--v15-muted) 16%,transparent); color:transparent; font-size:.65rem; font-style:normal; }
.ampol-payment-choice > span { display:grid; place-content:center; width:2.8rem; height:2.8rem; flex:0 0 2.8rem; border-radius:1rem; background:color-mix(in srgb,var(--v15-accent) 12%,transparent); color:var(--v15-accent); font-size:.75rem; font-weight:950; }
.ampol-payment-choice b,.ampol-payment-choice small,.ampol-payment-choice em { display:block; }
.ampol-payment-choice b { font-size:.82rem; }.ampol-payment-choice small { margin-top:.35rem; color:var(--v15-muted); font-size:.62rem; }.ampol-payment-choice em { margin-top:.35rem; color:var(--v15-danger); font-size:.6rem; font-style:normal; font-weight:900; }
.ampol-payment-choice.is-selected { border:2px solid var(--v15-success); transform:translateY(-2px); box-shadow:0 15px 35px color-mix(in srgb,var(--v15-success) 14%,transparent); }.ampol-payment-choice.is-selected > i { color:#fff; background:var(--v15-success); }
.ampol-payment-resume__submit,.ampol-order-pay-now { display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:1.15rem; padding:1rem 1.2rem; border:0; border-radius:1.1rem; background:linear-gradient(135deg,var(--v15-accent),color-mix(in srgb,var(--v15-accent) 65%,#59c7e8)); color:#fff; font-size:.82rem; font-weight:950; }
.ampol-payment-resume__submit:disabled { opacity:.45; cursor:not-allowed; }.ampol-payment-resume__back { display:block; margin-top:1rem; text-align:center; color:var(--v15-muted); font-size:.7rem; font-weight:850; }
.ampol-payment-error { margin-top:1rem; padding:.9rem; border:1px solid color-mix(in srgb,var(--v15-danger) 28%,transparent); border-radius:1rem; background:color-mix(in srgb,var(--v15-danger) 8%,transparent); color:var(--v15-danger); font-size:.75rem; font-weight:900; }
.ampol-order-pay-now { flex-direction:column; align-items:flex-start; gap:.35rem; text-decoration:none; }.ampol-order-pay-now span { opacity:.78; font-size:.66rem; }.ampol-order-pay-now.is-reviewing { background:linear-gradient(135deg,#946110,#d69a2d); }

@media (max-width: 1023px) {
    .ampol-mobile-menu { position:fixed!important; inset:var(--ampol-header-height,76px) 0 0!important; height:auto!important; max-height:none!important; overflow-y:auto!important; overscroll-behavior:contain; padding:0 0 calc(6.5rem + env(safe-area-inset-bottom))!important; background:var(--v15-surface)!important; z-index:1100!important; }
    .ampol-mobile-menu .page-shell { padding:.75rem!important; }
    .ampol-mobile-menu__grid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:.45rem!important; align-content:start; }
    .ampol-mobile-menu__grid > a { min-height:2.8rem!important; padding:.65rem .8rem!important; border-radius:.85rem!important; font-size:.72rem!important; }
    .ampol-mobile-menu__logout { grid-column:1/-1; position:sticky; bottom:.6rem; margin-top:.35rem; padding-top:.5rem; background:linear-gradient(to top,var(--v15-surface) 72%,transparent); z-index:2; }
    .ampol-mobile-menu__logout button { width:100%; min-height:3rem; border:1px solid color-mix(in srgb,var(--v15-danger) 30%,transparent); border-radius:.9rem; background:color-mix(in srgb,var(--v15-danger) 10%,var(--v15-surface)); color:var(--v15-danger); font-size:.75rem; font-weight:950; }
}

@media (max-width: 640px) {
    .ampol-checkout-receipt-fields,.ampol-rules-list,.ampol-payment-choice-grid { grid-template-columns:1fr; }
    .ampol-checkout-receipt-fields .is-wide,.ampol-rules-warning { grid-column:auto; }
    .ampol-rules-modal { padding:0; align-items:end; }
    .ampol-rules-modal__panel { width:100%; max-height:94dvh; border-radius:1.5rem 1.5rem 0 0; }
    .ampol-rules-modal__body { padding:1rem; }
    .ampol-rules-modal__panel > footer { flex-direction:column; align-items:stretch; text-align:center; }
    .ampol-payment-resume__head { flex-direction:column; }.ampol-payment-resume__head > div:last-child { width:100%; }
    .ampol-order-radio-grid { grid-template-columns:1fr; }
    .ampol-order-radio { min-height:3.6rem; }
}

@media (prefers-reduced-motion: reduce) {
    .ampol-checkout-method,.ampol-order-radio,.ampol-payment-choice { transition:none!important; transform:none!important; }
}

/* source: public/css/ampol-v12.16-operations.css */
/* AMPOL v12.16 — critical payment UI, owner operations and maintenance */
:root{--op-accent:var(--v12-accent,#2383db);--op-success:#20b779;--op-text:var(--v12-text,#102b46);--op-muted:var(--v12-muted,#637d96);--op-card:color-mix(in srgb,var(--v12-card,#fff) 94%,transparent);--op-border:color-mix(in srgb,var(--op-accent) 23%,transparent)}
.ampol-payment-resume{max-width:920px;margin:auto;padding:clamp(18px,4vw,34px);border:1px solid var(--op-border);border-radius:32px;background:var(--op-card);color:var(--op-text);box-shadow:0 30px 90px color-mix(in srgb,var(--op-accent) 14%,transparent)}
.ampol-payment-resume__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.ampol-payment-resume__head h1{margin:.55rem 0 0;font-size:clamp(1.65rem,5vw,2.75rem);font-weight:950}.ampol-payment-resume__head p{margin:.65rem 0 0;color:var(--op-muted);font-size:.82rem;line-height:2}.ampol-payment-resume__amount{flex:0 0 auto;padding:16px 20px;border-radius:18px;background:color-mix(in srgb,var(--op-accent) 10%,transparent);text-align:center}.ampol-payment-resume__amount small,.ampol-payment-resume__amount b{display:block}.ampol-payment-resume__amount small{color:var(--op-muted);font-size:.66rem}.ampol-payment-resume__amount b{margin-top:6px}
.ampol-payment-choice-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px}.ampol-payment-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:88px;padding:16px;border:1px solid var(--op-border);border-radius:22px;background:color-mix(in srgb,var(--op-card) 92%,var(--op-accent) 3%);cursor:pointer;transition:.2s}.ampol-payment-choice input{position:absolute;opacity:0}.ampol-payment-choice>i{position:absolute;top:10px;inset-inline-end:10px;display:grid;place-content:center;width:21px;height:21px;border-radius:50%;background:color-mix(in srgb,var(--op-muted) 17%,transparent);color:transparent;font-style:normal}.ampol-payment-choice>span{display:grid;place-content:center;width:48px;height:48px;flex:0 0 48px;border-radius:16px;background:color-mix(in srgb,var(--op-accent) 12%,transparent);color:var(--op-accent);font-size:.75rem;font-weight:950}.ampol-payment-choice b,.ampol-payment-choice small,.ampol-payment-choice em{display:block}.ampol-payment-choice b{font-size:.86rem}.ampol-payment-choice small{margin-top:5px;color:var(--op-muted);font-size:.66rem}.ampol-payment-choice em{margin-top:5px;color:#dc3f5e;font-size:.63rem;font-style:normal}.ampol-payment-choice__detail{margin-top:10px;padding-top:10px;border-top:1px dashed var(--op-border);color:var(--op-muted);font-size:.66rem;line-height:1.9}.ampol-payment-choice.is-selected{border:2px solid var(--op-success);transform:translateY(-2px);box-shadow:0 16px 36px color-mix(in srgb,var(--op-success) 15%,transparent)}.ampol-payment-choice.is-selected>i{background:var(--op-success);color:#fff}
.ampol-payment-resume__submit,.ampol-order-pay-now{display:flex!important;align-items:center;justify-content:space-between;width:100%;margin-top:18px;padding:16px 20px;border:0;border-radius:18px;background:linear-gradient(135deg,var(--op-accent),color-mix(in srgb,var(--op-accent) 60%,#64d5ec));color:#fff!important;text-decoration:none!important;font-size:.85rem;font-weight:950;box-shadow:0 16px 34px color-mix(in srgb,var(--op-accent) 18%,transparent)}.ampol-payment-resume__submit:disabled{opacity:.45}.ampol-payment-resume__back{display:block;margin-top:16px;text-align:center;color:var(--op-muted);font-size:.74rem;font-weight:850}.ampol-payment-error{margin-top:16px;padding:14px;border:1px solid #e34a6250;border-radius:16px;background:#e34a6212;color:#db3151;font-size:.76rem;font-weight:900}.ampol-order-pay-now{flex-direction:column;align-items:flex-start}.ampol-order-pay-now span{font-size:.68rem;opacity:.8}.ampol-order-pay-now.is-reviewing{background:linear-gradient(135deg,#946110,#d69a2d)}
.ampol-maintenance-body{margin:0;min-height:100vh;color:var(--op-text);background:radial-gradient(circle at 16% 14%,color-mix(in srgb,var(--op-accent) 23%,transparent),transparent 32%),linear-gradient(145deg,color-mix(in srgb,var(--op-card) 92%,#fff),color-mix(in srgb,var(--op-accent) 8%,#eef5fb));font-family:Tahoma,Arial,sans-serif}.ampol-maintenance{min-height:100vh;display:grid;place-items:center;padding:24px}.ampol-maintenance__card{position:relative;overflow:hidden;width:min(820px,100%);padding:clamp(24px,6vw,64px);border:1px solid var(--op-border);border-radius:40px;background:var(--op-card);box-shadow:0 40px 130px color-mix(in srgb,var(--op-accent) 20%,transparent);text-align:center}.ampol-maintenance__brand{display:flex;align-items:center;justify-content:center;gap:12px}.ampol-maintenance__brand>span{display:grid;place-content:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(145deg,var(--op-accent),#0b548a);color:#fff;font-weight:950}.ampol-maintenance__brand b,.ampol-maintenance__brand small{display:block;text-align:right}.ampol-maintenance__brand small{margin-top:4px;color:var(--op-muted);font-size:9px;letter-spacing:.18em}.ampol-maintenance__orb{position:relative;display:grid;place-content:center;width:150px;height:150px;margin:34px auto;border-radius:50%;background:color-mix(in srgb,var(--op-accent) 8%,transparent)}.ampol-maintenance__orb i{position:absolute;inset:10px;border:2px dashed color-mix(in srgb,var(--op-accent) 40%,transparent);border-radius:50%;animation:ampol-spin 11s linear infinite}.ampol-maintenance__orb i:nth-child(2){inset:25px;animation-direction:reverse;animation-duration:7s}.ampol-maintenance__orb i:nth-child(3){inset:45px;border-style:solid;animation-duration:4s}.ampol-maintenance__orb b{font-size:10px;color:var(--op-accent);letter-spacing:.16em}.ampol-maintenance h1{margin:14px 0 0;font-size:clamp(1.8rem,6vw,3.5rem);font-weight:950}.ampol-maintenance h1+p{max-width:620px;margin:16px auto 0;color:var(--op-muted);line-height:2}.ampol-maintenance__eta{display:inline-flex;gap:14px;margin-top:22px;padding:12px 18px;border-radius:16px;background:color-mix(in srgb,var(--op-accent) 10%,transparent)}.ampol-maintenance__eta small{color:var(--op-muted)}.ampol-maintenance__progress{height:8px;margin-top:28px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--op-accent) 12%,transparent)}.ampol-maintenance__progress i{display:block;width:36%;height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--op-accent),transparent);animation:ampol-progress 2.2s ease-in-out infinite}.ampol-maintenance footer{display:flex;justify-content:space-between;gap:12px;margin-top:22px;color:var(--op-muted);font-size:10px}.eyebrow{color:var(--op-accent);font-size:10px;font-weight:950;letter-spacing:.16em}.admin-table input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--op-success)}
@keyframes ampol-spin{to{transform:rotate(360deg)}}@keyframes ampol-progress{from{transform:translateX(220%)}to{transform:translateX(-320%)}}
@media(max-width:640px){.ampol-payment-choice-grid{grid-template-columns:1fr}.ampol-payment-resume__head{flex-direction:column}.ampol-payment-resume__amount{width:100%;box-sizing:border-box}.ampol-maintenance{padding:12px}.ampol-maintenance__card{border-radius:28px}.ampol-maintenance footer{flex-direction:column}.ampol-maintenance__eta{display:grid}}
@media(prefers-reduced-motion:reduce){.ampol-maintenance__orb i,.ampol-maintenance__progress i{animation:none}.ampol-payment-choice{transition:none}}

/* source: public/css/ampol-v12.17-visual-system.css */
/*
 * AMPOL SHOP v12.17.0 — Visual System
 * Last-loaded compatibility layer for the storefront, account and admin UI.
 */

:root {
    --ux-accent: var(--v12-accent, #18d879);
    --ux-accent-2: var(--v12-accent-2, #087443);
    --ux-accent-3: var(--v12-accent-3, #a7f3d0);
    --ux-accent-soft: var(--v12-accent-soft, rgba(24, 216, 121, .12));
    --ux-page: var(--v12-page, #07110e);
    --ux-page-alt: var(--v12-page-alt, #0c1814);
    --ux-surface: var(--v12-panel-strong, #111d19);
    --ux-surface-2: var(--v12-panel-soft, rgba(255, 255, 255, .05));
    --ux-line: var(--v12-line, rgba(255, 255, 255, .1));
    --ux-line-strong: var(--v12-line-strong, rgba(24, 216, 121, .28));
    --ux-text: var(--v12-text, #f5fff9);
    --ux-muted: var(--v12-muted, #899b92);
    --ux-on-accent: var(--v12-action-text, #fff);
    --ux-shadow: var(--v12-shadow, rgba(0, 0, 0, .3));
    --ux-success: #22c55e;
    --ux-warning: #f59e0b;
    --ux-danger: #f43f5e;
    --ux-info: #38bdf8;
    --ux-radius-sm: .85rem;
    --ux-radius: 1.25rem;
    --ux-radius-lg: 1.8rem;
    --ux-radius-xl: 2.35rem;
    --ux-ease: cubic-bezier(.2, .8, .2, 1);
    --ux-shadow-sm: 0 10px 30px color-mix(in srgb, var(--ux-shadow) 72%, transparent);
    --ux-shadow-lg: 0 28px 80px var(--ux-shadow);
}

html[data-theme="emerald"] { color-scheme: light; }
html[data-theme="crimson"] { color-scheme: light; }
html[data-theme="sapphire"] { color-scheme: light; }
html[data-theme="violet"] { color-scheme: light; }
html[data-theme="graphite"] { color-scheme: dark; }
html[data-theme="solar"] { color-scheme: dark; }

html { scroll-behavior: smooth; background: var(--ux-page); }
html.ampol-modal-open { overflow: hidden; }

body.ampol-app {
    min-height: 100vh;
    color: var(--ux-text) !important;
    background:
        radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--ux-accent) 13%, transparent), transparent 30rem),
        radial-gradient(circle at 91% 55%, color-mix(in srgb, var(--ux-accent-3) 7%, transparent), transparent 34rem),
        linear-gradient(145deg, var(--ux-page), var(--ux-page-alt)) !important;
    font-feature-settings: "ss01", "ss02", "tnum";
    text-rendering: optimizeLegibility;
}

body.ampol-app::before {
    content: "";
    position: fixed;
    z-index: -2;
    inset: 0;
    pointer-events: none;
    opacity: .24;
    background-image:
        linear-gradient(color-mix(in srgb, var(--ux-accent) 7%, transparent) 1px, transparent 1px),
        linear-gradient(90deg, color-mix(in srgb, var(--ux-accent) 7%, transparent) 1px, transparent 1px);
    background-size: 54px 54px;
    mask-image: linear-gradient(to bottom, #000, transparent 78%);
}

body.ampol-app::after {
    content: "";
    position: fixed;
    z-index: -1;
    width: 34rem;
    height: 34rem;
    top: var(--ux-pointer-y, 35%);
    left: var(--ux-pointer-x, 70%);
    translate: -50% -50%;
    pointer-events: none;
    border-radius: 50%;
    opacity: .12;
    background: var(--ux-accent);
    filter: blur(120px);
    transition: opacity .35s ease;
}

::selection { color: var(--ux-on-accent); background: var(--ux-accent-2); }

body.ampol-app :where(a, button, input, select, textarea, [role="button"]) {
    -webkit-tap-highlight-color: transparent;
}

body.ampol-app :where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--ux-accent) 38%, transparent) !important;
    outline-offset: 3px;
}

/* ---------- shared glass surfaces ---------- */
body.ampol-app :where(.premium-panel, .metric-card, .admin-card, .dashboard-card, .account-card) {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background:
        linear-gradient(145deg, color-mix(in srgb, var(--ux-surface) 94%, transparent), color-mix(in srgb, var(--ux-accent) 5%, var(--ux-surface-2))) !important;
    box-shadow: var(--ux-shadow-lg), inset 0 1px 0 color-mix(in srgb, #fff 35%, transparent) !important;
    backdrop-filter: blur(18px) saturate(1.1);
}

body.ampol-app :where(.premium-panel, .metric-card, .admin-card, .dashboard-card, .store-product-card, .product-order-card) {
    transition: border-color .28s var(--ux-ease), box-shadow .28s var(--ux-ease), transform .28s var(--ux-ease);
}

@media (hover: hover) {
    body.ampol-app :where(.metric-card, .store-product-card, .product-feature-item):hover {
        border-color: color-mix(in srgb, var(--ux-accent) 36%, var(--ux-line)) !important;
        transform: translateY(-4px);
        box-shadow: 0 24px 65px color-mix(in srgb, var(--ux-shadow) 82%, transparent),
                    0 0 0 1px color-mix(in srgb, var(--ux-accent) 8%, transparent) !important;
    }
}

body.ampol-app :where(h1, h2, h3, h4, h5, h6, .text-white, .text-slate-900) { color: var(--ux-text) !important; }
body.ampol-app :where(.text-zinc-400, .text-zinc-500, .text-zinc-600, .text-slate-500, .text-slate-600) { color: var(--ux-muted) !important; }
body.ampol-app .eyebrow { color: color-mix(in srgb, var(--ux-accent) 82%, var(--ux-text)) !important; }

/* ---------- navigation ---------- */
.ampol-site-header {
    position: fixed !important;
    z-index: 110 !important;
    inset: 0 0 auto !important;
    border-bottom: 1px solid color-mix(in srgb, var(--ux-line) 80%, transparent) !important;
    background: color-mix(in srgb, var(--ux-page) 78%, transparent) !important;
    box-shadow: 0 16px 50px color-mix(in srgb, var(--ux-shadow) 55%, transparent) !important;
    backdrop-filter: blur(22px) saturate(1.25) !important;
}

.ampol-site-header__bar { min-height: 5rem !important; }
.ampol-site-header.is-scrolled {
    background: color-mix(in srgb, var(--ux-page) 89%, transparent) !important;
    box-shadow: 0 18px 55px color-mix(in srgb, var(--ux-shadow) 72%, transparent) !important;
}
.ampol-brand__mark,
.ampol-account-button > span {
    color: var(--ux-on-accent) !important;
    background: linear-gradient(145deg, var(--ux-accent-2), var(--ux-accent)) !important;
    box-shadow: 0 10px 32px color-mix(in srgb, var(--ux-accent) 25%, transparent) !important;
}
.ampol-brand__copy b,
.ampol-desktop-nav a,
.ampol-header-icon,
.ampol-theme-shortcut,
.ampol-menu-button { color: var(--ux-text) !important; }
.ampol-brand__copy i,
.ampol-desktop-nav a.is-active { color: color-mix(in srgb, var(--ux-accent) 82%, var(--ux-text)) !important; }
.ampol-desktop-nav,
.ampol-header-icon,
.ampol-notification-trigger,
.ampol-menu-button {
    border-color: var(--ux-line) !important;
    background: color-mix(in srgb, var(--ux-surface) 82%, transparent) !important;
}
.ampol-desktop-nav a.is-active {
    background: color-mix(in srgb, var(--ux-accent) 12%, transparent) !important;
    box-shadow: inset 0 -2px 0 var(--ux-accent);
}
.ampol-header-count { color: var(--ux-on-accent) !important; background: var(--ux-accent-2) !important; }
.ampol-login-button,
.ampol-account-button {
    color: var(--ux-on-accent) !important;
    background: linear-gradient(110deg, var(--ux-accent-2), var(--ux-accent)) !important;
    box-shadow: 0 12px 34px color-mix(in srgb, var(--ux-accent) 22%, transparent) !important;
}
.ampol-mobile-menu {
    border-color: var(--ux-line) !important;
    background: color-mix(in srgb, var(--ux-page) 92%, transparent) !important;
    backdrop-filter: blur(26px) !important;
}
.ampol-mobile-menu__grid a,
.ampol-mobile-menu__logout button {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-surface-2) !important;
}
.ampol-mobile-menu__grid a.is-primary {
    color: var(--ux-on-accent) !important;
    background: linear-gradient(145deg, var(--ux-accent-2), var(--ux-accent)) !important;
}

/* ---------- buttons ---------- */
body.ampol-app :where(.btn-primary, .product-order-submit, .ampol-payment-resume__submit) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--ux-accent) 58%, transparent) !important;
    color: var(--ux-on-accent) !important;
    background: linear-gradient(110deg, var(--ux-accent-2), var(--ux-accent)) !important;
    box-shadow: 0 14px 34px color-mix(in srgb, var(--ux-accent) 24%, transparent) !important;
    transition: transform .22s var(--ux-ease), filter .22s ease, box-shadow .22s ease !important;
}
body.ampol-app :where(.btn-primary, .product-order-submit, .ampol-payment-resume__submit)::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    translate: -115% 0;
    background: linear-gradient(100deg, transparent 20%, rgba(255,255,255,.28), transparent 70%);
    transition: translate .6s var(--ux-ease);
}
@media (hover: hover) {
    body.ampol-app :where(.btn-primary, .product-order-submit, .ampol-payment-resume__submit):hover {
        transform: translateY(-2px);
        filter: saturate(1.08) brightness(1.04);
        box-shadow: 0 18px 45px color-mix(in srgb, var(--ux-accent) 32%, transparent) !important;
    }
    body.ampol-app :where(.btn-primary, .product-order-submit, .ampol-payment-resume__submit):hover::after { translate: 115% 0; }
}
body.ampol-app :where(.btn-secondary, .ampol-payment-resume__back) {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-surface-2) !important;
    box-shadow: var(--ux-shadow-sm) !important;
}
body.ampol-app :where(button, .btn-primary, .btn-secondary, .product-order-submit):disabled {
    cursor: not-allowed !important;
    opacity: .55 !important;
    filter: grayscale(.35) !important;
    transform: none !important;
}

/* ---------- inputs, radios and checkboxes ---------- */
body.ampol-app :where(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea) {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: color-mix(in srgb, var(--ux-surface) 72%, transparent) !important;
    box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 22%, transparent), var(--ux-shadow-sm) !important;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}
body.ampol-app :where(input, select, textarea)::placeholder { color: color-mix(in srgb, var(--ux-muted) 72%, transparent) !important; opacity: 1; }
body.ampol-app :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus {
    border-color: var(--ux-accent) !important;
    background: color-mix(in srgb, var(--ux-accent) 5%, var(--ux-surface)) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--ux-accent) 12%, transparent), var(--ux-shadow-sm) !important;
}
body.ampol-app select option { color: var(--ux-text); background: var(--ux-surface); }

body.ampol-app input[type="checkbox"],
body.ampol-app input[type="radio"] {
    position: relative !important;
    display: inline-grid !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    flex: 0 0 1.35rem !important;
    appearance: none !important;
    place-items: center !important;
    border: 2px solid color-mix(in srgb, var(--ux-muted) 55%, var(--ux-line)) !important;
    color: var(--ux-on-accent) !important;
    background: color-mix(in srgb, var(--ux-surface) 82%, transparent) !important;
    box-shadow: var(--ux-shadow-sm) !important;
    cursor: pointer !important;
    opacity: 1 !important;
    transition: border-color .18s ease, background .18s ease, transform .18s var(--ux-ease), box-shadow .18s ease !important;
}
body.ampol-app input[type="checkbox"] { border-radius: .42rem !important; }
body.ampol-app input[type="radio"] { border-radius: 50% !important; }
body.ampol-app input[type="checkbox"]::after {
    content: "";
    width: .62rem;
    height: .34rem;
    border: solid currentColor;
    border-width: 0 0 2px 2px;
    opacity: 0;
    rotate: -45deg;
    translate: 0 -.08rem;
    scale: .4;
    transition: opacity .16s ease, scale .2s var(--ux-ease);
}
body.ampol-app input[type="radio"]::after {
    content: "";
    width: .52rem;
    height: .52rem;
    border-radius: 50%;
    opacity: 0;
    background: currentColor;
    scale: .25;
    transition: opacity .16s ease, scale .2s var(--ux-ease);
}
body.ampol-app input[type="checkbox"]:checked,
body.ampol-app input[type="radio"]:checked {
    border-color: var(--ux-accent) !important;
    background: linear-gradient(145deg, var(--ux-accent-2), var(--ux-accent)) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--ux-accent) 13%, transparent), 0 8px 20px color-mix(in srgb, var(--ux-accent) 22%, transparent) !important;
}
body.ampol-app input[type="checkbox"]:checked::after,
body.ampol-app input[type="radio"]:checked::after { opacity: 1; scale: 1; }
body.ampol-app input[type="checkbox"]:active,
body.ampol-app input[type="radio"]:active { transform: scale(.9); }
body.ampol-app [aria-invalid="true"],
body.ampol-app .has-validation-error :where(input, select, textarea) {
    border-color: var(--ux-danger) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--ux-danger) 12%, transparent) !important;
}

body.ampol-app :where(label, .ampol-checkout-method, .ampol-payment-choice, .product-variant-option):has(input:checked) {
    border-color: var(--ux-accent) !important;
    background: linear-gradient(145deg, color-mix(in srgb, var(--ux-accent) 12%, var(--ux-surface)), var(--ux-surface-2)) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--ux-accent) 9%, transparent), var(--ux-shadow-sm) !important;
}

/* ---------- storefront and products ---------- */
body.ampol-app.is-shop-route main,
body.ampol-app.is-product-route main,
body.ampol-app.is-cart-route main,
body.ampol-app.is-checkout-route main,
body.ampol-app.is-orders-route main,
body.ampol-app.is-dashboard-route main,
body.ampol-app.is-identity-route main {
    color: var(--ux-text) !important;
    background: transparent !important;
}
.store-product-card,
.product-order-card,
.product-info-panel,
.product-support-panel,
.product-rich-content {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: linear-gradient(145deg, var(--ux-surface), color-mix(in srgb, var(--ux-accent) 4%, var(--ux-surface-2))) !important;
    box-shadow: var(--ux-shadow-lg) !important;
}
.product-order-card { position: relative; isolation: isolate; }
.product-order-card::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 14rem;
    height: 14rem;
    inset: -8rem -6rem auto auto;
    border-radius: 50%;
    opacity: .13;
    background: var(--ux-accent);
    filter: blur(45px);
}
.product-order-field,
.product-variant-option,
.product-order-confirm,
.product-order-security,
.product-feature-item {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-surface-2) !important;
}
.product-variant-option.is-selected,
.product-variant-option:has(input:checked) {
    border-color: var(--ux-accent) !important;
    box-shadow: 0 0 0 3px var(--ux-accent-soft), 0 14px 40px var(--ux-shadow) !important;
}
.product-service-price strong,
.product-order-card__heading span,
.product-service-kicker { color: color-mix(in srgb, var(--ux-accent) 82%, var(--ux-text)) !important; }
.product-service-artwork,
.product-service-primary-action {
    border-color: var(--ux-line) !important;
    background: linear-gradient(145deg, color-mix(in srgb, var(--ux-accent-2) 72%, #030807), color-mix(in srgb, var(--ux-page) 92%, #000)) !important;
}
.ampol-favorite-button,
.product-service-favorite {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: color-mix(in srgb, var(--ux-surface) 85%, transparent) !important;
    backdrop-filter: blur(16px);
}
.ampol-favorite-button.is-saved,
.product-service-favorite.is-saved {
    border-color: var(--ux-accent) !important;
    color: color-mix(in srgb, var(--ux-accent) 78%, var(--ux-text)) !important;
    background: color-mix(in srgb, var(--ux-accent) 12%, var(--ux-surface)) !important;
}

/* ---------- checkout and payment ---------- */
.ampol-checkout-page,
.ampol-payment-resume {
    color: var(--ux-text) !important;
    background: transparent !important;
}
.ampol-checkout-method,
.ampol-payment-choice,
.ampol-checkout-card-form,
.ampol-payment-resume__head {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: linear-gradient(145deg, var(--ux-surface), var(--ux-surface-2)) !important;
    box-shadow: var(--ux-shadow-sm) !important;
}
.ampol-checkout-method.is-selected,
.ampol-payment-choice.is-selected,
.ampol-checkout-method:has(input:checked),
.ampol-payment-choice:has(input:checked) {
    border-color: var(--ux-accent) !important;
    background: linear-gradient(125deg, color-mix(in srgb, var(--ux-accent-2) 78%, var(--ux-surface)), color-mix(in srgb, var(--ux-accent) 38%, var(--ux-surface))) !important;
    box-shadow: 0 0 0 3px var(--ux-accent-soft), 0 18px 50px color-mix(in srgb, var(--ux-accent) 18%, transparent) !important;
}
.ampol-checkout-bank-card,
.ampol-payment-destination {
    background: linear-gradient(135deg, color-mix(in srgb, var(--ux-accent-2) 82%, #07120e), color-mix(in srgb, var(--ux-accent) 48%, #10241d)) !important;
    box-shadow: 0 28px 80px color-mix(in srgb, var(--ux-accent-2) 25%, var(--ux-shadow)) !important;
}
.ampol-checkout-bank-card__number,
.ampol-payment-card-number { color: #fff !important; background: rgba(255,255,255,.1) !important; }
.ampol-terms-accepted,
.product-order-confirm,
.kyc-confirm-row {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: color-mix(in srgb, var(--ux-surface) 88%, transparent) !important;
}
.ampol-terms-accepted:has(input:checked),
.product-order-confirm:has(input:checked),
.kyc-confirm-row:has(input:checked) {
    border-color: var(--ux-accent) !important;
    background: color-mix(in srgb, var(--ux-accent) 9%, var(--ux-surface)) !important;
}
.ampol-rules-modal__backdrop { background: rgba(2, 7, 6, .72) !important; backdrop-filter: blur(8px); }
.ampol-rules-modal__panel {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: linear-gradient(145deg, var(--ux-surface), var(--ux-page-alt)) !important;
    box-shadow: 0 40px 120px rgba(0,0,0,.48) !important;
}
.ampol-rules-modal__body { scrollbar-color: var(--ux-accent) transparent; }

/* ---------- dashboard ---------- */
.dashboard-grid { align-items: start; }
.dashboard-side { position: sticky; top: 6.4rem; }
.dashboard-side > div,
.account-hero,
.account-recent,
.account-activity,
.account-support { overflow: hidden; border-color: var(--ux-line) !important; }
.dashboard-side nav a {
    border: 1px solid transparent;
    color: var(--ux-muted) !important;
    transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s var(--ux-ease);
}
.dashboard-side nav a:hover,
.dashboard-side nav a.is-active {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-accent-soft) !important;
    transform: translateX(-2px);
}
.metric-card { overflow: hidden; border-radius: var(--ux-radius-lg) !important; }
.metric-card::after {
    content: "";
    position: absolute;
    width: 7rem;
    height: 7rem;
    inset: auto -3rem -4rem auto;
    border-radius: 50%;
    opacity: .12;
    background: var(--ux-accent);
    filter: blur(20px);
}
.metric-icon { color: var(--ux-accent) !important; background: var(--ux-accent-soft) !important; }
.dashboard-shell .status-pill { border-color: var(--ux-line) !important; }
.dashboard-shell .bg-white { background: var(--ux-surface) !important; }

/* ---------- orders ---------- */
.ampol-payment-resume {
    max-width: 72rem;
    margin-inline: auto;
    padding: clamp(1rem, 3vw, 2.5rem);
}
.ampol-payment-choice-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem !important; }
.ampol-payment-choice { min-height: 8.5rem; border-radius: var(--ux-radius) !important; padding: 1rem !important; }
.ampol-payment-choice__detail { color: var(--ux-muted) !important; }
.ampol-payment-error { border-color: color-mix(in srgb, var(--ux-danger) 35%, var(--ux-line)) !important; color: color-mix(in srgb, var(--ux-danger) 72%, var(--ux-text)) !important; background: color-mix(in srgb, var(--ux-danger) 8%, var(--ux-surface)) !important; }
.admin-table { border-collapse: separate; border-spacing: 0; }
.admin-table th { color: var(--ux-muted) !important; background: color-mix(in srgb, var(--ux-surface) 88%, transparent) !important; }
.admin-table td { border-color: var(--ux-line) !important; color: var(--ux-text) !important; }
.admin-table tbody tr { transition: background .2s ease, transform .2s ease; }
.admin-table tbody tr:hover { background: color-mix(in srgb, var(--ux-accent) 5%, transparent) !important; }

/* ---------- account, KYC and cards ---------- */
.ampol-favorites-hero,
.ampol-restriction-card,
.ampol-cache-console,
.ampol-rules-hero,
.ampol-success-stage,
.kyc-form-column,
.ampol-payment-form {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: linear-gradient(145deg, var(--ux-surface), color-mix(in srgb, var(--ux-accent) 5%, var(--ux-surface-2))) !important;
    box-shadow: var(--ux-shadow-lg) !important;
}
.kyc-document-switch button,
.kyc-capture-frame,
.kyc-upload-box,
.ampol-cache-target,
.ampol-rule-card {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-surface-2) !important;
}
.kyc-document-switch button.is-active,
.ampol-cache-target:has(input:checked) {
    border-color: var(--ux-accent) !important;
    background: color-mix(in srgb, var(--ux-accent) 9%, var(--ux-surface)) !important;
}
.ampol-bank-card { box-shadow: 0 24px 68px color-mix(in srgb, var(--ux-shadow) 82%, transparent) !important; }

/* ---------- admin ---------- */
body.ampol-app.is-admin-route {
    --ux-radius: 1rem;
    --ux-radius-lg: 1.45rem;
}
body.ampol-app.is-admin-route main { color: var(--ux-text) !important; background: transparent !important; }
body.ampol-app.is-admin-route :where(.admin-shell, .admin-main, .admin-layout) { background: transparent !important; }
body.ampol-app.is-admin-route :where(.admin-sidebar, .ampol-admin-sidebar) {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: color-mix(in srgb, var(--ux-surface) 92%, transparent) !important;
    box-shadow: var(--ux-shadow-lg) !important;
    backdrop-filter: blur(20px);
}
body.ampol-app.is-admin-route :where(.admin-sidebar, .ampol-admin-sidebar) a {
    color: var(--ux-muted) !important;
    transition: color .18s ease, background .18s ease, transform .18s var(--ux-ease);
}
body.ampol-app.is-admin-route :where(.admin-sidebar, .ampol-admin-sidebar) a:hover,
body.ampol-app.is-admin-route :where(.admin-sidebar, .ampol-admin-sidebar) a.is-active {
    color: var(--ux-text) !important;
    background: var(--ux-accent-soft) !important;
    transform: translateX(-2px);
}
body.ampol-app.is-admin-route :where(.bg-white, .bg-slate-50, .bg-emerald-50\/40, .bg-emerald-50\/70) {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: var(--ux-surface) !important;
}
body.ampol-app.is-admin-route :where(.rounded-\[2rem\], .rounded-\[1\.8rem\], .rounded-3xl) { border-color: var(--ux-line) !important; }

/* ---------- footer ---------- */
body.ampol-app footer {
    border-color: var(--ux-line) !important;
    color: var(--ux-text) !important;
    background: linear-gradient(180deg, color-mix(in srgb, var(--ux-page-alt) 88%, transparent), var(--ux-page)) !important;
}
body.ampol-app footer :where(h2, h3, .text-white) { color: var(--ux-text) !important; }
body.ampol-app footer :where(p, a:not(.btn-primary):not(.btn-secondary)) { color: var(--ux-muted) !important; }
body.ampol-app footer a:hover { color: color-mix(in srgb, var(--ux-accent) 82%, var(--ux-text)) !important; }

/* ---------- flash, progress, reveal and loader ---------- */
.flash-message {
    position: fixed !important;
    z-index: 160 !important;
    width: min(calc(100% - 2rem), 28rem) !important;
    inset: 6.3rem 1rem auto auto !important;
    border: 1px solid var(--ux-line) !important;
    border-radius: var(--ux-radius) !important;
    color: var(--ux-text) !important;
    background: color-mix(in srgb, var(--ux-surface) 92%, transparent) !important;
    box-shadow: var(--ux-shadow-lg) !important;
    backdrop-filter: blur(20px) !important;
}
#ampol-navigation-progress {
    position: fixed;
    z-index: 99999;
    inset: 0 0 auto;
    height: 3px;
    pointer-events: none;
    opacity: 0;
    transform: scaleX(.06);
    transform-origin: right;
    background: linear-gradient(90deg, var(--ux-accent-2), var(--ux-accent), var(--ux-accent-3));
    box-shadow: 0 0 18px var(--ux-accent);
    transition: transform 7s cubic-bezier(.1,.7,.1,1), opacity .2s ease;
}
#ampol-navigation-progress.is-active { opacity: 1; transform: scaleX(.86); }
#ampol-navigation-progress.is-done { opacity: 0; transform: scaleX(1); transition: transform .18s ease, opacity .28s .12s ease; }

[data-ampol-reveal] { opacity: 0; transform: translateY(16px) scale(.985); transition: opacity .58s var(--ux-ease), transform .58s var(--ux-ease); }
[data-ampol-reveal].is-revealed { opacity: 1; transform: none; }

#ampol-page-loader {
    background:
        radial-gradient(circle at 50% 46%, color-mix(in srgb, var(--ux-accent) 18%, transparent), transparent 17rem),
        color-mix(in srgb, var(--ux-page) 91%, transparent) !important;
    backdrop-filter: blur(18px) saturate(1.15) !important;
}
.ampol-v8-loader__ring { border-color: color-mix(in srgb, var(--ux-accent) 34%, transparent) !important; }
.ampol-v8-loader__token,
.ampol-v8-loader__inner-token { border-color: var(--ux-line) !important; color: var(--ux-accent-3) !important; background: var(--ux-surface) !important; }
.ampol-v8-loader__mark { background: linear-gradient(145deg, var(--ux-accent-2), var(--ux-accent)) !important; }

/* ---------- responsive ---------- */
@media (max-width: 1199px) {
    .dashboard-side { position: static; }
}

@media (max-width: 899px) {
    .ampol-payment-choice-grid { grid-template-columns: 1fr !important; }
    .ampol-payment-choice { min-height: auto; }
    .ampol-site-header__bar { min-height: 4.5rem !important; }
}

@media (max-width: 767px) {
    :root { --ux-radius-lg: 1.35rem; --ux-radius-xl: 1.7rem; }
    body.ampol-app { padding-bottom: 5.4rem; }
    body.ampol-app::before { background-size: 34px 34px; opacity: .16; }
    body.ampol-app::after { display: none; }
    .page-shell { width: min(100% - 1rem, 100%) !important; }
    .ampol-header-spacer { height: 4.5rem !important; }
    .ampol-brand__copy { display: none !important; }
    .ampol-site-header__bar { gap: .45rem !important; padding-inline: .55rem !important; }
    .ampol-header-actions { gap: .35rem !important; }
    .ampol-header-icon,
    .ampol-notification-trigger,
    .ampol-menu-button { width: 2.55rem !important; height: 2.55rem !important; border-radius: .8rem !important; }
    .ampol-login-button,
    .ampol-account-button { min-height: 2.55rem !important; padding: .55rem .75rem !important; }
    .ampol-mobile-menu { max-height: calc(100svh - 4.5rem); overflow-y: auto; }
    .ampol-mobile-menu__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: .45rem !important; padding-block: .6rem 1rem !important; }
    .ampol-mobile-menu__grid a,
    .ampol-mobile-menu__logout button { min-height: 2.85rem !important; padding: .6rem !important; border-radius: .85rem !important; font-size: .68rem !important; }
    .ampol-mobile-menu__logout { grid-column: 1 / -1; }
    .mobile-app-nav {
        z-index: 120 !important;
        inset: auto .45rem .45rem !important;
        width: auto !important;
        border: 1px solid var(--ux-line) !important;
        border-radius: 1.2rem !important;
        padding: .35rem !important;
        color: var(--ux-muted) !important;
        background: color-mix(in srgb, var(--ux-surface) 91%, transparent) !important;
        box-shadow: 0 18px 55px rgba(0,0,0,.32) !important;
        backdrop-filter: blur(22px) saturate(1.2) !important;
    }
    .mobile-app-nav a { min-height: 3.45rem !important; border-radius: .9rem !important; color: var(--ux-muted) !important; }
    .mobile-app-nav a.is-active { color: var(--ux-text) !important; background: var(--ux-accent-soft) !important; }
    .mobile-app-nav__search > span { color: var(--ux-on-accent) !important; background: linear-gradient(145deg, var(--ux-accent-2), var(--ux-accent)) !important; }
    .dashboard-shell { padding-block: .75rem 1.25rem !important; }
    .dashboard-grid { display: flex !important; flex-direction: column !important; gap: .75rem !important; }
    .dashboard-side { order: -1; width: 100%; }
    .dashboard-side > div { border-radius: 1.25rem !important; }
    .dashboard-side nav { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; padding: .55rem !important; }
    .dashboard-side nav a { min-height: 2.75rem; padding: .55rem .65rem !important; border: 1px solid var(--ux-line); border-radius: .8rem; background: var(--ux-surface-2); font-size: .65rem !important; }
    .account-hero { padding: 1rem !important; border-radius: 1.35rem !important; }
    .account-hero h1 { font-size: 1.4rem !important; line-height: 1.55 !important; }
    .account-hero p { line-height: 1.75 !important; }
    .account-hero .btn-primary,
    .account-hero .btn-secondary { min-height: 2.65rem !important; padding: .6rem .75rem !important; font-size: .65rem !important; }
    .account-metrics { gap: .55rem !important; }
    .metric-card { min-height: 7.3rem !important; padding: .8rem !important; border-radius: 1.1rem !important; }
    .metric-card p:nth-child(2) { font-size: 1.15rem !important; }
    .product-service-hero,
    .product-grid { gap: 1rem !important; }
    .product-order-card { padding: .85rem !important; border-radius: 1.3rem !important; }
    .product-order-field,
    .product-variant-option,
    .product-order-confirm { border-radius: 1rem !important; }
    .ampol-checkout-method,
    .ampol-payment-choice { padding: .8rem !important; border-radius: 1rem !important; }
    .ampol-payment-resume { padding: .65rem; }
    .ampol-payment-resume__head { padding: 1rem !important; border-radius: 1.2rem !important; }
    .ampol-payment-choice-grid { gap: .55rem !important; }
    .ampol-payment-choice { min-height: 5rem; }
    .flash-message { inset: 5rem .55rem auto !important; width: calc(100% - 1.1rem) !important; }
    body.ampol-app footer { padding-bottom: 5rem; }
    body.ampol-app footer .page-shell { padding-block: 2rem !important; }
    body.ampol-app footer .premium-panel { padding: 1rem !important; border-radius: 1.35rem !important; }
}

@media (max-width: 420px) {
    .ampol-mobile-menu__grid { grid-template-columns: 1fr !important; }
    .ampol-mobile-menu__logout { grid-column: auto; }
    .dashboard-side nav { grid-template-columns: 1fr 1fr; }
    .ampol-payment-steps { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
    [data-ampol-reveal] { opacity: 1 !important; transform: none !important; }
    body.ampol-app::after { display: none; }
}

@media (prefers-contrast: more) {
    :root { --ux-line: color-mix(in srgb, var(--ux-text) 42%, transparent); }
    body.ampol-app input[type="checkbox"], body.ampol-app input[type="radio"] { border-width: 3px !important; }
}

/* source: public/css/ampol-v12.18-home-dashboard.css */
/* AMPOL v12.18 — professional storefront, compact footer and account controls */
:root{--v1218-radius:clamp(22px,2vw,34px);--v1218-ink:#071d36;--v1218-muted:#58718b;--v1218-panel:color-mix(in srgb,var(--v12-page,#edf6ff) 72%,#fff 28%);--v1218-line:color-mix(in srgb,var(--v12-accent,#1687db) 22%,transparent)}
html{scroll-behavior:smooth;scroll-padding-top:110px}
.v1218-hero{position:relative;isolation:isolate;min-height:clamp(690px,78vh,880px);overflow:hidden;background:linear-gradient(112deg,#03141b 0%,#061a1b 47%,#07131e 100%)}
.v1218-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,11,17,.05) 0%,rgba(1,11,17,.12) 45%,rgba(1,11,17,.88) 72%,#06131c 100%)}
.v1218-hero-art{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.v1218-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.08) contrast(1.04);transform:scale(1.035);animation:v1218HeroDrift 16s ease-in-out infinite alternate}
.v1218-hero-art__scan{position:absolute;inset:-30%;background:linear-gradient(105deg,transparent 42%,rgba(89,243,217,.12) 50%,transparent 58%);transform:translateX(-40%);animation:v1218Scan 9s ease-in-out infinite}
.v1218-hero-art__spark{position:absolute;width:7px;height:7px;border-radius:50%;background:#76f8d1;box-shadow:0 0 16px 4px rgba(118,248,209,.65);animation:v1218Spark 4.5s ease-in-out infinite}
.v1218-hero-art__spark.is-one{left:20%;top:24%}.v1218-hero-art__spark.is-two{left:45%;top:67%;animation-delay:-1.4s}.v1218-hero-art__spark.is-three{left:62%;top:21%;animation-delay:-2.7s}
.v1218-hero .v12-ambient{opacity:.42}.v1218-hero .v12-hero__shell{position:relative;z-index:2;min-height:clamp(660px,76vh,850px);display:flex;align-items:center;justify-content:flex-start}
.v1218-hero .v12-hero__copy{width:min(610px,47%);margin-inline-start:0;margin-inline-end:auto;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.48)}
.v1218-hero .v12-hero__copy h1,.v1218-hero .v12-hero__copy h1 strong{color:#fff!important}.v1218-hero .v12-hero__copy h1 strong{background:linear-gradient(90deg,#77f4d1,#70aaff);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.v1218-hero .v12-hero__copy>p{color:rgba(238,250,255,.76)!important}.v1218-hero .v12-live-chip{border-color:rgba(109,239,209,.26);background:rgba(2,19,27,.72);backdrop-filter:blur(12px)}
.v1218-hero .v12-hero-search{background:rgba(244,252,255,.95);box-shadow:0 20px 60px rgba(0,0,0,.28)}
.v1218-hero .v12-hero__stage{position:absolute!important;inset-inline-start:3%;width:45%;opacity:.18;filter:saturate(.7);pointer-events:none}.v1218-hero .v12-float-card{display:none!important}
.v1218-hero .v12-signal-bar{position:relative;z-index:3;margin-top:-102px;background:rgba(6,26,34,.76)!important;border-color:rgba(120,240,217,.19)!important;backdrop-filter:blur(20px);color:#fff;box-shadow:0 25px 70px rgba(0,0,0,.28)}
.v1218-hero .v12-signal-bar b,.v1218-hero .v12-signal-bar span{color:#fff}.v1218-hero .v12-signal-bar small{color:rgba(223,244,246,.62)}

.v1218-deals-section{position:relative;overflow:hidden;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--v12-accent,#1687db) 6%,transparent),transparent)}
.v1218-deals-section::before{content:"DEALS";position:absolute;inset-inline-end:-1vw;top:-4rem;font-size:clamp(8rem,22vw,22rem);line-height:1;font-weight:1000;color:color-mix(in srgb,var(--v12-accent,#1687db) 4%,transparent);pointer-events:none}
.v1218-deals-head>div p{color:#f04d72!important}.v1218-deals-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative}.v1218-deals-rail__item{min-width:0}.v1218-deals-rail__item>.store-product-card{height:100%}

.v1218-journey{position:relative;overflow:hidden;border:1px solid var(--v1218-line);border-radius:var(--v1218-radius);padding:clamp(24px,4vw,64px)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--v12-panel,#fff) 94%,transparent),color-mix(in srgb,var(--v12-accent,#1687db) 8%,var(--v12-panel,#fff)));box-shadow:0 28px 80px rgba(20,55,90,.1)}
.v1218-journey::after{content:"03";position:absolute;left:2%;bottom:-15%;font:1000 clamp(9rem,22vw,20rem)/1 sans-serif;color:color-mix(in srgb,var(--v12-accent,#1687db) 4%,transparent);pointer-events:none}
.v1218-journey__steps{position:relative}.v1218-journey__steps::before{content:"";position:absolute;inset-inline-start:38px;top:12%;bottom:12%;width:2px;background:linear-gradient(transparent,var(--v12-accent,#1687db),transparent);opacity:.35}
.v1218-journey__steps article{position:relative;overflow:hidden;border:1px solid var(--v1218-line)!important;background:color-mix(in srgb,var(--v12-panel,#fff) 88%,transparent)!important;box-shadow:0 12px 35px rgba(15,45,78,.08);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.v1218-journey__steps article:hover{transform:translateX(-8px);border-color:color-mix(in srgb,var(--v12-accent,#1687db) 55%,transparent)!important;box-shadow:0 22px 50px rgba(15,45,78,.15)}
.v1218-journey__steps article>div small{display:block;margin-bottom:5px;font:900 9px/1 sans-serif;letter-spacing:.22em;color:var(--v12-accent,#1687db)}

.v1218-arena-section{padding-top:0!important}.v1218-arena{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(28px,5vw,80px);align-items:center;min-height:520px;padding:clamp(30px,5vw,72px);overflow:hidden;border-radius:var(--v1218-radius);background:radial-gradient(circle at 16% 20%,rgba(68,97,255,.24),transparent 38%),radial-gradient(circle at 90% 80%,rgba(0,224,177,.15),transparent 34%),linear-gradient(135deg,#071827,#030a12);box-shadow:0 32px 90px rgba(3,14,28,.3)}
.v1218-arena::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent,rgba(255,255,255,.025),transparent);animation:v1218ArenaGlow 8s ease-in-out infinite}
.v1218-arena__grid{position:absolute;inset:0;z-index:-1;opacity:.2;background-image:linear-gradient(rgba(102,196,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(102,196,255,.12) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,#000,transparent)}
.v1218-arena__copy{color:#fff}.v1218-arena__copy>p{display:flex;align-items:center;gap:12px;font:900 10px/1 sans-serif;letter-spacing:.25em;color:#6ee7dc}.v1218-arena__copy>p span{width:52px;height:1px;background:#6ee7dc}.v1218-arena__copy h2{margin:20px 0 14px;font-size:clamp(2.4rem,4.6vw,5rem);line-height:1.08;color:#fff!important}.v1218-arena__copy h2 strong{color:#72e7ce}.v1218-arena__copy>small{display:block;max-width:650px;font-size:14px;line-height:2;color:#a9bac8}.v1218-arena__chips{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.v1218-arena__chips span{padding:8px 12px;border:1px solid rgba(118,230,210,.18);border-radius:999px;background:rgba(118,230,210,.07);font-size:11px;color:#d7fbf4}
.v1218-arena__console{position:relative;padding:22px;border:1px solid rgba(112,202,255,.2);border-radius:26px;background:rgba(5,15,28,.72);backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(0,0,0,.4);transform:perspective(900px) rotateY(-4deg)}
.v1218-arena__console::after{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.035);border-radius:20px;pointer-events:none}.v1218-arena__console-head{display:flex;justify-content:space-between;gap:16px;padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.08);font:800 10px/1 sans-serif;letter-spacing:.14em;color:#6f879b}.v1218-arena__console-head span{color:#ff6485}.v1218-arena__console-head i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff4e74;box-shadow:0 0 14px #ff4e74;animation:v1218Pulse 1.5s infinite}.v1218-arena__teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:24px 0}.v1218-arena__teams span{display:grid;place-items:center;gap:8px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.035)}.v1218-arena__teams b{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#25d3b0,#196dc9);font-size:24px;color:#fff}.v1218-arena__teams span:last-child b{background:linear-gradient(135deg,#8948ed,#ef477e)}.v1218-arena__teams small{font:800 9px/1 sans-serif;letter-spacing:.12em;color:#c8d5df}.v1218-arena__teams>i{font:1000 13px/1 sans-serif;color:#fff}.v1218-arena__signal{display:flex;align-items:flex-end;gap:7px;height:54px;padding:11px 14px;border-radius:15px;background:rgba(51,217,184,.06)}.v1218-arena__signal span{flex:1;border-radius:99px;background:linear-gradient(#75f4d7,#1b7dd6);animation:v1218Signal 1.8s ease-in-out infinite}.v1218-arena__signal span:nth-child(1){height:30%}.v1218-arena__signal span:nth-child(2){height:55%;animation-delay:-.2s}.v1218-arena__signal span:nth-child(3){height:90%;animation-delay:-.4s}.v1218-arena__signal span:nth-child(4){height:65%;animation-delay:-.6s}.v1218-arena__signal span:nth-child(5){height:42%;animation-delay:-.8s}.v1218-arena__console>p{text-align:center;margin-top:14px;font-size:10px;color:#7490a5}

/* Compact, app-like footer */
.ampol-footer-v1218{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(48px,8vw,110px);border-top:1px solid var(--v1218-line);background:linear-gradient(150deg,color-mix(in srgb,var(--v12-page,#eef7ff) 92%,#fff),color-mix(in srgb,var(--v12-accent,#1687db) 7%,var(--v12-page,#eef7ff)));color:var(--v1218-ink)}
.ampol-footer-v1218__glow{position:absolute;width:560px;height:560px;inset-inline-end:-220px;top:-320px;border-radius:50%;background:color-mix(in srgb,var(--v12-accent,#1687db) 18%,transparent);filter:blur(100px);animation:v1218FooterGlow 9s ease-in-out infinite alternate}.ampol-footer-v1218__shell{position:relative;padding-top:38px;padding-bottom:26px}
.ampol-footer-v1218__support{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 26px;border:1px solid var(--v1218-line);border-radius:24px;background:color-mix(in srgb,var(--v12-panel,#fff) 92%,transparent);box-shadow:0 20px 65px rgba(22,55,85,.1)}.ampol-footer-v1218__support-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;color:#fff;background:linear-gradient(135deg,var(--v12-accent,#1687db),color-mix(in srgb,var(--v12-accent,#1687db) 55%,#061b31));box-shadow:0 12px 34px color-mix(in srgb,var(--v12-accent,#1687db) 26%,transparent)}.ampol-footer-v1218__support-icon svg{width:25px}.ampol-footer-v1218__support p{font:900 9px/1 sans-serif;letter-spacing:.22em;color:var(--v12-accent,#1687db)}.ampol-footer-v1218__support h2{margin:7px 0 4px;font-size:clamp(17px,2vw,24px);color:var(--v1218-ink)!important}.ampol-footer-v1218__support small{font-size:12px;color:var(--v1218-muted)}.ampol-footer-v1218__actions{display:flex;gap:8px}.ampol-footer-v1218__actions a,.ampol-footer-v1218__socials a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 16px;border:1px solid var(--v1218-line);border-radius:13px;background:color-mix(in srgb,var(--v12-panel,#fff) 86%,transparent);font-size:11px;font-weight:900;color:var(--v1218-ink);transition:.25s ease}.ampol-footer-v1218__actions a:hover,.ampol-footer-v1218__socials a:hover{transform:translateY(-2px);border-color:var(--v12-accent,#1687db)}.ampol-footer-v1218__actions a.is-primary{color:#fff;background:linear-gradient(135deg,var(--v12-accent,#1687db),color-mix(in srgb,var(--v12-accent,#1687db) 58%,#09203a));border-color:transparent}
.ampol-footer-v1218__main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:clamp(32px,6vw,90px);padding:38px 4px 30px}.ampol-footer-v1218__logo{display:inline-flex;align-items:center;gap:12px;color:var(--v1218-ink)}.ampol-footer-v1218__logo>span{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(145deg,var(--v12-accent,#1687db),#0a2743);color:#fff;font-weight:1000}.ampol-footer-v1218__logo b{font-size:18px}.ampol-footer-v1218__logo i{font-style:normal;color:var(--v12-accent,#1687db)}.ampol-footer-v1218__brand>p{max-width:630px;margin:15px 0;color:var(--v1218-muted);font-size:12px;line-height:2}.ampol-footer-v1218__socials{display:flex;flex-wrap:wrap;gap:8px}.ampol-footer-v1218__socials a{min-height:36px;padding:0 12px;font-size:10px}.ampol-footer-v1218__trust{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;color:var(--v1218-muted);font-size:10px;font-weight:800}.ampol-footer-v1218__trust i{display:inline-grid;place-items:center;width:22px;height:22px;margin-inline-end:5px;border-radius:8px;background:color-mix(in srgb,var(--v12-accent,#1687db) 12%,transparent);color:var(--v12-accent,#1687db);font-style:normal}.ampol-footer-v1218__links{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ampol-footer-v1218__links details{border:0}.ampol-footer-v1218__links summary{list-style:none;font-size:13px;font-weight:1000;color:var(--v1218-ink);cursor:default}.ampol-footer-v1218__links summary::-webkit-details-marker{display:none}.ampol-footer-v1218__links summary span{display:none}.ampol-footer-v1218__links nav{display:grid;gap:10px;margin-top:16px}.ampol-footer-v1218__links nav a{width:max-content;max-width:100%;font-size:11px;font-weight:750;color:var(--v1218-muted);transition:.2s}.ampol-footer-v1218__links nav a:hover{padding-inline-start:5px;color:var(--v12-accent,#1687db)}.ampol-footer-v1218__bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid var(--v1218-line);font-size:10px;color:var(--v1218-muted)}.ampol-footer-v1218__bottom>div{display:flex;gap:16px}.ampol-footer-v1218__bottom a{color:inherit}.ampol-footer-v1218__bottom a:hover{color:var(--v12-accent,#1687db)}

/* Permanent KYC and real theme picker */
.v1218-account-controls{display:grid;gap:18px}.v1218-identity-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px;border:1px solid var(--v1218-line);border-radius:24px;background:linear-gradient(125deg,color-mix(in srgb,var(--v12-panel,#fff) 94%,transparent),color-mix(in srgb,var(--v12-accent,#1687db) 8%,transparent));box-shadow:0 18px 52px rgba(20,52,84,.1);color:var(--v1218-ink);transition:.3s}.v1218-identity-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--v12-accent,#1687db) 55%,transparent)}.v1218-identity-card__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--v12-accent,#1687db),#153b68);color:#fff}.v1218-identity-card__icon svg{width:27px}.v1218-identity-card>span:nth-child(2){display:grid;gap:5px}.v1218-identity-card small,.v1218-appearance-card header small{font:900 9px/1 sans-serif;letter-spacing:.18em;color:var(--v12-accent,#1687db)}.v1218-identity-card b{font-size:18px}.v1218-identity-card em{font-size:11px;font-style:normal;color:var(--v1218-muted)}.v1218-identity-card>i{padding:9px 12px;border-radius:999px;font-size:10px;font-weight:900;font-style:normal}.v1218-identity-card>i.is-ready{background:#dff8ee;color:#087d59}.v1218-identity-card>i.is-warning{background:#fff0d4;color:#9a5a00}.ampol-nav-alert-dot{display:inline-block;width:7px;height:7px;margin-inline-start:5px;border-radius:50%;background:#f3a323;box-shadow:0 0 0 4px rgba(243,163,35,.12)}
.v1218-appearance-card{scroll-margin-top:120px;padding:clamp(20px,3vw,30px);border:1px solid var(--v1218-line);border-radius:26px;background:color-mix(in srgb,var(--v12-panel,#fff) 94%,transparent);box-shadow:0 20px 60px rgba(20,52,84,.1)}.v1218-appearance-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.v1218-appearance-card h2{margin:7px 0 5px;font-size:22px;color:var(--v1218-ink)!important}.v1218-appearance-card header p{font-size:11px;color:var(--v1218-muted)}.v1218-appearance-card header>span{padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--v12-accent,#1687db) 10%,transparent);font:900 9px/1 sans-serif;letter-spacing:.1em;color:var(--v12-accent,#1687db)}.v1218-theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.v1218-theme-option button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:72px;padding:11px;border:1px solid var(--v1218-line);border-radius:17px;background:color-mix(in srgb,var(--v12-page,#eef7ff) 70%,#fff);text-align:start;color:var(--v1218-ink);transition:.25s;cursor:pointer}.v1218-theme-option button:hover{transform:translateY(-2px);border-color:var(--v12-accent,#1687db)}.v1218-theme-option.is-active button{border-color:var(--v12-accent,#1687db);box-shadow:0 0 0 3px color-mix(in srgb,var(--v12-accent,#1687db) 12%,transparent)}.v1218-theme-option__preview{display:flex;align-items:end;gap:3px;width:50px;height:46px;padding:8px;border-radius:13px;background:#ecf4fb}.v1218-theme-option__preview i{display:block;flex:1;border-radius:4px}.v1218-theme-option__preview i:nth-child(1){height:55%;background:#50c49b}.v1218-theme-option__preview i:nth-child(2){height:80%;background:#1687db}.v1218-theme-option__preview i:nth-child(3){height:100%;background:#17324d}.v1218-theme-option__preview[data-theme-preview=crimson] i:nth-child(1){background:#ff8b68}.v1218-theme-option__preview[data-theme-preview=crimson] i:nth-child(2){background:#d64545}.v1218-theme-option__preview[data-theme-preview=sapphire] i:nth-child(1){background:#55b7e9}.v1218-theme-option__preview[data-theme-preview=sapphire] i:nth-child(2){background:#2176d2}.v1218-theme-option__preview[data-theme-preview=graphite] i:nth-child(1){background:#8693a0}.v1218-theme-option__preview[data-theme-preview=graphite] i:nth-child(2){background:#3f4b58}.v1218-theme-option__preview[data-theme-preview=violet] i:nth-child(1){background:#c47bea}.v1218-theme-option__preview[data-theme-preview=violet] i:nth-child(2){background:#7c45d6}.v1218-theme-option__preview[data-theme-preview=solar] i:nth-child(1){background:#ffd15b}.v1218-theme-option__preview[data-theme-preview=solar] i:nth-child(2){background:#ef8727}.v1218-theme-option button>span:nth-child(2){display:grid;gap:4px}.v1218-theme-option b{font-size:12px}.v1218-theme-option small{font-size:9px;color:var(--v1218-muted)}.v1218-theme-option em{font-size:16px;font-style:normal;color:var(--v12-accent,#1687db)}

/* Order center: readable surface and conflict-safe controls */
body.is-admin-route .admin-main .premium-panel,body.is-admin-route main .premium-panel{border-color:var(--v1218-line)}body.is-admin-route input[type=checkbox]{accent-color:var(--v12-accent,#1687db);width:20px;height:20px;cursor:pointer}body.is-admin-route input[type=checkbox]:checked{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--v12-accent,#1687db) 55%,transparent))}

@keyframes v1218HeroDrift{to{transform:scale(1.07) translate3d(-1.1%,.6%,0)}}@keyframes v1218Scan{0%,28%{transform:translateX(-55%);opacity:0}48%{opacity:1}72%,100%{transform:translateX(55%);opacity:0}}@keyframes v1218Spark{50%{transform:translateY(-18px) scale(.6);opacity:.35}}@keyframes v1218Pulse{50%{opacity:.35;transform:scale(.7)}}@keyframes v1218Signal{50%{height:35%;opacity:.55}}@keyframes v1218ArenaGlow{50%{transform:translateX(12%);opacity:.45}}@keyframes v1218FooterGlow{to{transform:translate(-80px,55px) scale(1.15)}}

@media(max-width:1100px){.v1218-deals-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.v1218-arena{grid-template-columns:1fr 360px}.ampol-footer-v1218__main{grid-template-columns:1fr}.v1218-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 html{scroll-padding-top:78px}.v1218-hero{min-height:auto;padding-bottom:0}.v1218-hero::after{background:linear-gradient(180deg,rgba(2,12,19,.03) 0%,rgba(2,12,19,.5) 32%,#06131c 57%,#06131c 100%)}.v1218-hero-art{height:360px}.v1218-hero-art img{object-position:38% center}.v1218-hero .v12-hero__shell{min-height:auto;display:block;padding-top:300px;padding-bottom:112px}.v1218-hero .v12-hero__copy{width:100%;margin:0}.v1218-hero .v12-hero__copy h1{font-size:clamp(2.35rem,12vw,3.8rem);line-height:1.04}.v1218-hero .v12-hero__copy>p{font-size:12px!important;line-height:2!important}.v1218-hero .v12-hero__stage{display:none!important}.v1218-hero .v12-hero-search{grid-template-columns:auto minmax(0,1fr);padding:7px}.v1218-hero .v12-hero-search button{grid-column:1/-1;width:100%}.v1218-hero .v12-signal-bar{margin-top:-88px;display:grid!important;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px!important;border-radius:20px!important}.v1218-hero .v12-signal-bar>div{padding:8px 5px!important}.v1218-hero .v12-signal-bar__live{grid-column:1/-1}.v1218-deals-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:11px;padding:2px 2px 15px;scrollbar-width:none}.v1218-deals-rail::-webkit-scrollbar{display:none}.v1218-deals-rail__item{flex:0 0:min(82vw,330px);scroll-snap-align:start}.v1218-journey{padding:22px 15px!important}.v1218-journey__steps::before{display:none}.v1218-journey__steps article:hover{transform:none}.v1218-arena{grid-template-columns:1fr;min-height:auto;padding:26px 18px}.v1218-arena__copy h2{font-size:2.65rem}.v1218-arena__console{transform:none;padding:16px}.v1218-arena__teams span{padding:12px}.v1218-arena__teams b{width:48px;height:48px}.ampol-footer-v1218{margin-top:50px;padding-bottom:84px}.ampol-footer-v1218__shell{padding-top:20px;padding-bottom:16px}.ampol-footer-v1218__support{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:16px;border-radius:20px}.ampol-footer-v1218__support-icon{width:44px;height:44px;border-radius:14px}.ampol-footer-v1218__support h2{font-size:15px}.ampol-footer-v1218__support small{display:none}.ampol-footer-v1218__actions{grid-column:1/-1}.ampol-footer-v1218__actions a{flex:1;min-height:39px;padding:0 10px}.ampol-footer-v1218__main{gap:18px;padding:24px 2px 18px}.ampol-footer-v1218__brand>p{margin:10px 0;font-size:10px;line-height:1.8}.ampol-footer-v1218__trust{gap:7px}.ampol-footer-v1218__links{grid-template-columns:1fr;gap:8px}.ampol-footer-v1218__links details{overflow:hidden;border:1px solid var(--v1218-line);border-radius:14px;background:color-mix(in srgb,var(--v12-panel,#fff) 88%,transparent)}.ampol-footer-v1218__links summary{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;cursor:pointer}.ampol-footer-v1218__links summary span{display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:color-mix(in srgb,var(--v12-accent,#1687db) 10%,transparent);transition:.25s}.ampol-footer-v1218__links details[open] summary span{transform:rotate(45deg)}.ampol-footer-v1218__links nav{margin:0;padding:0 14px 13px;grid-template-columns:1fr 1fr;gap:8px}.ampol-footer-v1218__links nav a{font-size:10px}.ampol-footer-v1218__bottom{display:grid;justify-content:center;text-align:center;gap:9px;font-size:9px}.ampol-footer-v1218__bottom>div{justify-content:center}.v1218-identity-card{grid-template-columns:auto 1fr;padding:16px;gap:12px}.v1218-identity-card__icon{width:45px;height:45px}.v1218-identity-card>i{grid-column:1/-1;text-align:center}.v1218-appearance-card{padding:17px 13px}.v1218-appearance-card h2{font-size:17px}.v1218-appearance-card header>span{display:none}.v1218-theme-grid{grid-template-columns:1fr 1fr;gap:8px}.v1218-theme-option button{grid-template-columns:auto 1fr;min-height:62px;padding:8px}.v1218-theme-option__preview{width:39px;height:39px;padding:6px}.v1218-theme-option em{display:none}.dashboard-grid{gap:14px!important}.dashboard-side{order:-1}.dashboard-side>.premium-panel:first-child{max-height:370px;overflow:auto!important}.account-hero{padding:20px 16px!important}.account-hero h1{font-size:clamp(2rem,10vw,2.8rem)!important}.account-metrics{gap:8px!important}.metric-card{min-height:118px;padding:14px!important}.metric-card .text-2xl{font-size:1.25rem!important}.account-support{border-radius:20px!important}}
@media(max-width:420px){.v1218-hero-art{height:300px}.v1218-hero .v12-hero__shell{padding-top:250px}.v1218-theme-grid{grid-template-columns:1fr}.ampol-footer-v1218__socials a{flex:1;padding:0 7px}.ampol-footer-v1218__trust{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.ampol-footer-v1218__trust span{display:grid;justify-items:center;gap:4px}.ampol-footer-v1218__links nav{grid-template-columns:1fr 1fr}.v1218-arena__console{display:none}}
@media(prefers-reduced-motion:reduce){.v1218-hero-art img,.v1218-hero-art__scan,.v1218-hero-art__spark,.v1218-arena::before,.v1218-arena__console-head i,.v1218-arena__signal span,.ampol-footer-v1218__glow{animation:none!important}}

/* source: public/css/ampol-v13-product-art.css */
/* AMPOL v13.2 — theme-reactive typography over neutral product family art */
.product-art-copy {
    --art-accent: var(--v12-accent, var(--service-accent, #32e0a1));
    position: absolute;
    z-index: 18;
    left: 50%;
    top: 58%;
    display: flex;
    width: min(78%, 24rem);
    transform: translate(-50%, -35%);
    flex-direction: column;
    align-items: center;
    color: #fff;
    text-align: center;
    pointer-events: none;
    filter: drop-shadow(0 18px 22px rgba(0,0,0,.44));
}

.product-art-copy::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 52%;
    width: 115%;
    height: 118%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    opacity: .22;
    background: var(--art-accent);
    filter: blur(42px);
    transition: background .3s ease;
}

.product-art-copy small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .48rem;
    max-width: 100%;
    color: color-mix(in srgb, var(--art-accent) 55%, #fff);
    font: 1000 clamp(.42rem, .7vw, .62rem)/1 sans-serif;
    letter-spacing: .2em;
    white-space: nowrap;
}

.product-art-copy small i {
    width: 1.9rem;
    height: 1px;
    flex: 0 0 auto;
    background: linear-gradient(90deg, transparent, var(--art-accent));
    box-shadow: 0 0 10px var(--art-accent);
}

.product-art-copy strong {
    margin-top: .55rem;
    color: #fff;
    font: 1000 clamp(4.7rem, 10vw, 8.7rem)/.78 sans-serif;
    letter-spacing: -.08em;
    text-shadow:
        0 16px 32px rgba(0,0,0,.52),
        0 0 38px color-mix(in srgb, var(--art-accent) 55%, transparent);
}

.product-art-copy b {
    margin-top: .75rem;
    color: color-mix(in srgb, var(--art-accent) 62%, #fff);
    font: 1000 clamp(.8rem, 1.7vw, 1.35rem)/1 sans-serif;
    letter-spacing: .15em;
    text-shadow: 0 0 22px color-mix(in srgb, var(--art-accent) 45%, transparent);
}

.product-art-copy em {
    display: inline-flex;
    margin-top: 1rem;
    border: 1px solid color-mix(in srgb, var(--art-accent) 42%, rgba(255,255,255,.15));
    border-radius: 999px;
    padding: .4rem .65rem;
    color: rgba(255,255,255,.64);
    background: rgba(2,7,12,.38);
    backdrop-filter: blur(12px);
    font: 850 .45rem/1 sans-serif;
    font-style: normal;
    letter-spacing: .15em;
}

/* Product cards use a compact edition of the same living typography. */
.store-product-card__visual.has-product-art { isolation: isolate; }
.store-product-card__visual.has-product-art::before {
    content: "";
    position: absolute;
    z-index: 13;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(145deg, color-mix(in srgb, var(--v12-accent, #32e0a1) 18%, transparent), transparent 45%),
        linear-gradient(180deg, transparent 38%, rgba(2,7,12,.88));
    opacity: .52;
}

.store-product-card .product-art-copy.is-compact {
    z-index: 16;
    top: 62%;
    width: 82%;
    transform: translate(-50%, -43%);
    filter: none;
}
.store-product-card .product-art-copy.is-compact::before { opacity: .17; filter: blur(25px); }
.store-product-card .product-art-copy.is-compact small { gap: .28rem; font-size: clamp(.34rem, .55vw, .48rem); letter-spacing: .12em; }
.store-product-card .product-art-copy.is-compact small i { width: .95rem; }
.store-product-card .product-art-copy.is-compact strong { margin-top: .35rem; font-size: clamp(3.15rem, 6vw, 5.4rem); }
.store-product-card .product-art-copy.is-compact b { margin-top: .46rem; font-size: clamp(.55rem, 1vw, .82rem); letter-spacing: .12em; }
.store-product-card .product-art-copy.is-compact em { margin-top: .58rem; padding: .28rem .45rem; font-size: .34rem; backdrop-filter: none; }

.store-product-card__visual.has-product-art .store-product-card__image {
    object-position: center;
    filter: saturate(.9) contrast(1.06) brightness(.86);
}
.store-product-card:hover .store-product-card__visual.has-product-art .store-product-card__image {
    filter: saturate(1.02) contrast(1.08) brightness(.91) !important;
}

/* eFootball artwork is portrait-first: mirror it and bias the crop upward so
   the player sits on the visual right and remains recognizable in card format. */
.store-product-card__visual.has-product-art .store-product-card__image.is-efootball-art {
    object-position: center top;
    transform: scaleX(-1) scale(1.01) !important;
}
.store-product-card:hover .store-product-card__visual.has-product-art .store-product-card__image.is-efootball-art {
    transform: scaleX(-1) scale(1.06) !important;
}

/* Product detail artwork: the selected site theme owns glow, lines and type. */
.product-service-artwork.has-product-art > img {
    z-index: 1;
    filter: saturate(.9) contrast(1.06) brightness(.88) !important;
}
.product-service-artwork.has-product-art .product-art-copy {
    z-index: 18;
    top: 62%;
    width: min(76%, 25rem);
}
.product-service-artwork.has-product-art .product-service-artwork__grid { z-index: 4; opacity: .08 !important; }
.product-service-artwork.has-product-art .product-service-artwork__orb { z-index: 3; mix-blend-mode: color; }
.product-service-artwork.has-product-art .product-service-artwork__ring { z-index: 5; opacity: .35; }
.product-service-artwork.has-product-art .product-service-artwork__top,
.product-service-artwork.has-product-art .product-service-artwork__footer { z-index: 24; }

/* Theme tuning keeps contrast predictable across every preset. */
html[data-theme="crimson"] .product-art-copy { --art-accent: #ff5d7d; }
html[data-theme="sapphire"] .product-art-copy { --art-accent: #45c7ff; }
html[data-theme="graphite"] .product-art-copy { --art-accent: #b9c5cf; }
html[data-theme="violet"] .product-art-copy { --art-accent: #a98bff; }
html[data-theme="solar"] .product-art-copy { --art-accent: #ffc54a; }

@media (max-width: 700px) {
    .store-product-card .product-art-copy.is-compact { top: 61%; width: 86%; }
    .store-product-card .product-art-copy.is-compact small { font-size: .29rem; }
    .store-product-card .product-art-copy.is-compact strong { font-size: clamp(2.65rem, 14vw, 4rem); }
    .store-product-card .product-art-copy.is-compact b { font-size: .48rem; }
    .store-product-card .product-art-copy.is-compact em { display: none; }

    .product-service-artwork.has-product-art .product-art-copy {
        top: 57%;
        width: 75%;
        transform: translate(-50%, -46%);
    }
    .product-service-artwork.has-product-art .product-art-copy small { font-size: .38rem; }
    .product-service-artwork.has-product-art .product-art-copy strong { margin-top: .35rem; font-size: clamp(4rem, 25vw, 6.4rem); }
    .product-service-artwork.has-product-art .product-art-copy b { margin-top: .5rem; font-size: .72rem; }
    .product-service-artwork.has-product-art .product-art-copy em { margin-top: .6rem; padding: .3rem .48rem; font-size: .35rem; }
}

@media (prefers-reduced-motion: reduce) {
    .product-art-copy,
    .product-art-copy::before { transition: none !important; }
}

