 .jsta {
    box-sizing:border-box;
    max-width:1100px;
    margin:30px auto;
    font-family:inherit;
    color:#17202a;
}
.jsta *, .jsta *::before, .jsta *::after { box-sizing:border-box; }
.jsta-header { margin-bottom:22px; }
.jsta-header h2 { margin:0 0 8px; font-size:30px; line-height:1.2; }
.jsta-header p { margin:0; color:#66717d; }
.jsta-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.jsta-card {
    background:#fff;
    border:1px solid #dfe3e7;
    border-radius:16px;
    padding:24px;
    box-shadow:0 5px 18px rgba(0,0,0,.06);
}
.jsta-card h3 { margin:0 0 18px; font-size:21px; }
.jsta label {
    display:block;
    margin:0 0 13px;
    font-size:14px;
    font-weight:700;
}
.jsta input, .jsta select {
    width:100%;
    margin-top:7px;
    min-height:46px;
    padding:10px 12px;
    border:1px solid #cfd5da;
    border-radius:9px;
    background:#fff;
    color:#17202a;
    font-size:15px;
}
.jsta input:focus, .jsta select:focus { outline:2px solid #17202a; outline-offset:1px; }
.jsta-two { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.jsta-primary,.jsta-secondary {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
    width:auto !important;
    min-height:48px !important;
    padding:12px 20px !important;
    border-radius:10px !important;
    font-size:15px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
    cursor:pointer !important;
}
.jsta-primary {
    margin:16px 8px 0 0 !important;
    border:2px solid #000 !important;
    background:#000 !important;
    color:#fff !important;
}
.jsta-secondary {
    margin:16px 0 0 !important;
    border:2px solid #000 !important;
    background:#000 !important;
    color:#fff !important;
}
.jsta-primary:hover,.jsta-secondary:hover { background:#222 !important; color:#fff !important; }
.jsta-empty { color:#6b7580; line-height:1.6; }
.jsta-main-result {
    padding:20px;
    border-radius:12px;
    background:#f3f4f5;
    margin-bottom:14px;
}
.jsta-main-result span { display:block; color:#66717d; margin-bottom:7px; }
.jsta-main-result strong { display:block; font-size:26px; line-height:1.2; }
.jsta-target {
    padding:18px;
    border:1px solid #dfe3e7;
    border-radius:12px;
    margin-bottom:16px;
}
.jsta-target span,.jsta-target small { display:block; color:#66717d; }
.jsta-target strong { display:block; font-size:23px; margin:5px 0; }
.jsta-breakdown > div {
    display:flex;
    justify-content:space-between;
    gap:15px;
    padding:10px 0;
    border-bottom:1px solid #eceff1;
}
.jsta-breakdown span { color:#66717d; }
.jsta-advice { margin-top:18px; padding:16px; border-radius:10px; background:#f3f4f5; }
.jsta-advice p { margin:7px 0 0; line-height:1.55; }
.jsta-jobs {
    display:block;
    margin-top:18px;
    padding:13px 16px;
    border-radius:10px;
    background:#17202a;
    color:#fff !important;
    text-align:center;
    font-weight:700;
    text-decoration:none !important;
}
.jsta-jobs:hover { background:#000; color:#fff !important; }
.jsta-note { margin:14px 0 0; font-size:12px; color:#7a838c; line-height:1.5; }

@media (max-width:760px) {
    .jsta-grid { grid-template-columns:1fr; }
    .jsta-card { padding:18px; }
    .jsta-header h2 { font-size:25px; }
    .jsta-primary,.jsta-secondary { display:flex !important; width:100% !important; margin:10px 0 0 !important; }
    .jsta-main-result strong { font-size:22px; }
}
