:root{font-family:system-ui,sans-serif;color:#163a49;background:#edf7f7;line-height:1.6}*{box-sizing:border-box}body{margin:0}main{max-width:650px;margin:40px auto;padding:24px}.brand{font-weight:750;color:#087d7b}h1{font-size:clamp(2rem,6vw,3rem);line-height:1.15}section{background:white;padding:28px;border:1px solid #c9e2e1;border-radius:20px;box-shadow:0 8px 25px #1232}label{display:block;margin:16px 0;font-weight:600}input:not([type=checkbox]){display:block;width:100%;font:inherit;padding:13px;margin-top:6px;border:1px solid #9bb9c3;border-radius:9px}button{font:inherit;font-weight:650;padding:12px 18px;border-radius:10px;cursor:pointer;background:#087f79;color:white;border:0;margin:5px 6px 5px 0}button:disabled{opacity:.55;cursor:wait}.actions button,#logout{color:#16586e;background:#eaf3f6}a{color:#096589}#status{padding:12px 0;font-weight:550}#consent-label{font-size:.9rem}input[type=checkbox]{width:20px;height:20px;vertical-align:middle}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #e0a21d;outline-offset:3px}[hidden]{display:none!important}
.access-progress{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;margin:28px 0 14px}.access-progress li{display:flex;align-items:center;gap:9px;padding:12px 10px;border:1px solid #c9dcdf;border-radius:12px;color:#536c76;background:#f9fcfc;font-size:.9rem;font-weight:650;line-height:1.3}.step-number{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border-radius:50%;background:#e5ecee;color:#365966}.access-progress .is-current{background:#e3f4f0;border:2px solid #087f79;padding:11px 9px;color:#095b58}.is-current .step-number{background:#087f79;color:#fff}.access-progress .is-complete{background:#f1f8f6;color:#17644d}.is-complete .step-number{background:#cce9dc;color:#135a43}.journey-next{margin:0 0 24px;font-weight:650;color:#165c60}.confirmation-panel{padding:18px 20px;margin:20px 0;border:1px solid #b3d5d1;border-left:5px solid #087f79;border-radius:14px;background:#eff8f6}.confirmation-panel h3{margin:0 0 8px;line-height:1.35}.confirmation-panel p{margin:8px 0 12px}.secondary{background:#fff;color:#16586e;border:1px solid #b4cbd1}#account-help{font-size:.94rem;color:#345664}#purchase{margin:20px 0;padding:20px;border:1px solid #c9e2e1;border-radius:14px}#enter{width:100%;margin:8px 0 18px;font-size:1.1rem}#status:empty{display:none}@media(max-width:520px){main{margin:16px auto;padding:18px}section{padding:20px}.access-progress{gap:6px}.access-progress li{flex-direction:column;align-items:flex-start;padding:10px 8px;font-size:.8rem}.access-progress .is-current{padding:9px 7px}.confirmation-panel{padding:16px}.confirmation-panel button,.actions button,#pay,#refresh-payment,#logout{width:100%;margin-right:0}#purchase{padding:16px}}
