.dct-overlay{position:fixed;inset:0;z-index:10080;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(20,24,31,.56);backdrop-filter:blur(2px)}
.dct-overlay.show{display:flex}.dct-modal-open{overflow:hidden}.dct-dialog{width:min(620px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 24px 70px rgba(16,24,40,.22)}
.dct-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px 16px;border-bottom:1px solid #edf0f3}.dct-dialog-head h3{margin:0;color:#17191c;font-size:21px;letter-spacing:0}.dct-dialog-head p{margin:5px 0 0;color:#707780;font-size:13px}.dct-icon-btn,.dct-refresh-btn,.dct-copy-btn{display:inline-grid;place-items:center;border:0;background:transparent;color:#555d67;cursor:pointer}.dct-icon-btn{width:36px;height:36px;font-size:18px}.dct-balance-row{display:flex;align-items:center;gap:18px;padding:12px 24px;background:#f8f9fb;border-bottom:1px solid #edf0f3;color:#616973;font-size:13px}.dct-balance-row strong{margin-left:4px;color:#17191c}.dct-refresh-btn{width:30px;height:30px;margin-left:auto}.dct-modal-body{padding:20px 24px 24px}.dct-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dct-product{position:relative;min-height:108px;padding:16px;text-align:left;border:1px solid #dfe3e8;border-radius:7px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.dct-product:hover{border-color:#ff6b35;box-shadow:0 4px 14px rgba(255,107,53,.1)}.dct-product:disabled{opacity:.55;cursor:wait}.dct-product-qty{display:block;color:#454c55;font-size:14px}.dct-product strong{display:block;margin-top:8px;color:#17191c;font-size:21px}.dct-product small{display:block;margin-top:3px;color:#7a828c}.dct-product-tag{position:absolute;top:12px;right:12px;padding:3px 7px;border-radius:4px;background:#fff2ec;color:#df4f1c;font-size:11px;font-weight:700}.dct-purchase-form{display:grid;gap:8px;margin-top:18px}.dct-purchase-form>label:first-child{font-size:13px;font-weight:700;color:#343a42}.dct-purchase-form>input{height:42px;padding:0 12px;border:1px solid #d8dde3;border-radius:6px;font:inherit}.dct-policy-check{display:flex;align-items:flex-start;gap:8px;margin-top:5px;color:#606872;font-size:12px;line-height:1.5}.dct-policy-check input{margin-top:3px}.dct-status{min-height:20px;margin-top:12px;font-size:13px;color:#69717b}.dct-status.is-error{color:#c73737}.dct-status.is-success{color:#16824b}.dct-order-panel{margin-top:4px}.dct-order-state{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dct-order-state span{padding:5px 8px;border-radius:4px;background:#fff4e6;color:#b75618;font-size:12px;font-weight:700}.dct-order-state strong{font-size:16px}.dct-bank-info{margin:0;border:1px solid #e2e6eb;border-radius:7px;overflow:hidden}.dct-bank-info>div{display:grid;grid-template-columns:105px 1fr;padding:10px 13px;border-bottom:1px solid #edf0f3}.dct-bank-info>div:last-child{border-bottom:0}.dct-bank-info dt{color:#747c86;font-size:12px}.dct-bank-info dd{margin:0;color:#252a30;font-size:13px;font-weight:600}.dct-bank-info .is-important{background:#fff8f4}.dct-bank-info .is-important dd{color:#d94f1d;font-size:15px}.dct-copy-btn{display:inline-grid;width:26px;height:24px;margin-left:5px}.dct-order-note{margin:10px 0;color:#6a727c;font-size:12px}.dct-cancel-order{padding:7px 0;border:0;background:transparent;color:#8a4e4e;text-decoration:underline;cursor:pointer;font-size:12px}.dct-paid-message,.dct-subscription-active,.dct-subscription-note{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid #cfe8da;border-radius:7px;background:#f2fbf6;color:#176a42}.dct-subscription-active span{display:block;margin-top:3px;color:#527062;font-size:12px}.dct-empty,.dct-loading{padding:24px;text-align:center;color:#818893;font-size:13px}.direct-chat-ticket-strip{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #f0dccf;border-radius:6px;background:#fff9f5;color:#5c4a40;font-size:13px}.direct-chat-ticket-strip strong{color:#d95020}.direct-chat-ticket-strip button{margin-left:auto;border:0;background:transparent;color:#d95020;font-weight:700;cursor:pointer}.direct-chat-fixed-list{display:flex;flex-wrap:wrap;gap:7px}.direct-chat-fixed-list button{padding:7px 9px;border:1px solid #dde2e7;border-radius:5px;background:#fff;color:#424950;cursor:pointer;font-size:12px}.dct-my-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:stretch;gap:8px;margin-bottom:14px}.dct-my-summary>div{padding:13px 14px;border:1px solid #e3e7eb;border-radius:6px;background:#fff}.dct-my-summary span{display:block;color:#747c86;font-size:12px}.dct-my-summary strong{display:block;margin-top:5px;font-size:20px}.dct-buy-btn{display:flex;align-items:center;justify-content:center;gap:5px;padding:0 18px;border:0;border-radius:6px;background:#ff6b35;color:#fff;font-weight:700;cursor:pointer}.dct-subscription-note{margin-bottom:14px}.dct-my-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dct-my-grid section{border:1px solid #e3e7eb;border-radius:6px;background:#fff;overflow:hidden}.dct-my-grid header{padding:12px 14px;border-bottom:1px solid #edf0f3}.dct-my-grid h6{margin:0;font-size:14px}.dct-history-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid #f0f2f4}.dct-history-list>div:last-child{border-bottom:0}.dct-history-list strong,.dct-history-list small,.dct-history-list b,.dct-history-list em{display:block}.dct-history-list strong{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.dct-history-list small{margin-top:3px;color:#8a919a;font-size:11px}.dct-history-list b{text-align:right;font-size:12px}.dct-history-list em{margin-top:3px;color:#68717b;font-size:11px;font-style:normal}.dct-history-list em.is-paid,.dct-history-list em.is-succeeded{color:#16824b}
@media(max-width:680px){.dct-overlay{padding:0;align-items:flex-end}.dct-dialog{width:100%;max-height:92vh;border-radius:8px 8px 0 0}.dct-dialog-head,.dct-modal-body{padding-left:18px;padding-right:18px}.dct-balance-row{padding-left:18px;padding-right:18px}.dct-products{grid-template-columns:1fr 1fr}.dct-my-summary{grid-template-columns:repeat(3,1fr)}.dct-buy-btn{grid-column:1/-1;min-height:42px}.dct-my-grid{grid-template-columns:1fr}.dct-bank-info>div{grid-template-columns:88px 1fr}}
.dct-policy-check a{color:#d95020}

.dct-dialog{width:min(680px,100%);max-height:min(820px,calc(100vh - 36px))}
.dct-dialog *{letter-spacing:0}
.dct-stepper{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 24px;padding:0;list-style:none}
.dct-stepper li{position:relative;display:grid;justify-items:center;gap:6px;color:#9299a2;text-align:center}
.dct-stepper li:not(:last-child)::after{position:absolute;top:14px;left:calc(50% + 17px);width:calc(100% - 34px);height:1px;background:#dfe3e7;content:''}
.dct-stepper li.is-complete:not(:last-child)::after{background:#e76a32}
.dct-stepper li>span{position:relative;z-index:1;display:grid;width:29px;height:29px;place-items:center;border:1px solid #d8dde2;border-radius:50%;background:#fff;color:#7a828b;font-size:12px;font-weight:700}
.dct-stepper li>strong{font-size:11px;font-weight:650;white-space:nowrap}
.dct-stepper li.is-active{color:#d95620}
.dct-stepper li.is-active>span{border-color:#e8652c;background:#fff4ee;color:#d95620;box-shadow:0 0 0 3px rgba(232,101,44,.1)}
.dct-stepper li.is-complete{color:#4e775f}
.dct-stepper li.is-complete>span{border-color:#25845b;background:#25845b;color:#fff}
.dct-step-panel{min-height:390px}
.dct-step-panel[hidden]{display:none!important}
.dct-step-copy{margin-bottom:18px}
.dct-step-eyebrow{display:block;margin-bottom:5px;color:#d85a23;font-size:11px;font-weight:700}
.dct-step-copy h4{margin:0;color:#20252b;font-size:18px;font-weight:750;outline:none}
.dct-step-copy p{margin:7px 0 0;color:#717983;font-size:13px;line-height:1.55}
.dct-intro-highlight{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid #f0d9cc;border-radius:7px;background:#fff9f5}
.dct-intro-highlight>i{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:50%;background:#ffeadd;color:#db5a24;font-size:18px}
.dct-intro-highlight strong,.dct-intro-highlight span{display:block}
.dct-intro-highlight strong{color:#333940;font-size:13px}
.dct-intro-highlight span{margin-top:4px;color:#6f7780;font-size:12px;line-height:1.5}
.dct-rule-list{margin:14px 0 0;padding:0;list-style:none;border-top:1px solid #edf0f2}
.dct-rule-list li{display:flex;align-items:flex-start;gap:11px;padding:12px 2px;border-bottom:1px solid #edf0f2}
.dct-rule-list li>i{flex:0 0 19px;margin-top:2px;color:#287f5a;font-size:16px;text-align:center}
.dct-rule-list li:nth-child(2)>i{color:#3974a8}
.dct-rule-list li:nth-child(3)>i{color:#6f657f}
.dct-rule-list strong,.dct-rule-list span{display:block}
.dct-rule-list strong{margin-bottom:3px;color:#343a41;font-size:12px}
.dct-rule-list span{color:#747c85;font-size:12px;line-height:1.5}
.dct-policy-warning{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:10px 12px;border:1px solid #ecdcae;border-radius:6px;background:#fffbef;color:#785f1d;font-size:12px;line-height:1.45}
.dct-policy-warning i{flex:0 0 auto;margin-top:1px}
.dct-step-actions,.dct-order-actions{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:20px}
.dct-step-actions{position:sticky;z-index:3;bottom:-24px;padding:12px 0 4px;border-top:1px solid #edf0f2;background:#fff}
.dct-step-actions.is-end,.dct-order-actions.is-end{justify-content:flex-end}
.dct-primary-btn,.dct-secondary-btn{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:6px;padding:0 17px;border-radius:6px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.dct-primary-btn{border:1px solid #ea652d;background:#ea652d;color:#fff}
.dct-primary-btn:hover{border-color:#d95720;background:#d95720}
.dct-secondary-btn{border:1px solid #d9dee3;background:#fff;color:#505861}
.dct-secondary-btn:hover{border-color:#bfc6cd;background:#f8f9fa}
.dct-primary-btn:disabled,.dct-secondary-btn:disabled{border-color:#dfe3e7;background:#e9ecef;color:#9ba2aa;cursor:not-allowed}
.dct-primary-btn:focus-visible,.dct-secondary-btn:focus-visible,.dct-product:focus-visible,.dct-icon-btn:focus-visible,.dct-copy-btn:focus-visible{outline:2px solid #e97a48;outline-offset:2px}
.dct-products{align-items:stretch}
.dct-product{min-height:126px;padding:17px}
.dct-product.is-selected{border-color:#e86127;background:#fff9f5;box-shadow:0 0 0 2px rgba(232,97,39,.12)}
.dct-product-check{display:block;margin-bottom:9px;color:#a5abb2;font-size:16px}
.dct-product.is-selected .dct-product-check{color:#df5a22}
.dct-product-qty{font-weight:650}
.dct-confirm-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #e1e5e9;border-radius:7px;background:#fff}
.dct-confirm-summary>div{min-width:0;padding:13px 14px;border-right:1px solid #e8ebee}
.dct-confirm-summary>div:last-child{border-right:0}
.dct-confirm-summary span,.dct-confirm-summary strong{display:block}
.dct-confirm-summary span{margin-bottom:5px;color:#7b838c;font-size:11px}
.dct-confirm-summary strong{overflow:hidden;color:#2b3036;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.dct-payment-flow{display:grid;gap:0;margin:16px 0 0;padding:0;list-style:none;border-top:1px solid #e8ebee;border-bottom:1px solid #e8ebee}
.dct-payment-flow li{display:flex;align-items:flex-start;gap:11px;padding:10px 2px}
.dct-payment-flow li+li{border-top:1px solid #f0f2f4}
.dct-payment-flow li>span{display:grid;flex:0 0 23px;width:23px;height:23px;place-items:center;border-radius:50%;background:#eef2f5;color:#5f6872;font-size:10px;font-weight:700}
.dct-payment-flow strong,.dct-payment-flow small{display:block}
.dct-payment-flow strong{color:#3a4047;font-size:12px}
.dct-payment-flow small{margin-top:3px;color:#7a828b;font-size:11px;line-height:1.45}
.dct-purchase-form{gap:7px;margin-top:16px;padding-top:0}
.dct-purchase-form>input:focus{border-color:#e46a33;outline:2px solid rgba(228,106,51,.12)}
.dct-field-help{margin:0;color:#858c95;font-size:11px;line-height:1.45}
.dct-policy-check{padding:11px 12px;border:1px solid #e2e6e9;border-radius:6px;background:#fafbfc;color:#555e67}
.dct-policy-check input{flex:0 0 auto;width:16px;height:16px;accent-color:#e65f27}
.dct-terms-link{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:2px;color:#6c747d;font-size:11px;text-decoration:none}
.dct-terms-link:hover{color:#d95720;text-decoration:underline}
.dct-button-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:dct-spin .7s linear infinite}
@keyframes dct-spin{to{transform:rotate(360deg)}}
.dct-order-panel{margin-top:0}
.dct-order-guide{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:13px 14px;border:1px solid #d9e4ec;border-radius:7px;background:#f5f9fc;color:#38576f}
.dct-order-guide>i{font-size:19px}
.dct-order-guide strong,.dct-order-guide span{display:block}
.dct-order-guide strong{font-size:13px}
.dct-order-guide span{margin-top:3px;color:#667d8e;font-size:11px;line-height:1.45}
.dct-bank-info dd{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:7px}
.dct-bank-info dd>span{overflow-wrap:anywhere}
.dct-copy-btn{flex:0 0 28px;border:1px solid #e0e4e8;border-radius:4px;background:#fff}
.dct-order-note{display:flex;align-items:flex-start;gap:8px;margin:11px 0 0;padding:10px 12px;border:1px solid #efd9a8;border-radius:6px;background:#fffaf0;color:#765d20;line-height:1.45}
.dct-order-note i{flex:0 0 auto;margin-top:1px}
.dct-order-later{margin:10px 0 0;color:#7d858e;font-size:11px;line-height:1.5}
.dct-order-actions .dct-secondary-btn,.dct-order-actions .dct-primary-btn{flex:1}
.dct-paid-message strong,.dct-paid-message span{display:block}
.dct-paid-message span{margin-top:3px;color:#527062;font-size:12px}
.dct-status{min-height:19px;margin-top:12px;line-height:1.45}

@media(max-width:680px){
  .dct-dialog{max-height:94vh}
  .dct-dialog-head{padding-top:18px;padding-bottom:14px}
  .dct-dialog-head h3{font-size:19px}
  .dct-dialog-head p{font-size:12px}
  .dct-modal-body{padding-top:17px;padding-bottom:20px}
  .dct-stepper{margin-bottom:20px}
  .dct-stepper li{gap:5px}
  .dct-stepper li>span{width:27px;height:27px}
  .dct-stepper li:not(:last-child)::after{top:13px;left:calc(50% + 16px);width:calc(100% - 32px)}
  .dct-stepper li>strong{font-size:10px}
  .dct-step-panel{min-height:0}
  .dct-step-copy{margin-bottom:15px}
  .dct-step-copy h4{font-size:17px}
  .dct-step-copy p{font-size:12px}
  .dct-intro-highlight{padding:13px}
  .dct-rule-list li{padding:10px 2px}
  .dct-products{grid-template-columns:1fr 1fr;gap:8px}
  .dct-product{min-height:118px;padding:14px}
  .dct-product strong{font-size:19px}
  .dct-product-tag{top:10px;right:10px}
  .dct-confirm-summary{grid-template-columns:1fr 1fr}
  .dct-confirm-summary>div{padding:11px 12px}
  .dct-confirm-summary>div:nth-child(2){border-right:0}
  .dct-confirm-summary>div:nth-child(3){grid-column:1/-1;border-top:1px solid #e8ebee;border-right:0}
  .dct-step-actions,.dct-order-actions{margin-top:17px}
  .dct-step-actions{bottom:-20px;padding-bottom:2px}
  .dct-primary-btn,.dct-secondary-btn{min-width:0;padding:0 13px;font-size:12px}
  .dct-step-actions:not(.is-end)>.dct-primary-btn,.dct-step-actions:not(.is-end)>.dct-secondary-btn{flex:1}
  .dct-bank-info>div{grid-template-columns:86px minmax(0,1fr)}
}

@media(max-width:380px){
  .dct-dialog-head,.dct-modal-body,.dct-balance-row{padding-left:15px;padding-right:15px}
  .dct-stepper li>strong{font-size:9px}
  .dct-products{grid-template-columns:1fr}
  .dct-product{min-height:104px}
  .dct-rule-list span{font-size:11px}
}
