:root{--treech-navy:#082b4b;--treech-blue:#0b4d79;--treech-gold:#e6b63d;--treech-paper:#f6fafc;--treech-green:#1e9e62;--treech-red:#c84040;--treech-orange:#e98b2a;--treech-gray:#6d7780}
.treech-dashboard-button{width:100%;border:0;text-align:left;font:inherit;cursor:pointer}.treech-dashboard-button small{color:#e6b63d;font-weight:800}.treech-dashboard-button:hover,.treech-dashboard-button:focus-visible{transform:translateY(-2px);outline:3px solid #e6b63d;outline-offset:2px}.treech-guests-dialog{width:min(720px,94vw);padding:0;border:0;border-radius:22px;color:#082b4b;box-shadow:0 28px 90px #00152680}.treech-guests-dialog::backdrop{background:#021522d9;backdrop-filter:blur(5px)}.treech-guests-dialog header{display:flex;justify-content:space-between;padding:24px 26px;background:#082b4b;color:#fff}.treech-guests-dialog h2{margin:4px 0 0;color:#fff}.treech-guests-close{width:42px;height:42px;border:0;border-radius:50%;background:#ffffff18;color:#fff;font-size:30px;cursor:pointer}.treech-guests-list{display:grid;gap:10px;padding:24px}.treech-guests-list article{display:grid;grid-template-columns:1fr auto;gap:5px 18px;padding:14px 16px;border:1px solid #d5e1e7;border-radius:12px}.treech-guests-list article div{display:grid}.treech-guests-list article span,.treech-guests-list article small{color:#607483}.treech-guests-list article small{grid-column:1/-1}
.treech-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.treech-dashboard-card{display:flex;flex-direction:column;justify-content:space-between;min-height:105px;padding:20px;border-radius:18px;background:#082b4b;color:#fff;box-shadow:0 10px 25px #082b4b1c}.treech-dashboard-card span{font-size:14px}.treech-dashboard-card strong{font-size:38px;color:#fff}.treech-dashboard-free{background:#1e9e62}.treech-dashboard-next{grid-column:1/-1;padding:20px 22px;border:1px solid #cbdde6;border-radius:18px;background:#f3f8fa}.treech-dashboard-next h2{margin:0 0 12px;font-size:22px}.treech-dashboard-next ul{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none}.treech-dashboard-next li{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;background:#fff}.treech-dashboard-next li span{color:#526979;font-size:13px}.treech-electricity{display:flex!important;grid-column:1/-1;align-items:center;justify-content:start}.treech-electricity input{width:20px!important;height:20px}.treech-calculation{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:18px;padding:16px;border-radius:12px;background:#eef5f8}.treech-calc-total{font-size:18px}
.treech-planner{max-width:1380px;margin:24px auto 60px;padding:0 22px;color:var(--treech-navy);font-family:inherit}
.treech-planner-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px;border-radius:26px 26px 0 0;background:linear-gradient(125deg,#062542,#0c527e);color:#fff}
.treech-planner-header h1{margin:4px 0 10px;color:#fff;font-size:clamp(32px,4vw,54px);line-height:1.05}.treech-planner-header p{max-width:760px;margin:0;line-height:1.55}.treech-kicker{margin:0!important;color:var(--treech-gold)!important;font-size:12px;font-weight:800;letter-spacing:.16em}
.treech-planner-summary{display:grid;gap:9px;min-width:230px;padding:17px 19px;border:1px solid #ffffff38;border-radius:16px;background:#ffffff12}.treech-planner-summary span{display:flex;align-items:center;gap:9px;font-size:14px}.treech-planner-summary b{width:12px;height:12px;border-radius:50%}.treech-planner-summary strong{min-width:22px;font-size:18px}.treech-planner-summary .is-available{background:var(--treech-green)}.treech-planner-summary .is-occupied{background:var(--treech-red)}.treech-planner-summary .is-reserved{background:var(--treech-orange)}
.treech-planner-toolbar{display:flex;align-items:end;gap:18px;padding:16px 22px;background:#e9f1f5;border-bottom:1px solid #cfdee6}.treech-planner-toolbar label{display:grid;gap:5px;font-size:12px;font-weight:800}.treech-planner-toolbar select,.treech-planner-toolbar input{height:42px;min-width:190px;padding:0 12px;border:1px solid #b5c9d4;border-radius:10px;background:#fff;color:var(--treech-navy);font:inherit}.treech-planner-toolbar p{margin:0 0 10px auto;color:#4f6576;font-size:13px}
.treech-map-scroll{overflow-x:auto;padding:20px;background:#dbe8ee;border-radius:0 0 26px 26px;box-shadow:0 20px 48px #082b4b1c}.treech-harbor-map{position:relative;min-width:2200px;aspect-ratio:2650/760;overflow:hidden;border:7px solid #fff;border-radius:18px;background:#f6fafc;box-shadow:0 8px 24px #082b4b26}.treech-harbor-map>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.treech-berth{position:absolute;left:var(--x);top:var(--y);z-index:2;display:grid;place-items:center;width:25px;height:25px;transform:translate(-50%,-50%);padding:0;border:2px solid #fff;border-radius:50%;color:#fff;font-size:9px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 2px 7px #001a2f66;transition:transform .15s,opacity .2s}.treech-berth:hover,.treech-berth:focus-visible{z-index:4;transform:translate(-50%,-50%) scale(1.28);outline:3px solid var(--treech-gold);outline-offset:2px}.treech-berth.is-available{background:var(--treech-green)}.treech-berth.is-occupied{background:var(--treech-red)}.treech-berth.is-reserved{background:var(--treech-orange)}.treech-berth.is-maintenance{background:var(--treech-gray)}.treech-berth.is-filtered{opacity:.12;pointer-events:none}
.treech-privacy-note{margin:14px 3px 0;color:#526979;font-size:13px}.treech-planner-login{position:relative;z-index:1000;max-width:720px;margin:70px auto;padding:50px 28px;text-align:center;border-radius:24px;background:#eef5f8;color:var(--treech-navy);pointer-events:auto}.treech-planner-login>span{font-size:42px}.treech-planner-login h1{margin:8px 0}.treech-planner-login a{position:relative;z-index:1001;display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:13px 22px;border-radius:12px;background:var(--treech-navy);color:#fff;text-decoration:none;font-weight:800;pointer-events:auto;cursor:pointer}
.treech-booking{margin-top:32px;overflow:hidden;border:1px solid #cbdde6;border-radius:24px;background:#fff;box-shadow:0 18px 48px #082b4b16}.treech-booking-intro{padding:28px 30px;background:linear-gradient(125deg,#062542,#0c527e);color:#fff}.treech-booking-intro h2{margin:5px 0 8px;color:#fff;font-size:clamp(27px,3vw,40px)}.treech-booking-intro p{margin-bottom:0}.treech-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:28px 30px}.treech-booking-grid label{display:grid;gap:7px;font-size:13px;font-weight:800}.treech-booking-grid input,.treech-booking-grid select,.treech-booking-grid textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #b9ccd6;border-radius:10px;background:#fff;color:var(--treech-navy);font:inherit}.treech-booking-grid .treech-wide{grid-column:1/-1}.treech-booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:0 30px 28px}.treech-booking-actions p{margin:0 auto 0 0;color:var(--treech-green);font-weight:800}.treech-booking-actions button{padding:13px 19px;border:0;border-radius:11px;font-weight:800;cursor:pointer}.treech-booking-actions button[hidden]{display:none}
.treech-berth-dialog{width:min(720px,94vw);padding:0;border:0;border-radius:22px;color:var(--treech-navy);box-shadow:0 28px 90px #00152680}.treech-berth-dialog::backdrop{background:#021522d9;backdrop-filter:blur(5px)}.treech-berth-dialog form{padding:0}.treech-berth-dialog header{display:flex;justify-content:space-between;padding:25px 28px 20px;background:var(--treech-navy);color:#fff}.treech-berth-dialog h2{margin:3px 0 0;color:#fff;font-size:31px}.treech-dialog-close{align-self:start;width:42px;height:42px;border:0;border-radius:50%;background:#ffffff18;color:#fff;font-size:30px;line-height:1;cursor:pointer}.treech-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:25px 28px}.treech-form-grid label{display:grid;gap:7px;font-size:13px;font-weight:800}.treech-form-grid input,.treech-form-grid select,.treech-form-grid textarea{width:100%;padding:11px 12px;border:1px solid #c4d2da;border-radius:10px;background:#fff;color:var(--treech-navy);font:inherit;box-sizing:border-box}.treech-form-grid .treech-wide{grid-column:1/-1}.treech-last-change{min-height:18px;margin:0;padding:0 28px;color:#647985;font-size:12px}.treech-berth-dialog footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px 25px}.treech-berth-dialog footer button{padding:12px 18px;border:0;border-radius:11px;font-weight:800;cursor:pointer}.treech-primary{background:var(--treech-green);color:#fff}.treech-primary:disabled{opacity:.55}.treech-secondary{background:#e8eff3;color:var(--treech-navy)}.treech-form-message{min-height:0;margin:0 28px 18px;color:var(--treech-green);font-size:13px;font-weight:800}
@media(max-width:760px){.treech-planner{margin-top:10px;padding:0 12px}.treech-planner-header{display:block;padding:25px 20px}.treech-planner-summary{margin-top:20px}.treech-planner-toolbar{flex-wrap:wrap;align-items:center;padding:14px}.treech-planner-toolbar label{width:calc(50% - 9px)}.treech-planner-toolbar select,.treech-planner-toolbar input{width:100%;min-width:0}.treech-planner-toolbar p{width:100%;margin:0}.treech-map-scroll{padding:10px}.treech-form-grid,.treech-booking-grid{grid-template-columns:1fr;padding:20px}.treech-form-grid .treech-wide,.treech-booking-grid .treech-wide{grid-column:auto}.treech-berth-dialog header{padding:21px 20px}.treech-berth-dialog footer{padding:16px 20px 22px}.treech-last-change{padding:0 20px}.treech-booking-actions{align-items:stretch;flex-direction:column;padding:0 20px 22px}.treech-booking-actions p{margin:0}.treech-booking-actions button{width:100%}}
