/* Reference pages v44 — palette normalization only. No geometry or typography declarations. */

:is(#page-platform-dashboard,#page-dashboard,#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users,#page-itinerary-bot,#page-ticket-bot,#page-case,#page-generic){
  --ref-green:#168775;
  --ref-green-dark:#0b5f53;
  --ref-green-active:#084d44;
  --ref-green-soft:#eaf6f2;
  --ref-green-pale:#f4faf8;
  --ref-canvas:#f3f7f5;
  --ref-line:#dce8e4;
  --ref-line-strong:#bdd2cc;
  --ref-ink:#142925;
  --ref-copy:#60736e;
  --ref-muted:#7d8f8a;
  --wl29-canvas:var(--ref-canvas);
  --wl29-surface-soft:var(--ref-green-pale);
  --wl29-line:var(--ref-line);
  --wl29-line-strong:var(--ref-line-strong);
  --wl29-ink:var(--ref-ink);
  --wl29-copy:var(--ref-copy);
  --wl29-muted:var(--ref-muted);
  --wl29-teal:var(--ref-green);
  --wl29-teal-hover:var(--ref-green-dark);
  --wl29-teal-soft:var(--ref-green-soft);
  --wl29-navy:var(--ref-green-dark);
  --wl29-navy-soft:#e5f2ee;
  --green-25:#f8fcfa;
  --green-50:var(--ref-green-pale);
  --green-100:#d9eee8;
  --green-400:#35a28d;
  --green-500:var(--ref-green);
  --green-600:#117566;
  --green-700:var(--ref-green-dark);
  --green-800:#09564b;
  --green-900:#084d44;
  --gray-25:#f9fcfb;
  --gray-50:var(--ref-green-pale);
  --gray-100:#edf4f1;
  --gray-200:var(--ref-line);
  --gray-300:var(--ref-line-strong);
  --gray-400:#98a8a3;
  --gray-500:var(--ref-muted);
  --gray-600:var(--ref-copy);
  --gray-700:#405b54;
  --gray-800:#263f39;
  --gray-900:var(--ref-ink);
  --surface-2:var(--ref-green-pale);
  --border-1:var(--ref-line);
  --text-1:var(--ref-ink);
  --text-2:var(--ref-copy);
  --text-3:var(--ref-muted);
  color:var(--ref-ink);
}

/* Shared module pages: Contracts, Travelers, Catalog, Vouchers and Settings. */
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users){
  background:var(--ref-canvas)!important;
}
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users) :is(.module-card,.module-summary-grid,.user-management-card,.user-stat-grid,.contracts-ledger,.traveler-directory-item){
  border-color:var(--ref-line)!important;
  box-shadow:0 7px 22px rgba(11,95,83,.045)!important;
}
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users) :is(.module-card-head,.module-table th,.user-toolbar,.user-table th,.contracts-ledger-toolbar,.traveler-history-group-head span){
  background:var(--ref-green-pale)!important;
  border-color:var(--ref-line)!important;
}
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users) :is(.module-search,.user-search,.contracts-search-field,.traveler-search-field):focus-within,
#page-users .user-toolbar select:focus-visible{
  border-color:var(--ref-green)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(22,135,117,.12)!important;
}
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users) :is(.module-filter-tabs button.is-active,.contracts-status-switch button.is-active){
  color:var(--ref-green-dark)!important;
}
:is(#page-contracts,#page-travelers,#page-catalog,#page-vouchers,#page-users) :is(.module-status.success,.module-status.blue,.module-status.violet,.account-badge.active,.role-badge){
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}

/* Contracts. */
#page-contracts :is(.contract-list-progress i,.contracts-status-switch button.is-active span){
  background:var(--ref-green)!important;
  color:#fff!important;
}
#page-contracts :is(.contract-list-row-v2:hover,.contract-list-row-v2:focus-within){
  background:#f7fcfa!important;
}
#page-contracts :is(.contracts-search-toggle:hover,.contracts-search-toggle[aria-expanded="true"]){
  border-color:var(--ref-green)!important;
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}

/* Travelers. Semantic flight/hotel categories keep distinct icons, while structural accents turn green. */
#page-travelers :is(.traveler-directory-item.is-open,.traveler-passport-field:focus-within,.traveler-document-view:hover){
  border-color:var(--ref-green)!important;
  background:#f8fcfa!important;
  box-shadow:0 0 0 3px rgba(22,135,117,.08)!important;
}
#page-travelers :is(.traveler-metric.passport.is-present,.traveler-type-badge.passport i){
  border-color:#c9ded8!important;
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}
#page-travelers .traveler-history-contract>i.is-complete{
  border-color:var(--ref-green)!important;
  background:#dff6eb!important;
}
#page-travelers .traveler-passport-preview{
  background:#edf5f2!important;
  border-color:var(--ref-line)!important;
}
#page-travelers .traveler-passport-details .traveler-passport-field input{
  color:var(--ref-ink)!important;
}

/* Catalog and vouchers. */
:is(#page-catalog,#page-vouchers) :is(.country-chip.is-active,.voucher-type-card){
  border-color:#c9ded8!important;
  background:#fbfefc!important;
}
:is(#page-catalog,#page-vouchers) :is(.country-chip.is-active .country-code,.voucher-kind){
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}
:is(#page-catalog,#page-vouchers) :is(input,select,textarea):focus{
  border-color:var(--ref-green)!important;
  box-shadow:0 0 0 3px rgba(22,135,117,.12)!important;
}

/* Settings / users. */
#page-users :is(.user-stat-grid,.user-management-card){
  border-color:var(--ref-line)!important;
}
#page-users :is(.user-stat-grid article+article,.user-table td){
  border-color:var(--ref-line)!important;
}
#page-users :is(.user-toolbar,.user-table th){
  background:var(--ref-green-pale)!important;
}
#page-users .user-table tbody tr:hover{
  background:#f7fcfa!important;
}
#page-users .user-row-actions .icon-action:hover:not(.danger),
#page-users .user-row-actions .icon-action:focus-visible:not(.danger){
  border-color:#9fcabe!important;
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}
#page-users :is(.user-avatar,.access-summary svg,.channel-actions button){
  color:var(--ref-green-dark)!important;
}

/* Itinerary Bot. */
#page-itinerary-bot{
  background:linear-gradient(135deg,#f8fcfa,#edf6f2)!important;
  color:var(--ref-ink)!important;
}
#page-itinerary-bot :is(.bot-shell-head h1,.bot-shell-stage h2,dd){
  color:var(--ref-ink)!important;
}
#page-itinerary-bot :is(.bot-shell-head p,.bot-shell-stage>p){
  color:var(--ref-copy)!important;
}
#page-itinerary-bot .bot-shell-state{
  border-color:#c9ded8!important;
  color:var(--ref-green-dark)!important;
}
#page-itinerary-bot .bot-shell-state i{
  background:var(--ref-green)!important;
  box-shadow:0 0 0 4px #dcf6ed!important;
}
#page-itinerary-bot .bot-shell-stage{
  border-color:var(--ref-line)!important;
  background:radial-gradient(circle at 88% 5%,#dff4ec,transparent 30%),#fff!important;
  box-shadow:0 18px 50px rgba(11,95,83,.08)!important;
}
#page-itinerary-bot :is(.bot-shell-symbol,.bot-shell-error button){
  background:var(--ref-green)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(11,95,83,.20)!important;
}
#page-itinerary-bot .bot-shell-loading span{
  border-color:#cfe7df!important;
  border-top-color:var(--ref-green)!important;
}

/* Ticket Bot. */
#page-ticket-bot{
  background:var(--ref-canvas)!important;
  color:var(--ref-ink)!important;
}
#page-ticket-bot :is(.ticket-head p,.ticket-table td,.ticket-table td small,.template-card p,.ticket-empty p,.ticket-loading p){
  color:var(--ref-copy)!important;
}
#page-ticket-bot :is(.ticket-toolbar,.ticket-table-wrap,.ticket-empty,.template-card,.ticket-health){
  border-color:var(--ref-line)!important;
  box-shadow:0 8px 28px rgba(11,95,83,.05)!important;
}
#page-ticket-bot :is(.ticket-tabs,.ticket-table th,.ticket-detail-meta div){
  background:var(--ref-green-pale)!important;
}
#page-ticket-bot .ticket-tabs button.is-active{
  color:var(--ref-green-dark)!important;
  box-shadow:0 2px 7px rgba(11,95,83,.11)!important;
}
#page-ticket-bot .ticket-health.is-online i{
  background:var(--ref-green)!important;
  box-shadow:0 0 0 4px #dff2eb!important;
}
#page-ticket-bot :is(.ticket-status,.ticket-empty>div){
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}
#page-ticket-bot :is(.ticket-open,.ticket-files button){
  border-color:var(--ref-line)!important;
  color:var(--ref-green-dark)!important;
}
#page-ticket-bot :is(.ticket-refresh,.ticket-empty button,.ticket-pager button,.ticket-save-regenerate,.ticket-regenerate){
  border-color:var(--ref-green)!important;
  background:var(--ref-green)!important;
  color:#fff!important;
}
#page-ticket-bot .ticket-loading span{
  border-color:#d8e9e4!important;
  border-top-color:var(--ref-green)!important;
}

/* Ticket AI modal is body-mounted; replace purple-only surfaces with the reference green family. */
.ticket-ai-modal header small{
  color:#117566!important;
}
.ticket-ai-drop{
  border-color:#c9ded8!important;
  background:linear-gradient(145deg,#f7fcfa,#f2f9f6)!important;
}
.ticket-ai-drop:hover{
  border-color:#168775!important;
  background:#f1faf7!important;
}
.ticket-ai-drop>span,
.ticket-ai-success>span{
  background:#168775!important;
  color:#fff!important;
}
.ticket-ai-processing{
  background:#edf7f3!important;
}
.ticket-ai-processing span{
  border-color:#cfe7df!important;
  border-top-color:#168775!important;
}
.ticket-ai-success{
  border-color:#c9e5dc!important;
  background:#f4fbf8!important;
}
.ticket-ai-success :is(p strong,footer){
  color:#405b54!important;
}

/* Body-mounted module dialogs inherit the same neutral-green surfaces. */
.module-modal{
  background:rgba(7,66,57,.48)!important;
}
.module-modal-card,
.module-modal-card>header{
  background:#fff!important;
}
.module-modal-card>header,
.module-form-section,
.module-modal-card form>footer{
  border-color:#dce8e4!important;
}
.module-modal-card :is(input,select,textarea):focus{
  border-color:#168775!important;
  box-shadow:0 0 0 3px rgba(22,135,117,.12)!important;
}

/* Generic fallback page. */
#page-generic{
  background:var(--ref-canvas)!important;
  color:var(--ref-ink)!important;
}
#page-generic .generic-icon{
  background:var(--ref-green-soft)!important;
  color:var(--ref-green-dark)!important;
}
/* v44.0.1 — one continuous white workspace canvas */
html,
body,
#appShell.app-shell,
#appShell .main-stage,
#appShell .page.is-active{
  background:#fff!important;
}
#appShell .main-stage{
  scrollbar-color:#a7b4c5 #fff;
}
#appShell .main-stage::-webkit-scrollbar-track{
  background:#fff!important;
}
#appShell .main-stage::-webkit-scrollbar-thumb{
  border-color:#fff!important;
}
