/* Wadi Land workspace v17 — canonical shell and responsive component layer. */
*,*::before,*::after{box-sizing:border-box}
html{font-family:var(--font-sans);background:var(--color-page);color:var(--color-text-primary)}
body{background:var(--color-page);color:var(--color-text-primary)}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--color-focus);outline-offset:2px;box-shadow:var(--focus-ring)
}
.skip-link{position:fixed;z-index:calc(var(--z-toast) + 1);inset-block-start:var(--space-2);inset-inline-start:var(--space-2);padding:.7rem 1rem;border-radius:var(--radius-md);background:var(--color-text-primary);color:#fff;transform:translateY(-160%);transition:transform var(--duration-fast)}
.skip-link:focus{transform:none}

/* Shell */
#appShell.app-shell{
  --sidebar-current-width:var(--sidebar-width-expanded);
  --notification-current-width:0px;
  display:grid;
  grid-template-columns:var(--sidebar-current-width) minmax(0,1fr) var(--notification-current-width);
  min-height:100dvh;
  transition:grid-template-columns var(--duration-normal) var(--ease-standard);
}
#appShell.sidebar-collapsed{--sidebar-current-width:var(--sidebar-width-collapsed)}
#appShell.notifications-open{--notification-current-width:var(--notification-drawer-width)}
#appShell>.sidebar{grid-column:1}
#appShell>.main-stage{grid-column:2;min-width:0}
#appShell>.notification-panel{grid-column:3;min-width:0}
.main-stage,.page,.page>*,.workspace-module-shell,.contracts-page-shell,.settings-page{min-width:0}

/* Sidebar */
#appShell .sidebar{
  background:var(--color-sidebar);border:0;color:var(--color-text-on-dark);padding:var(--space-4) var(--space-3);z-index:var(--z-sidebar);
  position:sticky;inset-block-start:0;align-self:start;
  height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:0;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;
  scrollbar-width:thin;scrollbar-color:#475569 transparent;scrollbar-gutter:stable
}
#appShell .sidebar::-webkit-scrollbar{width:.4rem}
#appShell .sidebar::-webkit-scrollbar-track{background:transparent}
#appShell .sidebar::-webkit-scrollbar-thumb{background:#475569;border-radius:999px}
#appShell .sidebar::-webkit-scrollbar-thumb:hover{background:#64748b}
#appShell .brand-row{padding-inline:var(--space-1)}
#appShell .brand-mark{border-radius:var(--radius-md);background:var(--color-primary);box-shadow:none}
#appShell .official-brand{width:100%;min-width:0;min-height:2.75rem;padding:0;display:flex;align-items:center;justify-content:center;border-radius:0;background:transparent;overflow:visible}
#appShell .official-brand img{display:block;width:100%;height:2.45rem;object-fit:contain}
#appShell .brand-collapsed-mark{display:none;width:2.25rem;height:2.25rem;place-items:center;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-weight:var(--weight-bold)}
#appShell.sidebar-collapsed .official-brand{width:2.75rem;padding:0}
#appShell.sidebar-collapsed .official-brand img{display:none}
#appShell.sidebar-collapsed .brand-collapsed-mark{display:grid}
#contractWizardRoot .wizard-official-logo{display:block;width:8.75rem;height:2.625rem;object-fit:contain;object-position:left center}
#appShell .brand-copy strong{color:var(--color-text-on-dark);font-size:var(--text-sm)}
#appShell .brand-copy span,#appShell .nav-label,#appShell .filter-heading span,#appShell .legend-row{color:#9fb0ab}
#appShell .sidebar-search{height:var(--control-height-md);border-color:#334155;background:#1e293b;color:#aebdb8}
#appShell .sidebar-search:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}
#appShell .sidebar-search input{color:#fff}
#appShell .sidebar-search input::placeholder{color:#aebdb8}
#appShell .sidebar-search kbd{color:#aebdb8;background:#334155;border:1px solid #475569;border-radius:var(--radius-xs);padding:.1rem .3rem}
#appShell .search-results{top:7rem;inset-inline:var(--space-2);max-height:min(25rem,calc(100dvh - 8.5rem));padding:.4rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-md)}
#appShell .search-result{grid-template-columns:2rem minmax(0,1fr);gap:.65rem;min-height:4.25rem;padding:.65rem .55rem;border-radius:var(--radius-md);color:var(--color-text-primary);text-align:start}
#appShell .search-result+.search-result{border-top:1px solid var(--color-border)}
#appShell .search-result-icon{width:2rem;height:2rem;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary-active)}
#appShell .search-result-copy{gap:.18rem;min-width:0}
#appShell .search-result-copy b{overflow:hidden;color:var(--color-text-primary);font-size:.8125rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
#appShell .search-result-country{overflow:hidden;color:var(--color-primary-active);font-size:.75rem;font-weight:var(--weight-medium);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
#appShell .search-result-meta{overflow:hidden;color:var(--color-text-muted);font-size:.6875rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
#appShell .search-empty{padding:1rem .75rem;color:var(--color-text-muted);font-size:.75rem;line-height:1.45;text-align:center}
#appShell .nav-item,#appShell .filter-item,#appShell .support-link{min-height:var(--target-min);color:#d7e1de;border-radius:var(--radius-md)}
#appShell .nav-item:hover,#appShell .filter-item:hover,#appShell .support-link:hover{background:var(--color-sidebar-hover);color:#fff;transform:none}
#appShell .nav-item.is-active{background:var(--color-sidebar-active);color:#fff;box-shadow:inset 3px 0 0 var(--color-primary)}
#appShell .nav-count{background:#334155;color:#dce7e4}
#appShell .quick-filters,#appShell .staff-legend,#appShell .sidebar-compact-stats{border-color:#334155}
#appShell .filter-item strong{color:#aebdb8}
#appShell .profile-card{border-color:#334155;background:#1e293b;color:#fff;min-height:var(--target-preferred)}
#appShell .profile-card:hover{background:var(--color-sidebar-hover)}
#appShell .profile-copy small{color:#aebdb8}
#appShell .sidebar-bottom{padding-top:var(--space-2)}

/* Header */
#appShell .topbar{height:var(--header-height);padding-inline:var(--page-inline);background:var(--color-header);border-color:var(--color-border);z-index:var(--z-header);backdrop-filter:none}
#appShell .sidebar-layout-toggle{flex:0 0 auto;border-color:var(--color-border);background:var(--color-card);color:var(--color-text-secondary);box-shadow:none}
#appShell .sidebar-layout-toggle:hover{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary-active)}
#appShell .sidebar-layout-toggle svg{transition:transform var(--duration-normal) var(--ease-standard)}
#appShell.sidebar-collapsed .sidebar-layout-toggle svg{transform:rotate(180deg)}
#appShell .topbar-title span{font-size:var(--text-lg);line-height:var(--leading-tight);font-weight:var(--weight-bold)}
#appShell .topbar-title small{font-size:var(--text-xs);color:var(--color-text-muted)}
#appShell .topbar-actions{margin-inline-start:auto}
.icon-button,.mini-icon{min-width:var(--target-min);min-height:var(--target-min);border-radius:var(--radius-md);border-color:var(--color-border);background:var(--color-card)}
.notification-button i{inset-block-start:-.2rem;inset-inline-end:-.2rem;min-width:1.15rem;height:1.15rem;padding:0 .2rem;background:var(--color-error);border:2px solid var(--color-header);font-size:.625rem}

/* Pages and controls */
#appShell .page{padding:var(--page-block) var(--page-inline) clamp(2rem,5vw,3.5rem)}
.button{min-height:var(--control-height-md);height:auto;border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.2}
.button.primary{background:var(--color-primary);box-shadow:none}
.button.primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-xs)}
.button.primary:active{background:var(--color-primary-active)}
.button.secondary{border-color:var(--color-border);background:var(--color-card)}
input,select,textarea{accent-color:var(--color-primary)}

/* Calendar */
.calendar-board{overflow:hidden;background:var(--color-card);border-color:var(--color-border)}
.day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0;min-height:650px}
.day-column{min-width:0}
.day-head{padding:.75rem .6rem;gap:.4rem}
.day-label{min-width:0;gap:.45rem;flex-wrap:wrap}
.day-label span,.day-head em{font-size:.6875rem}
.day-label strong{font-size:var(--text-sm)}
.day-cards{min-width:0;padding:.55rem;gap:.55rem}
.case-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;border-radius:var(--radius-lg)}
.case-card *{min-width:0}
.case-card .case-title,.case-card .latest-action span,.case-card .visa-line{overflow-wrap:anywhere;white-space:normal}
.case-card .card-top{flex-wrap:wrap}
.case-card .assignee-button{margin-inline-start:auto}
.week-grid,.month-grid{width:100%;max-width:100%;min-width:0}

/* Contracts */
#page-contracts{background:var(--color-page)}
#page-contracts .contracts-page-shell{max-width:none;width:100%;padding:0}
#page-contracts .contracts-page-head{align-items:center;margin-bottom:var(--space-4)}
#page-contracts .contracts-list-toolbar{display:grid;grid-template-columns:minmax(16rem,1fr) auto;gap:var(--space-3);padding:var(--space-3);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}
#page-contracts .contracts-search{min-width:0;max-width:none;width:100%;height:var(--control-height-md);border-color:var(--color-border);border-radius:var(--radius-md)}
#page-contracts .contracts-list-summary{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-3)}
#page-contracts .contracts-summary-card{flex:0 1 11rem;padding:.75rem 1rem;border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:none}
#page-contracts .contracts-summary-card span{font-size:var(--text-xs)}
#page-contracts .contracts-summary-card strong{font-size:var(--text-xl)}
#page-contracts .contracts-list{display:grid;gap:.625rem;background:var(--color-page)}
#page-contracts .contract-list-row-v2{
  display:grid;
  grid-template-columns:minmax(13.75rem,2fr) minmax(8.75rem,1fr) minmax(5.625rem,.65fr) minmax(9.375rem,1fr) minmax(7.5rem,.9fr) max-content;
  align-items:center;gap:var(--space-3);width:100%;min-width:0;padding:.75rem .875rem;
  background:var(--color-card);border:1px solid var(--color-border);border-inline-start:4px solid var(--staff,var(--color-border-strong));border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden
}
#page-contracts .contract-list-row-v2>*{min-width:0}
#page-contracts .contract-list-person{padding:0}
#page-contracts .contract-list-country{display:flex;align-items:center;gap:.625rem;min-width:0}
.country-flag{width:2.5rem;height:2.5rem;flex:0 0 2.5rem;border-radius:50%;overflow:hidden;border:1px solid var(--color-border);background:var(--color-disabled-bg);display:grid;place-items:center}
.country-flag img{width:100%;height:100%;display:block;object-fit:cover}
.country-flag-fallback{font-size:var(--icon-primary);color:var(--color-text-muted)}
#page-contracts .contract-list-cell,#page-contracts .contract-list-delivery{padding:0;border:0}
#page-contracts .contract-list-actions{justify-self:end;padding:0;border:0;background:transparent}
#page-contracts .contract-list-actions .button{min-width:4.5rem}
#page-contracts .contract-list-row-v2.is-cancelled{position:relative;z-index:0;overflow:visible!important;--staff:var(--color-error)!important;border-inline-start-color:var(--color-error)!important}
#page-contracts .contract-list-row-v2.is-cancelled:hover,#page-contracts .contract-list-row-v2.is-cancelled:focus-within{z-index:10;border-color:#f4b4ae;box-shadow:0 5px 18px rgb(180 35 24 / 12%)}
#page-contracts .contract-list-row-v2.is-cancelled .contract-list-status>strong{color:var(--color-error);font-weight:var(--weight-bold)}
#page-contracts .contract-list-row-v2.is-cancelled .contract-list-progress{background:var(--color-error-soft)}
#page-contracts .contract-list-row-v2.is-cancelled .contract-list-progress i{width:100%!important;background:var(--color-error)!important}
#page-contracts .contract-list-row-v2.is-cancelled .contract-list-assignee i{background:var(--color-error)!important}
#page-contracts .contract-list-assigned.is-cancellation{position:relative;overflow:visible}
#page-contracts .contract-list-cancellation{cursor:help;color:var(--color-error)}
#page-contracts .contract-cancellation-tooltip{position:absolute;z-index:20;inset-block-start:calc(100% + .55rem);inset-inline-start:-.5rem;width:min(20rem,calc(100vw - 2rem));padding:.75rem;border:1px solid #b42318;border-radius:var(--radius-md);background:#7a271a;color:#fff;box-shadow:var(--shadow-md);display:grid;gap:.55rem;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-.25rem);transition:opacity var(--duration-fast),transform var(--duration-fast),visibility var(--duration-fast)}
#page-contracts .contract-cancellation-tooltip::before{content:"";position:absolute;inset-block-end:100%;inset-inline-start:1rem;border:.4rem solid transparent;border-block-end-color:#7a271a}
#page-contracts .contract-cancellation-tooltip>b{font-size:var(--text-xs);line-height:1.3}
#page-contracts .contract-cancellation-tooltip>span{display:grid;gap:.15rem}
#page-contracts .contract-cancellation-tooltip small{margin:0!important;color:#fecdca!important;font-size:.625rem!important;line-height:1.2!important;letter-spacing:.06em!important;text-transform:uppercase!important}
#page-contracts .contract-cancellation-tooltip strong{overflow:visible!important;color:#fff!important;font-size:var(--text-xs)!important;font-weight:var(--weight-medium)!important;line-height:1.45!important;white-space:normal!important;text-overflow:clip!important}
#page-contracts .contract-list-cancellation:hover+.contract-cancellation-tooltip,#page-contracts .contract-list-cancellation:focus-visible+.contract-cancellation-tooltip{opacity:1;visibility:visible;transform:none}

/* Notifications */
#appShell>.notification-panel{position:relative;inset:auto;width:auto;max-height:none;height:100dvh;border:0;border-inline-start:1px solid #e4e7ec;border-radius:0;box-shadow:-12px 0 28px rgb(16 24 40 / 8%);background:#fff;display:flex;flex-direction:column;opacity:1;transform:none;pointer-events:none;visibility:hidden;z-index:var(--z-drawer);overflow:hidden}
#appShell.notifications-open>.notification-panel{pointer-events:auto;visibility:visible}
.floating-panel-head{min-height:var(--header-height);padding:0 var(--space-4);border-bottom:1px solid #e4e7ec;background:#fff}
.floating-panel-head strong{color:#1e293b}
.floating-panel-head span{color:#667085}
.floating-panel-head span b{color:#475569}
.notification-tabs{display:flex;align-items:center;gap:.2rem;padding:.5rem;border-bottom:1px solid #e4e7ec;background:#fff;overflow-x:auto}
.notification-tabs button{min-height:var(--control-height-sm);border:0;border-radius:var(--radius-sm);background:transparent;padding:0 .65rem;white-space:nowrap;font-size:var(--text-xs);color:#667085}
.notification-tabs button.is-active{background:transparent;color:#1e293b;box-shadow:inset 0 -2px 0 #64748b}
.notification-tabs .mark-read{margin-inline-start:auto;color:#475569}
.notification-list{padding:.75rem;overflow:auto;display:grid;align-content:start;gap:.65rem;background:#fff}
.notification-item{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;gap:.65rem;width:100%;min-width:0;padding:.75rem;border:1px solid #e4e7ec;border-radius:var(--radius-md);background:#fff;text-align:start}
.notification-summary{grid-column:1/-1;display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;gap:.65rem;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:start}
.notification-item.is-unread{border-color:#c2cedd;background:#fbfffd}
.notification-icon,.notification-item[data-type] .notification-icon,.notification-item[data-severity] .notification-icon{background:#e7f7ef;color:#475569}
.notification-dot{background:#64748b}
.notification-item .notification-copy{min-width:0}
.notification-item .notification-copy b,.notification-item .notification-copy span,.notification-item .notification-copy small{display:block;overflow-wrap:anywhere}
.notification-item .notification-copy b{font-size:var(--text-sm);color:#1e293b}
.notification-item .notification-copy span,.notification-item .notification-copy small{font-size:var(--text-xs);color:#667085}
.notification-detail{grid-column:1/-1;padding:.65rem;border:1px solid #edf0f2;border-radius:var(--radius-sm);background:#f7f8f9;display:grid;gap:.5rem}
.notification-detail>div:first-child b,.notification-detail>div:first-child span{display:block}
.notification-detail[hidden]{display:none}
.notification-detail-actions{display:flex;gap:.4rem;flex-wrap:wrap}
.notification-detail-actions button{min-height:var(--control-height-sm)}
.notification-backdrop{position:fixed;inset:0;border:0;background:var(--color-overlay);z-index:var(--z-backdrop)}

/* User management */
.settings-page{max-width:none;padding:0}
.settings-tabs{display:none}
.user-stat-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}
.user-stat-grid article{flex:0 1 10rem;padding:.75rem 1rem;border-radius:var(--radius-md);box-shadow:none}
.user-toolbar{grid-template-columns:minmax(14rem,1fr) minmax(9rem,12rem) minmax(9rem,12rem)}
.user-table{width:100%;min-width:0;table-layout:auto}
.user-table th,.user-table td{font-size:var(--text-xs);padding:.75rem}
.user-table th:nth-child(1){width:30%}
.user-table th:nth-child(2){width:14%}
.user-table th:nth-child(3){width:12%}
.user-table th:nth-child(4){width:11%}
.user-table th:nth-child(5){width:16%}
.user-table th:last-child{width:1%;white-space:nowrap}
.user-avatar{width:var(--avatar-md);height:var(--avatar-md);font-size:var(--text-xs);background:var(--avatar-bg,var(--color-primary-light));color:var(--avatar-fg,var(--color-primary-active))}
.user-row-actions{display:flex;gap:.35rem;justify-content:flex-end;white-space:nowrap}
.user-row-actions .icon-action{width:var(--target-min);height:var(--target-min);padding:0;display:grid;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;position:relative}
.user-row-actions .icon-action svg{width:var(--icon-normal);height:var(--icon-normal)}
.user-row-actions .icon-action[data-tooltip]::after,.icon-button[data-tooltip]::after{content:attr(data-tooltip);position:absolute;z-index:var(--z-popover);inset-block-end:calc(100% + .35rem);inset-inline-end:0;padding:.35rem .5rem;border-radius:var(--radius-sm);background:var(--color-text-primary);color:#fff;font-size:.6875rem;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(.2rem);transition:opacity var(--duration-fast),transform var(--duration-fast)}
.user-row-actions .icon-action:hover::after,.user-row-actions .icon-action:focus-visible::after,.icon-button[data-tooltip]:hover::after,.icon-button[data-tooltip]:focus-visible::after{opacity:1;transform:none}
.activity-time{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}
.activity-time svg{width:var(--icon-compact);height:var(--icon-compact);color:var(--color-text-muted)}

/* Traveler header */
.traveler-card-header{grid-template-columns:auto minmax(12rem,1.4fr) minmax(10rem,1fr) auto auto;min-width:0}
.traveler-card-title,.traveler-header-metrics,.traveler-status-control{min-width:0}
.traveler-header-metrics{display:flex;align-items:center;justify-content:center;gap:.35rem;flex-wrap:wrap}
.traveler-metric-pill{position:relative;min-height:2rem;min-width:2rem;padding:0 .55rem;font-size:var(--text-xs)}
.traveler-metric-pill b{font-size:var(--text-xs);font-variant-numeric:tabular-nums}
.traveler-metric-pill.is-source{color:var(--color-primary-active);border-color:var(--color-primary-border);background:var(--color-primary-light)}
.traveler-metric-pill .metric-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.traveler-status-control select{max-width:9rem;font-weight:var(--weight-semibold)}
.traveler-workspace-card.is-completed .traveler-status-control select{border-color:color-mix(in srgb,var(--color-success) 42%,var(--color-border));background:var(--color-success-soft);color:var(--color-success)}
.traveler-workspace-card.is-pending .traveler-status-control select{border-color:color-mix(in srgb,var(--color-error) 35%,var(--color-border));background:var(--color-error-soft);color:var(--color-error)}
.traveler-workspace-card.is-review .traveler-status-control select{border-color:color-mix(in srgb,var(--color-warning) 45%,var(--color-border));background:var(--color-warning-soft);color:#8a4b08}
.profile-status-audit time{font:inherit;color:inherit}

/* Dialog semantics and layers */
.modal,.module-modal{z-index:var(--z-modal)}
.modal-dialog,.module-modal-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);max-width:calc(100vw - 2rem)}
body.has-open-overlay{overflow:hidden}
.field-hint{display:block;margin-top:.3rem;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:400}
.confirmation-dialog{width:min(30rem,calc(100vw - 2rem))}
.confirmation-message{margin:0;padding:var(--space-4);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.confirmation-detail{margin:0 var(--space-4) var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--color-warning) 30%,white);border-radius:var(--radius-md);background:var(--color-warning-soft);font-size:var(--text-xs);white-space:pre-line}
.button.danger{background:var(--color-error);border-color:var(--color-error);color:#fff}

@media(max-width:1279px){
  #appShell.app-shell{--sidebar-current-width:var(--sidebar-width-collapsed)}
  #appShell .sidebar-layout-toggle{display:none}
  #appShell .official-brand{width:2.75rem;padding:0}
  #appShell .official-brand img{display:none}
  #appShell .brand-collapsed-mark{display:grid}
  #page-contracts .contract-list-row-v2{grid-template-columns:minmax(13rem,1.6fr) minmax(8rem,.8fr) minmax(8rem,.8fr) minmax(7.5rem,.8fr) max-content}
  #page-contracts .contract-list-travelers{display:none}
}

@media(max-width:1099px){
  body{overflow:auto}
  #appShell.app-shell{display:block;min-height:100dvh}
  #appShell .sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:var(--sidebar-width-expanded);transform:translateX(-105%);z-index:var(--z-drawer);box-shadow:var(--shadow-md);transition:transform var(--duration-normal) var(--ease-standard)}
  html[dir="rtl"] #appShell .sidebar{transform:translateX(105%)}
  #appShell.mobile-menu-open .sidebar{transform:none}
  #appShell .sidebar-layout-toggle{display:none}
  #appShell .official-brand{width:100%;padding:0}
  #appShell .official-brand img{display:block}
  #appShell .brand-collapsed-mark{display:none}
  #appShell .mobile-menu{display:inline-flex}
  #appShell .main-stage{height:auto;min-height:100dvh;overflow:visible}
  #appShell>.notification-panel{position:fixed;inset-block:var(--header-height) 0;inset-inline-end:0;width:min(var(--notification-drawer-width),calc(100vw - 2rem));height:calc(100dvh - var(--header-height));transform:translateX(105%);visibility:visible;transition:transform var(--duration-normal) var(--ease-standard)}
  html[dir="rtl"] #appShell>.notification-panel{transform:translateX(-105%)}
  #appShell.notifications-open>.notification-panel{transform:none}
  #appShell.notifications-open~.notification-backdrop{display:block}
  .day-grid{min-width:70rem;grid-template-columns:repeat(7,minmax(10rem,1fr))}
  .calendar-board{overflow-x:auto;scroll-snap-type:x proximity}
  .day-column{scroll-snap-align:start}
  #page-contracts .contract-list-row-v2{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"person action" "status status" "assigned delivery";align-items:center}
  #page-contracts .contract-list-person{grid-area:person}
  #page-contracts .contract-list-status{grid-area:status}
  #page-contracts .contract-list-assigned{grid-area:assigned}
  #page-contracts .contract-list-delivery{grid-area:delivery;justify-self:end}
  #page-contracts .contract-list-actions{grid-area:action}
  #page-contracts .contract-list-travelers{display:none}
  .traveler-card-header{grid-template-columns:auto minmax(0,1fr) auto}
  .traveler-header-metrics{grid-column:2/4;justify-content:flex-start}
  .traveler-status-control{grid-column:2}
  .traveler-card-chevron{grid-column:3;grid-row:1}
}

@media(max-width:767px){
  :root{--page-inline:1rem;--page-block:1rem}
  #appShell .topbar{padding-inline:var(--space-3)}
  #appShell .topbar-title small{display:none}
  .dashboard-header,.board-toolbar,.workspace-module-head,.settings-hero,.contracts-page-head{align-items:stretch;flex-direction:column}
  .board-toolbar{gap:var(--space-3)}
  .toolbar-right,.range-controls{width:100%;flex-wrap:wrap}
  .day-grid{display:block;min-width:0}
  .day-column{display:none}
  .day-column.is-mobile-active{display:block}
  .calendar-board{overflow:visible}
  #page-contracts .contracts-list-toolbar{grid-template-columns:1fr}
  #page-contracts .contracts-status-switch{overflow-x:auto;justify-content:flex-start}
  #page-contracts .contract-list-row-v2{display:grid;grid-template-columns:1fr;grid-template-areas:"person" "status" "assigned" "delivery" "action";gap:.65rem}
  #page-contracts .contract-list-actions{justify-self:stretch}
  #page-contracts .contract-list-actions .button{width:100%}
  #page-contracts .contract-list-delivery{justify-self:start}
  .user-toolbar{grid-template-columns:1fr}
  .user-table,.user-table thead,.user-table tbody,.user-table tr,.user-table th,.user-table td{display:block;min-width:0;width:100%}
  .user-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .user-table tr{padding:.75rem;border-top:1px solid var(--color-border)}
  .user-table td{border:0;padding:.35rem 0}
  .user-table td::before{content:attr(data-label);display:block;margin-bottom:.2rem;color:var(--color-text-muted);font-size:.6875rem;font-weight:var(--weight-bold);text-transform:uppercase}
  .user-row-actions{justify-content:flex-start;flex-wrap:wrap}
  .modal{align-items:end}
  .modal-dialog,.module-modal-card{width:100%;max-width:100%;max-height:94dvh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;margin:0}
  .module-modal{padding:0;align-items:end}
}

@media(max-width:430px){
  .user-stat-grid{display:grid;grid-template-columns:1fr 1fr}
  .user-stat-grid article{min-width:0}
  .header-actions,.case-actions,.document-package-actions{width:100%;display:grid;grid-template-columns:1fr}
  .header-actions .button,.case-actions .button{width:100%}
  .notification-tabs .mark-read{margin-inline-start:0}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}
}


/* WL DOCUMENT DELETE FEEDBACK */
[data-document-row].is-deleting,
[data-document-card].is-deleting,
[data-document-id].is-deleting{
  opacity:.72;
  pointer-events:none;
}

[data-action="delete-document-file"].is-loading{
  opacity:.65;
  cursor:wait;
}

[data-action="delete-document-file"].is-loading svg{
  animation:none!important;
  transform:none!important;
}

/* Shared confirmations must cover secondary folder lists on every route. */
body #sharedConfirmationDialog.modal.is-open {
  z-index: 2147483647 !important;
}
