:root {
    --bg: #08080c;
    --bg-soft: #0d0d13;
    --panel: #111118;
    --panel-2: #15151e;
    --line: rgba(255, 255, 255, .09);
    --line-strong: rgba(255, 255, 255, .16);
    --text: #f7f5fb;
    --muted: #9d9baa;
    --muted-2: #6e6c78;
    --purple: #8b5cf6;
    --purple-light: #ac8cff;
    --green: #7ff5b5;
    --danger: #ff5574;
    --radius: 22px;
    --radius-sm: 14px;
    --shadow: 0 30px 90px rgba(0, 0, 0, .42);
}

html[data-theme="dark"] { color-scheme: dark; }
html[data-theme="light"] {
    --bg: #fff7fb;
    --bg-soft: #fff0f6;
    --panel: #ffffff;
    --panel-2: #fff4f8;
    --line: rgba(43, 27, 38, .2);
    --line-strong: rgba(43, 27, 38, .32);
    --text: #140c12;
    --muted: #322731;
    --muted-2: #4d424c;
    --purple: #d92f7c;
    --purple-light: #9b164f;
    --green: #075f3c;
    --danger: #b91f3f;
    --shadow: 0 28px 80px rgba(106, 57, 86, .16);
    color-scheme: light;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}
body::selection { background: var(--purple); color: white; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
img, svg { max-width: 100%; }
.site-shell { min-height: 100vh; overflow: hidden; position: relative; }
.container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; position: relative; }
.section { padding: 120px 0; position: relative; }
.ambient { border-radius: 999px; filter: blur(120px); opacity: .13; pointer-events: none; position: absolute; }
.ambient-one { background: var(--purple); height: 430px; right: -180px; top: 50px; width: 430px; }
.ambient-two { background: #4923c7; height: 500px; left: -350px; top: 940px; width: 500px; }

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { letter-spacing: -.045em; line-height: 1.04; }
h1 { font-size: clamp(3.4rem, 7vw, 6.65rem); font-weight: 690; margin-bottom: 28px; }
h2 { font-size: clamp(2.6rem, 5vw, 4.7rem); font-weight: 660; margin-bottom: 24px; }
h3 { font-size: 1.35rem; }
h1 em, h2 em { color: var(--purple-light); font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
p { color: var(--muted); }
.eyebrow {
    align-items: center;
    color: #c7c4d2;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 750;
    gap: 9px;
    letter-spacing: .16em;
    margin-bottom: 24px;
    text-transform: uppercase;
}
.eyebrow i { background: var(--purple-light); border-radius: 999px; box-shadow: 0 0 15px var(--purple); height: 6px; width: 6px; }

.site-breadcrumbs {
    border-bottom: 1px solid var(--line);
    border-top: 1px solid color-mix(in srgb, var(--line), transparent 45%);
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--purple), transparent 93%), transparent 34%),
        color-mix(in srgb, var(--bg-soft), transparent 8%);
    margin-top: 0;
    position: relative;
    z-index: 3;
}
.site-breadcrumbs ol {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 13px 0;
}
.site-breadcrumbs li {
    align-items: center;
    color: var(--muted);
    display: inline-flex;
    font-size: .78rem;
    font-weight: 650;
    max-width: 100%;
}
.site-breadcrumbs li + li::before {
    color: color-mix(in srgb, var(--muted-2), transparent 12%);
    content: "/";
    font-weight: 500;
    margin-right: 8px;
}
.site-breadcrumbs a {
    color: color-mix(in srgb, var(--text), var(--muted) 38%);
    transition: color .2s ease, text-shadow .2s ease;
}
.site-breadcrumbs a:hover {
    color: var(--purple-light);
    text-shadow: 0 0 18px color-mix(in srgb, var(--purple), transparent 55%);
}
.site-breadcrumbs span[aria-current="page"] {
    color: var(--text);
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: min(58vw, 520px);
}
main > .site-breadcrumbs:first-child {
    margin-top: clamp(92px, 8vw, 124px);
}
.button {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    font-size: .88rem;
    font-weight: 700;
    gap: 28px;
    justify-content: center;
    letter-spacing: -.01em;
    min-height: 52px;
    padding: 0 24px;
    transition: .25s ease;
}
.button span { font-size: 1.05rem; transition: transform .25s ease; }
.button:hover { transform: translateY(-2px); }
.button:hover span { transform: translate(2px, -2px); }
.button-primary { background: var(--purple); box-shadow: 0 12px 35px rgba(139, 92, 246, .3); color: white; }
.button-primary:hover { background: #986aff; box-shadow: 0 16px 46px rgba(139, 92, 246, .42); }
.button-secondary { background: rgba(255, 255, 255, .035); border-color: var(--line-strong); }
.button-secondary:hover { background: rgba(255, 255, 255, .075); border-color: rgba(255, 255, 255, .24); }
.button-light { background: white; color: #111; }
.button-full { width: 100%; }
.text-link { align-items: center; color: #d8d5e0; display: inline-flex; font-size: .88rem; font-weight: 650; gap: 10px; }
.text-link i { align-items: center; border: 1px solid var(--line-strong); border-radius: 50%; display: flex; font-size: .48rem; height: 32px; justify-content: center; width: 32px; }
.text-link span { color: var(--purple-light); font-size: 1.2rem; }
.text-link-large { gap: 15px; margin-top: 12px; }

/* Header */
.site-header { left: 0; padding: 12px 0; position: fixed; right: 0; top: 0; transition: .25s ease; z-index: 100; }
.site-header.is-scrolled { background: rgba(8, 8, 12, .8); border-bottom: 1px solid var(--line); backdrop-filter: blur(22px); padding: 8px 0; }
.nav-wrap { align-items: center; display: flex; gap: 14px; justify-content: space-between; }
.brand { align-items: center; display: inline-flex; font-size: .86rem; font-weight: 800; gap: 10px; letter-spacing: .11em; white-space: nowrap; }
.brand b { color: var(--purple-light); }
.brand-mark { align-items: center; background: rgba(139, 92, 246, .13); border: 1px solid rgba(172, 140, 255, .24); border-radius: 10px; color: var(--purple-light); display: flex; height: 36px; justify-content: center; width: 36px; }
.brand-mark svg { height: 25px; width: 25px; }
.brand-logo { flex: 0 0 auto; gap: 0; letter-spacing: 0; max-width: clamp(260px, 22vw, 320px); min-width: 0; width: clamp(260px, 22vw, 320px); }
.brand-logo-image { border-radius: 0; box-shadow: none; display: block; height: auto; max-height: 92px; object-fit: contain; object-position: left center; width: 100%; }
.brand-logo-image-light { display: none; }
html[data-theme="light"] .brand-logo-image-dark { display: none; }
html[data-theme="light"] .brand-logo-image-light { display: block; }
.footer-logo { max-width: min(100%, 330px); }
.footer-logo .brand-logo-image { max-height: none; }
.header-menu-cluster { align-items: center; display: flex; flex: 1 1 auto; justify-content: flex-end; margin-left: auto; min-width: 0; }
.main-nav { align-items: end; display: grid; gap: 7px; justify-items: end; margin-left: auto; max-width: 100%; }
.menu-row { align-items: center; display: flex; flex-wrap: nowrap; gap: 10px; justify-content: flex-end; min-width: 0; position: relative; }
.menu-row-primary { z-index: 40; }
.menu-row-secondary { column-gap: 12px; row-gap: 7px; z-index: 20; }
.menu-row > a, .main-nav > a, .nav-dropdown > a { color: #b5b2bf; font-size: .82rem; font-weight: 600; transition: color .2s; }
.menu-row > a:hover, .main-nav > a:hover, .nav-dropdown > a:hover { color: white; }
.site-search-form { align-items: center; background: rgba(255, 255, 255, .045); border: 1px solid var(--line); border-radius: 999px; display: flex; gap: 5px; min-height: 32px; padding: 2px 4px 2px 11px; width: clamp(132px, 13vw, 210px); }
.site-search-form input { background: transparent; border: 0; color: var(--text); flex: 1; font-size: .82rem; min-width: 0; outline: none; width: 100%; }
.site-search-form input::placeholder { color: var(--muted-2); opacity: 1; }
.site-search-form button { align-items: center; background: var(--purple); border: 0; border-radius: 50%; color: #fff; cursor: pointer; display: flex; flex: 0 0 26px; font-size: .8rem; height: 26px; justify-content: center; line-height: 1; width: 26px; }
.site-search-form:focus-within { border-color: rgba(172, 140, 255, .58); box-shadow: 0 0 0 3px rgba(139, 92, 246, .16); }
.currency-switcher { align-items: center; display: inline-flex; flex: 0 0 60px; margin: 0; position: relative; width: 60px; }
.currency-switcher select { appearance: none; background: rgba(255,255,255,.045); border: 1px solid var(--line); border-radius: 999px; color: var(--text); cursor: pointer; font-size: .76rem; font-weight: 800; min-height: 32px; min-width: 0; outline: none; padding: 0 16px 0 8px; text-align: center; text-align-last: center; width: 100%; }
.currency-switcher::after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; color: var(--muted-2); content: ""; pointer-events: none; position: absolute; right: 8px; top: 50%; transform: translateY(-35%); }
.currency-switcher select:focus { border-color: rgba(172, 140, 255, .58); box-shadow: 0 0 0 3px rgba(139, 92, 246, .16); }
.language-switcher { align-items: center; display: inline-flex; flex: 0 0 122px; margin: 0; max-width: 122px; min-width: 104px; position: relative; }
.language-switcher select { appearance: none; background: rgba(255,255,255,.045); border: 1px solid var(--line); border-radius: 999px; color: var(--text); cursor: pointer; font-size: .78rem; font-weight: 800; min-height: 32px; max-width: 100%; min-width: 0; outline: none; overflow: hidden; padding: 0 21px 0 11px; text-overflow: ellipsis; white-space: nowrap; width: 100%; }
.language-switcher::after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; color: var(--muted-2); content: ""; pointer-events: none; position: absolute; right: 10px; top: 50%; transform: translateY(-35%); }
.language-switcher select:focus { border-color: rgba(172, 140, 255, .58); box-shadow: 0 0 0 3px rgba(139, 92, 246, .16); }
@media (min-width: 821px) {
    .site-header { padding: 8px 0; }
    .nav-wrap { align-items: center; flex-wrap: nowrap; gap: 14px; justify-content: space-between; }
    .brand { flex: 0 0 auto; margin-right: 0; }
    .header-menu-cluster { max-width: calc(100% - 185px); }
    .main-nav { width: auto; }
    .account-actions { margin-left: 0; order: 0; }
    .site-search-form { flex: 0 1 190px; width: clamp(145px, 12vw, 190px); }
}
.chevron { color: var(--muted-2); font-size: .8rem; margin-left: 3px; }
.nav-dropdown { position: relative; }
.nav-dropdown-panel {
    background: rgba(17, 17, 24, .97);
    border: 1px solid var(--line-strong);
    border-radius: 18px;
    box-shadow: var(--shadow);
    display: grid;
    gap: 3px;
    left: 50%;
    opacity: 0;
    padding: 10px;
    pointer-events: none;
    position: absolute;
    top: 100%;
    transform: translate(-50%, 8px);
    transition: .2s ease;
    width: 330px;
    z-index: 80;
}
.menu-row-primary .nav-dropdown:hover,
.menu-row-primary .nav-dropdown:focus-within,
.menu-row-primary .platform-dropdown.is-open,
.menu-row-primary .platform-dropdown.is-hover { z-index: 90; }
@media (min-width: 821px) {
    .nav-dropdown:hover .nav-dropdown-panel { opacity: 0; pointer-events: none; transform: translate(-50%, 8px); }
    .platform-menu-trigger:hover + .platform-dropdown-panel,
    .platform-dropdown-panel:hover,
    .platform-dropdown.is-hover > .platform-dropdown-panel,
    .platform-dropdown.is-open > .platform-dropdown-panel,
    .platform-dropdown:focus-within > .platform-dropdown-panel { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }
}
.nav-dropdown-panel > a { align-items: center; border-radius: 11px; display: flex; gap: 11px; padding: 9px 11px; transition: background .2s; }
.nav-dropdown-panel > a:hover { background: rgba(255, 255, 255, .055); }
.nav-dropdown-panel b { display: block; font-size: .78rem; letter-spacing: -.01em; }
.nav-dropdown-panel small { color: var(--muted-2); display: block; font-size: .67rem; }
.platform-dot { background: var(--accent); border-radius: 4px; box-shadow: 0 0 15px color-mix(in srgb, var(--accent), transparent 45%); height: 9px; width: 9px; }
.nav-dropdown-panel .view-all { border-top: 1px solid var(--line); border-radius: 0 0 10px 10px; color: var(--purple-light); font-size: .75rem; justify-content: space-between; margin-top: 4px; padding-top: 12px; }
.cart-link { align-items: center; border: 1px solid var(--line); border-radius: 999px; display: flex; flex: 0 0 auto; font-size: .78rem; font-weight: 650; gap: 8px; padding: 9px 14px; }
.cart-link svg { fill: none; height: 17px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 17px; }
.cart-link b { align-items: center; background: var(--purple); border-radius: 50%; display: flex; font-size: .62rem; height: 18px; justify-content: center; width: 18px; }
.theme-toggle {
    align-items: center;
    background: rgba(255, 255, 255, .04);
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--text);
    cursor: pointer;
    display: flex;
    flex: 0 0 auto;
    gap: 8px;
    min-height: 42px;
    padding: 6px 10px 6px 6px;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.theme-toggle:hover { background: rgba(255, 255, 255, .075); border-color: var(--line-strong); transform: translateY(-1px); }
.theme-toggle-orb {
    background: linear-gradient(135deg, #f86ea6, #8b5cf6);
    border-radius: 50%;
    box-shadow: 0 0 18px rgba(248, 110, 166, .35);
    display: block;
    height: 28px;
    position: relative;
    width: 28px;
}
.theme-toggle-orb::after {
    background: rgba(16, 11, 21, .88);
    border-radius: 50%;
    content: "";
    height: 12px;
    position: absolute;
    right: 4px;
    top: 4px;
    width: 12px;
}
.theme-toggle-text { color: var(--muted); font-size: .78rem; font-weight: 800; line-height: 1; }
html[data-theme="light"] .theme-toggle { background: rgba(32, 21, 29, .05); border-color: rgba(63, 35, 50, .14); }
html[data-theme="light"] .theme-toggle:hover { background: rgba(32, 21, 29, .08); border-color: rgba(63, 35, 50, .22); }
html[data-theme="light"] .theme-toggle-orb { background: linear-gradient(135deg, #ffc861, #f86ea6); box-shadow: 0 0 18px rgba(245, 158, 11, .3); }
html[data-theme="light"] .theme-toggle-orb::after { background: rgba(255, 255, 255, .86); height: 9px; left: 6px; right: auto; top: 6px; width: 9px; }
.nav-toggle { background: none; border: 0; display: none; height: 35px; padding: 8px; width: 38px; }
.nav-toggle span { background: white; display: block; height: 1px; margin: 5px 0; transition: .2s; width: 22px; }
.flash { align-items: flex-start; backdrop-filter: blur(18px); background: rgba(17, 18, 26, .94); border: 1px solid var(--line-strong); border-radius: 14px; box-shadow: 0 18px 45px rgba(0, 0, 0, .28); display: flex; font-size: .9rem; gap: 11px; left: 50%; line-height: 1.5; margin: 0; max-width: calc(100% - 32px); padding: 13px 16px 15px; position: fixed; top: clamp(84px, 7vw, 116px); transform: translateX(-50%); width: min(920px, calc(100% - 32px)); z-index: 260; }
.flash + .flash { top: calc(clamp(84px, 7vw, 116px) + 68px); }
.flash + .flash + .flash { top: calc(clamp(84px, 7vw, 116px) + 136px); }
.flash::after { border-radius: inherit; bottom: 0; content: ""; height: 2px; left: 14px; position: absolute; right: 14px; }
.flash-success { border-color: rgba(127, 245, 181, .28); }
.flash-success::after { background: linear-gradient(90deg, rgba(127, 245, 181, .55), rgba(172, 140, 255, .35)); }
.flash-error { border-color: rgba(255, 85, 116, .28); }
.flash-error::after { background: linear-gradient(90deg, rgba(255, 85, 116, .58), rgba(248, 110, 166, .35)); }
.flash span { align-items: center; border-radius: 50%; display: flex; flex: 0 0 22px; height: 22px; justify-content: center; margin-top: 1px; width: 22px; }
.flash-success span { background: rgba(127, 245, 181, .14); color: var(--green); }
.flash-error span { background: rgba(255, 85, 116, .14); color: var(--danger); }

/* Hero */
.hero { min-height: 100vh; padding-top: 135px; position: relative; }
.hero::before { background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 65px 65px; content: ""; inset: 0; mask-image: linear-gradient(to bottom, black, transparent 78%); pointer-events: none; position: absolute; }
.hero-grid { align-items: center; display: grid; gap: 65px; grid-template-columns: .96fr 1.04fr; }
.hero-copy { padding-bottom: 50px; position: relative; z-index: 3; }
.hero-copy h1 { font-size: clamp(4rem, 7.4vw, 7.25rem); margin-left: -5px; white-space: nowrap; }
.hero-copy p { font-size: 1.08rem; line-height: 1.75; max-width: 530px; }
.hero-actions { align-items: center; display: flex; gap: 28px; margin-top: 34px; }
.hero-proof { align-items: center; display: flex; gap: 14px; margin-top: 48px; }
.avatar-stack { display: flex; padding-left: 9px; }
.avatar-stack span { align-items: center; background: #252330; border: 2px solid var(--bg); border-radius: 50%; color: #d9d5e3; display: flex; font-size: .55rem; font-weight: 750; height: 32px; justify-content: center; margin-left: -9px; width: 32px; }
.avatar-stack span:nth-child(1) { background: #63458a; }
.avatar-stack span:nth-child(2) { background: #415b72; }
.avatar-stack span:nth-child(3) { background: #73444e; }
.stars { color: #d6bd78; font-size: .65rem; letter-spacing: .14em; }
.hero-proof small { color: var(--muted-2); display: block; font-size: .68rem; margin-top: 2px; }
.hero-stage { height: 570px; perspective: 1000px; position: relative; }
.hero-stage::after { background: var(--purple); border-radius: 50%; content: ""; filter: blur(100px); height: 240px; opacity: .2; position: absolute; right: 20%; top: 25%; width: 240px; }
.orbit { border: 1px solid rgba(172, 140, 255, .12); border-radius: 50%; position: absolute; }
.orbit-one { height: 510px; right: -75px; top: 10px; width: 510px; }
.orbit-two { height: 380px; right: -8px; top: 75px; width: 380px; }
.growth-card {
    background: linear-gradient(145deg, rgba(26, 25, 37, .96), rgba(13, 13, 19, .98));
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 25px;
    box-shadow: 0 45px 90px rgba(0,0,0,.48);
    height: 370px;
    left: 20px;
    overflow: hidden;
    padding: 24px;
    position: absolute;
    top: 92px;
    transform: rotateY(-4deg) rotateX(2deg);
    width: 500px;
    z-index: 2;
}
.growth-card::before { background: linear-gradient(90deg, rgba(139, 92, 246, .14), transparent); content: ""; height: 1px; left: 10%; position: absolute; right: 10%; top: 0; }
.growth-card-head { align-items: center; display: flex; justify-content: space-between; }
.growth-card-head span { font-size: .73rem; font-weight: 700; }
.growth-card-head i { border: 1px solid var(--line); border-radius: 999px; color: var(--muted-2); font-size: .58rem; font-style: normal; padding: 6px 9px; }
.growth-total { margin-top: 27px; position: relative; }
.growth-total > span { color: var(--muted-2); display: block; font-size: .62rem; }
.growth-total strong { display: inline-block; font-size: 2.3rem; letter-spacing: -.05em; margin-top: 4px; }
.growth-total small { background: rgba(127, 245, 181, .09); border-radius: 999px; color: var(--green); font-size: .58rem; margin-left: 10px; padding: 4px 7px; }
.chart { bottom: 36px; height: 180px; left: 0; position: absolute; right: 0; }
.chart::before { background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px); background-size: 100% 45px; content: ""; inset: 0; position: absolute; }
.chart svg { height: 100%; overflow: visible; width: 100%; }
.chart-fill { fill: url(#chartFill); }
.chart-line { fill: none; filter: drop-shadow(0 0 8px rgba(139,92,246,.7)); stroke: var(--purple-light); stroke-width: 3; vector-effect: non-scaling-stroke; }
.chart-labels { bottom: 14px; color: #55535f; display: flex; font-size: .52rem; justify-content: space-between; left: 24px; position: absolute; right: 24px; }
.floating-chip, .signal-card { backdrop-filter: blur(18px); background: rgba(23, 22, 33, .82); border: 1px solid var(--line-strong); box-shadow: 0 20px 40px rgba(0,0,0,.35); position: absolute; z-index: 4; }
.floating-chip { align-items: center; border-radius: 14px; display: flex; gap: 10px; padding: 10px 13px; }
.floating-chip > b { align-items: center; background: rgba(255,255,255,.07); border-radius: 9px; display: flex; font-size: .75rem; height: 30px; justify-content: center; width: 30px; }
.floating-chip span { font-size: .66rem; font-weight: 700; }
.floating-chip small { color: var(--green); display: block; font-size: .56rem; }
.chip-tiktok { left: -25px; top: 40px; }
.chip-youtube { right: -20px; top: 110px; }
.chip-instagram { right: 0; top: 405px; }
.signal-card { align-items: center; border-radius: 15px; bottom: 35px; display: flex; gap: 10px; left: 45px; padding: 12px 15px; }
.signal-card > i { background: var(--green); border-radius: 50%; box-shadow: 0 0 13px rgba(127,245,181,.5); height: 7px; width: 7px; }
.signal-card span { font-size: .65rem; font-weight: 700; }
.signal-card small { color: var(--muted-2); display: block; font-size: .55rem; font-weight: 500; }
.signal-card b { color: var(--green); font-size: .68rem; margin-left: 18px; }
.trust-strip { align-items: center; border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: flex; justify-content: space-between; margin-top: 70px; min-height: 95px; }
.trust-strip > span { color: var(--muted-2); font-size: .64rem; letter-spacing: .12em; text-transform: uppercase; }
.trust-strip div { align-items: center; color: #8a8794; display: flex; font-size: .76rem; font-weight: 650; gap: 8px; }
.trust-strip b { color: #c9c5d2; font-size: .85rem; }

/* Content sections */
.section-heading { margin-bottom: 58px; }
.split-heading { align-items: end; display: flex; justify-content: space-between; }
.split-heading p { line-height: 1.75; margin-bottom: 10px; max-width: 400px; }
.centered-heading { margin-inline: auto; max-width: 760px; text-align: center; }
.centered-heading > p { margin-inline: auto; max-width: 600px; }
.service-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, 1fr); }
.home-service-browser { margin-top: 48px; }
.home-platform-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.home-platform-tabs button { align-items: center; background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 999px; color: var(--muted); cursor: pointer; display: flex; font-size: .67rem; gap: 8px; padding: 9px 14px 9px 9px; transition: .2s; }
.home-platform-tabs button span { align-items: center; background: color-mix(in srgb, var(--platform-accent), transparent 86%); border-radius: 50%; color: var(--platform-accent); display: flex; height: 26px; justify-content: center; width: 26px; }
.home-platform-tabs button.is-active { background: color-mix(in srgb, var(--platform-accent), transparent 91%); border-color: color-mix(in srgb, var(--platform-accent), transparent 64%); color: white; }
.home-platform-panel { background: radial-gradient(circle at 95% 0, color-mix(in srgb, var(--platform-accent), transparent 90%), transparent 33%), rgba(255,255,255,.015); border: 1px solid var(--line); border-radius: 28px; display: none; overflow: hidden; padding: 26px; }
.home-platform-panel.is-active { display: block; }
.home-platform-heading { align-items: end; display: grid; gap: 25px; grid-template-columns: 1fr 1fr auto; margin-bottom: 22px; }
.home-platform-heading small { color: var(--platform-accent); font-size: .52rem; letter-spacing: .1em; text-transform: uppercase; }
.home-platform-heading h3 { font-size: 1.7rem; margin-top: 6px; }
.home-platform-heading p { font-size: .66rem; line-height: 1.65; margin: 0; }
.home-slider-controls { display: flex; gap: 7px; }
.home-slider-controls button { align-items: center; background: rgba(255,255,255,.035); border: 1px solid var(--line-strong); border-radius: 50%; color: white; cursor: pointer; display: flex; height: 41px; justify-content: center; width: 41px; }
.home-slider-controls button:hover { background: var(--platform-accent); color: #101018; }
.home-service-viewport { overflow: hidden; }
.home-service-track { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 7px; scroll-behavior: smooth; scrollbar-color: color-mix(in srgb, var(--platform-accent), transparent 45%) transparent; scrollbar-width: thin; }
.home-service-track .service-card { flex: 0 0 calc((100% - 36px) / 4); min-height: 315px; }
.home-seo-section { background: #0d0c12; border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); }
.home-seo-grid { display: grid; gap: 90px; grid-template-columns: 1fr 1fr; }
.home-seo-grid h2 { font-size: clamp(3rem, 5.4vw, 5.6rem); line-height: .96; margin-top: 18px; }
.home-seo-copy p { font-size: .78rem; line-height: 1.85; }
.home-seo-copy > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
.home-seo-copy span { border: 1px solid var(--line-strong); border-radius: 999px; color: #dad5df; font-size: .57rem; padding: 9px 12px; }
.service-card { background: rgba(255,255,255,.027); border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; min-height: 315px; overflow: hidden; padding: 25px; position: relative; transition: .3s ease; }
.service-card::before { background: radial-gradient(circle, color-mix(in srgb, var(--accent), transparent 75%), transparent 68%); content: ""; height: 200px; opacity: 0; position: absolute; right: -80px; top: -80px; transition: .3s; width: 200px; }
.service-card:hover { background: rgba(255,255,255,.047); border-color: color-mix(in srgb, var(--accent), transparent 65%); transform: translateY(-6px); }
.service-card:hover::before { opacity: .8; }
.service-card-top { align-items: center; display: flex; justify-content: space-between; margin-bottom: 34px; }
.service-icon { align-items: center; background: color-mix(in srgb, var(--accent, var(--purple)), transparent 86%); border: 1px solid color-mix(in srgb, var(--accent, var(--purple)), transparent 72%); border-radius: 12px; color: var(--accent, var(--purple-light)); display: flex; font-size: 1rem; font-style: normal; font-weight: 800; height: 43px; justify-content: center; width: 43px; }
.service-arrow { align-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--muted-2); display: flex; height: 31px; justify-content: center; transition: .2s; width: 31px; }
.service-card:hover .service-arrow { background: var(--accent); border-color: var(--accent); color: #09090d; }
.service-card > small { color: var(--muted-2); font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; }
.service-card h3 { font-size: 1.35rem; margin: 7px 0 12px; }
.service-card p { font-size: .78rem; line-height: 1.65; }
.service-link { color: #c9c5d0; font-size: .72rem; font-weight: 650; margin-top: auto; }
.service-link i { color: var(--accent); font-style: normal; margin-left: 5px; }
.center-action { margin-top: 42px; text-align: center; }
.process-section { background: #0b0b10; border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); }
.process-grid { align-items: center; display: grid; gap: 110px; grid-template-columns: .85fr 1.15fr; }
.process-copy p { line-height: 1.75; max-width: 400px; }
.steps { counter-reset: step; }
.step { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 22px; grid-template-columns: 30px 56px 1fr; padding: 28px 0; }
.step:first-child { border-top: 1px solid var(--line); }
.step > span { color: var(--muted-2); font-size: .65rem; }
.step-icon { align-items: center; background: rgba(139,92,246,.1); border: 1px solid rgba(139,92,246,.2); border-radius: 14px; color: var(--purple-light); display: flex; height: 54px; justify-content: center; width: 54px; }
.step h3 { font-size: 1rem; margin: 0 0 6px; }
.step p { font-size: .75rem; margin: 0; }
.advantage-grid { border: 1px solid var(--line); border-radius: var(--radius); display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; }
.advantage-grid article { border-right: 1px solid var(--line); min-height: 290px; padding: 28px; position: relative; }
.advantage-grid article:last-child { border-right: 0; }
.advantage-number { color: var(--muted-2); font-size: .6rem; position: absolute; right: 22px; top: 20px; }
.advantage-icon { align-items: center; background: rgba(139,92,246,.08); border: 1px solid rgba(139,92,246,.15); border-radius: 50%; color: var(--purple-light); display: flex; height: 50px; justify-content: center; margin: 25px 0 55px; width: 50px; }
.advantage-grid h3 { font-size: 1.08rem; margin-bottom: 12px; }
.advantage-grid p { font-size: .75rem; line-height: 1.65; }
.testimonial-section { padding-top: 20px; }
.testimonial-card { background: radial-gradient(circle at 50% -30%, rgba(139,92,246,.22), transparent 45%), #0e0e15; border: 1px solid var(--line); border-radius: 28px; overflow: hidden; padding: 75px 90px; text-align: center; }
.quote-mark { color: var(--purple-light); font-family: Georgia, serif; font-size: 5rem; height: 60px; line-height: 1; }
blockquote { font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.45; margin: 22px auto 40px; max-width: 900px; }
.testimonial-person { align-items: center; display: inline-flex; gap: 10px; text-align: left; }
.testimonial-person > span { align-items: center; background: #4e3a62; border-radius: 50%; display: flex; font-size: .62rem; height: 36px; justify-content: center; width: 36px; }
.testimonial-person b, .testimonial-person small { display: block; font-size: .68rem; }
.testimonial-person small { color: var(--muted-2); }
.testimonial-person .stars { margin-left: 17px; }
.faq-grid { display: grid; gap: 110px; grid-template-columns: .8fr 1.2fr; }
.faq-grid > div:first-child > p { font-size: .84rem; }
.accordion-item { border-bottom: 1px solid var(--line); }
.accordion-item:first-child { border-top: 1px solid var(--line); }
.accordion-item button { align-items: center; background: transparent; border: 0; cursor: pointer; display: flex; font-size: .94rem; font-weight: 650; justify-content: space-between; padding: 25px 0; text-align: left; width: 100%; }
.accordion-item button i { align-items: center; border: 1px solid var(--line); border-radius: 50%; display: flex; font-style: normal; height: 28px; justify-content: center; transition: .2s; width: 28px; }
.accordion-item > div { display: grid; grid-template-rows: 0fr; transition: .3s ease; }
.accordion-item > div p { font-size: .78rem; line-height: 1.75; margin: 0; max-width: 600px; overflow: hidden; }
.accordion-item.is-open > div { grid-template-rows: 1fr; }
.accordion-item.is-open > div p { padding-bottom: 25px; }
.accordion-item.is-open button i { background: var(--purple); border-color: var(--purple); transform: rotate(45deg); }

/* Catalog and service sales pages */
.page-hero, .service-hero { padding: 145px 0 80px; position: relative; }
.page-hero::before, .service-hero::before { background: radial-gradient(circle at 50% 10%, rgba(139,92,246,.16), transparent 48%); content: ""; inset: 0; position: absolute; }
.compact-hero h1 { font-size: clamp(3.7rem, 7vw, 6rem); }
.compact-hero p { font-size: 1rem; margin-inline: auto; max-width: 550px; }
.catalog-section { padding-top: 20px; }
.catalog-group { border-top: 1px solid var(--line); display: grid; gap: 70px; grid-template-columns: .7fr 1.3fr; padding: 55px 0; }
.catalog-heading { display: flex; gap: 20px; }
.catalog-heading h2 { font-size: 2rem; margin: 3px 0 10px; }
.catalog-heading p { font-size: .76rem; line-height: 1.65; max-width: 310px; }
.catalog-links { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; }
.catalog-links a { align-items: center; background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 16px; display: flex; justify-content: space-between; min-height: 108px; padding: 19px; transition: .25s; }
.catalog-links a:hover { background: rgba(255,255,255,.055); border-color: color-mix(in srgb, var(--accent), transparent 65%); transform: translateY(-3px); }
.catalog-links b, .catalog-links small { display: block; }
.catalog-links b { font-size: .9rem; margin-bottom: 6px; }
.catalog-links small { color: var(--muted-2); font-size: .65rem; line-height: 1.5; max-width: 235px; }
.catalog-links i { color: var(--accent); font-style: normal; }
.breadcrumbs { color: var(--muted-2); display: flex; font-size: .66rem; gap: 10px; margin-bottom: 28px; }
.breadcrumbs b { color: #c3c0cd; font-weight: 600; }
.service-hero { background: radial-gradient(circle at 86% 42%, color-mix(in srgb, var(--accent), transparent 88%), transparent 35%); padding-bottom: 0; }
.service-hero-grid { align-items: center; display: grid; gap: 90px; grid-template-columns: 1.05fr .95fr; }
.service-hero h1 { font-size: clamp(3.3rem, 6.4vw, 6.3rem); max-width: 800px; }
.service-hero p { font-size: 1.03rem; line-height: 1.75; max-width: 600px; }
.service-hero .button { margin-top: 15px; }
.service-hero-panel { background: linear-gradient(145deg, rgba(25,24,35,.95), rgba(12,12,17,.95)); border: 1px solid var(--line); border-radius: 26px; display: grid; gap: 12px; grid-template-columns: 1fr 1fr; min-height: 330px; padding: 25px; position: relative; }
.service-pulse { align-items: center; display: flex; grid-column: 1 / -1; justify-content: center; min-height: 150px; position: relative; }
.service-pulse span { border: 1px solid color-mix(in srgb, var(--accent), transparent 65%); border-radius: 50%; height: 90px; position: absolute; width: 90px; }
.service-pulse span:nth-child(2) { height: 145px; opacity: .45; width: 145px; }
.service-pulse b { align-items: center; background: var(--accent); border-radius: 50%; box-shadow: 0 0 40px color-mix(in srgb, var(--accent), transparent 45%); color: #08080c; display: flex; font-size: 1.3rem; height: 58px; justify-content: center; position: relative; width: 58px; }
.mini-stat { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 15px; padding: 15px; }
.mini-stat small, .mini-stat span { color: var(--muted-2); display: block; font-size: .55rem; }
.mini-stat strong { display: block; font-size: 1.15rem; margin: 2px 0 4px; }
.mini-stat span { color: var(--green); }
.assurance-row { border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 85px; }
.assurance-row span { border-right: 1px solid var(--line); color: #b5b2bf; font-size: .7rem; padding: 22px 0; text-align: center; }
.assurance-row span:last-child { border-right: 0; }
.assurance-row i { align-items: center; background: rgba(127,245,181,.1); border-radius: 50%; color: var(--green); display: inline-flex; font-size: .55rem; font-style: normal; height: 19px; justify-content: center; margin-right: 6px; width: 19px; }
.packages-section { background: #0b0b10; }
.package-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, 1fr); }
.package-card { background: #101017; border: 1px solid var(--line); border-radius: 19px; display: flex; flex-direction: column; min-height: 390px; padding: 25px; position: relative; transition: .25s; }
.package-card:hover { border-color: var(--line-strong); transform: translateY(-4px); }
.package-card > small { color: var(--muted-2); font-size: .6rem; letter-spacing: .11em; text-transform: uppercase; }
.package-card h3 { font-size: 2.2rem; margin: 23px 0 0; }
.package-unit { color: #b7b3c0; font-size: .7rem; }
.package-price { align-items: baseline; display: flex; gap: 9px; margin: 18px 0; }
.package-price strong { font-size: 1.65rem; letter-spacing: -.04em; }
.package-price sup { color: var(--purple-light); font-size: .7rem; margin-right: 2px; }
.package-price del { color: var(--muted-2); font-size: .65rem; }
.package-card ul { border-top: 1px solid var(--line); list-style: none; margin: 0 0 23px; padding: 16px 0 0; }
.package-card li { color: var(--muted); font-size: .65rem; margin: 8px 0; }
.package-card li i { color: var(--green); font-style: normal; margin-right: 6px; }
.package-card .button { margin-top: auto; min-height: 45px; }
.package-popular { background: linear-gradient(155deg, rgba(139,92,246,.18), #111019 55%); border-color: rgba(172,140,255,.45); box-shadow: 0 18px 45px rgba(0,0,0,.25); }
.popular-label { background: var(--purple); border-radius: 999px; font-size: .56rem; font-weight: 750; letter-spacing: .08em; padding: 6px 11px; position: absolute; right: 14px; text-transform: uppercase; top: 14px; }
.service-content { border-top: 1px solid var(--line); }
.content-grid { display: grid; gap: 100px; grid-template-columns: 1fr 1fr; }
.content-grid h2 { font-size: 3rem; }
.content-grid p { line-height: 1.85; }

/* Order, cart, checkout */
.flow-section { min-height: 100vh; padding: 140px 0 100px; position: relative; }
.flow-section::before { background: radial-gradient(circle at 25% 25%, color-mix(in srgb, var(--accent, var(--purple)), transparent 88%), transparent 35%); content: ""; inset: 0; pointer-events: none; position: absolute; }
.site-breadcrumbs + .order-builder-page { padding-top: clamp(30px, 3vw, 44px); }
.flow-steps { align-items: center; display: flex; justify-content: center; margin-bottom: 75px; }
.flow-steps span { align-items: center; color: var(--muted-2); display: flex; font-size: .66rem; font-weight: 650; gap: 7px; }
.flow-steps span i { align-items: center; border: 1px solid var(--line-strong); border-radius: 50%; display: flex; font-size: .57rem; font-style: normal; height: 24px; justify-content: center; width: 24px; }
.flow-steps span.is-active { color: white; }
.flow-steps span.is-active i { background: var(--purple); border-color: var(--purple); }
.flow-steps > b { background: var(--line); height: 1px; margin: 0 16px; width: 80px; }
.flow-steps > b.is-done { background: var(--purple); }
.order-grid { align-items: start; display: grid; gap: 28px; grid-template-columns: 1.25fr .75fr; margin: auto; max-width: 1000px; }
.order-form-card, .order-summary, .checkout-card, .totals-card { background: rgba(16,16,23,.93); border: 1px solid var(--line); border-radius: 24px; }
.order-form-card { padding: 48px; }
.order-form-card h1 { font-size: clamp(2.7rem, 5vw, 4.4rem); }
.order-form-card > p { font-size: .82rem; line-height: 1.75; max-width: 580px; }
.order-form { margin-top: 35px; }
label { color: #d2cfda; display: block; font-size: .7rem; font-weight: 650; margin-bottom: 9px; }
input { background: rgba(255,255,255,.035); border: 1px solid var(--line-strong); border-radius: 12px; color: white; outline: none; padding: 14px 15px; transition: .2s; width: 100%; }
input[type="checkbox"],
input[type="radio"] { accent-color: #ff4e87; box-sizing: border-box; cursor: pointer; flex: 0 0 auto; height: 16px; margin: 0; padding: 0; width: 16px; }
input[type="checkbox"] { border-radius: 4px; }
input[type="radio"] { border-radius: 50%; }
select { appearance: none; background: rgba(255,255,255,.035) linear-gradient(45deg, transparent 50%, var(--purple-light) 50%) calc(100% - 18px) 50% / 6px 6px no-repeat; border: 1px solid var(--line-strong); border-radius: 12px; color: white; outline: none; padding: 14px 42px 14px 15px; transition: .2s; width: 100%; }
select option { background: #15121d; color: white; }
select:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(139,92,246,.12); }
input:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(139,92,246,.12); }
input::placeholder { color: #56545f; }
textarea { background: rgba(255,255,255,.035); border: 1px solid var(--line-strong); border-radius: 12px; color: white; font-family: inherit; outline: none; padding: 14px 15px; resize: vertical; transition: .2s; width: 100%; }
textarea:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(139,92,246,.12); }
.site-search-form input { background: transparent; border: 0; border-radius: 0; box-shadow: none; min-height: 0; padding: 0; }
.site-search-form input:focus { border-color: transparent; box-shadow: none; }
.url-input { position: relative; }
.url-input > span { color: var(--purple-light); left: 16px; position: absolute; top: 13px; }
.url-input input { padding-left: 42px; }
.form-error { color: var(--danger); font-size: .67rem; margin-top: 6px; }
.form-error.is-success{color:var(--green)}
.form-hint{display:block;color:#9d94a8;font-size:.78rem;line-height:1.45;margin-top:7px}.form-live-region{min-height:1px;color:#ffd1df;font-size:.82rem;margin-bottom:8px}.field-has-error input,.field-has-error select,.field-has-error textarea{border-color:rgba(255,85,116,.75)!important;box-shadow:0 0 0 3px rgba(255,85,116,.12)}.field-is-valid input:not([readonly]){border-color:rgba(127,245,181,.35)}
.password-field{position:relative;display:flex;align-items:center}.password-field input{width:100%;padding-right:82px}.password-field input[type="password"]::-ms-reveal,.password-field input[type="password"]::-ms-clear{display:none}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#f6d8e4;border-radius:999px;padding:7px 12px;font-size:.76rem;font-weight:800;line-height:1;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{background:rgba(255,74,132,.15);border-color:rgba(255,74,132,.4);outline:none}.auth-card button[disabled]{cursor:wait;opacity:.72}
.privacy-note { align-items: center; background: rgba(127,245,181,.045); border: 1px solid rgba(127,245,181,.12); border-radius: 13px; display: flex; gap: 12px; margin: 17px 0 22px; padding: 12px; }
.privacy-note i { color: var(--green); font-style: normal; }
.privacy-note b, .privacy-note small { display: block; font-size: .65rem; }
.privacy-note small { color: var(--muted-2); font-size: .58rem; }
.order-summary { padding: 27px; position: sticky; top: 100px; }
.summary-label { color: var(--muted-2); display: block; font-size: .61rem; letter-spacing: .12em; margin-bottom: 25px; text-transform: uppercase; }
.summary-service { align-items: center; display: flex; gap: 13px; }
.summary-service small, .summary-service b { display: block; }
.summary-service small { color: var(--muted-2); font-size: .58rem; }
.summary-service b { font-size: .82rem; }
.summary-quantity { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); margin: 24px 0; padding: 22px 0; }
.summary-quantity small, .summary-quantity span { color: var(--muted-2); display: block; font-size: .6rem; }
.summary-quantity strong { display: inline-block; font-size: 2.2rem; margin-right: 6px; }
.summary-quantity span { display: inline-block; }
.summary-meta { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }
.summary-meta > span { background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 12px; padding: 11px; }
.summary-meta i, .summary-meta small, .summary-meta b { display: block; }
.summary-meta i { color: var(--purple-light); font-style: normal; }
.summary-meta small { color: var(--muted-2); font-size: .53rem; margin-top: 8px; }
.summary-meta b { font-size: .58rem; }
.summary-total { align-items: center; border-top: 1px solid var(--line); display: flex; justify-content: space-between; margin-top: 24px; padding-top: 22px; }
.summary-total span { font-size: .7rem; }
.summary-total strong { font-size: 1.6rem; }
.order-summary > a { color: var(--muted-2); display: block; font-size: .64rem; margin-top: 22px; text-align: center; }
.order-builder-page .order-grid { grid-template-columns: minmax(0, 1.55fr) minmax(280px, .45fr); max-width: 1240px; }
.order-package-field { margin: 30px 0 20px; }
.order-cross-sells { margin-top: 24px; }
.order-cross-heading { align-items: end; display: grid; gap: 35px; grid-template-columns: 1.1fr .9fr; margin: 48px 0 24px; }
.order-cross-heading h2 { font-size: clamp(2rem, 4vw, 3.4rem); margin-top: 10px; }
.order-cross-heading p { font-size: .72rem; line-height: 1.7; }
.order-addon-grid { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
.order-addon { background: rgba(16,16,23,.82); border: 1px solid var(--line); border-radius: 20px; padding: 19px; transition: .25s ease; }
.order-addon.is-selected { background: color-mix(in srgb, var(--service-accent), #151019 94%); border-color: color-mix(in srgb, var(--service-accent), transparent 65%); }
.order-addon.is-unavailable { opacity: .82; }
.order-addon.is-unavailable .order-addon-toggle { cursor: not-allowed; }
.service-unavailable-notice { background: linear-gradient(135deg, rgba(255,107,107,.15), rgba(255,183,77,.08)); border: 1px solid rgba(255,107,107,.28); border-radius: 16px; color: var(--text); margin: 18px 0; padding: 15px; }
.service-unavailable-notice b { color: #ffb0b0; display: block; font-size: .86rem; margin-bottom: 5px; }
.service-unavailable-notice p { color: var(--muted); font-size: .76rem; line-height: 1.55; margin: 0; }
.service-unavailable-notice-small { margin: 13px 0 0; padding: 12px; }
.service-unavailable-notice-small b { font-size: .7rem; }
.service-unavailable-notice-small p { font-size: .64rem; }
.order-addon-toggle { align-items: center; cursor: pointer; display: flex; gap: 11px; margin: 0; }
.order-addon-toggle input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.addon-check { align-items: center; border: 1px solid var(--line-strong); border-radius: 8px; color: transparent; display: flex; flex: 0 0 29px; height: 29px; justify-content: center; transition: .2s; }
.order-addon.is-selected .addon-check { background: var(--service-accent); border-color: var(--service-accent); color: white; }
.order-addon-toggle small, .order-addon-toggle b { display: block; }
.order-addon-toggle small { color: var(--muted-2); font-size: .5rem; letter-spacing: .07em; text-transform: uppercase; }
.order-addon-toggle b { font-size: .77rem; margin-top: 3px; }
.order-addon-fields { display: grid; gap: 0; max-height: 0; opacity: 0; overflow: hidden; pointer-events: none; transition: max-height .28s ease, margin-top .28s ease, opacity .2s ease; visibility: hidden; }
.order-addon.is-selected .order-addon-fields { gap: 12px; margin-top: 17px; max-height: 2600px; opacity: 1; pointer-events: auto; visibility: visible; }
.order-addon-fields > * { margin-top: 0; min-height: 0; overflow: hidden; }
.order-addon.is-selected .order-addon-fields > * { overflow: visible; }
.order-addon-fields > label { margin: 0; }
.order-addon-fields select, .order-addon-fields input { font-size: .64rem; margin-top: 7px; padding-bottom: 11px; padding-top: 11px; }
.dripfeed-control { background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 15px; margin-top: 16px; padding: 14px; }
.combo-choice-box { background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 18px; margin: 18px 0; padding: 16px; }
.combo-choice-options { display: grid; gap: 10px; margin-top: 10px; }
.combo-choice { align-items: flex-start; background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 15px; cursor: pointer; display: flex; gap: 10px; margin: 0; padding: 12px; }
.combo-choice input { margin-top: 4px; width: auto; }
.combo-choice b, .combo-choice small, .combo-choice em { display: block; }
.combo-choice small { color: var(--muted-2); font-size: .62rem; line-height: 1.55; margin-top: 4px; }
.combo-choice em { color: var(--green); font-size: .58rem; font-style: normal; margin-top: 5px; }
.combo-choice:has(input:checked) { border-color: color-mix(in srgb,var(--service-accent),#fff 8%); box-shadow: 0 0 0 1px color-mix(in srgb,var(--service-accent),transparent 55%); }
.dripfeed-toggle { align-items: center; cursor: pointer; display: flex; gap: 10px; margin: 0; }
.dripfeed-toggle input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.dripfeed-toggle span { border: 1px solid var(--line-strong); border-radius: 999px; height: 20px; position: relative; width: 36px; }
.dripfeed-toggle span::after { background: var(--muted); border-radius: 50%; content:""; height: 14px; left: 2px; position: absolute; top: 2px; transition:.2s; width:14px; }
.dripfeed-control.is-enabled .dripfeed-toggle span { background: color-mix(in srgb,var(--service-accent),transparent 75%); border-color: var(--service-accent); }
.dripfeed-control.is-enabled .dripfeed-toggle span::after { background:#fff; left:18px; }
.dripfeed-toggle b { font-size:.62rem; }
.dripfeed-options { display:grid; gap:10px; grid-template-columns:1fr 1fr; margin-top:12px; opacity:.45; }
.dripfeed-control.is-enabled .dripfeed-options { opacity:1; }
.dripfeed-options label { font-size:.5rem; margin:0; }
.dripfeed-options input { margin-top:6px; }
.dripfeed-options small { color:var(--muted-2); font-size:.48rem; grid-column:1/-1; }
.delivery-speed-head { align-items:flex-start; display:flex; gap:10px; justify-content:space-between; margin-bottom:11px; }
.delivery-speed-head span { background:color-mix(in srgb,var(--service-accent),transparent 78%); border:1px solid color-mix(in srgb,var(--service-accent),transparent 42%); border-radius:999px; color:var(--text); flex:0 0 auto; font-size:.54rem; font-weight:900; letter-spacing:.08em; padding:5px 8px; text-transform:uppercase; }
.delivery-speed-head b { color:var(--text); display:block; font-size:.74rem; line-height:1.35; text-align:right; }
.delivery-speed-options { display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.delivery-speed-option { cursor:pointer; display:block; margin:0; min-height:0; position:relative; }
.delivery-speed-option input { height:1px; opacity:0; position:absolute; width:1px; }
.delivery-speed-option span { background:rgba(255,255,255,.035); border:1px solid var(--line); border-radius:14px; display:block; min-height:0; padding:10px 12px 10px 42px; position:relative; transition:border-color .2s, box-shadow .2s, transform .2s, background .2s; }
.delivery-speed-option span::before { background:rgba(255,255,255,.05); border:2px solid color-mix(in srgb,var(--muted-2),transparent 15%); border-radius:50%; content:""; height:18px; left:13px; position:absolute; top:13px; transition:border-color .2s, background .2s, box-shadow .2s; width:18px; }
.delivery-speed-option span::after { background:var(--service-accent); border-radius:50%; box-shadow:0 0 14px color-mix(in srgb,var(--service-accent),transparent 35%); content:""; height:8px; left:20px; opacity:0; position:absolute; top:20px; transform:scale(.45); transition:opacity .2s, transform .2s; width:8px; }
.delivery-speed-option b { color:var(--text); display:block; font-size:.9rem; line-height:1.2; }
.delivery-speed-option small { color:var(--muted-2); display:block; font-size:.72rem; line-height:1.35; margin-top:3px; }
.delivery-speed-option input:checked + span { background:color-mix(in srgb,var(--service-accent),transparent 84%); border-color:color-mix(in srgb,var(--service-accent),transparent 20%); box-shadow:0 12px 30px color-mix(in srgb,var(--service-accent),transparent 86%); }
.delivery-speed-option input:checked + span::before { background:color-mix(in srgb,var(--service-accent),transparent 86%); border-color:var(--service-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--service-accent),transparent 86%); }
.delivery-speed-option input:checked + span::after { opacity:1; transform:scale(1); }
.delivery-speed-option input:focus-visible + span { outline:2px solid var(--service-accent); outline-offset:3px; }
.delivery-speed-option input:disabled + span { cursor:not-allowed; opacity:.45; }
.dripfeed-summary { color:var(--muted-2); display:block; font-size:.58rem; line-height:1.5; margin-top:10px; }
.dripfeed-control.is-enabled .dripfeed-summary { color:color-mix(in srgb,var(--service-accent),#fff 30%); }
.order-box-head { align-items: flex-start; display: flex; gap: 11px; }
.order-box-head > span { background: color-mix(in srgb, var(--service-accent), transparent 72%); border: 1px solid color-mix(in srgb, var(--service-accent), transparent 40%); border-radius: 999px; color: #fff; flex: 0 0 auto; font-size: .55rem; font-weight: 800; letter-spacing: .08em; padding: 5px 8px; text-transform: uppercase; }
.order-box-head b { color: var(--text); display: block; font-size: .82rem; }
.order-box-head small { color: var(--muted-2); display: block; font-size: .62rem; line-height: 1.55; margin-top: 3px; }
.order-summary-note { color: var(--muted-2); display: block; font-size: .57rem; margin-top: 12px; text-align: center; }
.order-method-chooser { background: rgba(255,255,255,.028); border: 1px solid var(--line); border-radius: 18px; display: grid; gap: 10px; margin: 16px 0; padding: 12px; }
.order-method-heading { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-start; }
.order-method-heading span { background: color-mix(in srgb,var(--service-accent),transparent 78%); border: 1px solid color-mix(in srgb,var(--service-accent),transparent 44%); border-radius: 999px; color: var(--text); flex: 0 0 auto; font-size: .58rem; font-weight: 900; letter-spacing: .08em; padding: 5px 8px; text-transform: uppercase; }
.order-method-heading b { color: var(--text); display: block; font-size: .86rem; line-height: 1.25; text-align: left; }
.order-method-options { display: grid; gap: 8px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.order-method-option { cursor: pointer; display: block; margin: 0; min-height: 0; position: relative; }
.order-method-option input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.order-method-option span { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 14px; display: block; min-height: 0; padding: 9px 11px 9px 42px; position: relative; transition: border-color .2s, box-shadow .2s, transform .2s, background .2s; }
.order-method-option span::before { background: rgba(255,255,255,.05); border: 2px solid color-mix(in srgb,var(--muted-2),transparent 15%); border-radius: 50%; content: ""; height: 18px; left: 13px; position: absolute; top: 13px; transition: border-color .2s, background .2s, box-shadow .2s; width: 18px; }
.order-method-option span::after { background: var(--service-accent); border-radius: 50%; box-shadow: 0 0 14px color-mix(in srgb,var(--service-accent),transparent 35%); content: ""; height: 8px; left: 20px; opacity: 0; position: absolute; top: 20px; transform: scale(.45); transition: opacity .2s, transform .2s; width: 8px; }
.order-method-option b { color: var(--text); display: block; font-size: .9rem; line-height: 1.2; }
.order-method-option small { color: var(--muted-2); display: block; font-size: .72rem; line-height: 1.35; margin-top: 3px; }
.order-method-option input:checked + span { background: color-mix(in srgb,var(--service-accent),transparent 84%); border-color: color-mix(in srgb,var(--service-accent),transparent 18%); box-shadow: 0 14px 34px color-mix(in srgb,var(--service-accent),transparent 88%); }
.order-method-option input:checked + span::before { background: color-mix(in srgb,var(--service-accent),transparent 86%); border-color: var(--service-accent); box-shadow: 0 0 0 3px color-mix(in srgb,var(--service-accent),transparent 86%); }
.order-method-option input:checked + span::after { opacity: 1; transform: scale(1); }
.order-method-option input:focus-visible + span { outline: 2px solid var(--service-accent); outline-offset: 3px; }
.order-method-panel { margin-top: 16px; }
.order-method-panel[hidden] { display: none !important; }
.order-method-panel .multi-url-order-box, .subscription-order-option { background: rgba(255,255,255,.03); border: 1px solid var(--line); border-radius: 18px; display: grid; gap: 12px; padding: 15px; }
.order-method-panel [data-method-fragment][hidden] { display: none !important; }
.order-method-panel [data-multi-url-status].is-error { color: #ff9aa8; }
.subscription-order-option p { color: var(--muted); font-size: .82rem; line-height: 1.65; margin: 0; }
html[data-theme="light"] .order-method-chooser,
html[data-theme="light"] .order-method-option span,
html[data-theme="light"] .order-method-panel .multi-url-order-box,
html[data-theme="light"] .subscription-order-option { background: rgba(255,255,255,.88); border-color: rgba(44,24,55,.14); }
html[data-theme="light"] .order-method-heading b,
html[data-theme="light"] .order-method-option b { color: #21142a; }
html[data-theme="light"] .order-method-option small,
html[data-theme="light"] .subscription-order-option p { color: #5d5267; }
.auth-shell { align-items: center; display: grid; gap: 80px; grid-template-columns: 1fr minmax(360px, .72fr); max-width: 1080px; }
.auth-intro h1 { font-size: clamp(3.4rem, 6vw, 6rem); line-height: .93; margin: 18px 0 24px; }
.auth-intro p { font-size: .82rem; line-height: 1.75; max-width: 570px; }
.auth-card { background: rgba(16,16,23,.93); border: 1px solid var(--line); border-radius: 25px; box-shadow: 0 35px 90px rgba(0,0,0,.3); padding: 34px; }
.auth-card .field { margin-bottom: 17px; }
.auth-card .button { margin-top: 8px; }
.register-auth-page { padding-top: 145px; }
.register-auth-shell { align-items: start; gap: 52px; grid-template-columns: minmax(310px, .9fr) minmax(520px, 1.12fr); max-width: 1240px; }
.register-auth-intro { display: grid; gap: 18px; position: sticky; top: 112px; }
.register-auth-intro .eyebrow { margin-bottom: 4px; }
.register-auth-intro h1 { font-size: clamp(3.2rem, 5.2vw, 5.75rem); margin-bottom: 5px; }
.register-auth-intro > p { font-size: 1rem; line-height: 1.78; margin-bottom: 4px; }
.register-showcase-card { align-items: center; background: radial-gradient(circle at 16% 10%, rgba(255,74,132,.28), transparent 36%), linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.035)); border: 1px solid rgba(255,255,255,.13); border-radius: 24px; box-shadow: 0 26px 70px rgba(0,0,0,.25); display: grid; gap: 18px; grid-template-columns: 74px 1fr; overflow: hidden; padding: 20px; position: relative; }
.register-showcase-card::after { background: linear-gradient(120deg, rgba(255,74,132,.24), rgba(139,92,246,.2), transparent); border-radius: 999px; content: ""; height: 160px; position: absolute; right: -70px; top: -80px; width: 160px; }
.register-showcase-icon { align-items: center; background: linear-gradient(135deg, #ff4a84, #8b5cf6); border-radius: 20px; box-shadow: 0 18px 45px rgba(255,74,132,.24); color: #fff; display: flex; font-weight: 900; height: 74px; justify-content: center; letter-spacing: -.05em; position: relative; width: 74px; z-index: 1; }
.register-showcase-card div:not(.register-showcase-icon) { position: relative; z-index: 1; }
.register-showcase-card span { color: var(--purple-light); display: block; font-size: .78rem; font-weight: 850; letter-spacing: .12em; margin-bottom: 4px; text-transform: uppercase; }
.register-showcase-card strong { color: var(--text); display: block; font-size: 1.08rem; line-height: 1.2; }
.register-showcase-card p { font-size: .92rem; line-height: 1.65; margin: 9px 0 0; }
.register-trust-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.register-trust-grid span { background: rgba(255,255,255,.052); border: 1px solid var(--line); border-radius: 18px; padding: 15px; }
.register-trust-grid b { color: var(--text); display: block; font-size: 1.15rem; line-height: 1.05; }
.register-trust-grid small { color: var(--muted); display: block; font-size: .88rem; line-height: 1.4; margin-top: 7px; }
.register-step-list { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 22px; display: grid; gap: 0; overflow: hidden; }
.register-step-list article { align-items: start; display: grid; gap: 14px; grid-template-columns: 34px 1fr; padding: 17px; }
.register-step-list article + article { border-top: 1px solid var(--line); }
.register-step-list i { align-items: center; background: rgba(255,74,132,.13); border: 1px solid rgba(255,74,132,.3); border-radius: 50%; color: var(--purple-light); display: flex; font-style: normal; font-weight: 850; height: 34px; justify-content: center; width: 34px; }
.register-step-list b { color: var(--text); display: block; font-size: .98rem; line-height: 1.2; }
.register-step-list span { color: var(--muted); display: block; font-size: .9rem; line-height: 1.55; margin-top: 4px; }
.register-auth-card { padding: 0; overflow: hidden; }
.auth-card-heading { background: linear-gradient(135deg, rgba(255,74,132,.13), rgba(139,92,246,.08)); border-bottom: 1px solid var(--line); padding: 30px 34px 26px; }
.auth-card-heading .summary-label { margin-bottom: 12px; }
.auth-card-heading h2 { font-size: clamp(1.8rem, 3vw, 2.65rem); margin: 0 0 10px; }
.auth-card-heading p { font-size: .96rem; line-height: 1.65; margin: 0; }
.register-auth-card form { padding: 24px; }
.register-form-section { background: rgba(255,255,255,.033); border: 1px solid var(--line); border-radius: 20px; margin-bottom: 18px; padding: 21px; }
.register-form-section:last-of-type { margin-bottom: 0; }
.register-section-heading { align-items: start; display: grid; gap: 14px; grid-template-columns: 42px 1fr; margin-bottom: 18px; }
.register-section-heading > span { align-items: center; background: rgba(255,74,132,.12); border: 1px solid rgba(255,74,132,.28); border-radius: 14px; color: var(--purple-light); display: flex; font-size: .82rem; font-weight: 900; height: 42px; justify-content: center; }
.register-section-heading h3 { color: var(--text); font-size: 1.16rem; letter-spacing: -.02em; margin: 0 0 4px; }
.register-section-heading p { font-size: .9rem; line-height: 1.55; margin: 0; }
.register-form-section .field:last-child { margin-bottom: 0; }
.register-form-section .field-grid:last-child .field { margin-bottom: 0; }
.register-submit-zone { background: linear-gradient(145deg, rgba(255,74,132,.07), rgba(139,92,246,.045)); }
.register-submit-zone .button { margin-top: 18px; }
.register-auth-card .auth-links { margin: 0 24px 24px; }
.auth-honeypot { height: 0; left: -10000px; opacity: 0; overflow: hidden; position: absolute; top: auto; width: 0; }
.registration-captcha { background: rgba(255,196,71,.07); border: 1px solid rgba(255,196,71,.22); border-radius: 16px; margin: 16px 0; padding: 15px; }
.registration-captcha p { color: var(--text); font-weight: 850; margin: 0 0 10px; }
.auth-links { align-items: center; border-top: 1px solid var(--line); color: var(--muted-2); display: flex; font-size: .62rem; justify-content: space-between; margin-top: 22px; padding-top: 18px; }
.auth-links a { color: var(--purple-light); }
.auth-login-page { padding-top: clamp(118px, 9vw, 148px); }
.auth-login-shell { align-items: start; gap: 30px; grid-template-columns: 1fr; max-width: 1160px; }
.auth-login-intro { margin: 0 auto; max-width: 960px; text-align: center; }
.auth-login-intro .eyebrow { margin-bottom: 8px; }
.auth-login-intro h1 { font-size: clamp(3rem, 5.2vw, 5.45rem); margin: 8px 0 14px; }
.auth-login-intro p { font-size: 1rem; line-height: 1.72; margin: 0 auto; max-width: 700px; }
.auth-login-card { margin: 0 auto; max-width: 1040px; overflow: hidden; padding: 0; width: 100%; }
.auth-login-card-grid { display: grid; grid-template-columns: minmax(420px, 1.05fr) minmax(310px, .82fr); min-height: 100%; }
.auth-login-main,
.auth-login-options { padding: 34px; }
.auth-login-options { background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.025)); border-left: 1px solid var(--line); display: flex; flex-direction: column; justify-content: center; }
.auth-email-divider { margin-top: 14px; }
.auth-login-main .auth-recovery-links { flex-wrap: wrap; font-size: .82rem; gap: 10px 18px; justify-content: flex-start; }
.auth-login-main .auth-recovery-links a { white-space: nowrap; }
html[data-theme="light"] .auth-login-options { background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(255,244,249,.84)); }
.auth-helper { color: var(--muted); font-size: .95rem; line-height: 1.7; margin: 14px 0; }
.inline-form { margin: 0; }
.account-actions { align-items: center; display: flex; flex: 0 0 auto; gap: 12px; min-width: max-content; }
.account-logout-form { display: inline-flex; margin: 0; }
.account-logout-form button,
.flash-inline-form button,
.admin-nav-logout,
.portal-link-button,
.remove-item { cursor: pointer; font: inherit; }
.flash-inline-form { display: inline-flex; margin: 0 0 0 8px; vertical-align: middle; }
.flash-inline-form button { background: none; border: 0; color: var(--purple-light); font-weight: 800; padding: 0; text-decoration: underline; }
.account-link { align-items: center; color: #e6e0e9; display: inline-flex; flex: 0 0 auto; font-size: .8rem; font-weight: 650; min-height: 32px; white-space: nowrap; }
.account-actions button.account-link { appearance: none; }
.account-logout { background: rgba(255,85,116,.1); border: 1px solid rgba(255,85,116,.22); border-radius: 999px; color: #ffd0dc; padding: 9px 13px; }
.account-logout:hover { background: rgba(255,85,116,.18); color: #fff; }

/* Customer dashboard */
.dashboard-page { background: radial-gradient(circle at 80% 0, rgba(255,49,95,.09), transparent 28%), #0d0b10; min-height: 100vh; padding: 135px 0 100px; }
main > .site-breadcrumbs + .dashboard-page { padding-top: clamp(28px, 3vw, 44px); }
.dashboard-topbar { align-items: end; display: flex; gap: 40px; justify-content: space-between; }
.dashboard-topbar h1 { font-size: clamp(3.2rem, 6vw, 5.7rem); line-height: .95; margin: 16px 0 15px; }
.dashboard-topbar p { font-size: .78rem; }
.dashboard-balance { background: linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.02)); border: 1px solid var(--line-strong); border-radius: 20px; min-width: 245px; padding: 22px; }
.dashboard-balance small,.dashboard-balance strong,.dashboard-balance a { display: block; }
.dashboard-balance small { color: var(--muted-2); font-size: .58rem; }
.dashboard-balance strong { font-size: 2.15rem; margin: 8px 0; }
.dashboard-balance a { color: var(--purple-light); font-size: .62rem; }
.dashboard-alert { align-items: center; background: rgba(255,196,71,.07); border: 1px solid rgba(255,196,71,.18); border-radius: 16px; display: flex; gap: 14px; margin-top: 28px; padding: 15px 18px; }
.dashboard-alert i { align-items: center; background: #ffc447; border-radius: 50%; color: #17120a; display: flex; flex: 0 0 30px; font-style: normal; height: 30px; justify-content: center; }
.dashboard-alert b,.dashboard-alert span { display: block; font-size: .65rem; }
.dashboard-alert span { color: var(--muted-2); font-size: .58rem; margin-top: 3px; }
.dashboard-alert-urgent { background: rgba(255,95,118,.1); border-color: rgba(255,95,118,.35); }
.dashboard-alert-urgent i { background: #ff5f76; color: #fff; }
.dashboard-nav { backdrop-filter: blur(16px); background: rgba(15,12,18,.82); border: 1px solid var(--line); border-radius: 999px; display: flex; gap: 5px; margin: 38px 0; overflow-x: auto; padding: 6px; position: sticky; scrollbar-width: none; top: 82px; z-index: 5; }
.dashboard-nav::-webkit-scrollbar { display: none; }
.dashboard-nav a { border-radius: 999px; color: var(--muted-2); flex: 0 0 auto; font-size: .6rem; padding: 10px 14px; }
.dashboard-nav a:hover { background: rgba(255,255,255,.06); color: white; }
.dashboard-section { margin-top: 30px; scroll-margin-top: 160px; }
.dashboard-stat-grid { display: grid; gap: 12px; grid-template-columns: repeat(4,1fr); }
.dashboard-stat-grid article { background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 20px; padding: 23px; }
.dashboard-stat-grid small,.dashboard-stat-grid strong,.dashboard-stat-grid span { display: block; }
.dashboard-stat-grid small { color: var(--muted-2); font-size: .55rem; text-transform: uppercase; }
.dashboard-stat-grid strong { font-size: 2.25rem; margin: 25px 0 6px; }
.dashboard-stat-grid span { color: var(--muted-2); font-size: .55rem; }
.dashboard-panel { background: rgba(16,14,21,.88); border: 1px solid var(--line); border-radius: 23px; padding: 26px; }
.dashboard-stat-grid + .dashboard-panel { margin-top: 16px; }
.dashboard-panel-heading { align-items: center; display: flex; justify-content: space-between; margin-bottom: 24px; }
.dashboard-panel-heading h2 { font-size: 1.65rem; margin-top: 7px; }
.dashboard-panel-heading .button { padding: 10px 15px; }
.dashboard-overview-widgets { align-items: start; }
.quick-order-grid { display: grid; gap: 12px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.quick-order-card { background: radial-gradient(circle at 100% 0, rgba(255,57,121,.14), transparent 38%), rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 18px; display: grid; gap: 8px; min-height: 145px; padding: 18px; position: relative; transition: border-color .2s ease, transform .2s ease; }
.quick-order-card:hover { border-color: rgba(255,57,121,.36); transform: translateY(-2px); }
.quick-order-card span { color: var(--purple-light); font-size: .6rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.quick-order-card b { color: var(--text); font-size: 1.02rem; line-height: 1.2; }
.quick-order-card small { color: var(--muted); font-size: .72rem; line-height: 1.45; }
.quick-order-card i { align-self: end; color: #ffc2d6; font-size: .72rem; font-style: normal; font-weight: 800; }
.active-progress-list { display: grid; gap: 12px; }
.delivery-progress-card { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 16px; color: var(--text); display: grid; gap: 12px; padding: 15px; }
.delivery-progress-card:hover { background: rgba(255,255,255,.055); border-color: var(--line-strong); }
.delivery-progress-head,.delivery-progress-meta { align-items: center; display: flex; gap: 12px; justify-content: space-between; }
.delivery-progress-head b,.delivery-progress-head small { display: block; }
.delivery-progress-head b { font-size: .9rem; }
.delivery-progress-head small,.delivery-progress-meta { color: var(--muted); font-size: .72rem; }
.delivery-progress-head strong { color: var(--green); font-size: 1.25rem; }
.spend-metric-grid { display: grid; gap: 8px; grid-template-columns: repeat(3,1fr); margin-bottom: 18px; }
.spend-metric-grid span { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 14px; padding: 12px; }
.spend-metric-grid small,.spend-metric-grid b { display: block; }
.spend-metric-grid small { color: var(--muted); font-size: .62rem; text-transform: uppercase; }
.spend-metric-grid b { color: var(--text); font-size: .96rem; margin-top: 5px; }
.mini-chart-list { display: grid; gap: 9px; margin-top: 18px; }
.mini-chart-list h3 { color: var(--text); font-size: .9rem; margin: 0 0 3px; }
.mini-chart-row { align-items: center; display: grid; gap: 10px; grid-template-columns: 74px 1fr 88px; }
.mini-chart-row small { color: var(--muted); font-size: .7rem; }
.mini-chart-row div { background: rgba(255,255,255,.07); border-radius: 999px; height: 9px; overflow: hidden; }
.mini-chart-row i { background: linear-gradient(90deg,#ff3979,#8659ff); border-radius: inherit; display: block; height: 100%; min-width: 6px; }
.mini-chart-row b { color: var(--text); font-size: .72rem; text-align: right; }
.recently-purchased-list > div { align-items: center; }
.recently-purchased-list small { color: var(--muted); font-size: .72rem; text-align: right; }
.dashboard-table { overflow-x: auto; }
.dashboard-table-head,.dashboard-table > a { align-items: center; display: grid; gap: 12px; grid-template-columns: 1.25fr .8fr .65fr .7fr .85fr 20px; min-width: 820px; }
.dashboard-table-head { border-bottom: 1px solid var(--line); color: var(--muted-2); font-size: .52rem; padding: 0 12px 12px; text-transform: uppercase; }
.dashboard-table > a { border-bottom: 1px solid var(--line); color: #dcd6e1; font-size: .62rem; padding: 17px 12px; }
.dashboard-table > a:hover { background: rgba(255,255,255,.025); }
.dashboard-table > a:last-child { border: 0; }
.dashboard-table em,.dashboard-table i { font-style: normal; }
.status-pill { border: 1px solid var(--line-strong); border-radius: 999px; color: var(--muted); display: inline-block; font-size: .5rem; font-style: normal; padding: 6px 9px; text-transform: capitalize; width: max-content; }
.status-paid,.status-completed { background: rgba(127,245,181,.08); border-color: rgba(127,245,181,.22); color: var(--green); }
.status-queued,.status-processing,.status-in_progress,.status-open,.status-duplicate_hold { background: rgba(91,157,255,.08); border-color: rgba(91,157,255,.22); color: #89b8ff; }
.status-preparing { background: rgba(255,196,71,.07); border-color: rgba(255,196,71,.2); color: #ffc447; }
.status-cancellation_requested,.status-urgent,.status-failed { background: rgba(255,85,116,.08); border-color: rgba(255,85,116,.22); color: #ff7892; }
.status-unpaid,.status-pending,.status-pending_payment,.status-warning { background: rgba(255,196,71,.07); border-color: rgba(255,196,71,.2); color: #ffc447; }
.dashboard-empty { border: 1px dashed var(--line-strong); border-radius: 16px; padding: 35px; text-align: center; }
.dashboard-empty p { font-size: .7rem; }
.dashboard-empty a { color: var(--purple-light); font-size: .64rem; }
.dashboard-two-column { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }
.dashboard-form .field { margin-bottom: 14px; }
.dashboard-form > p { color: var(--muted-2); font-size: .55rem; line-height: 1.6; text-align: center; }
.wallet-list > div,.ticket-list > a,.notification-list > a { align-items: center; border-bottom: 1px solid var(--line); display: flex; gap: 12px; padding: 14px 0; }
.wallet-list > div:last-child,.ticket-list > a:last-child,.notification-list > a:last-child { border-bottom: 0; }
.wallet-list > div > span,.ticket-list > a > span,.notification-list > a > span { align-items: center; background: rgba(255,255,255,.045); border-radius: 50%; display: flex; flex: 0 0 34px; height: 34px; justify-content: center; }
.notification-list > a.is-urgent { background: linear-gradient(135deg, rgba(255,95,118,.16), rgba(255,184,108,.08)); border: 1px solid rgba(255,95,118,.35); border-radius: 16px; box-shadow: 0 16px 42px rgba(255,95,118,.08); margin: 8px 0; padding: 14px; }
.notification-list > a.is-urgent > span { background: #ff5f76; color: #fff; box-shadow: 0 0 22px rgba(255,95,118,.42); }
.notification-list > a.requires-action b { color: #ffd18a; }
.customer-action-toast { align-items: flex-start; background: linear-gradient(135deg, rgba(30,20,40,.98), rgba(55,28,46,.98)); border: 1px solid rgba(255,95,118,.45); border-radius: 22px; bottom: 24px; box-shadow: 0 24px 80px rgba(0,0,0,.45), 0 0 40px rgba(255,95,118,.18); color: #fff; display: flex; gap: 14px; max-width: min(420px, calc(100vw - 32px)); opacity: 0; padding: 18px; pointer-events: none; position: fixed; right: 24px; transform: translateY(18px); transition: opacity .2s ease, transform .2s ease; z-index: 2500; }
.customer-action-toast.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.customer-action-toast > span { align-items: center; background: #ff5f76; border-radius: 50%; box-shadow: 0 0 24px rgba(255,95,118,.5); color: #fff; display: flex; flex: 0 0 36px; font-weight: 900; height: 36px; justify-content: center; }
.customer-action-toast b { color: #ffd18a; display: block; font-size: .82rem; }
.customer-action-toast p { color: rgba(255,255,255,.78); font-size: .68rem; line-height: 1.55; margin: 6px 0 12px; }
.customer-action-toast .button { min-height: 0; padding: 10px 14px; }
.customer-action-toast-close { align-items: center; background: rgba(255,255,255,.08); border: 0; border-radius: 50%; color: #fff; cursor: pointer; display: flex; font-size: 1rem; height: 28px; justify-content: center; position: absolute; right: 10px; top: 10px; width: 28px; }
.wallet-in { color: var(--green); }.wallet-out { color: #ff7892; }.wallet-pending { color: #ffc447; }
.wallet-list div div,.ticket-list a div,.notification-list a div { flex: 1; }
.wallet-list b,.wallet-list small,.ticket-list b,.ticket-list small,.notification-list b,.notification-list p { display: block; }
.wallet-list b,.ticket-list b,.notification-list b { font-size: .65rem; }
.wallet-list small,.ticket-list small { color: var(--muted-2); font-size: .51rem; margin-top: 4px; }
.wallet-list strong { font-size: .7rem; }
.ticket-list p,.wallet-list > p { color: var(--muted-2); font-size: .65rem; }
.notification-list p { font-size: .56rem; margin: 4px 0 0; }
.notification-list > a > small { color: var(--muted-2); font-size: .5rem; }
.dashboard-back { margin-bottom: 30px; }
.dashboard-back a { color: var(--muted-2); font-size: .62rem; }
.dashboard-order-hero { align-items: end; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; margin-bottom: 25px; padding-bottom: 32px; }
.dashboard-order-hero h1 { font-size: clamp(3rem,6vw,5rem); margin: 15px 0 10px; }
.dashboard-order-hero p { font-size: .7rem; }
.dashboard-order-hero > div:last-child { text-align: right; }
.dashboard-order-hero > div:last-child small,.dashboard-order-hero > div:last-child strong { display: block; }
.dashboard-order-hero > div:last-child strong { font-size: 2rem; margin: 7px 0 12px; }
.order-detail-items article { align-items: center; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding: 15px 0; }
.order-detail-items article:last-child { border: 0; }
.order-detail-items small,.order-detail-items b,.order-detail-items a { display: block; }
.order-detail-items small { color: var(--muted-2); font-size: .5rem; }.order-detail-items b { font-size: .68rem; margin-top: 3px; }.order-detail-items a { color: var(--purple-light); font-size: .5rem; margin-top: 6px; }
.order-timeline article { display: flex; gap: 14px; padding-bottom: 22px; position: relative; }
.order-timeline article::before { background: var(--line-strong); bottom: 0; content:""; left: 5px; position: absolute; top: 13px; width: 1px; }
.order-timeline article:last-child::before { display: none; }
.order-timeline i { background: var(--purple-light); border-radius: 50%; box-shadow: 0 0 12px rgba(167,139,250,.4); flex: 0 0 11px; height: 11px; margin-top: 3px; }
.order-timeline b { font-size: .67rem; }.order-timeline p { font-size: .57rem; margin: 5px 0; }.order-timeline small { color: var(--muted-2); font-size: .48rem; }
.dashboard-order-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 20px; }
.dashboard-order-actions form { margin: 0; }
.button-danger { background: rgba(255,85,116,.08); border: 1px solid rgba(255,85,116,.25); color: #ff7892; }
.chat-shell { margin: auto; max-width: 880px; }
.chat-messages { display: flex; flex-direction: column; gap: 14px; }
.chat-message { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 18px 18px 18px 4px; max-width: 76%; padding: 17px; }
.chat-customer { align-self: flex-end; background: rgba(139,92,246,.1); border-color: rgba(139,92,246,.22); border-radius: 18px 18px 4px 18px; }
.chat-message > div { align-items: center; display: flex; gap: 10px; justify-content: space-between; }
.chat-message b { font-size: .6rem; }.chat-message small { color: var(--muted-2); font-size: .48rem; }.chat-message p { font-size: .66rem; line-height: 1.7; margin: 10px 0 0; }
.chat-reply { background: rgba(16,14,21,.9); border: 1px solid var(--line); border-radius: 20px; margin-top: 24px; padding: 20px; }
.chat-reply .button { margin-top: 12px; }
.success-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.failed-icon { background: rgba(255,85,116,.1)!important; color: #ff7892!important; }
.page-heading { margin: 0 auto 45px; max-width: 720px; text-align: center; }
.page-heading h1 { font-size: clamp(3rem, 6vw, 5rem); margin-bottom: 15px; }
.page-heading p { font-size: .86rem; }
.empty-state { background: rgba(255,255,255,.02); border: 1px solid var(--line); border-radius: 24px; margin: auto; max-width: 760px; padding: 70px 30px; text-align: center; }
.empty-icon { align-items: center; background: rgba(139,92,246,.1); border: 1px solid rgba(139,92,246,.2); border-radius: 50%; color: var(--purple-light); display: flex; font-size: 1.4rem; height: 68px; justify-content: center; margin: 0 auto 25px; width: 68px; }
.empty-state h2 { font-size: 2rem; }
.empty-state p { margin: 0 auto 28px; max-width: 490px; }
.cart-layout { align-items: start; display: grid; gap: 24px; grid-template-columns: 1.4fr .6fr; }
.cart-items { background: rgba(16,16,23,.7); border: 1px solid var(--line); border-radius: 22px; overflow: hidden; }
.cart-item { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 18px; grid-template-columns: 48px 1fr 146px 85px 25px; padding: 22px; position: relative; }
.cart-item-main small { color: var(--muted-2); display: block; font-size: .58rem; }
.cart-item-main h2 { font-size: 1.03rem; margin: 3px 0 6px; }
.target-link { color: var(--muted-2); display: block; font-size: .58rem; max-width: 310px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.target-link span { color: var(--purple-light); }
.cart-dripfeed { color: var(--green); display: block; font-size: .5rem; margin-top: 7px; }
.cart-quantity { min-width: 146px; }
.cart-quantity label { color: var(--muted-2); font-size: .62rem; margin: 0 0 6px; }
.cart-quantity-stepper { align-items: center; display: flex; gap: 7px; }
.cart-quantity-stepper button { align-items: center; background: rgba(255,255,255,.055); border: 1px solid var(--line-strong); border-radius: 13px; color: var(--text); cursor: pointer; display: inline-flex; flex: 0 0 40px; font-size: 1.16rem; font-weight: 900; height: 40px; justify-content: center; line-height: 1; padding: 0; transition: background .2s ease, border-color .2s ease, transform .2s ease; width: 40px; }
.cart-quantity-stepper button:hover:not(:disabled) { background: rgba(139,92,246,.14); border-color: rgba(172,140,255,.5); transform: translateY(-1px); }
.cart-quantity-stepper button:disabled { cursor: not-allowed; opacity: .42; }
.cart-quantity-stepper input { border-radius: 12px; flex: 0 0 52px; height: 40px; padding: 0 5px; text-align: center; width: 52px; }
.cart-quantity-stepper input::-webkit-outer-spin-button,
.cart-quantity-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cart-quantity-stepper input[type=number] { -moz-appearance: textfield; }
.cart-item-price { font-size: .9rem; text-align: right; }
.remove-item { align-items: center; background: transparent; border: 1px solid var(--line); border-radius: 50%; color: var(--muted-2); display: flex; height: 24px; justify-content: center; padding: 0; width: 24px; }
.remove-item:hover { border-color: rgba(255,85,116,.35); color: var(--danger); }
.cart-item-actions { align-items: center; display: flex; justify-content: space-between; padding: 17px 22px; }
.cart-item-actions a, .cart-item-actions button { background: none; border: 0; color: var(--muted-2); cursor: pointer; font-size: .65rem; padding: 0; }
.cart-item-actions button { color: var(--purple-light); }
.totals-card { padding: 27px; position: sticky; top: 100px; }
.totals-card > div { align-items: center; display: flex; font-size: .7rem; justify-content: space-between; margin: 13px 0; }
.totals-card > div span { color: var(--muted); }
.totals-card .totals-grand { border-top: 1px solid var(--line); margin: 22px 0; padding-top: 20px; }
.totals-grand strong { font-size: 1.7rem; }
.totals-card > p { color: var(--muted-2); font-size: .58rem; margin: 13px 0 0; text-align: center; }
.totals-card > p i { color: var(--green); font-style: normal; margin-right: 4px; }
.checkout-layout { align-items: start; display: grid; gap: 24px; grid-template-columns: 1.25fr .75fr; }
.checkout-forms { display: grid; gap: 18px; }
.checkout-card { padding: 29px; }
.checkout-card-heading { align-items: start; display: flex; gap: 14px; margin-bottom: 28px; }
.checkout-card-heading > span { align-items: center; background: rgba(139,92,246,.1); border: 1px solid rgba(139,92,246,.2); border-radius: 50%; color: var(--purple-light); display: flex; font-size: .6rem; height: 31px; justify-content: center; width: 31px; }
.checkout-card-heading h2 { font-size: 1.2rem; margin: 1px 0 5px; }
.checkout-card-heading p { font-size: .64rem; margin: 0; }
.field-grid { display: grid; gap: 15px; grid-template-columns: 1fr 1fr; }
.field-wide { grid-column: 1 / -1; }
.field label small { color: var(--muted-2); font-weight: 400; margin-left: 4px; }
.payment-options { display: grid; gap: 9px; }
.payment-option { align-items: center; border: 1px solid var(--line); border-radius: 13px; cursor: pointer; display: grid; gap: 12px; grid-template-columns: 18px 34px 1fr auto; margin: 0; padding: 13px; transition: .2s; }
.payment-option:hover, .payment-option.is-selected { background: rgba(139,92,246,.055); border-color: rgba(139,92,246,.42); }
.payment-option.is-disabled { cursor: not-allowed; opacity: .48; filter: grayscale(.25); }
.payment-option-card { background: linear-gradient(135deg, rgba(255,49,88,.12), rgba(139,92,246,.1)); border-color: rgba(255,255,255,.13); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); }
.payment-option-card i { align-items: center; background: linear-gradient(135deg, #ff315f, #8b5cf6); border-radius: 11px; color: #fff; display: inline-flex; font-size: .66rem; font-style: normal; font-weight: 900; height: 34px; justify-content: center; letter-spacing: -.02em; width: 44px; }
.payment-option-card b { font-size: .92rem; }
.payment-option-card em { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: #fff; font-size: .68rem; font-style: normal; font-weight: 900; padding: 6px 10px; }
.card-pay-button { background: linear-gradient(135deg, #ff315f, #8b5cf6); border-color: rgba(255,255,255,.16); box-shadow: 0 18px 48px rgba(255,49,95,.22), 0 14px 40px rgba(139,92,246,.22); color: #fff; }
.card-pay-button:hover { box-shadow: 0 22px 60px rgba(255,49,95,.28), 0 18px 52px rgba(139,92,246,.28); filter: saturate(1.08); }
.device-fingerprint-status.status-blocked,.device-fingerprint-status.status-error { border: 1px solid rgba(255,57,121,.35); color: #ff9eb5; }
.device-fingerprint-status.status-clear { border: 1px solid rgba(127,245,181,.25); color: #9cf3bf; }
.device-fingerprint-status.status-suspicious,.device-fingerprint-status.status-pending { border: 1px solid rgba(245,200,75,.25); color: #f5d775; }
.payment-option input { display: none; }
.payment-radio { border: 1px solid var(--line-strong); border-radius: 50%; height: 17px; position: relative; width: 17px; }
.payment-option.is-selected .payment-radio { border-color: var(--purple); }
.payment-option.is-selected .payment-radio::after { background: var(--purple); border-radius: 50%; content: ""; inset: 3px; position: absolute; }
.payment-option > i { align-items: center; background: rgba(255,255,255,.05); border-radius: 8px; display: flex; font-size: .7rem; font-style: normal; height: 32px; justify-content: center; width: 32px; }
.payment-option b, .payment-option small { display: block; }
.payment-option b { font-size: .72rem; }
.payment-option small { color: var(--muted-2); font-size: .57rem; }
.payment-option em { color: var(--muted-2); font-size: .56rem; font-style: normal; }
.processor-note { background: rgba(255,255,255,.025); border-radius: 10px; color: var(--muted-2); font-size: .58rem; margin-top: 15px; padding: 10px; }
.processor-note i { align-items: center; border: 1px solid var(--line-strong); border-radius: 50%; display: inline-flex; font-style: normal; height: 16px; justify-content: center; margin-right: 5px; width: 16px; }
.wallet-split-card { background: linear-gradient(135deg, rgba(139,92,246,.12), rgba(255,49,88,.06)); border: 1px solid rgba(167,139,250,.24); border-radius: 18px; margin-top: 16px; padding: 18px; }
.wallet-split-card h3 { font-size: 1rem; margin: 5px 0 6px; }
.wallet-split-card p { color: var(--muted-2); font-size: .65rem; margin: 0 0 14px; }
.wallet-split-check { background: rgba(0,0,0,.16); border: 1px solid var(--line); border-radius: 13px; margin: 12px 0; padding: 12px; }
.wallet-split-controls { align-items: end; display: grid; gap: 14px; grid-template-columns: minmax(180px,.7fr) 1fr; }
.wallet-split-preview { display: grid; gap: 9px; grid-template-columns: repeat(3,1fr); }
.wallet-split-preview span { background: rgba(255,255,255,.045); border: 1px solid var(--line); border-radius: 12px; padding: 12px; }
.wallet-split-preview small,.wallet-split-preview b { display: block; }
.wallet-split-preview small { color: var(--muted-2); font-size: .48rem; letter-spacing: .06em; text-transform: uppercase; }
.wallet-split-preview b { color: var(--text); font-size: .8rem; margin-top: 4px; }
.wallet-split-card.is-wallet-only .wallet-split-check,.wallet-split-card.is-wallet-only .wallet-split-controls { opacity: .55; }
.quick-payment-box { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 17px; display: grid; gap: 13px; padding: 15px; }
.compact-payment-options .payment-option { grid-template-columns: 18px 30px 1fr; padding: 11px; }
.compact-payment-options .payment-option em { display: none; }
.checkout-items { border-bottom: 1px solid var(--line); margin-bottom: 20px; padding-bottom: 15px; }
.checkout-items article { align-items: center; display: grid; gap: 10px; grid-template-columns: 37px 1fr auto; margin: 13px 0; }
.checkout-items .service-icon { border-radius: 9px; height: 37px; width: 37px; }
.checkout-items small, .checkout-items b { display: block; }
.checkout-items small { color: var(--muted-2); font-size: .52rem; }
.checkout-items b { font-size: .65rem; }
.checkout-items strong { font-size: .7rem; }
.success-card { background: radial-gradient(circle at 50% 0, rgba(139,92,246,.2), transparent 38%), rgba(16,16,23,.9); border: 1px solid var(--line); border-radius: 28px; margin: auto; max-width: 900px; padding: 70px; text-align: center; }
.success-orbit { align-items: center; border: 1px solid rgba(139,92,246,.2); border-radius: 50%; display: flex; height: 100px; justify-content: center; margin: 0 auto 30px; width: 100px; }
.success-orbit span { align-items: center; background: var(--purple); border-radius: 50%; box-shadow: 0 0 40px rgba(139,92,246,.5); display: flex; font-size: 1.2rem; height: 54px; justify-content: center; width: 54px; }
.success-card h1 { font-size: clamp(3rem, 6vw, 5rem); }
.success-card > p { margin: 0 auto 30px; max-width: 590px; }
.reference-box { background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 14px; margin: 0 auto 20px; max-width: 420px; padding: 15px; }
.reference-box small, .reference-box strong { display: block; }
.reference-box small { color: var(--muted-2); font-size: .56rem; letter-spacing: .1em; text-transform: uppercase; }
.reference-box strong { font-size: 1.15rem; letter-spacing: .08em; margin-top: 4px; }
.success-meta { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(3, 1fr); margin: 35px 0; padding: 22px 0; }
.success-meta span { border-right: 1px solid var(--line); padding: 0 14px; }
.success-meta span:last-child { border-right: 0; }
.success-meta small, .success-meta b { display: block; }
.success-meta small { color: var(--muted-2); font-size: .55rem; }
.success-meta b { font-size: .68rem; margin-top: 5px; overflow-wrap: anywhere; }

/* Footer */
.site-footer { background: #0a0a0f; border-top: 1px solid var(--line); }
.footer-cta { align-items: center; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding-bottom: 55px; padding-top: 70px; }
.footer-cta .eyebrow { margin-bottom: 13px; }
.footer-cta h2 { font-size: clamp(2.2rem, 4vw, 3.5rem); margin: 0; }
.footer-grid { display: grid; gap: 50px; grid-template-columns: 1.8fr 1fr 1fr 1.2fr; padding: 65px 0; }
.footer-brand p { font-size: .72rem; line-height: 1.7; margin-top: 20px; max-width: 270px; }
.footer-grid h3 { color: #d5d2dc; font-size: .65rem; letter-spacing: .1em; margin-bottom: 19px; text-transform: uppercase; }
.footer-grid > div > a:not(.brand) { color: var(--muted-2); display: block; font-size: .7rem; margin: 10px 0; transition: color .2s; }
.footer-grid > div > a:hover { color: white; }
.footer-grid > div > p { font-size: .68rem; }
.footer-grid .support-link { color: var(--purple-light) !important; overflow-wrap: anywhere; }
.footer-bottom { align-items: center; border-top: 1px solid var(--line); color: var(--muted-2); display: flex; font-size: .56rem; justify-content: space-between; padding: 20px 0 30px; }
.footer-bottom div { display: flex; gap: 20px; }
.system-status { align-items: center; display: flex; gap: 6px; }
.system-status i { background: var(--green); border-radius: 50%; box-shadow: 0 0 7px rgba(127,245,181,.5); height: 5px; width: 5px; }

@media (max-width: 1050px) {
    .main-nav { gap: 20px; }
    .hero-grid { gap: 20px; }
    .hero-copy h1 { font-size: 5rem; }
    .hero-stage { transform: scale(.88); transform-origin: left center; width: 110%; }
    .register-auth-shell { gap: 34px; grid-template-columns: minmax(285px, .82fr) minmax(470px, 1.1fr); }
    .register-trust-grid { grid-template-columns: 1fr; }
    .service-grid, .package-grid { grid-template-columns: repeat(3, 1fr); }
    .advantage-grid { grid-template-columns: 1fr 1fr; }
    .advantage-grid article:nth-child(2) { border-right: 0; }
    .advantage-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .home-service-track .service-card { flex-basis: calc((100% - 24px) / 3); }
}

@media (max-width: 820px) {
    .container { width: min(100% - 32px, 680px); }
    .section { padding: 85px 0; }
    main > .site-breadcrumbs:first-child { margin-top: 78px; }
    .site-breadcrumbs ol { gap: 6px; padding: 11px 0; }
    .site-breadcrumbs li { font-size: .72rem; }
    .site-breadcrumbs span[aria-current="page"] { max-width: 62vw; }
    .site-header { padding: 10px 0; }
    .header-menu-cluster { flex: 0 0 auto; justify-content: flex-end; margin-left: auto; max-width: none; }
    .nav-toggle { display: block; margin-left: auto; margin-right: 10px; order: 2; }
    .account-actions { order: 0; }
    .cart-link { order: 0; }
    .theme-toggle { order: 0; padding: 6px 10px 6px 6px; }
    .main-nav { align-items: stretch; background: rgba(12,12,18,.98); border: 1px solid var(--line); border-radius: 16px; display: flex; flex-direction: column; gap: 0; left: 16px; opacity: 0; padding: 12px; pointer-events: none; position: fixed; right: 16px; top: 67px; transform: translateY(-10px); transition: .2s; }
    .main-nav.is-open { opacity: 1; pointer-events: auto; transform: none; }
    .menu-row { align-items: stretch; display: flex; flex-direction: column; gap: 0; justify-content: flex-start; }
    .menu-row + .menu-row { border-top: 1px solid var(--line); margin-top: 8px; padding-top: 8px; }
    .menu-row > a, .main-nav > a, .nav-dropdown > a { display: block; padding: 11px; }
    .main-nav .account-actions { display: flex; padding: 10px 11px; }
    .main-nav .cart-link { display: flex; justify-content: space-between; margin: 4px 0; padding: 10px 11px; }
    .main-nav .theme-toggle { justify-content: flex-start; margin-top: 4px; width: 100%; }
    .main-nav .theme-toggle-text { display: inline; }
    .main-nav .cart-link > span { display: inline; }
    .site-search-form { margin: 10px 4px 4px; width: auto; }
    .currency-switcher { flex-basis: auto; margin: 6px 4px; width: calc(100% - 8px); }
    .currency-switcher select { min-height: 38px; width: 100%; }
    .language-switcher { flex-basis: auto; margin: 6px 4px; max-width: none; width: calc(100% - 8px); }
    .language-switcher select { max-width: none; min-height: 38px; width: 100%; }
    .nav-dropdown-panel { display: none; }
    .hero { min-height: auto; padding-top: 112px; }
    .hero-grid, .service-hero-grid, .order-grid, .checkout-layout, .cart-layout, .process-grid, .faq-grid, .content-grid, .catalog-group { grid-template-columns: 1fr; }
    .auth-shell { gap: 35px; grid-template-columns: 1fr; }
    .auth-login-shell { gap: 24px; }
    .auth-login-intro { text-align: left; }
    .auth-login-intro p { margin-left: 0; }
    .auth-login-card-grid { grid-template-columns: 1fr; }
    .auth-login-options { border-left: 0; border-top: 1px solid var(--line); }
    .register-auth-page { padding-top: 120px; }
    .register-auth-intro { position: static; }
    .register-auth-intro h1 { max-width: 760px; }
    .register-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .register-step-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .register-step-list article { grid-template-columns: 1fr; }
    .register-step-list article + article { border-left: 1px solid var(--line); border-top: 0; }
    .hero-copy { padding-bottom: 0; }
    .hero-copy h1 { font-size: clamp(3.6rem, 13vw, 5.7rem); white-space: normal; }
    .hero-stage { height: 500px; margin: 10px auto 0; max-width: 560px; transform: scale(.92); transform-origin: center; width: 100%; }
    .growth-card { left: 3%; width: 94%; }
    .chip-tiktok { left: -3%; }
    .chip-youtube { right: -3%; }
    .trust-strip { flex-wrap: wrap; gap: 18px; justify-content: center; padding: 25px 0; }
    .trust-strip > span { text-align: center; width: 100%; }
    .split-heading { align-items: start; display: block; }
    .split-heading p { margin-top: 20px; }
    .service-grid, .package-grid { grid-template-columns: 1fr 1fr; }
    .process-grid, .faq-grid { gap: 55px; }
    .testimonial-card { padding: 55px 35px; }
    .catalog-group { gap: 25px; }
    .service-hero { padding-top: 115px; }
    .breadcrumbs { margin-bottom: 24px; }
    .service-hero-panel { margin-top: 20px; }
    .assurance-row { grid-template-columns: 1fr 1fr; }
    .assurance-row span:nth-child(2) { border-right: 0; }
    .assurance-row span:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .order-summary, .totals-card { position: static; }
    .order-builder-page .order-grid, .order-cross-heading { grid-template-columns: 1fr; }
    .cart-layout, .checkout-layout { gap: 18px; }
    .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
    .footer-grid > div:last-child { grid-column: 1 / -1; }
    .home-platform-heading, .home-seo-grid { gap: 22px; grid-template-columns: 1fr; }
    .dashboard-stat-grid { grid-template-columns: 1fr 1fr; }
    .dashboard-two-column { grid-template-columns: 1fr; }
    .dashboard-topbar { align-items: flex-start; flex-direction: column; }
    .home-platform-heading { align-items: start; }
    .home-slider-controls { justify-self: end; }
    .home-service-track .service-card { flex-basis: calc((100% - 12px) / 2); }
}

@media (max-width: 560px) {
    .container { width: min(100% - 24px, 500px); }
    h1 { font-size: 3.2rem; }
    h2 { font-size: 2.65rem; }
    .button { gap: 18px; }
    .brand { font-size: .72rem; }
    .brand-mark { height: 32px; width: 32px; }
.brand-logo { max-width: 190px; width: 190px; }
.brand-logo-image { border-radius: 0; max-height: 54px; }
    .cart-link { padding: 8px 10px; }
    .hero { padding-top: 100px; }
    .auth-login-page { padding-top: 105px; }
    .auth-login-intro h1 { font-size: 3.15rem; }
    .auth-login-main,
    .auth-login-options { padding: 22px; }
    .auth-login-main .auth-recovery-links { align-items: flex-start; flex-direction: column; }
    .register-auth-page { padding-top: 105px; }
    .register-showcase-card { grid-template-columns: 1fr; padding: 18px; }
    .register-trust-grid, .register-step-list { grid-template-columns: 1fr; }
    .register-step-list article + article { border-left: 0; border-top: 1px solid var(--line); }
    .auth-card-heading { padding: 25px 20px 22px; }
    .register-auth-card form { padding: 16px; }
    .register-form-section { border-radius: 17px; padding: 16px; }
    .register-section-heading { grid-template-columns: 36px 1fr; }
    .register-section-heading > span { border-radius: 12px; font-size: .75rem; height: 36px; }
    .register-auth-card .auth-links { margin: 0 16px 18px; }
    .hero-copy h1 { font-size: 3.55rem; }
    .hero-copy p { font-size: .95rem; }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 18px; }
    .hero-proof { margin-top: 35px; }
    .hero-stage { height: 420px; margin-left: -8%; transform: scale(.76); transform-origin: top center; width: 116%; }
    .trust-strip { margin-top: 0; }
    .service-grid, .package-grid, .catalog-links { grid-template-columns: 1fr; }
    .service-card { min-height: 280px; }
    .home-platform-panel { border-radius: 20px; padding: 18px; }
    .home-platform-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
    .home-platform-tabs button { flex: 0 0 auto; }
    .home-service-track .service-card { flex-basis: 88%; }
    .dashboard-stat-grid { grid-template-columns: 1fr; }
    .dashboard-balance { width: 100%; }
    .dashboard-nav { border-radius: 16px; }
    .dashboard-order-hero { align-items: flex-start; flex-direction: column; gap: 20px; }
    .dashboard-order-hero > div:last-child { text-align: left; }
    .dashboard-order-actions { align-items: stretch; flex-direction: column; }
    .chat-message { max-width: 90%; }
    .advantage-grid { grid-template-columns: 1fr; }
    .advantage-grid article { border-bottom: 1px solid var(--line); border-right: 0; }
    .advantage-grid article:last-child { border-bottom: 0; }
    .testimonial-card { border-radius: 20px; padding: 45px 20px; }
    blockquote { font-size: 1.4rem; }
    .testimonial-person .stars { display: none; }
    .page-hero, .service-hero { padding-top: 108px; }
    .catalog-heading { align-items: flex-start; }
    .service-hero-panel { grid-template-columns: 1fr; }
    .service-pulse { grid-column: auto; }
    .assurance-row { grid-template-columns: 1fr; }
    .assurance-row span { border-bottom: 1px solid var(--line); border-right: 0; }
    .assurance-row span:last-child { border-bottom: 0; }
    .flow-section { padding-top: 110px; }
    .flow-steps > b { margin: 0 7px; width: 25px; }
    .flow-steps span { font-size: 0; }
    .flow-steps span i { font-size: .57rem; }
    .order-form-card, .checkout-card { padding: 24px; }
    .order-form-card h1 { font-size: 2.8rem; }
    .order-method-heading { display: grid; }
    .order-method-heading b { text-align: left; }
    .order-method-options { grid-template-columns: 1fr; }
    .order-method-option span { min-height: 0; }
    .order-addon-grid { grid-template-columns: 1fr; }
    .cart-item { align-items: start; grid-template-columns: 42px 1fr auto; padding: 17px; }
    .cart-item-main { grid-column: 2 / -1; }
    .cart-quantity { grid-column: 2; width: 146px; }
    .cart-item-price { align-self: center; grid-column: 3; }
    .remove-item { position: absolute; right: 13px; top: 13px; }
    .field-grid { grid-template-columns: 1fr; }
    .field-wide { grid-column: auto; }
    .wallet-split-controls,.wallet-split-preview { grid-template-columns: 1fr; }
    .payment-option { grid-template-columns: 18px 30px 1fr; }
    .payment-option em { display: none; }
    .success-card { padding: 45px 20px; }
    .success-meta { grid-template-columns: 1fr; }
    .success-meta span { border-bottom: 1px solid var(--line); border-right: 0; padding: 13px; }
    .success-meta span:last-child { border-bottom: 0; }
    .footer-cta { align-items: flex-start; flex-direction: column; gap: 25px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-brand { grid-column: 1 / -1; }
    .footer-bottom { align-items: flex-start; flex-direction: column; gap: 13px; }
}

.admin-nav { align-items: center; background: rgba(16,13,18,.88); border: 1px solid var(--line); border-radius: 24px; display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 48px; max-width: 100%; padding: 6px; width: 100%; }
.admin-nav a { border-radius: 999px; color: var(--muted); font-size: .68rem; padding: 10px 16px; }
.admin-nav form { display: inline-flex; margin: 0; }
.admin-nav button { border-radius: 999px; font-size: .68rem; padding: 10px 16px; }
.admin-nav a:hover,.admin-nav a.is-active { background: rgba(255,255,255,.08); color: #fff; }
.admin-nav a b { background: #ff5574; border-radius: 999px; color: #fff; font-size: .47rem; margin-left: 6px; padding: 3px 6px; }
.admin-nav .admin-nav-logout { background: rgba(255,85,116,.12); border: 1px solid rgba(255,85,116,.24); color: #ffd3dc; margin-left: auto; }
.admin-nav .admin-nav-logout:hover { background: rgba(255,85,116,.22); color: #fff; }
.admin-top-alerts { display: grid; gap: 10px; margin: -32px 0 32px; }
.admin-top-alert { align-items: center; background: rgba(255,255,255,.045); border: 1px solid var(--line); border-radius: 18px; color: var(--text); display: grid; gap: 12px; grid-template-columns: auto minmax(180px,.45fr) minmax(0,1fr); padding: 12px 15px; }
.admin-top-alert span { border-radius: 999px; font-size: .62rem; font-weight: 900; letter-spacing: .08em; padding: 6px 10px; }
.admin-top-alert b { font-size: .88rem; }
.admin-top-alert small { color: var(--muted); font-size: .78rem; line-height: 1.4; }
.admin-top-alert-critical { border-color: rgba(255,57,121,.34); box-shadow: 0 16px 34px rgba(255,57,121,.08); }
.admin-top-alert-critical span { background: rgba(255,57,121,.18); color: #ff8db3; }
.admin-top-alert-warning span { background: rgba(255,204,51,.16); color: #ffd75e; }
.admin-top-alert-info span { background: rgba(37,244,238,.14); color: #71fff9; }
html[data-theme="light"] .admin-top-alert { background: rgba(17,24,39,.045); }
html[data-theme="light"] .admin-top-alert-critical span { color: #b4144a; }
html[data-theme="light"] .admin-top-alert-warning span { color: #8b6400; }
html[data-theme="light"] .admin-top-alert-info span { color: #047481; }
.pricing-admin-list { display: grid; gap: 14px; }
.pricing-admin-row { background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)); border: 1px solid var(--line); border-left: 4px solid var(--platform-accent); border-radius: 22px; display: grid; gap: 18px; grid-template-columns: minmax(220px,.85fr) minmax(0,2.15fr); padding: 18px; }
.pricing-admin-service span { color: var(--platform-accent); display: block; font-size: .72rem; font-weight: 800; letter-spacing: .08em; margin-bottom: 5px; text-transform: uppercase; }
.pricing-admin-service b { color: #fff; display: block; font-size: 1rem; margin-bottom: 4px; }
.pricing-admin-service small { color: var(--muted); display: block; line-height: 1.5; }
.pricing-admin-form { align-items: end; display: grid; gap: 10px; grid-template-columns: repeat(4,minmax(110px,1fr)) auto auto auto; }
.pricing-admin-form label { color: var(--muted-2); font-size: .64rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.pricing-admin-form input:not([type="checkbox"]) { margin-top: 6px; min-width: 0; width: 100%; }
.pricing-admin-form .portal-check { align-items: center; align-self: center; display: flex; gap: 7px; letter-spacing: 0; text-transform: none; }
.admin-pricing-page .stat-card small { color: var(--muted); display: block; font-size: .68rem; margin-top: 6px; }
.admin-pricing-source-grid { display: grid; gap: 14px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.admin-pricing-source-grid article { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
.admin-pricing-source-grid b { color: #fff; display: block; font-size: .86rem; margin-bottom: 7px; }
.admin-pricing-source-grid span { color: var(--muted); display: block; font-size: .72rem; line-height: 1.55; }
.admin-pricing-filters { display: grid; gap: 14px; grid-template-columns: repeat(5,minmax(0,1fr)); }
.admin-pricing-filters .wide { grid-column: span 2; }
.admin-pricing-filters .field label { color: var(--muted-2); display: grid; font-size: .62rem; font-weight: 800; gap: 6px; letter-spacing: .05em; text-transform: uppercase; }
.admin-pricing-filters input,.admin-pricing-filters select { min-width: 0; width: 100%; }
.admin-pricing-filter-actions { align-self: end; }
.admin-pricing-filter-actions .button { width: 100%; }
.admin-pricing-table { overflow-x: auto; }
.admin-pricing-row { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 10px; grid-template-columns: 130px 190px 170px 85px 115px 115px 150px 115px 120px 155px 82px 92px; min-width: 1480px; padding: 12px 8px; }
.admin-pricing-head { color: var(--muted-2); font-size: .55rem; font-weight: 900; letter-spacing: .08em; padding-bottom: 12px; text-transform: uppercase; }
.admin-pricing-head a,.admin-pricing-head span { color: inherit; text-decoration: none; }
.admin-pricing-head a:hover { color: #fff; }
.admin-pricing-edit-row { border-left: 4px solid var(--platform-accent); }
.admin-pricing-edit-row:hover { background: rgba(255,255,255,.025); }
.admin-pricing-row b,.admin-pricing-row strong { color: #fff; display: block; font-size: .75rem; }
.admin-pricing-row small { color: var(--muted-2); display: block; font-size: .58rem; line-height: 1.45; margin-top: 3px; }
.admin-pricing-row label { color: var(--muted-2); display: grid; font-size: .52rem; font-weight: 900; gap: 5px; letter-spacing: .06em; text-transform: uppercase; }
.admin-pricing-row input:not([type="checkbox"]) { border-radius: 10px; font-size: .72rem; min-height: 38px; min-width: 0; padding: 8px 9px; width: 100%; }
.admin-price-platform { align-items: center; display: flex; gap: 9px; min-width: 0; }
.admin-price-platform i { background: var(--platform-accent); border-radius: 50%; box-shadow: 0 0 14px color-mix(in srgb,var(--platform-accent),transparent 45%); flex: 0 0 auto; height: 9px; width: 9px; }
.admin-price-platform span { color: var(--platform-accent); font-size: .68rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.admin-price-margin,.admin-supplier-cost-guide { border: 1px solid var(--line); border-radius: 12px; padding: 8px 10px; }
.admin-price-margin.is-good,.admin-supplier-cost-guide.is-good { background: rgba(24,201,137,.08); border-color: rgba(24,201,137,.25); }
.admin-price-margin.is-low,.admin-supplier-cost-guide.is-low { background: rgba(255,76,97,.08); border-color: rgba(255,76,97,.30); }
.admin-price-margin.is-missing,.admin-supplier-cost-guide.is-missing { background: rgba(255,193,7,.08); border-color: rgba(255,193,7,.25); }
.admin-price-flags { display: grid; gap: 8px; }
.admin-price-flags .portal-check { align-items: center; display: flex; font-size: .66rem; gap: 7px; letter-spacing: 0; text-transform: none; }
.admin-price-actions .button { min-height: 38px; padding-inline: 14px; width: 100%; }
.comment-variant-admin-list { display:grid; gap:12px; margin-bottom:18px; }
.comment-variant-admin-row { align-items:end; background:rgba(255,255,255,.028); border:1px solid var(--line); border-left:4px solid var(--platform-accent); border-radius:18px; display:grid; gap:12px; grid-template-columns:minmax(210px,.9fr) minmax(150px,.7fr) 130px minmax(220px,1.2fr) auto; padding:15px; }
.comment-variant-admin-row > div span { color:var(--platform-accent); display:block; font-size:.66rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.comment-variant-admin-row > div b { color:#fff; display:block; margin:5px 0; }
.comment-variant-admin-row > div small { color:var(--muted-2); }
.comment-variant-admin-row label { color:var(--muted-2); font-size:.62rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.comment-variant-admin-row input:not([type="checkbox"]) { margin-top:6px; width:100%; }
.comment-variant-admin-row .portal-check { align-items:center; letter-spacing:0; text-transform:none; }
.service-drop-row { border-left: 4px solid transparent; }
.service-drop-critical { border-left-color: #ff365f; background: rgba(255,54,95,.06); }
.service-drop-high { border-left-color: #ff8a2a; background: rgba(255,138,42,.055); }
.service-drop-medium { border-left-color: #facc15; background: rgba(250,204,21,.045); }
.service-drop-low { border-left-color: #38bdf8; background: rgba(56,189,248,.04); }
.service-drop-none { border-left-color: rgba(24,201,137,.6); }
.service-drop-unknown { border-left-color: rgba(148,163,184,.75); }
.supplier-admin .dashboard-topbar p { max-width: 720px; }
.admin-supplier-summary { display: grid; gap: 12px; grid-template-columns: repeat(6,minmax(0,1fr)); margin: 34px 0 18px; }
.admin-supplier-summary article { background: linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018)); border: 1px solid var(--line); border-radius: 20px; padding: 20px; }
.admin-supplier-summary article.needs-attention { border-color: rgba(255,76,97,.35); box-shadow: inset 0 0 0 1px rgba(255,76,97,.08); }
.admin-supplier-summary small,.admin-supplier-summary strong,.admin-supplier-summary span { display: block; }
.admin-supplier-summary small { color: var(--muted-2); font-size: .52rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.admin-supplier-summary strong { color: #fff; font-size: 1.8rem; margin: 18px 0 6px; }
.admin-supplier-summary span { color: var(--muted); font-size: .62rem; line-height: 1.45; }
.supplier-control-actions { margin-top: 18px; }
.supplier-action-grid { display: grid; gap: 14px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.supplier-action-card { background: rgba(255,255,255,.026); border: 1px solid var(--line); border-radius: 20px; color: inherit; display: grid; gap: 10px; min-height: 185px; padding: 19px; text-decoration: none; }
.supplier-action-card span { color: var(--purple-light); font-size: .55rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.supplier-action-card b { color: #fff; font-size: .9rem; }
.supplier-action-card small { color: var(--muted); line-height: 1.55; }
.supplier-action-card .button,.supplier-action-card em { align-self: end; justify-self: start; }
.supplier-action-link em { color: var(--purple-light); font-size: .66rem; font-style: normal; font-weight: 900; }
.supplier-filter-form { align-items: end; display: grid; gap: 13px; grid-template-columns: minmax(220px,1.4fr) repeat(4,minmax(145px,.8fr)) auto auto; margin: 0 0 24px; }
.supplier-filter-form .field { margin: 0; }
.supplier-floating-heading { margin: 36px 0 0; }
.supplier-config-grid { display: grid; gap: 18px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 42px; }
.supplier-config-card { padding: 25px; }
.supplier-card-warning { border-color: rgba(255,76,97,.34); box-shadow: 0 0 0 1px rgba(255,76,97,.06) inset; }
.supplier-card-head { align-items: flex-start; display: flex; gap: 15px; justify-content: space-between; margin-bottom: 22px; }
.supplier-card-head h2 { font-size: 1.8rem; margin: 8px 0 0; }
.supplier-card-metrics { display: grid; gap: 9px; grid-template-columns: repeat(3,minmax(0,1fr)); margin-bottom: 18px; }
.supplier-card-metrics span { background: rgba(255,255,255,.03); border: 1px solid var(--line); border-radius: 14px; padding: 10px; }
.supplier-card-metrics small,.supplier-card-metrics b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.supplier-card-metrics small { color: var(--muted-2); font-size: .45rem; letter-spacing: .06em; text-transform: uppercase; }
.supplier-card-metrics b { color: #fff; font-size: .58rem; margin-top: 6px; }
.supplier-toggle { align-items: center; color: #d9d2dd; cursor: pointer; display: flex; font-size: .7rem; gap: 10px; margin: 4px 0 17px; }
.supplier-toggle input { accent-color: var(--accent); height: 17px; width: 17px; }
.supplier-sync-form { margin-top: 10px; }
.supplier-card-actions { align-items: center; gap: 8px; }
.supplier-sync-meta { color: var(--muted-2); font-size: .58rem; margin: 15px 0 0; }
.supplier-error { background: rgba(255,76,97,.08); border: 1px solid rgba(255,76,97,.22); border-radius: 10px; color: #ff9aa8; font-size: .58rem; line-height: 1.5; margin: 13px 0 0; padding: 10px; }
.supplier-routing-panel { overflow: hidden; }
.supplier-route-count { color: var(--muted); font-size: .66rem; white-space: nowrap; }
.supplier-route-table,.supplier-catalog-table { overflow-x: auto; }
.supplier-route-row { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 14px; grid-template-columns: minmax(200px,1.05fr) minmax(150px,.7fr) minmax(330px,1.45fr) minmax(150px,.7fr) minmax(145px,.65fr) minmax(220px,.9fr); min-width: 1370px; padding: 13px 5px; }
.supplier-route-header { color: var(--muted-2); font-size: .53rem; letter-spacing: .07em; padding-bottom: 10px; text-transform: uppercase; }
.supplier-local-service { align-items: center; display: flex; gap: 11px; }
.supplier-local-service i { background: var(--service-accent,#fff); border-radius: 50%; box-shadow: 0 0 16px color-mix(in srgb,var(--service-accent,#fff),transparent 45%); height: 8px; width: 8px; }
.supplier-local-service span { display: grid; gap: 3px; }
.supplier-local-service small { color: var(--muted-2); font-size: .52rem; }
.supplier-local-service b { color: #f5f0f6; font-size: .68rem; }
.supplier-route-row select,.supplier-route-row input[type="number"] { background: #151117; border: 1px solid var(--line); border-radius: 10px; color: #e8e1ea; font-size: .6rem; min-width: 0; padding: 11px; width: 100%; }
.supplier-route-row select:disabled { opacity: .45; }
.supplier-service-picker { min-width: 0; position: relative; width: 100%; }
.supplier-service-picker > input[type="text"] { background: #151117; border: 1px solid var(--line); border-radius: 10px; color: #e8e1ea; font-size: .6rem; padding: 11px; width: 100%; }
.supplier-service-picker > input[type="text"]:focus { border-color: color-mix(in srgb,var(--purple-light),transparent 35%); box-shadow: 0 0 0 3px rgba(167,139,250,.08); outline: 0; }
.supplier-service-picker > input[type="text"]:disabled { cursor: not-allowed; opacity: .45; }
.supplier-service-picker > small { color: var(--muted-2); display: block; font-size: .48rem; margin-top: 6px; }
.supplier-route-stack { display: grid; gap: 8px; }
.supplier-speed-label { color: var(--muted); display: grid; font-size: .52rem; gap: 5px; letter-spacing: .04em; margin-top: 7px; text-transform: uppercase; }
.supplier-speed-label select { padding: 9px 10px; }
.supplier-service-picker.has-error > input[type="text"] { border-color: rgba(255,85,116,.65); box-shadow: 0 0 0 3px rgba(255,85,116,.08); }
.supplier-service-picker.has-error > small { color: #ff7892; }
.supplier-service-results { background: #110e14; border: 1px solid var(--line-strong); border-radius: 12px; box-shadow: 0 18px 45px rgba(0,0,0,.35); margin-top: 7px; max-height: 310px; overflow-y: auto; padding: 5px; width: 100%; }
.supplier-service-results[hidden] { display: none; }
.supplier-service-results button { align-items: center; background: transparent; border: 0; border-bottom: 1px solid var(--line); color: #ece5ef; cursor: pointer; display: grid; font: inherit; gap: 8px; grid-template-columns: 70px minmax(0,1fr); padding: 10px; text-align: left; width: 100%; }
.supplier-service-results button:last-child { border-bottom: 0; }
.supplier-service-results button:hover,.supplier-service-results button:focus { background: rgba(167,139,250,.09); outline: 0; }
.supplier-service-results button b { color: var(--purple-light); font-size: .55rem; }
.supplier-service-results button span { font-size: .58rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.supplier-service-results button small { color: var(--muted-2); font-size: .47rem; grid-column: 2; }
.supplier-service-empty { color: var(--muted); font-size: .56rem; padding: 16px 10px; text-align: center; }
.supplier-route-save { display: flex; justify-content: flex-end; padding-top: 24px; }
.supplier-route-automation { display: grid; gap: 8px; }
.supplier-route-automation .portal-check { align-items: center; font-size: .58rem; gap: 7px; letter-spacing: 0; text-transform: none; }
.supplier-route-automation .admin-mini-label { color: var(--muted); display: grid; font-size: .58rem; gap: 5px; letter-spacing: .04em; text-transform: uppercase; }
.supplier-route-alternatives { display: grid; gap: 8px; }
.supplier-alt-route { align-items: center; display: grid; gap: 7px; grid-template-columns: 42px minmax(0,1fr) minmax(74px,.55fr) minmax(110px,.75fr); }
.supplier-alt-route span { color: var(--muted-2); font-size: .52rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.supplier-refill-policy { align-items: center; display: grid; gap: 18px; grid-template-columns: minmax(0,1.25fr) minmax(260px,.75fr); margin: 0 0 18px; }
.supplier-refill-policy h3 { margin: 4px 0 6px; }
.supplier-refill-policy p,.supplier-refill-policy small,.supplier-route-note { color: var(--muted); font-size: .62rem; line-height: 1.55; }
.supplier-route-note { display: block; }
.supplier-managed-drip-fields { display: grid; gap: 7px; grid-template-columns: 1fr 1fr; }
.manual-order-admin-form { gap: 18px; }
.manual-order-lines { display: grid; gap: 14px; }
.manual-order-line { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 18px; display: grid; gap: 12px; padding: 16px; }
.manual-order-line .portal-check { align-items: center; align-self: end; min-height: 44px; }
.catalog-filter { align-items: end; display: grid; gap: 15px; grid-template-columns: repeat(auto-fit,minmax(min(100%,150px),1fr)); margin-bottom: 28px; max-width: 100%; width: 100%; }
.catalog-filter .field { margin: 0; min-width: 0; }
.catalog-filter input,.catalog-filter select,.supplier-catalog-admin-filter input,.supplier-catalog-admin-filter select { max-width: 100%; min-width: 0; width: 100%; }
.catalog-filter .button,.supplier-catalog-admin-filter .button { justify-self: start; min-width: max-content; width: auto; }
.supplier-catalog-admin-filter { grid-template-columns: repeat(auto-fit,minmax(min(100%,145px),1fr)); max-width: 100%; width: 100%; }
.supplier-catalog-admin-filter .field { min-width: 0; }
.supplier-route-filter,.supplier-log-filter { grid-template-columns: minmax(260px,1.4fr) minmax(180px,.8fr) minmax(180px,.8fr) auto auto; }
.supplier-catalog-row { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 14px; grid-template-columns: 120px 180px minmax(300px,1fr) 100px 120px 90px; min-width: 950px; padding: 14px 7px; }
.supplier-catalog-row > span:first-child { display: grid; gap: 3px; }
.supplier-catalog-row small { color: var(--muted-2); font-size: .51rem; }
.supplier-catalog-row b,.supplier-catalog-row strong { color: #eae3ec; font-size: .62rem; }
.supplier-catalog-row span { color: var(--muted); font-size: .58rem; }
.supplier-catalog-head { color: var(--muted-2); font-size: .52rem; letter-spacing: .07em; text-transform: uppercase; }
.supplier-catalog-head span { color: inherit; }
.order-detail-items article > div:first-child > span { color: var(--muted-2); display: block; font-size: .56rem; margin-top: 7px; }
.order-item-progress { align-items: flex-end; display: flex; flex-direction: column; gap: 10px; }
.status-active { background: rgba(127,245,181,.08); border-color: rgba(127,245,181,.22); color: var(--green); }
.status-pending_verification { background: rgba(107,213,255,.08); border-color: rgba(107,213,255,.24); color: #87dcff; }
.status-temporarily_locked,.status-suspended { background: rgba(255,196,71,.07); border-color: rgba(255,196,71,.2); color: #ffc447; }
.status-disabled,.status-deleted,.status-compromised,.status-deletion_pending,.status-blocked,.status-attention_required { background: rgba(255,85,116,.08); border-color: rgba(255,85,116,.22); color: #ff7892; }
.customer-total { background: rgba(255,255,255,.05); border: 1px solid var(--line); border-radius: 999px; color: #ded6e1; font-size: .65rem; padding: 12px 17px; }
.admin-customer-stats { display: grid; gap: 12px; grid-template-columns: repeat(6,minmax(0,1fr)); margin-top: 36px; }
.admin-customer-stats article { background: linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018)); border: 1px solid var(--line); border-radius: 18px; padding: 19px; }
.admin-customer-stats small,.admin-customer-stats strong { display: block; }
.admin-customer-stats small { color: var(--muted-2); font-size: .5rem; line-height: 1.4; text-transform: uppercase; }
.admin-customer-stats strong { font-size: 1.45rem; margin-top: 18px; }
.customer-filter { align-items: end; display: grid; gap: 13px; grid-template-columns: minmax(260px,1.4fr) 180px 190px auto auto; margin-bottom: 28px; }
.customer-filter .field { margin: 0; }
.admin-customer-table { overflow-x: auto; }
.admin-customer-row { align-items: center; border-bottom: 1px solid var(--line); color: var(--muted); display: grid; font-size: .58rem; gap: 13px; grid-template-columns: minmax(230px,1.35fr) 90px 90px 55px 100px 85px 90px 15px; min-width: 930px; padding: 15px 8px; }
.admin-customer-row:not(.admin-customer-head):hover { background: rgba(255,255,255,.025); }
.admin-customer-head { color: var(--muted-2); font-size: .5rem; letter-spacing: .07em; padding-top: 0; text-transform: uppercase; }
.customer-identity { display: grid; gap: 3px; }
.customer-identity b { color: #eee8f0; font-size: .65rem; }
.customer-identity small { color: var(--muted); font-size: .55rem; }
.customer-identity em { color: var(--muted-2); font-size: .46rem; font-style: normal; }
.admin-customer-row > strong { color: #e8e0ea; font-size: .62rem; }
.admin-customer-row > i { color: var(--purple-light); font-style: normal; }
.admin-pagination { display: flex; gap: 6px; justify-content: center; margin-top: 25px; }
.admin-pagination a { align-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--muted); display: flex; font-size: .58rem; height: 34px; justify-content: center; width: 34px; }
.admin-pagination a:hover,.admin-pagination a.is-active { background: var(--purple); border-color: var(--purple); color: #fff; }
.customer-admin-hero { align-items: end; border-bottom: 1px solid var(--line); display: flex; gap: 35px; justify-content: space-between; padding-bottom: 30px; }
.customer-admin-hero h1 { font-size: clamp(3rem,6vw,5.5rem); line-height: .95; margin: 14px 0 12px; }
.customer-admin-hero p { font-size: .72rem; }
.customer-hero-state { align-items: flex-end; display: flex; flex-direction: column; gap: 10px; }
.customer-hero-state span { color: var(--muted-2); font-size: .55rem; }
.customer-view-as-form { display: flex; justify-content: flex-end; margin-top: 6px; width: 100%; }
.customer-view-as-form .button { box-shadow: 0 18px 40px rgba(124, 78, 255, .22); white-space: nowrap; }
.customer-restriction { background: rgba(255,85,116,.07); border: 1px solid rgba(255,85,116,.2); border-radius: 16px; margin-top: 18px; padding: 17px 19px; }
.customer-restriction b { color: #ff8ba0; font-size: .67rem; }
.customer-restriction p { color: #d7bec4; font-size: .62rem; margin: 6px 0; }
.customer-restriction small { color: var(--muted-2); font-size: .5rem; }
.customer-detail-stats { grid-template-columns: repeat(5,minmax(0,1fr)); }
.customer-stat-date { font-size: 1rem!important; }
.customer-record-nav { backdrop-filter: blur(16px); background: rgba(15,12,18,.88); border: 1px solid var(--line); border-radius: 999px; display: flex; gap: 4px; margin: 30px 0; overflow-x: auto; padding: 6px; position: sticky; scrollbar-width: none; top: 82px; z-index: 5; }
.customer-record-nav a { border-radius: 999px; color: var(--muted); flex: 0 0 auto; font-size: .58rem; padding: 10px 13px; }
.customer-record-nav a:hover { background: rgba(255,255,255,.07); color: #fff; }
.customer-control-grid { display: grid; gap: 16px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.customer-control-card,.customer-record-section { scroll-margin-top: 150px; }
.admin-helper { color: var(--muted-2); font-size: .58rem; line-height: 1.65; margin: -8px 0 18px; }
.security-state { align-items: center; border: 1px solid var(--line); border-radius: 13px; display: flex; justify-content: space-between; margin-bottom: 16px; padding: 13px; }
.security-state span { color: var(--muted-2); font-size: .55rem; }
.security-state b { font-size: .62rem; }
.compact-admin-form { border-top: 1px solid var(--line); padding-top: 16px; }
.security-actions { display: grid; gap: 8px; margin-top: 8px; }
.wallet-admin-balance { font-size: 1.4rem; }
.customer-record-section { margin-top: 16px; }
.record-table { overflow-x: auto; }
.record-row { align-items: center; border-bottom: 1px solid var(--line); color: var(--muted); display: grid; font-size: .56rem; gap: 13px; grid-template-columns: 140px 60px 90px 90px 120px 90px; min-width: 720px; padding: 14px 5px; }
.record-row:last-child { border-bottom: 0; }
a.record-row:hover { background: rgba(255,255,255,.025); }
.record-row b,.record-row strong { color: #eae3ec; font-size: .61rem; }
.record-head { color: var(--muted-2); font-size: .49rem; letter-spacing: .07em; padding-top: 0; text-transform: uppercase; }
.ticket-record-row { grid-template-columns: 130px minmax(220px,1fr) 90px 80px 100px 90px; min-width: 800px; }
.wallet-record-row { grid-template-columns: 130px 110px 90px 100px minmax(240px,1fr) 90px; min-width: 850px; }
.money-positive { color: var(--green)!important; }
.money-negative { color: #ff7892!important; }
.customer-bottom-grid { margin-top: 16px; }
.admin-notes { border-top: 1px solid var(--line); margin-top: 20px; padding-top: 5px; }
.admin-notes article { border-bottom: 1px solid var(--line); padding: 14px 0; }
.admin-notes article:last-child { border-bottom: 0; }
.admin-notes p { color: #dcd4df; font-size: .62rem; line-height: 1.65; margin: 0 0 7px; }
.admin-notes small,.admin-audit small { color: var(--muted-2); font-size: .49rem; }
.admin-audit article { display: flex; gap: 12px; padding: 0 0 18px; position: relative; }
.admin-audit article::after { background: var(--line-strong); bottom: 0; content: ""; left: 4px; position: absolute; top: 12px; width: 1px; }
.admin-audit article:last-child::after { display: none; }
.admin-audit i { background: var(--purple-light); border-radius: 50%; flex: 0 0 9px; height: 9px; margin-top: 3px; }
.admin-audit b { font-size: .62rem; }
.admin-audit p { color: var(--muted); font-size: .56rem; margin: 4px 0; }
.urgent-fulfillment-table { overflow-x: auto; }
.urgent-fulfillment-row { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 14px; grid-template-columns: 150px 190px minmax(180px,1fr) 160px 110px 130px 130px; min-width: 1100px; padding: 15px 6px; }
.urgent-fulfillment-row:last-child { border-bottom: 0; }
.urgent-fulfillment-row > span { display: grid; gap: 5px; }
.urgent-fulfillment-row b { color: #eae3ec; font-size: .6rem; }
.urgent-fulfillment-row small { color: var(--muted-2); font-size: .49rem; }
.urgent-fulfillment-row a { color: var(--purple-light); font-size: .49rem; }
.urgent-fulfillment-row i { color: #ff7892; font-size: .48rem; font-style: normal; }
.urgent-fulfillment-head { color: var(--muted-2); font-size: .5rem; letter-spacing: .07em; padding-top: 0; text-transform: uppercase; }
.admin-orders-table { overflow-x:auto; }
.admin-order-row { align-items:center; border-bottom:1px solid var(--line); color:var(--muted); display:grid; font-size:.56rem; gap:13px; grid-template-columns:42px 155px minmax(190px,1fr) 95px 115px minmax(285px,1.35fr) 130px 110px 95px; min-width:1420px; padding:15px 7px; }
.admin-order-row:not(.admin-order-head):hover { background:rgba(255,255,255,.025); }
.admin-order-row.is-stalled { background:rgba(255,85,116,.055); }
.admin-order-row span { display:grid; gap:4px; }
.admin-order-row b { color:#eae3ec; font-size:.6rem; }
.admin-order-row small { color:var(--muted-2); font-size:.48rem; }
.admin-order-row span>em { color:#ff7892; font-size:.47rem; font-style:normal; }
.order-url-matches { display:grid; gap:8px; margin-top:8px; }
.order-url-matches article { background:rgba(255,255,255,.045); border:1px solid var(--line); border-radius:14px; display:grid; gap:4px; padding:9px; }
.order-url-matches a { color:var(--accent-2); font-size:.5rem; overflow-wrap:anywhere; }
.order-url-matches .order-url-action { color:#fff; font-weight:800; text-transform:uppercase; }
.admin-order-head { color:var(--muted-2); font-size:.49rem; letter-spacing:.07em; padding-top:0; text-transform:uppercase; }
.admin-order-actions { align-items:center; display:flex!important; flex-direction:row; gap:7px!important; }
.admin-order-actions a,.admin-order-actions button { background:rgba(255,255,255,.055); border:1px solid var(--line); border-radius:999px; color:#eadff0; cursor:pointer; font:inherit; font-size:.55rem; padding:8px 10px; text-decoration:none; }
.admin-order-actions button { background:rgba(255,74,132,.12); border-color:rgba(255,74,132,.28); color:#ffd2df; }
.admin-order-actions a:hover,.admin-order-actions button:hover { background:rgba(255,255,255,.1); color:#fff; }
.admin-email-modal[hidden] { display:none; }
body.has-modal-open { overflow:hidden; }
.admin-email-modal { align-items:center; bottom:0; display:flex; justify-content:center; left:0; padding:24px; position:fixed; right:0; top:0; z-index:250; }
.admin-email-modal-backdrop { background:rgba(4,3,7,.76); backdrop-filter:blur(12px); bottom:0; left:0; position:absolute; right:0; top:0; }
.admin-email-dialog { background:linear-gradient(145deg,rgba(24,18,30,.98),rgba(12,10,16,.98)); border:1px solid var(--line-strong); border-radius:26px; box-shadow:0 30px 90px rgba(0,0,0,.5); max-width:620px; padding:24px; position:relative; width:min(620px,100%); }
.admin-email-head { align-items:flex-start; border-bottom:1px solid var(--line); display:flex; gap:20px; justify-content:space-between; margin-bottom:20px; padding-bottom:18px; }
.admin-email-head h2 { font-size:1.8rem; margin:5px 0 6px; }
.admin-email-head p { color:var(--muted); font-size:.72rem; margin:0; }
.admin-email-head button { background:rgba(255,255,255,.06); border:1px solid var(--line); border-radius:50%; color:#fff; cursor:pointer; flex:0 0 38px; font-size:1.45rem; height:38px; line-height:1; }
.admin-email-actions { align-items:center; display:flex; gap:10px; justify-content:flex-end; }
.order-admin-items { display:grid; gap:16px; margin-top:25px; }
.order-admin-item-head { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; }
.order-admin-item-head h2 { font-size:1.65rem; margin:7px 0; }
.order-admin-item-head a { color:var(--purple-light); font-size:.53rem; }
.order-admin-metrics { display:grid; gap:10px; grid-template-columns:repeat(4,1fr); margin:20px 0; }
.order-admin-metrics span { background:rgba(255,255,255,.025); border:1px solid var(--line); border-radius:12px; padding:12px; }
.order-admin-metrics small,.order-admin-metrics b { display:block; }
.order-admin-metrics small { color:var(--muted-2); font-size:.47rem; }
.order-admin-metrics b { font-size:.67rem; margin-top:6px; }
.manual-api-grid { display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); margin:18px 0; }
.manual-api-card { background:rgba(255,255,255,.035); border:1px solid var(--line); border-radius:16px; padding:16px; }
.manual-api-card .field { margin-top:12px; }
.manual-api-card .admin-helper { margin-bottom:0; }
.manual-api-check { margin-bottom:12px; }
.manual-api-service { display:grid; gap:6px; }
.manual-api-service b { color:var(--text); font-size:.95rem; }
.manual-api-service small { color:var(--muted-2); font-size:.72rem; }
.manual-api-service a { color:var(--purple-light); font-size:.7rem; overflow-wrap:anywhere; }
.order-resubmit-form,.order-target-admin-form,.cancellation-resolution-form { align-items:end; display:grid; gap:12px; grid-template-columns:180px minmax(240px,1fr) auto; }
.order-target-admin-form{background:rgba(127,245,181,.045);border:1px solid rgba(127,245,181,.16);border-radius:16px;margin:16px 0;padding:14px}
.order-resubmit-form .field,.order-target-admin-form .field,.cancellation-resolution-form .field { margin:0; }
.comment-variant-box { background:rgba(255,255,255,.035); border:1px solid var(--line); border-radius:18px; display:grid; gap:10px; margin:18px 0; padding:16px; }
.comment-variant-box label { color:#fff; font-weight:800; }
.comment-variant-box small { color:var(--muted-2); font-size:.62rem; line-height:1.7; }
.comment-variant-box textarea { min-height:120px; resize:vertical; }
.comment-variant-box textarea:not(.is-required) { display:none; }
.comment-variant-box-small { margin:10px 0; padding:12px; }
.fulfillment-history-row { grid-template-columns:130px 90px 130px 80px 110px 120px 100px; min-width:820px; }
.fulfillment-history-row>span { display:grid; gap:3px; }
.cancellation-admin-list { display:grid; gap:16px; }
.cancellation-card-head { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; }
.cancellation-card-head h2 { font-size:1.55rem; margin:7px 0; }
.cancellation-card-head p { font-size:.55rem; }
.cancellation-card-head a { color:var(--purple-light); }
.cancellation-request-grid { display:grid; gap:13px; grid-template-columns:repeat(2,1fr); }
.cancellation-request-grid>article { background:rgba(255,255,255,.025); border:1px solid var(--line); border-radius:16px; padding:16px; }
.cancellation-request-grid>article>div { display:grid; gap:4px; margin-bottom:13px; }
.cancellation-request-grid b { font-size:.66rem; }
.cancellation-request-grid small { color:var(--muted-2); font-size:.5rem; }
.cancellation-request-history { border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; padding-top:15px; }
.cancellation-request-history span { background:rgba(255,255,255,.025); border-radius:10px; display:grid; gap:4px; padding:10px; }
.cancellation-request-history b { font-size:.55rem; }.cancellation-request-history small { color:var(--muted); font-size:.48rem; }
.status-refund_approved,.status-partially_refunded { background:rgba(127,245,181,.08); border-color:rgba(127,245,181,.22); color:var(--green); }
.operations-summary-grid { display:grid; gap:14px; grid-template-columns:repeat(4,minmax(0,1fr)); margin:20px 0; }
.operations-summary-grid article { display:grid; gap:6px; min-height:112px; }
.operations-summary-grid strong { color:var(--text); font-size:1.75rem; letter-spacing:-.04em; }
.operations-summary-grid small { color:var(--muted); font-size:.78rem; }
.operations-list { max-height:none; overflow:visible; }
.operations-card { align-items:flex-start; background:rgba(255,255,255,.035); border:1px solid var(--line); border-radius:18px; display:grid; gap:16px; grid-template-columns:minmax(0,1fr); padding:16px; }
.operations-card b,.operations-card small { display:block; }
.operations-card>div>b { color:var(--text); font-size:.98rem; }
.operations-card>div>small { color:var(--muted); font-size:.78rem; margin-top:4px; }
.operations-card p { color:var(--muted); font-size:.9rem; line-height:1.6; margin:10px 0 0; }
.operations-metrics { display:grid; gap:8px; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:14px; }
.operations-metrics span { background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06); border-radius:12px; padding:10px; }
.operations-metrics small { color:var(--muted-2); font-size:.68rem; }
.operations-metrics b { color:var(--text); font-size:.82rem; margin-top:5px; word-break:break-word; }
.operations-action-form { background:rgba(255,255,255,.025); border:1px dashed rgba(255,255,255,.12); border-radius:16px; padding:12px; }

@media (max-width: 940px) {
    .supplier-config-grid { grid-template-columns: 1fr; }
    .admin-supplier-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .supplier-action-grid { grid-template-columns: 1fr; }
    .catalog-filter,.supplier-filter-form,.supplier-catalog-admin-filter,.supplier-route-filter,.supplier-log-filter { grid-template-columns: 1fr 1fr; }
    .catalog-filter .button,.supplier-filter-form .button { width: fit-content; }
    .admin-customer-stats { grid-template-columns: repeat(3,1fr); }
    .customer-filter { grid-template-columns: 1fr 1fr; }
    .customer-control-grid { grid-template-columns: 1fr; }
    .order-resubmit-form,.order-target-admin-form,.cancellation-resolution-form { grid-template-columns:1fr; }
    .order-admin-metrics,.operations-summary-grid,.operations-metrics { grid-template-columns:1fr 1fr; }
    .pricing-admin-row { grid-template-columns: 1fr; }
    .pricing-admin-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .comment-variant-admin-row { grid-template-columns:1fr 1fr; }
    .admin-pricing-source-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .admin-pricing-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .admin-pricing-filters .wide { grid-column: span 2; }
}

@media (max-width: 560px) {
    .admin-nav { border-radius: 16px; flex-wrap: wrap; width: 100%; }
    .admin-nav a { flex: 1 1 40%; text-align: center; }
    .admin-top-alert { grid-template-columns: 1fr; }
    .admin-customer-stats,.customer-detail-stats { grid-template-columns: 1fr 1fr; }
    .operations-summary-grid,.operations-metrics { grid-template-columns:1fr; }
    .customer-filter { grid-template-columns: 1fr; }
    .customer-admin-hero { align-items: flex-start; flex-direction: column; }
    .customer-hero-state { align-items: flex-start; }
    .customer-view-as-form { justify-content: flex-start; }
    .cancellation-request-grid { grid-template-columns:1fr; }
    .dripfeed-options,.delivery-speed-options { grid-template-columns:1fr; }
    .pricing-admin-form { grid-template-columns:1fr; }
    .comment-variant-admin-row { grid-template-columns:1fr; }
    .admin-supplier-summary,.supplier-refill-policy,.catalog-filter,.supplier-filter-form,.supplier-catalog-admin-filter,.supplier-route-filter,.supplier-log-filter,.supplier-card-metrics,.admin-pricing-source-grid,.admin-pricing-filters { grid-template-columns:1fr; }
    .admin-pricing-filters .wide { grid-column: span 1; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
/* Customer portal suite */
.portal-nav{display:flex;gap:8px;overflow-x:auto;margin:20px 0 34px;padding:8px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(12,10,16,.72);scrollbar-width:none}
.portal-nav a{white-space:nowrap;padding:11px 15px;border-radius:12px;color:#c9c1d0;font-size:14px;font-weight:700;text-decoration:none}
.portal-nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.portal-grid{display:grid;gap:20px}.portal-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-span-2{grid-column:1/-1}
.portal-inline{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.portal-inline .field{min-width:180px;flex:1}.portal-inline>input,.portal-inline>select{min-height:46px;flex:1;min-width:160px}
.portal-filter{margin-bottom:20px}.portal-order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.portal-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.portal-card-head h2{margin:5px 0 0;font-size:20px}
.portal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.portal-metrics span{padding:12px;background:rgba(255,255,255,.035);border-radius:12px}.portal-metrics small,.portal-metrics b{display:block}.portal-metrics small{color:#90869a;font-size:11px}.portal-metrics b{margin-top:5px}
.portal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.portal-actions a,.portal-actions form{font-size:13px;font-weight:700}.portal-actions a,.portal-link-button{color:#f6abc4;text-decoration:none}.portal-actions form{margin:0}.portal-link-button{appearance:none;background:none;border:0;padding:0}
.portal-link-button{cursor:pointer;font:inherit;font-weight:800}.portal-link-button.is-copied,.portal-copy-button.is-copied{color:var(--green)!important}
.order-card-actions{
    align-items: stretch;
    display: grid;
    gap: 12px;
    margin-top: 20px;
}
.order-card-actions-primary,
.order-card-actions-utility{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}
.order-card-actions-primary{
    padding-bottom: 11px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.order-card-action-form{
    display: inline-flex;
    margin: 0;
}
.order-action-button{
    align-items: center;
    appearance: none;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: .84rem;
    font-weight: 850;
    justify-content: center;
    line-height: 1.2;
    min-height: 40px;
    padding: 10px 14px;
    text-decoration: none;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
    white-space: nowrap;
}
.order-action-button:hover,
.order-action-button:focus{
    transform: translateY(-1px);
}
.order-action-primary,
.order-action-pay{
    background: linear-gradient(135deg, rgba(255,74,132,.95), rgba(139,92,246,.90));
    border-color: rgba(255,255,255,.18);
    box-shadow: 0 12px 34px rgba(255,74,132,.18);
    color: #fff !important;
}
.order-action-secondary{
    background: rgba(255,255,255,.075);
    border-color: rgba(255,255,255,.15);
    color: #fff !important;
}
.order-action-ghost,
.order-action-muted{
    background: rgba(255,255,255,.045);
    color: #f6abc4 !important;
}
.order-action-muted{
    color: #bcb2c5 !important;
}
.order-action-ghost:hover,
.order-action-muted:hover,
.order-action-secondary:hover{
    background: rgba(255,74,132,.12);
    border-color: rgba(255,74,132,.28);
    color: #fff !important;
}
html[data-theme="light"] .order-card-actions-primary{
    border-bottom-color: rgba(63,35,50,.12);
}
html[data-theme="light"] .order-action-secondary{
    background: rgba(63,35,50,.06);
    border-color: rgba(63,35,50,.14);
    color: #20151d !important;
}
html[data-theme="light"] .order-action-ghost,
html[data-theme="light"] .order-action-muted{
    background: rgba(63,35,50,.045);
    border-color: rgba(63,35,50,.12);
    color: #8b164a !important;
}
html[data-theme="light"] .order-action-muted{
    color: #5f5360 !important;
}
html[data-theme="light"] .order-action-ghost:hover,
html[data-theme="light"] .order-action-muted:hover,
html[data-theme="light"] .order-action-secondary:hover{
    background: rgba(217,47,124,.10);
    border-color: rgba(217,47,124,.24);
    color: #20151d !important;
}
@media(max-width:560px){
    .order-card-actions-primary,
    .order-card-actions-utility{
        align-items: stretch;
        display: grid;
        grid-template-columns: 1fr;
    }
    .order-card-action-form,
    .order-action-button{
        width: 100%;
    }
}
.responsive-table{overflow:auto;width:100%;margin-top:16px}.portal-table{border-collapse:collapse;min-width:760px;width:100%}.portal-table th,.portal-table td{border-bottom:1px solid rgba(255,255,255,.08);padding:12px 14px;text-align:left;vertical-align:top}.portal-table th{color:#f6abc4;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.portal-table td{color:var(--text);font-size:.9rem}.compact-check{align-items:center;display:inline-flex;gap:8px;min-height:46px;padding:0 8px;color:var(--text);font-weight:800}.compact-check input{flex:0 0 auto}
.admin-permission-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.admin-permission-grid .portal-check{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}.admin-permission-grid b{color:var(--text);display:block;font-size:.88rem}.admin-permission-grid small{color:var(--muted);display:block;font-size:.74rem;line-height:1.45;margin-top:3px}.staff-admin-list{display:grid;gap:18px}.staff-admin-card .dashboard-form{margin-top:16px}.staff-role-form{display:block;width:100%}.staff-workload-strip{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.staff-workload-strip span{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:13px;color:var(--text);font-size:1rem;font-weight:900;min-width:76px;padding:10px;text-align:center}.staff-workload-strip small{color:var(--muted);display:block;font-size:.68rem;font-weight:800;text-transform:uppercase}.danger{color:#ff6f9d!important}
.portal-copy-button{appearance:none;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#ffd4e3;cursor:pointer;font-size:.78rem;font-weight:850;margin-top:12px;padding:9px 13px}.portal-copy-button:hover{background:rgba(255,74,132,.12);border-color:rgba(255,74,132,.32)}
.order-history-tabs{display:flex;gap:8px;margin:0 0 20px;overflow-x:auto}.order-history-tabs a{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.84rem;font-weight:850;padding:10px 14px;text-decoration:none}.order-history-tabs a:hover,.order-history-tabs a.is-active{background:linear-gradient(135deg,rgba(255,74,132,.16),rgba(105,79,255,.1));border-color:rgba(255,74,132,.34);color:#fff}
.portal-chip-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.portal-chip-list span{border-left:3px solid var(--chip);padding:8px 12px;border-radius:8px;background:rgba(255,255,255,.04)}
.portal-list{display:grid;gap:8px;margin-top:16px;max-height:340px;overflow:auto}.portal-list>div,.portal-list>a{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;background:rgba(255,255,255,.035);color:#fff;text-decoration:none}.portal-list form{margin:0}.portal-list b,.portal-list small{display:block}.portal-list small{color:#988fa1;margin-top:4px}
.recovery-code-box{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:16px;margin:14px 0;padding:16px}.recovery-code-box strong{display:block;margin-bottom:10px}.recovery-code-box code{display:block;white-space:pre-wrap;line-height:1.8;font-size:1rem;color:#fff;letter-spacing:.04em}.nested-panel{background:rgba(255,255,255,.035);box-shadow:none}
.session-management{display:grid;gap:22px}.session-group{display:grid;gap:12px}.session-group h3{font-size:1.05rem;margin:0}.session-card-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.session-card,.session-empty{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:18px;display:grid;gap:16px;padding:16px}.session-card-current{background:linear-gradient(135deg,rgba(255,74,132,.09),rgba(105,79,255,.06));border-color:rgba(255,74,132,.24)}.session-card-main b,.session-empty b{color:#fff;display:block;font-size:1rem}.session-card-main small,.session-empty small{color:var(--muted);display:block;line-height:1.6;margin-top:5px}.session-meta{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.session-meta div{background:rgba(0,0,0,.14);border-radius:12px;padding:10px}.session-meta dt{color:var(--muted-2);font-size:.7rem;font-weight:800;margin:0 0 4px;text-transform:uppercase}.session-meta dd{color:#f1e8f7;font-size:.82rem;margin:0;overflow-wrap:anywhere}.session-card form{justify-self:start}
.portal-service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;max-height:470px;overflow:auto}.portal-service-list>div{display:flex;justify-content:space-between;padding:10px 12px;background:rgba(255,255,255,.035);border-radius:10px}.portal-service-list form{margin:0}.portal-service-list a{color:#ddd4e2;text-decoration:none}.portal-service-list .is-favorite{color:#ffbf4b}
.portal-check{align-items:flex-start;display:inline-flex;gap:10px;justify-content:flex-start;margin:10px 0;color:#cfc7d5;font-size:14px;line-height:1.55;max-width:100%;width:auto}.portal-check input[type="checkbox"],.portal-check input[type="radio"]{flex:0 0 auto;margin-top:.22em}.portal-check span{flex:0 1 auto;text-align:left}.portal-check-grid{display:grid;gap:8px 18px;grid-template-columns:repeat(2,minmax(0,1fr));margin:4px 0 12px}.portal-check-grid .portal-check{margin:0}
.security-method-card{align-items:center;background:linear-gradient(135deg,rgba(255,74,132,.08),rgba(105,79,255,.06));border:1px solid rgba(255,255,255,.1);border-radius:16px;display:flex;justify-content:space-between;gap:14px;margin:14px 0;padding:15px}.security-method-card b{color:#fff;display:block}.security-method-card small{color:var(--muted);display:block;line-height:1.55;margin-top:4px}.security-method-card.is-enabled{border-color:rgba(46,213,115,.28);box-shadow:0 18px 50px rgba(46,213,115,.07)}
.authenticator-setup-box{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:18px;display:grid;gap:13px;margin-top:18px;padding:18px}.authenticator-setup-box h3{margin:0}.authenticator-setup-box p{color:var(--muted);line-height:1.65;margin:0}.totp-secret-code{background:#08060b;border:1px dashed rgba(255,255,255,.2);border-radius:14px;color:#fff;display:block;font-size:1.08rem;font-weight:850;letter-spacing:.08em;line-height:1.8;padding:14px;white-space:normal;word-break:break-word}.passkey-message{color:var(--muted);font-size:.92rem;font-weight:700;margin:8px 0 0}.passkey-message.is-success{color:var(--green)}.passkey-message.is-error{color:var(--danger)}.oauth-passkey{appearance:none;border:1px solid rgba(255,255,255,.12);cursor:pointer;font:inherit;width:100%}.passkey-login-panel{margin-top:14px}
.profile-email-list{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 10px}.profile-email-list span{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.06);color:#d8d1df;font-size:13px}
.account-state-actions{margin-top:16px;padding:14px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.account-state-actions b{display:block;color:#fff;margin-bottom:4px}.account-state-actions p{margin:0 0 10px;color:#bdb4c8}.account-state-actions div{display:flex;flex-wrap:wrap;gap:7px}.account-state-actions span{padding:6px 9px;border-radius:999px;background:rgba(255,74,132,.12);color:#ffd6e3;font-size:12px;text-transform:capitalize}
.portal-compact-form{display:inline-block;margin:5px}.portal-copy{padding:15px;border:1px dashed rgba(255,255,255,.2);border-radius:12px;word-break:break-all;color:#f5b0ca;background:#130f18}.portal-tier-list{display:grid;gap:10px}.portal-tier-list span{padding:13px;border-radius:12px;background:linear-gradient(90deg,rgba(255,74,132,.1),rgba(105,79,255,.06))}
.portal-callout{margin-bottom:20px;background:linear-gradient(135deg,rgba(255,57,122,.13),rgba(87,57,255,.1))}
.portal-search{display:flex;gap:10px;margin-bottom:22px}.portal-search input{flex:1}.portal-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.portal-help-grid details{margin-top:16px}.portal-help-grid summary{cursor:pointer;color:#f4a9c4;font-weight:700}
.order-detail-card-list{display:grid;gap:16px}.order-detail-items .order-detail-card{align-items:start;background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:18px;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:17px}.order-detail-card-main{min-width:0}.order-detail-card-main span{color:var(--muted-2);display:block;font-size:.78rem;margin-top:7px}.order-delivery-grid{display:grid;gap:8px;grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr))}.order-delivery-grid span{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:13px;display:block;margin:0!important;padding:12px}.order-delivery-grid small,.order-delivery-grid b{display:block}.order-delivery-grid small{color:var(--muted-2);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.order-delivery-grid b{color:var(--text);font-size:.98rem;margin-top:6px}.order-delivery-progress{display:grid;gap:8px;grid-column:1/-1}.order-delivery-progress small{color:var(--muted);font-size:.78rem}.order-delivery-estimate{background:linear-gradient(135deg,rgba(255,74,132,.08),rgba(105,79,255,.06));border:1px solid rgba(255,255,255,.09);border-radius:15px;display:grid;gap:5px;grid-column:1/-1;padding:13px}.order-delivery-estimate b{color:var(--text);font-size:.88rem}.order-delivery-estimate span{color:var(--muted);font-size:.8rem}.order-status-card>p{color:var(--muted);font-size:.84rem;margin:-8px 0 16px}.order-status-card .tracking-bar{margin:14px 0}
.order-retry-box{background:linear-gradient(135deg,rgba(255,196,71,.1),rgba(255,74,132,.08));border:1px solid rgba(255,196,71,.22);border-radius:16px;display:grid;gap:10px;padding:15px}.order-retry-box b{color:var(--text);font-size:.94rem}.order-retry-box p{color:var(--muted);font-size:.82rem;line-height:1.55;margin:0}.order-retry-box .portal-inline{margin-top:2px}
.order-item-tools{grid-column:1/-1;display:grid;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}.order-item-tools .portal-inline{align-items:center}.order-item-tools input,.order-item-tools select{min-height:40px}
.order-issue-help{background:linear-gradient(135deg,rgba(255,196,71,.08),rgba(134,89,255,.07));border:1px solid rgba(255,255,255,.1);border-radius:16px;display:grid;gap:10px;grid-column:1/-1;margin-top:6px;padding:15px}.order-issue-help>b{color:var(--text);font-size:.96rem}.order-issue-help p{color:var(--muted);font-size:.84rem;line-height:1.55;margin:0}.order-issue-buttons{display:flex;flex-wrap:wrap;gap:8px}.order-issue-buttons form{margin:0}.order-issue-help details{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:10px 12px}.order-issue-help summary{color:var(--text);cursor:pointer;font-size:.86rem;font-weight:800}.order-issue-help details .portal-inline{margin-top:10px}.order-issue-help small{color:var(--muted);font-size:.76rem;line-height:1.45}
.invoice-sheet{max-width:920px;margin:auto;padding:48px;border-radius:24px;background:#fff;color:#17131b}.invoice-sheet .eyebrow{color:#b21c55}.invoice-head,.invoice-parties{display:flex;justify-content:space-between;gap:30px}.invoice-head h1{color:#17131b}.invoice-head small,.invoice-parties small,.invoice-parties span{display:block;color:#706878}.invoice-parties{margin:40px 0}.invoice-sheet table{width:100%;border-collapse:collapse}.invoice-sheet th,.invoice-sheet td{padding:16px;border-bottom:1px solid #e9e5eb;text-align:left}.invoice-sheet td small{display:block;color:#807785}.invoice-total{margin:25px 0 25px auto;max-width:340px;display:grid;gap:9px}.invoice-total span,.invoice-total strong{display:flex;justify-content:space-between}.invoice-total strong{font-size:20px;padding-top:12px;border-top:2px solid #221a26}
.public-invoice-page .reference-box{margin:0 0 20px;max-width:none;text-align:left}
.public-invoice-page .reference-box strong{color:#17131b;font-size:.98rem;letter-spacing:0;line-height:1.55;overflow-wrap:anywhere;word-break:break-word}
.public-invoice-page .portal-actions{justify-content:flex-start}
.tracking-bar{height:9px;background:rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.tracking-bar i{display:block;height:100%;background:linear-gradient(90deg,#ff3979,#8659ff);border-radius:inherit}
.saved-target-picker{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:16px;display:grid;gap:10px;margin:12px 0 18px;padding:13px}.saved-target-picker>b{color:var(--text);font-size:.82rem}.saved-target-picker>div{display:flex;flex-wrap:wrap;gap:8px}.saved-target-chip{appearance:none;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#efe8f4;cursor:pointer;display:inline-flex;gap:8px;align-items:center;padding:8px 11px;text-align:left}.saved-target-chip:hover{border-color:rgba(255,57,121,.36);background:rgba(255,57,121,.09)}.saved-target-chip span{font-size:.78rem;font-weight:800}.saved-target-chip small{color:var(--muted);font-size:.68rem}.package-recommendation-card{background:linear-gradient(135deg,rgba(255,57,121,.11),rgba(134,89,255,.08));border:1px solid rgba(255,255,255,.12);border-radius:16px;display:grid;gap:6px;margin:-4px 0 18px;padding:14px}.package-recommendation-card span{color:var(--purple-light);font-size:.64rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.package-recommendation-card b{color:var(--text);font-size:.95rem}.package-recommendation-card small{color:var(--muted);font-size:.76rem;line-height:1.45}.package-recommendation-card .portal-link-button{justify-self:start;margin-top:4px}.package-recommendation-card-small{margin:4px 0 12px}.bulk-url-form textarea{min-height:190px}
.ticket-rating{margin-top:22px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}
.button-danger{background:#451725!important;color:#ffc0d2!important;border-color:#7b2942!important}
@media(max-width:850px){.portal-grid-2,.portal-grid-3,.portal-order-grid,.portal-help-grid{grid-template-columns:1fr}.portal-span-2{grid-column:auto}.portal-service-list,.session-card-grid,.session-meta,.order-delivery-grid,.portal-check-grid,.admin-permission-grid{grid-template-columns:1fr}.invoice-sheet{padding:25px}.invoice-head,.invoice-parties{display:grid}.portal-nav{margin-left:-4px;margin-right:-4px}.order-detail-items .order-detail-card{grid-template-columns:1fr}.order-item-progress{align-items:flex-start}.staff-workload-strip{justify-content:flex-start}}
@media(max-width:850px){.quick-order-grid,.spend-metric-grid{grid-template-columns:1fr}.mini-chart-row{grid-template-columns:68px 1fr 78px}.recently-purchased-list>div{align-items:flex-start;display:grid}.recently-purchased-list small{text-align:left}}
@media print{header,footer,.portal-nav,.dashboard-back,.portal-actions{display:none!important}.dashboard-page{padding:0!important;background:#fff}.invoice-sheet{box-shadow:none;max-width:none}}

/* Readability pass: keep the cinematic look, but stop real UI text from becoming micro-text. */
body { font-size: 16px; }
.eyebrow,
.menu-row > a,
.main-nav > a,
.nav-dropdown > a,
.platform-menu-trigger,
.account-link,
.cart-link,
.language-switcher select,
.text-link,
.button,
label,
.field label,
.form-error,
.summary-label,
.summary-service small,
.summary-service b,
.summary-quantity small,
.summary-quantity span,
.summary-meta small,
.summary-total span,
.order-summary > a,
.order-summary-note,
.order-addon-toggle small,
.order-addon-toggle b,
.order-addon-fields select,
.order-addon-fields input,
.dripfeed-toggle b,
.dripfeed-options small,
.auth-links,
.dashboard-topbar p,
.dashboard-balance small,
.dashboard-balance a,
.dashboard-alert b,
.dashboard-alert span,
.dashboard-nav a,
.dashboard-stat-grid small,
.dashboard-table > a,
.dashboard-empty p,
.dashboard-empty a,
.wallet-list b,
.ticket-list b,
.notification-list b,
.wallet-list small,
.ticket-list small,
.notification-list > a > small,
.wallet-list strong,
.ticket-list p,
.wallet-list > p,
.dashboard-back a,
.dashboard-order-hero p,
.order-detail-items small,
.order-detail-items b,
.order-detail-items a,
.order-timeline b,
.order-timeline p,
.order-timeline small,
.chat-message b,
.chat-message small,
.chat-message p,
.cart-item-main small,
.cart-item-actions a,
.cart-item-actions button,
.totals-card > div,
.checkout-card-heading p,
.payment-option b,
.payment-option small,
.checkout-items small,
.checkout-items b,
.checkout-items strong,
.reference-box small,
.success-meta small,
.success-meta b,
.footer-brand p,
.footer-grid h3,
.footer-grid > div > a:not(.brand),
.footer-grid > div > p,
.footer-bottom,
.admin-nav a,
.supplier-toggle,
.supplier-route-count,
.supplier-local-service small,
.supplier-local-service b,
.supplier-route-row select,
.supplier-service-picker > input[type="text"],
.supplier-service-picker > small,
.supplier-catalog-row small,
.supplier-catalog-row b,
.supplier-catalog-row strong,
.customer-total,
.admin-customer-stats small,
.customer-identity b,
.customer-identity small,
.admin-customer-row > strong,
.admin-helper,
.status-pill,
.record-row,
.portal-list,
.portal-list small,
.portal-list b,
.url-format-help {
    font-size: max(var(--readable-size, .875rem), .875rem);
    line-height: 1.55;
}

.eyebrow,
.summary-label,
.dashboard-stat-grid small,
.admin-customer-stats small,
.record-head,
.footer-grid h3 {
    --readable-size: .8rem;
}

.status-pill {
    --readable-size: .78rem;
    padding: 7px 11px;
}

.url-format-help,
.admin-helper,
.privacy-note small,
.processor-note,
.portal-check {
    color: #bdb4c4;
    font-size: .92rem;
    line-height: 1.65;
}

.form-error {
    color: var(--danger);
    font-size: .92rem;
    font-weight: 750;
    line-height: 1.55;
}

.form-error.is-success {
    color: var(--green);
}

.form-live-region {
    color: var(--danger);
    font-weight: 750;
}

.url-format-help {
    margin: 9px 0 0;
}

.order-public-url-warning {
    align-items: flex-start;
    background: rgba(255, 204, 102, .09);
    border: 1px solid rgba(255, 204, 102, .28);
    border-radius: 14px;
    color: #ffe0a3;
    display: flex;
    font-size: .92rem;
    font-weight: 700;
    gap: 10px;
    line-height: 1.6;
    margin: 10px 0 0;
    padding: 10px 13px;
}

.order-public-url-warning::before {
    content: "!";
    align-items: center;
    background: rgba(255, 204, 102, .18);
    border: 1px solid rgba(255, 204, 102, .32);
    border-radius: 999px;
    color: #ffd166;
    display: inline-flex;
    flex: 0 0 22px;
    font-size: .78rem;
    font-weight: 900;
    height: 22px;
    justify-content: center;
    margin-top: 2px;
}

.order-public-url-warning-small {
    display: flex;
}

.order-page-admin-notice {
    background: rgba(124, 78, 255, .08);
    border: 1px solid rgba(167, 139, 250, .22);
    border-radius: 13px;
    color: #ded6ff;
    display: block;
    font-size: .92rem;
    line-height: 1.6;
    margin: 9px 0 0;
    padding: 9px 12px;
}

.order-page-admin-notice b {
    color: #c8b6ff;
}

.order-page-admin-notice-small {
    display: block;
}

.service-condition-notice {
    align-items: flex-start;
    background: rgba(34, 211, 238, .08);
    border: 1px solid rgba(34, 211, 238, .24);
    border-radius: 14px;
    color: #bff7ff;
    display: flex;
    font-size: .92rem;
    font-weight: 650;
    gap: 8px;
    line-height: 1.6;
    margin: 10px 0 0;
    padding: 10px 13px;
}

.service-condition-notice b {
    color: #67e8f9;
    flex: 0 0 auto;
}

.service-condition-notice-small {
    display: flex;
}

.video-duration-panel {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(98,244,255,.24);
    border-radius: 15px;
    color: #dffcff;
    display: grid;
    gap: 7px;
    margin: 10px 0 0;
    padding: 12px 14px;
}

.video-duration-panel[hidden] {
    display: none;
}

.video-duration-panel b {
    color: #67e8f9;
    font-size: .9rem;
}

.video-duration-panel span {
    color: #fff;
    font-size: 1.05rem;
    font-weight: 900;
}

.video-duration-panel p,
.video-duration-panel small {
    color: #b8adca;
    line-height: 1.55;
    margin: 0;
}

.video-duration-panel.is-ok {
    border-color: rgba(52, 211, 153, .32);
}

.video-duration-panel.is-ok b {
    color: #34d399;
}

.video-duration-panel.is-error {
    border-color: rgba(255, 95, 118, .42);
    background: rgba(255, 95, 118, .08);
}

.video-duration-panel.is-error b {
    color: #ff9aaa;
}

.video-duration-suggestions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.video-duration-suggestions small {
    flex-basis: 100%;
}

.video-duration-panel-small {
    font-size: .9rem;
    padding: 10px 12px;
}

input.has-url-error {
    border-color: rgba(255, 95, 118, .82) !important;
    box-shadow: 0 0 0 3px rgba(255, 95, 118, .14), 0 0 22px rgba(255, 95, 118, .12);
}

.url-format-help.is-error {
    color: #ff9aaa;
}

.url-format-help.is-warning {
    color: #ffd48a;
}

.url-format-help.is-checking {
    color: var(--service-accent, #62f4ff);
}

.url-example-card {
    background: rgba(255,255,255,.035);
    border: 1px solid var(--line);
    border-radius: 15px;
    display: grid;
    gap: 7px;
    margin: 12px 0 4px;
    padding: 13px 15px;
}

.url-example-card b {
    color: #fff;
    font-size: .9rem;
}

.url-example-card code {
    background: rgba(0,0,0,.22);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 9px;
    color: #f1e8f7;
    display: block;
    font-size: .86rem;
    overflow-wrap: anywhere;
    padding: 8px 10px;
}

.url-example-card-small {
    margin-top: 9px;
    padding: 11px;
}

.order-progress-map {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(5, 1fr);
    margin-bottom: 22px;
}

.order-progress-map span {
    align-items: center;
    background: rgba(255,255,255,.035);
    border: 1px solid var(--line);
    border-radius: 16px;
    display: flex;
    gap: 10px;
    padding: 12px;
}

.order-progress-map i {
    align-items: center;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
    color: var(--muted);
    display: flex;
    flex: 0 0 28px;
    font-style: normal;
    font-weight: 800;
    height: 28px;
    justify-content: center;
}

.order-progress-map b {
    color: var(--muted);
    font-size: .9rem;
}

.order-progress-map span.is-done {
    border-color: rgba(127,245,181,.35);
}

.order-progress-map span.is-done i {
    background: var(--green);
    color: #101218;
}

.order-progress-map span.is-current {
    box-shadow: 0 0 28px rgba(255,49,95,.14);
    border-color: rgba(255,49,95,.42);
}

.order-progress-map span.is-current b {
    color: #fff;
}

@media (max-width: 760px) {
    .order-progress-map { grid-template-columns: 1fr; }
}

/* Accessibility and authentication UX */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

.sr-only {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid #ffd166;
    outline-offset: 3px;
}

.password-toggle:focus-visible {
    outline: 3px solid #ffd166;
    outline-offset: 3px;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    border-color: #ffd166;
    box-shadow: 0 0 0 4px rgba(255, 209, 102, .18);
}

.flash:focus {
    outline: 3px solid #ffd166;
    outline-offset: 4px;
}

.field-has-error label,
.field-has-error .form-hint {
    color: #ffdce5;
}

.draft-restored::before {
    animation: draft-restored-toast 5s ease forwards;
    background: rgba(12, 18, 16, .94);
    border: 1px solid rgba(127, 245, 181, .32);
    border-radius: 999px;
    bottom: 18px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .28);
    color: var(--green);
    content: "Draft restored";
    display: inline-flex;
    font-size: .78rem;
    font-weight: 800;
    left: auto;
    margin: 0;
    max-width: calc(100vw - 32px);
    padding: 8px 12px;
    pointer-events: none;
    position: fixed;
    right: 18px;
    top: auto;
    white-space: nowrap;
    width: auto;
    z-index: 650;
}

@keyframes draft-restored-toast {
    0% { opacity: 0; transform: translateY(10px); }
    12%, 72% { opacity: 1; transform: translateY(0); }
    100% { opacity: 0; transform: translateY(10px); visibility: hidden; }
}

.session-warning-modal {
    align-items: center;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    padding: 24px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 500;
}

.session-warning-backdrop {
    background: rgba(4, 3, 7, .78);
    backdrop-filter: blur(14px);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.session-warning-card {
    background: linear-gradient(145deg, rgba(24, 18, 30, .98), rgba(12, 10, 16, .98));
    border: 1px solid var(--line-strong);
    border-radius: 28px;
    box-shadow: 0 34px 100px rgba(0,0,0,.55);
    max-width: 620px;
    padding: 34px;
    position: relative;
    width: min(620px, 100%);
}

.session-warning-card h2 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    margin-bottom: 14px;
}

.session-warning-card p {
    color: #d7cfdd;
    font-size: 1rem;
    line-height: 1.75;
}

.session-warning-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.session-warning-actions .button {
    flex: 1 1 190px;
}

.parent-payment-actions {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 24px 0 10px;
}

.parent-payment-form {
    margin: 0;
}

.payment-handoff-message {
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    color: #d7cfdd;
    margin-top: 14px;
    min-height: 0;
    padding: 0;
}

.payment-handoff-message:not(:empty) {
    padding: 14px 16px;
}

.payment-handoff-message.is-error {
    background: rgba(255, 49, 88, .1);
    border-color: rgba(255, 49, 88, .35);
    color: #ffc8d2;
}

.parent-payment-modal[hidden] {
    display: none;
}

.parent-payment-modal {
    align-items: center;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    overflow-y: auto;
    padding: 24px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 270;
}

.parent-payment-modal-backdrop {
    background: rgba(5, 3, 8, .78);
    backdrop-filter: blur(14px);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.parent-payment-dialog {
    background: linear-gradient(145deg, rgba(27, 18, 34, .98), rgba(12, 10, 17, .99));
    border: 1px solid var(--line-strong);
    border-radius: 28px;
    box-shadow: 0 34px 100px rgba(0, 0, 0, .58);
    color: var(--text);
    margin: auto 0;
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    max-width: 580px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 28px;
    position: relative;
    scrollbar-gutter: stable;
    width: min(580px, 100%);
}

.parent-payment-close {
    align-items: center;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    color: var(--text);
    cursor: pointer;
    display: flex;
    font-size: 24px;
    height: 42px;
    justify-content: center;
    position: absolute;
    right: 18px;
    top: 18px;
    width: 42px;
}

.parent-payment-dialog h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1;
    margin: 8px 48px 16px 0;
}

.parent-payment-modal-copy {
    display: grid;
    gap: 12px;
}

.parent-payment-modal-copy p {
    background: rgba(255, 255, 255, .045);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.7;
    margin: 0;
    padding: 16px 18px;
}

.parent-payment-modal-copy strong {
    color: #fff;
    font-weight: 800;
}

.parent-payment-modal-copy a {
    color: var(--purple-light);
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.parent-payment-modal-copy a:hover {
    color: var(--text);
}

.parent-payment-loading {
    align-items: center;
    background: rgba(127, 245, 181, .075);
    border: 1px solid rgba(127, 245, 181, .24);
    border-radius: 18px;
    display: flex;
    gap: 14px;
    margin-top: 14px;
    padding: 15px 16px;
}

.parent-payment-loading[hidden] {
    display: none;
}

.parent-payment-loading b {
    color: var(--text);
    display: block;
    font-size: 1rem;
    line-height: 1.3;
}

.parent-payment-loading p {
    color: var(--muted);
    font-size: .92rem;
    line-height: 1.55;
    margin: 3px 0 0;
}

.parent-payment-spinner,
.button-loader {
    animation: paymentSpin .75s linear infinite;
    border: 3px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    border-top-color: var(--green);
    display: inline-block;
    flex: 0 0 auto;
    height: 26px;
    width: 26px;
}

.button-loader {
    border-width: 2px;
    height: 18px;
    width: 18px;
}

.parent-payment-modal.is-processing .parent-payment-close,
.parent-payment-modal.is-processing [data-parent-payment-cancel] {
    cursor: not-allowed;
    opacity: .45;
    pointer-events: none;
}

.parent-payment-modal.is-processing .parent-payment-dialog {
    box-shadow: 0 34px 100px rgba(0, 0, 0, .58), 0 0 48px rgba(127, 245, 181, .12);
}

@keyframes paymentSpin {
    to {
        transform: rotate(360deg);
    }
}

.parent-payment-modal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.parent-payment-modal-actions .button {
    flex: 1 1 190px;
}

html[data-theme="light"] .field-has-error label,
html[data-theme="light"] .field-has-error .form-hint {
    color: #921334;
}

html[data-theme="light"] a:focus-visible,
html[data-theme="light"] button:focus-visible,
html[data-theme="light"] input:focus-visible,
html[data-theme="light"] select:focus-visible,
html[data-theme="light"] textarea:focus-visible,
html[data-theme="light"] [tabindex]:focus-visible {
    outline-color: #8b164a;
}

html[data-theme="light"] .password-toggle:focus-visible {
    outline-color: #8b164a;
}

html[data-theme="light"] input:focus-visible,
html[data-theme="light"] select:focus-visible,
html[data-theme="light"] textarea:focus-visible {
    border-color: #8b164a;
    box-shadow: 0 0 0 4px rgba(139, 22, 74, .14);
}

html[data-theme="light"] .session-warning-backdrop {
    background: rgba(32, 21, 29, .46);
}

html[data-theme="light"] .session-warning-card {
    background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,247,251,.98));
    border-color: rgba(63, 35, 50, .18);
    box-shadow: 0 34px 100px rgba(106,57,86,.24);
}

html[data-theme="light"] .session-warning-card h2 {
    color: #20151d;
}

html[data-theme="light"] .session-warning-card p {
    color: #4f424d;
}

html[data-theme="light"] .payment-handoff-message {
    background: rgba(32, 21, 29, .05);
    border-color: rgba(63, 35, 50, .12);
    color: #4f424d;
}

html[data-theme="light"] .payment-handoff-message.is-error {
    background: rgba(146, 19, 52, .08);
    border-color: rgba(146, 19, 52, .24);
    color: #921334;
}

@media (max-width: 560px) {
    .parent-payment-actions {
        grid-template-columns: 1fr;
    }
    .session-warning-modal {
        align-items: flex-end;
        padding: 14px;
    }
    .session-warning-card {
        border-radius: 22px;
        padding: 24px;
    }
}

.metric-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    margin: 18px 0 22px;
}

.metric-card {
    background: rgba(255,255,255,.045);
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 18px;
}

.metric-card span,
.metric-card small {
    color: var(--muted);
    display: block;
}

.metric-card span {
    font-size: .76rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.metric-card b {
    color: var(--text);
    display: block;
    font-size: 1.55rem;
    line-height: 1.1;
    margin: 8px 0 4px;
}

.portal-check-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
}

.mini-list {
    margin-top: 18px;
}

.home-promo-section {
    padding-top: 42px;
}

.home-promo-card {
    overflow: hidden;
    position: relative;
}

.home-promo-card .button {
    margin-top: 16px;
}

.home-promo-image {
    border-radius: 18px;
    display: block;
    margin-bottom: 16px;
    max-height: 180px;
    object-fit: cover;
    width: 100%;
}

html[data-theme="light"] .metric-card {
    background: rgba(255,255,255,.86);
    border-color: rgba(63,35,50,.13);
}

html[data-theme="light"] .order-box-head b {
    color: #21142a;
}

html[data-theme="light"] .order-box-head small {
    color: #5d5267;
}

.country-target-section { padding-top: 0; }
.country-target-panel { background: radial-gradient(circle at 16% 0, color-mix(in srgb, var(--service-accent) 22%, transparent), transparent 34%), rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 32px; display: grid; gap: 22px; grid-template-columns: .9fr 1.4fr; padding: 28px; }
.country-target-copy h2 { font-size: clamp(1.9rem, 4vw, 3.4rem); letter-spacing: -.05em; line-height: .98; margin: 8px 0 14px; }
.country-target-copy p { color: var(--muted); line-height: 1.7; margin-bottom: 20px; }
.country-target-grid { display: grid; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.country-target-grid article { background: rgba(7,6,10,.68); border: 1px solid rgba(255,255,255,.09); border-radius: 22px; padding: 18px; position: relative; }
.country-target-grid article > span { align-items: center; background: linear-gradient(135deg, var(--service-accent), var(--service-secondary)); border-radius: 50%; color: #09070c; display: flex; font-size: .7rem; font-weight: 900; height: 38px; justify-content: center; margin-bottom: 14px; width: 38px; }
.country-target-grid h3 { color: var(--text); font-size: 1.15rem; margin-bottom: 8px; }
.country-target-grid p { color: var(--muted); font-size: .82rem; line-height: 1.55; min-height: 54px; }
.country-target-grid small { color: var(--text); display: block; font-weight: 800; margin: 14px 0; }
.country-target-grid a { align-items: center; color: var(--text); display: flex; font-size: .78rem; font-weight: 800; justify-content: space-between; text-decoration: none; }
.country-target-field { background: rgba(255,255,255,.035); border: 1px solid var(--line); border-radius: 18px; margin: 0 0 18px; padding: 14px; }
.country-target-field label { align-items: baseline; display: flex; gap: 7px; justify-content: space-between; }
.country-target-field small { color: var(--muted); display: block; font-size: .72rem; line-height: 1.5; margin-top: 7px; }
.country-package-editor { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 24px; }
.country-package-editor h3 { color: var(--text); font-size: 1.35rem; margin-bottom: 6px; }
.country-package-editor p { color: var(--muted); margin-bottom: 16px; }
.country-package-table { overflow-x: auto; }
.country-package-row { align-items: center; border-bottom: 1px solid var(--line); display: grid; gap: 10px; grid-template-columns: 1.3fr .8fr .8fr 1fr 1fr .8fr; min-width: 900px; padding: 10px 0; }
.country-package-head { color: var(--muted-2); font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.country-package-row b { color: var(--text); display: block; }
.country-package-row small { color: var(--muted); display: block; font-size: .68rem; }
.country-package-row input { min-width: 0; width: 100%; }

html[data-theme="light"] .country-target-panel,
html[data-theme="light"] .country-target-field,
html[data-theme="light"] .country-target-grid article {
    background-color: rgba(255,255,255,.88);
    border-color: rgba(63,35,50,.13);
}

html[data-theme="light"] .country-target-copy h2,
html[data-theme="light"] .country-target-grid h3,
html[data-theme="light"] .country-target-grid small,
html[data-theme="light"] .country-target-grid a,
html[data-theme="light"] .country-package-editor h3,
html[data-theme="light"] .country-package-row b {
    color: #21142a;
}

html[data-theme="light"] .country-target-copy p,
html[data-theme="light"] .country-target-grid p,
html[data-theme="light"] .country-target-field small,
html[data-theme="light"] .country-package-editor p,
html[data-theme="light"] .country-package-row small {
    color: #5d5267;
}

@media (max-width: 860px) {
    .country-target-panel { grid-template-columns: 1fr; }
    .country-target-grid { grid-template-columns: 1fr; }
}

.global-announcement-stack {
    position: relative;
    z-index: 95;
}

.global-announcement {
    background: linear-gradient(135deg, rgba(255,74,132,.22), rgba(105,79,255,.18));
    border-bottom: 1px solid rgba(255,255,255,.13);
    box-shadow: 0 18px 45px rgba(0,0,0,.22);
    color: var(--text);
}

.global-announcement[hidden],
.global-announcement-modal[hidden] {
    display: none !important;
}

.global-announcement-inner {
    align-items: center;
    display: grid;
    gap: 15px;
    grid-template-columns: auto minmax(0,1fr) auto auto;
    min-height: 62px;
    padding-bottom: 12px;
    padding-top: 12px;
}

.global-announcement-icon {
    align-items: center;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
    display: inline-flex;
    font-weight: 900;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.global-announcement-copy b {
    color: var(--text);
    display: block;
    font-size: .96rem;
}

.global-announcement-copy p {
    color: rgba(245,238,255,.82);
    font-size: .84rem;
    line-height: 1.5;
    margin: 3px 0 0;
}

.global-announcement-action {
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 999px;
    color: var(--text);
    font-size: .78rem;
    font-weight: 900;
    padding: 10px 14px;
    text-decoration: none;
    white-space: nowrap;
}

.global-announcement-close,
.global-announcement-modal-close {
    align-items: center;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
    color: var(--text);
    cursor: pointer;
    display: inline-flex;
    font-size: 1.25rem;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.global-announcement-warning { background: linear-gradient(135deg, rgba(255,184,77,.25), rgba(255,74,132,.16)); }
.global-announcement-critical { background: linear-gradient(135deg, rgba(255,54,92,.34), rgba(94,22,51,.22)); }
.global-announcement-success { background: linear-gradient(135deg, rgba(36,220,160,.22), rgba(105,79,255,.14)); }

.global-announcement-modal {
    align-items: center;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    padding: 24px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 260;
}

.global-announcement-modal-backdrop {
    background: rgba(4,3,7,.78);
    backdrop-filter: blur(14px);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.global-announcement-modal-card {
    background: linear-gradient(145deg, rgba(25,18,34,.98), rgba(15,11,22,.98));
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 30px;
    box-shadow: 0 30px 90px rgba(0,0,0,.48);
    max-width: 620px;
    padding: 34px;
    position: relative;
    width: min(100%, 620px);
}

.global-announcement-modal-card h2 {
    color: var(--text);
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: .98;
    margin: 10px 0 14px;
}

.global-announcement-modal-card p {
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.75;
}

.global-announcement-modal-close {
    position: absolute;
    right: 18px;
    top: 18px;
}

.global-announcement-modal-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

html[data-theme="light"] .global-announcement {
    background: linear-gradient(135deg, rgba(255,236,246,.98), rgba(239,234,255,.96));
    border-bottom-color: rgba(63,35,50,.12);
    box-shadow: 0 16px 38px rgba(92,48,74,.12);
}

html[data-theme="light"] .global-announcement-copy b,
html[data-theme="light"] .global-announcement-action,
html[data-theme="light"] .global-announcement-close,
html[data-theme="light"] .global-announcement-modal-close {
    color: #21142a;
}

html[data-theme="light"] .global-announcement-copy p,
html[data-theme="light"] .global-announcement-modal-card p {
    color: #5d5267;
}

html[data-theme="light"] .global-announcement-icon,
html[data-theme="light"] .global-announcement-action,
html[data-theme="light"] .global-announcement-close {
    background: rgba(255,255,255,.72);
    border-color: rgba(63,35,50,.12);
}

html[data-theme="light"] .global-announcement-modal-backdrop {
    background: rgba(54,36,49,.42);
}

html[data-theme="light"] .global-announcement-modal-card {
    background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,247,251,.98));
    border-color: rgba(63,35,50,.12);
    box-shadow: 0 30px 90px rgba(92,48,74,.18);
}

html[data-theme="light"] .global-announcement-modal-card h2 {
    color: #21142a;
}

@media (max-width: 760px) {
    .global-announcement-inner {
        grid-template-columns: auto minmax(0,1fr) auto;
    }
    .global-announcement-action {
        grid-column: 2 / -1;
        justify-self: start;
    }
    .global-announcement-modal-card {
        border-radius: 24px;
        padding: 28px 22px;
    }
}
/* File upload cancel control */
.file-upload-control{align-items:center;background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:999px;display:inline-flex;gap:9px;margin-top:9px;max-width:100%;min-height:38px;padding:6px 7px 6px 13px}.file-upload-control[hidden]{display:none!important}.file-upload-name{color:var(--text);display:block;font-size:.88rem;font-weight:750;line-height:1.35;max-width:min(100%,420px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload-clear{align-items:center;background:rgba(255,85,116,.14);border:1px solid rgba(255,85,116,.32);border-radius:999px;color:#ff9aaa;cursor:pointer;display:inline-flex;flex:0 0 28px;font-size:1.15rem;font-weight:900;height:28px;justify-content:center;line-height:1;padding:0;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;width:28px}.file-upload-clear:hover,.file-upload-clear:focus{background:rgba(255,85,116,.24);border-color:rgba(255,85,116,.56);color:#fff;transform:translateY(-1px)}.portal-inline .file-upload-control{align-self:center;margin-top:0}html[data-theme="light"] .file-upload-control{background:rgba(32,21,29,.045);border-color:rgba(63,35,50,.16)}html[data-theme="light"] .file-upload-clear{background:rgba(185,31,63,.1);border-color:rgba(185,31,63,.28);color:#9f1939}html[data-theme="light"] .file-upload-clear:hover,html[data-theme="light"] .file-upload-clear:focus{background:rgba(185,31,63,.18);border-color:rgba(185,31,63,.46);color:#6e1028}@media(max-width:640px){.file-upload-control{width:100%}.file-upload-name{max-width:calc(100% - 42px)}}
