:root{
  --green-50:#e7f6ef;
  --green-100:#c2cedd;
  --green-500:#64748b;
  --green-700:#475569;
  --green-900:#475569;
  --gray-25:#fcfcfd;
  --gray-50:#f9fafb;
  --gray-100:#f2f4f7;
  --gray-200:#eaecf0;
  --gray-300:#d0d5dd;
  --gray-400:#98a2b3;
  --gray-500:#667085;
  --gray-700:#344054;
  --gray-900:#101828;
  --blue:#4d86e8;
  --violet:#7f6ce5;
  --amber:#ef9a3c;
  --red:#df5a5a;
  --pink:#e76d98;
  --sidebar-width:232px;
  --rail-compact:58px;
  --rail-open:302px;
  --shadow-xs:0 1px 2px rgba(16,24,40,.04);
  --shadow-sm:0 6px 20px rgba(16,24,40,.06);
  --shadow-md:0 14px 38px rgba(16,24,40,.11);
  --ease:cubic-bezier(.2,.75,.3,1);
  --fast:150ms;
  --medium:230ms;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--gray-50);color:var(--gray-900);font-family:"Open Sans","Vazirmatn",Arial,sans-serif}
body{overflow:hidden}
button,input,select{font:inherit}
button{color:inherit}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
[hidden]{display:none!important}

.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr) var(--rail-compact);min-height:100vh;transition:grid-template-columns var(--medium) var(--ease)}
.app-shell.sidebar-collapsed{--sidebar-width:76px}
.app-shell.rail-pinned{--rail-compact:var(--rail-open)}

/* Sidebar */
.sidebar{grid-column:1;background:#fff;border-right:1px solid var(--gray-200);padding:16px 14px;display:flex;flex-direction:column;min-width:0;position:relative;z-index:40;overflow:hidden;transition:padding var(--medium) var(--ease)}
.brand-row{display:flex;align-items:center;gap:10px;min-height:42px}
.brand-mark{width:36px;height:36px;border:0;border-radius:11px;background:linear-gradient(145deg,var(--green-500),var(--green-900));color:#fff;font-weight:800;box-shadow:0 7px 18px rgba(100,116,139,.22);cursor:pointer;flex:0 0 auto}
.brand-copy{min-width:0;display:flex;flex-direction:column;transition:opacity var(--fast),transform var(--fast)}
.brand-copy strong{font-size:14px;white-space:nowrap}.brand-copy span{font-size:11px;color:var(--gray-500);white-space:nowrap}
.sidebar-toggle{margin-inline-start:auto}
.icon-button,.mini-icon{border:1px solid var(--gray-200);background:#fff;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--fast) var(--ease),background var(--fast),border-color var(--fast),box-shadow var(--fast)}
.icon-button{width:38px;height:38px}.mini-icon{width:30px;height:30px;border-color:transparent}.mini-icon svg{width:17px;height:17px}
.icon-button:hover,.mini-icon:hover{background:var(--gray-50);border-color:var(--gray-300);transform:translateY(-1px)}
.icon-button:active,.mini-icon:active{transform:scale(.96)}
.sidebar-search{height:40px;border:1px solid var(--gray-200);border-radius:9px;display:flex;align-items:center;gap:8px;padding:0 10px;margin:18px 0 16px;color:var(--gray-400);transition:border-color var(--fast),box-shadow var(--fast),width var(--medium)}
.sidebar-search:focus-within{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.12)}
.sidebar-search svg{width:17px}.sidebar-search input{border:0;outline:0;background:transparent;min-width:0;flex:1;color:var(--gray-900);font-size:12px}.sidebar-search kbd{font-size:10px;color:var(--gray-400);font-family:inherit}
.main-nav{display:flex;flex-direction:column;gap:4px}.nav-label,.filter-heading span{font-size:9px;letter-spacing:.08em;color:var(--gray-500);font-weight:700;margin:6px 9px 4px;white-space:nowrap}
.nav-item{height:40px;border:0;background:transparent;border-radius:9px;display:flex;align-items:center;gap:11px;padding:0 11px;color:var(--gray-700);cursor:pointer;text-align:left;transition:background var(--fast),color var(--fast),transform var(--fast)}
.nav-item svg{width:18px;flex:0 0 auto}.nav-item span{font-size:12px;font-weight:600;white-space:nowrap}.nav-item:hover{background:var(--gray-50);transform:translateX(2px)}
html[dir="rtl"] .nav-item:hover{transform:translateX(-2px)}
.nav-item.is-active{background:var(--green-50);color:var(--green-900)}
.nav-count{font-style:normal;font-size:10px;background:var(--gray-100);padding:2px 6px;border-radius:999px;margin-inline-start:auto}.nav-count.accent{background:#fff;color:var(--green-900)}
.quick-filters,.staff-legend{border-top:1px solid var(--gray-100);margin-top:16px;padding-top:10px}
.filter-heading{display:flex;align-items:center;justify-content:space-between}.filter-item{width:100%;border:0;background:transparent;border-radius:8px;display:flex;align-items:center;gap:8px;padding:8px 9px;cursor:pointer;color:var(--gray-700);transition:background var(--fast)}.filter-item:hover{background:var(--gray-50)}.filter-item span{font-size:11px;white-space:nowrap}.filter-item strong{font-size:10px;margin-inline-start:auto;color:var(--gray-500)}
.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex:0 0 auto}.status-dot.green{background:var(--green-500)}.status-dot.amber{background:var(--amber)}.status-dot.violet{background:var(--violet)}.status-dot.blue{background:var(--blue)}
.legend-row{display:flex;align-items:center;gap:8px;padding:5px 9px;color:var(--gray-500);font-size:11px}.legend-row i{width:8px;height:8px;border-radius:50%;background:var(--staff)}
.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;gap:7px}.support-link,.profile-card{border:0;background:transparent;border-radius:10px;display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;color:var(--gray-700);transition:background var(--fast)}.support-link:hover,.profile-card:hover{background:var(--gray-50)}.support-link span{width:26px;height:26px;border:1px solid var(--gray-200);border-radius:50%;display:grid;place-items:center}.support-link b{font-size:11px}.profile-card{border:1px solid var(--gray-200);text-align:left}.avatar,.tiny-avatar,.large-avatar{display:inline-grid;place-items:center;border-radius:50%;font-weight:700;flex:0 0 auto}.avatar{width:34px;height:34px;background:#eef1f5;color:var(--gray-700);font-size:11px}.avatar-green{background:var(--green-50);color:var(--green-900)}.profile-copy{display:flex;flex-direction:column;min-width:0}.profile-copy b{font-size:11px;white-space:nowrap}.profile-copy small{font-size:9px;color:var(--gray-500);white-space:nowrap}.profile-card>svg{width:16px;margin-inline-start:auto}
.sidebar-collapsed .brand-copy,.sidebar-collapsed .sidebar-search input,.sidebar-collapsed .sidebar-search kbd,.sidebar-collapsed .nav-item span,.sidebar-collapsed .nav-count,.sidebar-collapsed .quick-filters,.sidebar-collapsed .staff-legend,.sidebar-collapsed .support-link b,.sidebar-collapsed .profile-copy,.sidebar-collapsed .profile-card>svg{opacity:0;pointer-events:none;position:absolute}
.sidebar-collapsed .sidebar{padding-inline:12px}.sidebar-collapsed .sidebar-search{width:40px;padding:0;justify-content:center}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .profile-card{justify-content:center;padding:5px}.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}

/* Main */
.main-stage{grid-column:2;min-width:0;height:100vh;overflow:auto;background:linear-gradient(180deg,#f6fbf9 0,#f9fafb 190px);scroll-behavior:smooth;position:relative}
.main-stage:not(:has(#page-platform-dashboard.is-active)){background:#fff}
#mainContent>.page.is-active:not(#page-platform-dashboard){background:#fff!important}
.topbar{height:64px;padding:0 26px;border-bottom:1px solid var(--gray-200);background:rgba(255,255,255,.88);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:10px}.mobile-menu{display:none}.topbar-title{display:flex;flex-direction:column}.topbar-title span{font-size:12px;font-weight:700}.topbar-title small{font-size:10px;color:var(--gray-500)}.soft-button{height:34px;padding:0 12px;border:1px solid var(--gray-200);background:#fff;border-radius:9px;font-size:10px;font-weight:700;cursor:pointer;transition:background var(--fast),transform var(--fast)}.soft-button:hover{background:var(--gray-50);transform:translateY(-1px)}.notification-button{position:relative}.notification-button i{position:absolute;right:-2px;top:-3px;width:16px;height:16px;border-radius:50%;background:#ef6a6a;color:#fff;font-size:9px;font-style:normal;display:grid;place-items:center;border:2px solid #fff}
.page{display:none;padding:28px 26px 52px;opacity:0;transform:translateY(7px)}.page.is-active{display:block;animation:pageIn var(--medium) var(--ease) forwards}.page.is-leaving{animation:pageOut 130ms ease forwards}@keyframes pageIn{to{opacity:1;transform:none}}@keyframes pageOut{to{opacity:0;transform:translateY(-4px)}}
.dashboard-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}.eyebrow{margin:0 0 7px;font-size:9px;letter-spacing:.1em;font-weight:800;color:var(--green-900)}.dashboard-header h1,.case-identity h1{font-size:25px;line-height:1.2;margin:0 0 6px;letter-spacing:-.03em}.dashboard-header p:not(.eyebrow){margin:0;color:var(--gray-500);font-size:11px}.header-actions,.case-actions{display:flex;gap:9px}
.button{height:40px;border-radius:9px;padding:0 15px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:700;cursor:pointer;transition:transform var(--fast) var(--ease),background var(--fast),box-shadow var(--fast),border-color var(--fast)}.button svg{width:17px}.button:hover{transform:translateY(-1px)}.button:active{transform:scale(.98)}.button.primary{background:var(--green-500);color:#fff;box-shadow:0 8px 18px rgba(100,116,139,.18)}.button.primary:hover{background:var(--green-700);box-shadow:0 10px 22px rgba(100,116,139,.23)}.button.secondary{background:#fff;border-color:var(--gray-200);color:var(--gray-700)}.button.secondary:hover{border-color:var(--gray-300);background:var(--gray-25)}.button.small{height:34px;padding:0 12px;font-size:10px}.text-button{border:0;background:transparent;color:var(--green-900);font-size:10px;font-weight:700;cursor:pointer}

/* Board toolbar */
.board-toolbar{background:#fff;border:1px solid var(--gray-200);border-radius:13px 13px 0 0;padding:11px 12px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:var(--shadow-xs)}
.range-controls,.toolbar-right{display:flex;align-items:center;gap:9px}.today-button{height:38px;border:1px solid var(--gray-200);background:#fff;border-radius:9px;padding:0 15px;font-size:10px;font-weight:700;cursor:pointer;transition:background var(--fast),transform var(--fast)}.today-button:hover{background:var(--green-50);transform:translateY(-1px)}.range-title{display:flex;flex-direction:column;margin-inline-start:6px}.range-title strong{font-size:12px}.range-title span{font-size:9px;color:var(--gray-500)}.team-stack{display:flex;align-items:center}.tiny-avatar{width:24px;height:24px;background:color-mix(in srgb,var(--staff) 14%,white);color:var(--staff);font-size:7px;border:2px solid #fff;margin-inline-start:-5px}.tiny-avatar:first-child{margin-inline-start:0}.tiny-avatar.more{background:var(--gray-100);color:var(--gray-500)}.view-switch{background:var(--gray-50);border-radius:10px;padding:3px;display:flex}.view-switch button{height:32px;border:0;background:transparent;border-radius:8px;padding:0 13px;color:var(--gray-500);font-size:10px;font-weight:700;cursor:pointer;transition:background var(--fast),color var(--fast),box-shadow var(--fast),transform var(--fast)}.view-switch button:hover{color:var(--gray-900)}.view-switch button.is-active{background:#fff;color:var(--gray-900);box-shadow:var(--shadow-xs);transform:translateY(-1px)}

/* Calendar */
.calendar-board{min-height:650px;border:1px solid var(--gray-200);border-top:0;background:#fff;border-radius:0 0 13px 13px;overflow-x:auto;overflow-y:hidden;position:relative;transition:opacity var(--fast),transform var(--fast)}.calendar-board.is-switching{opacity:.35;transform:translateY(4px)}
.day-grid{display:grid;grid-template-columns:repeat(7,minmax(235px,1fr));min-width:1645px;min-height:650px}.day-column{border-inline-end:1px solid var(--gray-200);background:#fff;min-width:0;position:relative;transition:background var(--medium),box-shadow var(--medium)}.day-column:last-child{border-inline-end:0}.day-column.is-today{background:linear-gradient(180deg,#f0fbf6 0,#fff 170px);box-shadow:inset 0 0 0 1px rgba(100,116,139,.35)}.day-column.is-past{background:#fafbfc}.day-column.is-drag-over{background:var(--green-50);box-shadow:inset 0 0 0 2px var(--green-500)}
.day-head{height:60px;padding:15px 14px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between}.day-label{display:flex;align-items:center;gap:10px}.day-label span{font-size:9px;font-weight:700;color:var(--gray-400);text-transform:uppercase}.day-label strong{font-size:13px}.day-column.is-today .day-label strong{width:34px;height:34px;border-radius:10px;background:var(--green-500);color:#fff;display:grid;place-items:center;box-shadow:0 7px 16px rgba(100,116,139,.22)}.day-head em{font-style:normal;font-size:9px;color:var(--gray-400)}.day-cards{padding:12px;display:flex;flex-direction:column;gap:10px;min-height:590px}

.case-card{--staff:#4d86e8;position:relative;border:1px solid var(--gray-200);border-radius:12px;background:#fff;padding:11px 10px 10px 14px;box-shadow:var(--shadow-xs);transition:transform var(--fast) var(--ease),box-shadow var(--fast),border-color var(--fast),opacity var(--fast),filter var(--fast);cursor:default;overflow:visible}.case-card::before{content:"";position:absolute;inset:9px auto 9px 0;width:3px;border-radius:0 999px 999px 0;background:var(--staff)}html[dir="rtl"] .case-card::before{inset:9px 0 9px auto;border-radius:999px 0 0 999px}.case-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--staff) 25%,var(--gray-200))}.case-card.is-dragging{opacity:.48;transform:rotate(1deg) scale(.98)}.case-card.is-delivered{opacity:.48;filter:grayscale(.72);background:#f7f8fa}.case-card.is-overdue{opacity:1;filter:none;background:#fff9f9;border-color:#f1caca}.case-card.is-overdue::after{content:"Overdue";position:absolute;top:-7px;right:10px;background:#fff0f0;color:#b64242;border:1px solid #f1caca;border-radius:999px;padding:2px 6px;font-size:7px;font-weight:800}.case-card.is-open{box-shadow:0 10px 25px rgba(16,24,40,.08);border-color:color-mix(in srgb,var(--staff) 34%,var(--gray-200));transform:translateY(-1px)}
.card-top{display:flex;align-items:flex-start;gap:8px}.country-code{font-size:10px;font-weight:800;color:var(--gray-700);padding-top:2px}.status-chip{display:inline-flex;align-items:center;height:20px;border-radius:999px;padding:0 7px;font-size:7px;font-weight:800;white-space:nowrap}.status-chip.green{background:var(--green-50);color:var(--green-900)}.status-chip.blue{background:#edf4ff;color:#3d72c9}.status-chip.violet{background:#f1efff;color:#6e5bd4}.status-chip.amber{background:#fff4e7;color:#aa681f}.status-chip.red{background:#fff0f0;color:#ba4545}.status-chip.gray{background:var(--gray-100);color:var(--gray-500)}
.assignee-button{margin-inline-start:auto;border:0;background:transparent;display:flex;align-items:center;gap:5px;border-radius:8px;padding:2px 3px;cursor:pointer;transition:background var(--fast),transform var(--fast)}.assignee-button:hover{background:var(--gray-50);transform:translateY(-1px)}.staff-avatar{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--staff) 14%,white);color:var(--staff);font-size:7px;font-weight:800;border:1px solid color-mix(in srgb,var(--staff) 24%,white)}.staff-name{font-size:8px;color:var(--gray-500);font-weight:700;max-width:45px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.visa-line{font-size:8px;color:var(--gray-500);margin:7px 0 3px}.case-title-line{display:flex;align-items:center;gap:7px}.case-title{font-size:11px;font-weight:800;line-height:1.3}.traveler-count{min-width:20px;height:20px;border-radius:50%;background:var(--green-50);color:var(--green-900);font-size:8px;font-weight:800;display:grid;place-items:center;border:1px solid var(--green-100)}
.mini-workflow-toggle{width:100%;border:0;background:transparent;padding:9px 1px 4px;cursor:pointer;text-align:left}.mini-workflow{display:grid;grid-template-columns:1fr 1fr 1fr;position:relative;gap:0}.mini-workflow::before{content:"";position:absolute;top:8px;left:16%;right:16%;height:1px;background:var(--gray-200)}.mini-stage{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;z-index:1}.mini-stage i{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--gray-300);color:var(--gray-400);font-style:normal;font-size:7px;transition:transform var(--fast),background var(--fast),box-shadow var(--fast)}.mini-stage span{font-size:7px;color:var(--gray-400);max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-stage.previous i{background:var(--green-50);border-color:var(--green-100);color:var(--green-900)}.mini-stage.current i{width:22px;height:22px;margin-top:-3px;background:var(--staff);border-color:var(--staff);color:#fff;font-weight:800;box-shadow:0 0 0 4px color-mix(in srgb,var(--staff) 15%,transparent);animation:subtlePulse 2.8s infinite}.mini-stage.current span{color:var(--staff);font-weight:800}.case-card:hover .mini-stage.current i{transform:scale(1.06)}@keyframes subtlePulse{0%,100%{box-shadow:0 0 0 4px color-mix(in srgb,var(--staff) 15%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--staff) 0%,transparent)}}
.latest-action{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--gray-700);font-size:8px;min-width:0}.latest-action svg{width:13px;height:13px;color:var(--gray-400);flex:0 0 auto}.latest-action span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-card.is-overdue .latest-action{color:#b64242;font-weight:700}.case-progress{height:4px;background:var(--gray-100);border-radius:999px;overflow:hidden;margin:9px 0 5px}.case-progress i{display:block;height:100%;width:var(--progress);background:var(--staff);border-radius:inherit}.card-footer{display:flex;justify-content:space-between;align-items:center;color:var(--gray-400);font-size:7px}.delivered-mark{display:inline-flex;align-items:center;gap:4px;color:var(--green-900);font-weight:700}.delivered-mark svg{width:12px}
.card-accordion{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--medium) var(--ease)}.card-accordion>div{overflow:hidden}.case-card.is-open .card-accordion{grid-template-rows:1fr}.accordion-inner{border-top:1px solid var(--gray-100);margin-top:8px;padding-top:8px;opacity:0;transform:translateY(-5px);transition:opacity var(--fast) 70ms,transform var(--fast) 70ms}.case-card.is-open .accordion-inner{opacity:1;transform:none}.compact-timeline{list-style:none;padding:0;margin:0 0 9px;display:flex;flex-direction:column;gap:7px}.compact-timeline li{display:grid;grid-template-columns:8px 1fr auto;gap:7px;align-items:start;font-size:7px;color:var(--gray-500);opacity:0;transform:translateY(4px)}.case-card.is-open .compact-timeline li{animation:timelineIn 180ms var(--ease) forwards}.case-card.is-open .compact-timeline li:nth-child(2){animation-delay:45ms}.case-card.is-open .compact-timeline li:nth-child(3){animation-delay:90ms}@keyframes timelineIn{to{opacity:1;transform:none}}.compact-timeline i{width:7px;height:7px;border-radius:50%;background:var(--gray-300);margin-top:2px}.compact-timeline li:last-child i{background:var(--staff);box-shadow:0 0 0 3px color-mix(in srgb,var(--staff) 13%,transparent)}.compact-timeline b{font-weight:700;color:var(--gray-700)}.compact-timeline time{font-size:6px;color:var(--gray-400)}.open-case-button{width:100%;height:31px;border:1px solid color-mix(in srgb,var(--staff) 25%,var(--gray-200));background:color-mix(in srgb,var(--staff) 6%,white);color:var(--staff);border-radius:8px;font-size:8px;font-weight:800;cursor:pointer;transition:background var(--fast),transform var(--fast)}.open-case-button:hover{background:color-mix(in srgb,var(--staff) 12%,white);transform:translateY(-1px)}

/* Week & month views */
.week-grid{display:grid;grid-template-columns:repeat(4,minmax(300px,1fr));min-width:1200px;min-height:650px}.week-column,.month-column{border-inline-end:1px solid var(--gray-200);padding-bottom:18px}.week-column:last-child,.month-column:last-child{border-inline-end:0}.period-head{padding:16px;border-bottom:1px solid var(--gray-200);background:var(--gray-25);display:flex;justify-content:space-between;align-items:center}.period-head div{display:flex;flex-direction:column}.period-head strong{font-size:12px}.period-head span,.period-head em{font-size:8px;color:var(--gray-500);font-style:normal}.period-body{padding:10px}.date-group{margin-bottom:14px}.date-divider{display:flex;align-items:center;gap:8px;margin:3px 1px 8px}.date-divider strong{font-size:9px;color:var(--gray-700);white-space:nowrap}.date-divider::after{content:"";height:1px;background:var(--gray-200);flex:1}.date-group .case-card{margin-bottom:8px}.month-grid{display:grid;grid-template-columns:repeat(3,minmax(360px,1fr));min-width:1080px;min-height:650px}.month-column.current-month .period-head{background:var(--green-50)}.month-column.current-month{box-shadow:inset 0 0 0 1px rgba(100,116,139,.3)}.empty-period{padding:24px 10px;text-align:center;color:var(--gray-400);font-size:9px}

/* Activity dock */
.activity-dock{grid-column:3;position:relative;background:#fff;border-left:1px solid var(--gray-200);z-index:50;min-width:0}.activity-compact{height:100vh;display:flex;align-items:center;flex-direction:column;padding:78px 0 18px;position:relative;background:#fff}.rail-open-button{width:38px;height:38px;border:1px solid var(--green-100);background:var(--green-50);color:var(--green-900);border-radius:10px;display:grid;place-items:center;cursor:pointer;position:relative;transition:transform var(--fast),background var(--fast),box-shadow var(--fast)}.rail-open-button:hover{transform:translateY(-2px);background:#ddf3e9;box-shadow:0 7px 17px rgba(100,116,139,.14)}.rail-open-button i{position:absolute;right:-6px;top:-7px;background:var(--green-500);color:#fff;border:2px solid #fff;border-radius:999px;width:18px;height:18px;display:grid;place-items:center;font-size:8px;font-style:normal}.vertical-label{writing-mode:vertical-rl;font-size:8px;font-weight:800;letter-spacing:.1em;color:var(--gray-400);margin-top:18px}.compact-kpis{margin-top:auto;display:flex;flex-direction:column;gap:10px}.kpi-orb{width:38px;height:38px;border-radius:50%;border:1px solid var(--gray-200);background:#fff;display:grid;place-items:center;position:relative;cursor:pointer;transition:transform var(--fast) var(--ease),box-shadow var(--fast),border-color var(--fast)}.kpi-orb svg{position:absolute;width:12px;height:12px;top:5px;opacity:.75}.kpi-orb b{font-size:8px;margin-top:10px}.kpi-orb.sent{color:#3d72c9;background:#f3f7ff}.kpi-orb.signed{color:var(--green-900);background:var(--green-50)}.kpi-orb.payment{color:#a6651d;background:#fff7eb}.kpi-orb:hover{transform:translateY(-2px) scale(1.04);box-shadow:var(--shadow-sm);border-color:currentColor}.kpi-orb::after{content:attr(data-tooltip);position:absolute;right:48px;white-space:nowrap;background:var(--gray-900);color:#fff;font-size:8px;padding:6px 8px;border-radius:7px;opacity:0;pointer-events:none;transform:translateX(4px);transition:opacity var(--fast),transform var(--fast)}html[dir="rtl"] .kpi-orb::after{right:auto;left:48px}.kpi-orb:hover::after{opacity:1;transform:none}
.activity-panel{position:absolute;top:0;right:0;width:var(--rail-open);height:100vh;background:#fff;border-left:1px solid var(--gray-200);box-shadow:-18px 0 42px rgba(16,24,40,.10);transform:translateX(101%);opacity:0;pointer-events:none;display:flex;flex-direction:column;transition:transform var(--medium) var(--ease),opacity var(--fast)}html[dir="rtl"] .activity-panel{right:auto;left:0;border-left:0;border-right:1px solid var(--gray-200);box-shadow:18px 0 42px rgba(16,24,40,.10);transform:translateX(-101%)}.app-shell.rail-open .activity-panel{transform:none;opacity:1;pointer-events:auto}.app-shell.rail-pinned .activity-panel{position:relative;width:100%;box-shadow:none}.app-shell.rail-pinned .activity-compact{display:none}
.activity-header{padding:22px 16px 18px;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;align-items:flex-start}.activity-header h2{font-size:17px;margin:0 0 3px}.activity-header span{font-size:9px;color:var(--gray-500)}.activity-header-actions{display:flex;gap:6px}.activity-header-actions .icon-button{width:34px;height:34px}.activity-header-actions .is-pinned{background:var(--green-50);border-color:var(--green-100);color:var(--green-900)}
.activity-summary{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--gray-200);background:var(--gray-25)}.activity-summary span{padding:10px 7px;text-align:center;border-inline-end:1px solid var(--gray-200);font-size:7px;color:var(--gray-500);display:flex;flex-direction:column;gap:2px}.activity-summary span:last-child{border-inline-end:0}.activity-summary b{font-size:10px;color:var(--gray-900)}.rail-tabs{display:flex;padding:0 15px;border-bottom:1px solid var(--gray-200)}.rail-tabs button{height:43px;border:0;background:transparent;font-size:9px;font-weight:700;color:var(--gray-500);padding:0 7px;position:relative;cursor:pointer}.rail-tabs button b{font-size:7px;color:inherit}.rail-tabs button.is-active{color:var(--gray-900)}.rail-tabs button.is-active::after{content:"";position:absolute;left:7px;right:7px;bottom:-1px;height:2px;background:var(--green-500);border-radius:999px}.activity-list{overflow:auto;padding:12px;display:flex;flex-direction:column;gap:9px}
.activity-contract{border:1px solid var(--gray-200);border-radius:12px;background:#fff;padding:10px;box-shadow:var(--shadow-xs);transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}.activity-contract:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.activity-contract.is-open{border-color:var(--green-100)}.activity-contract-head{display:flex;align-items:center;gap:8px;cursor:pointer}.activity-person-avatar{width:29px;height:29px;border-radius:50%;background:var(--green-50);color:var(--green-900);display:grid;place-items:center;font-size:7px;font-weight:800}.activity-person{display:flex;flex-direction:column;min-width:0}.activity-person b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-person span{font-size:7px;color:var(--gray-500);white-space:nowrap}.latest-change-button{margin-inline-start:auto;width:28px;height:28px;border:0;border-radius:8px;background:var(--gray-50);display:grid;place-items:center;position:relative;cursor:pointer;color:var(--gray-500);transition:transform var(--fast),background var(--fast)}.latest-change-button svg{width:14px}.latest-change-button:hover{background:var(--green-50);color:var(--green-900);transform:translateY(-1px)}.latest-change-button::after{content:attr(data-tooltip);position:absolute;right:0;top:34px;background:var(--gray-900);color:#fff;border-radius:7px;padding:6px 8px;font-size:7px;white-space:nowrap;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity var(--fast),transform var(--fast);z-index:5}.latest-change-button:hover::after{opacity:1;transform:none}
.activity-current{margin-top:9px;background:var(--gray-50);border-radius:9px;padding:8px;display:flex;align-items:center;gap:8px}.activity-current i{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:var(--green-50);color:var(--green-900)}.activity-current svg{width:12px}.activity-current div{display:flex;flex-direction:column}.activity-current b{font-size:8px}.activity-current span{font-size:7px;color:var(--gray-500)}.activity-accordion{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--medium) var(--ease)}.activity-accordion>div{overflow:hidden}.activity-contract.is-open .activity-accordion{grid-template-rows:1fr}.activity-timeline{list-style:none;padding:8px 0 0;margin:0;display:flex;flex-direction:column;gap:7px}.activity-timeline li{display:grid;grid-template-columns:22px 1fr;gap:7px;opacity:0;transform:translateY(4px)}.activity-contract.is-open .activity-timeline li{animation:timelineIn 180ms var(--ease) forwards}.activity-contract.is-open .activity-timeline li:nth-child(2){animation-delay:45ms}.activity-contract.is-open .activity-timeline li:nth-child(3){animation-delay:90ms}.activity-contract.is-open .activity-timeline li:nth-child(4){animation-delay:135ms}.timeline-icon{width:22px;height:22px;border-radius:50%;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.timeline-icon svg{width:11px}.activity-timeline div{display:flex;flex-direction:column}.activity-timeline b{font-size:8px}.activity-timeline span{font-size:7px;color:var(--gray-500)}.activity-actions{display:flex;gap:6px;margin-top:9px}.activity-actions .button{flex:1;height:32px;font-size:8px;padding:0 8px}

/* Case page */
.case-page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.back-button{border:0;background:transparent;color:var(--gray-500);font-size:10px;font-weight:700;display:flex;align-items:center;gap:6px;cursor:pointer}.back-button svg{width:16px}.back-button:hover{color:var(--green-900)}.case-identity{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:var(--shadow-xs)}.case-person{display:flex;align-items:center;gap:12px}.large-avatar{width:46px;height:46px;background:var(--green-50);color:var(--green-900);font-size:12px}.case-name-row{display:flex;align-items:center;gap:8px}.case-identity h1{font-size:20px;margin:0}.case-identity p{font-size:9px;color:var(--gray-500);margin:4px 0 0}.people-badge{min-width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green-50);color:var(--green-900);font-size:8px;font-weight:800;border:1px solid var(--green-100)}.case-meta{display:flex;gap:24px}.case-meta span{display:flex;flex-direction:column;gap:3px}.case-meta small{font-size:8px;color:var(--gray-500)}.case-meta strong{font-size:9px}.assigned-inline{display:flex;align-items:center;gap:6px}.assigned-inline i{width:7px;height:7px;border-radius:50%;background:var(--staff)}
.full-workflow-card{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:15px 18px;margin-top:14px;box-shadow:var(--shadow-xs)}.workflow-card-head{display:flex;justify-content:space-between;align-items:center}.workflow-card-head>div{display:flex;align-items:center;gap:8px}.workflow-card-head strong{font-size:10px}.workflow-card-head span{font-size:8px;color:var(--gray-500)}.full-workflow{display:grid;grid-template-columns:repeat(8,1fr);margin-top:17px;position:relative}.full-workflow::before{content:"";position:absolute;left:6%;right:6%;top:15px;height:2px;background:var(--gray-200)}.workflow-step{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:5px;position:relative;z-index:1;cursor:pointer;padding:0}.workflow-step i{width:31px;height:31px;border-radius:50%;background:#fff;border:1px solid var(--gray-300);display:grid;place-items:center;font-style:normal;font-size:8px;color:var(--gray-400);transition:transform var(--fast),background var(--fast),box-shadow var(--fast)}.workflow-step b{font-size:8px;color:var(--gray-500)}.workflow-step small{font-size:7px;color:var(--gray-400)}.workflow-step.is-complete i{background:var(--green-50);border-color:var(--green-100);color:var(--green-900)}.workflow-step.is-complete b{color:var(--green-900)}.workflow-step.is-current i{background:var(--green-500);border-color:var(--green-500);color:#fff;font-weight:800;box-shadow:0 0 0 5px rgba(100,116,139,.13);transform:scale(1.04)}.workflow-step.is-current b{color:var(--green-900)}.workflow-step:hover i{transform:translateY(-2px)}
.case-tabs{margin-top:14px;border-bottom:1px solid var(--gray-200);display:flex;gap:18px}.case-tabs button{height:42px;border:0;background:transparent;color:var(--gray-500);font-size:9px;font-weight:700;cursor:pointer;position:relative;padding:0 2px}.case-tabs button.is-active{color:var(--green-900)}.case-tabs button.is-active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--green-500);border-radius:999px;animation:tabLine 180ms var(--ease)}@keyframes tabLine{from{transform:scaleX(.2);opacity:.3}to{transform:none;opacity:1}}.case-tab-panel{display:none;opacity:0;transform:translateY(5px)}.case-tab-panel.is-active{display:block;animation:panelIn var(--medium) var(--ease) forwards}@keyframes panelIn{to{opacity:1;transform:none}}.case-grid{display:grid;gap:12px;margin-top:14px}.top-grid{grid-template-columns:1.1fr 1.1fr .8fr}.bottom-grid{grid-template-columns:1fr .9fr 1.1fr}.detail-card{background:#fff;border:1px solid var(--gray-200);border-radius:13px;padding:14px;box-shadow:var(--shadow-xs)}.card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-heading h3{font-size:10px;margin:0}.detail-list{display:flex;flex-direction:column;gap:9px;margin:0}.detail-list div{display:flex;justify-content:space-between;gap:12px}.detail-list dt{font-size:8px;color:var(--gray-500)}.detail-list dd{font-size:8px;font-weight:700;margin:0;text-align:right}.next-action-card{background:linear-gradient(145deg,#fffdf7,#fff)}.next-action-title{display:block;font-size:13px;margin-bottom:6px}.next-action-card p{font-size:8px;color:var(--gray-500);line-height:1.7;margin:0 0 13px}.action-buttons{display:flex;gap:7px}.readiness-card{text-align:center}.readiness-ring{--value:78;width:92px;height:92px;border-radius:50%;margin:2px auto 10px;background:conic-gradient(var(--green-500) calc(var(--value)*1%),var(--gray-100) 0);position:relative;display:grid;place-items:center}.readiness-ring::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}.readiness-ring strong,.readiness-ring span{position:relative;z-index:1}.readiness-ring strong{font-size:18px}.readiness-ring span{font-size:7px;color:var(--gray-500);margin-top:-28px}.readiness-card ul{list-style:none;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:5px}.readiness-card li{font-size:7px;color:var(--gray-500)}.metric-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.metric-list div{background:var(--gray-50);border-radius:9px;padding:10px;display:flex;justify-content:space-between}.metric-list span{font-size:8px;color:var(--gray-500)}.metric-list strong{font-size:11px}.green-text{color:var(--green-900)}.amber-text{color:#aa681f}.red-text{color:#ba4545}.mini-timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}.mini-timeline li{display:grid;grid-template-columns:7px 1fr auto;gap:7px;font-size:7px}.mini-timeline i{width:7px;height:7px;border-radius:50%;background:var(--green-500);margin-top:2px}.mini-timeline span{color:var(--gray-500)}.mini-timeline time{color:var(--gray-400)}
.empty-module,.document-preview,.activity-log{background:#fff;border:1px solid var(--gray-200);border-radius:13px;margin-top:14px;padding:34px;text-align:center}.empty-module>svg{width:34px;height:34px;color:var(--green-500)}.empty-module h2,.document-preview h2,.activity-log h2{font-size:17px;margin:10px 0 5px}.empty-module p,.document-preview p{font-size:9px;color:var(--gray-500);max-width:520px;margin:0 auto 16px}.document-preview{text-align:left}.document-preview h2{margin-top:0}.document-preview p{margin:0}.document-table{margin-top:18px;border:1px solid var(--gray-200);border-radius:10px;overflow:hidden}.doc-row{display:grid;grid-template-columns:1.3fr repeat(4,1fr);border-top:1px solid var(--gray-200)}.doc-row:first-child{border-top:0}.doc-row span,.doc-row strong{padding:11px;border-inline-end:1px solid var(--gray-200);font-size:8px}.doc-row span:last-child{border-inline-end:0}.doc-row.header{background:var(--gray-50);color:var(--gray-500)}.doc-ok{color:var(--green-900);background:#fbfffd}.doc-warn{color:#aa681f;background:#fffaf2}.doc-missing{color:#ba4545;background:#fff8f8}.doc-shared{color:#6e5bd4;background:#faf9ff}.activity-log{text-align:left}.activity-log h2{margin-top:0}.activity-log-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.log-row{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:start;padding-bottom:10px;border-bottom:1px solid var(--gray-100)}.log-row:last-child{border-bottom:0}.log-icon{width:30px;height:30px;border-radius:50%;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.log-icon svg{width:14px}.log-row div{display:flex;flex-direction:column}.log-row b{font-size:9px}.log-row span,.log-row time{font-size:8px;color:var(--gray-500)}
.generic-page{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.generic-icon{width:58px;height:58px;border-radius:16px;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.generic-icon svg{width:28px}.generic-page h1{font-size:24px;margin:14px 0 5px}.generic-page p{font-size:10px;color:var(--gray-500);margin:0 0 18px}

/* Popover, modal, toast */
.filter-popover,.staff-menu{position:fixed;z-index:100;background:#fff;border:1px solid var(--gray-200);border-radius:12px;box-shadow:var(--shadow-md);opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity var(--fast),transform var(--fast)}.filter-popover{right:90px;top:142px;width:265px;padding:13px}.filter-popover.is-open,.staff-menu.is-open{opacity:1;transform:none;pointer-events:auto}.popover-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.popover-head strong{font-size:10px}.filter-popover label,.modal label{display:flex;flex-direction:column;gap:5px;font-size:8px;color:var(--gray-500);margin-bottom:10px}.filter-popover select,.modal input,.modal select{height:39px;border:1px solid var(--gray-300);border-radius:8px;background:#fff;padding:0 10px;color:var(--gray-900);font-size:9px;outline:0}.filter-popover select:focus,.modal input:focus,.modal select:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.11)}.filter-popover .button{width:100%}.staff-menu{width:170px;padding:6px}.staff-option{width:100%;border:0;background:transparent;border-radius:8px;padding:8px;display:flex;align-items:center;gap:8px;cursor:pointer;text-align:left;font-size:9px}.staff-option:hover{background:var(--gray-50)}.staff-option i{width:9px;height:9px;border-radius:50%;background:var(--staff)}.staff-option.is-current::after{content:"✓";margin-inline-start:auto;color:var(--green-900);font-weight:800}
.modal{position:fixed;inset:0;z-index:120;background:rgba(16,24,40,.36);backdrop-filter:blur(4px);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity var(--medium)}.modal.is-open{opacity:1;pointer-events:auto}.modal-dialog{width:min(560px,calc(100vw - 30px));background:#fff;border-radius:16px;box-shadow:0 28px 70px rgba(16,24,40,.2);padding:18px;transform:translateY(10px) scale(.98);transition:transform var(--medium) var(--ease)}.modal.is-open .modal-dialog{transform:none}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:17px}.modal-head h2{margin:0;font-size:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.form-grid .full{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--gray-100);padding-top:14px;margin-top:4px}.toast-stack{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:150;display:flex;flex-direction:column;gap:8px}.toast{background:var(--gray-900);color:#fff;border-radius:10px;padding:10px 14px;font-size:9px;box-shadow:var(--shadow-md);animation:toastIn 250ms var(--ease),toastOut 250ms var(--ease) 2.55s forwards}@keyframes toastIn{from{opacity:0;transform:translateY(8px) scale(.97)}}@keyframes toastOut{to{opacity:0;transform:translateY(6px)}}

/* Responsive */
@media(max-width:1180px){:root{--sidebar-width:76px}.brand-copy,.sidebar-search input,.sidebar-search kbd,.nav-item span,.nav-count,.quick-filters,.staff-legend,.support-link b,.profile-copy,.profile-card>svg{display:none}.sidebar-search{width:40px;padding:0;justify-content:center}.nav-item{justify-content:center;padding:0}.profile-card{justify-content:center;padding:5px}.sidebar-toggle{display:none}.top-grid{grid-template-columns:1fr 1fr}.readiness-card{grid-column:1/-1}.bottom-grid{grid-template-columns:1fr 1fr}.bottom-grid .detail-card:last-child{grid-column:1/-1}.case-identity{align-items:flex-start}.case-meta{gap:12px;flex-wrap:wrap}.full-workflow{min-width:760px}.full-workflow-card{overflow:auto}}
@media(max-width:820px){body{overflow:auto}.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;width:232px;transform:translateX(-102%);box-shadow:var(--shadow-md);transition:transform var(--medium) var(--ease)}html[dir="rtl"] .sidebar{left:auto;right:0;transform:translateX(102%)}.app-shell.mobile-menu-open .sidebar{transform:none}.brand-copy,.sidebar-search input,.sidebar-search kbd,.nav-item span,.nav-count,.quick-filters,.staff-legend,.support-link b,.profile-copy,.profile-card>svg{display:initial}.sidebar-search{width:auto;padding:0 10px;justify-content:flex-start}.nav-item{justify-content:flex-start;padding:0 11px}.profile-card{justify-content:flex-start;padding:8px}.main-stage{height:auto;min-height:100vh;overflow:visible}.mobile-menu{display:inline-flex}.activity-dock{position:fixed;right:0;top:0;bottom:0;width:58px;z-index:80}html[dir="rtl"] .activity-dock{right:auto;left:0}.app-shell.rail-pinned{--rail-compact:58px}.app-shell.rail-pinned .activity-panel{position:absolute;width:302px;box-shadow:var(--shadow-md)}.app-shell.rail-pinned .activity-compact{display:flex}.page{padding:22px 16px 42px;padding-right:68px}html[dir="rtl"] .page{padding-right:16px;padding-left:68px}.topbar{padding:0 68px 0 16px}html[dir="rtl"] .topbar{padding:0 16px 0 68px}.dashboard-header,.case-page-head,.case-identity{align-items:flex-start;flex-direction:column}.board-toolbar{align-items:flex-start;flex-direction:column}.toolbar-right{width:100%;justify-content:space-between}.top-grid,.bottom-grid{grid-template-columns:1fr}.readiness-card,.bottom-grid .detail-card:last-child{grid-column:auto}.case-meta{width:100%;justify-content:space-between}.case-actions{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.filter-popover{right:70px;top:128px}.doc-row{min-width:760px}.document-table{overflow:auto}}
@media(max-width:560px){.topbar-title small{display:none}.topbar-actions .avatar{display:none}.dashboard-header h1{font-size:21px}.header-actions{width:100%}.header-actions .button{flex:1}.range-controls{width:100%;flex-wrap:wrap}.range-title{order:-1;width:100%;margin:0 0 5px}.team-stack{display:none}.view-switch{margin-inline-start:auto}.case-meta{display:grid;grid-template-columns:1fr 1fr}.case-person{align-items:flex-start}.case-name-row h1{font-size:17px}.activity-panel{width:min(302px,calc(100vw - 58px))}}

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

/* === V4 functional interaction layer === */
.sidebar{overflow:visible}
.sidebar-edge-toggle{position:absolute;top:20px;inset-inline-end:-16px;width:32px;height:32px;border:1px solid var(--gray-200);border-radius:10px;background:#fff;color:var(--gray-500);display:grid;place-items:center;cursor:pointer;z-index:5;box-shadow:0 5px 15px rgba(16,24,40,.08);transition:transform var(--fast) var(--ease),background var(--fast),color var(--fast),border-color var(--fast)}
.sidebar-edge-toggle:hover{background:var(--green-50);color:var(--green-900);border-color:var(--green-100);transform:translateX(2px)}
html[dir="rtl"] .sidebar-edge-toggle:hover{transform:translateX(-2px)}
.sidebar-edge-toggle svg{width:16px;height:16px;transition:transform var(--medium) var(--ease)}
.sidebar-collapsed .sidebar-edge-toggle svg{transform:rotate(180deg)}
.sidebar-edge-toggle::after,.compact-stat::after{content:attr(data-tooltip);position:absolute;inset-inline-start:calc(100% + 9px);top:50%;transform:translate(4px,-50%);background:var(--gray-900);color:#fff;border-radius:7px;padding:6px 8px;font-size:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--fast),transform var(--fast);z-index:150}
html[dir="rtl"] .sidebar-edge-toggle::after,html[dir="rtl"] .compact-stat::after{transform:translate(-4px,-50%)}
.sidebar-edge-toggle:hover::after,.compact-stat:hover::after{opacity:1;transform:translate(0,-50%)}

.sidebar-search{position:relative;cursor:text}
.search-results{position:absolute;top:112px;left:14px;right:14px;background:#fff;border:1px solid var(--gray-200);border-radius:12px;box-shadow:var(--shadow-md);padding:6px;z-index:80;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity var(--fast),transform var(--fast);max-height:330px;overflow:auto}
.search-results.is-open{opacity:1;transform:none;pointer-events:auto}
.search-result{width:100%;border:0;background:transparent;border-radius:9px;padding:9px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;cursor:pointer;transition:background var(--fast)}
.search-result:hover,.search-result.is-active{background:var(--green-50)}
.search-result-icon{width:30px;height:30px;border-radius:9px;background:var(--gray-50);color:var(--green-900);display:grid;place-items:center}.search-result-icon svg{width:15px}
.search-result-copy{display:flex;flex-direction:column;min-width:0}.search-result-copy b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-copy span{font-size:7px;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result em{font-style:normal;font-size:7px;color:var(--gray-400)}
.search-empty{padding:18px;text-align:center;color:var(--gray-400);font-size:9px}

.sidebar-compact-stats{display:none;margin-top:auto;flex-direction:column;align-items:center;gap:9px;padding:12px 0;border-top:1px solid var(--gray-100)}
.compact-stat{--tone:var(--blue);width:38px;height:38px;border-radius:50%;border:1px solid color-mix(in srgb,var(--tone) 24%,var(--gray-200));background:color-mix(in srgb,var(--tone) 8%,white);color:var(--tone);display:grid;place-items:center;position:relative;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}
.compact-stat svg{width:14px;height:14px}.compact-stat b{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--tone);color:#fff;border:2px solid #fff;font-size:7px;display:grid;place-items:center}
.compact-stat:hover{transform:translateY(-2px) scale(1.04);box-shadow:var(--shadow-sm);border-color:var(--tone)}
.compact-stat.blue{--tone:var(--blue)}.compact-stat.amber{--tone:var(--amber)}.compact-stat.violet{--tone:var(--violet)}.compact-stat.green{--tone:var(--green-500)}
.sidebar-collapsed .sidebar-compact-stats{display:flex}
.sidebar-collapsed .sidebar-bottom{margin-top:0}
.sidebar-collapsed .quick-filters,.sidebar-collapsed .staff-legend{display:none}
.filter-item.is-active{background:var(--green-50);color:var(--green-900)}

.top-profile-trigger{height:40px;border:1px solid transparent;background:transparent;border-radius:11px;padding:2px 4px 2px 3px;display:flex;align-items:center;gap:3px;cursor:pointer;transition:background var(--fast),border-color var(--fast),transform var(--fast)}
.top-profile-trigger:hover,.top-profile-trigger[aria-expanded="true"]{background:#fff;border-color:var(--gray-200);transform:translateY(-1px)}
.top-profile-trigger>svg{width:13px;height:13px;color:var(--gray-400);transform:rotate(90deg);transition:transform var(--fast)}
.top-profile-trigger[aria-expanded="true"]>svg{transform:rotate(-90deg)}
.notification-button.has-new{animation:notificationPulse 520ms var(--ease)}
@keyframes notificationPulse{0%{transform:scale(1)}35%{transform:scale(1.08);box-shadow:0 0 0 7px rgba(239,106,106,.12)}100%{transform:scale(1)}}

.notification-panel,.profile-menu,.traveler-popover{position:fixed;z-index:115;background:#fff;border:1px solid var(--gray-200);border-radius:13px;box-shadow:var(--shadow-md);opacity:0;transform:translateY(-7px) scale(.985);pointer-events:none;transition:opacity var(--fast),transform var(--fast)}
.notification-panel.is-open,.profile-menu.is-open,.traveler-popover.is-open{opacity:1;transform:none;pointer-events:auto}
.notification-panel{width:min(390px,calc(100vw - 24px));max-height:min(640px,calc(100vh - 80px));overflow:hidden;display:flex;flex-direction:column}
.floating-panel-head{padding:13px 14px;border-bottom:1px solid var(--gray-100);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.floating-panel-head>div{display:flex;flex-direction:column}.floating-panel-head strong{font-size:12px}.floating-panel-head span{font-size:8px;color:var(--gray-500);margin-top:2px}
.notification-tabs{height:42px;border-bottom:1px solid var(--gray-100);display:flex;align-items:center;padding:0 12px;gap:5px}.notification-tabs button{border:0;background:transparent;border-radius:8px;padding:7px 9px;font-size:8px;font-weight:700;color:var(--gray-500);cursor:pointer}.notification-tabs button.is-active{background:var(--green-50);color:var(--green-900)}.notification-tabs .mark-read{margin-inline-start:auto;color:var(--green-900)}.notification-tabs b{font-size:7px;background:var(--gray-100);border-radius:999px;padding:2px 5px}
.notification-list{padding:8px;overflow:auto;display:flex;flex-direction:column;gap:5px}
.notification-item{width:100%;border:1px solid transparent;background:transparent;border-radius:10px;padding:10px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;text-align:left;cursor:pointer;transition:background var(--fast),border-color var(--fast),transform var(--fast)}.notification-item:hover{background:var(--gray-50);border-color:var(--gray-200);transform:translateY(-1px)}.notification-item.is-unread{background:#fbfffd;border-color:var(--green-100)}
.notification-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--green-50);color:var(--green-900)}.notification-icon svg{width:15px}.notification-item[data-type="delivery_date_changed"] .notification-icon{background:#fff5e9;color:#a6651d}.notification-item[data-type="assignee_changed"] .notification-icon{background:#f2f5ff;color:#4d72c9}.notification-item[data-type="document_rejected"] .notification-icon{background:#fff0f0;color:#b64242}
.notification-copy{display:flex;flex-direction:column;min-width:0}.notification-copy b{font-size:9px}.notification-copy span{font-size:8px;color:var(--gray-500);line-height:1.5;margin-top:2px}.notification-copy small{font-size:7px;color:var(--gray-400);margin-top:4px}.notification-dot{width:7px;height:7px;border-radius:50%;background:var(--green-500);margin-top:4px}.notification-empty{padding:32px;text-align:center;color:var(--gray-400);font-size:9px}

.profile-menu{width:230px;padding:7px}.profile-menu-user{display:flex;align-items:center;gap:9px;padding:9px;border-bottom:1px solid var(--gray-100);margin-bottom:4px}.profile-menu-user>div{display:flex;flex-direction:column;min-width:0}.profile-menu-user b{font-size:9px}.profile-menu-user span{font-size:7px;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-menu>button{width:100%;height:38px;border:0;background:transparent;border-radius:9px;padding:0 10px;display:flex;align-items:center;gap:9px;font-size:9px;font-weight:600;cursor:pointer;text-align:left;transition:background var(--fast),color var(--fast),transform var(--fast)}.profile-menu>button:hover{background:var(--gray-50);transform:translateX(2px)}html[dir="rtl"] .profile-menu>button:hover{transform:translateX(-2px)}.profile-menu>button svg{width:16px;color:var(--gray-500)}.profile-menu>button.danger{color:#b64242}.profile-menu>button.danger svg{color:#b64242}

.traveler-popover{width:min(430px,calc(100vw - 24px));overflow:hidden}
.traveler-table{padding:8px;display:flex;flex-direction:column;gap:7px;max-height:360px;overflow:auto}
.traveler-row{width:100%;border:1px solid var(--gray-200);border-inline-start:4px solid var(--red);background:#fff;border-radius:10px;padding:9px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),background var(--fast)}.traveler-row.is-complete{border-inline-start-color:var(--green-500);background:#fbfffd}.traveler-row.is-incomplete{border-inline-start-color:var(--red);background:#fffafa}.traveler-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.traveler-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--gray-100);font-size:8px;font-weight:800;color:var(--gray-700)}.traveler-info{display:flex;flex-direction:column;min-width:0}.traveler-info b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.traveler-info span{font-size:7px;color:var(--gray-500);margin-top:2px}.traveler-state{display:flex;flex-direction:column;align-items:flex-end}.traveler-state b{font-size:8px;color:var(--green-900)}.traveler-row.is-incomplete .traveler-state b{color:#b64242}.traveler-state span{font-size:7px;color:var(--gray-400)}
.traveler-count,.people-badge{cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),background var(--fast)}.traveler-count:hover,.people-badge:hover{transform:scale(1.08);box-shadow:0 5px 12px rgba(100,116,139,.18);background:#dcf4e8}

.profile-dialog{width:min(620px,calc(100vw - 30px))}.profile-summary{display:flex;align-items:center;gap:11px;background:var(--gray-50);border:1px solid var(--gray-100);border-radius:12px;padding:12px;margin-bottom:16px}.profile-summary>div{display:flex;flex-direction:column}.profile-summary b{font-size:11px}.profile-summary span{font-size:8px;color:var(--gray-500)}.password-section{margin-top:8px;border-top:1px solid var(--gray-100);padding-top:15px}.password-section>div:first-child{display:flex;flex-direction:column;margin-bottom:11px}.password-section strong{font-size:10px}.password-section span{font-size:8px;color:var(--gray-500);margin-top:2px}.form-error{min-height:17px;margin:0;color:#b64242;font-size:8px}

.people-badge{border:1px solid var(--green-100)}
.activity-timeline{position:relative}.activity-timeline::before{content:"";position:absolute;top:18px;bottom:12px;left:11px;width:1px;background:var(--gray-200)}html[dir="rtl"] .activity-timeline::before{left:auto;right:11px}.activity-timeline li{position:relative}.activity-timeline li:first-child .timeline-icon{background:var(--green-500);color:#fff;box-shadow:0 0 0 4px rgba(100,116,139,.12)}
.activity-current{border:1px solid var(--gray-100)}
.compact-timeline li:first-child i{background:var(--staff);box-shadow:0 0 0 3px color-mix(in srgb,var(--staff) 13%,transparent)}.compact-timeline li:last-child i{background:var(--gray-300);box-shadow:none}

.case-card [data-action]{position:relative}.case-card .traveler-count{border:1px solid var(--green-100)}
.case-card.is-delivered .assignee-button,.case-card.is-delivered .traveler-count{pointer-events:auto}

@media(max-width:1180px){.sidebar-edge-toggle{display:none}.sidebar-compact-stats{display:flex}.quick-filters,.staff-legend{display:none}}
@media(max-width:820px){.sidebar-edge-toggle{display:grid;inset-inline-end:-16px}.search-results{top:112px}.notification-panel{max-height:calc(100vh - 76px)}.profile-menu{width:220px}.traveler-popover{width:calc(100vw - 28px)}}

/* Integrated New Contract Wizard is rendered directly in the document; see new-contract.css */
.dashboard-header-actions-only{justify-content:flex-end;padding-top:18px;margin-bottom:14px}
@media(max-width:720px){.dashboard-header-actions-only{padding:12px 16px 0}.topbar-title span{font-size:12px}}


#contractWizardRoot{
  --green-25:#f5fcf8;
  --green-50:#e7f6ef;
  --green-100:#c2cedd;
  --green-300:#94a3b8;
  --green-500:#64748b;
  --green-700:#475569;
  --green-900:#475569;
  --gray-25:#fcfcfd;
  --gray-50:#f9fafb;
  --gray-100:#f2f4f7;
  --gray-200:#eaecf0;
  --gray-300:#d0d5dd;
  --gray-400:#98a2b3;
  --gray-500:#667085;
  --gray-700:#344054;
  --gray-900:#101828;
  --red-50:#fef3f2;
  --red-500:#f04438;
  --amber-50:#fff7e8;
  --amber-500:#f79009;
  --purple-50:#f4f3ff;
  --purple-500:#7f56d9;
  --blue-50:#eff8ff;
  --blue-500:#2e90fa;
  --shadow-lg:0 28px 80px rgba(16,24,40,.24);
  --shadow-md:0 12px 32px rgba(16,24,40,.10);
  --ease:cubic-bezier(.22,.8,.24,1);
}#contractWizardRoot *{box-sizing:border-box}#contractWizardRoot, #contractWizardRoot{min-height:100%;margin:0}#contractWizardRoot{
  font-family:"Open Sans",Inter,Arial,sans-serif;
  color:var(--gray-900);
  background:
    radial-gradient(circle at 14% 18%,rgba(100,116,139,.14),transparent 26%),
    radial-gradient(circle at 88% 12%,rgba(46,144,250,.10),transparent 23%),
    linear-gradient(145deg,#eef4f1,#e7edf1);
}#contractWizardRoot button, #contractWizardRoot input{font:inherit}#contractWizardRoot button{cursor:pointer}#contractWizardRoot svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}#contractWizardRoot [hidden]{display:none!important}#contractWizardRoot .demo-shell{min-height:100vh;display:grid;place-items:center;padding:32px}#contractWizardRoot .demo-card{width:min(760px,100%);display:flex;align-items:center;justify-content:space-between;gap:28px;background:#fff;border:1px solid rgba(255,255,255,.75);border-radius:24px;padding:32px;box-shadow:var(--shadow-md)}#contractWizardRoot .demo-card h1{margin:6px 0 8px;font-size:30px}#contractWizardRoot .demo-card p{margin:0;color:var(--gray-500)}#contractWizardRoot .eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--green-700)}#contractWizardRoot .button{border:0;border-radius:11px;min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;transition:transform .16s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease),opacity .16s var(--ease)}#contractWizardRoot .button:hover:not(:disabled){transform:translateY(-1px)}#contractWizardRoot .button:active:not(:disabled){transform:translateY(0) scale(.985)}#contractWizardRoot .button:disabled{opacity:.45;cursor:not-allowed}#contractWizardRoot .button-primary{background:var(--green-500);color:#fff;box-shadow:0 8px 18px rgba(100,116,139,.22)}#contractWizardRoot .button-primary:hover:not(:disabled){background:var(--green-700);box-shadow:0 10px 22px rgba(71,85,105,.28)}#contractWizardRoot .button-secondary{background:#fff;color:var(--gray-700);border:1px solid var(--gray-200)}#contractWizardRoot .icon-button{width:42px;height:42px;border:1px solid var(--gray-200);border-radius:12px;background:#fff;color:var(--gray-700);display:grid;place-items:center;transition:.18s var(--ease)}#contractWizardRoot .icon-button:hover{background:var(--gray-50);transform:rotate(3deg)}#contractWizardRoot .text-button{border:0;background:transparent;color:var(--green-700);font-weight:700;padding:6px 8px;border-radius:8px;transition:.16s var(--ease)}#contractWizardRoot .text-button:hover{background:var(--green-50)}#contractWizardRoot .wizard-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.38);backdrop-filter:blur(8px);opacity:0;z-index:40;transition:opacity .24s var(--ease)}#contractWizardRoot .wizard-backdrop.is-visible{opacity:1}#contractWizardRoot .wizard-modal{
  position:fixed;
  z-index:50;
  left:50%;top:50%;
  width:min(980px,calc(100vw - 36px));
  height:min(760px,calc(100vh - 36px));
  transform:translate(-50%,-47%) scale(.975);
  opacity:0;
  pointer-events:none;
  background:#fff;
  border:1px solid rgba(255,255,255,.84);
  border-radius:28px;
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  transition:transform .28s var(--ease),opacity .24s var(--ease);
}#contractWizardRoot .wizard-modal.is-open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}#contractWizardRoot .wizard-header{min-height:86px;display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid var(--gray-200)}#contractWizardRoot .wizard-brand-row{display:flex;align-items:center;gap:13px}#contractWizardRoot .brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,var(--green-500),var(--green-900));color:#fff;font-size:20px;font-weight:800;box-shadow:0 8px 18px rgba(71,85,105,.22)}#contractWizardRoot .wizard-header h2{margin:4px 0 0;font-size:24px}#contractWizardRoot .wizard-progress-wrap{padding:14px 26px 15px;border-bottom:1px solid var(--gray-200)}#contractWizardRoot .wizard-progress-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--gray-500);margin-bottom:10px}#contractWizardRoot .wizard-progress-track{height:4px;background:var(--gray-100);border-radius:999px;overflow:hidden}#contractWizardRoot .wizard-progress-fill{height:100%;width:25%;border-radius:999px;background:linear-gradient(90deg,var(--green-500),#94a3b8);transition:width .34s var(--ease)}#contractWizardRoot .wizard-stage{position:relative;overflow:auto;scroll-behavior:smooth;background:linear-gradient(180deg,#fff,var(--gray-25));padding:26px 30px 34px}#contractWizardRoot .wizard-stage::-webkit-scrollbar{width:9px}#contractWizardRoot .wizard-stage::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:999px;border:2px solid #fff}#contractWizardRoot .wizard-step{display:none;opacity:0;transform:translateX(28px)}#contractWizardRoot .wizard-step.is-active{display:block;animation:wlw-stepIn .34s var(--ease) both}#contractWizardRoot .wizard-step.is-leaving-left{display:block;position:absolute;inset:26px 30px auto;animation:wlw-stepOutLeft .28s var(--ease) both}#contractWizardRoot .wizard-step.is-leaving-right{display:block;position:absolute;inset:26px 30px auto;animation:wlw-stepOutRight .28s var(--ease) both}#contractWizardRoot .wizard-step.from-left{animation-name:wlw-stepInLeft}@keyframes wlw-stepIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}@keyframes wlw-stepInLeft{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}@keyframes wlw-stepOutLeft{to{opacity:0;transform:translateX(-28px)}}@keyframes wlw-stepOutRight{to{opacity:0;transform:translateX(28px)}}#contractWizardRoot .step-heading{display:flex;gap:16px;align-items:flex-start;margin:0 0 24px}#contractWizardRoot .step-heading.compact{margin-bottom:22px}#contractWizardRoot .centered-heading{width:min(860px,100%);margin-left:auto;margin-right:auto}#contractWizardRoot .step-number{width:42px;height:42px;flex:0 0 auto;border-radius:13px;display:grid;place-items:center;background:var(--green-50);color:var(--green-900);font-size:13px;font-weight:800}#contractWizardRoot .step-heading h3{margin:2px 0 5px;font-size:25px;line-height:1.2}#contractWizardRoot .step-heading p{margin:0;color:var(--gray-500);line-height:1.55}#contractWizardRoot .route-shell{width:min(860px,100%);margin:0 auto}#contractWizardRoot .route-experience{display:flex;align-items:center;justify-content:center;gap:0;width:100%;padding:8px 0 16px;min-height:146px;overflow:visible}#contractWizardRoot .route-select-card{position:relative;flex:0 0 min(390px,100%);width:min(390px,100%);max-width:390px;border:1px solid var(--gray-200);background:#fff;border-radius:18px;padding:16px;box-shadow:0 8px 26px rgba(16,24,40,.04);transition:flex-basis .38s var(--ease),max-width .38s var(--ease),width .38s var(--ease),padding .32s var(--ease),transform .38s var(--ease),border-color .22s var(--ease),box-shadow .22s var(--ease),opacity .24s var(--ease),visibility 0s linear .28s}#contractWizardRoot .route-select-card.is-selected{border-color:var(--green-100);box-shadow:0 14px 30px rgba(100,116,139,.09)}#contractWizardRoot .route-select-card.nationality-card{transform:translateX(0)}#contractWizardRoot .route-select-card.destination-card{flex-basis:0;width:0;max-width:0;padding-left:0;padding-right:0;border-left-width:0;border-right-width:0;opacity:0;visibility:hidden;transform:translateX(54px) scale(.96);pointer-events:none;overflow:visible}#contractWizardRoot .route-experience.has-nationality .nationality-card{flex-basis:calc((100% - 72px)/2);width:calc((100% - 72px)/2);max-width:394px;transform:translateX(0)}#contractWizardRoot .route-experience.has-nationality .destination-card{flex-basis:calc((100% - 72px)/2);width:calc((100% - 72px)/2);max-width:394px;padding-left:16px;padding-right:16px;border-left-width:1px;border-right-width:1px;opacity:1;visibility:visible;transform:translateX(0) scale(1);pointer-events:auto;transition-delay:0s,0s,0s,0s,0s,.06s,0s,0s,0s,0s}#contractWizardRoot .route-card-label{font-size:13px;font-weight:700;color:var(--gray-700);margin-bottom:9px}#contractWizardRoot .route-combobox{width:100%;height:54px;border:1px solid var(--gray-200);border-radius:13px;background:var(--gray-25);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:0 14px;text-align:left;color:var(--gray-900);transition:.18s var(--ease)}#contractWizardRoot .route-combobox:hover:not(:disabled){border-color:var(--green-100);background:#fff}#contractWizardRoot .route-combobox:focus-visible{outline:3px solid rgba(100,116,139,.15);border-color:var(--green-500)}#contractWizardRoot .route-combobox:disabled{cursor:not-allowed;color:var(--gray-400)}#contractWizardRoot .route-flag{font-size:22px}#contractWizardRoot .route-value{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#contractWizardRoot .route-connector{flex:0 0 0;width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--green-500);opacity:0;transform:scale(.7);transition:flex-basis .38s var(--ease),width .38s var(--ease),opacity .2s var(--ease) .12s,transform .32s var(--ease) .08s}#contractWizardRoot .route-connector span{display:none}#contractWizardRoot .route-connector svg{width:25px;height:25px;flex:0 0 25px}#contractWizardRoot .route-experience.has-nationality .route-connector{flex-basis:72px;width:72px;opacity:1;transform:scale(1)}#contractWizardRoot .smart-dropdown{position:absolute;z-index:8;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--gray-200);border-radius:15px;box-shadow:var(--shadow-md);padding:10px;transform-origin:top;animation:wlw-dropdownIn .18s var(--ease) both}@keyframes wlw-dropdownIn{from{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}#contractWizardRoot .dropdown-search{height:42px;border:1px solid var(--gray-200);border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 11px;color:var(--gray-400)}#contractWizardRoot .dropdown-search svg{width:17px;height:17px}#contractWizardRoot .dropdown-search input{border:0;outline:0;width:100%;color:var(--gray-900)}#contractWizardRoot .dropdown-list{max-height:250px;overflow:auto;margin-top:8px;padding-right:2px}#contractWizardRoot .dropdown-section-label{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--gray-400);padding:8px 9px 5px}#contractWizardRoot .dropdown-option{width:100%;border:0;background:transparent;border-radius:9px;display:flex;align-items:center;gap:10px;padding:9px 10px;text-align:left;color:var(--gray-700);transition:.14s var(--ease)}#contractWizardRoot .dropdown-option:hover{background:var(--green-50);color:var(--green-900);transform:translateX(2px)}#contractWizardRoot .dropdown-option .flag{font-size:18px}#contractWizardRoot .dropdown-option small{margin-left:auto;color:var(--gray-400)}#contractWizardRoot .dropdown-divider{height:1px;background:var(--gray-100);margin:5px 0}#contractWizardRoot .route-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--green-100);background:var(--green-25);border-radius:14px;padding:13px 15px;animation:wlw-softRise .24s var(--ease) both}#contractWizardRoot .route-summary-main{display:flex;align-items:center;gap:9px;min-width:0}#contractWizardRoot .summary-flag{font-size:20px}#contractWizardRoot .summary-arrow{color:var(--green-500);font-weight:800}@keyframes wlw-softRise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#contractWizardRoot .route-chip-row{width:min(860px,100%);margin:0 auto 18px}#contractWizardRoot .route-chip{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid var(--green-100);background:var(--green-25);border-radius:12px;color:var(--gray-700);animation:wlw-softRise .22s var(--ease) both}#contractWizardRoot .route-chip b{color:var(--gray-900)}#contractWizardRoot .visa-workspace{width:min(860px,100%);margin:0 auto}#contractWizardRoot .visa-selection-panel{border:1px solid var(--gray-200);border-radius:18px;padding:18px;background:#fff;transition:max-height .35s var(--ease),opacity .24s var(--ease),transform .35s var(--ease),padding .35s var(--ease),border-color .35s var(--ease);overflow:hidden}#contractWizardRoot .visa-selection-panel.is-collapsed{max-height:0!important;opacity:0;transform:translateY(-12px) scale(.985);padding-top:0;padding-bottom:0;border-color:transparent;pointer-events:none}#contractWizardRoot .section-heading-inline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}#contractWizardRoot .section-heading-inline h4{margin:4px 0 0;font-size:20px}#contractWizardRoot .mini-note{font-size:12px;color:var(--gray-400);padding-top:4px}#contractWizardRoot .visa-price-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:16px}#contractWizardRoot .option-card-grid, #contractWizardRoot .price-grid{display:grid;gap:10px}#contractWizardRoot .option-card{border:1px solid var(--gray-200);border-radius:13px;background:#fff;padding:14px;display:flex;align-items:flex-start;gap:12px;text-align:left;transition:.18s var(--ease);animation:wlw-optionIn .22s var(--ease) both}#contractWizardRoot .option-card:hover{border-color:var(--green-100);transform:translateY(-2px);box-shadow:0 10px 24px rgba(16,24,40,.06)}#contractWizardRoot .option-card.is-selected{border-color:var(--green-500);background:var(--green-25);box-shadow:0 0 0 3px rgba(100,116,139,.10)}#contractWizardRoot .option-icon{width:38px;height:38px;border-radius:11px;background:var(--gray-50);display:grid;place-items:center;font-size:18px;flex:0 0 auto}#contractWizardRoot .option-card strong{display:block;margin-bottom:4px}#contractWizardRoot .option-card span{display:block;color:var(--gray-500);font-size:12px;line-height:1.45}@keyframes wlw-optionIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#contractWizardRoot .price-panel{border:1px solid var(--gray-200);background:var(--gray-25);border-radius:14px;padding:12px;min-height:180px}#contractWizardRoot .empty-state{height:100%;min-height:150px;display:grid;place-items:center;text-align:center;color:var(--gray-400);padding:18px}#contractWizardRoot .price-card{border:1px solid var(--gray-200);border-radius:12px;background:#fff;padding:13px;text-align:left;transition:.18s var(--ease);animation:wlw-optionIn .22s var(--ease) both}#contractWizardRoot .price-card:hover{border-color:var(--green-100);transform:translateX(2px)}#contractWizardRoot .price-card.is-selected{border-color:var(--green-500);background:var(--green-25);box-shadow:0 0 0 3px rgba(100,116,139,.10)}#contractWizardRoot .price-card strong{font-size:20px}#contractWizardRoot .price-card span{display:block;color:var(--gray-500);font-size:12px;margin-top:5px}#contractWizardRoot .selected-product-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;border:1px solid var(--green-100);background:linear-gradient(135deg,var(--green-25),#fff);border-radius:16px;padding:13px 15px;box-shadow:0 10px 24px rgba(100,116,139,.07);animation:wlw-productCompact .34s var(--ease) both}#contractWizardRoot .selected-product-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#fff;border:1px solid var(--green-100);font-size:20px}#contractWizardRoot .selected-product-summary h4{margin:3px 0 2px;font-size:18px}#contractWizardRoot .selected-product-summary p{margin:0;color:var(--gray-500);font-size:12px}@keyframes wlw-productCompact{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}#contractWizardRoot .passport-section{margin-top:18px;border:1px solid var(--gray-200);border-radius:18px;padding:18px;background:#fff;animation:wlw-passportReveal .38s var(--ease) both}@keyframes wlw-passportReveal{from{opacity:0;transform:translateY(30px);clip-path:inset(0 0 60% 0 round 18px)}to{opacity:1;transform:none;clip-path:inset(0 round 18px)}}#contractWizardRoot .passport-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}#contractWizardRoot .passport-section-head h4{margin:4px 0 3px;font-size:20px}#contractWizardRoot .passport-section-head p{margin:0;color:var(--gray-500);font-size:13px}#contractWizardRoot .passport-limit{font-size:11px;color:var(--gray-500);background:var(--gray-50);padding:6px 9px;border-radius:999px}#contractWizardRoot .upload-zone{width:100%;min-height:170px;border:1.5px dashed var(--green-100);border-radius:16px;background:linear-gradient(135deg,var(--green-25),#fff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--gray-700);transition:.2s var(--ease)}#contractWizardRoot .upload-zone:hover, #contractWizardRoot .upload-zone.is-dragover{border-color:var(--green-500);background:var(--green-50);transform:translateY(-2px);box-shadow:0 14px 30px rgba(100,116,139,.10)}#contractWizardRoot .upload-zone span{font-size:12px;color:var(--gray-500)}#contractWizardRoot .upload-icon{width:46px;height:46px;border-radius:14px;background:#fff;display:grid!important;place-items:center;color:var(--green-700);box-shadow:0 8px 18px rgba(16,24,40,.06)}#contractWizardRoot .passport-toolbar{display:flex;align-items:center;justify-content:space-between;margin:13px 0 9px;color:var(--gray-500);font-size:12px}#contractWizardRoot .passport-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}#contractWizardRoot .passport-card{position:relative;border:1px solid var(--gray-200);border-radius:13px;background:#fff;overflow:hidden;animation:wlw-optionIn .24s var(--ease) both}#contractWizardRoot .passport-preview{height:90px;background:var(--gray-100);display:grid;place-items:center;overflow:hidden}#contractWizardRoot .passport-preview img{width:100%;height:100%;object-fit:cover}#contractWizardRoot .passport-preview span{font-size:28px}#contractWizardRoot .passport-meta{padding:9px}#contractWizardRoot .passport-meta strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#contractWizardRoot .passport-meta span{font-size:10px;color:var(--gray-500)}#contractWizardRoot .passport-status{display:inline-flex;align-items:center;gap:5px;margin-top:5px;font-size:10px;color:var(--green-700)}#contractWizardRoot .passport-status.is-reading{color:var(--blue-500)}#contractWizardRoot .passport-remove{position:absolute;right:7px;top:7px;width:26px;height:26px;border:0;border-radius:8px;background:rgba(255,255,255,.92);color:var(--gray-700);display:grid;place-items:center;box-shadow:0 4px 12px rgba(16,24,40,.12)}#contractWizardRoot .passport-remove svg{width:14px;height:14px}#contractWizardRoot .lead-card{border:1px solid var(--green-100);background:var(--green-25);border-radius:17px;padding:16px;margin-bottom:16px;animation:wlw-softRise .24s var(--ease) both}#contractWizardRoot .lead-grid{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:end}#contractWizardRoot .lead-person{display:flex;align-items:center;gap:12px}#contractWizardRoot .avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--green-900);font-weight:800;border:1px solid var(--green-100)}#contractWizardRoot .lead-person strong{display:block}#contractWizardRoot .lead-person span{display:block;color:var(--gray-500);font-size:12px;margin-top:4px}#contractWizardRoot .field{display:grid;gap:7px}#contractWizardRoot .field>span{font-size:12px;font-weight:700;color:var(--gray-700)}#contractWizardRoot .field small{font-weight:400;color:var(--gray-400)}#contractWizardRoot .field input{height:44px;border:1px solid var(--gray-300);border-radius:10px;padding:0 12px;outline:0;transition:.16s var(--ease)}#contractWizardRoot .field input:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.13)}#contractWizardRoot .phone-input{height:44px;border:1px solid var(--gray-300);border-radius:10px;background:#fff;display:flex;align-items:center;overflow:hidden}#contractWizardRoot .phone-prefix{height:100%;display:flex;align-items:center;padding:0 11px;background:var(--gray-50);border-right:1px solid var(--gray-200);font-weight:700;color:var(--gray-700)}#contractWizardRoot .phone-input input{border:0!important;box-shadow:none!important;flex:1;height:100%}#contractWizardRoot .table-card{border:1px solid var(--gray-200);border-radius:17px;background:#fff;overflow:hidden}#contractWizardRoot .table-card-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--gray-200)}#contractWizardRoot .table-card-head strong{display:block}#contractWizardRoot .table-card-head span:not(.status-pill){display:block;color:var(--gray-500);font-size:11px;margin-top:3px}#contractWizardRoot .table-scroll{overflow:auto}#contractWizardRoot .travelers-table{width:100%;border-collapse:collapse;min-width:700px}#contractWizardRoot .travelers-table th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);text-align:left;background:var(--gray-25);padding:11px 14px}#contractWizardRoot .travelers-table td{padding:13px 14px;border-top:1px solid var(--gray-100);font-size:12px}#contractWizardRoot .travelers-table tr{animation:wlw-optionIn .22s var(--ease) both}#contractWizardRoot .status-pill{display:inline-flex!important;align-items:center;padding:5px 8px;border-radius:999px;font-size:10px!important;font-weight:700}#contractWizardRoot .status-pill.success{background:var(--green-50);color:var(--green-900)}#contractWizardRoot .pricing-flow{width:min(860px,100%);margin:0 auto;display:grid;gap:14px}#contractWizardRoot .finance-card{border:1px solid var(--gray-200);border-radius:17px;background:#fff;padding:17px;transition:.28s var(--ease)}#contractWizardRoot .finance-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}#contractWizardRoot .finance-card-head h4{margin:4px 0 4px;font-size:19px}#contractWizardRoot .finance-card-head p{margin:0;color:var(--gray-500);font-size:12px}#contractWizardRoot .switch-control{position:relative;display:inline-flex}#contractWizardRoot .switch-control input{position:absolute;opacity:0;pointer-events:none}#contractWizardRoot .switch-control span{width:44px;height:24px;border-radius:999px;background:var(--gray-300);position:relative;transition:.18s var(--ease)}#contractWizardRoot .switch-control span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 5px rgba(16,24,40,.22);transition:.18s var(--ease)}#contractWizardRoot .switch-control input:checked+span{background:var(--green-500)}#contractWizardRoot .switch-control input:checked+span:after{transform:translateX(20px)}#contractWizardRoot .voucher-panel{margin-top:15px;animation:wlw-softRise .24s var(--ease) both}#contractWizardRoot .voucher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}#contractWizardRoot .voucher-card{position:relative;min-height:145px;border-radius:16px;padding:16px;color:#fff;overflow:hidden;box-shadow:0 10px 24px rgba(16,24,40,.12);animation:wlw-optionIn .25s var(--ease) both;transition:.2s var(--ease)}#contractWizardRoot .voucher-card:hover{transform:translateY(-3px)}#contractWizardRoot .voucher-card.blue{background:linear-gradient(140deg,#147fb0,#0c658f)}#contractWizardRoot .voucher-card.green{background:linear-gradient(140deg,#64748b,#334155)}#contractWizardRoot .voucher-card.purple{background:linear-gradient(140deg,#7f56d9,#5d3da8)}#contractWizardRoot .voucher-card:before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-40px;top:-45px;background:rgba(255,255,255,.12)}#contractWizardRoot .voucher-amount{font-size:24px;font-weight:800;margin:7px 0 13px}#contractWizardRoot .voucher-code{border:1px dashed rgba(255,255,255,.55);background:rgba(255,255,255,.10);border-radius:9px;padding:7px 8px;font-size:11px;font-weight:800;letter-spacing:.05em}#contractWizardRoot .voucher-counter{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.17);padding:5px;border-radius:999px}#contractWizardRoot .voucher-counter button{width:26px;height:26px;border:0;border-radius:50%;background:#fff;color:var(--gray-900);font-weight:800}#contractWizardRoot .voucher-counter b{min-width:16px;text-align:center}#contractWizardRoot .reward-stage.is-collapsed .reward-card{opacity:0;transform:translateY(-12px) scale(.98);max-height:0;padding-top:0;padding-bottom:0;border-color:transparent;overflow:hidden;pointer-events:none}#contractWizardRoot .voucher-compact-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--purple-50);background:linear-gradient(135deg,var(--purple-50),#fff);border-radius:14px;padding:13px 15px;animation:wlw-productCompact .32s var(--ease) both}#contractWizardRoot .voucher-compact-summary strong{display:block;margin-top:4px;color:var(--gray-900)}#contractWizardRoot .discount-stage{animation:wlw-softRise .3s var(--ease) both}#contractWizardRoot .discount-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px;animation:wlw-softRise .22s var(--ease) both}#contractWizardRoot .discount-fields .segmented{grid-column:1/-1}#contractWizardRoot .segmented{display:flex;background:var(--gray-100);padding:4px;border-radius:10px}#contractWizardRoot .segmented button{flex:1;border:0;background:transparent;border-radius:8px;height:34px;color:var(--gray-500);font-weight:700;font-size:12px}#contractWizardRoot .segmented button.is-active{background:#fff;color:var(--gray-900);box-shadow:0 2px 6px rgba(16,24,40,.08)}#contractWizardRoot .final-contract-summary{display:grid;gap:14px;animation:wlw-softRise .34s var(--ease) both}#contractWizardRoot .financial-summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gray-200);border-radius:16px;background:#fff;overflow:hidden}#contractWizardRoot .summary-metric{padding:14px 15px;border-right:1px solid var(--gray-200)}#contractWizardRoot .summary-metric:last-child{border-right:0}#contractWizardRoot .summary-metric span{display:block;color:var(--gray-500);font-size:11px}#contractWizardRoot .summary-metric strong{display:block;font-size:17px;margin-top:5px}#contractWizardRoot .summary-metric.is-primary{background:var(--green-25)}#contractWizardRoot .summary-metric.is-primary strong{color:var(--green-900)}#contractWizardRoot .customer-route-summary{border:1px solid var(--gray-200);background:#fff;border-radius:16px;padding:16px}#contractWizardRoot .customer-route-summary h4{margin:0 0 12px}#contractWizardRoot .customer-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#contractWizardRoot .customer-summary-block{background:var(--gray-25);border-radius:12px;padding:12px}#contractWizardRoot .customer-summary-block span{display:block;color:var(--gray-500);font-size:11px;margin-bottom:5px}#contractWizardRoot .customer-summary-block strong{display:block}#contractWizardRoot .customer-name-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}#contractWizardRoot .customer-name-chip{background:var(--green-50);color:var(--green-900);padding:6px 8px;border-radius:999px;font-size:11px;font-weight:700}#contractWizardRoot .result-card{border:1px solid var(--green-100);background:linear-gradient(135deg,var(--green-25),#fff);border-radius:17px;padding:17px;animation:wlw-contractResult .4s var(--ease) both}#contractWizardRoot .result-card h4{font-size:22px;margin:5px 0}#contractWizardRoot .result-card p{color:var(--gray-500);margin:0 0 13px}#contractWizardRoot .contract-link-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--green-100);background:#fff;border-radius:11px;padding:7px 7px 7px 11px}#contractWizardRoot .contract-link-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gray-700);font-size:12px}@keyframes wlw-contractResult{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}#contractWizardRoot .wizard-footer{min-height:74px;border-top:1px solid var(--gray-200);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:12px 22px;background:#fff}#contractWizardRoot .footer-status{text-align:center;color:var(--gray-500);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#contractWizardRoot .toast-region{position:fixed;right:22px;bottom:22px;z-index:100;display:grid;gap:9px}#contractWizardRoot .toast{min-width:280px;background:#fff;border:1px solid var(--gray-200);border-radius:13px;padding:12px 14px;box-shadow:var(--shadow-md);display:grid;gap:3px;animation:wlw-toastIn .22s var(--ease) both;transition:.2s var(--ease)}#contractWizardRoot .toast span{font-size:12px;color:var(--gray-500)}@keyframes wlw-toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (max-width:760px){#contractWizardRoot .wizard-modal{width:100vw;height:100vh;border-radius:0}#contractWizardRoot .wizard-stage{padding:22px 16px 28px}#contractWizardRoot .wizard-header, #contractWizardRoot .wizard-progress-wrap{padding-left:18px;padding-right:18px}#contractWizardRoot .route-experience{display:flex;flex-direction:column;gap:10px;min-height:auto}#contractWizardRoot .route-select-card, #contractWizardRoot .route-experience.has-nationality .nationality-card, #contractWizardRoot .route-experience.has-nationality .destination-card{width:100%;max-width:none;flex-basis:auto;transform:none}#contractWizardRoot .route-select-card.destination-card{height:0;max-height:0;padding-top:0;padding-bottom:0;border-top-width:0;border-bottom-width:0;opacity:0;visibility:hidden;pointer-events:none}#contractWizardRoot .route-experience.has-nationality .destination-card{height:auto;max-height:160px;padding:16px;border-width:1px;opacity:1;visibility:visible;pointer-events:auto}#contractWizardRoot .route-connector{height:0!important;flex-basis:0!important;width:24px!important;transform:rotate(90deg) scale(.7)!important}#contractWizardRoot .route-experience.has-nationality .route-connector{height:24px!important;flex-basis:24px!important;transform:rotate(90deg) scale(1)!important}#contractWizardRoot .visa-price-layout{grid-template-columns:1fr}#contractWizardRoot .lead-grid, #contractWizardRoot .customer-summary-grid{grid-template-columns:1fr}#contractWizardRoot .voucher-grid{grid-template-columns:1fr}#contractWizardRoot .discount-fields{grid-template-columns:1fr}#contractWizardRoot .discount-fields .segmented{grid-column:auto}#contractWizardRoot .financial-summary{grid-template-columns:1fr 1fr}#contractWizardRoot .summary-metric:nth-child(2){border-right:0}#contractWizardRoot .summary-metric:nth-child(-n/**/+2){border-bottom:1px solid var(--gray-200)}#contractWizardRoot .wizard-footer{grid-template-columns:auto 1fr}#contractWizardRoot .footer-status{display:none}#contractWizardRoot .wizard-footer .button-primary{grid-column:2}}@media (prefers-reduced-motion:reduce){#contractWizardRoot *, #contractWizardRoot *:before, #contractWizardRoot *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}/* v5 progressive visa selection */#contractWizardRoot .visa-selection-panel{min-height:188px;display:grid;place-items:center;padding:20px 18px}#contractWizardRoot .visa-progressive-selector{width:min(760px,100%);display:flex;align-items:center;justify-content:center;gap:0;min-height:132px;overflow:visible}#contractWizardRoot .visa-select-card{position:relative;flex:0 0 min(390px,100%);width:min(390px,100%);max-width:390px;border:1px solid var(--gray-200);background:#fff;border-radius:17px;padding:14px;box-shadow:0 8px 24px rgba(16,24,40,.045);transition:flex-basis .38s var(--ease),max-width .38s var(--ease),width .38s var(--ease),padding .32s var(--ease),transform .38s var(--ease),border-color .22s var(--ease),box-shadow .22s var(--ease),opacity .24s var(--ease),visibility 0s linear .28s}#contractWizardRoot .visa-select-card.is-selected{border-color:var(--green-100);box-shadow:0 12px 28px rgba(100,116,139,.09)}#contractWizardRoot .price-select-card{flex-basis:0;width:0;max-width:0;padding-left:0;padding-right:0;border-left-width:0;border-right-width:0;opacity:0;visibility:hidden;transform:translateX(50px) scale(.97);pointer-events:none;overflow:visible}#contractWizardRoot .visa-progressive-selector.has-visa .visa-select-card[data-visa-card="type"]{flex-basis:calc((100% - 64px)/2);width:calc((100% - 64px)/2);max-width:348px}#contractWizardRoot .visa-progressive-selector.has-visa .price-select-card{flex-basis:calc((100% - 64px)/2);width:calc((100% - 64px)/2);max-width:348px;padding-left:14px;padding-right:14px;border-left-width:1px;border-right-width:1px;opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s,0s,0s,0s,0s,.05s,0s,0s,0s,0s}#contractWizardRoot .visa-selector-connector{flex:0 0 0;width:0;overflow:hidden;display:grid;place-items:center;color:var(--green-500);opacity:0;transform:scale(.72);transition:flex-basis .38s var(--ease),width .38s var(--ease),opacity .2s var(--ease) .12s,transform .32s var(--ease) .08s}#contractWizardRoot .visa-selector-connector svg{width:24px;height:24px}#contractWizardRoot .visa-progressive-selector.has-visa .visa-selector-connector{flex-basis:64px;width:64px;opacity:1;transform:scale(1)}#contractWizardRoot .visa-smart-dropdown{left:0;right:0;min-width:100%}#contractWizardRoot .visa-dropdown-option{width:100%;border:0;background:#fff;border-radius:10px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 10px;text-align:left;transition:.16s var(--ease);color:var(--gray-700)}#contractWizardRoot .visa-dropdown-option:hover, #contractWizardRoot .visa-dropdown-option.is-selected{background:var(--green-50);color:var(--green-900)}#contractWizardRoot .visa-dropdown-option .option-icon{width:34px;height:34px;border-radius:10px;background:var(--gray-50);display:grid;place-items:center;font-size:17px}#contractWizardRoot .visa-dropdown-option span:nth-child(2){display:grid;gap:2px}#contractWizardRoot .visa-dropdown-option strong{font-size:13px}#contractWizardRoot .visa-dropdown-option small{font-size:10px;color:var(--gray-500)}#contractWizardRoot .visa-selection-panel.is-collapsed{min-height:0}/* compact passport workspace: designed to remain inside the modal viewport */#contractWizardRoot .passport-section{margin-top:14px;padding:14px 16px}#contractWizardRoot .passport-section-head{margin-bottom:10px;align-items:center}#contractWizardRoot .passport-section-head h4{font-size:18px}#contractWizardRoot .passport-section-head p{font-size:12px}#contractWizardRoot .upload-zone{min-height:104px;border-radius:14px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;justify-content:center;text-align:left;padding:16px 24px;column-gap:13px;row-gap:3px}#contractWizardRoot .upload-zone .upload-icon{grid-row:1/3;width:40px;height:40px;border-radius:12px}#contractWizardRoot .upload-zone strong{align-self:end}#contractWizardRoot .upload-zone>span:last-child{align-self:start}#contractWizardRoot .passport-toolbar{margin-top:8px}#contractWizardRoot .passport-grid{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:2px 1px 4px;scrollbar-width:thin}#contractWizardRoot .passport-card{flex:0 0 106px;min-width:106px;padding:7px;border-radius:12px;display:block;position:relative;min-height:112px}#contractWizardRoot .passport-preview{height:52px;border-radius:8px}#contractWizardRoot .passport-preview img{width:100%;height:100%;object-fit:cover}#contractWizardRoot .passport-meta{margin-top:5px;display:block}#contractWizardRoot .passport-meta strong{font-size:9px;line-height:1.2;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#contractWizardRoot .passport-meta>span{display:none}#contractWizardRoot .passport-status{font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#contractWizardRoot .passport-remove{width:22px;height:22px;right:4px;top:4px}/* voucher selection stays open while quantities change */#contractWizardRoot .voucher-panel-actions{margin-top:12px;border-top:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:12px}#contractWizardRoot .voucher-panel-actions>span{font-size:12px;color:var(--gray-500)}#contractWizardRoot .button-small{min-height:34px;padding:7px 13px;font-size:12px}@media (max-width:760px){#contractWizardRoot .visa-progressive-selector{display:grid;gap:10px}#contractWizardRoot .visa-select-card, #contractWizardRoot .visa-progressive-selector.has-visa .visa-select-card[data-visa-card="type"], #contractWizardRoot .visa-progressive-selector.has-visa .price-select-card{width:100%;max-width:none;flex-basis:auto}#contractWizardRoot .price-select-card{display:none}#contractWizardRoot .visa-progressive-selector.has-visa .price-select-card{display:block;padding:14px;border-width:1px;opacity:1;visibility:visible;transform:none}#contractWizardRoot .visa-selector-connector{display:none}#contractWizardRoot .upload-zone{grid-template-columns:auto 1fr;padding:13px 16px;min-height:92px}}#contractWizardRoot.is-embedded{background:transparent;min-height:100vh}#contractWizardRoot.is-embedded .demo-shell{display:none}#contractWizardRoot.is-embedded .wizard-backdrop{background:rgba(16,24,40,.36);backdrop-filter:blur(5px)}
/* Workspace integration refinements */
#contractWizardRoot{--wizard-z:4000}
#contractWizardRoot .wizard-backdrop{z-index:var(--wizard-z)}
#contractWizardRoot .wizard-modal{z-index:calc(var(--wizard-z) + 1)}
#contractWizardRoot .upload-zone{min-height:116px;padding:16px}
#contractWizardRoot .passport-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;max-height:118px;overflow-y:auto}
#contractWizardRoot .passport-tile{min-height:92px;border-radius:12px}
#contractWizardRoot .passport-preview{height:54px}
#contractWizardRoot .passport-file-name{font-size:9px}
#contractWizardRoot .voucher-panel{overflow:visible}
#contractWizardRoot .voucher-card{user-select:none}
#contractWizardRoot .voucher-counter button{touch-action:manipulation}

#contractWizardRoot{position:fixed;inset:0;z-index:4000;min-height:0!important;margin:0!important;background:transparent!important;pointer-events:none}
#contractWizardRoot .wizard-backdrop.is-visible,#contractWizardRoot .wizard-modal.is-open,#contractWizardRoot .toast-region{pointer-events:auto}



/* v8 final integration */
:root{font-family:Inter,"Open Sans","Segoe UI",Arial,sans-serif}
body{font-family:Inter,"Open Sans","Segoe UI",Arial,sans-serif}
#contractWizardRoot{font-family:Inter,"Open Sans","Segoe UI",Arial,sans-serif}
#contractWizardRoot .wizard-modal{width:min(980px,calc(100vw - 40px));height:min(760px,calc(100vh - 40px));}
#contractWizardRoot .wizard-step[data-step="1"] .route-shell{padding-top:16px}
#contractWizardRoot .route-experience:not(.has-nationality) .nationality-card{margin-inline:auto}
#contractWizardRoot .route-experience:not(.has-nationality) .route-connector,
#contractWizardRoot .route-experience:not(.has-nationality) .destination-card{pointer-events:none}
#contractWizardRoot .visa-selection-panel.is-collapsed{display:none}
#contractWizardRoot .selected-product-summary[hidden],
#contractWizardRoot .passport-section[hidden]{display:none!important}
#contractWizardRoot .selected-product-summary:not([hidden]),
#contractWizardRoot .passport-section:not([hidden]){animation:wlw-riseIn .34s var(--ease) both}
@keyframes wlw-riseIn{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:none}}
#contractWizardRoot .passport-grid{display:flex!important;grid-template-columns:none!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important}
#contractWizardRoot .passport-card{flex:0 0 106px!important}
#contractWizardRoot .voucher-panel:not([hidden]){animation:wlw-expandIn .26s var(--ease) both;transform-origin:top}
@keyframes wlw-expandIn{from{opacity:0;transform:translateY(-8px) scaleY(.96)}to{opacity:1;transform:none}}
#contractWizardRoot .voucher-counter button{position:relative;z-index:2}
#contractWizardRoot .voucher-card{cursor:default}
#contractWizardRoot .wizard-modal.is-open{visibility:visible}
@media(max-width:760px){#contractWizardRoot .wizard-modal{width:100vw;height:100dvh}}

  
/* v9 dropdown, overflow and passport interaction fixes */
#contractWizardRoot .wizard-stage{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  scroll-padding-top:18px;
  scroll-padding-bottom:28px;
}
#contractWizardRoot .wizard-step,
#contractWizardRoot .route-shell,
#contractWizardRoot .visa-workspace{min-width:0;max-width:100%}
#contractWizardRoot .route-experience,
#contractWizardRoot .visa-progressive-selector{align-items:flex-start!important}
#contractWizardRoot .route-select-card,
#contractWizardRoot .visa-select-card{min-width:0!important}
#contractWizardRoot .route-select-card.destination-card,
#contractWizardRoot .price-select-card{overflow:hidden!important}
#contractWizardRoot .route-experience.has-nationality .destination-card,
#contractWizardRoot .visa-progressive-selector.has-visa .price-select-card{overflow:visible!important}
#contractWizardRoot .route-connector,
#contractWizardRoot .visa-selector-connector{align-self:flex-start;margin-top:49px}

/* Dropdowns remain in the normal document flow. This removes clipping and
   makes the search field reliably focusable on the first opening. */
#contractWizardRoot .smart-dropdown,
#contractWizardRoot .visa-smart-dropdown{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  min-width:0!important;
  margin-top:8px;
  z-index:20;
}
#contractWizardRoot .dropdown-search{background:#fff;position:sticky;top:0;z-index:2}
#contractWizardRoot .dropdown-search input{
  min-width:0;
  background:transparent;
  appearance:none;
  -webkit-appearance:none;
}
#contractWizardRoot .dropdown-list{
  max-height:min(238px,calc(100vh - 430px));
  overscroll-behavior:contain;
}
#contractWizardRoot .visa-selection-panel{
  overflow:visible!important;
  min-height:0!important;
  height:auto;
}
#contractWizardRoot .visa-selection-panel.is-collapsed{overflow:hidden!important}
#contractWizardRoot .visa-progressive-selector{min-height:0!important}

/* Compact passport area and automatic horizontal reveal of newly added files */
#contractWizardRoot .passport-section{padding:12px 14px!important}
#contractWizardRoot .passport-section-head{margin-bottom:8px!important}
#contractWizardRoot .upload-zone{
  min-height:82px!important;
  padding:12px 18px!important;
  transition:min-height .28s var(--ease),padding .28s var(--ease),background .2s var(--ease);
}
#contractWizardRoot .passport-section.has-passports .upload-zone{
  min-height:62px!important;
  padding:9px 16px!important;
}
#contractWizardRoot .passport-section.has-passports .upload-zone .upload-icon{
  width:34px!important;height:34px!important;border-radius:10px!important;
}
#contractWizardRoot .passport-section.has-passports .upload-zone>span:last-child{font-size:10px}
#contractWizardRoot .passport-toolbar{margin:6px 0!important}
#contractWizardRoot .passport-grid{
  display:flex!important;
  gap:7px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-width:100%;
  padding:2px 2px 6px!important;
  scroll-snap-type:x proximity;
  scroll-behavior:smooth;
  overscroll-behavior-x:contain;
}
#contractWizardRoot .passport-card{
  flex:0 0 90px!important;
  min-width:90px!important;
  min-height:96px!important;
  padding:6px!important;
  scroll-snap-align:end;
}
#contractWizardRoot .passport-preview{height:42px!important}
#contractWizardRoot .passport-meta{margin-top:4px!important;padding:0!important}
#contractWizardRoot .passport-meta strong{font-size:8.5px!important}
#contractWizardRoot .passport-status{font-size:7.5px!important;margin-top:2px!important}
#contractWizardRoot .passport-remove{width:20px!important;height:20px!important;right:3px!important;top:3px!important}

@media (max-width:760px){
  #contractWizardRoot .route-connector,
  #contractWizardRoot .visa-selector-connector{margin-top:0}
  #contractWizardRoot .smart-dropdown,
  #contractWizardRoot .visa-smart-dropdown{width:100%!important}
}



/* v11 dedicated Contracts list. Dashboard styles remain unchanged. */
.contracts-page-shell{padding:22px 24px 32px;max-width:1500px;margin:0 auto}.contracts-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.contracts-page-head h1{font-size:25px;margin:3px 0 6px}.contracts-page-head>div>p:last-child{margin:0;color:var(--gray-500);font-size:10px;max-width:680px;line-height:1.55}.contracts-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--gray-200);border-radius:13px;padding:10px 12px;margin-bottom:12px}.contracts-search{height:38px;min-width:300px;max-width:520px;flex:1;border:1px solid var(--gray-200);border-radius:9px;display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--gray-25)}.contracts-search:focus-within{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1);background:#fff}.contracts-search svg{width:16px;color:var(--gray-400)}.contracts-search input{border:0;outline:0;background:transparent;width:100%;font:inherit;font-size:10px;color:var(--gray-900)}.contracts-status-switch{display:flex;gap:3px;padding:3px;border-radius:9px;background:var(--gray-100)}.contracts-status-switch button{border:0;background:transparent;border-radius:7px;padding:8px 10px;font-size:9px;font-weight:700;color:var(--gray-500);cursor:pointer;transition:background var(--fast),color var(--fast),transform var(--fast)}.contracts-status-switch button:hover{color:var(--gray-900)}.contracts-status-switch button.is-active{background:#fff;color:var(--green-900);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.contracts-list-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.contracts-summary-card{background:#fff;border:1px solid var(--gray-200);border-radius:11px;padding:12px 13px}.contracts-summary-card span{display:block;font-size:8px;color:var(--gray-500);margin-bottom:4px}.contracts-summary-card strong{font-size:17px}.contracts-list{display:grid;gap:9px}.contract-list-row{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(150px,.85fr) minmax(110px,.65fr) minmax(120px,.7fr) minmax(110px,.62fr) auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--gray-200);border-left:4px solid var(--staff,var(--gray-300));border-radius:12px;padding:12px 13px;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}.contract-list-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:#c2cedd}.contract-list-person{display:flex;align-items:center;gap:10px;min-width:0}.contract-list-person .avatar{width:34px;height:34px;flex:0 0 auto}.contract-list-person-copy{min-width:0}.contract-list-person-copy b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-list-person-copy span{display:block;font-size:8px;color:var(--gray-500);margin-top:3px}.contract-list-cell{display:grid;gap:3px;min-width:0}.contract-list-cell small{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400)}.contract-list-cell strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-list-assignee{display:flex;align-items:center;gap:6px}.contract-list-assignee i{width:8px;height:8px;border-radius:50%;background:var(--staff)}.contract-list-progress{height:5px;border-radius:999px;background:var(--gray-100);overflow:hidden;margin-top:3px}.contract-list-progress i{display:block;height:100%;width:var(--progress);background:var(--green-500);border-radius:inherit}.contract-list-actions{display:flex;align-items:center;gap:7px}.contracts-empty{background:#fff;border:1px dashed var(--gray-300);border-radius:13px;padding:40px;text-align:center;color:var(--gray-500);font-size:10px}
@media(max-width:1050px){.contract-list-row{grid-template-columns:minmax(210px,1.2fr) minmax(140px,.8fr) minmax(100px,.6fr) minmax(105px,.6fr) auto}.contract-list-row .contract-list-cell:nth-of-type(4){display:none}.contracts-list-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.contracts-page-head,.contracts-list-toolbar{align-items:stretch;flex-direction:column}.contracts-search{min-width:0;max-width:none}.contracts-status-switch{overflow:auto}.contract-list-row{grid-template-columns:1fr auto}.contract-list-row>.contract-list-cell{display:none}.contracts-list-summary{grid-template-columns:1fr 1fr}.contract-list-person-copy b{font-size:10px}}

/* v10 contract workspace detail modules */
.summary-primary-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:14px;margin-top:14px}
.summary-secondary-grid{display:grid;grid-template-columns:1fr 1.15fr .9fr;gap:14px;margin-top:14px}
.recent-activity-wide{margin-top:14px}.card-heading>div{min-width:0}.card-subtitle{margin:3px 0 0;color:var(--gray-500);font-size:10px}
.travelers-summary-card,.itinerary-analysis-card{min-height:392px}.general-doc-strip{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--gray-200);background:var(--gray-50);border-radius:11px;margin:10px 0 12px}.general-doc-strip span{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700}.general-doc-strip svg{width:16px;color:var(--green-700)}.general-doc-strip strong{font-size:11px}.general-doc-strip i{font-style:normal;font-size:9px;color:var(--amber);background:#fff5e8;padding:4px 7px;border-radius:999px}
.traveler-readiness-list{display:grid;gap:8px}.traveler-readiness-row{border:1px solid var(--gray-200);border-left:4px solid var(--traveler-tone,var(--gray-300));border-radius:11px;padding:10px 11px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;cursor:pointer;background:#fff;transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}.traveler-readiness-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-xs)}.traveler-readiness-row.is-completed{--traveler-tone:var(--green-500);border-color:#c2cedd}.traveler-readiness-row.is-pending{--traveler-tone:var(--red);border-color:#f3caca}.traveler-readiness-row.is-review{--traveler-tone:var(--amber);border-color:#f6d8b5}.traveler-readiness-main{display:flex;gap:9px;align-items:center}.traveler-readiness-main .avatar{width:30px;height:30px}.traveler-readiness-copy{display:grid;gap:2px}.traveler-readiness-copy b{font-size:11px}.traveler-readiness-copy span{font-size:9px;color:var(--gray-500)}.traveler-readiness-meta{text-align:right;display:grid;gap:2px}.traveler-readiness-meta strong{font-size:10px}.traveler-readiness-meta span{font-size:9px;color:var(--gray-500)}
.qualification-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;margin:10px 0 7px}.qualification-head strong{font-size:13px}.qualification-scale{height:9px;border-radius:999px;background:linear-gradient(90deg,#e55f5f 0%,#f2b14e 48%,#64748b 100%);padding:2px}.qualification-scale>div{height:5px;width:calc(var(--score)*1%);border-radius:999px;background:#fff;box-shadow:0 0 0 2px rgba(16,24,40,.12);position:relative;transition:width .55s var(--ease)}.qualification-scale>div:after{content:"";position:absolute;right:-4px;top:-4px;width:13px;height:13px;border-radius:50%;background:var(--gray-900);border:2px solid #fff;box-shadow:0 2px 7px rgba(16,24,40,.2)}.qualification-legend{display:flex;justify-content:space-between;color:var(--gray-400);font-size:8px;margin:4px 0 11px}.itinerary-scroll{height:224px;overflow:auto;padding-right:5px;display:grid;gap:9px}.itinerary-item{display:grid;grid-template-columns:54px 28px minmax(0,1fr);gap:8px;align-items:start}.itinerary-date{font-size:9px;font-weight:700;color:var(--gray-500);padding-top:6px}.itinerary-icon{width:28px;height:28px;border-radius:9px;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.itinerary-icon svg{width:15px}.itinerary-copy{border-left:1px solid var(--gray-200);padding-left:10px;min-height:38px}.itinerary-copy b{display:block;font-size:10px}.itinerary-copy span{font-size:9px;color:var(--gray-500)}.itinerary-alerts{margin-top:10px;display:grid;gap:5px}.itinerary-alert{display:flex;align-items:center;gap:7px;border-radius:8px;padding:7px 8px;font-size:9px}.itinerary-alert.warning{background:#fff5e8;color:#9a5a13}.itinerary-alert.critical{background:#fff0f0;color:#a63b3b}.itinerary-alert svg{width:14px}
.compact-comments{height:150px;overflow:auto;display:grid;gap:8px;padding-right:3px}.comment-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px}.comment-item .avatar{width:28px;height:28px;font-size:8px}.comment-bubble{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:10px;padding:8px}.comment-head{display:flex;justify-content:space-between;gap:8px}.comment-head b{font-size:9px}.comment-head time{font-size:8px;color:var(--gray-400)}.comment-bubble p{font-size:9px;line-height:1.45;margin:4px 0 0;color:var(--gray-700)}.comment-composer{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:end;margin-top:9px}.comment-composer textarea{resize:none;border:1px solid var(--gray-200);border-radius:9px;padding:8px;font-size:9px;outline:0}.comment-composer textarea:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1)}.mini-send{width:32px;height:32px;border:0;border-radius:9px;background:var(--green-500);color:#fff;display:grid;place-items:center;cursor:pointer}.mini-send svg{width:15px}
.metric-list button{border:0;background:var(--gray-50);border-radius:8px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background var(--fast),transform var(--fast)}.metric-list button:hover{background:var(--green-50);transform:translateY(-1px)}
.module-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:4px 0 18px}.module-toolbar h2{margin:0 0 5px;font-size:20px}.module-toolbar p{margin:0;color:var(--gray-500);font-size:10px}
.traveler-workspace-list{display:grid;gap:12px}.traveler-workspace-card{border:1px solid var(--gray-200);border-left:5px solid var(--traveler-tone,var(--gray-300));background:#fff;border-radius:14px;overflow:hidden;transition:box-shadow var(--fast),transform var(--fast)}.traveler-workspace-card.is-completed{--traveler-tone:var(--green-500);border-color:#c2cedd}.traveler-workspace-card.is-pending{--traveler-tone:var(--red);border-color:#f3caca}.traveler-workspace-card.is-review{--traveler-tone:var(--amber);border-color:#f4d0a8}.traveler-card-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 15px;cursor:pointer}.traveler-card-header:hover{background:var(--gray-25)}.traveler-card-title{display:grid;gap:3px}.traveler-card-title b{font-size:12px}.traveler-card-title span{font-size:9px;color:var(--gray-500)}.traveler-card-status{text-align:right;display:grid;gap:4px}.traveler-card-status .status-chip{justify-self:end}.traveler-card-status small{font-size:8px;color:var(--gray-500)}.traveler-card-body{max-height:0;opacity:0;overflow:hidden;transition:max-height .34s var(--ease),opacity .22s var(--ease)}.traveler-workspace-card.is-open .traveler-card-body{max-height:1000px;opacity:1}.traveler-card-body-inner{border-top:1px solid var(--gray-100);padding:14px 15px;display:grid;grid-template-columns:.8fr 1.15fr 1fr;gap:14px}.traveler-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.feature-field{background:var(--gray-50);border-radius:8px;padding:8px}.feature-field span{display:block;font-size:8px;color:var(--gray-500);margin-bottom:3px}.feature-field b{font-size:9px}.traveler-doc-mini-list,.traveler-comment-thread{display:grid;gap:6px}.mini-doc-row{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:center;padding:7px 8px;border:1px solid var(--gray-100);border-radius:8px}.mini-doc-row b{font-size:9px}.mini-doc-row span{font-size:8px}.traveler-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.traveler-comment-thread{height:126px;overflow:auto}.traveler-comment-form{display:grid;grid-template-columns:1fr auto;gap:6px;margin-top:7px}.traveler-comment-form input{border:1px solid var(--gray-200);border-radius:8px;padding:8px;font-size:9px;outline:0}.traveler-comment-form button{border:0;border-radius:8px;background:var(--green-500);color:#fff;font-size:9px;font-weight:700;padding:0 10px}.status-select{height:32px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;padding:0 8px;font-size:9px}
.document-scope-card,.payment-panel,.record-payment-form{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:16px;margin-bottom:13px}.scope-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.scope-card-head>div{display:flex;align-items:center;gap:11px}.scope-icon{width:38px;height:38px;border-radius:11px;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.scope-icon svg{width:18px}.scope-card-head h3{font-size:13px;margin:0 0 3px}.scope-card-head p{font-size:9px;color:var(--gray-500);margin:0}.scope-count{font-size:9px;background:var(--gray-50);padding:6px 9px;border-radius:999px}.document-slot-list{display:grid;gap:7px}.document-slot-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid var(--gray-100);border-radius:9px}.document-slot-copy b{display:block;font-size:9px}.document-slot-copy span{font-size:8px;color:var(--gray-500)}.document-file-name{font-size:8px;color:var(--gray-500);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.traveler-document-groups{display:grid;gap:10px}.traveler-doc-group{background:#fff;border:1px solid var(--gray-200);border-radius:13px;overflow:hidden}.traveler-doc-group-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer}.traveler-doc-group-head:hover{background:var(--gray-25)}.traveler-doc-group-head b{font-size:11px}.traveler-doc-group-head span{font-size:9px;color:var(--gray-500)}.traveler-doc-group-body{display:none;border-top:1px solid var(--gray-100);padding:12px}.traveler-doc-group.is-open .traveler-doc-group-body{display:block;animation:pageIn .2s var(--ease)}
.letter-library{border:1px solid var(--green-100);background:#f8fffb;border-radius:14px;padding:14px;margin-bottom:14px}.letter-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.letter-template-card{border:1px solid var(--gray-200);background:#fff;border-radius:11px;padding:11px;cursor:pointer;text-align:left;transition:transform var(--fast),border-color var(--fast),box-shadow var(--fast)}.letter-template-card:hover{transform:translateY(-2px);border-color:var(--green-500);box-shadow:var(--shadow-sm)}.letter-template-card b{display:block;font-size:10px;margin:7px 0 3px}.letter-template-card span{font-size:8px;color:var(--gray-500);line-height:1.4}.letter-template-card i{display:inline-flex;font-style:normal;font-size:8px;margin-top:8px;background:var(--green-50);color:var(--green-900);padding:4px 6px;border-radius:999px}.selected-letter-list{display:grid;gap:9px}.letter-row{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.letter-icon{width:36px;height:36px;border-radius:10px;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.letter-icon svg{width:17px}.letter-row-copy{display:grid;gap:3px}.letter-row-copy b{font-size:10px}.letter-row-copy span{font-size:8px;color:var(--gray-500)}.letter-row-actions{display:flex;gap:6px;align-items:center}.letter-target-select{height:31px;border:1px solid var(--gray-200);border-radius:8px;font-size:8px;padding:0 7px}.letter-status{font-size:8px;padding:5px 7px;border-radius:999px;background:#fff5e8;color:#9a5a13}
.payment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:13px}.payment-summary-card{background:#fff;border:1px solid var(--gray-200);border-radius:13px;padding:13px}.payment-summary-card span{display:block;font-size:8px;color:var(--gray-500);margin-bottom:5px}.payment-summary-card strong{font-size:18px}.payment-summary-card small{display:block;font-size:8px;color:var(--gray-500);margin-top:4px}.payment-content-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:13px}.transaction-list,.receipt-list{display:grid;gap:7px}.transaction-row,.receipt-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border:1px solid var(--gray-100);border-radius:9px}.transaction-icon,.receipt-icon{width:32px;height:32px;border-radius:9px;background:var(--green-50);color:var(--green-900);display:grid;place-items:center}.transaction-icon svg,.receipt-icon svg{width:15px}.transaction-copy b,.receipt-copy b{display:block;font-size:9px}.transaction-copy span,.receipt-copy span{font-size:8px;color:var(--gray-500)}.transaction-amount{text-align:right}.transaction-amount b{display:block;font-size:10px}.transaction-amount span{font-size:8px;color:var(--gray-500)}.receipt-actions{display:flex;gap:5px}.record-payment-form{margin-top:13px;animation:pageIn .22s var(--ease)}.form-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.form-head h3{margin:0 0 3px;font-size:13px}.form-head p{margin:0;font-size:9px;color:var(--gray-500)}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.form-grid label{display:grid;gap:5px;font-size:8px;color:var(--gray-500)}.form-grid input,.form-grid select{height:38px;border:1px solid var(--gray-200);border-radius:8px;padding:0 9px;font-size:9px;background:#fff}.form-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
@media(max-width:1100px){.summary-primary-grid,.payment-content-grid{grid-template-columns:1fr}.summary-secondary-grid{grid-template-columns:1fr 1fr}.documents-summary-card{grid-column:1/-1}.traveler-card-body-inner{grid-template-columns:1fr 1fr}.traveler-card-body-inner>:last-child{grid-column:1/-1}.letter-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.summary-secondary-grid{grid-template-columns:1fr}.summary-primary-grid{grid-template-columns:1fr}.traveler-card-body-inner{grid-template-columns:1fr}.traveler-card-body-inner>:last-child{grid-column:auto}.letter-library-grid,.payment-summary-grid,.form-grid{grid-template-columns:1fr}.module-toolbar{align-items:flex-start;flex-direction:column}.document-slot-row{grid-template-columns:1fr auto}.document-file-name{grid-column:1/-1}.general-doc-strip{grid-template-columns:1fr auto}.general-doc-strip i{grid-column:1/-1}.case-tabs{overflow-x:auto}}


/* ===== v13 traveler + document workspace ===== */
.traveler-workspace-list{gap:14px}
.traveler-workspace-card{border:1px solid #e1e8e5;border-left:0;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#fbfdfc 68%,#f7fbf9 100%);box-shadow:0 8px 28px rgba(30,41,59,.055);overflow:hidden;position:relative}
.traveler-workspace-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#cfd8d4,#e8eeeb)}
.traveler-workspace-card.is-completed{border-color:#dbe3ed;background:linear-gradient(135deg,#fff 0%,#fbfefc 72%,#eefaf4 100%)}
.traveler-workspace-card.is-completed::before{background:linear-gradient(180deg,#475569,#94a3b8)}
.traveler-workspace-card.is-pending{border-color:#eadfd5;background:linear-gradient(135deg,#fff 0%,#fffdfb 66%,#fff7ef 100%)}
.traveler-workspace-card.is-pending::before{background:linear-gradient(180deg,#e79a43,#f0c27c)}
.traveler-workspace-card.is-review{border-color:#e2dcf1;background:linear-gradient(135deg,#fff 0%,#fdfcff 72%,#f5f2fb 100%)}
.traveler-workspace-card.is-review::before{background:linear-gradient(180deg,#806bd1,#b3a6e4)}
.traveler-card-header{grid-template-columns:auto minmax(200px,1fr) auto auto auto;gap:13px;padding:15px 17px 15px 19px;min-height:72px}
.traveler-card-header:hover{background:rgba(245,249,247,.72)}
.traveler-card-title b{font-size:13px}.traveler-card-title span{font-size:9px}
.traveler-header-metrics{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.traveler-metric-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid #e3e9e6;background:rgba(255,255,255,.88);border-radius:999px;padding:6px 8px;font-size:8px;color:var(--gray-600);white-space:nowrap}
.traveler-metric-pill svg{width:12px;height:12px;color:var(--green-700)}
.traveler-metric-pill.is-warning{color:#a66320;background:#fff8ef;border-color:#f0d7b8}
.traveler-status-control{display:grid;justify-items:end;gap:5px;min-width:130px}.traveler-status-control small{font-size:8px;color:var(--gray-500)}
.traveler-card-chevron{width:30px;height:30px;border:1px solid var(--gray-200);border-radius:9px;background:#fff;display:grid;place-items:center;color:var(--gray-600);transition:transform .24s var(--ease),background .2s}.traveler-card-chevron svg{width:14px}.traveler-workspace-card.is-open .traveler-card-chevron{transform:rotate(180deg);background:var(--green-50);color:var(--green-900)}
.traveler-workspace-card.is-open .traveler-card-body{max-height:1800px}
.traveler-card-body-inner{padding:0;grid-template-columns:minmax(245px,.72fr) minmax(0,1.8fr);gap:0;background:#fff}
.traveler-profile-panel{padding:18px;border-right:1px solid var(--gray-100);background:linear-gradient(180deg,#fbfdfc,#fff);align-self:stretch}
.traveler-profile-sticky{position:sticky;top:12px}
.profile-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.profile-panel-head h4,.workspace-panel-head h4{font-size:11px;margin:0}.profile-completeness{font-size:8px;padding:5px 7px;border-radius:999px;background:var(--green-50);color:var(--green-900)}
.profile-section{padding:11px 0;border-top:1px solid var(--gray-100)}.profile-section:first-of-type{border-top:0;padding-top:0}.profile-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.profile-section-title b{font-size:9px}.profile-section-title span{font-size:8px;color:var(--gray-500)}
.profile-data-list{display:grid;gap:7px}.profile-data-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px;align-items:start}.profile-data-row span{font-size:8px;color:var(--gray-500)}.profile-data-row b{font-size:8.5px;line-height:1.42;word-break:break-word}.profile-data-row b.is-missing{color:#b46d2d;font-weight:600}
.profile-status-audit{margin-top:11px;padding:9px;border-radius:10px;background:var(--gray-50);font-size:8px;color:var(--gray-600);line-height:1.45}.profile-status-audit b{display:block;font-size:9px;color:var(--gray-900);margin-bottom:2px}
.traveler-main-stack{display:grid;gap:0;min-width:0}.traveler-doc-panel,.traveler-comments-panel{padding:18px}.traveler-comments-panel{border-top:1px solid var(--gray-100);background:#fcfdfd}
.workspace-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.workspace-panel-head>div{display:grid;gap:3px}.workspace-panel-head p{margin:0;font-size:8px;color:var(--gray-500)}.workspace-panel-actions{display:flex;gap:7px;align-items:center}
.icon-plus-button{width:30px;height:30px;border:0;border-radius:9px;background:var(--green-500);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 7px 16px rgba(71,85,105,.18)}.icon-plus-button svg{width:15px}.icon-plus-button:hover{transform:translateY(-1px)}
.document-table{border:1px solid var(--gray-100);border-radius:12px;overflow:hidden;background:#fff}.document-table-head,.document-table-row{display:grid;grid-template-columns:minmax(180px,1.35fr) minmax(140px,1fr) 104px minmax(170px,1.1fr);gap:10px;align-items:center}.document-table-head{padding:8px 11px;background:#f7f9f8;color:var(--gray-500);font-size:7.5px;text-transform:uppercase;letter-spacing:.04em}.document-table-row{padding:10px 11px;border-top:1px solid var(--gray-100);min-height:54px}.document-table-row:first-child{border-top:0}.document-table-row:hover{background:#fcfefd}.document-name-cell{display:grid;gap:3px;min-width:0}.document-name-cell b{font-size:9px;overflow:hidden;text-overflow:ellipsis}.document-name-cell span{font-size:7.8px;color:var(--gray-500)}
.document-file-cell{display:flex;align-items:center;gap:8px;min-width:0}.file-type-icon{width:30px;height:34px;border-radius:8px;background:linear-gradient(145deg,#f1f4f3,#e7ecea);display:grid;place-items:center;color:var(--gray-600);flex:none}.file-type-icon svg{width:14px}.file-copy{min-width:0;display:grid;gap:2px}.file-copy b{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-copy span{font-size:7.5px;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-empty{font-size:8px;color:var(--gray-400)}
.document-status-select{height:29px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;font-size:8px;padding:0 7px;max-width:104px}.document-actions-cell{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.doc-action-button{border:1px solid var(--gray-200);background:#fff;border-radius:8px;min-height:28px;padding:0 8px;font-size:8px;font-weight:700;color:var(--gray-700);cursor:pointer;display:inline-flex;align-items:center;gap:5px}.doc-action-button svg{width:12px}.doc-action-button.primary{border-color:#c2cedd;background:var(--green-50);color:var(--green-900)}.doc-action-button.danger{color:#b04d4d}.doc-action-button:hover{background:var(--gray-50)}
.requirement-inline-form{display:grid;grid-template-columns:minmax(180px,1.35fr) 140px 104px minmax(170px,1.1fr);gap:10px;align-items:center;padding:9px 11px;border-top:1px solid var(--gray-100);background:#f8fcfa}.requirement-inline-form input,.requirement-inline-form select{height:32px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;padding:0 9px;font-size:8.5px;outline:0}.requirement-inline-form input:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1)}.inline-form-actions{display:flex;gap:5px;justify-content:flex-end;grid-column:4}
.inline-upload-zone{grid-column:1/-1;margin:0 10px 10px;border:1px dashed #94a3b8;border-radius:11px;background:linear-gradient(135deg,#fbfffd,#f3fbf7);padding:14px;display:flex;align-items:center;justify-content:center;gap:11px;cursor:pointer;outline:0}.inline-upload-zone.is-dragging{border-color:var(--green-600);background:var(--green-50)}.inline-upload-zone svg{width:22px;color:var(--green-700)}.inline-upload-zone b{display:block;font-size:9px}.inline-upload-zone span{display:block;font-size:8px;color:var(--gray-500);margin-top:2px}
.document-empty-state{padding:28px 16px;text-align:center;display:grid;justify-items:center;gap:7px}.document-empty-icon{width:64px;height:50px;border-radius:16px;background:linear-gradient(150deg,#edf3f0,#dbe5e1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8);display:grid;place-items:center;color:#64748b}.document-empty-icon svg{width:27px}.document-empty-state b{font-size:10px}.document-empty-state span{font-size:8px;color:var(--gray-500)}
.traveler-comment-thread{height:170px}.traveler-comment-form{grid-template-columns:1fr auto;align-items:end}.traveler-comment-form textarea{min-height:68px;max-height:150px;resize:vertical;border:1px solid var(--gray-200);border-radius:10px;padding:9px 10px;font-size:9px;outline:0}.traveler-comment-form textarea:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1)}.comment-compose-actions{display:grid;gap:6px}.comment-attach-button{width:34px;height:30px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;display:grid;place-items:center;cursor:pointer}.comment-attach-button svg{width:14px}.comment-attachment-preview{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding:7px 9px;background:var(--gray-50);border-radius:8px;font-size:8px}.comment-attachment-preview img{width:38px;height:30px;object-fit:cover;border-radius:6px}.comment-attachment{margin-top:7px}.comment-attachment img{max-width:150px;max-height:92px;border-radius:8px;border:1px solid var(--gray-100);object-fit:cover}.comment-attachment-file{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--gray-200);border-radius:8px;font-size:8px;background:#fff}
.documents-accordion{display:grid;gap:11px}.document-section{border:1px solid var(--gray-200);border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(30,41,59,.035)}.document-section-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 15px;cursor:pointer;background:linear-gradient(100deg,#fff 0%,#fbfdfc 55%,#f1faf5 100%)}.document-section.is-general .document-section-header{background:linear-gradient(100deg,#f5fbf8,#fff 58%,#eef8f3)}.document-section-header:hover{filter:brightness(.995)}.document-section-icon{width:38px;height:38px;border-radius:11px;background:#eaf7f0;color:var(--green-900);display:grid;place-items:center}.document-section-icon svg{width:18px}.document-section-copy{display:grid;gap:3px}.document-section-copy b{font-size:11px}.document-section-copy span{font-size:8px;color:var(--gray-500)}.document-section-stats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.document-section-stats span{padding:5px 7px;border-radius:999px;background:#fff;border:1px solid var(--gray-100);font-size:7.8px;color:var(--gray-600)}.document-section-toggle{width:29px;height:29px;border:1px solid var(--gray-200);border-radius:8px;background:#fff;display:grid;place-items:center}.document-section-toggle svg{width:13px;transition:transform .22s}.document-section.is-open .document-section-toggle svg{transform:rotate(180deg)}.document-section-body{display:none;padding:13px;border-top:1px solid var(--gray-100);background:#fcfdfd}.document-section.is-open .document-section-body{display:block;animation:pageIn .2s var(--ease)}
.workspace-dialog{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 34px);overflow:auto}.modal-subtitle{font-size:9px;color:var(--gray-500);margin:4px 0 0}.workspace-modal-body{padding:2px 0}.workspace-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.workspace-profile-grid .full{grid-column:1/-1}.workspace-profile-grid label{display:grid;gap:5px;font-size:8px;font-weight:700;color:var(--gray-600)}.workspace-profile-grid input,.workspace-profile-grid select,.workspace-profile-grid textarea{border:1px solid var(--gray-200);border-radius:9px;min-height:38px;padding:8px 10px;font-size:9px;outline:0;background:#fff}.workspace-profile-grid textarea{min-height:70px;resize:vertical}.workspace-profile-grid input:focus,.workspace-profile-grid textarea:focus,.workspace-profile-grid select:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1)}.workspace-form-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--gray-100)}.workspace-form-section-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.workspace-form-section-head b{font-size:10px}.workspace-form-section-head span{font-size:8px;color:var(--gray-500)}.document-preview-toolbar{display:flex;justify-content:flex-end;margin:0 0 .65rem}.document-preview-toolbar button{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .75rem;border:1px solid var(--gray-200);border-radius:9px;background:#fff;color:var(--gray-700);font:inherit;font-size:9px;font-weight:700;cursor:pointer}.document-preview-toolbar button:hover{border-color:var(--green-500);color:var(--green-900)}.document-preview-toolbar svg{width:14px;height:14px}.document-preview-shell{min-height:380px;display:grid;place-items:center;background:#f4f6f5;border:1px solid var(--gray-100);border-radius:12px;overflow:hidden}.document-preview-shell.is-pdf{background:#e8eaed}.document-preview-shell img{max-width:100%;max-height:65vh}.document-preview-shell iframe{width:100%;height:62vh;border:0;background:#fff}.document-preview-placeholder{display:grid;justify-items:center;gap:10px;color:var(--gray-500);text-align:center}.document-preview-placeholder svg{width:50px}.document-preview-placeholder b{font-size:11px}.document-preview-placeholder span{font-size:8px}
@media(max-width:1100px){.traveler-card-body-inner{grid-template-columns:1fr}.traveler-profile-panel{border-right:0;border-bottom:1px solid var(--gray-100)}.traveler-profile-sticky{position:static}.traveler-card-header{grid-template-columns:auto minmax(0,1fr) auto}.traveler-header-metrics{grid-column:2/-1;justify-content:flex-start}.traveler-card-chevron{grid-row:1;grid-column:5}.document-table-head,.document-table-row,.requirement-inline-form{grid-template-columns:minmax(150px,1.2fr) minmax(120px,1fr) 98px minmax(140px,1fr)}}
@media(max-width:760px){.traveler-card-header{grid-template-columns:auto 1fr auto}.traveler-status-control{grid-column:2/3;justify-items:start}.traveler-header-metrics{grid-column:1/-1}.document-table-head{display:none}.document-table-row{grid-template-columns:1fr auto;padding:11px}.document-file-cell{grid-column:1/-1}.document-actions-cell{grid-column:1/-1;justify-content:flex-start}.requirement-inline-form{grid-template-columns:1fr}.requirement-inline-form>*{grid-column:1!important}.document-section-header{grid-template-columns:auto 1fr auto}.document-section-stats{grid-column:2/4;justify-content:flex-start}.workspace-profile-grid{grid-template-columns:1fr}.workspace-profile-grid .full{grid-column:1}.profile-data-row{grid-template-columns:105px 1fr}}

/* v13 document-table workspace and traveler refinements */
.document-package-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.documents-table-stack{display:grid;gap:18px}
.document-section{border:0!important;border-radius:16px!important;background:transparent!important;box-shadow:0 10px 28px rgba(30,41,59,.07)!important;overflow:visible!important}
.document-section-header{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto auto!important;gap:13px!important;align-items:center!important;padding:13px 15px!important;cursor:default!important;border-radius:15px 15px 0 0!important;background:linear-gradient(110deg,#475569 0%,#475569 55%,#64748b 100%)!important;color:#fff!important;box-shadow:0 8px 20px rgba(71,85,105,.16)}
.document-section.is-general .document-section-header{background:linear-gradient(110deg,#334155 0%,#475569 55%,#64748b 100%)!important}
.document-section-copy b{font-size:11px!important;color:#fff!important}.document-section-copy span{font-size:8px!important;color:rgba(255,255,255,.78)!important}
.document-section-icon{width:38px!important;height:38px!important;border-radius:11px!important;background:rgba(255,255,255,.17)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)}
.document-section-stats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.document-section-stats span{padding:5px 8px!important;border-radius:999px!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;font-size:7.8px!important}
.document-section-actions{display:flex;gap:6px}.document-section-actions button{width:31px;height:31px;border:1px solid rgba(255,255,255,.28);border-radius:9px;background:rgba(255,255,255,.13);color:#fff;display:grid;place-items:center;cursor:pointer}.document-section-actions button:hover{background:#fff;color:#334155}.document-section-actions svg{width:14px}
.document-section-body{display:block!important;padding:13px!important;border:1px solid #dfe9e5!important;border-top:0!important;border-radius:0 0 15px 15px!important;background:linear-gradient(135deg,#f7fbf9 0%,#fff 55%,#fffaf7 100%)!important;animation:none!important}
.section-upload-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:stretch;margin-bottom:11px}.section-upload-tools.is-compact{margin:0 0 10px}.direct-document-upload{min-height:54px;border:1.5px dashed #94a3b8;border-radius:12px;background:rgba(255,255,255,.82);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;cursor:pointer;outline:0;transition:border .2s,background .2s,transform .2s}.direct-document-upload:hover,.direct-document-upload:focus,.direct-document-upload.is-dragging{border-color:#475569;background:#eefaf4;transform:translateY(-1px)}.direct-upload-icon{width:34px;height:34px;border-radius:10px;background:#e6f7ef;color:#475569;display:grid;place-items:center}.direct-upload-icon svg{width:16px}.direct-upload-copy{display:grid;gap:3px;min-width:0}.direct-upload-copy b{font-size:9.5px}.direct-upload-copy span{font-size:7.8px;color:var(--gray-500)}.direct-upload-cta{font-size:8px;font-weight:700;color:#475569;padding:6px 8px;border-radius:8px;background:#effaf5;white-space:nowrap}.add-requirement-button{min-width:116px;border:1px solid #cfe7db;border-radius:12px;background:#fff;color:#334155;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;font-size:8px;font-weight:700;cursor:pointer}.add-requirement-button:hover{background:#effaf5}.add-requirement-button svg{width:15px}
.document-table{margin-top:0!important;border-color:#dfe8e4!important;border-radius:12px!important;background:#fff!important}.document-table-head{grid-template-columns:minmax(180px,1.25fr) minmax(150px,1fr) 104px minmax(190px,1.25fr)!important;background:#eef5f2!important;color:#64748b!important;padding:9px 11px!important}.document-table-row{grid-template-columns:minmax(180px,1.25fr) minmax(150px,1fr) 104px minmax(190px,1.25fr)!important;background:#fff;min-height:58px!important}.document-table-row:nth-child(odd){background:#fcfefd}.document-name-cell{display:flex!important;align-items:center;gap:9px!important}.document-kind-icon{width:30px;height:34px;border-radius:8px;background:#f0f3f2;color:#6d7974;display:grid;place-items:center;flex:0 0 auto}.document-kind-icon svg{width:14px}.document-name-copy{display:grid;gap:3px;min-width:0}.document-name-copy b{font-size:9px}.document-name-copy span{font-size:7.8px;color:var(--gray-500)}
.document-empty-state{min-height:94px!important;background:linear-gradient(135deg,#fff,#f8fcfa)!important}.document-empty-icon{background:#eaf7f0!important;color:#475569!important}
.profile-section-title{align-items:center}.profile-section-add{width:25px;height:25px;border:1px solid #cfe8dc;border-radius:8px;background:#eefaf4;color:#475569;display:grid;place-items:center;cursor:pointer}.profile-section-add svg{width:12px}.empty-profile-block{width:100%;border:1px dashed #d4e1db;border-radius:11px;background:#fff;padding:12px;display:grid;grid-template-columns:auto 1fr;column-gap:9px;row-gap:3px;text-align:left;cursor:pointer}.empty-profile-block>span{grid-row:1/3;width:30px;height:30px;border-radius:9px;background:#f1f7f4;color:#64748b;display:grid;place-items:center}.empty-profile-block svg{width:14px}.empty-profile-block b{font-size:8.5px}.empty-profile-block small{font-size:7.5px;color:var(--gray-500)}.empty-profile-block:hover{border-color:#94a3b8;background:#f8fdfb}
.traveler-comment-form{grid-template-columns:minmax(0,1fr) 36px 36px!important;gap:7px!important;align-items:end!important}.comment-compose-actions{display:contents!important}.comment-attach-button,.traveler-comment-form button[type="submit"]{width:36px!important;height:36px!important;border-radius:9px!important;padding:0!important;display:grid!important;place-items:center!important}.traveler-comment-form button[type="submit"]{border:0;background:var(--green-500);color:#fff;cursor:pointer}.traveler-comment-form button[type="submit"] svg,.comment-attach-button svg{width:14px}.comment-attachment-preview{grid-column:1/-1!important}
@media(max-width:900px){.document-section-header{grid-template-columns:auto 1fr auto!important}.document-section-stats{grid-column:2/4;justify-content:flex-start}.document-section-actions{grid-column:3;grid-row:1}.section-upload-tools{grid-template-columns:1fr}.add-requirement-button{min-height:42px}.document-package-actions{width:100%}.document-package-actions .button{flex:1}.direct-document-upload{grid-template-columns:auto 1fr}.direct-upload-cta{display:none}}

.card-heading-actions{display:flex;align-items:center;gap:8px}.card-heading-actions .text-button{display:inline-flex;align-items:center;gap:5px}.card-heading-actions .text-button svg{width:13px;height:13px}.text-button.is-loading{opacity:.65;cursor:wait}.itinerary-empty{height:100%;min-height:170px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--gray-400);gap:6px;padding:20px}.itinerary-empty svg{width:25px;height:25px;color:var(--green-700)}.itinerary-empty b{font-size:11px;color:var(--gray-700)}.itinerary-empty span{font-size:9px}.itinerary-copy small{display:block;margin-top:3px;font-size:7px;color:var(--gray-400)}.itinerary-alert.notice{background:var(--gray-50);color:var(--gray-600)}.itinerary-alert span{display:block}.itinerary-alert small{display:block;margin-top:2px;opacity:.72}


/* v15.4.1 delivered-card and inline-profile fix */

.case-card.is-delivered {
  opacity: 1 !important;
  filter: none !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #f5fcf8 100%) !important;
  border-color: #c2cedd !important;
  box-shadow: 0 5px 18px rgba(51,65,85, .08);
}

.case-card.is-delivered::before {
  background: #64748b !important;
}

.case-card.is-delivered:hover {
  opacity: 1 !important;
  filter: none !important;
  border-color: #94a3b8 !important;
  box-shadow: 0 9px 24px rgba(51,65,85, .13);
}

.case-card.is-delivered .country-code,
.case-card.is-delivered .visa-line,
.case-card.is-delivered .case-title,
.case-card.is-delivered .latest-action,
.case-card.is-delivered .card-footer,
.case-card.is-delivered .compact-timeline {
  opacity: 1 !important;
  filter: none !important;
}

.case-card.is-delivered .status-chip.gray {
  background: #e5f7ee;
  color: #334155;
}

.inline-work-profile-section {
  padding-bottom: 13px;
}

.inline-work-profile-form {
  display: grid;
  gap: 8px;
}

.inline-work-profile-form textarea {
  width: 100%;
  min-height: 128px;
  resize: vertical;
  box-sizing: border-box;
  border: 1px solid #dbe5e0;
  border-radius: 10px;
  background: #ffffff;
  color: var(--gray-900);
  padding: 10px 11px;
  font: inherit;
  font-size: 9px;
  line-height: 1.65;
  outline: none;
  transition:
    border-color .18s,
    box-shadow .18s,
    background .18s;
}

.inline-work-profile-form textarea::placeholder {
  color: var(--gray-400);
}

.inline-work-profile-form textarea:focus {
  border-color: var(--green-500);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(100,116,139, .11);
}

.inline-work-profile-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.inline-work-profile-actions small {
  color: var(--gray-500);
  font-size: 7.5px;
  line-height: 1.45;
}

.inline-work-profile-actions .button {
  flex: 0 0 auto;
  min-width: 68px;
}

.inline-work-profile-actions .button svg {
  width: 13px;
  height: 13px;
}

.inline-work-profile-form.is-saving {
  opacity: .68;
  pointer-events: none;
}

.inline-work-profile-form.is-saved textarea {
  border-color: #c2cedd;
  background: #f8fdfa;
}

@media (max-width: 720px) {
  .inline-work-profile-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .inline-work-profile-actions .button {
    width: 100%;
  }
}


/* v15.4.3 structured editable traveler fields */

.inline-traveler-profile-form {
  display: grid;
  gap: 0;
}

.inline-profile-grid {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.inline-profile-field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.inline-profile-field.is-full {
  grid-column: 1 / -1;
}

.inline-profile-field > span {
  color: var(--gray-500);
  font-size: 7.5px;
  font-weight: 600;
}

.inline-profile-field input,
.inline-profile-field select,
.inline-profile-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #dce5e1;
  border-radius: 9px;
  background: #fff;
  color: var(--gray-900);
  font: inherit;
  font-size: 8.5px;
  outline: none;
  transition:
    border-color .18s,
    box-shadow .18s,
    background .18s;
}

.inline-profile-field input,
.inline-profile-field select {
  height: 35px;
  padding: 0 9px;
}

.inline-profile-field textarea {
  min-height: 72px;
  padding: 9px;
  resize: vertical;
  line-height: 1.55;
}

.inline-profile-field input:focus,
.inline-profile-field select:focus,
.inline-profile-field textarea:focus {
  border-color: var(--green-500);
  box-shadow:
    0 0 0 3px rgba(100,116,139, .1);
}

.inline-profile-field input::placeholder,
.inline-profile-field textarea::placeholder {
  color: var(--gray-400);
}

.inline-profile-savebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid var(--gray-100);
}

.inline-profile-savebar small {
  color: var(--gray-500);
  font-size: 7.5px;
  line-height: 1.45;
}

.inline-profile-savebar .button {
  flex: 0 0 auto;
  min-width: 100px;
}

.inline-traveler-profile-form.is-saving {
  opacity: .7;
  pointer-events: none;
}

.traveler-workspace-card.is-open
.traveler-card-body {
  max-height: 2800px;
}

@media (max-width: 1180px) {
  .inline-profile-grid {
    grid-template-columns: 1fr;
  }

  .inline-profile-field.is-full {
    grid-column: auto;
  }
}

@media (max-width: 720px) {
  .inline-profile-savebar {
    align-items: stretch;
    flex-direction: column;
  }

  .inline-profile-savebar .button {
    width: 100%;
  }
}

/* ===== v15.8 dynamic case summary ===== */
.case-pulse-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px;padding:9px;background:#f6f9f8;border:1px solid #e1e9e5;border-radius:14px}
.case-pulse-item{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:9px 10px;background:#fff;border:1px solid #e8eeeb;border-radius:10px}
.case-pulse-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eef8f3;color:var(--green-900)}
.case-pulse-icon svg{width:15px;height:15px}.case-pulse-item>span:last-child{min-width:0;display:grid;gap:2px}.case-pulse-item small{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400)}
.case-pulse-item strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-pulse-item em{font-size:7px;font-style:normal;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.case-pulse-item.is-warning{border-color:#f3cfaa;background:#fffaf4}.case-pulse-item.is-warning .case-pulse-icon{background:#fff0df;color:#a35d12}.case-pulse-item.is-ready{border-color:#c2cedd;background:#fbfffd}
.summary-alert-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.summary-alert-stack[hidden]{display:none}
.summary-alert{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;border:1px solid #e5ebe8;border-radius:11px;padding:10px 11px;background:#fff}.summary-alert>span{width:29px;height:29px;border-radius:8px;display:grid;place-items:center}.summary-alert svg{width:14px}
.summary-alert b{display:block;font-size:9px;margin:1px 0 3px}.summary-alert p{font-size:8px;line-height:1.45;color:var(--gray-500);margin:0}.summary-alert.is-critical{background:#fff8f8;border-color:#efcaca}.summary-alert.is-critical>span{background:#ffebeb;color:#b44747}.summary-alert.is-warning{background:#fffbf5;border-color:#f1d4b1}.summary-alert.is-warning>span{background:#fff0de;color:#a35d12}.summary-alert.is-notice>span{background:#edf5ff;color:#3d72c9}
.dynamic-summary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}.milestone-summary-card,.next-step-summary-card{position:relative;min-height:345px;overflow:visible;border-top:3px solid var(--summary-tone,#64748b)}.milestone-summary-card.is-blue,.next-step-summary-card.is-blue{--summary-tone:#4d86e8}.milestone-summary-card.is-amber,.next-step-summary-card.is-amber{--summary-tone:#e29a43}.milestone-summary-card.is-green,.next-step-summary-card.is-green{--summary-tone:#64748b}
.summary-stage-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:3px 0 14px;border-bottom:1px solid var(--gray-100)}.summary-stage-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--summary-tone) 12%,#fff);color:var(--summary-tone)}.summary-stage-icon svg{width:20px;height:20px}.summary-stage-kicker{display:block;font-size:7px;font-weight:800;letter-spacing:.11em;color:var(--summary-tone);margin-bottom:4px}.summary-stage-hero strong{display:block;font-size:16px;line-height:1.25}.summary-stage-hero p{font-size:9px;line-height:1.55;color:var(--gray-500);margin:5px 0 0;max-width:560px}
.summary-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.summary-fact{min-width:0;padding:10px 11px;border-radius:10px;background:var(--gray-50);border:1px solid var(--gray-100)}.summary-fact span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);margin-bottom:4px}.summary-fact strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-fact small{display:block;font-size:7px;color:var(--gray-500);margin-top:3px}
.summary-card-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:13px}.summary-card-actions .button svg{width:14px;height:14px}.summary-hover-detail{position:absolute;z-index:8;right:14px;bottom:54px;width:min(280px,calc(100% - 28px));display:grid;gap:5px;padding:12px;border-radius:11px;background:#1e293b;color:#fff;box-shadow:0 14px 34px rgba(30,41,59,.22);opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .18s ease,transform .18s ease,visibility .18s}.summary-hover-detail:after{content:"";position:absolute;right:22px;bottom:-6px;width:12px;height:12px;background:#1e293b;transform:rotate(45deg)}.summary-hover-detail b{font-size:9px;margin-bottom:2px}.summary-hover-detail span{font-size:8px;color:#d7e2dd}.has-hover-detail:hover .summary-hover-detail,.has-hover-detail:focus-within .summary-hover-detail{opacity:1;visibility:visible;transform:none}
.summary-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;font-size:8px;color:var(--gray-500)}.summary-progress-head strong{font-size:9px;color:var(--gray-800)}.summary-progress-track{height:7px;border-radius:999px;background:var(--gray-100);overflow:hidden;margin-top:6px}.summary-progress-track i{display:block;height:100%;width:var(--progress);background:var(--summary-tone);border-radius:inherit;transition:width .4s ease}
.summary-check-list{display:grid;gap:6px;margin-top:12px}.summary-check-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border-radius:9px;background:var(--gray-50);border:1px solid var(--gray-100)}.summary-check-list>div>span{width:23px;height:23px;border-radius:7px;display:grid;place-items:center}.summary-check-list svg{width:12px}.summary-check-list b{font-size:8px}.summary-check-list em{font-size:7px;font-style:normal}.summary-check-list .is-done>span{background:#e6f7ef;color:var(--green-900)}.summary-check-list .is-done em{color:var(--green-900)}.summary-check-list .is-pending>span{background:#fff1df;color:#a35d12}.summary-check-list .is-pending em{color:#a35d12}
.summary-fixed-grid{display:grid;grid-template-columns:1.15fr .95fr 1fr;gap:14px;margin-top:14px;align-items:stretch}.summary-fixed-grid>.detail-card{min-height:318px}.summary-fixed-grid .compact-comments{height:205px}.summary-fixed-grid .compact-comments.show-all{height:300px}.summary-fixed-grid .activity-summary-card .mini-timeline{max-height:250px;overflow:auto;padding-right:3px}
.document-focus-list{display:grid;gap:6px;margin-top:11px}.document-focus-list button{width:100%;border:1px solid var(--gray-100);background:#fff;border-radius:9px;padding:8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;text-align:left;cursor:pointer}.document-focus-list button:hover{border-color:#c2cedd;background:#fbfffd}.document-focus-list button>span:nth-child(2){min-width:0}.document-focus-list button b{display:block;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-focus-list button small{display:block;font-size:7px;color:var(--gray-500);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-focus-icon{width:27px;height:27px;border-radius:8px;display:grid;place-items:center}.document-focus-icon svg{width:13px}.document-focus-icon.is-warning{background:#ffeded;color:#b44747}.document-focus-icon.is-missing{background:#fff1df;color:#a35d12}.document-focus-arrow{width:12px;color:var(--gray-400)}.document-focus-complete{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:10px;border-radius:9px;background:#effaf5;color:var(--green-900)}.document-focus-complete>svg{width:16px}.document-focus-complete b{display:block;font-size:8px}.document-focus-complete small{display:block;font-size:7px;color:#475569;margin-top:2px}
.summary-fixed-grid .mini-timeline li{grid-template-columns:7px minmax(0,1fr) auto;gap:8px;padding:3px 0}.summary-fixed-grid .mini-timeline li>span{display:grid;gap:2px;color:var(--gray-800)}.summary-fixed-grid .mini-timeline li b{font-size:8px;font-weight:700}.summary-fixed-grid .mini-timeline li small{font-size:7px;color:var(--gray-500);line-height:1.35}.summary-fixed-grid .mini-timeline time{font-size:7px;white-space:nowrap}.mini-timeline-empty{display:block!important;color:var(--gray-500);padding:16px 0!important}
@media(max-width:1180px){.case-pulse-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-fixed-grid{grid-template-columns:1fr 1fr}.summary-fixed-grid .activity-summary-card{grid-column:1/-1;min-height:auto}.summary-fixed-grid .activity-summary-card .mini-timeline{max-height:220px}}
@media(max-width:860px){.dynamic-summary-grid,.summary-alert-stack,.summary-fixed-grid{grid-template-columns:1fr}.summary-fixed-grid .activity-summary-card{grid-column:auto}.case-pulse-strip{grid-template-columns:1fr 1fr}.milestone-summary-card,.next-step-summary-card{min-height:0}}
@media(max-width:560px){.case-pulse-strip{grid-template-columns:1fr}.summary-fact-grid{grid-template-columns:1fr}.summary-stage-hero strong{font-size:14px}.summary-hover-detail{position:static;width:auto;opacity:1;visibility:visible;transform:none;margin-top:10px}.summary-hover-detail:after{display:none}}

/* v15.8 keeps live activity refresh from moving the user's scroll position. */
.activity-list,.activity-log-list{overflow-anchor:none}

/* v15.9 actionable Summary and notification Action Center */
.case-pulse-item{appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--fast),box-shadow var(--fast),transform var(--fast),background var(--fast)}
.case-pulse-item:hover,.case-pulse-item:focus-visible{border-color:#c2cedd;box-shadow:0 7px 18px rgba(51,65,85,.08);transform:translateY(-1px);outline:0}
.case-pulse-item:after{content:"›";align-self:center;color:var(--gray-300);font-size:15px;font-weight:700}
.case-pulse-item{grid-template-columns:auto minmax(0,1fr) auto}
.summary-alert{width:100%;appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}
.summary-alert:hover,.summary-alert:focus-visible{transform:translateY(-1px);box-shadow:0 7px 18px rgba(16,24,40,.07);outline:0}
.summary-alert:after{content:"Review ›";align-self:center;font-size:7px;font-weight:800;color:var(--gray-500);white-space:nowrap}
.next-step-summary-card,.milestone-summary-card{position:relative}
.next-step-summary-card[data-action],.milestone-summary-card[data-action]{cursor:pointer}
.next-step-summary-card[data-action]:hover,.milestone-summary-card[data-action]:hover{box-shadow:0 14px 34px rgba(16,24,40,.08);transform:translateY(-1px)}
.notification-item.has-action .notification-copy small:after{content:" · Open action";font-weight:700;color:var(--green-900)}
.notification-item[data-severity="critical"] .notification-icon{background:#fff0f0;color:#b64242}
.notification-item[data-severity="warning"] .notification-icon{background:#fff5e9;color:#a6651d}

.action-drawer-backdrop{position:fixed;inset:0;z-index:138;background:rgba(16,24,40,.25);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .22s var(--ease)}
.action-drawer-backdrop.is-open{opacity:1;pointer-events:auto}
.action-drawer{position:fixed;z-index:140;top:0;right:0;width:min(520px,calc(100vw - 24px));height:100dvh;background:#fff;border-left:1px solid var(--gray-200);box-shadow:-22px 0 55px rgba(16,24,40,.16);display:grid;grid-template-rows:auto minmax(0,1fr) auto;transform:translateX(102%);visibility:hidden;transition:transform .28s var(--ease),visibility 0s linear .28s}
.action-drawer.is-open{transform:none;visibility:visible;transition:transform .28s var(--ease)}
.action-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 22px 18px;border-bottom:1px solid var(--gray-100);background:linear-gradient(180deg,#fff,#fbfdfc)}
.action-drawer-head h2{font-size:20px;line-height:1.2;margin:4px 0 6px;color:var(--gray-900)}
.action-drawer-head p:last-child{margin:0;color:var(--gray-500);font-size:10px;line-height:1.55;max-width:390px}
.action-drawer-body{overflow:auto;padding:18px 22px 28px;background:#fbfcfc}
.action-drawer-footer{display:flex;justify-content:flex-end;gap:8px;min-height:0;padding:14px 22px;border-top:1px solid var(--gray-100);background:#fff}
.action-drawer-footer:empty{display:none}
body.action-drawer-open{overflow:hidden}
.action-summary-banner{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid #dfe8e4;border-radius:14px;background:#fff;margin-bottom:14px}
.action-summary-banner.is-warning{border-color:#efd0a9;background:#fffaf4}.action-summary-banner.is-critical{border-color:#efc6c6;background:#fff8f8}.action-summary-banner.is-ready{border-color:#c2cedd;background:#fbfffd}
.action-summary-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#ecf8f2;color:var(--green-900)}
.action-summary-banner.is-warning .action-summary-icon{background:#fff0df;color:#a35d12}.action-summary-banner.is-critical .action-summary-icon{background:#ffebeb;color:#b44747}
.action-summary-icon svg{width:19px;height:19px}.action-summary-banner b{display:block;font-size:12px;margin:1px 0 4px}.action-summary-banner p{font-size:9px;line-height:1.55;color:var(--gray-500);margin:0}
.action-section{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:14px;margin-top:12px}
.action-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px}.action-section-head h3{font-size:11px;margin:0 0 3px}.action-section-head p{font-size:8px;color:var(--gray-500);margin:0;line-height:1.45}.action-section-head span{font-size:7px;font-weight:800;color:var(--gray-500);background:var(--gray-50);border:1px solid var(--gray-100);border-radius:999px;padding:4px 7px;white-space:nowrap}
.action-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.action-form-grid .full{grid-column:1/-1}.action-form-grid label{display:grid;gap:5px;font-size:8px;font-weight:700;color:var(--gray-600)}
.action-form-grid input,.action-form-grid select,.action-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid var(--gray-200);border-radius:9px;background:#fff;min-height:39px;padding:8px 10px;font:inherit;font-size:9px;color:var(--gray-900);outline:0}.action-form-grid textarea{min-height:76px;resize:vertical}.action-form-grid input:focus,.action-form-grid select:focus,.action-form-grid textarea:focus{border-color:var(--green-500);box-shadow:0 0 0 3px rgba(100,116,139,.1)}
.action-inline-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.action-inline-buttons .button{min-height:36px}
.action-item-list{display:grid;gap:8px}.action-item-row{width:100%;appearance:none;border:1px solid var(--gray-200);border-radius:12px;background:#fff;padding:11px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;color:inherit;cursor:pointer;transition:border-color var(--fast),transform var(--fast),box-shadow var(--fast)}
.action-item-row:hover,.action-item-row:focus-visible{border-color:#c2cedd;transform:translateY(-1px);box-shadow:0 6px 16px rgba(16,24,40,.06);outline:0}.action-item-row.is-critical{border-color:#efcaca;background:#fffafa}.action-item-row.is-warning{border-color:#f0d6b7;background:#fffcf8}
.action-item-row>span:first-child{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eef8f3;color:var(--green-900)}.action-item-row.is-warning>span:first-child{background:#fff0df;color:#a35d12}.action-item-row.is-critical>span:first-child{background:#ffebeb;color:#b44747}.action-item-row svg{width:15px}
.action-item-copy{min-width:0;display:grid;gap:3px}.action-item-copy b{font-size:9px}.action-item-copy span{font-size:8px;line-height:1.4;color:var(--gray-500)}.action-item-row em{font-size:8px;font-style:normal;font-weight:800;color:var(--green-900);white-space:nowrap}
.action-check-list{display:grid;gap:7px}.action-check{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--gray-100)}.action-check:last-child{border-bottom:0}.action-check i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff0df;color:#a35d12;font-style:normal}.action-check.is-done i{background:#eaf8f1;color:var(--green-900)}.action-check i svg{width:12px}.action-check b{font-size:9px}.action-check span{font-size:8px;color:var(--gray-500)}
.action-person-list{display:grid;gap:9px}.action-person{border:1px solid var(--gray-200);border-radius:12px;padding:11px;background:#fff}.action-person-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}.action-person-head .avatar{width:31px;height:31px;font-size:9px}.action-person-head div{min-width:0;display:grid;gap:2px}.action-person-head b{font-size:9px}.action-person-head span{font-size:8px;color:var(--gray-500)}.action-person-fields{display:flex;flex-wrap:wrap;gap:5px}.action-person-fields span{font-size:7px;padding:4px 6px;border-radius:999px;background:#fff4e8;color:#8b541b;border:1px solid #f0d4b4}.action-person .button{margin-top:10px}
.action-document-list{display:grid;gap:7px}.action-document-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--gray-200);border-radius:10px;background:#fff}.action-document-row b{font-size:9px;display:block}.action-document-row span{font-size:7px;color:var(--gray-500)}
.action-template-list{display:grid;gap:7px;max-height:280px;overflow:auto;padding-right:2px}.action-template-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:10px;border:1px solid var(--gray-200);border-radius:10px;background:#fff;cursor:pointer}.action-template-option:has(input:checked){border-color:#94a3b8;background:#f8fffb}.action-template-option input{margin-top:2px}.action-template-option b{display:block;font-size:9px}.action-template-option span{display:block;font-size:8px;color:var(--gray-500);margin-top:3px;line-height:1.4}
.letter-assignment-stack{display:grid;gap:8px;margin-bottom:12px}.letter-assignment-row{border:1px dashed #c2cedd;background:#fbfffd;border-radius:12px;padding:11px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.letter-assignment-row .letter-icon{background:#eaf8f1}.letter-assignment-row-copy{display:grid;gap:3px}.letter-assignment-row-copy b{font-size:9px}.letter-assignment-row-copy span{font-size:8px;color:var(--gray-500)}
.action-focus-flash{animation:actionFocusFlash 1.8s ease}@keyframes actionFocusFlash{0%,100%{box-shadow:inherit}20%,70%{box-shadow:0 0 0 4px rgba(239,154,60,.25),0 10px 28px rgba(16,24,40,.1)}}
@media(max-width:640px){.action-drawer{width:100vw}.action-drawer-head,.action-drawer-body,.action-drawer-footer{padding-left:16px;padding-right:16px}.action-form-grid{grid-template-columns:1fr}.action-form-grid .full{grid-column:auto}.summary-alert:after{display:none}}

/* v15.10 operational case header */
.case-meta-operational{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:0;min-width:min(760px,58vw);border-left:1px solid var(--gray-200)}
.case-meta-operational .case-meta-action{appearance:none;border:0;border-right:1px solid var(--gray-200);background:transparent;text-align:left;padding:8px 16px;display:flex;flex-direction:column;gap:4px;min-width:0;cursor:pointer;border-radius:0;transition:background .16s ease,box-shadow .16s ease}
.case-meta-operational .case-meta-action:last-child{border-right:0}
.case-meta-operational .case-meta-action:hover,.case-meta-operational .case-meta-action:focus-visible{background:var(--green-50);outline:none;box-shadow:inset 0 -2px 0 var(--green-500)}
.case-meta-operational .case-meta-action small{font-size:7px;line-height:1.2;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500)}
.case-meta-operational .case-meta-action strong{font-size:10px;line-height:1.3;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.case-meta-operational .case-meta-action em{font-size:7.5px;line-height:1.25;font-style:normal;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.case-meta-operational .assigned-inline{display:flex;flex-direction:row;align-items:center;gap:6px}

.appointment-plan-dialog{width:min(920px,calc(100vw - 28px));max-width:920px;max-height:calc(100vh - 28px);overflow:auto;padding:0;border:1px solid rgba(51,65,85,.12);background:linear-gradient(180deg,#fbfffd 0,#fff 150px);scrollbar-gutter:stable}
.compact-plan-dialog{width:min(520px,calc(100vw - 32px));max-width:520px}
.appointment-plan-dialog form{padding:0 22px 20px}
.appointment-modal-hero{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:15px;align-items:center;margin:0 -22px;padding:22px 22px 19px;background:
  radial-gradient(circle at 8% 18%,rgba(100,116,139,.14),transparent 24%),
  linear-gradient(135deg,#f7fffb 0%,#fff 54%,#f5faf8 100%);border-bottom:1px solid #e4eee9;border-radius:16px 16px 0 0}
.appointment-ai-mark{position:relative;width:54px;height:54px;display:grid;place-items:center}
.appointment-ai-mark>span{position:relative;z-index:2;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#475569,#64748b);box-shadow:0 12px 26px rgba(71,85,105,.22)}
.appointment-ai-mark svg{width:22px;height:22px}
.appointment-ai-mark>i{position:absolute;inset:0;border-radius:18px;border:1px solid rgba(100,116,139,.25);animation:appointmentHalo 2.4s ease-in-out infinite}
@keyframes appointmentHalo{0%,100%{transform:scale(.88);opacity:.35}50%{transform:scale(1.12);opacity:.85}}
.appointment-hero-copy{min-width:0}.appointment-hero-copy .eyebrow{margin:0 0 5px;color:#475569}.appointment-hero-copy h2{margin:0;font-size:21px;letter-spacing:-.025em}.appointment-hero-copy>p:last-child{margin:6px 0 0;max-width:620px;color:var(--gray-500);font-size:9px;line-height:1.55}
.appointment-close{align-self:start}
.appointment-file-stage,.appointment-extraction-card{border:1px solid #dfe9e4;border-radius:17px;background:rgba(255,255,255,.94);padding:15px;margin-top:15px;box-shadow:0 10px 30px rgba(51,65,85,.045)}
.appointment-current-document{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:2px 2px 14px;border-bottom:1px solid #edf2ef}
.appointment-document-icon{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#e7f8ef,#f5fffa);border:1px solid #dbe3ed;color:var(--green-900);display:grid;place-items:center}.appointment-document-icon svg{width:18px;height:18px}
.appointment-current-document>div:not(.appointment-document-buttons){display:flex;flex-direction:column;gap:3px;min-width:0}.appointment-current-document small{font-size:7px;font-weight:800;letter-spacing:.06em;color:#64748b}.appointment-current-document strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment-current-document em{font-size:8px;color:var(--gray-500);font-style:normal;line-height:1.35}
.appointment-document-buttons{display:flex!important;flex-direction:row!important;gap:7px}.appointment-document-buttons[hidden]{display:none!important}
.appointment-ghost-action{height:34px;border:1px solid #dce7e2;border-radius:10px;background:#fff;color:#334155;padding:0 10px;display:inline-flex;align-items:center;gap:6px;font-size:8px;font-weight:750;cursor:pointer;transition:.16s ease}.appointment-ghost-action:hover{border-color:#c2cedd;background:#f5fff9;transform:translateY(-1px)}.appointment-ghost-action svg{width:14px;height:14px}
.appointment-upload-zone{position:relative;margin-top:14px;min-height:126px;border:1.5px dashed #94a3b8;border-radius:16px;background:
  linear-gradient(180deg,rgba(240,253,246,.88),rgba(250,255,252,.96)),
  repeating-linear-gradient(135deg,transparent 0 12px,rgba(100,116,139,.025) 12px 24px);
padding:20px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:15px;align-items:center;cursor:pointer;outline:0;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
.appointment-upload-zone:hover,.appointment-upload-zone:focus-visible,.appointment-upload-zone.is-dragging{border-color:#475569;box-shadow:0 0 0 4px rgba(100,116,139,.11),0 12px 30px rgba(51,65,85,.08);transform:translateY(-1px);background:#f4fff9}
.appointment-upload-zone.is-busy{pointer-events:none;border-style:solid}.appointment-upload-zone.is-complete{border-color:#64748b;background:#f4fff8}.appointment-upload-zone.is-error{border-color:#df8e8e;background:#fff8f8}
.appointment-upload-visual{position:relative;width:56px;height:56px;border-radius:17px;display:grid;place-items:center;background:#fff;color:#475569;border:1px solid #d3ecdf;box-shadow:0 8px 20px rgba(51,65,85,.08)}
.appointment-upload-visual svg{width:22px;height:22px;position:relative;z-index:2}.appointment-upload-visual i{position:absolute;width:17px;height:17px;border-radius:50%;right:-4px;top:-4px;background:linear-gradient(145deg,#64748b,#94a3b8);box-shadow:0 0 0 4px #f4fff8}
.appointment-upload-copy{display:grid;gap:5px;min-width:0}.appointment-upload-copy b{font-size:13px;letter-spacing:-.01em}.appointment-upload-copy small{font-size:8px;color:var(--gray-500)}
.appointment-ai-chip{justify-self:end;display:inline-flex;align-items:center;gap:6px;border:1px solid #dbe3ed;background:rgba(255,255,255,.82);color:#334155;border-radius:999px;padding:7px 10px;font-size:7.5px;font-weight:800;white-space:nowrap}.appointment-ai-chip svg{width:13px;height:13px}
.appointment-processing{margin-top:11px;padding:11px 12px;border-radius:13px;background:#f7faf8;border:1px solid #e5ece8;transition:.18s ease}
.appointment-processing-copy{display:flex;align-items:center;gap:10px}.appointment-processing-icon{width:30px;height:30px;border-radius:10px;background:#eef7f2;color:#475569;display:grid;place-items:center;flex:0 0 auto}.appointment-processing-icon svg{width:14px;height:14px}.appointment-processing-copy>div{display:grid;gap:2px;min-width:0}.appointment-processing-copy b{font-size:9px}.appointment-processing-copy small{font-size:7.5px;color:var(--gray-500);line-height:1.35}
.appointment-progress-track{height:3px;border-radius:999px;background:#e4ebe7;margin-top:9px;overflow:hidden}.appointment-progress-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#475569,#94a3b8);transition:width .35s ease}
.appointment-processing.is-uploading .appointment-processing-icon,.appointment-processing.is-analyzing .appointment-processing-icon{animation:appointmentPulse 1.05s ease-in-out infinite}.appointment-processing.is-complete{border-color:#c2cedd;background:#f5fff9}.appointment-processing.is-review{border-color:#efd8aa;background:#fffaf1}.appointment-processing.is-error{border-color:#efc5c5;background:#fff7f7}.appointment-processing.is-error .appointment-processing-icon{background:#ffeaea;color:#b64242}
@keyframes appointmentPulse{50%{transform:scale(1.08);box-shadow:0 0 0 5px rgba(100,116,139,.1)}}
.appointment-extraction-card{padding:17px}
.appointment-extraction-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.appointment-extraction-head>div{display:grid;gap:3px}.appointment-section-kicker{display:flex;align-items:center;gap:5px;font-size:7px!important;font-weight:850;letter-spacing:.06em;color:#475569!important}.appointment-section-kicker svg{width:12px;height:12px}.appointment-extraction-head b{font-size:13px}.appointment-extraction-head small{font-size:8px;color:var(--gray-500);font-weight:400}
.ai-confidence{border-radius:999px;padding:7px 10px;background:var(--gray-100);font-size:7px!important;font-weight:850;color:#475569!important;white-space:nowrap}.ai-confidence.is-good{background:#e9f8f0;color:#334155!important}.ai-confidence.is-review{background:#fff4df;color:#9a5c00!important}.ai-confidence.is-low{background:#fff0f0;color:#b23a3a!important}
.appointment-smart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.appointment-smart-field{position:relative;display:grid!important;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;margin:0!important;padding:10px 11px;border:1px solid #e0e8e4;border-radius:13px;background:#fbfdfc;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.appointment-smart-field:focus-within{border-color:#94a3b8;box-shadow:0 0 0 3px rgba(100,116,139,.1);background:#fff}
.appointment-field-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#edf8f2;color:#475569}.appointment-field-icon svg{width:14px;height:14px}
.appointment-field-copy{display:grid;gap:3px;min-width:0}.appointment-field-copy>small{font-size:7px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.035em}.appointment-field-copy input,.appointment-field-copy textarea{width:100%;height:auto!important;min-height:22px;border:0!important;border-radius:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;font-size:9px!important;color:var(--gray-900);outline:0}.appointment-field-copy textarea{min-height:46px;resize:vertical;line-height:1.45}
.appointment-location-field,.appointment-wide-field{grid-column:1/-1}.appointment-notes-field{background:#fffdf8}.appointment-notes-field .appointment-field-icon{background:#fff2dc;color:#a25e10}
.appointment-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #edf2ef;padding-top:15px;margin-top:14px}.appointment-modal-actions>div:last-child{display:flex;gap:8px}.appointment-save-note{display:flex;align-items:center;gap:7px;color:var(--gray-500);font-size:7.5px}.appointment-save-note svg{width:14px;height:14px;color:#475569}.appointment-confirm-button{display:inline-flex;align-items:center;gap:6px}.appointment-confirm-button svg{width:14px;height:14px}
.travel-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.travel-date-grid label,.assignee-plan-field{display:flex;flex-direction:column;gap:6px;font-size:9px;font-weight:700;color:var(--gray-700)}.travel-date-grid input,.assignee-plan-field select{width:100%;border:1px solid var(--gray-200);border-radius:9px;background:#fff;padding:10px 11px;font:inherit;color:var(--gray-900)}.travel-duration-preview{margin-top:12px;border-radius:10px;background:var(--gray-50);padding:12px;font-size:9px;color:var(--gray-600)}.travel-duration-preview.is-valid{background:var(--green-50);color:var(--green-900)}
@media(max-width:700px){
  .appointment-plan-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
  .appointment-plan-dialog form{padding:0 14px 16px}
  .appointment-modal-hero{grid-template-columns:46px minmax(0,1fr) auto;margin:0 -14px;padding:17px 14px 15px}.appointment-ai-mark{width:44px;height:44px}.appointment-ai-mark>span{width:40px;height:40px;border-radius:13px}.appointment-hero-copy h2{font-size:18px}.appointment-hero-copy>p:last-child{display:none}
  .appointment-upload-zone{grid-template-columns:48px minmax(0,1fr);min-height:112px;padding:15px}.appointment-upload-visual{width:46px;height:46px;border-radius:14px}.appointment-ai-chip{grid-column:1/-1;justify-self:start;margin-left:57px}
  .appointment-current-document{grid-template-columns:38px minmax(0,1fr)}.appointment-document-buttons{grid-column:1/-1;padding-left:50px}
  .appointment-smart-grid,.travel-date-grid{grid-template-columns:1fr}.appointment-location-field,.appointment-wide-field{grid-column:auto}
  .appointment-modal-actions{align-items:stretch;flex-direction:column}.appointment-modal-actions>div:last-child{width:100%}.appointment-modal-actions .button{flex:1}.appointment-save-note{order:2}
}

/* v15.10.2 operational header, contract snapshot and expandable action tiles */
.case-identity{align-items:stretch;padding:13px 18px;gap:18px}
.case-person{min-width:300px;align-self:center}
.destination-flag-avatar{font-size:25px;line-height:1;background:linear-gradient(145deg,#f7fbf9,#eaf5f0);border:1px solid #dcebe4;box-shadow:0 5px 14px rgba(51,65,85,.08)}
.case-meta-operational{flex:1;display:grid;grid-template-columns:repeat(5,minmax(132px,1fr));gap:0;min-width:0}
.case-meta-operational .case-meta-action{min-height:58px;justify-content:center;padding:8px 14px}
.case-meta-operational .case-meta-action:last-child{border-right:0}
.case-meta-operational .case-meta-delivery.is-missing{background:#fff8f8;box-shadow:inset 0 -2px 0 #e56a6a}
.case-meta-operational .case-meta-delivery.is-missing small,.case-meta-operational .case-meta-delivery.is-missing strong{color:#a84242}
.case-meta-operational .case-meta-delivery.is-missing em{color:#bd6464}
.case-meta-operational .case-meta-delivery.is-ready{background:#fbfffd;box-shadow:inset 0 -2px 0 var(--green-500)}
.case-meta-operational .case-meta-delivery.is-overdue{background:#fff2f2;box-shadow:inset 0 -2px 0 var(--red)}

.dynamic-summary-grid.is-single{grid-template-columns:minmax(0,1fr)}
.contract-overview-card{min-height:0!important;border-top:3px solid #4d89f5;padding:18px 20px}
.contract-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--gray-100)}
.contract-overview-head h3{margin:3px 0 0;font-size:20px;letter-spacing:-.025em;color:var(--gray-900)}
.contract-traveler-count{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#eef4ff;color:#315fbb;font-size:9px;font-weight:800;white-space:nowrap}
.contract-traveler-count svg{width:14px;height:14px}
.contract-overview-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:14px;margin-top:14px}
.contract-traveler-panel,.contract-payment-panel{border:1px solid var(--gray-150,var(--gray-100));border-radius:14px;padding:14px;background:#fbfcfd}
.contract-section-label{display:block;margin-bottom:9px;font-size:7px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--gray-400)}
.contract-traveler-list{display:grid;gap:7px}
.contract-traveler-list>div{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:#fff;border:1px solid var(--gray-100)}
.contract-traveler-list>div>span{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#edf5ff;color:#3569c8;font-size:8px;font-weight:800}
.contract-traveler-list b{font-size:10px;color:var(--gray-800)}
.contract-payment-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}
.contract-payment-panel>div:first-child>strong{display:block;font-size:20px;letter-spacing:-.03em;margin:2px 0 4px;color:var(--gray-900)}
.contract-payment-panel>div:first-child>em{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:8px;font-style:normal;font-weight:800}
.contract-payment-panel.is-unpaid{border-color:#efc6c6;background:#fff8f8}
.contract-payment-panel.is-unpaid>div:first-child>em{background:#ffe5e5;color:#a63e3e}
.contract-payment-panel.is-paid{border-color:#c2cedd;background:#fbfffd}
.contract-payment-panel.is-paid>div:first-child>em{background:#e4f7ee;color:#334155}
.contract-payment-breakdown{display:grid;gap:8px;min-width:150px}
.contract-payment-breakdown span{display:flex;justify-content:space-between;gap:16px;padding:7px 9px;border-radius:9px;background:#fff;border:1px solid rgba(16,24,40,.06);font-size:8px;color:var(--gray-500)}
.contract-payment-breakdown b{font-size:9px;color:var(--gray-800)}
.contract-overview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}

.case-pulse-strip{display:flex;grid-template-columns:none;gap:9px;align-items:stretch;margin-top:14px;padding:8px;background:#f7faf8;border:1px solid #e1ebe6;border-radius:15px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.case-pulse-item{position:relative;display:flex;align-items:stretch;flex:0 0 58px;width:58px;min-width:58px;max-width:270px;height:54px;padding:0;border:1px solid transparent;border-radius:12px;overflow:hidden;background:#fff;transition:flex-basis .28s var(--ease),width .28s var(--ease),border-color .18s ease,box-shadow .18s ease,background .18s ease;transform:none!important}
.case-pulse-item.is-complete{border-color:#c2cedd;background:#fbfffd}
.case-pulse-item.is-incomplete{border-color:#efc6c6;background:#fff9f9}
.case-pulse-item:hover,.case-pulse-item:focus-within{flex-basis:250px;width:250px;box-shadow:0 9px 24px rgba(16,24,40,.09);z-index:3}
.case-pulse-item:after{display:none!important}
.case-pulse-main{appearance:none;border:0;background:transparent;color:inherit;font:inherit;display:flex;align-items:center;justify-content:center;gap:9px;min-width:58px;flex:1;padding:7px;cursor:pointer;text-align:left;overflow:hidden}
.case-pulse-main:focus-visible,.case-pulse-cta:focus-visible{outline:2px solid rgba(71,85,105,.35);outline-offset:-2px}
.case-pulse-icon{width:38px;height:38px;min-width:38px;border-radius:11px;display:grid;place-items:center;margin:0;background:#eef8f3;color:#475569;transition:transform .22s var(--ease)}
.case-pulse-item.is-incomplete .case-pulse-icon{background:#ffebeb;color:#b64545}
.case-pulse-icon svg{width:17px;height:17px}
.case-pulse-copy{display:grid;gap:2px;min-width:0;width:0;opacity:0;transform:translateX(-8px);transition:width .25s var(--ease),opacity .18s ease,transform .25s var(--ease);white-space:nowrap;overflow:hidden}
.case-pulse-copy small{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400)}
.case-pulse-copy strong{font-size:9px;overflow:hidden;text-overflow:ellipsis;color:var(--gray-900)}
.case-pulse-copy em{font-size:7px;font-style:normal;color:var(--gray-500);overflow:hidden;text-overflow:ellipsis}
.case-pulse-item:hover .case-pulse-main,.case-pulse-item:focus-within .case-pulse-main{justify-content:flex-start}
.case-pulse-item:hover .case-pulse-copy,.case-pulse-item:focus-within .case-pulse-copy{width:auto;flex:1;opacity:1;transform:none}
.case-pulse-cta{appearance:none;border:0;border-left:1px solid rgba(16,24,40,.07);background:transparent;color:var(--green-900);font:inherit;font-size:7px;font-weight:800;white-space:nowrap;width:0;opacity:0;padding:0;cursor:pointer;transition:width .25s var(--ease),opacity .16s ease,padding .25s var(--ease),background .16s ease}
.case-pulse-item.is-incomplete .case-pulse-cta{color:#a63e3e}
.case-pulse-item:hover .case-pulse-cta,.case-pulse-item:focus-within .case-pulse-cta{width:auto;opacity:1;padding:0 10px}
.case-pulse-cta:hover{background:rgba(255,255,255,.7)}

@media(max-width:1240px){
  .case-identity{flex-direction:column;align-items:stretch}
  .case-person{min-width:0}
  .case-meta-operational{width:100%;grid-template-columns:repeat(5,minmax(120px,1fr))}
}
@media(max-width:860px){
  .case-meta-operational{overflow-x:auto;display:flex}
  .case-meta-operational .case-meta-action{min-width:160px}
  .contract-overview-body{grid-template-columns:1fr}
  .case-pulse-item,.case-pulse-item:hover,.case-pulse-item:focus-within{flex-basis:220px;width:220px}
  .case-pulse-main{justify-content:flex-start}
  .case-pulse-copy{width:auto;flex:1;opacity:1;transform:none}
  .case-pulse-cta{width:auto;opacity:1;padding:0 9px}
}
@media(max-width:560px){
  .contract-overview-head{align-items:flex-start;flex-direction:column}
  .contract-payment-panel{grid-template-columns:1fr}
  .contract-payment-breakdown{min-width:0}
  .contract-overview-actions{justify-content:stretch;flex-direction:column}
  .contract-overview-actions .button{width:100%;justify-content:center}
}

/* v15.10.4 — keep the latest achievement inside the compact pulse rail. */
.case-pulse-item.is-achievement{
  flex:1 1 300px;
  width:auto;
  min-width:260px;
  max-width:none;
  background:linear-gradient(90deg,#fbfffd 0%,#f5fbf8 100%);
  border-color:#c2cedd;
}
.case-pulse-item.is-achievement:hover,
.case-pulse-item.is-achievement:focus-within{
  flex-basis:360px;
  width:auto;
}
.case-pulse-item.is-achievement .case-pulse-main{
  justify-content:flex-start;
  min-width:0;
}
.case-pulse-item.is-achievement .case-pulse-copy{
  width:auto;
  flex:1;
  opacity:1;
  transform:none;
}
.case-pulse-item.is-achievement .case-pulse-copy strong{
  color:#334155;
  font-size:10px;
}
.case-pulse-item.is-achievement .case-pulse-copy em{
  color:var(--gray-500);
}
.case-pulse-item.is-achievement .case-pulse-icon{
  background:#e5f7ee;
  color:#475569;
}
@media(max-width:860px){
  .case-pulse-item.is-achievement,
  .case-pulse-item.is-achievement:hover,
  .case-pulse-item.is-achievement:focus-within{
    flex:0 0 300px;
    width:300px;
    min-width:300px;
  }
}
.dynamic-summary-grid[hidden]{display:none!important}


/* v15.10.6 print-package selection */
.document-table-head,.document-table-row{grid-template-columns:58px minmax(180px,1.2fr) minmax(150px,1fr) 104px minmax(250px,1.45fr)!important}
.document-print-check{display:grid;justify-items:center;gap:4px;cursor:pointer;user-select:none;color:#475569}
.document-print-check input{position:absolute;opacity:0;pointer-events:none}
.document-print-check>span{width:26px;height:26px;border:1.5px solid #b8c9c1;border-radius:8px;background:#fff;display:grid;place-items:center;transition:.18s ease}
.document-print-check>span svg{width:14px;height:14px;opacity:0;transform:scale(.7);transition:.18s ease}
.document-print-check small{font-size:7px;font-weight:700;color:#718079}
.document-print-check input:checked+span{background:#e8f8f0;border-color:#64748b;color:#475569;box-shadow:0 0 0 3px rgba(100,116,139,.08)}
.document-print-check input:checked+span svg{opacity:1;transform:scale(1)}
.document-print-check:hover>span{border-color:#94a3b8;transform:translateY(-1px)}
.document-print-check.is-disabled{cursor:not-allowed;opacity:.38}.document-print-check.is-disabled>span{background:#f1f3f2}
.document-section-stats span:nth-child(2){background:rgba(255,255,255,.22)!important;font-weight:700}
.document-actions-cell{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}
.document-actions-cell::-webkit-scrollbar{height:4px}.document-actions-cell::-webkit-scrollbar-thumb{background:#d6e1dc;border-radius:99px}
@media(max-width:1100px){.document-table-head,.document-table-row{grid-template-columns:52px minmax(150px,1.1fr) minmax(120px,1fr) 98px minmax(220px,1.35fr)!important}}
@media(max-width:760px){.document-table-row{grid-template-columns:46px 1fr!important}.document-print-check{grid-row:1/3}.document-name-cell{grid-column:2}.document-file-cell{grid-column:2}.document-status-select{grid-column:1/2}.document-actions-cell{grid-column:1/-1!important;justify-content:flex-start}.document-print-check small{display:none}}

/* Phase 1 performance hotfix: closed overlays own no visible/composited layer. */
.modal:not(.is-open){display:none!important;backdrop-filter:none!important}
.modal.is-open{display:grid}
#contractWizardRoot .wizard-backdrop:not(.is-visible){display:none!important;backdrop-filter:none!important}
#contractWizardRoot .wizard-backdrop.is-visible{display:block}
#contractWizardRoot .wizard-modal:not(.is-open){display:none!important}
#contractWizardRoot .wizard-modal.is-open{display:grid}

/* v18.15.0 — global Flight Bot quick uploader */
.topbar-bot-upload{position:relative;display:flex;align-items:center}
.topbar-bot-button{width:36px;height:36px;color:#0d7666;border-color:#cfe2dc;background:#f5fbf8}
.topbar-bot-button svg{width:19px;height:19px}.topbar-bot-button:hover,.topbar-bot-button[aria-expanded="true"]{color:#fff;background:#118675;border-color:#118675;transform:translateY(-1px)}
.topbar-bot-panel{position:absolute;z-index:80;top:46px;right:0;width:340px;padding:0;background:rgba(255,255,255,.98);border:1px solid #d9e5e1;border-radius:14px;box-shadow:0 22px 55px rgba(21,52,46,.18);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-7px) scale(.98);transform-origin:top right;transition:opacity .2s ease,transform .2s cubic-bezier(.16,1,.3,1),visibility .2s}
.topbar-bot-panel[aria-hidden="false"]{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.topbar-bot-panel>header{position:relative;display:grid;grid-template-columns:42px 1fr 28px;gap:10px;align-items:start;padding:16px;border-bottom:1px solid #e5edea;background:#f6faf8}
.topbar-bot-mark{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;color:#fff;background:#118675}.topbar-bot-mark svg{width:21px;height:21px}
.topbar-bot-panel header small{display:block;margin:1px 0 2px;color:#168775;font-size:8px;font-weight:800;letter-spacing:.12em}.topbar-bot-panel header h2{margin:0;color:#17322d;font-size:14px;line-height:1.3}.topbar-bot-panel header p{margin:3px 0 0;color:#71817d;font-size:9px;line-height:1.45}
.topbar-bot-close{width:28px;height:28px;padding:0;border:0;background:transparent;color:#71817d;border-radius:7px;display:grid;place-items:center;cursor:pointer}.topbar-bot-close:hover{background:#e8f1ee;color:#17322d}.topbar-bot-close svg{width:15px;height:15px}
.topbar-bot-zones{display:grid;gap:7px;padding:12px 12px 8px}.topbar-bot-zone{position:relative;display:grid;grid-template-columns:36px 1fr 18px;gap:10px;align-items:center;min-height:56px;padding:8px 11px;border:1px dashed #cfddd8;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.topbar-bot-zone:hover,.topbar-bot-zone.is-dragging{border-color:#168775;background:#f4faf7;transform:translateY(-1px)}.topbar-bot-zone:active{transform:scale(.98)}.topbar-bot-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.topbar-bot-zone>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.topbar-bot-zone>span svg{width:17px;height:17px}.topbar-bot-zone.is-flight>span{color:#357fd3;background:#eef5ff}.topbar-bot-zone.is-hotel>span{color:#e27727;background:#fff5eb}.topbar-bot-zone.is-passport>span{color:#168775;background:#eaf8f2}.topbar-bot-zone strong{display:block;color:#253c37;font-size:10px}.topbar-bot-zone small{display:block;margin-top:2px;color:#80908c;font-size:8px}.topbar-bot-zone .zone-upload{width:15px;height:15px;color:#93a29e}
.topbar-bot-state{margin:0 12px 12px;min-height:34px;padding:8px 10px;border-radius:8px;background:#f4f7f6;color:#70807c;display:flex;align-items:center;gap:7px;font-size:8.5px}.topbar-bot-state svg{width:14px;height:14px;flex:0 0 auto}.topbar-bot-state.is-processing{color:#0d7666;background:#eef8f4}.topbar-bot-state.is-processing svg{animation:bot-upload-pulse 1s ease-in-out infinite}.topbar-bot-state.is-success{color:#16785f;background:#eaf8f1}.topbar-bot-state.is-error{color:#b34545;background:#fff2f2}
@keyframes bot-upload-pulse{50%{transform:translateY(-2px);opacity:.5}}
@media(max-width:680px){.topbar-bot-panel{position:fixed;top:58px;right:10px;left:10px;width:auto}.topbar-bot-button{width:34px;height:34px}.topbar-new-contract span{display:none}}
@media(prefers-reduced-motion:reduce){.topbar-bot-panel,.topbar-bot-zone,.topbar-bot-button,.topbar-bot-state svg{transition:none!important;animation:none!important}}

/* v18.17.0 — compact icon-only Flight Bot uploader */
.topbar-bot-button{box-sizing:border-box;width:36px!important;height:36px!important;padding:0!important;display:grid!important;place-items:center!important;line-height:0!important;border-radius:9px!important;transform:none!important}
.topbar-bot-button svg{display:block;width:18px!important;height:18px!important;margin:0!important;transform:translateY(-.25px)}
.topbar-bot-button:hover,.topbar-bot-button[aria-expanded="true"]{transform:none!important}
#topbarBotPanel.is-compact{top:43px;right:0;width:172px;padding:9px;border:1px solid #d8e5e0;border-radius:12px;background:#fff;overflow:visible;box-shadow:0 14px 35px rgba(21,52,46,.16)}
#topbarBotPanel.is-compact:before{content:"";position:absolute;top:-5px;right:13px;width:9px;height:9px;border-left:1px solid #d8e5e0;border-top:1px solid #d8e5e0;background:#fff;transform:rotate(45deg)}
#topbarBotPanel .topbar-bot-compact-zone{min-height:58px;padding:8px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px dashed #c8dad4;border-radius:9px;background:#fbfdfc;transform:none}
#topbarBotPanel .topbar-bot-compact-zone:hover,#topbarBotPanel .topbar-bot-compact-zone.is-dragging{border-color:#168775;background:#f2faf6;transform:none}
#topbarBotPanel .topbar-bot-compact-zone>span{width:36px;height:36px;flex:0 0 36px;border-radius:9px;display:grid;place-items:center}
#topbarBotPanel .topbar-bot-compact-zone>span svg{width:17px;height:17px}
#topbarBotPanel .topbar-bot-compact-zone>.is-flight{color:#357fd3;background:#edf5ff}
#topbarBotPanel .topbar-bot-compact-zone>.is-hotel{color:#e27727;background:#fff3e8}
#topbarBotPanel .topbar-bot-compact-zone>.is-passport{color:#168775;background:#e9f7f1}
#topbarBotPanel .topbar-bot-state{margin:7px 0 0;min-height:28px;padding:6px 8px}
#topbarBotPanel .topbar-bot-state[hidden]{display:none!important}
@media(max-width:680px){#topbarBotPanel.is-compact{position:absolute;top:43px;right:0;left:auto;width:172px}}

/* v18.19 — compact post-upload actions */
#topbarBotPanel .topbar-bot-result{display:grid;gap:7px;margin-top:7px;padding-top:7px;border-top:1px solid #e8efec}
#topbarBotPanel .topbar-bot-result[hidden]{display:none!important}
#topbarBotPanel .topbar-bot-result-icons{display:grid;grid-template-columns:repeat(3,32px);justify-content:center;gap:7px}
#topbarBotPanel .topbar-bot-result-icons button{width:32px;height:32px;padding:0;display:grid;place-items:center;border:1px solid #d7e3df;border-radius:8px;background:#fff;color:#526b64;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
#topbarBotPanel .topbar-bot-result-icons button:hover{border-color:#9fc8bb;background:#eef8f4;color:#0c7563;transform:translateY(-1px)}
#topbarBotPanel .topbar-bot-result-icons button:active{transform:scale(.96)}
#topbarBotPanel .topbar-bot-result-icons button:disabled{opacity:.5;cursor:wait}
#topbarBotPanel .topbar-bot-result-icons svg{width:14px;height:14px}
#topbarBotPanel .topbar-bot-open{width:100%;height:31px;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #168775;border-radius:8px;background:#168775;color:#fff;font-size:9px;font-weight:750;cursor:pointer;transition:background .16s ease,transform .16s ease}
#topbarBotPanel .topbar-bot-open:hover{background:#0d6f61}.topbar-bot-open:active{transform:scale(.98)}
#topbarBotPanel .topbar-bot-open svg{width:13px;height:13px}
