.smart-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 18px 0;}
.smart-ticket {display: grid; grid-template-columns: 84px minmax(0,1fr); border: 1px solid var(--r23-line); border-radius: 16px; overflow: hidden; background: var(--r23-paper); color: var(--r23-ink); min-width: 0;}
.smart-stub {background: var(--r23-soft); border-right: 1px dashed var(--r23-line); display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 8px;}
.smart-stub b {white-space: nowrap; font-size: 22px; line-height: 1.2;}
.smart-ticket>div:last-child {padding: 14px; min-width: 0;}
.smart-ticket h3 {font: 600 15px/1.45 var(--ds-font-sans); margin: 10px 0;}
.smart-ticket p {font-size: 12px; line-height: 1.5;}
.smart-ticket small {display: block; font-size: 11px; line-height: 1.5; color: var(--r23-muted);}
.smart-ticket code {display: block; overflow-wrap: anywhere; font-size: 13px; margin: 10px 0;}
.smart-actions {display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0;}
.smart-actions .btn {min-height: 48px !important; padding: 10px 12px; white-space: nowrap !important; font-size: 12px;}
.smart-ticket details {font-size: 12px; overflow-wrap: anywhere;}
.smart-ticket summary {min-height: 48px; display: flex; align-items: center; cursor: pointer;}
.smart-ticket details a {display: block; min-height: 48px;}
.smart-finder {padding: 18px; background: var(--r23-soft); border-radius: 14px; margin: 20px 0;}
.smart-finder h2 {font-size: 22px;}
.smart-finder input,[data-smart-search],[data-smart-sort] {min-height: 48px; width: min(100%,460px); display: block; font: inherit; padding: 10px; border: 1px solid var(--r23-line); border-radius: 8px; background: var(--r23-paper); color: var(--r23-ink);}
[data-smart-estimates] {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px;}
[data-smart-estimates]>p {grid-column: 1/-1;}
.smart-finder [data-smart-estimates] .smart-ticket {grid-template-columns: 65px minmax(0,1fr);}
.smart-finder .smart-stub b {font-size: 18px;}
.r24-stub b,.r23-stub b {white-space: nowrap !important;}
.r24-stub,.r23-stub {min-width: 75px;}
.r23-product .r23-rating {overflow-wrap: anywhere; font-size: 11px; min-height: 34px;}
.r23-product .r23-title-button {font-size: 14px !important;}
[data-smart-vault]>article {border-bottom: 1px solid var(--r23-line); padding: 15px 0;}
.smart-ticket output {display: block; min-height: 20px; font-size: 12px;}
html[data-theme=dark] .smart-finder {color: var(--r23-ink);}
@media (max-width:900px) {.smart-grid,[data-smart-estimates] {grid-template-columns: repeat(2,minmax(0,1fr));}}
@media (max-width:600px) {.smart-grid,[data-smart-estimates] {grid-template-columns: 1fr;}.smart-ticket {grid-template-columns: 80px minmax(0,1fr);}.smart-finder {padding: 12px;}.smart-ticket .smart-actions .btn {font-size: 11px; padding: 8px;}.smart-ticket h3 {font-size: 14px;}}
.r23-product .r23-rating {height: auto !important; max-height: none !important; min-height: 64px !important; line-height: 1.5 !important; display: block !important; overflow: visible !important; white-space: normal !important; -webkit-line-clamp: unset !important;}
.smart-ticket .r23-badge {white-space: normal; line-height: 1.4; max-width: 100%;}
.smart-ticket h3 {overflow-wrap: break-word;}
