:root{color:#243126;background:#f5f7f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{align-items:center;background:#2f5d40;border:0;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:38px;padding:0 14px}button:disabled{cursor:not-allowed;opacity:.65}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid #e0e6dc;padding:13px 12px;text-align:left;vertical-align:top}th{color:#647060;font-size:12px;text-transform:uppercase}td span{color:#6c7669;display:block;font-size:13px;margin-top:3px}tr{transition:background .16s ease}tbody tr:hover{background:#f8faf6}input,select,textarea{background:#fff;border:1px solid #cfd8ca;border-radius:8px;color:#243126;min-height:38px;padding:8px 10px;width:100%}textarea{resize:vertical}label{color:#4d5a4a;display:grid;font-size:13px;font-weight:600;gap:6px}.boot,.login-page{align-items:center;display:flex;min-height:100vh;justify-content:center}.login-panel{background:#fff;border:1px solid #dfe6da;border-radius:12px;box-shadow:0 20px 60px #2431261f;display:grid;gap:18px;padding:32px;width:min(420px,calc(100vw - 32px))}.login-panel h1{font-size:28px;margin:0}.login-logo{height:76px;object-fit:contain;width:76px}.admin-layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:#1f2e22;color:#f7faf4;padding:22px 16px}.brand{align-items:center;display:flex;font-size:18px;font-weight:800;gap:10px;margin-bottom:28px}.brand img{background:#fff;border-radius:8px;height:34px;object-fit:contain;padding:4px;width:34px}.sidebar nav{display:grid;gap:6px}.sidebar a{align-items:center;border-radius:8px;color:#d9e4d4;display:flex;gap:10px;padding:11px 12px;text-decoration:none}.sidebar a.active,.sidebar a:hover{background:#324b37;color:#fff}.admin-main{min-width:0;padding:24px}.topbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:26px}.topbar span{color:#6c7669;display:block;font-size:13px}.page-title{margin-bottom:18px}.page-title h1{font-size:30px;margin:0 0 4px}.page-title p{color:#687565;margin:0}.metrics-grid{display:grid;gap:14px;grid-template-columns:repeat(5,minmax(0,1fr))}.metric-card,.panel,.modal{background:#fff;border:1px solid #dde5d8;border-radius:10px}.metric-card{display:grid;gap:10px;padding:18px}.metric-card span{color:#687565;font-size:13px}.metric-card strong{font-size:26px}.toolbar{align-items:center;display:flex;gap:10px;margin-bottom:14px}.toolbar select{max-width:220px}.search{align-items:center;background:#fff;border:1px solid #cfd8ca;border-radius:8px;display:flex;gap:8px;padding-left:10px;width:min(360px,100%)}.search input{border:0}.panel{overflow:hidden}.panel h2{border-bottom:1px solid #e0e6dc;font-size:16px;margin:0;padding:16px}.modal-backdrop{align-items:center;background:#0e18118a;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:20}.modal{box-shadow:0 20px 80px #24312629;max-height:calc(100vh - 48px);overflow:auto;padding:18px;width:min(900px,100%)}.drawer-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.drawer-head h2{margin:0}.icon,.ghost{background:#eef3ea;color:#2f5d40}.danger{background:#9b2f2f}.table-actions{display:flex;gap:8px;justify-content:flex-end}.product-cell{align-items:center;display:flex;gap:10px}.product-cell img{border-radius:8px;height:44px;object-fit:cover;width:44px}.badge{background:#e7ece4;border-radius:999px;color:#42513d;display:inline-flex;font-size:12px;font-weight:700;padding:5px 9px}.badge.confirmed,.badge.active,.badge.reviewed{background:#dcedd7;color:#2f6633}.badge.pending_confirmation,.badge.new{background:#fff0c2;color:#7d5a00}.badge.cancelled,.badge.inactive,.badge.closed{background:#f4d7d7;color:#812f2f}.actions-row,.form-actions{display:flex;gap:10px;margin-top:18px}.detail-list{display:grid;gap:8px}.detail-list p,.detail-list h3{margin:0}.line-item{align-items:center;border-top:1px solid #e6ece2;display:flex;justify-content:space-between;padding:10px 0}.form-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:1 / -1}.checks{border:1px solid #d9e3d4;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:12px}.checks label,.switch{align-items:center;display:flex;gap:7px}.checks input,.switch input{width:auto}.upload-row span{color:#687565;font-weight:400}.image-preview{display:grid;gap:8px}.image-preview span{color:#687565;font-size:13px;font-weight:700}.image-preview img{border:1px solid #d9e3d4;border-radius:10px;height:180px;object-fit:cover;width:min(320px,100%)}.gallery-manager{border:1px solid #d9e3d4;border-radius:10px;display:grid;gap:14px;padding:14px}.gallery-manager h3{margin:0}.dropzone{align-items:center;background:#f8faf6;border:1px dashed #91a78a;border-radius:10px;cursor:pointer;display:grid;gap:4px;min-height:110px;padding:18px;text-align:center}.dropzone.active{background:#eef7e9;border-color:#2f5d40}.dropzone p{font-weight:700;margin:0}.dropzone span,.empty-gallery{color:#687565;margin:0}.embla{overflow:hidden;width:100%}.embla-container{display:flex}.embla-slide{flex:0 0 100%;min-width:0;position:relative}.embla-slide img{border:1px solid #d9e3d4;border-radius:10px;height:280px;object-fit:cover;width:100%}.embla-slide span,.primary-pill{background:#2f5d40;border-radius:999px;color:#fff;font-size:12px;font-weight:800;left:10px;padding:5px 9px;position:absolute;top:10px}.image-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.image-card{border:1px solid #d9e3d4;border-radius:10px;display:grid;gap:9px;padding:10px;position:relative}.image-card img{border-radius:8px;height:130px;object-fit:cover;width:100%}.file-name{color:#687565;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-actions{display:flex;flex-wrap:wrap;gap:6px}.image-actions button{min-height:32px;padding:0 9px}.product-detail{display:grid;gap:18px;grid-template-columns:minmax(280px,420px) minmax(0,1fr)}.product-detail .embla-slide img{height:320px}.error{background:#fde3e3;border-radius:8px;color:#7d2424;margin:0;padding:10px 12px}@media(max-width:900px){.admin-layout,.metrics-grid,.form-grid,.product-detail{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}}@media(max-width:760px){:root{background:#f4f7f1}body{background:#f4f7f1;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-size:16px}button{min-height:44px}.login-page{align-items:stretch;padding:18px}.login-panel{align-content:center;border-radius:18px;box-shadow:none;min-height:calc(100vh - 36px);padding:24px;width:100%}.admin-layout{display:block;min-height:100dvh}.sidebar{background:#1f2e22f7;border-radius:22px 22px 0 0;bottom:0;box-shadow:0 -12px 30px #1f2e2233;left:0;padding:9px 10px calc(9px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:30}.brand{display:none}.sidebar nav{display:grid;gap:4px;grid-template-columns:repeat(5,minmax(0,1fr))}.sidebar a{align-items:center;border-radius:16px;flex-direction:column;font-size:11px;gap:3px;justify-content:center;min-height:58px;padding:6px 2px;text-align:center}.sidebar a.active{background:#f4f7f1;color:#223525}.sidebar a:hover{background:#324b37;color:#fff}.admin-main{padding:14px 14px calc(92px + env(safe-area-inset-bottom))}.topbar{background:#f4f7f1f0;border-bottom:1px solid #dde5d8;margin:-14px -14px 18px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;position:sticky;top:0;z-index:12}.topbar strong{font-size:15px}.topbar .ghost{border-radius:999px;min-height:38px;padding:0 11px}.page-title{margin-bottom:14px}.page-title h1{font-size:24px}.page-title p{font-size:14px}.metrics-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{border-radius:16px;min-height:112px;padding:16px}.metric-card strong{font-size:24px}.toolbar{background:#f4f7f1;gap:8px;margin-bottom:12px;position:sticky;top:70px;z-index:10}.toolbar select,.toolbar .search,.toolbar button{max-width:none;width:100%}.search,input,select,textarea{border-radius:13px;min-height:46px}.panel{background:transparent;border:0;overflow:visible}.panel h2{border:0;color:#596653;font-size:13px;padding:0 2px 10px;text-transform:uppercase}table,thead,tbody,tr,td{display:block;width:100%}thead{display:none}tbody{display:grid;gap:10px}tbody tr{background:#fff;border:1px solid #dde5d8;border-radius:16px;box-shadow:0 8px 24px #2431260f;padding:12px}tbody tr:hover{background:#fff}td{align-items:center;border:0;display:flex;gap:14px;justify-content:space-between;min-height:34px;padding:7px 0}td:before{color:#6c7669;content:attr(data-label);flex:0 0 92px;font-size:12px;font-weight:800;text-transform:uppercase}td[data-label=Producto]{align-items:flex-start}.product-cell{gap:12px;justify-content:flex-start}.product-cell:before{display:none}.product-cell img{height:58px;width:58px}.table-actions{border-top:1px solid #e6ece2;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;margin-top:8px;padding-top:12px}.table-actions:before{display:none}.table-actions button{width:100%}.badge{border-radius:999px;font-size:12px;padding:6px 10px}.modal-backdrop{align-items:center;padding:calc(14px + env(safe-area-inset-top)) 14px calc(98px + env(safe-area-inset-bottom))}.modal{border-radius:20px;max-height:calc(100dvh - 132px - env(safe-area-inset-bottom));padding:16px 14px;width:100%}.drawer-head{background:#fff;margin:-16px -14px 14px;padding:14px;position:sticky;top:-16px;z-index:2}.drawer-head h2{font-size:18px}.icon{border-radius:999px;min-height:40px;width:40px}.detail-list{gap:10px}.detail-list p,.line-item{background:#f8faf6;border-radius:12px;padding:10px 12px}.line-item{border:0}.actions-row,.form-actions{display:grid;gap:8px;grid-template-columns:1fr}.form-grid{gap:13px;grid-template-columns:1fr}label{font-size:13px}.checks{border-radius:14px;display:grid;gap:8px}.checks label,.switch{background:#f8faf6;border-radius:12px;min-height:44px;padding:9px 11px}.gallery-manager{border-radius:16px;padding:12px}.dropzone{border-radius:16px;min-height:118px;padding:16px}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.image-card{border-radius:14px;padding:8px}.image-card img{border-radius:11px;height:120px}.image-actions{display:grid;grid-template-columns:1fr}.product-detail{gap:14px;grid-template-columns:1fr}.embla-slide img,.product-detail .embla-slide img{border-radius:16px;height:260px}}@media(max-width:420px){.sidebar a{font-size:10px}.metrics-grid,.image-grid{grid-template-columns:1fr}}
