/*
 * FASTPANEL / ATELIER NOIR — WHMCS Order Experience
 * A dedicated style layer for the hostinger_cart orderform.
 * Black and graphite are primary; steel blue is reserved for focus and selected states.
 * All product, price, form, domain and cart behavior stays under WHMCS control.
 */

:root {
    --fpc-bg: #090a0c;
    --fpc-panel: #141619;
    --fpc-panel-raised: #1c1f23;
    --fpc-surface: #22252a;
    --fpc-hover: #272b30;
    --fpc-border: #30343a;
    --fpc-border-soft: #25282d;
    --fpc-title: #f1f2f2;
    --fpc-text: #c9ccd1;
    --fpc-muted: #969ba4;
    --fpc-subtle: #767b85;
    --fpc-highlight: #7799e6;
    --fpc-highlight-soft: rgba(119,153,230,.12);
    --fpc-good: #abd1ba;
    --fpc-danger: #eca6ad;
    --fpc-radius: 19px;
}

/* Keep the order UI in the same dark visual system as the site. */
#order-standard_cart,
#fp-order-plans {
    color: var(--fpc-text);
    font-family: "Cairo", "Tajawal", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
}
#order-standard_cart { font-size: 14px; line-height: 1.85; padding: 18px 0 90px; }
#order-standard_cart, #order-standard_cart * , #fp-order-plans, #fp-order-plans * { box-sizing: border-box; }
#order-standard_cart h1, #order-standard_cart h2, #order-standard_cart h3,
#order-standard_cart h4, #order-standard_cart .panel-title { color: var(--fpc-title); line-height: 1.48; }
#order-standard_cart p { color: var(--fpc-muted); }
#order-standard_cart a { color: #d5dae4; transition: color .2s, background-color .2s, border-color .2s; }
#order-standard_cart a:hover { color: #fff; }
#order-standard_cart a:focus-visible, #order-standard_cart button:focus-visible,
#order-standard_cart input:focus-visible, #order-standard_cart select:focus-visible,
#fp-order-plans a:focus-visible, #fp-order-plans button:focus-visible {
    outline: 2px solid var(--fpc-highlight) !important; outline-offset: 3px;
}
#order-standard_cart > .row { align-items: flex-start; }
#order-standard_cart .cart-body { background: transparent !important; border: 0 !important; }
#order-standard_cart .cart-sidebar { background: transparent !important; border: 0 !important; }
#order-standard_cart .header-lined {
    border: 1px solid var(--fpc-border-soft); border-radius: 24px;
    background: radial-gradient(ellipse at 100% -30%, rgba(255,255,255,.07), transparent 48%),linear-gradient(135deg,#1a1c20,#0d0e10);
    padding: clamp(25px,4vw,42px); margin-bottom: 30px; position: relative; overflow: hidden;
}
#order-standard_cart .header-lined:before {
    content: "FASTPANEL / ORDER EXPERIENCE"; display: block; direction: ltr;
    text-align: start; color: #9097a3; font: 700 10px/1.3 "Plus Jakarta Sans",sans-serif;
    letter-spacing: .19em; margin-bottom: 15px;
}
#order-standard_cart .header-lined h1 { color:#f4f5f6!important; font-size:clamp(27px,3.5vw,41px)!important; font-weight:800; letter-spacing:-.04em; margin:0!important; }
#order-standard_cart .header-lined h1:after { display:none !important; }

/* Side navigation & mobile category select */
#order-standard_cart .cart-sidebar .list-group,
#order-standard_cart .cart-sidebar .panel,
#order-standard_cart .sidebar-collapsed {
    background:#15171a!important; border:1px solid var(--fpc-border)!important;
    border-radius:18px!important; box-shadow:none!important; overflow:hidden;
}
#order-standard_cart .cart-sidebar h3,
#order-standard_cart .sidebar-collapsed h3 { color:var(--fpc-title)!important; font-weight:700; }
#order-standard_cart .cart-sidebar .list-group-item,
#order-standard_cart .sidebar-collapsed .list-group-item {
    background:#15171a!important; border-color:#2b2e32!important;
    color:var(--fpc-text)!important; padding:11px 15px; border-radius:0!important;
}
#order-standard_cart .cart-sidebar .list-group-item:hover,
#order-standard_cart .cart-sidebar .list-group-item.active {
    background:#24272b!important; border-color:#424c5c!important; color:#fff!important;
}
#order-standard_cart .sidebar-collapsed { padding:16px!important; margin-bottom:25px; }
#order-standard_cart .sidebar-collapsed select { width:100%; }

/* Product configurations, account sections, and order summary */
#order-standard_cart .product-info, #order-standard_cart .domain-selection-options,
#order-standard_cart .already-registered, #order-standard_cart .account-select-container,
#order-standard_cart .apply-credit-container,
#order-standard_cart .checkout-security-msg, #order-standard_cart .cc-input-container,
#order-standard_cart .domain-checker-container, #order-standard_cart .domain-checker-bg {
    background:#16181c!important; border:1px solid #30343b!important; border-radius:18px!important;
    color:var(--fpc-text)!important; box-shadow:none!important;
}
#order-standard_cart .product-info { padding:23px 26px!important; margin-bottom:25px!important; }
#order-standard_cart .product-info .product-title { color:#f3f4f5!important; font-weight:800; font-size:23px; }
#order-standard_cart .product-info p { margin-bottom:5px; }
#order-standard_cart .sub-heading, #order-standard_cart .sub-heading-borderless {
    height:auto!important; min-height:1px; text-align:start!important;
    border-top:1px solid #31353b!important; margin:30px 0 25px!important;
    padding-top:15px;
}
#order-standard_cart .sub-heading span, #order-standard_cart .sub-heading-borderless span {
    top:auto!important; padding:0!important; background:transparent!important;
    font-size:17px!important; font-weight:800!important; color:#e9eaed!important;
}
#order-standard_cart .sub-heading span:before { content:""; display:inline-block; width:5px; height:15px; border-radius:9px; background:#879ab6; margin-inline-end:11px; vertical-align:middle; }
#order-standard_cart .secondary-cart-body { min-width:0; }
#order-standard_cart .secondary-cart-sidebar { min-width:0; }
#order-standard_cart .order-summary {
    background:#15171b!important; border:1px solid #383c43!important;
    border-radius:20px!important; overflow:hidden; box-shadow:0 17px 40px #0002!important;
}
#order-standard_cart .order-summary h2 {
    padding:19px 22px!important; background:#212429!important; color:#f3f3f4!important;
    border-bottom:1px solid #383d44; font-size:18px!important; font-weight:800!important; text-align:start!important;
}
#order-standard_cart .summary-container {
    padding:20px!important; background:#15171b!important; color:#cdd0d5!important;
    font-size:13px!important; min-height:auto!important; border-radius:0!important;
}
#order-standard_cart .summary-container .clearfix { display:flow-root; margin:0 0 11px; }
#order-standard_cart .order-summary .product-name { color:#f4f4f4; font-size:16px; }
#order-standard_cart .order-summary .product-group { color:#969da7!important; }
#order-standard_cart .summary-totals, #order-standard_cart .bordered-totals,
#order-standard_cart .order-summary .subtotal { border-color:#353a41!important; }
#order-standard_cart .order-summary .total-due-today,
#order-standard_cart .order-summary .total-due-today-padded {
    background:#24282d; border:1px solid #3d434a; border-radius:14px;
    padding:17px!important; margin:16px 0 5px!important;
}
#order-standard_cart .order-summary .total-due-today .amt,
#order-standard_cart .total-due-today .amt { color:#f6f7f8!important; font-weight:800; font-size:30px!important; }
#order-standard_cart .order-summary .total-due-today span { color:#a3a8b0; }
#order-standard_cart #orderSummaryLoader { color:#d5dae3; }

/* Inputs and field controls */
#order-standard_cart label, #order-standard_cart .control-label,
#order-standard_cart .form-group label { color:#d8dbe0!important; font-size:13px; font-weight:650; }
#order-standard_cart .field, #order-standard_cart .form-control,
#order-standard_cart select, #order-standard_cart textarea,
#order-standard_cart input[type=text], #order-standard_cart input[type=email],
#order-standard_cart input[type=tel], #order-standard_cart input[type=password],
#order-standard_cart input[type=number], #order-standard_cart input[type=search] {
    background:#0e1013!important; border:1px solid #383d45!important; color:#e9eaec!important;
    border-radius:11px!important; min-height:43px; box-shadow:none!important;
}
#order-standard_cart .form-control:focus, #order-standard_cart input:focus,
#order-standard_cart textarea:focus, #order-standard_cart select:focus {
    border-color:#7799e6!important; box-shadow:0 0 0 3px #7799e620!important;
}
#order-standard_cart input::placeholder, #order-standard_cart textarea::placeholder { color:#888e98!important; opacity:1; }
#order-standard_cart .field[readonly], #order-standard_cart .form-control[readonly],
#order-standard_cart .field[disabled], #order-standard_cart .form-control[disabled] { background:#22252a!important; color:#afb4be!important; }
#order-standard_cart .input-group-addon, #order-standard_cart .input-group-text,
#order-standard_cart .input-group-prepend, #order-standard_cart .input-group-append {
    background:#272a2f!important; color:#e0e2e6!important; border-color:#43474e!important;
    border-radius:10px;
}
#order-standard_cart .prepend-icon .field-icon i { color:#959daa!important; }
#order-standard_cart .help-block, #order-standard_cart .text-muted, #order-standard_cart .field-help-text { color:#a0a5ae!important; }
#order-standard_cart select option { background:#191b20; color:#f3f3f4; }
#order-standard_cart input[type=checkbox], #order-standard_cart input[type=radio] { accent-color:#869fcf; }
#order-standard_cart .form-group { margin-bottom:20px; }
#order-standard_cart .field-container { margin-bottom:20px; }
#order-standard_cart .field-container .row { margin-bottom:4px; }
#order-standard_cart .btn {
    border-radius:11px!important; font-weight:700; transition:background .2s,color .2s,border-color .2s,transform .2s;
}
#order-standard_cart .btn-primary, #order-standard_cart .btn-success,
#order-standard_cart .btn-info, #order-standard_cart .btn-checkout,
#order-standard_cart button[type=submit].btn {
    background:#e8eaed!important; color:#0c0e11!important; border:1px solid #e8eaed!important;
    box-shadow:none!important;
}
#order-standard_cart .btn-primary:hover, #order-standard_cart .btn-success:hover,
#order-standard_cart .btn-info:hover, #order-standard_cart .btn-checkout:hover,
#order-standard_cart button[type=submit].btn:hover {
    background:#fff!important; color:#08090b!important; border-color:#fff!important;
}
#order-standard_cart .btn-default, #order-standard_cart .btn-secondary,
#order-standard_cart .btn-warning {
    background:#25282e!important; color:#e7e9ec!important; border:1px solid #444a53!important;
}
#order-standard_cart .btn-default:hover, #order-standard_cart .btn-secondary:hover,
#order-standard_cart .btn-warning:hover { background:#32363d!important; color:#fff!important; }
#order-standard_cart .btn-link { background:transparent!important; border:0!important; color:#cbd3df!important; }
#order-standard_cart .btn-lg { padding:13px 25px; }
#order-standard_cart .btn-block { width:100%; }
#order-standard_cart .btn-remove-from-cart { background:transparent!important; color:#e8a1a9!important; border:0!important; }
#order-standard_cart .panel, #order-standard_cart .card, #order-standard_cart .well {
    background:#17191d!important; border:1px solid #343941!important;
    color:#cbd0d5!important; border-radius:18px!important; box-shadow:none!important;
}
#order-standard_cart .panel-heading, #order-standard_cart .card-header,
#order-standard_cart .panel-footer, #order-standard_cart .card-footer {
    background:#212429!important; border-color:#363b43!important;
    color:#eceef0!important; border-radius:15px 15px 0 0;
}
#order-standard_cart .panel-body, #order-standard_cart .card-body { color:#cbd0d5!important; }
#order-standard_cart .panel-title, #order-standard_cart .card-title { color:#f2f3f5!important; }
#order-standard_cart .panel-addon { border:1px solid #353a42!important; overflow:hidden; }
#order-standard_cart .panel-addon:hover { border-color:#6a7890!important; }
#order-standard_cart .panel-addon-selected { border-color:#7d9dd8!important; background:#1e2630!important; }
#order-standard_cart .panel-addon .panel-price { background:#272b31!important; color:#f1f2f4!important; padding:11px!important; }
#order-standard_cart .panel-addon .panel-add { background:#353b45!important; color:#f5f6f7!important; padding:10px!important; }
#order-standard_cart .panel-addon-selected .panel-add { background:#3b536e!important; }
#order-standard_cart .products .product { background:#17191d!important; border:1px solid #373c44!important; border-radius:19px!important; overflow:hidden; margin-bottom:22px; }
#order-standard_cart .products .product header { background:#25282e!important; margin:0!important; padding:17px 21px!important; }
#order-standard_cart .products .product header span { color:#f2f3f5!important; font-weight:750; font-size:17px; }
#order-standard_cart .products .product .product-desc { color:#c0c5cd!important; font-size:14px!important; padding:18px!important; }
#order-standard_cart .products .product footer { font-size:14px!important; }
#order-standard_cart .products .product .product-pricing span.price { color:#f3f4f5!important; font-weight:800; }

/* Cart list / coupon / checkout summary */
#order-standard_cart .view-cart-items-header {
    background:#24272c!important; border:1px solid #3a3f47;
    border-radius:16px 16px 0 0!important; color:#e9ebed!important;
    padding:14px 18px!important; font-size:13px!important; font-weight:800;
}
#order-standard_cart .view-cart-items { border:1px solid #333840!important; border-top:0!important; border-radius:0 0 16px 16px; overflow:hidden; margin-bottom:26px; }
#order-standard_cart .view-cart-items .item,
#order-standard_cart .view-cart-items .item:nth-child(even) {
    background:#17191d!important; color:#cbd0d6!important; padding:18px!important;
    border-bottom:1px solid #2d3239!important; font-size:13px!important;
}
#order-standard_cart .view-cart-items .item:nth-child(even) { background:#1c1f23!important; }
#order-standard_cart .view-cart-items .item:last-child { border-bottom:0!important; }
#order-standard_cart .view-cart-items .item-title { color:#f2f2f4!important; font-size:17px!important; font-weight:800; }
#order-standard_cart .view-cart-items .item-price { color:#f1f2f3!important; }
#order-standard_cart .view-cart-items .item-domain { color:#a6bbd6!important; }
#order-standard_cart .view-cart-tabs { background:#17191d; padding:15px; border:1px solid #333941; border-radius:16px; }
#order-standard_cart .view-cart-tabs .nav-tabs, #order-standard_cart .nav-tabs { border-color:#3b4149!important; }
#order-standard_cart .view-cart-tabs .tab-content, #order-standard_cart .tab-content,
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded=true],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected=true] { background:#1b1d21!important; color:#d4d6dc!important; border-color:#3b4149!important; }
#order-standard_cart .nav-tabs > li > a { color:#cbd0d7!important; }
#order-standard_cart .nav-tabs > li.active > a { background:#2b3036!important; color:#fff!important; border-color:#4a5563!important; }
#order-standard_cart .account-select-container { padding:14px!important; }
#order-standard_cart .account-select-container .account { background:#202329!important; border-color:#383e46!important; border-radius:12px; }
#order-standard_cart .account-select-container .account.active { background:#293441!important; border-color:#61779a!important; }
#order-standard_cart .already-registered { padding:20px!important; margin-bottom:25px!important; }
#order-standard_cart .apply-credit-container { padding:17px!important; }
#order-standard_cart .checkout-security-msg { margin:18px 0!important; padding:20px!important; }
#order-standard_cart .checkout-security-msg i { color:#a9b6cc; }
#order-standard_cart .cc-input-container { padding:18px!important; }
#order-standard_cart .payment-method, #order-standard_cart .payment-methods label,
#order-standard_cart .payment-method .payment-method-header { background:#191d22!important; color:#e5e7ea!important; border-color:#3c414a!important; }
#order-standard_cart .payment-method:hover { border-color:#6b819e!important; }
#order-standard_cart .text-danger, #order-standard_cart .field-error-msg { color:var(--fpc-danger)!important; }
#order-standard_cart .alert { border-radius:13px!important; padding:16px 19px!important; border:1px solid #42454a; }
#order-standard_cart .alert-info { background:#202834!important; color:#dce6f5!important; border-color:#3a506b!important; }
#order-standard_cart .alert-success { background:#1d2924!important; color:#c2d9c8!important; border-color:#345042!important; }
#order-standard_cart .alert-danger { background:#342226!important; color:#f0bec6!important; border-color:#70434b!important; }
#order-standard_cart .alert-warning { background:#30291f!important; color:#ead8b7!important; border-color:#5b4a35!important; }
#order-standard_cart .table { background:#181b1f!important; color:#d3d5da!important; border-color:#373c43!important; }
#order-standard_cart .table th, #order-standard_cart .table td { border-color:#343a42!important; }
#order-standard_cart .table-striped tbody tr:nth-child(odd) { background:#202329!important; }

/* Domains: selection, suggestions, registration and transfers. */
#order-standard_cart .domain-selection-options { padding:13px!important; }
#order-standard_cart .domain-selection-options .option {
    background:#1d2025!important; color:#d9dde2!important; border:1px solid #343a42!important;
    border-radius:12px!important; margin-bottom:9px!important; padding:12px 16px!important;
}
#order-standard_cart .domain-selection-options .option:hover { border-color:#77869b!important; }
#order-standard_cart .domain-selection-options .option-selected { background:#273341!important; border-color:#7291be!important; }
#order-standard_cart .domain-selection-options label { color:#e8ebf0!important; margin-bottom:0; }
#order-standard_cart .domain-input-group { background:#15181c; padding:20px; border:1px solid #343941; border-radius:15px; }
#order-standard_cart .domain-checker-container, #order-standard_cart .domain-checker-bg { padding:18px!important; }
#order-standard_cart .domain-checker-bg { background:transparent!important; border:0!important; }
#order-standard_cart .domain-checker-result-headline { color:#e9eaed!important; }
#order-standard_cart .domain-lookup-primary-results .headline { color:#e4e8ef!important; }
#order-standard_cart .domain-checker-available, #order-standard_cart .domain-available { color:#a6d5b6!important; }
#order-standard_cart .domain-checker-unavailable, #order-standard_cart .domain-checker-invalid,
#order-standard_cart .domain-unavailable { color:#e5a4ae!important; }
#order-standard_cart .transfer-eligible { background:#1f2b25!important; color:#badac3!important; border-color:#41604b!important; }
#order-standard_cart .transfer-not-eligible { background:#292125!important; color:#e8acb6!important; border-color:#62464e!important; }
#order-standard_cart .spotlight-tld, #order-standard_cart .domain-suggestion,
#order-standard_cart .domain-lookup-result, #order-standard_cart .domain-pricing .tld-pricing-header,
#order-standard_cart .domain-renewal, #order-standard_cart .service-renewal,
#order-standard_cart .domain-add-domain {
    background:#1c1f23!important; border-color:#383d45!important; color:#d6d8dd!important;
}
#order-standard_cart .spotlight-tld, #order-standard_cart .domain-suggestion,
#order-standard_cart .domain-renewal, #order-standard_cart .service-renewal { border-radius:14px; }
#order-standard_cart .spotlight-tld:hover, #order-standard_cart .domain-suggestion:hover { border-color:#657b9b!important; }
#order-standard_cart .domain-suggestion .domain, #order-standard_cart .spotlight-tld .price,
#order-standard_cart .domain-lookup-result .price { color:#eff0f3!important; }
#order-standard_cart .domain-pricing, #order-standard_cart .domain-pricing .tld-pricing,
#order-standard_cart .domain-pricing-table { background:#171a1e!important; border-color:#353b42!important; color:#cfd2d7!important; }
#order-standard_cart .domain-renewals .domain-renewal, #order-standard_cart .service-renewals .renewal-item { padding:16px!important; margin-bottom:12px!important; }
#order-standard_cart .order-confirmation { text-align:center; padding:26px!important; font-size:20px; }
#order-standard_cart .order-confirmation span { display:block; font-size:32px; font-weight:800; color:#f4f4f4; }

/* Recommendations, modals, overlays, status indicators */
#recommendationsModal .modal-content, #order-standard_cart .modal-content,
#order-standard_cart .modal-dialog .modal-content { background:#1a1c20!important; color:#d1d4da!important; border:1px solid #464a51!important; border-radius:18px; }
#recommendationsModal .modal-header, #recommendationsModal .modal-footer { border-color:#343a41!important; }
#recommendationsModal .product-recommendation, .product-recommendations .product-recommendation {
    background:#1d2024!important; border-color:#3d424b!important; color:#d6d9dd!important; border-radius:14px;
}
#recommendationsModal .product-recommendation .body, .product-recommendations .product-recommendation .body { background:#23272b!important; border-color:#373c43!important; color:#c7cbd1!important; }
#recommendationsModal .product-recommendation .btn-add, .product-recommendations .product-recommendation .btn-add { background:#e5e8ec!important; color:#121417!important; border-radius:9px; }
#order-standard_cart .label, #order-standard_cart .badge { border-radius:7px; }
#order-standard_cart .label-info, #order-standard_cart .badge-info { background:#364453!important; color:#e3eaf2!important; }
#order-standard_cart .progress { background:#2a2e34!important; }
#order-standard_cart .progress-bar { background:#7e95bc!important; }

/* Product selection: editorial hero, subtle line art, architectural pricing cards. */
#fp-order-plans { direction:rtl; text-align:right; padding:24px 0 90px; color:var(--fpc-text); }
.fp-plans-shell { width:min(100% - 40px,1370px); margin:auto; }
.fp-plans-hero {
    display:grid; grid-template-columns:minmax(0,1.1fr) minmax(240px,.9fr);
    gap:25px; align-items:center; min-height:355px; padding:clamp(29px,5vw,66px);
    border:1px solid #34373c; border-radius:28px; overflow:hidden; position:relative;
    background:radial-gradient(ellipse at 80% 40%,#2a2d31 0%,transparent 50%),linear-gradient(125deg,#1a1c1f,#0c0d0f 78%);
}
.fp-plans-hero:before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.20; background-image:linear-gradient(#9198a21b 1px,transparent 1px),linear-gradient(90deg,#9198a21b 1px,transparent 1px); background-size:52px 52px; mask-image:linear-gradient(270deg,black,transparent 75%); }
.fp-plans-hero-copy { position:relative; z-index:1; max-width:670px; }
.fp-plans-eyebrow { display:flex; align-items:center; gap:12px; direction:ltr; justify-content:flex-end; color:#aeb3be; font:700 11px/1.5 "Plus Jakarta Sans",sans-serif; letter-spacing:.2em; margin-bottom:21px; }
.fp-live-dot { width:8px; height:8px; border-radius:50%; background:#c5d0de; box-shadow:0 0 0 5px #c5d0de17; }
.fp-eyebrow-divider { height:1px; width:27px; background:#777e88; }
.fp-plans-hero h1 { font-size:clamp(32px,4.2vw,57px); color:#f3f4f5; line-height:1.35; letter-spacing:-.055em; font-weight:850; max-width:660px; margin:0 0 14px; }
.fp-plans-hero p { color:#afb3bc; font-size:15px; line-height:1.95; max-width:555px; margin:0; }
.fp-plans-hero-meta { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:30px; }
.fp-plans-hero-meta span { color:#d1d3d8; font-weight:650; font-size:12px; display:inline-flex; gap:8px; align-items:center; }
.fp-plans-hero-meta i { color:#a7b5cd; }
.fp-plans-hero-art { min-height:250px; position:relative; display:grid; place-items:center; isolation:isolate; }
.fp-art-orbit { position:absolute; aspect-ratio:1; border:1px solid #949eab31; border-radius:50%; }
.fp-art-orbit-outer { width:min(85%,350px); box-shadow:0 0 0 27px #c4c9d206,0 0 0 55px #c4c9d203; }
.fp-art-orbit-inner { width:min(58%,230px); border-style:dashed; transform:rotate(-26deg); }
.fp-art-device {
    z-index:2; width:142px; min-height:152px; border:1px solid #696f79; border-radius:24px; transform:rotate(-10deg);
    background:linear-gradient(145deg,#3b4047,#181a1e 66%); box-shadow:24px 27px 37px #0008;
    display:flex; flex-direction:column; justify-content:center; gap:12px; padding:22px; position:relative;
}
.fp-art-device:before { content:""; position:absolute; inset:10px; border:1px solid #ffffff13; border-radius:16px; }
.fp-art-device span { height:11px; background:#1b1e22; border:1px solid #646c76; border-radius:5px; position:relative; }
.fp-art-device span:after { content:""; position:absolute; top:3px; right:8px; width:4px; height:4px; background:#bdc8d7; border-radius:100%; box-shadow:-9px 0 0 #636d77; }
.fp-art-device>i { color:#aab4c1; position:absolute; left:22px; bottom:14px; font-size:12px; }
.fp-art-chip { display:grid; place-items:center; position:absolute; z-index:3; width:50px; height:50px; border-radius:16px; background:#252a31; border:1px solid #646a74; color:#c7ced8; box-shadow:0 15px 30px #0005; }
.fp-art-chip-top { top:14%; right:14%; transform:rotate(11deg); }
.fp-art-chip-bottom { bottom:11%; left:18%; transform:rotate(-11deg); }
.fp-plans-categories { display:flex; flex-wrap:wrap; gap:9px; padding:22px 0; margin-bottom:34px; border-bottom:1px solid #2c3035; }
.fp-category-link { display:inline-flex; align-items:center; justify-content:center; min-height:41px; padding:8px 19px; border:1px solid #353a40; border-radius:40px; color:#bfc3c9!important; text-decoration:none!important; background:#1a1d21; font-weight:700; font-size:13px; }
.fp-category-link:hover { color:#fff!important; background:#25282d; border-color:#656c76; }
.fp-category-link.is-active { color:#f5f7fa!important; background:#303945; border-color:#7799d4; }
.fp-plans-controls { display:flex; justify-content:space-between; align-items:end; gap:24px; margin:42px 0 28px; }
.fp-section-kicker { color:#9aa9bf; font-size:12px; letter-spacing:.025em; font-weight:750; margin-bottom:9px; }
.fp-plans-intro h2 { font-size:clamp(23px,3vw,31px); line-height:1.4; font-weight:800; color:#f1f2f3; margin:0 0 7px; }
.fp-plans-intro p { margin:0; color:#a5aab2; font-size:13px; }
.fp-billing-switcher { border:1px solid #3b3f47; border-radius:14px; padding:5px; background:#191b1f; display:flex; flex-wrap:wrap; gap:3px; max-width:100%; }
.fp-cycle-btn { white-space:nowrap; border:1px solid transparent; border-radius:10px; padding:10px 16px; background:transparent; color:#bfc4cb; font-family:inherit; font-size:12px; font-weight:750; cursor:pointer; transition:background .2s,color .2s,border-color .2s; }
.fp-cycle-btn:hover { background:#292c31; color:#fff; }
.fp-cycle-btn.is-active { background:#e6e8eb; color:#0d0e11; border-color:#eff0f2; }
.fp-plans-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; align-items:stretch; }
.fp-plan-card {
    background:linear-gradient(165deg,#1e2024,#131518 42%); color:#d5d7dc; min-width:0;
    border:1px solid #363940; border-radius:22px; padding:25px; position:relative;
    display:flex; flex-direction:column; transition:border-color .3s,transform .3s,box-shadow .3s; overflow:hidden;
}
.fp-plan-card:before { content:""; width:170px; height:170px; position:absolute; top:-80px; left:-65px; border-radius:50%; background:#9fabb817; filter:blur(20px); pointer-events:none; }
.fp-plan-card:hover { border-color:#68707b; transform:translateY(-5px); box-shadow:0 25px 55px #0004; }
.fp-plan-card-featured { background:linear-gradient(165deg,#252931,#181a1e 37%); border-color:#5a6575; }
.fp-plan-card-featured:after { content:""; display:block; position:absolute; top:0; right:15%; left:15%; height:2px; background:linear-gradient(90deg,transparent,#b6beca,transparent); }
.fp-plan-topline { display:flex; justify-content:space-between; align-items:center; gap:10px; font:750 9px/1.4 "Plus Jakarta Sans",sans-serif; letter-spacing:.17em; color:#919aa7; direction:ltr; margin-bottom:25px; }
.fp-plan-topline span:last-child { font-size:9px; letter-spacing:.09em; color:#aabcb1; }
.fp-plan-topline i { font-size:6px; vertical-align:middle; margin-right:4px; }
.fp-plan-symbol { width:55px; height:55px; display:grid; place-items:center; border:1px solid #464d57; border-radius:16px; background:#262b32; color:#d1d5de; margin-bottom:24px; font-size:21px; }
.fp-plan-heading { min-height:94px; }
.fp-plan-category { color:#a1a7b1; font-size:12px; font-weight:700; }
.fp-plan-heading h3 { color:#f5f5f6; font-size:26px; line-height:1.38; font-weight:850; margin:8px 0 0; letter-spacing:-.035em; overflow-wrap:anywhere; }
.fp-plan-price-wrap { padding:20px 0 24px; margin:12px 0 22px; border-top:1px solid #373a40; border-bottom:1px solid #373a40; min-height:134px; }
.fp-price-option[hidden] { display:none!important; }
.fp-price-amount { display:flex; align-items:baseline; gap:5px; direction:ltr; justify-content:flex-end; color:#f7f8f9; }
.fp-price-amount strong { font-family:"Plus Jakarta Sans",system-ui,sans-serif; font-size:clamp(26px,3vw,43px); line-height:1.3; font-weight:850; letter-spacing:-.065em; overflow-wrap:anywhere; }
.fp-price-amount small { font-size:15px; font-weight:700; color:#d4d7dd; }
.fp-price-period { text-align:left; font-size:12px; color:#9da3ad; direction:rtl; margin-top:1px; }
.fp-price-missing { color:#b3b7be; font-size:18px; font-weight:650; padding:10px 0; }
.fp-plan-setup { color:#d8b9a7; font-size:12px; margin-top:10px; }
.fp-plan-features { flex:1; min-height:150px; }
.fp-plan-features-title { color:#f0f1f3; font-size:14px; font-weight:800; margin-bottom:15px; }
.fp-plan-features ul { list-style:none; margin:0; padding:0; }
.fp-plan-features li { display:flex; gap:12px; align-items:start; padding:10px 0; border-bottom:1px solid #2d3035; line-height:1.7; font-size:13px; color:#cbd0d6; }
.fp-plan-features li:last-child { border:0; }
.fp-plan-features li>i { color:#a7c7b2; margin-top:5px; flex:none; font-size:11px; }
.fp-plan-description { font-size:13px; color:#cbd0d6; line-height:1.9; overflow-wrap:anywhere; }
.fp-plan-description * { max-width:100%; color:inherit; }
.fp-plan-description ul, .fp-plan-description ol { padding-inline-start:18px; }
.fp-plan-no-description { color:#a6abb3; font-size:13px; }
.fp-plan-action { margin-top:29px; }
.fp-plan-select { text-decoration:none!important; display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:52px; border-radius:13px; background:#e5e7ea; color:#0d0f12!important; padding:12px 18px; font-size:14px; font-weight:800; transition:background .2s,transform .2s; }
.fp-plan-select:hover { background:#fff; color:#0b0c0f!important; transform:translateY(-2px); }
.fp-plan-select i { font-size:14px; }
.fp-plan-select.is-unavailable { opacity:.45; cursor:not-allowed; }
.fp-plan-notice { display:block; margin-top:11px; font-size:11px; color:#8f949e; text-align:center; }
.fp-no-plans { grid-column:1/-1; border:1px solid #3a3e43; background:#181a1d; padding:70px 20px; text-align:center; border-radius:20px; }
.fp-no-plans>i { font-size:32px; color:#abb5c0; margin-bottom:16px; }
.fp-no-plans h3 { color:#eee; font-size:22px; }
.fp-no-plans p { color:#aaa; }
.fp-plans-help { display:flex; align-items:center; gap:18px; background:#191b1f; border:1px solid #34383e; border-radius:20px; padding:24px 28px; margin-top:25px; }
.fp-help-icon { width:52px; height:52px; flex:none; border:1px solid #474d56; border-radius:14px; background:#292c32; color:#d2d8e2; font-size:21px; display:grid; place-items:center; }
.fp-plans-help>div:nth-child(2) { flex:1; }
.fp-plans-help strong { color:#f1f2f3; font-size:16px; font-weight:800; }
.fp-plans-help p { color:#a6acb5; margin:3px 0 0; font-size:12px; }
.fp-plans-help a { display:inline-flex; align-items:center; gap:12px; border:1px solid #474e58; border-radius:11px; padding:11px 17px; color:#eff0f2!important; white-space:nowrap; text-decoration:none!important; font-size:12px; font-weight:800; }
.fp-plans-help a:hover { background:#2a2e35; border-color:#6c7c95; }

/* Layout: maintain original WHMCS grid logic, but prevent narrow viewport overflow. */
@media (min-width: 1200px) {
    #order-standard_cart .secondary-cart-sidebar { position:sticky; top:100px; }
}
@media (max-width: 1100px) {
    .fp-plans-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fp-plans-controls { flex-wrap:wrap; }
}
@media (max-width: 900px) {
    .fp-plans-hero { grid-template-columns:1fr; min-height:auto; }
    .fp-plans-hero-art { display:none; }
    #order-standard_cart .header-lined { padding:28px; }
    #order-standard_cart .cart-body, #order-standard_cart .secondary-cart-body, #order-standard_cart .secondary-cart-sidebar { max-width:100%; }
    #order-standard_cart .secondary-cart-sidebar { position:static; }
}
@media (max-width: 767px) {
    #order-standard_cart { padding-top:8px; padding-bottom:55px; }
    #order-standard_cart .header-lined { padding:25px 20px; margin-bottom:24px; border-radius:19px; }
    #order-standard_cart .header-lined h1 { font-size:27px!important; }
    #order-standard_cart .cart-body, #order-standard_cart .secondary-cart-body,
    #order-standard_cart .secondary-cart-sidebar { padding-inline:7px!important; width:100%!important; float:none!important; }
    #order-standard_cart .row { margin-inline:-7px; }
    #order-standard_cart .row > [class*="col-"] { min-width:0; }
    #order-standard_cart .order-summary { margin-top:22px; }
    #order-standard_cart .products .product div.product-desc, #order-standard_cart .products .product footer {
        float:none!important; width:100%!important; text-align:start; padding:15px;
    }
    #order-standard_cart .view-cart-items .item { padding:13px!important; }
    #order-standard_cart .view-cart-items-header { padding:13px!important; }
    #order-standard_cart .view-cart-items .item-price { text-align:start; margin-top:9px; }
    #order-standard_cart .domain-checker-bg, #order-standard_cart .domain-checker-container { padding:10px!important; }
    #order-standard_cart .domain-input-group { padding:12px; }
    #order-standard_cart .input-group { max-width:100%; }
    #order-standard_cart .domain-lookup-primary-results { overflow-wrap:anywhere; }
    #order-standard_cart .account-select-container { margin:0; }
    #fp-order-plans { padding:12px 0 65px; }
    .fp-plans-shell { width:min(100% - 22px,1370px); }
    .fp-plans-hero { padding:28px 22px; border-radius:22px; }
    .fp-plans-hero h1 { font-size:clamp(30px,8vw,43px); }
    .fp-plans-hero-meta { gap:10px 16px; }
    .fp-plans-categories { padding:15px 0 20px; margin-bottom:27px; gap:7px; }
    .fp-category-link { padding:7px 13px; font-size:12px; min-height:38px; }
    .fp-plans-controls { margin:23px 0; gap:18px; }
    .fp-plans-grid { grid-template-columns:1fr; gap:15px; }
    .fp-plan-card { padding:23px; }
    .fp-plan-heading { min-height:auto; }
    .fp-plan-price-wrap { min-height:auto; }
    .fp-plans-help { flex-wrap:wrap; padding:19px; gap:13px; }
    .fp-plans-help a { width:100%; justify-content:center; }
}
@media (max-width: 480px) {
    .fp-plans-hero-meta span { font-size:11px; }
    .fp-plans-hero p { font-size:13px; }
    .fp-plans-eyebrow { font-size:9px; letter-spacing:.12em; }
    .fp-billing-switcher { width:100%; }
    .fp-cycle-btn { flex:1 1 auto; padding:9px 11px; }
    #order-standard_cart .secondary-cart-sidebar { margin-top:0; }
    #order-standard_cart .order-summary h2 { padding:14px 17px!important; }
    #order-standard_cart .summary-container { padding:15px!important; }
    #order-standard_cart .input-group-lg > .form-control { min-width:0; }
    #order-standard_cart .table-responsive { overflow-x:auto; }
    #order-standard_cart .view-cart-items .item .row > div { overflow-wrap:anywhere; }
}
@media (prefers-reduced-motion: reduce) {
    .fp-plan-card, .fp-plan-select, #order-standard_cart .btn, .fp-category-link { transition:none!important; }
    .fp-plan-card:hover, .fp-plan-select:hover { transform:none; }
}
