:root{--brand-primary: #0048b0;--brand-primary-hover: #0040a0;--brand-secondary: #0068d8;--brand-accent: #0088f8;--brand-graphite: #384858;--bg-app: #f4f5f7;--bg-surface: #ffffff;--bg-subtle: #f8f9fb;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--border: #e5e7eb;--success: #16a34a;--success-bg: #e9f8ee;--warning: #b45309;--warning-bg: #fff6e0;--danger: #dc2626;--danger-bg: #fdecea;--info: #2563eb;--info-bg: #eaf1fd;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 14px rgba(15, 23, 42, .1);--font-sans: system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--bg-app);color:var(--text-primary)}a{color:var(--brand-primary)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}input,select,button{font-family:inherit}label{font-size:.875rem;color:var(--text-secondary)}input:not([type=checkbox]):not([type=radio]),select{display:block;width:100%;max-width:360px;padding:9px 10px;margin-top:4px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;color:var(--text-primary);background:var(--bg-surface)}input:not([type=checkbox]):not([type=radio]):focus,select:focus{border-color:var(--brand-primary)}button{font-size:.95rem;padding:9px 16px;border-radius:var(--radius-sm);border:1px solid var(--brand-primary);background:var(--brand-primary);color:#fff;cursor:pointer;min-height:40px}button:hover:not(:disabled){background:var(--brand-primary-hover);border-color:var(--brand-primary-hover)}button:disabled{cursor:not-allowed;opacity:.6}button.secondary-action{background:var(--bg-surface);color:var(--brand-primary)}button.secondary-action:disabled{color:var(--text-muted);border-color:var(--border);background:var(--bg-subtle);opacity:1}button.disabled-action{display:inline-block;margin-top:8px;background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border);cursor:not-allowed}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:16px;background:linear-gradient(180deg,var(--bg-app) 0%,#eef0f6 100%)}.login-card{width:100%;max-width:440px;background:var(--bg-surface);padding:40px 36px;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:8px;border:1px solid var(--border)}.login-logo{display:block;width:100%;max-width:300px;height:auto;margin:0 auto 18px}.login-card .login-product-name{margin:0 0 6px;text-align:center;font-size:1.05rem;letter-spacing:.02em}.login-tagline{margin:0 0 20px;color:var(--text-secondary);font-size:.95rem;line-height:1.4;text-align:center}.login-card label{margin-top:12px}.login-card button{margin-top:20px;width:100%;min-height:44px}.login-error{color:var(--danger);font-size:.875rem}.brand-icon{display:inline-block;height:36px;width:36px;object-fit:contain;flex-shrink:0}.brand-wordmark{display:inline-flex;align-items:baseline;gap:5px;font-weight:700;letter-spacing:.03em}.brand-suffix{font-size:.7em;font-weight:600;color:var(--brand-primary);letter-spacing:.08em}.shell-header{display:flex;align-items:center;gap:20px;padding:10px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-wrap:wrap}.shell-brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text-primary)}.shell-nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}.shell-nav a{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500}.shell-nav a:hover{background:var(--bg-subtle);color:var(--text-primary)}.shell-nav a.active{color:var(--brand-primary);background:#eef0fe}.shell-user{display:flex;align-items:center;gap:12px;font-size:.9rem}.shell-user-name{color:var(--text-secondary)}.role-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.03em;color:#fff;background:var(--brand-graphite)}.shell-user button{background:var(--bg-surface);color:var(--text-secondary);border-color:var(--border);padding:7px 12px;min-height:unset}.shell-user button:hover{background:var(--bg-subtle);border-color:var(--border);color:var(--text-primary)}.shell-menu-toggle{display:none;background:var(--bg-surface);color:var(--text-primary);border-color:var(--border);padding:8px 10px;min-height:unset}.shell-context-bar{display:flex;align-items:center;gap:8px;padding:8px 24px;background:var(--bg-subtle);border-bottom:1px solid var(--border);font-size:.85rem;color:var(--text-secondary)}.shell-context-label{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;color:var(--text-muted)}.shell-context-name{font-weight:600;color:var(--text-primary)}.shell-main{padding:24px;max-width:1040px;margin:0 auto}.page-header-back{display:inline-block;font-size:.875rem;margin-bottom:12px;text-decoration:none}.page-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header h1{margin:0;font-size:1.5rem}.page-header-subtitle{margin:4px 0 0;color:var(--text-secondary);font-size:.95rem}.page-header-actions{display:flex;gap:8px;flex-wrap:wrap}.page-header{margin-bottom:20px}.section-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px;margin:16px 0}.section-card h2{margin:0 0 12px;font-size:1.05rem}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:3px 10px;border-radius:999px}.status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-badge-ready,.status-badge-connected{background:var(--success-bg);color:var(--success)}.status-badge-ready .status-dot,.status-badge-connected .status-dot{background:var(--success)}.status-badge-pending{background:var(--warning-bg);color:var(--warning)}.status-badge-pending .status-dot{background:var(--warning)}.status-badge-soon,.status-badge-disabled{background:var(--bg-subtle);color:var(--text-muted)}.status-badge-soon .status-dot,.status-badge-disabled .status-dot{background:var(--text-muted)}.status-badge-error{background:var(--danger-bg);color:var(--danger)}.status-badge-error .status-dot{background:var(--danger)}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state-icon{color:var(--text-muted);margin-bottom:8px}.empty-state p{margin:4px 0}.action-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:16px}.action-card{display:flex;flex-direction:column;gap:8px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-sm)}.action-card:hover{border-color:var(--brand-primary);box-shadow:var(--shadow-md)}.action-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.action-card-icon{color:var(--brand-primary)}.action-card-title{font-weight:600;font-size:.98rem;margin:0}.action-card-description{margin:0;color:var(--text-secondary);font-size:.85rem}.businesses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:16px}.business-card{display:block;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-sm)}.business-card:hover{border-color:var(--brand-primary);box-shadow:var(--shadow-md)}.business-card-name{font-weight:600;margin:0 0 8px}.business-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.business-card-open{font-size:.85rem}.new-client-link{display:inline-flex;align-items:center;gap:6px}.technical-details{margin-top:32px;padding-top:8px;border-top:1px solid var(--border);font-size:.75rem;color:var(--text-muted)}.technical-details code{font-family:ui-monospace,monospace}.wizard-page{display:flex;flex-direction:column}.wizard-section,.wizard-step{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px;margin:16px 0}.wizard-section label,.wizard-step label{display:block;margin:8px 0}.wizard-section .checkbox-row,.wizard-section .radio-row{display:flex;align-items:center;gap:8px}.wizard-section .radio-row.disabled{color:var(--text-muted)}.wizard-step h1{margin-top:0;font-size:1.3rem}.step-intro{color:var(--text-secondary);margin-top:-4px}.add-item-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.qr-image{max-width:220px;margin-top:8px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px;background:#fff}.hint{font-size:.8rem;color:var(--text-secondary)}.hint.booking-needs-choice{background:var(--warning-bg);border-radius:var(--radius-sm);padding:10px 12px;font-size:.9rem;color:var(--warning)}.wizard-link{display:inline-block;margin-top:8px}.step-progress{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px 20px;margin:16px 0}.step-progress-title{margin:0 0 12px;font-size:.95rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.step-progress ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 4px}.step-progress li{font-size:.85rem}.step-progress-link{background:none;border:none;padding:4px 8px;border-radius:999px;font:inherit;cursor:pointer;color:inherit;display:inline-flex;align-items:center;gap:4px}.step-progress .step-done .step-progress-link{color:var(--success)}.step-progress .step-current .step-progress-link{color:#fff;background:var(--brand-primary);font-weight:600}.step-progress .step-pending .step-progress-link{color:var(--text-muted)}.wizard-nav{display:flex;gap:12px;margin:16px 0;flex-wrap:wrap}.option-cards{display:flex;flex-wrap:wrap;gap:12px}.option-card{flex:1 1 200px;text-align:left;background:var(--bg-subtle);border:2px solid var(--border);border-radius:var(--radius-md);padding:16px;cursor:pointer;color:var(--text-primary)}.option-card p{margin:4px 0 0;color:var(--text-secondary);font-size:.9rem}.option-card.selected{border-color:var(--brand-primary);background:#eef0fe}.option-card-icon{display:block;color:var(--brand-primary);margin-bottom:6px}.feature-card{display:flex;align-items:flex-start;gap:12px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;margin:8px 0;cursor:pointer}.feature-card input{margin-top:4px}.feature-card p{margin:2px 0 0;color:var(--text-secondary);font-size:.9rem}.feature-card.disabled{color:var(--text-muted);cursor:not-allowed}.feature-card-fixed{cursor:default;background:var(--info-bg)}.feature-check{font-size:1.1rem}.recommended-badge,.soon-badge{font-size:.75rem;font-weight:400;padding:2px 6px;border-radius:var(--radius-sm);margin-left:6px}.recommended-badge{background:var(--success-bg);color:var(--success)}.soon-badge{background:var(--bg-subtle);color:var(--text-muted)}.bank-transfer-fields{margin-top:8px;padding:12px;background:var(--bg-subtle);border-radius:var(--radius-sm)}.whatsapp-status{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:1rem}.catalog-item-list{list-style:none;padding:0}.catalog-item-list li{padding:10px 0;border-bottom:1px solid var(--border)}.catalog-item-list p{margin:2px 0 0;color:var(--text-secondary);font-size:.85rem}.review-checklist{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}.review-checklist .check-done{color:var(--success)}.review-checklist .check-pending{color:var(--text-muted)}.warnings-box{background:var(--warning-bg);color:var(--warning);border-radius:var(--radius-sm);padding:12px;margin:12px 0}.blockers-box{background:var(--danger-bg);color:var(--danger);border-radius:var(--radius-sm);padding:12px;margin:12px 0}.blockers-box ul,.warnings-box ul{margin:4px 0 0}.ready-box{background:var(--success-bg);border-radius:var(--radius-md);padding:24px 16px;margin:12px 0;text-align:center}.ready-box h2{color:var(--success)}.example-message{font-size:1.15rem;font-weight:600}@media (max-width: 900px){.shell-menu-toggle{display:inline-flex}.shell-nav{display:none;flex-basis:100%;flex-direction:column;gap:2px;order:3}.shell-nav.open{display:flex}.shell-nav a{width:100%}}@media (max-width: 600px){.shell-main{padding:16px}.option-cards,.wizard-nav{flex-direction:column}.wizard-nav button{width:100%}.action-card-grid,.businesses-grid{grid-template-columns:1fr}.page-header-row{flex-direction:column}}
