.product-catalog{width:100%}.filters{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.filters h2{margin-bottom:1rem;color:#667eea;font-size:1.3rem}.filter-group{margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:600;color:#2c3e50}.filter-group select{padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:border-color .3s}.filter-group select:hover{border-color:#667eea}.filter-group select:focus{outline:none;border-color:#764ba2}.products-info{margin-bottom:1.5rem}.results-count{font-size:1.1rem;color:#555;margin-bottom:1rem}.last-updated{font-size:.95rem;color:#764ba2;margin-bottom:.5rem;font-weight:600}.anvisa-notice{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-left:5px solid #2e7d32;padding:1rem 1.5rem;border-radius:8px;margin-top:1rem;box-shadow:0 2px 6px #2e7d3226}.anvisa-notice p{margin:0;color:#1b5e20;font-weight:600;font-size:1rem;display:flex;align-items:center;gap:.5rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:2rem;align-items:start}.product-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;overflow:hidden;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column;height:100%}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #667eea33}.product-image-container{background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem;display:flex;justify-content:center;align-items:center;min-height:200px;overflow:hidden}.product-image{width:100%;height:200px;object-fit:cover;border-radius:8px}.product-icon{font-size:4rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.product-info{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:1rem}.product-name{font-size:1.1rem;font-weight:700;color:#2c3e50;line-height:1.4;margin:0}.product-description{font-size:.95rem;color:#555;margin:0}.product-details{display:flex;gap:.5rem;flex-wrap:wrap}.brand-badge{background:#667eea;color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600}.type-badge{background:#764ba2;color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600}.product-meta{display:flex;gap:.5rem;flex-wrap:wrap}.spectrum-tag,.size-tag{background:#f0f0f0;color:#555;padding:.3rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500}.clinical-indications{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.75rem}.indication-tag{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100;padding:.35rem .7rem;border-radius:6px;font-size:.75rem;font-weight:600;border:1px solid #ffb74d;box-shadow:0 1px 3px #e651001a}.cannabinoids{display:flex;gap:.4rem;flex-wrap:wrap}.cannabinoid-tag{background:#e8f5e9;color:#2e7d32;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;border:1px solid #a5d6a7}.pricing{background:linear-gradient(135deg,#f5f7fa,#e8eef7);padding:1rem;border-radius:10px;border:2px solid #667eea;margin:.5rem 0}.price-container{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.price-original{font-size:.85rem;color:#999;text-decoration:line-through;font-weight:500}.price-discount{font-size:1.8rem;color:#2e7d32;font-weight:800;line-height:1}.discount-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:.3rem .7rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px #ff6b6b4d}.most-prescribed-badge{background:linear-gradient(135deg,#e8eaf6,#c5cae9);color:#3949ab;padding:.6rem;border-radius:8px;font-size:.85rem;font-weight:700;text-align:center;border:2px solid #7986cb;box-shadow:0 2px 6px #7986cb33}.launch-notice{background:linear-gradient(135deg,#e1f5fe,#b3e5fc);color:#01579b;padding:.6rem;border-radius:8px;font-size:.85rem;font-weight:700;text-align:center;border:2px solid #0288d1;margin:.75rem 0;box-shadow:0 2px 6px #0288d133;text-transform:uppercase;letter-spacing:1px}.discontinued-notice{background:linear-gradient(135deg,#ff5252,#d32f2f);color:#fff;padding:1rem;border-radius:8px;font-size:1rem;font-weight:800;text-align:center;border:3px solid #b71c1c;margin:.75rem 0;box-shadow:0 4px 12px #d32f2f66;line-height:1.4;text-transform:uppercase;letter-spacing:1px;animation:pulse-discontinued 2s ease-in-out infinite}@keyframes pulse-discontinued{0%,to{transform:scale(1);box-shadow:0 4px 12px #d32f2f66}50%{transform:scale(1.02);box-shadow:0 6px 20px #d32f2f99}}.prescription-badge{background:#fff3e0;color:#e65100;padding:.5rem;border-radius:8px;font-size:.85rem;font-weight:600;text-align:center;border:2px solid #ffb74d}.product-links{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.cannect-link,.coa-link{display:block;padding:.75rem 1rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.9rem;text-align:center;transition:transform .2s,box-shadow .2s}.cannect-link{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.cannect-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea80}.coa-link{background:#f5f5f5;color:#555;border:2px solid #e0e0e0}.coa-link:hover{background:#e8e8e8;border-color:#667eea;color:#667eea}.no-results{text-align:center;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.no-results p{font-size:1.1rem;color:#777}@media(max-width:768px){.products-grid{grid-template-columns:1fr;gap:1.5rem}.filters{padding:1rem}.filter-group{margin-bottom:.75rem}}@media(min-width:769px)and (max-width:1024px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.calculator-float-button{position:fixed;bottom:2rem;right:2rem;padding:.875rem 1.5rem;border-radius:50px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;cursor:pointer;box-shadow:0 6px 20px #667eea66;transition:all .3s ease;z-index:100;display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1rem}.calculator-float-button .calc-icon{font-size:1.5rem;line-height:1}.calculator-float-button .calc-text{white-space:nowrap}.calculator-float-button:hover{transform:translateY(-3px);box-shadow:0 10px 30px #667eea80}.calculator-float-button:active{transform:translateY(-1px)}@media(max-width:768px){.calculator-float-button{padding:.75rem 1.25rem;font-size:.9rem;bottom:1.5rem;right:1.5rem}.calculator-float-button .calc-icon{font-size:1.3rem}}@media(max-width:480px){.calculator-float-button{width:56px;height:56px;padding:0;border-radius:50%}.calculator-float-button .calc-text{display:none}.calculator-float-button .calc-icon{font-size:1.5rem}}.calculator-float-button:focus{outline:3px solid rgba(102,126,234,.5);outline-offset:2px}@media print{.product-catalog>*:not(.calculator-overlay){display:none!important}.filters,.products-info,.products-grid,.no-results,.calculator-float-button{display:none!important}.product-catalog{padding:0!important;margin:0!important}}.calculator-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.calculator-modal{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #667eea4d;animation:slideUp .3s ease;margin:2rem auto}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.calculator-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.calculator-header h2{margin:0;font-size:1.5rem;font-weight:700}.close-button{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.close-button:hover{background:#ffffff4d;transform:rotate(90deg)}.calculator-body{padding:2rem}.calc-section h3{margin-top:0;margin-bottom:.5rem;color:#333;font-size:1.3rem}.calc-description{color:#6c757d;margin-bottom:1.5rem;font-size:.9rem}.calc-form{margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:600;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:2px solid #e8eef7;border-radius:8px;font-size:1rem;transition:all .3s ease;box-sizing:border-box}.product-selector{background:linear-gradient(135deg,#f8f9ff,#fff);border:2px solid #667eea;font-weight:500}.product-selector optgroup{font-weight:700;color:#667eea;font-style:normal}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.calc-button{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.calc-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.calc-button:active{transform:translateY(0)}.calc-result{background:linear-gradient(135deg,#f5f7fa,#e8eef7);padding:1.5rem;border-radius:8px;border-left:4px solid #667eea;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.calc-result h4{margin-top:0;margin-bottom:1rem;color:#667eea;font-size:1.1rem}.calc-result p{margin:.75rem 0;color:#333;line-height:1.6}.calc-result strong{color:#667eea}.recommendation{background:#667eea1a;padding:.75rem;border-radius:6px;margin-top:1rem}.disclaimer{background:#fff3cd;color:#856404;padding:.75rem;border-radius:6px;font-size:.85rem;margin-top:1rem;border-left:3px solid #ffc107}.recommended-range{background:linear-gradient(135deg,#e8f4f8,#d4ebf7);color:#0c5460;padding:.875rem;border-radius:6px;font-size:.9rem;margin:1rem 0;border-left:3px solid #17a2b8;font-weight:500}.error-message{background:#f8d7da;color:#721c24;padding:.75rem;border-radius:6px;font-size:.9rem;margin:1rem 0;border-left:3px solid #dc3545;font-weight:500}.cost-examples{background:#667eea0d;padding:1rem;border-radius:6px;margin:1rem 0}.cost-examples p{margin:.5rem 0}.complete-result{background:#fff;border:none;padding:0}.complete-result h3{color:#667eea;font-size:1.4rem;margin-bottom:1.5rem;text-align:center;padding-bottom:1rem;border-bottom:2px solid #e8eef7}.result-section{background:linear-gradient(135deg,#f5f7fa,#e8eef7);padding:1.5rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid #667eea}.result-section h4{margin-top:0;margin-bottom:1rem;color:#667eea;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.result-section p{margin:.75rem 0;color:#333;line-height:1.6}.result-section strong{color:#667eea}.calculator-footer{background:#f5f7fa;padding:1rem 1.5rem;border-radius:0 0 12px 12px;text-align:center}.calculator-footer p{margin:0;color:#6c757d;font-size:.85rem}@media(max-width:768px){.calculator-modal{max-height:95vh;margin:1rem auto}.calculator-header h2{font-size:1.1rem}.calculator-body{padding:1.5rem}.calc-section h3{font-size:1.1rem}.result-section{padding:1rem}.complete-result h3{font-size:1.2rem}}.print-button-container{margin-top:2rem;text-align:center;padding-top:1.5rem;border-top:2px solid #e8eef7}.print-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #28a7454d}.print-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #28a74566}.print-button:active{transform:translateY(0)}@media print{.calculator-overlay{background:#fff!important;padding:0;position:static}.calculator-modal{max-width:100%;max-height:100%;box-shadow:none;margin:0}.calculator-header{background:#fff!important;color:#000!important;border-bottom:2px solid #000;page-break-after:avoid}.calculator-header h2{color:#000!important}.close-button,.print-button-container,.calc-form,.calc-button,.calculator-footer{display:none!important}.calculator-body{padding:1rem}.complete-result{display:block!important;page-break-inside:avoid}.complete-result h3{color:#000!important;background:#fff!important;margin-top:0;padding-bottom:.5rem;border-bottom:2px solid #000}.result-section{page-break-inside:avoid;border:2px solid #333;margin-bottom:1rem;padding:.75rem;background:#fff!important}.result-section h4{background:#fff!important;color:#000!important;margin:0 0 .5rem;padding:0;border-bottom:1px solid #333;padding-bottom:.25rem}.result-section p{margin:.25rem 0;color:#000!important}.result-section strong{color:#000!important}.disclaimer{font-size:.75rem;color:#333!important;font-style:italic}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-box{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;padding:40px;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:30px}.login-header h1{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px;font-weight:700}.login-header h2{font-size:1.2rem;color:#666;margin:0;font-weight:500}.login-notice{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffd93d;border-radius:12px;padding:20px;margin-bottom:30px;text-align:center}.login-notice p{margin:5px 0;color:#856404;font-size:.95rem}.login-notice strong{font-weight:700;font-size:1.1rem}.login-form{margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600;font-size:1rem}.form-group input{width:100%;padding:15px;border:2px solid #ddd;border-radius:10px;font-size:1rem;transition:all .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:15px;border-radius:10px;margin-bottom:20px;text-align:center;font-weight:600;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.login-button{width:100%;padding:15px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{text-align:center;padding-top:20px;border-top:1px solid #eee}.login-footer p{margin:5px 0;color:#666;font-size:.9rem}.login-footer strong{color:#333;font-weight:600}.login-footer .compliance{color:#22c55e;font-weight:600;font-size:.85rem;margin-top:10px}.request-access{text-align:center;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;border:2px solid #0ea5e9}.request-access p{margin:0 0 12px;color:#0369a1;font-weight:600;font-size:.95rem}.request-access-button{display:inline-block;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;padding:12px 24px;border-radius:25px;text-decoration:none;font-weight:700;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #0ea5e94d}.request-access-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0ea5e966}@media(max-width:600px){.login-box{padding:30px 20px}.login-header h1{font-size:2rem}.login-header h2{font-size:1rem}}.App{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:3rem 2rem;text-align:center;box-shadow:0 4px 6px #0000001a}.header-content h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.subtitle{font-size:1.2rem;opacity:.95;font-weight:300}.confidential-notice{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404;padding:1rem 1.5rem;border-radius:8px;margin-top:1.5rem;border:3px solid #ffc107;box-shadow:0 4px 8px #0003;max-width:600px;margin-left:auto;margin-right:auto}.confidential-notice p{margin:.3rem 0;font-weight:600;font-size:.95rem;line-height:1.5}.confidential-notice p:first-child{font-size:1.1rem;font-weight:800;letter-spacing:1px;margin-bottom:.5rem}main{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:2rem}.footer{background-color:#2c3e50;color:#fff;padding:3rem 2rem;margin-top:3rem}.footer-content{max-width:1200px;margin:0 auto}.footer-content h3{text-align:center;font-size:2rem;margin-bottom:2rem;color:#fff;font-weight:700;border-bottom:3px solid #667eea;padding-bottom:1rem}.contact-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:3rem}.contact-section{background:#ffffff0d;padding:1.5rem;border-radius:10px;border-left:4px solid #667eea}.contact-section h4{color:#667eea;font-size:1.2rem;margin-bottom:.75rem;font-weight:700}.contact-section p{margin:.4rem 0;font-size:.95rem;line-height:1.6;opacity:.9}.contact-section .legal-id{font-size:.85rem;color:#667eea;font-weight:600;margin-top:.75rem;opacity:1}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;padding-top:2rem;border-top:2px solid rgba(255,255,255,.1)}.email-section,.whatsapp-section{background:#ffffff0d;padding:1.5rem;border-radius:10px}.email-section h4,.whatsapp-section h4{color:#ffc107;font-size:1.1rem;margin-bottom:1rem;font-weight:700}.email-section p,.whatsapp-section p{margin:.5rem 0}.email-section a,.whatsapp-section .phone{color:#fff;text-decoration:none;font-size:1rem;transition:color .3s}.email-section a:hover{color:#667eea;text-decoration:underline}.phone{font-size:1.3rem;font-weight:700;color:#25d366;letter-spacing:1px}.whatsapp-btn{display:inline-block;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff!important;padding:.75rem 1.5rem;border-radius:25px;text-decoration:none!important;font-weight:700;font-size:1rem;margin-top:.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 8px #25d3664d}.whatsapp-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #25d36680}.disclaimer{font-size:.9rem;opacity:.8;margin-top:1rem!important}@media(max-width:768px){.header-content h1{font-size:1.8rem}.subtitle{font-size:1rem}main{padding:1rem}}@media print{.header,.footer{display:none!important}main{padding:0!important;margin:0!important}}*{margin:0;padding:0;box-sizing:border-box}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#213547;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}
