#root{max-width:1600px;margin:0 auto;padding:2rem 2.5rem 4rem}.app-container{width:100%}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem}header h1{display:flex;align-items:center;gap:.75rem;font-size:1.375rem;font-weight:600;letter-spacing:-.01em;color:var(--ink)}header h1:before{content:"+";display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;background-color:var(--pine);color:#fff;border-radius:var(--radius);font-size:1.25rem;font-weight:600;line-height:1}button{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;height:var(--control-h);padding:0 .875rem;background-color:var(--card);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}button:hover{background-color:var(--paper);border-color:var(--ink-soft)}button:active{background-color:var(--pine-tint)}.primary-action,.wizard-button:not(.secondary),.form-actions button.save,.add-item-form .form-actions button,.modal-buttons button:first-child{background-color:var(--pine);border-color:var(--pine);color:#fff}.primary-action:hover,.wizard-button:not(.secondary):hover,.form-actions button.save:hover,.add-item-form .form-actions button:hover,.modal-buttons button:first-child:hover{background-color:var(--pine-dark);border-color:var(--pine-dark);color:#fff}.primary-action.pending-wizard{background-color:var(--pine-tint);border-color:var(--pine-tint);color:var(--pine-dark)}.primary-action.pending-wizard:hover{background-color:#dce8e1;border-color:#dce8e1;color:var(--pine-dark)}button.delete,.form-actions button.delete,.lot-number-input button{background-color:var(--card);border-color:var(--line-strong);color:var(--red)}button.delete:hover,.form-actions button.delete:hover,.lot-number-input button:hover{background-color:var(--red-tint);border-color:var(--red);color:var(--red)}input,select,textarea{height:var(--control-h);padding:0 .75rem;background-color:var(--card);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-size:.9rem;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:var(--ink-soft);opacity:.8}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px #2e6b5626}input[type=number],input[type=date]{font-family:var(--font-data);font-size:.85rem}.chart-container,.admin-panel,.wizard-container{background-color:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.75rem;margin-bottom:1.5rem;width:100%}.admin-panel h2,.wizard-container h2{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-bottom:1.5rem}.chart-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.chart-header h2{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.chart-controls{display:flex;gap:1rem;align-items:center}.sort-control{display:flex;align-items:center;gap:.5rem}.sort-control label{font-size:.8125rem;color:var(--ink-soft)}.sort-control select{cursor:pointer;font-size:.85rem}.recharts-bar-rectangle{transition:opacity .2s ease}.recharts-bar-rectangle:hover{opacity:.85}.recharts-text{font-family:var(--font-ui)}.recharts-cartesian-axis-tick-value{font-size:12px!important}.recharts-legend-wrapper{position:absolute!important;margin:0!important}.recharts-default-legend{text-align:center!important;padding-top:5px!important}.recharts-legend-item{margin:0 10px!important;display:inline-block!important}.recharts-legend-item-text{color:var(--ink-soft)!important;font-size:.8125rem!important;font-weight:500!important}.recharts-responsive-container{margin-bottom:10px}.custom-tooltip{background-color:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:.875rem 1rem;max-width:320px}.tooltip-label{font-weight:600;font-size:.875rem;color:var(--ink);margin-bottom:.375rem}.tooltip-days,.tooltip-quantity,.tooltip-usage,.tooltip-info{font-family:var(--font-data);font-size:.75rem;color:var(--ink-soft);margin-bottom:.2rem}.tooltip-info{color:var(--ink)}.tooltip-days:last-of-type{color:var(--ink-soft)}.tooltip-release-date{font-family:var(--font-data);font-size:.75rem;color:var(--amber);font-weight:500;border-top:1px solid var(--line);padding-top:.5rem;margin-top:.5rem;margin-bottom:.2rem}.tooltip-discard-date{font-family:var(--font-data);font-size:.75rem;color:var(--red);font-weight:500;margin-bottom:0}.inventory-management{width:100%}.inventory-list{background-color:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;width:100%}.inventory-list h3{font-size:.9375rem;font-weight:600;color:var(--ink);padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.table-container{overflow-x:auto;width:100%}table{width:100%;border-collapse:separate;border-spacing:0}.inventory-list table{min-width:960px}th{padding:.625rem 1rem;text-align:left;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background-color:var(--paper);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:.75rem 1rem;font-size:.875rem;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background-color:var(--paper)}.inventory-list th:first-child,.inventory-list td:first-child{min-width:220px}.inventory-list th:not(:first-child),.inventory-list td:not(:first-child){text-align:center}tr.critical-days-row td{background-color:var(--red-tint)}tr.critical-days-row td:first-child{box-shadow:inset 3px 0 0 var(--red)}tr.low-days-row td{background-color:var(--amber-tint)}tr.low-days-row td:first-child{box-shadow:inset 3px 0 0 var(--amber)}.item-name-container{display:flex;flex-direction:column;gap:2px}.item-name{font-weight:500;color:var(--ink)}.last-updated{font-size:.6875rem;color:var(--ink-soft)}.inline-edit-input{height:32px;font-size:.875rem}.static-quantity{display:block;font-family:var(--font-data);font-size:.85rem;color:var(--ink);text-align:center}.daily-usage{font-family:var(--font-data);font-size:.85rem;color:var(--ink);text-align:center}.daily-usage .unit{font-size:.6875rem;color:var(--ink-soft)}.lot-number{font-family:var(--font-data);font-size:.8125rem;color:var(--ink);text-align:center}.bud-value{font-family:var(--font-data);font-size:.85rem;color:var(--ink);text-align:center}.days-supply{font-family:var(--font-data);font-size:.85rem;font-weight:500;color:var(--ink)}.days-supply .total-days{font-size:.75rem;color:var(--ink-soft);margin-left:6px;font-weight:400}.critical-days{color:var(--red);font-weight:600}.low-days{color:var(--amber);font-weight:600}.supplement-note{color:var(--amber);font-size:.8125rem;font-weight:500;white-space:normal}.item-color{width:.75rem;height:.75rem;border-radius:50%;flex-shrink:0}.actions{display:flex;gap:.375rem;justify-content:center;flex-wrap:wrap}.inventory-list th.actions{position:sticky;right:0;z-index:2;box-shadow:inset 1px 0 0 var(--line)}.inventory-list td.actions{position:sticky;right:0;z-index:1;background-color:var(--card);box-shadow:inset 1px 0 0 var(--line)}.inventory-list tbody tr:hover td.actions{background-color:var(--paper)}.inventory-list tr.critical-days-row td.actions{background-color:var(--red-tint)}.inventory-list tr.low-days-row td.actions{background-color:var(--amber-tint)}.actions button{height:28px;padding:0 .625rem;font-size:.75rem}.override-date{height:28px;padding:0 .625rem;font-size:.75rem;margin-left:.375rem}.quantity-control{display:flex;align-items:center;justify-content:center;gap:.5rem}.quantity-control span{font-family:var(--font-data);font-size:.85rem;font-weight:500;min-width:32px;text-align:center}.quantity-control button{width:28px;height:28px;padding:0;font-size:.9375rem;color:var(--pine-dark)}.edit-field{display:inline-flex;flex-direction:column;gap:.375rem;min-width:110px;text-align:left}.edit-field label{font-size:.6875rem;font-weight:500;color:var(--ink-soft)}.edit-field input{height:32px;text-align:center}.admin-actions{display:flex;gap:.75rem;margin-bottom:1.75rem;flex-wrap:wrap}.primary-action{min-width:180px}.add-item-form{margin-bottom:2rem;padding:1.5rem;background-color:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.add-item-form h3{font-size:.9375rem;font-weight:600;color:var(--ink);margin-bottom:1.25rem}.form-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.8125rem;font-weight:500;color:var(--ink-soft)}.form-group input{width:100%}.form-group.button-group{flex-direction:row;justify-content:flex-end;align-items:flex-end}.form-group>button{width:32px;height:32px;padding:0;font-size:1rem;color:var(--pine-dark);align-self:flex-start}.lot-number-input{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.lot-number-input input{flex-grow:1;min-width:0;font-family:var(--font-data);font-size:.8125rem}.lot-number-input button{width:32px;height:32px;padding:0;font-size:.9375rem;flex-shrink:0}.form-row{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1.25rem}.form-field{flex:1;min-width:200px}.form-field label{display:block;font-size:.8125rem;font-weight:500;color:var(--ink-soft);margin-bottom:.375rem}.form-field input{width:100%}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.form-actions button{min-width:110px}.wizard-container{max-width:720px;margin-left:auto;margin-right:auto}.wizard-progress{display:inline-block;font-family:var(--font-data);font-size:.75rem;color:var(--ink-soft);background-color:var(--paper);border:1px solid var(--line);padding:.25rem .625rem;border-radius:999px;margin-bottom:1.25rem}.wizard-item{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem}.wizard-item-name{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem}.wizard-item-name h3{font-size:1.0625rem;font-weight:600;color:var(--ink)}.wizard-item-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;background-color:var(--paper);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1.25rem}.item-detail{display:flex;flex-direction:column;gap:.2rem}.detail-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.detail-value{font-family:var(--font-data);font-size:.9375rem;color:var(--ink)}.wizard-input{margin-bottom:1.5rem}.wizard-input label{display:block;font-size:.8125rem;font-weight:500;color:var(--ink-soft);margin-bottom:.625rem}.wizard-input-control{display:flex;align-items:center;gap:.75rem}.wizard-input-control input{width:110px;height:44px;text-align:center;font-family:var(--font-data);font-size:1.25rem;font-weight:500}.wizard-input-control button{width:44px;height:44px;padding:0;font-size:1.25rem;color:var(--pine-dark)}.wizard-navigation{display:flex;gap:.75rem}.wizard-button{flex:1;height:42px;font-size:.9375rem}.keyboard-shortcuts{margin-top:1rem;text-align:center;color:var(--ink-soft);font-size:.8125rem}.keyboard-shortcuts kbd{background-color:var(--paper);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;padding:.1rem .375rem;font-family:var(--font-data);font-size:.6875rem;margin:0 .2rem}.compound-priority-panel{margin-top:0}.compound-priority-panel h3{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;color:var(--ink);margin-bottom:1.25rem}.compound-priority-panel .inventory-list table{min-width:720px}.compound-priority-panel td:nth-child(2),.compound-priority-panel td:nth-child(3),.compound-priority-panel td:nth-child(4){font-family:var(--font-data);font-size:.85rem}.compound-priority-panel th:not(:first-child),.compound-priority-panel td:not(:first-child){text-align:center}.compound-priority-panel th:last-child,.compound-priority-panel td:last-child{text-align:left}.no-items-message{text-align:center;padding:2.5rem 1rem;color:var(--ink-soft)}.inventory-cards{display:flex;flex-direction:column;gap:.875rem;padding:1rem}.inventory-card{background-color:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.inventory-card.critical-days-row{border-left:3px solid var(--red);background-color:var(--red-tint)}.inventory-card.low-days-row{border-left:3px solid var(--amber);background-color:var(--amber-tint)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--line)}.card-header .item-name{font-weight:600;font-size:1rem}.card-header .actions{justify-content:flex-end}.card-content{display:flex;flex-direction:column;gap:.875rem}.card-row{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}.card-field{display:flex;flex-direction:column;gap:.25rem}.card-field.full-width{grid-column:1 / -1}.card-field label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.card-field input{width:100%}.card-field .static-quantity,.card-field .lot-number{text-align:left}.card-footer{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line);text-align:right}.card-footer .days-supply{font-weight:600}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#21312a66;display:flex;justify-content:center;align-items:center;padding:1rem;z-index:1000}.modal-content{background-color:var(--card);border-radius:var(--radius-lg);padding:1.75rem;max-width:460px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-content h3{font-size:1.0625rem;font-weight:600;color:var(--ink);margin-bottom:.75rem}.modal-content p{font-size:.875rem;color:var(--ink-soft);margin-bottom:.625rem}.modal-form{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.modal-form label{display:flex;flex-direction:column;gap:.375rem;font-size:.8125rem;font-weight:500;color:var(--ink-soft)}.modal-buttons{display:flex;gap:.625rem;justify-content:flex-end;flex-wrap:wrap;margin-top:.5rem}.modal-buttons button:nth-child(2){color:var(--red)}.modal-buttons button:nth-child(2):hover{background-color:var(--red-tint);border-color:var(--red)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px;gap:1rem;color:var(--ink-soft)}.loading-spinner{width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--pine);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){#root{padding:1rem 1rem 3rem}.chart-container,.admin-panel,.wizard-container{padding:1.25rem}.admin-actions{flex-direction:column;align-items:stretch}.primary-action{width:100%}.form-fields{grid-template-columns:1fr}.wizard-navigation{flex-direction:column}.wizard-item-details{grid-template-columns:1fr 1fr}.inventory-cards{padding:.75rem}}:root{color-scheme:light;--paper: #f4f6f4;--card: #ffffff;--ink: #21312a;--ink-soft: #64716a;--line: #e4e8e4;--line-strong: #cfd7d0;--pine: #2e6b56;--pine-dark: #245546;--pine-tint: #e9f0ec;--amber: #a06a1f;--amber-tint: #fdf7ec;--red: #ac3a30;--red-tint: #fbf1f0;--primary-color: var(--pine);--primary-dark: var(--pine-dark);--success-color: var(--pine);--danger-color: var(--red);--warning-color: var(--amber);--text-color: var(--ink);--text-secondary: var(--ink-soft);--background-color: var(--paper);--card-background: var(--card);--border-color: var(--line);--font-ui: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-data: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius-sm: 6px;--radius: 8px;--radius-lg: 10px;--shadow-sm: 0 1px 2px rgb(33 49 42 / .05);--shadow: 0 1px 3px rgb(33 49 42 / .07);--shadow-md: 0 4px 12px rgb(33 49 42 / .08);--shadow-lg: 0 12px 32px rgb(33 49 42 / .14);--control-h: 36px}*{margin:0;padding:0;box-sizing:border-box}html{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-ui);font-size:15px;line-height:1.5;background-color:var(--paper);color:var(--ink);min-width:320px;min-height:100vh}input,button,textarea,select{font:inherit;color:inherit}img,picture,svg{max-width:100%;display:block}a{color:var(--pine);font-weight:500;text-decoration:none}a:hover{color:var(--pine-dark)}:focus-visible{outline:2px solid var(--pine);outline-offset:2px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
