:root{--color-primary:#1b365d;--color-primary-light:#254a7a;--color-accent:#e24a26;--color-accent-hover:#ff5722;--color-bg:#000;--color-surface:#0d1117;--color-surface-raised:#161b22;--color-border:#2a3544;--color-text:#f5f5f5;--color-text-muted:#9ca3af;--color-error:#f87171;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-card:0 2px 12px #1b365d59;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:Georgia, "Times New Roman", serif;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;line-height:1.5}*{box-sizing:border-box}body{background:var(--color-bg);min-height:100dvh;margin:0}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-display);color:var(--color-text);font-weight:600}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.625rem 1rem;display:flex}.app-header nav{align-items:center;gap:1rem;font-size:.875rem;display:flex}.app-header nav a{color:var(--color-accent);font-weight:500}.app-header nav a:hover{color:var(--color-accent-hover)}.brand{align-items:center;gap:.5rem;display:flex}.brand-logo{object-fit:contain;width:auto;height:36px}.link-btn{cursor:pointer;font:inherit;color:var(--color-text-muted);background:0 0;border:none}.link-btn:hover{color:var(--color-accent)}.app-main{max-width:480px;margin:0 auto;padding:1rem}.page-hero{justify-content:center;margin-bottom:1.25rem;display:flex}.page-hero img{max-width:200px;height:auto}.service-grid{gap:.75rem;display:grid}.service-card{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);gap:.75rem;padding:.875rem;transition:border-color .15s,transform .15s;display:flex}.service-card:hover{border-color:var(--color-primary-light);transform:translateY(-1px)}.service-card-icon{border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--color-border);width:48px;height:48px}.service-card h3{color:var(--color-accent);margin:0 0 .25rem;font-size:1rem}.service-card p{color:var(--color-text-muted);margin:0;font-size:.875rem}.service-detail-banner{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;margin-bottom:1rem}.btn{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);cursor:pointer;font:inherit;margin-top:.75rem;margin-right:.5rem;padding:.625rem 1.125rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-block}.btn:hover:not(:disabled){border-color:var(--color-primary-light);background:var(--color-primary)}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.location-form label{color:var(--color-text-muted);margin-bottom:.75rem;font-size:.875rem;display:block}.location-form input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:100%;color:var(--color-text);font:inherit;margin-top:.25rem;padding:.625rem .75rem;display:block}.location-form input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #e24a2640}.coords-row{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.loading{color:var(--color-text-muted);align-items:center;gap:.5rem;padding:1rem 0;display:flex}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:1rem;height:1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--color-error)}.auth-error{text-align:center;padding:2rem 0}.auth-error .error{margin-bottom:1rem}.status{color:var(--color-text-muted);font-size:.875rem}.booking-list{margin:0;padding:0;list-style:none}.booking-list li{margin-bottom:.5rem}.booking-list a{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-direction:column;gap:.25rem;padding:.875rem;transition:border-color .15s;display:flex}.booking-list a:hover{border-color:var(--color-primary-light)}.booking-list strong{color:var(--color-accent)}.confirmation dl{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);grid-template-columns:auto 1fr;gap:.5rem 1rem;padding:1rem;display:grid}.confirmation dt{color:var(--color-text-muted);font-size:.875rem}.confirmation dd{margin:0;font-weight:500}.confirmation h1{color:var(--color-accent)}.ep-debug-panel{z-index:9999;pointer-events:none;font-size:.75rem;position:fixed;bottom:0;left:0;right:0}.ep-debug-panel__toggle{pointer-events:auto;color:#fff;width:100%;font:inherit;text-align:left;cursor:pointer;background:#1a1a2e;border:none;border-top:2px solid #f59e0b;padding:.5rem 1rem;font-weight:600;display:block}.ep-debug-panel__badge{border-radius:999px;margin-left:.5rem;padding:.125rem .375rem;font-size:.6875rem;display:inline-block}.ep-debug-panel__badge--error{background:#dc2626}.ep-debug-panel__badge--warn{background:#d97706}.ep-debug-panel__body{pointer-events:auto;background:#000000eb;border-top:1px solid #333;max-height:40vh;overflow-y:auto}.ep-debug-panel__empty{color:#9ca3af;margin:0;padding:.75rem 1rem}.ep-debug-panel__list{margin:0;padding:.5rem;list-style:none}.ep-debug-panel__item{color:#e5e7eb;border-left:3px solid #6b7280;margin-bottom:.25rem;padding:.375rem .5rem}.ep-debug-panel__item--info{border-left-color:#3b82f6}.ep-debug-panel__item--success{border-left-color:#22c55e}.ep-debug-panel__item--warn{border-left-color:#f59e0b}.ep-debug-panel__item--error{background:#ef44441a;border-left-color:#ef4444}.ep-debug-panel__time{color:#9ca3af;margin-right:.5rem}.ep-debug-panel__msg{word-break:break-word}.ep-debug-panel__detail{white-space:pre-wrap;word-break:break-all;background:#ffffff0f;border-radius:4px;max-height:12rem;margin:.25rem 0 0;padding:.375rem;font-size:.6875rem;overflow-y:auto}.ep-debug-panel__item--error .ep-debug-panel__detail,.ep-debug-panel__item--warn .ep-debug-panel__detail{max-height:20rem}
