*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #1565c0;--color-primary-dark: #0d47a1;--color-primary-light: #e3f2fd;--color-text: #1a1a1a;--color-text-secondary: #555;--color-bg: #ffffff;--color-surface: #f5f5f5;--color-border: #ddd;--color-error: #c62828;--color-success: #2e7d32;--radius: 12px;--shadow: 0 2px 8px rgba(0, 0, 0, .1)}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased}#app{max-width:600px;margin:0 auto;padding:0 16px 80px}h1{font-size:1.5rem;font-weight:700}h2{font-size:1.25rem;font-weight:600}h3{font-size:1.125rem;font-weight:600}.header{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:2px solid var(--color-primary);margin-bottom:16px}.header h1{flex:1;color:var(--color-primary-dark)}.nav{display:flex;gap:8px}.nav a{display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:8px 12px;border-radius:var(--radius);color:var(--color-primary);text-decoration:none;font-weight:600;font-size:.875rem;background:var(--color-primary-light);transition:background .15s}.nav a:hover,.nav a:focus-visible{background:#bbdefb}.nav a[aria-current=page]{background:var(--color-primary);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:56px;min-width:56px;padding:14px 24px;border:none;border-radius:var(--radius);font-size:1.125rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover,.btn-primary:focus-visible{background:var(--color-primary-dark)}.btn-danger{background:var(--color-error);color:#fff}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border)}.btn-block{width:100%}.card{background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius);padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}.card-selected{border-color:var(--color-primary);background:var(--color-primary-light)}.checkbox-row{display:flex;align-items:flex-start;gap:14px;cursor:pointer;-webkit-tap-highlight-color:transparent}.checkbox-row input[type=checkbox]{width:28px;height:28px;margin-top:2px;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.section-header{background:var(--color-primary-light);color:var(--color-primary-dark);padding:10px 16px;border-radius:var(--radius);margin:20px 0 12px;font-weight:600;font-size:1.125rem}.patient-bar{background:var(--color-surface);border-radius:var(--radius);padding:12px 16px;margin-bottom:16px}.patient-bar strong{font-size:1.125rem}.patient-bar .meta{color:var(--color-text-secondary);font-size:.875rem;margin-top:4px}.input{width:100%;min-height:48px;padding:12px 16px;border:2px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;background:var(--color-bg)}.input:focus{outline:none;border-color:var(--color-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:600;margin-bottom:6px}.scanner-container{position:relative;width:100%;aspect-ratio:1;max-height:70vh;background:#000;border-radius:var(--radius);overflow:hidden;margin-bottom:16px}.scanner-container video{width:100%;height:100%;object-fit:cover}.scanner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.scanner-crosshair{width:60%;height:60%;border:3px solid rgba(255,255,255,.7);border-radius:8px}.empty-state{text-align:center;padding:40px 20px;color:var(--color-text-secondary)}.empty-state p{font-size:1.125rem;margin-bottom:16px}.list-item{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid var(--color-border);border-radius:var(--radius);margin-bottom:8px;text-decoration:none;color:inherit;cursor:pointer;transition:background .15s;min-height:56px}.list-item:hover,.list-item:focus-visible{background:var(--color-surface)}.list-item .title{font-weight:600;font-size:1rem}.list-item .subtitle{color:var(--color-text-secondary);font-size:.875rem}.sticky-bottom{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;background:var(--color-bg);border-top:2px solid var(--color-border);display:flex;justify-content:center}.sticky-bottom .btn{max-width:600px;width:100%}.error-msg{background:#ffebee;color:var(--color-error);padding:12px 16px;border-radius:var(--radius);margin-bottom:16px;font-weight:600}.loading{text-align:center;padding:40px;color:var(--color-text-secondary);font-size:1.125rem}.med-name{font-weight:600;font-size:1rem}.med-detail{color:var(--color-text-secondary);font-size:.875rem;margin-top:4px}.med-dosage{font-size:1rem;margin-top:6px;font-weight:500}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}
