:root{--bg-color: #faf9ff;--card-bg: #ffffff;--text-color: #34313f;--text-muted: #646173;--buddy-primary: #7655c7;--buddy-primary-dark: #6041ad;--buddy-border: #e8e4f0;--badge-bg: #f4efff;--hover-bg: #f8f5ff;--font-sans: "Poppins", sans-serif;--font-serif: "Playfair Display", serif}#buddy-content[data-theme=dark],body.buddy-dark .modal,body.buddy-dark .palette-tray,body.buddy-dark .stash-tray,body.buddy-dark .toast{--bg-color: #1c1925;--card-bg: #282431;--text-color: #f8f6fc;--text-muted: #c2bacf;--buddy-primary: #c2a9ff;--buddy-primary-dark: #d2c0ff;--buddy-border: #443c50;--badge-bg: #3a314a;--hover-bg: #352d42}*{box-sizing:border-box;margin:0;padding:0;font-family:var(--font-sans)}body{background-color:var(--bg-color);color:var(--text-color);line-height:1.6;transition:background-color .3s,color .3s}.app-container{max-width:1000px;margin:0 auto;padding:2rem}header{text-align:center;margin-bottom:2rem;position:relative}.lang-switcher{position:absolute;top:0;right:0}.lang-switcher select,.theme-btn{background:var(--card-bg);border:1px solid var(--buddy-border);border-radius:8px;padding:8px 14px;font-size:.85rem;cursor:pointer;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;font-family:var(--font-sans);color:var(--text-color);font-weight:500}.theme-btn{font-size:1.2rem;padding:8px 12px;background:var(--card-bg);border:1px solid var(--buddy-border);border-radius:5px;cursor:pointer;color:var(--text-color)}.theme-btn:hover{background:var(--hover-bg);border-color:var(--buddy-primary);color:var(--buddy-primary)}header h1{font-size:2.5rem;color:var(--buddy-primary);margin-bottom:.5rem}.search-section{background:var(--card-bg);padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000000d;margin-bottom:2rem;transition:background .3s}.search-container{position:relative;max-width:600px;margin:0 auto}#searchInput{width:100%;padding:1rem 1.5rem;font-size:1.1rem;border:2px solid var(--buddy-border);border-radius:30px;outline:none;transition:border-color .3s;background:var(--card-bg);color:var(--text-color)}#searchInput:focus{border-color:var(--buddy-primary)}.autocomplete-items{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid var(--buddy-border);border-radius:8px;max-height:300px;overflow-y:auto;z-index:30;box-shadow:0 4px 12px #0000001a;margin-top:5px}.autocomplete-items:empty{display:none}.autocomplete-item{padding:10px 15px;cursor:pointer;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--buddy-border);color:var(--text-color)}.autocomplete-item:hover{background-color:var(--hover-bg)}.swatch-small{width:25px;height:25px;border-radius:50%;border:1px solid rgba(128,128,128,.3);flex-shrink:0}.swatch-large{width:100px;height:100px;border-radius:12px;border:2px solid rgba(128,128,128,.2);margin:0 auto 1rem}.selected-section{text-align:center;margin-bottom:2rem}.selected-card{background:var(--card-bg);display:inline-block;padding:2rem 4rem;border-radius:12px;box-shadow:0 4px 15px #00000014}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.result-card{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f;transition:transform .2s,box-shadow .2s;border:1px solid var(--buddy-border);position:relative}.result-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0000001a}.card-header{background:var(--badge-bg);padding:10px 15px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--buddy-border)}.badge{font-size:.75rem;padding:.2rem .6rem;border-radius:12px;font-weight:700}.badge-perfect{background:#4caf50;color:#fff}.badge-close{background:#8bc34a;color:#fff}.badge-alternative{background:#ffeb3b;color:#333}.badge-rough{background:#ff9800;color:#fff}.badge-stash{background:#00bcd4;color:#fff;position:absolute;top:-10px;right:-10px;padding:5px 10px;border-radius:20px;font-size:.7rem;box-shadow:0 2px 5px #0003;z-index:10}.split-swatch{display:flex;height:80px}.split-swatch div{flex:1}.card-body{padding:1.2rem;text-align:center}.match-code{font-size:1.5rem;font-weight:700;color:var(--buddy-primary)}.match-name{font-size:1.1rem;margin-bottom:.5rem}.match-line{font-size:.9rem;color:var(--text-muted);margin-bottom:.5rem}.de-value{font-size:.8rem;color:var(--text-muted)}.traits-container{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;justify-content:center}.trait-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;font-weight:600}.trait-metallic{background:linear-gradient(135deg,gold,#ffb300);color:#3e2723}.trait-neon{background:#f0f;color:#fff;text-shadow:0 0 5px rgba(255,255,255,.5)}.trait-multi{background:linear-gradient(90deg,red,#ff0,#0f0,#00f);color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.toolbar{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-top:15px}.color-picker-wrapper{display:flex;align-items:center;gap:10px;background:var(--card-bg);padding:5px 15px;border-radius:20px;border:1px solid var(--buddy-border);cursor:pointer;box-shadow:0 2px 5px #0000000d}#colorPicker{border:none;width:30px;height:30px;padding:0;cursor:pointer;background:none}.palette-btn{background:var(--buddy-primary);color:#fff;border:none;padding:8px 20px;border-radius:20px;cursor:pointer;font-weight:700;box-shadow:0 2px 5px #0000001a;transition:transform .2s}.palette-btn:hover{transform:scale(1.05)}.filters-container{margin-top:15px;text-align:center}.filter-toggle-btn{background:none;border:1px solid var(--buddy-border);color:var(--text-color);padding:5px 15px;border-radius:20px;cursor:pointer;font-size:.9rem}.brands-filter{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:10px;background:var(--card-bg);padding:12px 15px;border-radius:8px;border:1px solid var(--buddy-border);box-shadow:0 2px 4px #0000000d}.brands-filter label{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:500;cursor:pointer;background:var(--hover-bg);padding:4px 10px;border-radius:15px;border:1px solid var(--buddy-border);transition:all .2s}.brands-filter label:hover{border-color:var(--buddy-primary);background:var(--card-bg)}#buddy-content .hidden,body>.hidden{display:none!important}.palette-tray,.stash-tray{position:fixed;right:0;top:0;width:380px;height:100vh;background:var(--card-bg);box-shadow:-5px 0 15px #0000004d;z-index:1000;display:flex;flex-direction:column;transform:translate(0);transition:transform .3s ease-in-out}.palette-tray.hidden,.stash-tray.hidden{transform:translate(100%)}.palette-header,.stash-header{padding:20px;background:var(--buddy-primary);color:#fff;display:flex;justify-content:space-between;align-items:center}.close-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.palette-items,.stash-items{flex:1;min-height:0;overflow-y:auto;padding:15px}.palette-item,.stash-item{display:flex;align-items:center;justify-content:space-between;padding:10px;border-bottom:1px solid var(--buddy-border)}.palette-actions,.stash-actions{padding:20px;border-top:1px solid var(--buddy-border);display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between}.palette-actions button,.stash-actions button{flex:1;min-width:45%;padding:10px;border:none;border-radius:8px;cursor:pointer;font-weight:700;font-size:1rem;display:flex;justify-content:center;align-items:center;background:var(--badge-bg);color:var(--text-color);transition:filter .2s,transform .1s}.palette-actions button:hover,.stash-actions button:hover{filter:brightness(.9);transform:translateY(-2px)}#copyPaletteBtn{background:#e3f2fd;color:#000}#downloadPaletteBtn,#exportStashBtn{background:#e8f5e9;color:#000}#pdfPaletteBtn{background:#e1bee7;color:#000}#printPaletteBtn{background:#fff3e0;color:#000}#clearPaletteBtn,#clearStashBtn{background:#ffebee;color:#d32f2f}#importStashBtn{background:#fff3e0;color:#000}.qty-controls{display:inline-flex;align-items:center;gap:8px;margin-top:10px;background:var(--badge-bg);border-radius:20px;padding:2px 8px;border:1px solid var(--buddy-border)}.qty-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-color);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.qty-btn:hover{background:var(--buddy-primary);color:#fff}.qty-val{font-weight:700;font-size:.95rem;min-width:25px;text-align:center}.switch-label{display:inline-flex;transition:all .2s ease;box-shadow:0 1px 3px #0000000d;align-items:center;gap:10px;cursor:pointer;font-weight:500;font-family:var(--font-sans);background:var(--card-bg);padding:5px 15px;border-radius:20px;border:1px solid var(--buddy-border);color:var(--text-color);transition:all .2s}.switch-label:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.switch-label input{display:none}.switch-label:has(input:checked){background:var(--buddy-primary);border-color:var(--buddy-primary);color:#fff}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);background:#323232;color:#fff;padding:10px 25px;border-radius:25px;z-index:2000;transition:opacity .3s}.toast.hidden{opacity:0;pointer-events:none}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:2000;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--card-bg);padding:20px;border-radius:12px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;margin-bottom:15px}.modal-header button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color)}.canvas-container{overflow:auto;max-height:70vh;border:1px solid var(--buddy-border);cursor:crosshair}.add-to-list-btn,.stash-btn{background:none;border:1px solid var(--buddy-border);color:var(--text-color);padding:5px 10px;border-radius:15px;cursor:pointer;margin-top:10px;font-size:.8rem;transition:background .2s}.stash-btn{margin-left:5px}.add-to-list-btn:hover,.stash-btn:hover{background:var(--badge-bg)}.stash-btn.active{background:#00bcd4;color:#fff;border-color:#00bcd4}.match-code{cursor:pointer;transition:color .2s}.match-code:hover{color:var(--buddy-primary);text-decoration:underline}.harmonies-section{margin-top:3rem;padding-top:2rem;border-top:2px dashed var(--buddy-border)}.harmonies-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}.harmony-group{background:var(--card-bg);border:1px solid var(--buddy-border);border-radius:12px;padding:1rem;width:250px;text-align:center;box-shadow:0 4px 6px #0000000d}.harmony-group h4{margin-bottom:10px;color:var(--text-muted)}button,input,select,.match-code,.palette-item,.stash-item,label{touch-action:manipulation}.qty-btn{width:36px!important;height:36px!important;font-size:1.4rem!important;background:var(--card-bg)}@media (max-width: 600px){.toolbar{flex-direction:column;align-items:stretch}.palette-btn{width:100%;margin-bottom:5px}.palette-tray,.stash-tray{width:100%}.results-grid{grid-template-columns:1fr}.app-container{padding:10px}h1{font-size:1.5rem}}@media print{body{background:#fff!important;color:#000!important;margin:0;padding:0}body.printing-modal *{visibility:hidden!important}body.printing-modal header,body.printing-modal section,body.printing-modal .search-section,body.printing-modal .results-grid,body.printing-modal .floating-btn,body.printing-modal #paletteTray,body.printing-modal #stashTray{display:none!important}body.printing-modal .modal:not(.hidden),body.printing-modal .modal:not(.hidden) *{visibility:visible!important}body.printing-modal .modal:not(.hidden){position:absolute!important;left:0!important;top:0!important;width:100%!important;display:block!important;background:transparent!important;padding:0!important;margin:0!important}body.printing-modal .modal-content{box-shadow:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;border:none!important;overflow:visible!important}body.printing-modal button,body.printing-modal .close-btn,body.printing-modal select{display:none!important;visibility:hidden!important}body:not(.printing-modal)>*:not(#paletteTray):not(.app-container){display:none!important}body:not(.printing-modal) .app-container>*:not(#paletteTray){display:none!important}body:not(.printing-modal) header{display:none!important}body:not(.printing-modal) #paletteTray{position:static!important;width:100%!important;height:auto!important;display:block!important;box-shadow:none!important;transform:none!important;background:#fff!important;color:#000!important}body:not(.printing-modal) #paletteTray *{color:#000!important}body:not(.printing-modal) #paletteTray .close-btn,body:not(.printing-modal) #paletteTray .palette-actions,body:not(.printing-modal) #paletteTray button{display:none!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}#vipCodeInput::-moz-placeholder{color:#8f959e!important;font-weight:400!important;letter-spacing:normal!important;opacity:.75!important}#vipCodeInput::placeholder{color:#8f959e!important;font-weight:400!important;letter-spacing:normal!important;opacity:.75!important}#buddy-content{background:var(--bg-color);color:var(--text-color);padding:0 16px 64px}#buddy-content .app-container{max-width:none;width:100%;padding:24px 0 0;display:grid;grid-template-columns:320px minmax(0,1fr);-moz-column-gap:32px;column-gap:32px;align-items:start}@media (min-width: 640px){#buddy-content{padding-inline:24px}}@media (min-width: 1024px){#buddy-content{padding-inline:32px}}@media (min-width: 1280px){#buddy-content{padding-inline:40px}}@media (min-width: 1536px){#buddy-content{padding-inline:48px}}#buddy-content .buddy-header{grid-column:1 / -1}#buddy-content .buddy-search-top{grid-column:2;grid-row:2;min-width:0;margin-bottom:14px}#buddy-content .buddy-results-pane{grid-column:2;grid-row:3;min-width:0;container-type:inline-size}#buddy-content .buddy-header{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0 0 22px;text-align:left}#buddy-content .buddy-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;width:100%;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid var(--buddy-border)}#buddy-content .buddy-tools{display:flex;flex:1 1 auto;min-width:0;flex-wrap:wrap;gap:6px;align-items:center;overflow-x:visible;padding-bottom:4px}#buddy-content .buddy-preferences{display:flex;align-items:center;gap:8px;flex:0 0 auto}#buddy-content .theme-btn,#buddy-content .palette-btn,.modal .theme-btn,.palette-tray .theme-btn,.stash-tray .theme-btn{min-height:40px;padding:8px 13px;border:1px solid var(--buddy-border);border-radius:9px;background:var(--card-bg);box-shadow:none;color:var(--text-color);font-family:var(--font-sans);font-size:.84rem;font-weight:500;line-height:1.3;letter-spacing:0;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}#buddy-content .theme-btn:hover,#buddy-content .palette-btn:hover,.modal .theme-btn:hover{transform:none;background:var(--hover-bg);border-color:#c9b5f3;color:var(--buddy-primary-dark)}#buddy-content .buddy-tools .theme-btn{flex:0 0 auto;min-height:34px;padding:6px 9px;font-size:.75rem;white-space:nowrap}#buddy-content .buddy-tools .theme-btn svg{display:inline-block!important;width:15px;height:15px;margin-right:3px!important;vertical-align:-2px!important}#buddy-content #themeToggle,#buddy-content #settingsBtn{width:36px;min-height:36px;padding:6px;font-size:1rem}#buddy-content #themeToggle svg,#buddy-content #settingsBtn svg{width:18px;height:18px;display:block;margin:auto}#buddy-content #settingsBtn{position:relative}#buddy-content #settingsBtn:after{content:attr(title);position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:-moz-max-content;width:max-content;max-width:min(240px,80vw);padding:7px 10px;border-radius:7px;background:var(--text-color);color:var(--card-bg);box-shadow:0 6px 18px #1a142a26;font-size:.75rem;font-weight:500;line-height:1.3;opacity:0;visibility:hidden;pointer-events:none}#buddy-content #settingsBtn:is(:hover,:focus-visible):after{opacity:1;visibility:visible}#buddy-content #shopListBtn{color:var(--buddy-primary-dark)}#buddy-content .lang-switcher{flex:0 0 auto;position:static!important}#buddy-content #langSelect{min-height:36px;padding:6px 10px!important;border:1px solid var(--buddy-border);border-radius:9px!important;background:var(--card-bg);color:var(--text-color);font-size:.82rem;font-weight:500!important}#buddy-content .buddy-header h1{margin:0 0 4px;color:var(--text-color);font-family:var(--font-serif);font-size:clamp(2rem,2.7vw,2.4rem);font-weight:500;line-height:1.2;letter-spacing:-.025em;text-transform:none}#buddy-content .buddy-title-row{display:flex;align-items:center;gap:14px}#buddy-content .buddy-title-logo{display:block;flex:0 0 auto;width:48px;font-size:2.35rem;line-height:1;text-align:center}#buddy-content .buddy-header p{max-width:72ch;margin:0;color:var(--text-muted);font-size:.875rem;font-weight:400;letter-spacing:0;line-height:1.5}#buddy-content .search-section{grid-column:1;grid-row:2 / span 2;position:sticky;top:20px;min-width:0;margin-bottom:22px;padding:20px;border:1px solid var(--buddy-border);border-radius:16px;box-shadow:0 8px 24px #3826540b;max-height:calc(100dvh - 32px);overflow-y:auto}#buddy-content .buddy-filter-header{display:flex;justify-content:space-between;align-items:center;gap:10px}#buddy-content .buddy-filter-heading{margin:0;font-family:var(--font-sans);font-size:.92rem;font-weight:600}#buddy-content .buddy-clear-filters{border:0;background:none;color:var(--text-muted);font:inherit;font-size:.76rem;cursor:pointer}#buddy-content .buddy-clear-filters:hover{color:var(--buddy-primary-dark)}#buddy-content .search-container{max-width:none}#buddy-content #searchInput{height:46px;padding:10px 15px;border:1px solid #dcd4e9;border-radius:10px;background:var(--card-bg);font-size:.875rem;font-weight:400;box-shadow:0 1px 3px #38265409}#buddy-content #searchInput::-moz-placeholder{color:#777486;opacity:1}#buddy-content #searchInput::placeholder{color:#777486;opacity:1}#buddy-content[data-theme=dark] #searchInput::-moz-placeholder{color:#b6adbf}#buddy-content[data-theme=dark] #searchInput::placeholder{color:#b6adbf}#buddy-content #searchInput:focus{border-color:var(--buddy-primary);box-shadow:0 0 0 3px #9b87f52b}#buddy-content .toolbar{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start!important;gap:6px!important;margin-top:14px!important}#buddy-content .toolbar .palette-btn{display:grid!important;grid-template-columns:22px minmax(0,1fr) auto 18px;align-items:center;-moz-column-gap:8px!important;column-gap:8px!important;width:100%;text-align:left}#buddy-content .toolbar .buddy-tool-icon{display:grid;grid-column:1;place-items:center;width:22px;line-height:1}#buddy-content .toolbar #colorPicker{grid-column:1}#buddy-content .toolbar .buddy-tool-label{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#buddy-content .toolbar .buddy-count{grid-column:3;margin-left:0}#buddy-content .toolbar .buddy-lock{grid-column:4;justify-self:center;line-height:1}#buddy-content .toolbar .palette-btn{margin:0!important;min-height:36px;padding:7px 11px;border:1px solid var(--buddy-border)!important;border-radius:9px;background:var(--card-bg)!important;color:var(--text-color)!important;font-weight:500}#buddy-content .toolbar .palette-btn:hover{background:var(--hover-bg)!important}#buddy-content .buddy-count{white-space:nowrap;font-variant-numeric:tabular-nums}#buddy-content #colorPicker{width:22px;height:22px;border-radius:5px!important}#buddy-content .filters-container{display:flex!important;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important;gap:12px!important;margin-top:14px!important;padding-top:14px;border-top:1px solid var(--buddy-border);text-align:left}#buddy-content .buddy-brand-filter{margin-top:12px}#buddy-content .buddy-brand-search{position:relative}#buddy-content .buddy-brand-search>span{position:absolute;top:50%;left:11px;transform:translateY(-50%);color:var(--text-muted);font-size:1.3rem;line-height:1;pointer-events:none}#buddy-content #brandSearch{width:100%;height:38px;padding:8px 12px 8px 34px;border:1px solid var(--buddy-border);border-radius:8px;background:var(--card-bg);color:var(--text-color);font:inherit;font-size:.8rem}#buddy-content .buddy-active-brands{margin:12px 0}#buddy-content .buddy-active-brands p{margin:0 0 8px;color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}#buddy-content .buddy-active-brand-chips{display:flex;flex-wrap:wrap;gap:6px;color:var(--text-muted);font-size:.75rem}#buddy-content .buddy-filter-chip{border:1px solid var(--buddy-border);border-radius:6px;padding:4px 7px;background:var(--badge-bg);color:var(--buddy-primary-dark);font:inherit;font-size:.74rem;cursor:pointer}#buddy-content .buddy-brand-accordion{border:1px solid var(--buddy-border);border-radius:9px;overflow:hidden;background:var(--card-bg)}#buddy-content #toggleFiltersBtn{display:flex;align-items:center;width:100%;gap:8px;min-height:42px;padding:9px 12px;border:0;background:transparent;color:var(--text-color);font:inherit;font-size:.76rem;font-weight:600;letter-spacing:.04em;text-align:left;text-transform:uppercase;cursor:pointer}#buddy-content #toggleFiltersBtn:hover{background:var(--badge-bg)}#buddy-content .buddy-selected-count{padding:2px 6px;border-radius:999px;background:var(--buddy-primary);color:#fff;font-size:.69rem;letter-spacing:0}#buddy-content .buddy-chevron{margin-left:auto;font-size:1.25rem;line-height:.7;transition:transform .18s ease}#buddy-content #toggleFiltersBtn[aria-expanded=true] .buddy-chevron{transform:rotate(180deg)}#buddy-content .buddy-brand-options{padding:0 8px 8px}#buddy-content .buddy-more-brands{width:100%;border:0;padding:8px;background:transparent;color:var(--text-muted);font:inherit;font-size:.75rem;text-align:left;cursor:pointer}#buddy-content .buddy-more-brands:hover{color:var(--buddy-primary-dark)}#buddy-content .buddy-no-brands{padding:8px;color:var(--text-muted);font-size:.75rem}#buddy-content #stashOnlyContainer{min-height:40px;margin-left:0!important;padding:7px 0;border:0;border-radius:0;box-shadow:none;background:transparent;font-size:.84rem}#buddy-content #stashOnlyContainer:hover{transform:none;box-shadow:none}#buddy-content #stashOnlyContainer input{display:inline-block;width:16px;height:16px;accent-color:var(--buddy-primary)}#buddy-content #stashOnlyContainer:has(input:checked){color:var(--buddy-primary-dark);background:transparent}#buddy-content .brands-filter{display:flex;flex-direction:column;align-items:stretch;gap:4px;max-height:none;overflow-y:visible;justify-content:flex-start;margin-top:8px;padding:0;border:0;box-shadow:none}#buddy-content .brands-filter label{width:100%;margin:0;padding:7px 9px;border:0;border-radius:6px;background:transparent;font-size:.78rem;text-align:left}#buddy-content .brands-filter label:hover{background:var(--badge-bg)}#buddy-content .brands-filter label:has(input:checked){background:var(--badge-bg);color:var(--buddy-primary-dark)}#buddy-content .brands-filter label[hidden]{display:none!important}#buddy-content .brands-filter input{accent-color:var(--buddy-primary)}#buddy-content .selected-section{margin-bottom:18px;text-align:left}#buddy-content .selected-card{min-height:108px;padding:18px 20px!important;border:1px solid var(--buddy-border)!important;border-radius:14px!important;box-shadow:0 7px 22px #3826540b!important}#buddy-content .buddy-loading-status,#buddy-content .buddy-results-empty{display:flex;align-items:center;gap:12px;min-height:108px;padding:20px;color:var(--text-muted);background:var(--card-bg);border:1px solid var(--buddy-border);border-radius:14px}#buddy-content .buddy-loading-spinner{width:20px;height:20px;flex:0 0 20px;border:2px solid var(--buddy-border);border-top-color:var(--buddy-primary);border-radius:50%;animation:buddy-loading-spin .8s linear infinite}#buddy-content .buddy-loading-card{height:190px;border:1px solid var(--buddy-border);border-radius:13px;background:linear-gradient(100deg,var(--card-bg) 30%,var(--badge-bg) 50%,var(--card-bg) 70%);background-size:200% 100%;animation:buddy-loading-shimmer 1.4s ease-in-out infinite}#buddy-content .results-grid>.buddy-results-empty{grid-column:1 / -1}@keyframes buddy-loading-spin{to{transform:rotate(360deg)}}@keyframes buddy-loading-shimmer{to{background-position-x:-200%}}@media (prefers-reduced-motion: reduce){#buddy-content .buddy-loading-spinner,#buddy-content .buddy-loading-card{animation:none}}#buddy-content .selected-card .swatch-large{flex:0 0 80px;width:80px!important;height:64px!important;margin:0;border-radius:10px!important}#buddy-content .selected-info h3{font-size:1.2rem;font-weight:600;line-height:1.3}#buddy-content .selected-info small{letter-spacing:.05em}#buddy-content .results-grid{grid-template-columns:1fr;gap:16px}#buddy-content .match-card{min-width:0;align-self:start;padding:14px!important;border-radius:13px!important;box-shadow:0 3px 13px #3826540b!important;justify-content:flex-start!important;gap:8px;transition:border-color .18s ease,box-shadow .18s ease}#buddy-content .match-card:hover{border-color:#cbbaf1!important;box-shadow:0 8px 22px #38265417!important;position:relative;z-index:3}#buddy-content .match-actions button[data-tooltip],#buddy-content .selected-card button[data-tooltip],#buddy-content .match-advice [data-tooltip]{position:relative}#buddy-content .match-actions button[data-tooltip]:after,#buddy-content .selected-card button[data-tooltip]:after,#buddy-content .match-advice [data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,3px);background:#30283d;color:#fff;border-radius:6px;padding:5px 8px;font-size:.69rem;font-weight:500;line-height:1.25;white-space:nowrap;box-shadow:0 4px 12px #1f172b2e;opacity:0;visibility:hidden;pointer-events:none;z-index:20;transition:opacity .08s ease,transform .08s ease,visibility .08s}#buddy-content .match-actions button[data-tooltip]:hover:after,#buddy-content .match-actions button[data-tooltip]:focus-visible:after,#buddy-content .selected-card button[data-tooltip]:hover:after,#buddy-content .selected-card button[data-tooltip]:focus-visible:after,#buddy-content .match-advice [data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%)}#buddy-content .match-advice [data-tooltip]:after{left:0;transform:translateY(3px)}#buddy-content .match-advice [data-tooltip]:hover:after{transform:translate(0)}#buddy-content .match-actions .buddy-stash-stepper button[data-tooltip]:last-child:after,#buddy-content .selected-card .buddy-stash-stepper button[data-tooltip]:last-child:after{left:auto;right:0;transform:translateY(3px)}#buddy-content .match-actions .buddy-stash-stepper button[data-tooltip]:last-child:hover:after,#buddy-content .match-actions .buddy-stash-stepper button[data-tooltip]:last-child:focus-visible:after,#buddy-content .selected-card .buddy-stash-stepper button[data-tooltip]:last-child:hover:after,#buddy-content .selected-card .buddy-stash-stepper button[data-tooltip]:last-child:focus-visible:after{transform:translate(0)}#buddy-content .match-card h3{font-size:1.06rem;font-weight:600;line-height:1.2}#buddy-content .match-card .swatch-large{flex:0 0 56px;width:56px!important;height:48px!important;margin:0}#buddy-content .match-card .match-main{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}#buddy-content .match-card .match-identity{display:flex;flex:1 1 130px;align-items:center;gap:5px;min-width:130px;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}#buddy-content .match-card .match-identity:focus-visible{outline:2px solid var(--buddy-primary);outline-offset:4px}#buddy-content .match-card .match-identity-copy{min-width:0;line-height:1.3}#buddy-content .match-card .match-identity-copy span{display:block;font-size:.78rem!important;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#buddy-content .match-card .match-identity-copy .match-brand{color:var(--text-muted);font-size:.68rem!important;text-transform:uppercase}#buddy-content .match-card .match-identity-copy .match-code{display:block;margin:2px 0 4px;color:var(--text-color);font-size:1.06rem;font-weight:600;line-height:1.2}#buddy-content .match-card .match-identity-copy .match-name{color:var(--text-muted);font-size:.74rem!important;overflow:visible;text-overflow:clip}#buddy-content .match-card .match-detail-icon{flex:none;width:16px;height:16px;margin-left:auto;color:var(--text-muted);opacity:.7;transition:transform .15s ease,opacity .15s ease}#buddy-content .match-card .match-identity:hover .match-detail-icon{transform:translate(2px);opacity:1}#buddy-content .match-card .match-status{display:flex;flex:none;flex-direction:column;align-items:flex-end;gap:4px;max-width:100%}#buddy-content .match-card .match-badge-button{display:flex;align-items:center;gap:6px;max-width:100%;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;text-align:right;cursor:pointer}#buddy-content .match-card .match-badge-button:focus-visible{outline:2px solid var(--buddy-primary);outline-offset:4px}#buddy-content .match-card .match-badge-help{flex:none;width:16px;height:16px;color:var(--text-muted);opacity:.75}#buddy-content .match-card .match-badge-button:hover .match-badge-help{opacity:1}#buddy-content .match-card .match-status .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;text-align:center;white-space:nowrap}#buddy-content .match-advice{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0;padding:0;font-size:.74rem;color:var(--text-muted)}#buddy-content .match-advice span{white-space:nowrap}#buddy-content .match-advice .match-advice-note{white-space:normal;color:#9d423e}#buddy-content .match-actions{gap:6px;margin-top:2px!important;padding-top:0;min-height:30px}#buddy-content .match-actions>div:first-child{flex:none}#buddy-content .match-actions .theme-btn:not(.buddy-add-stash){display:inline-grid;place-items:center;width:29px;height:29px;min-height:29px;padding:0;font-size:.78rem}#buddy-content .match-actions .buddy-add-stash{flex:none;width:auto;min-height:29px;margin-top:0;padding:4px 7px;border-radius:7px;font-size:.7rem;white-space:nowrap}#buddy-content .buddy-add-stash{border-style:dashed;color:var(--text-muted)}#buddy-content .buddy-stash-stepper{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap;color:var(--text-color);font-size:.71rem;white-space:nowrap}#buddy-content .buddy-stash-stepper>span{margin-right:2px;color:var(--text-muted)}#buddy-content .buddy-stash-stepper button{width:27px;height:27px;border:1px solid var(--buddy-border);border-radius:7px;background:var(--card-bg);color:var(--text-color);font:inherit;font-size:1rem;cursor:pointer}#buddy-content .buddy-stash-stepper button:hover{background:var(--badge-bg)}#buddy-content .buddy-stash-stepper strong{min-width:14px;text-align:center;font-variant-numeric:tabular-nums}#buddy-content .badge{padding:4px 9px;border-radius:6px;font-size:.7rem;font-weight:600;line-height:1.3}#buddy-content .badge-perfect{background:#e4f6eb;color:#226546}#buddy-content .badge-close{background:#edf5e6;color:#496928}#buddy-content .badge-alternative{background:#fff4d8;color:#785514}#buddy-content .badge-rough{background:#ffecdf;color:#8b4e20}#buddy-content .badge-stash{background:#e7f3f5;color:#285f69}#buddy-content .trait-badge{border-radius:6px;font-size:.69rem}#buddy-content .harmonies-section{margin-top:38px;padding-top:28px;border-top:1px solid var(--buddy-border)}#buddy-content .harmonies-section h2{font-family:var(--font-serif)!important;font-size:1.55rem;font-weight:500!important;letter-spacing:-.015em!important;text-transform:none!important}#buddy-content .harmony-group{border-radius:12px;box-shadow:none}.palette-tray,.stash-tray{width:min(420px,100vw);border-left:1px solid var(--buddy-border);box-shadow:-12px 0 32px #20143421}.palette-header,.stash-header{background:var(--badge-bg);color:var(--text-color);border-bottom:1px solid var(--buddy-border)}.palette-header h2,.stash-header h2{font-family:var(--font-serif);font-size:1.45rem;font-weight:500}.palette-header .close-btn,.stash-header .close-btn{color:var(--text-color)}.palette-items,.stash-items{padding:12px 20px}.palette-actions,.stash-actions{padding:16px 20px}.palette-actions button,.stash-actions button{border-radius:9px;font-size:.84rem;font-weight:500}.modal{background:#1d132d85;padding:16px}.modal-content{border:1px solid var(--buddy-border);border-radius:16px;box-shadow:0 24px 64px #1e113033;color:var(--text-color)}.modal .modal-content{width:min(1080px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;max-height:calc(100dvh - 32px);padding:24px 28px}#vipModal .modal-content{width:min(1200px,calc(100vw - 32px))!important;padding:28px 34px;text-align:left!important}#sosModal .modal-content,#usbModal .modal-content,#guideModal .modal-content{width:min(1320px,calc(100vw - 32px))!important}#sewingCalcModal .modal-content,#hstModal .modal-content{width:min(1250px,calc(100vw - 32px))!important}#threadModal .modal-content{width:min(900px,calc(100vw - 32px))!important}#deltaEModal .modal-content{width:min(850px,calc(100vw - 32px))!important}#projectSelectModal .modal-content{width:min(640px,calc(100vw - 32px))!important}#shopModal .modal-content,#maintModal .modal-content,#settingsModal .modal-content{width:min(980px,calc(100vw - 32px))!important}#vipModal .modal-header h2{font-family:var(--font-serif);font-size:1.6rem;font-weight:500}#vipModal .lang-en>p,#vipModal .lang-de>p,#vipModal .lang-fr>p,#vipModal .lang-cs>p{max-width:70ch}#vipModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs) ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-bottom:20px!important;padding:18px 20px!important;background:var(--badge-bg)!important;list-style:none}#vipModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs) li{margin:0!important;font-size:.88rem;line-height:1.5}body.buddy-dark .modal :is(button,label)[style*="background:var(--buddy-primary)"],body.buddy-dark .modal :is(button,label)[style*="background: var(--buddy-primary)"]{color:#241a35!important}.modal-header{align-items:center;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--buddy-border)}.modal-header h2{font-family:var(--font-serif);font-size:1.5rem;font-weight:500}.modal-header button{color:var(--text-muted)}.modal .modal-content{line-height:1.65;scroll-padding-top:82px}.modal .modal-header{position:sticky;top:-24px;z-index:2;flex:none;min-height:54px;margin-bottom:20px!important;padding:0 0 16px!important;background:var(--card-bg)}.modal .modal-header :is(h2,h3){flex:1;min-width:0;margin:0!important;color:var(--text-color)!important;font-family:var(--font-serif);font-size:clamp(1.25rem,2vw,1.6rem)!important;font-weight:600;line-height:1.3}.modal .modal-header button:last-child{flex:none;display:grid;place-items:center;width:38px;height:38px;margin:0!important;border:1px solid var(--buddy-border)!important;border-radius:9px;background:var(--bg-color)!important;color:var(--text-color)!important;font-size:1.25rem!important}.modal .modal-header button:last-child:hover{background:var(--hover-bg)!important}.modal .modal-content :is(p,li){line-height:1.65}.modal .modal-content :is(h3,h4){line-height:1.35}.modal .modal-content p{max-width:none}.modal .modal-content :is(input,select){min-height:42px}#sosModal .modal-content>div:not(.modal-header),#usbModal .modal-content>div:not(.modal-header),#guideModal .modal-body,#sewingCalcModal .modal-content>div:not(.modal-header),#hstModal .modal-body{max-height:none!important;overflow:visible!important;padding-right:0!important}#sosModal .lang-en>div:first-child,#sosModal .lang-de>div:first-child,#sosModal .lang-fr>div:first-child,#sosModal .lang-cs>div:first-child{border:1px solid var(--buddy-border);border-left:1px solid var(--buddy-border)!important;border-radius:12px!important;background:var(--badge-bg)!important;padding:16px 18px!important;margin-bottom:0!important}#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs)>div:first-child{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:20px;column-gap:20px}#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs)>div:first-child h4{grid-column:1 / -1}#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs)>div:first-child p{margin:0!important}#sosModal .buddy-help-section,#usbModal .buddy-help-section{min-width:0}#sosModal .buddy-help-section p{margin:0!important;font-size:.9rem;line-height:1.5}#sosModal .buddy-help-section h4,#usbModal .buddy-help-section h4{margin-bottom:10px!important}#usbModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.buddy-help-section{margin:0;padding:14px 16px;border:1px solid var(--buddy-border);border-radius:12px;background:var(--bg-color)}.buddy-help-section h4{margin:0 0 7px!important;color:var(--text-color);font-size:1rem;font-weight:600}#usbModal .buddy-help-section:first-child h4:before{content:"🧵 "}#usbModal .buddy-help-section:nth-child(2) h4:before{content:"🔌 "}.buddy-help-section p{margin:0!important}.buddy-help-section ul{margin:0!important;padding-left:20px!important;font-size:.94rem!important}.buddy-help-section li{margin:0 0 10px!important}.buddy-help-section li:last-child{margin-bottom:0!important}#usbModal .buddy-help-section:first-child ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;list-style:none;padding:0!important}#usbModal .buddy-help-section:first-child li{margin:0!important;padding:10px 12px;border:1px solid var(--buddy-border);border-radius:8px;background:var(--card-bg)}#usbModal .buddy-help-section:first-child li strong{display:block}#usbModal .buddy-help-section>div{margin:16px 0 0!important;padding:14px 16px!important;border:1px solid var(--buddy-border);border-left:1px solid var(--buddy-border)!important;border-radius:9px!important;background:var(--badge-bg)!important}#usbModal .buddy-help-section>div p{margin-top:6px!important;font-size:.9rem!important}#usbModal .buddy-help-section:nth-child(2) li{padding-bottom:3px}#guideModal .modal-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#guideModal .modal-body>p{grid-column:1 / -1;margin:0 0 4px!important}#guideModal .modal-body>div{margin:0!important;padding:18px!important;border:1px solid var(--buddy-border)!important;border-radius:12px!important;background:var(--bg-color)!important}#guideModal .modal-body>div:first-of-type{grid-column:1 / -1}#guideModal .modal-body h3{margin:0 0 10px!important;font-size:1rem;color:var(--text-color)!important}#guideModal .modal-body p{margin:0 0 8px!important;font-size:.9rem}#guideModal .modal-body p:last-child{margin-bottom:0!important}#guideModal .modal-body>div{min-width:0}#sewingCalcModal .modal-content>div:not(.modal-header),#hstModal .modal-body{display:block!important;-moz-columns:2;columns:2;-moz-column-gap:14px;column-gap:14px}#sewingCalcModal .modal-content>div:not(.modal-header)>div,#hstModal .modal-body>div{margin:0 0 14px!important;padding:20px!important;-moz-column-break-inside:avoid;break-inside:avoid;border-radius:12px!important;background:var(--bg-color)!important}#sewingCalcModal h3,#hstModal h3{font-size:1rem;font-weight:600}#calcModal .modal-content>div:not(.modal-header){gap:14px!important}#calcModal .modal-content>div:not(.modal-header)>div{margin-bottom:0}#calcModal label,#settingsModal label{font-weight:600}#calcModal input,#settingsModal :is(input,select){padding:10px 12px!important}#threadModal #tmName{margin:0 0 16px;font-size:1.05rem}#deltaEModal ul{list-style:none;padding:0!important}#deltaEModal li{padding:12px 0;border-bottom:1px solid var(--buddy-border)}#deltaEModal li:last-child{border-bottom:0}#projectSelectModal .modal-content{text-align:left!important}#projectSelectModal .modal-content>h3{font-family:var(--font-serif);font-size:1.4rem}#convModal .modal-content,#calcModal .modal-content,#wizardModal .modal-content,#imagePickerModal .modal-content,#maintModal .modal-content,#shopModal .modal-content,#settingsModal .modal-content,#threadModal .modal-content,#deltaEModal .modal-content,#projectSelectModal .modal-content{text-align:left!important}#convModal .modal-content,#calcModal .modal-content,#wizardModal .modal-content,#imagePickerModal .modal-content{width:min(1080px,calc(100vw - 32px))!important}#calcModal .modal-content,#wizardModal .modal-content,#maintModal .modal-content,#shopModal .modal-content,#settingsModal .modal-content,#projectSelectModal .modal-content{gap:0}.modal .modal-header>button:not(:last-child){flex:none;display:grid;place-items:center;width:38px;height:38px;margin:0!important;border:1px solid var(--buddy-border)!important;border-radius:9px;background:var(--bg-color)!important;color:var(--text-color)!important;font-size:1.1rem!important}.modal .modal-header>button:not(:last-child):hover{background:var(--hover-bg)!important}.modal .modal-header>button:first-of-type:not(:last-child){margin-left:auto!important}#convModal .modal-content>p,#wizardModal .modal-content>p,#imagePickerModal .modal-content>p{margin:0 0 16px!important;color:var(--text-muted)}#calcModal .modal-content>p{margin:0 0 16px!important}#calcModal .modal-content>div:not(.modal-header){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 20px!important;margin-top:0!important}#calcModal .modal-content>div:not(.modal-header)>div{min-width:0}#calcModal .modal-content>div:not(.modal-header)>div:nth-last-child(-n+4){grid-column:1 / -1}#calcModal .modal-content>div:not(.modal-header)>button{grid-column:1 / -1}#calcModal .modal-content input,#wizardModal .modal-content select,#settingsModal .modal-content input,#projectSelectModal .modal-content select{background:var(--card-bg)!important;color:var(--text-color)!important;border:1px solid var(--buddy-border)!important;border-radius:9px!important;font:inherit}#calcModal .modal-content :is(input,select):focus,#wizardModal .modal-content select:focus,#projectSelectModal .modal-content select:focus{border-color:var(--buddy-primary)!important}#wizardResult{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px!important}#wizardResult.hidden{display:none!important}#wizardResult>div{border:1px solid var(--buddy-border);border-left:4px solid var(--buddy-primary)!important;border-radius:10px!important;background:var(--bg-color)!important}#maintModal .modal-content>div:not(.modal-header),#shopModal .modal-content>div:not(.modal-header),#settingsModal .modal-content>div:not(.modal-header){margin-top:0!important}#maintModal .modal-content>div:not(.modal-header)>div:first-child{margin-bottom:18px!important}#maintModal .modal-content>div:not(.modal-header)>div:nth-child(2),#shopModal .modal-content>div:not(.modal-header)>div:first-of-type{max-height:min(55dvh,520px)!important;border-radius:10px!important}#shopModal .modal-content>div:not(.modal-header)>div:last-child{justify-content:flex-end!important;flex-wrap:wrap}#shopModal .modal-content>div:not(.modal-header)>div:last-child button{flex:0 1 auto!important}#settingsModal .modal-content>div:not(.modal-header)>div>div{border-radius:10px!important;padding:18px!important}#threadModal #tmSwatchContainer{height:110px!important}#threadModal .modal-content>div:last-child{flex-direction:row!important;flex-wrap:wrap}#threadModal .modal-content>div:last-child button{flex:1 1 180px}#projectSelectModal .modal-content>p{margin:0 0 16px!important}#imagePickerModal .modal-content>div:last-child{max-height:min(65dvh,680px)!important;border-radius:10px!important}@media (max-width: 700px){#calcModal .modal-content>div:not(.modal-header),#wizardResult{grid-template-columns:1fr!important}#usbModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs){grid-template-columns:1fr}#usbModal .buddy-help-section:first-child ul,#guideModal .modal-body{grid-template-columns:1fr}#guideModal .modal-body>div:first-of-type{grid-column:auto}.buddy-help-section{padding:16px}.modal .modal-header{top:-18px}}@media (max-width: 850px){#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs),#sosModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs)>div:first-child,#sewingCalcModal .modal-content>div:not(.modal-header),#hstModal .modal-body{grid-template-columns:1fr;-moz-columns:1;columns:1}}#buddy-content :is(button,input,select,label):focus-visible,.modal :is(button,input,select):focus-visible,.palette-tray :is(button,input,select):focus-visible,.stash-tray :is(button,input,select):focus-visible{outline:2px solid var(--buddy-primary);outline-offset:2px}#buddy-content ::-moz-selection,.modal ::-moz-selection{background:#ded1ff;color:#302746}#buddy-content ::selection,.modal ::selection{background:#ded1ff;color:#302746}@media (max-width: 900px){#buddy-content{padding-bottom:48px}#buddy-content .app-container{display:flex;flex-direction:column;padding:16px 0 0}#buddy-content .buddy-header,#buddy-content .buddy-search-top,#buddy-content .search-section,#buddy-content .buddy-results-pane{width:100%}#buddy-content .search-section{position:static;max-height:none;overflow:visible}#buddy-content .buddy-topbar{align-items:center;gap:8px;margin-bottom:24px}#buddy-content .buddy-tools{flex-wrap:wrap!important;overflow-x:visible!important;gap:5px!important}#buddy-content .buddy-header h1{font-size:2rem}#buddy-content .search-section{padding:18px}#buddy-content .toolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}#buddy-content .toolbar .palette-btn{width:auto;margin-bottom:0}#buddy-content .results-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width: 540px){#buddy-content .buddy-title-row{align-items:flex-start;gap:12px}#buddy-content .buddy-title-logo{width:40px;margin-top:3px;font-size:2rem}#buddy-content .buddy-header h1{font-size:1.75rem}.modal .modal-content,#vipModal .modal-content{padding:18px 20px}#vipModal :is(.lang-en,.lang-de,.lang-fr,.lang-cs) ul{grid-template-columns:1fr}#buddy-content .buddy-topbar{flex-wrap:wrap-reverse}#buddy-content .buddy-tools{width:100%;justify-content:flex-start}#buddy-content .buddy-preferences{width:100%;justify-content:flex-end}#buddy-content .buddy-header p{font-size:.88rem}#buddy-content .search-section{padding:16px}#buddy-content .toolbar{display:grid!important;grid-template-columns:1fr}#buddy-content .toolbar .palette-btn{min-width:0;width:100%;gap:8px!important;font-size:.78rem}#buddy-content .toolbar .palette-btn span{white-space:nowrap}#buddy-content .filters-container{align-items:flex-start!important}#buddy-content .selected-card{flex-wrap:wrap;padding:16px!important;gap:12px!important}#buddy-content .selected-card .swatch-large{flex-basis:70px;width:70px!important;height:60px!important}#buddy-content .selected-card>div:last-child{width:100%;margin-left:0!important;flex-direction:row!important;align-items:center!important;justify-content:space-between;flex-wrap:wrap}#buddy-content .results-grid{grid-template-columns:1fr}.palette-tray,.stash-tray{width:100vw}}@container (min-width: 580px){#buddy-content .results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (min-width: 900px){#buddy-content .results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (min-width: 1240px){#buddy-content .results-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}#store-header>header{margin-bottom:0;text-align:left}#store-header,#store-footer,#store-overlays{font-family:Poppins,sans-serif}#buddy-content{display:flow-root}@media print{#store-header,#store-footer,#store-overlays{display:none!important}}

/* Mobile responsive & full-screen compact modal improvements */
@media (max-width: 768px) {
  #buddy-content { padding-bottom: 32px !important; }
  #buddy-content .app-container { padding: 10px 12px 24px !important; gap: 12px !important; }
  #buddy-content .buddy-topbar { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin-bottom: 12px !important; align-items: center !important; }
  #buddy-content .buddy-tools { display: flex !important; flex-wrap: wrap !important; overflow-x: visible !important; overflow-y: visible !important; width: 100% !important; gap: 4px !important; padding-bottom: 0 !important; justify-content: flex-start !important; }
  #buddy-content .buddy-tools .theme-btn { padding: 6px 9px !important; font-size: 0.78rem !important; line-height: 1.2 !important; white-space: nowrap !important; flex: 0 1 auto !important; border-radius: 6px !important; }
  #buddy-content .buddy-preferences { display: flex !important; width: 100% !important; justify-content: flex-end !important; gap: 6px !important; }
  #buddy-content .buddy-header h1 { font-size: 1.5rem !important; line-height: 1.2 !important; }
  #buddy-content .buddy-header p { font-size: 0.82rem !important; }
  #buddy-content .buddy-search-top { margin-bottom: 12px !important; }
  #buddy-content #searchInput { padding: 0.75rem 1rem !important; font-size: 0.95rem !important; }
  #buddy-content .search-section { padding: 12px !important; margin-bottom: 12px !important; border-radius: 8px !important; }
  #buddy-content .toolbar { gap: 6px !important; margin-top: 10px !important; }
  #buddy-content .toolbar .palette-btn { padding: 6px 10px !important; font-size: 0.8rem !important; }
  #buddy-content .selected-card { padding: 12px !important; border-radius: 8px !important; gap: 10px !important; margin-bottom: 12px !important; }
  #buddy-content .selected-card .swatch-large { width: 60px !important; height: 50px !important; border-radius: 6px !important; }
  #buddy-content .match-card { padding: 12px !important; border-radius: 8px !important; }
  #buddy-content .results-grid { gap: 10px !important; }
  .modal { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important; width: 100vw !important; height: 100dvh !important; padding: 0 !important; margin: 0 !important; align-items: stretch !important; justify-content: stretch !important; z-index: 99999 !important; }
  .modal-content, .modal .modal-content, #vipModal .modal-content, #threadModal .modal-content, #deltaEModal .modal-content, #calcModal .modal-content, #sewingCalcModal .modal-content, #hstModal .modal-content, #wizardModal .modal-content, #shopModal .modal-content, #maintModal .modal-content, #guideModal .modal-content, #sosModal .modal-content, #usbModal .modal-content, #settingsModal .modal-content, #projectSelectModal .modal-content, #imagePickerModal .modal-content {
    width: 100vw !important; max-width: 100vw !important; min-width: 100vw !important; height: 100dvh !important; max-height: 100dvh !important; min-height: 100dvh !important; border-radius: 0 !important; margin: 0 !important; padding: 12px 14px !important; box-sizing: border-box !important; display: flex !important; flex-direction: column !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; touch-action: pan-y !important;
  }
  .modal-header, .modal .modal-header { flex-shrink: 0 !important; margin-bottom: 8px !important; padding-bottom: 8px !important; border-bottom: 1px solid var(--buddy-border) !important; display: flex !important; align-items: center !important; justify-content: space-between !important; position: static !important; top: auto !important; }
  .modal-header h2, .modal-header h3 { font-size: 1.05rem !important; line-height: 1.25 !important; margin: 0 !important; }
  .modal-header button, .modal-header .close-btn { min-width: 38px !important; min-height: 38px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; font-size: 1.3rem !important; cursor: pointer !important; }
  .modal-body, .modal-content > div:not(.modal-header):not(.modal-footer), .modal-content > form, .modal-content > section { flex: 1 1 auto !important; min-height: 0 !important; max-height: none !important; height: auto !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; touch-action: pan-y !important; padding-right: 0 !important; margin-bottom: 6px !important; }
  .modal-footer { flex-shrink: 0 !important; margin-top: 6px !important; padding-top: 6px !important; border-top: 1px solid var(--buddy-border) !important; }
  .modal input, .modal select, .modal button { font-size: 0.85rem !important; padding: 6px 10px !important; }
  #imagePickerModal .modal-content { display: flex !important; flex-direction: column !important; height: 100dvh !important; padding: 10px 12px !important; }
  #imagePickerModal .modal-content > p { font-size: 0.8rem !important; margin-bottom: 6px !important; flex-shrink: 0 !important; }
  #imagePickerModal .modal-content > div:last-child { flex: 1 1 auto !important; height: 100% !important; max-height: calc(100dvh - 100px) !important; border-radius: 8px !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: auto !important; background: #000 !important; }
  #imagePickerCanvas { max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; touch-action: pinch-zoom !important; cursor: crosshair !important; }
}
