/**
 * ECOM Service Portal — authenticated WooCommerce customer tickets.
 * Self-contained, scoped under the premium LuxaLife My Account shell.
 */
.dsdb-customer-service {
    --dsdb-service-line:#e8dfd3;
    --dsdb-service-muted:#817668;
    --dsdb-service-ink:#2b241d;
    --dsdb-service-gold:#aa803a;
    margin:0;
    min-width:0;
    font-family:inherit;
    color:var(--dsdb-service-ink);
}
.dsdb-customer-service *, .dsdb-customer-service *::before, .dsdb-customer-service *::after { box-sizing:border-box; }
.dsdb-customer-service__header { display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 25px; }
.dsdb-customer-service__eyebrow {display:block;margin:0 0 6px;color:#967239;font-size:10px;font-weight:750;letter-spacing:.16em;}
.dsdb-customer-service__header h2 {margin:0 0 7px!important;font-size:clamp(22px,2.4vw,27px);letter-spacing:-.04em;}
.dsdb-customer-service__header p {margin:0!important;color:var(--dsdb-service-muted)!important;font-size:14px;line-height:1.5;}
.dsdb-customer-service .dsdb-customer-service__button,
.woocommerce-MyAccount-content .dsdb-customer-service :is(button.dsdb-customer-service__button,a.dsdb-customer-service__button){
    display:inline-flex;align-items:center;justify-content:center;min-height:43px;min-width:0;
    padding:10px 17px;gap:7px;border:1px solid #9d7837!important;border-radius:9px;
    background:linear-gradient(125deg,#926b2b,#c8a259 55%,#aa8037)!important;
    box-shadow:0 4px 12px rgb(146 112 42 / .13);color:#261c10!important;
    text-decoration:none!important;font-family:inherit;font-size:13px;font-weight:700;line-height:1.45;cursor:pointer;
    white-space:normal;text-align:center;transition:filter .15s ease;
}
.dsdb-customer-service .dsdb-customer-service__button:hover,
.woocommerce-MyAccount-content .dsdb-customer-service :is(button.dsdb-customer-service__button,a.dsdb-customer-service__button):hover{filter:brightness(1.07);}
.dsdb-customer-service .dsdb-customer-service__button--secondary,
.woocommerce-MyAccount-content .dsdb-customer-service a.dsdb-customer-service__button--secondary {
    background:#fffefa!important;box-shadow:none!important;color:#70502c!important;border:1px solid #dfd3c2!important;
}
.dsdb-customer-service__card,.dsdb-customer-service__detail {background:#fffefa;border:1px solid var(--dsdb-service-line);border-radius:13px;padding:clamp(17px,2.8vw,25px);box-shadow:0 4px 17px rgb(44 31 16 / .03);}
.dsdb-customer-service__card h3 {font-size:17px;margin:0 0 10px;}
.dsdb-customer-service__card > p {margin:0 0 18px;color:var(--dsdb-service-muted);font-size:14px;}
.dsdb-customer-service__notice{border:1px solid #e3d2af;border-left:3px solid #bd9350;background:#fff8e9;padding:13px 16px;border-radius:9px;color:#6d552f;margin:0 0 18px;}
.dsdb-customer-service__form{display:flex;flex-direction:column;gap:11px;max-width:100%;}
.dsdb-customer-service__form h3{margin:0 0 4px;font-size:16px;}
.dsdb-customer-service__form label{font-weight:700;color:#514537;font-size:13px;}
.woocommerce-MyAccount-content .dsdb-customer-service .dsdb-customer-service__form :is(input[type="text"],textarea){
    display:block;width:100%;max-width:100%;min-width:0;margin:0 0 8px;padding:11px 13px;
    min-height:45px;border:1px solid #e2d7c9;border-radius:9px;background:#fbfaf7;box-shadow:none;
    color:#31261d;font:inherit;font-size:14px;
}
.woocommerce-MyAccount-content .dsdb-customer-service .dsdb-customer-service__form :is(input[type="text"],textarea):focus-visible {outline:2px solid #b58b3d;outline-offset:1px;background:#fff;}
.woocommerce-MyAccount-content .dsdb-customer-service .dsdb-customer-service__form textarea{resize:vertical;min-height:140px;}
.dsdb-customer-service__hint{font-size:12px!important;color:#847769!important;line-height:1.55;margin:0 0 6px!important;}
.dsdb-customer-service__form .dsdb-customer-service__button{align-self:flex-start;}
.dsdb-customer-service__list{display:flex;flex-direction:column;gap:11px;}
.woocommerce-MyAccount-content .dsdb-customer-service a.dsdb-customer-service__ticket {
    display:flex;align-items:center;gap:15px;padding:17px 18px;border:1px solid var(--dsdb-service-line);border-radius:12px;
    background:#fffefa;color:var(--dsdb-service-ink);text-decoration:none;box-shadow:0 3px 12px rgb(44 31 16 / .025);
}
.woocommerce-MyAccount-content .dsdb-customer-service a.dsdb-customer-service__ticket:hover,
.woocommerce-MyAccount-content .dsdb-customer-service a.dsdb-customer-service__ticket:focus-visible{border-color:#c6a165;background:#fffbf4;}
.dsdb-customer-service__ticket-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;}
.dsdb-customer-service__ticket-main small,.dsdb-customer-service__ref{color:#9a7339;font-size:11px;font-weight:750;letter-spacing:.05em;}
.dsdb-customer-service__ticket-main strong{font-size:14px;line-height:1.42;color:#2b241d;overflow-wrap:anywhere;}
.dsdb-customer-service__ticket-main > span{font-size:12px;color:var(--dsdb-service-muted);}
.dsdb-customer-service__status{flex:none;border:1px solid #e6dac7;border-radius:20px;background:#f8f2e7;color:#78582c;padding:6px 11px;font-size:11px;font-weight:750;white-space:nowrap;}
.dsdb-customer-service__arrow{font-size:26px;line-height:1;color:#b38d51;}
.dsdb-customer-service__empty{text-align:center;border:1px dashed #ded5c8;background:#fcf9f3;border-radius:13px;padding:34px 18px;}
.dsdb-customer-service__empty > span{font-size:29px;color:#b08b4c;display:block;margin-bottom:10px;}
.dsdb-customer-service__empty h3{margin:0 0 7px;font-size:18px;}
.dsdb-customer-service__empty p{margin:0 auto 18px!important;font-size:14px;max-width:480px;color:var(--dsdb-service-muted)!important;}
.dsdb-customer-service__ticket-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px;padding-bottom:19px;border-bottom:1px solid var(--dsdb-service-line);}
.dsdb-customer-service__ticket-meta h3{font-size:19px;line-height:1.3;margin:5px 0 6px;overflow-wrap:anywhere;}
.dsdb-customer-service__ticket-meta small{color:var(--dsdb-service-muted);}
.dsdb-customer-service__timeline{display:flex;flex-direction:column;gap:14px;margin:0 0 24px;}
.dsdb-customer-service__message{border:1px solid #e8e2d7;border-radius:11px;padding:16px 17px;background:#fff;}
.dsdb-customer-service__message.is-customer{background:#fbf6eb;border-color:#ebddc3;}
.dsdb-customer-service__message-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 12px;margin-bottom:9px;}
.dsdb-customer-service__message-head strong{font-size:13px;color:#493729;}
.dsdb-customer-service__message-head time{font-size:12px;color:#827668;}
.dsdb-customer-service__message p{margin:0!important;font-size:14px;line-height:1.65;overflow-wrap:anywhere;white-space:normal;color:#453e37;}
.dsdb-customer-service__detail .dsdb-customer-service__form{padding-top:23px;border-top:1px solid var(--dsdb-service-line);}
.dsdb-customer-service__detail .dsdb-customer-service__notice{margin-top:6px;}
@media(max-width:600px){
    .dsdb-customer-service__header{align-items:flex-start;gap:13px;margin-bottom:18px;}
    .dsdb-customer-service__header .dsdb-customer-service__button{width:100%;}
    .woocommerce-MyAccount-content .dsdb-customer-service a.dsdb-customer-service__ticket{flex-wrap:wrap;gap:7px;padding:15px;}
    .dsdb-customer-service__ticket-main{flex-basis:100%;}
    .dsdb-customer-service__status{margin-top:3px;}
    .dsdb-customer-service__arrow{margin-left:auto;}
    .dsdb-customer-service__ticket-meta{align-items:flex-start;flex-direction:column;}
    .dsdb-customer-service__card,.dsdb-customer-service__detail{padding:15px;}
}
@media(prefers-reduced-motion:reduce){.dsdb-customer-service .dsdb-customer-service__button{transition:none;}}


/* V0.9.28 — selectable question context and bounded customer order history. */
.dsdb-customer-service__question-types {
    margin:0 0 6px; padding:0; border:0; min-width:0;
    display:flex; flex-wrap:wrap; gap:10px;
}
.dsdb-customer-service__question-types legend {
    display:block; width:100%; margin:0 0 9px; padding:0;
    color:#514537; font-size:13px; font-weight:750;
}
.dsdb-customer-service__question-types label {
    display:inline-flex; align-items:center; gap:9px; min-height:45px;
    border:1px solid #e5d8c5; border-radius:10px; padding:10px 14px;
    background:#fffefa; color:#43372b; cursor:pointer; font-size:13px;
}
.dsdb-customer-service__question-types label:has(input:checked) {
    background:#faf2e5; border-color:#bd9552; box-shadow:0 0 0 1px #bd955226;
}
.dsdb-customer-service__question-types input[type="radio"] {
    width:auto; height:auto; min-height:0; margin:0; accent-color:#9b763e; flex:none;
}
.dsdb-customer-service__order-picker {
    background:#fbf7ef; border:1px solid #e8ddca; border-radius:11px;
    padding:15px; display:flex; flex-direction:column; gap:9px; min-width:0;
}
.dsdb-customer-service__order-picker[hidden] { display:none!important; }
.dsdb-customer-service__order-picker > label { font-weight:700; }
.dsdb-customer-service__order-picker select {
    min-height:44px; width:100%; max-width:100%; border:1px solid #e3d9c9;
    background:#fffefa; border-radius:9px; color:#3d3428; padding:10px 12px;
    font-size:13px; font-family:inherit;
}
.dsdb-customer-service__pagination {
    display:flex; justify-content:space-between; align-items:center;
    flex-wrap:wrap; gap:8px; font-size:12px; color:#827464;
}
.dsdb-customer-service__pagination a { color:#916d36; text-decoration:underline; text-underline-offset:3px; }
.dsdb-customer-service__order-context {
    flex-basis:100%; margin:6px 0 0!important; font-size:13px;
}
.dsdb-customer-service__order-context a { color:#906b31; font-weight:700; }
@media(max-width:580px) {
    .dsdb-customer-service__question-types { flex-direction:column; }
    .dsdb-customer-service__question-types label { width:100%; }
}


/* V0.9.29 — compact, readable question context in customer ticket lists. */
.dsdb-customer-service__ticket-details {
    display:flex; align-items:center; gap:8px 10px; flex-wrap:wrap;
    font-size:12px; color:var(--dsdb-service-muted);
}
.dsdb-customer-service__ticket-details > span:last-child {
    font-size:12px; color:var(--dsdb-service-muted);
}
.dsdb-customer-service__context {
    display:inline-flex; align-items:center; max-width:100%;
    border:1px solid #e7dac5; border-radius:7px;
    padding:4px 8px; background:#f8f3e9; color:#785a33;
    font-size:11px; font-weight:700; line-height:1.35;
    overflow-wrap:anywhere;
}


/* Private ticket media — common responsive message gallery. */
.dsdb-ticket-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:11px;margin:15px 0 0;max-width:100%}
.dsdb-ticket-files__item{margin:0;min-width:0;padding:8px;border-radius:10px;border:1px solid #e6dcca;background:#fffefa}
.dsdb-ticket-files__item img,.dsdb-ticket-files__item video{display:block;width:100%;height:auto;max-height:230px;object-fit:contain;border-radius:6px;background:#f0ebe3}
.dsdb-ticket-files__item figcaption{margin-top:5px;font-size:11px;color:#746553;overflow-wrap:anywhere}
.dsdb-ticket-files__item a:focus-visible{outline:2px solid #a88243;outline-offset:3px}
@media(max-width:500px){.dsdb-ticket-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}}

.woocommerce-MyAccount-content .dsdb-customer-service input[type="file"]{display:block;width:100%;padding:11px;border:1px solid #e3d8cb;border-radius:9px;background:#faf8f4;color:#5b4b39;font:inherit;font-size:13px;max-width:100%}
.woocommerce-MyAccount-content .dsdb-customer-service input[type="file"]::file-selector-button{margin-right:12px;border:1px solid #d8c6ab;border-radius:6px;background:#fffdf8;color:#755529;padding:7px 11px;cursor:pointer}
