html{margin:0!important;padding:0!important;width:100%;min-height:100%;background:#f4f6f8}body.ohhsem-system-page{margin:0!important;padding:0!important;width:100%!important;min-width:0!important;min-height:100vh!important;max-width:none!important;background:#f4f6f8!important;color:#23314a!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;line-height:1.45!important;overflow-x:hidden}body.ohhsem-system-page *{box-sizing:border-box}body.ohhsem-system-page img{max-width:100%;height:auto}body.ohhsem-system-page button,body.ohhsem-system-page input,body.ohhsem-system-page select,body.ohhsem-system-page textarea{font-family:inherit}body.ohhsem-system-page h1,body.ohhsem-system-page h2,body.ohhsem-system-page h3,body.ohhsem-system-page h4,body.ohhsem-system-page p{font-family:inherit}body.ohhsem-system-page a{font-family:inherit}#wpadminbar{display:none!important}html{margin-top:0!important}
:root{--ots-red:#df2638;--ots-red-dark:#c81f31;--ots-navy:#15233d;--ots-text:#23314a;--ots-muted:#7a8798;--ots-bg:#f4f6f8;--ots-card:#fff;--ots-line:#e8ebef;--ots-green:#20a874;--ots-blue:#4d7df0;--ots-orange:#f59e0b;--ots-shadow:0 10px 30px rgba(25,35,52,.06)}
*{box-sizing:border-box}.ots-app,.ots-login{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ots-text)}body:has(.ots-app),body:has(.ots-login){margin:0;background:var(--ots-bg)}body:has(.ots-app) header:not(.ots-topbar):not(.ots-public-header):not(.ots-mobile-appbar),body:has(.ots-app) footer,body:has(.ots-login) header:not(.ots-topbar),body:has(.ots-login) footer{display:none!important}.ots-app a{text-decoration:none}.ots-admin-layout{min-height:100vh;display:grid;grid-template-columns:220px 1fr}.ots-sidebar{background:#fff;border-right:1px solid var(--ots-line);padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.ots-sidebar-logo{padding:4px 8px 24px}.ots-sidebar-logo img{width:150px;height:auto}.ots-side-nav{display:flex;flex-direction:column;gap:5px}.ots-side-nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:9px;color:#566274;font-size:13px;font-weight:600}.ots-side-nav a:hover{background:#f8f9fb;color:var(--ots-navy)}.ots-side-nav a.active{background:#fff1f3;color:var(--ots-red)}.ots-side-icon{width:18px;text-align:center;font-size:15px}.ots-sidebar-bottom{margin-top:auto}.ots-support{background:#fff7f8;border:1px solid #fde1e5;border-radius:12px;padding:14px}.ots-support b{display:block;font-size:12px;margin-bottom:5px}.ots-support span{display:block;font-size:11px;color:var(--ots-muted);line-height:1.45}.ots-admin-content{min-width:0}.ots-topbar{height:72px;background:#fff;border-bottom:1px solid var(--ots-line);display:flex;align-items:center;padding:0 28px;gap:20px;position:sticky;top:0;z-index:30}.ots-search{flex:1;max-width:520px;position:relative}.ots-search input{width:100%;height:40px;border:1px solid var(--ots-line);border-radius:9px;padding:0 14px 0 38px;background:#fafbfc;color:var(--ots-text)}.ots-search:before{content:'⌕';position:absolute;left:14px;top:8px;color:#98a2b3}.ots-top-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.ots-icon-btn{width:38px;height:38px;border:1px solid var(--ots-line);border-radius:9px;display:grid;place-items:center;background:#fff;color:#647084}.ots-user-chip{display:flex;align-items:center;gap:10px}.ots-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#ffe4e7;color:var(--ots-red);font-weight:800}.ots-user-chip strong{font-size:13px;display:block}.ots-user-chip small{font-size:11px;color:var(--ots-muted)}.ots-main{padding:26px 28px 50px;max-width:1680px;margin:0 auto}.ots-breadcrumb{font-size:11px;color:#9aa3af;margin-bottom:8px}.ots-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.ots-title-row h1{font-size:27px;margin:0 0 5px;color:var(--ots-navy);letter-spacing:-.02em}.ots-title-row p{margin:0;color:var(--ots-muted);font-size:13px}.ots-btn{appearance:none;border:0;background:var(--ots-red);color:#fff!important;border-radius:9px;padding:11px 16px;font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;justify-content:center}.ots-btn:hover{background:var(--ots-red-dark)}.ots-btn.secondary{background:#fff;color:var(--ots-text)!important;border:1px solid var(--ots-line)}.ots-btn.ghost{background:#fff;color:var(--ots-red)!important;border:1px solid #f5c7cd}.ots-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.ots-stat{background:#fff;border:1px solid var(--ots-line);border-radius:13px;padding:17px 18px;box-shadow:var(--ots-shadow)}.ots-stat-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.ots-stat span{font-size:12px;color:var(--ots-muted);font-weight:600}.ots-stat strong{display:block;color:var(--ots-navy);font-size:27px;margin-top:7px;line-height:1}.ots-stat small{font-size:10px;color:#98a2b3;display:block;margin-top:8px}.ots-stat-icon{width:34px;height:34px;border-radius:9px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center}.ots-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:16px}.ots-card{background:#fff;border:1px solid var(--ots-line);border-radius:13px;box-shadow:var(--ots-shadow);padding:18px;margin-bottom:16px}.ots-card-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.ots-card-head h2,.ots-card-head h3{margin:0;color:var(--ots-navy);font-size:15px}.ots-card-head p{margin:4px 0 0;color:var(--ots-muted);font-size:11px}.ots-link{color:var(--ots-red);font-size:11px;font-weight:700}.ots-chart{height:190px;border-bottom:1px solid var(--ots-line);position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(223,38,56,.05),transparent 72%)}.ots-chart:before,.ots-chart:after{content:"";position:absolute;left:0;right:0;height:1px;background:#eef0f3}.ots-chart:before{top:33%}.ots-chart:after{top:66%}.ots-chart svg{position:absolute;inset:20px 10px 12px;width:calc(100% - 20px);height:calc(100% - 32px)}.ots-table-wrap{overflow:auto}.ots-table{width:100%;border-collapse:collapse}.ots-table th{font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#8c97a6;background:#fafbfc;padding:10px 9px;text-align:left;border-bottom:1px solid var(--ots-line)}.ots-table td{padding:11px 9px;border-bottom:1px solid #f0f2f4;font-size:11.5px;vertical-align:middle}.ots-table tr:last-child td{border-bottom:0}.ots-table strong{font-size:11.5px}.ots-table small{display:block;color:var(--ots-muted);font-size:10px;margin-top:2px}.ots-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:9.5px;font-weight:800;text-transform:capitalize}.ots-status.green{background:#e9f8f2;color:#16825c}.ots-status.orange{background:#fff4da;color:#b47608}.ots-status.red{background:#ffeaed;color:#c5273b}.ots-status.blue{background:#eaf0ff;color:#3d63c9}.ots-departure-list{display:flex;flex-direction:column;gap:9px}.ots-departure-item{display:grid;grid-template-columns:48px 1fr auto;gap:9px;align-items:center;border-bottom:1px solid #f0f2f4;padding-bottom:9px}.ots-departure-item:last-child{border-bottom:0}.ots-datebox{border:1px solid #f3c6cc;background:#fff6f7;color:var(--ots-red);border-radius:9px;text-align:center;padding:6px 4px}.ots-datebox b{display:block;font-size:14px}.ots-datebox small{font-size:8px}.ots-package-rank{display:flex;align-items:center;gap:9px;padding:8px 0}.ots-rank{width:22px;height:22px;border-radius:7px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center;font-size:9px;font-weight:800}.ots-progressbar{height:5px;border-radius:99px;background:#eef1f4;overflow:hidden;margin-top:5px}.ots-progressbar i{display:block;height:100%;background:var(--ots-red);border-radius:99px}.ots-public-header{height:76px;background:#fff;border-bottom:1px solid var(--ots-line);display:flex;align-items:center;padding:0 4vw;gap:32px;position:sticky;top:0;z-index:40}.ots-public-brand img{width:150px}.ots-public-nav{display:flex;align-items:center;gap:26px;flex:1}.ots-public-nav a{font-size:12.5px;color:#536071;font-weight:650}.ots-public-nav a.active{color:var(--ots-red)}.ots-public-user{display:flex;align-items:center;gap:10px}.ots-public-main{max-width:1480px;margin:0 auto;padding:26px 4vw 52px}.ots-package-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.ots-package-head h1{margin:0;color:var(--ots-navy);font-size:28px}.ots-package-head p{margin:6px 0 0;color:var(--ots-muted);font-size:12px}.ots-filter-row{display:grid;grid-template-columns:1.4fr repeat(3,.65fr);gap:10px;background:#fff;border:1px solid var(--ots-line);border-radius:12px;padding:12px;margin-bottom:17px}.ots-filter-row input,.ots-filter-row select{height:40px;border:1px solid var(--ots-line);border-radius:8px;padding:0 11px;background:#fff;font-size:12px}.ots-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ots-package-card{background:#fff;border:1px solid var(--ots-line);border-radius:14px;overflow:hidden;box-shadow:var(--ots-shadow)}.ots-package-image{height:185px;background-size:cover;background-position:center;position:relative}.ots-package-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.15))}.ots-duration-badge{position:absolute;left:12px;top:12px;z-index:2;background:#fff;color:var(--ots-text);padding:5px 9px;border-radius:999px;font-size:9px;font-weight:800}.ots-package-body{padding:14px 15px 15px}.ots-package-body h3{margin:0 0 5px;color:var(--ots-navy);font-size:16px}.ots-package-meta{display:flex;gap:12px;color:var(--ots-muted);font-size:10.5px;margin-bottom:12px}.ots-package-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid #f1f2f4}.ots-package-price small{display:block;color:var(--ots-muted);font-size:9px}.ots-package-price strong{font-size:15px;color:var(--ots-navy)}.ots-flow-wrap{max-width:1220px;margin:0 auto}.ots-stepper{display:grid;grid-template-columns:repeat(4,1fr);max-width:780px;margin:5px auto 24px;position:relative}.ots-stepper:before{content:"";height:2px;background:#e3e6eb;position:absolute;top:15px;left:12%;right:12%}.ots-stepper>div{position:relative;z-index:1;text-align:center;color:#9aa3af;font-size:10px}.ots-stepper b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9ecf0;color:#6d7786;margin:0 auto 6px;font-size:11px}.ots-stepper .done b{background:#e9f7f1;color:var(--ots-green)}.ots-stepper .active b{background:var(--ots-red);color:#fff}.ots-stepper .active span,.ots-stepper .done span{color:var(--ots-navy);font-weight:750}.ots-booking-card{background:#fff;border:1px solid var(--ots-line);border-radius:14px;box-shadow:var(--ots-shadow);padding:20px;margin-bottom:14px}.ots-section-label{font-size:9px;letter-spacing:.09em;color:var(--ots-red);font-weight:900;text-transform:uppercase}.ots-section-title{font-size:17px;color:var(--ots-navy);margin:4px 0 2px}.ots-section-sub{font-size:10px;color:var(--ots-muted);margin:0}.ots-package-summary{display:grid;grid-template-columns:120px 1fr auto;gap:15px;align-items:center}.ots-package-thumb{height:82px;border-radius:10px;background-size:cover;background-position:center}.ots-package-summary-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 18px}.ots-info-label{font-size:9px;color:#9aa3af;margin-bottom:2px}.ots-info-value{font-size:11px;color:var(--ots-text);font-weight:700}.ots-change-link{font-size:10px;color:var(--ots-red);font-weight:800}.ots-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ots-form label{display:block;font-size:10px;font-weight:750;color:#596575}.ots-form input,.ots-form select,.ots-form textarea{width:100%;border:1px solid #dfe3e8;border-radius:8px;background:#fff;padding:10px 11px;margin-top:5px;color:var(--ots-text);font:inherit}.ots-form input:focus,.ots-form select:focus,.ots-form textarea:focus{outline:none;border-color:#ef9aa5;box-shadow:0 0 0 3px rgba(223,38,56,.08)}.ots-pax-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:14px}.ots-pax{border:1px solid var(--ots-line);border-radius:11px;padding:12px;min-width:0}.ots-pax:nth-child(1){background:#fff8f9}.ots-pax:nth-child(2){background:#fbfcfe}.ots-pax:nth-child(3){background:#f6f8ff}.ots-pax:nth-child(4){background:#fffbf2}.ots-pax:nth-child(5){background:#fff7fc}.ots-pax-title{font-size:11px;font-weight:800;color:var(--ots-navy);min-height:18px}.ots-pax small{font-size:8.5px;color:var(--ots-muted);display:block;margin-top:2px}.ots-pax strong{display:block;margin:9px 0;font-size:13px;color:var(--ots-navy)}.ots-counter{display:grid;grid-template-columns:30px 1fr 30px;border:1px solid #dfe3e8;border-radius:8px;overflow:hidden;background:#fff}.ots-counter button{border:0;background:#f7f8fa;height:30px;font-size:16px;cursor:pointer}.ots-counter input{border:0!important;margin:0!important;padding:4px!important;text-align:center;font-weight:800;appearance:textfield}.ots-booking-bottom{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px}.ots-pic-card{display:grid;grid-template-columns:1fr;gap:8px}.ots-summary-card{background:var(--ots-navy);color:#fff;border-radius:14px;padding:17px}.ots-summary-card h3{margin:0 0 12px;font-size:13px}.ots-summary-line{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:10px}.ots-summary-line:last-of-type{border-bottom:0}.ots-summary-line strong{font-size:12px}.ots-summary-total{display:flex;justify-content:space-between;align-items:flex-end;padding-top:12px;margin-top:4px}.ots-summary-total small{font-size:9px;color:#b8c0ce}.ots-summary-total strong{font-size:19px}.ots-action-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}.ots-action-row .ots-btn{min-width:180px}.ots-passenger-list{display:flex;flex-direction:column;gap:10px}.ots-passenger-card{border:1px solid var(--ots-line);border-radius:12px;background:#fff;overflow:hidden}.ots-passenger-card.is-pending{border-style:dashed}.ots-passenger-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#fbfcfd;border-bottom:1px solid var(--ots-line)}.ots-passenger-head-left{display:flex;align-items:center;gap:9px}.ots-passenger-no{width:26px;height:26px;border-radius:8px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center;font-size:9px;font-weight:900}.ots-passenger-head h3{margin:0;font-size:12px;color:var(--ots-navy)}.ots-passenger-head p{margin:2px 0 0;font-size:9px;color:var(--ots-muted)}.ots-passenger-body{display:grid;grid-template-columns:180px 1fr;gap:14px;padding:14px}.ots-upload-box{min-height:132px;border:1px dashed #c7cdd5;border-radius:10px;background:#fafbfc;padding:12px;display:flex!important;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--ots-muted);font-size:10px}.ots-upload-box input{font-size:9px;margin-top:8px!important;padding:0!important;border:0!important}.ots-passenger-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ots-auto-tag{display:inline-flex;align-items:center;gap:4px;color:var(--ots-green);font-size:9px;font-weight:750}.ots-review-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:14px}.ots-review-box{border:1px solid var(--ots-line);border-radius:11px;padding:14px}.ots-review-line{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #f0f2f4;font-size:10.5px}.ots-review-line:last-child{border:0}.ots-review-line span{color:var(--ots-muted)}.ots-success{text-align:center;background:#fff;border:1px solid var(--ots-line);border-radius:16px;padding:56px 24px;box-shadow:var(--ots-shadow)}.ots-success-icon{width:62px;height:62px;border-radius:50%;background:#e9f8f2;color:var(--ots-green);display:grid;place-items:center;font-size:28px;margin:0 auto 15px}.ots-success h2{margin:5px 0 8px;color:var(--ots-navy)}.ots-success p{color:var(--ots-muted);font-size:11px}.ots-success>strong{font-size:21px;color:var(--ots-navy)}.ots-empty{background:#fff;border:1px dashed #cbd1da;border-radius:12px;padding:36px;text-align:center;color:var(--ots-muted)}.ots-login{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at top right,#fff1f3,transparent 35%),var(--ots-bg)}.ots-login-card{width:min(420px,100%);background:#fff;border:1px solid var(--ots-line);border-radius:18px;padding:32px;box-shadow:0 25px 70px rgba(22,35,61,.1)}.ots-login-card>img{width:170px}.ots-login-card h1{margin:24px 0 6px;color:var(--ots-navy)}.ots-login-card p{color:var(--ots-muted);font-size:12px}.ots-login-card label{font-size:11px;font-weight:700}.ots-login-card input[type=text],.ots-login-card input[type=password]{width:100%;padding:11px;border:1px solid #dfe3e8;border-radius:8px;margin:6px 0 12px}.ots-login-card input[type=submit]{width:100%;background:var(--ots-red);color:#fff;border:0;border-radius:9px;padding:11px;font-weight:800}.ots-admin-mini-form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ots-admin-mini-form .wide{grid-column:span 2}.ots-admin-mini-form .full{grid-column:1/-1}.ots-admin-mini-form button{align-self:end}.ots-note{padding:11px 12px;border-radius:9px;background:#fff9e8;border:1px solid #f6e7b3;color:#8a6b13;font-size:10px}.ots-filters{display:flex;gap:8px;margin-bottom:12px}.ots-filters input,.ots-filters select{height:36px;border:1px solid var(--ots-line);border-radius:8px;padding:0 10px;font-size:10px}.ots-badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:9px;font-weight:800}.ots-airline{display:flex;align-items:center;gap:7px}.ots-airline-mark{width:24px;height:24px;border-radius:6px;background:#f7f8fa;display:grid;place-items:center;font-size:11px}.ots-row-actions{display:flex;gap:6px}.ots-row-actions a{font-size:9px;color:var(--ots-red);font-weight:800}.ots-pagination{display:flex;justify-content:space-between;align-items:center;padding-top:12px;color:var(--ots-muted);font-size:10px}.ots-pagination-pages{display:flex;gap:5px}.ots-pagination-pages span{width:26px;height:26px;border:1px solid var(--ots-line);border-radius:7px;display:grid;place-items:center}.ots-pagination-pages .active{background:var(--ots-red);color:#fff;border-color:var(--ots-red)}
@media(max-width:1200px){.ots-admin-layout{grid-template-columns:190px 1fr}.ots-stats{grid-template-columns:repeat(2,1fr)}.ots-dashboard-grid{grid-template-columns:1fr}.ots-package-grid{grid-template-columns:repeat(2,1fr)}.ots-pax-grid{grid-template-columns:repeat(3,1fr)}.ots-booking-bottom{grid-template-columns:1fr}.ots-passenger-fields{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ots-admin-layout{display:block}.ots-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--ots-line)}.ots-side-nav{display:grid;grid-template-columns:repeat(2,1fr)}.ots-support{display:none}.ots-topbar{padding:0 16px}.ots-search{display:none}.ots-main,.ots-public-main{padding:20px 15px 40px}.ots-public-header{padding:12px 15px;height:auto;flex-wrap:wrap}.ots-public-nav{order:3;width:100%;overflow:auto}.ots-package-grid,.ots-filter-row,.ots-stats,.ots-field-grid,.ots-pax-grid,.ots-package-summary,.ots-passenger-body,.ots-review-grid{grid-template-columns:1fr}.ots-package-summary-info,.ots-passenger-fields{grid-template-columns:1fr 1fr}.ots-admin-mini-form{grid-template-columns:1fr}.ots-admin-mini-form .wide,.ots-admin-mini-form .full{grid-column:auto}.ots-stepper span{font-size:8px}.ots-action-row{align-items:stretch;flex-direction:column-reverse}.ots-action-row .ots-btn{width:100%}.ots-title-row{flex-direction:column;align-items:stretch}}

/* v1.1.5 booking detail role separation */
.ots-detail-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.ots-detail-summary>div{background:#fff;border:1px solid var(--ots-line);border-radius:11px;padding:13px 14px;box-shadow:var(--ots-shadow)}.ots-detail-summary span{display:block;color:var(--ots-muted);font-size:9px;font-weight:700;margin-bottom:5px}.ots-detail-summary strong{font-size:11.5px;color:var(--ots-navy)}.ots-detail-summary i{font-style:normal}.ots-booking-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.65fr);gap:16px}.ots-detail-lines{display:flex;flex-direction:column}.ots-detail-lines>div{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:10px 0;border-bottom:1px solid #f0f2f4}.ots-detail-lines>div:last-child{border-bottom:0}.ots-detail-lines span{font-size:10px;color:var(--ots-muted)}.ots-detail-lines span small{display:block;margin-top:3px;color:#9aa3af}.ots-detail-lines strong{font-size:10.5px;color:var(--ots-navy);text-align:right}.ots-flight-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ots-flight-pair>div{border:1px solid var(--ots-line);background:#fafbfc;border-radius:10px;padding:14px}.ots-flight-pair span{display:block;color:var(--ots-red);font-size:9px;font-weight:800;text-transform:uppercase;margin-bottom:7px}.ots-flight-pair strong{display:block;color:var(--ots-navy);font-size:13px}.ots-flight-pair small{display:block;color:var(--ots-muted);font-size:9.5px;margin-top:5px;line-height:1.45}.ots-admin-detail-actions{display:flex;justify-content:space-between;gap:10px;margin-bottom:14px}.ots-admin-passenger-edit{display:flex;flex-direction:column;gap:12px}.ots-admin-passenger-edit section{border:1px solid var(--ots-line);border-radius:11px;overflow:hidden}.ots-admin-passenger-edit .ots-passenger-head{margin:0}.ots-passenger-fields-admin{padding:13px;grid-template-columns:repeat(5,minmax(0,1fr))}.ots-note-success{background:#eaf8f2!important;border-color:#c9ecdd!important;color:#147a57!important;margin-bottom:14px}.ots-row-actions a+ a{border-left:1px solid var(--ots-line);padding-left:6px}.ots-row-actions a:hover{text-decoration:underline}
@media(max-width:1050px){.ots-detail-summary{grid-template-columns:repeat(2,1fr)}.ots-booking-detail-grid{grid-template-columns:1fr}.ots-passenger-fields-admin{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ots-detail-summary,.ots-flight-pair,.ots-passenger-fields-admin{grid-template-columns:1fr}.ots-admin-detail-actions{flex-direction:column}.ots-admin-detail-actions .ots-btn{width:100%}}

/* v1.1.6 Customer Hub */
.ots-customer-search{display:flex;gap:10px;align-items:center;margin-bottom:14px}.ots-customer-search input{flex:1;min-width:280px}.ots-table-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid #e4e9f0;border-radius:9px;color:#14213d;text-decoration:none;font-weight:700;background:#fff;white-space:nowrap}.ots-table-btn:hover{border-color:#ef233c;color:#ef233c}.ots-customer-cell{display:flex;align-items:center;gap:10px;min-width:190px}.ots-customer-avatar{width:36px;height:36px;border-radius:50%;background:#fff0f2;color:#df2638;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:0 0 auto}.ots-customer-avatar.large{width:58px;height:58px;font-size:18px}.ots-customer-avatar.small{width:32px;height:32px;font-size:10px}.ots-customer-detail-hero{display:grid;grid-template-columns:minmax(280px,1.6fr) repeat(4,minmax(135px,1fr));gap:12px;margin-bottom:14px}.ots-customer-profile-card,.ots-mini-stat{background:#fff;border:1px solid #edf0f4;border-radius:14px;box-shadow:0 5px 18px rgba(18,31,53,.04)}.ots-customer-profile-card{display:flex;align-items:center;gap:14px;padding:18px}.ots-customer-profile-card h2{margin:3px 0 4px;font-size:20px;color:#111c35}.ots-customer-profile-card p{margin:0;color:#6f7a8d}.ots-mini-stat{padding:16px;display:flex;flex-direction:column;justify-content:center}.ots-mini-stat span{font-size:12px;color:#7b8494}.ots-mini-stat strong{font-size:21px;color:#111c35;margin-top:5px}.ots-mini-stat small{font-size:11px;color:#8d96a6;margin-top:3px}.ots-customer-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ots-customer-info-grid>div{padding:14px 16px;background:#fafbfc;border:1px solid #eef1f5;border-radius:11px}.ots-customer-info-grid span{display:block;font-size:11px;color:#808a9a;margin-bottom:5px}.ots-customer-info-grid strong{color:#17223b;font-size:13px}.ots-empty-state{padding:28px;text-align:center;color:#7e8899}.ots-empty-state strong,.ots-empty-state span{display:block}.ots-empty-state strong{color:#1a253d;margin-bottom:5px}@media(max-width:1100px){.ots-customer-detail-hero{grid-template-columns:1fr 1fr}.ots-customer-profile-card{grid-column:1/-1}.ots-customer-info-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.ots-customer-detail-hero,.ots-customer-info-grid{grid-template-columns:1fr}.ots-customer-search{align-items:stretch;flex-direction:column}.ots-customer-search input{min-width:0}}

/* v1.1.7 Travel Package Management */
.ots-package-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.ots-package-subnav{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--ots-line);border-radius:10px;padding:4px;box-shadow:var(--ots-shadow)}.ots-package-subnav a{padding:8px 12px;border-radius:7px;color:#657184;font-size:11px;font-weight:750}.ots-package-subnav a.active{background:#fff1f3;color:var(--ots-red)}.ots-package-list-cell{display:flex;align-items:center;gap:10px;min-width:205px}.ots-package-thumb{width:46px;height:38px;border-radius:8px;background-size:cover;background-position:center;flex:0 0 auto;border:1px solid #eef0f3}.ots-package-thumb.placeholder{display:grid;place-items:center;background:#fff4f5;color:var(--ots-red);font-weight:800}.ots-package-list-table td{padding-top:12px;padding-bottom:12px}.ots-package-editor-form{max-width:1180px}.ots-package-basic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ots-package-basic-grid .wide{grid-column:span 1}.ots-package-basic-grid .full{grid-column:1/-1}.ots-field-hint{display:block;font-size:9.5px;color:var(--ots-muted);margin-top:5px;font-weight:500}.ots-field-hint a{color:var(--ots-red);font-weight:700}.ots-pricing-matrix{border:1px solid var(--ots-line);border-radius:12px;overflow:hidden}.ots-pricing-head,.ots-pricing-row{display:grid;grid-template-columns:minmax(210px,1.25fr) minmax(180px,.8fr) minmax(180px,.8fr);gap:0;align-items:center}.ots-pricing-head{background:#fafbfc;color:#7f8a99;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.ots-pricing-head span,.ots-pricing-row>div,.ots-pricing-row>label{padding:12px 14px}.ots-pricing-row{border-top:1px solid var(--ots-line)}.ots-pricing-row>div strong{display:block;color:var(--ots-navy);font-size:11.5px}.ots-pricing-row>div small{display:block;color:var(--ots-muted);font-size:9.5px;margin-top:3px}.ots-pricing-row label{margin:0;position:relative}.ots-pricing-row label span{position:absolute;left:25px;top:23px;color:#8993a1;font-size:10px;font-weight:700}.ots-pricing-row input{padding-left:38px!important}.ots-hotel-addon-list{display:flex;flex-direction:column;gap:9px}.ots-hotel-addon-row{display:grid;grid-template-columns:38px minmax(260px,1fr) minmax(190px,.45fr) 38px;gap:10px;align-items:end;border:1px solid var(--ots-line);background:#fafbfc;border-radius:11px;padding:12px}.ots-hotel-icon{width:36px;height:36px;border-radius:9px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center;margin-bottom:1px}.ots-hotel-addon-row label{margin:0}.ots-money-input{position:relative}.ots-money-input span{position:absolute;left:11px;top:10px;font-size:10px;color:#8b95a4;font-weight:700}.ots-money-input input{padding-left:36px!important}.ots-addon-remove{width:36px;height:36px;border:1px solid #f3d6da;background:#fff;color:#c93245;border-radius:9px;font-size:20px;cursor:pointer}.ots-inline-info{margin-top:10px;padding:10px 12px;border:1px solid #e8edf3;border-radius:9px;background:#f8fafc;color:#6e7a8d;font-size:10px}.ots-editor-actions{display:flex;justify-content:flex-end;gap:10px;margin:16px 0 24px}.ots-destination-layout{display:grid;grid-template-columns:minmax(300px,.55fr) minmax(0,1.45fr);gap:16px}.ots-destination-layout .ots-form{display:flex;flex-direction:column;gap:11px}.ots-destination-layout .ots-form .ots-btn{align-self:flex-start}.ots-side-nav a[href*="destinations"]{padding-left:28px;font-size:12px}
@media(max-width:900px){.ots-pricing-head,.ots-pricing-row{grid-template-columns:1fr 1fr}.ots-pricing-head span:first-child{grid-column:1/-1}.ots-pricing-row>div{grid-column:1/-1;border-bottom:1px solid #f0f2f4}.ots-hotel-addon-row{grid-template-columns:38px 1fr 38px}.ots-hotel-addon-row label:nth-of-type(2){grid-column:2/3}.ots-destination-layout{grid-template-columns:1fr}.ots-package-basic-grid{grid-template-columns:1fr}.ots-package-basic-grid .full{grid-column:auto}}
@media(max-width:620px){.ots-package-admin-toolbar{align-items:stretch;flex-direction:column}.ots-package-subnav{width:100%}.ots-package-subnav a{flex:1;text-align:center}.ots-hotel-addon-row{grid-template-columns:1fr}.ots-hotel-icon{display:none}.ots-addon-remove{width:100%}.ots-editor-actions{flex-direction:column-reverse}.ots-editor-actions .ots-btn{width:100%}.ots-pricing-head{display:none}.ots-pricing-row{display:block}.ots-pricing-row>div{border-bottom:0}.ots-pricing-row label{display:block;padding-top:5px}.ots-pricing-row label:before{content:attr(data-label);display:block;font-size:9px;color:var(--ots-muted);margin-bottom:5px}}

/* v1.1.8 Package admin + traveller pricing */
.ots-nav-group{display:flex;flex-direction:column;gap:3px}.ots-nav-toggle{width:100%;appearance:none;border:0;background:transparent;display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:9px;color:#566274;font-size:13px;font-weight:600;cursor:pointer;text-align:left}.ots-nav-toggle:hover,.ots-nav-toggle.active{background:#fff1f3;color:var(--ots-red)}.ots-nav-toggle>span:nth-child(2){flex:1}.ots-nav-toggle i{font-style:normal;font-size:12px;transition:transform .2s ease}.ots-nav-group.open .ots-nav-toggle i{transform:rotate(180deg)}.ots-nav-submenu{display:none;margin:1px 0 3px 31px;padding-left:10px;border-left:1px solid #edf0f4}.ots-nav-group.open .ots-nav-submenu{display:flex;flex-direction:column;gap:2px}.ots-nav-submenu a,.ots-side-nav .ots-nav-submenu a[href*="destinations"]{padding:8px 10px!important;border-radius:7px;font-size:11.5px;color:#738094}.ots-nav-submenu a.active{background:#fff1f3;color:var(--ots-red)}
.ots-package-list-card{padding:0;overflow:hidden}.ots-package-filterbar{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(150px,.75fr) minmax(135px,.6fr) minmax(150px,.7fr) auto;gap:10px;align-items:end;padding:16px 18px;border-bottom:1px solid var(--ots-line);background:#fff}.ots-package-filterbar label{margin:0}.ots-package-filterbar label>span{display:block;font-size:9.5px;font-weight:750;color:#7c8797;margin-bottom:5px}.ots-package-filterbar input,.ots-package-filterbar select{width:100%;height:39px;border:1px solid var(--ots-line);border-radius:8px;padding:0 10px;background:#fff;color:var(--ots-text);font-size:11px}.ots-filter-actions{display:flex;gap:7px}.ots-filter-actions .ots-btn{height:39px;padding:0 13px}.ots-list-heading{padding:15px 18px 2px;margin:0}.ots-package-list-card .ots-table-wrap{padding:0 10px 10px}.ots-package-list-table .ots-status.blue{white-space:nowrap}.ots-package-editor-form{max-width:1120px}.ots-package-basic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ots-package-basic-grid label.full{grid-column:1/-1}.ots-package-basic-grid label{margin:0}.ots-package-editor-form .ots-section-label{font-size:9px}.ots-hotel-addon-row{grid-template-columns:38px minmax(240px,1.2fr) minmax(165px,.55fr) minmax(165px,.55fr) 38px}.ots-hotel-addon-row label:nth-of-type(2),.ots-hotel-addon-row label:nth-of-type(3){min-width:0}
.ots-traveller-config{overflow:visible}.ots-market-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ots-market-option{position:relative;display:flex;align-items:center;gap:12px;border:1px solid var(--ots-line);border-radius:12px;padding:14px 15px;cursor:pointer;background:#fff;transition:border-color .18s,box-shadow .18s,background .18s}.ots-market-option:hover{border-color:#efbcc3}.ots-market-option input{position:absolute;opacity:0;pointer-events:none}.ots-market-icon{width:42px;height:42px;border-radius:10px;background:#f7f8fa;color:var(--ots-navy);display:grid;place-items:center;font-size:10px;font-weight:850}.ots-market-option>span:nth-of-type(2){flex:1}.ots-market-option strong{display:block;color:var(--ots-navy);font-size:12px}.ots-market-option small{display:block;color:var(--ots-muted);font-size:9.5px;margin-top:3px}.ots-market-option>b{width:21px;height:21px;border-radius:50%;border:1px solid #dce1e7;color:transparent;display:grid;place-items:center;font-size:10px}.ots-market-option:has(input:checked){border-color:#ef6574;background:#fff8f9;box-shadow:0 0 0 2px rgba(223,38,56,.07)}.ots-market-option:has(input:checked) .ots-market-icon{background:#ffe9ec;color:var(--ots-red)}.ots-market-option:has(input:checked)>b{background:var(--ots-red);border-color:var(--ots-red);color:#fff}.ots-pricing-reveal{margin-top:18px;padding-top:17px;border-top:1px solid var(--ots-line)}.ots-pricing-reveal[hidden]{display:none!important}.ots-divider-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.ots-divider-title h3{margin:2px 0 0;color:var(--ots-navy);font-size:14px}.ots-market-badge{padding:5px 9px;border-radius:999px;background:#fff1f3;color:var(--ots-red);font-size:9px;font-weight:800}.ots-pax [data-price-label]{font-size:12px}.ots-addon-choice{margin-top:16px;border-top:1px solid var(--ots-line);padding-top:15px}.ots-addon-check{display:flex;align-items:center;gap:11px;border:1px solid var(--ots-line);border-radius:11px;padding:12px 14px;background:#fafbfc;cursor:pointer;margin:0}.ots-addon-check input{position:absolute;opacity:0}.ots-check-ui{width:22px;height:22px;border-radius:6px;border:1px solid #d7dde5;background:#fff;color:transparent;display:grid;place-items:center;font-size:10px}.ots-addon-check:has(input:checked){border-color:#efc3c9;background:#fff8f9}.ots-addon-check:has(input:checked) .ots-check-ui{background:var(--ots-red);border-color:var(--ots-red);color:#fff}.ots-addon-check strong{display:block;font-size:11.5px;color:var(--ots-navy)}.ots-addon-check small{display:block;font-size:9.5px;color:var(--ots-muted);margin-top:2px}.ots-addon-panel{margin-top:10px;border:1px solid var(--ots-line);border-radius:11px;padding:13px;background:#fff}.ots-addon-panel[hidden]{display:none!important}.ots-addon-panel label{margin:0}.ots-addon-price-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:10px}.ots-addon-price-preview>div{padding:10px 11px;border-radius:9px;background:#f8fafc;border:1px solid #edf0f4}.ots-addon-price-preview span{display:block;font-size:9px;color:var(--ots-muted)}.ots-addon-price-preview strong{display:block;font-size:11px;color:var(--ots-navy);margin-top:3px}.ots-addon-summary[hidden]{display:none!important}
@media(max-width:1100px){.ots-package-filterbar{grid-template-columns:1fr 1fr 1fr}.ots-package-filterbar .ots-filter-search{grid-column:1/-1}.ots-filter-actions{align-self:end}.ots-hotel-addon-row{grid-template-columns:38px 1fr 1fr 38px}.ots-hotel-addon-row label:first-of-type{grid-column:2/4}}
@media(max-width:760px){.ots-package-filterbar{grid-template-columns:1fr}.ots-package-filterbar .ots-filter-search{grid-column:auto}.ots-filter-actions .ots-btn{flex:1}.ots-market-options,.ots-addon-price-preview{grid-template-columns:1fr}.ots-hotel-addon-row{grid-template-columns:1fr}.ots-hotel-icon{display:none}.ots-hotel-addon-row label:first-of-type{grid-column:auto}.ots-addon-remove{width:100%}}

/* v1.1.9 Package admin revamp + simplified Adult / Child / Babies pricing */
.ots-package-filterbar-v119{grid-template-columns:minmax(260px,1.5fr) minmax(170px,.8fr) minmax(145px,.65fr) minmax(135px,.6fr) auto}
.ots-package-editor-v119{max-width:1180px}
.ots-editor-section{padding:0;overflow:hidden}
.ots-editor-section-head{padding:18px 20px;margin:0;border-bottom:1px solid var(--ots-line);background:linear-gradient(180deg,#fff,#fdfdfd)}
.ots-editor-section-head h2{font-size:16px!important;letter-spacing:-.01em}
.ots-editor-section-head p{font-size:11px!important;max-width:620px}
.ots-package-details-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:20px;padding:20px}
.ots-package-detail-fields{min-width:0}
.ots-package-basic-grid-v119{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.ots-package-basic-grid-v119 .full{grid-column:1/-1}
.ots-package-basic-grid-v119 label{margin:0;font-size:10px;font-weight:700;color:#5f6b7c}
.ots-package-basic-grid-v119 input,.ots-package-basic-grid-v119 select,.ots-package-basic-grid-v119 textarea{margin-top:6px;width:100%;border:1px solid var(--ots-line);border-radius:9px;background:#fff;color:var(--ots-text);font-size:11px;outline:none;transition:border-color .15s,box-shadow .15s}
.ots-package-basic-grid-v119 input,.ots-package-basic-grid-v119 select{height:41px;padding:0 11px}
.ots-package-basic-grid-v119 textarea{padding:11px;resize:vertical;min-height:96px}
.ots-package-basic-grid-v119 input:focus,.ots-package-basic-grid-v119 select:focus,.ots-package-basic-grid-v119 textarea:focus{border-color:#ef9aa5;box-shadow:0 0 0 3px rgba(223,38,56,.06)}
.ots-optional{font-size:8.5px;color:#97a1ae;font-weight:600;margin-left:3px}
.ots-image-uploader{border:1px solid var(--ots-line);border-radius:12px;background:#fafbfc;padding:11px;align-self:start}
.ots-image-preview{height:190px;border-radius:9px;border:1px dashed #d8dee6;background:#f5f7f9 center/cover no-repeat;display:grid;place-items:center;overflow:hidden;position:relative}
.ots-image-preview.has-image{border-style:solid;background-color:#edf1f5}
.ots-image-preview.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(16,30,52,.08))}
.ots-image-empty{text-align:center;color:#8691a0;padding:18px;position:relative;z-index:1}
.ots-image-preview.has-image .ots-image-empty{display:none}
.ots-image-empty>span{width:42px;height:42px;border-radius:11px;background:#fff;border:1px solid #e5e9ee;display:grid;place-items:center;margin:0 auto 9px;color:var(--ots-red);font-size:18px}
.ots-image-empty strong{display:block;font-size:11px;color:#5d6878}
.ots-image-empty small{display:block;font-size:9px;margin-top:4px}
.ots-image-actions{display:flex;gap:8px;margin-top:10px}
.ots-image-actions .ots-btn{flex:1;height:37px;padding:0 10px;font-size:10.5px}
.ots-upload-button{position:relative;overflow:hidden;cursor:pointer}
.ots-upload-button input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.ots-image-actions button:disabled{opacity:.45;cursor:not-allowed}

.ots-pricing-country-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px}
.ots-pricing-country-card{border:1px solid var(--ots-line);border-radius:12px;overflow:hidden;background:#fff}
.ots-pricing-country-card.local{box-shadow:inset 0 3px 0 #df2638}
.ots-pricing-country-card.foreigner{box-shadow:inset 0 3px 0 #5876d8}
.ots-pricing-country-head{display:flex;align-items:center;gap:10px;padding:15px 16px;background:#fafbfc;border-bottom:1px solid var(--ots-line)}
.ots-country-mark{width:40px;height:34px;border-radius:9px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center;font-size:9.5px;font-weight:850}
.ots-pricing-country-card.foreigner .ots-country-mark{background:#edf1ff;color:#4f68c7}
.ots-pricing-country-head strong{display:block;font-size:12px;color:var(--ots-navy)}
.ots-pricing-country-head small{display:block;font-size:9.5px;color:var(--ots-muted);margin-top:2px}
.ots-price-field{margin:0;display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:14px;align-items:center;padding:13px 16px;border-bottom:1px solid #f0f2f4}
.ots-price-field:last-child{border-bottom:0}
.ots-price-type{display:grid;grid-template-columns:32px 1fr;column-gap:9px;align-items:center}
.ots-price-type i{grid-row:1/3;width:32px;height:32px;border-radius:9px;background:#f7f8fa;color:#5b6678;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:800}
.ots-price-type b{font-size:11px;color:var(--ots-navy)}
.ots-price-type small{font-size:9px;color:var(--ots-muted);margin-top:1px}
.ots-money-box{position:relative;display:block}
.ots-money-box em{position:absolute;left:12px;top:11px;font-style:normal;font-size:9.5px;color:#8a95a4;font-weight:750;z-index:1}
.ots-money-box input{width:100%;height:40px!important;border:1px solid var(--ots-line)!important;border-radius:9px!important;padding:0 11px 0 39px!important;margin:0!important;background:#fff!important;font-size:11px!important;color:var(--ots-text)!important}

.ots-hotel-addon-list-v119{padding:18px 20px 6px;gap:10px}
.ots-hotel-addon-row-v119{grid-template-columns:34px minmax(260px,1.25fr) minmax(155px,.55fr) minmax(155px,.55fr) 38px;background:#fff;padding:13px 14px;border-radius:11px;align-items:end}
.ots-hotel-option-number{width:30px;height:36px;border-radius:9px;background:#fff1f3;color:var(--ots-red);display:grid;place-items:center;font-size:10px;font-weight:800}
.ots-hotel-addon-row-v119 label{font-size:9.5px;font-weight:700;color:#657184}
.ots-hotel-addon-row-v119 label>input,.ots-hotel-addon-row-v119 .ots-money-input{margin-top:6px}
.ots-hotel-addon-row-v119 label>input{height:38px;border:1px solid var(--ots-line);border-radius:8px;padding:0 10px;width:100%;font-size:10.5px;color:var(--ots-text)}
.ots-editor-section>.ots-inline-info{margin:7px 20px 18px}

.ots-market-selector{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:4px;background:#f5f7f9;border:1px solid var(--ots-line);border-radius:12px}
.ots-market-pill{position:relative;display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:9px;background:transparent;cursor:pointer;margin:0;transition:background .18s,box-shadow .18s}
.ots-market-pill input{position:absolute;opacity:0;pointer-events:none}
.ots-market-pill-mark{width:38px;height:34px;border-radius:8px;background:#fff;color:#6c788a;display:grid;place-items:center;font-size:9px;font-weight:850;border:1px solid #e8ebef}
.ots-market-pill-copy{flex:1}
.ots-market-pill-copy strong{display:block;font-size:11.5px;color:var(--ots-navy)}
.ots-market-pill-copy small{display:block;font-size:9px;color:var(--ots-muted);margin-top:2px}
.ots-market-pill-check{width:20px;height:20px;border:1px solid #d9dfe6;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:9px}
.ots-market-pill:has(input:checked){background:#fff;box-shadow:0 2px 8px rgba(24,34,50,.07)}
.ots-market-pill:has(input:checked) .ots-market-pill-mark{background:#fff1f3;color:var(--ots-red);border-color:#f4c8ce}
.ots-market-pill:has(input:checked) .ots-market-pill-check{background:var(--ots-red);border-color:var(--ots-red);color:#fff}
.ots-pax-grid-three{grid-template-columns:repeat(3,1fr)!important}

.ots-addon-choice-v119{border:1px solid var(--ots-line);border-radius:12px;padding:0;margin-top:18px;overflow:hidden;background:#fff}
.ots-addon-choice-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;background:#fafbfc}
.ots-addon-choice-head h3{margin:2px 0 0;font-size:13px;color:var(--ots-navy)}
.ots-addon-choice-head p{margin:3px 0 0;color:var(--ots-muted);font-size:9.5px}
.ots-switch{position:relative;width:42px;height:24px;margin:0;flex:0 0 auto}
.ots-switch input{position:absolute;opacity:0}
.ots-switch span{position:absolute;inset:0;border-radius:999px;background:#dfe4ea;cursor:pointer;transition:.2s}
.ots-switch span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:.2s}
.ots-switch input:checked+span{background:var(--ots-red)}
.ots-switch input:checked+span:after{transform:translateX(18px)}
.ots-addon-panel-v119{margin:0;border:0;border-top:1px solid var(--ots-line);border-radius:0;padding:15px}
.ots-addon-panel-v119>label{display:block;font-size:10px;font-weight:700;color:#657184}
.ots-addon-panel-v119 select{margin-top:6px;width:100%;height:41px;border:1px solid var(--ots-line);border-radius:9px;padding:0 11px;background:#fff;color:var(--ots-text);font-size:11px}
.ots-addon-calc-preview{display:grid;grid-template-columns:1fr 1fr 1.05fr;gap:9px;margin-top:11px}
.ots-addon-calc-preview>div{border:1px solid #edf0f4;border-radius:10px;background:#f8fafc;padding:11px 12px}
.ots-addon-calc-preview>div.total{background:#fff6f7;border-color:#f7d4d9}
.ots-addon-calc-preview span{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:9px;color:#778395}
.ots-addon-calc-preview span b{font-size:8.5px;color:#556174;background:#fff;border:1px solid #e8ebef;border-radius:999px;padding:2px 6px}
.ots-addon-calc-preview strong{display:block;margin-top:5px;font-size:13px;color:var(--ots-navy)}
.ots-addon-calc-preview .total strong{color:var(--ots-red)}
.ots-addon-calc-preview small{display:block;margin-top:3px;font-size:8.5px;color:#919ba8}

@media(max-width:1150px){
  .ots-package-filterbar-v119{grid-template-columns:1fr 1fr 1fr}.ots-package-filterbar-v119 .ots-filter-search{grid-column:1/-1}
  .ots-package-details-layout{grid-template-columns:240px minmax(0,1fr)}
  .ots-hotel-addon-row-v119{grid-template-columns:34px 1fr 1fr 38px}.ots-hotel-addon-row-v119 .ots-hotel-name{grid-column:2/4}
}
@media(max-width:850px){
  .ots-package-details-layout{grid-template-columns:1fr}.ots-image-uploader{max-width:430px}
  .ots-pricing-country-grid{grid-template-columns:1fr}
  .ots-addon-calc-preview,.ots-pax-grid-three{grid-template-columns:1fr!important}
}
@media(max-width:680px){
  .ots-package-filterbar-v119{grid-template-columns:1fr}.ots-package-filterbar-v119 .ots-filter-search{grid-column:auto}
  .ots-package-basic-grid-v119{grid-template-columns:1fr}.ots-package-basic-grid-v119 .full{grid-column:auto}
  .ots-market-selector{grid-template-columns:1fr}
  .ots-price-field{grid-template-columns:1fr}.ots-hotel-addon-row-v119{grid-template-columns:1fr}.ots-hotel-addon-row-v119 .ots-hotel-name{grid-column:auto}.ots-hotel-option-number{display:none}
}


/* v1.2.1 — Typography & readability pass on top of v1.1.9 package revamp.
   IMPORTANT: presentation-only overrides; no v1.1.9 workflow/UI markup is reverted. */
body.ohhsem-system-page{font-size:14px!important;line-height:1.55!important}
.ots-app,.ots-login{font-size:14px;line-height:1.55}

/* Navigation / shell */
.ots-admin-layout{grid-template-columns:236px 1fr}
.ots-side-nav a,.ots-nav-toggle{font-size:14px;line-height:1.35;padding-top:12px;padding-bottom:12px}
.ots-nav-submenu a,.ots-side-nav .ots-nav-submenu a[href*="destinations"]{font-size:12.5px;line-height:1.4;padding-top:9px!important;padding-bottom:9px!important}
.ots-side-icon{font-size:16px}
.ots-support b{font-size:13px}.ots-support span{font-size:12px;line-height:1.55}
.ots-topbar{height:76px}.ots-search input{height:43px;font-size:13.5px}
.ots-user-chip strong{font-size:14px}.ots-user-chip small{font-size:12px}
.ots-breadcrumb{font-size:12px}.ots-title-row h1{font-size:29px;line-height:1.2}.ots-title-row p{font-size:14px;line-height:1.55}
.ots-btn{font-size:14px;min-height:42px;line-height:1.2}

/* Dashboard */
.ots-stat span{font-size:13px}.ots-stat strong{font-size:29px}.ots-stat small{font-size:11.5px;line-height:1.45}
.ots-card-head h2,.ots-card-head h3{font-size:16.5px;line-height:1.35}.ots-card-head p{font-size:12.5px;line-height:1.5}
.ots-link{font-size:12.5px}.ots-datebox b{font-size:15px}.ots-datebox small{font-size:10.5px}.ots-rank{font-size:10.5px}

/* Tables */
.ots-table th{font-size:11.5px;line-height:1.35;padding:12px 10px}
.ots-table td{font-size:13px;line-height:1.45;padding:12px 10px}.ots-table strong{font-size:13px}.ots-table small{font-size:11.5px;line-height:1.45}
.ots-status{font-size:11px;line-height:1.2;padding:5px 9px}.ots-pagination{font-size:12px}

/* Staff package portal */
.ots-public-nav a{font-size:14px}.ots-package-head h1{font-size:30px;line-height:1.2}.ots-package-head p{font-size:13.5px;line-height:1.55}
.ots-filter-row input,.ots-filter-row select{font-size:13.5px;height:43px}.ots-duration-badge{font-size:11px}
.ots-package-body h3{font-size:17px}.ots-package-meta{font-size:12px;line-height:1.45}.ots-package-price small{font-size:11px}.ots-package-price strong{font-size:16px}

/* Booking flow */
.ots-stepper>div{font-size:12px;line-height:1.4}.ots-stepper b{font-size:12px;width:32px;height:32px}.ots-stepper span{font-size:10.5px}
.ots-form label{font-size:12.5px;line-height:1.4}.ots-form input,.ots-form select,.ots-form textarea{font-size:14px;line-height:1.45;min-height:43px;padding:10px 12px}.ots-form textarea{min-height:92px}
.ots-section-label,.ots-package-editor-form .ots-section-label{font-size:11px;line-height:1.35;letter-spacing:.075em}
.ots-field-hint{font-size:11.5px;line-height:1.5}.ots-note{font-size:12.5px;line-height:1.5}.ots-inline-info{font-size:12px;line-height:1.5}
.ots-pax-title{font-size:13px;line-height:1.35}.ots-pax small{font-size:11px;line-height:1.4}.ots-pax strong{font-size:14px}.ots-pax [data-price-label]{font-size:13px}
.ots-counter{grid-template-columns:34px 1fr 34px}.ots-counter button{height:34px;font-size:17px}.ots-counter input{font-size:13px!important}
.ots-summary-card h3{font-size:15px}.ots-summary-line{font-size:12.5px;line-height:1.45;padding:9px 0}.ots-summary-line strong{font-size:13.5px}.ots-summary-total small{font-size:11px}.ots-summary-total strong{font-size:21px}
.ots-passenger-no{font-size:11px;width:29px;height:29px}.ots-passenger-head h3{font-size:14px}.ots-passenger-head p{font-size:11.5px;line-height:1.45}.ots-review-line{font-size:12.5px;line-height:1.45;padding:10px 0}

/* v1.1.9 traveller selector + dynamic hotel add-on */
.ots-market-pill-copy strong{font-size:13.5px}.ots-market-pill-copy small{font-size:11.5px;line-height:1.45}
.ots-market-pill-mark{font-size:11.5px}.ots-market-pill-check{font-size:11px}
.ots-market-badge{font-size:11px}.ots-divider-title h3{font-size:15.5px}
.ots-addon-choice-head h3{font-size:15.5px}.ots-addon-choice-head p{font-size:12px;line-height:1.45}
.ots-addon-calc-preview span{font-size:11.5px}.ots-addon-calc-preview strong{font-size:14px}.ots-addon-calc-preview small{font-size:11px;line-height:1.4}

/* Login */
.ots-login-card p{font-size:13.5px;line-height:1.55}.ots-login-card label{font-size:12.5px}

/* Detail screens */
.ots-detail-summary span{font-size:11.5px}.ots-detail-summary strong{font-size:13px}.ots-detail-lines span{font-size:12px}.ots-detail-lines strong{font-size:12.5px}
.ots-flight-pair span{font-size:11px}.ots-flight-pair strong{font-size:14px}.ots-flight-pair small{font-size:11.5px;line-height:1.5}

/* Customer hub */
.ots-customer-avatar{font-size:13px}.ots-customer-avatar.small{font-size:11px}.ots-customer-info-grid span{font-size:12px}.ots-customer-info-grid strong{font-size:14px}

/* Package administration — keep v1.1.9 structure */
.ots-package-subnav a{font-size:12.5px}.ots-package-filterbar label>span{font-size:11.5px}
.ots-package-filterbar input,.ots-package-filterbar select{font-size:13px;height:42px}.ots-filter-actions .ots-btn{height:42px}
.ots-pricing-head{font-size:11px}.ots-pricing-row>div strong{font-size:13px}.ots-pricing-row>div small{font-size:11.5px;line-height:1.45}.ots-pricing-row label span{font-size:11.5px;top:24px}
.ots-money-input span{font-size:11.5px;top:11px}
.ots-hotel-addon-row label{font-size:12px}.ots-hotel-option-number{font-size:12px}.ots-addon-remove{font-size:17px}
.ots-package-image-card strong{font-size:13px}.ots-package-image-card small{font-size:11.5px;line-height:1.45}

/* Placeholder readability */
.ots-app input::placeholder,.ots-app textarea::placeholder,.ots-login input::placeholder{font-size:inherit;color:#9aa3af}

@media(max-width:980px){.ots-admin-layout{grid-template-columns:220px 1fr}.ots-title-row h1{font-size:27px}}
@media(max-width:760px){
  body.ohhsem-system-page,.ots-app,.ots-login{font-size:14px}
  .ots-title-row h1,.ots-package-head h1{font-size:25px}
  .ots-table th{font-size:11px}.ots-table td{font-size:12.5px}
  .ots-form label{font-size:12.5px}.ots-form input,.ots-form select,.ots-form textarea{font-size:16px}
  .ots-btn{font-size:14px}
}
\n\n/* v1.2.2 — Package & PIC staff UX refinement */\n.ots-package-choice-card{padding:22px}.ots-package-hero{display:grid;grid-template-columns:minmax(250px,300px) minmax(0,1fr);gap:22px;align-items:stretch}.ots-booking-package-image{min-height:190px;border-radius:13px;background-size:cover;background-position:center;border:1px solid #edf0f4;box-shadow:0 7px 22px rgba(22,35,61,.06)}.ots-package-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}.ots-package-kicker{display:inline-flex;font-size:12px;line-height:1.25;color:var(--ots-red);font-weight:850;margin-bottom:7px}.ots-package-hero-copy h2{margin:0;color:var(--ots-navy);font-size:25px;line-height:1.15;letter-spacing:-.025em}.ots-package-hero-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:15px}.ots-package-hero-meta span{min-width:145px;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #edf0f4;color:var(--ots-navy);font-size:13px;font-weight:750}.ots-package-hero-meta b{display:block;margin-bottom:3px;color:#8792a2;font-size:10px;text-transform:uppercase;letter-spacing:.035em}.ots-itinerary-btn{margin-top:14px}.ots-departure-picker{margin-top:20px;padding-top:18px;border-top:1px solid var(--ots-line)}.ots-departure-picker-title{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.ots-departure-picker-title strong{font-size:13.5px;color:var(--ots-navy)}.ots-departure-picker-title span{font-size:11px;color:var(--ots-muted)}.ots-departure-scroll-wrap{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:9px;align-items:stretch}.ots-departure-strip{display:flex;gap:9px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;padding:1px}.ots-departure-strip::-webkit-scrollbar{display:none}.ots-departure-choice{position:relative;flex:0 0 190px;min-height:66px;border:1px solid #e0e4ea;border-radius:9px;background:#fff;padding:11px 12px;display:flex!important;align-items:flex-start;gap:9px;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}.ots-departure-choice input{position:absolute;opacity:0;pointer-events:none}.ots-departure-calendar{width:21px;height:21px;border-radius:6px;background:#f5f7fa;color:#24324a;display:grid;place-items:center;font-size:10px;flex:0 0 auto}.ots-departure-copy{min-width:0}.ots-departure-copy strong{display:block;font-size:11.5px;line-height:1.3;color:var(--ots-navy);white-space:nowrap}.ots-departure-copy small{display:block;margin-top:4px;font-size:10px;color:#7f8a99;font-weight:600}.ots-departure-choice:hover{border-color:#efafb8}.ots-departure-choice:has(input:checked){border-color:#ff5367;background:#fff8f9;box-shadow:0 0 0 1px rgba(223,38,56,.05)}.ots-departure-choice:has(input:checked) .ots-departure-calendar,.ots-departure-choice:has(input:checked) .ots-departure-copy strong{color:var(--ots-red)}.ots-departure-choice:has(input:checked) .ots-departure-copy small{color:#d92d43}.ots-departure-choice.is-full{opacity:.48;cursor:not-allowed;background:#fafbfc}.ots-departure-next{width:42px;border:1px solid #dfe3e8;border-radius:50%;background:#fff;color:var(--ots-navy);font-size:24px;line-height:1;cursor:pointer;box-shadow:0 3px 10px rgba(22,35,61,.06)}.ots-departure-next:hover{border-color:#efafb8;color:var(--ots-red)}.ots-empty-inline{display:flex;align-items:center;color:var(--ots-muted);font-size:11px;padding:12px}.ots-contact-card{margin-top:14px}.ots-contact-grid{display:grid;grid-template-columns:1.15fr .8fr 1fr;gap:12px}.ots-contact-grid label{font-size:11.5px}.ots-contact-grid input{font-size:13px;min-height:43px}.ots-package-pic-form .ots-section-title{font-size:19px}.ots-package-pic-form .ots-section-sub{font-size:11.5px}.ots-package-pic-form .ots-change-link{font-size:11.5px}.ots-package-pic-form .ots-form label{font-size:11.5px}\n@media(max-width:900px){.ots-package-hero{grid-template-columns:220px minmax(0,1fr)}.ots-contact-grid{grid-template-columns:1fr 1fr}.ots-contact-grid label:last-child{grid-column:1/-1}}\n@media(max-width:760px){.ots-package-hero{grid-template-columns:1fr}.ots-booking-package-image{min-height:220px}.ots-package-hero-copy h2{font-size:22px}.ots-package-hero-meta{width:100%}.ots-package-hero-meta span{flex:1}.ots-departure-scroll-wrap{grid-template-columns:minmax(0,1fr) 38px}.ots-departure-choice{flex-basis:170px}.ots-contact-grid{grid-template-columns:1fr}.ots-contact-grid label:last-child{grid-column:auto}.ots-departure-picker-title{align-items:flex-start;flex-direction:column;gap:3px}}\n
/* v1.2.3 — Flights admin UX */
.ots-title-action-row{display:flex;justify-content:flex-end;align-items:center;margin:-4px 0 14px}.ots-flight-list-card{padding:0;overflow:visible}.ots-flight-filterbar{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(170px,.85fr) minmax(160px,.8fr) minmax(135px,.65fr) minmax(165px,.75fr) auto;gap:10px;align-items:end;padding:18px;border-bottom:1px solid var(--ots-line);background:#fff;border-radius:13px 13px 0 0}.ots-flight-filterbar label{margin:0}.ots-flight-filterbar label>span{display:block;font-size:12px;font-weight:750;color:#6f7a8b;margin-bottom:6px}.ots-flight-filterbar input,.ots-flight-filterbar select{width:100%;height:43px;border:1px solid var(--ots-line);border-radius:9px;padding:0 11px;background:#fff;color:var(--ots-text);font-size:13px}.ots-flight-filterbar input:focus,.ots-flight-filterbar select:focus{outline:0;border-color:#f098a2;box-shadow:0 0 0 3px rgba(226,31,55,.07)}.ots-flight-filterbar .ots-filter-actions{display:flex;gap:7px}.ots-flight-filterbar .ots-btn{height:43px;padding:0 14px}.ots-flight-list-card .ots-list-heading{display:flex;align-items:center;justify-content:space-between;padding:17px 18px 8px}.ots-flight-list-card .ots-list-heading h2{margin:0;color:var(--ots-navy);font-size:17px}.ots-flight-list-card .ots-list-heading p{margin:4px 0 0;color:var(--ots-muted);font-size:12px}.ots-flight-list-card .ots-table-wrap{padding:0 10px 12px}.ots-flight-list-table th{font-size:11.5px}.ots-flight-list-table td{font-size:13px;padding-top:13px;padding-bottom:13px}.ots-flight-list-table strong{font-size:13px}.ots-flight-list-table small{font-size:11.5px;line-height:1.4}.ots-return-flight-no{margin-top:4px!important}.ots-flight-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:31px;border:1px solid var(--ots-line);border-radius:7px;padding:0 9px;font-size:11.5px!important}.ots-flight-actions a:first-child{color:#344054}.ots-flight-actions a:last-child{color:var(--ots-red);border-color:#f5c8ce}.ots-flight-actions a+a{border-left:1px solid #f5c8ce;padding-left:9px}.ots-flight-actions a:hover{text-decoration:none;background:#fff7f8}.ots-empty-state{padding:42px 24px;text-align:center;color:var(--ots-muted)}.ots-empty-state strong{display:block;color:var(--ots-navy);font-size:15px;margin-bottom:6px}.ots-empty-state span{font-size:12px}

.ots-flight-editor{max-width:1180px}.ots-flight-setup-card{margin-bottom:16px}.ots-flight-setup-grid{display:grid;grid-template-columns:minmax(360px,1.45fr) minmax(180px,.55fr) minmax(190px,.6fr);gap:14px;align-items:start}.ots-flight-editor label{display:block;margin:0;color:#344054;font-size:12.5px;font-weight:750}.ots-flight-editor label>small{display:block;margin-top:6px;color:#8b95a5;font-size:11px;font-weight:500;line-height:1.45}.ots-flight-editor input,.ots-flight-editor select{width:100%;height:44px;border:1px solid var(--ots-line);border-radius:9px;background:#fff;padding:0 12px;margin-top:7px;color:var(--ots-text);font-size:13.5px}.ots-flight-editor input:focus,.ots-flight-editor select:focus{outline:0;border-color:#f08c98;box-shadow:0 0 0 3px rgba(226,31,55,.07)}.ots-required{color:var(--ots-red)}.ots-flight-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ots-flight-leg-card{padding:20px}.ots-flight-leg-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:start;margin-bottom:18px}.ots-flight-leg-icon{width:42px;height:42px;border-radius:11px;background:#fff0f2;color:var(--ots-red);display:grid;place-items:center;font-size:19px;font-weight:800}.ots-flight-leg-head h2{margin:2px 0 3px;color:var(--ots-navy);font-size:18px}.ots-flight-leg-head p{margin:0;color:var(--ots-muted);font-size:11.5px}.ots-flight-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.ots-flight-form-grid .span-2{grid-column:1/-1}.ots-flight-copy{border:1px solid #f1c8ce;background:#fff7f8;color:var(--ots-red);border-radius:8px;padding:8px 10px;font-size:10.5px;font-weight:800;cursor:pointer;white-space:nowrap}.ots-flight-copy:hover{background:#fff0f2}.ots-flight-info{margin:0 0 16px}.ots-editor-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.ots-editor-actions .ots-btn{min-width:126px}

.ots-search-select{position:relative;margin-top:7px}.ots-search-select-trigger{width:100%;height:44px;border:1px solid var(--ots-line);border-radius:9px;background:#fff;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ots-text);font-size:13.5px;text-align:left;cursor:pointer}.ots-search-select-trigger:hover{border-color:#cfd5dd}.ots-search-select-trigger b{font-size:14px;color:#8d97a5}.ots-search-select.open .ots-search-select-trigger{border-color:#ef8b97;box-shadow:0 0 0 3px rgba(226,31,55,.07)}.ots-search-select-menu{position:absolute;z-index:70;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #dfe3e8;border-radius:11px;box-shadow:0 16px 45px rgba(22,35,61,.14);overflow:hidden}.ots-search-select-search{display:flex;align-items:center;gap:8px;padding:10px;border-bottom:1px solid var(--ots-line);background:#fafbfc}.ots-search-select-search span{color:#8d97a5}.ots-search-select-search input{margin:0!important;height:38px!important;background:#fff!important}.ots-search-select-options{max-height:290px;overflow:auto;padding:6px}.ots-search-select-option{width:100%;border:0;background:#fff;border-radius:8px;padding:10px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;color:var(--ots-text)}.ots-search-select-option:hover,.ots-search-select-option.selected{background:#fff4f5}.ots-search-select-option strong{display:block;font-size:12.5px;color:var(--ots-navy)}.ots-search-select-option small{display:block;margin-top:3px;color:var(--ots-muted);font-size:10.5px}.ots-search-select-option em{font-style:normal;font-size:9px;font-weight:800;color:#b42318;background:#ffefef;border-radius:999px;padding:4px 7px}.ots-search-select-empty{padding:18px;text-align:center;color:var(--ots-muted);font-size:11.5px}

.ots-flight-detail-summary i{display:block!important;margin-top:4px;color:var(--ots-muted);font-size:10.5px}.ots-flight-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ots-flight-detail-leg{position:relative;padding:22px}.ots-flight-leg-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff0f2;color:var(--ots-red);font-size:10px;font-weight:850;letter-spacing:.04em}.ots-flight-detail-airline{display:flex;align-items:center;gap:12px;margin:18px 0}.ots-flight-detail-airline h2{margin:0 0 3px;color:var(--ots-navy);font-size:18px}.ots-flight-detail-airline strong{color:#667085;font-size:13px}.ots-flight-route-display{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;background:#fafbfc;border:1px solid var(--ots-line);border-radius:11px;padding:15px}.ots-flight-route-display>div:last-child{text-align:right}.ots-flight-route-display span,.ots-flight-date-display span{display:block;color:var(--ots-muted);font-size:10.5px;margin-bottom:4px}.ots-flight-route-display strong{font-size:20px;color:var(--ots-navy)}.ots-flight-route-display>b{color:#98a2b3}.ots-flight-date-display{margin-top:12px;border-top:1px solid #f0f2f4;padding-top:13px}.ots-flight-date-display strong{font-size:13px;color:var(--ots-navy)}

@media(max-width:1250px){.ots-flight-filterbar{grid-template-columns:1fr 1fr 1fr}.ots-flight-filter-search{grid-column:1/-1}.ots-flight-setup-grid{grid-template-columns:1fr 1fr}.ots-flight-package-field{grid-column:1/-1}.ots-flight-editor-grid{grid-template-columns:1fr}}
@media(max-width:760px){.ots-title-action-row .ots-btn{width:100%}.ots-flight-filterbar{grid-template-columns:1fr}.ots-flight-filter-search{grid-column:auto}.ots-flight-filterbar .ots-filter-actions .ots-btn{flex:1}.ots-flight-setup-grid,.ots-flight-form-grid,.ots-flight-detail-grid{grid-template-columns:1fr}.ots-flight-package-field,.ots-flight-form-grid .span-2{grid-column:auto}.ots-flight-leg-head{grid-template-columns:42px 1fr}.ots-flight-copy{grid-column:1/-1}.ots-editor-actions{flex-direction:column-reverse}.ots-editor-actions .ots-btn{width:100%}.ots-search-select-menu{position:fixed;left:15px;right:15px;top:20%;max-height:65vh}}

/* v1.2.4 — live AJAX flight filtering + package search */
.ots-flight-results{transition:opacity .16s ease;min-height:100px;position:relative}.ots-flight-results.is-loading{opacity:.5;pointer-events:none}.ots-flight-results.is-loading:after{content:"";position:absolute;top:16px;right:18px;width:17px;height:17px;border:2px solid #f0c7cc;border-top-color:var(--ots-red);border-radius:50%;animation:otsSpin .7s linear infinite}.ots-flight-filterbar.is-loading select,.ots-flight-filterbar.is-loading input{cursor:progress}.ots-flight-filterbar .ots-filter-actions{align-self:end}.ots-flight-filterbar .ots-filter-actions .ots-btn{min-width:76px}.ots-search-select-loading,.ots-search-select-placeholder{padding:17px 14px;color:var(--ots-muted);font-size:12px;text-align:center}.ots-search-select-loading.error{color:#b42318}.ots-search-select-menu .ots-search-select-options{min-height:52px}@keyframes otsSpin{to{transform:rotate(360deg)}}

/* v1.2.6 — Flights destination filter + OHHSEM month picker */
.ots-flight-month-filter{position:relative}.ots-month-picker{position:relative}.ots-month-trigger{width:100%;height:43px;border:1px solid var(--ots-line);border-radius:9px;background:#fff;color:var(--ots-text);padding:0 11px;display:flex;align-items:center;gap:8px;cursor:pointer;font:inherit;text-align:left}.ots-month-trigger:hover{border-color:#d8dde5}.ots-month-picker.open .ots-month-trigger{border-color:#f098a2;box-shadow:0 0 0 3px rgba(226,31,55,.07)}.ots-month-trigger-icon{width:20px;height:20px;border-radius:6px;background:#fff0f2;color:var(--ots-red);display:grid;place-items:center;font-size:11px;font-weight:900}.ots-month-trigger [data-flight-month-label]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.ots-month-trigger b{font-size:13px;color:#98a2b3;transition:transform .16s ease}.ots-month-picker.open .ots-month-trigger b{transform:rotate(180deg)}
.ots-month-popover{position:absolute;z-index:90;right:0;top:calc(100% + 7px);width:306px;padding:12px;background:#fff;border:1px solid #e7eaf0;border-radius:13px;box-shadow:0 16px 42px rgba(16,24,40,.14)}.ots-month-popover[hidden]{display:none!important}.ots-month-head{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:7px;margin-bottom:10px}.ots-month-head strong{text-align:center;font-size:14px;color:var(--ots-navy)}.ots-month-head button{height:34px;border:1px solid var(--ots-line);border-radius:8px;background:#fff;color:#475467;font-size:20px;line-height:1;cursor:pointer}.ots-month-head button:hover{background:#fff7f8;color:var(--ots-red);border-color:#f3c6cc}.ots-month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.ots-month-cell{height:36px;border:1px solid transparent;border-radius:8px;background:#f8fafc;color:#344054;font-size:12px;font-weight:700;cursor:pointer}.ots-month-cell:hover{background:#fff0f2;color:var(--ots-red)}.ots-month-cell.current{border-color:#e4e7ec;background:#fff}.ots-month-cell.selected{background:var(--ots-red);color:#fff;border-color:var(--ots-red);box-shadow:0 4px 11px rgba(226,31,55,.18)}.ots-month-foot{display:flex;justify-content:space-between;gap:8px;margin-top:11px;padding-top:11px;border-top:1px solid #eef0f3}.ots-month-foot button{border:0;background:transparent;padding:5px 2px;color:#667085;font-size:11.5px;font-weight:750;cursor:pointer}.ots-month-foot button:hover{color:var(--ots-red)}
@media(max-width:760px){.ots-month-popover{position:fixed;left:18px;right:18px;top:22%;width:auto;max-width:none}.ots-month-grid{grid-template-columns:repeat(3,1fr)}.ots-month-cell{height:42px}}

/* v1.2.7 — Mobile app shell + admin dashboard responsive UX */
.ots-mobile-appbar,.ots-mobile-bottom-nav,.ots-mobile-overlay,.ots-mobile-close,.ots-mobile-quick-actions{display:none}
.ots-sidebar-mobile-head{display:block}

@media(max-width:760px){
  body.ohhsem-system-page{background:#f5f6f8!important;overscroll-behavior-y:none}
  body.ohhsem-system-page.ots-nav-lock{overflow:hidden!important;touch-action:none}
  .ots-admin-layout{display:block!important;min-height:100dvh;padding-bottom:0;background:#f5f6f8}
  .ots-admin-content{min-width:0;width:100%}

  /* Native-app style top bar */
  .ots-topbar{display:none!important}
  .ots-mobile-appbar{display:flex;position:sticky;top:0;z-index:85;min-height:calc(62px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;align-items:center;gap:12px;background:rgba(255,255,255,.96);border-bottom:1px solid #e9ecf0;backdrop-filter:saturate(150%) blur(14px);-webkit-backdrop-filter:saturate(150%) blur(14px)}
  .ots-mobile-menu{width:40px;height:40px;border:0;border-radius:12px;background:#f7f8fa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;flex:0 0 auto}
  .ots-mobile-menu span{width:17px;height:2px;border-radius:2px;background:#27364d;display:block}
  .ots-mobile-appbar-copy{min-width:0;flex:1;line-height:1.12}
  .ots-mobile-appbar-copy small{display:block;color:#929cab;font-size:10.5px;font-weight:650;margin-bottom:4px}
  .ots-mobile-appbar-copy strong{display:block;color:var(--ots-navy);font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ots-mobile-avatar{width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;background:#ffe7ea;color:var(--ots-red)!important;font-size:12px;font-weight:850;text-decoration:none;flex:0 0 auto}

  /* Off-canvas app drawer */
  .ots-sidebar{display:flex!important;position:fixed!important;left:0;top:0;bottom:0;z-index:130;width:min(86vw,320px);height:100dvh!important;padding:calc(14px + env(safe-area-inset-top)) 14px calc(20px + env(safe-area-inset-bottom));border:0;border-right:1px solid #e7eaf0;background:#fff;box-shadow:16px 0 46px rgba(18,31,53,.17);transform:translate3d(-105%,0,0);transition:transform .24s cubic-bezier(.2,.75,.25,1);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .ots-admin-layout.mobile-nav-open .ots-sidebar{transform:translate3d(0,0,0)}
  .ots-sidebar-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
  .ots-sidebar-logo{padding:5px 8px 10px!important;display:block}
  .ots-sidebar-logo img{width:145px!important}
  .ots-mobile-close{display:grid;width:38px;height:38px;place-items:center;border:1px solid #e9ecf0;border-radius:11px;background:#fff;color:#586577;font-size:24px;line-height:1;flex:0 0 auto}
  .ots-side-nav{display:flex!important;grid-template-columns:none!important;flex-direction:column!important;gap:5px}
  .ots-side-nav>a,.ots-nav-toggle{min-height:46px!important;border-radius:12px!important;font-size:14px!important;padding:12px 13px!important}
  .ots-nav-submenu{padding-left:38px}
  .ots-nav-submenu a{font-size:13px!important;min-height:38px;display:flex;align-items:center}
  .ots-support{display:block!important;margin-top:16px;border-radius:14px;padding:14px}
  .ots-mobile-overlay{display:block;position:fixed;inset:0;z-index:120;border:0;background:rgba(12,20,34,.42);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
  .ots-admin-layout.mobile-nav-open .ots-mobile-overlay{opacity:1;visibility:visible;pointer-events:auto}

  /* Content */
  .ots-main{width:100%;max-width:none!important;margin:0!important;padding:16px 13px calc(92px + env(safe-area-inset-bottom))!important}
  .ots-breadcrumb{display:none!important}
  .ots-title-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:11px!important;margin:2px 1px 16px!important}
  .ots-title-row h1{font-size:24px!important;line-height:1.15!important;letter-spacing:-.025em;margin:0 0 5px!important}
  .ots-title-row p{font-size:13px!important;line-height:1.48!important;color:#7b8797!important;max-width:34em}
  .ots-title-row>.ots-btn,.ots-title-action-row .ots-btn{width:100%;min-height:46px;border-radius:12px}
  .ots-card{border-radius:16px!important;padding:15px!important;margin-bottom:12px!important;box-shadow:0 4px 18px rgba(22,35,61,.045)!important}
  .ots-card-head{align-items:flex-start!important;margin-bottom:12px!important}
  .ots-card-head h2,.ots-card-head h3{font-size:16px!important}
  .ots-card-head p{font-size:12px!important}

  /* Dashboard metric cards */
  .ots-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px!important}
  .ots-stat{min-width:0;border-radius:16px!important;padding:14px!important;box-shadow:0 4px 16px rgba(22,35,61,.045)!important}
  .ots-stat-top{gap:6px!important}
  .ots-stat span{font-size:11.5px!important;line-height:1.3!important}
  .ots-stat strong{font-size:clamp(20px,5.5vw,27px)!important;line-height:1.08!important;margin-top:7px!important;letter-spacing:-.025em;overflow-wrap:anywhere}
  .ots-stat small{font-size:10px!important;line-height:1.35!important;margin-top:7px!important}
  .ots-stat-icon{width:31px!important;height:31px!important;border-radius:9px!important;font-size:11px!important;flex:0 0 auto}

  /* Quick action strip behaves like an app home screen */
  .ots-mobile-quick-actions{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;margin:0 -13px 13px;padding:1px 13px 4px}
  .ots-mobile-quick-actions::-webkit-scrollbar{display:none}
  .ots-mobile-quick-actions a{flex:0 0 148px;scroll-snap-align:start;display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;border:1px solid #e9ecf0;background:#fff;border-radius:15px;padding:12px;color:var(--ots-navy)!important;text-decoration:none;box-shadow:0 3px 13px rgba(22,35,61,.035)}
  .ots-mobile-quick-icon{grid-row:1/3;width:38px;height:38px;border-radius:11px;background:#fff0f2;color:var(--ots-red);display:grid;place-items:center;font-size:17px;font-weight:800}
  .ots-mobile-quick-actions strong{font-size:12px;line-height:1.25;white-space:nowrap}
  .ots-mobile-quick-actions small{font-size:9.5px;line-height:1.25;color:#8b95a4;white-space:nowrap}

  .ots-dashboard-grid{display:flex!important;flex-direction:column!important;gap:0!important}
  .ots-chart{height:160px!important;border-radius:10px;overflow:hidden}

  /* Recent bookings: convert the desktop table into tappable app cards */
  .ots-dashboard-grid .ots-table-wrap{overflow:visible!important}
  .ots-dashboard-grid .ots-table{min-width:0!important;display:block}
  .ots-dashboard-grid .ots-table thead{display:none}
  .ots-dashboard-grid .ots-table tbody{display:flex;flex-direction:column;gap:8px}
  .ots-dashboard-grid .ots-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;border:1px solid #edf0f4;border-radius:13px;background:#fafbfc;padding:11px 12px}
  .ots-dashboard-grid .ots-table td{display:block!important;border:0!important;padding:0!important;font-size:12px!important;min-width:0}
  .ots-dashboard-grid .ots-table td:nth-child(1){grid-column:1;grid-row:1}.ots-dashboard-grid .ots-table td:nth-child(1) strong{font-size:12.5px!important}
  .ots-dashboard-grid .ots-table td:nth-child(5){grid-column:2;grid-row:1;text-align:right;align-self:start}
  .ots-dashboard-grid .ots-table td:nth-child(2){grid-column:1/-1;grid-row:2;font-weight:750;color:#344054;margin-top:2px}
  .ots-dashboard-grid .ots-table td:nth-child(3){grid-column:1;grid-row:3;color:#7b8797;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ots-dashboard-grid .ots-table td:nth-child(4){grid-column:2;grid-row:3;text-align:right;font-weight:800;color:var(--ots-navy);white-space:nowrap}
  .ots-dashboard-grid .ots-table tr:has(td[colspan]){display:block;text-align:center;color:#8994a3}

  .ots-departure-list{gap:8px!important}
  .ots-departure-item{grid-template-columns:48px minmax(0,1fr) auto!important;gap:10px!important;padding:9px 0!important;border-bottom:1px solid #f0f2f4!important}
  .ots-departure-item>div:nth-child(2) strong{font-size:12px!important;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ots-departure-item>div:nth-child(2) small{font-size:10.5px!important;margin-top:3px!important}
  .ots-departure-item .ots-status{font-size:9.5px!important;padding:5px 7px!important;white-space:nowrap}
  .ots-datebox{border-radius:10px!important;padding:7px 4px!important}
  .ots-datebox b{font-size:15px!important}.ots-datebox small{font-size:9px!important}
  .ots-package-rank{padding:9px 0!important}.ots-package-rank strong{font-size:12px!important}.ots-package-rank small{font-size:10px!important}

  /* Generic admin lists/forms remain usable on a phone */
  .ots-table-wrap{max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .ots-admin-layout .ots-table{min-width:720px}
  .ots-flight-list-card,.ots-package-list-card{border-radius:16px!important;overflow:hidden}
  .ots-flight-list-card .ots-table-wrap{padding-bottom:10px!important}
  .ots-flight-filterbar,.ots-package-filterbar-v119,.ots-package-filterbar{border-radius:16px!important;padding:14px!important;gap:10px!important}
  .ots-flight-filterbar input,.ots-flight-filterbar select,.ots-package-filterbar input,.ots-package-filterbar select{min-height:46px!important;font-size:16px!important;border-radius:11px!important}
  .ots-flight-editor input,.ots-flight-editor select,.ots-form input,.ots-form select,.ots-form textarea{font-size:16px!important}

  /* Fixed bottom navigation with iPhone safe-area support */
  .ots-mobile-bottom-nav{display:grid;position:fixed;z-index:100;left:10px;right:10px;bottom:calc(9px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);min-height:64px;padding:6px;border:1px solid rgba(226,230,236,.95);border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 12px 34px rgba(15,28,48,.15);backdrop-filter:saturate(155%) blur(16px);-webkit-backdrop-filter:saturate(155%) blur(16px)}
  .ots-mobile-bottom-nav a,.ots-mobile-bottom-nav button{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border-radius:14px;color:#8490a1!important;text-decoration:none;padding:5px 3px;font-family:inherit}
  .ots-mobile-bottom-nav span{font-size:17px;line-height:1.05}.ots-mobile-bottom-nav small{font-size:9.5px;font-weight:750;line-height:1.2;white-space:nowrap}
  .ots-mobile-bottom-nav a.active{background:#fff1f3;color:var(--ots-red)!important}
  .ots-mobile-bottom-nav button:active,.ots-mobile-bottom-nav a:active{transform:scale(.97)}
}

@media(max-width:390px){
  .ots-main{padding-left:11px!important;padding-right:11px!important}
  .ots-stats{gap:8px!important}.ots-stat{padding:12px!important}.ots-stat strong{font-size:20px!important}.ots-stat-icon{width:28px!important;height:28px!important}
  .ots-mobile-bottom-nav{left:7px;right:7px;bottom:calc(7px + env(safe-area-inset-bottom))}
  .ots-mobile-quick-actions{margin-left:-11px;margin-right:-11px;padding-left:11px;padding-right:11px}
}
.ots-mobile-user-card{display:none}
@media(max-width:760px){
  .ots-mobile-user-card{display:grid;grid-template-columns:42px minmax(0,1fr) 34px;gap:10px;align-items:center;margin:2px 2px 13px;padding:11px;border:1px solid #edf0f4;border-radius:14px;background:#fafbfc}
  .ots-mobile-user-card .ots-avatar{width:42px;height:42px;font-size:12px}
  .ots-mobile-user-card strong{display:block;font-size:13px;color:var(--ots-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ots-mobile-user-card small{display:block;margin-top:2px;font-size:10.5px;color:#8994a3}
  .ots-mobile-user-card>a{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fff;border:1px solid #e7eaf0;color:#7c8796!important;text-decoration:none;font-size:15px}
}


/* v1.2.8 — Mobile admin polish: branded app header + app-style list cards */
@media(max-width:760px){
  /* Branded mobile app bar — logo-first, similar to a native social app */
  .ots-mobile-appbar{display:flex!important;min-height:calc(60px + env(safe-area-inset-top))!important;padding:env(safe-area-inset-top) 13px 0!important;justify-content:space-between!important;gap:12px!important}
  .ots-mobile-brand{display:flex;align-items:center;min-width:0;height:60px;flex:1}
  .ots-mobile-brand img{display:block;width:132px;max-width:46vw;height:auto;max-height:36px;object-fit:contain;object-position:left center}
  .ots-mobile-appbar-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
  .ots-mobile-menu{width:38px!important;height:38px!important;border-radius:50%!important;background:#f4f6f8!important;border:1px solid #edf0f3!important}
  .ots-mobile-menu span{width:16px!important}
  .ots-mobile-avatar{width:38px!important;height:38px!important;box-shadow:inset 0 0 0 1px #ffd7dc}
  .ots-mobile-appbar-copy{display:none!important}

  /* Home is information-first; no create shortcuts on the mobile dashboard. */
  .ots-mobile-quick-actions{display:none!important}
  .ots-page-dashboard .ots-title-row{margin-top:0!important;margin-bottom:14px!important}
  .ots-page-dashboard .ots-title-row h1{font-size:23px!important}
  .ots-page-dashboard .ots-title-row p{font-size:12.5px!important;line-height:1.4!important}
  .ots-page-dashboard .ots-stat small{display:none!important}
  .ots-page-dashboard .ots-stat{min-height:104px!important;display:flex;align-items:stretch}
  .ots-page-dashboard .ots-stat-top{width:100%}
  .ots-page-dashboard .ots-stat strong{margin-top:9px!important}
  .ots-page-dashboard .ots-chart{height:145px!important}

  /* App-like overall rhythm */
  .ots-main{padding:14px 12px calc(90px + env(safe-area-inset-bottom))!important}
  .ots-title-row{margin-bottom:14px!important}
  .ots-title-row h1{font-size:23px!important}
  .ots-title-row p{font-size:12.5px!important;line-height:1.45!important}
  .ots-card{padding:14px!important;border-radius:15px!important}
  .ots-card-head{gap:10px!important}
  .ots-card-head h2,.ots-card-head h3{font-size:16px!important;line-height:1.25!important}
  .ots-card-head p{font-size:11.5px!important;line-height:1.4!important}
  .ots-link{font-size:12px!important;min-height:36px;display:inline-flex;align-items:center}
  .ots-status{font-size:10.5px!important;padding:5px 8px!important}
  .ots-badge{font-size:10.5px!important;padding:5px 8px!important}

  /* Comfortable form controls and filtering on phones */
  .ots-filters{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-bottom:13px!important}
  .ots-filters input,.ots-filters select{width:100%!important;height:46px!important;font-size:16px!important;border-radius:11px!important;padding:0 12px!important}
  .ots-form input,.ots-form select,.ots-form textarea,.ots-flight-editor input,.ots-flight-editor select{min-height:46px;font-size:16px!important;border-radius:11px!important}
  .ots-form textarea{min-height:104px}
  .ots-form label,.ots-flight-editor label{font-size:12.5px!important;line-height:1.35}
  .ots-btn{min-height:44px!important;border-radius:11px!important;font-size:13.5px!important;padding:10px 14px!important}
  .ots-row-actions{gap:7px!important;flex-wrap:wrap}
  .ots-row-actions a,.ots-flight-actions a{min-height:36px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 11px!important;border:1px solid #e5e9ee!important;border-radius:9px!important;background:#fff!important;font-size:11.5px!important}
  .ots-pagination{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;font-size:11.5px!important}
  .ots-pagination-pages span{width:34px!important;height:34px!important;border-radius:9px!important}

  /* Major admin listings become stacked cards instead of wide desktop tables. */
  .ots-admin-layout .ots-flight-list-table,
  .ots-admin-layout .ots-package-list-table,
  .ots-admin-layout .ots-booking-list-table,
  .ots-admin-layout .ots-customer-list-table,
  .ots-admin-layout .ots-payment-list-table,
  .ots-admin-layout .ots-destination-list-table,
  .ots-admin-layout .ots-staff-list-table{min-width:0!important;width:100%!important;display:block!important}
  .ots-flight-list-table thead,.ots-package-list-table thead,.ots-booking-list-table thead,.ots-customer-list-table thead,.ots-payment-list-table thead,.ots-destination-list-table thead,.ots-staff-list-table thead{display:none!important}
  .ots-flight-list-table tbody,.ots-package-list-table tbody,.ots-booking-list-table tbody,.ots-customer-list-table tbody,.ots-payment-list-table tbody,.ots-destination-list-table tbody,.ots-staff-list-table tbody{display:flex!important;flex-direction:column!important;gap:10px!important}
  .ots-flight-list-table tr,.ots-package-list-table tr,.ots-booking-list-table tr,.ots-customer-list-table tr,.ots-payment-list-table tr,.ots-destination-list-table tr,.ots-staff-list-table tr{display:block!important;border:1px solid #e9edf2!important;border-radius:14px!important;background:#fff!important;padding:5px 12px!important;box-shadow:0 3px 12px rgba(20,32,52,.035)!important}
  .ots-flight-list-table td,.ots-package-list-table td,.ots-booking-list-table td,.ots-customer-list-table td,.ots-payment-list-table td,.ots-destination-list-table td,.ots-staff-list-table td{display:grid!important;grid-template-columns:106px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;width:100%!important;padding:9px 0!important;border:0!important;border-bottom:1px solid #f0f2f5!important;font-size:12.5px!important;text-align:right!important;min-width:0!important;word-break:break-word}
  .ots-flight-list-table td:last-child,.ots-package-list-table td:last-child,.ots-booking-list-table td:last-child,.ots-customer-list-table td:last-child,.ots-payment-list-table td:last-child,.ots-destination-list-table td:last-child,.ots-staff-list-table td:last-child{border-bottom:0!important}
  .ots-flight-list-table td::before,.ots-package-list-table td::before,.ots-booking-list-table td::before,.ots-customer-list-table td::before,.ots-payment-list-table td::before,.ots-destination-list-table td::before,.ots-staff-list-table td::before{font-size:10px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.035em!important;color:#939dab!important;text-align:left!important;align-self:start!important;padding-top:2px}
  .ots-flight-list-table td>* ,.ots-package-list-table td>* ,.ots-booking-list-table td>* ,.ots-customer-list-table td>* ,.ots-payment-list-table td>* ,.ots-destination-list-table td>* ,.ots-staff-list-table td>*{justify-self:end;max-width:100%}
  .ots-flight-list-table td strong,.ots-package-list-table td strong,.ots-booking-list-table td strong,.ots-customer-list-table td strong,.ots-payment-list-table td strong,.ots-destination-list-table td strong,.ots-staff-list-table td strong{font-size:13px!important}
  .ots-flight-list-table td small,.ots-package-list-table td small,.ots-booking-list-table td small,.ots-customer-list-table td small,.ots-payment-list-table td small{font-size:11px!important}

  .ots-flight-list-table td:nth-child(1)::before{content:'Flight'}.ots-flight-list-table td:nth-child(2)::before{content:'Route'}.ots-flight-list-table td:nth-child(3)::before{content:'Package'}.ots-flight-list-table td:nth-child(4)::before{content:'Departure'}.ots-flight-list-table td:nth-child(5)::before{content:'Return'}.ots-flight-list-table td:nth-child(6)::before{content:'Seats'}.ots-flight-list-table td:nth-child(7)::before{content:'Status'}.ots-flight-list-table td:nth-child(8)::before{content:'Action'}
  .ots-package-list-table td:nth-child(1)::before{content:'Package'}.ots-package-list-table td:nth-child(2)::before{content:'Duration'}.ots-package-list-table td:nth-child(3)::before{content:'Adult'}.ots-package-list-table td:nth-child(4)::before{content:'Child'}.ots-package-list-table td:nth-child(5)::before{content:'Babies'}.ots-package-list-table td:nth-child(6)::before{content:'Hotel Add-ons'}.ots-package-list-table td:nth-child(7)::before{content:'Departures'}.ots-package-list-table td:nth-child(8)::before{content:'Status'}.ots-package-list-table td:nth-child(9)::before{content:'Action'}
  .ots-booking-list-table td:nth-child(1)::before{content:'Booking ID'}.ots-booking-list-table td:nth-child(2)::before{content:'Customer'}.ots-booking-list-table td:nth-child(3)::before{content:'Package'}.ots-booking-list-table td:nth-child(4)::before{content:'Departure'}.ots-booking-list-table td:nth-child(5)::before{content:'Pax'}.ots-booking-list-table td:nth-child(6)::before{content:'Payment'}.ots-booking-list-table td:nth-child(7)::before{content:'Status'}.ots-booking-list-table td:nth-child(8)::before{content:'Action'}
  .ots-customer-list-table td:nth-child(1)::before{content:'Customer'}.ots-customer-list-table td:nth-child(2)::before{content:'Contact'}.ots-customer-list-table td:nth-child(3)::before{content:'Bookings'}.ots-customer-list-table td:nth-child(4)::before{content:'Registered Pax'}.ots-customer-list-table td:nth-child(5)::before{content:'Booking Value'}.ots-customer-list-table td:nth-child(6)::before{content:'Last Booking'}.ots-customer-list-table td:nth-child(7)::before{content:'Action'}
  .ots-payment-list-table td:nth-child(1)::before{content:'Booking'}.ots-payment-list-table td:nth-child(2)::before{content:'Customer'}.ots-payment-list-table td:nth-child(3)::before{content:'Type'}.ots-payment-list-table td:nth-child(4)::before{content:'Method'}.ots-payment-list-table td:nth-child(5)::before{content:'Reference'}.ots-payment-list-table td:nth-child(6)::before{content:'Amount'}.ots-payment-list-table td:nth-child(7)::before{content:'Date'}
  .ots-destination-list-table td:nth-child(1)::before{content:'Destination'}.ots-destination-list-table td:nth-child(2)::before{content:'State / Region'}.ots-destination-list-table td:nth-child(3)::before{content:'Country'}.ots-destination-list-table td:nth-child(4)::before{content:'Packages'}.ots-destination-list-table td:nth-child(5)::before{content:'Status'}
  .ots-staff-list-table td:nth-child(1)::before{content:'Staff'}.ots-staff-list-table td:nth-child(2)::before{content:'Email'}.ots-staff-list-table td:nth-child(3)::before{content:'Role'}

  /* Editors and detail screens */
  .ots-package-details-layout{padding:14px!important;gap:14px!important}
  .ots-pricing-country-grid{padding:14px!important;gap:11px!important}
  .ots-price-field{padding:12px 13px!important;gap:9px!important}
  .ots-hotel-addon-list-v119{padding:14px 14px 5px!important}
  .ots-hotel-addon-row-v119{padding:12px!important}
  .ots-editor-section-head{padding:15px!important}
  .ots-editor-section-head h2{font-size:17px!important}
  .ots-editor-section-head p{font-size:12px!important;line-height:1.45!important}
  .ots-image-preview{height:210px!important}
  .ots-booking-card{padding:15px!important;border-radius:15px!important}
  .ots-review-box{padding:13px!important}
  .ots-review-line{font-size:12px!important;gap:10px!important}

  /* Bottom tab bar feels less like a floating website widget. */
  .ots-mobile-bottom-nav{left:8px!important;right:8px!important;bottom:calc(7px + env(safe-area-inset-bottom))!important;min-height:62px!important;border-radius:18px!important;padding:5px!important}
  .ots-mobile-bottom-nav a,.ots-mobile-bottom-nav button{min-height:50px!important;border-radius:13px!important;gap:3px!important}
  .ots-mobile-bottom-nav span{font-size:18px!important}.ots-mobile-bottom-nav small{font-size:10px!important;font-weight:800!important}
}

@media(max-width:390px){
  .ots-mobile-brand img{width:119px;max-width:43vw}
  .ots-main{padding-left:10px!important;padding-right:10px!important}
  .ots-stats{gap:8px!important}
  .ots-stat{padding:12px!important}
  .ots-admin-layout .ots-flight-list-table td,.ots-admin-layout .ots-package-list-table td,.ots-admin-layout .ots-booking-list-table td,.ots-admin-layout .ots-customer-list-table td,.ots-admin-layout .ots-payment-list-table td,.ots-admin-layout .ots-destination-list-table td,.ots-admin-layout .ots-staff-list-table td{grid-template-columns:92px minmax(0,1fr)!important}
}


/* v1.2.9 — Mobile shell polish: static logo header + edge-to-edge app tab bar */
@media(max-width:760px){
  html,body.ohhsem-system-page{max-width:100%;overflow-x:hidden}
  body.ohhsem-system-page{-webkit-tap-highlight-color:transparent}

  /* Header belongs to the page flow (not sticky) and carries branding only. */
  .ots-mobile-appbar{
    position:relative!important;
    top:auto!important;
    z-index:20!important;
    min-height:calc(62px + env(safe-area-inset-top))!important;
    padding:env(safe-area-inset-top) 15px 0!important;
    justify-content:flex-start!important;
    background:#fff!important;
    border-bottom:1px solid #e9ecf0!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .ots-mobile-brand{height:62px!important;flex:0 1 auto!important}
  .ots-mobile-brand img{width:136px!important;max-width:52vw!important;max-height:38px!important}
  .ots-mobile-appbar-actions,.ots-mobile-menu,.ots-mobile-avatar{display:none!important}

  /* Give content enough clearance for a true fixed app tab bar. */
  .ots-main{padding-bottom:calc(86px + env(safe-area-inset-bottom))!important}

  /* Full-width bottom navigation, flush to the physical bottom edge. */
  .ots-mobile-bottom-nav{
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    min-height:calc(66px + env(safe-area-inset-bottom))!important;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:0!important;
    border-top:1px solid #e5e8ed!important;
    border-radius:18px 18px 0 0!important;
    background:#fff!important;
    box-shadow:0 -8px 28px rgba(15,28,48,.10)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .ots-mobile-bottom-nav a,.ots-mobile-bottom-nav button{
    min-height:52px!important;
    border-radius:12px!important;
    touch-action:manipulation;
  }
  .ots-mobile-bottom-nav a.active{background:#fff1f3!important}
}
@media(max-width:390px){
  .ots-mobile-brand img{width:126px!important;max-width:50vw!important}
  .ots-mobile-bottom-nav{padding-left:5px!important;padding-right:5px!important}
}

/* v1.3.0 — Mobile navigation drawer: right edge + full-height app sheet */
@media(max-width:760px){
  /* Drawer is anchored to the physical right edge and spans the full viewport height. */
  .ots-sidebar{
    left:auto!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    border-left:1px solid #e7eaf0!important;
    border-right:0!important;
    border-radius:0!important;
    box-shadow:-16px 0 46px rgba(18,31,53,.17)!important;
    transform:translate3d(105%,0,0)!important;
    padding-top:calc(14px + env(safe-area-inset-top))!important;
    padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;
  }
  .ots-admin-layout.mobile-nav-open .ots-sidebar{
    transform:translate3d(0,0,0)!important;
  }

  /* Keep the sheet visually continuous right up to the top screen edge. */
  .ots-sidebar-mobile-head{
    margin-top:0!important;
  }
  .ots-mobile-overlay{
    inset:0!important;
  }
}

/* v1.3.1 — OHHSEM unified application icon system */
.ots-svg-icon{width:20px;height:20px;display:block;flex:0 0 auto;overflow:visible}
.ots-side-icon{width:30px!important;height:30px;display:grid!important;place-items:center;text-align:center!important;border-radius:9px;background:#f7f8fa;color:#667386;transition:background .16s ease,color .16s ease,transform .16s ease;flex:0 0 30px}
.ots-side-icon .ots-svg-icon{width:18px;height:18px}
.ots-side-nav>a:hover .ots-side-icon,.ots-nav-toggle:hover .ots-side-icon{background:#f0f2f5;color:var(--ots-navy)}
.ots-side-nav>a.active .ots-side-icon,.ots-nav-toggle.active .ots-side-icon,.ots-nav-group.open .ots-nav-toggle .ots-side-icon{background:#ffe7ea;color:var(--ots-red)}
.ots-nav-toggle>i{width:22px;height:22px;display:grid;place-items:center;margin-left:auto;color:#9aa4b2;transition:transform .2s ease,color .16s ease}
.ots-nav-toggle>i .ots-svg-icon{width:16px;height:16px}
.ots-nav-group.open .ots-nav-toggle>i{color:var(--ots-red)}
.ots-sub-icon{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:#f8f9fb;color:#8792a2;flex:0 0 22px}
.ots-sub-icon .ots-svg-icon{width:13px;height:13px}
.ots-nav-submenu a{gap:8px!important}
.ots-nav-submenu a.active .ots-sub-icon{background:#ffe7ea;color:var(--ots-red)}

/* Header/search icons */
.ots-search:before{display:none!important}
.ots-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:2;color:#8e99a8;pointer-events:none}
.ots-search-icon .ots-svg-icon{width:18px;height:18px}
.ots-icon-btn{transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.ots-icon-btn .ots-svg-icon{width:18px;height:18px}
.ots-icon-btn:hover{background:#fff4f5;border-color:#f0cbd0;color:var(--ots-red);transform:translateY(-1px)}

/* Dashboard KPI icons */
.ots-stat-icon{width:38px!important;height:38px!important;border-radius:11px!important;background:#fff1f3!important;color:var(--ots-red)!important;display:grid!important;place-items:center!important;font-style:normal!important}
.ots-stat-icon .ots-svg-icon{width:19px;height:19px}

/* Flight editor / selector icons */
.ots-flight-leg-icon .ots-svg-icon{width:21px;height:21px}
.ots-search-select-trigger b{width:22px;height:22px;display:grid;place-items:center;color:#8d97a5}
.ots-search-select-trigger b .ots-svg-icon{width:16px;height:16px}
.ots-search-select-search>span{display:grid;place-items:center;width:24px;height:24px;color:#8d97a5;flex:0 0 24px}
.ots-search-select-search>span .ots-svg-icon{width:17px;height:17px}
.ots-month-trigger-icon{font-size:0!important}
.ots-month-trigger-icon .ots-svg-icon{width:14px;height:14px}
.ots-month-trigger>b{width:20px;height:20px;display:grid;place-items:center}
.ots-month-trigger>b .ots-svg-icon{width:15px;height:15px}
.ots-month-head button{display:grid!important;place-items:center!important}
.ots-month-head button .ots-svg-icon{width:16px;height:16px}

/* Drawer utility icons */
.ots-mobile-close{font-size:0!important}
.ots-mobile-close .ots-svg-icon{width:19px;height:19px}
.ots-mobile-user-card>a{font-size:0!important}
.ots-mobile-user-card>a .ots-svg-icon{width:17px;height:17px}

/* Mobile app bottom navigation */
.ots-mobile-bottom-nav span{display:grid;place-items:center;line-height:1!important}
.ots-mobile-bottom-nav span .ots-svg-icon{width:21px;height:21px}
.ots-mobile-bottom-nav a.active span .ots-svg-icon{stroke-width:2.15}

@media(max-width:760px){
  .ots-side-nav>a,.ots-nav-toggle{gap:10px!important}
  .ots-side-icon{width:32px!important;height:32px!important;flex-basis:32px}
  .ots-side-icon .ots-svg-icon{width:19px;height:19px}
  .ots-nav-submenu{padding-left:42px!important}
  .ots-mobile-bottom-nav span .ots-svg-icon{width:22px;height:22px}
  .ots-mobile-bottom-nav a.active span{color:var(--ots-red)}
}

/* Icon cleanup inside admin package / flight tools */
.ots-package-thumb.placeholder .ots-svg-icon{width:18px;height:18px}
.ots-image-empty>span .ots-svg-icon{width:20px;height:20px}
.ots-airline-mark .ots-svg-icon{width:14px;height:14px}
.ots-addon-remove{display:grid!important;place-items:center!important;font-size:0!important}
.ots-addon-remove .ots-svg-icon{width:17px;height:17px}


/* v1.3.4 — Compact document verification UI */
.ots-doc-upload-wrap{display:grid;gap:10px;align-content:start}
.ots-upload-box strong{font-size:15px!important;color:#243247!important;font-weight:800}
.ots-upload-box span{font-size:13px;color:#687386;margin-top:5px}
.ots-upload-box small{font-size:12px;line-height:1.5;color:#8b95a5;margin-top:5px;max-width:310px}
.ots-doc-scan-status{border:1px solid #e7eaf0;border-radius:13px;background:#fbfcfe;padding:11px 12px;transition:.2s ease}
.ots-doc-scan-main{display:flex;align-items:center;gap:10px;min-width:0}
.ots-scan-dot{width:10px;height:10px;border-radius:999px;background:#8fa0b5;box-shadow:0 0 0 4px rgba(143,160,181,.12);flex:0 0 auto}
.ots-doc-scan-copy{min-width:0;flex:1}.ots-doc-scan-copy strong{display:block;font-size:13px;line-height:1.25;color:#243247}.ots-doc-scan-copy small{display:block;font-size:11px;line-height:1.4;color:#7d8796;margin-top:2px;white-space:normal}
.ots-scan-badge{font-size:10px;font-weight:800;border-radius:999px;padding:5px 8px;background:#eef1f5;color:#667085;white-space:nowrap}
.ots-scan-progress{height:4px;border-radius:999px;background:#edf0f4;overflow:hidden;margin-top:9px}.ots-scan-progress>span{display:block;width:0;height:100%;border-radius:inherit;background:#df2638;transition:width .22s ease}
.ots-doc-scan-status.is-checking{border-color:#dfe6f2;background:#fbfdff}.ots-doc-scan-status.is-checking .ots-scan-dot{background:#5676bb;box-shadow:0 0 0 4px rgba(86,118,187,.12)}.ots-doc-scan-status.is-checking .ots-scan-badge{background:#eef3ff;color:#4565a9}
.ots-doc-scan-status.is-pass{border-color:#d6ecdf;background:#fbfffc}.ots-doc-scan-status.is-pass .ots-scan-dot{background:#1e9a5b;box-shadow:0 0 0 4px rgba(30,154,91,.12)}.ots-doc-scan-status.is-pass .ots-scan-badge{background:#e8f8ef;color:#16834c}.ots-doc-scan-status.is-pass .ots-scan-progress>span{background:#1e9a5b}
.ots-doc-scan-status.is-warn{border-color:#f0dfb5;background:#fffdf8}.ots-doc-scan-status.is-warn .ots-scan-dot{background:#d3961e;box-shadow:0 0 0 4px rgba(211,150,30,.13)}.ots-doc-scan-status.is-warn .ots-scan-badge{background:#fff4dc;color:#986400}.ots-doc-scan-status.is-warn .ots-scan-progress>span{background:#d3961e}
.ots-doc-scan-status.is-fail{border-color:#f0ccd1;background:#fffafb}.ots-doc-scan-status.is-fail .ots-scan-dot{background:#d83b4d;box-shadow:0 0 0 4px rgba(216,59,77,.12)}.ots-doc-scan-status.is-fail .ots-scan-badge{background:#ffe9eb;color:#c42d3a}.ots-doc-scan-status.is-fail .ots-scan-progress>span{background:#d83b4d}
.ots-btn.is-disabled,.ots-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}
.ots-toast-stack{position:fixed;right:18px;bottom:18px;z-index:999999;display:grid;gap:10px;width:min(380px,calc(100vw - 28px));pointer-events:none}
.ots-toast{pointer-events:auto;display:grid;grid-template-columns:12px 1fr 28px;gap:10px;align-items:start;background:#fff;border:1px solid #e5e9ef;border-radius:14px;padding:13px 12px;box-shadow:0 14px 40px rgba(24,35,52,.18);opacity:0;transform:translateY(10px) scale(.985);transition:.18s ease}.ots-toast.is-visible{opacity:1;transform:none}.ots-toast.is-leaving{opacity:0;transform:translateY(8px)}
.ots-toast-icon{width:10px;height:10px;border-radius:999px;background:#6480a8;margin-top:4px;box-shadow:0 0 0 4px rgba(100,128,168,.11)}.ots-toast strong{display:block;font-size:13px;line-height:1.3;color:#202b3c}.ots-toast small{display:block;font-size:11px;line-height:1.45;color:#6f7a8a;margin-top:2px}.ots-toast button{border:0;background:transparent;color:#9aa3b1;font-size:20px;line-height:20px;cursor:pointer;padding:0}
.ots-toast.is-success{border-color:#d9ecdf}.ots-toast.is-success .ots-toast-icon{background:#1e9a5b;box-shadow:0 0 0 4px rgba(30,154,91,.11)}.ots-toast.is-warning{border-color:#f0dfb5}.ots-toast.is-warning .ots-toast-icon{background:#d3961e;box-shadow:0 0 0 4px rgba(211,150,30,.12)}.ots-toast.is-error{border-color:#f0ccd1}.ots-toast.is-error .ots-toast-icon{background:#d83b4d;box-shadow:0 0 0 4px rgba(216,59,77,.11)}
@media(max-width:760px){.ots-upload-box strong{font-size:15px!important}.ots-upload-box span{font-size:13px}.ots-upload-box small{font-size:12px}.ots-doc-scan-status{padding:11px}.ots-doc-scan-copy strong{font-size:13px}.ots-doc-scan-copy small{font-size:12px}.ots-toast-stack{right:10px;bottom:76px;width:calc(100vw - 20px)}.ots-toast{border-radius:13px}}
\n\n/* v1.3.8 — Passenger verification readability and verified-state polish */\n.ots-passenger-body{align-items:start}\n.ots-passenger-fields{align-content:start;align-items:start;grid-auto-rows:max-content}\n.ots-passenger-fields>label{min-width:0;margin:0;font-size:12px;line-height:1.35;color:#4f5d70}\n.ots-passenger-fields input,.ots-passenger-fields select{min-height:44px;font-size:14px;font-weight:650}\n.ots-passenger-card.is-verified{border-color:#cfe8da;box-shadow:0 4px 14px rgba(30,154,91,.045)}\n.ots-passenger-card.is-verified .ots-passenger-head{background:#fbfffc;border-bottom-color:#dceee4}\n.ots-passenger-card.is-review{border-color:#ead9ad}\n.ots-passenger-card.is-review .ots-passenger-head{background:#fffdf8;border-bottom-color:#f0e4c4}\n.ots-passenger-card.is-verified .ots-upload-box{min-height:100px;border-style:solid;border-color:#d4eadf;background:#fbfffc;justify-content:flex-start;align-items:flex-start;text-align:left;padding:13px}\n.ots-passenger-card.is-review .ots-upload-box{min-height:108px;border-color:#ead9ad;background:#fffdf8}\n.ots-passenger-card.is-verified .ots-upload-box small{margin-top:3px;color:#5f816e}\n.ots-passenger-card.is-verified .ots-doc-scan-status{padding:9px 10px;border-radius:10px}\n.ots-passenger-card.is-verified .ots-doc-scan-copy small{display:none}\n.ots-passenger-card.is-verified .ots-scan-progress{height:3px;margin-top:7px}\n.ots-passenger-card.is-verified .ots-auto-tag{color:#27865a;background:#edf9f2;border-radius:999px;padding:2px 6px;font-size:9px}\n.ots-passenger-card.is-review .ots-auto-tag{color:#9a6c10;background:#fff6df;border-radius:999px;padding:2px 6px;font-size:9px}\n.ots-upload-box input[type=file]{width:100%;font-size:11px!important;color:#586678}\n.ots-upload-box input[type=file]::file-selector-button{border:1px solid #d9dfe7;border-radius:8px;background:#fff;color:#243247;padding:7px 10px;margin-right:8px;font-weight:750;cursor:pointer}\n.ots-upload-box input[type=file]::file-selector-button:hover{border-color:#ef9aa5;background:#fff8f9}\n@media(max-width:900px){.ots-passenger-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}\n@media(max-width:560px){.ots-passenger-fields{grid-template-columns:1fr}.ots-passenger-body{gap:11px;padding:12px}.ots-passenger-card.is-verified .ots-upload-box,.ots-passenger-card.is-review .ots-upload-box{min-height:auto}}\n