@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--n-50:#fafbfc;--n-100:#f1f3f5;--n-200:#e9ecef;--n-300:#dee2e6;--n-400:#adb5bd;--n-500:#868e96;--n-600:#495057;--n-700:#343a40;--n-800:#212529;--n-900:#0d1117;--accent-primary:#1971c2;--accent-primary-hover:#1864ab;--accent-secondary:#2f9e44;--success:#40c057;--warning:#fab005;--error:#fa5252;--info:#339af0;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-1:12px;--font-size-2:14px;--font-size-3:16px;--font-size-4:18px;--font-size-5:24px;--font-size-6:32px;--font-size-7:48px;--font-size-8:72px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px;--space-7:96px;--space-8:128px;--border-radius:0px;--border-width:1px;--border-color:var(--n-200);--ease-default:cubic-bezier(.4, 0, .2, 1);--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--focus-outline:2px solid var(--accent-primary);--focus-offset:2px;--btn-height:32px;--btn-padding:0 var(--space-2);--card-padding:var(--space-3);--card-bg:var(--n-50)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-2);color:var(--n-800);background:var(--n-100);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}#root{height:100vh}:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--n-100)}::-webkit-scrollbar-thumb{background:var(--n-300)}::-webkit-scrollbar-thumb:hover{background:var(--n-400)}input{font-family:var(--font-family);font-size:var(--font-size-1)}button{font-family:var(--font-family)}::selection{background:var(--accent-primary);color:#fff}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-content{flex:1;gap:0;display:flex;overflow:hidden}.app-main{padding:var(--space-3);justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex;overflow:auto}@keyframes result-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.result-animate{animation:result-fade-in var(--duration-normal) var(--ease-default)}.card{padding:var(--card-padding);background:var(--card-bg);border:var(--border-width) solid var(--border-color)}.btn-primary{background:var(--accent-primary);color:#fff;border:var(--border-width) solid var(--accent-primary);height:var(--btn-height);padding:var(--btn-padding);font-size:var(--font-size-1);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration-fast) var(--ease-default)}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-secondary{color:var(--accent-primary);border:var(--border-width) solid var(--accent-primary);height:var(--btn-height);padding:var(--btn-padding);font-size:var(--font-size-1);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration-fast) var(--ease-default);background:0 0}.btn-secondary:hover{background:var(--accent-primary);color:#fff}@media (width<=768px){.app-content{flex-direction:column;overflow-y:auto}.app-main{min-height:calc(100vh - 48px);padding:var(--space-3);justify-content:center;align-items:center}.reagent-panel,.conditions-panel{width:100%!important}.desktop-only{display:none}.mobile-fab-container{z-index:100;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.mobile-fab{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 4px 12px #00000026}.mobile-fab:active{transform:scale(.95)}.mobile-fab-reagent{background:var(--accent-primary);color:#fff}.mobile-fab-conditions{color:var(--accent-primary);border:2px solid var(--accent-primary);background:#fff}.mobile-fab-badge{background:var(--error);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:600;display:flex;position:absolute;top:-4px;right:-4px}.mobile-drawer-backdrop{z-index:200;opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;position:fixed;inset:0}.mobile-drawer-backdrop.open{opacity:1;pointer-events:auto}.mobile-drawer{z-index:201;background:#fff;flex-direction:column;max-height:85vh;transition:transform .3s ease-out;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.mobile-drawer.open{transform:translateY(0)}.mobile-drawer-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.mobile-drawer-title{color:var(--n-800);margin:0;font-size:18px;font-weight:600}.mobile-drawer-close{cursor:pointer;color:var(--n-600);background:0 0;border:none;border-radius:50%;padding:8px;transition:background .2s}.mobile-drawer-close:hover{background:var(--n-100)}.mobile-drawer-content{flex:1;padding:16px 20px;overflow-y:auto}.mobile-drawer-content .card{border:none;padding:0}}@media (width>=1024px){.app-content{flex-direction:row}.reagent-panel{width:280px;max-width:280px}.conditions-panel{width:240px;max-width:240px}.mobile-fab-container{display:none}.desktop-only{display:block}.mobile-drawer-backdrop,.mobile-drawer{display:none}}
