.punto-admin { background: #f2f4f3; color: #17212b; }
.punto-admin .admin-shell { grid-template-columns: 300px minmax(0, 1fr); }
.punto-admin .admin-sidebar { padding-left: 58px; background: linear-gradient(160deg, #111722, #1b2a32); color: #e4e9e5; }
.punto-admin .admin-brand-icon { background: #c9ff48; color: #17200a; }
.punto-admin .admin-brand small, .punto-admin .admin-nav button, .punto-admin .admin-nav button i { color: #b5c4c4; }
.punto-admin .admin-nav button:hover { background: #ffffff16; color: #fff; }
.punto-admin .admin-nav button.is-active { background: #c9ff48; color: #17200a; }
.punto-admin .admin-nav button.is-active i { color: #17200a; }
.punto-admin .admin-sidebar-foot { border-color: #ffffff30; color: #b5c4c4; }
.punto-admin .admin-sidebar-foot button { color: #e3eee3; }
.punto-admin .admin-demo-dot { background: #c9ff48; box-shadow: 0 0 0 3px #c9ff4833; }
.punto-admin .admin-topbar { background: #fff; border-color: #dee4e1; }
.punto-admin .admin-overline, .punto-admin .admin-card-heading button { color: #47731b; }
.punto-admin .admin-kpi-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.punto-admin .admin-kpi, .punto-admin .admin-card { background: #fff; border-color: #dde4df; box-shadow: 0 8px 28px #1b2b220a; }
.punto-admin .admin-kpi-icon.is-blue { background: #eaf6ce; color: #437517; }
.punto-admin .admin-kpi-icon.is-violet { background: #e9eff5; color: #476280; }
.punto-admin .admin-kpi-icon.is-cyan { background: #fff1e8; color: #ae5138; }
.punto-admin .admin-card-heading { border-color: #e5eae5; }
.punto-admin .admin-table th { background: #f5f8f3; color: #62716a; }
.punto-admin .admin-table td { border-color: #e9eee9; }
.punto-admin .admin-table tbody tr:hover { background: #f8fbf4; }
.punto-admin .admin-button-primary.punto-admin-primary { border-color: #182a19; background: #182a19; color: #eaffbb; }
.punto-admin .admin-button-primary.punto-admin-primary:hover { background: #304a20; }
.punto-admin .admin-menu-trigger { background: #edf3e4; color: #244a1b; border-color: #d5dfcf; }
.punto-admin .admin-period { background: #f8faf7; border-color: #dde6d8; color: #527044; }
.punto-admin-recent { margin-top: 20px; }
.punto-admin-table { white-space: normal; }
.punto-admin-table td { min-width: 115px; vertical-align: middle; }
.punto-admin-table td:first-child { min-width: 280px; max-width: 450px; }
.punto-admin-table td:first-child strong, .punto-admin-table td:first-child small { display: block; }
.punto-admin-table td:first-child strong { color: #17292b; font-size: 14px; line-height: 1.35; }
.punto-admin-table td:first-child small { margin-top: 4px; color: #798580; font-size: 12px; }
.punto-admin-status { display: inline-flex; padding: 5px 10px; border-radius: 20px; font-size: 12px; font-weight: 750; white-space: nowrap; }
.punto-admin-status.is-published { background: #e8f5d3; color: #37621b; }
.punto-admin-status.is-draft { background: #f2f2ed; color: #656d62; }
.punto-admin-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.punto-admin-actions button { min-height: 34px; padding: 5px 10px; border: 1px solid #d2dfd0; border-radius: 7px; background: #fff; color: #326325; font-size: 12px; font-weight: 700; white-space: nowrap; }
.punto-admin-actions button:hover { background: #eff8df; }
.punto-admin-actions .is-danger { color: #a34545; }
.punto-admin-note { margin: 18px 0 0; color: #6d7b73; font-size: 13px; }
.punto-admin-notice { display: flex; align-items: center; gap: 9px; margin-bottom: 16px; padding: 12px 15px; border: 1px solid #c9dfb8; border-radius: 9px; background: #f3fae8; color: #345927; font-size: 13px; font-weight: 700; }
.punto-admin-confirm { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; padding: 16px; border: 1px solid #e8d3cd; border-radius: 10px; background: #fff8f5; }
.punto-admin-confirm > div { flex: 1; min-width: 210px; }
.punto-admin-confirm strong, .punto-admin-confirm span { display: block; }
.punto-admin-confirm strong { font-size: 14px; }
.punto-admin-confirm span { color: #826e66; font-size: 12px; }
.punto-admin-danger { min-height: 40px; padding: 0 14px; border: 1px solid #a74742; border-radius: 8px; background: #a74742; color: #fff; font-size: 13px; font-weight: 700; }
.punto-admin-editor { max-width: 950px; }
.punto-admin-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px; padding: 26px; }
.punto-admin-fields label { display: grid; align-content: start; gap: 7px; min-width: 0; color: #445951; font-size: 14px; font-weight: 700; }
.punto-admin-fields label.is-wide { grid-column: 1 / -1; }
.punto-admin-fields label small { color: #7f8c84; font-size: 12px; font-weight: 400; }
.punto-admin-fields :is(input, select, textarea) { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #cedbcf; border-radius: 8px; background: #fff; color: #17292b; font: 14px/1.45 Inter, "DM Sans", system-ui, sans-serif; }
.punto-admin-fields textarea { resize: vertical; }
.punto-admin-fields :is(input, select, textarea):focus { outline: 2px solid #c9ff48; border-color: #6f9948; }
.punto-admin-editor-actions { display: flex; justify-content: flex-end; gap: 10px; padding: 18px 26px; border-top: 1px solid #e5ece4; }
@container (max-width: 1250px) { .punto-admin .admin-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container (max-width: 1120px) { .punto-admin .admin-shell { display: block; } .punto-admin .admin-sidebar { padding-left: 18px; } }
@container (max-width: 760px) { .punto-admin .admin-content { padding-bottom: 90px; } .punto-admin-fields { grid-template-columns: 1fr; padding: 18px; } .punto-admin-fields label.is-wide { grid-column: auto; } .punto-admin-editor-actions { padding: 17px 18px; } }
@container (max-width: 640px) { .punto-admin .admin-section-heading { align-items: stretch; flex-direction: column; } .punto-admin .admin-kpi-grid { grid-template-columns: 1fr; } }
