.patient-demo{max-width:var(--content-max);margin:auto;padding:var(--space-6)}.patient-demo h1{font-size:var(--font-display);line-height:var(--line-display)}.patient-demo .notice{border-left:4px solid var(--warning);padding:var(--space-4);background:var(--warning-surface);color:var(--warning)}.patient-demo .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:var(--space-6)}.patient-demo .grid section{margin:0}.patient-demo dt{color:var(--text-muted);margin-top:var(--space-4)}.patient-demo dd{margin:0}.patient-demo .actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:var(--space-4) 0}.patient-demo button{min-height:var(--control-height)}.patient-demo button:disabled{opacity:.65;cursor:default}.patient-demo :focus-visible{outline:3px solid var(--focus);outline-offset:4px}.patient-demo textarea{width:100%;min-height:10rem;background:var(--surface);color:var(--text)}.patient-demo svg{width:100%;max-height:22rem;background:var(--surface-muted);border-radius:var(--radius-card)}.patient-demo svg .route{stroke:var(--brand-cyan);stroke-width:6;fill:none}.patient-demo svg .street{stroke:var(--border);stroke-width:16}.patient-demo svg .home{fill:var(--action)}.patient-demo svg .chemist{fill:var(--success);stroke:var(--surface);stroke-width:4}.patient-demo svg text{fill:var(--text);font:16px var(--font-sans)}.patient-demo table{width:100%;border-collapse:collapse;font-size:var(--font-dense)}.patient-demo td,.patient-demo th{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--border)}.patient-demo .table-wrap{overflow-x:auto}.patient-portal{background:var(--surface);color:var(--text);min-height:100vh}.patient-portal .video-tracks video{width:100%;max-height:26rem;border-radius:var(--radius-card);background:var(--surface-muted)}.patient-portal .tracking-map iframe{display:block;width:100%;height:22rem;border:1px solid var(--border);border-radius:var(--radius-card);margin:var(--space-4) 0}.patient-portal .print-only{display:none}.patient-portal a{display:inline-block;min-height:24px;padding-block:2px}.patient-portal p>a:only-child,.patient-portal section>a,.patient-portal>section>a{min-height:44px;display:inline-flex;align-items:center}.patient-portal .portal-demo-notice{border-left:4px solid var(--warning);padding:var(--space-4);background:var(--warning-surface);color:var(--text)}.patient-portal #portal-factura label{display:block;margin-top:var(--space-4)}.patient-portal #portal-factura input,.patient-portal #portal-factura select{display:block;width:100%;min-height:var(--control-height);margin-top:var(--space-2)}.patient-portal #portal-factura button{margin-top:var(--space-4)}@media print{.patient-portal .portal-results,body :has(.portal-results),body:has(.portal-results),html:has(.portal-results){--surface:#fff;--surface-raised:#fff;--surface-muted:#fff;--text:#212529;--text-muted:#52626d;--link:#00599e;color-scheme:light}.patient-portal .portal-results,.patient-portal .portal-results article{background:#fff!important;color:#212529!important}body:has(.portal-results),html:has(.portal-results){background:var(--surface)!important;color:var(--text)!important}@page{size:A4;margin:18mm}body :has(.portal-results)>:not(.portal-results):not(:has(.portal-results)){display:none!important}body :has(.portal-results){display:block!important;margin:0!important;padding:0!important;min-height:0!important;background:var(--surface)!important;color:var(--text)!important}.patient-portal .portal-results{border:0;box-shadow:none;margin:0;padding:0}.patient-portal .print-controls{display:none}.patient-portal .print-only{display:block;font-weight:700}.patient-portal .portal-results article{page-break-inside:avoid;break-inside:avoid}.patient-portal .portal-results article.print-excluded{display:none!important}.patient-portal .portal-results dd{white-space:pre-wrap;overflow-wrap:anywhere}}