:root{--navy:#062d67;--navy2:#041d47;--blue:#0879b9;--blue-soft:#eaf5fb;--green:#159574;--green-soft:#e9f8f3;--red:#d94a4a;--amber:#d99a24;--bg:#f5f9fd;--white:#fff;--text:#0b2451;--muted:#63728a;--line:#d9e7f0;--shadow:0 14px 35px rgba(6,45,103,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}button,input,select{font:inherit}a{text-decoration:none;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.2;margin-bottom:7px}h2{font-size:24px;margin-bottom:4px}h3{font-size:17px;margin-bottom:0}.muted,.page-head p,.hero-top p{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:700;color:var(--muted);margin-bottom:5px}.green-text{color:var(--green)!important}.no-scroll{overflow:hidden}
.logo-mark{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.logo-mark img{display:block;width:100%;height:100%;object-fit:contain}.logo-mark.small{width:40px;height:40px}.logo-mark.tiny{width:34px;height:34px}
.brand-wordmark{display:flex;align-items:center;gap:10px}.brand-wordmark>span:last-child,.brand-wordmark>div>span:first-child{white-space:nowrap;letter-spacing:.08em;font-size:16px;font-weight:700;line-height:1}.brand-wordmark b{color:var(--navy);font-weight:700}.brand-wordmark em{color:#0c8f9b;font-style:normal;font-weight:700;margin-left:5px}.brand-wordmark-on-dark b{color:#fff}.brand-wordmark-on-dark em{color:#55d0d1}.brand-wordmark-on-dark>span:last-child{font-size:20px}.login-reset-link{margin:17px 0 0;text-align:center;font-size:12px}.login-reset-link a{color:var(--navy);font-weight:600}.login-reset-link a:hover{text-decoration:underline}
.account-card{max-width:560px}.avatar{border:0;text-decoration:none}
.login-body{min-height:100vh;background:#e8f3fa}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-brand-panel{background:linear-gradient(145deg,var(--navy2),var(--navy));color:#fff;padding:64px;display:flex;flex-direction:column;justify-content:space-between}.login-brand-panel .logo-mark{background:#fff;border-radius:18px;padding:6px;box-shadow:0 10px 25px rgba(0,0,0,.18)}.login-brand-panel h1{font-size:42px;max-width:560px;margin-top:auto;margin-bottom:16px}.login-brand-panel p{font-size:17px;max-width:540px;color:#c6d7dc}.trust-note{font-size:13px;color:#d7e8ec}.login-card{max-width:460px;width:100%;margin:auto;padding:42px}.login-card h2{font-size:28px;margin:28px 0 8px}.install-card{background:#fff;border-radius:18px;box-shadow:var(--shadow);margin:50px auto}.login-help{font-size:10px;color:var(--muted);margin-top:18px}.mobile-brand{display:flex;align-items:center;gap:10px}.mobile-brand .logo-mark{background:#fff;border:1px solid #cfe3f0;border-radius:12px;padding:3px}
.stack{display:grid;gap:15px}.stack label,.search-grid label,.request-form label,.form-grid label{display:grid;gap:7px;font-size:12px;font-weight:600;color:#506068}input,select{width:100%;border:1px solid #d9e1e4;border-radius:12px;background:#fff;padding:13px 14px;outline:none;color:var(--text)}input:focus,select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(8,59,75,.08)}.stack .remember-device{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid #d9e7ee;border-radius:13px;background:#f4f9fc;cursor:pointer}.remember-device input{width:22px;height:22px;flex:0 0 22px;accent-color:var(--navy)}.remember-device span{display:grid;gap:2px}.remember-device strong{font-size:13px;color:var(--navy)}.remember-device small{font-size:10px;font-weight:400;color:var(--muted)}
.btn{border:0;border-radius:12px;padding:12px 17px;font-weight:600;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn.primary{background:var(--navy);color:#fff}.btn.primary:hover{background:var(--navy2)}.btn.secondary{background:#eef2f3;color:var(--navy)}.btn.success{background:var(--green);color:#fff}.btn.ghost{background:#f0f3f4;color:#64747a}.btn.small{padding:9px 12px;font-size:11px}.btn.full{width:100%}
.app-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:0 7px 24px}.brand strong,.brand small{display:block}.brand small{font-size:10px;color:var(--muted);margin-top:2px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:12px 13px;border-radius:12px;color:#607079;display:flex;gap:12px;align-items:center;font-weight:500}.sidebar nav a.active,.sidebar nav a:hover{background:#edf3f5;color:var(--navy);font-weight:600}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:15px}.user-mini{display:flex;gap:10px;align-items:center}.user-mini>span,.avatar{width:37px;height:37px;border-radius:50%;background:#e8eef0;color:var(--navy);font-weight:700;display:flex;align-items:center;justify-content:center}.user-mini strong,.user-mini small{display:block}.user-mini strong{font-size:11px}.user-mini small{font-size:9px;color:var(--muted)}.logout{display:block;margin-top:12px;color:var(--muted);font-size:10px}
.main{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 28px;position:sticky;top:0;z-index:20}.topbar .mobile-brand{display:none}.topbar-right{display:flex;align-items:center;gap:12px}.role-pill{font-size:10px;background:#edf3f5;color:var(--navy);padding:7px 10px;border-radius:999px;font-weight:600}.page{max-width:1180px;padding:31px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:23px}.page-head p{margin-bottom:0}.page-head>div{max-width:700px}.alert{padding:13px 15px;border-radius:12px;margin-bottom:20px;font-size:12px;font-weight:500}.alert.success{background:var(--green-soft);color:var(--green)}.alert.error{background:#fdeeee;color:var(--red)}
.hero-card,.card,.search-card,.stat-card,.availability-card{background:#fff;border:1px solid rgba(221,229,232,.75);border-radius:var(--radius);box-shadow:var(--shadow)}.hero-card{overflow:hidden;margin-bottom:22px}.hero-top{padding:24px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.hero-top h2{margin-bottom:4px}.hero-top p{margin-bottom:0}.badge{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:700}.badge.green{background:var(--green-soft);color:var(--green)}.badge.amber{background:#fff5df;color:var(--amber)}.badge.red{background:#fdeeee;color:var(--red)}
.hero-date{font-size:27px;line-height:1.2;color:var(--navy);margin:2px 0 7px}.hero-tour{font-size:18px;color:#254b67}.home-weekly-agenda .weekly-day:not(.today){border-radius:13px;box-shadow:none}.home-weekly-agenda .weekly-day:not(.today)>header{padding:8px 12px}.home-weekly-agenda .weekly-day:not(.today)>header strong{font-size:12px}.home-weekly-agenda .weekly-day:not(.today) .departure-agenda{padding:7px}.home-weekly-agenda .weekly-day:not(.today) .departure-card{padding:9px 11px;border-radius:12px}.home-weekly-agenda .weekly-day.today>header strong{font-size:17px}
.departure-reservations{grid-column:1/-1;border-top:1px solid var(--line);padding-top:9px}.departure-reservations summary{cursor:pointer;color:var(--blue);font-size:11px;font-weight:700;list-style:none}.departure-reservations summary::-webkit-details-marker{display:none}.departure-reservations summary:after{content:" +"}.departure-reservations[open] summary:after{content:" −"}.departure-reservation-list{display:grid;gap:7px;margin-top:9px}.departure-reservation-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:9px 10px;border-radius:10px;background:#f3f8fb}.departure-reservation-row>div:first-child{display:grid}.departure-reservation-row strong{font-size:11px}.departure-reservation-row span{font-size:8px;color:var(--muted)}.departure-reservation-row b{font-size:11px}.payment-status{font-size:8px;padding:5px 7px;border-radius:999px;background:#fff5df;color:#8b5a00}.payment-status.paid{background:var(--green-soft);color:var(--green)}.payment-status.partial{background:#eef3ff;color:#315caa}
.manage-passengers-link{display:block;padding:10px 12px;border-radius:10px;background:var(--navy);color:#fff;text-align:center;font-size:11px;font-weight:700}.active-reservation-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:10px 12px;border-radius:12px;background:#eaf6fb;color:var(--navy);font-size:10px}.active-reservation-filter a{color:var(--blue);font-weight:700}.quick-inventory-card{border-top:3px solid #38ef9d}.inventory-stepper input.seat-positive{background:#e9fff4!important;color:#00a967!important;text-shadow:0 0 10px rgba(56,239,157,.28)}
.quick-reserve-button:not(:disabled),.pax-add-button,.quick-pax-control [data-pax-step="1"]{background:linear-gradient(145deg,var(--navy),var(--navy2))!important;color:#fff!important;border-color:var(--navy)!important;box-shadow:0 7px 16px rgba(6,45,103,.22)}.quick-reserve-button:not(:disabled):hover,.pax-add-button:hover,.quick-pax-control [data-pax-step="1"]:hover{background:linear-gradient(145deg,#0b438d,var(--navy))!important}.mobile-nav button{background:linear-gradient(145deg,var(--navy),var(--navy2))!important;box-shadow:0 8px 20px rgba(6,45,103,.28)!important}
.sidebar nav a .nav-request-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e53935;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;line-height:1;box-shadow:0 3px 8px rgba(229,57,53,.24)}.sidebar nav a .nav-request-count[hidden]{display:none}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);padding:27px 10px 20px}.metric-row>div{text-align:center;position:relative}.metric-row>div:not(:last-child):after{content:"";position:absolute;right:0;top:5px;height:45px;width:1px;background:var(--line)}.metric-row strong{font-size:32px;display:block}.metric-row span{font-size:10px;color:var(--muted)}.hero-actions{display:flex;gap:10px;padding:0 24px 24px}
.two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:21px;margin-bottom:20px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.trip-row,.network-row,.approval-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--line)}.trip-row:last-child,.network-row:last-child,.approval-row:last-child{border-bottom:0}.date-tile{width:46px;height:46px;border-radius:12px;background:#f0f4f5;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none}.date-tile strong{font-size:15px;line-height:1}.date-tile span{font-size:8px;color:var(--muted);margin-top:3px}.trip-main,.approval-main{flex:1;min-width:0}.trip-main strong,.trip-main span,.network-row strong,.network-row span,.approval-main strong,.approval-main span,.request-card strong,.request-card span{display:block}.trip-main strong,.network-row strong,.approval-main strong,.request-card strong{font-size:12px}.trip-main span,.network-row span,.approval-main span,.request-card span{font-size:9px;color:var(--muted);margin-top:3px}.availability{font-size:10px;font-weight:700;color:var(--green);white-space:nowrap}.availability.full{color:var(--red)}.count-pill{min-width:27px;height:27px;border-radius:999px;background:#edf3f5;display:flex;align-items:center;justify-content:center;color:var(--navy);font-size:10px;font-weight:700}.request-card{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.inline-actions{display:flex;gap:7px}.empty{background:#f7f9fa;border-radius:13px;padding:20px;color:var(--muted);font-size:11px;text-align:center}.empty.wide{grid-column:1/-1}
.privacy-note{margin-top:14px;padding:12px;border-radius:12px;background:#f3f6f7;color:#6e7d83;font-size:9px;line-height:1.6}.check-list{display:grid;gap:7px;max-height:150px;overflow:auto;background:#f7f9fa;padding:10px;border-radius:12px}.check-list label{display:flex;align-items:center;gap:8px;font-size:10px;color:#5b6a70}.check-list input{width:auto}
.network-health{background:var(--green-soft);color:var(--green);font-size:10px;font-weight:700;padding:8px 11px;border-radius:999px;white-space:nowrap}.search-card{padding:17px;margin-bottom:25px}.search-grid{display:grid;grid-template-columns:1fr 1.4fr .65fr auto;gap:10px;align-items:end}.search-grid .btn{height:44px}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:26px}.availability-card{padding:19px}.availability-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.price{font-size:18px;font-weight:700;color:var(--navy)}.price small{font-size:9px;font-weight:500;color:var(--muted)}.availability-card h3{font-size:18px}.availability-card>p{color:var(--muted);font-size:10px;margin-top:5px}.operator-line{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:9px}.operator-line span{color:var(--muted)}.operator-line strong{font-size:10px}.seat-box{display:flex;gap:8px;align-items:baseline;padding:14px 0}.seat-box strong{font-size:29px;color:var(--green)}.seat-box span{font-size:10px;color:var(--muted)}.request-form{display:grid;grid-template-columns:.45fr 1fr;gap:9px}.request-form .btn{grid-column:1/-1}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 10px;font-size:10px}th{color:var(--muted);font-size:9px;font-weight:600}td strong{font-size:10px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.stat-card{padding:18px}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card span{font-size:9px;color:var(--muted);font-weight:600}.stat-card strong{font-size:28px;margin:5px 0;color:var(--navy)}.stat-card small{font-size:9px;color:var(--muted)}.org-icon{width:40px;height:40px;border-radius:11px;background:#f1f5f6;display:flex;align-items:center;justify-content:center}
.modal{display:none;position:fixed;inset:0;background:rgba(5,30,38,.55);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-panel{width:min(470px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:19px}.icon-btn{width:34px;height:34px;border:0;border-radius:10px;background:#eff3f4;font-size:19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-nav{display:none}
@media(max-width:980px){.results-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.search-grid{grid-template-columns:1fr 1fr}.search-grid .btn{grid-column:1/-1}.two-col,.three-col{grid-template-columns:1fr}}
@media(max-width:760px){body{padding-bottom:70px}.app-shell{display:block}.sidebar{display:none}.topbar{height:62px;padding:0 15px;justify-content:space-between}.topbar .mobile-brand{display:flex}.role-pill{display:none}.page{padding:19px 14px}.page-head{align-items:center}.page-head .btn{display:none}.page-head h1{font-size:21px}.page-head p{font-size:11px}.network-health{display:none}.hero-top{padding:20px}.hero-top h2{font-size:20px}.metric-row strong{font-size:27px}.hero-actions{padding:0 18px 20px;flex-direction:column}.card{padding:17px}.results-grid{grid-template-columns:1fr}.search-grid{grid-template-columns:1fr 1fr}.search-grid label:nth-child(2){grid-column:1/-1}.request-card{align-items:flex-start;flex-direction:column}.inline-actions{width:100%}.inline-actions .btn{flex:1}.stats-grid{grid-template-columns:1fr 1fr}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:68px;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-around;z-index:50}.mobile-nav a{font-size:18px;color:#738188;text-align:center;min-width:55px}.mobile-nav a span{display:block;font-size:8px;margin-top:3px}.mobile-nav button{width:48px;height:48px;border:0;border-radius:15px;background:var(--navy);color:#fff;font-size:23px;margin-top:-23px;box-shadow:0 8px 20px rgba(8,59,75,.25)}.modal{align-items:flex-end;padding:0}.modal-panel{border-radius:20px 20px 0 0;max-height:92vh}.login-shell{display:block}.login-brand-panel{display:none}.login-card{padding:35px 22px;max-width:500px}.login-body{background:#fff}}
@media(max-width:430px){.search-grid{grid-template-columns:1fr}.search-grid label:nth-child(2){grid-column:auto}.stats-grid{grid-template-columns:1fr 1fr}.metric-row span{font-size:9px}.trip-row{gap:9px}.availability{font-size:9px}}
@media(max-width:430px){.approval-row{align-items:flex-start;flex-wrap:wrap}.approval-row .inline-actions{width:100%;padding-left:53px}.approval-row .inline-actions .btn{flex:1}.schedule-row{align-items:flex-start;flex-wrap:wrap}.schedule-row>div{flex-basis:100%}}
.logout-form{margin:0}
.sidebar .brand.brand-wordmark{gap:4px}.sidebar .brand.brand-wordmark .logo-mark{transform:translateY(-1px)}
.logout-form .logout{width:100%;border:0;background:transparent;font:inherit;cursor:pointer;text-align:left}
.schedule-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.schedule-row>div{flex:1}.schedule-row strong,.schedule-row span{display:block}.schedule-row strong{font-size:12px}.schedule-row div span{font-size:9px;color:var(--muted);margin-top:4px}.check-inline{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check-inline input{width:auto}.danger-check{padding:12px;border-radius:12px;background:#fdeeee;color:var(--red)!important}
.boat-tabs{display:flex;gap:7px;overflow:auto;margin:-8px 0 20px}.boat-tabs a{white-space:nowrap;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:11px}.boat-tabs a.active{background:var(--navy);color:#fff}
.pending-alert{display:flex;align-items:center;gap:13px;margin:-7px 0 22px;padding:14px 17px;border:1px solid #d7e4e7;border-radius:15px;background:#edf4f5;color:var(--navy);box-shadow:0 8px 22px rgba(9,42,53,.04)}.pending-alert-icon{width:30px;height:30px;border-radius:10px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}.pending-alert-copy{display:grid;gap:2px;flex:1}.pending-alert-copy strong{font-size:12px}.pending-alert-copy small{font-size:9px;color:#65767d}.pending-alert-link{font-size:10px;font-weight:700;white-space:nowrap}.pending-alert:hover{border-color:#b8cdd2;background:#e8f0f2}
.calendar-more{display:flex;justify-content:center;margin-top:13px;padding:12px;border-radius:12px;background:#f0f4f5;color:var(--navy);font-size:10px;font-weight:700}.calendar-more:hover{background:#e7eef0}
@media(max-width:430px){.pending-alert{align-items:flex-start;margin:-4px 0 19px;padding:13px 14px;gap:10px}.pending-alert-link{align-self:center}.pending-alert-copy small{max-width:150px}}

/* Agency mobile experience */
.mobile-section-heading,.agency-request-cards,.agency-menu-toggle{display:none}.agency-result-card .price{display:grid;text-align:right;line-height:1.15}.agency-result-card .price small:first-child{margin-bottom:3px}.agency-result-card .result-meta{display:flex;gap:7px;flex-wrap:wrap}.agency-result-card .result-meta span+span:before{content:"·";margin-right:7px}.agency-details-button{margin-top:2px}.agency-detail-list{display:grid;grid-template-columns:1fr 1fr;margin:0 0 20px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.agency-detail-list>div{padding:12px 14px;border-bottom:1px solid var(--line)}.agency-detail-list>div:nth-child(odd){border-right:1px solid var(--line)}.agency-detail-list>div:nth-last-child(-n+2){border-bottom:0}.agency-detail-list dt{font-size:9px;color:var(--muted)}.agency-detail-list dd{margin:4px 0 0;font-size:11px;font-weight:600}.request-explainer{grid-column:1/-1;font-size:9px;line-height:1.5;color:var(--muted);margin:0;text-align:center}

@media(max-width:760px){
  .role-agency{padding-bottom:0}.role-agency .mobile-nav{display:none}.role-agency .topbar{position:sticky}.role-agency .avatar{display:none}.agency-menu-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;align-content:center;justify-items:center;gap:4px;padding:0}.agency-menu-toggle span{width:18px;height:2px;border-radius:2px;background:var(--navy)}.agency-mobile-menu{position:fixed;top:62px;left:0;right:0;z-index:60;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 30px rgba(9,42,53,.12);padding:10px 15px 16px}.agency-mobile-menu[hidden]{display:none}.agency-mobile-menu a,.agency-mobile-menu .logout{display:block;width:100%;padding:13px 12px;border-radius:10px;font-size:12px;font-weight:600;color:var(--navy);margin:0}.agency-mobile-menu a:hover{background:#edf3f5}.agency-menu-user{border-top:1px solid var(--line);margin-top:7px;padding:13px 12px 7px}.agency-menu-user strong,.agency-menu-user small{display:block}.agency-menu-user strong{font-size:11px}.agency-menu-user small{font-size:9px;color:var(--muted);margin-top:3px}
  .agency-page-head{margin-bottom:13px}.agency-page-head .eyebrow,.agency-page-head h1{display:none}.agency-page-head p{font-size:10px;line-height:1.55}.agency-search{padding:18px;margin-bottom:22px}.mobile-section-heading{display:block;font-size:20px;margin-bottom:17px}.agency-search .search-grid{grid-template-columns:1fr 1fr}.agency-search .search-grid label:nth-child(2){grid-column:1/-1;grid-row:2}.agency-search .search-grid .btn{min-height:48px;font-size:13px}.agency-results-title{margin-bottom:12px}.agency-results-grid{gap:12px}.agency-result-card{padding:17px;box-shadow:0 8px 24px rgba(9,42,53,.06)}.agency-result-card .availability-top{margin-bottom:13px}.agency-result-card h3{font-size:17px}.agency-result-card .seat-box{padding:11px 0}.agency-result-card .seat-box strong{font-size:25px}.agency-details-button{min-height:46px;font-size:12px}.agency-detail-modal{align-items:flex-end;padding:0}.agency-detail-modal .modal-panel{width:100%;border-radius:20px 20px 0 0;max-height:92dvh;padding:20px 17px calc(18px + env(safe-area-inset-bottom))}.agency-detail-modal .modal-head{position:sticky;top:-20px;background:#fff;z-index:2;padding-top:2px}.agency-request-form{grid-template-columns:1fr}.agency-request-form .btn,.agency-request-form .request-explainer{grid-column:1}.agency-request-form input{min-height:48px}.agency-request-form .btn{min-height:50px;font-size:13px}.agency-request-table{display:none}.agency-request-cards{display:grid;gap:10px}.agency-requests{padding:17px}.agency-request-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.agency-request-card summary{list-style:none;display:flex;align-items:center;gap:12px;padding:15px 13px;cursor:pointer}.agency-request-card summary::-webkit-details-marker{display:none}.agency-request-main{display:grid;gap:4px;flex:1;min-width:0}.agency-request-main strong{font-size:12px}.agency-request-main small{font-size:9px;color:var(--muted);white-space:normal}.agency-request-detail{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--line);padding:14px;background:#f8fafb}.agency-request-detail span,.agency-request-detail strong{display:block}.agency-request-detail span{font-size:8px;color:var(--muted)}.agency-request-detail strong{font-size:10px;margin-top:3px;overflow-wrap:anywhere}
}
@media(max-width:430px){.agency-search .search-grid{grid-template-columns:1fr}.agency-search .search-grid label:nth-child(2){grid-column:auto;grid-row:auto}.agency-detail-list{grid-template-columns:1fr}.agency-detail-list>div,.agency-detail-list>div:nth-child(odd){border-right:0;border-bottom:1px solid var(--line)}.agency-detail-list>div:last-child{border-bottom:0}}
@media(min-width:761px) and (max-width:980px){.agency-request-table{display:none}.agency-request-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agency-request-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.agency-request-card summary{list-style:none;display:flex;align-items:center;gap:10px;padding:14px;cursor:pointer}.agency-request-card summary::-webkit-details-marker{display:none}.agency-request-main{display:grid;gap:4px;flex:1;min-width:0}.agency-request-main strong{font-size:11px}.agency-request-main small{font-size:8px;color:var(--muted)}.agency-request-detail{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid var(--line);padding:13px;background:#f8fafb}.agency-request-detail span,.agency-request-detail strong{display:block}.agency-request-detail span{font-size:8px;color:var(--muted)}.agency-request-detail strong{font-size:9px;margin-top:3px;overflow-wrap:anywhere}}
.agency-load-more{display:flex;margin:-8px auto 26px;min-width:180px}.agency-load-more:disabled{opacity:.65;cursor:wait}.search-prompt{padding:28px 20px}
.calendar-title{gap:12px}.calendar-nav{display:flex;gap:7px}.calendar-nav a{width:34px;height:34px;border-radius:10px;background:#eef3f5;color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:700}.calendar-nav a.calendar-today{width:auto;padding:0 11px;font-size:9px}.calendar-nav a:hover{background:#e3ecef}
/* Galapagos Link visual palette: strong navy plus calm blue surfaces. */
.sidebar nav a.active,.sidebar nav a:hover{background:var(--blue-soft);color:var(--navy)}
.role-pill,.count-pill,.date-tile,.calendar-nav a,.btn.secondary,.btn.ghost{background:var(--blue-soft);color:var(--navy)}
.calendar-nav a:hover,.btn.secondary:hover,.btn.ghost:hover{background:#dceef9}
.pending-alert{background:#edf7fc;border-color:#cfe6f3;color:var(--navy)}
.pending-alert:hover{background:#e3f2fa;border-color:#b5d9ec}
.privacy-note,.empty{background:#f1f8fc}
.operator-dashboard-grid{grid-template-columns:1fr}
.date-strip{display:flex;gap:9px;overflow-x:auto;padding:1px 0 14px;margin-bottom:5px;scrollbar-width:none}.date-strip::-webkit-scrollbar{display:none}.date-strip a{min-width:54px;padding:9px 8px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:center;color:var(--navy);display:grid;gap:2px}.date-strip a strong{font-size:16px;line-height:1}.date-strip a span{font-size:9px;color:var(--muted);text-transform:capitalize}.date-strip a.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 8px 18px rgba(6,45,103,.2)}.date-strip a.active span{color:#d9efff}
.week-strip a{min-width:75px;padding:10px 7px}.week-strip a small{font-size:8px;font-weight:800;letter-spacing:.08em;color:var(--blue)}.week-strip a.active small{color:#d9efff}.week-strip a.has-departures:not(.active){border-color:#a8d7e8;background:#f5fbfe}.weekly-agenda{display:grid;gap:12px}.weekly-day{scroll-margin-top:76px;border:1px solid var(--line);border-radius:17px;background:#f8fbfd;overflow:hidden}.weekly-day>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;background:#edf6fb;color:var(--navy)}.weekly-day>header strong{font-size:12px}.weekly-day>header span{font-size:9px;color:var(--muted)}.weekly-day.today{border-color:#8ecce2;box-shadow:0 7px 18px rgba(4,117,147,.09)}.weekly-day .departure-agenda{padding:10px}.weekly-empty{padding:16px;color:var(--muted);font-size:11px;text-align:center}
.departure-agenda{display:grid;gap:11px}.departure-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #d6e7f1;border-radius:17px;background:linear-gradient(135deg,#fff,#f3f9fd);padding:13px}.departure-time{padding-right:10px;border-right:1px solid #d5e5ee;display:grid;gap:3px;text-align:center}.departure-time strong{font-size:14px;color:var(--navy)}.departure-time span{font-size:8px;color:var(--muted);line-height:1.25}.departure-main{min-width:0}.departure-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.departure-title h4{font-size:13px;line-height:1.2;margin:0;color:var(--navy)}.departure-main p{font-size:9px;color:var(--muted);margin:4px 0 7px}.departure-stats{display:flex;gap:10px;font-size:9px;color:var(--muted)}.departure-stats strong{font-size:12px;color:var(--navy)}.departure-stats .full strong,.departure-stats .full{color:var(--red)}.quick-reserve-button{white-space:nowrap;align-self:center}.quick-reservation-help{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.quick-pax-control{display:grid;grid-template-columns:64px 1fr 64px;align-items:center;text-align:center;border:1px solid #cfe2ee;border-radius:17px;overflow:hidden;background:var(--blue-soft)}.quick-pax-control button{height:62px;border:0;background:#dceff9;color:var(--navy);font-size:25px;font-weight:700}.quick-pax-control button:active{background:#c9e5f4}.quick-pax-control div{display:grid;gap:2px}.quick-pax-control strong{font-size:27px;color:var(--navy)}.quick-pax-control span{font-size:10px;color:var(--muted)}
@media(max-width:760px){.departure-card{grid-template-columns:55px minmax(0,1fr);gap:10px;padding:12px}.departure-time{padding-right:8px}.quick-reserve-button{grid-column:1/-1;width:100%;min-height:43px}.departure-title h4{font-size:14px}.date-strip{margin-left:-1px;margin-right:-1px}.date-strip a{min-width:52px}.quick-reservation-form select{min-height:52px}.quick-reservation-form .btn{min-height:54px;font-size:14px}}
.privacy-choice-card{display:flex;align-items:center;gap:14px;padding:18px 20px;margin-bottom:20px;border-radius:18px;background:linear-gradient(135deg,var(--navy),#0a4f91);color:#fff;box-shadow:0 15px 30px rgba(6,45,103,.16)}.privacy-lock{width:40px;height:40px;border-radius:13px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center}.privacy-choice-card strong{font-size:14px}.privacy-choice-card p{font-size:10px;color:#dceeff;margin:4px 0 0}.privacy-grid{align-items:start}.privacy-date-picker{display:flex;align-items:end;gap:10px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}.privacy-date-picker label{flex:1}.privacy-departure-picker{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.agency-request-form .agency-hold-duration{display:none}.agency-request-form.requesting-hold .agency-hold-duration{display:block}.agency-request-form.requesting-hold button[name="action"][value="agency_request"]{display:none}
.request-card span .request-date{display:inline-block;color:var(--navy);font-size:13px;font-weight:800;letter-spacing:.01em;margin:0 2px}.request-card span{line-height:1.6}
.agency-cancel-actions select{min-height:36px;max-width:190px;font-size:11px}@media(max-width:600px){.agency-cancel-actions{flex-wrap:wrap}.agency-cancel-actions select{flex:1;max-width:none;min-width:150px}}
.topbar-logout{display:none}@media(max-width:760px){.topbar-logout{display:block;margin:0}.topbar-logout button{border:0;background:#edf3f5;color:var(--navy);font:inherit;font-size:10px;font-weight:700;border-radius:10px;padding:10px 8px;cursor:pointer}}
@media(max-width:760px){.topbar{padding:0 12px;gap:8px;overflow:hidden}.topbar-right{margin-left:auto;gap:6px;min-width:0}.topbar-logout{display:none!important}.mobile-brand{min-width:0;gap:7px}.mobile-brand>span:last-child{font-size:14px;letter-spacing:.06em;white-space:nowrap}.mobile-brand .logo-mark.tiny{width:38px;height:38px;flex:0 0 38px}.role-agency .mode-switcher{gap:5px}.role-agency .mode-switcher button{min-height:39px;padding:7px 9px;font-size:10px}.agency-menu-toggle{flex:0 0 42px}}
@media(max-width:390px){.mobile-brand>span:last-child{font-size:12px;letter-spacing:.04em}.role-agency .mode-switcher button{padding:7px 8px;font-size:9px}.agency-menu-toggle{flex-basis:39px;width:39px}}

.passenger-editor{width:100%;margin-top:12px;padding:12px;border:1px solid #cfe0ee;border-radius:14px;background:#f8fbfd}.passenger-editor summary{cursor:pointer;font-weight:800;color:#073777}.passenger-editor-form{display:grid;gap:10px;margin-top:12px}.passenger-editor-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:10px;border:0;border-top:1px solid #dce9f2}.passenger-editor-row legend{padding:0 4px;font-weight:800;color:#123b70}.passenger-editor-row label{display:grid;gap:4px;font-size:12px;font-weight:700;color:#31577f}.passenger-editor-row input{width:100%;min-width:0}.agency-request-editor{margin-bottom:10px}.operator-passenger-editor{grid-column:1/-1}
@media(max-width:700px){.passenger-editor-row{grid-template-columns:1fr}.passenger-editor{padding:10px}.passenger-editor-form .btn{width:100%}}
@media(max-width:760px){.privacy-grid{display:block}.privacy-page-head p{font-size:10px}.privacy-choice-card{padding:16px}.mobile-nav .mobile-action-link{width:48px;height:48px;min-width:48px;border-radius:15px;background:var(--navy);color:#fff;font-size:23px;display:flex;align-items:center;justify-content:center;margin-top:-23px;box-shadow:0 8px 20px rgba(6,45,103,.25)}}
/* Pilot: agency cards deliberately omit internal operating-unit names. */
.agency-result-card .result-company{font-weight:700;color:var(--navy);margin:5px 0 2px}
.agency-result-card .price{max-width:165px}
.reservation-reference{display:block;margin-top:4px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.02em}
.reservation-manage-card{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:1rem;align-items:center}
.reservation-summary{display:grid;gap:.18rem;min-width:0;flex:1}
.reservation-date{font-size:17px!important;line-height:1.2;color:var(--navy);letter-spacing:.01em}.reservation-tour{font-size:13px;color:var(--navy)}.reservation-customer{font-size:11px!important;color:#516b80!important;margin-top:2px!important}
.reservation-pax-actions{display:flex;align-items:stretch;border:1px solid #b7d2e7;border-radius:14px;overflow:hidden;background:#f4faff;flex:0 0 auto}
.reservation-pax-actions form{display:flex;margin:0}
.reservation-pax-actions button{width:48px;min-height:48px;border:0;background:#e3f2fc;color:var(--navy);font-size:1.35rem;font-weight:800;cursor:pointer}
.reservation-pax-actions button:hover{background:#cfe8f8}
.reservation-pax-actions div{min-width:58px;padding:.35rem .55rem;display:grid;place-content:center;text-align:center;background:#fff}
.reservation-pax-actions strong{font-size:1.15rem;line-height:1}
.reservation-pax-actions span{font-size:.72rem;color:var(--muted);margin-top:.15rem}
.reservation-action-feedback{grid-column:1/-1;width:100%;margin:0;padding:8px 10px;border-radius:10px;font-size:11px;font-weight:700}.reservation-action-feedback.success{background:var(--green-soft);color:var(--green)}.reservation-action-feedback.error{background:#fdeeee;color:var(--red)}
.calendar-week-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;margin:-4px 0 18px}
.calendar-week-controls a{width:auto;height:auto;min-width:0;min-height:48px;border:1px solid rgba(255,255,255,.48);border-radius:999px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;background:linear-gradient(145deg,rgba(20,79,148,.96),rgba(4,38,91,.98));color:#fff;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -2px 4px rgba(0,19,57,.25),0 7px 15px rgba(6,45,103,.16);text-shadow:0 1px 1px rgba(0,25,65,.35);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.calendar-week-controls a:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 4px rgba(0,19,57,.22),0 10px 20px rgba(6,45,103,.22)}
.calendar-week-controls a:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(0,20,58,.34),0 3px 8px rgba(6,45,103,.15)}
.calendar-week-controls a:last-child{justify-self:stretch}
.calendar-week-controls .calendar-today{background:linear-gradient(145deg,rgba(14,94,151,.97),rgba(3,43,103,.99));color:#fff;border-color:rgba(255,255,255,.58)}
@media(max-width:720px){.reservation-manage-card{grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.reservation-manage-card>.reservation-summary{grid-column:1/-1}.reservation-manage-card>.inline-actions{margin-left:0}.reservation-pax-actions button{width:52px;min-height:52px}}
@media(max-width:600px){.reservation-date{font-size:19px!important}.reservation-tour{font-size:14px}.reservation-customer{font-size:12px!important}}
@media(max-width:520px){.calendar-week-controls{grid-template-columns:1fr 64px 1fr;gap:7px}.calendar-week-controls a{padding:0 8px;font-size:12px;line-height:1.1}.calendar-week-controls a:not(.calendar-today) span:nth-child(2){max-width:66px;white-space:normal;text-align:center}}
.quick-inventory-card{margin-bottom:18px}.quick-inventory-list{display:grid;margin:4px 0 16px}.quick-inventory-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.quick-inventory-row>div:first-of-type{display:grid;gap:3px}.quick-inventory-row strong{font-size:12px}.quick-inventory-row span{font-size:9px;color:var(--muted)}.inventory-stepper{display:grid;grid-template-columns:38px 48px 38px;align-items:center;border:1px solid #b9d4e6;border-radius:13px;overflow:hidden;background:#fff}.inventory-stepper button{height:40px;border:0;background:var(--blue-soft);color:var(--navy);font-size:20px;font-weight:700}.inventory-stepper input{width:48px;height:40px;padding:0;border:0;border-left:1px solid #d8e7f0;border-right:1px solid #d8e7f0;border-radius:0;text-align:center;font-weight:800;color:var(--navy);-moz-appearance:textfield}.inventory-stepper input::-webkit-outer-spin-button,.inventory-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.published-seat-control{display:grid;gap:4px;justify-items:center}.published-seat-control>small{font-size:8px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.publish-save-bar{position:sticky;bottom:10px;z-index:8;margin-top:12px;padding:8px;border:1px solid rgba(10,139,154,.28);border-radius:15px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(6,45,103,.15);backdrop-filter:blur(8px)}.publish-save-bar .btn{min-height:48px;font-size:13px}
@media(max-width:600px){.quick-inventory-card{padding:16px}.quick-inventory-row{padding:11px 0}.inventory-stepper{grid-template-columns:40px 46px 40px}.inventory-stepper button,.inventory-stepper input{height:42px}}

/* Dates are operational information: keep them easy to read on a phone. */
.quick-inventory-row strong{font-size:13px}.quick-inventory-row span{font-size:11px;font-weight:600}.request-card span{font-size:11px;line-height:1.45}.week-strip a small{font-size:10px}.weekly-day>header{padding:12px 14px}.weekly-day>header strong{font-size:14px}.weekly-day>header span{font-size:11px;font-weight:600}.departure-time strong{font-size:16px}.departure-time span{font-size:9px}.date-strip a span{font-size:10px;font-weight:600}
.metric-row span{font-size:12px;font-weight:600;line-height:1.35}.departure-stats{font-size:12px;font-weight:600;line-height:1.35}.departure-stats strong{font-size:15px}.departure-stats .full{font-weight:700}
@media(max-width:600px){.metric-row span{font-size:12px}.departure-stats{font-size:13px;gap:12px}.departure-stats strong{font-size:16px}}
.pro-summary-button{display:flex;align-items:center;gap:10px}.pro-summary-button small{background:#0b7f88;color:#fff;border-radius:999px;padding:4px 8px;font-weight:800}.pro-locked{max-width:680px;text-align:center;margin-inline:auto;padding:48px}.monthly-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.monthly-metrics .card{display:grid;gap:8px}.monthly-metrics strong{font-size:1.8rem;color:#082b63}.monthly-nav{display:flex;justify-content:space-between;align-items:center}.summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid #dce8f0}.summary-row b{color:#078073}@media(max-width:700px){.pro-summary-button{width:100%;justify-content:center}.monthly-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-nav{gap:8px}.monthly-nav a{font-size:.82rem}.summary-row{grid-template-columns:1fr auto}.summary-row span{grid-row:2}}
.inventory-stepper input.seat-positive{color:var(--green)!important}.inventory-stepper input.seat-empty{color:var(--red)!important}.departure-stats .available-seats,.departure-stats .available-seats strong{color:var(--green)!important}
.quick-inventory-row>div:first-of-type strong{font-size:14px;color:var(--navy)}.quick-inventory-row>div:first-of-type span{font-size:11px;font-weight:600;color:#47647a}.departure-title h4{font-size:15px}.departure-time strong{font-size:17px}.weekly-day>header strong{font-size:15px}
@media(max-width:600px){.quick-inventory-row>div:first-of-type strong{font-size:14px}.quick-inventory-row>div:first-of-type span{font-size:12px}.departure-title h4{font-size:15px}.departure-time strong{font-size:17px}.weekly-day>header strong{font-size:15px}}
.calendar-heading{font-size:18px!important;letter-spacing:.08em!important;color:var(--navy)!important;margin-bottom:7px!important}.quick-inventory-card{border:1px solid #70cfdf;border-top:5px solid #16a6ba;background:linear-gradient(180deg,#fff 0%,#f5fcfe 100%)}.quick-inventory-card .section-title h3{font-size:24px;line-height:1.15;color:#087f98}.quick-inventory-card .section-title .eyebrow{display:inline-flex;padding:5px 9px;border-radius:999px;background:#dff7fb;color:#087f98;font-size:10px}.publication-visibility{align-self:flex-start;padding:6px 10px;border-radius:999px;background:#e7f8fb;color:#087f98;font-size:9px;font-weight:700;white-space:nowrap}.hero-passengers{margin:0 24px 20px;border:1px solid var(--line);border-radius:14px;background:#f7fbfe;overflow:hidden}.hero-passengers summary{cursor:pointer;list-style:none;padding:12px 14px;color:var(--navy);font-weight:700;font-size:12px;display:flex;justify-content:space-between}.hero-passengers summary::-webkit-details-marker{display:none}.hero-reservation-groups{display:grid;gap:8px;padding:0 12px 12px}.hero-reservation-group{padding:11px 12px;border-radius:11px;background:#fff;border:1px solid var(--line)}.hero-reservation-group strong,.hero-reservation-group small{display:block}.hero-reservation-group strong{font-size:11px}.hero-reservation-group small{font-size:9px;color:var(--muted);margin-top:3px}.hero-reservation-group p{margin:8px 0 0;color:var(--muted);font-size:10px;font-style:italic}
@media(max-width:600px){.calendar-heading{font-size:17px!important}.quick-inventory-card .section-title h3{font-size:21px}.publication-title{align-items:flex-start}.publication-visibility{font-size:8px;padding:5px 7px}.hero-passengers{margin:0 18px 18px}}
.operator-private-card{border-left:5px solid var(--navy);box-shadow:0 14px 35px rgba(6,45,103,.08)}.operator-private-card.hero-card{position:relative}.operator-private-card.hero-card:before{content:"OPERACIÓN PRIVADA";position:absolute;right:92px;top:25px;padding:5px 8px;border-radius:999px;background:#eaf2fb;color:var(--navy);font-size:8px;font-weight:800;letter-spacing:.06em}.operator-publishing-card{border-left:5px solid #16a6ba}.operator-area-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}.operator-area-badge.private{background:#eaf2fb;color:var(--navy)}.operator-area-badge.private b{font-size:8px}.operator-publishing-card .publication-visibility:before{content:"↗";font-size:11px;margin-right:4px}.operator-publishing-card .quick-inventory-row{background:transparent}.operator-publishing-card .btn.primary{background:#087f98}.operator-publishing-card .btn.primary:hover{background:#056b80}
@media(max-width:600px){.operator-private-card,.operator-publishing-card{border-left-width:4px}.operator-private-card.hero-card:before{position:static;display:inline-flex;margin:14px 18px 0}.operator-area-badge{font-size:8px}.calendar-title{align-items:flex-start}.calendar-title>div{min-width:0}}
.publication-row{display:grid;grid-template-columns:minmax(170px,1fr) auto 190px;align-items:end}.publication-price{display:grid;gap:4px}.publication-price>small{font-size:8px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.publication-price>span{height:42px;display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #b9d4e6;border-radius:13px;background:#fff;overflow:hidden}.publication-price b{padding:0 9px;color:#087f98;font-size:10px;border-right:1px solid var(--line)}.publication-price input{height:40px;min-width:0;border:0;border-radius:0;padding:0 9px;font-weight:700;color:var(--navy);box-shadow:none}.publication-price input::placeholder{color:#8a9aaa;font-weight:500}
@media(max-width:680px){.publication-row{grid-template-columns:minmax(0,1fr) auto}.publication-price{grid-column:1/-1}.publication-price>span{height:46px}.publication-price input{height:44px}}
.reservation-filters{display:grid;gap:14px;margin:0 0 18px}.period-tabs{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #c9deeb;border-radius:14px;overflow:hidden}.period-tabs button{min-height:44px;border:0;border-right:1px solid #d7e6ef;background:#fff;color:var(--navy);font-weight:700}.period-tabs button:last-child{border-right:0}.period-tabs button.active{background:var(--navy);color:#fff}.reservation-filter-fields{display:grid;grid-template-columns:minmax(150px,220px) minmax(240px,1fr) auto;align-items:end;gap:12px}.reservation-filter-fields label{display:grid;gap:5px;font-size:10px;font-weight:700;color:var(--muted)}.reservation-filter-fields input{min-height:44px}.reservation-search{grid-column:auto}.reservation-summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;border:1px solid var(--line);border-radius:15px;overflow:hidden;margin-bottom:18px;background:var(--line)}.reservation-summary-grid>div{display:grid;gap:3px;text-align:center;padding:14px 8px;background:#fff}.reservation-summary-grid strong{font-size:21px;color:var(--navy)}.reservation-summary-grid span{font-size:9px;color:var(--muted)}
@media(max-width:600px){.period-tabs button{min-height:46px;font-size:11px}.reservation-filter-fields{grid-template-columns:1fr}.reservation-filter-fields .btn{min-height:46px}.reservation-summary-grid{grid-template-columns:repeat(2,1fr)}.reservation-summary-grid>div:last-child{grid-column:1/-1}.reservation-summary-grid strong{font-size:20px}.reservation-manage-card{align-items:flex-start}.reservation-manage-card .reservation-summary{min-width:0}}
.hero-pax-editor{display:flex;align-items:stretch;width:max-content;margin-top:9px;border:1px solid #b7d2e7;border-radius:12px;overflow:hidden}.hero-pax-editor form{display:flex;margin:0}.hero-pax-editor button{width:42px;min-height:40px;border:0;background:#e3f2fc;color:var(--navy);font-size:19px;font-weight:800}.hero-pax-editor>div{min-width:54px;display:grid;place-content:center;text-align:center;background:#fff}.hero-pax-editor>div strong{font-size:14px}.hero-pax-editor>div span{font-size:9px;color:var(--muted)}
.publication-home-summary{margin-bottom:18px;padding:20px}.publication-manage-button{background:#087f98;color:#fff}.publication-summary-list{display:grid}.publication-summary-list>div{display:grid;grid-template-columns:minmax(160px,1fr) minmax(150px,.7fr) auto;gap:12px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.publication-summary-list strong{font-size:12px}.publication-summary-list span{font-size:10px;color:var(--muted)}.publication-summary-list b{font-size:10px;color:#087f98;text-align:right}
@media(max-width:600px){.publication-home-summary{padding:16px}.publication-home-summary .section-title{align-items:flex-start}.publication-manage-button{width:100%;margin-top:8px}.publication-summary-list>div{grid-template-columns:1fr auto}.publication-summary-list span{grid-column:1}.publication-summary-list b{grid-column:2;grid-row:1/3}.hero-pax-editor{width:100%}.hero-pax-editor form{flex:1}.hero-pax-editor button{width:100%;min-height:44px}.hero-pax-editor>div{min-width:70px}}
.reservation-pax-actions.compact{border-radius:11px}.reservation-pax-actions.compact button{width:38px;min-height:38px;font-size:17px}.reservation-pax-actions.compact div{min-width:48px;padding:3px 6px}.reservation-pax-actions.compact strong{font-size:13px}.manage-departure-pax{white-space:nowrap}.departure-reservation-row{align-items:center}
.departure-pax-trigger{display:grid;grid-template-columns:38px 54px 38px;align-items:stretch;border:1px solid #9fc6df;border-radius:13px;overflow:hidden;background:#fff}.departure-pax-trigger button{border:0;background:#e3f2fc;color:var(--navy);font-size:19px;font-weight:800}.departure-pax-trigger>strong{display:grid;place-content:center;text-align:center;font-size:14px;color:var(--navy)}.departure-pax-trigger small{display:block;font-size:8px;color:var(--muted);font-weight:600}.reservation-pax-actions button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:600px){.departure-reservation-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.departure-reservation-row .payment-status{grid-column:1/-1}.reservation-pax-actions.compact button{width:42px;min-height:42px}}
.departure-date-search{display:grid;grid-template-columns:minmax(220px,1fr) minmax(200px,1fr) auto;gap:12px;align-items:end;margin:0 0 18px;padding:16px 18px;border:1px solid #c8dff0;border-radius:18px;background:rgba(255,255,255,.88);box-shadow:0 10px 28px rgba(5,45,103,.06)}
.publish-month-nav{display:grid;grid-template-columns:minmax(130px,1fr) minmax(170px,auto) minmax(130px,1fr);align-items:center;gap:12px;margin:4px 0 20px}.publish-month-nav a{width:auto;height:46px;padding:0 18px;border:1px solid #b9d4e6;border-radius:14px;background:#eaf4fb;white-space:nowrap;font-size:.82rem}.publish-month-nav a:first-child{justify-self:start}.publish-month-nav a:last-child{justify-self:end}.publish-month-nav strong{display:grid;place-items:center;min-height:48px;color:#062d67;font-size:1.05rem;text-align:center}.agency-visible-now{display:block;margin-top:6px;color:#167b5a;font-size:.78rem;font-weight:600}.agency-visible-now b{font-size:.92rem}
.departure-date-search label{display:grid;gap:6px;margin:0}.departure-date-search label>span{font-size:.78rem;font-weight:700;color:#315273;text-transform:uppercase;letter-spacing:.06em}.departure-date-search input,.departure-date-search select{min-height:48px;margin:0;border-color:#bdd7ea;background:#fff;font-size:1rem;font-weight:600;color:#062d67}.departure-date-search .btn{min-height:48px;white-space:nowrap}
@media(max-width:700px){.departure-date-search{grid-template-columns:1fr;padding:14px}.departure-date-search .btn{width:100%}}
.operator-publishing-card .inventory-stepper input,.operator-publishing-card .inventory-stepper input.seat-positive,.operator-publishing-card .inventory-stepper input.seat-empty{background:var(--navy)!important;color:#fff!important;text-shadow:none!important;border-color:rgba(255,255,255,.16);font-size:15px}.operator-publishing-card .inventory-stepper button{background:#e8f3fb;color:var(--navy)}
@media(max-width:600px){.publish-month-nav{grid-template-columns:1fr auto 1fr;gap:7px}.publish-month-nav a{height:44px;padding:0 10px;font-size:.72rem}.publish-month-nav strong{font-size:.9rem;line-height:1.15}.publish-month-nav a:first-child{justify-content:flex-start}.publish-month-nav a:last-child{justify-content:flex-end}}
.departure-finished{background:#f6f8fa;opacity:.88}.departure-finished-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#e5ebf0;color:#4c6072;font-size:10px;font-weight:800}.departure-action-guidance{grid-column:1/-1;margin:0;padding:10px 12px;border-radius:10px;background:#eaf4fc;color:var(--navy);font-size:11px;font-weight:700}.departure-reservation-identity{display:grid;gap:3px;min-width:0}.departure-reservation-identity strong{font-size:12px}.departure-reservation-identity span{font-size:9px;color:var(--muted)}.departure-reservation-identity em{margin-top:4px;color:#61798c;font-size:10px;font-style:italic}.departure-reservations .btn.primary{background:var(--navy);color:#fff}
@media(max-width:600px){.departure-finished-badge{padding:7px 9px;font-size:9px}.departure-action-guidance{font-size:10px}.departure-reservation-identity strong{font-size:11px}.departure-reservation-identity em{font-size:9px}}
.pax-add-button,.quick-pax-control [data-pax-step="1"],.reservation-pax-actions button[aria-label*="Agregar"],.departure-pax-trigger button[aria-label*="agregar"],.inventory-stepper button[data-inventory-step="1"]{min-width:50px;min-height:48px;font-size:24px!important;font-weight:900!important}.operator-publishing-card .inventory-stepper{grid-template-columns:44px 50px 50px}.departure-pax-trigger{grid-template-columns:44px 54px 50px}.quick-reserve-button{min-height:48px;padding:12px 18px!important;font-size:13px!important;font-weight:800!important}
@media(max-width:600px){.pax-add-button,.quick-pax-control [data-pax-step="1"],.reservation-pax-actions button[aria-label*="Agregar"],.departure-pax-trigger button[aria-label*="agregar"],.inventory-stepper button[data-inventory-step="1"]{min-width:54px;min-height:52px;font-size:26px!important}.quick-reserve-button{min-height:52px;font-size:14px!important}}
.private-filter-note{margin:-12px 0 16px;color:#63728a;font-size:10px;font-weight:600}.operator-publishing-card>.section-title{margin-bottom:8px}.publication-closed{background:#f5f7f9;opacity:.78}.publication-closed-label{display:block;margin-top:6px;color:#52697b;font-size:10px}.publication-closed .inventory-stepper button:disabled{opacity:.4;cursor:not-allowed}.publication-closed .publication-price input[readonly]{background:#edf1f4;color:#6b7c89}
/* Operator holds: one inventory truth for private operation and B2B publishing. */
.hold-count{color:#a05a00!important}.physical-free-count,.agency-free-count{color:#07855f!important}.publication-capacity-summary{display:flex;flex-wrap:wrap;gap:7px 14px;align-items:center;margin-top:7px;color:#445c71;font-size:.82rem;font-weight:650}.publication-capacity-summary span{display:inline-flex;align-items:baseline;gap:4px}.publication-capacity-summary b{font-size:1rem}.held-seats{color:#8a5300!important}.departure-holds{grid-column:1/-1;margin-top:8px;border-top:1px solid #d7e6ef;padding-top:8px}.departure-holds summary{cursor:pointer;color:var(--navy);font-weight:800;font-size:.88rem}.hold-panel{display:grid;gap:10px;margin-top:10px;padding:12px;border-radius:14px;background:#f2f7fb}.hold-panel>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.hold-panel>div span{color:#5a6d80}.hold-create-form{display:grid;grid-template-columns:minmax(90px,120px) minmax(130px,1fr) auto;gap:10px;align-items:end}.hold-create-form label{display:grid;gap:5px;font-size:.78rem;font-weight:750}.hold-create-form input,.hold-create-form select{min-height:44px;border:1px solid #bad3e4;border-radius:12px;padding:8px 10px;background:#fff;color:var(--navy);font:inherit}
@media(max-width:600px){.publication-capacity-summary{display:grid;grid-template-columns:1fr;font-size:.86rem}.publication-capacity-summary span{justify-content:space-between;border-top:1px solid #e1edf4;padding-top:7px}.hold-create-form{grid-template-columns:1fr 1fr}.hold-create-form .btn{grid-column:1/-1;width:100%}}
/* One company can work in operator or agency mode without a second account. */
.mode-switcher label{display:flex;align-items:center;gap:8px;color:#526980;font-size:10px;font-weight:700}.mode-switcher select{width:auto;min-width:112px;padding:8px 30px 8px 11px;border-color:#c5dbea;border-radius:999px;background:#edf6fb;color:var(--navy);font-size:11px;font-weight:800}
.mode-switcher{display:flex;align-items:center;gap:6px}.mode-switcher>span{color:#526980;font-size:10px;font-weight:700;white-space:nowrap}.mode-switcher button{min-height:36px;padding:7px 12px;border:1px solid #b9d4e6;border-radius:999px;background:#fff;color:var(--navy);font-size:10px;font-weight:800}.mode-switcher button.active{border-color:var(--navy);background:var(--navy);color:#fff;opacity:1}.mode-switcher button:disabled{cursor:default}
@media(max-width:600px){.mode-switcher>span{display:none}.mode-switcher button{min-height:40px;padding:7px 10px}.topbar-right{gap:7px}}
/* Agency V1: search, choose, request, follow status. */
.agency-v1{display:grid;gap:22px}.agency-v1-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.agency-v1-head h1{font-size:30px}.agency-v1-head p{max-width:650px;color:var(--muted)}.agency-private-note,.neutral-results-note{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e8f7f8;color:#087f8d;font-size:10px;font-weight:800;white-space:nowrap}.agency-v1-search{padding:22px}.agency-v1-search h2{margin-bottom:17px}.agency-v1-search-form{display:grid;grid-template-columns:1fr 1.25fr .65fr auto;gap:12px;align-items:end}.agency-v1-search-form label{display:grid;gap:7px;color:#52697b;font-size:11px;font-weight:700}.agency-v1-search-form .btn{min-height:48px}.agency-v1-results{display:grid;gap:14px}.agency-result-card{display:grid;gap:12px;padding:19px}.agency-result-card h3{font-size:19px}.result-company{margin:0;color:var(--navy);font-weight:700}.result-meta{margin:0;color:var(--muted)}.agency-reference-total{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-radius:12px;background:#edf8f6;color:#126d58}.agency-reference-total span{font-size:11px}.agency-reference-total strong{font-size:17px}.agency-status-tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px}.agency-status-tabs button{flex:0 0 auto;border:1px solid #c8ddea;border-radius:999px;background:#fff;color:var(--navy);padding:10px 14px;font-weight:700;font-size:11px}.agency-status-tabs button.active{background:var(--navy);color:#fff}.agency-list-cards{display:grid;gap:11px}.agency-history-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 18px;padding:17px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(6,45,103,.05)}.agency-history-card>div:first-child{display:grid;gap:5px}.agency-history-card>div:first-child strong{font-size:15px}.agency-history-card>div:first-child span,.agency-history-card small{color:var(--muted);font-size:10px}.agency-history-card small{grid-column:1/-1}.agency-history-meta{display:flex;align-items:center;gap:10px}.agency-history-meta>b{color:var(--navy)}.agency-history-meta>span:not(.badge){font-size:11px;color:#52697b}.agency-profile-card{max-width:620px;padding:22px;display:grid;gap:14px}.agency-profile-card>div{display:flex;justify-content:space-between;gap:18px;padding-bottom:11px;border-bottom:1px solid var(--line)}.agency-profile-card span{color:var(--muted)}
@media(max-width:820px){.agency-v1-search-form{grid-template-columns:1fr 1fr}.agency-v1-search-form .btn{grid-column:1/-1}.agency-history-card{grid-template-columns:1fr}.agency-history-meta{flex-wrap:wrap}}
@media(max-width:600px){.agency-v1{gap:17px}.agency-v1-head{display:grid;gap:5px}.agency-v1-head h1{font-size:25px}.agency-v1-head p{font-size:12px}.agency-private-note{justify-self:start}.agency-v1-search{padding:16px}.agency-v1-search-form{grid-template-columns:1fr}.agency-v1-search-form .btn{grid-column:auto;min-height:52px;font-size:14px}.agency-result-card{padding:16px}.agency-result-card .btn{min-height:50px;font-size:13px}.agency-history-card{padding:15px}.agency-history-meta{justify-content:space-between}.agency-detail-modal .modal-panel{width:calc(100% - 20px);max-height:calc(100vh - 20px);overflow:auto}body.role-agency .mobile-nav{grid-template-columns:repeat(4,1fr)}}
/* Operator mobile density: show more operation without shrinking touch targets. */
@media(max-width:600px){body.role-operator .page{padding:14px 10px}body.role-operator .page-head{margin-bottom:13px;gap:10px}body.role-operator .page-head h1{margin-bottom:4px}body.role-operator .boat-tabs{margin-bottom:12px}body.role-operator .hero-card,body.role-operator .card{margin-bottom:12px}body.role-operator .hero-top{padding:15px 16px}body.role-operator .hero-date{font-size:21px;margin-bottom:4px}body.role-operator .hero-tour{font-size:16px}body.role-operator .metric-row{padding:17px 6px 14px}body.role-operator .metric-row strong{font-size:27px}body.role-operator .hero-passengers{margin:0 12px 12px}body.role-operator .card{padding:14px}body.role-operator .section-title{margin-bottom:11px}body.role-operator .weekly-agenda{gap:8px}body.role-operator .weekly-day .departure-agenda{padding:7px;gap:7px}body.role-operator .departure-card{padding:10px;gap:8px}body.role-operator .request-card{padding:11px;margin-bottom:8px}body.role-operator .reservation-filters{gap:10px;margin-bottom:12px}body.role-operator .reservation-summary-grid{margin-bottom:12px}}

/* Dates drive the operation: always give them the strongest visual hierarchy. */
.hero-date{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.hero-date>span{font-size:30px;font-weight:800}.hero-date>small{font-size:18px;font-weight:700;color:#3f6078}.weekly-day>header strong{font-size:21px!important;font-weight:800;letter-spacing:.02em}.departure-time strong{font-size:16px!important}.reservation-date{display:flex!important;align-items:baseline;gap:10px;flex-wrap:wrap}.reservation-date>span{font-size:21px;font-weight:800}.reservation-date>small{font-size:14px;color:#46657b}.quick-inventory-row>div:first-of-type .prominent-date{display:block;font-size:18px;font-weight:800;color:var(--navy);line-height:1.15}.quick-inventory-row>div:first-of-type .secondary-time{display:block;font-size:13px;font-weight:700;color:#47647a;margin:2px 0 5px}.quick-inventory-row>div:first-of-type strong{font-size:14px}
@media(max-width:600px){.hero-date{gap:8px}.hero-date>span{font-size:23px}.hero-date>small{font-size:16px}.weekly-day>header strong{font-size:20px!important}.departure-time strong{font-size:16px!important}.reservation-date>span{font-size:20px}.reservation-date>small{font-size:14px}.quick-inventory-row>div:first-of-type .prominent-date{font-size:18px}.quick-inventory-row>div:first-of-type .secondary-time{font-size:13px}}
.agency-history-card[hidden],.agency-list-cards>[hidden]{display:none!important}

/* Private operator money tracking: information, never a payment gateway. */
.internal-controls{display:flex;justify-content:space-between;align-items:center;gap:16px}.internal-controls form{display:flex;gap:10px;align-items:end}.internal-controls label{display:grid;gap:5px;font-size:11px;font-weight:800;color:var(--muted)}.internal-controls input{min-height:40px}.period-tabs{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden}.period-tabs a{padding:10px 18px;color:var(--navy);font-size:12px;font-weight:800}.period-tabs a.active{background:var(--navy);color:#fff}.internal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.internal-metrics .card{display:grid;gap:7px;padding:17px}.internal-metrics span{font-size:11px;color:var(--muted);font-weight:700}.internal-metrics strong{font-size:22px}.alert-metric strong{color:#b66b00}.internal-reservation-row{display:grid;grid-template-columns:minmax(190px,1.35fr) 120px 120px 115px minmax(160px,1fr) auto;gap:9px;align-items:end;padding:13px 0;border-bottom:1px solid var(--line)}.internal-reservation-row:last-child{border-bottom:0}.internal-reservation-row>div,.internal-reservation-row label{display:grid;gap:4px}.internal-reservation-row>div b{font-size:13px}.internal-reservation-row small{font-size:10px;color:var(--muted)}.internal-reservation-row label{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.internal-reservation-row input{min-width:0;min-height:38px;padding:8px 9px}.internal-balance{font-size:11px;line-height:1.45;color:#a26200}.internal-reservation-row .btn{min-height:38px;padding:8px 12px}.internal-groups{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.internal-groups .summary-row{grid-template-columns:minmax(0,1fr) auto auto}.internal-groups .summary-row b{color:#a26200}@media(max-width:900px){.internal-reservation-row{grid-template-columns:1fr 1fr 1fr}.internal-reservation-row>div,.internal-reservation-row .internal-note{grid-column:1/-1}.internal-reservation-row .btn{justify-self:start}.internal-groups{grid-template-columns:1fr}}@media(max-width:600px){.internal-controls{display:grid}.internal-controls form{width:100%;display:grid;grid-template-columns:1fr auto}.internal-controls label{grid-column:1/-1}.internal-metrics{grid-template-columns:1fr 1fr;gap:8px}.internal-metrics .card{padding:12px}.internal-metrics strong{font-size:17px}.internal-reservation-row{grid-template-columns:1fr 1fr;gap:8px;padding:12px 0}.internal-reservation-row>div,.internal-reservation-row .internal-note{grid-column:1/-1}.internal-balance{grid-column:1/-1}.internal-reservation-row .btn{grid-column:1/-1;width:100%;min-height:44px}.internal-groups{gap:10px}.internal-groups .summary-row{grid-template-columns:1fr auto}.internal-groups .summary-row b{grid-column:1/-1}}
.publication-price-choice{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr);gap:10px;align-items:end}.publication-price-choice>label:first-child{display:grid;gap:4px}.publication-price-choice small{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.publication-price-choice select{min-height:42px;border:1px solid #b9d4e6;border-radius:13px;background:#fff;color:var(--navy);padding:0 10px;font:inherit;font-weight:750}.publication-price input.price-hidden{background:#eef4f7;color:#718294}.publication-price input.price-hidden::placeholder{color:#718294}@media(max-width:680px){.publication-price-choice{grid-column:1/-1;grid-template-columns:1fr}.publication-price{grid-column:auto}}
.agency-view-switch{display:inline-flex;padding:4px;border:1px solid #c8ddea;border-radius:999px;background:#fff}.agency-view-switch a{min-width:105px;padding:10px 18px;border-radius:999px;color:var(--navy);font-size:12px;font-weight:800;text-align:center}.agency-view-switch a.active{background:var(--navy);color:#fff}.agency-calendar{padding:20px}.agency-calendar-nav{margin-bottom:16px}.agency-calendar-weekdays,.agency-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.agency-calendar-weekdays span{text-align:center;color:var(--muted);font-size:10px;font-weight:800}.agency-calendar-day{min-height:78px;padding:9px;border:1px solid #d1e2ed;border-radius:13px;background:#fff;color:var(--navy);text-align:left;display:grid;align-content:space-between;gap:5px}.agency-calendar-day b{font-size:18px}.agency-calendar-day span{color:#087f98;font-size:9px;font-weight:800}.agency-calendar-day.has-events{cursor:pointer;border-color:#74cddd;background:#f4fcfd}.agency-calendar-day.today{box-shadow:inset 0 0 0 2px #0b5da8}.agency-calendar-day.selected{background:var(--navy);color:#fff}.agency-calendar-day.selected span{color:#bcecf1}.agency-calendar-day:disabled{opacity:.55}.agency-calendar-details{margin-top:18px}.agency-calendar-details>section{display:grid;gap:9px}.agency-calendar-details>section[hidden]{display:none}.agency-calendar-details h3{font-size:18px;color:var(--navy)}.agency-calendar-details article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.agency-calendar-details article>div{display:grid;gap:3px}.agency-calendar-details article>div span{color:var(--muted);font-size:10px}@media(max-width:600px){.agency-view-switch{width:100%}.agency-view-switch a{flex:1;min-width:0}.agency-calendar{padding:13px}.agency-calendar-nav a{font-size:9px}.agency-calendar-weekdays,.agency-calendar-grid{gap:4px}.agency-calendar-day{min-height:60px;padding:6px;border-radius:10px}.agency-calendar-day b{font-size:15px}.agency-calendar-day span{font-size:7px}.agency-calendar-details article{grid-template-columns:1fr auto;gap:7px}.agency-calendar-details article>.badge{grid-column:1/-1;justify-self:start}}
.agency-calendar .agency-calendar-nav{display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:12px}.agency-calendar .agency-calendar-nav a{width:auto;height:auto;min-height:42px;padding:8px 14px;border-radius:13px}.agency-calendar .agency-calendar-nav a:last-child{justify-self:stretch}.agency-calendar .agency-calendar-nav strong{text-align:center;font-size:17px;white-space:nowrap}.agency-calendar-day small{color:#775300;font-size:8px;font-weight:850}.agency-calendar-day.has-note{border-bottom:4px solid #e9a900}.agency-calendar-day.selected small{color:#ffe49c}.agency-no-events{margin:0;padding:10px 0}.agency-day-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin-top:12px;padding:14px;border-radius:14px;background:#f1f7fb}.agency-day-note label{display:grid;gap:6px;color:var(--navy);font-size:11px;font-weight:800}.agency-day-note textarea{width:100%;resize:vertical;border:1px solid #b9d4e6;border-radius:12px;padding:10px;font:inherit;color:var(--navy);background:#fff}.agency-day-note>small{grid-column:1;color:var(--muted)}.agency-day-note .btn{grid-column:2;grid-row:1/3;align-self:end}@media(max-width:600px){.agency-calendar .agency-calendar-nav{grid-template-columns:1fr 1fr}.agency-calendar .agency-calendar-nav strong{grid-column:1/-1;grid-row:1;font-size:18px}.agency-calendar .agency-calendar-nav a{grid-row:2;text-align:center}.agency-day-note{grid-template-columns:1fr}.agency-day-note .btn,.agency-day-note>small{grid-column:1;grid-row:auto}.agency-calendar-day small{font-size:7px}}

/* Mis reservas: selector y calendario compactos sin sacrificar legibilidad. */
.agency-reservations-view{gap:13px}.agency-reservations-view .agency-v1-head p{margin-bottom:0}.agency-reservations-view .agency-view-switch{margin-top:-2px}.agency-reservations-view .agency-calendar{padding:15px 17px}.agency-reservations-view .agency-calendar-nav{margin-bottom:10px}.agency-reservations-view .agency-calendar-weekdays,.agency-reservations-view .agency-calendar-grid{gap:5px}.agency-reservations-view .agency-calendar-day{min-height:61px;padding:7px 8px;gap:2px}.agency-reservations-view .agency-calendar-day b{font-size:17px}.agency-reservations-view .agency-calendar-details{margin-top:12px}
@media(max-width:600px){.agency-reservations-view{gap:10px}.agency-reservations-view .agency-v1-head{gap:2px}.agency-reservations-view .agency-v1-head p{line-height:1.35}.agency-reservations-view .agency-view-switch{padding:3px}.agency-reservations-view .agency-view-switch a{padding:8px 12px}.agency-reservations-view .agency-calendar{padding:10px}.agency-reservations-view .agency-calendar-nav{margin-bottom:7px}.agency-reservations-view .agency-calendar-weekdays,.agency-reservations-view .agency-calendar-grid{gap:3px}.agency-reservations-view .agency-calendar-day{min-height:47px;padding:4px 5px;border-radius:8px}.agency-reservations-view .agency-calendar-day b{font-size:15px}.agency-reservations-view .agency-calendar-day span{font-size:7px;line-height:1.1}.agency-reservations-view .agency-calendar-details{margin-top:9px}}
.agency-reservations-view .agency-calendar-details>section{gap:5px}.agency-reservations-view .agency-calendar-details h3{margin:0;line-height:1.15}.agency-reservations-view .agency-no-events{padding:3px 0;margin:0}.agency-reservations-view .agency-day-note{margin-top:3px;padding:10px 12px;gap:5px 10px}.agency-reservations-view .agency-day-note label{gap:4px}.agency-reservations-view .agency-day-note textarea{min-height:62px;padding:8px 10px}.agency-reservations-view .agency-day-note .btn{min-height:44px}
@media(max-width:600px){.agency-reservations-view .agency-calendar-details>section{gap:4px}.agency-reservations-view .agency-day-note{margin-top:2px;padding:9px}.agency-reservations-view .agency-day-note textarea{min-height:58px}.agency-reservations-view .agency-day-note .btn{min-height:46px}}
.agency-calendar-day.has-reservations{border-left:4px solid #16a6b6}.agency-calendar-day.has-requests{box-shadow:inset 0 -3px 0 #e99a21}.agency-calendar-day.has-cancelled:not(.has-reservations):not(.has-requests){border-color:#d9a3a3;background:#faf5f5}.agency-calendar-day .calendar-day-summary{line-height:1.25}.agency-calendar-day.selected{border-color:var(--navy);box-shadow:none}.agency-calendar-day.selected .calendar-day-summary{color:#fff}.agency-calendar-day.selected small{color:#ffe49c}
.agency-hold-duration{grid-column:1/-1}.agency-hold-duration select{min-height:46px}.agency-request-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.agency-request-actions .btn{min-height:50px}.agency-hold-history{border-left:4px solid #e99a21}.hold-request-card{border-left:4px solid #e99a21}@media(max-width:600px){.agency-request-actions{grid-template-columns:1fr}.agency-request-actions .btn{width:100%}}
.quick-passenger-details{border:1px solid var(--line);border-radius:14px;background:#f7fbfe;padding:11px 12px}.quick-passenger-details summary{cursor:pointer;color:var(--navy);font-weight:800}.quick-passenger-details summary span,.quick-passenger-details>p{color:var(--muted);font-size:10px}.quick-passenger-details>p{margin:6px 0 10px}.quick-passenger-row{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;margin-top:8px}.quick-passenger-row strong{font-size:11px;color:var(--navy)}.quick-passenger-row input{min-width:0}.passenger-name-list{display:grid;gap:5px;margin:8px 0 0;padding:0;list-style:none}.passenger-name-list li{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:8px;background:#f2f8fc}.passenger-name-list li>strong{font-size:10px}.passenger-name-list li>small{font-size:9px;color:var(--muted)}
.agency-passenger-details{grid-column:1/-1;border:1px solid var(--line);border-radius:14px;background:#f7fbfe;padding:11px 12px}.agency-passenger-details summary{cursor:pointer;color:var(--navy);font-weight:800;font-size:11px}.agency-passenger-details summary span,.agency-passenger-details>p{color:var(--muted);font-size:10px;font-weight:400}.agency-passenger-details>p{margin:6px 0 10px}.agency-passenger-row{display:grid;grid-template-columns:82px repeat(2,minmax(0,1fr));gap:8px;align-items:center;margin-top:8px}.agency-passenger-row strong{font-size:10px;color:var(--navy)}.agency-passenger-row input{min-width:0;padding:10px 11px;font-size:11px}.agency-passenger-row input:nth-of-type(3),.agency-passenger-row input:nth-of-type(4){grid-column:2/-1}
.request-passenger-details{margin-top:8px}.request-passenger-details summary{cursor:pointer;color:var(--navy);font-size:10px;font-weight:700}
@media(max-width:600px){.quick-passenger-row{grid-template-columns:1fr}.quick-passenger-row strong{margin-top:4px}}
@media(max-width:600px){.agency-passenger-row{grid-template-columns:1fr}.agency-passenger-row input:nth-of-type(3),.agency-passenger-row input:nth-of-type(4){grid-column:auto}}
