:root {
  --ink: #242529; --muted: #74777e; --line: #e6e7ea; --soft: #f6f7f8; --white: #fff;
  --accent: #973749; --accent-hover: #7e293a; --accent-soft: #f8eef0;
  --teal: #197161; --teal-soft: #eaf5f1; --amber: #96661a; --amber-soft: #fff6e7;
  --blue: #3e6594; --blue-soft: #edf3fa; --red: #a53837; --red-soft: #fff0ef;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px; line-height: 1.5; color: var(--ink); background: var(--white);
  font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased;
}
* { box-sizing: border-box; letter-spacing: 0; }
body { margin: 0; }
button, input, select, textarea { font: inherit; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, a { touch-action: manipulation; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .5; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--accent); }
button:focus-visible, a:focus-visible, summary:focus-visible { outline: 3px solid #bb8793; outline-offset: 3px; }
input:focus,select:focus,textarea:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
[hidden] { display: none !important; }
svg { width: 18px; height: 18px; flex-shrink: 0; vertical-align: middle; }
button svg, a svg { pointer-events: none; }
h1,h2,h3,p { margin: 0; }
h1 { font-size: 32px; font-weight: 650; line-height: 1.2; }
h2 { font-size: 18px; font-weight: 620; line-height: 1.35; }
h3 { font-size: 15px; font-weight: 600; }
strong { font-weight: 600; }
small { font-size: 12px; }
.muted { color: var(--muted); }
.eyebrow { font-size: 10px; font-weight: 650; color: var(--muted); line-height: 1.6; }
.dot-separator { margin: 0 6px; color: #b3b6bc; }
.grow { flex: 1; min-width: 0; }
.button { min-height: 40px; display: inline-flex; gap: 8px; align-items: center; justify-content: center; padding: 9px 14px; border: 1px solid #dadddf; border-radius: 6px; background: white; color: var(--ink); font-size: 13px; font-weight: 550; line-height: 1.35; transition: background .15s, border-color .15s; }
.button:hover:not(:disabled) { background: var(--soft); border-color: #bcc0c6; color: var(--ink); }
.button.primary { background: var(--accent); border-color: var(--accent); color: white; }
.button.primary:hover:not(:disabled) { background: var(--accent-hover); border-color: var(--accent-hover); color: white; }
.button.subtle { border-color: transparent; background: transparent; }
.button.full { width: 100%; }
.icon-button { flex: 0 0 36px; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 5px; background: white; display: inline-flex; align-items: center; justify-content: center; }
.icon-button:hover { background: var(--soft); }
.text-button { border: 0; background: transparent; padding: 5px 0; display: inline-flex; gap: 6px; align-items: center; color: var(--accent); font-size: 12px; font-weight: 550; }
.text-button:hover { color: var(--accent-hover); text-decoration: underline; }
input:where(:not([type=checkbox]):not([type=radio]):not([type=file])),select,textarea { width: 100%; min-width: 0; min-height: 42px; border: 1px solid #d8dbe0; background: #fff; color: var(--ink); border-radius: 5px; padding: 9px 11px; transition: box-shadow .15s; }
input::placeholder, textarea::placeholder { color: #969aa1; }
select { padding-right: 26px; }
textarea { resize: vertical; min-height: 78px; }
input[type=checkbox],input[type=radio] { width: 17px; height: 17px; accent-color: var(--accent); flex-shrink: 0; }
label { display: block; }
.demo-bar { height: 38px; padding: 0 25px; display: flex; align-items: center; justify-content: space-between; background: #f2f3f5; border-bottom: 1px solid #e3e5e8; color: #666b73; font-size: 11px; position: relative; z-index: 20; }
.demo-dot { display: inline-block; width: 6px; height: 6px; background: #ae8b43; border-radius: 50%; margin-right: 7px; vertical-align: 1px; }
.view-switch { display: flex; align-items: center; gap: 9px; }
.view-switch select { appearance: none; border: 0; min-height: 30px; height: 30px; padding: 3px 20px 3px 7px; background: transparent; width: auto; font-size: 11px; font-weight: 600; }
.view-switch svg { margin-left: -24px; pointer-events: none; width: 13px; }
.demo-link { text-decoration: underline; }
.workspace { display: grid; grid-template-columns: 218px minmax(0,1fr); min-height: calc(100dvh - 38px); }
.sidebar { background: #f8f9fa; border-right: 1px solid var(--line); padding: 26px 15px 18px; display: flex; flex-direction: column; align-self: stretch; }
.brand { display: flex; align-items: center; gap: 10px; width: fit-content; }
.brand img { border-radius: 7px; width: 40px; height: 40px; }
.brand strong { font-size: 22px; font-weight: 750; line-height: 1.1; display: block; }
.brand small { display: block; color: var(--muted); font-size: 10px; margin-top: 3px; }
.sidebar>.brand { margin: 0 8px 36px; }
.sidebar-section { color: #999da5; font-size: 10px; font-weight: 600; padding: 0 12px; margin-bottom: 10px; }
.nav-item { display: flex; align-items: center; gap: 10px; padding: 11px 12px; background: transparent; border: 0; border-radius: 5px; color: #70737a; font-size: 12px; width: 100%; text-align: left; margin: 3px 0; }
.nav-item>span:not(.nav-count) { flex: 1; }
.nav-item.selected { color: var(--accent); background: var(--accent-soft); font-weight: 600; }
.nav-item:hover { background: #eeeef1; }
.nav-count { font-size: 11px; }
.sidebar-bottom { margin-top: auto; padding-top: 100px; }
.sidebar-bottom>a { font-size: 11px; padding-left: 7px; gap: 6px; }
.sidebar-bottom>a svg { width: 15px; }
.sidebar-person { display: flex; align-items: center; gap: 9px; border-top: 1px solid var(--line); margin-top: 20px; padding: 20px 6px 0; }
.sidebar-person strong { display: block; font-size: 11px; }
.sidebar-person small { display: block; font-size: 10px; color: var(--muted); }
.main-shell { min-width: 0; }
.workspace-header { height: 65px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; padding: 0 34px; font-size: 12px; color: var(--muted); }
.slash { color: #c0c3c9; margin: 0 10px; }
.operator-label { display: flex; align-items: center; gap: 7px; font-size: 11px; }
.operator-label svg { width: 15px; }
.main-shell main { padding: 34px; max-width: 1550px; margin: auto; }
.page-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.page-heading .eyebrow { margin-bottom: 8px; }
.page-heading p.muted { margin-top: 10px; font-size: 12px; }
.page-heading>.button { flex-shrink: 0; }
.metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 22px 0; margin-bottom: 30px; }
.metric { background: none; border: 0; text-align: left; padding: 0 22px; border-right: 1px solid var(--line); }
.metric:first-child { padding-left: 0; }
.metric:last-child { border: 0; }
.metric>span { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 11px; min-height: 32px; }
.metric svg { width: 16px; }
.metric strong { display: block; font-size: 29px; font-weight: 550; line-height: 1.4; margin-top: 6px; }
.metric:hover strong { color: var(--accent); }
.list-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; flex-wrap: wrap; }
.tabs { display: flex; align-items: stretch; gap: 22px; min-width: 0; }
.tabs>button { border: 0; border-bottom: 2px solid transparent; background: none; padding: 12px 0; font-size: 12px; font-weight: 550; color: var(--muted); white-space: nowrap; display: flex; gap: 6px; align-items: center; }
.tabs>button.active { color: var(--accent); border-color: var(--accent); }
.tabs>button:hover { color: var(--ink); }
.list-tabs { gap: 20px; }
.list-tabs>button { padding: 8px 0; }
.list-search { display: flex; gap: 10px; }
.list-search>select { width: 175px; min-height: 36px; font-size: 11px; padding: 7px; }
.search { position: relative; }
.search>svg { position: absolute; left: 11px; top: 10px; width: 16px; height: 16px; color: #9a9ea5; }
.search>input:not([type=checkbox]) { padding: 8px 10px 8px 33px; min-height: 36px; font-size: 11px; width: 238px; }
.case-table { width: 100%; }
.table-head,.case-row { display: grid; grid-template-columns: minmax(170px,1.3fr) minmax(137px,1fr) minmax(155px,1.4fr) 95px 83px 18px; align-items: center; column-gap: 14px; }
.table-head { padding: 10px 12px; background: #f8f9fa; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10px; }
.case-row { min-height: 94px; padding: 18px 12px; border-bottom: 1px solid var(--line); font-size: 12px; }
.case-row:hover { background: #fbfafb; color: var(--ink); }
.case-row:hover .row-arrow { color: var(--accent); transform: translateX(2px); }
.case-row>div { min-width: 0; }
.traveler { display: flex; gap: 10px; align-items: center; }
.traveler strong { font-size: 12px; display: block; overflow-wrap: anywhere; }
.traveler small { display: block; font-size: 10px; margin-top: 5px; color: var(--muted); }
.avatar { height: 37px; width: 37px; flex: 0 0 37px; display: inline-flex; align-items: center; justify-content: center; background: #f1ecef; color: #92596a; font-size: 11px; border-radius: 50%; font-weight: 600; }
.avatar.teal { color: #467e72; background: #eaf1ef; }
.avatar.small { height: 31px; width: 31px; flex-basis: 31px; font-size: 10px; }
.pill { display: inline-flex; align-items: center; justify-content: center; padding: 4px 7px; border-radius: 4px; font-size: 10px; font-weight: 550; line-height: 1.4; max-width: 100%; text-align: center; background: #f1f2f4; color: #74777d; }
.pill.teal { color: var(--teal); background: var(--teal-soft); }
.pill.amber { color: var(--amber); background: var(--amber-soft); }
.pill.blue { color: var(--blue); background: var(--blue-soft); }
.pill.red { color: var(--red); background: var(--red-soft); }
.next-cell>span { display: block; font-size: 11px; line-height: 1.6; }
.next-cell small { display: block; margin-top: 4px; font-size: 10px; color: var(--muted); }
.next-cell small.overdue { color: #ac7523; }
.owner-cell { display: flex; align-items: center; gap: 6px; font-size: 11px; color: #73767c; }
.owner-dot { width: 6px; height: 6px; border-radius: 50%; background: #b17582; }
.owner-dot.teal { background: #72a697; }
.travel-date { font-size: 11px; }
.travel-date small { display: block; font-size: 10px; color: var(--muted); margin-top: 4px; overflow-wrap: anywhere; }
.row-arrow { color: #b8bdc4; transition: transform .15s; }
.list-foot { display: flex; justify-content: space-between; margin-top: 16px; font-size: 10px; color: #999da5; }
.empty { text-align: center; padding: 70px 16px; border-bottom: 1px solid var(--line); }
.empty>svg { width: 34px; height: 34px; color: #aeb2ba; margin-bottom: 16px; }
.empty p { color: var(--muted); margin: 10px 0 20px; font-size: 13px; }
.detail-back { display: flex; align-items: center; gap: 18px; margin: -8px 0 23px; color: #9da1a8; font-size: 11px; }
.detail-back button { color: var(--muted); }
.detail-heading { margin-bottom: 23px; }
.detail-heading h1 { font-size: 28px; margin-top: 12px; overflow-wrap: anywhere; }
.detail-heading>div:first-child { min-width:0;flex:1; }
.inline-labels { display: flex; gap: 7px; }
.detail-heading p.muted { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.detail-heading p svg { width: 15px; }
.heading-actions { display: flex; align-items: center; gap: 8px; }
.detail-tabs { border-bottom: 1px solid var(--line); margin-bottom: 25px; }
.tab-count { background: #f0f1f3; padding: 0 5px; border-radius: 3px; font-size: 10px; }
.detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 270px; gap: 30px; }
.detail-main { min-width: 0; }
.operation-panel { border-left: 1px solid var(--line); padding-left: 24px; }
.panel-title { display: flex; align-items: center; justify-content: space-between; margin: 0 0 19px; }
.panel-title h2 { font-size: 13px; }
.panel-title svg { color: #9499a1; width: 15px; }
.operation-panel label { font-size: 11px; color: #696d75; margin-bottom: 14px; }
.operation-panel input,.operation-panel select,.operation-panel textarea { margin-top: 5px; font-size: 12px; min-height: 37px; padding: 8px; }
.operation-panel textarea { min-height: 75px; }
.panel-details { border-top: 1px solid var(--line); margin-bottom: 15px; }
.panel-details>summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; padding: 13px 0; font-size: 11px; color: #696d75; }
.panel-details>summary svg { width: 13px; }
.operation-contact { margin-top: 15px; border-top: 1px solid var(--line); padding-top: 13px; }
.operation-contact a { font-size: 11px; }
.next-banner { display: flex; gap: 15px; background: #f5f6f8; border-left: 3px solid #b1b6bf; padding: 22px; margin-bottom: 30px; }
.next-banner.amber { background: var(--amber-soft); border-color: #caa159; }
.next-banner.teal { background: var(--teal-soft); border-color: #629a8b; }
.next-banner.red { background: var(--red-soft); border-color: #b66a62; }
.banner-icon { color: #818894; margin-top: 2px; }
.banner-icon svg { width: 22px; height: 22px; }
.amber .banner-icon { color: var(--amber); }
.teal .banner-icon { color: var(--teal); }
.next-banner h2 { font-size: 18px; margin-top: 5px; }
.next-banner p { color: #747474; font-size: 12px; margin-top: 7px; line-height: 1.65; }
.next-banner .button { margin-top: 17px; }
.section-title { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 30px 0 15px; }
.section-title.top { margin-top: 0; }
.section-title h2 { font-size: 15px; }
.section-title>.muted,.section-title p { font-size: 11px; }
.section-title p { margin-top: 8px; }
.review-overview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-bottom: 1px solid var(--line); padding: 0 0 24px; }
.review-overview button { background: transparent; border: 0; border-right: 1px solid var(--line); text-align: left; padding: 0 15px; }
.review-overview button:first-child { padding-left: 0; }
.review-overview button:last-child { border: 0; }
.review-overview button>span { display: flex; align-items: center; gap: 6px; font-size: 10px; color: var(--muted); }
.review-overview button>span svg { width: 14px; }
.review-overview strong { display: block; font-size: 25px; font-weight: 550; margin: 10px 0 3px; }
.review-overview strong small { font-size: 15px; font-weight: 400; color: #9ca0a6; }
.document-list { border-top: 1px solid var(--line); }
.document-row { border-bottom: 1px solid var(--line); }
.document-open { display: flex; align-items: center; gap: 12px; width: 100%; background: transparent; border: 0; text-align: left; padding: 17px 3px; }
.document-open:hover { background: #fafafb; }
.document-open .grow strong,.form-summary-row strong { display: block; font-size: 12px; }
.document-open .grow small,.form-summary-row small { display: block; color: #999ca2; font-size: 10px; margin-top: 5px; overflow-wrap: anywhere; }
.document-open>svg { width: 14px; color: #a5aab0; }
.file-tile { display: inline-flex; width: 35px; height: 43px; border: 1px solid #e3e6eb; border-radius: 4px; align-items: center; justify-content: center; color: #a5adb9; flex-shrink: 0; background: #fcfcfd; }
.file-tile svg { width: 20px; height: 20px; }
.photo-tile { overflow: hidden; }
.photo-tile img { width: 100%; height: 100%; object-fit: cover; }
.correction-text { display: block; margin-top: 6px; color: #9d762d; font-size: 11px; line-height: 1.5; }
.form-summary-row { display: flex; align-items: center; gap: 12px; border: 1px solid var(--line); background: white; width: 100%; padding: 15px; margin-bottom: 20px; border-radius: 6px; text-align: left; }
.form-summary-row>svg { width: 14px; color: #a6abb2; }
.form-summary-row:hover { background: #fafafb; }
.data-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; margin: 0; padding-bottom: 25px; border-bottom: 1px solid var(--line); }
dt { font-size: 11px; color: var(--muted); margin-bottom: 5px; }
dd { margin: 0; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; white-space: pre-wrap; }
.event-list { list-style: none; padding: 0; margin: 0 0 25px; }
.event-list li { display: flex; gap: 15px; padding: 0 0 25px; position: relative; }
.event-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #b4bec6; margin: 7px 0 0 3px; }
.event-list li:not(:last-child)::after { content: ''; position: absolute; left: 6px; top: 18px; bottom: 4px; width: 1px; background: var(--line); }
.event-list strong { font-size: 12px; }
.event-list p { font-size: 12px; color: #7d8188; margin-top: 5px; line-height: 1.7; white-space: pre-wrap; }
.event-list small { display: block; color: #a0a4ac; font-size: 10px; margin-top: 5px; }
.client-shell { max-width: 1160px; margin: 0 auto; padding: 0 38px; }
.client-header { display: flex; align-items: center; justify-content: space-between; padding: 23px 0; border-bottom: 1px solid var(--line); gap: 15px; }
.client-header .button { color: #747982; font-size: 12px; }
.client-intro { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin: 35px 0 25px; }
.client-intro h1 { margin: 8px 0; }
.client-intro>.muted { font-size: 13px; }
.trip-summary { display: flex; align-items: center; gap: 13px; padding-left: 20px; border-left: 1px solid var(--line); color: #757f8b; }
.trip-summary>svg { width: 23px; height: 23px; }
.trip-summary strong { display: block; color: #4c535a; font-size: 13px; }
.trip-summary span { display: block; font-size: 12px; margin-top: 3px; }
.client-layout { grid-template-columns: minmax(0,1fr) 260px; gap: 45px; }
.client-aside { padding-left: 24px; border-left: 1px solid var(--line); }
.tracking-panel h2 { font-size: 14px; margin-bottom: 24px; }
.tracking-panel h2 { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.tracking-panel h2>.icon-button { width:26px;height:26px;flex-basis:26px;border:0;color:#959da7; }
.tracking-panel h2>.icon-button svg { width:14px;height:14px; }
.tracking-steps { list-style: none; margin: 0; padding: 0; }
.tracking-steps>li { display: flex; gap: 12px; position: relative; min-height: 58px; }
.tracking-steps>li>span { display: inline-flex; width: 24px; height: 24px; flex: 0 0 24px; border-radius: 50%; align-items: center; justify-content: center; border: 1px solid #e0e3e7; color: #b2b7bf; font-size: 10px; background: white; position: relative; z-index: 1; }
.tracking-steps>li:not(:last-child)::after { content:''; position:absolute; left:11px; top:26px; bottom:2px; border-left:1px solid var(--line); }
.tracking-steps strong { display:block; font-size:12px; color:#999fa7; line-height:24px; font-weight:500; }
.tracking-steps small { display:block; font-size:10px; color:var(--muted); margin:1px 0 13px; }
.tracking-steps .done>span { background:var(--teal-soft);border-color:var(--teal-soft);color:var(--teal); }
.tracking-steps .done strong { color:#71777e; }
.tracking-steps .done svg { width:13px;height:13px; }
.tracking-steps .current>span { border-color:var(--accent);background:var(--accent);color:white; }
.tracking-steps .current strong { color:var(--ink);font-weight:600; }
.passport-location { padding:18px 0; display:flex; gap:10px; border-top:1px solid var(--line); border-bottom:1px solid var(--line);margin-top:10px; }
.passport-location>svg { color:#9098a4; margin-top:3px; }
.passport-location span { color:var(--muted);font-size:11px;display:block; }
.passport-location strong { font-size:12px;display:block;margin-top:4px; }
.tracking-meta { display:flex;flex-direction:column;gap:4px;margin-top:14px; }
.tracking-meta>span { font-size:10px;color:var(--muted); }
.tracking-meta>strong { font-size:11px;overflow-wrap:anywhere; }
.last-update { color:#a0a5ad;font-size:10px;margin-top:17px; }
.contact-block { display:flex;gap:10px;padding-top:23px;margin-top:25px;border-top:1px solid var(--line); }
.contact-block strong { font-size:12px; }
.contact-block p { font-size:11px;color:var(--muted);margin-top:4px; }
.contact-block a { display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--accent);margin-top:9px; }
.contact-block svg { width:13px; }
.client-footer { display:flex;justify-content:space-between;gap:20px;margin-top:60px;padding:22px 0;border-top:1px solid var(--line);color:#a3a8b0;font-size:10px; }
.submit-row { display:flex;justify-content:flex-end;padding:25px 0; }
.mobile-tracking { display:none; }
.wizard-layout { display:grid;grid-template-columns:153px minmax(0,1fr);gap:25px; }
.wizard-nav { display:flex;flex-direction:column;gap:3px; }
.wizard-nav>button { display:flex;align-items:center;gap:8px;min-height:45px;border:0;background:transparent;text-align:left;padding:7px 8px;font-size:10px;color:#8c929a;border-radius:5px; }
.wizard-nav>button.active { color:var(--accent);background:var(--accent-soft); }
.step-number { flex:0 0 18px;width:18px;height:18px;border:1px solid #dce0e5;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px; }
.active .step-number { background:var(--accent);border-color:var(--accent);color:white; }
.wizard-nav .step-done { width:12px;height:12px;color:var(--teal);margin-left:auto; }
.wizard-main { min-width:0; }
.wizard-heading { margin:0 0 23px;scroll-margin-top:20px; }
.wizard-heading h2 { font-size:19px;margin-top:4px; }
.wizard-heading p { font-size:12px;margin-top:8px; }
.fields-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px; }
.field.wide { grid-column:1/-1; }
.field>label,.field-label { font-size:12px;font-weight:500;display:block;margin-bottom:7px; }
.field label>small,.field-label>small { font-size:9px;color:#989fa8;font-weight:400;margin-left:5px; }
.field input,.field select,.field textarea { font-size:13px; }
.field select,.operation-panel select { height:42px; }
.field-hint { font-size:10px;color:#9097a0;margin-top:6px;line-height:1.6; }
.field-error { font-size:11px;color:var(--red);margin-top:6px; }
.form-group-heading { grid-column:1/-1;font-size:16px;border-top:1px solid var(--line);padding-top:24px;margin-top:8px; }
.field>label.not-applicable { display:flex;align-items:center;gap:8px;font-size:12px;min-height:36px;margin:6px 0 0;color:var(--muted); }
.field input:disabled { background:#f0f2f3;color:#747b82; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.form-pending { flex-wrap:wrap;justify-content:space-between;gap:10px; }
.readiness-list { list-style:none;margin:0;padding:0;border-top:1px solid var(--line); }
.readiness-list>li { border-bottom:1px solid var(--line); }
.readiness-list button { display:grid;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;gap:12px;text-align:left;width:100%;padding:14px 4px;background:transparent;border:0;min-height:64px; }
.readiness-list button:hover { background:#f3f6f5; }
.readiness-list strong { display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere; }
.readiness-list small { display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5;overflow-wrap:anywhere; }
.readiness-list svg { width:18px;color:var(--muted); }
.readiness-section .inline-notice { margin-bottom:12px; }
.form-issues { border-left:3px solid var(--red);padding:10px 14px;margin-bottom:20px;font-size:12px;color:var(--red); }
.form-issues ul { margin:6px 0 0;padding-left:18px; }
.form-issues .text-button { color:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;min-height:32px; }
[aria-invalid=true] { border-color:#b5676b !important; }
.repeat-title { display:flex;justify-content:space-between;align-items:center;gap:12px; }
.repeat-title .text-button { font-size:10px; }
.repeat-row { margin:14px 0 0;padding:20px 0 10px;border:0;border-top:1px solid var(--line);position:relative; }
.repeat-row legend { color:var(--muted);font-size:11px;padding-right:10px; }
.remove-row { position:absolute;right:0;top:-25px;border:0;background:white;width:25px;height:25px; }
.remove-row svg { width:14px; }
.empty-inline { font-size:11px;color:#9da3ab;padding:12px 0; }
.wizard-actions { margin-top:30px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap; }
.wizard-buttons { display:flex;gap:8px;margin-left:auto; }
.save-state { display:flex;gap:6px;align-items:center;color:#89928e;font-size:10px;flex-wrap:wrap; }
.save-state>svg { width:15px; }
.save-state.save-error { color:var(--red); }
.form-section { border-bottom:1px solid var(--line); }
.form-section>summary { cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:17px 0;font-size:13px; }
.form-section>summary>span { display:flex;gap:10px;align-items:center; }
.form-section>summary svg { color:#9199a4;width:16px; }
details[open]>summary>svg:last-child { transform:rotate(180deg); }
.read-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;padding:5px 0 20px;margin:0; }
.read-fields>.wide { grid-column:1/-1; }
.required-mark { color:var(--amber);font-size:9px;margin-left:7px; }
.form-review { margin-top:25px;padding-top:5px; }
.form-review h3 { margin-bottom:15px; }
.form-review label { font-size:12px;margin-bottom:7px; }
.form-review label small { display:block;color:var(--muted);font-size:10px;margin-top:4px; }
.action-row { display:flex;gap:10px;justify-content:flex-end;margin-top:12px;flex-wrap:wrap; }
.invitation-requirements { margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px; }
.invitation-requirements summary { padding:16px 0;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between; }
.invitation-requirements ul { color:var(--muted);line-height:1.8;margin:0;padding:0 0 20px 20px; }
.inline-notice { display:flex;gap:10px;padding:14px;border-radius:4px;margin-bottom:18px;font-size:12px;line-height:1.7; }
.inline-notice.amber { background:var(--amber-soft);color:#99732d; }
.inline-error { color:var(--red);font-size:12px;line-height:1.6;margin:10px 0; }
.inline-error:empty { display:none; }
dialog { padding:0;border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 100px #13182230;width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 48px);color:var(--ink); }
dialog::backdrop { background:#171d2b55; }
.modal-header { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 25px;border-bottom:1px solid var(--line); }
.modal-header h2 { font-size:20px; }
.modal-header .eyebrow { margin-bottom:5px; }
.modal-header .icon-button { border:0; }
.modal-body { padding:25px; }
.modal-body>p { margin-bottom:20px;color:var(--muted);font-size:13px;line-height:1.7; }
.modal-body>.field { margin-bottom:22px; }
.modal-actions { display:flex;justify-content:flex-end;margin-top:26px; }
.visa-choice { border:0;padding:0;margin:0 0 22px;display:flex;gap:10px; }
.visa-choice legend { font-size:12px;margin-bottom:8px; }
.visa-choice label { display:flex;align-items:center;gap:9px;flex:1;border:1px solid var(--line);border-radius:5px;padding:13px;font-size:13px;cursor:pointer; }
.visa-choice label:has(input:checked) { border-color:var(--accent);background:var(--accent-soft);color:var(--accent); }
.visa-choice input { margin:0; }
.document-modal { width:min(980px,calc(100% - 40px)); }
.document-modal-layout { display:grid;grid-template-columns:minmax(0,1fr) 285px;min-height:550px; }
.document-preview { background:#f0f2f4;min-height:550px;display:flex;align-items:center;justify-content:center;overflow:hidden; }
.document-preview iframe { border:0;width:100%;height:100%;min-height:550px;align-self:stretch; }
.document-preview:has(.pdf-toolbar) { flex-direction:column;align-items:stretch;justify-content:flex-start;height:650px; }
.pdf-toolbar { display:flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;min-height:48px;background:#f8f9fa;border-bottom:1px solid #e0e4e8; }
.pdf-toolbar>span { font-size:11px;color:var(--muted);min-width:45px;text-align:center; }
.pdf-toolbar .icon-button { width:30px;height:30px;flex-basis:30px;border:0;background:transparent; }
.pdf-sheet { overflow:auto;padding:18px;flex:1;min-height:0; }
.pdf-sheet canvas { display:block;width:100%;height:auto;background:white;box-shadow:0 2px 10px #20283012; }
.photo-preview { max-width:80%;max-height:560px;object-fit:contain; }
.preview-loading { color:var(--muted);font-size:12px; }
.no-document { text-align:center;padding:35px;max-width:350px;color:#929ca9; }
.no-document>svg { width:40px;height:40px;margin-bottom:20px; }
.no-document h3 { color:#737e8b;margin-bottom:10px; }
.no-document p { font-size:12px;line-height:1.7; }
.document-tools { padding:24px;min-width:0; }
.document-hint { font-size:12px;color:var(--muted);margin-top:15px;line-height:1.7; }
.file-spec { font-size:10px;margin-top:8px; }
.file-info { margin:20px 0 12px; }
.file-info strong { display:block;font-size:11px;overflow-wrap:anywhere; }
.file-info small { display:block;color:var(--muted);font-size:10px;margin-top:5px; }
.version-select { font-size:10px;color:var(--muted);margin-top:16px; }
.version-select select { font-size:11px;margin-top:5px; }
.document-tools>.inline-notice { margin-top:16px;font-size:11px; }
.upload-control { position:relative;overflow:hidden;cursor:pointer;margin-top:13px; }
.upload-control input { position:absolute;inset:0;opacity:0;cursor:pointer;width:100%; }
.upload-control:focus-within { outline:3px solid #bb8793;outline-offset:3px; }
.document-actions { display:flex; padding:0 0 18px 47px; }
.document-actions .upload-control { margin-top:0; min-height:44px; max-width:100%; }
.upload-progress { font-size:11px;color:var(--muted);margin-top:8px; }
.document-review-tools { border-top:1px solid var(--line);padding-top:20px;margin-top:20px; }
.document-review-tools label { font-size:11px;margin-bottom:6px; }
.document-review-tools textarea { font-size:12px; }
.document-review-tools .button { margin-top:10px;font-size:11px; }
.check-row { display:flex;gap:10px;align-items:flex-start;margin:20px 0;font-size:12px;line-height:1.7; }
.missing-list { padding-left:20px;color:#7b818a;font-size:12px;line-height:2;max-height:40dvh;overflow:auto;margin-bottom:23px; }
.toast { position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);background:#293c36;color:white;box-shadow:0 6px 30px #1b2d3220;padding:13px 20px;border-radius:6px;font-size:12px;max-width:calc(100% - 32px);width:max-content;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100; }
.toast.visible { opacity:1;transform:translate(-50%,0); }
.toast.error { background:#7f383e; }
.skip-link { position:absolute;top:-80px;left:10px;z-index:200;background:white;padding:12px;border:1px solid var(--line); }
.skip-link:focus { top:5px; }
.initial-loading,.error-page { padding:90px 24px;text-align:center;color:var(--muted); }
.error-page h1 { font-size:24px;color:var(--ink);margin-bottom:15px; }
.error-page .button { margin-top:24px; }
@media (min-width:1500px) { .main-shell main { padding:40px 50px; } .workspace-header { padding:0 50px; } .table-head,.case-row { column-gap:24px; } }
@media (max-width:1190px) {
  .workspace { grid-template-columns:184px minmax(0,1fr); }
  .sidebar { padding-left:10px;padding-right:10px; }
  .main-shell main { padding:28px 24px; }
  .workspace-header { padding:0 24px; }
  .table-head,.case-row { grid-template-columns:minmax(145px,1.2fr) minmax(118px,1fr) minmax(140px,1.4fr) 74px 70px 12px;column-gap:9px; }
  .traveler { gap:8px; }.traveler .avatar { display:none; }
  .detail-layout { grid-template-columns:minmax(0,1fr) 245px;gap:22px; }
  .operation-panel { padding-left:20px; }
  .wizard-layout { grid-template-columns:1fr;gap:22px; }
  .wizard-nav { flex-direction:row;overflow-x:auto;padding-bottom:7px;gap:6px; }
  .wizard-nav>button { flex-shrink:0;max-width:145px; }
  .client-layout { grid-template-columns:minmax(0,1fr) 240px;gap:30px; }
}
@media (max-width:960px) {
  .workspace { grid-template-columns:1fr; }
  .sidebar { display:none; }
  .main-shell main { padding:28px; }
  .workspace-header { height:52px;padding:0 28px; }
  .metrics { margin-bottom:23px; }
  .client-shell { padding:0 28px; }
  .detail-layout { gap:25px;grid-template-columns:minmax(0,1fr) 245px; }
  .detail-heading h1 { font-size:26px; }
  .client-layout { grid-template-columns:minmax(0,1fr) 220px;gap:25px; }
  .client-aside { padding-left:20px; }
}
@media (max-width:700px) {
  .demo-bar { padding:0 16px;height:38px;font-size:10px; }
  .demo-detail { display:none; }.view-switch { gap:3px; }.view-switch>span { display:none; }
  .view-switch select { font-size:10px; }
  .workspace-header { padding:0 18px; }.operator-label { font-size:10px; }
  .main-shell main { padding:25px 18px; }
  h1 { font-size:28px; }
  .page-heading { gap:14px;align-items:flex-start;flex-wrap:wrap;margin-bottom:23px; }
  .page-heading>.button { min-height:36px;padding:8px 11px;font-size:11px; }
  .page-heading p.muted { font-size:11px; }
  .metrics { grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0;padding:19px 0; }
  .metric { padding:0 15px; }.metric:nth-child(2) { border:0; }.metric:nth-child(3) { padding-left:0; }
  .metric>span { min-height:20px; }.metric strong { font-size:27px;margin-top:5px; }
  .list-toolbar { gap:13px; }.list-search { width:100%;flex-wrap:wrap; }.search { flex:1; }
  .search>input:not([type=checkbox]) { width:100%;min-width:150px;font-size:12px; }
  .list-search>select { width:150px;font-size:10px; }
  .table-head { display:none; }
  .case-table { border-top:1px solid var(--line); }
  .case-row { grid-template-columns:minmax(0,1fr) auto;gap:12px 10px;padding:19px 2px;position:relative; }
  .traveler { grid-column:1;grid-row:1; }.traveler .avatar { display:flex; }.traveler strong { font-size:13px; }.traveler small { font-size:10px; }
  .case-row>div:nth-child(2) { grid-column:2;grid-row:1;max-width:112px;justify-self:end; }
  .next-cell { grid-column:1/-1;grid-row:2;padding-left:47px;padding-right:12px; }
  .next-cell>span { font-size:12px; }.next-cell small { margin-top:2px; }
  .owner-cell { grid-column:1;grid-row:3;padding-left:47px; }
  .travel-date { grid-column:2;grid-row:3;text-align:right; }.travel-date small { display:none; }
  .row-arrow { display:none; }.list-foot { font-size:9px;gap:12px; }
  .detail-back { margin-top:-5px;margin-bottom:20px; }
  .detail-heading { align-items:center; }.detail-heading h1 { font-size:25px; }
  .heading-actions { gap:5px; }.heading-actions>.button { min-height:36px;padding:8px 10px;font-size:11px; }
  .detail-tabs { gap:20px;margin-bottom:22px;overflow-x:auto; }.detail-tabs>button { font-size:12px; }
  .detail-layout,.client-layout { grid-template-columns:1fr;gap:30px; }
  .operation-panel { border-left:0;border-top:1px solid var(--line);padding:25px 0 0; }
  .operation-panel label { font-size:12px; }.operation-panel input,.operation-panel select,.operation-panel textarea { min-height:42px;font-size:14px; }
  .operation-panel .panel-title h2 { font-size:16px; }
  .next-banner { padding:18px 16px;gap:11px;margin-bottom:24px; }
  .next-banner h2 { font-size:18px; }.next-banner p { font-size:12px; }
  .section-title { margin-top:25px; }.section-title>.muted { font-size:10px;text-align:right;max-width:130px; }
  .review-overview button { padding:0 10px; }.review-overview button>span { font-size:10px; }.review-overview strong { font-size:26px; }
  .document-open { gap:10px;padding:17px 0; }.document-open .grow strong { font-size:12px; }.document-open>svg { display:none; }
  .document-open .pill { font-size:9px;max-width:85px;flex-shrink:0; }
  .document-actions { padding-left:41px; }
  .file-tile { width:31px;height:40px; }.form-summary-row { padding:13px;gap:9px; }.form-summary-row>svg { display:none; }.form-summary-row .pill { font-size:9px; }
  .data-summary { gap:20px 15px; }.data-summary dd { font-size:12px; }
  .client-shell { padding:0 18px; }.client-header { padding:19px 0; }.client-header .button { padding:6px;font-size:11px;gap:6px; }
  .brand img { width:35px;height:35px; }.brand strong { font-size:21px; }.brand small { font-size:9px; }
  .client-intro { margin:28px 0 19px;flex-wrap:wrap;gap:19px; }.client-intro h1 { font-size:29px; }
  .trip-summary { padding-left:0;border:0;gap:9px; }.trip-summary>svg { width:17px;height:17px; }.trip-summary>div { display:flex;gap:10px;align-items:baseline; }.trip-summary strong { font-size:12px; }.trip-summary span { font-size:11px; }
  .client-aside { padding:25px 0 0;border-left:0;border-top:1px solid var(--line); }
  .tracking-panel h2 { font-size:16px; }.tracking-steps strong { font-size:13px; }.tracking-steps small { font-size:11px; }
  .client-footer { margin-top:40px;flex-direction:column;gap:7px;font-size:10px; }
  .fields-grid { gap:20px 14px; }.field input,.field select,.field textarea { font-size:16px; }
  .field label { font-size:12px; }.wizard-nav>button { font-size:11px;min-height:42px; }
  .fields-grid>.field>label { min-height:36px; }
  .fields-grid>.field.wide>label { min-height:0; }
  .wizard-heading h2 { font-size:20px; }.wizard-actions { gap:14px; }.save-state { width:100%;font-size:11px; }
  .read-fields { gap:20px 16px; }.read-fields dd { font-size:12px; }
  dialog { width:calc(100% - 24px);max-height:calc(100dvh - 24px); }.modal-header { padding:19px; }.modal-header h2 { font-size:20px; }.modal-body { padding:20px; }
  .modal-body input,.modal-body select,.modal-body textarea { font-size:16px; }
  .document-modal { width:calc(100% - 20px); }.document-modal-layout { grid-template-columns:1fr; }.document-preview { min-height:280px;height:280px; }.document-preview iframe { min-height:280px;height:280px; }.photo-preview { max-height:260px; }
  .document-preview:has(.pdf-toolbar) { height:360px;min-height:0; }
  .pdf-sheet { padding:10px; }
  .document-tools { padding:20px; }.document-tools .file-info { margin-top:13px; }.document-review-tools { margin-top:16px; }.document-review-tools textarea { font-size:16px; }
  .toast { bottom:16px;font-size:12px; }.submit-row>.button { width:100%; }
}
@media (max-width:380px) { .fields-grid,.read-fields { grid-template-columns:1fr; }.list-search>select { width:100%; }.detail-tabs { gap:15px; }.operator-label>svg { display:none; }.review-overview button>span>svg { display:none; } }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important;transition:none !important; } }
.direction-tabs { border-bottom:1px solid var(--line);margin:-10px 0 28px; }
.live-bar { background:#edf5f2;color:#4c685e; }
.live-bar #demo-controls { display:flex;align-items:center;gap:16px; }
.live-bar .text-button { color:#4c685e;padding:6px; }
.live-identity { font-weight:550; }
.auth-shell { max-width:470px;padding:46px 24px;margin:0 auto; }
.auth-shell>.brand { margin-bottom:46px; }
.auth-heading { margin-bottom:28px; }
.auth-heading .eyebrow { margin-bottom:10px; }
.auth-heading h1 { font-size:28px; }
.auth-form { display:grid;gap:20px; }
.auth-form>label { font-size:12px;font-weight:550; }
.auth-form label>input,.auth-form .password-field { margin-top:8px; }
.auth-form input { font-size:15px; }
.auth-form p { color:var(--muted);font-size:12px;line-height:1.7;overflow-wrap:anywhere; }
.auth-form p.inline-error { color:var(--red);margin:0; }
.auth-form .auth-note { font-size:11px; }
.auth-form p>a { text-decoration:underline; }
.password-field { position:relative; }
.password-field>input { padding-right:46px !important; }
.password-field>.icon-button { position:absolute;right:3px;top:3px;border:0;width:36px;height:36px; }
.auth-form .check-row { margin:0;align-items:flex-start;font-size:12px;font-weight:400; }
.auth-form .check-row>input { margin:4px 0 0; }
.auth-help { border-top:1px solid var(--line);padding-top:20px;margin-top:25px;font-size:12px;color:var(--muted); }
.auth-help summary { cursor:pointer; }
.auth-help p { margin:12px 0;line-height:1.7; }
.auth-help a { color:var(--accent); }
.auth-demo-link { display:flex;align-items:center;gap:6px;margin-top:30px;font-size:11px;color:var(--muted); }
.team-modal { width:min(700px,calc(100% - 24px)); }
.team-row { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line); }
.team-row:first-child { padding-top:0; }
.team-row strong,.team-row small { display:block; }
.team-row small { font-size:11px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere; }
.team-row>.pill { align-self:start; }
.team-actions { grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap; }
.security-history { margin-top:22px;font-size:12px; }
.security-history>summary { cursor:pointer;margin-bottom:20px;color:var(--muted); }
@media(max-width:700px) { .auth-shell { padding:32px 22px; }.auth-form input { font-size:16px; }.live-identity { max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.live-bar #demo-controls { gap:4px; } }
.direction-section { margin-top:30px; }
.filter-caption { font-size:12px;color:var(--accent);padding:0 0 14px;font-weight:550; }
.workload { border-top:1px solid var(--line); }
.workload-row { display:grid;grid-template-columns:minmax(150px,1fr) 90px 90px 130px;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px; }
.workload-head { padding:10px 0;color:var(--muted);font-size:11px; }
.workload-row .text-button { text-align:left; }
.workload-row .owner-name { color:var(--ink);font-size:13px; }
.overdue { color:var(--amber); }
.priority-list { border-top:1px solid var(--line); }
.priority-row { display:grid;grid-template-columns:minmax(0,1fr) 145px 18px;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px; }
.priority-row:hover { background:var(--soft); }
.priority-row strong,.priority-row span,.priority-row small { display:block; }
.priority-row div:first-child span { margin-top:5px;color:var(--muted); }
.priority-row div:nth-child(2) { text-align:right; }
.priority-row small { font-size:11px;margin-top:5px; }
.activity-filters { display:grid;grid-template-columns:minmax(140px,1fr) minmax(160px,1.3fr) 140px 140px auto 36px;gap:12px;align-items:end;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.activity-filters label { font-size:11px;color:var(--muted);min-width:0; }
.activity-filters input,.activity-filters select { margin-top:6px;font-size:12px; }
.activity-filters .icon-button { align-self:end;margin-bottom:3px; }
.activity-footer { display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:20px 0;font-size:12px;color:var(--muted); }
.event-body { flex:1;min-width:0;overflow-wrap:anywhere; }
.event-case { display:block;font-size:11px;color:var(--accent);margin-bottom:6px; }
.event-list small { color:#717780; }
.audit-changes { margin-top:10px;max-width:900px; }
.audit-changes>summary { font-size:11px;color:var(--muted);cursor:pointer;width:fit-content;padding:4px 0; }
.audit-grid { display:grid;grid-template-columns:minmax(0,.8fr) repeat(2,minmax(0,1fr));margin-top:8px;font-size:11px;border-top:1px solid var(--line); }
.audit-grid>* { padding:10px 12px 10px 0;border-bottom:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere; }
.audit-grid>span { color:var(--muted);font-size:10px; }
.audit-grid>strong { font-size:11px; }
.staff-edit-bar { display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;font-size:12px;color:var(--muted); }
@media (max-width:1200px) { .activity-filters { grid-template-columns:repeat(2,minmax(0,1fr)) auto 36px; }.activity-filters>label:nth-child(2) { grid-column:2/5; } }
@media (max-width:700px) {
  .direction-tabs { margin-top:-10px;gap:25px; }
  .workload-row { grid-template-columns:minmax(0,1fr) 44px 52px 80px;gap:6px;font-size:12px; }
  .workload-row .owner-name { font-size:11px; }
  .workload-row svg { display:none; }
  .workload-row .text-button { font-size:11px; }
  .workload-head { font-size:9px; }
  .priority-row { grid-template-columns:minmax(0,1fr) 95px;gap:12px; }
  .priority-row>svg { display:none; }
  .priority-row small { font-size:10px; }
  .activity-filters { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 10px; }
  .activity-filters>label:nth-child(-n+2) { grid-column:1/-1; }
  .activity-filters input,.activity-filters select { font-size:14px; }
  .activity-filters .icon-button { justify-self:end; }
  .audit-grid { font-size:10px;grid-template-columns:minmax(0,.8fr) repeat(2,minmax(0,1fr)); }
  .audit-grid>* { padding:8px 7px 8px 0; }
  .audit-grid>strong { font-size:10px; }
}
