:root{--primary:#9f1835;--primary-dark:#741027;--primary-soft:#f8e8ec;--ink:#20232b;--muted:#667085;--line:#e6e8ec;--surface:#fff;--bg:#f6f7f9;--success:#177245;--danger:#b42318;--shadow:0 16px 42px rgba(31,35,43,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{min-height:100vh;margin:0;display:flex;flex-direction:column;background:var(--bg)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:8px;padding:10px;background:#fff;z-index:100}.skip-link:focus{left:8px}.site-header{background:#fff;border-bottom:1px solid var(--line);min-height:72px;display:flex;align-items:center}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink)}.brand:hover{text-decoration:none}.brand span{display:flex;flex-direction:column;line-height:1.05}.brand strong{font-size:18px;letter-spacing:-.02em}.brand small{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-top:5px}.secure-label{font-size:13px;color:var(--success);font-weight:650}.secure-label span{font-size:10px;margin-right:5px}.staff-nav{display:flex;align-items:center;gap:22px}.staff-nav a,.link-button{font:inherit;font-size:14px;font-weight:650;color:#4c5260}.staff-nav form{margin:0}.link-button{border:0;background:none;padding:0;cursor:pointer}.staff-nav a:hover,.link-button:hover{color:var(--primary)}main{flex:1}.site-footer{border-top:1px solid var(--line);background:#fff;padding:22px 0;color:var(--muted);font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px}.patient-hero{min-height:calc(100vh - 145px);display:flex;align-items:center;padding:64px 0;background:radial-gradient(circle at 15% 30%,#fae9ed 0,transparent 34%),linear-gradient(135deg,#fff 0,#f7f7f9 75%)}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:84px;align-items:center}.hero-copy h1{font-size:clamp(40px,5vw,66px);line-height:1.02;letter-spacing:-.055em;margin:16px 0 22px;max-width:680px}.hero-copy>p{font-size:18px;line-height:1.65;color:var(--muted);max-width:600px}.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.trust-list{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px;color:#4f5665;font-size:13px;font-weight:650}.trust-list span::first-letter{color:var(--success)}.card,.panel{background:var(--surface);border:1px solid rgba(221,224,229,.95);border-radius:18px;box-shadow:var(--shadow)}.card{padding:34px}.card h1,.card h2{letter-spacing:-.035em}.card h1{font-size:30px;margin:12px 0}.card h2{font-size:26px;margin:0 0 8px}.access-card{padding:38px}.muted{color:var(--muted);line-height:1.55}.field{margin:19px 0}.field label{display:block;font-size:13px;font-weight:750;margin-bottom:7px}.field label span{color:var(--primary);margin-left:3px}.field input,.field select,.field textarea{width:100%;min-height:46px;border:1px solid #cfd3da;border-radius:9px;background:#fff;padding:10px 12px;font:inherit;color:var(--ink);transition:border-color .15s,box-shadow .15s}.field textarea{min-height:90px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.search-form input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(159,24,53,.12)}.field input[type=checkbox]{width:18px;min-height:18px;margin-right:8px;vertical-align:middle}.field:has(input[type=checkbox]) label{display:inline}.has-error input,.has-error select,.has-error textarea{border-color:var(--danger)}.field-error,.help-text{display:block;font-size:12px;margin-top:6px}.field-error{color:var(--danger)}.help-text{color:var(--muted)}.form-errors,.errorlist{color:var(--danger);font-size:13px}.errorlist{padding-left:18px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border-radius:9px;border:1px solid transparent;font:inherit;font-size:14px;font-weight:750;cursor:pointer;transition:transform .15s,background .15s}.button:hover{text-decoration:none;transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-dark)}.button-secondary{background:#fff;border-color:#d2d6dc;color:#343945}.button-ghost{background:transparent;color:#555c68}.button-danger{background:var(--danger);color:#fff}.button-full{width:100%}.privacy-note,.support-note{color:var(--muted);font-size:12px;line-height:1.55;text-align:center;margin:20px 0 0}.narrow-section{padding:70px 0}.narrow-container{max-width:520px}.result-container{max-width:860px}.back-link{display:inline-block;margin-bottom:18px;font-size:13px;font-weight:700}.step-badge{font-size:11px;font-weight:800;color:var(--primary);background:var(--primary-soft);padding:6px 9px;border-radius:999px}.success-banner{display:flex;align-items:center;gap:12px;background:#eaf7f0;border:1px solid #b8e0ca;color:var(--success);padding:14px 18px;border-radius:12px;margin-bottom:18px}.success-banner>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--success);color:#fff}.success-banner div{display:flex;flex-direction:column}.success-banner small{margin-top:2px}.result-card{display:grid;grid-template-columns:1.25fr .75fr;gap:42px}.details-list{margin:24px 0 0}.details-list div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.details-list dt{font-size:12px;color:var(--muted);font-weight:700}.details-list dd{margin:0;font-size:14px;font-weight:650}.download-panel{border-radius:14px;background:#faf7f8;border:1px solid #ecdce1;padding:24px;display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center}.download-panel span{font-weight:750;margin-top:12px;word-break:break-word}.download-panel small{color:var(--muted);margin:4px 0 18px}.qr-wrap{display:grid;place-items:center;margin:20px 0}.qr-wrap img{border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}.secret-code{display:block;word-break:break-all;background:#f3f4f6;padding:10px;margin-top:8px;border-radius:7px}.staff-section{padding:46px 0 70px}.page-heading,.detail-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px}.page-heading h1,.detail-heading h1{font-size:38px;letter-spacing:-.045em;margin:7px 0 3px}.page-heading p,.detail-heading p{margin:0;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column}.stat-card span{font-size:13px;color:var(--muted);font-weight:650}.stat-card strong{font-size:35px;letter-spacing:-.04em;margin-top:8px}.panel{border-radius:14px;box-shadow:0 8px 25px rgba(31,35,43,.055)}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}.panel-heading h2,.detail-panel h2,.action-panel h2{font-size:18px;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em;background:#fafbfc}th,td{padding:14px 18px;border-bottom:1px solid var(--line);white-space:nowrap}tbody tr:last-child td{border-bottom:0}.empty-state{text-align:center;color:var(--muted);padding:40px}.actions{display:flex;gap:14px}.status,.scan{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.status-draft{background:#fff4dc;color:#8a5a00}.status-published,.scan-clean{background:#e8f6ee;color:#176b43}.status-revoked,.scan-infected,.scan-error{background:#feeceb;color:#9c2720}.scan-pending{background:#edf1f7;color:#526071}.search-form{display:flex;gap:10px;padding:18px;border-bottom:1px solid var(--line)}.search-form input{flex:1;min-height:44px;border:1px solid #cfd3da;border-radius:9px;padding:9px 12px;font:inherit}.form-container{max-width:760px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.detail-container{max-width:1000px}.detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.detail-panel,.action-panel{padding:24px}.protocol-box{background:#f7f1f3;border:1px dashed #d3a8b4;border-radius:10px;padding:14px;margin:18px 0;display:flex;justify-content:space-between;align-items:center}.protocol-box span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.protocol-box strong{font-family:ui-monospace,monospace;letter-spacing:.08em}.danger-details{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.danger-details summary{color:var(--danger);font-weight:700;cursor:pointer}.messages{padding-top:16px}.message{padding:12px 15px;border-radius:9px;margin-bottom:8px;font-size:13px}.message.success{background:#e8f6ee;color:#176b43}.message.error{background:#feeceb;color:#9c2720}.message.info{background:#edf3fb;color:#315b89}.error-card{text-align:center}.error-card>strong{font-size:72px;color:var(--primary-soft);line-height:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.hero-grid,.result-card,.detail-grid{grid-template-columns:1fr}.hero-grid{gap:36px}.patient-hero{padding:44px 0}.hero-copy h1{font-size:42px}.header-inner:has(.staff-nav){flex-wrap:wrap;padding:10px 0}.staff-nav{width:100%;order:2;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:10px}.staff-nav a{display:block}.stat-grid{grid-template-columns:1fr}.page-heading,.detail-heading{align-items:flex-start;flex-direction:column}.result-card{gap:24px}.footer-inner{flex-direction:column}.details-list div{grid-template-columns:120px 1fr}}
@media(max-width:520px){.container{width:min(calc(100% - 24px),1160px)}.card{padding:24px}.header-inner{min-height:66px}.secure-label{display:none}.hero-copy h1{font-size:36px}.trust-list{display:grid;gap:8px}.staff-nav a,.staff-nav .link-button{font-size:12px}.staff-section{padding-top:28px}.page-heading h1,.detail-heading h1{font-size:32px}.search-form{flex-direction:column}.details-list div{grid-template-columns:1fr;gap:5px}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}}
.cookie-notice{position:fixed;z-index:1000;left:24px;right:24px;bottom:24px;max-width:900px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;background:#fff;border:1px solid #d9dde4;border-radius:14px;box-shadow:0 18px 55px rgba(31,35,43,.2)}.cookie-notice[hidden]{display:none}.cookie-notice strong{font-size:16px}.cookie-notice p{margin:5px 0 3px;color:var(--muted);font-size:13px;line-height:1.5}.cookie-notice a{font-size:13px;font-weight:700}.cookie-notice .button{flex:none}.legal-section{padding:54px 0 80px}.legal-container{max-width:860px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:46px;box-shadow:var(--shadow)}.legal-container h1{font-size:42px;letter-spacing:-.045em;margin:8px 0}.legal-container h2{font-size:21px;margin:34px 0 10px}.legal-container p,.legal-container li{color:#515866;line-height:1.7}.legal-container li+li{margin-top:7px}.legal-updated{font-size:13px;margin-top:0}.legal-alert{margin:24px 0;padding:15px 17px;border:1px solid #ecd49b;background:#fff8e7;border-radius:10px;color:#73510a;font-size:13px;line-height:1.55}.legal-table{margin:18px 0}.legal-table td{white-space:normal;line-height:1.5}@media(max-width:650px){.cookie-notice{left:12px;right:12px;bottom:12px;align-items:stretch;flex-direction:column;gap:14px}.cookie-notice .button{width:100%}.legal-container{padding:26px}.legal-container h1{font-size:34px}}
.hero-clinic-logo{width:188px;height:188px;margin:0 0 18px -6px;display:grid;place-items:center;overflow:hidden;border-radius:38px;background:rgba(255,255,255,.86);box-shadow:0 16px 42px rgba(31,35,43,.09),inset 0 0 0 1px rgba(255,255,255,.9)}.hero-clinic-logo img{width:230px;height:230px;max-width:none;object-fit:contain;display:block;filter:drop-shadow(0 8px 12px rgba(20,77,49,.08))}@media(max-width:800px){.hero-clinic-logo{width:160px;height:160px;margin-bottom:15px;border-radius:32px}.hero-clinic-logo img{width:198px;height:198px}}@media(max-width:520px){.hero-clinic-logo{width:136px;height:136px;border-radius:28px}.hero-clinic-logo img{width:170px;height:170px}}
.hero-copy>.hero-clinic-logo{margin-left:auto;margin-right:auto}
