:root{
  --blue:#1b5d8f;--blue2:#2a6ea5;--dark:#18324a;--text:#22384a;--muted:#66798a;
  --line:#d9e3eb;--soft:#eef4f8;--soft2:#f7fafc;--white:#ffffff;
  --ok:#188454;--warn:#cf7d08;--bad:#c63b3b;--shadow:0 14px 34px rgba(18,49,77,.10);
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:linear-gradient(180deg,#f8fbfd 0%,#eef3f7 100%)}
.ac-wrap{max-width:1120px;margin:auto;padding:20px 18px 50px}
.ac-header{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.ac-logo{width:46px;height:46px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--blue2));position:relative;box-shadow:var(--shadow)}
.ac-logo:before,.ac-logo:after{content:"";position:absolute;left:9px;width:28px;height:7px;border-radius:999px;background:rgba(255,255,255,.95);transform:rotate(-35deg)}
.ac-logo:before{top:13px}.ac-logo:after{top:26px}
.ac-header h1{margin:0;font-size:24px;color:var(--dark);line-height:1.1}
.ac-header p{margin:4px 0 0;color:var(--muted);font-size:13px}
.ac-hero{background:linear-gradient(135deg,#17324a 0%,#1b5d8f 100%);color:#fff;border-radius:24px;padding:28px 30px;margin-bottom:22px;box-shadow:var(--shadow)}
.ac-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.ac-kicker{display:inline-block;font-size:12px;font-weight:bold;letter-spacing:.08em;text-transform:uppercase;color:#dcecf8;margin-bottom:10px}
.ac-hero h2{margin:0 0 10px;font-size:clamp(28px,3.8vw,40px);line-height:1.08}
.ac-hero p{margin:0;color:#eaf4fc;line-height:1.65;max-width:760px}
.ac-badge{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);color:#f4fbff;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:bold;white-space:nowrap}
.ac-hero-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
@media (max-width:860px){.ac-hero-strip{grid-template-columns:1fr}}
.ac-hero-item{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px 15px}
.ac-hero-item strong{display:block;margin-bottom:5px;font-size:14px;color:#fff}
.ac-hero-item span{font-size:14px;line-height:1.5;color:#e6f2fb}
.ac-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:900px){.ac-grid{grid-template-columns:1fr}}
.ac-card{background:#fff;padding:22px;border-radius:20px;box-shadow:var(--shadow);border:1px solid var(--line)}
.ac-card h3{margin:0 0 8px;font-size:24px;color:var(--dark)}
.ac-sub{margin:0 0 18px;color:var(--muted);line-height:1.6;font-size:14px}
.ac-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){.ac-form-grid{grid-template-columns:1fr}}
label{display:block;margin-bottom:6px;font-weight:bold;font-size:14px;color:var(--dark)}
input,select,textarea{width:100%;padding:11px 12px;border-radius:12px;border:1px solid #cdd7df;margin-bottom:12px;font-size:15px;color:var(--text);background:#fff}
select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;line-height:1.4;font-weight:600;background-image:linear-gradient(45deg, transparent 50%, var(--blue) 50%),linear-gradient(135deg, var(--blue) 50%, transparent 50%),linear-gradient(to right, #ffffff, #ffffff);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px),100% 0;background-size:6px 6px,6px 6px,2.8em 100%;background-repeat:no-repeat}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(27,93,143,.12)}
.ac-section-title{margin:18px 0 12px;padding-top:16px;border-top:1px solid var(--line);font-size:18px;color:var(--dark)}
.ac-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
button{border:none;border-radius:12px;padding:12px 16px;font-weight:bold;cursor:pointer;transition:transform .16s ease}
button:hover{transform:translateY(-1px)}
.ac-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff}
.ac-secondary{background:var(--soft);color:var(--dark);border:1px solid var(--line)}
.ac-result-box{background:#f5f9fc;border:1px solid #dce7ef;border-radius:14px;padding:16px;margin-top:14px;line-height:1.6}
.ac-summary{margin-bottom:14px;padding:14px 16px;border-radius:12px}
.ac-summary.good{background:#e8f7ef;border-left:6px solid var(--ok);color:var(--ok)}
.ac-summary.mid{background:#fff5e6;border-left:6px solid var(--warn);color:var(--warn)}
.ac-summary.bad{background:#ffecec;border-left:6px solid var(--bad);color:var(--bad)}
.ac-summary h4{margin:0 0 6px;font-size:22px}.ac-summary p{margin:0}
.ac-list{display:flex;flex-direction:column;gap:8px}
.ac-row{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(135px,.9fr) minmax(135px,.9fr) 120px;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;font-size:14px}
.ac-row.ok{background:#e8f7ef;color:var(--ok)} .ac-row.warn{background:#fff5e6;color:var(--warn)} .ac-row.bad{background:#ffecec;color:var(--bad)}
.ac-row .label{font-weight:bold;min-width:0}
.ac-row .value,.ac-row .ref{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.ac-row .badge{width:120px;justify-self:end;text-align:center;background:rgba(255,255,255,.65);padding:4px 10px;border-radius:999px;font-weight:bold;white-space:nowrap}
@media (max-width:760px){.ac-row{grid-template-columns:1fr 1fr;align-items:start}.ac-row .label{grid-column:1 / -1}.ac-row .value,.ac-row .ref{text-align:left}.ac-row .badge{justify-self:start;width:auto}}
.ac-estimate{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--soft2);border:1px solid var(--line)}
.ac-estimate strong{display:block;margin-bottom:4px;color:var(--dark)}
.ac-refinfo,.ac-sources-static{margin-top:14px;padding:12px 14px;border-radius:12px;background:#f7fafc;border:1px solid var(--line);font-size:13px;line-height:1.6;color:var(--muted)}
.ac-refinfo strong,.ac-sources-static strong{color:var(--dark)}
.ac-refinfo a,.ac-sources-static a{color:var(--blue);text-decoration:none}
.ac-refinfo a:hover,.ac-sources-static a:hover{text-decoration:underline}
.ac-status{margin-top:12px;padding:12px 14px;border-radius:12px;display:none;font-size:14px;line-height:1.5}
.ac-status.success{display:block;background:#eef8f2;border:1px solid #c8e6d1;color:#195f3f}
.ac-status.error{display:block;background:#fff3f3;border:1px solid #f0cdcd;color:#9a2d2d}
.ac-notice{margin-top:12px;font-size:12px;color:var(--muted);line-height:1.6}
