*{box-sizing:border-box}body{margin:0;background:#f1f1f1;color:#202124;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}header{height:78px;background:#fff;border-bottom:1px solid #ccd0d4;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.brand{display:flex;gap:14px;align-items:baseline}.brand strong{font-size:30px}.brand span{font-size:21px;color:#666}.header-actions{display:flex;gap:10px;align-items:center}.wrap{padding:24px 36px}.wrap>h1{font-size:25px;margin:0 0 8px}.description{color:#646970;font-size:17px}.stats{display:flex;gap:16px;margin:24px 0 34px}.stat{background:white;border:1px solid #dcdcde;border-radius:8px;min-width:190px;padding:18px;text-align:center;box-shadow:0 1px 1px #0001}.stat b{display:block;font-size:31px;color:#17507e}.stat span{text-transform:uppercase;color:#5e6674;font-size:14px}nav{display:flex;border-bottom:1px solid #a7aaad;margin-bottom:34px}nav button{background:#dcdcde;color:#50575e;border:1px solid #a7aaad;border-bottom:0;border-radius:0;padding:14px 18px;font-weight:700;margin-right:8px}nav button.active{background:#fff;color:#111;position:relative;top:1px}section h2{font-size:24px}.card{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:28px;margin:20px 0;box-shadow:0 1px 2px #0001}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}.card label{display:block;font-weight:700;margin:0 0 8px}.wide{width:100%;max-width:none}input,select,textarea{border:1px solid #8c8f94;border-radius:4px;padding:10px 12px;background:#fff}textarea{width:100%;font-family:monospace}.actions,.inline,.sectionhead{display:flex;gap:10px;align-items:center}.sectionhead{justify-content:space-between}.button,button{border:1px solid #315bef;background:#315bef;color:#fff;border-radius:3px;padding:10px 15px;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.45}.secondary{background:#fff;color:#315bef}.danger{background:#fff;color:#b32d2e;border-color:#b32d2e}.ok{background:#e7f6ec;color:#18794e;padding:8px 10px;border-radius:6px;font-weight:700}.notice{background:#e8efff;border-left:4px solid #315bef;padding:13px 16px;margin:16px 0}.formgrid{display:grid;grid-template-columns:310px 490px;grid-gap:28px 22px;gap:28px 22px;align-items:center}.reportgrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.reportgrid div{border:1px solid #dcdcde;padding:16px;text-align:center}.reportgrid b{display:block;font-size:27px;color:#17507e}.reportgrid span{font-size:13px;color:#646970}.preview{border:1px solid #ddd;padding:24px;min-height:420px;background:#fafafa}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}td,th{padding:12px 10px;border-bottom:1px solid #dcdcde;text-align:left;vertical-align:middle}th{font-weight:700;background:#fff}tbody tr:nth-child(odd){background:#f6f7f7}td small{display:block;color:#646970;margin-top:5px}.registry{min-width:1500px}.registry input,.registry select{max-width:190px}.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filters input:first-child{min-width:300px}.typeHeader,.typeRow{display:grid;grid-template-columns:1fr 1.5fr 190px auto;grid-gap:10px;gap:10px;margin-bottom:10px;align-items:center}.typeHeader{padding:0 2px;color:#50575e}.typeRow select{width:100%}.center,.login{min-height:100vh;display:grid;place-items:center}.login form{width:min(430px,92vw);background:#fff;padding:40px;border:1px solid #ddd;border-radius:10px}.login button,.login input{width:100%;margin-top:12px}.login h1 span{font-weight:400;color:#666}@media(max-width:900px){.wrap{padding:18px}.stats{overflow:auto}.formgrid,.grid2{grid-template-columns:1fr}.reportgrid{grid-template-columns:1fr 1fr}nav{overflow:auto}header{padding:0 15px}.header-actions .ok{display:none}}.warn{display:inline-block;margin-left:7px;padding:3px 7px;border-radius:10px;background:#fff3cd;color:#7a5200;font-size:11px;font-weight:700;vertical-align:middle}.searchForm{display:grid;grid-template-columns:220px minmax(280px,1fr);grid-gap:18px 22px;gap:18px 22px;align-items:center}.progressPanel{position:relative;background:#fff;border:1px solid #b7c7dd;border-radius:10px;padding:20px;margin:18px 0;box-shadow:0 4px 18px #1232}.progressTop{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.progressTop strong{display:block;font-size:18px}.progressTop span{display:block;color:#646970;margin-top:4px}.progressTop>b{font-size:28px;color:#17507e}.budgetTrack,.progressTrack{height:14px;background:#e4e8ed;border-radius:999px;overflow:hidden;margin:14px 0}.budgetTrack>div,.progressTrack>div{height:100%;background:linear-gradient(90deg,#315bef,#17507e);transition:width .35s ease}.progressMeta{display:flex;flex-wrap:wrap;gap:8px 18px;color:#4d5965;font-size:13px}.progressMeta span{background:#f5f7fa;border-radius:6px;padding:6px 8px}.stopButton{margin-top:14px}.costSummary{background:#fff8e8;border-left:5px solid #e9a62b;padding:15px 18px;border-radius:7px;margin:14px 0}.costCards{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin:20px 0}.costCard{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:18px}.costCard span{display:block;color:#646970;font-size:13px}.costCard b{display:block;font-size:27px;color:#17507e;margin-top:8px}.budget{background:#fff;border:1px solid #dcdcde;border-radius:8px;padding:20px;margin:18px 0}.budgetHead{display:flex;justify-content:space-between}.budget small{color:#646970}.card>label:not(:first-child){margin-top:16px}.card>input[type=number]{width:100%;margin-bottom:4px}@media(max-width:900px){.searchForm{grid-template-columns:1fr}.costCards,.progressMeta{grid-template-columns:1fr 1fr}.progressMeta{display:grid}}@media(max-width:560px){.costCards{grid-template-columns:1fr}.progressTop{align-items:center}.progressTop>b{font-size:22px}}@media(max-width:900px){.typeHeader,.typeRow{grid-template-columns:1fr}.typeHeader{display:none}.typeRow button{justify-self:start}}.sendErrorRow{background:#fff0f0!important}.sendProblem{min-width:260px;border-left:4px solid #b32d2e;background:#fff1f1;padding:9px 11px;border-radius:5px;color:#7a1f20}.sendProblem.temporary{border-left-color:#dba617;background:#fff8df;color:#6b5200}.sendProblem b,.sendProblem small,.sendProblem span{display:block}.sendProblem span{margin-top:4px;font-size:13px}.sendProblem small{margin-top:5px;color:inherit;opacity:.8}.stat:last-child b{color:#b32d2e}.sentSuccessRow{background:#eaf7ee!important}.replyReceivedRow{background:#fff1df!important;border-left:5px solid #e59a32}.replyReceivedRow td{border-bottom-color:#f0cfaa}.sentSuccessRow td{border-bottom-color:#cfe6d5}