html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{margin:0;min-height:100vh;min-height:100dvh;font-size:16px;color:#1f1f1f;background:#f5f6f8;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;overflow-x:hidden;overscroll-behavior-x:none}#root{min-height:100vh;min-height:100dvh;height:100%;max-width:100vw;padding:16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom));box-sizing:border-box;display:flex;flex-direction:column}@media (min-width: 480px){#root{padding:24px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:max(24px,env(safe-area-inset-bottom))}}.app-shell{width:100%;max-width:min(960px,100vw);min-width:0;margin:0 auto;display:flex;flex-direction:column;flex:0 1 auto;min-height:0;gap:0}@media (min-width: 900px){.app-shell{max-width:420px}}.app-shell__main{flex:0 1 auto;min-height:0;overflow:visible;display:flex;flex-direction:column;gap:16px;padding-bottom:0}.app-shell__footer{flex-shrink:0;margin-top:16px}.page-heading{font-size:20px;font-weight:600;margin:0}.section-heading{font-size:16px;font-weight:600;margin:0}.available-slots-collapse .ant-collapse-header{padding:8px 12px}.available-slots-collapse .ant-collapse-content-box{padding:0 12px 8px}.nhs-banner{width:100%;max-width:100%;border-radius:0;background:#fff}.nhs-banner img{display:block;width:100%;max-width:100%;height:auto}.footer-info-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px;min-width:0}.footer-info-card a{word-break:break-all;overflow-wrap:break-word}.appointment-card .ant-card-head-title{margin:0 1em}.footer-divider{height:1px;background:#e5e7eb;margin:10px 0}.disclaimer-banner{display:flex;align-items:flex-start;gap:16px;background:#ffeb3b;border:2px solid #e0c200;color:#1f1f1f;padding:16px 18px;border-radius:8px}.disclaimer-icon{display:inline-flex;align-items:center;justify-content:center;background:#00000014;border-radius:50%;width:36px;height:36px;flex-shrink:0}.disclaimer-icon .anticon{color:#1f1f1f;font-size:18px}.disclaimer-title{font-weight:800;letter-spacing:.3px;margin-bottom:4px}.disclaimer-text{font-size:13px;line-height:1.4}.welcome-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:center;min-width:0}.welcome-illustration{display:flex;align-items:center;justify-content:center;min-width:0}.welcome-illustration svg{width:100%;max-width:260px;height:auto}.welcome-illustration img{width:100%;max-width:min(360px,100%);height:auto;display:block}.welcome-content{display:flex;flex-direction:column;gap:8px;min-width:0}.copy-bold{color:#000;font-weight:600}.ant-card,.ant-card-body,.ant-list-item,.ant-descriptions-item-content,.ant-segmented,.ant-space{min-width:0}.ant-card-body,.ant-list-item,.ant-descriptions-item-content,.ant-segmented{word-wrap:break-word;overflow-wrap:break-word}.ant-segmented-item-label{white-space:normal;text-align:center;line-height:1.3}.ant-btn{min-height:44px}.ant-list-item{min-height:44px;padding-top:12px;padding-bottom:12px}.ant-segmented .ant-segmented-item{min-height:44px;padding:8px 12px;display:inline-flex;align-items:center;justify-content:center}.ant-alert{word-wrap:break-word}.alert-after-appointment{margin-top:-8px!important;margin-bottom:8px!important}.ant-divider{margin:12px 0!important}.ant-list-item{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.ant-list-item-main{flex:1;min-width:0}.ant-list-item-extra{flex-shrink:0}.available-times-list .ant-list-item{flex-wrap:nowrap}.available-times-list .ant-list-item-main{flex:1;min-width:0;display:flex;align-items:center}.available-slots-collapse.ant-collapse{display:flex;flex-direction:column;gap:12px}.available-slots-collapse .ant-collapse-item{border-radius:8px;overflow:hidden;background:#fafafa;border:1px solid #f0f0f0}.available-slots-collapse .ant-collapse-header,.ant-collapse.ant-collapse-ghost>.ant-collapse-item>.ant-collapse-header{padding:12px 16px!important;align-items:center!important;min-height:44px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.available-slots-collapse .ant-collapse-content-box{padding:0 16px 12px!important}
