:root{font-family:Trebuchet MS,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#2d2824;background:#f5efe8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f5efe8}button,input,select{font:inherit}button{cursor:pointer}.app-placeholder,.center-state{max-width:720px;margin:0 auto;padding:64px 20px}.workspace{min-width:0;min-height:100vh;padding:24px max(20px,4vw) 56px}.topbar,.content,.nav-tabs{max-width:1120px;margin:0 auto}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:14px 0 28px}.topbar h1{max-width:none;margin:5px 0 0;font-family:Georgia,serif;font-size:clamp(2.1rem,6vw,4rem)}.text-button,.small-button{border:1px solid rgba(45,40,36,.15);border-radius:999px;padding:9px 14px;background:transparent;color:#51463e;font-size:.86rem;font-weight:750}.nav-tabs{display:flex;gap:8px;overflow-x:auto;padding:0 0 20px;scrollbar-width:none}.nav-tab{flex:0 0 auto;border:0;border-radius:999px;padding:10px 15px;background:transparent;color:#86776e;font-size:.9rem;font-weight:750}.nav-tab.active{background:#2d2824;color:#fffaf5}.content{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.hero-panel{display:flex;align-items:end;justify-content:space-between;gap:24px;min-height:260px;padding:clamp(24px,5vw,52px);border-radius:28px;background:#e9c8bd}.hero-panel h2,.section-block h2{margin:5px 0 10px;font-family:Georgia,serif;font-size:clamp(1.8rem,5vw,3.2rem);font-weight:400;line-height:1}.hero-panel p:not(.eyebrow){max-width:38rem;margin:0;color:#70564e;line-height:1.55}.section-block{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.section-heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 16px}.section-heading h2{font-size:clamp(2rem,5vw,3rem)}.section-heading input{max-width:160px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-grid.compact{grid-template-columns:repeat(2,1fr)}.metric{min-height:112px;display:grid;align-content:space-between;padding:18px;border:1px solid rgba(45,40,36,.1);border-radius:18px;background:#fffaf59e}.metric span,.record span{color:#8b7b71;font-size:.78rem}.metric strong{color:#2d2824;font-family:Georgia,serif;font-size:clamp(1.5rem,4vw,2.3rem);font-weight:400}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-grid button{min-height:108px;display:grid;align-content:center;gap:8px;border:1px solid rgba(45,40,36,.12);border-radius:18px;padding:18px;background:transparent;color:#2d2824;text-align:left;font-weight:800}.quick-grid span{color:#8b7b71;font-size:.8rem;font-weight:500}.inline-form,.form-row{display:flex;gap:9px;flex-wrap:wrap}.inline-form input,.stack-form input,.stack-form select,.inline-form select,.search-input,.section-heading input{min-height:46px;border:1px solid rgba(45,40,36,.17);border-radius:11px;padding:0 12px;background:#fffaf5d1;color:#2d2824}.inline-form input:first-child{flex:1 1 200px}.inline-form input{flex:1 1 130px}.inline-form .primary-button{flex:0 0 auto}.stack-form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.stack-form>*{width:100%}.form-row>*{flex:1 1 160px;min-width:0}.search-input{width:100%}.count-badge{display:inline-grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:#e9c8bd;color:#5d4037;font-size:.8rem;font-weight:800}.record-list{display:grid;gap:8px}.record{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid rgba(45,40,36,.1);border-radius:15px;background:#fffaf599}.record>div:first-child{display:grid;gap:5px;min-width:0}.record strong{overflow:hidden;color:#3f352f;text-overflow:ellipsis;white-space:nowrap}.record-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:6px}.small-button{padding:7px 10px;font-size:.78rem}.small-button.danger{color:#a1433e}.appointment time{color:#a95957;font-family:Georgia,serif;font-size:1.15rem}.status{width:fit-content;border-radius:999px;padding:3px 8px;background:#eee5db;color:#6d625a!important;font-size:.7rem!important;font-style:normal;font-weight:800}.status.concluído{background:#dce9dc;color:#47714d!important}.status.cancelado{background:#f4deda;color:#a1433e!important}.empty-state{padding:34px 18px;border:1px dashed rgba(45,40,36,.2);border-radius:15px;color:#8b7b71;text-align:center}.calendar-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.calendar-views{display:flex;gap:6px;margin-right:auto}.small-button.active{background:#2d2824;color:#fffaf5}.calendar-scroll{min-width:0;max-width:100%;overflow-x:auto;padding-bottom:5px}.calendar-grid{display:grid;gap:8px;min-width:760px}.week-grid,.month-grid{grid-template-columns:repeat(7,minmax(112px,1fr))}.calendar-cell{min-height:150px;display:grid;align-content:start;gap:8px;padding:10px;border:1px solid rgba(45,40,36,.1);border-radius:12px;background:#fffaf58c}.calendar-cell>strong{color:#6d625a;font-size:.8rem;text-transform:capitalize}.appointment-card{display:grid;gap:6px;padding:10px;border:1px solid rgba(45,40,36,.1);border-radius:11px;background:#fffaf5cc}.appointment-card-button{display:grid;gap:4px;border:0;padding:0;background:transparent;color:#2d2824;text-align:left}.appointment-card-button:disabled{cursor:default}.appointment-card span{color:#6d625a;font-size:.78rem}.appointment-card.compact{padding:7px}.appointment-card.compact .status{font-size:.62rem!important}.service-hint{color:#6d625a;font-size:.82rem}.payment-warning{margin:0;border-radius:11px;padding:11px 14px;background:#f4deda;color:#7c3733;font-size:.88rem;line-height:1.45}.center-state{min-height:100vh;display:grid;place-items:center;color:#6d625a}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 85% 12%,#f3d7ce 0,transparent 35%),#f5efe8}.login-card{width:min(100%,460px);padding:clamp(28px,7vw,56px);border:1px solid rgba(45,40,36,.12);border-radius:28px;background:#fffaf5c7;box-shadow:0 24px 80px #5a3c2d1f}.login-card h1{font-size:clamp(2.5rem,10vw,4rem)}.lede{color:#6d625a;line-height:1.5}form{display:grid;gap:10px;margin-top:28px}label{color:#4e443d;font-size:.84rem;font-weight:750}input{width:100%;min-height:48px;border:1px solid rgba(45,40,36,.22);border-radius:12px;padding:0 14px;color:#2d2824;background:#fffaf5}.primary-button{min-height:48px;border:0;border-radius:12px;padding:0 18px;background:#2d2824;color:#fffaf5;font-weight:750}.primary-button:disabled{cursor:wait;opacity:.65}.form-error{color:#a1433e;font-size:.9rem}.eyebrow{color:#a95957;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}h1{max-width:12ch;font-family:Georgia,serif;font-size:clamp(2.5rem,10vw,5.5rem);font-weight:400;line-height:.98;margin:14px 0 20px}.app-placeholder p:not(.eyebrow){max-width:40rem;color:#6d625a;font-size:1.08rem;line-height:1.6}.app-placeholder button{margin-top:20px;border:0;border-radius:999px;padding:12px 18px;background:#2d2824;color:#fffaf5}:focus-visible{outline:3px solid #d47a70;outline-offset:3px}@media(max-width:720px){.workspace{padding-inline:16px}.hero-panel{align-items:start;flex-direction:column}.metric-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:1fr}.record{align-items:flex-start;flex-direction:column}.record-actions{justify-content:flex-start}.inline-form>*{width:100%;flex-basis:100%}.service-form input{flex-basis:100%}}.secondary-button{min-height:48px;border:1px solid rgba(45,40,36,.2);border-radius:12px;padding:0 18px;background:transparent;color:#2d2824;font-weight:750}.secondary-button:hover{background:#2d28240d}.primary-button:hover:not(:disabled){background:#1f1b18}.primary-button.danger{background:#a1433e}.primary-button.danger:hover{background:#8a3631}.toast{position:fixed;z-index:30;right:20px;bottom:20px;display:flex;align-items:flex-start;gap:10px;width:max-content;max-width:min(380px,calc(100vw - 32px));padding:12px 10px 12px 16px;border-radius:13px;background:#2d2824;color:#fffaf5;box-shadow:0 10px 30px #2d282438;font-size:.9rem;line-height:1.4;animation:toast-in .32s cubic-bezier(.16,1,.3,1)}.toast-error{background:#7c3733}.toast-text{flex:1;padding-top:2px}.toast-close{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:inherit;opacity:.75}.toast-close:hover{background:#fffaf51f;opacity:1}@keyframes toast-in{0%{transform:translateY(8px);opacity:.4}}.dialog-layer{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:16px}.dialog-backdrop{position:absolute;inset:0;background:#2d28246b;animation:backdrop-in .24s ease-out}.dialog{position:relative;width:min(100%,440px);padding:28px;border-radius:16px;background:#fffaf5;color:#2d2824;box-shadow:0 24px 64px #2d282447;animation:dialog-in .34s cubic-bezier(.16,1,.3,1)}.dialog-title{margin:0 0 10px;font-family:Georgia,serif;font-size:1.65rem;font-weight:400;line-height:1.12;text-wrap:balance}.dialog-description{margin:0;color:#5d524b;line-height:1.5}.dialog-description strong{color:#2d2824}.dialog-note{margin:16px 0 0;border-radius:11px;padding:11px 14px;background:#f4deda;color:#7c3733;font-size:.88rem;line-height:1.45}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}@keyframes dialog-in{0%{transform:translateY(12px) scale(.98);opacity:0}}@keyframes backdrop-in{0%{opacity:0}}::selection{background:#e9c8bd;color:#2d2824}.history-panel,form{scroll-margin-top:16px}@media(max-width:400px){.form-row>*{flex-basis:100%}}@media(max-width:560px){.dialog-layer{align-items:end;padding:0}.dialog{width:100%;padding:24px 20px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation-name:sheet-in}.dialog-actions{flex-direction:column-reverse}.dialog-actions>button{width:100%}.toast{left:16px;right:16px;bottom:16px;width:auto;max-width:none}}@keyframes sheet-in{0%{transform:translateY(100%)}}@media(prefers-reduced-motion:reduce){.toast,.dialog,.dialog-backdrop{animation:none}}
