*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.5}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;padding:1.5rem 2rem;box-shadow:0 2px 4px #0000001a}.header h1{font-size:1.5rem;font-weight:600}.header .subtitle{font-size:.875rem;opacity:.9;margin-top:.25rem}.header .mode-badge{display:inline-block;background:#fff3;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;margin-left:.5rem}.cql-mode-toggle{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.2)}.cql-mode-toggle label{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.cql-mode-toggle select{padding:.25rem .5rem;border-radius:4px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;font-size:.875rem;cursor:pointer}.cql-mode-toggle select:focus{outline:none;border-color:#fff9}.cql-mode-toggle select option{color:#333;background:#fff}.cql-mode-info{font-size:.75rem;opacity:.8;font-style:italic}.main{flex:1;padding:2rem;max-width:800px;margin:0 auto;width:100%}.patient-selector{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.patient-selector label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151}.patient-selector select{width:100%;padding:.75rem;font-size:1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}.patient-selector select:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.error-card{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.loading{text-align:center;padding:2rem;color:#6b7280;font-style:italic}.patient-info{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.patient-info h2{font-size:1rem;font-weight:600;color:#374151;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.patient-info dl{display:grid;grid-template-columns:120px 1fr;gap:.5rem}.patient-info dt{font-weight:500;color:#6b7280}.patient-info dd{color:#111827}.cds-cards{display:flex;flex-direction:column;gap:1rem}.cds-card{padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.cds-card.recommend{background:#f0fdf4;border:2px solid #22c55e}.cds-card.no-recommend{background:#fafafa;border:2px solid #9ca3af}.cds-card h2{font-size:1rem;font-weight:600;color:#374151;margin-bottom:1rem}.recommendation{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:6px;margin-bottom:.5rem}.recommendation:last-child{margin-bottom:0}.cds-card.recommend .recommendation{background:#dcfce7}.cds-card.no-recommend .recommendation{background:#f3f4f6}.recommendation .icon{font-size:1.5rem;font-weight:700}.cds-card.recommend .icon{color:#16a34a}.cds-card.no-recommend .icon{color:#6b7280}.recommendation .text{font-size:1.125rem;font-weight:600}.cds-card.recommend .text{color:#166534}.cds-card.no-recommend .text{color:#4b5563}.cds-details{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.cds-details summary{cursor:pointer;font-size:.875rem;color:#6b7280;padding:.5rem 0}.cds-details summary:hover{color:#374151}.cds-details dl{margin-top:1rem;display:grid;grid-template-columns:200px 1fr;gap:.5rem;font-size:.875rem}.cds-details dt{color:#6b7280}.cds-details dd{color:#111827}.footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:1rem 2rem;text-align:center;color:#6b7280;font-size:.875rem}.execution-info{background:#faf5ff;border:1px solid #e9d5ff;border-radius:6px;padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.875rem;color:#6b21a8}.execution-info code{background:#7c3aed1a;padding:.125rem .375rem;border-radius:3px;font-family:monospace}.smart-context-info{background:#ecfdf5;border:1px solid #6ee7b7;border-radius:6px;padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.875rem;color:#047857}.smart-context-info strong{font-family:monospace;background:#0478571a;padding:.125rem .375rem;border-radius:3px}
