/* Glass Calculator — frontend-tyylit */
.gc-calculator { margin: 16px 0; max-width: 520px; }
.gc-section { margin-bottom: 18px; }
.gc-section-title { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 8px; opacity: .7; }
.gc-shape-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.gc-shape-tab { border: 1px solid #d0d5da; background: #fff; border-radius: 8px; padding: 8px 14px; cursor: pointer; font-size: 14px; }
.gc-shape-tab.active { border-color: #0f6e8c; background: #e3f0f4; color: #0a4d62; font-weight: 600; }
.gc-dims { display: flex; flex-wrap: wrap; gap: 12px; }
.gc-field { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 120px; }
.gc-field span { font-size: 13px; font-weight: 600; }
.gc-field input { padding: 8px 10px; border: 1px solid #d0d5da; border-radius: 6px; font-size: 15px; width: 100%; }
.gc-preview { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; margin-bottom: 18px; padding: 16px; background: #f6f8fa; border-radius: 10px; }
.gc-svg { flex: 1; min-width: 200px; }
.gc-meta { display: flex; flex-direction: column; gap: 10px; }
.gc-meta > div { display: flex; flex-direction: column; }
.gc-k { font-size: 11px; text-transform: uppercase; letter-spacing: .04em; opacity: .6; }
.gc-v { font-size: 17px; font-weight: 600; }
.gc-total { display: flex; justify-content: space-between; align-items: baseline; border-top: 2px solid currentColor; padding-top: 12px; margin-bottom: 16px; }
.gc-price { font-size: 24px; font-weight: 700; }

/* Ominaisuusvalinnat (pala 1) */
.gc-select { width: 100%; padding: 8px 10px; border: 1px solid #d0d5da; border-radius: 6px; font-size: 14px; background: #fff; }
.gc-hole-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.gc-hole-row .gc-select { flex: 1; min-width: 120px; }
.gc-hole-qty { width: 64px; padding: 8px; border: 1px solid #d0d5da; border-radius: 6px; }
.gc-btn-add { padding: 8px 14px; border: 1px solid #0f6e8c; background: #e3f0f4; color: #0a4d62; border-radius: 6px; cursor: pointer; font-size: 13px; }
.gc-hole-list { margin-top: 8px; display: flex; flex-direction: column; gap: 4px; }
.gc-hole-item { display: flex; justify-content: space-between; align-items: center; background: #f0f4f6; border-radius: 6px; padding: 5px 10px; font-size: 13px; }
.gc-btn-rm { border: 0; background: none; color: #b00; cursor: pointer; font-size: 18px; line-height: 1; padding: 0 4px; }
.gc-inline-field { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 5px 0; font-size: 14px; }
.gc-inline-field input { width: 64px; padding: 5px 8px; border: 1px solid #d0d5da; border-radius: 6px; }
.gc-check-field { display: flex; align-items: center; gap: 8px; padding: 5px 0; font-size: 14px; cursor: pointer; }
.gc-check-field input { width: 17px; height: 17px; }
.gc-breakdown { border-top: 1px solid #e0e6ea; margin-top: 12px; padding-top: 10px; }
.gc-bd-line { display: flex; justify-content: space-between; font-size: 13px; color: #5a6b78; padding: 3px 0; }
.gc-maxnote { color: #b00; font-size: 13px; margin-top: 6px; display: none; }
