:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--text-primary: #1e293b;--text-secondary: #64748b;--border-color: #e2e8f0;--background-light: #f8fafc;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-normal: .25s ease}.specs-wrapper{background:#fff;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;border:1px solid var(--border-color);position:relative}.specs-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--primary-hover));opacity:.8}.specs-table{display:flex;flex-direction:column}.specs-group{border-bottom:1px solid var(--border-color);transition:var(--transition-normal)}.specs-group:last-child{border-bottom:none}.specs-category-header{padding:var(--spacing-lg) var(--spacing-xl);background:var(--background-light);border-left:4px solid var(--primary-color);margin:0;position:relative;overflow:hidden}.specs-category-header:after{content:"";position:absolute;top:0;right:0;width:30px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0));pointer-events:none}.category-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--primary-color);display:flex;align-items:center;letter-spacing:-.025em}.category-title:before{content:"";display:inline-block;width:10px;height:10px;background:var(--primary-color);border-radius:50%;margin-right:var(--spacing-md);box-shadow:0 0 0 3px #2563eb33}.specs-items{display:flex;flex-direction:column;padding:0 var(--spacing-xl)}.spec-row{display:grid;grid-template-columns:140px 1fr;gap:var(--spacing-lg);padding:var(--spacing-lg) 0;align-items:center;position:relative;transition:var(--transition-normal)}.spec-row:not(:last-child){border-bottom:1px solid var(--border-color)}.spec-row:hover{background:transparent}.spec-row:hover:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(37,99,235,.03) 0%,rgba(37,99,235,.01) 50%,transparent 100%);pointer-events:none;border-radius:0;z-index:0}.spec-name{font-weight:500;color:var(--text-secondary);font-size:.875rem;position:relative;padding-right:var(--spacing-md);text-transform:uppercase;letter-spacing:.05em;opacity:.8}.spec-name:after{content:":";position:absolute;right:0;color:var(--text-secondary);opacity:.5}.spec-value{color:var(--text-primary);font-size:.95rem;font-weight:400;line-height:1.6;padding-left:var(--spacing-xs);position:relative;z-index:1}.spec-row:hover .spec-name{color:var(--primary-color);opacity:1}.spec-row:hover .spec-value{color:var(--text-primary);font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--text-secondary)}.empty-state-icon{width:80px;height:80px;margin-bottom:var(--spacing-lg);color:#cbd5e1;opacity:.7}.empty-state-title{margin:0 0 var(--spacing-sm) 0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.empty-state-description{margin:0;font-size:.95rem;max-width:400px;line-height:1.6;opacity:.8}@media(max-width:768px){.specs-wrapper{border-radius:var(--radius-md)}.specs-category-header{padding:var(--spacing-md) var(--spacing-lg)}.specs-items{padding:0 var(--spacing-lg)}.spec-row{grid-template-columns:120px 1fr;gap:var(--spacing-md);padding:var(--spacing-md) 0}.spec-name{font-size:.8rem;padding-right:var(--spacing-sm)}.spec-value{font-size:.875rem}.empty-state{padding:var(--spacing-lg) var(--spacing-md)}.empty-state-icon{width:64px;height:64px}}@media(max-width:480px){.spec-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.spec-name{padding-right:0;margin-bottom:var(--spacing-xs)}.spec-name:after{display:none}.spec-value{padding-left:0}.empty-state-title{font-size:1.1rem}.empty-state-description{font-size:.9rem}}.spec-row:focus{outline:2px solid var(--primary-color);outline-offset:-2px;background:#2563eb08}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.spec-row.loading{position:relative;overflow:hidden}.spec-row.loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);background-size:200% 100%;animation:shimmer 1.5s infinite}
