:root{--line-green: #06C755;--line-green-dark: #05a847;--line-gray: #333333;--line-light: #F5F5F5;--warning: #FF9500;--error: #FF3B30;--info: #4A90D9}*{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--line-gray);margin:0;padding:0}.btn-primary{background-color:var(--line-green);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;transition:background-color .2s;cursor:pointer;border:none}.btn-primary:hover{background-color:var(--line-green-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:#fff;color:var(--line-gray);border:1px solid #d1d5db;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;transition:background-color .2s;cursor:pointer}.btn-secondary:hover{background-color:#f9fafb}.btn-danger{background-color:var(--error);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;transition:background-color .2s;cursor:pointer;border:none}.btn-danger:hover{background-color:#dc2626}.booking-card{border-radius:.5rem;color:#fff;font-size:.875rem;padding:.25rem .5rem;cursor:pointer;transition:opacity .2s}.booking-card:hover{opacity:.9}.booking-card--confirmed{background-color:var(--line-green)}.booking-card--pending{background-color:var(--warning)}.booking-card--seated{background-color:var(--info)}.booking-card--completed{background-color:#6b7280}.booking-card--cancelled{background-color:#9ca3af;text-decoration:line-through}.booking-card--no-show{background-color:var(--error)}.time-slot{padding:.5rem 1rem;border-radius:.5rem;border:1px solid #d1d5db;font-size:.875rem;font-weight:500;transition:all .2s;background-color:#fff}.time-slot--available{border-color:var(--line-green);color:var(--line-green);cursor:pointer}.time-slot--available:hover{background-color:var(--line-green);color:#fff}.time-slot--selected{background-color:var(--line-green);color:#fff;border-color:var(--line-green)}.time-slot--full{border-color:#d1d5db;color:#9ca3af;background-color:#f3f4f6;cursor:not-allowed}.form-input{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;transition:border-color .2s,box-shadow .2s;font-size:1rem}.form-input:focus{outline:none;border-color:var(--line-green);box-shadow:0 0 0 1px var(--line-green)}.form-input::placeholder{color:#9ca3af}.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--line-gray);margin-bottom:.5rem}.card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 2px #0000000d;padding:1rem}.step-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem}.step-indicator .step{width:.75rem;height:.75rem;border-radius:9999px;transition:background-color .2s}.step-indicator .step--active,.step-indicator .step--completed{background-color:var(--line-green)}.step-indicator .step--pending{background-color:#d1d5db}.step-indicator .step-line{width:2rem;height:.125rem;background-color:#d1d5db}.step-indicator .step-line--completed{background-color:var(--line-green)}
