search-workshop{display:block}.search-page{background:var(--color-bg-cream);padding:var(--space-12) 0 var(--space-16);min-height:70vh}.search-page__layout{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:var(--space-10) var(--space-12);align-items:start}.search-page__sidebar{position:sticky;top:calc(var(--header-height) + var(--space-6));display:flex;flex-direction:column;gap:var(--space-6)}.search-page__sidebar-card{padding:var(--space-5);background:var(--color-bg);border:1px dashed color-mix(in srgb,var(--color-accent) 25%,var(--color-border));border-radius:var(--radius-lg);transform:rotate(-.8deg)}.search-page__sidebar-title{font-family:var(--font-accent);font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3)}.search-page__tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.search-page__tag{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:500;color:var(--color-accent);background:var(--color-accent-muted);border:none;border-radius:var(--radius-full);cursor:pointer;font-family:var(--font-accent);transition:transform var(--duration-normal) var(--ease-out)}.search-page__tag:hover{transform:translateY(-1px)}.search-page__tip{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);font-style:italic}.search-page__main-header{margin-bottom:var(--space-8)}.search-page__desc{margin-top:var(--space-4);font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed);max-width:36rem}.search-workshop__input-area{margin-bottom:var(--space-8)}.search-workshop__input-wrap{position:relative}.search-workshop__icon{position:absolute;left:var(--space-5);top:50%;transform:translateY(-50%);color:var(--color-accent);pointer-events:none}.search-workshop__input{width:100%;padding:var(--space-5) var(--space-5) var(--space-5) calc(var(--space-5) + 32px);font-family:var(--font-display);font-size:clamp(var(--text-lg),2.5vw,var(--text-2xl));font-weight:500;color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-xl);outline:none;box-shadow:var(--shadow-sm);transition:border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.search-workshop__input:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-muted)}.search-workshop__input::placeholder{color:var(--color-text-muted);font-weight:400}.search-workshop__hint{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.search-workshop__idle{padding:var(--space-8);background:var(--color-bg);border-radius:var(--radius-xl);border:1px solid var(--color-border)}.search-workshop__idle-text{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.search-workshop__idle-text em{color:var(--color-accent);font-style:normal;font-weight:500}.search-workshop__count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px dashed var(--color-border)}.search-workshop__featured{margin-bottom:var(--space-6)}.search-workshop__featured-card{display:block;padding:var(--space-6) var(--space-8);text-decoration:none;color:inherit;background:linear-gradient(135deg,color-mix(in srgb,var(--item-accent, var(--color-accent)) 8%,var(--color-bg)) 0%,var(--color-bg) 100%);border:2px solid var(--item-accent, var(--color-accent));border-radius:var(--radius-lg);transition:transform var(--duration-normal) var(--ease-out)}.search-workshop__featured-card:hover{text-decoration:none;transform:translate(6px)}.search-workshop__featured-card.search-workshop__result--active{text-decoration:none;transform:translate(6px);box-shadow:0 0 0 2px color-mix(in srgb,var(--item-accent, var(--color-accent)) 35%,transparent)}.search-workshop__featured-label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--item-accent, var(--color-accent));margin-bottom:var(--space-2)}.search-workshop__featured-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;line-height:var(--leading-snug);color:var(--color-text)}.search-workshop__featured-desc{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.search-workshop__list{list-style:none;margin:0;padding:0}.search-workshop__item{display:grid;grid-template-columns:2.5rem 1fr;gap:var(--space-4);padding:var(--space-4) 0;text-decoration:none;color:inherit;border-bottom:1px solid var(--color-border);transition:background var(--duration-normal) var(--ease-out)}.search-workshop__item:last-child{border-bottom:none}.search-workshop__item:hover{text-decoration:none;background:color-mix(in srgb,var(--item-accent, var(--color-accent)) 4%,transparent)}.search-workshop__item.search-workshop__result--active{text-decoration:none;background:color-mix(in srgb,var(--item-accent, var(--color-accent)) 8%,transparent);box-shadow:inset 3px 0 0 var(--item-accent, var(--color-accent))}.search-workshop__item-num{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--item-accent, var(--color-accent));opacity:.7;padding-top:2px}.search-workshop__item-body{min-width:0}.search-workshop__item-meta{font-family:var(--font-accent);font-size:.625rem;font-weight:600;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--item-accent, var(--color-accent));margin-bottom:var(--space-1)}.search-workshop__item-title{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;color:var(--color-text);line-height:var(--leading-snug)}.search-workshop__item-desc{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-workshop__empty{padding:var(--space-8);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.search-workshop__empty-visual{font-size:2rem;margin-bottom:var(--space-4)}.search-workshop__empty-title{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-2)}.search-workshop__empty-text{font-size:var(--text-base);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-8)}.search-workshop__discovery-title{font-family:var(--font-accent);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}.search-workshop__discovery-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.search-workshop__discovery-item{display:block;padding:var(--space-3) 0;text-decoration:none;color:inherit;border-bottom:1px dashed var(--color-border);transition:color var(--duration-normal) var(--ease-out)}.search-workshop__discovery-item:last-child{border-bottom:none}.search-workshop__discovery-item:hover{text-decoration:none;color:var(--color-accent)}.search-workshop__discovery-cat{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-muted);margin-right:var(--space-2)}.search-workshop__discovery-title-text{font-size:var(--text-sm);font-weight:500}.search-highlight{background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--color-secondary) 50%,transparent) 40%,color-mix(in srgb,var(--color-secondary) 50%,transparent) 88%,transparent 88%);color:inherit;border-radius:2px}@media(max-width:768px){.search-page{padding:var(--space-10) 0 var(--space-12)}.search-page__layout{grid-template-columns:1fr;gap:var(--space-8)}.search-page__sidebar{position:static;flex-direction:row;flex-wrap:wrap}.search-page__sidebar-card{flex:1 1 100%;min-width:0;transform:none}.search-workshop__input{font-size:var(--text-lg);padding:var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 28px)}.search-workshop__featured-card{padding:var(--space-5) var(--space-5)}.search-workshop__featured-title{font-size:var(--text-xl)}}
