/* TitanGK — калькуляторы: оформление */
.tc-wrap {
    margin: 34px 0;
    border: 1px solid #e3e9f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 6px 24px rgba(20, 40, 90, .07);
    overflow: hidden;
    font-family: inherit;
}
.tc-head {
    display: flex; align-items: center; gap: 10px;
    padding: 16px 22px;
    background: linear-gradient(135deg, #1a4fd6 0%, #3b7bf0 100%);
    color: #fff; font-size: 19px; font-weight: 600;
}
.tc-icon { font-size: 22px; line-height: 1; }
.tc-body {
    display: grid; grid-template-columns: 300px 1fr; gap: 26px;
    padding: 22px;
}
.tc-inputs { display: flex; flex-direction: column; gap: 13px; }
.tc-field { display: flex; flex-direction: column; gap: 5px; }
.tc-field label { font-size: 13px; color: #5a6b85; }
.tc-field input {
    padding: 10px 12px; border: 1px solid #d5deeb; border-radius: 9px;
    font-size: 15px; color: #111; background: #fbfcfe; width: 100%; box-sizing: border-box;
}
.tc-field input:focus { outline: none; border-color: #1a4fd6; background: #fff; box-shadow: 0 0 0 3px rgba(26,79,214,.1); }
.tc-go {
    margin-top: 6px; padding: 12px 16px; border: 0; border-radius: 9px; cursor: pointer;
    background: #1a4fd6; color: #fff; font-size: 15px; font-weight: 600;
}
.tc-go:hover { background: #1540ad; }
.tc-buttons { display: flex; gap: 9px; margin-top: 6px; }
.tc-buttons .tc-go { flex: 1 1 auto; margin-top: 0; }
.tc-reset {
    padding: 12px 15px; border: 1px solid #d5deeb; border-radius: 9px; cursor: pointer;
    background: #f7f9fc; color: #45536b; font-size: 15px; font-weight: 600; white-space: nowrap;
}
.tc-reset:hover { background: #eef3fa; border-color: #b9c8dd; color: #1a4fd6; }
.tc-output { min-width: 0; }
.tc-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.tc-card { background: #f5f8fd; border: 1px solid #e6edf8; border-radius: 11px; padding: 13px 15px; }
.tc-card-main { background: linear-gradient(135deg, #eaf1ff 0%, #f5f9ff 100%); border-color: #c9dbff; }
.tc-card-t { font-size: 12px; color: #6b7c96; margin-bottom: 5px; }
.tc-card-v { font-size: 19px; font-weight: 700; color: #11203a; line-height: 1.2; }
.tc-card-main .tc-card-v { font-size: 24px; color: #1a4fd6; }
.tc-chart-box { margin-top: 16px; height: 260px; }
.tc-hint { padding: 0 22px 18px; font-size: 13px; color: #7b8aa3; line-height: 1.5; }

@media (max-width: 900px) {
    .tc-body { grid-template-columns: 1fr; gap: 18px; padding: 18px; }
    .tc-cards { grid-template-columns: 1fr 1fr; }
    .tc-card-v { font-size: 17px; }
    .tc-card-main .tc-card-v { font-size: 21px; }
    .tc-chart-box { height: 220px; }
}
@media (max-width: 520px) {
    .tc-cards { grid-template-columns: 1fr; }
    .tc-head { font-size: 17px; padding: 14px 16px; }
}
