:root{--ink: #16232e;--ink-muted: #4a5b68;--ink-faint: #7b8a95;--line: #d7dee4;--line-soft: #e8edf1;--surface: #ffffff;--page: #f2f5f7;--accent: #1f4b6e;--accent-dark: #16374f;--accent-tint: #eaf0f5;--on-accent-soft: #c6d8e6;--base-size: 15px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--measure: 1080px;--card-pad: .75rem 1rem;--card-shadow: none;--head-bg: var(--accent);--head-fg: #ffffff;--title-size: 1.05rem;--h1-size: 1.5rem;--section-title-size: 1.05rem;--row-pad: .65rem .85rem;--danger: #7d2222;--danger-bg: #fdf1f1;--restricted: #6b5312;--restricted-bg: #fdf6e3;--radius: 4px}:root[data-journey=patient]{--ink: #1b1f24;--ink-muted: #5a6470;--ink-faint: #7b8a95;--line: #d8dee6;--line-soft: #e8edf1;--page: #f9f9f9;--accent: #1d77d2;--accent-dark: #16599c;--accent-tint: #eef5fc;--on-accent-soft: #cfcfcf;--base-size: 17px;--font: Raleway, "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--measure: 52rem;--card-pad: 1.4rem 1.5rem;--card-shadow: 0 1px 3px rgba(16, 32, 48, .07);--head-bg: #333333;--head-fg: #ffffff;--title-size: 1.35rem;--h1-size: 2rem;--section-title-size: 1.2rem;--row-pad: .9rem .25rem;--danger: #8a1c1c;--danger-bg: #fdf2f2;--restricted: #7a4a00;--restricted-bg: #fff4e0;--radius: 8px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--page);color:var(--ink);font-size:var(--base-size);font-family:var(--font);line-height:1.5}.shell{display:flex;flex-direction:column;min-height:100vh}.shell__bar{background:var(--head-bg);color:var(--head-fg);border-bottom:3px solid var(--accent-dark)}.shell__inner{max-width:var(--measure);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.75rem 1.5rem}.shell__brand{display:flex;align-items:baseline;gap:.6rem}.shell__title{font-size:var(--title-size);font-weight:700;letter-spacing:.02em}.shell__sub{font-size:.78rem;color:var(--on-accent-soft);text-transform:uppercase;letter-spacing:.08em}.shell__actions{display:flex;align-items:center;gap:.75rem}.shell__logout{font:inherit;font-size:.9rem;color:var(--surface);background:transparent;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius);padding:.35rem .8rem;cursor:pointer}.shell__logout:hover{background:#ffffff1f}.shell__actions .language-switcher select{background:#ffffff1f;color:var(--surface);border-color:#ffffff73}.signin{font:inherit;font-size:1rem;color:var(--surface);background:var(--accent);border:1px solid transparent;border-radius:var(--radius);padding:.7rem 1.4rem;cursor:pointer}.signin[disabled]{opacity:.6;cursor:progress}.signin__aside{font-size:.88rem;color:var(--ink-muted)}.app{max-width:var(--measure);margin:0 auto;padding:1.5rem 1rem 4rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.summary__header{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.summary__header h1{font-size:var(--h1-size);margin:0}.summary__patient{margin:.25rem 0 0;color:var(--ink-muted)}.summary__notice{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);padding:.75rem 1rem;margin:0 0 1.5rem;color:var(--ink-muted);font-size:.9rem}.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--card-shadow);margin-bottom:1rem;overflow:hidden}.section__title{font-size:var(--section-title-size);margin:0;padding:var(--card-pad);border-bottom:1px solid var(--line)}.section__body{padding:var(--card-pad)}.section__status{margin:0;color:var(--ink-muted);font-style:italic}.section__status--error{color:var(--danger);font-style:normal}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:var(--row-pad);border-bottom:1px solid var(--line-soft);vertical-align:top}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:#f7fafc}.table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--accent-dark);background:var(--accent-tint);border-bottom:1px solid var(--line)}.definition-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem 1.5rem;margin:0}.definition-list dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted)}.definition-list dd{margin:.125rem 0 0}.badge{display:inline-block;border-radius:999px;font-size:.7rem;font-weight:600;padding:.05rem .5rem;white-space:nowrap}.badge--restricted{background:var(--restricted-bg);color:var(--restricted);border:1px solid currentColor}.status-page{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:2rem;max-width:38rem;margin:3rem auto}.status-page h1{font-size:1.3rem;margin-top:0}.status-page--error{border-left:4px solid var(--danger);background:var(--danger-bg)}.status-page__reference{color:var(--ink-muted);font-size:.85rem}.language-switcher select{border:1px solid var(--line);border-radius:var(--radius);padding:.35rem .5rem;background:var(--surface);color:inherit}.summary__block{font:inherit;font-size:.9rem;color:var(--accent);background:transparent;border:1px solid var(--line);border-radius:var(--radius);padding:.4rem .9rem;cursor:pointer;white-space:nowrap}.summary__block:hover{border-color:var(--accent)}.block{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000073;z-index:10}.block__panel{width:100%;max-width:30rem;max-height:90vh;overflow-y:auto;background:var(--surface);border-radius:var(--radius);padding:1.5rem}.block__panel h2{margin-top:0}.block__panel input[type=text]{width:100%;font:inherit;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius)}.block__results{list-style:none;padding:0;margin:.6rem 0 0}.block__results button{width:100%;display:flex;flex-direction:column;gap:.15rem;text-align:left;font:inherit;padding:.6rem .7rem;background:transparent;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:.4rem;cursor:pointer}.block__results button:hover{border-color:var(--accent)}.block__results span{font-size:.85rem;color:var(--ink-muted)}.block__aside{font-size:.88rem;color:var(--ink-muted)}.block__actions{display:flex;gap:.6rem;margin-top:1rem}.block__actions button{font:inherit;padding:.5rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:transparent;cursor:pointer}.block__actions button.block__danger{color:var(--surface);background:var(--danger);border-color:var(--danger)}.block__actions button.block__danger:disabled{opacity:.6;cursor:default}.block__error{color:var(--danger)}.block__close{margin-top:1.2rem;font:inherit;font-size:.9rem;background:transparent;border:0;color:var(--ink-muted);text-decoration:underline;cursor:pointer}.summary__header{gap:1rem}.block__current{margin-bottom:1.1rem;padding-bottom:.9rem;border-bottom:1px solid var(--line)}.block__current h3{margin:0 0 .5rem;font-size:.95rem}.block__current ul{list-style:none;padding:0;margin:0}.block__current li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.3rem 0}.block__current button{font:inherit;font-size:.85rem;padding:.25rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:transparent;cursor:pointer}.block__current button:hover{border-color:var(--accent);color:var(--accent)}:root[data-journey=patient] .table th{background:transparent;color:var(--ink-faint);border-bottom:2px solid var(--line)}:root[data-journey=patient] .table tbody tr:hover td{background:transparent}:root[data-journey=patient] .section{margin-bottom:1.5rem}:root[data-journey=patient] .section__title{font-weight:700;letter-spacing:-.01em}:root[data-journey=patient] .shell__inner{padding:1rem 1.5rem}:root[data-journey=patient] .shell__sub{text-transform:none;letter-spacing:0;font-size:.85rem}.shell__mark{display:inline-flex;align-items:center;margin-right:.15rem}.shell__mark svg{width:112px;height:28px;color:currentColor}@media (max-width: 34rem){.shell__mark svg{width:92px;height:23px}}
