.alc-app{width:100%;max-width:56rem;margin:0 auto;padding:.5rem}.alc-card{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;overflow:clip;box-shadow:0 4px 20px #0000000f;color:#1e293b}.theme-dark .alc-card{background:#0f172a;border-color:#1e293b;color:#f1f5f9}.alc-grid{display:grid}@media(min-width:768px){.alc-grid{grid-template-columns:1fr 1fr;align-items:stretch}}.alc-inputs-panel{display:flex;flex-direction:column}@media(min-width:768px){.alc-inputs-panel{border-right:1px solid #e2e8f0}}.theme-dark .alc-inputs-panel{border-color:#1e293b}.alc-sec{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.theme-dark .alc-sec{border-color:#1e293b}.alc-sec:last-child{border-bottom:none}.alc-sex-weight{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.alc-field{display:flex;flex-direction:column;gap:.75rem}.field-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;display:flex;align-items:center;gap:.5rem}.field-label-icon{width:1rem;height:1rem}.sex-toggle{display:flex;gap:.5rem;padding:.25rem;background:#f1f5f9;border-radius:.75rem}.theme-dark .sex-toggle{background:#1e293b}.sex-btn{flex:1;padding:.75rem;border-radius:.5rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#94a3b8;background:transparent;transition:all .2s}.sex-btn:hover{color:#64748b}.sex-btn.selected{background:#fff;color:#4f46e5;box-shadow:0 1px 3px #0000001a}.theme-dark .sex-btn.selected{background:#334155;color:#818cf8}.sex-icon{width:1.5rem;height:1.5rem}.weight-input-wrap{position:relative}.weight-input{width:100%;background:#f8fafc;border:2px solid #e2e8f0;border-radius:.75rem;padding:.75rem 3rem .75rem 1rem;font-weight:700;font-size:1.125rem;outline:none;transition:border-color .2s;box-sizing:border-box}.theme-dark .weight-input{background:#0003;border-color:#334155;color:#f1f5f9}.weight-input:focus{border-color:#6366f1}.weight-unit{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#94a3b8;font-weight:700;font-size:.75rem;text-transform:uppercase}.drink-btns{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:.75rem}.drink-add-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border-radius:.75rem;border:none;cursor:pointer;background:#f1f5f9;color:#475569;transition:all .15s}.theme-dark .drink-add-btn{background:#1e293b;color:#94a3b8}.drink-add-btn:hover{background:#e0e7ff;color:#6366f1;transform:scale(1.05)}.drink-add-btn:active{transform:scale(.95)}.drink-icon{width:2rem;height:2rem}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.items-count{font-size:.75rem;font-weight:900;color:#6366f1;text-transform:uppercase}.drinks-list{max-height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.5rem}.list-empty{text-align:center;padding:2rem 0;color:#cbd5e1;display:flex;flex-direction:column;align-items:center;gap:.75rem}.theme-dark .list-empty{color:#334155}.list-empty-icon{width:2.5rem;height:2.5rem;opacity:.2}.list-empty-text{font-size:.875rem;font-weight:500}.custom-scroll::-webkit-scrollbar{width:4px}.custom-scroll::-webkit-scrollbar-track{background:transparent}.custom-scroll::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.alc-results-panel{display:flex;flex-direction:column;background:#f8fafc}.theme-dark .alc-results-panel{background:#0003}.bac-section{background:#4f46e5;color:#fff;padding:1.5rem;position:relative;overflow:hidden;flex-shrink:0}.theme-dark .bac-section{background:#4338ca}.bac-bg-icon{position:absolute;top:0;right:0;padding:1.5rem;opacity:.1}.bac-bg-icon-svg{width:5rem;height:5rem;transform:rotate(12deg)}.bac-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:1rem}.bac-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;opacity:.6}.bac-value-row{display:flex;align-items:baseline;gap:.5rem}.bac-number{font-size:3.5rem;font-weight:900;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.bac-unit{font-size:1rem;font-weight:700;opacity:.6}.time-box{display:flex;align-items:center;gap:.75rem;background:#ffffff1a;border-radius:.75rem;padding:.75rem;border:1px solid rgba(255,255,255,.1)}.time-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.time-text{font-weight:700;font-size:.875rem}.alc-advice-sec{display:flex;flex-direction:column;gap:1rem}.advice-row{display:flex;align-items:center;gap:1rem}.advice-icon{width:2.25rem;height:2.25rem;border-radius:.6rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.advice-icon-blue{background:#dbeafe;color:#3b82f6}.theme-dark .advice-icon-blue{background:#3b82f633}.advice-icon-amber{background:#fef3c7;color:#f59e0b}.theme-dark .advice-icon-amber{background:#f59e0b33}.advice-icon-svg{width:1.25rem;height:1.25rem}.advice-label{font-size:.75rem;font-weight:700;color:#94a3b8;text-transform:uppercase;margin:0 0 .2rem}.advice-value{font-size:1.125rem;font-weight:900;margin:0}.advice-value-sm{font-size:.875rem}.alc-disclaimer-sec{margin-top:auto}.disclaimer{background:#fffbeb;border-radius:.75rem;padding:.875rem;display:flex;gap:.75rem;color:#92400e;font-size:.75rem;line-height:1.6;border:1px solid #fde68a}.theme-dark .disclaimer{background:#78350f33;border-color:#78350f80;color:#f59e0b}.disclaimer-icon{width:1.5rem;height:1.5rem;flex-shrink:0}.disclaimer-text{margin:0}.beer-app{width:100%;max-width:72rem;margin:0 auto;padding:.5rem}.beer-card{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;overflow:clip;box-shadow:0 4px 20px #0000000f;color:#1e293b}.theme-dark .beer-card{background:#0f172a;border-color:#1e293b;color:#f1f5f9}.beer-grid{display:grid}@media(min-width:1024px){.beer-grid{grid-template-columns:1fr 1fr;align-items:stretch}}.beer-steps-panel{display:flex;flex-direction:column}.beer-sec{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.theme-dark .beer-sec{border-color:#1e293b}.beer-sec:last-child{border-bottom:none}.step-header{font-size:1rem;font-weight:700;display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;color:#1e293b}.theme-dark .step-header{color:#f1f5f9}.step-number{width:1.75rem;height:1.75rem;border-radius:50%;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0}.theme-dark .step-number{background:#fff;color:#0f172a}.selector-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.selector-card{width:100%;text-align:left;padding:1rem;border-radius:.75rem;border:2px solid #e2e8f0;transition:border-color .2s;position:relative;overflow:hidden;background:#f8fafc;cursor:pointer}.theme-dark .selector-card{border-color:#1e293b;background:#0c1527}.selector-card:hover{border-color:#cbd5e1}.theme-dark .selector-card:hover{border-color:#334155}.selector-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.icon-el{width:2rem;height:2rem;color:#94a3b8;transition:color .2s}.selector-card:hover .icon-el{color:#f59e0b}.selector-card[data-value=bottle]:hover .icon-el{color:#10b981}.selector-card[data-value=fridge]:hover .icon-el{color:#06b6d4}.selector-card[data-value=freezer]:hover .icon-el{color:#3b82f6}.selector-label{font-weight:700;font-size:1rem;color:#1e293b}.theme-dark .selector-label{color:#f1f5f9}.selector-sub{font-size:.7rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.theme-dark .selector-sub{color:#94a3b8}.bg-el{position:absolute;inset:0;opacity:0;transition:opacity .2s;background:#f59e0b14}.selector-card[data-value=bottle] .bg-el{background:#10b98114}.selector-card[data-value=fridge] .bg-el{background:#06b6d414}.selector-card[data-value=freezer] .bg-el{background:#3b82f614}.selector-card.selected[data-value=can]{border-color:#f59e0b}.selector-card.selected[data-value=bottle]{border-color:#10b981}.selector-card.selected[data-value=fridge]{border-color:#06b6d4}.selector-card.selected[data-value=freezer]{border-color:#3b82f6}.selector-card.selected .bg-el{opacity:1}.slider-row{margin-bottom:1.25rem}.slider-row-last{margin-bottom:0}.slider-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.slider-label{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.1em}.theme-dark .slider-label{color:#94a3b8}.temp-display{font-size:1rem;font-weight:700;background:#f1f5f9;color:#1e293b;padding:.2rem .6rem;border-radius:.4rem}.theme-dark .temp-display{background:#1e293b;color:#f1f5f9}.slider-custom{width:100%;height:.5rem;border-radius:.5rem;appearance:none;cursor:pointer;background:#e2e8f0}.theme-dark .slider-custom{background:#334155}.slider-dark{accent-color:#0f172a}.theme-dark .slider-dark{accent-color:#fff}.slider-blue{accent-color:#3b82f6}.slider-custom::-webkit-slider-thumb{-webkit-appearance:none;height:20px;width:20px;border-radius:50%;background:currentcolor;cursor:pointer;margin-top:-6px}.slider-custom::-webkit-slider-runnable-track{width:100%;height:8px;background:transparent;border-radius:4px}.beer-result-panel{background:linear-gradient(to bottom right,#eff6ff,#eef2ff);color:#1e293b;display:flex;align-items:stretch;min-height:380px}@media(min-width:1024px){.beer-result-panel{border-left:1px solid #e2e8f0}}.theme-dark .beer-result-panel{background:linear-gradient(to bottom right,#1e293b,#020617);color:#fff}@media(min-width:1024px){.theme-dark .beer-result-panel{border-left-color:#334155}}.result-inner{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;position:relative;z-index:1}.empty-state{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.empty-icon{width:4rem;height:4rem;border-radius:50%;background:#e0e7ff;display:flex;align-items:center;justify-content:center;color:#6366f1}.theme-dark .empty-icon{background:#1e293b;color:#475569}.empty-icon-svg{width:2rem;height:2rem}.empty-title{font-size:1.25rem;font-weight:700;color:#475569;margin:0}.theme-dark .empty-title{color:#64748b}.empty-desc{color:#94a3b8;margin:0;font-size:.875rem}.theme-dark .empty-desc{color:#475569}.result-content{flex-direction:column;align-items:center;width:100%;position:relative;z-index:1}.result-time-wrap{position:relative;margin-bottom:1.5rem}.result-glow{position:absolute;inset:-2rem;background:#3b82f633;border-radius:50%;filter:blur(2rem)}.result-time-num{position:relative;font-size:5rem;font-weight:900;color:#1e293b;letter-spacing:-.05em;line-height:1}.theme-dark .result-time-num{color:#fff}.result-time-unit{position:absolute;right:-1.5rem;bottom:.75rem;font-size:1.25rem;font-weight:700;color:#94a3b8}.result-labels{margin-bottom:2rem}.result-est-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#6366f1;margin:0 0 .5rem}.theme-dark .result-est-label{color:#60a5fa}.result-finish-time{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0}.theme-dark .result-finish-time{color:#fff}.result-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%;text-align:left}.result-meta-item{background:#ffffffb3;padding:.75rem;border-radius:.5rem;border:1px solid #e2e8f0}.theme-dark .result-meta-item{background:#1e293b80;border-color:#334155}.result-meta-label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;font-weight:700;margin-bottom:.25rem}.result-meta-value{color:#1e293b;font-weight:700;font-size:.875rem}.theme-dark .result-meta-value{color:#fff}.bubbles-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.carb-app{display:block;width:100%;max-width:72rem;margin:0 auto;padding:.5rem}.carb-card{background:#fff;border:1px solid #e4e4e7;border-radius:1.25rem;overflow:clip;box-shadow:0 4px 20px #0000000f;color:#18181b}.theme-dark .carb-card{background:#18181b;border-color:#27272a;color:#f4f4f5}.carb-layout{display:flex;flex-direction:column}@media(min-width:1024px){.carb-layout{flex-direction:row;align-items:stretch}}.carb-left{display:flex;flex-direction:column}@media(min-width:1024px){.carb-left{width:50%;border-right:1px solid #e4e4e7}}.theme-dark .carb-left{border-color:#27272a}.carb-sec{padding:1.5rem;border-bottom:1px solid #e4e4e7;position:relative;overflow:hidden}.theme-dark .carb-sec{border-color:#27272a}.carb-sec:last-child{border-bottom:none}.carb-params-deco{position:absolute;top:0;right:0;padding:1rem;opacity:.07;pointer-events:none}.carb-deco-icon{width:5rem;height:5rem;color:#f59e0b;transform:rotate(12deg)}.carb-params-title{font-size:1.5rem;font-weight:900;margin:0 0 1.25rem;display:flex;align-items:center;gap:.75rem}.carb-params-title-icon{background:#f59e0b;border-radius:.75rem;padding:.5rem;color:#fff;box-shadow:0 4px 12px #f59e0b4d;display:flex}.carb-title-svg{width:1.25rem;height:1.25rem}.units-toggle{display:flex;background:#f4f4f5;padding:.25rem;border-radius:.75rem;width:fit-content;margin-bottom:1.25rem}.theme-dark .units-toggle{background:#27272a}.unit-btn{padding:.4rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:700;border:none;cursor:pointer;transition:all .2s;color:#71717a;background:transparent}.theme-dark .unit-btn{color:#a1a1aa}.unit-btn:hover{color:#18181b}.theme-dark .unit-btn:hover{color:#e4e4e7}.unit-btn-active{background:#fff;color:#18181b;box-shadow:0 2px 4px #0000001a}.theme-dark .unit-btn-active{background:#3f3f46;color:#fff}.carb-inputs{display:flex;flex-direction:column;gap:1.25rem;position:relative;z-index:1}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-label{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.theme-dark .input-label{color:#a1a1aa}.input-badge{padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem}.input-badge-amber{background:#fef3c7;color:#b45309}.theme-dark .input-badge-amber{background:#f59e0b33;color:#fbbf24}.input-badge-blue{background:#dbeafe;color:#1d4ed8}.theme-dark .input-badge-blue{background:#3b82f633;color:#60a5fa}.carb-input{width:100%;background:#fafafa;border:2px solid #e4e4e7;border-radius:.75rem;padding:.875rem 1rem;font-size:1.125rem;font-weight:700;outline:none;transition:border-color .2s;box-sizing:border-box}.theme-dark .carb-input{background:#0003;border-color:#3f3f46;color:#f4f4f5}.carb-input:focus{border-color:#f59e0b}.co2-section{padding-top:1.25rem;border-top:1px dashed #e4e4e7}.theme-dark .co2-section{border-color:#3f3f46}.co2-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1rem}.co2-label{font-weight:700;font-size:.875rem;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.theme-dark .co2-label{color:#a1a1aa}.co2-value-wrap{text-align:right}.co2-value{font-size:2rem;font-weight:900;color:#f59e0b;line-height:1}.co2-unit{font-size:.75rem;font-weight:700;color:#a1a1aa;text-transform:uppercase;margin-left:.25rem}.co2-slider{width:100%;height:1rem;background:#e4e4e7;border-radius:9999px;appearance:none;cursor:pointer;accent-color:#f59e0b}.theme-dark .co2-slider{background:#3f3f46}.preset-row{display:flex;justify-content:space-between;margin-top:.75rem;padding:0 .25rem}.preset-btn{display:flex;flex-direction:column;align-items:center;background:none;border:none;cursor:pointer;opacity:.5;transition:opacity .2s;padding:0}.preset-btn:hover{opacity:1}.preset-tick{width:4px;height:10px;background:#d4d4d8;margin-bottom:.25rem}.preset-label{font-size:.75rem;font-weight:700;color:#71717a}.results-title{font-size:1.125rem;font-weight:700;margin:0 0 1.25rem;display:flex;align-items:center;gap:.75rem}.results-title-icon{width:1.25rem;height:1.25rem;color:#a1a1aa}.results-list{display:flex;flex-direction:column;gap:.75rem}.result-row{display:flex;align-items:center;justify-content:space-between;padding:.875rem;border-radius:.75rem;border:1px solid #f4f4f5}.theme-dark .result-row{border-color:#27272a}.result-row-primary{background:#fafafa;border-color:#e4e4e7}.theme-dark .result-row-primary{background:#0003;border-color:#3f3f46}.result-name{font-weight:700}.result-name-muted{font-weight:500;color:#71717a}.theme-dark .result-name-muted{color:#a1a1aa}.result-value{font-size:1.125rem;font-weight:700}.result-value-primary{font-size:1.375rem;font-weight:900;color:#4f46e5}.theme-dark .result-value-primary{color:#818cf8}.carb-right{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;background:#fafafa}@media(min-width:1024px){.carb-right{width:50%}}.theme-dark .carb-right{background:#00000026}.safety-box{width:100%;margin-bottom:1.25rem;background:#ef4444;color:#fff;padding:.75rem 1.25rem;border-radius:.75rem;box-shadow:0 4px 12px #ef44444d;display:flex;align-items:center;justify-content:center;gap:.75rem;font-weight:700;text-transform:uppercase;animation:bounce 1s infinite}.safety-icon{width:1.25rem;height:1.25rem}@keyframes calc-rise{0%{transform:translateY(100%) scale(.5);opacity:0}20%{opacity:.8}to{transform:translateY(-120%) scale(var(--s, 1));opacity:0}}.calc-b{position:absolute;background:radial-gradient(circle at 30% 30%,#fff,#fff3);border-radius:50%;animation:calc-rise linear infinite;bottom:-20px}.beer-visual-wrap{position:relative;width:240px;height:400px}.beer-glass{position:absolute;inset:0;background:linear-gradient(to bottom,#fbbf24,#d97706,#78350f);border-radius:0 0 2rem 2rem;z-index:1;clip-path:polygon(5% 0,95% 0,85% 100%,15% 100%)}.glass-bubbles{position:absolute;inset:0;opacity:.5;overflow:hidden}.glass-foam{position:absolute;top:0;width:100%;background:#fcf5e5;transition:height .5s;height:20px}.glass-shine{position:absolute;inset:0;border:4px solid rgba(255,255,255,.2);border-bottom-width:4px;border-radius:0 0 2rem 2rem;z-index:2;clip-path:polygon(0 0,100% 0,90% 100%,10% 100%)}.foam-info{margin-top:1.5rem;text-align:center}.foam-text{font-size:1.25rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;opacity:.8;margin:0 0 .5rem}.foam-hint{color:#a1a1aa;font-size:.875rem;margin:0}.balancer-app{max-width:72rem;margin:0 auto;padding:.5rem;color:#1e293b}.theme-dark .balancer-app{color:#f1f5f9}.balancer-card{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;overflow:clip;box-shadow:0 4px 20px #0000000f}.theme-dark .balancer-card{background:#0f172a;border-color:#1e293b}.balancer-header{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0}@media(min-width:768px){.balancer-header{flex-direction:row;justify-content:space-between}}.theme-dark .balancer-header{border-color:#1e293b}.balancer-title{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:.5rem;margin:0}.balancer-title-icon{color:#6366f1;font-size:1.5rem;display:flex}.balancer-version{font-size:.75rem;padding:.25rem .5rem;background:#e0e7ff;color:#4f46e5;border-radius:9999px}.theme-dark .balancer-version{background:#1e1b4b;color:#a5b4fc}.balancer-actions{display:flex;align-items:center;gap:.75rem}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#4f46e5;color:#fff;border:none;border-radius:.75rem;font-weight:700;font-size:.875rem;cursor:pointer;box-shadow:0 4px 12px #6366f14d;transition:background .2s}.btn-primary:hover{background:#4338ca}.btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f1f5f9;color:#475569;border:none;border-radius:.75rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:background .2s}.theme-dark .btn-secondary{background:#1e293b;color:#94a3b8}.btn-secondary:hover{background:#e0e7ff;color:#4f46e5}.theme-dark .btn-secondary:hover{background:#6366f133}.btn-danger{display:flex;align-items:center;gap:.5rem;padding:.5rem;color:#ef4444;background:none;border:none;border-radius:.75rem;cursor:pointer;font-weight:700;font-size:.875rem;transition:background .2s}.btn-danger:hover{background:#fef2f2}.theme-dark .btn-danger:hover{background:#ef44441a}.btn-danger-solid{background:#ef4444;color:#fff;border:none;border-radius:.75rem;font-weight:700;padding:.75rem;cursor:pointer;transition:background .2s;box-shadow:0 4px 12px #ef44444d}.btn-danger-solid:hover{background:#dc2626}.balancer-grid{display:grid;align-items:start}@media(min-width:1024px){.balancer-grid{grid-template-columns:7fr 5fr}}.recipe-column{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}@media(min-width:1024px){.recipe-column{border-right:1px solid #e2e8f0}}.theme-dark .recipe-column{border-color:#1e293b}.recipe-container{min-height:300px;display:flex;flex-direction:column;gap:1rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;border:2px dashed #e2e8f0;border-radius:1.5rem;background:#f8fafc80}.theme-dark .empty-state{border-color:#334155;background:#1e293b80}.empty-icon-wrap{width:5rem;height:5rem;background:#e0e7ff;color:#6366f1;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin-bottom:1rem}.theme-dark .empty-icon-wrap{background:#6366f133}.empty-flask-icon{width:2.5rem;height:2.5rem}.empty-title{font-size:1.125rem;font-weight:700;color:#334155;margin:0 0 .5rem}.theme-dark .empty-title{color:#e2e8f0}.empty-desc{color:#64748b;font-size:.875rem;margin:0 0 1.5rem;max-width:20rem;text-align:center}.theme-dark .empty-desc{color:#94a3b8}.btn-add-first{padding:.75rem 1.5rem;font-size:1rem}.btn-add-more{width:100%;padding:1rem;border:2px dashed #cbd5e1;border-radius:1rem;color:#64748b;background:none;cursor:pointer;font-weight:700;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.theme-dark .btn-add-more{border-color:#334155}.btn-add-more:hover{border-color:#6366f1;color:#6366f1}.add-more-icon{font-size:1.5rem}.dashboard-column{display:flex;flex-direction:column;position:sticky;top:0;background:#f8fafc}.theme-dark .dashboard-column{background:#00000026}.flavor-card{padding:1.5rem;border-bottom:1px solid #e2e8f0;position:relative;overflow:hidden}.theme-dark .flavor-card{border-color:#1e293b}.flavor-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,#6366f1,#a855f7,#ec4899)}.flavor-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.flavor-card-title{font-size:1.125rem;font-weight:700;margin:0}.abv-badge{padding:.25rem .75rem;border-radius:9999px;background:#f1f5f9;font-size:.75rem;font-weight:700;color:#64748b}.theme-dark .abv-badge{background:#1e293b}.radar-wrap{position:relative;width:100%;max-width:280px;margin:0 auto;aspect-ratio:1}.radar-svg{width:100%;height:100%;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.radar-bg-poly{stroke:#e2e8f0}.theme-dark .radar-bg-poly{stroke:#334155}.radar-shape{fill:#6366f133;stroke:#6366f1;transition:all .7s}.radar-dot{fill:#4f46e5;transition:all .7s}.radar-label{position:absolute;font-size:.625rem;text-transform:uppercase;font-weight:700;color:#94a3b8;letter-spacing:.05em;background:#f8fafc;padding:0 2px}.theme-dark .radar-label{background:transparent}.radar-top{top:0;left:50%;transform:translate(-50%) translateY(-.5rem)}.radar-right-top{top:35%;right:0;transform:translate(.5rem)}.radar-right-bot{bottom:15%;right:0;transform:translate(.5rem)}.radar-left-bot{bottom:15%;left:0;transform:translate(-.5rem)}.radar-left-top{top:35%;left:0;transform:translate(-1rem)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;gap:.75rem}.theme-dark .stats-grid{border-color:#1e293b}.stat-card{padding:.75rem;border-radius:.75rem;border:1px solid #e2e8f0;text-align:center}.theme-dark .stat-card{border-color:#1e293b}.stat-card-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;font-weight:700;margin-bottom:.25rem}.stat-card-value{font-size:1.25rem;font-weight:900;color:#334155}.theme-dark .stat-card-value{color:#e2e8f0}.stat-value-amber{color:#f59e0b}.stat-card-unit{font-size:.75rem;color:#94a3b8;font-weight:400;margin-left:.25rem}.stat-card-color{display:flex;flex-direction:column;align-items:center}.color-swatch{width:2rem;height:2rem;border-radius:50%;box-shadow:inset 0 2px 4px #0000001a;border:2px solid #f1f5f9;overflow:hidden;margin-top:.5rem}.theme-dark .color-swatch{border-color:#334155}.color-swatch-inner{width:100%;height:100%;background:transparent;transition:background-color .5s}.balance-card{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.theme-dark .balance-card{border-color:#1e293b}.balance-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.balance-card-title{font-size:.875rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.1em;margin:0}.balance-verdict{font-size:1rem;font-weight:900;color:#cbd5e1}.balance-track{position:relative;height:1rem;background:#f1f5f9;border-radius:9999px;margin:0 .5rem 2rem}.theme-dark .balance-track{background:#1e293b}.balance-zone{position:absolute;top:0;height:100%;width:30%}.balance-zone-left{left:0;background:linear-gradient(to right,#84cc1633,#84cc160d);border-radius:9999px 0 0 9999px}.balance-zone-right{right:0;background:linear-gradient(to left,#f59e0b33,#f59e0b0d);border-radius:0 9999px 9999px 0}.balance-center-line{position:absolute;left:50%;top:0;height:100%;width:4px;background:#cbd5e180;transform:translate(-50%)}.balance-needle{position:absolute;top:50%;transform:translate(-50%,-50%);width:1.5rem;height:1.5rem;background:#fff;border:4px solid #0f172a;border-radius:50%;box-shadow:0 2px 8px #0003;transition:left .5s;z-index:1}.theme-dark .balance-needle{background:#334155;border-color:#fff}.balance-labels{display:flex;justify-content:space-between;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:0 .25rem}.balance-lbl-acid{color:#65a30d}.balance-lbl-mid{color:#cbd5e1}.balance-lbl-sweet{color:#d97706}.fix-box{background:#eef2ff;padding:1.25rem 1.5rem;display:flex;gap:1rem;border-top:1px solid #e0e7ff}.theme-dark .fix-box{background:#6366f114;border-color:#6366f133}.fix-icon-wrap{width:2.5rem;height:2.5rem;border-radius:50%;background:#e0e7ff;color:#4f46e5;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.theme-dark .fix-icon-wrap{background:#6366f133;color:#818cf8}.fix-icon{width:1.5rem;height:1.5rem}.fix-title{font-weight:700;color:#1e1b4b;margin:0 0 .25rem;font-size:.875rem}.theme-dark .fix-title{color:#c7d2fe}.fix-text{font-size:.875rem;color:#1e1b4bcc;line-height:1.6;margin:0}.theme-dark .fix-text{color:#a5b4fc}.modal-dialog{margin:auto;border:none;background:transparent;padding:0;width:100%;max-width:42rem;border-radius:1.5rem;box-shadow:0 25px 50px #00000040}.modal-dialog::backdrop{background:#0f172a66;backdrop-filter:blur(4px)}.modal-dialog-wide{max-width:56rem}.modal-dialog-sm{max-width:24rem}.modal-body{background:#fff;border:1px solid #e2e8f0;border-radius:1.5rem;overflow:hidden;max-height:85vh;display:flex;flex-direction:column}.theme-dark .modal-body{background:#0f172a;border-color:#1e293b}.modal-header{padding:1.5rem;border-bottom:1px solid #f1f5f9;background:#f8fafccc;backdrop-filter:blur(4px);position:sticky;top:0;z-index:1}.theme-dark .modal-header{background:#0f172acc;border-color:#1e293b}.modal-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-header-simple{display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:1.25rem;font-weight:700;margin:0}.modal-title-with-icon{display:flex;align-items:center;gap:.5rem}.modal-title-icon{color:#6366f1;width:1.5rem;height:1.5rem}.modal-close-btn{padding:.5rem;background:none;border:none;border-radius:50%;cursor:pointer;color:#64748b;display:flex;transition:background .2s}.modal-close-btn:hover{background:#f1f5f9}.theme-dark .modal-close-btn:hover{background:#1e293b}.modal-search-wrap{position:relative}.modal-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8;width:1.25rem;height:1.25rem}.modal-search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:.75rem;outline:none;transition:border-color .2s;box-sizing:border-box}.theme-dark .modal-search-input{background:#1e293b;border-color:#334155;color:#f1f5f9}.modal-search-input:focus{border-color:#6366f1}.modal-scroll{flex:1;overflow-y:auto;padding:1rem}.modal-scroll-bg{background:#f8fafc}.theme-dark .modal-scroll-bg{background:#0000001a}.ing-grid{display:grid;gap:.75rem}@media(min-width:640px){.ing-grid{grid-template-columns:1fr 1fr}}.ing-select-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8fafc;border:1px solid transparent;border-radius:.75rem;cursor:pointer;text-align:left;transition:all .15s}.theme-dark .ing-select-btn{background:#1e293b80}.ing-select-btn:hover{background:#eef2ff;border-color:#c7d2fe}.theme-dark .ing-select-btn:hover{background:#6366f11a;border-color:#6366f166}.ing-icon-wrap{width:2.5rem;height:2.5rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;box-shadow:0 1px 3px #0000001a}.ing-icon-spirit{background:#e0e7ff;color:#4f46e5}.ing-icon-citrus{background:#ecfccb;color:#65a30d}.ing-icon-syrup{background:#fef3c7;color:#d97706}.ing-icon-other{background:#f1f5f9;color:#475569}.ing-info{display:flex;flex-direction:column}.ing-name{font-weight:700;color:#334155;font-size:.875rem}.theme-dark .ing-name{color:#e2e8f0}.ing-select-btn:hover .ing-name{color:#4f46e5}.theme-dark .ing-select-btn:hover .ing-name{color:#818cf8}.ing-meta{font-size:.625rem;color:#94a3b8;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-top:.125rem}.presets-grid{display:grid;gap:1rem;margin-bottom:2rem}@media(min-width:768px){.presets-grid{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.presets-grid{grid-template-columns:repeat(3,1fr)}}.preset-load-btn{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;text-align:left;cursor:pointer;transition:all .15s;box-shadow:0 1px 3px #0000000d}.theme-dark .preset-load-btn{background:#1e293b;border-color:#334155}.preset-load-btn:hover{border-color:#6366f1;box-shadow:0 4px 12px #0000001a}.preset-icon-row{display:flex;align-items:center;gap:.5rem;color:#6366f1;margin-bottom:.25rem}.preset-icon{width:1.25rem;height:1.25rem}.preset-name{font-weight:700;color:#0f172a;font-size:.875rem}.theme-dark .preset-name{color:#fff}.preset-desc{font-size:.75rem;color:#64748b;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.section-heading{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#94a3b8;letter-spacing:.1em;margin:0 0 1rem}.saved-section{margin-bottom:2rem}.confirm-body{background:#fff;border:1px solid #e2e8f0;border-radius:1.5rem;padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.theme-dark .confirm-body{background:#0f172a;border-color:#1e293b}.confirm-icon-wrap{width:4rem;height:4rem;border-radius:50%;background:#fef2f2;color:#ef4444;display:flex;align-items:center;justify-content:center;font-size:1.875rem;margin-bottom:.5rem}.theme-dark .confirm-icon-wrap{background:#ef444433}.confirm-icon{width:2.5rem;height:2.5rem}.confirm-title{font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.confirm-text{color:#64748b;font-size:.875rem;margin:0}.theme-dark .confirm-text{color:#94a3b8}.confirm-actions{display:flex;gap:.75rem;width:100%;margin-top:.5rem}.btn-confirm{flex:1;padding:.75rem}.recipe-row{background:#fff;border-radius:1rem;padding:1rem;box-shadow:0 1px 3px #0000000d;border:1px solid #f1f5f9}.theme-dark .recipe-row{background:#0f172a;border-color:#1e293b}.recipe-row-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.recipe-row-info{display:flex;align-items:center;gap:.75rem}.recipe-row-name{font-weight:700;color:#334155}.theme-dark .recipe-row-name{color:#e2e8f0}.recipe-row-type{font-size:.625rem;background:#f1f5f9;padding:.125rem .5rem;border-radius:.25rem;color:#64748b;font-weight:700;text-transform:uppercase}.theme-dark .recipe-row-type{background:#1e293b}.recipe-row-del{opacity:0;transition:opacity .2s}.recipe-row:hover .recipe-row-del{opacity:1}.recipe-row-controls{display:flex;align-items:center;gap:1rem}.recipe-range{flex:1;height:.5rem;border-radius:.5rem;appearance:none;cursor:pointer;accent-color:#4f46e5;background:#e2e8f0}.theme-dark .recipe-range{background:#334155}.recipe-number-wrap{position:relative;width:5rem}.recipe-number{width:100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.25rem .5rem;text-align:right;font-weight:700;color:#334155;font-size:.875rem;box-sizing:border-box}.theme-dark .recipe-number{background:#1e293b;border-color:#334155;color:#e2e8f0}.text-indigo-400{color:#818cf8}.text-amber-400{color:#fbbf24}.text-red-500{color:#ef4444}.text-lime-400{color:#a3e635}.text-emerald-400{color:#34d399}.text-yellow-400{color:#facc15}.party-app{width:100%;max-width:72rem;margin:0 auto;padding:.25rem;user-select:none;color:#1e293b}.party-card{position:relative;border-radius:1.5rem;overflow:hidden;background:#ffffffe6;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.4);box-shadow:0 10px 30px #0000001a}.theme-dark .party-card{background:#0f172ae6;border-color:#ffffff1a}.party-deco{position:absolute;width:24rem;height:24rem;border-radius:50%;pointer-events:none;filter:blur(3rem)}.party-deco-top{top:0;right:0;transform:translate(50%,-50%);background:#fbbf244d}.party-deco-bottom{bottom:0;left:0;transform:translate(-50%,50%);background:#22d3ee4d}.party-grid{display:grid;position:relative;z-index:1}@media(min-width:1280px){.party-grid{grid-template-columns:5fr 7fr}}.party-inputs{padding:2rem 2.5rem;display:flex;flex-direction:column;gap:2.5rem;background:#fff6}@media(min-width:1280px){.party-inputs{border-right:1px solid #e2e8f0}}.theme-dark .party-inputs{background:#ffffff08;border-color:#1e293b}.calc-header{display:flex;align-items:center;gap:.75rem}.calc-header-icon{width:2.5rem;height:2.5rem;border-radius:50%;flex-shrink:0;background:linear-gradient(to bottom right,#fbbf24,#f97316);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #fbbf244d;color:#fff}.calc-header-icon-svg{width:1.5rem;height:1.5rem}.calc-title{font-weight:700;font-size:1.25rem;margin:0;line-height:1;color:#1e293b}.theme-dark .calc-title{color:#f1f5f9}.calc-subtitle{color:#64748b;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin:.25rem 0 0}.slider-section{display:flex;flex-direction:column;gap:1rem}.slider-header{display:flex;justify-content:space-between;align-items:flex-end}.slider-lbl{color:#475569;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.slider-val{font-size:1.875rem;font-weight:300;color:#0f172a;letter-spacing:-.05em}.theme-dark .slider-val{color:#f1f5f9}.slider-val-unit{display:flex;align-items:baseline;gap:.25rem}.slider-unit{font-size:.875rem;color:#64748b;font-weight:700;text-transform:uppercase}.custom-slider-wrap{position:relative;height:3rem;background:#f1f5f9;border-radius:.75rem;border:1px solid #e2e8f0;box-shadow:inset 0 2px 4px #0000000d;display:flex;align-items:center;padding:0 .5rem;cursor:pointer}.theme-dark .custom-slider-wrap{background:#1e293b;border-color:#334155}.custom-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:3;cursor:pointer;margin:0}.slider-track-fill{position:absolute;left:.5rem;top:.5rem;bottom:.5rem;border-radius:.5rem;z-index:1;box-shadow:0 1px 3px #0000001a;transition:width .1s}.slider-fill-amber{background:linear-gradient(to right,#fbbf24,#f97316)}.slider-fill-blue{background:linear-gradient(to right,#60a5fa,#6366f1)}.slider-fill-temp{background:linear-gradient(to right,#22d3ee,#2dd4bf,#fb7185)}.slider-thumb{position:absolute;height:2rem;width:4px;background:#fff;border-radius:9999px;box-shadow:0 2px 8px #00000026;border:1px solid rgba(0,0,0,.05);z-index:2;pointer-events:none;transform:translate(-2px);transition:left .1s}.vibe-section{display:flex;flex-direction:column;gap:1rem}.vibe-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.vibe-btn{position:relative;padding:.75rem;border-radius:.75rem;border:1px solid #e2e8f0;background:#fff;cursor:pointer;overflow:hidden;box-shadow:0 1px 3px #0000000d;transition:all .2s}.theme-dark .vibe-btn{border-color:#334155;background:#0f172a}.vibe-btn:hover{background:#f8fafc}.vibe-bg{position:absolute;inset:0;opacity:0;transition:opacity .2s}.vibe-bg-green{background:#10b9811a}.vibe-bg-amber{background:#f59e0b1a}.vibe-bg-rose{background:#f43f5e1a}.vibe-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.vibe-icon{width:1.5rem;height:1.5rem;color:#94a3b8;transition:color .2s}.vibe-label{font-size:.75rem;font-weight:700;color:#64748b;transition:color .2s}.vibe-bar{position:absolute;bottom:0;left:0;width:100%;height:4px;transform:scaleX(0);transition:transform .2s}.vibe-bar-green{background:#10b981}.vibe-bar-amber{background:#f59e0b}.vibe-bar-rose{background:#f43f5e}.vibe-btn.active .vibe-bg{opacity:1}.vibe-btn.active .active-bar{transform:scaleX(1)}.vibe-btn[data-mult="1"].active .icon-col{color:#10b981}.vibe-btn[data-mult="1.5"].active .icon-col{color:#f59e0b}.vibe-btn[data-mult="2.5"].active .icon-col{color:#f43f5e}.temp-section{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.theme-dark .temp-section{border-color:#334155}.temp-lbl{display:flex;align-items:center;gap:.5rem}.temp-icon{color:#94a3b8;width:1.25rem;height:1.25rem}.party-results{background:#f8fafc;display:flex;flex-direction:column;position:relative}.theme-dark .party-results{background:#0003}.stats-header{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e2e8f0;background:#fff6;backdrop-filter:blur(4px)}.theme-dark .stats-header{border-color:#1e293b;background:#ffffff08}.stat-block{padding:2rem;position:relative;overflow:hidden}.stat-block-left{border-right:1px solid #e2e8f0}.theme-dark .stat-block-left{border-color:#1e293b}.stat-deco-icon{position:absolute;top:0;right:0;padding:1rem;opacity:.05}.stat-block:hover .stat-deco-icon{opacity:.1;transition:opacity .2s}.stat-deco-svg{width:6rem;height:6rem;color:#0f172a;transform:rotate(12deg)}.stat-block-right .stat-deco-svg{transform:rotate(-12deg)}.stat-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;display:block;margin-bottom:.5rem}.stat-value-row{display:flex;align-items:baseline;gap:.5rem}.stat-number{font-size:3rem;font-weight:300;color:#0f172a;letter-spacing:-.05em}.theme-dark .stat-number{color:#f1f5f9}.stat-unit{font-size:1.125rem;color:#64748b;font-weight:700}.stat-sub{margin:1rem 0 0;font-size:.875rem;font-weight:500}.stat-sub-amber{color:#d97706}.stat-sub-cyan{color:#0891b2}.visual-stage-wrap{flex:1;min-height:400px;padding:2rem;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(to top,#cbd5e180,#f8fafc00)}.theme-dark .visual-stage-wrap{background:linear-gradient(to top,rgba(15,23,42,.5) 0%,transparent 100%)}.visual-stage-header{position:absolute;top:1.5rem;left:2rem;right:2rem;display:flex;justify-content:space-between}.visual-title{font-size:.75rem;color:#94a3b8;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.ice-hint{font-size:.75rem;color:#64748b}.visual-stage{display:flex;justify-content:center;align-items:flex-end;gap:3rem;width:100%}.stage-baseline{position:absolute;bottom:0;left:0;right:0;height:1px;background:#cbd5e1}.theme-dark .stage-baseline{background:#334155}@keyframes drop-in{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-drop{animation:drop-in .4s cubic-bezier(.175,.885,.32,1.275) forwards}.visual-container{display:flex;align-items:flex-end;justify-content:center;width:100%;height:100%;gap:2rem}@media(min-width:1024px){.visual-container{gap:4rem}}.keg-stack{display:flex;flex-direction:column-reverse;align-items:center;justify-content:flex-start;height:100%;margin-bottom:-2rem;min-width:80px}.keg-item{position:relative;transition:transform .3s;transform-origin:bottom;cursor:default}.keg-item:hover{transform:scale(1.05)}.keg-plus{text-align:center;font-weight:900;font-size:1.25rem;color:#b45309;margin-bottom:1rem;background:#fbbf24cc;backdrop-filter:blur(4px);border-radius:9999px;width:3.5rem;height:3.5rem;display:flex;align-items:center;justify-content:center;border:2px solid #fde68a;box-shadow:0 4px 20px #0000001a;z-index:50;animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.ice-pile{display:flex;flex-wrap:wrap;align-content:flex-end;justify-content:center;width:15rem;margin-left:-1.25rem;padding:1rem;position:relative}.ice-bag{transition:transform .3s;cursor:pointer}.ice-bag:hover{transform:scale(1.1);z-index:50}.bags-plus{position:absolute;top:-3rem;left:50%;transform:translate(-50%);z-index:100;font-weight:900;font-size:1.25rem;color:#0e7490;background:#ecfeffe6;padding:.5rem 1rem;border-radius:9999px;border:2px solid #a5f3fc;box-shadow:0 4px 20px #06b6d44d;animation:bounce 1s infinite}
