:root{--navy:#0b1324;--navy-2:#111c33;--orange:#f97316;--orange-soft:#fff7ed;--green:#15803d;--ink:#172033;--muted:#f6f8fb;--line:#dbe3ee;--surface:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--muted);line-height:1.55}
a{color:inherit}
.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#182743)}
.box,.editor{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;display:grid;gap:14px;box-shadow:0 18px 45px rgba(11,19,36,.1)}
.box{width:min(420px,92vw)}
.box h1{margin:0 0 4px;font-weight:900;color:var(--navy)}
input,textarea,select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;color:var(--ink)}
input:focus,textarea:focus,select:focus{outline:3px solid rgba(249,115,22,.16);border-color:var(--orange)}
textarea{min-height:110px}
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
button{background:var(--orange);border:0;border-radius:10px;padding:12px 16px;font-weight:900;color:#fff;cursor:pointer;box-shadow:0 12px 24px rgba(249,115,22,.24);transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
button:hover{background:var(--navy);transform:translateY(-1px);box-shadow:0 16px 30px rgba(11,19,36,.22)}
.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:var(--navy);color:#dbe4f0;padding:22px 16px;overflow:auto;-ms-overflow-style:none;scrollbar-width:none;box-shadow:16px 0 40px rgba(11,19,36,.12)}
.sidebar::-webkit-scrollbar{display:none}
.sidebar a{display:block;text-decoration:none;padding:11px 13px;border-radius:10px;margin:3px 0;font-weight:800;color:#dbe4f0;transition:background .2s ease,color .2s ease}
.sidebar a:hover,.sidebar a.active{background:var(--orange);color:#fff}
.sidebar .logo{font-size:22px;font-weight:900;margin-bottom:18px;color:#fff;background:transparent;border:0;padding:8px 10px}
.sidebar .logo:hover{background:transparent;color:#fff}
.admin-main{margin-left:260px;padding:34px}
.admin-main h1{margin:0 0 18px;font-weight:900;color:var(--navy)}
.admin-main h2{margin-top:26px;font-size:22px;font-weight:900;color:var(--navy)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 28px}
.metrics div{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 20px 20px 70px;box-shadow:0 14px 34px rgba(11,19,36,.08)}
.metrics div::before{content:"";position:absolute;left:20px;top:22px;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--orange),#fb923c);box-shadow:0 12px 22px rgba(249,115,22,.22)}
.metrics strong{display:block;font-size:34px;line-height:1;font-weight:900;color:var(--navy)}
.metrics span{display:block;margin-top:7px;color:#5a6678;font-weight:800}
.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px;margin:18px 0;box-shadow:0 14px 34px rgba(11,19,36,.07)}
table{border-collapse:collapse;width:100%;min-width:900px}
th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 12px;vertical-align:top}
th{background:#f1f5f9;color:var(--navy);font-weight:900}
td a{color:var(--orange);font-weight:900;text-decoration:none}
.editor{margin:12px 0 24px;grid-template-columns:repeat(2,1fr)}
.editor label{font-weight:900;color:#263247}
.editor textarea,.editor button{grid-column:1/-1}
.change-password-form{max-width:720px}
.change-password-form>label{display:grid;gap:6px}
.password-control{position:relative;display:block}
.password-control input{padding-right:48px}
.password-toggle{position:absolute;top:50%;right:6px;width:36px;height:36px;padding:7px;border-radius:8px;background:transparent;box-shadow:none;color:#667085;transform:translateY(-50%)}
.password-toggle:hover,.password-toggle:focus-visible{background:var(--orange-soft);box-shadow:none;color:var(--orange);transform:translateY(-50%)}
.password-toggle svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.password-toggle[aria-pressed=true] .password-eye-slash{display:none}
.flash{background:#ecfdf3;color:var(--green);padding:12px 14px;border-radius:10px;font-weight:900;border:1px solid #bbf7d0}
.flash.error{background:#fff1f2;color:#be123c;border-color:#fecdd3}
@media(max-width:900px){.sidebar{position:static;width:auto}.admin-main{margin:0;padding:24px}.metrics,.editor{grid-template-columns:1fr}}

/* Admin typography scale */
body,input,textarea,select,button{font-family:"Inter","Open Sans",Arial,Helvetica,sans-serif;font-size:15px;letter-spacing:0}
h1,h2,h3,h4,h5,h6,.sidebar .logo,.metrics strong{font-family:"Poppins","Montserrat","Inter",Arial,sans-serif;letter-spacing:0}
body{line-height:1.6}.box h1,.admin-main h1{font-size:32px;line-height:1.15}.admin-main h2{font-size:22px;line-height:1.25}.sidebar .logo{font-size:22px;line-height:1.15}.sidebar a{font-size:14px;line-height:1.35}.metrics strong{font-size:34px;line-height:1}.metrics span{font-size:14px;line-height:1.35}input,textarea,select{font-size:15px;line-height:1.45}button{font-size:15px;line-height:1.25}th,td{font-size:14px;line-height:1.45}.editor label{font-size:14px;line-height:1.45}.flash{font-size:14px;line-height:1.45}
@media(max-width:900px){.box h1,.admin-main h1{font-size:28px}.admin-main h2{font-size:20px}.metrics strong{font-size:30px}}

/* Compact admin typography adjustment */
body,input,textarea,select,button{font-size:14px}
.box h1,.admin-main h1{font-size:28px}.admin-main h2{font-size:19px}.sidebar .logo{font-size:20px}.sidebar a{font-size:13px}.metrics strong{font-size:28px}.metrics span{font-size:13px}th,td{font-size:13px}.editor label,.flash{font-size:13px}
@media(max-width:900px){.box h1,.admin-main h1{font-size:25px}.admin-main h2{font-size:18px}.metrics strong{font-size:26px}}

/* Final admin title scale and semibold weight */
h1,h2,h3,h4,h5,h6,
.box h1,
.admin-main h1,
.admin-main h2,
.sidebar .logo,
.metrics strong{
  font-weight:600!important;
  letter-spacing:0;
}
.sidebar a,
button,
th,
td a,
.editor label,
.flash,
.metrics span{
  font-weight:600!important;
}
.box h1,
.admin-main h1{
  font-size:24px!important;
  line-height:1.2!important;
}
.admin-main h2{
  font-size:17px!important;
  line-height:1.3!important;
}
.sidebar .logo{
  font-size:18px!important;
}
.metrics strong{
  font-size:24px!important;
}
@media(max-width:900px){
  .box h1,
  .admin-main h1{
    font-size:22px!important;
  }
  .admin-main h2{
    font-size:16px!important;
  }
  .metrics strong{
    font-size:22px!important;
  }
}

/* Unified Lost Soul Camps branding */
.sidebar .logo{display:block;margin:0 0 20px;padding:5px 8px;background:transparent!important}
.sidebar .logo img{display:block;width:100%;max-width:228px;height:auto}
.login-logo{display:block;width:min(240px,84%);height:auto;margin:0 auto 4px}
@media(max-width:900px){
  .sidebar .logo{width:220px;max-width:100%;margin-bottom:16px}
}

/* Premium classic admin surfaces */
:root{--navy:#0d1728;--navy-2:#16243a;--orange:#ed6c19;--orange-soft:#fff5ed;--green:#26734d;--ink:#172033;--muted:#f3f5f8;--line:#dce3eb;--surface:#fff}
body{background:#f3f5f8;color:#273348}
.login{background:#0d1728}
.box,.editor{border-radius:8px;border-color:#dce3eb;box-shadow:0 12px 34px rgba(13,23,40,.1)}
.sidebar{background:#0d1728;box-shadow:10px 0 30px rgba(13,23,40,.1)}
.sidebar a{border-radius:6px;color:#cbd5e1}
.sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}
.sidebar a.active{background:var(--orange);color:#fff;box-shadow:0 8px 18px rgba(237,108,25,.18)}
.sidebar-group{display:block;margin:0 0 18px;padding:0}
.sidebar-group-title{display:block;margin:0 9px 7px;padding-top:4px;color:#8290a5;font-size:10px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}
.sidebar-group+.sidebar-group{padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-group a{margin:2px 0}
.sidebar-group-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:11px 13px;border:0;border-radius:6px;background:transparent;box-shadow:none;color:#cbd5e1;font-size:13px;font-weight:700;text-align:left;transform:none}
.sidebar-group-toggle:hover,.sidebar-group-toggle.is-open{background:rgba(255,255,255,.08);box-shadow:none;color:#fff;transform:none}
.sidebar-group-toggle i{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s ease}
.sidebar-group-toggle.is-open i{transform:rotate(225deg) translate(-2px,-1px)}
.sidebar-submenu[hidden]{display:none}
.admin-profile{position:relative;display:flex;justify-content:flex-end;margin:0 0 18px;z-index:30}
.admin-profile-trigger{display:flex;align-items:center;gap:9px;padding:7px 11px 7px 7px;border:1px solid #d8e0ea;border-radius:999px;background:#fff;color:#17233c;font-size:13px;font-weight:700;box-shadow:0 5px 18px rgba(24,39,75,.08);transform:none}
.admin-profile-trigger:hover{background:#f8fafc;box-shadow:0 5px 18px rgba(24,39,75,.12);transform:none}
.admin-profile-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#fff0e7;color:#db5d19}
.admin-profile-avatar svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.admin-profile-trigger>i{width:7px;height:7px;margin-left:2px;border-right:2px solid #748198;border-bottom:2px solid #748198;transform:rotate(45deg) translateY(-2px)}
.admin-profile-trigger[aria-expanded="true"]>i{transform:rotate(225deg) translate(-1px,-1px)}
.admin-profile-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:190px;padding:7px;border:1px solid #dfe5ed;border-radius:9px;background:#fff;box-shadow:0 14px 34px rgba(25,39,70,.16)}
.admin-profile-menu[hidden]{display:none}
.admin-profile-menu a{display:block;padding:10px 12px;border-radius:6px;color:#17233c;font-size:13px;font-weight:650;text-decoration:none}
.admin-profile-menu a:hover{background:#fff3eb;color:#d85816}
.sidebar-submenu{margin:4px 0 0 10px;padding-left:8px;border-left:1px solid rgba(255,255,255,.13)}
.sidebar-submenu a{padding:9px 11px;font-size:12px}
.admin-main{padding:30px 34px}
.metrics{gap:14px}
.metrics div{border-radius:8px;border-color:#dce3eb;padding:19px 18px 18px 64px;box-shadow:0 8px 24px rgba(13,23,40,.06)}
.metrics div::before{left:18px;top:19px;width:34px;height:34px;border-radius:7px;background:var(--orange);box-shadow:none}
.table-wrap{border-radius:8px;border-color:#dce3eb;box-shadow:0 8px 24px rgba(13,23,40,.05)}
.table-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:16px 0 8px}
.table-search{display:grid;gap:5px;width:min(320px,100%);color:#667085;font-size:11px;font-weight:700;text-transform:uppercase}
.table-search input{height:38px;padding:8px 11px;background:#fff;font-size:13px;text-transform:none}
.table-pagination{display:flex;align-items:center;gap:7px;color:#667085;font-size:12px;font-weight:600;white-space:nowrap}
.table-pagination button{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;padding:0;border:1px solid #d5dde7;border-radius:6px;background:#fff;box-shadow:none;color:var(--navy);font-size:20px;line-height:1;transform:none}
.table-pagination button:hover:not(:disabled){border-color:var(--orange);background:var(--orange-soft);color:var(--orange);transform:none;box-shadow:none}
.table-pagination button:disabled{cursor:not-allowed;opacity:.4}
th{background:#edf1f5;color:#263247}
th,td{padding:10px 12px}
tr:hover td{background:#fafbfc}
input,textarea,select{border-radius:6px;border-color:#d5dde7;background:#fcfdfe}
button{border-radius:7px;background:var(--orange);box-shadow:0 8px 18px rgba(237,108,25,.16)}
.flash{border-radius:7px}
.admin-toast{position:fixed;z-index:1000;top:20px;right:22px;width:min(380px,calc(100vw - 32px));margin:0;box-shadow:0 12px 30px rgba(13,23,40,.16);transition:opacity .25s ease,transform .25s ease}
.admin-toast.is-hiding{opacity:0;transform:translateY(-8px);pointer-events:none}
.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:22px;padding:24px;border:1px solid #dce3eb;border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(13,23,40,.06)}
.dashboard-hero h1{margin:0 0 7px!important;color:var(--navy)}
.dashboard-hero span{display:block;max-width:680px;color:#667085;font-size:14px}
.admin-eyebrow{margin:0 0 6px;color:var(--orange);font-size:10px;font-weight:700!important;letter-spacing:1px;text-transform:uppercase}
.admin-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px;border:1px solid #d5dde7;border-radius:7px;background:#fff;color:var(--navy);font-weight:700;text-decoration:none;white-space:nowrap}
.admin-action:hover{border-color:var(--orange);background:var(--orange-soft);color:#b9470d}
.module-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.module-heading h1{margin:0!important}
.admin-add{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;border-radius:7px;background:var(--orange);box-shadow:0 8px 18px rgba(237,108,25,.16);color:#fff;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.admin-add span{font-size:20px;font-weight:400;line-height:1}
.admin-add:hover{background:var(--navy);color:#fff}
.row-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}
.cell-content{display:-webkit-box;max-width:280px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-height:1.4;overflow-wrap:anywhere}
.serial-column{width:48px;color:#778195;text-align:center!important;white-space:nowrap}
.package-table-image,.package-image-empty{display:block;width:58px;height:42px;border-radius:6px}
.package-table-image{object-fit:cover;background:#edf1f5}
.package-admin-table table{min-width:1180px}
.package-admin-table th,.package-admin-table td{padding:9px 10px;vertical-align:middle;white-space:nowrap}
.package-admin-table .package-name-cell{display:block;max-width:220px;overflow:hidden;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.package-admin-table .package-description-cell{display:-webkit-box;width:240px;max-width:240px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;color:#667085;line-height:1.4;white-space:normal}
.package-admin-table .status-switch{margin:auto}
.notification-editor{margin-bottom:28px}
.notification-history-table table{min-width:1050px}
.notification-history-table strong{display:block;margin-bottom:4px;color:#172033}
.package-image-empty{display:grid;place-items:center;background:#edf1f5;color:#98a2b3}
.editor label small{display:block;margin-top:5px;color:#778195;font-size:11px;font-weight:500}
.form-switch-field{display:flex;flex-direction:column;gap:8px}
.switch-control{display:flex;align-items:center;gap:9px;min-height:42px}
.switch-control input{position:absolute;width:1px;height:1px;opacity:0}
.switch-control i,.status-switch i{position:relative;display:block;width:38px;height:22px;border-radius:11px;background:#aeb8c5;transition:.2s ease}
.switch-control i::after,.status-switch i::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.22);transition:.2s ease}
.switch-control input:checked+i,.status-switch.active i{background:var(--green)}
.switch-control input:checked+i::after,.status-switch.active i::after{transform:translateX(16px)}
.switch-control b{font-size:13px;color:#344054}
.status-form{margin:0}
.status-switch{display:inline-flex;align-items:center;padding:4px;border:0;background:transparent!important;box-shadow:none!important;color:#667085;transform:none!important}
.status-switch.active{color:var(--green)}
.icon-action{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border:1px solid #d8e0e9;border-radius:6px;background:#fff;color:#526174!important;text-decoration:none;transition:.18s ease}
.icon-action svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.partner-icon-form{display:inline-flex!important;flex:0 0 auto;min-width:0!important;margin:0;padding:0}.partner-icon-form button.icon-action{padding:0;box-shadow:none;flex:0 0 32px;font:inherit}.partner-icon-form .icon-action svg{flex-shrink:0}.icon-action.access:hover,.icon-action.reset:hover{border-color:#2563eb;background:#eff6ff;color:#2563eb!important}
.icon-action.view:hover{border-color:#2563eb;background:#eff6ff;color:#2563eb!important}
.icon-action.edit:hover{border-color:var(--orange);background:var(--orange-soft);color:var(--orange)!important}
.icon-action.delete:hover{border-color:#dc3545;background:#fff1f2;color:#c92a3a!important}
.icon-action.pdf:hover{border-color:#dc3545;background:#fff1f2;color:#dc3545!important}.icon-action.share:hover{border-color:#16a085;background:#ecfdf5;color:#138a72!important}.icon-action[type=button]{padding:0;cursor:pointer;font:inherit}
.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 24px}
.metrics .metric-card{display:flex;align-items:center;gap:16px;min-height:126px;padding:20px 22px!important}
.metrics .metric-card::before{display:none}
.metric-icon{display:flex;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;line-height:0;border-radius:9px;background:var(--orange-soft);color:#5f6b7a}
.metric-icon svg,.empty-table svg{display:block;width:19px;height:19px;margin:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.metric-copy{display:grid!important;gap:5px;min-width:0;margin:0!important}
.metric-copy strong,.metric-copy span,.metric-copy small{display:block;margin:0!important}
.metric-copy strong{color:var(--navy);font-size:28px!important;line-height:.95}
.metric-copy span{color:#344054;font-size:13px;font-weight:700!important;line-height:1.1}
.metric-copy small{color:#778195;font-size:12px;line-height:1.2}
.dashboard-panels{display:grid;grid-template-columns:1fr;gap:22px}
.dashboard-panel{min-width:0;padding:20px;border:1px solid #dce3eb;border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(13,23,40,.05)}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.panel-heading h2{margin:0!important;color:var(--navy)}
.panel-heading a{color:var(--orange);font-size:13px;font-weight:700;text-decoration:none}
.panel-heading a:hover{color:var(--navy)}
.dashboard-panel .table-wrap{margin:0;box-shadow:none}
.dashboard-command-hero{overflow:hidden;border:0;background:linear-gradient(125deg,#0b1730,#182d50);box-shadow:0 18px 40px rgba(11,23,48,.18);color:#fff}
.dashboard-command-hero::after{content:"";width:180px;height:180px;margin:-105px -65px -105px 0;border:35px solid rgba(255,255,255,.05);border-radius:50%}
.dashboard-command-hero h1{color:#fff!important}
.dashboard-command-hero>div:first-child>span{color:#cbd5e1}
.dashboard-command-hero .admin-eyebrow{color:#fdba74}
.dashboard-hero-actions{position:relative;z-index:1;display:flex;align-items:center;gap:14px}
.dashboard-command-hero .dashboard-date{color:#cbd5e1;font-size:12px;font-weight:600;white-space:nowrap}
.dashboard-command-hero .admin-action{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff}
.dashboard-command-hero .admin-action:hover{border-color:#fff;background:#fff;color:var(--navy)}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 28px}
.dashboard-kpi{display:flex;min-width:0;align-items:center;gap:14px;padding:18px;border:1px solid #dce3eb;border-radius:11px;background:#fff;box-shadow:0 8px 24px rgba(13,23,40,.05);color:inherit;text-decoration:none;transition:.2s ease}
.dashboard-kpi:hover{border-color:#c5d0dc;box-shadow:0 14px 32px rgba(13,23,40,.1);transform:translateY(-2px)}
.dashboard-kpi-icon{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border-radius:10px;background:#fff4eb;color:#e76411}
.dashboard-kpi-icon.bookings{background:#edf7f1;color:#19704e}.dashboard-kpi-icon.buses{background:#edf5ff;color:#2467a9}.dashboard-kpi-icon.partners{background:#f4efff;color:#7047b6}.dashboard-kpi-icon.views{background:#eef7f8;color:#0f766e}.dashboard-kpi-icon.users{background:#f4efff;color:#7047b6}.dashboard-kpi-icon.packages{background:#fff4eb;color:#e76411}
.dashboard-kpi-icon svg,.dashboard-module-symbol svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.dashboard-kpi>span:last-child{display:grid;min-width:0}
.dashboard-kpi small,.dashboard-kpi em{overflow:hidden;color:#7a8696;font-size:11px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
.dashboard-kpi strong{margin:2px 0;color:var(--navy);font-family:Poppins,sans-serif;font-size:25px;font-weight:700!important;line-height:1.1}
.dashboard-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 14px}
.dashboard-section-heading h2{margin:0!important;color:var(--navy)}
.dashboard-section-heading>span{color:#7a8696;font-size:12px}
.dashboard-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:22px}
.dashboard-module-card{position:relative;overflow:hidden;padding:22px;border:1px solid #dce3eb;border-radius:12px;background:#fff;box-shadow:0 9px 26px rgba(13,23,40,.055)}
.dashboard-module-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:#f97316}
.dashboard-module-buses::before{background:#2c78bf}.dashboard-module-partners::before{background:#7650bd}.dashboard-module-blogs::before{background:#16815b}
.dashboard-module-top{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px}
.dashboard-module-symbol{display:grid;width:44px;height:44px;place-items:center;border-radius:10px;background:#fff4eb;color:#e76411}
.dashboard-module-buses .dashboard-module-symbol{background:#edf5ff;color:#2467a9}.dashboard-module-partners .dashboard-module-symbol{background:#f4efff;color:#7047b6}.dashboard-module-blogs .dashboard-module-symbol{background:#edf8f3;color:#18704f}
.dashboard-module-top h3{margin:0;color:var(--navy);font-family:Poppins,sans-serif;font-size:17px;font-weight:650}
.dashboard-module-primary{text-align:right}.dashboard-module-primary strong,.dashboard-module-primary small{display:block}.dashboard-module-primary strong{color:var(--navy);font-size:23px}.dashboard-module-primary small{color:#7a8696;font-size:10px}
.dashboard-module-description{min-height:43px;margin:16px 0;color:#667085;font-size:12px;line-height:1.65}
.dashboard-module-stats{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid #e3e8ee;border-radius:8px;background:#f8fafc}
.dashboard-module-stats span{padding:11px 12px;border-right:1px solid #e3e8ee}.dashboard-module-stats span:last-child{border-right:0}
.dashboard-module-stats strong,.dashboard-module-stats small{display:block}.dashboard-module-stats strong{color:var(--navy);font-size:16px}.dashboard-module-stats small{margin-top:2px;color:#7a8696;font-size:10px}
.dashboard-module-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px}
.dashboard-module-link{display:inline-flex;align-items:center;gap:8px;color:#d9570d;font-size:12px;font-weight:700;text-decoration:none}.dashboard-module-link:hover{color:var(--navy)}.dashboard-module-link span{font-size:17px}
.dashboard-quick-add{padding:6px 9px;border-radius:6px;background:#f1f4f7;color:#526174;font-size:10px;font-weight:700;text-decoration:none}.dashboard-quick-add:hover{background:#e5eaf0;color:var(--navy)}
.dashboard-interest-overview{margin-top:-12px}
.dashboard-lower-grid{display:grid;grid-template-columns:1.05fr 1fr .85fr;gap:18px}
.dashboard-queue-list{display:grid;gap:4px}.dashboard-queue-list>a{display:grid;grid-template-columns:9px minmax(0,1fr) auto 16px;align-items:center;gap:12px;padding:11px 9px;border-radius:8px;color:inherit;text-decoration:none}.dashboard-queue-list>a:hover{background:#f7f9fb}
.dashboard-queue-dot{width:8px;height:8px;border-radius:50%;background:#f97316}.dashboard-queue-dot.blue{background:#2c78bf}.dashboard-queue-dot.purple{background:#7650bd}.dashboard-queue-dot.red{background:#d33b4b}
.dashboard-queue-list strong,.dashboard-queue-list small{display:block}.dashboard-queue-list strong{color:#344054;font-size:12px}.dashboard-queue-list small{margin-top:2px;color:#8a94a3;font-size:10px}.dashboard-queue-list b{min-width:30px;color:var(--navy);font-size:15px;text-align:right}.dashboard-queue-list i{color:#9aa4b2;font-size:15px;font-style:normal}
.dashboard-empty-note{padding:18px;border:1px dashed #d6dee8;border-radius:8px;background:#f8fafc;color:#778195;font-size:12px;text-align:center}
.dashboard-shortcut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dashboard-shortcut-grid a{display:grid;grid-template-columns:30px 1fr;column-gap:9px;padding:12px;border:1px solid #e1e6ec;border-radius:8px;color:inherit;text-decoration:none}.dashboard-shortcut-grid a:hover{border-color:#f0b890;background:#fffaf6}
.dashboard-shortcut-grid span{display:grid;grid-row:1/3;width:30px;height:30px;place-items:center;border-radius:7px;background:var(--orange-soft);color:var(--orange);font-size:17px}.dashboard-shortcut-grid strong{color:#344054;font-size:11px}.dashboard-shortcut-grid small{color:#8a94a3;font-size:9px}
@media(max-width:1200px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1150px){.dashboard-lower-grid{grid-template-columns:1fr 1fr}.dashboard-shortcuts{grid-column:1/-1}}
@media(max-width:850px){.dashboard-module-grid,.dashboard-lower-grid{grid-template-columns:1fr}.dashboard-shortcuts{grid-column:auto}}
@media(max-width:600px){.dashboard-kpi-grid{grid-template-columns:1fr}.dashboard-hero-actions,.dashboard-section-heading{align-items:flex-start;flex-direction:column}.dashboard-command-hero::after{display:none}.dashboard-module-top{grid-template-columns:44px minmax(0,1fr)}.dashboard-module-primary{grid-column:2;text-align:left}.dashboard-shortcut-grid{grid-template-columns:1fr}}
.booking-table table{min-width:980px}
.package-bookings-table table{min-width:1180px}
.package-bookings-table th,.package-bookings-table td{vertical-align:middle;white-space:nowrap}
.package-bookings-table .package-booking-actions{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap}
.package-bookings-table .package-booking-actions form.status-form{display:inline-flex;flex:0 0 auto;width:auto;min-width:0;margin:0;padding:0;gap:0}
.package-booking-actions .table-view{width:auto;min-height:28px;margin:0;padding:4px 8px;line-height:18px;cursor:pointer}
.package-booking-actions .booking-cancel{border-color:#fecaca;background:#fef2f2;color:#b91c1c}
.package-booking-actions .booking-cancel:hover{border-color:#dc2626;background:#dc2626;color:#fff}
.booking-table th,.booking-table td{white-space:nowrap;vertical-align:middle}
.booking-table td{font-size:13px}
.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:#eaf7ef;color:#26734d;font-size:11px;font-weight:700;text-transform:capitalize}
.status-pill.success{background:#dcfce7;color:#166534}
.status-pill.cancel{background:#fee2e2;color:#b91c1c}
.status-pill.pending{background:#fef3c7;color:#92400e}
.status-pill.completed{background:#dbeafe;color:#1d4ed8}.status-pill.expired{background:#e5e7eb;color:#4b5563}
.table-view{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 11px;border:1px solid #f2c7aa;border-radius:6px;background:var(--orange-soft);color:#b9470d;font-size:12px;font-weight:700;text-decoration:none}
.table-view:hover{border-color:var(--orange);background:var(--orange);color:#fff}
.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.detail-heading h1{margin:0!important}
.booking-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 8px 24px rgba(13,23,40,.05)}
.booking-detail div{min-width:0;padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.booking-detail div:nth-child(2n){border-right:0}
.booking-detail span{display:block;margin-bottom:5px;color:#778195;font-size:11px;font-weight:700;text-transform:uppercase}
.booking-detail strong{display:block;overflow-wrap:anywhere;color:var(--navy);font-size:14px;line-height:1.5;white-space:pre-wrap}
.empty-table{display:grid;place-items:center;min-height:170px;padding:26px;border:1px dashed #cfd8e3;border-radius:9px;background:#fafbfc;text-align:center}
.empty-table span{display:grid;width:46px;height:46px;margin-bottom:12px;place-items:center;border-radius:10px;background:var(--orange-soft);color:var(--orange)}
.empty-table strong{display:block;color:var(--navy);font-size:15px}
.empty-table p{max-width:420px;margin:5px auto 0;color:#778195;font-size:13px}
@media(max-width:1100px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.dashboard-hero,.panel-heading,.detail-heading,.module-heading{align-items:flex-start;flex-direction:column}.dashboard-metrics{grid-template-columns:1fr}.metrics .metric-card{min-height:112px;padding:18px!important}.booking-detail{grid-template-columns:1fr}.booking-detail div{border-right:0}.table-tools{align-items:stretch;flex-direction:column}.table-search{width:100%}.table-pagination{justify-content:flex-end}}
@media(max-width:900px){.admin-main{padding:22px 18px}.sidebar{box-shadow:none}}
.editor-wide{grid-column:1/-1}
.professional-editor>label{display:block;margin-bottom:7px;color:#344054;font-size:12px;font-weight:700}
.rich-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:8px;border:1px solid #cfd8e3;border-bottom:0;border-radius:7px 7px 0 0;background:#f4f6f9}
.rich-toolbar select{width:auto;min-width:130px;height:32px;padding:4px 28px 4px 8px;background:#fff;font-size:12px;font-weight:600}
.toolbar-group{display:flex;gap:3px;padding-left:7px;border-left:1px solid #d5dde7}
.rich-toolbar button{min-width:36px;height:32px;padding:5px 9px;border:1px solid #d5dde7;border-radius:4px;background:#fff;box-shadow:none;color:#273348;font-size:12px;transform:none}
.rich-toolbar button:hover{border-color:var(--orange);background:var(--orange-soft);color:var(--orange);transform:none}
.rich-toolbar button.active{border-color:var(--orange);background:var(--orange);color:#fff}
.rich-highlight-control{align-items:center}.rich-highlight-control label{display:flex;align-items:center;gap:6px;margin:0;color:#667085;font-size:11px;font-weight:700}.rich-highlight-control input[type=color]{width:30px;height:28px;padding:2px;border:1px solid #d5dde7;border-radius:4px;background:#fff;cursor:pointer}.notification-message-editor .rich-editor{min-height:190px;max-height:360px}.notification-message-editor .rich-editor-source{min-height:190px;max-height:360px}.notification-format-note{display:block;margin-top:7px;color:#778195;font-size:11px;line-height:1.45}
.rich-editor{min-height:320px;max-height:620px;padding:18px;overflow:auto;border:1px solid #cfd8e3;border-radius:0;background:#fff;color:#273348;font-family:Inter,sans-serif;font-size:15px;font-weight:400;line-height:1.7}
.rich-editor:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(237,108,25,.12);outline:0}
.rich-editor:empty::before{content:attr(data-placeholder);color:#98a2b3;pointer-events:none}
.rich-editor h2,.rich-editor h3,.rich-editor h4{margin:1em 0 .45em;color:var(--navy);font-family:Poppins,sans-serif}
.rich-editor blockquote{margin:16px 0;padding:10px 16px;border-left:4px solid var(--orange);background:var(--orange-soft)}
.rich-editor pre{padding:12px;border-radius:5px;background:#111827;color:#f8fafc;white-space:pre-wrap}
.rich-editor-source{display:block;min-height:320px;max-height:620px;padding:16px;border:1px solid #cfd8e3;border-radius:0;background:#111827;color:#e5e7eb;font-family:Consolas,monospace;font-size:13px;line-height:1.55}
.rich-editor-source[hidden],.rich-editor[hidden]{display:none!important}
.editor-status{display:flex;justify-content:space-between;gap:12px;padding:7px 10px;border:1px solid #cfd8e3;border-top:0;border-radius:0 0 7px 7px;background:#f8fafc;color:#778195;font-size:10px;font-weight:600}
.searchable-select-field{display:flex;flex-direction:column}
.searchable-dropdown{position:relative;display:block}
.searchable-dropdown-trigger{display:flex;width:100%;height:42px;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid #d5dde7;border-radius:6px;background:#fcfdfe;box-shadow:none;color:#344054;font-size:13px;font-weight:500;text-align:left;transform:none}
.searchable-dropdown-trigger:hover,.searchable-dropdown-trigger[aria-expanded=true]{border-color:var(--orange);background:#fff;box-shadow:0 0 0 3px rgba(237,108,25,.1);transform:none}
.searchable-dropdown-trigger i{width:8px;height:8px;border-right:2px solid #778195;border-bottom:2px solid #778195;transform:rotate(45deg) translateY(-2px)}
.searchable-dropdown-panel{position:absolute;z-index:1200;top:calc(100% + 5px);left:0;width:100%;overflow:hidden;border:1px solid #d5dde7;border-radius:7px;background:#fff;box-shadow:0 14px 32px rgba(13,23,40,.16)}
.searchable-dropdown-panel[hidden]{display:none}
.dropdown-search{display:block;padding:9px;border-bottom:1px solid #e4e9ef;background:#f8fafc}
.dropdown-search input{width:100%;height:36px;padding:7px 10px;background:#fff}
.dropdown-options{display:block;max-height:230px;overflow-y:auto;padding:5px}
.dropdown-options button{display:block;width:100%;padding:9px 10px;border:0;border-radius:5px;background:#fff;box-shadow:none;color:#344054;font-size:13px;font-weight:500;text-align:left;transform:none}
.dropdown-options button:hover,.dropdown-options button[aria-selected=true]{background:var(--orange-soft);color:#b9470d;transform:none}
.dropdown-options small{display:block;padding:15px;color:#98a2b3;text-align:center}
.searchable-native-select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none}
.itinerary-editor{display:grid;grid-template-columns:1fr;gap:18px}
.itinerary-days{display:grid;gap:14px}
.itinerary-day-card{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);gap:14px;padding:16px;border:1px solid #dce3eb;border-radius:8px;background:#f9fafb}
.itinerary-day-heading{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e1e6ed}
.itinerary-day-heading strong{color:var(--navy);font-size:14px}
.remove-day{padding:6px 9px;border:1px solid #f1b8bf;background:#fff1f2;box-shadow:none;color:#b42332;font-size:11px;transform:none}
.remove-day:hover:not(:disabled){border-color:#dc3545;background:#dc3545;color:#fff;transform:none}
.remove-day:disabled{cursor:not-allowed;opacity:.4}
.itinerary-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.add-day-button{cursor:pointer}
.itinerary-group-table table{min-width:760px}
.itinerary-group-table th,.itinerary-group-table td{height:62px;vertical-align:middle}
.itinerary-group-table th:nth-child(1),.itinerary-group-table td:nth-child(1),.itinerary-group-table th:nth-child(n+3),.itinerary-group-table td:nth-child(n+3){text-align:center}
.itinerary-group-table td:nth-child(2){line-height:1.45}
.itinerary-group-table .admin-action{margin:auto}
.day-count-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--orange-soft);color:#b9470d;font-size:11px;font-weight:700}
@media(max-width:760px){.itinerary-day-card{grid-template-columns:1fr}.itinerary-form-actions{align-items:stretch;flex-direction:column}.itinerary-form-actions button{width:100%}}
.image-preview-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}
.image-preview-list:empty{display:none}
.image-preview-card{position:relative;display:grid;width:120px;padding:5px;border:1px solid #dce3eb;border-radius:7px;background:#f7f9fb}
.image-preview-card img{display:block;width:108px;height:78px;border-radius:5px;background:#edf1f5;object-fit:cover}
.image-preview-card small{display:block;overflow:hidden;margin-top:4px;color:#667085;font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.image-remove{position:absolute;top:-7px;right:-7px;display:grid;width:24px;height:24px;place-items:center;padding:0;border:2px solid #fff;border-radius:50%;background:#dc3545;box-shadow:0 3px 8px rgba(13,23,40,.22);color:#fff;font-size:17px;line-height:1;transform:none}
.image-remove:hover{background:#a91927;transform:none}
.existing-file-link{display:inline-flex;margin-top:8px;color:var(--orange);font-size:12px;font-weight:700;text-decoration:none}
.existing-file-link:hover{color:var(--navy);text-decoration:underline}
.admin-modal{position:fixed;z-index:1100;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:20px;border:0;background:rgba(13,23,40,.64)}
.admin-modal[open]{display:grid;place-items:center}
.admin-modal-card{width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:10px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.admin-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px 0}
.admin-modal-heading h2{margin:0!important;color:var(--navy)}
.modal-close{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border:1px solid #d5dde7;border-radius:6px;background:#fff;color:#667085;font-size:25px;line-height:1;text-decoration:none}
.modal-close:hover{border-color:var(--orange);background:var(--orange-soft);color:var(--orange)}
.modal-editor{display:grid;margin:0;padding:20px 24px 24px;border:0;box-shadow:none}
@media(max-width:600px){.admin-modal{padding:10px}.admin-modal-card{max-height:calc(100vh - 20px)}.admin-modal-heading{padding:18px 18px 0}.modal-editor{padding:16px 18px 20px}}
.amenity-icon{align-items:center;background:#eef4f1;border-radius:10px;color:#176b52;display:inline-flex;height:38px;justify-content:center;width:38px}
.amenity-icon svg{fill:none;height:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:22px}
.route-calculation-status{border-radius:8px;font-size:13px;margin:0;min-height:18px;padding:8px 10px}
.route-calculation-status:empty{display:none}
.route-calculation-status.loading{background:#fff7e8;color:#8a5700}
.route-calculation-status.success{background:#eaf7f1;color:#176b52}
.route-calculation-status.error{background:#fff0f0;color:#a02b2b}
.stop-place-search{grid-column:1/-1}
.stop-place-search-control{display:flex;gap:10px;margin-top:6px}
.stop-place-search-control input{flex:1}
.stop-place-search-control .admin-action{flex:0 0 auto}
.stop-place-results{display:grid;gap:6px;margin-top:8px}
.stop-place-result{background:#f7faf9;border:1px solid #d8e4df;border-radius:8px;color:#243b35;cursor:pointer;padding:9px 11px;text-align:left}
.stop-place-result:hover{border-color:#176b52}
.stop-place-result strong,.stop-place-result span{display:block}
.stop-place-result span{font-size:12px;margin-top:2px;opacity:.75}
.stop-place-selected{background:#eaf7f1;border-radius:8px;color:#176b52;margin:0;padding:9px 11px}
.bus-workflow,.bus-setup-grid{display:grid;gap:16px;margin-top:20px}
.bus-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}
.bus-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bus-workflow-card,.bus-setup-card{align-items:flex-start;background:#fff;border:1px solid #dce5e1;border-radius:14px;display:flex;gap:15px;padding:20px}
.bus-workflow-card h2,.bus-setup-card h2{font-size:18px;margin:0 0 6px}
.bus-workflow-card p,.bus-setup-card p{color:#61706a;margin:0 0 14px}
.bus-setup-card strong{display:block;margin-bottom:14px}
.bus-step-number{align-items:center;background:#176b52;border-radius:50%;color:#fff;display:inline-flex;flex:0 0 34px;font-weight:800;height:34px;justify-content:center;width:34px}
.metric-card{text-decoration:none}
@media(max-width:800px){.bus-workflow,.bus-setup-grid{grid-template-columns:1fr}}
.tp-status-form{display:flex;align-items:center;gap:8px;min-width:270px}.tp-status-form select{flex:1;margin:0}.tp-status-form button{flex:0 0 auto;margin:0;white-space:nowrap}
.admin-action-link{display:inline-flex;white-space:nowrap;padding:8px 12px;border-radius:8px;background:#edf4ef;color:#145c36;font-weight:700}.tp-post-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:65vh;overflow:auto}.tp-post-details>div{display:grid;gap:4px;padding:12px;border:1px solid #e1e8e4;border-radius:10px}.tp-post-details strong{font-size:.75rem;text-transform:uppercase;color:#66756d}.tp-post-details span{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.tp-post-details{grid-template-columns:1fr}}
.table-wrap td:last-child form{display:flex;align-items:center;gap:8px;min-width:270px}.table-wrap td:last-child form select{flex:0 0 150px;width:150px;min-width:150px;margin:0}.table-wrap td:last-child form input:not([type="hidden"]){width:170px;min-width:170px;margin:0}.table-wrap td:last-child form button{flex:0 0 auto;margin:0;white-space:nowrap}
.row-actions{display:inline-flex;align-items:center;gap:8px}.tp-delete-action{display:inline-flex!important;min-width:0!important;margin:0}.tp-delete-action .icon-action{padding:0;cursor:pointer;font:inherit}
.reports-hero{align-items:flex-end;gap:24px}.reports-filter{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.reports-filter label{display:grid;gap:5px;color:#fff;font-size:12px;font-weight:700}.reports-filter input{min-height:42px;border:1px solid rgba(255,255,255,.25);border-radius:9px;padding:0 11px;background:#fff;color:#182230}.reports-filter button,.reports-filter a{min-height:42px;border:0;border-radius:9px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;text-decoration:none}.reports-filter button{background:#f28c28;color:#fff}.reports-filter a{background:rgba(255,255,255,.12);color:#fff}.reports-period{margin:18px 0 10px;color:#667085;font-size:13px;font-weight:700}.reports-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.reports-kpis article{padding:20px;border:1px solid #e5e9f0;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(16,24,40,.05)}.reports-interest-kpis article{border-top:4px solid #0f766e}.reports-kpis span,.reports-kpis small{display:block;color:#667085}.reports-kpis strong{display:block;overflow:hidden;margin:7px 0 3px;color:#172b4d;font-size:25px;text-overflow:ellipsis;white-space:nowrap}.reports-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px}.report-summary-card .panel-heading a{font-size:12px;font-weight:800;color:#e67817}.report-summary-card dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e8edf3;margin:0;border-radius:11px;overflow:hidden}.report-summary-card dl div{padding:15px;background:#fff}.report-summary-card dt{font-size:12px;color:#667085}.report-summary-card dd{margin:5px 0 0;font-size:18px;font-weight:800;color:#172b4d}.reports-chart{margin-bottom:18px}.revenue-bars{height:230px;display:flex;align-items:flex-end;gap:8px;padding:20px 4px 2px;overflow-x:auto}.revenue-bar{height:100%;min-width:34px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.revenue-bar span{width:min(28px,75%);min-height:4px;background:linear-gradient(180deg,#f7ad57,#e67817);border-radius:7px 7px 2px 2px}.view-bars .revenue-bar span{background:linear-gradient(180deg,#5eead4,#0f766e)}.revenue-bar small{font-size:10px;color:#667085;white-space:nowrap;transform:rotate(-35deg);transform-origin:center}.reports-interest-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-bottom:18px}.interest-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.interest-split div{padding:13px;border:1px solid #e5e9f0;border-radius:9px;background:#f8fafc}.interest-split span,.interest-split strong,.interest-split small{display:block}.interest-split span,.interest-split small{color:#667085;font-size:11px}.interest-split strong{margin:4px 0;color:#172b4d;font-size:19px}.interest-referrers{display:grid;gap:8px}.interest-referrers div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #e5e9f0}.interest-referrers span{overflow:hidden;color:#344054;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.interest-referrers strong{color:#172b4d;font-size:13px}.reports-tables{display:grid;gap:18px}.reports-tables .dashboard-panel{overflow:hidden}.reports-tables .table-wrap{margin:0;box-shadow:none;border:0}.report-empty{text-align:center;color:#667085;padding:28px!important}@media(max-width:1100px){.reports-kpis{grid-template-columns:repeat(2,1fr)}.reports-grid,.reports-interest-grid{grid-template-columns:1fr}}@media(max-width:650px){.reports-kpis,.interest-split{grid-template-columns:1fr}.reports-filter{width:100%}.reports-filter label{flex:1}.reports-filter input{width:100%}}
.reports-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 10px}.reports-toolbar .reports-period{margin:0}.reports-downloads{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.reports-downloads span{font-size:12px;font-weight:800;color:#667085}.reports-downloads a,.reports-downloads button{border:1px solid #d9e0e8;border-radius:8px;background:#fff;color:#344054;padding:8px 10px;font:700 11px Inter,sans-serif;text-decoration:none;cursor:pointer}.reports-downloads a:hover,.reports-downloads button:hover{border-color:#f28c28;color:#d96c0c}@media(max-width:900px){.reports-toolbar{align-items:flex-start;flex-direction:column}.reports-downloads{justify-content:flex-start}}@media print{.sidebar,.admin-profile,.reports-filter,.reports-downloads{display:none!important}.admin-main{margin:0!important;padding:15px!important}.dashboard-hero{background:#fff!important;color:#111!important;border:1px solid #ddd}.dashboard-hero *{color:#111!important}.reports-kpis,.reports-grid{break-inside:avoid}.dashboard-panel{box-shadow:none!important;break-inside:avoid}}
.trip-booking-editor{max-width:1050px}.booking-passengers{border-top:1px solid #e5e9f0;padding-top:20px}.booking-passengers-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.booking-passengers-heading h2{margin:2px 0 0}.trip-passenger-card{display:grid;grid-template-columns:auto minmax(180px,2fr) minmax(100px,1fr) minmax(130px,1fr) auto;align-items:end;gap:12px;padding:15px;margin-bottom:10px;border:1px solid #e1e7ef;border-radius:12px;background:#f8fafc}.trip-passenger-card>strong{align-self:center;color:#172b4d;white-space:nowrap}.trip-passenger-card .remove-day{margin-bottom:3px}.booking-passenger-list-heading{margin-top:24px}@media(max-width:800px){.trip-passenger-card{grid-template-columns:1fr 1fr}.trip-passenger-card>strong,.trip-passenger-card .remove-day{grid-column:1/-1}.trip-passenger-card .remove-day{justify-self:start}}

/* Compact report charts */
.revenue-bars{box-sizing:border-box;height:180px;gap:4px;padding:8px 2px 0;overflow-x:auto;overflow-y:hidden}
.revenue-bar{min-width:22px;gap:5px}
.revenue-bar span{min-height:0;border-radius:5px 5px 1px 1px}
.revenue-trend-bars{height:165px;gap:2px;overflow:hidden}
.revenue-trend-bars .revenue-bar{min-width:0}
.revenue-trend-bars .revenue-bar small{transform:none}
.report-chart-meta{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 0}.report-chart-meta span{padding:7px 10px;border-radius:8px;background:#fff5e8;color:#8b4b10;font-size:12px}.report-chart-meta strong{color:#172b4d}

/* Car rental operations */
.car-rental-hero{background:linear-gradient(120deg,#102a43,#176b52)}.car-hero-actions{display:flex;gap:9px;flex-wrap:wrap}.car-hero-actions .secondary{background:#fff;color:#145c36}.car-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.car-kpis article{padding:17px;border:1px solid #e1e8e4;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(15,38,50,.05)}.car-kpis span,.car-kpis small{display:block;color:#66756d;font-size:12px}.car-kpis strong{display:block;margin:7px 0 3px;color:#112d3c;font-size:25px}.car-kpis .success{border-top:3px solid #1f9d6a}.car-kpis .warning{border-top:3px solid #e69a24}.car-kpis .danger{border-top:3px solid #dc5a58}.car-dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;margin-bottom:18px}.car-revenue-panel{min-height:295px}.chart-filter{display:flex;gap:5px}.chart-filter button{margin:0;padding:6px 8px;border:0;border-radius:6px;background:#f1f5f3;color:#66756d;font-size:11px;box-shadow:none}.chart-filter button.active{background:#176b52;color:#fff}.car-mini-bars{display:flex;align-items:end;height:195px;gap:16px;padding:14px 10px 0}.car-mini-bars div{display:flex;flex:1;height:100%;flex-direction:column;justify-content:end;align-items:center;gap:7px}.car-mini-bars span{width:100%;max-width:34px;background:linear-gradient(180deg,#55c29a,#176b52);border-radius:8px 8px 2px 2px}.car-mini-bars small{color:#738078;font-size:11px}.car-status-list{display:grid;gap:9px}.car-status-list div{display:flex;justify-content:space-between;padding:11px 12px;border:1px solid #e3ebe6;border-radius:9px;background:#f9fbfa}.car-status-list span{color:#52635a;font-size:13px}.car-status-list strong{color:#102a43}.car-table-panel{margin-bottom:18px}.car-rental-bookings-table small{display:block;margin-top:3px;color:#718078;font-size:11px}.car-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eff3f1;color:#52635a;font-size:11px;font-weight:800}.car-status.confirmed{background:#e5f4ed;color:#13734d}.car-status.active{background:#e6f1fb;color:#1d5f91}.car-status.cancelled{background:#fff0f1;color:#b33c47}.car-calendar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.car-calendar section{padding:16px;border:1px solid #e0e8e3;border-radius:13px;background:#fff}.car-calendar h2{margin:0 0 12px;color:#102a43;font-size:15px}.car-calendar a{display:grid;gap:4px;margin-top:8px;padding:10px;border-radius:8px;background:#f3f8f5;color:#155a3c;text-decoration:none}.car-calendar a span{font-size:12px;color:#5d7065}@media(max-width:1100px){.car-kpis{grid-template-columns:repeat(2,1fr)}.car-dashboard-grid{grid-template-columns:1fr}.car-calendar{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.car-kpis,.car-calendar{grid-template-columns:1fr}.car-hero-actions{margin-top:12px}.chart-filter{flex-wrap:wrap}}
.car-booking-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}.car-booking-tabs a{padding:8px 11px;border:1px solid #dce7e1;border-radius:8px;background:#fff;color:#5c6e64;font-size:12px;font-weight:800;text-decoration:none}.car-booking-tabs a.active,.car-booking-tabs a:hover{border-color:#176b52;background:#eaf6ef;color:#155a3c}
.car-fleet-preview{margin-bottom:18px}.car-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.car-preview-grid a{display:grid;gap:6px;color:#173a48;text-decoration:none}.car-preview-grid img{width:100%;height:126px;border-radius:10px;background:#edf4f1;object-fit:cover}.car-preview-grid strong{font-size:14px}.car-preview-grid span{color:#6a7b72;font-size:12px}@media(max-width:900px){.car-preview-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.car-preview-grid{grid-template-columns:1fr}}
.car-management-table table{min-width:940px}.car-management-table td{vertical-align:middle}.car-management-table td small{display:block;margin-top:3px;color:#718078;font-size:11px;line-height:1.35}.car-table-identity{display:flex;align-items:center;gap:10px;min-width:210px}.car-table-identity img{width:58px;height:42px;border-radius:8px;background:#eff4f1;object-fit:cover}.car-table-identity strong{display:block;color:#172f3b}.car-table-identity small{white-space:nowrap}.car-management-table .car-status{white-space:nowrap}.car-management-table td>strong{color:#173a48}.car-status.available,.car-status.active,.car-status.completed{background:#e5f4ed;color:#13734d}.car-status.reserved,.car-status.scheduled,.car-status.in_progress,.car-status.partial{background:#fff6df;color:#9a6410}.car-status.maintenance,.car-status.inactive,.car-status.cancelled,.car-status.blocked{background:#fff0f1;color:#b33c47}.car-status.no_show{background:#f0edff;color:#6447ac}
.car-rating-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.car-rating-kpis article{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid #e1e8e4;border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(15,38,50,.05)}.car-rating-kpis strong{display:block;color:#172f3b;font-size:24px;line-height:1.1}.car-rating-kpis span{color:#69786f;font-size:12px}.rating-star{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;background:#fff0dd;color:#f38a28;font-size:23px}.car-rating-filter{display:flex;align-items:center;gap:9px;margin:0 0 18px}.car-rating-filter input{width:min(410px,100%);height:40px}.car-rating-filter select{height:40px}.car-rating-filter button{min-height:40px;padding:8px 14px}.car-rating-filter a{color:#176b52;font-size:13px;font-weight:700;text-decoration:none}.car-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}.car-review-card{display:flex;min-width:0;flex-direction:column;padding:16px;border:1px solid #dfe7e2;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(15,38,50,.04)}.car-review-card-head{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px}.car-review-avatar{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#e5f4ed;color:#176b52;font-size:14px;font-weight:800}.car-review-card-head strong{display:block;color:#172f3b;font-size:13px}.car-review-card-head small,.car-review-card time{color:#7a877f;font-size:10px}.car-review-card time{white-space:nowrap}.rating-stars{display:inline-block;margin:13px 0 7px;color:#fa8b30;font-size:16px;letter-spacing:2px}.rating-stars i{color:#d7dde0;font-style:normal}.car-review-card h3{margin:0 0 4px;color:#172f3b;font-size:13px}.car-review-card p{min-height:54px;margin:0;color:#617169;font-size:12px;line-height:1.5}.car-review-card footer{margin-top:12px}.car-rating-table table{min-width:840px}.car-rating-table td{vertical-align:middle}.car-rating-table small{display:block;margin-top:3px;color:#718078;font-size:11px}.car-rating-table .rating-stars{margin:0;font-size:14px}@media(max-width:1000px){.car-rating-kpis{grid-template-columns:repeat(2,1fr)}.car-review-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.car-rating-kpis,.car-review-grid{grid-template-columns:1fr}.car-rating-filter{align-items:stretch;flex-direction:column}.car-rating-filter input{width:100%}}
.tp-admin-list-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}.tp-admin-list-heading h2{margin:0 0 6px}.tp-admin-list-heading p{margin:0;color:#64748b}@media(max-width:640px){.tp-admin-list-heading{align-items:flex-start;flex-direction:column}}
.tp-departure-create{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(460px,1.28fr);gap:0;margin:0 0 26px;border:1px solid #dce5e1;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(13,23,40,.06);overflow:hidden}.tp-departure-create-copy{padding:28px;background:linear-gradient(145deg,#102a43,#176b52);color:#fff}.tp-departure-create-copy .admin-eyebrow{color:#f8b26b}.tp-departure-create-copy h2{margin:5px 0 10px;color:#fff}.tp-departure-create-copy p{margin:0;color:#d8ece3}.tp-departure-create-copy ul{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none}.tp-departure-create-copy li{position:relative;padding-left:22px;color:#fff;font-size:13px}.tp-departure-create-copy li:before{position:absolute;left:0;content:'✓';color:#f9a65d;font-weight:900}.tp-departure-form{margin:0;padding:26px;border:0;border-radius:0;box-shadow:none}.tp-departure-form-heading{display:flex;grid-column:1/-1;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:8px;border-bottom:1px solid #e5e9f0}.tp-departure-form-heading h2{margin:0;color:#172b4d}.tp-departure-form-heading p{margin:4px 0 0;color:#778195;font-size:12px}.tp-departure-date-fields{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:14px;border:1px solid #dce5e1;border-radius:9px;background:#f8fbf9}.tp-departure-date-fields legend{padding:0 6px;color:#52635a;font-size:12px;font-weight:800}.tp-departure-date-fields label{display:grid;gap:6px}.tp-departure-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding-top:6px}.tp-departure-form-actions a{color:#52635a;font-size:13px;font-weight:700;text-decoration:none}.tp-departure-form-actions a:hover{color:var(--orange)}.tp-departure-form-actions button{width:auto;margin:0}@media(max-width:950px){.tp-departure-create{grid-template-columns:1fr}.tp-departure-create-copy{padding:22px}.tp-departure-create-copy ul{margin-top:16px}}@media(max-width:620px){.tp-departure-form{grid-template-columns:1fr;padding:18px}.tp-departure-date-fields{grid-template-columns:1fr}.tp-departure-form-actions{align-items:stretch;flex-direction:column-reverse}.tp-departure-form-actions button{width:100%}}
.reports-filter select{min-height:42px;border:1px solid rgba(255,255,255,.25);border-radius:9px;padding:0 32px 0 11px;background:#fff;color:#182230}.reports-downloads label{display:grid;gap:4px;font-size:11px;font-weight:800;color:#667085}.reports-downloads select{min-height:35px;border:1px solid #d9e0e8;border-radius:8px;background:#fff;padding:0 30px 0 9px;color:#344054;font-weight:700}.reports-downloads button{align-self:end;background:#e67817!important;color:#fff!important;border-color:#e67817!important}.reports-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* The payments filter sits on the white admin canvas, unlike report filters. */
.payment-filter{margin:0 0 20px;padding:16px;border:1px solid #dce3eb;border-radius:10px;background:#fff;box-shadow:0 6px 18px rgba(13,23,40,.04)}
.payment-filter label{color:#344054}
.payment-filter a{border:1px solid #d5dde7;background:#fff;color:#344054}
.payment-filter a:hover{border-color:var(--orange);background:var(--orange-soft);color:#b9470d}
