/* Shared visual layer. Existing IDs, forms, permissions and actions remain intact. */
:root{--purple:#35213f;--aqua:#286d70;--gold:#a88849;--ink:#302a33;--muted:#726b73;--line:#e5dfd8;--ivory:#f6f3ed;--surface:#fffefd;--shadow:0 8px 28px rgba(40,25,44,.045)}
body.j2-platform{background:var(--ivory);font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}
.j2-platform h1,.j2-platform h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em;color:var(--purple)}
.j2-platform h1{font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.16;margin:8px 0 12px}.j2-platform h2{font-size:1.75rem;line-height:1.25}.j2-platform h3{font-size:1.05rem;font-weight:600;color:var(--purple);margin:30px 0 14px;letter-spacing:.015em}.j2-platform h4{font-size:1rem;color:var(--purple)}
.j2-platform a{color:var(--purple);text-underline-offset:4px}.j2-platform a:hover{color:var(--aqua)}
.j2-platform>header{padding:15px 40px;background:var(--surface);border-bottom:1px solid var(--line);min-height:98px}.j2-platform>header img{width:120px;max-height:80px;object-fit:contain}.j2-platform>header nav{font-size:.875rem;gap:24px}.j2-platform>header nav a{text-decoration:none}
.j2-platform main.wide{max-width:1560px;padding:36px 40px 64px}.j2-platform .eyebrow{font-size:.75rem;color:var(--gold);letter-spacing:.18em;margin:0 0 8px}.j2-platform .small{font-size:.875rem;color:var(--muted)}
.j2-platform button,.j2-platform .button{font-family:inherit;font-size:.875rem;font-weight:600;border-radius:5px;padding:11px 17px;line-height:1.45;min-height:42px;transition:background .15s,border-color .15s;box-shadow:none}
.j2-platform button:hover:not(:disabled){background:#4c3458}.j2-platform button.secondary{color:var(--purple);background:var(--surface);border:1px solid #dcd3df}.j2-platform button.secondary:hover:not(:disabled){background:#f0ebf2;border-color:#b9a8c3}.j2-platform button:disabled{cursor:not-allowed;opacity:.5}.j2-platform button:focus-visible,.j2-platform a:focus-visible,.j2-platform summary:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.j2-platform input,.j2-platform select,.j2-platform textarea{font-family:inherit;font-size:1rem;padding:11px 13px;border:1px solid #d4ccd5;background:#fffefd;border-radius:5px;min-width:0;min-height:46px;color:var(--ink)}.j2-platform textarea{line-height:1.6;min-height:96px;resize:vertical}.j2-platform label{font-size:.875rem;line-height:1.5;font-weight:500;color:#514756}.j2-platform input:focus,.j2-platform select:focus,.j2-platform textarea:focus{outline:2px solid #286d7038;border-color:var(--aqua)}
.j2-platform input[type=checkbox]{width:18px!important;min-height:18px;height:18px;accent-color:var(--purple);vertical-align:middle}.j2-platform input[type=file]{font-size:.875rem;padding:12px}.j2-platform input[type=file]::file-selector-button{background:#eee8f1;border:0;border-radius:3px;padding:7px 10px;margin-right:12px;color:var(--purple)}
.j2-platform .card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:24px;box-shadow:var(--shadow)}
.j2-platform .topline{flex-wrap:wrap;align-items:center;gap:12px}.j2-platform main>.topline{padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}.j2-platform main>.topline>div:first-child{flex:1;min-width:210px}.j2-platform main>.topline>button{align-self:flex-end}
.j2-platform .notice{background:#edf2f1;color:#3d5d5e;border-left:2px solid var(--aqua);border-radius:3px;padding:12px 16px;font-size:.875rem}.j2-platform .notice:empty,.j2-platform .error:empty{display:none}.j2-platform .error{color:#852c3b;background:#fbf0f1;border-radius:4px;padding:12px 16px;font-size:.875rem}.j2-platform .metrics{gap:16px;margin:24px 0}.j2-platform .metrics .card{padding:16px 20px;box-shadow:none}.j2-platform .metrics span{font-size:.875rem;color:var(--muted)}.j2-platform .metrics strong{font-size:1.6rem;font-weight:500;font-variant-numeric:tabular-nums;margin-top:5px}
.j2-platform .enquiry-summary{gap:12px;margin:24px 0 30px}.j2-platform .enquiry-summary-card{border:1px solid var(--line);border-top:2px solid #bdac8c;border-radius:6px;background:var(--surface);color:var(--purple);box-shadow:var(--shadow);padding:20px 18px;min-height:124px;gap:18px}.j2-platform .enquiry-summary-card span{font-size:.875rem;font-weight:500;color:var(--muted)}.j2-platform .enquiry-summary-card strong{font-size:2rem;font-weight:400;font-variant-numeric:tabular-nums}.j2-platform .enquiry-summary-card:hover,.j2-platform .enquiry-summary-card[aria-pressed=true]{background:#ebe5f0;border-color:#866e94}.j2-platform .enquiry-summary-card[aria-pressed=true] span{color:var(--purple)}
.j2-platform .tabs{border-bottom:1px solid var(--line);gap:4px;padding-bottom:8px;margin:28px 0 20px}.j2-platform .tabs button{background:transparent;color:var(--muted);border:0;border-radius:3px;min-height:44px}.j2-platform .tabs button[aria-pressed=true]{background:#ece5ef;color:var(--purple)}
.j2-platform .toolbar{gap:16px;flex-wrap:wrap;margin:16px 0}.j2-platform .toolbar label{margin:0;min-width:110px}.j2-platform .toolbar input{max-width:420px}.j2-platform #status-filter{max-width:320px}
.j2-platform .table-wrap{padding:0;overflow:auto;border-radius:7px}.j2-platform table{font-size:.875rem;line-height:1.55;table-layout:auto}.j2-platform th{background:#f0ece6;text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.075em;padding:15px 18px;white-space:nowrap;color:#66596c}.j2-platform td{padding:20px 18px;border-bottom:1px solid #ece7e1;overflow-wrap:anywhere;max-width:310px}.j2-platform td strong{font-weight:600;color:var(--purple);font-size:1rem}.j2-platform td small{font-size:.875rem;margin-top:4px;line-height:1.5}.j2-platform tbody tr:hover{background:#faf7f2}.j2-platform td button{font-size:.875rem;padding:9px 12px}.j2-platform tr:last-child td{border-bottom:0}
.j2-platform .status,.j2-platform .j2-badge{font-size:.875rem;line-height:1.4;padding:5px 10px;display:inline-flex;border:1px solid #ded5e4;border-radius:4px;color:#574561;background:#eee8f1;white-space:normal;font-weight:500}.j2-platform [data-tone=good]{color:#305b46;background:#ecf3ee;border-color:#ccdcd0}.j2-platform [data-tone=attention]{color:#745b2c;background:#f6f0e2;border-color:#e4d6b9}.j2-platform [data-tone=required]{color:#833b47;background:#f8eeee;border-color:#e6cdd0}.j2-platform [data-tone=info]{color:#28666b;background:#eaf2f2;border-color:#c9dddf}
.j2-platform dialog{color:var(--ink);border:1px solid #d8cfdd;background:var(--surface);border-radius:8px;width:min(620px,94vw);max-height:92dvh;padding:30px;box-shadow:0 24px 80px #22112e38;overflow:auto;overscroll-behavior:contain}.j2-platform dialog::backdrop{background:#211428a6;backdrop-filter:blur(3px)}.j2-platform dialog h2{margin:0 0 18px}.j2-platform dialog.quote-dialog{width:min(1120px,96vw)}.j2-platform #travel-dialog{width:min(960px,96vw)}
.j2-platform dialog>.topline,.j2-platform .quote-controls>.topline{padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:22px}.j2-platform .quote-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.j2-platform .field{margin-bottom:16px}.j2-platform .actions{gap:10px;padding:18px 0 4px;flex-wrap:wrap}.j2-platform #approve-quote{background:#34533f}.j2-platform #approve-quote:hover:not(:disabled){background:#253e2d}
.j2-platform details{border:1px solid var(--line);border-radius:6px;padding:0 18px;margin:14px 0;background:var(--surface)}.j2-platform summary{cursor:pointer;font-size:.9375rem;font-weight:600;color:var(--purple);padding:16px 0!important;line-height:1.5}.j2-platform details[open]{padding-bottom:20px}.j2-platform details>details{margin:12px 0}.j2-platform main>details.card{padding:0 24px;box-shadow:none}.j2-platform main>details.card[open]{padding-bottom:24px}
.j2-platform .package-item{border:1px solid var(--line);border-radius:6px;margin:24px 0;padding:22px;background:#faf8f4}.j2-platform .package-item legend{font-size:.75rem;color:var(--gold);text-transform:uppercase;letter-spacing:.14em;padding:0 8px;font-weight:600}.j2-platform .package-item details{background:var(--surface)}.j2-platform .package-item [data-earnings]{font-size:.875rem;background:#f0ebe3;border-left:2px solid var(--gold);padding:12px 14px;margin:14px 0}.j2-platform fieldset{min-width:0}
.j2-platform .enquiry-details{margin:20px 0;display:grid;grid-template-columns:minmax(160px,.7fr) minmax(0,1.7fr);gap:0}.j2-platform .enquiry-details dt,.j2-platform .enquiry-details dd{margin:0;padding:13px 16px;border-bottom:1px solid var(--line);font-size:.9375rem;overflow-wrap:anywhere}.j2-platform .enquiry-details dt{color:#62546a;font-weight:500;background:#f6f2f7}.j2-platform .enquiry-details dd{color:var(--ink);line-height:1.6}.j2-platform #package-finances dd,.j2-platform #client-booking-finances dd{font-weight:600;color:var(--purple)}
.j2-platform #catalog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.j2-platform #catalog-list button{text-align:left;line-height:1.6;padding:14px 16px;white-space:normal}.j2-platform .sent-quote-card,.j2-platform .chat-message{border-color:var(--line);border-radius:6px;background:var(--surface);padding:18px}.j2-platform .chat-message.chat-mine{background:#eef3f2;border-color:#cadbd9}.j2-platform #staff-chat-history{background:#f4f1eb;border-color:var(--line);border-radius:6px}.j2-platform .chat-contact[aria-pressed=true]{background:var(--purple)}
.j2-platform .j2-greeting{font-size:.9375rem;color:var(--muted);margin-bottom:3px}.j2-platform .j2-welcome-meta{color:var(--muted);font-size:.875rem;margin:0}.j2-platform .j2-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.j2-platform .j2-section-head h2{margin:0;font-size:1.6rem}.j2-platform .j2-section-head small{font-size:.875rem;color:var(--muted)}
.j2-platform .j2-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px;margin:28px 0}.j2-platform .j2-workspace>section{min-width:0}.j2-platform .j2-trip{padding:18px 0;border-bottom:1px solid var(--line)}.j2-platform .j2-trip:first-child{padding-top:0}.j2-platform .j2-trip:last-child{border-bottom:0;padding-bottom:0}.j2-platform .j2-trip-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px}.j2-platform .j2-trip h3{font-family:Georgia,serif;font-size:1.3rem;font-weight:400;margin:0 0 4px}.j2-platform .j2-trip p{font-size:.875rem;color:var(--muted);margin:4px 0}.j2-platform .j2-trip-statuses{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.j2-platform .j2-attention-item{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.j2-platform .j2-attention-item strong{font-size:.875rem;font-weight:600;color:var(--purple)}.j2-platform .j2-attention-item p{font-size:.875rem;margin:3px 0;color:var(--muted)}.j2-platform .j2-attention-item:last-child{border:0}.j2-platform .j2-count{color:var(--gold);font-size:1rem;font-variant-numeric:tabular-nums}
.j2-platform .j2-profile-title{font-size:1.65rem!important;font-family:Georgia,serif;color:var(--purple);margin:14px 0!important}.j2-platform .j2-profile-meta{font-size:.9375rem;color:var(--muted);margin-bottom:20px}.j2-platform .j2-jump-nav{display:flex;gap:6px;flex-wrap:wrap;padding:12px 0 16px;margin-bottom:20px;border-bottom:1px solid var(--line)}.j2-platform .j2-jump-nav button{font-size:.875rem;background:#f1ecf3;color:var(--purple);min-height:38px;padding:8px 12px;border:1px solid transparent}.j2-platform .j2-form-group{border:1px solid var(--line);margin:20px 0;background:var(--surface);padding:0 22px}.j2-platform .j2-form-group[open]{padding-bottom:22px}.j2-platform .j2-form-group>summary{font-size:1rem}
.j2-platform #travel-document-list,.j2-platform #requested-documents{display:grid;gap:12px;margin:20px 0}.j2-platform #travel-document-list>.card{box-shadow:none;padding:20px}.j2-platform #requested-documents>p{border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;padding:16px;margin:0;background:#fcfaf6}.j2-platform #travel-document-list a{font-weight:600;overflow-wrap:anywhere}.j2-platform #travel-document-list p{font-size:.875rem;margin:10px 0}.j2-platform #requirements-checklist details{box-shadow:none}.j2-platform #protection-flag:not(:empty){color:#745b2c;background:#f6f0e2;border-color:var(--gold)}
.j2-platform #quote-preview{border:1px solid var(--line);border-top:3px solid var(--gold);padding:44px;background:#fffefd;color:var(--ink);border-radius:0;margin-top:32px;font-family:Inter,"Segoe UI",Arial,sans-serif}.j2-platform #quote-preview .quote-brand{background:none;padding:0 0 24px;border-bottom:1px solid #bdac8c}.j2-platform #quote-preview .quote-brand img{width:145px}.j2-platform #quote-preview .quote-brand div{color:var(--purple)}.j2-platform #quote-preview .quote-brand strong{font-size:.75rem;letter-spacing:.16em}.j2-platform #quote-preview .quote-intro{padding:30px 0 24px}.j2-platform #quote-preview h1{font-family:Georgia,serif;font-size:2.5rem;color:var(--purple)}.j2-platform #quote-preview .quote-kicker{font-size:.875rem;color:var(--aqua)}.j2-platform #quote-preview .quote-section{margin:24px 0}.j2-platform #quote-preview .quote-section h3{font-size:.875rem;text-transform:uppercase;letter-spacing:.09em;font-weight:600}.j2-platform #quote-preview .quote-price{background:#f4f0e7;border-left:2px solid var(--gold);padding:24px}.j2-platform #quote-preview .quote-price strong{font-family:Georgia,serif;font-size:2rem;font-weight:400;color:var(--purple)}.j2-platform #quote-preview .quote-xcd-equivalent{font-size:.875rem;color:var(--muted)}.j2-platform #quote-preview .quote-footer{border-top:1px solid #bdac8c;color:var(--muted)}
.j2-platform #portal-trips>.card{margin:24px 0;padding:30px}.j2-platform #portal-trips article.card{box-shadow:none;margin:16px 0;background:#faf8f4}.j2-platform .portal-upload{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.j2-platform .portal-upload label:last-of-type{grid-column:1/-1}.j2-platform .portal-upload button{justify-self:start}.j2-platform #portal-trips h2{border-bottom:1px solid var(--line);padding-bottom:18px}.j2-platform .j2-rail{display:none}
@media(min-width:1180px){body.j2-staff{padding-left:210px}.j2-staff .j2-rail{display:flex;position:fixed;inset:0 auto 0 0;width:210px;background:#2f1e39;color:#f5f0e8;padding:30px 20px;z-index:3;flex-direction:column;gap:8px;border-right:1px solid #4e3c58}.j2-rail-brand{border-bottom:1px solid #594860;padding:0 0 24px;margin-bottom:18px}.j2-rail-brand strong{font-family:Georgia,serif;font-weight:400;font-size:1.5rem;display:block;color:#f5f0e8;letter-spacing:.02em}.j2-rail-brand span{display:block;font-size:.75rem;letter-spacing:.12em;color:#c0a676;margin-top:6px}.j2-platform .j2-rail button{color:#e1d8e7;background:transparent;text-align:left;border-radius:4px;font-weight:400;font-size:.875rem;padding:12px;min-height:44px}.j2-platform .j2-rail button:hover,.j2-platform .j2-rail button[aria-current=true]{background:#4a3655;color:#fff}.j2-rail-footer{margin-top:auto;padding:22px 12px 0;border-top:1px solid #594860;font-size:.75rem;line-height:1.7;color:#bfb0c7}.j2-platform main.wide{padding:32px 36px 64px}}
@media(max-width:1100px){.j2-platform .j2-workspace{grid-template-columns:1fr}.j2-platform .enquiry-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.j2-platform>header{padding:14px 24px}.j2-platform main.wide{padding:28px 24px 48px}}
@media(max-width:680px){.j2-platform main.wide{padding:24px 16px 40px}.j2-platform>header{padding:12px 16px;gap:12px}.j2-platform>header nav{gap:14px}.j2-platform .enquiry-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.j2-platform .enquiry-summary-card{padding:16px;min-height:105px}.j2-platform .metrics{grid-template-columns:1fr}.j2-platform .quote-fields,.j2-platform .portal-upload{grid-template-columns:1fr}.j2-platform .quote-fields .span-two,.j2-platform .portal-upload label:last-of-type{grid-column:auto}.j2-platform .topline{align-items:flex-start}.j2-platform dialog,.j2-platform dialog.quote-dialog{padding:20px;width:96vw;max-height:94dvh}.j2-platform .enquiry-details{grid-template-columns:1fr}.j2-platform .enquiry-details dt{padding:10px 12px 4px;border:0}.j2-platform .enquiry-details dd{padding:4px 12px 14px}.j2-platform .card{padding:20px}.j2-platform .table-wrap{padding:0}.j2-platform th,.j2-platform td{padding:14px 12px}.j2-platform .tabs{gap:4px}.j2-platform .tabs button{flex:1 0 auto}.j2-platform #catalog-list{grid-template-columns:1fr}.j2-platform .j2-trip-header{flex-wrap:wrap}.j2-platform #quote-preview{padding:24px}.j2-platform #quote-preview h1{font-size:2rem}.j2-platform #portal-trips>.card{padding:20px}.j2-platform .j2-section-head{align-items:flex-start}.j2-platform .j2-jump-nav{gap:5px}.j2-platform .j2-form-group{padding:0 16px}.j2-platform .package-item{padding:16px}.j2-platform input,.j2-platform textarea,.j2-platform select{max-width:100%}}
@media(prefers-reduced-motion:reduce){.j2-platform *{scroll-behavior:auto!important;transition:none!important}}
@media print{body.j2-platform{padding-left:0!important}.j2-rail,.j2-jump-nav{display:none!important}.j2-platform #quote-preview{padding:0!important;border-radius:0;box-shadow:none}.j2-platform #quote-preview h1{font-size:26pt}.j2-platform #quote-preview .quote-brand{padding-bottom:18px}.j2-platform #quote-preview .quote-price{background:#f4f0e7!important}.j2-platform .quote-price strong{font-size:22pt!important}}
.j2-platform .j2-quote-groups{display:block}.j2-platform .j2-directory{margin-top:20px}.j2-platform .j2-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.j2-platform .j2-directory-grid article{border:1px solid var(--line);border-radius:5px;padding:18px;background:#faf8f4}.j2-platform .j2-directory-grid strong{font-size:.9375rem;font-weight:600;color:var(--purple)}.j2-platform .j2-directory-grid p{margin:12px 0 0}@media(max-width:1000px){.j2-platform .j2-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.j2-platform .j2-directory-grid{grid-template-columns:1fr}}
.j2-platform .eyebrow,.j2-platform .package-item legend,.j2-platform .j2-count{color:#82652f}.j2-platform #commission-results td:nth-child(4),.j2-platform #commission-results td:nth-child(5),.j2-platform #commission-results td:nth-child(6){font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--purple)}.j2-platform .j2-workspace details{box-shadow:none}.j2-platform .j2-workspace details .j2-trip:first-of-type{padding-top:12px}

.j2-platform .document-option{padding:15px 0;border-bottom:1px solid #e6dfeb}.j2-platform .document-option>label{display:flex;align-items:center;gap:10px;font-weight:600}.j2-platform .document-option input[type=checkbox]{width:18px;height:18px;flex:none}.j2-platform .document-option-detail{margin-top:12px}.j2-platform .document-summary-action{white-space:normal;text-align:left}.j2-platform #document-email-history .card{margin:16px 0}.j2-platform .document-email-dialog iframe{max-width:100%}
/* Dedicated workspace routing, with one visible business section at a time. */
.j2-platform [data-page-hidden]{display:none!important}
.j2-platform .j2-rail{overflow-y:auto}
.j2-platform .j2-rail a[data-page]{display:block;color:#e1d8e7;background:transparent;text-align:left;border-radius:4px;font-weight:400;font-size:.875rem;padding:10px 12px;min-height:44px;text-decoration:none;line-height:1.5}
.j2-platform .j2-rail a[data-page]:hover,.j2-platform .j2-rail a[aria-current=page]{background:#4a3655;color:white}
.j2-menu-toggle{display:none}.j2-record-back{margin-bottom:18px}.j2-record-breadcrumb:empty{display:none}.j2-record-breadcrumb{font-size:.875rem;color:var(--muted)}
@media(max-width:1179px){.j2-menu-toggle{display:block}.j2-platform .j2-rail.j2-drawer-open{display:flex;position:fixed;inset:0 auto 0 0;width:min(290px,85vw);padding:24px 18px;background:#2f1e39;color:#f5f0e8;z-index:20;flex-direction:column;box-shadow:0 0 0 100vmax #21142899}.j2-rail-brand strong{display:block;color:#f5f0e8;font:1.5rem Georgia,serif}.j2-rail-brand span{color:#c0a676;font-size:.75rem}.j2-rail-footer{color:#bfb0c7;font-size:.75rem;margin-top:20px}}
.j2-platform dialog.j2-inline-messages{position:static;width:100%;max-width:none;max-height:none;border:0;box-shadow:none;padding:0;margin:0}.j2-inline-messages #close-staff-messages,.j2-inline-messages .j2-record-back{display:none}
