.ss89{max-width:900px;margin:24px auto;padding:24px;border:1px solid #d7dce4;border-radius:14px;background:var(--wp--preset--color--base,#fff);color:inherit}.ss89 input,.ss89 select,.ss89 textarea{max-width:100%;padding:10px;border:1px solid #c5cad2;border-radius:8px}.ss89 button{border:0;border-radius:8px;background:#175bd5;color:#fff;padding:12px 22px;cursor:pointer}.ss89 li{margin:8px 0}

.ss89-ticket-kind{display:inline-block;border-radius:8px;padding:7px 12px;font-weight:700;margin:5px 0}.ss89-presale{background:#fff0d8;color:#8c3900;border:2px solid #e58b13}.ss89-purchased{background:#dff5e8;color:#135c35;border:2px solid #2b9a5b}.ss89-create:has(.ss89-presale){border-inline-start:5px solid #e58b13;padding-inline-start:12px}#ss89-product-search{display:block;width:100%;margin-top:8px}#ss89-results{max-height:240px;overflow-y:auto;border-radius:8px}#ss89-results button{display:block;width:100%;text-align:start;background:#f4f6f8;color:#222;border:1px solid #ddd;margin:2px 0}#ss89-picked a{font-weight:700}#ss89-presale-product,#ss89-purchased-product{margin:14px 0}

/* v1.6.4 — Frontend full-width ticket panel, independent of narrow page templates */
.ss89{
 box-sizing:border-box;
 width:min(900px, calc(100vw - 32px)) !important;
 max-width:none !important;
 position:relative;
 left:50%;
 transform:translateX(-50%);
 margin:24px 0 !important;
 padding:clamp(16px,3vw,32px) !important;
 min-width:0;
 overflow-wrap:anywhere;
}
.ss89,.ss89 *{box-sizing:border-box}
.ss89 form,.ss89 .ss89-create{width:100%;max-width:100%;min-width:0}
.ss89-create>p{margin:0 0 18px}
.ss89-create>p>label{display:block;width:100%;font-weight:600}
.ss89-create input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.ss89-create select,.ss89-create textarea{
 display:block;width:100% !important;max-width:100% !important;
 min-width:0;margin-top:8px;min-height:46px;
 background:#fff;color:#172033;
}
.ss89-create textarea{min-height:140px;resize:vertical}
.ss89-create input[type="file"]{max-width:100%;width:100%}
.ss89-create button{max-width:100%;white-space:normal}
.ss89-create #ss89-presale-product,.ss89-create #ss89-purchased-product{width:100%;min-width:0}
.ss89 #ss89-results{width:100%}
.ss89 ul{padding-inline-start:20px}
.ss89 li{overflow-wrap:anywhere}
@media(max-width:767px){
 .ss89{
  width:calc(100vw - 24px) !important;
  padding:16px !important;
  border-radius:12px;
  margin-block:12px !important;
 }
 .ss89 h2{font-size:clamp(20px,5vw,27px)}
 .ss89-create>p>label,.ss89-create input,.ss89-create select,.ss89-create textarea{font-size:16px}
 .ss89-create button{min-height:44px}
}
@media(max-width:360px){.ss89{width:calc(100vw - 16px) !important;padding:12px !important}}

/* v1.6.6: true two-column form, right-side details in RTL */
.ss89 .ss89-create .ss89-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch;width:100%;direction:inherit}
.ss89 .ss89-form-panel{min-width:0;width:100%;padding:22px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.ss89 .ss89-form-panel h3{font-size:18px;line-height:1.5;margin:0 0 20px;font-weight:700}
.ss89 .ss89-form-panel>p{margin:0 0 16px}
.ss89 .ss89-form-panel>p>label{display:block;width:100%}
.ss89 .ss89-form-message{display:flex;flex-direction:column}
.ss89 .ss89-form-message textarea{min-height:200px;resize:vertical}
.ss89 .ss89-form-message>button[type=submit]{margin-top:auto;min-height:48px;width:100%;font-weight:700}
.ss89 .ss89-form-panel input[type=file]{width:100%;max-width:100%;font-size:14px}
.ss89 .ss89-form-details #ss89-kind{margin-bottom:14px}
.ss89 .ss89-form-details #ss89-results{position:relative;z-index:2}
@media(max-width:767px){.ss89 .ss89-create .ss89-form-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ss89 .ss89-form-panel{padding:16px}.ss89 .ss89-form-message textarea{min-height:160px}}
@media(min-width:768px) and (max-width:900px){.ss89 .ss89-create .ss89-form-grid{gap:14px}.ss89 .ss89-form-panel{padding:16px}}

/* v1.6.7: direction-aware horizontal centering, even inside narrow theme content */
.ss89{left:auto !important;right:auto !important;inset-inline-start:50% !important;transform:translateX(-50%) !important;margin-inline:0 !important}
.ss89:dir(rtl){transform:translateX(50%) !important}
.ss89:dir(ltr){transform:translateX(-50%) !important}
@media(max-width:767px){.ss89{width:calc(100vw - 24px) !important}}

/* 1.6.8 attachment upload progress */
.ss89-upload-feedback{width:100%;max-width:100%;font-size:13px;line-height:1.8;margin:10px 0;color:#4b5563}
.ss89-upload-limit{margin:3px 0 7px}
.ss89-upload-status{overflow-wrap:anywhere}
.ss89-upload-error{color:#b42318;font-weight:600}
.ss89-upload-bar{width:100%;height:14px;display:block;margin:8px 0;accent-color:#2563eb}
.ss89-upload-bar[hidden]{display:none}

/* v1.6.9: text and attachments as separate blocks */
.ss89-message-attachment{margin-top:14px;padding:12px;border:1px solid #d6dce5;border-radius:10px;background:#f8fafc;display:grid;gap:10px}
.ss89-message-attachment audio,.ss89-message-attachment video{width:100%;max-width:480px}
.ss89-attached-image{max-width:280px;max-height:260px;width:auto;height:auto;object-fit:contain;border-radius:8px}
.ss89-attachment-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ss89-delete-attachment-form{display:inline;margin:0}
.ss89-delete-attachment,.ss89-remove-selected{border:1px solid #f3a3a3;background:#fff6f6;color:#a52626;border-radius:7px;padding:7px 12px;cursor:pointer}
.ss89-file-preview{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px;border-radius:8px;background:#f3f7ff;border:1px solid #cbdcf7;margin:8px 0}
.ss89-file-preview[hidden]{display:none}
.ss89-file-preview span{overflow-wrap:anywhere;min-width:0}
@media(max-width:600px){.ss89-attachment-actions,.ss89-file-preview{align-items:stretch;flex-direction:column}.ss89-attached-image{max-width:100%}}

/* 1.7.0 — ticket detail redesign */
.ss89 .ss89-ticket-view{width:100%;max-width:100%;min-width:0;display:grid;gap:20px;color:#1e293b;line-height:1.75}
.ss89 .ss89-ticket-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;padding:22px 24px;background:linear-gradient(135deg,#f8fafc,#eef5ff);border:1px solid #dce6f4;border-radius:16px}
.ss89 .ss89-ticket-heading{flex:1 1 250px;min-width:0}
.ss89 .ss89-ticket-eyebrow{font-size:13px;color:#64748b;font-weight:600;margin-bottom:8px}
.ss89 .ss89-ticket-header h2{font-size:clamp(20px,2.5vw,27px);line-height:1.55;color:#0f172a;margin:0;overflow-wrap:anywhere}
.ss89 .ss89-ticket-number{font-size:.78em;color:#2563eb;white-space:nowrap}
.ss89 .ss89-ticket-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ss89 .ss89-ticket-badges .ss89-ticket-kind{margin:0;padding:7px 11px;border-radius:9px;font-size:12px;white-space:normal}
.ss89 .ss89-status{display:inline-flex;padding:5px 13px;border-radius:999px;font-size:12px;font-weight:700;background:#dbeafe;color:#1d4ed8}
.ss89 .ss89-status-closed{background:#e2e8f0;color:#475569}
.ss89 .ss89-ticket-product{padding:14px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere}
.ss89 .ss89-ticket-product>span{color:#64748b;font-size:13px}
.ss89 .ss89-ticket-product strong{font-size:14px;min-width:0}
.ss89 .ss89-conversation{display:grid;gap:14px;min-width:0}
.ss89 .ss89-conversation>h3,.ss89 .ss89-reply-form>h3{margin:0 0 4px;font-size:18px;color:#0f172a}
.ss89 .ss89-message{max-width:90%;width:fit-content;min-width:min(240px,100%);padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;overflow-wrap:anywhere}
.ss89 .ss89-message-customer{justify-self:start;background:#f1f6ff;border-color:#d8e6ff}
.ss89 .ss89-message-agent{justify-self:end;background:#f8fafc}
.ss89 .ss89-message-meta{display:flex;gap:8px 16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-bottom:9px;margin-bottom:10px;border-bottom:1px solid #e2e8f0}
.ss89 .ss89-message-meta strong{font-size:14px;color:#0f172a}
.ss89 .ss89-message-meta time{font-size:12px;color:#64748b;direction:ltr;unicode-bidi:plaintext}
.ss89 .ss89-message-body{white-space:normal;font-size:14px;line-height:1.95}
.ss89 .ss89-reply-form{display:grid;gap:12px;padding:22px 24px;border:1px solid #dce6f4;border-radius:16px;background:#fff}
.ss89 .ss89-reply-label,.ss89 .ss89-reply-attachment>label{display:block;font-weight:600;font-size:14px;color:#334155}
.ss89 .ss89-reply-form textarea{display:block;width:100%;max-width:100%;min-height:160px;padding:13px 15px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;font-size:15px;resize:vertical}
.ss89 .ss89-reply-attachment{display:grid;gap:9px;padding:15px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}
.ss89 .ss89-reply-attachment input[type=file]{max-width:100%;width:100%;min-width:0;direction:inherit;color:#475569;font-size:13px}
.ss89 .ss89-reply-actions{display:flex;justify-content:flex-end}
.ss89 .ss89-send-button{min-width:160px;min-height:45px;padding:10px 24px;border:0;border-radius:9px;background:#155eef;color:white;font-weight:700;cursor:pointer}
.ss89 .ss89-send-button:hover{background:#104bc5}
.ss89 .ss89-status-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 0}
.ss89 .ss89-status-form label{display:flex;gap:8px;align-items:center}
.ss89 .ss89-status-form select{min-height:38px}
@media(max-width:767px){
 .ss89 .ss89-ticket-header,.ss89 .ss89-reply-form{padding:16px}
 .ss89 .ss89-message{max-width:100%;width:100%;min-width:0;padding:13px}
 .ss89 .ss89-ticket-badges{width:100%}
 .ss89 .ss89-ticket-product{padding:12px}
 .ss89 .ss89-reply-actions,.ss89 .ss89-send-button{width:100%}
}

/* v1.7.1: full-width ticket history below create form */
.ss89 .ss89-create{display:block;width:100%;max-width:100%;min-width:0;margin:0 auto 28px;clear:both}
.ss89 .ss89-create .ss89-form-grid{width:100%}
.ss89 .ss89-my-tickets{clear:both;display:block;width:100%;max-width:100%;margin:28px 0 0;padding:24px;background:#fff;border:1px solid #dce4ed;border-radius:18px;box-sizing:border-box;min-width:0}
.ss89 .ss89-my-tickets-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.ss89 .ss89-my-tickets-head h3{margin:0;font-size:21px;color:#0f172a}
.ss89 .ss89-my-tickets-head p{margin:4px 0 0;color:#64748b;font-size:13px}
.ss89 .ss89-ticket-list{display:grid;grid-template-columns:1fr;gap:12px}
.ss89 .ss89-ticket-list-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border:1px solid #e2e8f0;border-radius:13px;background:#f8fafc;min-width:0;box-sizing:border-box}
.ss89 .ss89-ticket-list-main{flex:1;min-width:0;display:grid;gap:9px}
.ss89 .ss89-ticket-list-top{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ss89 .ss89-ticket-list-top .ss89-ticket-kind{margin:0;font-size:12px;padding:5px 10px;border-radius:8px}
.ss89 .ss89-ticket-list-title{font-size:16px;font-weight:750;color:#0f172a;text-decoration:none;overflow-wrap:anywhere}
.ss89 .ss89-ticket-list-title:hover{color:#1d4ed8}
.ss89 .ss89-ticket-list-title span{color:#2563eb;white-space:nowrap}
.ss89 .ss89-ticket-list-product{font-size:13px;color:#64748b;overflow-wrap:anywhere}
.ss89 .ss89-ticket-list-time{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;color:#64748b}
.ss89 .ss89-ticket-list-time time{direction:ltr;unicode-bidi:plaintext}
.ss89 .ss89-ticket-list-actions{display:flex;flex-direction:column;gap:9px;min-width:135px}
.ss89 .ss89-ticket-list-actions form{margin:0}
.ss89 .ss89-ticket-open-link,.ss89 .ss89-reopen-button,.ss89 .ss89-ticket-reopen-form button{display:inline-flex;justify-content:center;align-items:center;min-height:39px;padding:8px 13px;border-radius:9px;font-size:13px;font-weight:650;text-align:center;text-decoration:none;cursor:pointer;box-sizing:border-box}
.ss89 .ss89-ticket-open-link{background:#155eef;color:white}
.ss89 .ss89-reopen-button,.ss89 .ss89-ticket-reopen-form button{background:#fff;border:1px solid #155eef;color:#155eef;width:100%}
.ss89 .ss89-ticket-reopen-form{display:flex;justify-content:flex-start;margin:0}
.ss89 .ss89-ticket-reopen-form button{width:auto}
.ss89 .ss89-ticket-pagination{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.ss89 .ss89-ticket-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:37px;min-height:37px;border:1px solid #cbd5e1;border-radius:9px;color:#334155;text-decoration:none;background:#fff}
.ss89 .ss89-ticket-pagination a.is-active{background:#155eef;color:#fff;border-color:#155eef}
@media(max-width:767px){.ss89 .ss89-my-tickets{padding:15px;margin-top:20px}.ss89 .ss89-ticket-list-card{flex-direction:column;align-items:stretch;padding:14px}.ss89 .ss89-ticket-list-actions{flex-direction:row;flex-wrap:wrap}.ss89 .ss89-ticket-list-actions>*{flex:1}.ss89 .ss89-ticket-list-actions form button{width:100%}}

/* 1.7.2 assigned agent visibility */
.ss89 .ss89-ticket-list-agent{display:flex;flex-wrap:wrap;gap:6px 9px;align-items:center;font-size:13px;color:#475569}
.ss89 .ss89-ticket-list-agent strong{color:#0f172a;font-weight:700}
.ss89 .ss89-ticket-agent{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:13px 18px;background:#eff6ff;border:1px solid #cfe1ff;border-radius:12px;font-size:14px}
.ss89 .ss89-ticket-agent>span{color:#475569}
.ss89 .ss89-ticket-agent strong{color:#1e40af;overflow-wrap:anywhere}

/* v1.7.4 — centered guest login invitation */
.ss89.ss89-guest-wrap{position:static!important;left:auto!important;right:auto!important;transform:none!important;display:flex!important;justify-content:center!important;align-items:center!important;min-height:350px;width:100%!important;max-width:100%!important;box-sizing:border-box;margin:24px auto!important;padding:16px!important;background:transparent!important}
.ss89 .ss89-login-required{width:min(100%,600px);box-sizing:border-box;margin:0 auto;padding:clamp(24px,5vw,46px);border:1px solid #dce5f2;border-radius:20px;background:linear-gradient(155deg,#fff 45%,#f1f6ff);box-shadow:0 12px 34px rgba(25,55,105,.08);text-align:center;display:flex;flex-direction:column;align-items:center;gap:15px;color:#1e293b}
.ss89 .ss89-login-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:20px;background:#e8f1ff;font-size:32px}
.ss89 .ss89-login-required h2{font-size:clamp(19px,3vw,25px);margin:0;color:#0f2b57;line-height:1.6}
.ss89 .ss89-login-required p{font-size:15px;line-height:1.9;margin:0;color:#64748b}
.ss89 .ss89-login-button{display:inline-flex;justify-content:center;align-items:center;min-width:195px;min-height:46px;padding:10px 24px;border-radius:11px;background:#155eef;color:#fff!important;font-size:15px;font-weight:700;text-decoration:none!important;transition:background .15s ease}
.ss89 .ss89-login-button:hover,.ss89 .ss89-login-button:focus{background:#0f48bc;color:#fff!important}
@media(max-width:600px){.ss89.ss89-guest-wrap{padding:12px!important;min-height:300px}.ss89 .ss89-login-required{padding:26px 18px;border-radius:15px}.ss89 .ss89-login-button{width:100%;box-sizing:border-box}}

/* 1.8.0 customer ticket detail */
.ss89 .ss89-customer-back{margin:4px 0 20px;display:block}
.ss89 .ss89-customer-back a{display:inline-flex;align-items:center;gap:8px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px;color:#1d4ed8;padding:9px 15px;text-decoration:none;font-weight:600}
.ss89 .ss89-ticket-not-found{padding:20px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
.ss89 .ss89-ticket-view{margin-inline:auto!important;max-width:100%!important;box-sizing:border-box}

/* 1.8.1: always-visible conversation and safe fallback */
.ss89 .ss89-ticket-view,.ss89 .ss89-conversation,.ss89 .ss89-message,.ss89 .ss89-message-body{visibility:visible!important;opacity:1!important;height:auto;max-height:none;overflow:visible}
.ss89 .ss89-conversation{display:grid!important;gap:16px!important;width:100%}
.ss89 .ss89-message{display:block!important;min-width:0;max-width:100%;width:100%;box-sizing:border-box}
.ss89 .ss89-message-body{display:block!important;white-space:normal;overflow-wrap:anywhere;min-height:1em;color:#1e293b}
.ss89 .ss89-ticket-fallback,.ss89 .ss89-empty-conversation{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:16px;color:#7c2d12}
.ss89 .ss89-fallback-message{padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin:10px 0}
.ss89 .ss89-message-attachment audio,.ss89 .ss89-message-attachment video{display:block;max-width:100%;width:min(100%,500px)}

.ss89-file-item,.ss89-voice-item{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:8px 0;padding:9px;border:1px solid #d6dce5;border-radius:9px}.ss89-voice-item audio{max-width:100%;width:260px}.ss89-file-item span{overflow-wrap:anywhere;flex:1}

/* Product search feedback and configurable catalog shortcut (v1.8.6) */
.ss89 .ss89-search-status{display:flex;align-items:center;gap:9px;margin:9px 0;padding:8px 11px;border-radius:9px;background:#eef5ff;color:#1d4d82;font-size:13px;font-weight:600;}
.ss89 .ss89-search-status[hidden]{display:none!important;}
.ss89 .ss89-search-spinner{display:inline-block;flex:none;width:17px;height:17px;border:2px solid #b6d3f4;border-top-color:#1865ba;border-radius:50%;animation:ss89-search-spin .7s linear infinite;}
@keyframes ss89-search-spin{to{transform:rotate(360deg)}}
.ss89 .ss89-product-catalog-help{margin:10px 0 2px;font-size:13px;}
.ss89 .ss89-product-catalog-help a{color:#1766a8;text-decoration:underline;text-underline-offset:3px;}
.ss89 .ss89-product-catalog-help a:hover{color:#0d4272;}

/* Purchased WooCommerce products: dropdown is visible only for after-purchase departments. */
.ss89-create #ss89-purchased-product[hidden],.ss89-create #ss89-presale-product[hidden]{display:none!important}
.ss89-create #ss89-owned-product{display:block;width:100%;max-width:100%;min-height:46px;margin-top:9px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#182334;box-sizing:border-box}
.ss89-create #ss89-owned-product:focus{outline:2px solid #2563eb;outline-offset:2px}
.ss89-create .ss89-owned-help{font-size:13px;opacity:.8;margin:7px 0 0}
