:root{--background:#f6f8f7;--foreground:#14201c;--muted:#68756f;--line:#dce3df;--panel:#ffffff;--primary:#0f766e;--primary-strong:#115e59;--accent:#d97706}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--background);color:var(--foreground);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{margin:0 auto;max-width:1120px;padding:32px 20px 56px}.topbar{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-bottom:32px}.brand{font-size:22px;font-weight:800}.nav{color:var(--muted);display:flex;gap:16px;font-size:14px}.nav-button{background:none;border:0;color:inherit;cursor:pointer;padding:0}.hero{display:grid;gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.boat-card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 28px rgba(20,32,28,.06)}.panel{padding:28px}.eyebrow{color:var(--primary);font-size:13px;font-weight:700;letter-spacing:0;margin:0 0 12px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:46px;line-height:1.05;margin-bottom:18px}h2{font-size:28px;margin-bottom:16px}p{color:var(--muted);line-height:1.6}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.demo-section-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.demo-section-head h2,.demo-section-head p{margin-bottom:0}.demo-badge{background:#fff7ed;border:1px solid #f2c477;border-radius:999px;color:#9a3412;display:inline-flex;font-size:12px;font-weight:800;min-height:32px;padding:0 12px;align-items:center;white-space:nowrap}.demo-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.button{align-items:center;background:var(--primary);border:1px solid var(--primary);border-radius:6px;color:white;display:inline-flex;font-weight:700;min-height:42px;padding:0 16px}.button.secondary{background:transparent;color:var(--primary-strong)}.button.small{font-size:13px;min-height:34px;padding:0 12px}.metric-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border:1px solid var(--line);border-radius:8px;padding:16px}.metric strong{display:block;font-size:24px}.metric span{color:var(--muted);font-size:13px}.boat-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.boat-card{overflow:hidden}.boat-image{align-items:center;background:linear-gradient(135deg,#d6ebe7,#f4d7a1);color:#31534c;display:flex;font-weight:800;height:160px;justify-content:center}.boat-card-content{padding:18px}.boat-card-content h3{margin-bottom:8px}.empty-panel{grid-column:1/-1}.price{color:var(--primary-strong);font-weight:800}.slot-list{display:flex;flex-wrap:wrap;gap:10px}.slot-chip{border:1px solid var(--line);border-radius:6px;display:inline-flex;font-weight:700;min-width:64px;padding:8px 10px;justify-content:center}.auth-layout{display:grid;gap:24px;grid-template-columns:minmax(0,1fr) minmax(320px,420px)}.form{align-content:start;display:grid;gap:18px}.field{color:var(--muted);display:grid;font-size:14px;font-weight:700;gap:8px}.input{min-height:44px;padding:0 12px}.input,.textarea{background:white;border:1px solid var(--line);border-radius:6px;color:var(--foreground)}.textarea{line-height:1.5;padding:10px 12px;resize:vertical}.notice{background:#e7f4f2;border:1px solid #b9ddda;border-radius:8px;color:#115e59;font-size:14px;line-height:1.45;padding:12px 14px}.notice.error{background:#fff3e0;border-color:#f2c477;color:#92400e}.page-notice{margin-top:20px}.dashboard-grid{display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(320px,420px);margin-top:20px}.boat-list{display:grid;gap:12px}.boat-row{align-items:center;border:1px solid var(--line);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:14px 16px}.boat-row h3{margin-bottom:4px}.boat-row p{font-size:14px;margin-bottom:0}.boat-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.request-list{display:grid;gap:14px}.request-row{align-items:start;border:1px solid var(--line);border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:16px}.request-heading{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}.request-heading h3,.request-row p{margin-bottom:0}.request-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.calendar-layout,.integration-layout,.notification-layout{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(320px,420px)}.channel-list{display:grid;gap:12px}.channel-row{align-items:start;border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:14px 16px}.channel-row h3,.channel-row p{margin-bottom:0}.push-panel{border-top:1px solid var(--line);display:grid;gap:10px;margin-top:18px;padding-top:18px}.push-panel h3,.push-panel p{margin-bottom:0}.oauth-link-list{display:flex;flex-wrap:wrap;gap:8px}.event-list{display:grid;gap:12px;margin-top:16px}.event-row{align-items:start;border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:14px 16px}.event-row h3,.event-row p{margin-bottom:0}.calendar-header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.calendar-header h2,.calendar-header p{margin-bottom:0}.calendar-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.calendar-actions .is-active{background:#e7f4f2}.calendar-range-actions{justify-content:flex-start;margin-top:14px}.calendar-days{display:grid;gap:10px;margin-top:16px}.calendar-days-day{grid-template-columns:1fr}.calendar-days-week{grid-template-columns:repeat(7,minmax(116px,1fr));overflow-x:auto}.calendar-day{background:#fbfcfc;border:1px solid var(--line);border-radius:8px;min-height:148px;padding:12px}.calendar-day-heading{display:grid;gap:2px;margin-bottom:10px}.calendar-day-heading h3{font-size:16px;margin-bottom:0;text-transform:uppercase}.calendar-day-heading span{color:var(--muted);font-size:12px}.calendar-day p{font-size:13px;margin-bottom:0}.calendar-day-events{display:grid;gap:8px}.calendar-event-chip{background:white;border-left:4px solid var(--primary);border-radius:6px;box-shadow:0 4px 14px rgba(20,32,28,.05);display:grid;gap:3px;padding:8px 9px}.calendar-event-chip strong{color:var(--foreground);font-size:12px}.calendar-event-chip span{color:var(--muted);font-size:12px;line-height:1.35}.calendar-event-chip.event-rental{border-left-color:var(--accent)}.calendar-event-chip.event-maintenance{border-left-color:#64748b}.calendar-event-chip.event-fueling{border-left-color:#0ea5e9}.event-edit{margin-top:12px}.event-edit summary{color:var(--primary-strong);cursor:pointer;font-size:13px;font-weight:800}.event-edit-form{display:grid;gap:12px;margin-top:12px}.audit-list{display:grid;gap:10px}.queue-filter-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.audit-row{border:1px solid var(--line);border-radius:8px;display:grid;gap:4px;padding:14px 16px}.audit-row span{color:var(--muted);font-size:13px}.audit-row p{margin-bottom:0}.status-pill{background:#edf4f2;border-radius:999px;color:var(--primary-strong);font-size:12px;font-weight:800;padding:6px 10px;text-transform:uppercase}.status-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.sync-pill.sync-none{background:#f3f4f6;color:#475569}.sync-pill.sync-pending{background:#fff7ed;color:#9a3412}.sync-pill.sync-synced{background:#ecfdf5;color:#166534}.sync-pill.sync-failed{background:#fef2f2;color:#b91c1c}.google-connection-pill.google-connection-active{background:#ecfdf5;color:#166534}.google-connection-pill.google-connection-paused{background:#f3f4f6;color:#475569}.google-connection-pill.google-connection-expired{background:#fff7ed;color:#9a3412}.google-connection-pill.google-connection-missing_refresh_token{background:#fef2f2;color:#b91c1c}.google-connection-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.form-columns{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.page-form{margin-top:20px}.boat-detail-hero{display:grid;gap:20px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.boat-detail-image{align-items:center;background:linear-gradient(135deg,#c9e8e2,#f5d18e);border-radius:8px;color:#254740;display:flex;font-size:34px;font-weight:900;min-height:320px;justify-content:center;padding:28px;text-align:center}.detail-list,.tag-list{display:flex;flex-wrap:wrap;gap:10px}.detail-list span,.tag{border:1px solid var(--line);border-radius:999px;color:var(--primary-strong);font-size:13px;font-weight:800;padding:8px 10px}.public-layout{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(340px,420px);margin-top:20px}.booking-panel{position:sticky;top:20px}.date-filter{display:grid;gap:12px;margin-bottom:20px}.compact-filter{align-items:end;grid-template-columns:minmax(220px,320px) auto;margin-bottom:0;margin-top:20px}.info-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0 28px}.info-grid div{border:1px solid var(--line);border-radius:8px;padding:14px}.info-grid span,.info-grid strong{display:block}.info-grid strong{margin-bottom:6px}.info-grid span{color:var(--muted)}.checkbox-group{border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;margin:0;padding:14px}.checkbox-group legend{color:var(--muted);font-size:14px;font-weight:800;padding:0 6px}.checkbox-row{align-items:flex-start;display:flex;gap:10px}.checkbox-row input{margin-top:4px}.checkbox-row small,.checkbox-row span{display:block}.checkbox-row small{color:var(--muted);margin-top:2px}.honeypot{left:-9999px;position:absolute}@media (max-width:780px){.hero,.topbar{display:block}.nav{margin-top:14px}h1{font-size:34px}.hero .panel+.panel{margin-top:18px}.auth-layout,.dashboard-grid{display:block}.auth-layout .panel+.panel,.dashboard-grid .panel+.panel{margin-top:18px}.boat-row{align-items:flex-start;display:grid}.request-row{grid-template-columns:1fr}.calendar-layout,.integration-layout,.notification-layout{display:block}.calendar-layout .panel+.panel,.integration-layout .panel+.panel,.notification-layout .panel+.panel{margin-top:18px}.channel-row,.event-row{grid-template-columns:1fr}.calendar-header{display:grid}.calendar-actions{justify-content:flex-start}.calendar-days-week{grid-template-columns:repeat(7,minmax(180px,1fr))}.boat-row-actions,.request-actions{justify-content:flex-start}.boat-grid,.form-columns{grid-template-columns:1fr}.boat-detail-hero,.public-layout{display:block}.boat-detail-image{min-height:220px}.boat-detail-hero .panel,.public-layout .panel+.panel{margin-top:18px}.booking-panel{position:static}.compact-filter,.info-grid{grid-template-columns:1fr}}