{"id":1632,"date":"2026-04-04T11:46:05","date_gmt":"2026-04-04T11:46:05","guid":{"rendered":"https:\/\/3rbinvesting.com\/?page_id=1632"},"modified":"2026-04-04T11:47:36","modified_gmt":"2026-04-04T11:47:36","slug":"dca-test","status":"publish","type":"page","link":"https:\/\/3rbinvesting.com\/ar\/dca-test\/","title":{"rendered":"DCA Test"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1632\" class=\"elementor elementor-1632\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d1b49df e-flex e-con-boxed e-con e-parent\" data-id=\"d1b49df\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;ekit_has_onepagescroll_dot&quot;:&quot;yes&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2bb792a elementor-widget elementor-widget-shortcode\" data-id=\"2bb792a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">    <style>\n\n      @import url(\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&display=swap\");\n      .dca-lab-wrap {\n        --dca-accent: #5DC19C;\n        --dca-accent-dark: #2f8d71;\n        --dca-ink: #172033;\n        --dca-muted: #64748b;\n        --dca-line: #d9dee7;\n        --dca-bg: #f3f5f8;\n        max-width: 1240px;\n        margin: 0 auto;\n        padding: 0;\n        font-family: \"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n        color: var(--dca-ink);\n        background: linear-gradient(180deg, #fbfcfd 0%, #f4f7fa 100%);\n        border: 1px solid #dde3ea;\n        border-radius: 26px;\n        overflow: hidden;\n        box-shadow: 0 22px 60px rgba(18, 33, 58, 0.10);\n      }\n      .dca-lab-hero {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        padding: 28px 26px 24px;\n        color: #fff;\n        text-align: center;\n        background:\n          radial-gradient(circle at center, rgba(93,193,156,0.22) 0%, rgba(93,193,156,0.05) 35%, transparent 58%),\n          linear-gradient(90deg, #2d2d2d 0%, #40554d 52%, #21352d 100%);\n      }\n      .dca-lab-hero-side {\n        min-width: 0;\n        width: 100%;\n        display: flex;\n        justify-content: center;\n      }\n      .dca-lab-wrap .dca-lab-hero-kicker {\n        font-size: 0.74rem !important;\n        letter-spacing: 0.22em !important;\n        text-transform: uppercase;\n        color: rgba(255,255,255,0.84) !important;\n        margin-bottom: 8px;\n        font-weight: 800;\n      }\n      .dca-lab-wrap .dca-lab-title {\n        margin: 0 !important;\n        max-width: 900px;\n        width: 100%;\n        text-align: center !important;\n        font-size: clamp(1.55rem, 2.6vw, 2.2rem) !important;\n        font-weight: 800 !important;\n        line-height: 1.2 !important;\n        letter-spacing: -0.02em !important;\n        color: #ffffff !important;\n      }\n      .dca-lab-hero-sub {\n        display: none;\n      }\n      .dca-lab-wrap .dca-lab-hero-center {\n        text-align: center;\n        font-size: clamp(2rem, 3.2vw, 3.2rem) !important;\n        font-weight: 800 !important;\n        letter-spacing: 0.18em !important;\n        text-transform: uppercase;\n        color: #65d7b0 !important;\n        text-shadow: 0 4px 0 rgba(0,0,0,0.34), 0 0 20px rgba(93,193,156,0.16);\n        white-space: nowrap;\n        line-height: 1.05;\n      }\n      .dca-lab-wrap .dca-lab-hero-pill {\n        justify-self: end;\n        display: inline-flex;\n        align-items: center;\n        justify-content: center;\n        min-height: 66px;\n        min-width: 250px;\n        padding: 12px 22px;\n        border-radius: 999px;\n        border: 1px solid rgba(255,255,255,0.42);\n        background: rgba(255,255,255,0.08);\n        color: #ffffff !important;\n        font-weight: 700 !important;\n        font-size: 0.96rem !important;\n        line-height: 1.25;\n        text-align: center;\n        box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);\n      }\n      .dca-lab-hero-note {\n        padding: 11px 26px;\n        background: linear-gradient(180deg, #eef3f2 0%, #e8efec 100%);\n        border-bottom: 1px solid #dbe5df;\n        color: #50667b;\n        font-size: 0.93rem;\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px 22px;\n      }\n      .dca-lab-main {\n        padding: 20px 26px 26px;\n        background: linear-gradient(180deg, rgba(255,255,255,0.90) 0%, rgba(246,248,251,0.96) 100%);\n      }\n      .dca-lab-section-head {\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        gap: 16px;\n        margin-bottom: 18px;\n      }\n      .dca-lab-section-head h3 {\n        margin: 0;\n        font-size: 1.4rem;\n        line-height: 1.1;\n        color: #172033;\n        font-weight: 800;\n      }\n      .dca-lab-section-head p {\n        margin: 8px 0 0;\n        color: #627189;\n        font-size: 0.9rem;\n        font-weight: 600;\n      }\n      .dca-lab-btn {\n        -webkit-appearance: none;\n        appearance: none;\n        border: 1px solid #d0d7e2;\n        background: linear-gradient(180deg, #ffffff 0%, #f3f5f9 100%);\n        color: #172033 !important;\n        border-radius: 999px;\n        padding: 12px 20px;\n        cursor: pointer;\n        font-weight: 700;\n        font-size: 0.98rem;\n        line-height: 1;\n        transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;\n        box-shadow: 0 8px 20px rgba(17, 24, 39, 0.05);\n      }\n      .dca-lab-btn:hover,\n      .dca-lab-btn:focus,\n      .dca-lab-btn:active {\n        transform: translateY(-1px);\n        border-color: #bcc7d6;\n        box-shadow: 0 14px 28px rgba(17, 24, 39, 0.11);\n        color: #172033 !important;\n      }\n      .dca-lab-btn-primary {\n        background: linear-gradient(180deg, #2d2d2d 0%, #1c1c1c 100%);\n        color: #fff !important;\n        border-color: #252525;\n        box-shadow: 0 14px 30px rgba(45, 45, 45, 0.24);\n      }\n      .dca-lab-btn-primary:hover,\n      .dca-lab-btn-primary:focus,\n      .dca-lab-btn-primary:active {\n        border-color: #1c1c1c;\n        box-shadow: 0 16px 32px rgba(45,45,45,0.30);\n        color: #fff !important;\n      }\n      .dca-lab-btn-danger {\n        background: linear-gradient(180deg, #fff5f5 0%, #ffe8e8 100%);\n        border-color: #f3b5b5;\n        color: #b42318;\n      }\n      .dca-lab-btn-danger:hover { border-color: #ea9999; }\n      .dca-lab-draft-box {\n        margin: 0 0 18px;\n        padding: 16px 18px;\n        border: 1px solid #d8e6de;\n        border-radius: 20px;\n        background: linear-gradient(180deg, #ffffff 0%, #f5faf7 100%);\n        box-shadow: 0 10px 24px rgba(17, 24, 39, 0.04);\n      }\n      .dca-lab-draft-box strong {\n        display: inline-block;\n        margin-bottom: 4px;\n        color: #172033;\n        font-size: 1rem;\n      }\n      .dca-lab-draft-status, .dca-lab-status, .dca-lab-price-status {\n        font-size: 0.9rem;\n        color: #5f6f84;\n      }\n      .dca-lab-price-status.ok { color: #157347; font-weight: 700; }\n      .dca-lab-price-status.err { color: #c82333; font-weight: 700; }\n      .dca-lab-ticker-row {\n        display: grid;\n        grid-template-columns: minmax(0, 1.55fr) minmax(300px, 370px);\n        gap: 18px;\n        align-items: stretch;\n        margin: 0 0 18px 0;\n      }\n      .dca-lab-field-card {\n        padding: 18px;\n        border: 1px solid #d9e0ea;\n        border-radius: 22px;\n        background: linear-gradient(180deg, #fbfcfd 0%, #f5f7fa 100%);\n        box-shadow: 0 8px 24px rgba(17, 24, 39, 0.04);\n      }\n      .dca-lab-field-label {\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        gap: 12px;\n        margin-bottom: 12px;\n        font-size: 1rem;\n        font-weight: 800;\n        color: #172033;\n      }\n      .dca-lab-field-label span {\n        font-size: 0.82rem;\n        color: #6a7b91;\n        font-weight: 700;\n      }\n\n      \/* Hide native number input spinners *\/\n      .dca-lab-wrap input[type=\"number\"]::-webkit-outer-spin-button,\n      .dca-lab-wrap input[type=\"number\"]::-webkit-inner-spin-button {\n        -webkit-appearance: none;\n        margin: 0;\n      }\n      .dca-lab-wrap input[type=\"number\"] {\n        -moz-appearance: textfield;\n        appearance: textfield;\n      }\n\n      .dca-lab-ticker-card input[type=\"text\"],\n      .dca-lab-table input,\n      .dca-lab-fee-row input[type=\"number\"],\n      .dca-lab-fee-row select,\n      .dca-lab-item input[type=\"number\"] {\n        width: 100%;\n        padding: 14px 16px;\n        box-sizing: border-box;\n        font-size: 1.12rem;\n        color: #172033;\n        border: 1px solid #cfd8e3;\n        background: #fff;\n        border-radius: 14px;\n        transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;\n      }\n      .dca-lab-ticker-card input[type=\"text\"]::placeholder,\n      .dca-lab-table input::placeholder,\n      .dca-lab-fee-row input::placeholder,\n      .dca-lab-item input::placeholder { color: #9aa6b5; }\n      .dca-lab-ticker-card input[type=\"text\"]:focus,\n      .dca-lab-table input:focus,\n      .dca-lab-fee-row input[type=\"number\"]:focus,\n      .dca-lab-fee-row select:focus,\n      .dca-lab-item input[type=\"number\"]:focus {\n        outline: none;\n        border-color: rgba(93,193,156,0.95);\n        box-shadow: 0 0 0 4px rgba(93,193,156,0.16);\n      }\n      .dca-lab-ticker-actions {\n        min-width: 0;\n        padding: 20px 22px;\n        border: 1px solid #d9e0ea;\n        border-radius: 22px;\n        background: linear-gradient(180deg, #fbfcfd 0%, #f5f7fa 100%);\n        box-shadow: 0 8px 24px rgba(17, 24, 39, 0.04);\n        display: flex;\n        flex-direction: column;\n        justify-content: center;\n        gap: 14px;\n      }\n      .dca-lab-ticker-meta {\n        font-size: 0.78rem;\n        color: #64748b;\n        font-weight: 800;\n        text-transform: uppercase;\n        letter-spacing: 0.10em;\n      }\n      .dca-lab-history-toggle {\n        display: inline-flex;\n        align-items: center;\n        gap: 10px;\n        padding: 12px 20px;\n        border-radius: 999px;\n        background: linear-gradient(180deg, #ffffff 0%, #f4f7fb 100%);\n      }\n      .dca-lab-history-icon {\n        font-size: 1.25rem;\n        line-height: 1;\n      }\n      .dca-lab-history-panel {\n        display: none;\n        margin: 0 0 18px auto;\n        width: min(520px, 100%);\n        border: 1px solid #dbe2ea;\n        border-radius: 22px;\n        background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);\n        box-shadow: 0 20px 48px rgba(17, 24, 39, 0.10);\n        overflow: hidden;\n      }\n      .dca-lab-history-panel.open { display: block; }\n      .dca-lab-history-panel-head {\n        display: flex;\n        justify-content: space-between;\n        gap: 12px;\n        align-items: flex-start;\n        padding: 18px 20px;\n        border-bottom: 1px solid #e5e9f0;\n        background: linear-gradient(180deg, #ffffff 0%, #f7fafb 100%);\n      }\n      .dca-lab-history-close {\n        border: none;\n        background: transparent;\n        cursor: pointer;\n        font-size: 1.1rem;\n        color: #64748b;\n        padding: 6px 8px;\n      }\n      .dca-lab-history-list {\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n        padding: 18px 20px;\n      }\n      .dca-lab-hist-item {\n        display: flex;\n        justify-content: space-between;\n        gap: 14px;\n        align-items: center;\n        border: 1px solid #dde4ed;\n        border-radius: 18px;\n        padding: 14px;\n        background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);\n        box-shadow: 0 10px 22px rgba(17, 24, 39, 0.04);\n      }\n      .dca-lab-hist-main { display: flex; flex-direction: column; gap: 5px; }\n      .dca-lab-hist-title { font-weight: 800; color: #172033; }\n      .dca-lab-hist-meta { font-size: 0.88rem; color: #6b7a90; }\n      .dca-lab-hist-actions { display: flex; gap: 8px; flex-wrap: wrap; }\n      .dca-lab-history-panel-foot { padding: 0 20px 20px; }\n      .dca-lab-table-wrap {\n        overflow-x: auto;\n        margin: 0 0 18px;\n        padding: 10px;\n        border: 1px solid #dce3eb;\n        border-radius: 24px;\n        background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);\n        box-shadow: 0 16px 36px rgba(17, 24, 39, 0.06);\n      }\n      .dca-lab-table {\n        width: 100%;\n        border-collapse: separate;\n        border-spacing: 0;\n      }\n      .dca-lab-table thead th {\n        border: none;\n        border-bottom: 1px solid #e6ebf1;\n        background: transparent;\n        color: #5d6d83;\n        font-size: 0.86rem;\n        font-weight: 800;\n        text-transform: uppercase;\n        letter-spacing: 0.08em;\n        padding: 14px 12px;\n      }\n      .dca-lab-table td {\n        border: none;\n        border-bottom: 1px solid #edf1f5;\n        padding: 14px 12px;\n        color: #172033;\n      }\n      .dca-lab-table tbody tr:last-child td { border-bottom: none; }\n      .dca-lab-table tbody tr:hover td { background: rgba(93,193,156,0.035); }\n      .dca-lab-table td:first-child, .dca-lab-table th:first-child {\n        width: 56px;\n        text-align: center;\n        font-weight: 800;\n        color: #66758b;\n      }\n      .dca-lab-actions {\n        display: flex;\n        gap: 12px;\n        align-items: center;\n        flex-wrap: wrap;\n        margin: 0 0 18px;\n      }\n      .dca-lab-login-notice {\n        font-size: 0.92rem;\n        color: #66758b;\n        margin: 8px 0 0;\n      }\n      .dca-lab-summary {\n        border: 1px solid #dde3ea;\n        padding: 16px;\n        border-radius: 24px;\n        background: linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);\n        box-shadow: 0 18px 38px rgba(17, 24, 39, 0.06);\n      }\n      .dca-lab-grid {\n        display: grid;\n        grid-template-columns: repeat(3, minmax(0, 1fr));\n        gap: 16px;\n      }\n      .dca-lab-item {\n        padding: 18px;\n        border: 1px solid #dde3ea;\n        border-radius: 20px;\n        background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);\n        box-shadow: 0 12px 26px rgba(17, 24, 39, 0.04);\n      }\n      .dca-lab-item-wide { grid-column: span 3; }\n      .dca-lab-item label {\n        display: flex;\n        justify-content: space-between;\n        gap: 10px;\n        font-size: 0.9rem;\n        color: #65758a;\n        margin-bottom: 10px;\n        font-weight: 800;\n        text-transform: uppercase;\n        letter-spacing: 0.05em;\n      }\n      .dca-lab-value {\n        font-size: 1.6rem;\n        font-weight: 800;\n        color: #172033;\n        letter-spacing: -0.02em;\n      }\n      .dca-lab-profit { font-size: 1.92rem; }\n      .dca-lab-fee-row {\n        display: flex;\n        gap: 12px;\n        align-items: center;\n      }\n      .dca-lab-fee-row input[type=\"number\"] {\n        flex: 1 1 auto;\n      }\n      .dca-lab-select-wrap {\n        position: relative;\n        flex: 0 0 190px;\n        min-width: 190px;\n        max-width: 190px;\n      }\n      .dca-lab-select-wrap::after {\n        content: \"\u25bc\";\n        position: absolute;\n        right: 14px;\n        top: 50%;\n        transform: translateY(-50%);\n        font-size: 0.8rem;\n        line-height: 1;\n        color: #5c6d84;\n        pointer-events: none;\n      }\n      .dca-lab-fee-row select {\n        width: 100%;\n        min-width: 0;\n        max-width: none;\n        height: 58px;\n        padding: 14px 34px 14px 14px;\n        font-size: 0.92rem;\n        font-weight: 700;\n        text-align: left;\n        text-align-last: left;\n        color: #172033;\n        border: 1px solid rgba(93,193,156,0.92);\n        border-radius: 18px;\n        box-shadow: 0 0 0 8px rgba(93,193,156,0.14);\n        cursor: pointer;\n        -webkit-appearance: none;\n        appearance: none;\n        background: #ffffff;\n      }\n      .dca-lab-fee-row select:hover,\n      .dca-lab-fee-row select:focus {\n        border-color: rgba(93,193,156,1);\n        box-shadow: 0 0 0 8px rgba(93,193,156,0.16);\n        outline: none;\n      }\n      .dca-lab-fee-row select option {\n        font-size: 0.95rem;\n        color: #172033;\n      }\n      @media (max-width: 1040px) {\n        .dca-lab-hero {\n          padding: 24px 24px;\n        }\n      }\n      @media (max-width: 840px) {\n        .dca-lab-main { padding: 18px; }\n        .dca-lab-section-head {\n          flex-direction: column;\n          align-items: stretch;\n        }\n        .dca-lab-ticker-row {\n          grid-template-columns: 1fr;\n        }\n        .dca-lab-ticker-actions { min-width: 0; }\n        .dca-lab-grid { grid-template-columns: 1fr; }\n        .dca-lab-item-wide { grid-column: span 1; }\n        .dca-lab-fee-row { flex-direction: column; }\n        .dca-lab-select-wrap {\n          width: 100%;\n          min-width: 0;\n          max-width: none;\n          flex: 1 1 auto;\n        }\n        .dca-lab-fee-row select {\n          width: 100%;\n          min-width: 0;\n          max-width: none;\n          flex: 1 1 auto;\n        }\n        .dca-lab-history-toggle { width: 100%; justify-content: center; }\n      }\n      @media (max-width: 640px) {\n        .dca-lab-wrap { border-radius: 20px; }\n        .dca-lab-hero { padding: 22px 18px; }\n        .dca-lab-title { font-size: 1.45rem; }\n        .dca-lab-hero-note { padding: 12px 18px; }\n        .dca-lab-main { padding: 16px; }\n        .dca-lab-hist-item { flex-direction: column; align-items: flex-start; }\n        .dca-lab-actions { flex-direction: column; align-items: stretch; }\n        .dca-lab-actions .dca-lab-btn { width: 100%; }\n      }\n\n    <\/style>\n\n    <div class=\"dca-lab-wrap\" id=\"dca_lab_0d20d88c-2f65-4507-a2f1-3e5ccbe13e35\" data-rest=\"https:\/\/3rbinvesting.com\/ar\/wp-json\/dca-lab\/v1\" data-nonce=\"37307d3e8e\" data-li=\"0\" data-rows=\"5\">\n      <div class=\"dca-lab-hero\">\n        <div class=\"dca-lab-hero-side\">\n                      <h3 class=\"dca-lab-title\">Dollar Cost Average (DCA) Calculator<\/h3>\n                  <\/div>\n      <\/div>\n      <div class=\"dca-lab-hero-note\">\n        <span><strong>Auto-save:<\/strong> current draft only<\/span>\n        <span><strong>Snapshots:<\/strong> save clean history when ready<\/span>\n        <span><strong>History:<\/strong> current ticker only<\/span>\n      <\/div>\n\n      <div class=\"dca-lab-main\">\n        \n        <div class=\"dca-lab-section-head\">\n          <div>\n            <h3>Input Your DCA Plan<\/h3>\n            <p>Premium cards \u2022 live totals \u2022 current-stock history<\/p>\n          <\/div>\n                  <\/div>\n\n        <div class=\"dca-lab-ticker-row\">\n          <div class=\"dca-lab-field-card dca-lab-ticker-card\">\n            <label class=\"dca-lab-field-label\">Ticker <span>(current stock)<\/span><\/label>\n            <input type=\"text\" class=\"tickerInput\" placeholder=\"AAPL\" maxlength=\"12\" autocomplete=\"off\" \/>\n          <\/div>\n          <div class=\"dca-lab-ticker-actions\">\n            <div class=\"dca-lab-ticker-meta\">Current price fetch<\/div>\n            <button type=\"button\" class=\"dca-lab-btn dca-lab-btn-primary getPriceBtn\">\ud83d\udcc8 Get Price<\/button>\n            <span class=\"dca-lab-price-status priceStatus\">Enter a ticker and fetch a fresh price.<\/span>\n          <\/div>\n        <\/div>\n\n        \n      <div class=\"dca-lab-table-wrap\">\n        <table class=\"dca-lab-table\">\n          <thead>\n            <tr><th>#<\/th><th>Quantity<\/th><th>Cost per unit<\/th><th>Total cost<\/th><\/tr>\n          <\/thead>\n          <tbody class=\"dcaBody\"><\/tbody>\n        <\/table>\n      <\/div>\n\n      <div class=\"dca-lab-actions\">\n        <button type=\"button\" class=\"dca-lab-btn addRowBtn\">Add row<\/button>\n        <button type=\"button\" class=\"dca-lab-btn clearBtn\">Clear draft<\/button>\n              <\/div>\n\n              <p class=\"dca-lab-login-notice\">\ud83d\udd12 <a href=\"https:\/\/3rbinvesting.com\/wp-login.php?redirect_to=https%3A%2F%2F3rbinvesting.com%2Far%2Fdca-test%2F\">Log in<\/a> to save your draft and history.<\/p>\n      \n      <div class=\"dca-lab-summary\">\n        <div class=\"dca-lab-grid\">\n          <div class=\"dca-lab-item\"><label>Total Units<\/label><div class=\"dca-lab-value totalUnits\">0<\/div><\/div>\n          <div class=\"dca-lab-item\"><label>Total Invested<\/label><div class=\"dca-lab-value totalCost\">0.00<\/div><\/div>\n          <div class=\"dca-lab-item\"><label>Average Cost<\/label><div class=\"dca-lab-value avgCost\">0.00<\/div><\/div>\n          <div class=\"dca-lab-item\">\n            <label>Fees<\/label>\n            <div class=\"dca-lab-fee-row\">\n              <input type=\"number\" step=\"0.01\" min=\"0\" class=\"feeValue\" placeholder=\"0.00\" \/>\n              <div class=\"dca-lab-select-wrap\">\n                <select class=\"feeType\" aria-label=\"Fee type\"><option value=\"percent\">Percent %<\/option><option value=\"dollar\">Dollar $<\/option><\/select>\n              <\/div>\n            <\/div>\n          <\/div>\n          <div class=\"dca-lab-item\"><label>Break-even Sell Price<\/label><div class=\"dca-lab-value minSell\">0.00<\/div><\/div>\n          <div class=\"dca-lab-item\"><label>Sell Price<\/label><input type=\"number\" step=\"0.0001\" min=\"0\" class=\"sellPrice\" placeholder=\"Enter or use Get Price\" \/><\/div>\n          <div class=\"dca-lab-item\"><label>Total Value at Sell<\/label><div class=\"dca-lab-value totalValue\">0.00<\/div><\/div>\n          <div class=\"dca-lab-item\"><div class=\"dca-lab-value\">&nbsp;<\/div><\/div>\n          <div class=\"dca-lab-item\"><div class=\"dca-lab-value\">&nbsp;<\/div><\/div>\n          <div class=\"dca-lab-item dca-lab-item-wide\"><label>Estimated Profit \/ Loss (after fees)<\/label><div class=\"dca-lab-value dca-lab-profit profit\">0.00<\/div><\/div>\n        <\/div>\n      <\/div>\n\n      <\/div>\n    <\/div>\n\n    <script>\n    (function () {\n      function initLab(el) {\n        if (!el || el.getAttribute('data-lab-init') === '1') return;\n        el.setAttribute('data-lab-init', '1');\n\n        var REST = el.getAttribute('data-rest') || '';\n        var NONCE = el.getAttribute('data-nonce') || '';\n        var LI = el.getAttribute('data-li') === '1';\n        var defaultRows = parseInt(el.getAttribute('data-rows') || '5', 10);\n\n        var body = el.querySelector('.dcaBody');\n        var addRowBtn = el.querySelector('.addRowBtn');\n        var clearBtn = el.querySelector('.clearBtn');\n        var saveBtn = el.querySelector('.saveSessionBtn');\n        var saveStatus = el.querySelector('.saveStatus');\n        var draftStatus = el.querySelector('.draftStatus');\n        var historyList = el.querySelector('.historyList');\n        var historyToggleBtn = el.querySelector('.historyToggleBtn');\n        var historyPanel = el.querySelector('.historyPanel');\n        var historyCloseBtn = el.querySelector('.historyCloseBtn');\n        var historyCurrentLabel = el.querySelector('.historyCurrentLabel');\n        var loadMoreHistoryBtn = el.querySelector('.loadMoreHistoryBtn');\n        var tickerEl = el.querySelector('.tickerInput');\n        var getPriceBtn = el.querySelector('.getPriceBtn');\n        var priceStatus = el.querySelector('.priceStatus');\n        var sellPriceEl = el.querySelector('.sellPrice');\n        var feeValueEl = el.querySelector('.feeValue');\n        var feeTypeEl = el.querySelector('.feeType');\n        var totalUnitsEl = el.querySelector('.totalUnits');\n        var totalCostEl = el.querySelector('.totalCost');\n        var avgCostEl = el.querySelector('.avgCost');\n        var minSellEl = el.querySelector('.minSell');\n        var totalValueEl = el.querySelector('.totalValue');\n        var profitEl = el.querySelector('.profit');\n\n        var sessions = [];\n        var autoSaveTimer = null;\n        var currentDraftSavedAt = '';\n        var lastFetchedSymbol = '';\n        var currentContextTicker = '';\n        var historyVisibleCount = 5;\n\n        function toNumber(v) { var x = parseFloat(v); return isFinite(x) ? x : 0; }\n        function formatMoney(x) { x = isFinite(x) ? x : 0; return x.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 }); }\n        function escHtml(s) { return String(s).replace(\/&\/g, '&amp;').replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;').replace(\/\"\/g, '&quot;'); }\n        function api(url, payload, method, onDone, onFail) {\n          fetch(REST + url, {\n            method: method || 'POST',\n            credentials: 'same-origin',\n            headers: { 'Content-Type': 'application\/json', 'Accept': 'application\/json', 'X-WP-Nonce': NONCE },\n            body: payload ? JSON.stringify(payload) : undefined\n          })\n          .then(function(r){\n            return r.text().then(function(text){\n              var data = {};\n              try {\n                data = text ? JSON.parse(text) : {};\n              } catch (e) {\n                throw new Error(text || ('HTTP ' + r.status));\n              }\n              if (!r.ok && !(data && data.ok === false)) {\n                throw new Error((data && (data.error || data.message)) || ('HTTP ' + r.status));\n              }\n              return data;\n            });\n          })\n          .then(onDone || function(){})\n          .catch(function(err){\n            if (onFail) onFail(err);\n          });\n        }\n        function setSaveStatus(msg) {\n          if (!saveStatus) return;\n          saveStatus.textContent = msg;\n          setTimeout(function(){ saveStatus.textContent = ''; }, 2500);\n        }\n        function setDraftStatus(msg) {\n          if (draftStatus) draftStatus.textContent = msg;\n        }\n        function setPriceStatus(type, msg) {\n          if (!priceStatus) return;\n          priceStatus.classList.remove('ok', 'err');\n          if (type) priceStatus.classList.add(type);\n          priceStatus.textContent = msg || '';\n        }\n        function prettyDate(s) {\n          if (!s) return '\u2014';\n          var d = new Date(String(s).replace(' ', 'T'));\n          if (isNaN(d.getTime())) return s;\n          return d.toLocaleString();\n        }\n        function normalizeTicker(v) {\n          return String(v || '').trim().toUpperCase();\n        }\n        function getSessionTicker(session) {\n          return normalizeTicker(session && (session.ticker || session.stockName || ''));\n        }\n        function hasMeaningfulInputs() {\n          var rows = body.querySelectorAll('tr');\n          for (var i = 0; i < rows.length; i++) {\n            var qtyVal = String(rows[i].querySelector('.qty') ? rows[i].querySelector('.qty').value : '').trim();\n            var cpuVal = String(rows[i].querySelector('.cpu') ? rows[i].querySelector('.cpu').value : '').trim();\n            if (qtyVal || cpuVal) return true;\n          }\n          if (sellPriceEl && String(sellPriceEl.value || '').trim()) return true;\n          if (feeValueEl && String(feeValueEl.value || '').trim()) return true;\n          return false;\n        }\n        function openHistoryPanel() {\n          if (!historyPanel) return;\n          historyPanel.classList.add('open');\n        }\n        function closeHistoryPanel() {\n          if (!historyPanel) return;\n          historyPanel.classList.remove('open');\n        }\n        function getFilteredSessions() {\n          var ticker = normalizeTicker(currentContextTicker);\n          if (!ticker) return [];\n          return sessions.filter(function(session){\n            return getSessionTicker(session) === ticker && !session.hiddenByUser;\n          });\n        }\n\n        function makeRow(index) {\n          var tr = document.createElement('tr');\n          tr.innerHTML = '<td>' + index + '<\/td><td><input type=\"number\" class=\"qty\" min=\"0\" step=\"any\" \/><\/td><td><input type=\"number\" class=\"cpu\" min=\"0\" step=\"0.0001\" \/><\/td><td><span class=\"rowTotal\">0.00<\/span><\/td>';\n          var inputs = tr.querySelectorAll('input');\n          for (var i = 0; i < inputs.length; i++) {\n            inputs[i].addEventListener('input', function(){ recalc(); scheduleDraftSave(); });\n          }\n          return tr;\n        }\n\n        function recalc() {\n  var units = 0, cost = 0, buyOrders = 0;\n  var rows = body.querySelectorAll('tr');\n\n  for (var i = 0; i < rows.length; i++) {\n    var tr = rows[i];\n\n    var qtyInput = tr.querySelector('.qty');\n    var cpuInput = tr.querySelector('.cpu');\n\n    var qtyRaw = qtyInput ? String(qtyInput.value || '').trim() : '';\n    var cpuRaw = cpuInput ? String(cpuInput.value || '').trim() : '';\n\n    if (qtyRaw === '' && cpuRaw === '') {\n      var emptyRtEl = tr.querySelector('.rowTotal');\n      if (emptyRtEl) emptyRtEl.textContent = '0.00';\n      continue;\n    }\n\n    var qty = toNumber(qtyRaw);\n    var cpu = toNumber(cpuRaw);\n    var rt = qty * cpu;\n\n    var rtEl = tr.querySelector('.rowTotal');\n    if (rtEl) rtEl.textContent = formatMoney(rt);\n\n    if (qty > 0 && cpu > 0) {\n      buyOrders += 1;\n      units += qty;\n      cost += rt;\n    }\n  }\n\n  var feeValue = toNumber(feeValueEl ? feeValueEl.value : 0);\n  var feeType = feeTypeEl ? feeTypeEl.value : 'percent';\n  var pct = feeType === 'percent' ? Math.max(0, feeValue \/ 100) : 0;\n  var fixed = feeType === 'dollar' ? Math.max(0, feeValue) : 0;\n\n  var avg = 0;\n  var breakEven = 0;\n\n  if (units > 0) {\n    if (feeType === 'percent') {\n      var buyCostAfterFees = cost * (1 + pct);\n      var sellMultiplier = Math.max(0.0000001, 1 - pct);\n\n      avg = buyCostAfterFees \/ units;\n      breakEven = buyCostAfterFees \/ (units * sellMultiplier);\n    } else {\n      \/\/ Fixed $ fee per order: each buy row + 1 final sell\n      var buyFeesTotal = buyOrders * fixed;\n      var sellFeeTotal = fixed;\n      var buyCostAfterFees = cost + buyFeesTotal;\n\n      avg = buyCostAfterFees \/ units;\n      breakEven = (buyCostAfterFees + sellFeeTotal) \/ units;\n    }\n  }\n\n  totalUnitsEl.textContent = units.toLocaleString();\n  totalCostEl.textContent = formatMoney(cost);\n  avgCostEl.textContent = formatMoney(avg);\n  minSellEl.textContent = formatMoney(breakEven);\n\n  var sellStr = String(sellPriceEl && sellPriceEl.value ? sellPriceEl.value : '').trim();\n  var sell = toNumber(sellStr);\n\n  if (!sellStr || sell <= 0) {\n    totalValueEl.textContent = '0.00';\n    profitEl.textContent = '0.00';\n    profitEl.style.color = '';\n    return;\n  }\n\n  var totalSell = sell * units;\n  var profit = 0;\n\n  if (feeType === 'percent') {\n    var buyCostAfterFees = cost * (1 + pct);\n    var netSell = totalSell * (1 - pct);\n    profit = netSell - buyCostAfterFees;\n  } else {\n    var buyFeesTotal = buyOrders * fixed;\n    var sellFeeTotal = fixed;\n    var buyCostAfterFees = cost + buyFeesTotal;\n    var netSell = totalSell - sellFeeTotal;\n    profit = netSell - buyCostAfterFees;\n  }\n\n  totalValueEl.textContent = formatMoney(totalSell);\n  profitEl.textContent = formatMoney(profit);\n  profitEl.style.color = profit > 0 ? '#1e7e34' : profit < 0 ? '#c82333' : '';\n}\n\n        function getState() {\n          var rowData = [];\n          var trs = body.querySelectorAll('tr');\n          for (var i = 0; i < trs.length; i++) {\n            var q = trs[i].querySelector('.qty');\n            var c = trs[i].querySelector('.cpu');\n            rowData.push({ qty: q ? q.value : '', cpu: c ? c.value : '' });\n          }\n          return {\n            ticker: tickerEl ? tickerEl.value.toUpperCase() : '',\n            rows: rowData,\n            sellPrice: sellPriceEl ? sellPriceEl.value : '',\n            feeValue: feeValueEl ? feeValueEl.value : '',\n            feeType: feeTypeEl ? feeTypeEl.value : 'percent'\n          };\n        }\n\n        function applyState(state) {\n          state = state || {};\n          var nextTicker = normalizeTicker(state.ticker || state.stockName || '');\n          if (tickerEl) tickerEl.value = nextTicker;\n          if (sellPriceEl) sellPriceEl.value = state.sellPrice || '';\n          if (feeValueEl) feeValueEl.value = state.feeValue || '';\n          if (feeTypeEl) feeTypeEl.value = state.feeType || 'percent';\n          lastFetchedSymbol = nextTicker;\n          currentContextTicker = nextTicker;\n          historyVisibleCount = 5;\n          body.innerHTML = '';\n          var savedRows = Array.isArray(state.rows) ? state.rows : [];\n          var count = Math.max(savedRows.length, defaultRows);\n          for (var i = 0; i < count; i++) {\n            var tr = makeRow(i + 1);\n            if (savedRows[i]) {\n              var qEl = tr.querySelector('.qty');\n              var cEl = tr.querySelector('.cpu');\n              if (qEl) qEl.value = savedRows[i].qty || '';\n              if (cEl) cEl.value = savedRows[i].cpu || '';\n            }\n            body.appendChild(tr);\n          }\n          recalc();\n          renderHistory();\n        }\n\n        function resetDraft() {\n          applyState({ rows: [], ticker: '', sellPrice: '', feeValue: '', feeType: 'percent' });\n          currentDraftSavedAt = '';\n          lastFetchedSymbol = '';\n          currentContextTicker = '';\n          historyVisibleCount = 5;\n          setPriceStatus('', '');\n          setDraftStatus('Draft cleared.');\n          renderHistory();\n        }\n\n        function resetInputsForFetchedTicker(symbol) {\n          applyState({ ticker: symbol, rows: [], sellPrice: '', feeValue: '', feeType: 'percent' });\n          setPriceStatus('', '');\n        }\n\n        function clearStaleFetchedPrice() {\n          if (sellPriceEl && sellPriceEl.value) {\n            sellPriceEl.value = '';\n          }\n          setPriceStatus('', '');\n          recalc();\n        }\n\n        function saveCurrentNow() {\n          if (!LI) return;\n          clearTimeout(autoSaveTimer);\n          api('\/save-current', { current: getState() }, 'POST', function(res){\n            currentDraftSavedAt = res && res.current_updated_at ? res.current_updated_at : currentDraftSavedAt;\n            setDraftStatus('Auto-saved draft: ' + prettyDate(currentDraftSavedAt));\n          }, function(){\n            setDraftStatus('Draft save failed.');\n          });\n        }\n\n        function renderHistory() {\n          if (!historyList) return;\n          historyList.innerHTML = '';\n\n          var ticker = normalizeTicker(currentContextTicker);\n          if (historyCurrentLabel) {\n            historyCurrentLabel.textContent = ticker ? ('Current stock: ' + ticker) : 'Open a stock first.';\n          }\n\n          if (!ticker) {\n            historyList.innerHTML = '<div class=\"dca-lab-hist-meta\">Fetch or load a stock to see its history.<\/div>';\n            if (loadMoreHistoryBtn) loadMoreHistoryBtn.style.display = 'none';\n            return;\n          }\n\n          var filtered = getFilteredSessions();\n          if (!filtered.length) {\n            historyList.innerHTML = '<div class=\"dca-lab-hist-meta\">No saved snapshots for ' + escHtml(ticker) + ' yet.<\/div>';\n            if (loadMoreHistoryBtn) loadMoreHistoryBtn.style.display = 'none';\n            return;\n          }\n\n          var visible = filtered.slice(0, historyVisibleCount);\n          for (var i = 0; i < visible.length; i++) {\n            (function(session){\n              var item = document.createElement('div');\n              item.className = 'dca-lab-hist-item';\n              item.innerHTML = '' +\n                '<div class=\"dca-lab-hist-main\">' +\n                  '<div class=\"dca-lab-hist-title\">' + escHtml(ticker) + '<\/div>' +\n                  '<div class=\"dca-lab-hist-meta\">Saved: ' + escHtml(prettyDate(session.savedAt || '')) + '<\/div>' +\n                '<\/div>' +\n                '<div class=\"dca-lab-hist-actions\">' +\n                  '<button type=\"button\" class=\"dca-lab-btn loadBtn\">Load<\/button>' +\n                  '<button type=\"button\" class=\"dca-lab-btn dca-lab-btn-danger delBtn\">Delete<\/button>' +\n                '<\/div>';\n              item.querySelector('.loadBtn').addEventListener('click', function(){\n                applyState(session);\n                scheduleDraftSave();\n                closeHistoryPanel();\n              });\n              item.querySelector('.delBtn').addEventListener('click', function(){\n                sessions = sessions.map(function(s){\n                  if ((s.id || '') === (session.id || '')) {\n                    s.hiddenByUser = 1;\n                    s.hiddenByUserAt = new Date().toISOString();\n                  }\n                  return s;\n                });\n                renderHistory();\n                api('\/delete-session', { session_id: session.id }, 'POST', function(){ setSaveStatus('Hidden from history \u2713'); });\n              });\n              historyList.appendChild(item);\n            })(visible[i]);\n          }\n\n          if (loadMoreHistoryBtn) {\n            loadMoreHistoryBtn.style.display = filtered.length > historyVisibleCount ? '' : 'none';\n          }\n        }\n\n        function scheduleDraftSave() {\n          if (!LI) return;\n          clearTimeout(autoSaveTimer);\n          autoSaveTimer = setTimeout(function(){\n            api('\/save-current', { current: getState() }, 'POST', function(res){\n              currentDraftSavedAt = res && res.current_updated_at ? res.current_updated_at : currentDraftSavedAt;\n              setDraftStatus('Auto-saved draft: ' + prettyDate(currentDraftSavedAt));\n            }, function(){\n              setDraftStatus('Draft save failed.');\n            });\n          }, 3000);\n        }\n\n        function saveSnapshot() {\n          var state = getState();\n          if (!state.ticker) {\n            setSaveStatus('Ticker required');\n            return;\n          }\n          currentContextTicker = normalizeTicker(state.ticker);\n          historyVisibleCount = 5;\n          api('\/save-session', { session: state }, 'POST', function(res){\n            if (res && res.ok && res.session) {\n              sessions.unshift(res.session);\n              currentDraftSavedAt = res.current_updated_at || currentDraftSavedAt;\n              renderHistory();\n              setDraftStatus('Auto-saved draft: ' + prettyDate(currentDraftSavedAt));\n              setSaveStatus('Saved snapshot \u2713');\n            }\n          }, function(err){\n            setSaveStatus(err && err.message ? err.message : 'Save failed');\n          });\n        }\n\n        function runGetPrice() {\n          var symbol = tickerEl ? normalizeTicker(tickerEl.value) : '';\n          if (!symbol) {\n            setPriceStatus('err', 'Enter a ticker first.');\n            return;\n          }\n\n          var previousTicker = normalizeTicker(currentContextTicker || lastFetchedSymbol || '');\n          var hadInputsBeforeFetch = hasMeaningfulInputs();\n\n          getPriceBtn.disabled = true;\n          getPriceBtn.textContent = 'Loading\u2026';\n          setPriceStatus('', '');\n\n          api('\/price', { symbol: symbol }, 'POST', function(res){\n            if (res && res.ok && res.price) {\n              var fetchedSymbol = normalizeTicker(res.symbol || symbol);\n              var isDifferentTicker = !!(previousTicker && fetchedSymbol && fetchedSymbol !== previousTicker);\n              var shouldClearAllInputs = isDifferentTicker || (!previousTicker && hadInputsBeforeFetch);\n\n              if (shouldClearAllInputs) {\n                resetInputsForFetchedTicker(fetchedSymbol);\n              } else if (tickerEl) {\n                tickerEl.value = fetchedSymbol;\n              }\n\n              if (sellPriceEl) {\n                sellPriceEl.value = parseFloat(res.price).toFixed(4).replace(\/\\.?0+$\/, '');\n              }\n\n              lastFetchedSymbol = fetchedSymbol;\n              currentContextTicker = fetchedSymbol;\n              historyVisibleCount = 5;\n              setPriceStatus('ok', '\u2713 ' + fetchedSymbol + ' \u2014 $' + parseFloat(res.price).toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 4 }));\n              recalc();\n              renderHistory();\n              closeHistoryPanel();\n              saveCurrentNow();\n            } else {\n              setPriceStatus('err', res && res.error ? res.error : 'Could not fetch price.');\n            }\n            getPriceBtn.disabled = false;\n            getPriceBtn.textContent = '\ud83d\udcc8 Get Price';\n          }, function(err){\n            setPriceStatus('err', err && err.message ? err.message : 'Network error. Please try again.');\n            getPriceBtn.disabled = false;\n            getPriceBtn.textContent = '\ud83d\udcc8 Get Price';\n          });\n        }\n\n        addRowBtn.addEventListener('click', function(){ body.appendChild(makeRow(body.children.length + 1)); recalc(); scheduleDraftSave(); });\n        clearBtn.addEventListener('click', function(){ resetDraft(); scheduleDraftSave(); });\n        if (saveBtn) saveBtn.addEventListener('click', saveSnapshot);\n        if (getPriceBtn) getPriceBtn.addEventListener('click', runGetPrice);\n        if (tickerEl) {\n          tickerEl.addEventListener('input', function(){\n            var nextTicker = normalizeTicker(tickerEl.value);\n            if (tickerEl.value !== nextTicker) tickerEl.value = nextTicker;\n            if (lastFetchedSymbol && nextTicker !== lastFetchedSymbol) clearStaleFetchedPrice();\n            else setPriceStatus('', '');\n            scheduleDraftSave();\n          });\n          tickerEl.addEventListener('keydown', function(e){ if (e.key === 'Enter') { e.preventDefault(); runGetPrice(); } });\n        }\n        if (sellPriceEl) sellPriceEl.addEventListener('input', function(){ recalc(); scheduleDraftSave(); });\n        if (feeValueEl) feeValueEl.addEventListener('input', function(){ recalc(); scheduleDraftSave(); });\n        if (feeTypeEl) feeTypeEl.addEventListener('change', function(){ recalc(); scheduleDraftSave(); });\n        if (historyToggleBtn) historyToggleBtn.addEventListener('click', function(){ renderHistory(); openHistoryPanel(); });\n        if (historyCloseBtn) historyCloseBtn.addEventListener('click', closeHistoryPanel);\n        if (loadMoreHistoryBtn) loadMoreHistoryBtn.addEventListener('click', function(){ historyVisibleCount += 5; renderHistory(); });\n\n        function bootEmpty() {\n          applyState({ rows: [] });\n          setDraftStatus(LI ? 'Draft not saved yet.' : '');\n          closeHistoryPanel();\n          renderHistory();\n        }\n\n        if (LI) {\n          fetch(REST + '\/load', { credentials: 'same-origin', headers: { 'Accept': 'application\/json', 'X-WP-Nonce': NONCE } })\n            .then(function(r){\n              return r.text().then(function(text){\n                if (!r.ok) throw new Error(text || ('HTTP ' + r.status));\n                return text ? JSON.parse(text) : {};\n              });\n            })\n            .then(function(res){\n              if (res && res.ok && res.data) {\n                sessions = Array.isArray(res.data.sessions) ? res.data.sessions : [];\n                currentDraftSavedAt = res.data.current_updated_at || '';\n                if (res.data.current) applyState(res.data.current);\n                else applyState({ rows: [] });\n                setDraftStatus(currentDraftSavedAt ? 'Auto-saved draft: ' + prettyDate(currentDraftSavedAt) : 'Draft not saved yet.');\n                renderHistory();\n              } else {\n                bootEmpty();\n              }\n            })\n            .catch(function(){ bootEmpty(); });\n        } else {\n          bootEmpty();\n        }\n      }\n\n      function boot() {\n        var els = document.querySelectorAll('.dca-lab-wrap[data-rest]');\n        for (var i = 0; i < els.length; i++) initLab(els[i]);\n      }\n      if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', boot);\n      else boot();\n      window.addEventListener('load', boot);\n      setTimeout(boot, 300);\n    })();\n    <\/script>\n    <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":16,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1632","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/pages\/1632","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/comments?post=1632"}],"version-history":[{"count":3,"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/pages\/1632\/revisions"}],"predecessor-version":[{"id":1635,"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/pages\/1632\/revisions\/1635"}],"wp:attachment":[{"href":"https:\/\/3rbinvesting.com\/ar\/wp-json\/wp\/v2\/media?parent=1632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}