/* Ticket routing stays native; cards only present the departments WHMCS supplies. */
.pa-theme .pa-ticket-departments { max-width:1100px; margin-inline:auto; min-width:0; }
.pa-theme .pa-ticket-intro { display:flex; align-items:flex-start; gap:16px; margin-bottom:26px; }
.pa-theme .pa-ticket-intro-icon { display:inline-flex; align-items:center; justify-content:center; flex:none; width:52px; height:52px; border-radius:16px; background:var(--brand-blue-soft); color:var(--pa-link); font-size:23px; }
.pa-theme .pa-ticket-intro h2 { margin:0 0 8px; font-size:21px; font-weight:700; line-height:1.8; color:var(--pa-primary); }
.pa-theme .pa-ticket-intro p { margin:0; color:var(--pa-muted); font-size:14px; line-height:2; }
.pa-theme .pa-department-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.pa-theme .pa-ticket-departments .pa-department-card { display:flex; align-items:flex-start; gap:16px; width:auto; float:none; min-width:0; min-height:160px; margin:0; padding:24px; border:1px solid var(--pa-border); border-radius:18px; background:var(--pa-surface); color:var(--pa-primary); text-decoration:none; box-shadow:0 5px 20px rgb(22 54 89 / 3%); transition:transform .2s,border-color .2s,box-shadow .2s,background-color .2s; }
.pa-theme .pa-department-symbol { display:inline-flex; align-items:center; justify-content:center; flex:none; width:44px; height:44px; border-radius:13px; background:var(--brand-blue-soft); color:var(--pa-link); font-size:21px; }
.pa-theme .pa-department-symbol img { display:block; width:34px; height:34px; object-fit:contain; }
.pa-theme .pa-department-copy { display:flex; flex:1; flex-direction:column; gap:10px; min-width:0; overflow-wrap:anywhere; }
.pa-theme .pa-department-copy strong { font-size:16px; font-weight:700; line-height:1.8; }
.pa-theme .pa-department-copy > span { font-size:13px; color:var(--pa-muted); line-height:1.9; }
.pa-theme .pa-department-copy small { font-size:12px; color:var(--pa-link); line-height:1.9; }
.pa-theme .pa-department-arrow { flex:none; align-self:center; color:var(--pa-link); font-size:13px; }
[dir=ltr] .pa-theme .pa-department-arrow { transform:rotate(180deg); }
.pa-theme .pa-ticket-departments .pa-department-card:hover { border-color:var(--pa-link); background:var(--pa-subtle); box-shadow:0 10px 28px rgb(22 54 89 / 8%); transform:translateY(-3px); }
.pa-theme .pa-ticket-departments .pa-department-card:focus-visible { outline:2px solid var(--pa-link); outline-offset:4px; }
.pa-theme .pa-ticket-empty { padding:32px 24px; text-align:center; border:1px solid var(--pa-border); border-radius:18px; background:var(--pa-surface); }
.pa-theme .pa-ticket-empty h3 { margin:18px 0 12px; color:var(--pa-primary); font-size:17px; line-height:1.9; }
.pa-theme .pa-ticket-empty p { max-width:560px; margin:0 auto 20px; color:var(--pa-muted); font-size:14px; line-height:2; }
.pa-theme .pa-ticket-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; margin:24px 0 0; }
.pa-theme .pa-ticket-actions .btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:46px; max-width:100%; padding:10px 24px; border-radius:11px; font-size:14px; white-space:normal; }
.pa-theme .pa-ticket-form label { margin-bottom:8px; font-size:14px; font-weight:500; line-height:1.8; }
.pa-theme .pa-ticket-form .form-control { min-height:48px; padding:11px 14px; border:1px solid var(--pa-border); border-radius:10px; background:var(--pa-surface); color:var(--pa-primary); font-size:16px; }
.pa-theme .pa-ticket-form input[type=email] { direction:ltr; text-align:left; }
.pa-theme .pa-ticket-service-search { margin-bottom:8px; }
.pa-theme .pa-ticket-service-search small { display:block; margin-top:6px; }
.pa-theme .pa-ticket-service-search[hidden],.pa-theme .pa-ticket-service-search [hidden] { display:none; }
.pa-theme.pa-page-supportticketsubmit-steptwo .pa-has-context { grid-template-columns:minmax(0,1fr); grid-template-rows:min-content 1fr; }
.pa-theme.pa-page-supportticketsubmit-steptwo .pa-page-heading { grid-column:1; grid-row:1; }
.pa-theme.pa-page-supportticketsubmit-steptwo .pa-has-context > .pa-page-content { grid-column:1; grid-row:2; }
.pa-theme.pa-page-supportticketsubmit-steptwo .pa-context-stack { grid-column:1; grid-row:3; }
.pa-theme .pa-ticket-service-native { display:none; }
.pa-theme .pa-ticket-service-combobox { position:relative; min-width:0; }
.pa-theme .pa-ticket-form .pa-ticket-service-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; height:auto; text-align:start; white-space:normal; }
.pa-theme .pa-ticket-service-toggle span { min-width:0; overflow-wrap:anywhere; }
.pa-theme .pa-ticket-service-toggle i { flex-shrink:0; font-size:12px; }
.pa-theme .pa-ticket-service-popup { position:absolute; top:calc(100% + 6px); inset-inline:0; z-index:30; padding:10px; margin:0; border:1px solid var(--pa-border); border-radius:12px; background:var(--pa-surface); box-shadow:0 8px 24px rgb(22 54 89 / 12%); }
.pa-theme .pa-ticket-service-options { max-height:240px; overflow:auto; margin-top:8px; }
.pa-theme .pa-ticket-service-option { display:block; width:100%; padding:10px; border:0; border-radius:8px; background:transparent; color:var(--pa-primary); font:inherit; text-align:start; overflow-wrap:anywhere; }
.pa-theme .pa-ticket-service-option:is(:hover,.is-active),.pa-theme .pa-ticket-service-option[aria-selected=true] { background:var(--pa-subtle); color:var(--pa-link); }
.pa-theme .pa-ticket-form textarea.form-control { min-height:230px; line-height:1.9; }
.pa-theme .pa-ticket-form .form-control:focus { border-color:var(--pa-link); box-shadow:0 0 0 3px rgb(8 100 220 / 12%); }
.pa-theme .pa-ticket-routing { padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--pa-border); }
.pa-theme .pa-ticket-routing-intro { margin:0 0 22px; font-size:14px; color:var(--pa-muted); line-height:2; }
.pa-theme .pa-ticket-form .pa-ticket-routing > .form-group { width:100%; float:none; padding:0; margin-bottom:22px; }
.pa-theme .pa-ticket-routing > .pa-ticket-route-fields { display:flex; flex-wrap:wrap; gap:18px; margin:0; }
.pa-theme .pa-ticket-routing > .pa-ticket-route-fields::before,
.pa-theme .pa-ticket-routing > .pa-ticket-route-fields::after { display:none; }
.pa-theme .pa-ticket-routing > .pa-ticket-route-fields > .form-group { flex:1 1 260px; width:auto; min-width:0; float:none; padding:0; margin:0; }
.pa-theme .pa-ticket-form #inputDepartment.pa-ticket-department-native { display:none; }
.pa-theme .pa-ticket-department-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.pa-theme .pa-ticket-department-grid.pa-single-department { grid-template-columns:minmax(0,320px); justify-content:center; }
.pa-theme .pa-ticket-department-option { --department-color:var(--pa-link); position:relative; display:flex; flex-direction:column; align-items:center; gap:14px; min-width:0; min-height:180px; margin:0; padding:24px 18px; border:1px solid var(--pa-border); border-radius:18px; background:var(--pa-surface); color:var(--pa-primary); text-align:center; cursor:pointer; transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s; }
.pa-theme .pa-ticket-department-option strong { max-width:100%; font-size:16px; line-height:1.9; overflow-wrap:anywhere; }
.pa-theme .pa-ticket-department-icon { display:grid; place-items:center; flex:none; width:70px; height:70px; border-radius:50%; color:var(--department-color); background:var(--brand-blue-soft); background:color-mix(in srgb,var(--department-color) 12%,var(--pa-surface)); font-size:30px; }
.pa-theme .pa-ticket-department-icon img { grid-area:1/1; width:46px; height:46px; object-fit:contain; }
.pa-theme .pa-ticket-department-icon > i { grid-area:1/1; }
.pa-theme .pa-ticket-department-icon > i[hidden] { display:none; }
.pa-theme .pa-department-symbol > svg { display:block; width:34px; height:34px; }
.pa-theme .pa-ticket-department-icon > svg { grid-area:1/1; width:46px; height:46px; }
.pa-theme .pa-ticket-department-check { position:absolute; top:14px; inset-inline-end:14px; color:var(--department-color); opacity:0; font-size:18px; }
.pa-theme .pa-ticket-department-option.is-selected .pa-ticket-department-check { opacity:1; }
.pa-theme .pa-ticket-department-details { display:grid; grid-template-rows:0fr; max-width:100%; opacity:0; transition:grid-template-rows .2s,opacity .2s; }
.pa-theme .pa-ticket-department-details > span { min-height:0; overflow:hidden; color:var(--pa-muted); font-size:13px; line-height:1.9; overflow-wrap:anywhere; }
.pa-theme .pa-ticket-department-option:is(:hover,:focus-visible,.is-selected) { border-color:var(--department-color); background:var(--pa-subtle); background:color-mix(in srgb,var(--department-color) 6%,var(--pa-surface)); box-shadow:inset 0 0 0 1px var(--department-color); }
.pa-theme .pa-ticket-department-option:is(:hover,:focus-visible,.is-selected) .pa-ticket-department-details { grid-template-rows:1fr; opacity:1; }
.pa-theme .pa-ticket-department-option:focus-visible { outline:2px solid var(--department-color); outline-offset:3px; }
.pa-theme .pa-ticket-department-option:disabled { opacity:.5; cursor:not-allowed; }
.pa-theme .pa-ticket-department-invalid { outline:2px solid #dc2626; outline-offset:4px; border-radius:18px; }
.pa-theme .pa-content-supportticketsubmit-steptwo .pa-ticket-form input[type=file] { min-height:62px; padding:16px; border-style:dashed; border-radius:12px; background:var(--pa-subtle); }
@media(min-width:601px) and (max-width:1000px) { .pa-theme .pa-ticket-department-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
    .pa-theme .pa-ticket-department-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
    .pa-theme .pa-ticket-department-option { min-height:160px; padding:20px 16px; }
    .pa-theme .pa-ticket-routing > .pa-ticket-route-fields { flex-direction:column; }
    .pa-theme .pa-ticket-routing > .pa-ticket-route-fields > .form-group { flex-basis:auto; width:100%; }
    .pa-theme .pa-department-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
    .pa-theme .pa-ticket-departments .pa-department-card { padding:20px 16px; min-height:140px; gap:12px; }
    .pa-theme .pa-ticket-intro { gap:12px; }
    .pa-theme .pa-ticket-intro h2 { font-size:18px; }
    .pa-theme .pa-ticket-empty { padding:24px 18px; }
}
@media(prefers-reduced-motion:reduce) {
    .pa-theme .pa-ticket-department-option,.pa-theme .pa-ticket-department-details { transition:none; }
    .pa-theme .pa-ticket-departments .pa-department-card { transition:none; }
    .pa-theme .pa-ticket-departments .pa-department-card:hover { transform:none; }
}
