:root{--text:#475569;--text-h:#0f172a;--bg:#f8fafc;--surface:#fff;--border:#e2e8f0;--accent:#6366f1;--accent-contrast:#fff;--medium:#f59e0b;--high:#ef4444;--shadow:#0f172a0f 0 1px 2px, #0f172a0a 0 4px 12px;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font:16px/1.45 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#94a3b8;--text-h:#f1f5f9;--bg:#0f172a;--surface:#161e2e;--border:#263349;--accent:#818cf8;--accent-contrast:#0f172a;--shadow:#00000059 0 1px 2px, #00000040 0 4px 12px}}*{box-sizing:border-box}body{overscroll-behavior-y:contain;min-height:100svh;margin:0}#root{min-height:100svh}h1{letter-spacing:-.4px;color:var(--text-h);margin:0;font-size:28px}p{margin:0}button,input{font:inherit}.app{max-width:560px;min-height:100svh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;margin:0 auto;display:flex}.app-header{padding:28px 20px 8px}.subtitle{color:var(--text);margin-top:4px;font-size:14px}.app-main{flex-direction:column;flex:1;gap:16px;padding:12px 20px 40px;display:flex}.banner{color:var(--text-h);align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.banner-offline{background:var(--medium);color:#1c1400;justify-content:center}.banner-install{background:var(--surface);border-bottom:1px solid var(--border)}.banner-install span{flex:1}.btn-close{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;line-height:1}.btn-primary{background:var(--accent);color:var(--accent-contrast);cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-weight:600}.btn-primary:disabled{opacity:.5;cursor:default}.btn-block{width:100%}.btn-secondary{background:var(--bg);color:var(--text-h);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:10px 18px;font-weight:600}.btn-danger{color:var(--high);border:1px solid var(--high);cursor:pointer;background:0 0;border-radius:10px;padding:10px 18px;font-weight:600}.btn-ghost{background:var(--accent);color:var(--accent-contrast);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.btn-icon{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px;line-height:1}.btn-link{color:var(--text);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:8px 0;font-size:13px;text-decoration:underline}.empty-state{text-align:center;color:var(--text);padding:32px 0;font-size:14px}.panel-form{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.field{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.field>span{color:var(--text);font-size:13px}.field input,.field select,.field textarea{border:1px solid var(--border);background:var(--bg);color:var(--text-h);resize:vertical;border-radius:10px;min-width:0;padding:10px 12px;font-family:inherit}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field input:disabled{opacity:.6}.field-row{gap:10px;display:flex}.form-actions{justify-content:flex-end;gap:10px;display:flex}.eye-fieldset{border:1px solid var(--border);border-radius:12px;margin:0;padding:12px}.eye-fieldset legend{color:var(--text-h);padding:0 6px;font-size:13px;font-weight:600}.patient-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.patient-card{text-align:left;background:var(--surface);border:1px solid var(--border);cursor:pointer;width:100%;color:inherit;font:inherit;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.patient-name{color:var(--text-h);font-weight:600}.patient-meta{color:var(--text);text-transform:capitalize;font-size:13px}.patient-detail{flex-direction:column;gap:16px;display:flex}.patient-summary{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.patient-summary h2{color:var(--text-h);margin:0;font-size:22px}.patient-facts{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.patient-facts dt{color:var(--text);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.patient-facts dd{color:var(--text-h);text-transform:capitalize;margin:2px 0 0}.section-header{justify-content:space-between;align-items:center;display:flex}.section-header h3{color:var(--text-h);margin:0;font-size:16px}.record-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.record-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.record-card-header{justify-content:space-between;align-items:center;display:flex}.record-date{color:var(--text-h);font-size:14px;font-weight:600}.eye-values-row{color:var(--text);grid-template-columns:24px 1fr 1fr 1fr;gap:8px;font-size:13px;display:grid}.eye-values-label{color:var(--text-h);font-weight:700}.record-notes{color:var(--text);margin:4px 0 0;font-size:13px}
