textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0!important;box-sizing:content-box!important;height:0!important}html{height:100%;min-height:100%;--app-bg: #030b15;--app-surface: #0b1928;--app-surface-raised: #163149;--app-surface-hover: #203d56;--app-text: #e8dec9;--app-muted: #a6b2ba;--app-border: #7891a5;--app-accent: #d6a17a;--app-accent-hover: #e2ad85;--app-accent-pressed: #b77d55;--app-on-accent: #030b15;--app-line: #294157;--app-success: #8cb99c;--app-warning: #d8b77c;--app-error: #e0a39d;--app-info: #91b9d7;--app-strength-light: #6a9fe3;--app-strength-medium-light: #7cc6e3;--app-strength-medium: #e8dec9;--app-strength-medium-strong: #ebc567;--app-strength-strong: #e46a4c;--app-scrim: rgb(3 11 21 / 72%);--app-radius: 16px;--app-safe-top: env(safe-area-inset-top, 0px);--app-safe-bottom: env(safe-area-inset-bottom, 0px);--app-safe-left: env(safe-area-inset-left, 0px);--app-safe-right: env(safe-area-inset-right, 0px);--app-content-safe-top: 0px;--app-content-safe-bottom: 0px;--app-content-safe-left: 0px;--app-content-safe-right: 0px;--app-safe-top: max(env(safe-area-inset-top, 0px), var(--tg-viewport-safe-area-inset-top, 0px));--app-safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--tg-viewport-safe-area-inset-bottom, 0px));--app-safe-left: max(env(safe-area-inset-left, 0px), var(--tg-viewport-safe-area-inset-left, 0px));--app-safe-right: max(env(safe-area-inset-right, 0px), var(--tg-viewport-safe-area-inset-right, 0px));--app-content-safe-top: var(--tg-viewport-content-safe-area-inset-top, 0px);--app-content-safe-bottom: var(--tg-viewport-content-safe-area-inset-bottom, 0px);--app-content-safe-left: var(--tg-viewport-content-safe-area-inset-left, 0px);--app-content-safe-right: var(--tg-viewport-content-safe-area-inset-right, 0px);--mat-sys-background: light-dark(#fff8f5, #181210);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#fbeee8, #362f2b);--mat-sys-inverse-primary: light-dark(#ffb787, #964900);--mat-sys-inverse-surface: light-dark(#362f2b, #ece0da);--mat-sys-on-background: light-dark(#201a17, #ece0da);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #502400);--mat-sys-on-primary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-primary-fixed: light-dark(#311300, #311300);--mat-sys-on-primary-fixed-variant: light-dark(#723600, #723600);--mat-sys-on-secondary: light-dark(#ffffff, #422b1b);--mat-sys-on-secondary-container: light-dark(#5b4130, #ffdcc7);--mat-sys-on-secondary-fixed: light-dark(#2b1708, #2b1708);--mat-sys-on-secondary-fixed-variant: light-dark(#5b4130, #5b4130);--mat-sys-on-surface: light-dark(#201a17, #ece0da);--mat-sys-on-surface-variant: light-dark(#52443c, #f4ded3);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#84746a, #9f8d83);--mat-sys-outline-variant: light-dark(#d7c3b8, #52443c);--mat-sys-primary: light-dark(#964900, #ffb787);--mat-sys-primary-container: light-dark(#ffdcc7, #723600);--mat-sys-primary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-primary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#755846, #e5bfa8);--mat-sys-secondary-container: light-dark(#ffdcc7, #5b4130);--mat-sys-secondary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-secondary-fixed-dim: light-dark(#e5bfa8, #e5bfa8);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fff8f5, #181210);--mat-sys-surface-bright: light-dark(#fff8f5, #3f3834);--mat-sys-surface-container: light-dark(#f8ebe6, #241e1b);--mat-sys-surface-container-high: light-dark(#f2e6e1, #2f2926);--mat-sys-surface-container-highest: light-dark(#ece0da, #3a3330);--mat-sys-surface-container-low: light-dark(#fef1ec, #201a17);--mat-sys-surface-container-lowest: light-dark(#ffffff, #120d0b);--mat-sys-surface-dim: light-dark(#e3d8d3, #181210);--mat-sys-surface-tint: light-dark(#964900, #ffb787);--mat-sys-surface-variant: light-dark(#f4ded3, #52443c);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #3a2e26;--mat-sys-neutral10: #201a17;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-sys-primary: var(--app-accent);--mat-sys-on-primary: var(--app-on-accent);--mat-sys-primary-container: var(--app-surface-raised);--mat-sys-on-primary-container: var(--app-text);--mat-sys-surface: var(--app-surface);--mat-sys-surface-container: var(--app-surface-raised);--mat-sys-surface-container-low: var(--app-surface);--mat-sys-surface-container-high: var(--app-surface-raised);--mat-sys-surface-container-highest: var(--app-surface-hover);--mat-sys-on-surface: var(--app-text);--mat-sys-on-surface-variant: var(--app-muted);--mat-sys-outline: var(--app-border);--mat-sys-outline-variant: var(--app-line);--mat-sys-background: var(--app-bg);--mat-sys-on-background: var(--app-text);background:var(--app-bg);color-scheme:dark}body{background:var(--app-bg);color:var(--app-text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font:var(--mat-sys-body-medium);margin:0;height:100%;touch-action:manipulation;overflow-x:hidden;overscroll-behavior:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:has(.filter-modal-overlay){overflow:hidden;overscroll-behavior:none}button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.section-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:16px;background:var(--app-surface)}.section-tab{display:flex;box-sizing:border-box;min-width:0;min-height:48px;align-items:center;justify-content:center;flex-wrap:wrap;align-content:center;gap:4px;padding:4px;border:0;border-radius:12px;background:transparent;color:var(--app-muted);font:inherit;font-size:14px;font-weight:500;line-height:20px}.section-tab.selected{background:var(--app-surface-raised);box-shadow:inset 0 -2px 0 var(--app-accent);color:var(--app-text)}.section-tab .tab-label{white-space:nowrap}.section-tab .tab-meta{color:var(--app-muted);font-size:12px;line-height:16px}a.section-tab{text-decoration:none}@media(hover:hover){.section-tab:not(.selected):not([aria-disabled=true]):hover{background:var(--app-surface-hover)}}.app-search-field:has(input:focus-visible),app-filter-modal .filter-field:has(input:focus-visible,mat-select:focus-visible){outline:2px solid var(--app-accent);outline-offset:2px}app-achievements-page .primary-button,app-mcp-page .primary-button{box-sizing:border-box;min-width:44px;min-height:48px;padding:8px 12px;border:0;border-radius:12px;background:var(--app-accent);color:var(--app-on-accent);font:inherit;font-size:14px;font-weight:500;line-height:1.4}app-search-tab{--mat-button-text-container-height: 48px;--mat-button-text-container-shape: 12px;--mat-button-filled-container-height: 48px}app-filter-modal .filter-modal-title{line-height:1.4}app-filter-modal .filter-modal-header button{--mat-icon-button-container-shape: 12px}.filter-autocomplete-panel{--mat-autocomplete-container-shape: 12px}.confirm-dialog-panel{--mat-dialog-container-shape: 24px;--mat-dialog-subhead-size: 20px;--mat-dialog-subhead-weight: 600;--mat-dialog-subhead-line-height: 28px;--mat-dialog-supporting-text-size: 16px;--mat-dialog-supporting-text-line-height: 24px}app-confirm-dialog{--mat-button-filled-container-shape: 12px;--mat-button-text-container-shape: 12px;--mat-button-filled-container-height: 48px;--mat-button-text-container-height: 48px}app-confirm-dialog .destructive{--mat-button-filled-container-color: var(--app-surface-raised);--mat-button-filled-label-text-color: var(--app-error);--mat-button-filled-state-layer-color: var(--app-error);--mat-button-filled-ripple-color: color-mix(in srgb, var(--app-error) 12%, transparent)}@media(prefers-reduced-motion:reduce){app-mcp-page .mcp-state .mcp-skeleton{animation:none}}::selection{color:var(--app-on-accent);background:var(--app-accent)}.toast-success,.toast-error,.toast-info{--mat-snack-bar-container-color: var(--app-surface-raised);--mat-snack-bar-supporting-text-color: var(--app-text);--mat-snack-bar-button-color: var(--app-accent);--mat-snack-bar-container-shape: 16px}.toast-error{--mat-snack-bar-supporting-text-color: var(--app-error)}.toast-info{--mat-snack-bar-container-color: var(--app-surface-raised);--mat-snack-bar-supporting-text-color: var(--app-info)}.cdk-overlay-container .mat-mdc-snack-bar-container{margin-top:calc(8px + var(--app-safe-top) + var(--app-content-safe-top))}.cdk-overlay-container{z-index:1200}.create-sheet-panel{width:100vw!important;max-width:100vw!important;bottom:max(0px,100dvh - var(--tg-viewport-stable-height, 100dvh))!important}.create-sheet-panel .mat-bottom-sheet-container{--mat-bottom-sheet-container-background-color: var(--app-surface-raised);--mat-bottom-sheet-container-text-color: var(--app-text);--mat-bottom-sheet-container-shape: 24px;box-sizing:border-box;width:100%;min-width:0;max-width:none;max-height:min(80dvh,var(--tg-viewport-stable-height, 100dvh) - var(--app-safe-top) - var(--app-content-safe-top));padding:0;border-radius:24px 24px 0 0}.create-sheet-backdrop{background-color:var(--app-scrim)!important}.mat-icon{font-family:Material Symbols Rounded!important;font-size:24px;line-height:1;letter-spacing:normal;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.startup-error{margin:0;padding:calc(var(--app-safe-top) + 48px) 24px 24px;color:var(--app-muted);text-align:center;font:500 15px/1.5 Inter,system-ui,sans-serif}.mat-icon.app-rating-icon{display:inline-flex;width:18px;height:18px;flex:0 0 18px;align-items:center;justify-content:center;color:var(--app-text);font-size:18px;line-height:18px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.app-rating-value{display:inline-flex;align-items:center;gap:4px}.mat-icon.app-error-icon{width:32px;height:32px;flex:0 0 32px;color:var(--app-error);font-size:32px;line-height:32px}.mat-icon.app-empty-icon{width:40px;height:40px;color:var(--app-muted);font-size:40px;line-height:40px}.mat-icon.app-photo-placeholder{width:20px;height:20px;color:var(--app-muted);font-size:20px;line-height:20px}.mat-icon.app-photo-placeholder.large{width:24px;height:24px;font-size:24px;line-height:24px}:is(app-tobacco-page,app-brand-page) .rating-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:16px;background:var(--app-surface)}app-brand-page .rating-pair{grid-template-columns:minmax(0,1fr)}:is(app-tobacco-page,app-brand-page) .rating-card{position:relative;display:grid;min-width:0;align-content:start;gap:4px;padding:16px;color:var(--app-text)}:is(app-tobacco-page,app-brand-page) .rating-card:first-child{border-radius:16px 0 0 16px}:is(app-tobacco-page,app-brand-page) .rating-card:last-child{border-radius:0 16px 16px 0}:is(app-tobacco-page,app-brand-page) .rating-card:only-child{border-radius:16px}:is(app-tobacco-page,app-brand-page) .rating-card+.rating-card{border-left:1px solid var(--app-line)}:is(app-tobacco-page,app-brand-page) .rating-card strong{font-size:22px;font-weight:600;line-height:1.2}:is(app-tobacco-page,app-brand-page) .rating-source{font-size:14px;line-height:1.4;overflow-wrap:anywhere}:is(app-tobacco-page,app-brand-page) .rating-link{position:absolute;inset:0;border-radius:inherit}:is(app-tobacco-page,app-brand-page) .rating-card:has(.rating-link:active){background:var(--app-surface-hover)}:is(app-tobacco-page,app-brand-page) .fact-list{margin:0;overflow:hidden;border-radius:16px;background:var(--app-surface)}:is(app-tobacco-page,app-brand-page) .fact-list>div{display:grid;box-sizing:border-box;min-height:52px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:12px 16px}:is(app-tobacco-page,app-brand-page) .fact-list>div+div{border-top:1px solid var(--app-line)}:is(app-tobacco-page,app-brand-page) .fact-list dt{color:var(--app-muted);font-size:14px;line-height:1.4}:is(app-tobacco-page,app-brand-page) .fact-list dd{margin:0;color:var(--app-text);font-size:14px;line-height:1.4;text-align:right;overflow-wrap:anywhere}app-tobacco-page .fact-list app-strength-tag{font-size:inherit;line-height:inherit}:is(app-tobacco-page,app-brand-page) .description-card p{margin:0;color:var(--app-text);font-size:16px;line-height:1.5;overflow-wrap:anywhere}@media(hover:hover){:is(app-tobacco-page,app-brand-page) .rating-card:has(.rating-link:hover){background:var(--app-surface-hover)}}app-tobacco-page .description-card p.clamped{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}app-tobacco-page .loading-state{display:grid;gap:12px;padding-top:8px}app-tobacco-page .skeleton{border-radius:16px;background:var(--app-surface);animation:pulse 1.4s ease-in-out infinite alternate}app-tobacco-page .hero-skeleton{height:96px}app-tobacco-page .facts-skeleton{height:128px}app-tobacco-page .mix-entry-actions{display:grid;gap:8px}app-tobacco-page .mix-link-row{display:flex;min-height:52px;align-items:center;gap:8px;border:0;border-radius:12px;padding:4px 12px;background:var(--app-surface);color:var(--app-muted);font:inherit;text-align:left;text-decoration:none}app-tobacco-page .mix-entry-primary{background:var(--app-accent);color:var(--app-on-accent);font-weight:600}app-tobacco-page .mix-link-row span:last-child{margin-left:auto}app-profile-page .profile-loading{display:grid;gap:12px}app-profile-page .profile-loading>div{display:grid;min-width:0;gap:12px;min-height:80px;padding:16px;border-radius:16px;background:var(--app-surface);animation:pulse 1.2s ease-in-out infinite alternate}app-profile-page .refresh-message{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-radius:12px;background:var(--app-surface-raised);color:var(--app-warning);font-size:13px;line-height:1.4}app-profile-page .refresh-message button{min-height:44px;border:0;background:transparent;color:var(--app-accent);font:inherit;font-weight:500;text-decoration:underline;text-underline-offset:3px}app-public-profile-page .public-loading>div{display:grid;min-width:0;gap:12px;min-height:80px;padding:16px;border-radius:16px;background:var(--app-surface);animation:pulse 1.2s ease-in-out infinite alternate}app-public-profile-page .refresh-message{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-radius:12px;background:var(--app-surface-raised);color:var(--app-warning);font-size:13px;line-height:1.4}app-public-profile-page .refresh-message button{min-height:44px;border:0;background:transparent;color:var(--app-accent);font:inherit;text-decoration:underline;text-underline-offset:3px}app-review-editor .editor-loading{display:grid;gap:12px}app-review-editor .skeleton{height:110px;border-radius:16px;background:var(--app-surface);animation:pulse 1.4s ease-in-out infinite alternate}app-lists-page .saved-actions mat-icon{width:20px;height:20px;font-size:20px;line-height:20px}app-lists-page .write-review{display:inline-flex;box-sizing:border-box;min-height:48px;align-items:center;gap:8px;padding:8px 12px;margin-top:4px;border:0;border-radius:12px;background:var(--app-surface-raised);color:var(--app-text);font:inherit;font-size:14px;font-weight:500;line-height:1.4}app-lists-page .write-review:active{background:var(--app-surface-hover)}@media(hover:hover){app-lists-page .write-review:hover{background:var(--app-surface-hover)}}@keyframes pulse{0%{opacity:.7}to{opacity:1}}@media(prefers-reduced-motion:reduce){app-profile-page .profile-loading>div,app-public-profile-page .public-loading>div,app-review-editor .skeleton,app-review-detail-page .skeleton,app-tobacco-page .skeleton{animation:none}}.content-page-title{margin:12px 0 16px;color:var(--app-text);font-size:24px;font-weight:600;line-height:1.3}.app-shell:has(.app-header) .content-page-title{display:none}:is(app-tobacco-page,app-review-detail-page) .list-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}:is(app-tobacco-page,app-review-detail-page) .list-actions.own-review{grid-template-columns:repeat(2,minmax(0,1fr))}:is(app-tobacco-page,app-review-detail-page) .list-action{display:flex;box-sizing:border-box;min-width:0;min-height:64px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px;border:0;border-radius:12px;background:var(--app-surface);color:var(--app-text);font:inherit;font-size:14px;font-weight:500;line-height:1.4}:is(app-tobacco-page,app-review-detail-page) .list-action span{min-width:0;max-width:100%;overflow-wrap:anywhere;text-align:center}:is(app-tobacco-page,app-review-detail-page) .list-action.selected{background:var(--app-surface-raised)}:is(app-tobacco-page,app-review-detail-page) .list-action mat-icon{color:var(--app-text);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}:is(app-tobacco-page,app-review-detail-page) .list-action.selected mat-icon,:is(app-tobacco-page,app-review-detail-page) .list-action mat-icon.filled{color:var(--app-accent);font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}:is(app-tobacco-page,app-review-detail-page) .list-action:disabled{opacity:1;color:var(--app-muted)}@media(max-width:360px){:is(app-tobacco-page,app-review-detail-page) .list-actions{gap:4px}}:is(app-tobacco-page,app-review-detail-page) .list-action:active:not(:disabled){background:var(--app-surface-hover)}@media(hover:hover){:is(app-tobacco-page,app-review-detail-page) .list-action:hover:not(:disabled){background:var(--app-surface-hover)}}app-review-detail-page .publication-card{display:grid;min-width:0;gap:8px;padding:12px 16px;border-radius:16px;background:var(--app-surface)}app-review-detail-page .publication-heading{display:flex;min-width:0;align-items:center;gap:8px;color:var(--app-text);font-size:14px;font-weight:500;line-height:1.4}app-review-detail-page .publication-heading>span{flex:1;min-width:0}app-review-detail-page .refresh-publication{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:0;border-radius:12px;background:transparent;color:var(--app-muted)}app-review-detail-page .refresh-publication:disabled{opacity:.6}app-review-detail-page .publication-reason,app-review-detail-page .muted{margin:0;color:var(--app-muted);font-size:13px;line-height:1.4}app-review-detail-page .publication-reason.warning{color:var(--app-warning)}app-review-detail-page .publication-reason span{display:block;margin-top:4px}app-review-detail-page .publish-button{width:100%;background:var(--app-surface-raised)}app-review-detail-page .loading-state{display:grid;gap:12px}app-review-detail-page .skeleton{height:100px;border-radius:16px;background:var(--app-surface);animation:pulse 1.4s ease-in-out infinite alternate}app-review-detail-page .inline-error{margin:0;color:var(--app-warning);font-size:14px;line-height:1.4}app-review-detail-page .inline-error button{min-width:44px;min-height:44px;border:0;background:transparent;color:var(--app-accent);font:inherit;font-weight:500;text-decoration:underline;text-underline-offset:3px}app-mcp-page .address-row button{display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 12px;border:1px solid var(--app-line);border-radius:12px;background:var(--app-surface-raised);color:var(--app-text);font:inherit;font-size:14px;font-weight:500;line-height:1.4}app-mcp-page .address-row button:hover{background:var(--app-surface-hover)}app-mcp-page .address-row button:active{background:var(--app-surface-hover)}app-mcp-page .revoke-all{box-sizing:border-box;min-height:48px;padding:8px 12px;font-size:14px;font-weight:500;line-height:1.4;color:var(--app-error);border:1px solid var(--app-line);border-radius:12px;background:transparent}app-mcp-page .revoke-button{grid-column:1/-1;display:inline-flex;justify-content:center;align-items:center;gap:8px;box-sizing:border-box;min-height:48px;padding:8px 12px;font-size:14px;font-weight:500;line-height:1.4;color:var(--app-error);border:1px solid var(--app-line);border-radius:12px;background:transparent}app-lists-page .empty-clear{min-height:48px;margin-top:8px;border:0;border-radius:12px;padding:8px 12px;background:var(--app-accent);color:var(--app-on-accent);font-size:14px;font-weight:500;box-sizing:border-box;line-height:1.4}app-lists-page .empty-state a{display:inline-flex;align-items:center;min-height:48px;margin-top:8px;padding:8px 12px;border:1px solid var(--app-line);border-radius:12px;background:var(--app-surface);color:var(--app-text);font-size:14px;font-weight:500;text-decoration:none;box-sizing:border-box;line-height:1.4}app-profile-page :is(.edit-profile-button,.profile-link:not(.future-link)){color:var(--app-accent);text-decoration:underline;text-underline-offset:3px}.app-arrow-link{color:var(--app-accent);text-decoration:underline;text-underline-offset:3px}app-filter-modal .filter-modal-header mat-icon{width:24px;height:24px;font-size:24px;line-height:24px;color:var(--app-muted)}app-mix-collection-page .mixes-page,app-mix-detail-page .mix-detail,app-mix-editor .mix-editor{display:grid;gap:16px;padding:4px 0 32px}app-mix-collection-page .page-heading,app-mix-detail-page .detail-heading,app-mix-editor .editor-heading,app-mix-editor .section-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:12px}app-mix-collection-page .page-heading h2,app-mix-detail-page .detail-heading h2,app-mix-editor .editor-heading h2{margin:0;color:var(--app-text);font-size:25px;line-height:1.2}app-mix-collection-page .page-heading p,app-mix-detail-page .author-line,app-mix-editor .editor-heading p,app-mix-editor .section-heading p{margin:5px 0 0;color:var(--app-muted);font-size:13px;line-height:1.45}app-mix-collection-page .create-link{display:inline-flex;min-height:44px;align-items:center;gap:5px;padding:0 12px;border-radius:12px;background:var(--app-accent);color:var(--app-on-accent);font-size:13px;font-weight:600;text-decoration:none}app-mix-collection-page .scope-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:4px;border-radius:16px;background:var(--app-surface)}app-mix-collection-page .scope-tabs button,app-mix-collection-page .sort-tabs button{min-height:44px;flex:0 0 auto;padding:7px 12px;border:0;border-radius:12px;background:transparent;color:var(--app-muted);font:inherit;font-size:13px}app-mix-collection-page .scope-tabs button.selected,app-mix-collection-page .sort-tabs button.selected{background:var(--app-surface-raised);box-shadow:inset 0 -2px 0 var(--app-accent);color:var(--app-text)}app-mix-collection-page .toolbar{display:grid;gap:8px}app-mix-collection-page .search-field{display:flex;min-height:48px;align-items:center;gap:8px;padding:0 10px 0 12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-raised);color:var(--app-muted)}app-mix-collection-page .search-field:focus-within,app-mix-editor .search-field:focus-within{border-color:var(--app-accent)}app-mix-collection-page .search-field input{width:100%;min-width:0;height:44px;border:0;outline:0;background:transparent;color:var(--app-text);font:inherit;font-size:16px}app-mix-collection-page .search-field button{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--app-muted)}app-mix-collection-page .sort-tabs button{min-height:44px;padding-block:4px;border-radius:10px;font-size:12px}app-mix-collection-page .filter-note,app-mix-collection-page .result-count{display:flex;align-items:center;gap:5px;margin:-4px 0 0;color:var(--app-muted);font-size:13px}app-mix-collection-page .mix-list{display:grid;gap:10px}app-mix-collection-page .mix-card{overflow:hidden;border:1px solid var(--app-line);border-radius:16px;background:var(--app-surface)}app-mix-collection-page .mix-card-main{display:grid;gap:11px;padding:14px;color:inherit;text-decoration:none}app-mix-collection-page .mix-card-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:8px}app-mix-collection-page .mix-card h3{overflow:hidden;margin:0;color:var(--app-text);font-size:17px;text-overflow:ellipsis;white-space:nowrap}app-mix-collection-page .mix-card-heading p{margin:3px 0 0;color:var(--app-muted);font-size:12px}app-mix-collection-page .status-pill,app-mix-detail-page .status-pill{flex:0 0 auto;padding:5px 8px;border-radius:8px;background:var(--app-surface-raised);color:var(--app-warning);font-size:11px}app-mix-collection-page .mini-scale,app-mix-detail-page .mix-scale,app-mix-editor .mix-scale{display:flex;min-height:28px;gap:2px;overflow:hidden;border-radius:10px;background:var(--app-line)}app-mix-collection-page .mini-scale span,app-mix-detail-page .mix-scale span,app-mix-editor .scale-segment{min-width:4px;background:var(--mix-component-color, var(--app-accent))}app-mix-collection-page .mix-ingredients{display:block;overflow:hidden;margin:0;color:var(--app-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}app-mix-collection-page .mix-card-actions,app-mix-detail-page .social-actions{display:flex;min-height:48px;align-items:center;gap:4px;padding:0 8px;border-top:1px solid var(--app-line);color:var(--app-muted);font-size:12px}app-mix-collection-page .mix-card-actions button,app-mix-collection-page .mix-card-actions span,app-mix-detail-page .social-actions button,app-mix-detail-page .social-actions span{display:inline-flex;min-height:40px;align-items:center;gap:4px;padding:0 8px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit}app-mix-collection-page .mix-card-actions button.active,app-mix-detail-page .social-actions button.active{color:var(--app-accent)}app-mix-collection-page .mix-card-actions button:last-child,app-mix-detail-page .follow-action{margin-left:auto}app-mix-collection-page .state-card,app-mix-collection-page .mix-loading,app-mix-detail-page .state-card,app-mix-detail-page .detail-loading{display:grid;gap:8px;padding:18px;border-radius:16px;background:var(--app-surface);color:var(--app-muted)}app-mix-collection-page .state-card p,app-mix-detail-page .state-card h2,app-mix-detail-page .state-card p{margin:0}app-mix-collection-page .secondary-button,app-mix-collection-page .load-more,app-mix-detail-page .secondary-button,app-mix-detail-page .primary-button,app-mix-detail-page .danger-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-raised);color:var(--app-text);font:inherit;text-decoration:none}app-mix-collection-page .primary-button,app-mix-detail-page .primary-button{border:0;background:var(--app-accent);color:var(--app-on-accent)}app-mix-detail-page .danger-button{border:0;background:color-mix(in srgb,var(--app-error) 15%,transparent);color:var(--app-error)}app-mix-collection-page .load-more{width:100%}app-mix-collection-page .next-error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-radius:12px;background:var(--app-surface);color:var(--app-error);font-size:13px}app-mix-detail-page .mix-detail{gap:16px}app-mix-detail-page .back-link{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:12px;background:var(--app-surface);color:var(--app-text)}app-mix-detail-page .detail-heading-copy{min-width:0;flex:1}app-mix-detail-page .detail-heading h2{overflow:hidden;text-overflow:ellipsis}app-mix-detail-page .author-line{margin:5px 0 0}app-mix-detail-page .author-line a,app-mix-detail-page .comment-meta a{color:var(--app-text);text-decoration:none}app-mix-detail-page .description{margin:0;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--app-accent) 8%,var(--app-surface));color:var(--app-text);font-size:14px;line-height:1.55;white-space:pre-wrap}app-mix-detail-page .recipe-card,app-mix-detail-page .packing-card,app-mix-detail-page .comments-section{display:grid;gap:12px;padding:14px;border-radius:16px;background:var(--app-surface)}app-mix-detail-page .versions-card{display:grid;gap:12px;padding:14px;border-radius:16px;background:var(--app-surface)}app-mix-detail-page .version-list{display:grid;gap:6px}app-mix-detail-page .version-list button{display:grid;min-height:48px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--app-border);border-radius:11px;background:transparent;color:var(--app-text);font:inherit;text-align:left}app-mix-detail-page .version-list button.selected{border-color:var(--app-accent);background:var(--app-surface-raised)}app-mix-detail-page .version-list span,app-mix-detail-page .version-list small{color:var(--app-muted);font-size:11px}app-mix-detail-page .section-heading h3{margin:0;color:var(--app-text);font-size:18px}app-mix-detail-page .mix-scale{min-height:48px}app-mix-detail-page .mix-scale span{display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--app-on-accent);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}app-mix-detail-page .component-list{display:grid;gap:2px}app-mix-detail-page .component-row{display:grid;min-width:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--app-line)}app-mix-detail-page .component-row:last-child{border-bottom:0}app-mix-detail-page .component-dot{width:10px;height:10px;border-radius:50%;background:var(--mix-component-color, var(--app-accent))}app-mix-detail-page .component-copy{display:grid;min-width:0;gap:2px}app-mix-detail-page .component-copy strong,app-mix-detail-page .component-copy small,app-mix-detail-page .component-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-mix-detail-page .component-copy strong{color:var(--app-text);font-size:14px}app-mix-detail-page .component-copy small,app-mix-detail-page .component-copy em,app-mix-detail-page .muted{color:var(--app-muted);font-size:12px;font-style:normal}app-mix-detail-page .component-copy em{color:var(--app-warning)}app-mix-detail-page .percentage{color:var(--app-text);font-variant-numeric:tabular-nums}app-mix-detail-page .packing-card p{margin:0;color:var(--app-text)}app-mix-detail-page .social-actions .follow-action{border:1px solid var(--app-border);color:var(--app-text)}app-mix-detail-page .social-actions .follow-action.active{border-color:var(--app-accent);color:var(--app-accent)}app-mix-detail-page .owner-actions{display:flex;flex-wrap:wrap;gap:8px}app-mix-detail-page .comments-section{gap:14px}app-mix-detail-page .comment-form{display:grid;gap:8px}app-mix-detail-page .comment-form textarea,app-mix-editor .field-label textarea{box-sizing:border-box;width:100%;min-height:72px;padding:10px 12px;border:1px solid var(--app-border);border-radius:12px;outline:0;resize:vertical;background:var(--app-surface-raised);color:var(--app-text);font:inherit;font-size:15px}app-mix-detail-page .comment-form .primary-button{justify-self:end}app-mix-detail-page .comment-list{display:grid;gap:12px}app-mix-detail-page .comment-row{padding-top:12px;border-top:1px solid var(--app-line)}app-mix-detail-page .comment-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:13px}app-mix-detail-page .comment-meta time{color:var(--app-muted);font-size:11px}app-mix-detail-page .comment-row p{margin:6px 0 4px;color:var(--app-text);font-size:14px;line-height:1.5;white-space:pre-wrap}app-mix-detail-page .comment-delete{min-height:32px;border:0;background:transparent;color:var(--app-error);font:inherit;font-size:12px}app-mix-editor .mix-editor{gap:10px}app-mix-editor .editor-heading h2,app-mix-editor .section-heading h3{color:var(--app-text);font-weight:600}app-mix-editor .editor-heading h2{font-size:24px}app-mix-editor .section-heading h3{margin:0;font-size:19px}app-mix-editor .close-link,app-mix-editor .icon-button{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border:0;border-radius:12px;background:var(--app-surface);color:var(--app-text);text-decoration:none}app-mix-editor .field-label{display:grid;gap:6px;color:var(--app-muted);font-size:13px}app-mix-editor .field-label input,app-mix-editor .field-label textarea{box-sizing:border-box;width:100%;border:1px solid var(--app-border);border-radius:12px;outline:0;background:var(--app-surface-raised);color:var(--app-text);font:inherit}app-mix-editor .field-label input{min-height:48px;padding:10px 12px;font-size:16px}app-mix-editor .field-label textarea{min-height:64px;padding:8px 12px}app-mix-editor .field-label em{color:var(--app-muted);font-style:normal}app-mix-editor .composition-section,app-mix-editor .packing-section{display:grid;gap:6px;min-width:0}app-mix-editor .section-heading strong{color:var(--app-text);font-size:18px}app-mix-editor .invalid-total{color:var(--app-error)!important}app-mix-editor .composition-hint{margin:-2px 0 0;color:var(--app-muted);font-size:12px;line-height:1.4}app-mix-editor .mix-scale{min-height:40px;border-radius:12px}app-mix-editor .scale-segment{border:0;color:var(--app-on-accent);font:inherit;font-size:12px;font-weight:600;transition:flex-basis .18s ease,box-shadow .18s ease}app-mix-editor .scale-segment.selected{box-shadow:inset 0 0 0 2px var(--app-text),inset 0 -3px 0 var(--app-accent)}app-mix-editor .scale-segment:focus-visible{position:relative;z-index:1;outline:2px solid var(--app-accent);outline-offset:-2px}app-mix-editor .scale-control,app-mix-editor .component-copy{display:grid;gap:4px;min-width:0}app-mix-editor .scale-control{gap:2px;padding:2px 2px 0;background:transparent;color:var(--app-muted);font-size:13px}app-mix-editor .scale-control-heading{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:12px}app-mix-editor .scale-control-heading label{min-width:0;overflow:hidden;color:var(--app-text);font-weight:500;text-overflow:ellipsis;white-space:nowrap}app-mix-editor .scale-control-heading output{flex:0 0 auto;color:var(--mix-selection-color, var(--app-accent));font-size:15px;font-variant-numeric:tabular-nums;font-weight:600}app-mix-editor .scale-control input[type=range]{width:100%;height:44px;margin:0;appearance:none;background:transparent;accent-color:var(--mix-selection-color, var(--app-accent));cursor:pointer}app-mix-editor .scale-control input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:var(--mix-selection-color, var(--app-accent))}app-mix-editor .scale-control input[type=range]::-webkit-slider-thumb{width:20px;height:20px;margin-top:-7px;appearance:none;border:2px solid var(--app-bg);border-radius:50%;background:var(--mix-selection-color, var(--app-accent));box-shadow:0 0 0 1px var(--app-border)}app-mix-editor .scale-control input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:var(--mix-selection-color, var(--app-accent))}app-mix-editor .scale-control input[type=range]::-moz-range-progress{height:6px;border-radius:999px;background:var(--mix-selection-color, var(--app-accent))}app-mix-editor .scale-control input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--app-bg);border-radius:50%;background:var(--mix-selection-color, var(--app-accent));box-shadow:0 0 0 1px var(--app-border)}app-mix-editor .scale-control input[type=range]:focus-visible{outline:2px solid var(--mix-selection-color, var(--app-accent));outline-offset:2px}app-mix-editor .component-list,app-mix-editor .search-results{display:grid;overflow:hidden;border-radius:16px;background:var(--app-surface)}app-mix-editor .component-row{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 6px;padding:4px 8px 4px 12px;border-bottom:1px solid var(--app-line)}app-mix-editor .component-row:last-child,app-mix-editor .search-results button:last-child{border-bottom:0}app-mix-editor .component-row.selected{background:var(--app-surface-raised)}app-mix-editor .component-select{display:flex;min-width:0;min-height:44px;align-items:center;gap:9px;border:0;background:transparent;color:var(--app-text);font:inherit;text-align:left}app-mix-editor .component-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:var(--mix-component-color, var(--app-accent))}app-mix-editor .component-copy strong,app-mix-editor .component-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-mix-editor .component-copy strong{font-size:14px}app-mix-editor .component-copy small{color:var(--app-muted);font-size:12px}app-mix-editor .percentage-input{display:flex;min-height:44px;align-items:center;gap:1px;padding:0 2px;border:0;border-radius:10px;color:var(--app-muted);font-size:14px;font-variant-numeric:tabular-nums}app-mix-editor .percentage-input:focus-within{outline:1px solid var(--app-border);background:var(--app-surface-raised)}app-mix-editor .percentage-input input{width:30px;padding:0;appearance:textfield;border:0;outline:0;background:transparent;color:var(--app-text);font:inherit;font-weight:600;text-align:right}app-mix-editor .percentage-input input::-webkit-inner-spin-button,app-mix-editor .percentage-input input::-webkit-outer-spin-button{margin:0;appearance:none}app-mix-editor .component-row-actions{display:flex;min-width:0;align-items:center;gap:2px}app-mix-editor .component-row-actions .icon-button{width:44px;height:44px;flex-basis:44px;border-radius:10px;background:transparent;color:var(--app-muted)}app-mix-editor .remove-button{color:var(--app-muted)}app-mix-editor .component-select:focus-visible,app-mix-editor .percentage-input:focus-within,app-mix-editor .component-row-actions button:focus-visible,app-mix-editor .packing-options button:focus-visible{outline:2px solid var(--app-accent);outline-offset:-2px}app-mix-editor .empty-composition{margin:0;padding:14px;border-radius:12px;background:var(--app-surface);color:var(--app-muted)}app-mix-editor .packing-hint{display:flex;align-items:center;gap:6px;margin:0;padding:8px 10px;border-radius:12px;background:var(--app-surface);color:var(--app-muted);font-size:12px;line-height:1.4}app-mix-editor .search-field{display:flex;min-height:48px;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-raised);color:var(--app-muted)}app-mix-editor .search-field input{width:100%;min-width:0;min-height:44px;border:0;outline:0;background:transparent;color:var(--app-text);font:inherit;font-size:16px}app-mix-editor .search-field input::placeholder{color:var(--app-muted);opacity:1}app-mix-editor .search-results button{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) 24px;grid-template-rows:auto auto;align-items:center;gap:2px 8px;padding:10px 12px;border:0;border-bottom:1px solid var(--app-line);background:transparent;color:var(--app-text);font:inherit;text-align:left}app-mix-editor .search-results button>span{grid-column:1;grid-row:1;min-width:0;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}app-mix-editor .search-results button>small{grid-column:1;grid-row:2;min-width:0;overflow:hidden;color:var(--app-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}app-mix-editor .search-results button>mat-icon{grid-column:2;grid-row:1/span 2}app-mix-editor .packing-options{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;padding:2px;border-radius:12px;background:var(--app-surface)}app-mix-editor .packing-options button{min-height:40px;flex:1 0 auto;padding:6px 9px;border:0;border-radius:10px;background:transparent;color:var(--app-muted);font:inherit;font-size:12px;white-space:nowrap}app-mix-editor .packing-options button.selected{box-shadow:inset 0 -2px 0 var(--app-accent);background:var(--app-surface-raised);color:var(--app-text)}app-mix-editor .editor-footer{display:grid;gap:8px}app-mix-editor .editor-footer p{margin:0;color:var(--app-muted);font-size:12px;line-height:1.4}app-mix-editor .draft-save-error{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;color:var(--app-error);font-size:12px;line-height:1.4}app-mix-editor .draft-save-error button{min-height:44px;padding:0 8px;border:0;border-radius:10px;background:transparent;color:var(--app-accent);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}app-mix-editor .primary-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:0;border-radius:12px;background:var(--app-accent);color:var(--app-on-accent);font:inherit;font-weight:600}app-mix-editor .primary-button:disabled{background:var(--app-surface);color:var(--app-muted);opacity:1}app-mix-editor .editor-loading,app-mix-detail-page .detail-loading{display:grid;gap:12px}app-mix-editor .editor-loading div,app-mix-detail-page .detail-loading div,app-mix-collection-page .mix-loading div{min-height:80px;border-radius:14px;background:var(--app-surface);animation:pulse 1.2s ease-in-out infinite alternate}app-mix-editor .component-row-actions button:active,app-mix-editor .packing-options button:active{background-color:var(--app-surface-hover)}@media(hover:hover){app-mix-editor .component-row-actions button:hover{background-color:var(--app-surface-hover)}}@media(prefers-reduced-motion:reduce){app-mix-editor .scale-segment,app-mix-editor .editor-loading div,app-mix-detail-page .detail-loading div,app-mix-collection-page .mix-loading div{transition:none;animation:none}}
