:root{--h-primary: 38;--s-primary: 94%;--l-primary: 50%;--color-primary: hsl(var(--h-primary), var(--s-primary), var(--l-primary));--color-primary-hover: hsl(var(--h-primary), var(--s-primary), 40%);--color-primary-active: hsl(var(--h-primary), var(--s-primary), 35%);--color-primary-soft: hsla(var(--h-primary), var(--s-primary), var(--l-primary), .1);--color-primary-glass: hsla(var(--h-primary), var(--s-primary), var(--l-primary), .15);--color-bg: #0a0a0a;--color-surface: #141414;--color-surface-raised: #1c1c1c;--color-surface-hover: #242424;--color-surface-active: #2a2a2a;--color-text: #ffffff;--color-text-secondary: #d4d4d8;--color-text-muted: #a1a1aa;--color-text-disabled: #52525b;--color-border: #27272a;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--spacing-2xs: 2px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 48px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--glass-bg: rgba(20, 20, 20, .75);--glass-bg-hover: rgba(30, 30, 30, .85);--glass-border: rgba(255, 255, 255, .08);--glass-border-light: rgba(255, 255, 255, .12);--backdrop-blur: blur(16px);--backdrop-blur-sm: blur(8px);--overlay-subtle: rgba(255, 255, 255, .02);--overlay-light: rgba(255, 255, 255, .05);--overlay-medium: rgba(255, 255, 255, .08);--overlay-strong: rgba(255, 255, 255, .12);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .2), 0 2px 4px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -2px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .2);--shadow-glow: 0 0 20px rgba(245, 158, 11, .15);--ease-spring: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--transition-base: all var(--duration-normal) var(--ease-spring);--transition-transform: transform var(--duration-normal) var(--ease-spring)}[data-theme=light]{--color-bg: #F4ECD8;--color-surface: #FBF7F0;--color-surface-raised: #FFFFFF;--color-surface-hover: #EFE7D5;--color-surface-active: #E6DCC8;--color-text: #2D2A24;--color-text-secondary: #4A463B;--color-text-muted: #736E62;--color-text-disabled: #A9A59B;--color-border: #D9D2C2;--color-primary: hsl(38, 80%, 42%);--color-primary-hover: hsl(38, 80%, 35%);--color-primary-active: hsl(38, 80%, 30%);--color-primary-soft: hsla(38, 80%, 42%, .15);--color-primary-glass: hsla(38, 80%, 42%, .2);--glass-bg: rgba(251, 247, 240, .9);--glass-bg-hover: rgba(255, 255, 255, .95);--glass-border: rgba(45, 42, 36, .1);--glass-border-light: rgba(45, 42, 36, .15);--shadow-sm: 0 1px 2px rgba(45, 42, 36, .06);--shadow-md: 0 4px 8px -1px rgba(45, 42, 36, .08), 0 2px 4px -1px rgba(45, 42, 36, .04);--shadow-lg: 0 10px 20px -3px rgba(45, 42, 36, .1), 0 4px 8px -2px rgba(45, 42, 36, .06);--shadow-xl: 0 20px 30px -5px rgba(45, 42, 36, .12), 0 10px 12px -5px rgba(45, 42, 36, .08);--shadow-glow: 0 0 24px rgba(200, 140, 40, .25);--overlay-subtle: rgba(45, 42, 36, .02);--overlay-light: rgba(45, 42, 36, .04);--overlay-medium: rgba(45, 42, 36, .06);--overlay-strong: rgba(45, 42, 36, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{color-scheme:dark}html{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%;scroll-behavior:smooth;height:100%;margin:0;padding:0}body{background-color:var(--color-bg);background-image:radial-gradient(ellipse at 100% 0%,rgba(245,158,11,.15),transparent 50%),radial-gradient(ellipse at 50% 0%,rgba(245,158,11,.06),transparent 40%),radial-gradient(circle at 0% 100%,rgba(16,185,129,.04),transparent 400px);background-attachment:fixed;color:var(--color-text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}[data-theme=light] body{background-image:radial-gradient(ellipse at 100% 0%,rgba(245,158,11,.08),transparent 50%),radial-gradient(ellipse at 50% 0%,rgba(245,158,11,.03),transparent 40%),radial-gradient(circle at 0% 100%,rgba(16,185,129,.03),transparent 400px)}img,picture,video,canvas,svg{display:block;max-width:100%;flex-shrink:0}input,button,textarea,select{font:inherit;color:inherit}button{border:none;background:none;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,.h1{font-size:2.25rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--spacing-sm)}h2,.h2{font-size:1.75rem;font-weight:700;line-height:1.2;letter-spacing:-.01em;margin-bottom:var(--spacing-sm)}h3,.h3{font-size:1.25rem;font-weight:600;line-height:1.3;margin-bottom:var(--spacing-xs)}p,.text-body{font-size:1rem;line-height:1.6;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.text-lead{font-size:1.125rem;line-height:1.5;color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--color-text-muted)}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-gradient{background:linear-gradient(135deg,var(--color-primary) 0%,#d97706 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.container-sm{max-width:800px}.grid{display:grid;gap:var(--spacing-md)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-auto{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.section{margin-bottom:var(--spacing-2xl)}.page{padding-bottom:100px}@media(max-width:640px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;border-radius:var(--radius-md);font-weight:600;transition:var(--transition-base);text-decoration:none;cursor:pointer;font-size:.9375rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#1a1005}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn-secondary{background:#ffffff0d;color:var(--color-text);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--backdrop-blur-sm);backdrop-filter:var(--backdrop-blur-sm)}.btn-secondary:hover:not(:disabled){background:#ffffff1a;border-color:var(--glass-border-light)}.btn-danger{background:#ef44441a;color:var(--color-danger);border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:#ef444433;border-color:#ef444466}.btn-sm{padding:.5rem .875rem;font-size:.8125rem;border-radius:var(--radius-sm)}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);padding:var(--spacing-xl);transition:var(--transition-base)}.input-field{width:100%;background:#0003;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:.75rem 1rem;color:var(--color-text);transition:var(--transition-base)}.input-field:focus{outline:none;border-color:var(--color-primary);background:#0000004d;box-shadow:0 0 0 3px #f59e0b26}.badge{display:inline-flex;align-items:center;padding:.25em .6em;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary);border:1px solid rgba(245,158,11,.2)}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;z-index:100;padding:1rem;pointer-events:none;display:flex;justify-content:center}.bottom-nav-inner{pointer-events:auto;display:flex;background:#141414cc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);padding:.4rem;border-radius:9999px;box-shadow:0 10px 25px -5px #00000080;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:9999px;color:var(--color-text-muted);font-weight:500;font-size:.9rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;border:none;background:transparent;pointer-events:auto}.nav-item:hover{color:var(--color-text);background:#ffffff0d}.nav-item.active{background:var(--color-text);color:#000;font-weight:600;transform:scale(1.02)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fadeIn .4s cubic-bezier(.4,0,.2,1) forwards}.animate-slide{animation:fadeIn .5s cubic-bezier(.4,0,.2,1) forwards}.cookie-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.cookie-modal{background:#1a1a1a;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:500px;width:100%;box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;gap:var(--spacing-lg)}.cookie-modal h2{font-size:1.5rem;background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0;text-align:center}.cookie-content-modal p{color:var(--color-text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:var(--spacing-md);text-align:center}.cookie-actions-modal{display:flex;flex-direction:column;gap:var(--spacing-md)}.cookie-actions-modal button{width:100%;padding:var(--spacing-md);border-radius:var(--radius-md);font-weight:600}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.animate-scale{animation:scaleUp .3s var(--ease-spring)}.timer-widget{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.timer-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm)}[data-theme=light] .btn-secondary{background:var(--overlay-light)}[data-theme=light] .btn-secondary:hover:not(:disabled){background:var(--overlay-medium)}[data-theme=light] .input-field{background:var(--color-surface)}[data-theme=light] .input-field:focus{background:var(--color-surface-raised)}[data-theme=light] .bottom-nav-inner{background:transparent;border:none}[data-theme=light] .nav-item:hover{background:var(--overlay-light)}[data-theme=light] .cookie-modal{background:var(--color-surface);border-color:var(--glass-border)}[data-theme=light] .timer-widget{background:transparent;border:1px solid rgba(6,78,59,.2);color:var(--text-main)}.type-selector{max-width:1000px;margin:0 auto;padding:var(--spacing-lg) 0}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.type-card{background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-lg);padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:var(--transition-base);height:100%}.type-card:hover{transform:translateY(-5px);border-color:var(--accent-color, var(--color-primary));box-shadow:0 10px 30px -10px #00000080;background:#ffffff0d}.type-icon{font-size:4rem;margin-bottom:var(--spacing-lg);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.type-card:hover .type-icon{transform:scale(1.1) rotate(5deg)}.type-info h3{margin:0 0 var(--spacing-sm) 0;font-size:1.5rem;color:var(--color-text);font-weight:700}.type-info p{margin:0;font-size:.95rem;color:var(--color-text-muted);line-height:1.5}@media(max-width:768px){.type-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.type-card{flex-direction:row;text-align:left;padding:var(--spacing-md);gap:var(--spacing-md);align-items:center}.type-icon{font-size:2.5rem;margin-bottom:0}.type-info{flex:1}.type-info h3{font-size:1.25rem}}[data-theme=light] .type-card{background:var(--card-bg);border:1px solid rgba(44,24,16,.15);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 10px 30px #0000000d}[data-theme=light] .type-card:hover{background:var(--color-surface-hover);border-color:var(--color-primary);transform:translateY(-5px);box-shadow:0 15px 35px #cd5c0826}[data-theme=light] .type-info h3{color:var(--text-main)}[data-theme=light] .type-info p{color:var(--text-muted)}.style-selector-modern{max-width:800px;margin:0 auto;padding:var(--spacing-md);padding-bottom:120px}.selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--glass-border)}.header-content h1{font-size:1.4rem;font-weight:800;margin:0;background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.01em}.subtitle{color:var(--color-text-muted);font-size:.85rem;margin-top:4px}.btn-back{padding:6px 14px;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition-base)}.btn-back:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translate(-2px)}.search-container{margin-bottom:var(--spacing-lg)}.search-input{width:100%;max-width:400px;padding:10px 14px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text);font-size:.95rem;transition:var(--transition-base)}.search-input:focus{outline:none;border-color:var(--color-primary);background:#ffffff0d}.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--spacing-lg)}.category-pill{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--color-text);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition-base)}.category-pill:hover{border-color:var(--cat-color);background:#ffffff1a}.pill-icon{font-size:1rem}.pill-count{padding:1px 6px;background:#ff6b001a;border-radius:4px;font-size:.75rem;font-weight:700;color:var(--color-primary)}.selected-category-header{margin-bottom:var(--spacing-md)}.btn-clear-category{padding:4px 10px;background:transparent;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.75rem;cursor:pointer;margin-bottom:8px}.btn-clear-category:hover{color:var(--color-text);border-color:var(--color-primary)}.selected-category-header h2{margin:0;font-size:1.1rem;font-weight:700;color:var(--color-text)}.styles-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.category-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.category-title{display:flex;align-items:center;gap:8px;margin:0;font-size:.9rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em}.title-icon{font-size:1.1rem}.styles-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.style-card{background:var(--color-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:12px;cursor:pointer;transition:var(--transition-base);text-align:left;position:relative;overflow:hidden}.style-card:hover{border-color:#fff3;background:#ffffff0a;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.style-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.style-name{margin:0;font-size:.95rem;font-weight:700;color:var(--color-text);line-height:1.2}.style-stats{display:flex;flex-direction:column;gap:4px;padding-top:8px;border-top:1px solid var(--glass-border)}.stat-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:6px 10px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:0}.stat-row.stat-og{background:#ffb4321f;border-color:#ffb43238}.stat-row.stat-abv{background:#b464ff1f;border-color:#b464ff38}.stat-row.stat-ibu{background:#64c8641f;border-color:#64c86438}.stat-label{font-size:.7rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;opacity:.8;flex-shrink:0}.stat-value{font-size:.75rem;font-weight:600;color:var(--color-text);white-space:nowrap;text-align:right;flex-shrink:0}.empty-state{text-align:center;padding:var(--spacing-xl) 0;color:var(--color-text-muted)}.empty-icon{font-size:2rem;margin-bottom:12px;opacity:.3}@media(max-width:600px){.style-selector-modern{padding:var(--spacing-sm)}.selector-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.styles-list{grid-template-columns:1fr}}[data-theme=light] .btn-back{background:var(--overlay-light);border-color:var(--glass-border)}[data-theme=light] .btn-back:hover{background:var(--overlay-medium);border-color:var(--color-primary)}[data-theme=light] .search-input{background:var(--color-surface);border-color:var(--glass-border)}[data-theme=light] .search-input:focus{background:var(--color-surface-raised)}[data-theme=light] .category-pill{background:var(--color-surface);border-color:var(--glass-border)}[data-theme=light] .category-pill:hover{background:var(--color-surface-hover)}[data-theme=light] .style-card{background:var(--color-surface);border-color:var(--glass-border)}[data-theme=light] .style-card:hover{background:var(--color-surface-hover);border-color:var(--color-primary);box-shadow:0 4px 12px #2d2a2426}[data-theme=light] .stat-row{border-color:var(--glass-border)}[data-theme=light] .stat-row.stat-og{background:var(--color-primary-soft);border-color:#d9770640}[data-theme=light] .stat-row.stat-abv{background:#c0392b1a;border-color:#c0392b33}[data-theme=light] .stat-row.stat-ibu{background:#8a9a5b26;border-color:#8a9a5b4d}.encyclopedia-wrapper{max-width:1400px;margin:0 auto;padding:var(--spacing-xl);padding-bottom:100px}.encyclopedia-header{text-align:center;margin-bottom:var(--spacing-xl)}.encyclopedia-header h1{font-size:2.5rem;font-weight:800;margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-text) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.encyclopedia-subtitle{color:var(--color-text-muted);font-size:1.1rem}.encyclopedia-search{max-width:600px;margin:0 auto var(--spacing-xl) auto}.encyclopedia-tabs{display:flex;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap}.tab-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);color:var(--color-text);font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.tab-button:hover{background:#ffffff14;border-color:var(--color-primary);transform:translateY(-2px)}.tab-button.active{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-color:var(--color-primary);color:#fff;box-shadow:0 4px 20px #ff6b0066}[data-theme=light] .tab-button:hover{background:var(--overlay-light)}[data-theme=light] .tab-button.active{background:linear-gradient(135deg,#b87c14,#9c6b16);color:#fff}.encyclopedia-grid{display:grid;grid-template-columns:350px 1fr;gap:var(--spacing-xl);align-items:start}.ingredients-sidebar{position:sticky;top:var(--spacing-lg)}.ingredients-sidebar h3{margin:0 0 var(--spacing-md) 0;font-size:1.1rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.ingredients-list{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-md);max-height:600px;overflow-y:auto}.ingredient-card{width:100%;padding:var(--spacing-md);background:#ffffff05;border:1px solid transparent;border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);cursor:pointer;transition:all .2s;text-align:left}.ingredient-card:hover{background:#ffffff0d;border-color:#ff6b004d;transform:translate(4px)}.ingredient-card.selected{background:linear-gradient(135deg,#ff6b0033,#ff9f4026);border-color:var(--color-primary)}.ingredient-card-name{font-weight:600;color:var(--color-text);margin-bottom:4px}.ingredient-card-category{font-size:.85rem;color:var(--color-text-muted)}.ingredient-detail-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);min-height:500px}.detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--glass-border)}.detail-header h2{margin:0;font-size:2rem;font-weight:800;background:linear-gradient(135deg,var(--color-primary),var(--color-text));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.category-badge{padding:var(--spacing-xs) var(--spacing-md);background:#ff6b0033;border:1px solid var(--color-primary);border-radius:var(--radius-md);font-size:.9rem;font-weight:600;color:var(--color-text)}.detail-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.detail-section h4{margin:0 0 var(--spacing-md) 0;font-size:1rem;color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;font-weight:700}.detail-section p{margin:0;line-height:1.8;color:var(--color-text);font-size:1rem}.specs-grid{background:#ffffff05;border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.spec-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--glass-border)}.spec-row:last-child{border-bottom:none}.spec-key{color:var(--color-text-muted);font-weight:500;text-transform:capitalize}.spec-value{color:var(--color-text);font-weight:700}.source-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--glass-border)}.source-text{font-size:.9rem;color:var(--color-text-muted);font-style:italic}.detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.empty-icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.5}.detail-empty h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.detail-empty p{margin:0;color:var(--color-text-muted)}@media(max-width:1024px){.encyclopedia-grid{grid-template-columns:1fr}.ingredients-sidebar{position:static}.ingredients-list{max-height:400px}}@media(max-width:640px){.encyclopedia-wrapper{padding:var(--spacing-md)}.encyclopedia-header h1{font-size:1.8rem}.encyclopedia-tabs{gap:var(--spacing-xs)}.tab-button{padding:var(--spacing-xs) var(--spacing-md);font-size:.9rem}.ingredient-detail-panel{padding:var(--spacing-md)}.detail-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.detail-header h2{font-size:1.5rem}}[data-theme=light] .ingredients-list{background:transparent;border:1px solid rgba(6,78,59,.2)}[data-theme=light] .ingredient-card{background:var(--card-bg);border:1px solid rgba(6,78,59,.15);color:var(--text-main);box-shadow:none}[data-theme=light] .ingredient-card-name{color:var(--text-main)}[data-theme=light] .ingredient-card-category{color:var(--text-muted)}[data-theme=light] .ingredient-card:hover{background:#064e3b0d;border-color:#064e3b4d}[data-theme=light] .ingredient-card.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 4px 15px #0000001a}[data-theme=light] .ingredient-card.selected .ingredient-card-name{color:#fff}[data-theme=light] .ingredient-card.selected .ingredient-card-category{color:#ffffffe6}[data-theme=light] .ingredient-detail-panel{background:var(--card-bg);border:1px solid rgba(44,24,16,.15);box-shadow:0 10px 40px #0000001a;-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .detail-header h2{background:none;-webkit-text-fill-color:var(--text-main);color:var(--text-main)}[data-theme=light] .detail-empty h3,[data-theme=light] .detail-section p,[data-theme=light] .spec-value,[data-theme=light] .source-text{color:var(--text-main)}[data-theme=light] .detail-empty p,[data-theme=light] .spec-key{color:var(--text-muted)}[data-theme=light] .specs-grid{background:#2c18100d}[data-theme=light] .tab-button{border-color:#2c181033;color:var(--text-main);background:#2c18100d}[data-theme=light] .tab-button:hover{background:#2c18101a}[data-theme=light] .tab-button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 4px 10px #cd5c084d}[data-theme=light] .search-input{background:var(--card-bg);border:1px solid rgba(44,24,16,.2);color:var(--text-main)}.recipe-view{max-width:900px;margin:0 auto;padding:var(--spacing-lg)}.recipe-view-header{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.header-row-center{justify-content:center}.view-toggle{display:flex;background:#ffffff0d;border-radius:var(--radius-md);padding:2px;gap:2px}.view-toggle .toggle-btn{padding:.5rem 1rem;border:none;background:transparent;color:var(--color-text-muted);font-size:.85rem;font-weight:600;cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition-base);white-space:nowrap}.view-toggle .toggle-btn.active{background:var(--color-primary);color:#000}.view-toggle .toggle-btn:not(.active):hover{background:#ffffff1a}.btn-compact{padding:.4rem .75rem;font-size:.8rem}.recipe-view-content{background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-lg)}[data-theme=light] .recipe-view-content{background:var(--card-bg);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid rgba(44,24,16,.15);color:var(--text-main)}.recipe-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--glass-border)}.recipe-header h1{font-size:2rem;font-weight:800;margin-bottom:var(--spacing-sm);background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.recipe-meta{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted);font-size:.9rem}.recipe-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-box{background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center;transition:var(--transition-base)}.stat-box:hover{background:#ffffff0d;border-color:#ffffff26}.stat-box-clickable{cursor:pointer;transition:all .2s ease}.stat-box-clickable:hover{background:#ffa5001a;border-color:var(--color-primary);transform:translateY(-2px)}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.stat-value{font-size:1.75rem;font-weight:800;color:var(--color-primary);margin-bottom:var(--spacing-xs)}.stat-range{font-size:.75rem;color:var(--color-text-muted);opacity:.7}.recipe-section{margin-bottom:var(--spacing-2xl)}.recipe-section h2{font-size:1.3rem;font-weight:700;margin-bottom:var(--spacing-md);color:var(--color-text);border-bottom:1px solid var(--glass-border);padding-bottom:var(--spacing-sm)}.ingredient-table{width:100%;border-collapse:collapse;font-size:.95rem}.ingredient-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;color:var(--color-text-muted);border-bottom:1px solid var(--glass-border)}.ingredient-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05);color:var(--color-text)}.ingredient-table tbody tr:hover{background:#ffffff05}.ingredient-table tbody tr:last-child td{border-bottom:none}.yeast-info{padding:var(--spacing-md);background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--radius-md);font-size:.95rem;color:var(--color-text)}.yeast-info strong{color:var(--color-primary)}@media(max-width:640px){.recipe-view{padding:var(--spacing-md) var(--spacing-sm)}.recipe-view-header{margin-bottom:var(--spacing-md)}.recipe-view-content{padding:var(--spacing-md)}.recipe-header h1{font-size:1.5rem}.recipe-stats-grid{grid-template-columns:repeat(2,1fr)}.ingredient-table{font-size:.85rem}.ingredient-table th,.ingredient-table td{padding:var(--spacing-sm)}}[data-theme=light] .view-toggle{background:var(--overlay-light)}[data-theme=light] .view-toggle .toggle-btn:not(.active):hover{background:var(--overlay-medium)}[data-theme=light] .stat-box{background:var(--color-surface)}[data-theme=light] .stat-box:hover{background:var(--color-surface-hover)}[data-theme=light] .stat-box-clickable:hover{background:#c8821e1a}[data-theme=light] .ingredient-table td{border-bottom:1px solid var(--glass-border)}[data-theme=light] .ingredient-table tbody tr:hover{background:var(--overlay-subtle)}[data-theme=light] .yeast-info{background:var(--color-surface)}.modal-backdrop{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--color-bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--glass-border)}.modal-header h3{margin:0;font-size:1.2rem;color:var(--color-primary)}.modal-close{background:transparent;border:none;font-size:2rem;line-height:1;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition-base)}.modal-close:hover{background:#ffffff1a;color:var(--color-text)}.modal-body{padding:var(--spacing-lg)}.animate-scale{animation:scaleIn .2s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.hidden{display:none!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.w-full{width:100%}.h-full{height:100%}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.hover\:opacity-100:hover,.group:hover .group-hover\:opacity-100{opacity:1}.cursor-pointer{cursor:pointer}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border)}.unit-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.unit-input-wrapper input{width:100%;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.6rem 2.5rem .6rem .8rem;color:var(--color-text);font-size:.9rem;box-sizing:border-box}.unit-input-wrapper input:focus{outline:none;border-color:var(--color-primary)}.unit-input-suffix{position:absolute;right:10px;color:var(--color-text-muted);font-size:.8em;pointer-events:none}@media(max-width:600px){.unit-input-wrapper{max-width:100%;min-width:0}.unit-input-wrapper input{font-size:16px;padding-right:3rem}}.recipe-builder-modern{min-height:100vh;background:var(--color-bg);padding-bottom:120px}[data-theme=light] .recipe-builder-modern{background:linear-gradient(to bottom,#064e3b1f,#064e3b26),var(--bg-dark)}[data-theme=light] .builder-header{background:var(--card-bg);border-bottom:1px solid rgba(44,24,16,.15);backdrop-filter:none;-webkit-backdrop-filter:none;position:relative;z-index:1}.builder-header{position:relative;background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid var(--glass-border);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.stats-bar-compact{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin:0 1.5rem var(--spacing-lg);position:sticky;top:80px;z-index:40;box-shadow:var(--shadow-md)}.builder-title-section h1{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0}.builder-subtitle{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.style-badge{color:var(--color-primary);background:var(--color-primary-soft);padding:.1rem .4rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.btn-builder{padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;transition:var(--transition-base)}.btn-builder-primary{background:var(--color-primary);color:#000}.btn-builder-secondary{background:#ffffff0d;color:var(--color-text);border:1px solid var(--glass-border)}.stats-bar-compact{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin:0 1.5rem var(--spacing-lg);position:sticky;top:60px;z-index:40;box-shadow:var(--shadow-md)}.stat-unit{display:flex;flex-direction:column;align-items:center;flex:1;padding:4px 8px}.stat-unit.clickable{cursor:pointer;transition:var(--transition-base);border-radius:var(--radius-sm)}.stat-unit.clickable:hover{background:#ffffff0d}.stat-unit .range{font-size:.6rem;color:var(--color-text-muted);font-weight:500;margin-top:2px}.stat-divider{width:1px;height:28px;background:var(--glass-border)}.builder-grid{max-width:1200px;margin:2rem auto;padding:0 1.5rem;display:grid;gap:2rem}.builder-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.card-header{padding:1rem 1.5rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center;background:var(--color-surface-hover)}.card-title{font-size:.9375rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.card-action-btn{font-size:.8rem;color:var(--color-primary);background:var(--color-primary-soft);padding:.25rem .5rem;border-radius:var(--radius-sm)}.form-section{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-field label{display:block;margin-bottom:.5rem;font-size:.75rem;text-transform:uppercase;color:var(--color-text-muted);font-weight:600;letter-spacing:.05em}.recipe-details-card{background:linear-gradient(135deg,#ffa50008,#0003)}.form-field-enhanced{display:flex;flex-direction:column;gap:.5rem}.form-row-enhanced{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.field-label-icon{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--color-text);margin-bottom:0}.label-icon{font-size:1.1rem;opacity:.8}.recipe-name-input-enhanced{width:100%;background:#0000004d;border:2px solid var(--glass-border);border-radius:var(--radius-md);padding:.75rem 1rem;color:var(--color-text);font-size:1rem;font-weight:500;transition:all .2s ease}.recipe-name-input-enhanced:focus{outline:none;border-color:var(--color-primary);background:#0006}.recipe-name-input-enhanced::placeholder{color:var(--color-text-muted);opacity:.6}.input-enhanced{width:100%;background:#0000004d;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.6rem .8rem;color:var(--color-text);font-size:.9rem;transition:all .2s ease}.input-enhanced:focus{outline:none;border-color:var(--color-primary);background:#0006}.field-hint{font-size:.75rem;color:var(--color-text-muted);font-style:italic;padding-left:.5rem;margin-top:-.25rem}.recipe-name-input,input[type=date],input[type=text]{width:100%;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.6rem .8rem;color:var(--color-text);font-size:.9rem}.form-field-compact{display:flex;flex-direction:column;gap:.4rem;padding:.75rem;background:#ffffff05;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.05)}.form-field-compact label{margin-bottom:0!important}.form-field-compact .quantity-control-wrapper{margin-top:0}.form-field{display:flex;flex-direction:column}.quantity-control{display:flex;align-items:stretch;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;position:relative;height:2.2rem;max-width:100%}.quantity-control input{background:transparent;border:none;width:2.8rem;text-align:center;padding:0 0 0 .5rem;font-variant-numeric:tabular-nums;color:var(--color-text);-moz-appearance:textfield;appearance:textfield;height:100%;font-weight:500}.quantity-control input::-webkit-outer-spin-button,.quantity-control input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.qty-spinners{display:flex;flex-direction:column;width:1.25rem;border-left:1px solid var(--glass-border)}.qty-btn{flex:1;display:flex;align-items:center;justify-content:center;background:#ffffff08;border:none;color:var(--color-text-secondary);transition:all .1s;font-size:.5rem;line-height:1;padding:0;cursor:pointer}.qty-btn:first-child{border-bottom:1px solid var(--glass-border)}.qty-btn:hover{background:#ffffff1a;color:var(--color-text)}.qty-btn:active{background:#fff3}.cell-unit{font-size:.8rem;color:var(--color-text-muted);font-weight:500}.cell-unit-integrated{font-size:.75rem;color:var(--color-text-muted);padding-right:.5rem;display:flex;align-items:center;background:transparent;font-weight:500;pointer-events:none}:root{--ledger-grid-layout: minmax(200px, 1fr) 140px 115px 140px 48px}.ledger-container{display:flex;flex-direction:column;border:1px solid var(--glass-border);border-radius:var(--radius-md);background:#0003;overflow:hidden}[data-theme=light] .ledger-container{background:var(--card-bg);border:1px solid rgba(44,24,16,.15);color:var(--text-main)}.ledger-row-grid{display:grid;grid-template-columns:var(--ledger-grid-layout);align-items:center}.ledger-header{background:var(--color-surface-hover);border-bottom:1px solid var(--glass-border);height:2.8rem;font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--color-text-muted)}.header-col{padding:0 1rem;height:100%;display:flex;align-items:center}.header-col:not(:last-child){border-right:1px solid var(--glass-border-light)}.header-col.center{justify-content:center;text-align:center}.header-col.right{justify-content:flex-end;text-align:right}.ledger-category-header{background:#ffffff0d;padding:.4rem 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--glass-border-light);border-top:1px solid var(--glass-border-light)}.ledger-category-header:first-child{border-top:none}.category-title{font-size:.85rem;font-weight:700;color:var(--color-primary);display:flex;align-items:center;gap:.5rem}.ledger-item{min-height:4rem;border-bottom:1px solid rgba(255,255,255,.03);transition:background .15s ease}.ledger-item:hover{background:#ffffff08}.ledger-item:last-child{border-bottom:none}.ledger-col{padding:0 .75rem;height:100%;display:flex;align-items:center}.ledger-col:not(:last-child){border-right:1px solid var(--glass-border-light)}.ledger-col.center{justify-content:center}.ledger-col.right{justify-content:flex-end}.ledger-name{font-weight:500;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ledger-meta{color:var(--color-text-muted);font-size:.85rem}.empty-state{padding:1.5rem;text-align:center;color:var(--color-text-muted);font-style:italic;background:#0000001a}.center-content{width:100%;display:flex;justify-content:center;align-items:center}.right-content{width:100%;display:flex;justify-content:flex-end;align-items:center}.cell .quantity-control{border-color:transparent;background:transparent}.cell .quantity-control:hover{border-color:var(--glass-border);background:var(--color-bg)}.mead-calculator-panel{display:flex;flex-direction:column;gap:1.5rem}.mead-calc-header h3{font-size:1.1rem;color:var(--color-primary);margin-bottom:.25rem}.mead-calc-header p{font-size:.9rem;color:var(--color-text-muted)}.mead-calc-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.range-with-value{display:flex;align-items:center;gap:1rem}.range-with-value input[type=range]{flex:1;accent-color:var(--color-primary)}.value-badge{background:var(--color-primary-soft);color:var(--color-primary);padding:.2rem .5rem;border-radius:var(--radius-sm);font-weight:700;min-width:3.5rem;text-align:center}.sweetness-toggle{display:flex;background:var(--color-bg);border-radius:var(--radius-md);padding:2px;border:1px solid var(--color-border)}.toggle-btn{flex:1;padding:.4rem;font-size:.8rem;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:all .2s}.toggle-btn.active{background:var(--color-surface-active);color:var(--color-text);font-weight:600;box-shadow:0 1px 2px #0003}.mead-calc-results{background:#f59e0b0d;border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-md);padding:1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.result-row{display:flex;flex-direction:column;align-items:center;text-align:center}.result-row span{font-size:.75rem;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.25rem}.result-row strong{font-size:1.25rem;color:var(--color-primary)}.nutrient-preview{background:var(--color-bg);padding:1rem;border-radius:var(--radius-md);border:1px dashed var(--color-border)}.nutrient-header{display:flex;align-items:center;gap:.5rem;font-weight:600;margin-bottom:.75rem;font-size:.9rem}.nutrient-steps{list-style:none;padding:0;font-size:.85rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.nutrient-steps li{display:flex;justify-content:space-between;padding-bottom:.25rem;border-bottom:1px solid var(--glass-border-light)}.step-time{color:var(--color-text-muted)}.step-amount{color:var(--color-text);font-weight:500}@media(max-width:768px){.builder-grid{padding:0 1rem;margin:1rem auto;gap:1rem}.form-row-enhanced,.mead-calc-inputs{grid-template-columns:1fr;gap:1rem}}@media(max-width:600px){.builder-header{flex-direction:column;align-items:stretch;padding:.75rem 1rem;gap:.75rem}.builder-title-section h1{font-size:1.1rem}.builder-subtitle{font-size:.8rem;flex-wrap:wrap}.builder-actions{display:flex;gap:.5rem;width:100%}.builder-actions .btn-builder{flex:1;text-align:center;padding:.6rem .75rem}.stats-bar-compact{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;margin:0 .75rem var(--spacing-md);position:sticky;top:56px;z-index:40}.stat-divider{display:none}.stat-unit{background:#ffffff08;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.05)}.stat-unit .label{font-size:.6rem}.stat-unit .value{font-size:.95rem}.stat-unit .range{font-size:.55rem}.builder-grid{padding:0 .75rem;margin:.75rem auto;gap:.75rem}.builder-card{border-radius:var(--radius-md)}.card-header{padding:.75rem 1rem}.card-title{font-size:.85rem}.form-section{padding:1rem;gap:1rem}.form-row{grid-template-columns:1fr;gap:.75rem}.recipe-details-form .form-row{grid-template-columns:1fr 1fr}.form-row-enhanced{grid-template-columns:1fr;gap:.75rem}.recipe-name-input-enhanced{font-size:1rem;padding:.65rem .85rem}:root{--ledger-grid-layout: 1fr}.ledger-header{display:none!important}.ledger-row-grid{display:block}.ledger-item{padding:.75rem;display:flex;flex-direction:column;gap:.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.ledger-item .ledger-col:nth-child(1){display:flex;justify-content:space-between;align-items:center;width:100%}.ledger-item .ledger-col:nth-child(2),.ledger-item .ledger-col:nth-child(3){display:none}.ledger-item .ledger-col:nth-child(4){width:100%}.ledger-item .ledger-col:nth-child(4) .unit-input-wrapper{width:100%}.ledger-item .ledger-col:nth-child(5){position:absolute;right:.75rem;top:.75rem}.ledger-item{position:relative;padding-right:2.5rem}.ledger-col{padding:0;border:none!important;height:auto;display:flex;align-items:center}.ledger-name{font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 2rem)}.quantity-control{height:2.2rem}.quantity-control input{width:2.8rem;font-size:.95rem}.qty-spinners{width:1.6rem}.qty-btn{font-size:.6rem}.ledger-category-header{padding:.5rem .75rem;position:sticky;top:60px;z-index:10;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.category-title{font-size:.9rem}.mead-calc-inputs{grid-template-columns:1fr;gap:1rem}.mead-calc-results{grid-template-columns:1fr;gap:.75rem;padding:.75rem}.result-row{flex-direction:row;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--glass-border-light)}.result-row:last-child{border-bottom:none}.result-row span{margin-bottom:0}.result-row strong{font-size:1.1rem}.sweetness-toggle{flex-wrap:wrap}.toggle-btn{padding:.5rem .4rem;font-size:.75rem}.nutrient-steps{grid-template-columns:1fr}.range-with-value{flex-direction:column;gap:.5rem;align-items:stretch}.range-with-value input[type=range]{width:100%}.value-badge{align-self:flex-end}.card-action-btn{padding:.4rem .6rem;font-size:.85rem}.empty-state{padding:1rem;font-size:.9rem}}@media(max-width:380px){.builder-header{padding:.5rem .75rem}.builder-title-section h1{font-size:1rem}.builder-actions{flex-direction:column;gap:.5rem}.builder-actions .btn-builder{font-size:.85rem;padding:.5rem}.ledger-item{grid-template-columns:1fr 36px;grid-template-rows:auto auto auto;grid-template-areas:"name delete" "meta meta" "amount amount";padding:.75rem;gap:.5rem}.ledger-col:nth-child(2),.ledger-col:nth-child(3){grid-area:meta;font-size:.8rem}.ledger-col:nth-child(4){grid-area:amount;justify-self:stretch}.ledger-col:nth-child(4) .quantity-control,.ledger-col:nth-child(4) .unit-input-wrapper{width:100%}.quantity-control{flex:1;min-width:0}.quantity-control input{flex:1;min-width:2rem}.card-header{padding:.5rem .75rem;flex-wrap:wrap;gap:.5rem}.card-title{font-size:.8rem}.form-section{padding:.75rem}.ledger-category-header{flex-wrap:wrap;gap:.5rem}}@media(max-width:600px){.recipe-builder-modern,.builder-grid,.builder-card,.ledger-container,.form-section{max-width:100%;overflow-x:hidden;box-sizing:border-box}input[type=text],input[type=number],input[type=date],.recipe-name-input,.recipe-name-input-enhanced,.input-enhanced{max-width:100%;box-sizing:border-box}.btn-builder,.card-action-btn,.toggle-btn,.qty-btn{min-height:44px;min-width:44px}.ledger-col.center button{min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center}}[data-theme=light] .recipe-builder-modern{background:linear-gradient(to bottom,#064e3b0d,#064e3b14),var(--bg-dark)}[data-theme=light] .builder-header{background:var(--card-bg);border-bottom:1px solid rgba(44,24,16,.15);backdrop-filter:none;-webkit-backdrop-filter:none}[data-theme=light] .builder-header h1{color:var(--text-main)}[data-theme=light] .builder-subtitle{color:var(--text-muted)}[data-theme=light] .btn-builder-secondary{color:var(--text-main);border:1px solid rgba(44,24,16,.2);background:transparent}[data-theme=light] .btn-builder-secondary:hover{background:#2c18100d}[data-theme=light] .stats-bar-compact{background:#cd5c081f;border:1px solid rgba(205,92,8,.25);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #cd5c0814}[data-theme=light] .stats-bar-compact .stat-label{color:var(--color-primary);font-weight:700;letter-spacing:.05em}[data-theme=light] .stats-bar-compact .stat-value{color:var(--text-main)}[data-theme=light] .builder-card,[data-theme=light] .ledger-container,[data-theme=light] .form-section{background:var(--card-bg);border:1px solid rgba(44,24,16,.15);color:var(--text-main);box-shadow:0 4px 20px #0000000d}[data-theme=light] .card-title{color:var(--color-primary);font-size:.9rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-bottom:2px solid rgba(205,92,8,.2);padding-bottom:.25rem;display:inline-block;margin-bottom:.5rem}[data-theme=light] .ledger-category-header{background:#cd5c080d;border-top:1px solid rgba(44,24,16,.1);border-bottom:1px solid rgba(44,24,16,.1)}[data-theme=light] .category-title{color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;font-weight:700}[data-theme=light] input,[data-theme=light] textarea,[data-theme=light] select{background:#ffffff80;border:1px solid rgba(44,24,16,.15);color:var(--text-main)}[data-theme=light] input:focus,[data-theme=light] textarea:focus,[data-theme=light] select:focus{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 2px #cd5c081a}[data-theme=light] .ledger-header{background:#064e3b0d;border-bottom:1px solid rgba(6,78,59,.1)}[data-theme=light] .quantity-control{background:#ffffff80;border:1px solid rgba(44,24,16,.15)}[data-theme=light] .quantity-control input{background:transparent}[data-theme=light] .qty-btn{color:var(--text-muted);background:transparent}[data-theme=light] .qty-btn:hover{background:#cd5c081a;color:var(--color-primary)}[data-theme=light] .ledger-row{border-bottom:1px solid rgba(44,24,16,.05)}[data-theme=light] .ledger-row:hover{background:#cd5c080d}.recipe-builder-modern{max-width:900px;margin:0 auto;padding:var(--spacing-md);padding-bottom:120px;color:var(--color-text);font-family:inherit}.builder-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.builder-title-section h1{font-size:1.4rem;font-weight:800;margin:0;background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.01em}.builder-subtitle{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted);font-size:.85rem;margin-top:4px}.style-badge{padding:2px 8px;background:var(--color-primary-soft);border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em}.builder-actions{display:flex;gap:var(--spacing-sm)}.btn-builder{padding:8px 16px;border-radius:var(--radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:var(--transition-base);border:1px solid transparent}.btn-builder-secondary{background:#ffffff0d;border-color:var(--glass-border);color:var(--color-text)}.btn-builder-secondary:hover{background:#ffffff1a;border-color:#ffffff4d}.btn-builder-primary{background:var(--color-primary);color:#fff;box-shadow:0 2px 8px #ff6b0033}.btn-builder-primary:hover{background:var(--color-secondary);transform:translateY(-1px)}.stats-bar-compact{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--glass-bg);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);position:sticky;top:60px;z-index:50;box-shadow:var(--shadow-md)}.stat-unit{display:flex;flex-direction:column;align-items:center;flex:1}.stat-unit.clickable{cursor:pointer;transition:var(--transition-base)}.stat-unit.clickable:hover{background:#ffffff0d;border-radius:var(--radius-sm)}.stat-unit .label{font-size:.65rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.stat-unit .value{font-size:1rem;font-weight:800;color:var(--color-text)}.stat-unit .range{font-size:.65rem;color:var(--color-text-muted);font-weight:500}.stat-divider{width:1px;height:24px;background:var(--glass-border);margin:0 var(--spacing-md)}.builder-grid{display:flex;flex-direction:column;gap:var(--spacing-xl)}.builder-card{background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--radius-md);overflow:hidden}.card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff08;border-bottom:1px solid var(--glass-border)}.card-title{font-size:.85rem;font-weight:800;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.form-section{padding:20px 16px;display:flex;flex-direction:column;gap:20px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.form-field input,.form-field select{padding:10px 14px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.95rem;transition:var(--transition-base)}.form-field input:focus{outline:none;border-color:var(--color-primary);background:#ffffff0d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.recipe-name-input{font-size:1.1rem!important;font-weight:700!important;border-color:var(--color-primary-soft)!important;background:#ff6b0005!important}.ledger-container{display:flex;flex-direction:column}.ledger-table-header{display:grid;grid-template-columns:1fr 100px 100px 100px;background:#ffffff0d;border-bottom:1px solid var(--glass-border);padding:8px 16px}.header-cell{font-size:.7rem;font-weight:800;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.header-cell.center{text-align:center}.header-cell.right{text-align:right}.ingredient-category{border-bottom:4px solid var(--glass-border)}.ingredient-category:last-child{border-bottom:none}.category-row-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#ff6b000d;border-bottom:1px solid var(--glass-border)}.category-label{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:800;color:var(--color-primary);text-transform:uppercase}.ingredient-row{display:grid;grid-template-columns:1fr 100px 100px 100px;padding:0;border-bottom:1px solid var(--glass-border);align-items:center}.ingredient-row:hover{background:#ffffff05}.cell{padding:8px 16px;height:100%;display:flex;align-items:center;border-right:1px solid var(--glass-border)}.cell:last-child{border-right:none}.cell-name{font-weight:600;font-size:.9rem;color:var(--color-text)}.cell-input{display:flex;align-items:center;justify-content:flex-end;gap:4px}.cell-input input{width:100%;background:transparent;border:none;color:var(--color-text);font-weight:700;font-size:.9rem;text-align:right;padding:4px;border-radius:2px}.cell-input input:focus{outline:none;background:#ff6b001a}.cell-unit{font-size:.75rem;color:var(--color-text-muted);font-weight:600;min-width:25px}.cell-meta{font-size:.85rem;font-weight:600;color:var(--color-text-muted);text-align:right;width:100%}.empty-ledger-row{padding:12px 16px;font-size:.85rem;color:var(--color-text-muted);font-style:italic;text-align:center}.btn-add-minimal{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary-soft);padding:2px 8px;font-size:.7rem;font-weight:800;border-radius:4px;text-transform:uppercase;cursor:pointer;transition:var(--transition-base)}.btn-add-minimal:hover{background:var(--color-primary-soft)}@media(max-width:768px){.recipe-builder-modern{padding:var(--spacing-sm);padding-bottom:140px}.builder-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.builder-actions{width:100%;justify-content:space-between}.builder-actions button{flex:1;justify-content:center}.stats-bar-compact{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px}.stat-divider{display:none}.stat-unit{background:#ffffff05;padding:8px;border-radius:var(--radius-sm)}.ledger-table-header{display:none}.ingredient-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px 12px;padding:16px 12px;align-items:start}.cell:nth-child(1){grid-column:1 / 2;grid-row:1 / 2;padding:0;border:none;margin-bottom:4px}.cell:nth-child(1) .cell-name{font-size:1rem}.cell:not(:nth-child(1)):not(:last-child){grid-row:2 / 3;padding:0;border:none;justify-self:start}.cell:last-child{grid-column:2 / 3;grid-row:1 / 2;padding:0;border:none;justify-self:end}.cell-input{flex-direction:row-reverse;justify-content:flex-start;background:#ffffff08;padding:4px 8px;border-radius:4px}.cell-input input{text-align:left;width:60px}.cell-meta{display:none}}.ingredient-modal{max-width:600px!important;width:90%!important}.search-container-minimal{padding:16px;background:#ffffff05;border-bottom:1px solid var(--glass-border)}.search-input-minimal{width:100%;padding:12px 16px;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text);font-size:1rem;transition:var(--transition-base)}.search-input-minimal:focus{outline:none;border-color:var(--color-primary);background:#ffffff14;box-shadow:0 0 0 4px #ff6b001a}.ingredient-selection-list{max-height:400px;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}.ingredient-selection-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-base);text-align:left;color:var(--color-text)}.ingredient-selection-item:hover{background:#ffffff08;border-color:var(--glass-border);transform:translate(4px)}.ing-info{display:flex;flex-direction:column;gap:2px}.ing-name{font-weight:700;font-size:1rem}.ing-meta{display:flex;gap:12px;font-size:.75rem;font-weight:600;color:var(--color-text-muted)}.add-icon{font-size:1.2rem;color:var(--color-primary);opacity:.5;transition:var(--transition-base)}.ingredient-selection-item:hover .add-icon{opacity:1;transform:scale(1.2)}.no-results{padding:40px;text-align:center;color:var(--color-text-muted);font-size:.9rem;font-style:italic}.ingredient-selection-list::-webkit-scrollbar{width:6px}.ingredient-selection-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.ingredient-selection-list::-webkit-scrollbar-track{background:transparent}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}.quantity-control-wrapper{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:120px}.quantity-control{display:inline-flex;align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);overflow:hidden;transition:var(--transition-base)}.quantity-control:hover,.quantity-control:focus-within{border-color:var(--glass-border);background:#ffffff0d}.qty-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;color:var(--color-text-muted);font-size:.9rem;font-weight:300;cursor:pointer;transition:var(--transition-base);-webkit-user-select:none;user-select:none;opacity:.3}.quantity-control:hover .qty-btn,.quantity-control:focus-within .qty-btn{opacity:.8}.qty-btn:hover{color:var(--color-primary);opacity:1!important}.quantity-control input{width:45px;border:none!important;background:transparent!important;text-align:center!important;padding:0!important;font-weight:700!important;color:var(--color-text);font-size:.9rem;cursor:default}.quantity-control input:focus{outline:none}.cell-unit{font-size:.75rem;color:var(--color-text-muted);font-weight:600;min-width:25px;text-align:left}.quantity-input-mobile{display:flex;align-items:center;background:#ffffff0d;border-radius:8px;overflow:hidden;border:1px solid var(--glass-border)}.qty-btn-mobile{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:none!important;color:var(--color-primary);font-size:1.2rem;font-weight:700;cursor:pointer;transition:background .2s}.qty-btn-mobile:active{background:#ff6b0033}.qty-input-mobile-field{width:60px;text-align:center!important;background:transparent!important;border:none!important;color:var(--color-text);font-weight:700;font-size:1rem;padding:0!important;appearance:textfield;-moz-appearance:textfield}.qty-input-mobile-field::-webkit-outer-spin-button,.qty-input-mobile-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}[data-theme=light] .btn-builder-secondary{background:var(--overlay-light);border-color:var(--glass-border)}[data-theme=light] .btn-builder-secondary:hover{background:var(--overlay-medium);border-color:var(--color-primary)}[data-theme=light] .btn-builder-primary{color:#fff}[data-theme=light] .stats-bar-compact{background:var(--color-surface)}[data-theme=light] .stat-unit.clickable:hover{background:var(--overlay-light)}[data-theme=light] .builder-card{background:var(--color-surface)}[data-theme=light] .card-header{background:var(--overlay-subtle)}[data-theme=light] .form-field input,[data-theme=light] .form-field select{background:var(--color-surface);border-color:var(--glass-border)}[data-theme=light] .form-field input:focus{background:var(--color-surface-raised)}[data-theme=light] .ledger-table-header{background:var(--overlay-light)}[data-theme=light] .ingredient-row:hover{background:var(--overlay-subtle)}[data-theme=light] .cell-input input:focus{background:#c8821e1a}[data-theme=light] .stat-unit,[data-theme=light] .search-container-minimal{background:var(--overlay-subtle)}[data-theme=light] .search-input-minimal{background:var(--color-surface)}[data-theme=light] .search-input-minimal:focus{background:var(--color-surface-raised)}[data-theme=light] .ingredient-selection-item:hover{background:var(--overlay-light)}[data-theme=light] .ingredient-selection-item.selected{background:var(--color-primary-soft)}[data-theme=light] .cell-input{background:var(--overlay-subtle)}[data-theme=light] .quantity-input-mobile{background:var(--color-surface)}[data-theme=light] .qty-btn-mobile:active{background:#c8821e33}.ingredient-sections{display:flex;flex-direction:column;gap:var(--spacing-md)}.load-suggestions-btn{margin-bottom:var(--spacing-sm)}.ingredient-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.ingredient-card-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;cursor:pointer;color:var(--color-text);transition:var(--transition-base)}.ingredient-card-header:hover{background:#ffffff08}.header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.header-icon{font-size:1.25rem}.header-title{font-size:1rem;font-weight:700;color:var(--color-primary)}.header-count{font-size:.85rem;color:var(--color-text-muted)}.chevron{font-size:.75rem;color:var(--color-text-muted);transition:transform .2s ease}.chevron.open{transform:rotate(180deg)}.ingredient-card-content{padding:0 var(--spacing-lg) var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.ingredient-row{display:flex;align-items:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#ffffff05;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.05)}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-weight:600}.field-name{flex:1;min-width:0}.field-small{width:70px}.field-amount{width:100px}.field-value{font-size:.95rem;color:var(--color-text);padding:.5rem 0}.name-value{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-input{width:100%;padding:.5rem;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.9rem;text-align:center}.field-input:focus{outline:none;border-color:var(--color-primary);background:#ffa5000d}.delete-btn{background:transparent;border:none;color:#ef4444;cursor:pointer;font-size:1rem;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;opacity:.6;flex-shrink:0}.delete-btn:hover{opacity:1;background:#ef44441a;transform:scale(1.1)}.add-ingredient-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px dashed var(--glass-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.9rem;cursor:pointer;transition:var(--transition-base);margin-top:var(--spacing-xs)}.add-ingredient-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#ffa5000d}.empty-message{padding:var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:.9rem;font-style:italic}@media(max-width:600px){.ingredient-card-header{padding:var(--spacing-sm) var(--spacing-md)}.ingredient-card-content{padding:0 var(--spacing-md) var(--spacing-md)}.ingredient-row{flex-wrap:wrap;padding:var(--spacing-md);gap:var(--spacing-md);position:relative;padding-right:2.5rem}.field-name{width:100%;flex:none}.field-small,.field-amount{width:calc(50% - var(--spacing-sm));flex:none}.ingredient-row .delete-btn{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm)}.header-title{font-size:.9rem}}@media(max-width:380px){.field-small,.field-amount{width:100%}.ingredient-row{gap:var(--spacing-sm)}}.recipe-list{min-height:50vh;padding-top:var(--spacing-md)}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.list-header h2{font-size:1.5rem;font-weight:700;margin:0;background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.recipe-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.recipe-card{background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-lg);padding:var(--spacing-lg);cursor:pointer;transition:var(--transition-base);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:var(--spacing-sm)}.recipe-card:hover{transform:translateY(-2px);border-color:var(--glass-border-light);box-shadow:var(--shadow-md);background:var(--glass-bg-hover)}.card-header{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:0 0 var(--spacing-sm) 0;border-bottom:1px solid var(--glass-border);margin-bottom:var(--spacing-xs);background:transparent}.recipe-style{color:var(--color-primary);font-weight:600}.recipe-name{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.3}.card-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:auto;padding-top:var(--spacing-md)}.recipe-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--overlay-light);border-radius:var(--radius-sm);font-size:.85rem}.stat-label{color:var(--color-text-muted);font-weight:500}.stat-value{color:var(--color-text);font-family:var(--font-mono);font-weight:600}.stat-og .stat-label{color:#f1c40f}.stat-fg .stat-label{color:#f39c12}.stat-abv .stat-label{color:#e74c3c}.stat-ibu .stat-label{color:#2ecc71}.btn-delete{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:#ef44441a;border:1px solid rgba(239,68,68,.1);color:var(--color-danger);opacity:.7;transition:var(--transition-base);padding:6px 12px;font-size:.75rem;font-weight:500;border-radius:var(--radius-full);z-index:100;cursor:pointer;text-transform:uppercase;letter-spacing:.05em}.btn-delete:hover{background:#ef444433;border-color:#ef444466;opacity:1!important;transform:translateY(-1px)}.recipe-card:hover .btn-delete{opacity:1}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl)!important;text-align:center}@media(max-width:640px){.recipe-cards{grid-template-columns:1fr}.list-header{margin-bottom:var(--spacing-lg)}.recipe-card{padding:var(--spacing-md);max-width:100%;box-sizing:border-box}.recipe-name{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-header{flex-wrap:wrap;gap:4px}.recipe-style{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-stats{gap:6px}.stat-row{padding:4px 8px;font-size:.8rem}.btn-delete{opacity:1!important;top:var(--spacing-sm);right:var(--spacing-sm)}}.welcome-content-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:left;line-height:1.6;color:var(--color-text-muted)}[data-theme=light] .welcome-content-card{background:var(--card-bg);border:1px solid rgba(44,24,16,.15);color:var(--text-main);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 10px 30px #0000001a}[data-theme=light] .welcome-content-card p{color:var(--text-muted)}[data-theme=light] .recipe-card{background:var(--color-surface)}[data-theme=light] .recipe-card:hover{background:var(--color-surface-hover);box-shadow:0 8px 25px #2d2a2426}[data-theme=light] .stat-row{background:var(--overlay-subtle)}[data-theme=light] .stat-ibu .stat-label{color:var(--color-sage)}[data-theme=light] .stat-og .stat-label,[data-theme=light] .stat-fg .stat-label{color:var(--color-primary)}[data-theme=light] .stat-abv .stat-label{color:#c0392b}.log-section-wrapper{background:var(--color-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);transition:all .2s ease}.log-section-wrapper.completed{background:var(--color-surface-hover);border-color:var(--color-primary-dim)}.log-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.log-section-title{margin:0;font-size:1rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-sm)}.btn-toggle-complete{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;transition:all .2s}.btn-toggle-complete:hover{background:var(--color-primary-dim)}.btn-toggle-complete.completed{border-color:var(--glass-border);color:var(--color-text-muted)}.btn-toggle-complete.completed:hover{border-color:var(--color-primary);color:var(--color-primary);background:transparent}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md)}.summary-item{display:flex;flex-direction:column}.summary-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem}.summary-value{font-size:1rem;font-weight:500;color:var(--color-text)}.summary-value.highlight{color:var(--color-primary);font-weight:600}.animate-fade-in{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.log-input{width:100%;background:#0003;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.6rem .8rem;color:var(--color-text);font-size:.9rem;transition:all .2s ease}.log-input:focus{outline:none;border-color:var(--color-primary);background:#0000004d;box-shadow:0 0 0 1px var(--color-primary-soft)}.log-input::placeholder{color:var(--color-text-muted);opacity:.6}.brew-log-container{display:flex;flex-direction:column;gap:var(--spacing-md);position:relative;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.unsaved-changes-banner{background:rgba(var(--color-warning-rgb),.1);border:1px solid var(--color-warning);color:var(--color-warning);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.log-tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid var(--glass-border);margin-bottom:var(--spacing-lg);padding-bottom:2px;overflow-x:auto}.log-tab{background:transparent;border:none;color:var(--color-text-muted);padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease;white-space:nowrap}.log-tab:hover{color:var(--color-text);background:#ffffff0d}.log-tab.active{color:var(--color-primary);background:var(--color-primary-soft);font-weight:600}.log-content{min-height:300px}.log-actions-bottom{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:100;display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);background:#141414e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--radius-full);box-shadow:var(--shadow-xl);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.log-stages{display:flex;flex-direction:column;gap:var(--spacing-lg)}.checklist-container{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.checklist-title{font-size:.9rem;color:var(--color-text-muted);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.checklist-items{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checklist-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.checklist-item:hover{background:#ffffff0f}.checklist-item.checked{background:rgba(var(--color-success-rgb),.1);border-color:rgba(var(--color-success-rgb),.3)}.checklist-checkbox{width:20px;height:20px;border:2px solid var(--color-text-muted);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--color-bg);font-size:.8rem;font-weight:700}.checklist-item.checked .checklist-checkbox{background:var(--color-success);border-color:var(--color-success)}.checklist-label{font-size:.95rem;color:var(--color-text)}.checklist-item.checked .checklist-label{text-decoration:line-through;color:var(--color-text-muted)}@media(max-width:600px){.summary-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.summary-item{flex-direction:row;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--glass-border-light)}.summary-item:last-child{border-bottom:none}.log-section-wrapper{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.log-section-header{flex-wrap:wrap;gap:var(--spacing-sm)}.log-section-title{font-size:.9rem}.log-tabs{gap:var(--spacing-xs);padding-bottom:4px;-webkit-overflow-scrolling:touch}.log-tab{padding:var(--spacing-sm);font-size:.85rem;min-height:44px}.log-actions-bottom{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm);left:var(--spacing-sm);right:var(--spacing-sm);transform:none;width:auto;max-width:calc(100% - calc(var(--spacing-sm) * 2))}.log-actions-bottom button{min-height:44px;padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.log-input{font-size:16px;padding:.75rem}.checklist-item{padding:var(--spacing-md);min-height:48px}.checklist-checkbox{width:24px;height:24px}.brew-log-container{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);padding-bottom:calc(100px + env(safe-area-inset-bottom))}.brew-log-container,.log-content,.log-section-wrapper{max-width:100%;overflow-x:hidden;box-sizing:border-box}.log-section .form-row,.log-section-wrapper .form-row,.log-stages .form-row{display:grid!important;grid-template-columns:1fr!important;gap:var(--spacing-md)}.log-section .form-field,.log-section-wrapper .form-field,.log-stages .form-field{width:100%;max-width:100%;box-sizing:border-box}.log-section input,.log-section select,.log-section textarea,.log-stages input,.log-stages select,.log-stages textarea{width:100%;max-width:100%;box-sizing:border-box;font-size:16px}.log-stages .unit-input-wrapper,.log-section .unit-input-wrapper{width:100%;max-width:100%}.log-stages .form-field>div[style*="display: flex"]{flex-wrap:nowrap;width:100%}.log-stages .form-field>div[style*="display: flex"]>.unit-input-wrapper{flex:1;min-width:0}}@media(max-width:380px){.log-section-wrapper{padding:var(--spacing-sm)}.log-section-header{flex-direction:column;align-items:flex-start}.btn-toggle-complete{width:100%;text-align:center}.log-actions-bottom{flex-direction:column;border-radius:var(--radius-lg)}.log-actions-bottom button{width:100%}}.hamburger-button{position:relative;width:40px;height:40px;background:transparent;border:none;color:var(--color-text);font-size:1.5rem;cursor:pointer;transition:var(--transition-base);display:flex;align-items:center;justify-content:center;border-radius:50%}.hamburger-button:hover{background:#ffffff1a;transform:scale(1.05)}.menu-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hamburger-menu{position:fixed;top:0;left:0;bottom:0;width:300px;background:#0f0f0ff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid rgba(255,255,255,.08);z-index:9999;display:flex;flex-direction:column;box-shadow:20px 0 50px #00000080;padding-top:var(--spacing-md);transform:translate(-100%);animation:slideIn .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.menu-header{display:flex;justify-content:flex-end;padding:var(--spacing-lg)}.menu-close{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--color-text-muted);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;transition:var(--transition-base);font-size:1rem}.menu-close:hover{background:#ffffff1a;color:var(--color-text);border-color:#fff3}.menu-items{list-style:none;padding:var(--spacing-sm);margin:0;display:flex;flex-direction:column;gap:4px}.menu-item{width:100%;display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.95rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s ease;text-decoration:none}.menu-item:hover{background:#ffffff0f;color:var(--color-text);transform:translate(4px)}.menu-item.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.bottom-nav{position:fixed;bottom:0;left:0;right:0;margin:0;display:flex;justify-content:space-around;align-items:center;background:#121218f2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -4px 20px #0000004d;padding:12px 20px;padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:99999}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.nav-item{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.2rem;color:#fff9;text-decoration:none;border-radius:999px;background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:all .2s cubic-bezier(.2,.8,.2,1);font-weight:500;font-size:.9rem}.nav-item:hover{background:#ffffff14;color:var(--color-text)}.nav-item.active{background:var(--color-primary);color:#000;font-weight:600;box-shadow:0 2px 12px #ff9d0040;transform:translateY(-1px)}@media(max-width:640px){.nav-item{padding:.5rem .8rem;font-size:.85rem;gap:.4rem}.bottom-nav{justify-content:space-between}}[data-theme=light] .bottom-nav{background:#04785766;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-top:1px solid rgba(4,120,87,.2);box-shadow:0 -4px 30px #0003}[data-theme=light] .nav-item{color:#fff;opacity:1}[data-theme=light] .nav-item:hover{background:#ffffff1a;color:#fff}[data-theme=light] .nav-item.active{background:var(--color-primary);color:#fff;box-shadow:0 4px 15px #0000004d}[data-theme=light] .hamburger-button:hover{background:#ffffff1a}[data-theme=light] .hamburger-menu{background:#04785766;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-right:1px solid rgba(4,120,87,.2);box-shadow:10px 0 40px #0000004d}[data-theme=light] .menu-close{border-color:#fff3;color:#fff}[data-theme=light] .menu-item{color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}[data-theme=light] .menu-item:hover{background:#ffffff1a;color:#fff}[data-theme=light] .menu-close{border:1px solid var(--glass-border)}[data-theme=light] .menu-close:hover,[data-theme=light] .menu-item:hover{background:var(--overlay-light)}[data-theme=light] .breadcrumb-separator{color:var(--color-text-muted)}.breadcrumbs{padding:var(--spacing-sm) var(--spacing-lg);margin:0;margin-top:var(--spacing-sm);color:var(--color-text-muted);font-size:.9rem;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.breadcrumbs::-webkit-scrollbar{display:none}.breadcrumb-list{display:flex;align-items:center;list-style:none;padding:0;margin:0;gap:.5rem}.breadcrumb-item{display:flex;align-items:center}.breadcrumb-separator{margin-right:.5rem;color:#ffffff4d;font-size:.8rem}.breadcrumb-link{background:none;border:none;color:var(--color-text-muted);padding:0;font:inherit;cursor:pointer;transition:color .15s ease;text-decoration:none}.breadcrumb-link:hover{color:var(--color-primary)}.breadcrumb-current{color:var(--color-text);font-weight:500}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--color-text);cursor:pointer;transition:var(--transition-base)}.theme-toggle:hover{background:var(--glass-bg-hover);border-color:var(--color-primary);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{transition:transform .3s ease}.theme-toggle:hover svg{transform:rotate(15deg)}.app{min-height:100vh;display:flex;flex-direction:column}[data-theme=light] .app-header{background:#04785766;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-bottom:1px solid rgba(4,120,87,.2)}[data-theme=light] .app-header h1{background:none;-webkit-text-fill-color:#fff;color:#fff}[data-theme=light] .menu-btn{color:#fff}.app-header{background:var(--glass-bg);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--glass-border);display:flex;gap:1rem;align-items:center}.app-header h1{font-size:1.5rem;font-weight:800;background:linear-gradient(to right,var(--color-primary),var(--color-text));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em;cursor:pointer;transition:var(--transition-base);flex:1;margin:0}.app-header h1:hover{opacity:.8;transform:scale(1.02)}.main-content{flex:1;padding-bottom:100px}.app-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md) 140px;color:var(--color-text-muted);font-size:.85rem;text-align:center;gap:var(--spacing-md);border-top:1px solid var(--glass-border);background:linear-gradient(to bottom,var(--color-surface),var(--color-bg))}.footer-logo{height:64px;width:64px;background-color:#fff;border-radius:50%;padding:10px;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.05)}.footer-content p{margin:0;opacity:.8}.footer-content p:first-child{font-weight:600;color:var(--color-text);margin-bottom:2px}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.auth-input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.auth-label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);margin-left:var(--spacing-xs)}.auth-input{width:100%;background:#0003;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:.875rem 1rem;color:var(--color-text);transition:var(--transition-base);font-size:1rem}.auth-input:focus{outline:none;border-color:var(--color-primary);background:#0006;box-shadow:0 0 0 2px #f59e0b1a}.auth-divider{margin:var(--spacing-xl) 0;text-align:center;position:relative;display:flex;align-items:center;justify-content:center}.auth-divider:before{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--glass-border),transparent)}.auth-divider-text{position:relative;background:var(--color-surface);padding:0 var(--spacing-md);color:var(--color-text-muted);font-size:.875rem;font-weight:500}.btn-google{width:100%;padding:var(--spacing-md);background:#fff;color:#333;border:1px solid #ddd;border-radius:var(--radius-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);transition:var(--transition-base);font-weight:600;position:relative;overflow:hidden}.btn-google:hover{background:#f8f9fa;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.btn-google:active{transform:translateY(0)}.btn-google img{width:24px;height:24px}.btn-google-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.btn-google-title{font-size:1rem}.btn-google-subtitle{font-size:.75rem;color:#666;font-weight:400}.auth-switch-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:.9rem;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:var(--transition-base);text-decoration:none}.auth-switch-btn:hover{background:var(--color-primary-soft);text-decoration:none}.auth-switch-container{margin-top:var(--spacing-lg);text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--glass-border)}.error-message{background:#ef44441a;color:var(--color-danger);padding:.75rem;border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.2);font-size:.9rem;display:flex;align-items:center;gap:.5rem}
