:root{--navy: #2b3c54;--navy-dark: #1f2e42;--sky: #99ccff;--page: #eef2f7;--mist: #f1f4f7;--line: #dde3ea;--ink: #1f2a37;--text: #55606e;--white: #ffffff;--ok: #237451;--ok-bg: #e3f5ec;--warn: #8a5a00;--warn-bg: #fff1d6;--bad: #a3122c;--bad-bg: #ffe8ec;--radius: 12px;--radius-large: 16px;--card-shadow: 0 1px 2px rgb(31 42 55 / .04), 0 6px 16px rgb(31 42 55 / .06);font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--page);-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--page)}button,input,select,textarea{font:inherit}a,h1,h2,h3{color:var(--navy)}h1{margin:0 0 18px;font-size:clamp(1.5rem,3vw,1.8rem);line-height:1.1}h2{margin:26px 0 12px;font-size:1.05rem}h3{margin:0}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:12px;padding:8px max(16px,env(safe-area-inset-left)) 8px max(16px,env(safe-area-inset-right));color:var(--white);background:var(--navy)}.brand{display:flex;align-items:baseline;gap:7px;letter-spacing:-.01em}.brand-name{font-size:1rem;font-weight:800}.brand-section{color:var(--sky);font-size:.82rem;font-weight:600}.sign-out{min-height:44px;border-color:#ffffff59;color:var(--white);background:transparent}.sign-out:hover:not(:disabled){border-color:#ffffff80;color:var(--white);background:#ffffff1a}.page{width:min(900px,100%);margin:0 auto;padding:24px 16px calc(96px + env(safe-area-inset-bottom))}.centre{display:grid;min-height:100vh;place-items:center;padding:16px}.login-page{background:var(--page)}.tabbar{position:fixed;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:stretch;padding:0 max(4px,env(safe-area-inset-left)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-right));border-top:1px solid var(--line);border-radius:0;background:var(--white)}.tabbar .tab{display:flex;min-width:0;flex:1 1 0;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:64px;padding:5px 4px;color:var(--text);font-size:12px;font-weight:600;line-height:1;text-decoration:none}.tabbar .tab-icon{display:grid;width:56px;min-height:32px;place-items:center;border-radius:999px}.tabbar .tab svg{width:22px;height:22px}.tabbar .tab[aria-current=page]{color:var(--navy);font-weight:700}.tabbar .tab[aria-current=page] .tab-icon{background:#e6f2ff}button,.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 16px;border:1px solid var(--line);border-radius:10px;color:var(--navy);background:var(--white);font-weight:750;line-height:1.15;cursor:pointer}a.button{text-decoration:none}button:hover:not(:disabled),.button:hover{border-color:#b9c4d0;background:#f8fafc}button.primary{border-color:var(--navy);color:var(--white);background:var(--navy)}button.primary:hover:not(:disabled){border-color:var(--navy-dark);background:var(--navy-dark)}button.danger{border-color:var(--bad);color:var(--bad)}button.link{min-height:44px;padding:0;border:0;border-radius:0;color:var(--navy);background:transparent;text-decoration:underline}button:disabled,button.primary:disabled{border-color:#a0adbb;color:#34495f;background:#dbe3eb;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--sky);outline-offset:2px}label{display:grid;gap:6px;color:var(--navy);font-size:.88rem;font-weight:750}input,select,textarea{width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--white)}textarea{min-height:82px;resize:vertical}[aria-invalid=true]{border-color:var(--bad)}.field-error{color:var(--bad);font-weight:700}.tick{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:550}.tick input{width:22px;min-width:22px;min-height:22px;height:22px;accent-color:var(--navy)}.ticks{display:grid;gap:10px;margin:14px 0}.card,.panel{padding:18px;border:1px solid var(--line);border-radius:var(--radius-large);background:var(--white);box-shadow:var(--card-shadow)}.panel{margin:16px 0}.login{display:grid;width:min(420px,calc(100vw - 32px));gap:14px}.login-card{padding:24px}.row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.hint,.empty{color:var(--text)}.settings-list{display:grid;gap:12px}.settings-row{display:grid;grid-template-columns:44px minmax(0,1fr);min-height:88px;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-large);color:var(--ink);background:var(--white);box-shadow:var(--card-shadow);font-size:1rem;text-decoration:none;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}.settings-row:hover{border-color:var(--navy);color:var(--ink);box-shadow:0 3px 8px #1f2a3714,var(--card-shadow);transform:translateY(-1px)}.settings-icon,.staff-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;color:var(--navy);background:#e6f2ff}.settings-icon svg,.staff-icon svg{width:23px;height:23px}.settings-copy{display:grid;gap:3px;min-width:0}.settings-copy strong{color:var(--navy);font-weight:700}.settings-copy>span{color:var(--text);font-size:.85rem}.staff-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.staff-list li{display:grid;grid-template-columns:42px minmax(0,1fr) auto;min-height:70px;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--card-shadow)}.staff-list .main{min-width:0}.staff-list .main span{overflow-wrap:anywhere}.staff-confirmation{margin:16px 0}.staff-confirmation p{margin:0}.staff-password{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.staff-password button{min-width:100px}.password-notice{display:flex;align-items:center;justify-content:space-between;gap:12px}.password-notice p{margin:0}.password-reveal{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;-webkit-user-select:all;user-select:all}.settings-heading-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.settings-heading-row h2{margin:0}.settings-form{display:grid;gap:12px}.settings-form h2{margin:0}.gear-groups{display:grid;gap:12px}.gear-group-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius-large);background:var(--white);box-shadow:var(--card-shadow)}.gear-group-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px}.gear-group-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:10px;color:var(--navy);background:#eef6ff}.gear-group-icon svg{width:23px;height:23px}.gear-group-head h3{min-width:0;overflow-wrap:anywhere}.settings-card-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.settings-icon-button{display:inline-grid;width:44px;min-width:44px;min-height:44px;height:44px;place-items:center;padding:0;border-color:var(--line);background:var(--white)}.settings-icon-button svg{width:19px;height:19px}.settings-items-list{display:grid;gap:8px;margin:14px 0;padding:0;list-style:none}.settings-items-list li,.ordered-settings-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.settings-items-list li>span{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.settings-add-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.45fr);gap:12px;margin-top:12px}.settings-add-item .row{grid-column:1 / -1;margin-top:0}.settings-inline-form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;width:100%}.settings-inline-form label{flex:1 1 180px}.settings-inline-form button{flex:none}.settings-item-edit{grid-column:1 / -1}.icon-picker{min-width:0;margin:0;padding:0;border:0}.icon-picker legend{margin-bottom:6px;font-weight:800}.icon-picker-options{display:flex;flex-wrap:wrap;gap:8px}.icon-picker-button{display:inline-grid;width:44px;min-width:44px;min-height:44px;height:44px;place-items:center;padding:0;border-color:var(--line);color:var(--navy);background:var(--white)}.icon-picker-button[aria-pressed=true]{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy);background:#eef6ff}.icon-picker-button svg{width:21px;height:21px}.per-boat{margin-top:28px}.gear-grid-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.gear-grid{width:100%;min-width:690px;border-collapse:collapse}.gear-grid th,.gear-grid td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.gear-grid thead th{color:var(--navy);background:#f8fafc;font-size:.82rem}.gear-grid tbody tr:last-child>*{border-bottom:0}.gear-grid tbody th{min-width:160px}.gear-grid tbody th span,.gear-grid tbody th small{display:block}.gear-grid tbody th small{margin-top:3px;color:var(--text);font-size:.72rem;font-weight:700}.gear-grid td{min-width:126px}.gear-carry{display:inline-flex;min-height:44px;align-items:center;gap:7px;color:var(--ink);font-size:.78rem}.gear-carry input{width:22px;min-width:22px;min-height:22px;height:22px;accent-color:var(--navy)}.gear-grid td>input{min-width:96px;margin-top:5px}.ordered-settings-list{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:settings}.ordered-settings-list li{counter-increment:settings;grid-template-columns:32px minmax(0,1fr) auto}.ordered-settings-list li:before{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:var(--navy);background:#eef6ff;content:counter(settings);font-size:.78rem;font-weight:850}.ordered-settings-list .settings-inline-form{grid-column:2 / -1}.blocks-form h2,.blocks-heading{display:flex;align-items:center;gap:8px}.blocks-form h2{margin-top:0}.blocks-form h2 svg,.blocks-heading svg{width:20px;height:20px}.notice{margin:12px 0;padding:12px 14px;border:1px solid transparent;border-radius:10px;font-weight:700}.notice.error{border-color:#f5bdca;color:var(--bad);background:var(--bad-bg)}.notice.info{border-color:#c9dff6;color:var(--navy);background:#eef6ff}.notice.success{border-color:#bce4d0;color:var(--ok);background:var(--ok-bg)}.warning{margin-top:16px;padding:14px;border:1px solid #f0d8a6;border-radius:var(--radius);color:var(--warn);background:var(--warn-bg)}.page-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 24px}.page-head h1{margin:0}.page-summary{display:flex;flex-wrap:wrap;gap:8px}.count-pill{display:inline-flex;min-height:24px;align-items:center;justify-content:center;padding:0 10px;border-radius:999px;color:var(--navy);background:#e6f2ff;font-size:.82rem;font-weight:700;white-space:nowrap}.count-pill.zero{color:var(--text);background:#eef1f5}.section-head{display:flex;align-items:center;gap:10px;margin:24px 0 10px;color:var(--navy);font-size:1.05rem}.section-head-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:var(--navy);background:#e6f2ff}.section-head-icon svg{width:16px;height:16px}.empty-card{margin:0;padding:14px 16px;border:1px dashed #c9d3de;border-radius:12px;color:var(--text);background:transparent}.filters{display:grid;gap:12px;margin-bottom:20px}.filters-search{width:100%}.filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.more-filter-toggle{display:inline-flex;gap:8px}.more-filter-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--card-shadow)}.tabs{display:flex;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--white)}.tabs button{min-height:44px;border:0;border-radius:0}.seg{display:flex;overflow:hidden;padding:4px;border:0;border-radius:12px;background:#e6ebf1}.seg>button{min-height:44px;flex:1;padding:0 12px;border:0;border-radius:9px;color:var(--text);background:transparent;font-size:.95rem;font-weight:700;text-align:center}.tabs button{color:var(--text);background:transparent}.seg>button:hover:not(:disabled){border-color:transparent;background:transparent}.tabs button[aria-pressed=true],.tabs button[aria-pressed=true]:hover:not(:disabled),.tabs button[aria-pressed=true]:focus-visible,.seg>button.active,.seg>button[aria-pressed=true],.seg>button.active:hover:not(:disabled),.seg>button[aria-pressed=true]:hover:not(:disabled),.seg>button.active:focus-visible,.seg>button[aria-pressed=true]:focus-visible{color:var(--white);background:var(--navy);box-shadow:0 1px 3px #1f2a372e}.booking-list,.block-list,.invoices,.timeline{margin:0;padding:0;list-style:none}.booking-list{display:grid;gap:8px}.booking-list li{margin:0}.row-card,.block-list li{display:grid;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-large);color:inherit;background:var(--white);box-shadow:var(--card-shadow);text-decoration:none}.row-card{grid-template-columns:auto minmax(0,1fr) auto auto;min-height:72px;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}button.row-card{width:100%;text-align:left;font-weight:inherit}.row-card:hover{border-color:var(--navy);color:inherit;box-shadow:0 3px 8px #1f2a3714,var(--card-shadow);transform:translateY(-1px)}.date-block,.today-time{display:grid;width:56px;min-height:56px;align-content:center;justify-items:center;border-radius:12px;color:var(--navy);background:#eef6ff;line-height:1}.date-block>span{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.date-block strong{margin:3px 0 2px;font-size:1.35rem;font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.date-block small{font-size:.75rem;font-weight:700}.today-row{grid-template-columns:56px minmax(0,1fr) auto auto}.today-time strong{font-size:1.1rem;font-variant-numeric:tabular-nums;font-weight:800}.today-time small{margin-top:4px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.today-row .main{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:6px}.today-name{color:var(--ink);font-size:.875rem;font-weight:600}.today-row .badges{flex-wrap:nowrap;justify-self:end}.row-card .main{min-width:0}.row-card .main strong,.booking-row-meta{overflow-wrap:anywhere}.booking-row-meta{color:var(--text);font-size:.85rem}.booking-row-side{display:grid;justify-items:end;gap:4px}.row-chevron{display:grid;width:20px;height:20px;place-items:center;color:var(--text)}.row-chevron svg{width:20px;height:20px}.form-attach-panel{display:grid;gap:12px;margin:12px 0 0}.form-attach-panel h3{font-size:.95rem}.form-attach-results{margin-top:0}.form-attach-result{grid-template-columns:auto minmax(0,1fr);min-height:72px}.form-attach-result .main{display:grid;gap:5px}.form-attach-result .boat-badge{margin-right:5px}.unmatched-forms-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.unmatched-forms-heading .section-head{flex:1}.block-list{display:grid;gap:8px}.block-list li{grid-template-columns:64px 1fr auto}.code,.boat-badge{display:inline-flex;width:fit-content;align-items:center;border-radius:6px;color:var(--white);background:var(--navy);font-size:.83rem;font-style:normal;font-weight:850;letter-spacing:.01em}.code{padding:5px 7px}.boat-badge{padding:4px 8px}.main .boat-badge,.badges .boat-badge{color:var(--white)}.main{display:grid;gap:2px}.main span{color:var(--text)}.amount{font-weight:800;font-variant-numeric:tabular-nums}.badges,.chips{display:flex;flex-wrap:wrap;gap:6px}.payment-status{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:.83rem;font-weight:700;white-space:nowrap}.badge,.chip{display:inline-flex;min-height:26px;align-items:center;padding:3px 8px;border:1px solid transparent;border-radius:999px;font-size:.77rem;font-weight:750;white-space:nowrap}.badge.paid,.chip.done{color:var(--ok);background:var(--ok-bg)}.badge.due,.chip.part{color:var(--warn);background:var(--warn-bg)}.badge.muted,.chip.none{border-color:var(--line);color:var(--text);background:var(--white)}.chip.missing{color:var(--bad);background:var(--bad-bg)}.dot{display:inline-grid;width:30px;min-width:30px;height:30px;place-items:center;border:1px solid transparent;border-radius:50%}.dot svg{width:16px;height:16px}.dot.done,.tile.done{color:var(--ok);background:var(--ok-bg)}.dot.part,.tile.part{color:var(--warn);background:var(--warn-bg)}.dot.missing,.tile.missing{color:var(--bad);background:var(--bad-bg)}.dot.none,.tile.none{border-color:var(--line);color:var(--text);background:var(--white)}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.tile{display:flex;min-height:84px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:10px 4px 8px;border:1px solid transparent;border-radius:var(--radius);font-size:.72rem;font-weight:800;text-align:center;text-decoration:none}.tile svg{width:26px;height:26px}.big-button{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;gap:8px;padding:12px;border:0;border-radius:var(--radius);color:var(--white);background:var(--navy);font-weight:800;text-decoration:none}.big-button:hover{color:var(--white);background:var(--navy-dark)}.summary-bar{padding:14px;border-radius:14px;color:var(--white);background:var(--navy)}.report-page{width:min(720px,100%);margin:0 auto;padding-bottom:calc(116px + env(safe-area-inset-bottom))}.report-head{padding:16px;border:1px solid var(--line);border-radius:var(--radius-large);background:var(--white);text-align:center}.report-head h1{margin:8px 0 4px;font-size:1.35rem}.report-head p{margin:0;color:var(--text);font-weight:650}.report-progress{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;margin:16px 0;padding:0;list-style:none}.report-progress li{display:grid;gap:5px;color:var(--text);font-size:.72rem;font-weight:800;text-align:center}.report-progress span{display:block;height:6px;border-radius:999px;background:var(--line)}.report-progress .done{color:var(--ok)}.report-progress .done span{background:var(--ok)}.report-progress .current{color:var(--navy)}.report-progress .current span{background:var(--navy)}.report-step{display:grid;gap:14px}.report-step>h2{margin:0}.photo-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-slot{display:grid;align-content:start;gap:9px;min-height:190px;padding:12px;border:2px solid var(--line);border-radius:var(--radius-large);background:var(--white)}.photo-slot.missing{border-color:var(--bad);background:var(--bad-bg)}.photo-slot header{display:flex;align-items:center;justify-content:space-between;gap:8px}.photo-slot h3{font-size:.92rem}.photo-done{display:grid;width:26px;height:26px;flex:none;place-items:center;border-radius:50%;color:var(--white);background:var(--ok)}.photo-done svg{width:16px;height:16px}.photo-reference{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:7px;margin:0;color:var(--text);font-size:.72rem;font-weight:750}.photo-reference img{width:70px;height:54px;border-radius:7px;object-fit:cover}.photo-reference figcaption{margin:0}.photo-thumb{width:100%;height:122px;border-radius:9px;object-fit:cover}.photo-uploading,.photo-error{margin:0;font-size:.78rem;font-weight:750}.photo-uploading{color:var(--navy)}.photo-error{color:var(--bad)}.photo-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.photo-add{position:relative;min-width:0;flex:1 1 112px;overflow:hidden}.photo-add input{position:absolute;width:1px;min-width:1px;height:1px;min-height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.photo-add:focus-within{outline:3px solid var(--sky);outline-offset:2px}.photo-comparison-slot{grid-column:1 / -1;min-height:0}.photo-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-tile{display:grid;grid-template-rows:auto auto;gap:7px;min-width:0;margin:0}.photo-tile-image,.photo-tile-empty,.photo-tile-add{display:grid;width:100%;height:clamp(150px,27vw,220px);min-height:0;align-items:center;justify-content:center;overflow:hidden;border-radius:9px}.photo-tile-image{padding:0;border:1px solid var(--line);background:var(--mist);cursor:zoom-in}.photo-tile-image:hover{border-color:var(--navy);background:var(--mist)}.photo-tile-image:focus-visible{outline:3px solid var(--sky);outline-offset:2px}.photo-tile-image img{width:100%;height:100%;min-height:0;object-fit:cover}.photo-tile-empty{padding:12px;border:1px solid var(--line);color:var(--text);background:var(--mist);font-size:.8rem;font-weight:750;text-align:center}.photo-tile-add{padding:12px;text-align:center}.photo-tile figcaption{color:var(--text);font-size:.78rem;font-weight:800;text-align:center}.photo-comparison-slot .photo-actions{align-items:center;margin-top:0}.photo-comparison-slot .photo-error{flex:1 1 180px}.photo-viewer{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:64px 20px 20px;background:#0e1a26e0}.photo-viewer img{max-width:min(100%,980px);max-height:calc(100vh - 100px);border-radius:9px;object-fit:contain}.photo-viewer-close{position:absolute;top:16px;right:16px;min-height:44px;border-color:var(--white);color:var(--white);background:var(--navy)}.photo-viewer-close:hover:not(:disabled){border-color:var(--white);color:var(--navy);background:var(--white)}.report-gear-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gear-tile{position:relative;display:flex;min-height:160px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 10px;border:2px solid var(--line);border-radius:14px;background:var(--white);text-align:center}.gear-tile>svg,.gear-tile-head>svg{width:30px;height:30px;color:var(--navy)}.gear-tile>h3{font-size:.88rem}.gear-tile.on{border-color:var(--ok);background:#f6fcf9}.gear-tile-check{position:absolute;top:7px;right:7px;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;color:var(--white);background:var(--ok)}.gear-tile-check svg{width:14px;height:14px}.gear-tile.wide{grid-column:1 / -1;min-height:0;align-items:stretch;justify-content:flex-start;text-align:left}.gear-tile-head{display:flex;align-items:center;gap:9px}.gear-expand{min-height:44px;flex:1;justify-content:flex-start;padding:0;border:0;color:var(--ink);background:transparent;font-weight:850}.gear-expand:hover:not(:disabled){border:0;background:transparent}.gear-subitems{display:grid;gap:8px;width:100%}.gear-subitem{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--line);font-size:.84rem;font-weight:750}.gear-counter-wrap,.gear-tick-wrap{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}.gear-counter{display:inline-flex;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--white)}.gear-counter button{width:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:0;background:var(--mist);font-size:1.15rem}.gear-counter output{display:grid;min-width:40px;place-items:center;padding:0 8px;font-variant-numeric:tabular-nums;font-weight:850}.gear-tick{display:grid;width:44px;min-width:44px;height:44px;min-height:44px;place-items:center;padding:0;border-radius:50%;color:var(--text)}.gear-tick.on{border-color:var(--ok);color:var(--white);background:var(--ok)}.gear-tick svg{width:20px;height:20px}.gear-out{color:var(--text);font-size:.7rem;font-weight:800;white-space:nowrap}.report-fieldset{display:grid;gap:7px;margin:0;padding:0;border:0}.report-fieldset legend{padding:0;color:var(--navy);font-size:.88rem;font-weight:750}.report-seg{width:100%}.report-seg>button{min-height:44px}.report-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.report-controls>button{width:100%;min-height:52px}.report-save-action{display:grid;gap:10px}.report-save-action .notice{margin:0}.report-save-action>button{width:100%;min-height:52px}.report-result{display:grid;gap:14px}.report-result h2{margin:0}.report-bond{display:inline-flex;width:fit-content;min-height:44px;align-items:center;padding:9px 12px;border-radius:10px;font-size:1rem}.report-bond.refund{color:var(--ok);background:var(--ok-bg)}.report-bond.decide{color:var(--warn);background:var(--warn-bg)}.report-flags{margin:0}.sign-out-step{gap:20px;font-size:18px}.sign-out-step>h2{color:var(--navy);font-size:1.55rem}.sign-out-summary{padding:0;box-shadow:var(--card-shadow)}.sign-out-summary .overview-facts{padding:12px 16px;border:0}.sign-out-summary .overview-facts div{grid-template-columns:132px minmax(0,1fr);padding:7px 0}.sign-out-fields{display:grid;grid-template-columns:1fr;gap:16px}.sign-out-fields label,.sign-out-step>label{font-size:1.125rem}.guest-counter{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:12px;color:var(--navy);font-size:1.125rem;font-weight:750}.guest-counter .gear-counter{flex:none}.guest-counter .gear-counter button{min-height:52px}.guest-counter .gear-counter output{min-height:52px}.condition-ticks{gap:12px;margin:0}.tick.big{min-height:56px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.condition-ticks .tick.big{align-items:flex-start;color:var(--navy);font-size:1.2rem;font-weight:700;line-height:1.35}.condition-ticks .tick.big input{margin-top:3px}.sign-out-gear{font-size:1rem}.signature-pad{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.signature-box,.signature-canvas{scroll-margin-block-end:calc(116px + env(safe-area-inset-bottom))}.signature-box{position:relative;width:100%;aspect-ratio:3 / 1;overflow:hidden;border:2px solid #9cabb9;border-radius:var(--radius);background:var(--white)}.signature-canvas{display:block;width:100%;height:100%;color:var(--navy);cursor:crosshair;touch-action:none}.signature-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#a0adbb;font-size:1rem;pointer-events:none}.signature-pad>button{min-width:76px}.signed-indemnity{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-large);background:var(--white);box-shadow:var(--card-shadow)}.signed-indemnity p{margin:0;color:var(--text);font-weight:700}.signed-signature{display:block;width:100%;aspect-ratio:3 / 1;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff}.signature-stroke{stroke:var(--navy);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.new-booking{padding-bottom:246px}.new-booking>.panel{padding:12px 14px 14px}.new-booking .booking-section-heading{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:var(--navy);font-size:.75rem;font-weight:850;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.new-booking .booking-section-heading svg{width:16px;height:16px}.new-booking .boat-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.new-booking .boat-option{position:relative;display:flex;min-height:64px;height:88px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border:2px solid var(--line);border-radius:var(--radius);color:var(--ink);text-align:center}.new-booking .boat-option input{position:absolute;inset:0;z-index:1;width:100%;min-width:0;min-height:0;height:100%;margin:0;opacity:0;cursor:pointer}.new-booking .boat-option .code{min-width:0;padding:0;border-radius:0;color:inherit;background:transparent;font-size:1.125rem;font-weight:850;letter-spacing:0}.new-booking .boat-option .code+span{color:var(--text);font-size:.75rem;font-weight:700}.new-booking .boat-option.selected{border-color:var(--navy);color:var(--white);background:var(--navy);box-shadow:none}.new-booking .boat-option.selected .code+span{color:#dbe9f6}.new-booking .boat-option:has(input:focus-visible){outline:3px solid var(--sky);outline-offset:2px}.new-booking .when{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}.new-booking .when+.duration-chips{margin:6px 0}.new-booking .duration-chips{gap:6px}.new-booking .duration-chips button{min-height:44px;padding:6px 10px;border:1.5px solid var(--line);border-radius:999px;color:var(--text);background:var(--white);font-size:.75rem;font-weight:800}.new-booking .duration-chips button[aria-pressed=true],.new-booking .duration-chips button[aria-pressed=true]:hover:not(:disabled){border-color:var(--navy);color:var(--white);background:var(--navy)}.new-booking .availability-bar{margin-top:8px;padding:10px 12px;border-radius:var(--radius);font-size:.86rem;font-weight:800}.new-booking .availability-bar.free{color:var(--ok);background:var(--ok-bg)}.new-booking .availability-bar.booked{color:var(--bad);background:var(--bad-bg)}.new-booking .availability-status{display:flex;align-items:center;justify-content:space-between;gap:12px}.new-booking .availability-status>span{display:inline-flex;min-width:0;align-items:center;gap:6px}.new-booking .availability-status svg{width:18px;height:18px;flex:none}.new-booking .availability-status strong{color:inherit;font-size:.75rem;white-space:nowrap}.new-booking .availability-bar p{margin:8px 0 6px;color:var(--text);font-size:.75rem;font-weight:700}.new-booking .free-boat-options{display:flex;flex-wrap:wrap;gap:6px}.new-booking .free-boat-options button{min-height:44px;padding:5px 9px;border:1.5px solid var(--ok);border-radius:999px;color:var(--ok);background:var(--white);font-size:.75rem;font-weight:800}.new-booking .free-boat-options button:hover:not(:disabled){border-color:var(--ok);background:var(--ok-bg)}.new-booking .extra-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--white);font-size:.82rem;font-weight:700}.new-booking .extra-actions{display:inline-flex;flex:none;align-items:center;gap:10px;color:var(--text)}.new-booking .extra-actions strong{color:var(--text);font-variant-numeric:tabular-nums}.new-booking .switch{position:relative;display:block;width:46px;min-width:46px;height:28px;min-height:28px;cursor:pointer}.new-booking .switch input{position:absolute;width:1px;min-width:1px;min-height:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.new-booking .switch-track{display:block;width:46px;height:28px;border-radius:999px;background:var(--line);transition:background .15s ease}.new-booking .switch-track:after{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--white);box-shadow:0 1px 2px #1f2a3738;content:"";transition:transform .15s ease}.new-booking .switch input:checked+.switch-track{background:var(--ok)}.new-booking .switch input:checked+.switch-track:after{transform:translate(18px)}.new-booking .switch input:focus-visible+.switch-track{outline:3px solid var(--sky);outline-offset:2px}.new-booking .summary-bar{position:fixed;z-index:15;bottom:calc(64px + env(safe-area-inset-bottom));left:50%;width:min(868px,calc(100% - 32px));margin:0;padding:12px;border-radius:14px 14px 0 0;color:var(--white);background:var(--navy);box-shadow:0 -8px 24px #1f2a372e;transform:translate(-50%)}.new-booking .summary-total,.new-booking .summary-bar p{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0}.new-booking .summary-total>span{font-size:.75rem;font-weight:750}.new-booking .summary-total strong{font-size:1.4rem;font-variant-numeric:tabular-nums;line-height:1}.new-booking .summary-bar p{margin-top:5px;color:#dbe9f6;font-size:.73rem;font-weight:650}.new-booking .summary-bar p span:last-child{font-variant-numeric:tabular-nums;text-align:right}.new-booking .summary-bar .summary-empty,.new-booking .summary-bar .summary-booked{display:block;margin:0 0 10px;color:var(--white);font-size:.85rem}.new-booking .summary-bar .big-button{min-height:44px;margin-top:10px;border:0;color:var(--navy);background:var(--white)}.new-booking .summary-bar .big-button:hover:not(:disabled){color:var(--navy);background:#edf3f8}.new-booking .summary-bar .big-button:disabled{border:1px solid #a0adbb;color:#34495f;background:#dbe3eb}.back-link-wrap{margin:0 0 16px}.back-link{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:0 14px 0 10px;border:1px solid var(--line);border-radius:999px;color:var(--navy);background:var(--white);font-weight:700;text-decoration:none}.back-link:hover{border-color:var(--navy);color:var(--navy);background:#f8fafc}.back-link svg{width:18px;height:18px}.booking-hero{text-align:center}.booking-hero h1{margin:8px 0 2px;font-size:1.25rem}.booking-hero .booking-times{margin:0}.booking-hero .booking-reference{margin:6px 0 0;font-size:.75rem}.facts{display:grid;margin:0 0 8px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.facts div{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.facts div:last-child{border-bottom:0}.facts dt{color:var(--navy);font-weight:800}.facts dd{margin:0}.booking-overview{padding:0;overflow:hidden}.booking-overview-head{padding:18px;color:var(--white);background:var(--navy)}.booking-overview-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-overview-boat{display:inline-flex;min-width:0;align-items:center;gap:8px;color:var(--white);font-size:.9rem;font-weight:600}.booking-overview .boat-badge{color:var(--navy);background:var(--sky)}.booking-overview-reference{flex:none;color:#cfe5ff;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:700}.booking-overview-head h1{margin:8px 0 0;color:var(--white);font-size:1.6rem}.booking-overview-customer-link{display:inline-flex;min-height:44px;align-items:center;gap:8px;color:var(--white);text-decoration:none}.booking-overview-customer-link:hover{color:var(--white);text-decoration:underline}.booking-overview-customer-link:focus-visible{color:var(--white);text-decoration:underline;text-underline-offset:4px}.booking-overview-customer-link svg{width:20px;height:20px}.booking-overview-cancelled{display:inline-flex;min-height:28px;align-items:center;margin-top:10px;padding:4px 9px;border-radius:999px;color:var(--white);background:var(--bad);font-size:.78rem;font-weight:800}.booking-overview-when{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:14px 18px;border-top:1px solid var(--line)}.booking-overview-when-block{display:grid;gap:2px;min-width:0}.booking-overview-label{color:var(--text);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.booking-overview-when-block strong{color:var(--ink);font-size:.95rem}.booking-overview-when-block>span:last-child{color:var(--navy);font-size:1.25rem;font-weight:800}.booking-overview-journey{display:grid;justify-items:center;gap:6px;color:var(--navy)}.booking-overview-journey svg{width:22px;height:22px}.booking-overview-length{display:inline-flex;min-height:28px;align-items:center;padding:4px 8px;border-radius:999px;color:var(--navy);background:#eef6ff;font-size:.72rem;font-weight:800;white-space:nowrap}.booking-overview-contact{display:flex;flex-wrap:wrap;gap:10px;padding:14px 18px;border-top:1px solid var(--line)}.booking-overview-contact-link{display:flex;min-width:0;min-height:44px;flex:1 1 220px;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--navy);background:#f4f8fc;font-weight:750;text-decoration:none}.booking-overview-contact-link:hover{border-color:#b9c4d0;color:var(--navy);background:#edf3f8}.booking-overview-contact-link svg{flex:none;width:19px;height:19px}.booking-overview-contact-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-overview-contact-text{display:flex;min-width:0;min-height:44px;flex:1 1 220px;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--navy);background:#f4f8fc;font-weight:750}.booking-overview-contact-text svg{flex:none;width:19px;height:19px}.booking-overview-contact-text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-since{margin:0;padding:14px 18px;border-top:1px solid var(--line);color:var(--text);font-size:.85rem;font-weight:700}.customer-row{grid-template-columns:56px minmax(0,1fr) auto auto}.customer-initials{display:grid;width:56px;min-height:56px;place-items:center;border-radius:50%;color:var(--navy);background:var(--sky);font-weight:850}.customer-row-contact{color:var(--text);font-size:.78rem;overflow-wrap:anywhere}.customer-row-side{display:grid;justify-items:end;gap:4px;text-align:right}.customer-row-side small{color:var(--text);font-size:.75rem;font-weight:700;white-space:nowrap}.overview-facts{display:grid;margin:0;padding:14px 18px;border-top:1px solid var(--line)}.overview-facts div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.overview-facts div:last-child{border-bottom:0}.overview-facts dt{color:var(--text);font-weight:600}.overview-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.booking-overview-tiles{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:14px 18px;border-top:1px solid var(--line)}.booking-overview-tiles .tile{min-height:72px;font-size:.8rem;font-weight:700}.booking-overview-tiles .tile svg{width:22px;height:22px}.booking-overview-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px;padding:14px 18px;border-top:1px solid var(--line)}.booking-overview-actions button{width:100%;min-width:0;gap:8px;border-color:var(--line);color:var(--navy);background:var(--white)}.booking-overview-actions button:not(.danger):hover:not(:disabled){border-color:var(--line);color:var(--navy);background:var(--white)}.booking-overview-actions button.danger,.booking-overview-actions button.danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad);background:var(--white)}.booking-overview-actions svg{width:18px;height:18px}.lines,.changes{width:100%;overflow:hidden;border:1px solid var(--line);border-collapse:separate;border-spacing:0;border-radius:var(--radius);background:var(--white);font-variant-numeric:tabular-nums}.lines th,.lines td,.changes th,.changes td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}.lines tr:last-child>*,.changes tr:last-child>*{border-bottom:0}.lines td:last-child{text-align:right}.lines .total th,.lines .total td{font-weight:850}.changes caption{padding:8px 0;color:var(--navy);font-weight:800;text-align:left}.changes .changed td:last-child{color:var(--navy);font-weight:850}.invoices li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 0;border-bottom:1px solid var(--line)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.timeline li{padding:8px 0;border-bottom:1px solid var(--line)}.timeline time{display:inline-block;min-width:210px;color:var(--text)}.result{margin:12px 0}.booking-primary{width:100%;margin:12px 0 0;text-align:center}.detail>.seg{margin:16px 0}.detail>.seg+.condition-tab,.detail>.seg+h2{margin-top:0}.condition-tab{display:grid;gap:12px;margin-top:0}.condition-tab>a.button{justify-self:start;width:auto;gap:8px}.docs-latest-response{display:grid;gap:0}.docs-latest-response>h2{margin:0}.docs-response-facts{margin:12px -18px 0}.docs-file-links{display:flex;flex-wrap:wrap;gap:6px}.doc-file-link{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--navy);background:#f4f8fc;font-size:.82rem;font-weight:750;line-height:1;text-decoration:none}.doc-file-link:hover{border-color:#b9c4d0;color:var(--navy);background:#edf3f8}.doc-file-link svg{width:16px;height:16px}.docs-open-response{justify-self:start;margin-top:14px}.docs-response-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.docs-response-actions button,.docs-empty-actions button{gap:8px}.docs-response-actions button{flex:1 1 220px}.docs-response-actions svg,.docs-empty-actions svg{width:18px;height:18px}.docs-empty-actions{display:flex}.condition-report{display:grid;gap:12px}.condition-report-head,.bond-panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.condition-report-head h2,.bond-panel-head h2{margin:0;font-size:1.05rem}.condition-report-head p,.bond-panel-head p{margin:3px 0 0;color:var(--text);font-size:.82rem;font-weight:650}.condition-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.condition-meta div{padding:9px 10px;border-radius:9px;background:var(--mist)}.condition-meta dt{color:var(--text);font-size:.72rem;font-weight:750}.condition-meta dd{margin:3px 0 0;color:var(--navy);font-weight:800}.condition-photos{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.condition-photo{width:96px;min-width:96px;height:76px;min-height:44px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--mist)}.condition-photo img{display:block;width:100%;height:100%;object-fit:cover}.condition-gear{display:grid;gap:0;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.condition-gear li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.85rem}.condition-gear-value{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;color:var(--text);text-align:right}.condition-notes{display:grid;gap:3px;margin:0;font-size:.88rem}.condition-notes span{color:var(--text);white-space:pre-wrap}.condition-flags{margin:0}.signed-conditions{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.signed-conditions h3{color:var(--navy);font-size:.95rem}.signed-condition-details{grid-template-columns:repeat(2,minmax(0,1fr))}.signed-condition-list{display:grid;gap:8px;margin:0;padding-left:22px;color:var(--ink);font-size:.85rem}.signed-condition-list li{padding-left:2px}.bond-panel{display:grid;gap:12px}.bond-panel-head p{color:var(--navy);font-size:1.15rem;font-weight:850}.bond-state{display:inline-flex;min-height:32px;align-items:center;padding:5px 9px;border-radius:999px;font-size:.78rem;white-space:nowrap}.bond-state.refund,.bond-state.to_refund,.bond-state.refunded{color:var(--ok);background:var(--ok-bg)}.bond-state.decide{color:var(--warn);background:var(--warn-bg)}.bond-state.not_back,.bond-state.settled{border:1px solid var(--line);color:var(--text);background:var(--white)}.bond-stale{margin:0;color:var(--bad);font-size:.85rem;font-weight:750}.bond-decision,.bond-fields{display:grid;gap:10px}.bond-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bond-choice button{min-height:44px}.bond-choice button.active{border-color:var(--navy);color:var(--white);background:var(--navy)}.bond-fields label{display:grid;gap:5px;color:var(--navy);font-size:.85rem;font-weight:750}.bond-panel .big-button{width:100%}.bond-work{margin-top:24px}.bond-work h2:not(.section-head){margin:0 0 8px}.bond-work-row{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px}.bond-work-row .main{display:grid;gap:2px;min-width:0}.bond-work-row .main small{color:var(--text);font-size:.75rem}.bond-work-amount{font-variant-numeric:tabular-nums}.bond-work-amount.refund{color:var(--ok)}.school-holiday-reminder{margin-top:8px}.school-holiday-reminder .today-row{grid-template-columns:56px minmax(0,1fr) auto}.school-holiday-reminder .today-time{border-radius:50%}.school-holiday-reminder .today-time svg{width:24px;height:24px}.pricing-page,.season-dates-page{max-width:100%;overflow-x:clip}.pricing-page{padding-bottom:calc(156px + env(safe-area-inset-bottom))}.pricing-page>.seg{margin:0 0 16px}.pricing-card{padding:0;overflow:hidden}.pricing-card h2{margin:0;padding:18px 18px 0}.pricing-grid-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.pricing-grid{width:100%;min-width:680px;border-collapse:collapse;font-variant-numeric:tabular-nums}.pricing-grid th,.pricing-grid td{padding:10px;border-bottom:1px solid var(--line);text-align:left}.pricing-grid thead th{color:var(--text);font-size:.78rem;font-weight:800;white-space:nowrap}.pricing-grid tbody tr:last-child>*{border-bottom:0}.pricing-grid tbody th{min-width:132px;color:var(--navy)}.pricing-boat-name{display:block;margin-top:4px;color:var(--text);font-size:.72rem;font-weight:650}.money-input{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;min-width:100px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.money-input>span{padding-left:10px;color:var(--text);font-weight:750}.money-input input{min-width:0;border:0;background:transparent}.money-input:focus-within{outline:3px solid var(--sky);outline-offset:2px}.money-input input:focus-visible{outline:0}.pricing-grid td.changed,.money-input input.changed{box-shadow:inset 0 0 0 2px var(--sky)}.pricing-add-on{display:grid;gap:8px}.pricing-add-on h2,.pricing-add-on p{margin:0}.pricing-add-on label{width:min(260px,100%)}.pricing-review{display:grid;gap:12px}.pricing-review h2{margin:0}.pricing-footer{position:sticky;z-index:5;bottom:calc(64px + env(safe-area-inset-bottom));display:flex;justify-content:flex-end;margin:20px -16px 0;padding:12px 16px;border-top:1px solid var(--line);background:#eef2f7f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pricing-footer button{width:min(100%,320px)}.pricing-recent{margin-top:28px}.pricing-recent h2{margin-bottom:10px}.pricing-changes{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pricing-changes li{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--card-shadow)}.pricing-changes li>span{overflow-wrap:anywhere}.pricing-changes small{color:var(--text);font-size:.75rem;font-weight:650}.season-card{margin:16px 0}.season-card .section-head{margin-top:0}.season-card .count-pill{margin-left:auto}.season-date-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.season-date-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.season-date-list li>span:first-child{display:grid;gap:3px;min-width:0}.season-date-list li small{color:var(--text);font-size:.78rem;font-weight:650}.season-date-list li.removed{opacity:.55;text-decoration:line-through}.season-date-actions{display:flex;flex-wrap:wrap;gap:8px}.season-date-edit{display:grid;width:100%;gap:12px}.date-inputs,.recurring-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recurring-inputs fieldset{min-width:0;margin:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius)}.recurring-inputs fieldset>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recurring-inputs legend{padding:0 4px;color:var(--navy);font-size:.82rem;font-weight:800}.season-past{margin-top:10px}.season-past summary{min-height:44px;padding:12px 0;color:var(--navy);font-weight:750;cursor:pointer}.season-past .season-date-list{padding-top:2px}.season-date-add{display:grid;gap:12px}.season-date-add h2{margin:0}.season-staged{display:grid;gap:10px}.season-staged h2{margin:0}.season-staged ul{display:grid;gap:6px;margin:0;padding-left:20px}.season-staged li{display:grid;gap:4px}.season-date-shadow-warning{color:var(--warn);font-weight:700}.when{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}.when .days{grid-column:1 / -1;margin:0;color:var(--navy);font-weight:800}.boat-options{display:grid;gap:8px}.boat-option{display:grid;grid-template-columns:auto 64px 1fr auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--white);font-weight:550;cursor:pointer}.boat-option input{width:22px;min-width:22px;min-height:22px;height:22px;accent-color:var(--navy)}.boat-option.selected{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}.boat-option.booked{opacity:.55;background:var(--mist);cursor:not-allowed}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:640px){.settings-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.when,.grid{grid-template-columns:1fr 1fr}.more-filter-panel{grid-template-columns:1fr}.facts div{grid-template-columns:1fr;gap:2px}.condition-meta{grid-template-columns:1fr}.sign-out-summary .overview-facts div{grid-template-columns:1fr;gap:2px}.signed-condition-details{grid-template-columns:1fr}.timeline time{display:block}.gear-group-head{grid-template-columns:42px minmax(0,1fr)}.gear-group-head>.settings-card-actions{grid-column:1 / -1;justify-content:flex-start}.settings-items-list li,.ordered-settings-list li{grid-template-columns:1fr}.settings-items-list .settings-card-actions{justify-content:flex-start}.ordered-settings-list li:before{display:none}.ordered-settings-list .settings-inline-form{grid-column:auto}.recurring-inputs{grid-template-columns:1fr}}@media(max-width:519px){.booking-overview-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-overview-when{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}.booking-overview-when-block:last-child{justify-items:end;text-align:right}.booking-overview-when-block strong{font-size:.85rem}.booking-overview-when-block>span:last-child{font-size:1.05rem}.booking-overview-journey{justify-items:center}.booking-overview-journey svg{display:block}.booking-overview-actions button{min-height:56px;flex-direction:column;gap:4px;padding:6px 4px}.booking-overview-actions button span{font-size:.8rem;white-space:nowrap}.overview-facts div{grid-template-columns:1fr;gap:2px}}@media(max-width:420px){.when,.grid{grid-template-columns:1fr}.block-list li{grid-template-columns:52px 1fr}.block-list li button{grid-column:2;justify-self:start}.tiles{gap:5px}.settings-add-item,.signature-pad{grid-template-columns:1fr}.signature-pad>button{justify-self:start}}@media(max-width:479px){.new-booking .boat-options,.new-booking .when{grid-template-columns:repeat(2,minmax(0,1fr))}.new-booking .availability-status,.new-booking .extra-row{align-items:flex-start}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
