/* Wirtheim PVC Curtain Quote — RTL form + live preview + sway animation */

.wpcq-form-wrap { font-family: inherit; max-width: 1100px; margin: 0 auto; color:#222; }
.wpcq-form-wrap h3 { margin-top: 24px; color:#143865; }
.wpcq-form-wrap h4 { margin:0 0 8px; color:#143865; font-size:14px; }

.wpcq-notice {
    padding: 12px 14px; border-radius: 6px; margin: 12px 0; font-size: 14px; line-height: 1.5;
}
.wpcq-notice-info    { background:#eaf3fb; border:1px solid #b6d4ed; color:#143865; }
.wpcq-notice-warning { background:#fff4e1; border:1px solid #f1c266; color:#62420c; }

.wpcq-shared-unit-toggle {
    display:flex; align-items:center; gap:12px; padding:10px 12px;
    background:#f8fafc; border:1px solid #e2e8f0; border-radius:6px; margin:12px 0;
    font-size:14px;
}
.wpcq-shared-unit-toggle label { cursor:pointer; }
.wpcq-shared-unit-toggle input { margin-left:4px; }

/* ----- Opening card ----- */
.wpcq-openings { display:flex; flex-direction:column; gap:14px; }
.wpcq-opening-card {
    border:2px solid #d0d6dc; border-radius:8px; background:#fbfbfd;
}
.wpcq-card-header {
    display:flex; align-items:center; justify-content:space-between;
    padding: 10px 14px; background:#143865; color:#fff; border-radius:6px 6px 0 0;
}
.wpcq-card-title { font-weight:bold; font-size:15px; }
.wpcq-remove-opening {
    background:transparent; border:1px solid #fff; color:#fff; padding:4px 10px;
    border-radius:4px; cursor:pointer; font-size:13px;
}
.wpcq-remove-opening:hover { background:rgba(255,255,255,0.15); }
.wpcq-card-body { padding: 14px; }

.wpcq-main-grid {
    display:grid; grid-template-columns: 1.2fr 1fr; gap:24px; align-items:start;
}
@media (max-width: 720px) { .wpcq-main-grid { grid-template-columns:1fr; } }

/* ----- Preview ----- */
.wpcq-preview-panel { background:#fff; border:1px solid #e2e8f0; border-radius:6px; padding:12px; }
.wpcq-preview {
    min-height:220px; display:flex; align-items:center; justify-content:center;
    background:linear-gradient(180deg,#f3f6fa 0%, #e6ebf1 100%);
    border:1px dashed #cbd5e1; border-radius:6px; overflow:hidden; position:relative;
}
.wpcq-preview svg { max-width:100%; height:auto; }
.wpcq-preview-empty { color:#888; font-size:13px; text-align:center; padding:20px; }
.wpcq-strip-summary { margin-top:8px; font-size:13px; color:#444; min-height:18px; }

/* The strips (rendered inside an SVG by JS) — wiggle gently */
@keyframes wpcq-sway {
    0%   { transform: rotate(-1.4deg); }
    50%  { transform: rotate(1.4deg);  }
    100% { transform: rotate(-1.4deg); }
}
.wpcq-strip {
    transform-origin: center top;
    animation: wpcq-sway 3.2s ease-in-out infinite alternate;
    /* per-strip delay set inline via style="--phase: Nms" */
    animation-delay: var(--phase, 0ms);
}

/* ----- Dim panel ----- */
.wpcq-dims-panel { background:#fff; border:1px solid #e2e8f0; border-radius:6px; padding:12px; }
.wpcq-dims-table { width:100%; border-collapse:collapse; }
.wpcq-dims-table th {
    text-align:right; font-weight:normal; color:#444; font-size:14px;
    padding:6px 0; width:130px; vertical-align:middle;
}
.wpcq-dims-table td { padding:6px 0; vertical-align:middle; }
.wpcq-dims-table input[type=number],
.wpcq-dims-table input[type=text],
.wpcq-fields-grid input[type=text],
.wpcq-fields-grid input[type=email],
.wpcq-fields-grid input[type=tel],
.wpcq-field input[type=text] {
    width: 150px; padding:6px 8px; font-size:15px;
    border:1px solid #c0c8d0; border-radius:4px;
    text-align:left; direction:ltr;
}
.wpcq-field input[type=text],
.wpcq-fields-grid input { width:100%; }
.wpcq-unit-tag { margin-right:6px; color:#666; font-size:13px; }
.wpcq-hint-inline { margin-right:8px; color:#888; font-size:12px; }
.wpcq-optional { color:#888; font-weight:normal; font-size:12px; }

.wpcq-radio-inline, .wpcq-checkbox-inline { display:inline-flex; align-items:center; gap:4px; margin-left:14px; cursor:pointer; }
.wpcq-radio-inline input, .wpcq-checkbox-inline input { margin-left:4px; }

.wpcq-row-error { color:#c62828; font-size:13px; min-height:18px; margin-top:4px; }

/* ----- Add opening row ----- */
.wpcq-add-opening-row { margin: 14px 0; text-align:center; }
.wpcq-add-opening {
    background:#143865; color:#fff; border:none; padding:10px 22px;
    border-radius:4px; cursor:pointer; font-size:14px;
}
.wpcq-add-opening:hover { background:#1d4f87; }

/* ----- Totals panel ----- */
.wpcq-totals-panel {
    background:#f8fafc; border:1px solid #e2e8f0; border-radius:6px;
    padding:14px; margin: 18px 0;
}
.wpcq-totals { margin-bottom:10px; }
.wpcq-totals-empty { color:#888; font-size:13px; text-align:center; padding:20px; }
.wpcq-totals-table { width:100%; border-collapse:collapse; font-size:14px; }
.wpcq-totals-table th, .wpcq-totals-table td { border:1px solid #d0d6dc; padding:6px 10px; text-align:right; }
.wpcq-totals-table th { background:#143865; color:#fff; }
.wpcq-safety-toggle { display:flex; align-items:center; gap:6px; font-size:14px; }

/* ----- Customer fields grid ----- */
.wpcq-fields-grid {
    display:grid; grid-template-columns: 1fr 1fr; gap:14px;
    margin: 8px 0 14px;
}
@media (max-width: 600px) { .wpcq-fields-grid { grid-template-columns:1fr; } }
.wpcq-field label { display:block; font-size:13px; color:#444; margin-bottom:4px; }

.wpcq-checkbox-row { margin: 8px 0; font-size:14px; }
.wpcq-checkbox-row input { margin-left:6px; }

.wpcq-submit-row { margin: 18px 0; text-align:center; }
.wpcq-submit-btn {
    background:#143865; color:#fff; border:none; padding:12px 36px;
    border-radius:4px; cursor:pointer; font-size:16px; font-weight:bold;
}
.wpcq-submit-btn:hover { background:#1d4f87; }
.wpcq-submit-btn:disabled { background:#999; cursor:not-allowed; }

.wpcq-status {
    margin-top: 10px; min-height: 24px; text-align:center; font-size:14px;
}
.wpcq-status.wpcq-status-error   { color:#c62828; }
.wpcq-status.wpcq-status-success { color:#2e7d32; font-weight:bold; }
