.kk-page{
    --kk-blue:#005691;
    --kk-blue-dark:#003f6b;
    --kk-red:#dc3545;
    --kk-text:#1a2530;
    --kk-muted:#526170;
    --kk-border:#dfe7ef;
    --kk-soft:#f5f8fb;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:34px 20px 72px;
    box-sizing:border-box;
    color:var(--kk-text);
}
.kk-breadcrumb{
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 0 34px;
    color:var(--kk-muted);
    font-size:.92rem;
}
.kk-breadcrumb a{color:var(--kk-blue);font-weight:800;text-decoration:none}
.kk-breadcrumb a:hover{text-decoration:underline}
.kk-intro{max-width:820px;margin:0 auto 42px;text-align:center}
.kk-kicker,.kk-results-kicker,.kk-control-label{
    display:block;
    color:var(--kk-red);
    font-family:var(--font-display,'Oswald',Arial,sans-serif);
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.11em;
    font-size:.86rem;
}
.kk-intro h1{
    margin:8px 0 14px;
    color:var(--kk-blue);
    font-family:var(--font-display,'Oswald',Arial,sans-serif);
    font-size:clamp(2.35rem,5vw,4.25rem);
    line-height:1.04;
    text-transform:uppercase;
    letter-spacing:.02em;
}
.kk-divider{width:78px;height:5px;margin:0 auto 18px;border-radius:999px;background:var(--kk-red)}
.kk-intro p{max-width:720px;margin:0 auto;color:var(--kk-muted);font-size:1.04rem;line-height:1.7}
.kk-control-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:end;
    margin-bottom:32px;
    padding:26px;
    border:1px solid var(--kk-border);
    border-radius:16px;
    background:linear-gradient(135deg,#fff 0%,var(--kk-soft) 100%);
}
.kk-control-copy h2,.kk-results-header h2{
    margin:5px 0 8px;
    color:var(--kk-blue);
    font-family:var(--font-display,'Oswald',Arial,sans-serif);
    text-transform:uppercase;
    letter-spacing:.03em;
}
.kk-control-copy h2{font-size:clamp(1.7rem,3vw,2.35rem)}
.kk-control-copy p{max-width:650px;margin:0;color:var(--kk-muted);line-height:1.6}
.kk-actions{display:flex;align-items:end;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.kk-form label{display:block;margin-bottom:7px;color:var(--kk-blue-dark);font-weight:850}
.kk-form-row{display:flex;gap:9px;align-items:center}
.kk-form select{
    min-width:170px;
    min-height:48px;
    padding:10px 40px 10px 13px;
    border:2px solid #cbd5e1;
    border-radius:9px;
    background:#fff;
    color:var(--kk-text);
    font:inherit;
}
.kk-submit,.kk-download,.kk-back a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    box-sizing:border-box;
    padding:11px 18px;
    border-radius:9px;
    font:inherit;
    font-weight:900;
    text-decoration:none;
    cursor:pointer;
}
.kk-submit{border:1px solid var(--kk-blue);background:#fff;color:var(--kk-blue)}
.kk-download{border:1px solid var(--kk-red);background:var(--kk-red);color:#fff!important}
.kk-submit:hover{background:#edf6fb}
.kk-download:hover{background:#b92b38;border-color:#b92b38;text-decoration:none}
.kk-results{margin-top:8px}
.kk-results-header{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:20px;
    margin:0 0 14px;
}
.kk-results-header h2{font-size:clamp(1.65rem,3vw,2.2rem)}
.kk-results-header p{margin:0;color:var(--kk-muted);font-weight:800}
.kk-table-wrap{
    overflow:hidden;
    border:1px solid var(--kk-border);
    border-radius:15px;
    background:#fff;
    box-shadow:0 8px 24px rgba(15,23,42,.055);
}
.kk-table{width:100%;border-collapse:collapse}
.kk-table thead th{
    padding:14px 16px;
    background:var(--kk-blue);
    color:#fff;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.045em;
    font-size:.79rem;
}
.kk-table tbody th,.kk-table td{
    padding:15px 16px;
    border-bottom:1px solid #e7edf3;
    text-align:left;
}
.kk-table tbody th{color:var(--kk-blue-dark);font-weight:900}
.kk-table tbody tr:nth-child(even){background:#f8fafc}
.kk-table tbody tr:last-child th,.kk-table tbody tr:last-child td{border-bottom:0}
.kk-message{
    padding:28px;
    border:1px solid var(--kk-border);
    border-radius:14px;
    background:#fff;
    text-align:center;
}
.kk-message-error{border-color:#edbcc1;background:#fff7f8;color:#8d1722}
.kk-back{margin-top:28px}
.kk-back a{min-height:44px;padding:9px 15px;border:1px solid var(--kk-border);color:var(--kk-blue);background:#fff}
.kk-back a::before{content:'←';margin-right:8px}
.kk-back a:hover{border-color:var(--kk-blue);background:var(--kk-soft);text-decoration:none}
.kk-submit:focus-visible,.kk-download:focus-visible,.kk-back a:focus-visible,.kk-form select:focus-visible,.kk-table-wrap:focus-visible,.kk-breadcrumb a:focus-visible{
    outline:3px solid rgba(220,53,69,.28);
    outline-offset:3px;
}
.visually-hidden{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
@media(max-width:860px){
    .kk-control-card{grid-template-columns:1fr;align-items:stretch}
    .kk-actions{justify-content:flex-start}
}
@media(max-width:640px){
    .kk-page{padding:24px 12px 54px}
    .kk-breadcrumb{margin-bottom:28px}
    .kk-intro{margin-bottom:32px;text-align:left}
    .kk-divider{margin-left:0}
    .kk-intro p{margin-left:0}
    .kk-control-card{padding:20px 16px;border-radius:13px}
    .kk-actions,.kk-form,.kk-form-row{width:100%}
    .kk-form-row{display:grid;grid-template-columns:1fr}
    .kk-form select,.kk-submit,.kk-download{width:100%}
    .kk-results-header{align-items:flex-start;flex-direction:column;gap:4px}
    .kk-table-wrap{overflow:visible;border:0;background:transparent;box-shadow:none}
    .kk-table,.kk-table tbody,.kk-table tr,.kk-table th,.kk-table td{display:block;width:100%;box-sizing:border-box}
    .kk-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
    .kk-table tbody{display:grid;gap:12px}
    .kk-table tbody tr{padding:15px;border:1px solid var(--kk-border);border-radius:13px;background:#fff!important;box-shadow:0 5px 16px rgba(15,23,42,.045)}
    .kk-table tbody th,.kk-table td{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1fr);gap:12px;padding:8px 0;border:0}
    .kk-table tbody th{padding-top:0;margin-bottom:3px;border-bottom:1px solid var(--kk-border);font-size:1.05rem}
    .kk-table tbody th::before,.kk-table td::before{content:attr(data-label);color:var(--kk-muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
    .kk-back a{width:100%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(forced-colors:active){.kk-submit,.kk-download,.kk-back a,.kk-control-card,.kk-table-wrap,.kk-form select{border:2px solid currentColor}}
@media print{
    header,nav,footer,.kk-breadcrumb,.kk-form,.kk-download,.kk-back{display:none!important}
    .kk-page{max-width:none;padding:0}
    .kk-intro{text-align:left;margin-bottom:24px}
    .kk-divider{margin-left:0}
    .kk-control-card{display:block;padding:0;border:0;background:none}
    .kk-control-copy p{display:none}
    .kk-results-header p{display:none}
    .kk-table-wrap{border-radius:0;box-shadow:none}
    .kk-table thead th{background:#fff;color:#000;border:1px solid #000}
    .kk-table tbody th,.kk-table td{border:1px solid #000}
    .kk-table tbody tr:nth-child(even){background:#fff}
}
