:root{font:16px/1.55 system-ui,sans-serif;color:#17243b;background:#f4f6fa}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
main{max-width:1000px;margin:auto;padding:24px 16px 36px}
header,.row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
h1,h2,h3{margin:0}
h1{font-size:1.65rem}
h2{font-size:1.2rem}
section{padding:20px;margin:16px 0;background:#fff;border:1px solid #dce3ee;border-radius:12px}
#login{max-width:440px;margin:22px auto}
label{display:grid;gap:5px;margin:12px 0}
input,textarea,select,button{font:inherit;border:1px solid #b8c7db;border-radius:6px;padding:8px 11px;color:inherit;background:white}
input,textarea,select{width:100%}
button{cursor:pointer}
button:disabled{opacity:.55;cursor:default}
.primary{color:white;background:#1c53a5;border-color:#1c53a5}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:0 14px}
#confirmation,#downloads{margin:16px 0 0;background:#f0f5fd;padding:12px;border-radius:8px}
#downloads button,.customer button{margin:4px 7px 4px 0}
.check{display:flex;align-items:center}
.check input{width:auto}
dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px 14px}
dd{margin:0;overflow-wrap:anywhere}
.customer{padding:12px 0;border-top:1px solid #dce3ee;overflow-wrap:anywhere}
.customer p{margin:4px 0}
#status{position:sticky;bottom:0;background:#edf4ff;border:1px solid #cadcf7;padding:8px 14px;border-radius:8px;min-height:40px}
#status.error{color:#8a2424;background:#fff0ef;border-color:#f0c1bb}
