:root{--bg:#f8fafc;--text:#334155;--text-heading:#0f172a;--muted:#64748b;--brand:#4f46e5;--brand-hover:#4338ca;--card:#fff;--border:#e2e8f0;--input-bg:#fff;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}body,html{padding:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-weight:600}.container{max-width:1024px;margin:0 auto;padding:24px}.nav{background:var(--card);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm)}.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;max-width:1024px;margin:0 auto}.brand{font-weight:800;color:var(--brand);font-size:1.25rem;letter-spacing:-.025em}.links a{margin-left:24px;text-decoration:none;color:var(--text);font-weight:500;transition:color .2s}.links a:hover{color:var(--brand)}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:16px;gap:16px}@media (max-width:640px){.grid{display:flex;flex-direction:column;gap:16px}.grid>*{grid-column:auto!important;width:100%}}.row{display:flex;gap:16px;flex-wrap:wrap}.row>*{flex:1 1}label{display:block;font-weight:500;margin-bottom:6px;color:var(--text-heading);font-size:.875rem}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--input-bg);font-size:.95rem;color:var(--text-heading);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(79,70,229,.1)}textarea{min-height:100px;resize:vertical}button{background:var(--brand);color:#fff;border:none;border-radius:8px;padding:10px 16px;cursor:pointer;font-weight:500;font-size:.95rem;transition:background-color .2s}button:hover{background:var(--brand-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:transparent;color:var(--brand);border:1px solid transparent}button.ghost:hover{background:#f1f5f9}button.danger{background:#ef4444}button.danger:hover{background:#dc2626}.list{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#f1f5f9;color:var(--text-heading);border:1px solid var(--border);border-radius:9999px;padding:6px 12px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.chip:hover{background:#e2e8f0}.chip.selected{background:#e0e7ff;color:var(--brand);border-color:#c7d2fe}@media print{.no-print{display:none!important}body{background:#fff;color:#000}.container{max-width:none;padding:0;margin:0}.card{border:none;box-shadow:none;padding:0}.print-page{margin:0;padding:20mm}.prescription{font-family:Times New Roman,serif;font-size:10.5pt;line-height:1.5}.prescription h1{font-size:22.5pt;margin-bottom:4px;color:#000}.prescription h2{font-size:12.5pt;margin:16px 0 8px;border-bottom:1px solid #000;padding-bottom:4px;color:#000}.prescription .section{margin:12px 0}.prescription .rx-symbol{font-size:18.5pt;font-weight:700;font-family:serif;margin-bottom:8px}ol,ul{padding-left:24px;margin:0}li{margin-bottom:4px}}