/* Original Jet OUT client skin for osTicket. Load after the stock client styles. */
html:has(body.jetout-client) { background: #012140; }
body.jetout-client {
 --jo-bg:#012140; --jo-surface:#0a3a63; --jo-sunken:#04294a; --jo-border:#14456e;
 --jo-text:#f7fcfe; --jo-body:#dceaf4; --jo-muted:#9db6cc; --jo-primary:#3b92e0;
 --jo-focus:#6fbbff; --jo-success:#6dc080; --jo-warning:#f1c233; --jo-danger:#e5695f;
 background:var(--jo-bg); color:var(--jo-body); min-height:100vh; margin:0;
 font:16px/1.65 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 color-scheme:dark; -webkit-font-smoothing:antialiased;
}
.jetout-client a { color:var(--jo-focus); }
.jetout-client a:hover { color:var(--jo-text); }
.jetout-client :is(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid var(--jo-focus)!important; outline-offset:3px; }
.jetout-client h1,.jetout-client h2,.jetout-client h3,.jetout-client h4 { color:var(--jo-text); font-family:inherit; line-height:1.25; }
.jetout-client h1 { font-size:32px; letter-spacing:-.025em; margin:0 0 16px; }
.jetout-client h2 { font-size:24px; margin:0 0 16px; }
.jetout-client h3 { font-size:18px; }
.jetout-client hr { border:0; border-top:1px solid var(--jo-border); margin:24px 0; }
.jetout-client #container { width:calc(100% - 64px); max-width:1200px; margin:0 auto; background:transparent; box-shadow:none; }
.jetout-client #header { display:flex; align-items:center; justify-content:space-between; gap:24px; height:auto; min-height:112px; padding:8px 0; }
.jetout-client #header #logo { order:-1; display:flex; align-items:center; gap:24px; height:auto; text-decoration:none; float:none; }
.jetout-client #header #logo img { width:152px; max-height:56px; object-fit:contain; }
.jetout-client .jetout-product { color:var(--jo-text); font-size:22px; font-weight:600; line-height:1.3; border-left:1px solid var(--jo-border); padding-left:24px; }
.jetout-client .jetout-product small { display:block; margin-top:4px; font-size:12px; font-weight:400; color:var(--jo-muted); }
.jetout-client #header .pull-right { float:none; }
.jetout-client #header p { width:auto; padding:0; margin:0; font-size:14px; color:var(--jo-muted); }
.jetout-client #header p:empty { display:none; }
.jetout-client #header p a { display:inline-block; padding:10px 8px; }
.jetout-client #nav { display:flex; flex-wrap:wrap; gap:8px; height:auto; padding:8px; margin:0; border:1px solid var(--jo-border); background:var(--jo-sunken); border-radius:12px; box-shadow:none; white-space:normal; }
.jetout-client #nav li { display:block; }
.jetout-client #nav li a { display:block; height:auto; padding:12px 20px; margin:0; line-height:20px; background-image:none; border-radius:8px; color:var(--jo-muted); font-size:14px; font-weight:600; }
.jetout-client #nav li a.active,.jetout-client #nav li a:hover { color:var(--jo-text); background:var(--jo-surface); }
.jetout-client #nav li a.active { box-shadow:inset 0 -2px var(--jo-focus); }
.jetout-client #content { margin:24px 0 0; padding:40px; background:var(--jo-sunken); border:1px solid var(--jo-border); border-radius:12px; min-height:400px; }
.jetout-client #content > p { color:var(--jo-muted); max-width:760px; margin-bottom:28px; }
.jetout-client #footer { color:var(--jo-muted); font-size:12px; padding:24px 16px 32px; }
.jetout-client #footer a { color:var(--jo-muted); }
.jetout-client #footer #poweredBy { width:auto; height:auto; text-indent:0; background:none; padding:8px; }
/* Home: clear introduction and one primary route into support. */
.jetout-client #content:has(#landing_page) { padding:56px 40px; }
.jetout-client #landing_page { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); gap:40px; align-items:start; }
.jetout-client #landing_page .main-content { width:auto; min-width:0; grid-column:1; grid-row:1; }
.jetout-client #landing_page .sidebar { float:none; width:auto; margin:0; grid-column:2; grid-row:1; }
.jetout-client #landing_page > .clear { display:none; }
.jetout-client #landing_page > div:last-child:not(.sidebar):not(.main-content) { grid-column:1/-1; }
.jetout-client .jetout-eyebrow { margin:0 0 24px; color:var(--jo-focus); font-size:12px; font-weight:700; letter-spacing:.16em; }
.jetout-client #landing_page .thread-body { padding:0; background:transparent; font:inherit!important; }
.jetout-client #landing_page h1 { font-size:42px; line-height:1.15; letter-spacing:-.03em; margin:0 0 24px; max-width:500px; }
.jetout-client #landing_page .front-page-button { padding:28px; background:var(--jo-surface); border:1px solid var(--jo-border); border-radius:12px; text-align:left; }
.jetout-client #landing_page .front-page-button h2 { font-size:22px; }
.jetout-client .jetout-action-copy { font-size:14px; color:var(--jo-body); margin:0 0 24px; }
.jetout-client .front-page-button p:last-child { margin-bottom:0; }
.jetout-client .sidebar .content section { border-color:var(--jo-border); background:transparent; color:var(--jo-body); padding:24px 0; }
.jetout-client .sidebar .content .header { color:var(--jo-text); }
/* Shared controls, including forms inserted by help-topic AJAX. */
.jetout-client input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=reset]):not([type=button]),
.jetout-client select,.jetout-client textarea {
 box-sizing:border-box; max-width:100%; min-height:48px; padding:10px 12px;
 background:var(--jo-bg); color:var(--jo-text); border:1px solid var(--jo-border); border-radius:8px;
 font-family:inherit; font-size:16px; box-shadow:none;
}
.jetout-client input::placeholder,.jetout-client textarea::placeholder { color:var(--jo-muted); opacity:1; }
.jetout-client input[type=checkbox],.jetout-client input[type=radio] { accent-color:var(--jo-primary); width:18px; height:18px; vertical-align:middle; }
.jetout-client :is(button,.button,.btn,input[type=submit],input[type=reset],input[type=button]) {
 box-sizing:border-box; min-height:48px; padding:12px 20px; border:1px solid var(--jo-border); border-radius:8px;
 background:var(--jo-surface); color:var(--jo-text); font:600 14px/22px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 text-shadow:none; box-shadow:none; text-decoration:none; cursor:pointer;
}
.jetout-client :is(button[type=submit],input[type=submit],.blue.button),.jetout-client .blue.button:visited { background:var(--jo-primary); color:var(--jo-bg); border-color:var(--jo-primary); }
.jetout-client .green.button,.jetout-client .green.button:visited { background:var(--jo-sunken); color:var(--jo-text); border-color:var(--jo-border); }
.jetout-client :is(button,.button,.btn,input[type=submit],input[type=reset],input[type=button]):hover { background:var(--jo-border); color:var(--jo-text); border-color:var(--jo-focus); }
.jetout-client :is(button[type=submit],input[type=submit],.blue.button):hover { background:var(--jo-focus); color:var(--jo-bg); }
.jetout-client .buttons { background:transparent; border-color:var(--jo-border); }
.jetout-client #ticketForm > table,.jetout-client #clientLogin,.jetout-client #clientLogin table { width:100%; }
.jetout-client #ticketForm td { padding:8px 0; }
.jetout-client .form-header { background:var(--jo-surface); color:var(--jo-text); padding:16px; border:1px solid var(--jo-border); border-radius:8px; margin:24px 0 16px; }
.jetout-client .form-header h3 { margin:0; }
.jetout-client .form-header em,.jetout-client .form-header div { color:var(--jo-muted); }
.jetout-client .form-field { margin:0 0 16px; }
.jetout-client .form-field label,.jetout-client .jetout-label { display:block; margin-bottom:8px; color:var(--jo-body); font-size:14px; }
.jetout-client #ticketForm input[type=text],.jetout-client #ticketForm input[type=email] { width:100%; max-width:560px; }
.jetout-client #ticketForm input[size="5"] { width:90px; }
.jetout-client #ticketForm select { min-width:280px; }
.jetout-client .error,.jetout-client .required,.jetout-client font.error { color:var(--jo-danger); }
.jetout-client .faded,.jetout-client .description { color:var(--jo-muted); }
/* Sign-in, ticket access and account forms. */
.jetout-client #clientLogin > div { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:start; }
.jetout-client #clientLogin .login-box { display:block; width:auto; padding:24px; border:1px solid var(--jo-border); border-radius:12px; background:var(--jo-bg); }
.jetout-client .login-box > div { margin-bottom:20px; }
.jetout-client .login-box input:not([type=submit]) { width:100%; }
.jetout-client .login-box > strong:empty,.jetout-client .login-box > div:has(> strong:empty) { display:none; }
.jetout-client #clientLogin .instructions { display:block; padding:24px 0; color:var(--jo-muted); width:auto; }
.jetout-client #clientLogin label { font-size:14px; }
.jetout-client #clientLogin label input { display:block; margin-top:8px; }
/* Ticket history, rich text and attachments */
.jetout-client .thread-body { background:var(--jo-bg); color:var(--jo-body); font-family:inherit; }
.jetout-client .thread-body a:not(.button) { color:var(--jo-focus)!important; }
.jetout-client .thread-entry,.jetout-client .thread-entry .header { border-color:var(--jo-border); }
.jetout-client .thread-entry .header { background:var(--jo-surface); color:var(--jo-body); padding:16px; }
.jetout-client .thread-entry .header .title { color:var(--jo-text); }
.jetout-client .thread-entry.avatar .header:before,.jetout-client .thread-entry.avatar .header:after { border-right-color:var(--jo-surface); }
.jetout-client .thread-body blockquote { color:var(--jo-muted); border-color:var(--jo-border); }
.jetout-client .thread-body :is(pre,code),.jetout-client .thread-body .attachments { background:var(--jo-sunken); color:var(--jo-body); border-color:var(--jo-border); }
.jetout-client .redactor-box,.jetout-client .redactor-editor,.jetout-client .redactor-editor:focus { background:var(--jo-bg); color:var(--jo-body); border-color:var(--jo-border); box-shadow:none; }
.jetout-client .redactor-box .redactor-toolbar,.jetout-client .redactor-toolbar a,.jetout-client .redactor-box .redactor-toolbar-wrapper { background:var(--jo-surface)!important; color:var(--jo-body); box-shadow:none; }
.jetout-client .redactor-toolbar a:hover,.jetout-client .redactor-toolbar a.redactor-act { background:var(--jo-border)!important; color:var(--jo-text); }
.jetout-client .redactor-styles,.jetout-client .redactor-in { color:var(--jo-body); font-family:inherit; }
.jetout-client .redactor-placeholder:before { color:var(--jo-muted); }
.jetout-client .filedrop,.jetout-client .filedrop .dropzone { background:var(--jo-bg); border-color:var(--jo-border); color:var(--jo-muted); }
.jetout-client .filedrop .dropzone a { color:var(--jo-focus); }
.jetout-client table { color:var(--jo-body); border-color:var(--jo-border); }
.jetout-client table.list { width:100%; }
.jetout-client table.list th { background:var(--jo-surface); color:var(--jo-text); border-color:var(--jo-border); padding:12px; }
.jetout-client table.list th a { color:var(--jo-body); }
.jetout-client table.list tbody tr:nth-child(odd) td,.jetout-client table.list tbody tr:nth-child(even) td { background:var(--jo-bg); color:var(--jo-body); border-color:var(--jo-border); padding:12px; }
.jetout-client table.list tbody tr:hover td { background:var(--jo-surface); }
.jetout-client .ticket_info td,.jetout-client .ticket_info th { background:transparent; color:var(--jo-body); }
/* Feedback and dynamic UI */
.jetout-client :is(#msg_notice,.notice_bar,.success-banner) { background:var(--jo-bg); color:var(--jo-success); border:1px solid var(--jo-success); padding:16px; border-radius:8px; }
.jetout-client :is(#msg_error,.error_bar,.error-banner) { background:var(--jo-bg); color:var(--jo-danger); border:1px solid var(--jo-danger); padding:16px; border-radius:8px; }
.jetout-client :is(#msg_warning,.warning_bar,.warning-banner) { background:var(--jo-bg); color:var(--jo-warning); border:1px solid var(--jo-warning); padding:16px; border-radius:8px; }
.jetout-client :is(#msg_info,.info-banner,#loading,.dialog,.redactor-dropdown,.ui-widget-content,.ui-widget-header,.select2-dropdown) { background:var(--jo-sunken); color:var(--jo-body); border-color:var(--jo-border); }
.jetout-client #overlay { background:#001021; opacity:.75; }
.jetout-client .select2-container--default .select2-selection--single,.jetout-client .select2-container--default .select2-selection--multiple { background:var(--jo-bg); border-color:var(--jo-border); color:var(--jo-body); min-height:44px; }
.jetout-client .select2-container--default .select2-selection__rendered { color:var(--jo-body); }
.jetout-client .select2-container--default .select2-results__option--highlighted[aria-selected] { background:var(--jo-surface); color:var(--jo-text); }
.jetout-client .ui-widget-content .ui-state-default { background:var(--jo-surface); color:var(--jo-body); border-color:var(--jo-border); }
.jetout-client #faq,.jetout-client .faq-content,.jetout-client #kb-search,.jetout-client .featured-category { background:transparent; color:var(--jo-body); border-color:var(--jo-border); }
.jetout-client #kb-search #breadcrumbs,.jetout-client .article-teaser { color:var(--jo-muted); }
.jetout-client .search-form form { display:flex; gap:8px; margin-bottom:24px; }
.jetout-client .search-form input { min-width:0; flex:1; }
@media(max-width:900px) {
 .jetout-client #container { width:calc(100% - 32px); }
 .jetout-client #content { padding:28px; }
 .jetout-client #content:has(#landing_page) { padding:32px; }
 .jetout-client #landing_page { gap:24px; grid-template-columns:minmax(0,1fr) minmax(260px,.9fr); }
 .jetout-client #landing_page h1 { font-size:34px; }
}
@media(max-width:640px) {
 .jetout-client #header { flex-wrap:wrap; padding:24px 0; gap:16px; }
 .jetout-client #header #logo { gap:16px; }
 .jetout-client #header #logo img { width:120px; }
 .jetout-client .jetout-product { font-size:20px; padding-left:16px; }
 .jetout-client #header p a { padding:4px 8px; }
 .jetout-client #nav li { flex:1 1 auto; }
 .jetout-client #nav li a { padding:12px; }
 .jetout-client #content,.jetout-client #content:has(#landing_page) { padding:24px 20px; }
 .jetout-client #landing_page { display:flex; flex-direction:column; }
 .jetout-client #landing_page .main-content { order:-1; }
 .jetout-client #landing_page .sidebar { width:100%; }
 .jetout-client #landing_page h1 { font-size:32px; }
 .jetout-client #clientLogin > div { grid-template-columns:minmax(0,1fr); gap:16px; }
 .jetout-client #ticketForm select { min-width:0; width:100%; }
 .jetout-client #ticketForm .form-field { max-width:100%; }
 .jetout-client #ticketForm table { width:100%; }
 .jetout-client #clientLogin .login-box { padding:20px; }
 .jetout-client #content { overflow-wrap:anywhere; }
 .jetout-client .thread-entry.avatar { margin-left:0; margin-right:0; }
 .jetout-client .thread-entry > .avatar { display:none; }
}
/* Stock access forms carry ID-specific light backgrounds. */
.jetout-client #clientLogin { box-sizing:border-box; background:transparent; border:0; box-shadow:none; padding:0; margin:24px 0; }
.jetout-client #clientLogin input { background:var(--jo-bg); color:var(--jo-text); border:1px solid var(--jo-border); border-radius:8px; padding:10px 12px; }
.jetout-client #clientLogin input[type=submit] { background:var(--jo-primary); color:var(--jo-bg); border-color:var(--jo-primary); padding:12px 20px; }
.jetout-client #clientLogin input[type=submit]:hover { background:var(--jo-focus); }
.jetout-client #clientLogin .instructions { background:none; }
.jetout-client #clientLogin .login-box input { width:100%; }
.jetout-client #clientLogin .login-box { box-sizing:border-box; }
.jetout-client .front-page-button .button { width:100%; }
.jetout-client #content form > table.padded { width:100%; }
.jetout-client table.padded td { padding:10px 0; }
.jetout-client table.padded input { max-width:100%; }
@media(max-width:640px) {
 .jetout-client table.padded,.jetout-client table.padded tbody,.jetout-client table.padded tr,.jetout-client table.padded td { display:block; width:100%; box-sizing:border-box; }
 .jetout-client table.padded .select2-container { max-width:100%; }
 .jetout-client table.padded input:not([type=checkbox]):not([type=radio]) { width:100%; }
 .jetout-client table.padded input[size="5"] { width:80px; }
 .jetout-client #content form > table { max-width:100%; }
}
.jetout-client table.padded tr > td,.jetout-client table.padded tr > th { height:auto; }
.jetout-client :is(.notice_bar,.warning_bar,.error_bar) { height:auto; }
