:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--secondary:#8b5cf6;--accent:#06b6d4;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--bg-primary:#0f0a1e;--bg-secondary:#1a1525;--bg-tertiary:#251e35;--bg-card:#1e1830;--bg-hover:#2a2340;--bg-elevated:#2d2640;--text-primary:#ffffff;--text-secondary:#e2e8f0;--text-muted:#cbd5e1;--text-accent:#c7d2fe;--text-disabled:#64748b;--border-color:#312b45;--border-light:#3d3654;--border-focus:#6366f1;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--font-mono:'JetBrains Mono','Fira Code',monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px rgba(0,0,0,0.4);--shadow-lg:0 10px 15px rgba(0,0,0,0.5);--shadow-glow:0 0 20px rgba(99,102,241,0.3);--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-toast:400}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-40px;left:0;background:var(--primary);color:white;padding:8px 16px;z-index:9999;transition:top var(--transition-fast)}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px;box-shadow:0 0 0 4px rgba(99,102,241,0.2)}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}html{scroll-behavior:auto}}@media (prefers-contrast:high){:root{--border-color:#666;--text-muted:#aaa}}.header{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-bottom:1px solid var(--border-color);padding:var(--space-md) var(--space-lg);position:sticky;top:0;z-index:var(--z-sticky);backdrop-filter:blur(10px)}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-md)}.logo{display:flex;align-items:center;gap:var(--space-md)}.logo-icon{font-size:2.25rem;filter:drop-shadow(0 0 12px rgba(99,102,241,0.4))}.logo-text h1{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,var(--primary-light),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-0.02em}.logo-text p{color:var(--text-muted);font-size:0.8rem;font-weight:500}.stats{display:flex;gap:var(--space-lg)}.stat{text-align:center}.stat-value{font-size:1.625rem;font-weight:800;color:var(--primary-light);line-height:1}.stat-label{font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em;font-weight:600}.offline-indicator .stat-value{color:var(--warning)}.search-section{background:var(--bg-secondary);padding:var(--space-lg);border-bottom:1px solid var(--border-color)}.search-container{max-width:900px;margin:0 auto;position:relative}.search-box{position:relative;display:flex;align-items:center;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-sm) var(--space-md);transition:var(--transition-base)}.search-box:focus-within{border-color:var(--primary);box-shadow:var(--shadow-glow)}.search-icon{font-size:1.25rem;margin-right:var(--space-sm);opacity:0.7}.search-input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:1rem;padding:var(--space-sm);min-width:0}.search-input::placeholder{color:var(--text-muted)}.clear-btn{background:var(--border-light);border:none;color:var(--text-muted);width:28px;height:28px;border-radius:50%;font-size:1.25rem;line-height:1;cursor:pointer;opacity:0;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center}.clear-btn.visible{opacity:1}.clear-btn:hover{background:var(--danger);color:white}.autocomplete-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:300px;overflow-y:auto;z-index:var(--z-dropdown);box-shadow:var(--shadow-lg)}.autocomplete-item{padding:var(--space-md);cursor:pointer;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:var(--space-sm)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item[aria-selected="true"]{background:var(--bg-hover)}.autocomplete-item-name{font-weight:600;color:var(--text-primary)}.autocomplete-item-category{font-size:0.8rem;color:var(--text-muted);background:var(--bg-card);padding:2px 8px;border-radius:12px}.filters{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color)}.filter-btn{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:0.875rem;font-weight:500;cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.filter-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.filter-btn.active{background:var(--primary);border-color:var(--primary);color:white}.category-loading{display:flex;align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:0.875rem;margin-top:var(--space-md)}.main-content{max-width:1400px;margin:0 auto;padding:var(--space-lg);min-height:50vh}.loading-state{text-align:center;padding:var(--space-2xl);color:var(--text-muted)}.loading-spinner{width:50px;height:50px;border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto var(--space-lg)}.spinner-small{display:inline-block;width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-progress{max-width:300px;height:4px;background:var(--bg-tertiary);border-radius:2px;margin:var(--space-lg) auto;overflow:hidden}.loading-progress-bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));width:0%;transition:width 0.3s ease}.error-state{text-align:center;padding:var(--space-2xl);background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.3);border-radius:var(--radius-lg);margin:var(--space-xl) auto;max-width:500px}.error-state h3{color:var(--danger);margin-bottom:var(--space-md)}.retry-btn{background:var(--primary);color:white;border:none;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;margin-top:var(--space-lg);transition:var(--transition-fast)}.retry-btn:hover{background:var(--primary-dark);transform:translateY(-2px)}.virtual-scroll-container{position:relative;overflow-y:auto;max-height:calc(100vh - 250px);-webkit-overflow-scrolling:touch}.virtual-scroll-content{position:relative}.drug-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-lg)}.drug-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);transition:var(--transition-base);cursor:pointer;position:relative;overflow:hidden}.drug-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));transform:scaleX(0);transition:transform var(--transition-base)}.drug-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-light)}.drug-card:hover::before{transform:scaleX(1)}.drug-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.drug-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md);gap:var(--space-sm)}.drug-name{font-size:1.125rem;font-weight:700;color:var(--text-primary);line-height:1.3;flex:1}.drug-category{font-size:0.75rem;font-weight:600;color:var(--primary-light);background:rgba(99,102,241,0.15);padding:4px 10px;border-radius:20px;white-space:nowrap}.drug-indication{color:var(--text-secondary);font-size:0.9rem;line-height:1.5;margin-bottom:var(--space-md);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.drug-meta{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.drug-tag{font-size:0.75rem;padding:4px 10px;border-radius:12px;font-weight:500;display:inline-flex;align-items:center;gap:4px}.drug-tag-info{background:rgba(59,130,246,0.15);color:#60a5fa}.drug-tag-success{background:rgba(16,185,129,0.15);color:#34d399}.drug-tag-warning{background:rgba(245,158,11,0.15);color:#fbbf24}.drug-tag-danger{background:rgba(239,68,68,0.15);color:#f87171}.drug-favorite{position:absolute;top:var(--space-md);right:var(--space-md);background:transparent;border:none;font-size:1.25rem;cursor:pointer;opacity:0.5;transition:var(--transition-fast);z-index:1}.drug-favorite:hover,.drug-favorite.active{opacity:1}.drug-favorite.active{color:var(--warning)}.no-results{text-align:center;padding:var(--space-2xl);color:var(--text-muted)}.no-results h3{color:var(--text-secondary);margin-bottom:var(--space-md)}.clear-filters-btn{background:var(--bg-elevated);border:1px solid var(--border-color);color:var(--text-secondary);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-size:0.95rem;cursor:pointer;margin-top:var(--space-lg);transition:var(--transition-fast)}.clear-filters-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.end-of-results{text-align:center;padding:var(--space-xl);color:var(--text-muted);font-size:0.875rem}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.8);backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-lg);animation:fadeIn 0.2s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);max-width:900px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp 0.3s ease}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:var(--space-md);right:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);width:36px;height:36px;border-radius:50%;font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1;transition:var(--transition-fast)}.modal-close:hover{background:var(--danger);color:white;border-color:var(--danger)}.modal-body{padding:var(--space-xl)}.modal-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:1.5rem;margin-bottom:var(--space-sm)}.modal-section{margin-bottom:var(--space-lg)}.modal-section h3{font-size:1.125rem;color:var(--primary-light);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.modal-section h4{font-size:1rem;color:var(--text-secondary);margin:var(--space-md) 0 var(--space-sm)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-md)}.detail-item{background:var(--bg-card);padding:var(--space-md);border-radius:var(--radius-md);border-left:3px solid var(--primary)}.detail-item.warning{border-left-color:var(--warning)}.detail-item.danger{border-left-color:var(--danger)}.detail-item.success{border-left-color:var(--success)}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:var(--space-lg);text-align:center;color:var(--text-muted);font-size:0.875rem}.footer a,.footer-link{color:var(--primary-light);text-decoration:none;background:none;border:none;cursor:pointer;font-size:inherit}.footer a:hover,.footer-link:hover{text-decoration:underline}.footer-meta{margin-top:var(--space-sm);font-size:0.8rem;opacity:0.8}@media (max-width:1200px){.drug-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.header{padding:var(--space-md)}.header-content{flex-direction:column;text-align:center}.stats{width:100%;justify-content:center}.search-section{padding:var(--space-md)}.main-content{padding:var(--space-md)}.drug-grid{grid-template-columns:1fr;gap:var(--space-md)}.filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:var(--space-sm);-webkit-overflow-scrolling:touch}.modal-content{max-height:95vh;margin:var(--space-sm)}.modal-body{padding:var(--space-lg)}.detail-grid{grid-template-columns:1fr}}@media (max-width:480px){.logo-icon{font-size:1.75rem}.logo-text h1{font-size:1.25rem}.stat-value{font-size:1.25rem}.drug-card{padding:var(--space-md)}.drug-name{font-size:1rem}}@media print{.header,.search-section,.footer,.modal-overlay{display:none !important}.main-content{padding:0}.drug-card{break-inside:avoid;border:1px solid #ccc;page-break-inside:avoid}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-color)}*{scrollbar-width:thin;scrollbar-color:var(--border-light) var(--bg-secondary)}.smart-prescription-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;padding:0.75rem 1.5rem;border-radius:var(--radius-xl);font-weight:700;font-size:1rem;text-decoration:none;margin-top:var(--space-md);transition:var(--transition-fast);box-shadow:var(--shadow-md);min-width:140px}.smart-prescription-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.smart-prescription-text{display:inline}@media (max-width:480px){.smart-prescription-text{display:none}}.smart-prescription-section{background:var(--bg-secondary);min-height:calc(100vh - 200px);padding:var(--space-lg) var(--space-md)}.sp-container{max-width:900px;margin:0 auto}.sp-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-xl)}.sp-header h2{font-size:1.5rem;color:var(--text-primary);margin:0}.sp-back-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:var(--transition-fast)}.sp-back-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.sp-params,.sp-drugs,.sp-results{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.sp-params h3,.sp-drugs h3{font-size:1.1rem;margin-top:0;margin-bottom:var(--space-md);color:var(--text-primary)}.sp-optional{font-size:0.8rem;color:var(--text-muted);font-weight:400}.sp-params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-md)}.sp-field{display:flex;flex-direction:column;gap:var(--space-xs)}.sp-field label{font-size:0.8rem;font-weight:600;color:var(--text-accent)}.sp-field input,.sp-field select{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:var(--space-sm);border-radius:var(--radius-md);font-size:0.95rem}.sp-field input:focus,.sp-field select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(99,102,241,0.2)}.sp-field small{font-size:0.7rem;color:var(--text-muted)}.sp-derived{display:flex;flex-direction:row;align-items:flex-end;gap:var(--space-md)}.sp-derived-item{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);min-width:90px;text-align:center}.sp-derived-label{display:block;font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.5px}.sp-derived-value{display:block;font-weight:700;color:var(--accent);font-size:1rem}.sp-drug-rows{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-md)}.sp-drug-row{display:flex;align-items:center;gap:var(--space-sm)}.sp-drug-search{position:relative;flex:1;display:flex;align-items:center;gap:var(--space-sm)}.sp-drug-num{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:white;border-radius:50%;font-size:0.75rem;font-weight:700;flex-shrink:0}.sp-drug-input{flex:1;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:0.95rem}.sp-drug-input:focus{outline:none;border-color:var(--primary)}.sp-drug-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:var(--border-light);border:none;color:var(--text-muted);width:22px;height:22px;border-radius:50%;font-size:1rem;line-height:1;cursor:pointer;opacity:0;display:flex;align-items:center;justify-content:center}.sp-drug-clear.visible{opacity:1}.sp-drug-remove{background:transparent;border:1px solid var(--danger);color:var(--danger);width:32px;height:32px;border-radius:var(--radius-md);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-drug-remove:hover{background:var(--danger);color:white}.sp-autocomplete{position:absolute;top:calc(100% + 4px);left:32px;right:0;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:220px;overflow-y:auto;z-index:var(--z-dropdown);box-shadow:var(--shadow-lg)}.sp-autocomplete-item{padding:var(--space-sm) var(--space-md);cursor:pointer;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.sp-autocomplete-item:last-child{border-bottom:none}.sp-autocomplete-item:hover{background:var(--bg-hover)}.sp-autocomplete-name{font-weight:600;color:var(--text-primary)}.sp-autocomplete-cat{font-size:0.75rem;color:var(--text-muted);background:var(--bg-card);padding:2px 8px;border-radius:12px}.sp-drug-actions{display:flex;gap:var(--space-sm)}.sp-add-btn{background:var(--bg-tertiary);border:1px dashed var(--border-light);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:var(--transition-fast)}.sp-add-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.sp-add-btn:disabled{opacity:0.5;cursor:not-allowed}.sp-errors{background:rgba(239,68,68,0.1);border:1px solid var(--danger);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg)}.sp-error-item{color:#fca5a5;font-size:0.9rem;padding:var(--space-xs) 0}.sp-generate{margin-bottom:var(--space-xl)}.sp-generate-btn{background:linear-gradient(135deg,var(--success),#059669);color:white;border:none;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-xl);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-md)}.sp-generate-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.sp-summary{background:linear-gradient(135deg,rgba(99,102,241,0.15),rgba(139,92,246,0.15));border:1px solid var(--primary);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.sp-summary h3{margin-top:0;margin-bottom:var(--space-md);color:var(--text-primary)}.sp-summary-tags{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.sp-tag{background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:0.85rem}.sp-interactions{background:rgba(245,158,11,0.1);border:1px solid var(--warning);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.sp-interactions h4{margin-top:0;color:#fcd34d}.sp-interaction-pair{margin-bottom:var(--space-md)}.sp-interaction-drugs{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-xs)}.sp-interaction-list{margin:0;padding-left:var(--space-lg);color:var(--text-secondary);font-size:0.9rem}.sp-interaction-list li{margin-bottom:var(--space-xs)}.sp-results-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}.sp-result-card{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);transition:var(--transition-fast)}.sp-result-card:hover{border-color:var(--border-light)}.sp-result-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color)}.sp-result-name{font-size:1.15rem;font-weight:700;color:var(--text-primary)}.sp-result-category{font-size:0.8rem;color:var(--text-muted);background:var(--bg-card);padding:2px 10px;border-radius:12px}.sp-result-body > div{margin-bottom:var(--space-sm);line-height:1.55}.sp-result-dose{background:rgba(16,185,129,0.1);border-left:3px solid var(--success);padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.sp-result-dose em,.sp-result-indication em{font-size:0.8rem;color:var(--text-muted);display:block;margin-top:2px}.sp-result-note{font-size:0.9rem;color:var(--text-secondary);padding:var(--space-xs) 0}.sp-result-renal{border-left:2px solid var(--info);padding-left:var(--space-sm)}.sp-result-hepatic{border-left:2px solid var(--warning);padding-left:var(--space-sm)}.sp-result-pediatric{border-left:2px solid var(--accent);padding-left:var(--space-sm)}.sp-result-geriatric{border-left:2px solid var(--secondary);padding-left:var(--space-sm)}.sp-result-contra{border-left:2px solid var(--danger);padding-left:var(--space-sm)}@media (max-width:640px){.sp-header{flex-direction:column;align-items:flex-start}.sp-params-grid{grid-template-columns:1fr}.sp-derived{flex-direction:row;justify-content:space-between}.smart-prescription-btn{width:100%;justify-content:center;margin-top:var(--space-sm)}}.sp-header-actions{display:flex;gap:var(--space-sm);align-items:center}.sp-history-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:var(--transition-fast)}.sp-history-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.sp-history-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-lg)}.sp-history-empty{color:var(--text-muted);font-size:0.9rem;text-align:center;padding:var(--space-md)}.sp-history-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)}.sp-history-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.sp-history-date{font-size:0.8rem;color:var(--text-muted)}.sp-history-drugs{font-weight:600;color:var(--text-primary);font-size:0.9rem}.sp-history-patient{font-size:0.8rem;color:var(--text-accent)}.sp-history-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.sp-history-actions button{background:var(--bg-card);border:1px solid var(--border-light);color:var(--text-secondary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:0.8rem;cursor:pointer}.sp-history-actions button:hover{border-color:var(--primary);color:var(--primary)}.sp-history-footer{display:flex;justify-content:flex-end}.sp-history-clear{background:transparent;border:1px solid var(--danger);color:var(--danger);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:0.8rem;cursor:pointer}.sp-history-clear:hover{background:var(--danger);color:white}.sp-report-actions{display:flex;gap:var(--space-md);justify-content:center;margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.sp-save-btn,.sp-print-btn{background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:var(--transition-fast)}.sp-save-btn:hover{border-color:var(--success);color:var(--success)}.sp-print-btn:hover{border-color:var(--info);color:var(--info)}.sp-contra-banner{background:rgba(239,68,68,0.15);border:1px solid var(--danger);color:#fca5a5;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-sm);font-weight:600}.sp-print-header{display:none}@media print{.header,.search-section,.footer,.sp-back-btn,.sp-history-btn,.sp-params,.sp-drugs,.sp-generate,.sp-drug-actions,.sp-errors,.sp-add-btn,.sp-drug-remove,.sp-drug-clear,.sp-report-actions,.sp-history-panel{display:none !important}body{background:white !important;color:black !important}.smart-prescription-section{background:white !important;color:black !important;padding:0 !important;min-height:auto !important}.sp-container{max-width:100% !important;margin:0 !important}.sp-results{background:white !important;border:none !important;padding:0 !important}.sp-summary{background:#f8f9fa !important;border:1px solid #dee2e6 !important;color:black !important}.sp-tag{background:#e9ecef !important;border-color:#dee2e6 !important;color:#212529 !important}.sp-interactions{background:#fff3cd !important;border:1px solid #ffc107 !important;color:#212529 !important}.sp-result-card{break-inside:avoid;page-break-inside:avoid;background:white !important;border:1px solid #dee2e6 !important;color:black !important}.sp-result-name,.sp-result-body,.sp-result-dose,.sp-result-indication,.sp-result-note{color:black !important}.sp-result-dose{background:#d4edda !important;border-left-color:#28a745 !important}.sp-contra-banner{background:#f8d7da !important;border-color:#dc3545 !important;color:#721c24 !important}.sp-level-hard{background:#fef2f2 !important;border-left-color:#dc2626 !important}.sp-hard-banner{color:#991b1b !important}.sp-level-caution{background:#fffbeb !important;border-left-color:#f59e0b !important}.sp-caution-title{color:#92400e !important}.sp-interaction-hard{background:#fee2e2 !important;color:#991b1b !important}.sp-interaction-caution{background:#fef3c7 !important;color:#92400e !important}.sp-interaction-info{background:#dbeafe !important;color:#1e40af !important}.sp-print-header{display:block !important;text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #000}.sp-print-logo{font-size:1.5rem;font-weight:700;margin-bottom:0.25rem}.sp-print-meta{font-size:0.85rem;color:#555;margin-bottom:0.5rem}.sp-print-disclaimer{font-size:0.8rem;color:#666;font-style:italic}}.sp-subsection{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-color)}.sp-subsection h4{font-size:1rem;color:var(--text-accent);margin:0 0 var(--space-md) 0}.sp-params-grid-1col{grid-template-columns:1fr}.sp-field textarea{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:var(--space-sm);border-radius:var(--radius-md);font-size:0.95rem;resize:vertical;min-height:60px;font-family:inherit}.sp-field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(99,102,241,0.2)}.sp-level-hard{border-left:4px solid var(--danger);background:rgba(239,68,68,0.08);padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:var(--space-sm)}.sp-hard-banner{font-weight:700;color:#fca5a5;margin-bottom:var(--space-xs)}.sp-hard-list{margin:0;padding-left:var(--space-lg);color:var(--text-secondary);font-size:0.9rem}.sp-hard-list li{margin-bottom:var(--space-xs)}.sp-level-caution{border-left:4px solid var(--warning);background:rgba(245,158,11,0.08);padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:var(--space-sm)}.sp-caution-title{font-weight:700;color:#fcd34d;margin-bottom:var(--space-xs)}.sp-level-info{padding:var(--space-xs) 0}.sp-interaction-badge{display:inline-block;font-size:0.7rem;font-weight:700;padding:2px 6px;border-radius:4px;margin-right:var(--space-xs);text-transform:uppercase;letter-spacing:0.5px}.sp-interaction-hard{background:rgba(239,68,68,0.2);color:#fca5a5}.sp-interaction-caution{background:rgba(245,158,11,0.2);color:#fcd34d}.sp-interaction-info{background:rgba(59,130,246,0.2);color:#93c5fd}