:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173a4a;background:#eef5f7;line-height:1.45}*{box-sizing:border-box}body{margin:0}.page{width:min(1040px,calc(100% - 28px));margin:28px auto 56px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.brand{display:flex;gap:16px;align-items:center}.brand img{width:110px;height:auto}.brand h1{margin:0;font-size:28px}.brand p{margin:4px 0 0;color:#607d88}.langs{display:flex;gap:6px}.langs button,.btn,.removeLine{border:1px solid #b6d2d9;background:white;color:#205669;border-radius:9px;padding:9px 12px;font-weight:700;cursor:pointer}.langs button.active,.btn.primary{background:#078fb3;border-color:#078fb3;color:white}.card{background:white;border:1px solid #d4e4e8;border-radius:16px;box-shadow:0 8px 24px #174c6010;padding:18px;margin-bottom:14px}.estimateGuideCard{background:#fff;border:1px solid #d4e4e8;border-radius:16px;box-shadow:0 8px 24px #174c6010;padding:18px 18px 14px;margin-bottom:14px}.estimateGuideCard>h2{margin:0;text-align:center;font-size:21px;line-height:1.35;color:#17475b}.intro{margin:7px auto 14px;max-width:900px;padding:0;background:transparent;border:0;border-radius:0;color:#47717f;text-align:center;font-size:12px;line-height:1.55}.estimateGuideGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 -4px}.estimateGuideItem{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:start;padding:10px 18px;min-width:0}.estimateGuideItem+ .estimateGuideItem{border-left:1px solid #dbe8eb}.estimateGuideIcon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#e7f7fb;color:#078fb3}.estimateGuideIcon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.estimateGuideItem h3{margin:1px 0 5px;font-size:14px;line-height:1.4;color:#17536b}.estimateGuideItem p{margin:0;color:#667f88;font-size:11.5px;line-height:1.6;font-weight:500}.estimateGuideNotice{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:9px 12px;border-radius:9px;background:#e5f7fb;color:#285f72;font-size:11.5px;line-height:1.55;font-weight:650}.estimateGuideNoticeIcon{width:20px;height:20px;flex:0 0 20px;border-radius:50%;display:grid;place-items:center;background:#1696b8;color:#fff;font-size:12px;font-weight:900;font-family:Georgia,serif}.ferryFareInfo{margin:9px 2px 0}.ferryFarePrimary{margin:0;color:#456b78;font-size:12px;font-weight:800}.ferryFareNote{margin:3px 0 0;color:#718790;font-size:11.5px;line-height:1.55;font-weight:500}.estimateReminder{margin:14px 0 0;padding:9px 12px;border:1px solid #ead4aa;border-radius:9px;background:#fff9ed;color:#725d2e;font-size:11.5px;line-height:1.5;font-weight:700}.sectionHead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.sectionHead h2{font-size:19px;margin:0}.dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#54717c}input,select{width:100%;min-height:42px;border:1px solid #bcd3d9;border-radius:9px;background:white;padding:8px 10px;color:#173a4a;font:inherit}.estimateLine{display:grid;gap:10px;align-items:end;padding:11px;border:1px solid #dfebee;background:#f9fcfd;border-radius:11px;margin-bottom:8px}.roomLine{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(90px,.65fr)) auto}.pricedLine{grid-template-columns:minmax(260px,1fr) 120px auto}.removeLine{height:42px;color:#9a4141;border-color:#e3bbbb}.hint{font-size:12px;color:#6a818a;margin:9px 0 0}.choiceRow,.serviceOption{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px}.choiceRow{font-size:14px;color:#274f5e;padding:12px 14px;border:1px solid #d7e7ea;border-radius:11px;background:#f8fcfd}.choiceRow input,.serviceOption input{width:18px;height:18px;min-height:0;margin:1px 0 0;flex:0 0 auto;accent-color:#078fb3}.ferryBookingOptions{margin-top:12px;padding:12px 14px;border-radius:11px;background:#f5fbfc;border:1px solid #d9eaed}.optionGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.serviceOption{padding:11px 12px;border:1px solid #d9e7ea;border-radius:10px;background:#fff;color:#244f5f;line-height:1.5}.stayExtensionBox{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.adviceBlock{padding:14px;border:1px solid #eadfbf;background:#fffaf0;border-radius:11px}.adviceBlock p{margin:0 0 10px;color:#6d5a2a;font-size:12px;line-height:1.6}.adviceBlock .serviceOption{border-color:#e5d8ad}.actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.result{padding:0;overflow:hidden}.resultHead{display:grid;grid-template-columns:repeat(5,1fr) 1.4fr;background:#f1f9fb;border-bottom:1px solid #d5e7eb}.resultHead>div{padding:14px;border-right:1px solid #d8e8eb}.resultHead>div:last-child{border-right:0}.resultHead small{display:block;color:#68838d;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.resultHead b{display:block;margin-top:3px;font-size:17px}.resultHead .grand{background:#0d7d9d;color:white}.resultHead .grand small{color:#dff7ff}.resultHead .grand b{font-size:23px}.resultTableWrap{overflow:auto;padding:8px 14px}.result table{width:100%;border-collapse:collapse}.result td{padding:10px 8px;border-bottom:1px solid #e2ecef;vertical-align:top}.result td:last-child{text-align:right;font-weight:800;white-space:nowrap}.result td small,.result td b{display:block}.result td small{color:#78909a;font-size:10px}.manualBox{margin:12px 18px;padding:12px 14px;background:#fff8e5;border:1px solid #eedba7;border-radius:10px}.manualBox b{color:#8b6010}.manualBox p{margin:5px 0;font-size:12px}.disclaimer{font-weight:700;margin:14px 18px 5px}.ruleMeta{margin:0 18px 18px;color:#79909a;font-size:10px}.resultError{padding:16px 18px;background:#fff1f1;color:#9b2e2e}.resultError b,.resultError span{display:block}.privacy{font-size:12px;color:#68818c;text-align:center;margin-top:18px}.footer{text-align:center;color:#82959c;font-size:11px;margin-top:14px}@media(max-width:760px){.page{width:min(100% - 16px,1040px);margin-top:14px}.hero{display:block}.langs{margin-top:12px}.brand img{width:88px}.brand h1{font-size:23px}.estimateGuideCard{padding:16px 14px 12px}.estimateGuideCard>h2{font-size:19px;text-align:left}.intro{text-align:left;font-size:12px;margin:8px 0 10px}.estimateGuideGrid{grid-template-columns:1fr;margin:0}.estimateGuideItem{grid-template-columns:44px minmax(0,1fr);padding:11px 2px}.estimateGuideItem+ .estimateGuideItem{border-left:0;border-top:1px solid #e1ecef}.estimateGuideIcon{width:38px;height:38px}.estimateGuideIcon svg{width:22px;height:22px}.estimateGuideItem h3{font-size:13.5px}.estimateGuideItem p{font-size:12px}.estimateGuideNotice{font-size:12px;margin-top:8px}.ferryFareNote{font-size:12px}.estimateReminder{font-size:12px}.dates,.optionGrid,.stayExtensionBox{grid-template-columns:1fr}.roomLine,.pricedLine{grid-template-columns:1fr 1fr}.roomLine label:first-child,.pricedLine label:first-child{grid-column:1/-1}.removeLine{grid-column:1/-1}.resultHead{grid-template-columns:repeat(2,1fr)}.resultHead .grand{grid-column:1/-1}.actions{flex-direction:column-reverse}.actions .btn{width:100%}}
.inventoryHint{font-weight:700;color:#315f70}.inventoryAlert{margin:9px 0 0;padding:10px 12px;border:1px solid #e7b2b2;border-radius:9px;background:#fff1f1;color:#9a3535;font-size:12px;font-weight:800}

.resultMeta{display:flex;flex-wrap:wrap;gap:10px 18px;padding:14px 18px 0;color:#5f7d88;font-size:12px;font-weight:700}.resultTools{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 18px 14px}.resultTools p{margin:0;color:#6c838d;font-size:12px}@media(max-width:760px){.resultMeta{display:grid;gap:6px;padding-top:12px}.resultTools{display:block}.resultTools .btn{width:100%;margin-bottom:8px}}
.dateField{width:100%;min-height:42px;border:1px solid #bcd3d9;border-radius:9px;background:#fff;padding:8px 10px;color:#173a4a;font:inherit;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer}.dateField:focus{outline:2px solid #078fb333;border-color:#078fb3}.dateField .placeholder{color:#79909a;font-weight:500}.dateFieldIcon{font-size:15px;color:#52717d;line-height:1}.datePickerOpen{overflow:hidden}.datePickerOverlay{position:fixed;inset:0;z-index:9999;background:rgba(13,31,40,.58);display:grid;place-items:center;padding:18px}.datePickerOverlay[hidden]{display:none}.datePickerDialog{width:min(430px,calc(100vw - 28px));background:#f8f9fc;border-radius:26px;box-shadow:0 24px 70px rgba(0,0,0,.32);overflow:hidden;color:#1e2830}.datePickerTop{background:#4e69a7;color:#fff;padding:24px 30px 26px}.datePickerTop small{display:block;font-size:18px;font-weight:700;opacity:.85}.datePickerTop strong{display:block;margin-top:10px;font-size:32px;line-height:1.2;letter-spacing:.2px}.datePickerMonthNav{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;padding:20px 22px 10px}.datePickerMonthNav strong{text-align:center;font-size:20px}.datePickerMonthNav button{border:0;background:transparent;font-size:36px;line-height:1;height:44px;color:#1e2830;cursor:pointer;border-radius:50%}.datePickerMonthNav button:active{background:#e7e9f0}.datePickerWeekdays,.datePickerDays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 22px}.datePickerWeekdays{padding-top:4px;padding-bottom:8px}.datePickerWeekdays span{text-align:center;font-size:13px;color:#57616a;font-weight:700}.datePickerDays{min-height:260px;align-content:start}.datePickerBlank{height:44px}.datePickerDay{height:44px;border:0;background:transparent;border-radius:50%;font:inherit;font-size:16px;color:#1e2830;cursor:pointer}.datePickerDay.today{box-shadow:inset 0 0 0 1px #8ea0c8}.datePickerDay.selected{background:#4e69a7;color:#fff;box-shadow:none;font-weight:800}.datePickerActions{display:flex;justify-content:flex-end;gap:8px;padding:18px 22px 22px}.datePickerActions button{border:0;background:transparent;color:#4e69a7;font:inherit;font-weight:800;padding:10px 12px;border-radius:8px;cursor:pointer}.datePickerActions button:hover,.datePickerActions button:active{background:#e9edf7}.datePickerActions #date-picker-clear{margin-right:auto}@media(max-width:520px){.datePickerOverlay{padding:10px}.datePickerDialog{width:min(100%,430px);border-radius:24px}.datePickerTop{padding:24px 26px}.datePickerTop strong{font-size:30px}.datePickerMonthNav{padding-left:14px;padding-right:14px}.datePickerWeekdays,.datePickerDays{padding-left:16px;padding-right:16px}.datePickerDay,.datePickerBlank{height:42px}.datePickerDays{min-height:252px}}
.transferModePanel{display:grid;gap:10px}.transferModeTop{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid #d9e7ea;border-radius:11px;background:#f8fcfd}.transferModeTop>span{font-size:12px;font-weight:800;color:#54717c}.transferModeChoices{display:flex;gap:8px;flex-wrap:wrap}.transferModeChoices label{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #c9dde2;border-radius:9px;background:#fff;color:#244f5f;font-size:12px;cursor:pointer}.transferModeChoices input{width:16px;height:16px;min-height:0;margin:0;accent-color:#078fb3}.transferModeTop .btn{margin-left:auto}.transferLine{grid-template-columns:minmax(260px,1fr) 120px}.roundTripSubtotal{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:10px 12px;border-radius:10px;background:#eaf8fb;color:#275565;font-size:13px}.roundTripSubtotal b{font-size:17px;color:#087d9f}.btn.danger{color:#9a4141;border-color:#e3bbbb;background:#fff}@media(max-width:760px){.transferModeTop{align-items:stretch}.transferModeTop .btn{margin-left:0;width:100%}.transferLine{grid-template-columns:1fr 1fr}.transferLine label:first-child{grid-column:1/-1}.roundTripSubtotal{justify-content:space-between}}
.resultToolButtons{display:flex;gap:8px;flex-wrap:wrap}.quoteSendStatus{margin:0 18px 14px;padding:10px 12px;border-radius:9px;font-size:12px;font-weight:800}.quoteSendStatus.ok{background:#e8f8ef;border:1px solid #b8e4c8;color:#23613d}.quoteSendStatus.error{background:#fff1f1;border:1px solid #e7b2b2;color:#9a3535}.quoteSendOverlay{position:fixed;inset:0;z-index:10000;background:rgba(15,42,52,.48);display:grid;place-items:center;padding:18px}.quoteSendOverlay[hidden]{display:none}.quoteSendDialog{width:min(560px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;background:#fff;border:1px solid #d2e2e6;border-radius:18px;box-shadow:0 24px 80px rgba(15,42,52,.28);padding:20px}.quoteSendHead{display:flex;align-items:center;justify-content:space-between;gap:16px}.quoteSendHead h3{margin:0;font-size:20px;color:#173a4a}.quoteSendHead button{border:0;background:transparent;font-size:30px;line-height:1;color:#65818b;cursor:pointer}.quoteSendHelp{margin:8px 0 16px;color:#657d86;font-size:13px;line-height:1.55}.quoteSendDialog form{display:grid;gap:12px}.quoteSendDialog textarea{width:100%;border:1px solid #bcd3d9;border-radius:9px;background:#fff;padding:10px;color:#173a4a;font:inherit;resize:vertical}.quoteSendActions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.quoteSendError{padding:10px 12px;border:1px solid #e7b2b2;border-radius:9px;background:#fff1f1;color:#9a3535;font-size:12px;font-weight:700}.modalOpen{overflow:hidden}@media(max-width:760px){.resultToolButtons{display:grid;grid-template-columns:1fr 1fr;width:100%}.resultToolButtons .btn{width:100%}.quoteSendActions{display:grid;grid-template-columns:1fr 1fr}.quoteSendActions .btn{width:100%}}

.publicBlackoutAlert{margin:0 0 14px;padding:12px 14px;border:2px solid #d95b5b;border-radius:11px;background:#fff1f1;color:#8f2424;font-size:13px;font-weight:800;line-height:1.55}.publicBlackoutAlert.info{border-color:#e0b45c;background:#fff8e8;color:#795a15}.datePickerDay.fullyBooked{background:#f0f1f3;color:#8b9298}.datePickerDay.fullyBooked:not(:disabled){box-shadow:inset 0 0 0 1px #d5d8dc}.datePickerDay:disabled{cursor:not-allowed;text-decoration:line-through;opacity:.62}.btn:disabled{cursor:not-allowed;opacity:.55}.fullyBookedLegend{font-size:11px;color:#8b9298;font-weight:700;text-align:center;padding:6px 22px 0}
