:root{--color-bg: #faf7f4;--color-surface: #ffffff;--color-accent: #7d4e6b;--color-accent-secondary: #c9956c;--color-text: #2c1810;--color-text-muted: #6b5a52;--color-border: #e8ddd6;--font-display: "Dancing Script", cursive;--font-heading: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-card: 0 2px 12px rgba(44, 24, 16, .08)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-heading);font-weight:800;letter-spacing:-.02em;margin:0}p{margin:0}label{display:block;font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px}select,input[type=number]{display:block;width:100%;padding:8px 12px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:14px;line-height:1.4;appearance:none;-webkit-appearance:none;outline:none;transition:border-color .15s,box-shadow .15s}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B5A52' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}select:focus,input[type=number]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #7d4e6b26}button{font-family:var(--font-body);font-size:14px;font-weight:500;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s,opacity .15s}.card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px}.app-nav[data-v-9df5b5ae]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:8px;background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100}.nav-item[data-v-9df5b5ae]{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 20px;text-decoration:none;color:var(--color-text-muted);transition:color .15s}.nav-item.router-link-active[data-v-9df5b5ae]{color:var(--color-accent)}.nav-icon[data-v-9df5b5ae]{width:22px;height:22px}.nav-label[data-v-9df5b5ae]{font-size:.65rem;font-weight:600;letter-spacing:.04em}.lang-switcher[data-v-46902140]{display:flex;gap:4px}.lang-btn[data-v-46902140]{padding:4px 10px;border-radius:var(--radius-sm);font-size:.78rem;font-weight:600;letter-spacing:.04em;background:transparent;color:var(--color-text-muted);border:1.5px solid transparent;transition:background .15s,color .15s,border-color .15s}.lang-btn[data-v-46902140]:hover{background:var(--color-border);color:var(--color-text)}.lang-btn.active[data-v-46902140]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.undo-toast[data-v-459ec764]{position:fixed;bottom:72px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--color-text);color:var(--color-bg);border-radius:var(--radius-md);font-size:.82rem;box-shadow:var(--shadow-card);z-index:70;white-space:nowrap}.toast-ring[data-v-459ec764]{flex-shrink:0}.btn-undo[data-v-459ec764]{background:none;border:1.5px solid var(--color-bg);border-radius:var(--radius-sm);color:var(--color-bg);font-size:.78rem;font-weight:600;padding:2px 10px;cursor:pointer}.btn-undo[data-v-459ec764]:hover{background:var(--color-bg);color:var(--color-text)}.app-footer[data-v-30c389d4]{display:flex;justify-content:center;align-items:center;gap:8px;padding:12px 24px 8px;margin-top:auto}.footer-link[data-v-30c389d4]{font-size:.7rem;color:var(--color-text-muted);text-decoration:none;opacity:.7}.footer-link[data-v-30c389d4]:hover{opacity:1;color:var(--color-accent)}.footer-separator[data-v-30c389d4]{font-size:.7rem;color:var(--color-text-muted);opacity:.5}.cookie-banner[data-v-5b2f90fc]{position:fixed;bottom:56px;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-border);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:60;box-shadow:var(--shadow-card)}.cookie-text[data-v-5b2f90fc]{font-size:.78rem;color:var(--color-text-muted);margin:0;flex:1}.cookie-actions[data-v-5b2f90fc]{display:flex;gap:8px;flex-shrink:0}.btn-accept[data-v-5b2f90fc],.btn-reject[data-v-5b2f90fc]{font-size:.78rem;font-weight:600;padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;border:1.5px solid transparent}.btn-accept[data-v-5b2f90fc]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn-accept[data-v-5b2f90fc]:hover{opacity:.9}.btn-reject[data-v-5b2f90fc]{background:transparent;color:var(--color-text-muted);border-color:var(--color-border)}.btn-reject[data-v-5b2f90fc]:hover{color:var(--color-text);border-color:var(--color-text-muted)}.ad-placeholder[data-v-970fc982]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 8px;text-align:center}.placeholder-text[data-v-970fc982]{font-size:.72rem;color:var(--color-text-muted);margin:0;opacity:.8}.placeholder-btn[data-v-970fc982]{font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;background:var(--color-accent);color:#fff;border:none}.placeholder-btn[data-v-970fc982]:hover{opacity:.9}.ad-layout[data-v-81efeb89]{display:flex;align-items:flex-start;justify-content:center;width:100%}.ad-sidebar[data-v-81efeb89]{width:160px;flex-shrink:0;display:none;padding-top:48px}@media(min-width:900px){.ad-sidebar[data-v-81efeb89]{display:block}}.mobile-ad-banner[data-v-dbadfe82]{position:fixed;bottom:56px;left:0;right:0;z-index:50;background:var(--color-surface);border-top:1px solid var(--color-border)}@media(min-width:900px){.mobile-ad-banner[data-v-dbadfe82]{display:none}}.app-container[data-v-16c85f80]{flex:1;min-width:0;max-width:680px;margin:0 auto;padding:48px 24px 80px;display:flex;flex-direction:column;gap:32px}.app-header[data-v-16c85f80]{text-align:center;padding-bottom:8px}.app-title[data-v-16c85f80]{font-family:var(--font-display);font-size:3.6rem;font-weight:700;line-height:1;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-subtitle[data-v-16c85f80]{font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-top:6px}.app-header[data-v-16c85f80] .lang-switcher{justify-content:center;margin-top:12px}.app-version[data-v-16c85f80]{position:fixed;bottom:60px;right:12px;font-size:.65rem;color:var(--color-text-muted);opacity:.5;pointer-events:none}.app-container.banner-visible[data-v-16c85f80]{padding-bottom:140px}@media(max-width:899px){.app-container[data-v-16c85f80]{padding:24px 16px 80px}.app-title[data-v-16c85f80]{font-size:2.2rem}.app-container.mobile-ad-visible[data-v-16c85f80]{padding-bottom:160px}}.color-picker[data-v-a9aa88ad]{display:flex;flex-direction:column;gap:12px;flex:1 1 220px;min-width:200px}.label[data-v-a9aa88ad]{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--color-text);letter-spacing:normal;text-transform:none;margin-bottom:4px}.select-row[data-v-a9aa88ad]{display:flex;align-items:center;gap:8px}.select-row select[data-v-a9aa88ad]{flex:1;width:auto}.chip[data-v-a9aa88ad]{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;font-size:.68rem;font-weight:700;flex-shrink:0;line-height:1;transition:background .2s,color .2s;box-shadow:0 1px 3px #0000002e}.chip--secondary[data-v-a9aa88ad]{background:var(--color-border);color:var(--color-text-muted)}@media(max-width:640px){.color-picker[data-v-a9aa88ad]{min-width:0;width:100%}}.weight-stepper[data-v-a04f7f03]{display:inline-flex;align-items:center;gap:6px}.stepper-field[data-v-a04f7f03]{display:inline-flex;align-items:stretch;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.stepper-field[data-v-a04f7f03]:focus-within{border-color:var(--color-accent)}.stepper-btn[data-v-a04f7f03]{padding:8px 12px;background:transparent;border:none;font-size:14px;line-height:1.4;cursor:pointer;color:var(--color-text-muted);touch-action:manipulation}.stepper-btn[data-v-a04f7f03]:hover:not(:disabled){background:#0000000a;color:var(--color-accent)}.stepper-btn[data-v-a04f7f03]:disabled{opacity:.3;cursor:default}.stepper-input[data-v-a04f7f03]{width:44px;text-align:center;border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);background:transparent;padding:8px 0;font-size:14px;font-weight:600;color:var(--color-text)}.stepper-input[data-v-a04f7f03]:focus{outline:none}.stepper-unit[data-v-a04f7f03]{font-size:.8rem;color:var(--color-text-muted);font-weight:500}.affiliate-link[data-v-98e7e6bd]{position:absolute;bottom:8px;right:8px;display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--color-text-muted);text-decoration:none}.affiliate-link[data-v-98e7e6bd]:hover{color:var(--color-accent)}.color-mixer[data-v-a3302a02]{display:flex;flex-direction:column;gap:16px}.mixer-entry[data-v-a3302a02]{position:relative;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px 20px 36px;display:flex;flex-wrap:wrap;align-items:flex-end;gap:20px}.btn-remove[data-v-a3302a02]{padding:8px 12px;line-height:1.4;font-size:14px;background:transparent;color:var(--color-text-muted);border:1.5px solid var(--color-border);flex-shrink:0}.btn-remove[data-v-a3302a02]:hover:not(:disabled){background:#fdf0ee;color:#b35a42;border-color:#e8b4a8}.btn-remove[data-v-a3302a02]:disabled{opacity:.35;cursor:default}.btn-add[data-v-a3302a02]{align-self:flex-start;padding:10px 24px;background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);letter-spacing:.04em}.btn-add[data-v-a3302a02]:hover{opacity:.88}@media(max-width:640px){.mixer-entry[data-v-a3302a02]{gap:14px}}.result-card[data-v-45318028]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden;border-top:4px solid;height:100%}.swatch[data-v-45318028]{height:64px;width:100%;transition:background .4s ease}.result-body[data-v-45318028]{padding:14px 16px 16px}.result-main[data-v-45318028]{display:flex;align-items:center;gap:16px}.result-level[data-v-45318028]{display:flex;flex-direction:column;align-items:center;line-height:1;flex-shrink:0}.result-level-number[data-v-45318028]{font-size:2.4rem;font-weight:800;letter-spacing:-.03em;transition:color .4s ease}.result-level-label[data-v-45318028]{font-size:.65rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-top:2px}.nuance-badges[data-v-45318028]{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.separator[data-v-45318028]{color:var(--color-text-muted);font-size:.8rem;align-self:center}.badge-chip[data-v-45318028]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;margin-right:6px;flex-shrink:0;box-shadow:0 1px 2px #00000026}.badge-chip[data-v-45318028]:before{content:attr(data-code);font-size:.65rem;font-weight:700;line-height:1}.badge[data-v-45318028]{display:inline-flex;align-items:center;padding:4px 12px 4px 6px;border-radius:999px;background:#f3ece8;color:var(--color-text);font-size:.8rem;font-weight:500;letter-spacing:.03em}.result-weight[data-v-45318028]{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-align:center;margin:6px 0 0;letter-spacing:.05em}.hair-base-selector[data-v-fc0b8fec]{display:flex;flex-direction:column;gap:8px}.hair-base-label[data-v-fc0b8fec]{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.hair-base-options[data-v-fc0b8fec]{display:flex;gap:16px}.hair-base-option[data-v-fc0b8fec]{display:flex;align-items:center;gap:6px;font-size:.875rem;cursor:pointer;-webkit-user-select:none;user-select:none}.hair-base-option input[type=radio][data-v-fc0b8fec]{cursor:pointer;accent-color:var(--color-accent)}.base-hair-input[data-v-0a7fe82b]{display:flex;flex-direction:column;gap:12px}.base-hair-toggle[data-v-0a7fe82b]{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.base-hair-toggle input[type=checkbox][data-v-0a7fe82b]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}.base-hair-input--active[data-v-0a7fe82b]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:16px}[data-testid=base-hair-picker][data-v-0a7fe82b]{display:flex;flex-direction:column;gap:12px}.oxidant-picker[data-v-1841c8ab]{display:flex;align-items:center;gap:8px}.oxidant-label[data-v-1841c8ab]{font-size:.8rem;font-weight:600;color:var(--color-text-muted)}.mix-ratio-picker[data-v-dc714a14]{display:flex;align-items:center;gap:8px}.mix-ratio-label[data-v-dc714a14]{font-size:.8rem;font-weight:600;color:var(--color-text-muted)}.oxidant-row[data-v-3fababc8]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.oxidant-weight[data-v-3fababc8]{font-size:.85rem;font-weight:600;color:var(--color-text-muted);white-space:nowrap}.zone-selector[data-v-d5c9aa56]{display:flex;flex-direction:column;gap:8px}.zone-label[data-v-d5c9aa56]{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.zone-options[data-v-d5c9aa56]{display:flex;gap:16px}.zone-option[data-v-d5c9aa56]{display:flex;align-items:center;gap:6px;font-size:.875rem;cursor:pointer;-webkit-user-select:none;user-select:none}.zone-option input[type=radio][data-v-d5c9aa56]{cursor:pointer;accent-color:var(--color-accent)}.grey-hair-selector[data-v-de2e2ce7]{display:flex;flex-direction:column;gap:4px}.grey-hair-label[data-v-de2e2ce7]{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.grey-hair-slider[data-v-de2e2ce7]{width:100%;cursor:pointer;accent-color:var(--color-accent)}.results-row[data-v-dc01aeae]{display:flex;gap:16px;align-items:stretch}.result-col[data-v-dc01aeae]{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px}.result-caption[data-v-dc01aeae]{font-family:var(--font-heading);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);text-align:center;margin:0}.save-row[data-v-dc01aeae]{display:flex;justify-content:flex-end;gap:8px}.btn-save-action[data-v-dc01aeae]{padding:6px 16px;font-size:.75rem;font-weight:600;letter-spacing:.05em;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.btn-save-action[data-v-dc01aeae]:hover{opacity:.88}.btn-save-action[data-v-dc01aeae]:disabled{opacity:.55;cursor:default}.messages[data-v-dc01aeae]{display:flex;flex-direction:column;gap:6px}.warning-lifting-blocked[data-v-dc01aeae],.warning-max-level[data-v-dc01aeae]{font-size:.8rem;font-weight:600;color:#bd740f;background:#bd740f14;border:1px solid hsl(35 85% 40% / .3);border-radius:var(--radius-sm);padding:8px 12px;margin:0}.recommendation-natural-tone[data-v-dc01aeae],.recommendation-more-base[data-v-dc01aeae]{font-size:.8rem;font-weight:600;color:#1b6e98;background:#1b6e9814;border:1px solid hsl(200 70% 35% / .3);border-radius:var(--radius-sm);padding:8px 12px;margin:0}.warning-coverage[data-v-dc01aeae]{font-size:.8rem;font-weight:600;color:#bd740f;background:#bd740f14;border:1px solid hsl(35 85% 40% / .3);border-radius:var(--radius-sm);padding:8px 12px;margin:0}.lifting-background[data-v-dc01aeae]{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--color-surface);border:1px solid var(--color-border, #e0d8d0);border-radius:var(--radius-sm)}.lifting-background-swatch[data-v-dc01aeae]{width:24px;height:24px;border-radius:5px;flex-shrink:0;box-shadow:0 1px 2px #00000026}.lifting-background-label[data-v-dc01aeae]{font-size:.8rem;font-weight:600;color:var(--color-text)}.neutralization-recommendation[data-v-dc01aeae]{font-size:.75rem;color:var(--color-text-muted)}.modal-backdrop[data-v-f461ab24]{position:fixed;inset:0;background:#2c181059;display:flex;align-items:center;justify-content:center;z-index:80}.modal-box[data-v-f461ab24]{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:24px 20px 20px;width:min(320px,calc(100vw - 32px));display:flex;flex-direction:column;gap:12px}.modal-title[data-v-f461ab24]{font-family:var(--font-heading);font-size:.9rem;font-weight:700;color:var(--color-text);margin:0}.modal-message[data-v-f461ab24]{font-size:.82rem;color:var(--color-text-muted);line-height:1.5;margin:0}.modal-actions[data-v-f461ab24]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.btn-cancel[data-v-f461ab24]{padding:5px 14px;font-size:.75rem;font-weight:600;background:none;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:border-color .15s}.btn-cancel[data-v-f461ab24]:hover{border-color:var(--color-text-muted)}.btn-confirm[data-v-f461ab24]{padding:5px 14px;font-size:.75rem;font-weight:600;background:var(--color-accent);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer}.btn-confirm[data-v-f461ab24]:hover{opacity:.88}.modal-enter-active[data-v-f461ab24],.modal-leave-active[data-v-f461ab24]{transition:opacity .18s ease,transform .18s ease}.modal-enter-from[data-v-f461ab24],.modal-leave-to[data-v-f461ab24]{opacity:0;transform:scale(.96)}.formula-finder[data-v-1c644fc4]{display:flex;flex-direction:column;gap:24px}.section-title[data-v-1c644fc4]{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:12px}.input-section[data-v-1c644fc4],.result-section[data-v-1c644fc4]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px}.packs-row[data-v-1c644fc4]{display:flex;gap:12px;margin-bottom:16px}.pack-card[data-v-1c644fc4]{flex:1;border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden;border-top:4px solid;background:var(--color-background)}.pack-swatch[data-v-1c644fc4]{height:56px;width:100%;transition:background .4s ease}.pack-body[data-v-1c644fc4]{position:relative;padding:12px 14px 32px}.pack-weight-label[data-v-1c644fc4]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:8px}.pack-main[data-v-1c644fc4]{display:flex;align-items:center;gap:12px}.pack-level[data-v-1c644fc4]{display:flex;flex-direction:column;align-items:center;line-height:1;flex-shrink:0}.pack-level-number[data-v-1c644fc4]{font-size:2.4rem;font-weight:800;letter-spacing:-.03em;transition:color .4s ease}.pack-level-label[data-v-1c644fc4]{font-size:.6rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-top:2px}.pack-nuances[data-v-1c644fc4]{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.nuance-badge[data-v-1c644fc4]{display:inline-flex;align-items:center;padding:4px 10px 4px 5px;border-radius:999px;background:#f3ece8;color:var(--color-text);font-size:.78rem;font-weight:500}.nuance-badge--secondary[data-v-1c644fc4]{font-size:.72rem;opacity:.85}.nuance-chip[data-v-1c644fc4]{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;font-size:.68rem;font-weight:700;flex-shrink:0;line-height:1;box-shadow:0 1px 3px #0000002e;margin-right:5px}.nuance-separator[data-v-1c644fc4]{font-size:.75rem;color:var(--color-text-muted);padding:0 2px}.params-row[data-v-1c644fc4]{display:flex;gap:12px;padding-top:14px;border-top:1px solid var(--color-border)}.param-item[data-v-1c644fc4]{flex:1;display:flex;flex-direction:column;gap:3px}.param-label[data-v-1c644fc4]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.param-value[data-v-1c644fc4]{font-size:1.4rem;font-weight:800;color:var(--color-text)}.no-result[data-v-1c644fc4]{font-size:.85rem;color:var(--color-text-muted);text-align:center;padding:24px}.pack-grams[data-v-1c644fc4]{margin-top:6px;font-size:1rem;font-weight:700;color:var(--color-text)}.load-action[data-v-1c644fc4]{display:flex;justify-content:flex-end}.btn-load-into-mixer[data-v-1c644fc4]{padding:8px 20px;font-size:.8rem;font-weight:600;letter-spacing:.05em;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.btn-load-into-mixer[data-v-1c644fc4]:hover{opacity:.88}.btn-load-into-mixer[data-v-1c644fc4]:disabled{opacity:.55;cursor:default}
