/* Aixam Calculator — Frontend CSS */
#aixam-calculator-wrap {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #1a1a2e; width: 100%; max-width: 100%;
}
.aixam-section-label {
    font-size: 11px; font-weight: 600; color: #9ca3af;
    text-transform: uppercase; letter-spacing: .06em; margin: 0 0 .75rem;
}
.aixam-loading { color: #9ca3af; font-size: 13px; padding: 8px 0; }
.aixam-model-grid {
    display: grid; grid-template-columns: repeat(6,1fr);
    gap: 8px; margin-bottom: 1.5rem;
}
@media(max-width:900px){ .aixam-model-grid{grid-template-columns:repeat(3,1fr);} }
@media(max-width:480px){ .aixam-model-grid{grid-template-columns:repeat(2,1fr);} }
.aixam-model-btn {
    border: 1px solid #e5e7eb; border-radius: 12px; background: #fff;
    cursor: pointer; text-align: left; padding: 0;
    transition: border-color .15s, background .15s;
    display: flex; flex-direction: column; overflow: hidden;
}
.aixam-model-btn:hover { border-color: #185FA5; background: #f0f7ff; }
.aixam-model-btn.active { border: 2px solid #185FA5; background: #EBF4FF; }
.aixam-model-img {
    width: 100%; aspect-ratio: 16/9;
    object-fit: cover; display: block;
    background: #f0f0f0;
}
.aixam-model-img-placeholder {
    width: 100%; aspect-ratio: 16/9;
    background: #f3f4f6;
    display: flex; align-items: center; justify-content: center;
}
.aixam-model-info { padding: 8px 10px 10px; display: flex; flex-direction: column; gap: 4px; }
.aixam-color-dot-row { display: flex; gap: 5px; }
.aixam-cdot { width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid rgba(0,0,0,.12); display: inline-block; }
.aixam-model-name { font-size: 12px; font-weight: 600; color: #1a1a2e; line-height: 1.3; display: block; }
.aixam-model-btn.active .aixam-model-name { color: #0C447C; }
.aixam-model-cat { font-size: 11px; color: #9ca3af; display: block; }
.aixam-ebadge { display:inline-block; background:#EBF4FF; color:#185FA5; font-size:9px; font-weight:600; padding:1px 5px; border-radius:4px; margin-left:3px; vertical-align:middle; }
.aixam-model-btn.active .aixam-ebadge { background:#185FA5; color:#fff; }
.aixam-opts-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:1.5rem; }
@media(max-width:480px){ .aixam-opts-row{grid-template-columns:1fr;} }
.aixam-opt-block label { font-size:12px; font-weight:600; color:#6b7280; display:block; margin-bottom:6px; }
.aixam-opt-block select {
    width:100%; padding:9px 32px 9px 12px; border:1px solid #e5e7eb; border-radius:8px;
    font-size:14px; color:#1a1a2e; background:#fff; cursor:pointer; appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7280' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 12px center;
}
.aixam-opt-block select:focus { outline:none; border-color:#185FA5; box-shadow:0 0 0 3px rgba(24,95,165,.1); }
.aixam-extras-list { display:flex; flex-direction:column; gap:8px; margin-bottom:1.5rem; }
.aixam-extra-item {
    display:flex; align-items:center; justify-content:space-between;
    padding:11px 14px; border:1px solid #e5e7eb; border-radius:10px;
    background:#fff; cursor:pointer; transition:border-color .15s,background .15s; user-select:none;
}
.aixam-extra-item:hover { border-color:#185FA5; background:#f0f7ff; }
.aixam-extra-item.active { border:2px solid #185FA5; background:#EBF4FF; }
.aixam-extra-left { display:flex; align-items:center; gap:10px; }
.aixam-extra-check {
    width:18px; height:18px; border:1.5px solid #d1d5db; border-radius:4px;
    background:#fff; display:flex; align-items:center; justify-content:center;
    flex-shrink:0; transition:background .15s,border-color .15s;
}
.aixam-extra-item.active .aixam-extra-check { background:#185FA5; border-color:#185FA5; }
.aixam-extra-check svg { display:none; }
.aixam-extra-item.active .aixam-extra-check svg { display:block; }
.aixam-extra-name { font-size:13px; font-weight:500; color:#1a1a2e; }
.aixam-extra-desc { font-size:11px; color:#9ca3af; }
.aixam-extra-price { font-size:13px; font-weight:600; color:#185FA5; white-space:nowrap; }
.aixam-result-card {
    border-radius:14px; padding:1.25rem 1.5rem;
    background:linear-gradient(135deg,#185FA5 0%,#0d3d75 100%);
    display:flex; align-items:center; gap:1.25rem; margin-bottom:.75rem;
}
@media(max-width:480px){ .aixam-result-card{flex-direction:column;align-items:flex-start;} }
.aixam-result-left { flex:1; }
.aixam-result-label { font-size:12px; color:rgba(255,255,255,.7); margin-bottom:4px; }
.aixam-result-amount { font-size:46px; font-weight:700; color:#fff; line-height:1; }
.aixam-result-amount.placeholder { font-size:16px; color:rgba(255,255,255,.4); font-style:italic; font-weight:400; }
.aixam-result-sub { font-size:12px; color:rgba(255,255,255,.6); margin-top:6px; line-height:1.5; }
.aixam-offerte-btn {
    display:block; padding:13px 20px; background:#fff; color:#185FA5;
    border:none; border-radius:10px; font-size:13px; font-weight:600;
    cursor:pointer; white-space:nowrap; flex-shrink:0; transition:background .15s;
}
.aixam-offerte-btn:hover { background:#EBF4FF; }
.aixam-offerte-btn:disabled { opacity:.35; cursor:default; }
.aixam-offerte-form {
    background: var(--color-background-secondary, #f9fafb);
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 1.25rem 1.5rem;
    margin-bottom: .75rem;
}
.aixam-offerte-form .aixam-opt-block input[type=text],
.aixam-offerte-form .aixam-opt-block input[type=tel] {
    width: 100%; padding: 9px 12px;
    border: 1px solid #e5e7eb; border-radius: 8px;
    font-size: 14px; color: #1a1a2e; background: #fff;
}
.aixam-offerte-form .aixam-opt-block input:focus {
    outline: none; border-color: #185FA5;
    box-shadow: 0 0 0 3px rgba(24,95,165,.1);
}
.aixam-offerte-btn-send {
    padding: 12px 20px; background: #185FA5; color: #fff;
    border: none; border-radius: 10px; font-size: 13px;
    font-weight: 600; cursor: pointer; transition: background .15s;
}
.aixam-offerte-btn-send:hover { background: #0d3d75; }
.aixam-offerte-btn-cancel {
    padding: 12px 16px; background: #fff; color: #6b7280;
    border: 1px solid #e5e7eb; border-radius: 10px;
    font-size: 13px; font-weight: 500; cursor: pointer;
}
.aixam-offerte-btn-cancel:hover { background: #f9fafb; }
.aixam-disclaimer { font-size:11px; color:#9ca3af; margin-top:.75rem; line-height:1.5; }
