@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";:root{--ocean-blue-50: #f0f9ff;--ocean-blue-100: #e0f2fe;--ocean-blue-200: #bae6fd;--ocean-blue-300: #7dd3fc;--ocean-blue-400: #38bdf8;--ocean-blue-500: #0ea5e9;--ocean-blue-600: #0284c7;--ocean-blue-700: #0369a1;--ocean-blue-800: #075985;--ocean-blue-900: #0c4a6e;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--emerald-500: #10b981;--emerald-600: #059669;--amber-500: #f59e0b;--amber-600: #d97706;--red-500: #ef4444;--red-600: #dc2626;--coral-400: #fb7185;--coral-500: #f43f5e;--teal-400: #2dd4bf;--teal-500: #14b8a6;--indigo-400: #818cf8;--indigo-500: #6366f1;--sunset-400: #fbbf24;--sunset-500: #f59e0b;--sunset-orange-400: #fb923c;--sunset-orange-500: #f97316;--sunset-orange-600: #ea580c;--golden-400: #fbbf24;--golden-500: #f59e0b;--golden-600: #d97706;--coral-pink-400: #f472b6;--coral-pink-500: #ec4899;--coral-pink-600: #db2777;--burnt-orange-700: #c2410c;--burnt-orange-800: #9a3412;--burnt-orange-900: #7c2d12;--charcoal-700: #3f3f46;--charcoal-800: #27272a;--charcoal-900: #18181b;--maritime-navy-600: #1e40af;--maritime-navy-700: #1d4ed8;--maritime-navy-800: #1e3a8a;--maritime-navy-900: #1e293b;--deep-sea-700: #164e63;--deep-sea-800: #155e75;--deep-sea-900: #083344;--primary: var(--ocean-blue-500);--primary-hover: var(--ocean-blue-600);--primary-active: var(--ocean-blue-700);--secondary: var(--slate-500);--secondary-hover: var(--slate-600);--secondary-active: var(--slate-700);--success: var(--emerald-500);--success-hover: var(--emerald-600);--warning: var(--golden-500);--warning-hover: var(--golden-600);--error: var(--coral-pink-500);--error-hover: var(--coral-pink-600);--status-active: var(--emerald-500);--status-upcoming: var(--sunset-orange-500);--status-completed: var(--maritime-navy-800);--status-warning: var(--golden-500);--status-critical: var(--coral-pink-500);--accent-primary: var(--teal-500);--accent-secondary: var(--sunset-orange-500);--accent-tertiary: var(--coral-pink-500);--surface-primary: #ffffff;--surface-secondary: var(--slate-50);--surface-tertiary: var(--slate-100);--surface-elevated: #ffffff;--surface-overlay: rgba(15, 23, 42, .8);--gradient-ocean: linear-gradient(135deg, var(--ocean-blue-50) 0%, var(--ocean-blue-100) 100%);--gradient-sunset: linear-gradient(135deg, var(--sunset-400) 0%, var(--coral-400) 100%);--gradient-teal: linear-gradient(135deg, var(--teal-400) 0%, var(--emerald-500) 100%);--gradient-subtle: linear-gradient(135deg, var(--surface-primary) 0%, var(--surface-secondary) 100%);--text-primary: var(--slate-900);--text-secondary: var(--slate-600);--text-tertiary: var(--slate-400);--text-inverse: #ffffff;--text-link: var(--primary);--border-light: var(--slate-200);--border-medium: var(--slate-300);--border-heavy: var(--slate-400);--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080}[data-theme=dark]{--surface-primary: var(--slate-900);--surface-secondary: var(--slate-800);--surface-tertiary: var(--slate-700);--surface-elevated: var(--slate-800);--text-primary: var(--slate-50);--text-secondary: var(--slate-300);--text-tertiary: var(--slate-400);--border-light: var(--slate-700);--border-medium: var(--slate-600);--border-heavy: var(--slate-500)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{height:100%;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{height:100%;font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--surface-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:contain}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary);margin-bottom:var(--space-4)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--space-4);color:var(--text-secondary)}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-hover);text-decoration:underline}small{font-size:var(--font-size-sm);color:var(--text-tertiary)}code{font-family:var(--font-family-mono);font-size:.875em;background-color:var(--surface-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;min-height:var(--touch-target);min-width:var(--touch-target);-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--primary);color:var(--text-inverse);border-color:var(--primary)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--surface-primary);color:var(--text-primary);border-color:var(--border-medium)}.btn-secondary:hover:not(:disabled){background-color:var(--surface-secondary);border-color:var(--border-heavy)}.btn-outline{background-color:transparent;color:var(--primary);border-color:var(--primary)}.btn-outline:hover:not(:disabled){background-color:var(--primary);color:var(--text-inverse)}.btn-ghost{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--surface-secondary);color:var(--text-primary)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);min-height:36px}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--font-size-lg);min-height:52px}.btn-success{background-color:var(--success);color:var(--text-inverse);border-color:var(--success)}.btn-success:hover:not(:disabled){background-color:var(--emerald-600);border-color:var(--emerald-600);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-warning{background-color:var(--warning);color:var(--text-inverse);border-color:var(--warning)}.btn-warning:hover:not(:disabled){background-color:var(--golden-600);border-color:var(--golden-600);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-error{background-color:var(--error);color:var(--text-inverse);border-color:var(--error)}.btn-error:hover:not(:disabled){background-color:var(--coral-pink-600);border-color:var(--coral-pink-600);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-accent{background-color:var(--accent-secondary);color:var(--text-inverse);border-color:var(--accent-secondary)}.btn-accent:hover:not(:disabled){background-color:var(--sunset-orange-600);border-color:var(--sunset-orange-600)}.btn-maritime{background-color:var(--maritime-navy-800);color:var(--text-inverse);border-color:var(--maritime-navy-800)}.btn-maritime:hover:not(:disabled){background-color:var(--maritime-navy-900);border-color:var(--maritime-navy-900)}.btn-deep-sea{background-color:var(--deep-sea-800);color:var(--text-inverse);border-color:var(--deep-sea-800)}.btn-deep-sea:hover:not(:disabled){background-color:var(--deep-sea-900);border-color:var(--deep-sea-900)}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3);font-family:inherit;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--surface-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast);min-height:var(--touch-target)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0ea5e91a}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-error{font-size:var(--font-size-sm);color:var(--error);margin-top:var(--space-1)}.card{background-color:var(--surface-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{padding:var(--space-6);border-bottom:1px solid var(--border-light)}.card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.card-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin:var(--space-1) 0 0 0}.card-content{padding:var(--space-6)}.card-footer{padding:var(--space-6);border-top:1px solid var(--border-light);background-color:var(--surface-secondary)}.nav{display:flex;align-items:center;gap:var(--space-6)}.nav-link{padding:var(--space-3) var(--space-4);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);font-weight:var(--font-weight-medium)}.nav-link:hover{color:var(--text-primary);background-color:var(--surface-secondary);text-decoration:none}.nav-link.active{color:var(--primary);background-color:#0ea5e91a}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.border{border:1px solid var(--border-medium)}.border-light{border:1px solid var(--border-light)}.border-heavy{border:1px solid var(--border-heavy)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}@media (max-width: 768px){:root{--font-size-4xl: 2rem;--font-size-3xl: 1.75rem;--space-6: 1rem;--space-8: 1.5rem}.card-header,.card-content,.card-footer{padding:var(--space-4)}.btn{width:100%;justify-content:center}.btn-sm{width:auto}}.sailing-panel{background:var(--gradient-subtle);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md)}.panel-ocean{background:var(--gradient-ocean);border:1px solid var(--ocean-blue-200)}.panel-sunset{background:var(--gradient-sunset);border:1px solid var(--coral-400);color:#fff}.panel-teal{background:var(--gradient-teal);border:1px solid var(--teal-400);color:#fff}.sailing-badge{display:inline-flex;align-items:center;padding:2px 6px;font-size:10px;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.025em;border-radius:var(--radius-sm);background-color:var(--primary);color:var(--text-inverse);line-height:1}.badge-coral{background-color:var(--coral-500);color:#fff}.badge-teal{background-color:var(--teal-500);color:#fff}.badge-indigo{background-color:var(--indigo-500);color:#fff}.badge-sunset{background-color:var(--sunset-orange-500);color:#fff}.badge-burnt-orange{background-color:var(--burnt-orange-800);color:#fff}.badge-maritime-navy{background-color:var(--maritime-navy-800);color:#fff}.badge-deep-sea{background-color:var(--deep-sea-800);color:#fff}.badge-charcoal{background-color:var(--charcoal-800);color:#fff}.sailing-divider{height:1px;background:linear-gradient(90deg,transparent 0%,var(--border-medium) 50%,transparent 100%);margin:var(--space-6) 0}.sailing-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.sailing-status:before{content:"";width:8px;height:8px;border-radius:var(--radius-full);background-color:var(--success)}.sailing-status.warning:before{background-color:var(--warning)}.sailing-status.error:before{background-color:var(--error)}.race-header{background:linear-gradient(135deg,var(--ocean-blue-600),var(--ocean-blue-700));color:var(--text-inverse);padding:var(--space-6);border-radius:var(--radius-lg);text-align:center}.race-timer{font-family:var(--font-family-mono);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--ocean-blue-200)}.wind-indicator{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background-color:#0ea5e91a;border:1px solid var(--ocean-blue-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.boat-status{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background-color:var(--surface-elevated);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.boat-name{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.boat-position{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--text-secondary)}:root{--safe-area-top: env(safe-area-inset-top);--safe-area-bottom: env(safe-area-inset-bottom);--safe-area-left: env(safe-area-inset-left);--safe-area-right: env(safe-area-inset-right)}.app-container{min-height:100vh;display:flex;flex-direction:column;padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom)}button,.touch-target,a{min-height:var(--touch-target);min-width:var(--touch-target);-webkit-tap-highlight-color:transparent}@media (max-width: 768px){.mobile-hidden{display:none}}@media (min-width: 769px){.desktop-hidden{display:none}}.modal-overlay.svelte-1d9ou0i{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;justify-content:center;align-items:center}.modal-content.svelte-1d9ou0i{display:flex;align-items:center;justify-content:center}.loading-content.svelte-1d9ou0i{text-align:center;color:var(--text-primary);background:var(--surface-elevated);padding:2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.loading-content.svelte-1d9ou0i h2:where(.svelte-1d9ou0i){color:var(--primary);margin-bottom:1rem;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.spinner.svelte-1d9ou0i{width:40px;height:40px;border:4px solid var(--border-light);border-top:4px solid var(--primary);border-radius:50%;animation:svelte-1d9ou0i-spin 1s linear infinite;margin:0 auto}@keyframes svelte-1d9ou0i-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app.svelte-oeni6o{display:flex;flex-direction:column;min-height:100vh;background:var(--container-global-color);color:var(--element-active-color)}main.svelte-oeni6o{flex:1;display:flex;flex-direction:column;width:100%;margin:0 auto;box-sizing:border-box}@keyframes svelte-oeni6o-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
