:root{--navy:#071e33;--blue:#123b5d;--gold:#c7a356;--muted:#64748b}*{box-sizing:border-box}body{margin:0;background:#f3f5f8;color:var(--navy);font:15px/1.5 system-ui,-apple-system,sans-serif}a{color:var(--blue)}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--navy);padding:16px;overflow:auto;color:white}.sidebar a{color:#d5deea;text-decoration:none;display:block;padding:10px 14px;border-radius:8px}.brand{text-align:center;margin-bottom:12px}.brand img{width:115px;display:block;margin:auto}.brand span{font-size:11px;letter-spacing:.1em}.sidebar nav{display:grid;gap:2px}.sidebar a.active{background:#123b5d;color:#dfc985;border-left:3px solid var(--gold)}main{max-width:1550px;margin-left:230px;padding:30px 36px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}header small{display:block;color:var(--muted)}h1{font-size:30px;margin:4px 0}h2{font-size:21px;margin-top:0}h3{font-size:17px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:var(--muted)}section{background:white;border:1px solid #e2e7ee;border-radius:14px;padding:25px;margin-bottom:22px;box-shadow:0 4px 20px #071e3303}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:22px 0}.stats article{background:white;border:1px solid #e2e7ee;padding:20px;border-radius:12px}.stats span{text-transform:capitalize;color:var(--muted)}.stats strong{display:block;font-size:25px;margin-top:6px}.trip{display:flex;justify-content:space-between;gap:22px;border-bottom:1px solid #e2e7ee;padding:16px 0}.trip h3{margin:0}.trip p{margin:8px 0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}label{display:grid;gap:7px;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid #ccd5df;border-radius:8px;background:#fff;padding:11px 12px;color:var(--navy);font:inherit;min-width:0}input:focus,select:focus{outline:2px solid #c7a356}.wide{grid-column:1/-1}.check{display:flex;align-items:center}.check input{width:18px}.passenger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;background:#f6f8fa;margin:10px 0;border-radius:8px}button,.button{display:inline-block;background:var(--blue);color:white;border:0;border-radius:8px;padding:12px 18px;font:600 13px system-ui;cursor:pointer;text-decoration:none;align-self:end}.light{background:#eaf0f5;color:var(--blue)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{background:#f5f7fa;text-transform:capitalize;font-size:11px;letter-spacing:.03em;color:var(--muted)}th,td{padding:13px 12px;border-bottom:1px solid #e5e9ef}td .fields{display:block}td button{padding:8px}.notice{padding:15px;border-radius:8px;background:#fff7df;border:1px solid #ead6a7}.error{background:#fff0f0;color:#a01e2c;border-color:#f4c1c1}.good{background:#e8f7ed;color:#166338;border-color:#bde0c8}.muted,footer{color:var(--muted);font-size:13px}.badge{display:inline-block;padding:4px 10px;background:#edf2f7;border-radius:20px;font-size:12px}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}footer{padding:20px 0;display:flex;justify-content:space-between}.boarding-pass{max-width:820px;padding:0;overflow:hidden;border-color:var(--gold)}.ticket-head{background:var(--navy);color:white;padding:20px;display:flex;align-items:center;gap:24px}.ticket-head img{width:150px}.ticket-head em{color:#dfc985;font-family:Georgia,serif}.ticket-body{padding:30px}#ticket-qr svg{width:180px;max-width:100%;height:auto}@media(max-width:850px){.sidebar{position:static;width:auto;padding:10px}.brand{display:none!important}.sidebar nav{display:flex;overflow:auto}.sidebar nav a{white-space:nowrap}.sidebar>a:last-child{display:none}main{margin:0;padding:20px 14px}header{align-items:start}.fields{grid-template-columns:1fr}.passenger{grid-template-columns:1fr 1fr}.trip{flex-direction:column;gap:6px}section{padding:18px}.ticket-head img{width:95px}.ticket-head h2{font-size:16px}}@media print{.sidebar,header,footer,button,.actions,form{display:none!important}main{margin:0;padding:0}section{box-shadow:none;break-inside:avoid}.ticket-head{print-color-adjust:exact;-webkit-print-color-adjust:exact}.table-wrap{overflow:visible}table{font-size:11px}}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-grid article{min-height:100px;border:1px solid #dde4ec;border-radius:8px;padding:10px;font-size:12px}.calendar-grid small{display:block;color:var(--muted)}.trip-type-cards{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}@media(max-width:850px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:650px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats strong{font-size:21px}.passenger{grid-template-columns:1fr}}

[hidden]{display:none!important}
/* Crown operations: shared layout and responsive booking workspace. */
:root{--navy:#06223d;--blue:#0c365a;--gold:#c69b42;--muted:#607b96;--line:#e0e9f1}body{background:#f4f8fc;font-size:14px}.sidebar{width:218px;padding:16px 12px;background:linear-gradient(155deg,#072641,#031b31 75%,#073a5b);display:flex;flex-direction:column;z-index:30}.brand{padding:0!important;margin-bottom:12px}.brand img{width:135px;margin-top:-8px}.brand span{display:block;font-size:10px;letter-spacing:.06em}.nav-group{font-size:10px;letter-spacing:.14em;color:#e3c77f;text-transform:uppercase;margin:21px 14px 8px;font-weight:700}.sidebar nav{gap:3px}.sidebar nav a{display:flex;align-items:center;gap:13px;padding:9px 13px;font-size:12px;border-radius:7px}.sidebar nav a>span{width:20px;font-size:19px;line-height:20px;text-align:center;color:#dfe9f3}.sidebar a.active{background:linear-gradient(100deg,#c9a95750,#285978);border-left:3px solid #e8c273;color:#f6d78c}.sidebar-bottom{margin-top:auto;padding-top:28px}.sidebar-bottom em{display:block;font-family:Georgia,serif;color:#e5c575;text-align:center;font-size:15px;margin:8px 0 16px}main{margin-left:218px;padding:0;max-width:none;min-width:0}.topbar{height:67px;margin:0;padding:0 30px;border-bottom:1px solid var(--line);background:#ffffffd9;gap:15px}.topbar .eyebrow{color:#143e64;font-size:11px;letter-spacing:.19em}.user-chip{display:flex;align-items:center;gap:10px;font-size:12px}.user-chip small{font-size:10px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#092c4c;color:white;font-weight:700}.nav-toggle{display:none}.page-hero{padding:24px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.page-hero h1{font-size:30px;letter-spacing:-.025em;line-height:1.2}.page-hero p{margin:6px 0;font-size:13px}.page-hero .eyebrow{font-size:9px;letter-spacing:.2em}.coastal{min-height:155px;color:white;background:linear-gradient(90deg,#063d66ef,#07568280 60%,#052d4960),url('/assets/public/coast-hero-v2.jpg') center 52%/cover}.coastal .eyebrow{color:#e1eef6}.coastal h1{font-family:Georgia,serif;font-size:38px;font-weight:500}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-actions .button{box-shadow:0 3px 12px #071e3330;border:1px solid #ffffff40}.page-content{padding:24px 28px}.gold{background:linear-gradient(120deg,#dfb658,#bd9037);color:#092d4d}.compact{padding:7px 11px;font-size:11px;border-radius:6px}.button:hover,button:hover{filter:brightness(1.07)}button:focus-visible,a:focus-visible{outline:3px solid #cda646;outline-offset:3px}.button:active,button:active{transform:translateY(1px)}section{padding:21px;border-color:var(--line);box-shadow:0 3px 12px #255a8e05;border-radius:11px}h2{font-size:17px;font-weight:700}h3{font-size:15px}small{display:block;font-size:11px;color:var(--muted);font-weight:400}td strong{font-size:12px}.ref{font-weight:700;font-size:11px;text-decoration:none;overflow-wrap:anywhere}.numeric{white-space:nowrap;font-variant-numeric:tabular-nums}th{background:#f0f6fc;color:#23496b;font-size:10px;letter-spacing:0}th,td{padding:14px 11px;border-color:#e8eef5}.booking-table tbody tr:hover{background:#f8fbfe}.table-wrap{border-radius:8px;border:1px solid #e5edf5}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-title h2{margin:0}.section-title a{font-size:11px}.four-stats,.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 20px;gap:12px}.stats article{margin:0;padding:20px 17px;border-color:var(--line);box-shadow:0 2px 7px #12496d05}.stats strong{font-size:25px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stats span{font-size:12px;text-transform:none;color:#153958}.metric{display:flex;gap:15px;align-items:flex-start;min-height:117px}.metric>div{min-width:0}.metric small{margin-top:6px;font-size:10px}.metric strong{overflow-wrap:anywhere}.metric-icon{background:#092d4d!important;color:white!important;min-width:43px;height:43px;border-radius:50%;display:grid;place-items:center;font-size:23px!important;box-shadow:0 4px 8px #163b6320}.metric-1 .metric-icon{background:#c5a044!important}.metric-2 .metric-icon{background:#28835b!important}.metric-3 .metric-icon{background:#098299!important}.metric-4 .metric-icon{background:#1178bd!important}.metric-5 .metric-icon{background:#e0ab38!important}.metric-6 .metric-icon{background:#e26067!important}.metric-7 .metric-icon{background:#8273c6!important}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(290px,1fr);gap:18px}.dashboard-grid>section{margin:0;min-width:0}.product-chart{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.donut{width:135px;height:135px;border-radius:50%;padding:18px;flex-shrink:0}.donut>span{height:100%;background:white;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.donut strong{font-size:26px;line-height:1.2}.chart-legend{padding:0;list-style:none;flex:1;min-width:125px;font-size:11px}.chart-legend li{display:flex;justify-content:space-between;gap:12px;margin:14px 0}.chart-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px}.summary-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #e6edf5;font-size:12px}.summary-line strong{text-align:right;font-size:12px}.summary-line.total{background:#fbf4e6;border-radius:7px;padding:12px;border:0;margin-top:12px}.negative{color:#bc4c5a}.alert-row{display:flex;gap:12px;align-items:center;text-decoration:none;border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}.alert-row>span:nth-child(2){flex:1}.alert-dot{width:23px;height:23px;display:grid;place-items:center;color:white;border-radius:50%;flex-shrink:0}.amber{background:#e0ad3c}.blue{background:#0878ad}.empty-state{text-align:center;padding:35px 20px!important;color:var(--muted);font-size:13px}.date-control{display:flex;align-items:end;gap:12px;margin-bottom:20px}.date-control label{max-width:200px}.date-control .muted{align-self:center;margin-left:auto;font-size:11px}.filter-panel{padding:16px}.booking-filters{display:grid;grid-template-columns:2fr repeat(5,minmax(100px,1fr));gap:10px;align-items:end;margin-bottom:13px}.booking-filters label{font-size:10px}.booking-filters input,.booking-filters select{font-size:11px;padding:10px}.booking-filters>button,.booking-filters>.button{grid-row:2}.filter-panel .actions{gap:12px}.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:18px;font-size:11px}.pagination>div{display:flex;align-items:center;gap:8px}.state-paid,.state-confirmed,.state-credit{background:#dcf4ea;color:#167f61}.state-unpaid,.state-partial,.state-pending{background:#fff1d9;color:#a86d19}.state-cancelled,.state-refunded,.state-partial_refund{background:#ffe4e8;color:#bb3955}.badge{font-size:10px;white-space:nowrap}.booking-steps{list-style:none;display:flex;justify-content:space-between;gap:15px;padding:0 18px;margin:0 0 24px;font-size:11px;color:var(--muted)}.booking-steps li{display:flex;align-items:center;gap:8px}.booking-steps li span,.step-label{display:inline-grid;place-items:center;border-radius:50%;width:25px;height:25px;background:#e2eaf3;color:#345573;font-size:12px}.booking-steps li.active span{background:var(--gold);color:white}.booking-steps li.active{color:var(--navy);font-weight:700}.step-label{margin-right:7px;background:#e6eff7}.booking-workspace{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:20px;align-items:start}.booking-sections{min-width:0}.booking-sections section{margin-bottom:15px}.booking-summary{position:sticky;top:20px;background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 4px 14px #12354f08}.summary-heading{padding:15px;background:var(--blue);color:white;font-weight:700;font-size:14px}.summary-content{padding:17px}.summary-content>img{width:100%;height:96px;object-fit:cover;border-radius:6px}.summary-content h3{margin:14px 0}.summary-content dl{margin:0}.summary-content .summary-line{font-size:11px;gap:10px}.summary-content .summary-line strong{font-size:11px;max-width:65%;overflow-wrap:anywhere}.summary-tip{background:#eef6fd;padding:14px;border-radius:7px;font-size:11px;color:#406181;margin-top:20px}.trip-type-cards{gap:8px;margin:15px 0}.trip-type-cards button{flex:1;font-size:11px;padding:12px 8px;min-width:105px;border:1px solid #dce5ef}.trip-type-cards .selected{background:var(--navy);border-color:var(--gold);color:white;box-shadow:0 0 0 1px var(--gold)}.customer-lookup{padding:15px;background:#f3f8fc;display:flex;align-items:end;gap:12px;border-radius:8px}.customer-lookup label{flex:1;max-width:260px}.customer-lookup>div{display:flex;align-items:center;gap:12px;font-size:12px;flex:1}.fields{gap:13px}.fields input,.fields select{font-size:12px;padding:10px}label{font-size:11px;font-weight:600}.passenger{grid-template-columns:1.4fr 1fr 1fr;gap:10px;background:#f7fafe;border:1px solid #e3ecf4;padding:15px}.passenger button{justify-self:end;font-size:11px;color:#a64758;background:#fff1f3}.booking-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:14px 0 5px}.booking-footer>a{margin-right:auto;font-size:12px}.draft-list{margin-bottom:18px;padding:12px 16px;background:#eef5fb;border-radius:8px;font-size:12px}.draft-list a{display:block;padding:8px}.ticket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:18px}.mini-pass{border:1px solid #d3b66b;border-radius:11px;overflow:hidden;max-width:480px}.mini-pass-head{display:flex;gap:18px;align-items:center;background:var(--navy);padding:8px 18px;color:white;font-size:12px;font-family:Georgia,serif;letter-spacing:.08em}.mini-pass-head img{width:88px}.mini-pass-body{padding:20px}.ticket-qr{margin:18px 0}.ticket-qr svg{width:150px;height:auto;display:block}.mini-pass .actions{gap:7px}.page-content>footer{margin-top:18px;font-size:11px}
@media(min-width:1600px){.page-content{max-width:1700px;margin:auto}.dashboard-grid{grid-template-columns:minmax(0,2.2fr) minmax(320px,1fr)}}
@media(max-width:1250px){.metric{gap:10px;padding:16px 12px!important}.metric-icon{min-width:34px;height:34px;font-size:18px!important}.stats strong{font-size:21px}.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr)}.booking-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-filters>button,.booking-filters>.button{grid-row:auto}.booking-workspace{grid-template-columns:minmax(0,1fr) 255px}.customer-lookup{flex-wrap:wrap}.customer-lookup>div{flex-basis:100%}.hero-actions{max-width:310px}.page-content{padding:20px}.page-hero{padding:24px}.sidebar{width:205px}main{margin-left:205px}}
@media(max-width:1000px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.booking-workspace{grid-template-columns:1fr}.booking-summary{position:static;grid-row:1}.summary-content{display:grid;grid-template-columns:140px 1fr;gap:10px 20px}.summary-content>img{height:90px;grid-row:1/3}.summary-content h3{margin:0}.summary-content dl{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.summary-content .total,.summary-content>.muted,.summary-tip{grid-column:1/-1}.summary-tip{display:none}.summary-content>.muted{margin:0}.booking-steps{padding:0;font-size:10px;gap:8px}.booking-steps li{gap:5px}.four-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.sidebar{position:fixed;width:218px;inset:0 auto 0 0;transform:translateX(-100%);transition:transform .18s;box-shadow:12px 0 40px #041e3430}.nav-open .sidebar{transform:translateX(0)}.sidebar .brand{display:block!important}.sidebar nav{display:grid;overflow:visible}.nav-group{display:block}.sidebar-bottom{display:block}.sidebar>a:last-child{display:block}.nav-toggle{display:block;padding:8px 10px}.topbar{height:62px;padding:0 14px;position:relative;z-index:31}.topbar .eyebrow{font-size:8px;letter-spacing:.08em}.topbar .user-chip{margin-left:auto}.topbar .user-chip>div{display:none}main{margin:0}.page-content{padding:18px 14px}.page-hero{padding:23px 18px;align-items:start}.page-hero.coastal{flex-direction:column;gap:13px}.coastal h1{font-size:32px}.hero-actions{max-width:none;gap:8px}.hero-actions .button{font-size:10px;padding:9px 11px}.page-hero .eyebrow{display:none}.fields{grid-template-columns:1fr 1fr}.date-control{flex-wrap:wrap}.date-control .muted{flex-basis:100%;margin:0}.ticket-head{gap:15px}.booking-footer{flex-wrap:wrap}.booking-steps li{font-size:0}.booking-steps li span{font-size:12px}.booking-steps li.active{font-size:11px}.booking-steps{margin-bottom:16px}.trip{flex-direction:row}.booking-filters{grid-template-columns:1fr 1fr}.booking-filters .search-field{grid-column:1/-1}}
@media(max-width:500px){section{padding:16px}.fields,.passenger{grid-template-columns:1fr}.stats article{padding:15px 11px}.metric-icon{display:none}.metric{min-height:105px}.stats strong{font-size:22px}.stats span{font-size:11px}.booking-footer button{font-size:11px;padding:11px 13px}.customer-lookup label{max-width:none}.customer-lookup>button{font-size:11px;padding:10px}.customer-lookup>div{flex-wrap:wrap}.summary-content dl{grid-template-columns:1fr}.summary-content{grid-template-columns:95px 1fr}.pagination{align-items:start;flex-direction:column}.trip{flex-direction:column}.topbar .eyebrow{max-width:135px}.page-hero h1{font-size:29px}.ticket-grid{grid-template-columns:1fr}.booking-steps{gap:10px}.section-title{align-items:start}.page-content>footer{gap:15px}}
@media print{.topbar,.page-hero,.booking-steps,.filter-panel,.pagination,.booking-footer,.date-control{display:none!important}.sidebar{display:none!important}main{margin:0}.page-content{padding:0}.mini-pass-head{print-color-adjust:exact;-webkit-print-color-adjust:exact}.ticket-grid{display:block}.mini-pass{break-inside:avoid;margin-bottom:20px}.dashboard-grid{display:block}.table-wrap{overflow:visible}.mini-pass .actions{display:none}}
@media(max-width:600px){.booking-summary .summary-content{display:block;padding:12px 16px}.booking-summary .summary-content>img,.booking-summary .summary-content>dl,.booking-summary .summary-content>.muted{display:none}.booking-summary .summary-heading{font-size:12px;padding:11px 16px}.booking-summary .summary-content h3{font-size:13px}.booking-summary .summary-line.total{margin-top:9px}.booking-summary{margin-bottom:2px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.gateway-settings .field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gateway-settings .stack{display:grid;gap:16px}.gateway-settings .checkbox{display:flex;align-items:center;gap:10px}.gateway-settings .checkbox input{width:18px;flex-shrink:0}.gateway-settings pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;background:#f1f6fb;border-radius:8px;font-size:12px}.gateway-settings .btn{display:inline-block;border-radius:8px;padding:12px 18px;font-weight:600;text-decoration:none}.gateway-settings input[type=password]{max-width:650px}@media(max-width:650px){.gateway-settings .field-grid{grid-template-columns:1fr}}
