/* EPCIMS shared visual standard. This file changes presentation only. */
:root { --epc-ui-navy:#071b36; --epc-ui-blue:#1769e0; --epc-ui-blue-hover:#0f59c2; --epc-ui-surface:#fff; --epc-ui-border:#d8e3ee; --epc-ui-text:#172b4d; --epc-ui-muted:#5f7088; --epc-ui-success:#18794e; --epc-ui-warning:#9a6700; --epc-ui-danger:#b42318; --epc-ui-focus:rgba(23,105,224,.22); }
html { background:#edf3f9; }
body { min-width:320px; color:var(--epc-ui-text); line-height:1.45; background:linear-gradient(180deg,#eaf2f9 0%,#f8fafc 38%,#edf3f9 100%) !important; }
body::before { display:none !important; }
body,button,input,select,textarea { font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
header { padding:27px max(24px,calc((100vw - 1180px)/2)) 23px !important; border-bottom:3px solid #7ed5ef !important; background:linear-gradient(115deg,var(--epc-ui-navy) 0%,#0a2c55 57%,#07506d 100%) !important; box-shadow:0 5px 18px rgba(6,30,61,.22) !important; }
header h1,header h2 { color:#fff; letter-spacing:-.025em; } header p { color:#d4e6f5 !important; }
header nav a,nav a { min-height:36px !important; border-color:rgba(173,224,244,.58) !important; border-radius:8px !important; background:rgba(255,255,255,.08) !important; box-shadow:none !important; }
header nav a:hover,header nav a:focus-visible,nav a:hover,nav a:focus-visible { color:#fff !important; border-color:#8de0f5 !important; background:rgba(31,151,202,.34) !important; }
.wrap,main.wrap { width:min(1180px,calc(100% - 48px)); } main { padding-top:28px; padding-bottom:52px; }
.card,.metric,.asset,.notice,.question,.box,.details > div { border-color:var(--epc-ui-border) !important; box-shadow:0 9px 25px rgba(24,51,84,.075); }
.card { border-radius:15px !important; background:var(--epc-ui-surface) !important; } .card h1,.card h2,.card h3 { color:#102b4e; }
.muted,.help,.note,.hint { color:var(--epc-ui-muted) !important; line-height:1.5; }
input,select,textarea,.phrase { border-color:#bdcddd !important; color:#142b47; background:#fff; } input:hover,select:hover,textarea:hover { border-color:#8daac3 !important; }
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible { outline:0; border-color:var(--epc-ui-blue) !important; box-shadow:0 0 0 3px var(--epc-ui-focus) !important; }
button,.button,.actions a,a.back { min-height:40px; border:1px solid #b7c7d8 !important; border-radius:8px !important; background:#fff !important; color:#263e59 !important; font-weight:750 !important; box-shadow:0 1px 2px rgba(17,43,73,.05) !important; }
button:hover,.button:hover,.actions a:hover,a.back:hover { color:#173c62 !important; border-color:#7e9fbd !important; background:#f5f9fd !important; }
button.primary,.primary,button[type="submit"] { border-color:var(--epc-ui-blue) !important; background:linear-gradient(180deg,#2479eb,var(--epc-ui-blue)) !important; color:#fff !important; box-shadow:0 4px 10px rgba(23,105,224,.22) !important; }
button.primary:hover,.primary:hover,button[type="submit"]:hover { background:linear-gradient(180deg,#3189f3,var(--epc-ui-blue-hover)) !important; }
button.danger,.danger,.delete,.remove { color:var(--epc-ui-danger) !important; border-color:#e8b4ae !important; background:#fff7f6 !important; } button:disabled,input:disabled,select:disabled,textarea:disabled { cursor:not-allowed; opacity:.58; }
table { background:#fff; } th { color:#52667d !important; background:#f5f8fb !important; font-weight:800 !important; letter-spacing:.04em; text-transform:uppercase; } th,td { border-bottom-color:#e7edf3 !important; } tbody tr:hover { background:#f7fbff; } .scroll,.table-wrap { border-radius:10px; }
.success,.ok { color:var(--epc-ui-success) !important; font-weight:700; } .warning,.warn { color:var(--epc-ui-warning) !important; } .error,.danger-text { color:var(--epc-ui-danger) !important; font-weight:700; } .status { border-radius:999px; font-weight:700; } .message,.msg { min-height:21px; }
@media (max-width:860px) { .wrap,main.wrap { width:min(100% - 32px,760px); } main { padding-top:22px; } .layout,.grid,.summary { gap:14px; } }
@media (max-width:640px) { header { padding:23px 16px 20px !important; } .wrap,main.wrap { width:calc(100% - 24px); } main { padding-top:18px; padding-bottom:36px; } .card { padding:18px !important; border-radius:12px !important; } .grid,.layout,.details { grid-template-columns:1fr !important; } .actions,.toolbar { flex-direction:column; align-items:stretch; } .actions button,.actions a,.toolbar button { width:100%; text-align:center; } header nav a { width:100%; justify-content:center; } table { min-width:640px; } }
@media print { @page { margin:15mm; } body { background:#fff !important; color:#111827 !important; } body::before,header nav,.actions,.toolbar,button,.button,.controls,.no-print { display:none !important; } header { display:block !important; padding:0 0 10px !important; border:0 !important; background:#fff !important; box-shadow:none !important; color:#111827 !important; } header h1,header h2,header p { color:#111827 !important; } .card,.box { box-shadow:none !important; break-inside:avoid; } a { color:inherit !important; text-decoration:none !important; } }
