:root{--color-dourado:#d9b36a;--color-dourado-hover:#c5a15c;--color-dourado-glow:#d9b36a33;--color-bege:#f3e9de;--color-off-white:#faf8f5;--color-marrom:#4b2e24;--color-marrom-light:#5c3d32;--color-nude:#dcc5b2;--color-preto:#1f1b1a;--color-preto-light:#2a2524;--color-success:#5f7d59;--color-success-bg:#e8ede6;--color-danger:#a34e36;--color-danger-bg:#f5eae6;--color-warning:#b38e36;--color-warning-bg:#f7efe0;--color-info:#46697a;--color-info-bg:#e8eff2;--font-primary:"Outfit", sans-serif;--font-serif:"Playfair Display", serif;--shadow-sm:0 2px 8px #4b2e240d;--shadow-md:0 4px 20px #4b2e2414;--shadow-lg:0 10px 30px #4b2e241f;--shadow-glow:0 0 15px #d9b36a59;--border-radius-sm:6px;--border-radius-md:12px;--border-radius-lg:20px;--transition-smooth:all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);background-color:var(--color-off-white);color:var(--color-marrom);min-height:100vh;line-height:1.6;display:flex;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-off-white)}::-webkit-scrollbar-thumb{background:var(--color-nude);border-radius:var(--border-radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-dourado)}.sidebar{background-color:var(--color-preto);width:280px;color:var(--color-bege);z-index:100;height:100vh;transition:var(--transition-smooth);flex-direction:column;padding:2.5rem 1.5rem;display:flex;position:fixed;top:0;left:0;box-shadow:4px 0 25px #00000026}.brand{text-align:center;border-bottom:1px solid #f3e9de1a;flex-direction:column;align-items:center;margin-bottom:3rem;padding-bottom:2rem;display:flex}.brand-subtitle{letter-spacing:.3em;text-transform:uppercase;color:var(--color-dourado);margin-bottom:.2rem;font-size:.65rem;font-weight:600}.brand-title{font-family:var(--font-serif);color:var(--color-bege);letter-spacing:.05em;font-size:1.6rem;font-weight:700;position:relative}.brand-title:after{content:"✦";color:var(--color-dourado);font-size:.8rem;position:absolute;bottom:-15px;left:50%;transform:translate(-50%)}.nav-menu{flex-direction:column;flex-grow:1;gap:.5rem;padding-right:.2rem;list-style:none;display:flex;overflow-y:auto}.nav-item{cursor:pointer}.nav-item a{color:var(--color-nude);border-radius:var(--border-radius-md);transition:var(--transition-smooth);border:1px solid #0000;align-items:center;gap:1rem;padding:.9rem 1.2rem;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.nav-item a i{transition:var(--transition-smooth);font-size:1.15rem}.nav-item.active a,.nav-item a:hover{color:var(--color-preto);background-color:var(--color-dourado);box-shadow:var(--shadow-glow);font-weight:600}.nav-item.active a i,.nav-item a:hover i{color:var(--color-preto);transform:translate(3px)}.sidebar-footer{text-align:center;color:#dcc5b299;border-top:1px solid #f3e9de1a;padding-top:1.5rem;font-size:.75rem}.sidebar-footer p strong{color:var(--color-dourado);margin-top:.2rem;display:block}.main-content{min-height:100vh;transition:var(--transition-smooth);flex-direction:column;flex-grow:1;gap:2.5rem;margin-left:280px;padding:2.5rem 3rem;display:flex}.page-header{border-bottom:1px solid var(--color-bege);justify-content:space-between;align-items:center;padding-bottom:1.5rem;display:flex}.header-info h1{font-family:var(--font-serif);color:var(--color-marrom);font-size:2.2rem;font-weight:700}.header-info p{color:var(--color-marrom-light);opacity:.8;font-size:.9rem}.header-actions{align-items:center;gap:1rem;display:flex}.btn{font-family:var(--font-primary);border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-marrom);color:var(--color-bege);border:1px solid var(--color-marrom)}.btn-primary:hover{background-color:var(--color-dourado);color:var(--color-preto);border-color:var(--color-dourado);box-shadow:var(--shadow-glow)}.btn-secondary{background-color:var(--color-bege);color:var(--color-marrom);border:1px solid var(--color-nude)}.btn-secondary:hover{background-color:var(--color-nude);border-color:var(--color-nude)}.btn-outline{color:var(--color-marrom);border:1px solid var(--color-nude);background-color:#0000}.btn-outline:hover{background-color:var(--color-bege);border-color:var(--color-marrom)}.btn-danger{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid #a34e3633}.btn-danger:hover{background-color:var(--color-danger);color:#fff}.btn-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid #5f7d5933}.btn-success:hover{background-color:var(--color-success);color:#fff}.btn-sm{border-radius:var(--border-radius-sm);padding:.4rem .8rem;font-size:.8rem}.card{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);background:#fff;border:1px solid #4b2e240d;padding:1.8rem;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg, var(--color-nude), var(--color-dourado));opacity:0;width:100%;height:3px;transition:var(--transition-smooth);position:absolute;top:0;left:0}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.card:hover:before{opacity:1}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem;display:grid}.kpi-card{align-items:center;gap:1.25rem;display:flex}.kpi-icon{border-radius:var(--border-radius-md);background-color:var(--color-bege);width:50px;height:50px;color:var(--color-marrom);transition:var(--transition-smooth);justify-content:center;align-items:center;font-size:1.4rem;display:flex}.kpi-card:hover .kpi-icon{background-color:var(--color-dourado);color:var(--color-preto);box-shadow:var(--shadow-glow)}.kpi-details .kpi-value{color:var(--color-marrom);font-size:1.6rem;font-weight:700;font-family:var(--font-primary);margin-top:.1rem}.kpi-details .kpi-title{text-transform:uppercase;letter-spacing:.1em;color:var(--color-marrom-light);opacity:.7;font-size:.8rem}.dashboard-grid{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}.chart-container{width:100%;height:320px;position:relative}.recent-activities{flex-direction:column;gap:.75rem;max-height:320px;padding-right:.5rem;display:flex;overflow-y:auto}.activity-item{border-radius:var(--border-radius-md);background-color:var(--color-off-white);border:1px solid #4b2e2408;align-items:center;gap:.8rem;padding:.8rem;font-size:.85rem;display:flex}.activity-badge{border-radius:50%;flex-shrink:0;width:8px;height:8px}.activity-badge.success{background-color:var(--color-success)}.activity-badge.danger{background-color:var(--color-danger)}.activity-badge.warning{background-color:var(--color-warning)}.activity-badge.info{background-color:var(--color-info)}.activity-text{color:var(--color-marrom);flex-grow:1}.activity-time{color:var(--color-nude);font-size:.75rem}.table-header-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.search-input-wrapper{width:100%;max-width:350px;position:relative}.search-input-wrapper i{color:var(--color-nude);font-size:.95rem;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input{border:1px solid var(--color-nude);border-radius:var(--border-radius-md);width:100%;font-family:var(--font-primary);color:var(--color-marrom);transition:var(--transition-smooth);background-color:#fff;outline:none;padding:.7rem 1rem .7rem 2.5rem}.search-input:focus{border-color:var(--color-dourado);box-shadow:0 0 0 3px var(--color-dourado-glow)}.table-container{border-radius:var(--border-radius-md);border:1px solid var(--color-bege);width:100%;overflow-x:auto}.elegant-table{border-collapse:collapse;text-align:left;background-color:#fff;width:100%;font-size:.9rem}.elegant-table th{background-color:var(--color-bege);color:var(--color-marrom);text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid var(--color-nude);padding:1rem 1.2rem;font-size:.75rem;font-weight:600}.elegant-table td{border-bottom:1px solid var(--color-bege);color:var(--color-marrom-light);vertical-align:middle;padding:1rem 1.2rem}.elegant-table tr:last-child td{border-bottom:none}.elegant-table tr:hover td{background-color:var(--color-off-white)}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:30px;align-items:center;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{background-color:var(--color-success-bg);color:var(--color-success)}.badge-danger{background-color:var(--color-danger-bg);color:var(--color-danger)}.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-neutral{background-color:var(--color-bege);color:var(--color-marrom-light)}.action-buttons{gap:.4rem;display:flex}.action-btn{border-radius:var(--border-radius-sm);cursor:pointer;width:32px;height:32px;transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.action-btn.edit{color:var(--color-info);background-color:var(--color-info-bg)}.action-btn.edit:hover{background-color:var(--color-info);color:#fff}.action-btn.delete{color:var(--color-danger);background-color:var(--color-danger-bg)}.action-btn.delete:hover{background-color:var(--color-danger);color:#fff}.action-btn.pay{color:var(--color-success);background-color:var(--color-success-bg)}.action-btn.pay:hover{background-color:var(--color-success);color:#fff}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:0;pointer-events:none;background-color:#1f1b1a66;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-backdrop.show{opacity:1;pointer-events:auto}.modal-container{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-bege);background:#fff;flex-direction:column;width:100%;max-width:600px;max-height:90vh;transition:transform .3s;display:flex;overflow:hidden;transform:translateY(20px)}.modal-backdrop.show .modal-container{transform:translateY(0)}.modal-header{background-color:var(--color-preto);color:var(--color-bege);justify-content:space-between;align-items:center;padding:1.25rem 1.8rem;display:flex}.modal-header h3{font-family:var(--font-serif);letter-spacing:.02em;font-size:1.3rem;font-weight:600}.modal-close{color:var(--color-nude);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.modal-close:hover{color:var(--color-dourado);transform:rotate(90deg)}.modal-body{flex-grow:1;padding:1.8rem;overflow-y:auto}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--color-marrom);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.form-control{border:1px solid var(--color-nude);border-radius:var(--border-radius-md);width:100%;font-family:var(--font-primary);color:var(--color-marrom);transition:var(--transition-smooth);outline:none;padding:.75rem 1rem;font-size:.9rem}.form-control:focus{border-color:var(--color-dourado);box-shadow:0 0 0 3px var(--color-dourado-glow)}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.modal-footer{border-top:1px solid var(--color-bege);background-color:var(--color-off-white);justify-content:flex-end;gap:.75rem;padding:1.25rem 1.8rem;display:flex}.recipe-ingredient-row{grid-template-columns:2fr 1fr auto;align-items:center;gap:.75rem;margin-bottom:.75rem;display:grid}.recipe-card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.recipe-box{flex-direction:column;height:100%;display:flex}.recipe-box-header{border-bottom:1px solid var(--color-bege);justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.8rem;display:flex}.recipe-box-header h3{font-family:var(--font-serif);color:var(--color-marrom);font-size:1.15rem}.recipe-ingredient-list{flex-grow:1;margin-bottom:1.5rem;list-style:none}.recipe-ingredient-list li{border-bottom:1px dashed var(--color-bege);color:var(--color-marrom-light);justify-content:space-between;padding:.4rem 0;font-size:.85rem;display:flex}.recipe-actions{border-top:1px solid var(--color-bege);gap:.5rem;padding-top:1rem;display:flex}.balance-card{background:linear-gradient(135deg, var(--color-marrom), var(--color-preto));color:var(--color-bege);border:none}.balance-card:before{display:none}.balance-card h3{text-transform:uppercase;letter-spacing:.15em;color:var(--color-dourado);margin-bottom:.5rem;font-size:.85rem}.balance-value{font-size:2.2rem;font-family:var(--font-primary);margin-bottom:1.5rem;font-weight:700}.balance-stats{border-top:1px solid #f3e9de26;gap:2rem;padding-top:1.25rem;display:flex}.stat-item h4{text-transform:uppercase;letter-spacing:.08em;color:var(--color-nude);margin-bottom:.25rem;font-size:.75rem}.stat-item p{font-size:1.2rem;font-weight:600}.stat-item.inflow p{color:#8fa387}.stat-item.outflow p{color:#c57b69}@media (max-width:1024px){.sidebar{width:80px;padding:2rem .5rem}.brand-title,.brand-subtitle,.sidebar-footer,.nav-item span{display:none}.brand{margin-bottom:1.5rem;padding-bottom:1rem}.brand-title:after{content:"✦";font-size:1.4rem;display:block;position:static}.nav-item a{justify-content:center;padding:.8rem}.main-content{margin-left:80px;padding:2rem}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.main-content{padding:1.5rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-row{grid-template-columns:1fr}}
