.selector-shell { padding-top:20px; }
.selector-header { border-bottom:1px solid #dae2e6; padding:0 0 18px; margin:0 0 22px; background:transparent; box-shadow:none; border-radius:0; --tw-ring-shadow:0 0 transparent; }
.selector-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; }
.selector-input,.selector-results { min-width:0; background:transparent; padding:0; box-shadow:none; border-radius:0; --tw-ring-shadow:0 0 transparent; }
.selector-toolbar { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:4px; }
.selector-input-title { display:flex; align-items:center; min-width:0; font-size:16px; line-height:1.5; }
.selector-input-title svg { flex-shrink:0; }
.selector-actions { display:flex; align-items:center; gap:6px; width:auto; margin:0; flex-shrink:0; }
.selector-actions button,.selector-add-button { display:inline-flex; gap:6px; align-items:center; justify-content:center; min-height:44px; padding:8px 10px; font-size:13px; white-space:nowrap; }
.selector-actions img { width:16px; height:16px; }
.selector-product-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:12px; }
.selector-add-button { flex-shrink:0; }
.product-input-row { background:white; border-radius:6px; }
.product-input-row input[type=number] { font-size:16px; min-height:44px; padding:8px; min-width:0; }
.product-input-row input[type=color] { width:36px; height:36px; }
.product-input-row .remove-product { min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; }
.product-input-row .grid>div { min-width:0; }
.selector-carriers label { min-height:40px; padding:8px 10px; }
.selector-summary { margin-top:16px; border:0; border-top:1px solid #dae2e6; border-radius:0; background:transparent; padding:16px 0 0; }
.selector-results .box-card { position:relative; border-radius:6px; box-shadow:none; }
.recommendation-select { position:absolute; inset:0; z-index:1; width:100%; height:100%; border:0; border-radius:6px; background:transparent; cursor:pointer; }
.recommendation-select:hover { background:#2563eb05; }
.recommendation-select:focus-visible { outline:3px solid #2563eb; outline-offset:3px; }
.recommendation-actions a { position:relative; z-index:2; }
#visualization-section { scroll-margin-top:16px; }
.selector-results .box-card:hover { transform:none; }
.recommendation-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.recommendation-price { font-size:20px; font-weight:700; color:#1d4ed8; white-space:nowrap; }
.recommendation-meta { display:flex; flex-wrap:wrap; gap:6px 16px; padding:10px 0; border-top:1px solid #e5e7eb; border-bottom:1px solid #e5e7eb; font-size:12px; line-height:1.7; }
.recommendation-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; }
.recommendation-actions button,.recommendation-actions a { min-height:44px; display:inline-flex; align-items:center; font-size:13px; color:#1d4ed8; font-weight:600; }
.recommendation-freshness { color:#65717b; font-size:11px; margin-top:8px; line-height:1.6; overflow-wrap:anywhere; }
.selector-notice { font-size:13px; line-height:1.7; padding:12px 0; color:#647078; }
#canvas-container { height:460px!important; background:#f8fafb; }
#controls-info,#controls-info-mobile { display:none!important; }
.selector-help>article { background:transparent; box-shadow:none; border-radius:0; padding:20px 0; border-top:1px solid #dae2e6; --tw-ring-shadow:0 0 transparent; }
@media(min-width:1024px) { .selector-layout { grid-template-columns:minmax(430px, .95fr) minmax(0,1.05fr); gap:32px; } .selector-results { border-left:1px solid #dae2e6; padding-left:28px; } }
@media(max-width:540px) { .selector-header h1 { font-size:19px; line-height:1.5; } .selector-toolbar { flex-wrap:wrap; } .product-input-row .grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .product-input-row>.flex { flex-wrap:wrap; } .product-input-row>.flex>.flex-1 { flex-basis:100%; } .product-input-row>.flex>.flex-col { flex-direction:row; padding-top:0; margin-left:auto; } .product-input-row .grid>div:empty { display:none; } .selector-actions { gap:4px; margin-left:auto; } .selector-actions button { padding:8px; font-size:12px; } .recommendation-price { font-size:18px; } .recommendation-heading { flex-wrap:wrap; } #canvas-container { height:360px!important; } }
