*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f5f1ec;color:#2b2520}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;padding:10px 14px;background:#eee4d8;color:#3a3027;font-weight:700;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button.primary{background:#835d33;color:#fff}button.full{width:100%}input,select,textarea{width:100%;border:1px solid #d8cabb;border-radius:8px;padding:10px 12px;background:#fffdfa;color:#2b2520;outline:none}input:focus,select:focus,textarea:focus{border-color:#946b40;box-shadow:0 0 0 3px #946b4029}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:13px 16px;text-align:left;border-bottom:1px solid #eee4d8;vertical-align:middle}th{font-size:12px;text-transform:uppercase;color:#857465;background:#fbf7f1}td small{display:block;margin-top:4px;color:#857465}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#f8f0e7,#efe2d2 48%,#f7f4ee)}.login-card{width:min(100%,390px);background:#fffdfa;border:1px solid #eadfD2;border-radius:12px;padding:34px;box-shadow:0 22px 60px #402c1a24}.login-card h1{margin:16px 0 4px;font-size:26px}.login-card p{margin:0 0 22px;color:#7b6a5a}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:10px;background:#835d33;color:#fff;font-size:15px;font-weight:900;letter-spacing:.5px}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{background:#2f251d;color:#fff;padding:28px 22px;display:flex;flex-direction:column;gap:28px}.sidebar h1{margin:16px 0 4px;font-size:22px}.sidebar p{margin:0;color:#cfbca6}.sidebar nav{flex:1}.sidebar a{display:block;color:#eadfd2;text-decoration:none;padding:12px 14px;border-radius:8px;font-weight:700}.sidebar a.active{background:#ffffff1f;color:#fff}.user-box{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;display:grid;gap:10px}.user-box span{color:#cfbca6;font-size:14px}.content{padding:32px;min-width:0}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.page-header h2{margin:0 0 6px;font-size:28px}.page-header p{margin:0;color:#746454}.header-actions{display:flex;gap:10px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{background:#fffdfa;border:1px solid #eadfD2;border-radius:10px;padding:17px 18px}.stat-card span{display:block;color:#746454;font-size:13px;margin-bottom:8px}.stat-card strong{font-size:28px;color:#835d33}.stat-card.pending strong{color:#a16207}.stat-card.approved strong{color:#15803d}.stat-card.rescheduled strong{color:#6d28d9}.filter-bar{display:grid;grid-template-columns:minmax(180px,240px) minmax(160px,220px) auto;align-items:end;gap:14px;background:#fffdfa;border:1px solid #eadfD2;border-radius:10px;padding:16px;margin-bottom:18px}.field{display:grid;gap:6px;margin-bottom:14px}.field span{font-size:13px;font-weight:800;color:#55483c}.field b{color:#b91c1c}.table-card{overflow:hidden;background:#fffdfa;border:1px solid #eadfD2;border-radius:10px}.empty{padding:34px;text-align:center;color:#857465}.badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.badge.pending{background:#fef3c7;color:#92400e}.badge.approved{background:#dcfce7;color:#166534}.badge.rescheduled{background:#ede9fe;color:#5b21b6}.badge.done{background:#dbeafe;color:#1e40af}.badge.danger{background:#fee2e2;color:#991b1b}.alert{padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:14px;font-weight:700}.alert.error{background:#fee2e2;color:#991b1b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#241b148f;display:grid;place-items:center;z-index:10;padding:18px}.modal{width:min(100%,740px);max-height:92vh;overflow:auto;background:#fffdfa;border-radius:12px;box-shadow:0 28px 80px #241b1447}.modal-header{display:flex;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #eadfD2}.modal-header h2{margin:0 0 4px;font-size:20px}.modal-header p{margin:0;color:#746454}.icon-button{width:36px;height:36px;padding:0}.modal-body{padding:24px}.modal-grid{display:grid;gap:2px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;border:1px solid #eadfD2;border-radius:10px;margin-bottom:14px;background:#fbf7f1}.info-grid span{display:block;color:#746454;font-size:12px;margin-bottom:3px}.info-grid strong{font-size:14px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;gap:10px;margin-top:4px}.whatsapp-panel{margin-top:22px;border-top:1px solid #eadfD2;padding-top:20px}.whatsapp-panel h3{margin:0 0 6px;font-size:17px}.whatsapp-panel p{margin:0 0 14px;color:#746454}.whatsapp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.whatsapp-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;border:1px solid #eadfD2;border-radius:10px;padding:10px;background:#fbf7f1}.whatsapp-contact label{display:grid;gap:5px}.whatsapp-contact span{color:#55483c;font-size:13px;font-weight:800}@media (max-width: 900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar,.page-header{grid-template-columns:1fr;display:grid}}@media (max-width: 640px){.content{padding:18px}.stats-grid,.info-grid,.two-cols,.whatsapp-grid,.whatsapp-contact{grid-template-columns:1fr}th:nth-child(3),td:nth-child(3),th:nth-child(5),td:nth-child(5){display:none}}
