:root{font-family:Domine,system-ui,Avenir,Helvetica,Arial,serif;line-height:1.5;font-weight:400;color-scheme:light;color:#2c3e50;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;font-family:Domine,system-ui,Avenir,Helvetica,Arial,serif;background-color:#f8f9fa}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:Domine,system-ui,Avenir,Helvetica,Arial,serif;background-color:#ff6b6b;color:#fff;cursor:pointer;transition:all .25s}button:hover{background-color:#e85555;transform:translateY(-2px)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6,p{font-family:Domine,system-ui,Avenir,Helvetica,Arial,serif;color:#2c3e50}.trial-details-container{margin:0 auto;padding:0;font-family:Domine,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,serif;background-color:#f8f9fa;min-height:100vh}.top-nav{background:#fff;padding:16px 24px;border-bottom:1px solid #E9ECEF;box-shadow:0 2px 4px #0000001a}.nav-logo{display:flex;align-items:center;gap:12px}.app-logo{width:40px;height:40px;border-radius:8px;object-fit:contain}.app-name{font-size:20px;font-weight:700;color:#2c3e50;font-family:Domine,serif}.trial-card{background:#fff;border-radius:16px;padding:48px;margin:40px 20px 20px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;align-items:start}.trial-card-header{grid-column:1 / -1}.trial-card-content{grid-column:1 / -1;display:grid;grid-template-columns:2fr 1fr;grid-gap:48px}.trial-main-content,.trial-sidebar{display:flex;flex-direction:column;gap:24px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{text-align:center;padding:60px 20px}.error-message h2{color:#dc3545;margin-bottom:16px}.back-button{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:16px;margin-top:16px;transition:background-color .2s}.back-button:hover{background:#0056b3}.trial-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #E9ECEF}.trial-icon{font-size:64px;flex-shrink:0}.trial-title-section{width:100%;max-width:800px}.trial-title{font-size:40px;font-weight:700;color:#2c3e50;margin:0 0 16px;line-height:1.2;text-align:center;font-family:Domine,serif}.trial-meta{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.nct-number{font-family:Monaco,Menlo,monospace;background:#fafafb;padding:6px 12px;border-radius:8px;font-size:14px;color:#6c757d;font-weight:500}.status-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge[data-status=recruiting]{background:#d4edda;color:#28a745}.status-badge[data-status=active]{background:#d1ecf1;color:#17a2b8}.status-badge[data-status=completed]{background:#f8d7da;color:#dc3545}.badges-section{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:32px}.badge{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;background:#fafafb;color:#2c3e50}.badge-icon{font-size:16px}.condition-badge{background:#f99;color:#fff}.age-badge{background:#7eddd6;color:#fff}.gender-badge{background:#73c7e1;color:#fff}.compensation-badge{background:#d4edda;color:#28a745}.healthy-badge{background:#d1ecf1;color:#17a2b8}.content-section{margin-bottom:32px}.content-section h3{font-size:20px;font-weight:600;color:#212529;margin:0 0 16px;font-family:Domine,serif}.content-section p{font-size:16px;line-height:1.6;color:#495057;margin:0;font-family:Domine,serif}.eligibility-list{list-style:none;padding:0;margin:0}.eligibility-list li{font-size:16px;line-height:1.6;color:#495057;margin-bottom:8px;padding-left:20px;position:relative}.eligibility-list li:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700}.sponsor-info{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:20px;background:#f8f9fa;border-radius:12px}.sponsor-logo{width:64px;height:64px;object-fit:contain;border-radius:8px;background:#fff;padding:8px}.sponsor-logo-placeholder{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;font-size:24px}.sponsor-details h4{font-size:18px;font-weight:600;color:#212529;margin:0 0 8px}.sponsor-details p{font-size:14px;color:#6c757d;margin:0 0 12px}.sponsor-website{color:#007bff;text-decoration:none;font-size:14px;font-weight:500}.sponsor-website:hover{text-decoration:underline}.locations-section{background:#fff;border-radius:16px;margin:32px 0;overflow:hidden;box-shadow:0 8px 24px #0000001a;border:1px solid #E9ECEF}.locations-section-header{display:flex;align-items:center;padding:24px;background:#f8f9fa;border-bottom:1px solid #E9ECEF;cursor:pointer}.section-icon{width:48px;height:48px;border-radius:12px;background:#ff6b6b;display:flex;align-items:center;justify-content:center;margin-right:16px;flex-shrink:0}.section-icon span{font-size:24px;filter:grayscale(1) brightness(0) invert(1)}.section-title-container{flex:1}.section-title{margin:0 0 4px;color:#2c3e50;font-size:20px;font-weight:700;font-family:Domine,serif}.section-subtitle{margin:0;color:#6c757d;font-size:14px}.locations-toggle-btn{background:none;border:none;padding:8px;cursor:pointer;border-radius:8px;transition:all .2s ease;color:#6c757d}.locations-toggle-btn:hover{background:#e9ecef;color:#2c3e50}.toggle-arrow{display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.toggle-arrow.expanded{transform:rotate(180deg)}.locations-content{padding:0;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.location-card{background:#fff;border-bottom:1px solid #E9ECEF;padding:24px;transition:background-color .2s ease}.location-card:last-child{border-bottom:none}.location-card:hover{background:#fafafb}.location-card-header{margin-bottom:20px}.location-facility-info{display:flex;flex-direction:column;gap:8px}.facility-name{margin:0;color:#2c3e50;font-size:18px;font-weight:700;font-family:Domine,serif}.facility-address{margin:0;color:#6c757d;font-size:14px;line-height:1.5}.facility-status{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.facility-status[data-status*=recruiting]{background:#d4edda;color:#28a745}.facility-status[data-status*=active]{background:#d1ecf1;color:#17a2b8}.facility-status[data-status*=completed]{background:#e9ecef;color:#6c757d}.location-contacts{border-top:1px solid #F1F3F4;padding-top:20px}.contacts-title{margin:0 0 16px;color:#2c3e50;font-size:16px;font-weight:600}.contacts-list{display:flex;flex-direction:column;gap:16px}.contact-card{background:#f8f9fa;border-radius:12px;padding:16px;border:1px solid #E9ECEF}.contact-info{margin-bottom:12px}.contact-name{display:block;font-weight:600;color:#2c3e50;font-size:16px;margin-bottom:4px;font-family:Domine,serif}.contact-role{color:#6c757d;font-size:14px;font-style:italic}.contact-methods{display:flex;flex-direction:column;gap:8px}.contact-method{display:flex;align-items:center;gap:8px;color:#ff6b6b;text-decoration:none;font-size:14px;font-weight:500;padding:8px 12px;border-radius:8px;background:#fff;border:1px solid #E9ECEF;transition:all .2s ease}.contact-method:hover{background:#ff6b6b;color:#fff;border-color:#ff6b6b;text-decoration:none;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b6b4d}.contact-icon{font-size:16px;flex-shrink:0}.contact-text{font-weight:500}.cta-section{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;padding:32px;border-radius:16px;text-align:center;margin-top:40px}.cta-section h3{color:#fff;font-size:24px;margin-bottom:16px}.cta-section p{color:#ffffffe6;font-size:16px;margin-bottom:24px}.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.cta-button{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.cta-button.primary{background:#fff;color:#007bff}.cta-button.primary:hover{background:#f8f9fa;transform:translateY(-2px)}.cta-button.secondary{background:transparent;color:#fff;border:2px solid white}.cta-button.secondary:hover{background:#fff;color:#007bff;transform:translateY(-2px)}@media (max-width: 1024px){.trial-card{display:block;padding:32px}.trial-card-content{display:block}.trial-main-content{margin-bottom:32px}}@media (max-width: 768px){.trial-details-container{padding:0}.trial-card{padding:20px;margin:20px 10px}.top-nav{padding:12px 16px}.app-logo{width:32px;height:32px}.app-name{font-size:18px}.trial-header{flex-direction:column;text-align:center}.trial-title{font-size:24px}.sponsor-info,.location-header{flex-direction:column;text-align:center}.locations-section-header{flex-direction:column;align-items:center;text-align:center;gap:16px}.section-icon{margin-right:0;margin-bottom:8px}.contact-methods{gap:12px}.contact-method{justify-content:center}.cta-buttons{flex-direction:column}.cta-button{width:100%}}#root{margin:0 auto;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
