/* ==========================================================================
 * 捐款內容頁 版型調整層 (charity/item)
 * --------------------------------------------------------------------------
 * 建立日期：2026-08-04
 *
 * 規則：
 *   1. 本檔案不修改任何既有 CSS，只以「後載入 + 作用域」方式堆疊覆寫。
 *   2. 載入順序必須排在 style_default.css / placeholder.css 之後。
 *   3. 所有規則一律掛在 .charity-item-v2 之下（body 上的作用域 class），
 *      靠選擇器層級自然勝出，避免使用 !important。
 *   4. 尺寸、顏色、間距一律走 CSS 變數；變數會沿 DOM 繼承，
 *      子區塊只要重新宣告變數即可局部微調，不必再寫一組規則。
 * ========================================================================== */
:root{--ci-navbar-height:60px}.charity-item-v2{--ci-color-primary:#1f3c88;--ci-color-text:#333;--ci-color-muted:#888;--ci-color-border:#ddd;--ci-color-bg-soft:#f7f8fa;--ci-color-accent:#e8534f;--ci-space-xs:4px;--ci-space-sm:8px;--ci-space-md:16px;--ci-space-lg:24px;--ci-space-xl:40px;--ci-block-gap:var(--ci-space-lg);--ci-block-radius:6px;--ci-block-padding:var(--ci-space-md);--ci-title-size:2.5rem;--ci-title-color:var(--ci-color-primary);--ci-title-border:1px solid var(--ci-color-border);--ci-currency-gap:6px;--ci-field-gap:var(--ci-space-md);--ci-label-size:1.4rem;--ci-input-radius:4px;--ci-input-border:#ccc;--ci-required-color:#d9534f;--ci-error-color:#d9534f;--ci-error-glow:rgba(217,83,79,0.18);--ci-error-text-size:1.2rem;--ci-navbar-menu-gap:var(--ci-space-xs);--ci-navbar-link-color:#444;--ci-navbar-link-hover:var(--ci-color-primary);--ci-navbar-divider-color:#999;--ci-nav-shadow-color:rgba(0,0,0,0.15);--ci-nav-border-color:#c9c9c9}.charity-item-v2 .langmenu{display:flex;align-items:center;height:var(--ci-navbar-height);margin-top:0;margin-bottom:0}.charity-item-v2 .langmenu > ul{display:flex;align-items:center;margin:0}.charity-item-v2 .langmenu > ul > li{display:flex;align-items:center;line-height:1}.charity-item-v2 .langmenu > ul > li > a,.charity-item-v2 .langmenu > ul > li > spa{display:inline-flex;align-items:center;gap:var(--ci-navbar-menu-gap);line-height:1}.charity-item-v2 .langmenu .fa{line-height:1;vertical-align:middle}.charity-item-v2 .langmenu a{color:var(--ci-navbar-link-color)}.charity-item-v2 .langmenu a:hover,.charity-item-v2 .langmenu a:focus{color:var(--ci-navbar-link-hover)}.charity-item-v2 .langmenu > ul > li > spa{color:var(--ci-navbar-divider-color)}.charity-item-v2 .langmenu .dropdown-menu{top:100%;line-height:normal}.charity-item-v2 .langmenu .dropdown-menu > li{display:block}.charity-item-v2 .proTitle{margin-top:var(--ci-space-xl);margin-bottom:var(--ci-block-gap);padding-bottom:var(--ci-space-sm);border-bottom:var(--ci-title-border)}.charity-item-v2 .proTitle h3{font-size:var(--ci-title-size);color:var(--ci-title-color)}.charity-item-v2 #tax{--ci-title-size:2rem}.charity-item-v2 .donorData{--ci-field-gap:var(--ci-space-sm)}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--ci-navbar-height) + 20px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.charity-item-v2 #buyerForm input[type="text"],.charity-item-v2 #buyerForm input[type="tel"],.charity-item-v2 #buyerForm input[type="email"],.charity-item-v2 #buyerForm input[type="number"],.charity-item-v2 #buyerForm input[type="date"],.charity-item-v2 #buyerForm select,.charity-item-v2 #buyerForm textarea,.charity-item-v2 .productlist_main input[type="text"],.charity-item-v2 .productlist_main input[type="number"],.charity-item-v2 .column_place_holder,.charity-item-v2 .charityData,.charity-item-v2 .free-input,.charity-item-v2 .form-control,.charity-item-v2 .select2-container--default .select2-selection--single{border-radius:var(--ci-input-radius)!important}.charity-item-v2 .minusplus_input > input{border-radius:0!important}.charity-item-v2 .sbs .input-group{height:auto}.charity-item-v2 .ci-input-joined{display:flex;align-items:flex-start;flex-wrap:wrap}.charity-item-v2 .ci-joined-controls{display:flex;align-items:flex-start;border-radius:var(--ci-input-radius)}.charity-item-v2 .ci-joined-controls > .input-group{margin:0}.charity-item-v2 .ci-joined-controls > .input-group:first-child{margin-right:-1px}.charity-item-v2 #buyerForm .ci-joined-controls > .input-group:first-child select,.charity-item-v2 #buyerForm .ci-joined-controls > .input-group:first-child input{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.charity-item-v2 #buyerForm .ci-joined-controls > .input-group:last-child select,.charity-item-v2 #buyerForm .ci-joined-controls > .input-group:last-child input{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.charity-item-v2 .ci-joined-controls > .input-group select:focus,.charity-item-v2 .ci-joined-controls > .input-group input:focus{position:relative;z-index:2}.charity-item-v2 .ci-joined-controls.has-error{box-shadow:0 0 0 3px var(--ci-error-glow)!important}.charity-item-v2 #buyerForm .ci-joined-controls.has-error select,.charity-item-v2 #buyerForm .ci-joined-controls.has-error input{border-color:var(--ci-error-color);box-shadow:none!important}.charity-item-v2 .ci-input-joined > .help-block.ci-error,.charity-item-v2 .ci-input-joined > .ci-error-slot{flex:0 0 100%;margin-top:var(--ci-space-xs);margin-left:0}.charity-item-v2 .column_place_holder[required] + label[placeholder]::after,.charity-item-v2 .column_place_holder[required] + span + label[placeholder]::after{content:"*";display:inline-block;margin-left:-11px;color:var(--ci-required-color);font-weight:bold;line-height:1;pointer-events:none;-webkit-transform:translate(0,-18px) scale(0.9,0.9);-ms-transform:translate(0,-18px) scale(0.9,0.9);transform:translate(0,-18px) scale(0.9,0.9)}.charity-item-v2 .ci-label{display:block;margin-bottom:var(--ci-space-xs);font-size:var(--ci-label-size);font-weight:bold;color:var(--ci-color-text)}.charity-item-v2 .ci-required::after{content:"*";margin-left:var(--ci-space-xs);color:var(--ci-required-color);font-weight:bold}.charity-item-v2 .ci-amount-field{margin-bottom:var(--ci-space-sm)}.charity-item-v2 .ci-amount-field .free-input{width:100%;height:40px;padding:6px 10px;color:#555;background-color:#fff;border:1px solid var(--ci-input-border);border-radius:var(--ci-input-radius)}.charity-item-v2 .ci-amount-field .free-input:focus{border-color:#00bafa;outline:none}.charity-item-v2 .ci-invalid,.charity-item-v2 .has-error .column_place_holder,.charity-item-v2 .has-error .free-input,.charity-item-v2 .has-error .charityData,.charity-item-v2 .has-error .form-control{border-color:var(--ci-error-color);box-shadow:0 0 0 3px var(--ci-error-glow)!important}.charity-item-v2 .has-error .column_place_holder + label[placeholder]::before{color:var(--ci-error-color)}.charity-item-v2 .help-block.ci-error,.charity-item-v2 .ci-error-slot{display:block;margin-top:var(--ci-space-xs);margin-bottom:0;font-size:var(--ci-error-text-size);font-weight:normal;line-height:1.5;color:var(--ci-error-color)}.charity-item-v2 .help-block.ci-error:not(:empty)::before,.charity-item-v2 .ci-error-slot:not(:empty)::before{content:"\f06a";font-family:FontAwesome;margin-right:var(--ci-space-xs)}.charity-item-v2 .help-block.ci-error:empty,.charity-item-v2 .ci-error-slot:empty{display:none!important}.charity-item-v2 #buyerForm #profile #tab_x{display:flex;flex-wrap:wrap}.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset),.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset) > .row{display:contents}.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset)::before,.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset)::after,.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset) > .row::before,.charity-item-v2 #buyerForm #profile #tab_x > .col-md-12:not(.address_reset) > .row::after{display:none}.charity-item-v2 #buyerForm #profile #tab_x > .address_reset{flex:0 0 100%;max-width:100%}.charity-item-v2 #buyerForm #profile .form-group.sbs:not(.ci-input-joined){display:flex;align-items:flex-start;column-gap:var(--ci-space-sm)}.charity-item-v2 #buyerForm #profile .form-group > .input-group{width:100%;min-width:0}.charity-item-v2 #buyerForm #profile .form-group.sbs:not(.ci-input-joined) > .input-group{flex:1 1 0;min-width:0}.charity-item-v2 #buyerForm #profile .input-group > .column_place_holder,.charity-item-v2 #buyerForm #profile .input-group > select,.charity-item-v2 #buyerForm #profile .input-group > input{width:100%}.charity-item-v2 #buyerForm #profile .ci-joined-controls{width:100%}.charity-item-v2 #buyerForm #profile .ci-joined-controls > .input-group:first-child{flex:0 0 auto;width:auto}.charity-item-v2 #buyerForm #profile .ci-joined-controls > .input-group:first-child > select{width:auto}.charity-item-v2 #buyerForm #profile .ci-joined-controls > .input-group:last-child{flex:1 1 auto;min-width:0}.charity-item-v2 #buyerForm #profile .ci-birthday-col{flex:0 0 100%;width:100%;max-width:100%}.charity-item-v2 #buyerForm #profile .form-group.sbs.ci-birthday-field{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;column-gap:var(--ci-space-lg);row-gap:var(--ci-space-sm)}.charity-item-v2 #buyerForm #profile .form-group.sbs.ci-birthday-field > .input-group{width:auto;flex:0 0 auto}.charity-item-v2 #buyerForm #profile .form-group.sbs.ci-birthday-field > box{width:auto;flex:1 1 auto}.charity-item-v2 #buyerForm #profile #all_birthday_box .input-group{width:auto;margin-right:var(--ci-space-lg);margin-top:var(--ci-space-md);vertical-align:bottom}.charity-item-v2 #buyerForm #profile #all_birthday_box .input-group > select,.charity-item-v2 #buyerForm #profile #all_birthday_box .input-group > input{width:auto}.charity-item-v2 #buyerForm #profile #all_birthday_box .input-group > input{margin-right:var(--ci-space-xs)!important}.charity-item-v2 #buyerForm #profile #all_birthday_box .input-group[name="leap_month_box"]{margin-right:0}.charity-item-v2 #buyerForm #profile .form-group.d-flex{position:relative}.charity-item-v2 #buyerForm #profile .form-group.d-flex > .text-info{position:absolute;top:0;right:0;height:34px;display:flex;align-items:center;padding-right:10px;z-index:3;cursor:help}.charity-item-v2 #buyerForm #profile #query_code{padding-right:32px}.charity-item-v2 #buyerForm #profile .form-group.receiver_address_inlines{display:flex;flex-wrap:wrap;align-items:stretch;column-gap:var(--ci-space-sm);row-gap:var(--ci-space-sm);margin-top:var(--ci-space-md)}.charity-item-v2 #buyerForm #profile .form-group.receiver_address_inlines > .areaSelect{flex:0 0 auto;width:auto;margin-bottom:0}.charity-item-v2 #buyerForm #profile .form-group.receiver_address_inlines > .input-group:not(.areaSelect){flex:1 1 220px;width:auto;min-width:0}.charity-item-v2 #buyerForm #profile .form-group.receiver_address_inlines > .help-block.ci-error,.charity-item-v2 #buyerForm #profile .form-group.receiver_address_inlines > .ci-error-slot{flex:0 0 100%;margin-top:var(--ci-space-xs);margin-left:0}.charity-item-v2 #buyerForm #profile .receiver_address_inlines .addressGroup{display:flex;align-items:stretch;column-gap:0}.charity-item-v2 #buyerForm #profile .receiver_address_inlines .addressGroup > div{flex:0 0 auto}.charity-item-v2 #buyerForm #profile .receiver_address_inlines .addressGroup > div + div{margin-left:-1px}.charity-item-v2 #buyerForm #profile .addressGroup > [data-role="zipcode"] > input{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.charity-item-v2 #buyerForm #profile .addressGroup > [data-role="county"] > select{border-radius:0!important}.charity-item-v2 #buyerForm #profile .addressGroup > [data-role="district"] > select{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.charity-item-v2 #buyerForm #profile .addressGroup input:focus,.charity-item-v2 #buyerForm #profile .addressGroup select:focus{position:relative;z-index:2}.charity-item-v2 #buyerForm #profile .receiver_address_inlines > .areaSelect,.charity-item-v2 #buyerForm #profile .receiver_address_inlines > .input-group:not(.areaSelect),.charity-item-v2 #buyerForm #profile .receiver_address_inlines .addressGroup > div{display:flex;align-items:stretch;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0}.charity-item-v2 #buyerForm #profile .receiver_address_inlines input,.charity-item-v2 #buyerForm #profile .receiver_address_inlines select{height:34px;box-sizing:border-box;margin-top:0;margin-bottom:0;vertical-align:top}.charity-item-v2 #buyerForm #profile .receiver_address_inlines > .input-group:not(.areaSelect) > input{flex:1 1 auto;min-width:0}.charity-item-v2 #buyerForm #profile .form-group{flex-wrap:wrap}.charity-item-v2 #buyerForm #profile .form-group > .help-block.ci-error,.charity-item-v2 #buyerForm #profile .form-group > .ci-error-slot{flex:0 0 100%;order:99;margin-top:var(--ci-space-xs);margin-left:0}@media (min-width:1200px){.charity-item-v2 #buyerForm #profile .col-lg-4{width:25%}.charity-item-v2 #buyerForm #profile .col-lg-4 .input-group,.charity-item-v2 #buyerForm #profile .col-lg-4 .ci-joined-controls{max-width:100%}}.charity-item-v2 .productlist_main .input-group{padding:20px}.charity-item-v2 .charity_subtotal > span,.charity-item-v2 .charity_price > span,.charity-item-v2 .price > span{margin-left:var(--ci-currency-gap)}@media (min-width:1200px){.charity-item-v2 .container{width:970px}}.charity-item-v2 .navbar-fixed-top{box-shadow:0 2px 8px var(--ci-nav-shadow-color);border-bottom:1px solid var(--ci-nav-border-color)}.charity-item-v2 .navbar-fixed-bottom{box-shadow:0 -2px 8px var(--ci-nav-shadow-color);border-top:1px solid var(--ci-nav-border-color)}.charity-item-v2 .ci-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1040;background-color:rgba(0,0,0,0.55);padding:var(--ci-space-lg)}.charity-item-v2 .ci-overlay[hidden]{display:none}.charity-item-v2 .ci-overlay__panel{text-align:center;color:#fff;max-width:320px}.charity-item-v2 .ci-overlay__spinner{width:48px;height:48px;margin:0 auto var(--ci-space-md);border:4px solid rgba(255,255,255,0.25);border-top-color:#fff;border-radius:50%;animation:ci-spin 0.9s linear infinite}@keyframes ci-spin{to{transform:rotate(360deg)}}.charity-item-v2 .ci-overlay__text{margin:0 0 var(--ci-space-xs);font-size:1.6rem;font-weight:bold;line-height:1.6}.charity-item-v2 .ci-overlay__hint{margin:0;font-size:1.3rem;color:rgba(255,255,255,0.75)}@media (prefers-reduced-motion:reduce){.charity-item-v2 .ci-overlay__spinner{animation:none}}@media (max-width:767px){.charity-item-v2{--ci-space-xl:24px;--ci-block-gap:var(--ci-space-md);--ci-title-size:2rem}}