@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:0.3s;animation-timing-function:ease-in-out}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-out{from{opacity:1}to{opacity:0}}@keyframes fade-in{from{opacity:0}to{opacity:1}}::view-transition-group(root){animation-duration:0.3s}.search-bar-container{position:fixed;top:0;left:0;right:0;z-index:var(--z-index-fixed);background-color:var(--color-background);transition:transform 0.3s ease-in-out,box-shadow var(--transition-base);will-change:transform}.search-bar-container.search-bar-hidden{transform:translateY(-100%) !important;transition:transform 0.3s ease-in-out;pointer-events:none}.search-bar-input{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);margin:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-surface-variant);border-radius:var(--radius-full);transition:box-shadow var(--transition-base)}.search-bar-shadow{box-shadow:var(--shadow-md)}.search-icon{font-size:var(--font-size-title-medium);color:var(--color-on-surface-variant);flex-shrink:0}.search-input{flex:1;border:none;background:transparent;font-size:var(--font-size-body-large);color:var(--color-on-surface);font-family:var(--font-family-base);outline:none;min-width:0}.search-input::placeholder{color:var(--color-on-surface-variant)}.search-input:focus{outline:none}.search-clear-btn{background:none;border:none;font-size:var(--font-size-title-small);color:var(--color-on-surface-variant);cursor:pointer;padding:var(--spacing-xs);border-radius:50%;transition:background-color var(--transition-fast);flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.search-clear-btn:hover{background-color:var(--color-surface-variant)}.search-clear-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.search-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:var(--z-index-modal-backdrop);cursor:pointer;animation:fadeIn 0.3s ease-in-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.search-results-overlay{position:fixed;top:72px;left:var(--spacing-lg);right:var(--spacing-lg);max-width:calc(1200px - 32px);margin:0 auto;background-color:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;z-index:var(--z-index-modal);animation:slideDown 0.3s ease-in-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-result-item{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-outline-variant);cursor:pointer;transition:background-color var(--transition-fast)}.search-result-item:hover{background-color:var(--color-surface-variant)}.search-result-item:last-child{border-bottom:none}.search-result-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.search-result-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.search-result-title{font-size:var(--font-size-body-large);font-weight:var(--font-weight-medium);color:var(--color-on-surface);margin:0}.search-result-price{font-size:var(--font-size-body-medium);color:var(--color-primary);margin:0}.search-loading,.search-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-on-surface-variant)}.search-loading p,.search-empty p{margin:0;font-size:var(--font-size-body-large)}@media (max-width:767px){.search-bar-input{margin:var(--spacing-xs) var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.search-results-overlay{left:var(--spacing-md);right:var(--spacing-md);max-width:calc(100% - 32px)}.search-result-item{padding:var(--spacing-sm) var(--spacing-md)}}@media (min-width:768px){.search-bar-container{position:static;flex:1;max-width:600px;z-index:auto;background-color:transparent;transform:none !important}.search-bar-input{margin:0;padding:var(--spacing-sm) var(--spacing-md)}.search-bar-container.search-bar-hidden{display:flex;visibility:hidden;pointer-events:none}}.search-results-overlay::-webkit-scrollbar{width:8px}.search-results-overlay::-webkit-scrollbar-track{background:var(--color-surface-variant);border-radius:var(--radius-sm)}.search-results-overlay::-webkit-scrollbar-thumb{background:var(--color-outline);border-radius:var(--radius-sm)}.search-results-overlay::-webkit-scrollbar-thumb:hover{background:var(--color-outline-variant)}.search-input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media print{.search-bar-container,.search-backdrop,.search-results-overlay{display:none}}.page-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.placeholder-icon{font-size:64px}.page-placeholder h2{margin:0}.page-placeholder p{color:var(--color-on-surface-variant);margin:0}.profile-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:2rem}.logged-in-content,.logged-out-content{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:400px;width:100%}.profile-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.form-container{display:flex;flex-direction:column;gap:1rem;width:100%}.form-input{padding:0.75rem;border:1px solid var(--color-outline-variant);border-radius:4px;font-size:1rem;width:100%}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-input:disabled{background-color:var(--color-surface-variant);cursor:not-allowed}.button-row{display:flex;gap:1rem;margin-top:0.5rem}.primary-button,.secondary-button,.logout-button{padding:0.75rem 1.5rem;border-radius:4px;font-size:1rem;cursor:pointer;border:none;flex:1}.primary-button,.logout-button{background-color:var(--color-primary);color:var(--color-on-primary)}.primary-button:hover:not(:disabled),.logout-button:hover:not(:disabled){background-color:var(--color-primary-dark)}.secondary-button{background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.secondary-button:hover:not(:disabled){background-color:var(--color-surface-variant)}.primary-button:disabled,.secondary-button:disabled,.logout-button:disabled{opacity:0.6;cursor:not-allowed}.logout-button{max-width:250px}.error-message{color:var(--color-error);font-size:0.875rem;text-align:center}.loading-container{text-align:center;padding:2rem}