:root{--cec-primary:#244b7a;--cec-primary-dark:#172b4d;--cec-border:#dfe6ef;--cec-head:#eef3f8;--cec-hover:#eaf3ff;--cec-zebra:#f8fafc;--cec-bg:#f4f7fb;--cec-text:#253247}html,body{min-height:100%}body.cec-page{margin:0;background:var(--cec-bg);color:var(--cec-text);font-family:Arial,Helvetica,sans-serif;font-size:12px}.cec-page-header{padding:13px 18px;color:#fff;background:linear-gradient(135deg,var(--cec-primary-dark),var(--cec-primary))}.cec-page-header h1{margin:0;font-size:18px}.cec-page-header small{opacity:.78}.cec-content{width:100%;padding:10px 12px 80px}.cec-card{background:#fff;border:1px solid var(--cec-border);border-radius:11px;box-shadow:0 5px 18px rgba(31,45,61,.06)}.cec-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 12px}.cec-form-toolbar{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#fff;border-top:1px solid var(--cec-border);box-shadow:0 -4px 16px rgba(31,45,61,.08)}.cec-form-toolbar-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.cec-loading{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(255,255,255,.66)}.cec-loading.show{display:flex}.cec-table-wrap{overflow:auto}.cec-table{width:100%;margin:0;border-collapse:separate;border-spacing:0;font-size:10.5px;white-space:nowrap}.cec-table thead th{position:sticky;top:0;z-index:3;padding:7px 6px;border-bottom:1px solid #cfd8e3;background:var(--cec-head);color:#425466;font-size:9.5px;text-transform:uppercase}.cec-table tbody td{padding:5px 6px;border-bottom:1px solid #e8edf3;vertical-align:middle}.cec-table tbody tr:nth-child(even){background:var(--cec-zebra)}.cec-table tbody tr:hover{background:var(--cec-hover)}.cec-empty-state{padding:32px;text-align:center;color:#667085}@media print{.cec-no-print,.cec-page-header,.cec-form-toolbar{display:none!important}body.cec-page{background:#fff}.cec-content{padding:0}.cec-card{border:0;box-shadow:none}}
