:root{--color-charcoal:#233d4d;--color-charcoal-muted:#4a6270;--color-alice:#d5e3ec;--color-alice-soft:#eef4f8;--color-whatsapp:#25d366;--color-whatsapp-dark:#128c7e;--color-white:#fff;--color-slate-900:#0f172a;--radius:12px;--radius-lg:16px;--shadow:0 4px 24px rgba(35,61,77,.08);--shadow-lg:0 12px 40px rgba(35,61,77,.12);--max-width:1120px;--font-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);color:var(--color-charcoal);background:var(--color-white);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:1.25rem}.section{padding-block:5rem}.section--muted{background:var(--color-alice-soft)}.section__eyebrow{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-whatsapp-dark);margin-bottom:.75rem}.section__title{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;line-height:1.2;margin:0 0 1rem;color:var(--color-charcoal)}.section__subtitle{font-size:1.0625rem;color:var(--color-charcoal-muted);max-width:36rem;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .15s}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--color-whatsapp);color:var(--color-white)}.btn--primary:hover{background:var(--color-whatsapp-dark)}.btn--secondary{background:transparent;color:var(--color-charcoal);border-color:var(--color-alice)}.btn--secondary:hover{border-color:var(--color-charcoal-muted)}.btn--ghost{background:transparent;color:var(--color-charcoal);padding-inline:1rem}.btn--ghost:hover{color:var(--color-whatsapp-dark)}.btn--block{width:100%}.btn--sm{padding:.4rem .875rem;font-size:.875rem}.btn--danger{background:transparent;color:#c0392b;border-color:#c0392b}.btn--danger:hover{background:#c0392b;color:var(--color-white)}.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.admin-page-header h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-charcoal)}.admin-card{background:var(--color-white);border:1px solid var(--color-alice);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.admin-table{width:100%;border-collapse:collapse;font-size:.9375rem}.admin-table td,.admin-table th{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-alice)}.admin-table th{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-charcoal-muted);background:var(--color-alice-soft)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--color-alice-soft)}.admin-table .actions{display:flex;gap:.5rem;justify-content:flex-end}.admin-empty{padding:3rem;text-align:center;color:var(--color-charcoal-muted)}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--color-charcoal)}.form-group input,.form-group select{padding:.625rem .875rem;border:1.5px solid var(--color-alice);border-radius:8px;font-size:.9375rem;font-family:var(--font-sans);color:var(--color-charcoal);background:var(--color-white);outline:none;transition:border-color .15s}.form-group input:focus,.form-group select:focus{border-color:var(--color-whatsapp)}.form-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}.alert{padding:.75rem 1rem;border-radius:8px;font-size:.9375rem;margin-bottom:1rem}.alert--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.role-badge{display:inline-block;padding:.2em .6em;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.role-badge--gerente{background:#e0f2fe;color:#0369a1}.role-badge--comum{background:var(--color-alice-soft);color:var(--color-charcoal-muted)}
