:root{--teal:#626e58;--ink:#414743}*{box-sizing:border-box}body{margin:0;background:#faf9f5;color:var(--ink);font:15px -apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN',sans-serif;line-height:1.7}button,input{font:inherit}button,a{cursor:pointer}a{color:#59664f}button{border:1px solid #d5d8cd;background:white;padding:10px 18px;border-radius:6px;color:var(--ink)}button.primary{background:var(--teal);border-color:var(--teal);color:#fff}button:disabled{opacity:.55;cursor:wait}input{width:100%;border:1px solid #d5d8cd;border-radius:5px;padding:12px;margin:6px 0 18px}label{font-size:13px;font-weight:600}h1{font-size:25px;margin:0 0 12px}h2{font-size:20px;margin:0}p{margin:12px 0}.muted{color:#747970;font-size:13px}.brand{display:flex;align-items:center;gap:12px}.mark{font:italic bold 37px Georgia;color:var(--teal)}header{background:#fff;border-bottom:1px solid #e3e5dd;padding:16px max(20px,calc((100vw - 1000px)/2));display:flex;justify-content:space-between;gap:16px;align-items:center}main{max-width:1000px;margin:35px auto;padding:0 20px}.login{max-width:460px;margin:65px auto;padding:32px;background:#fff;border:1px solid #e3e5dd;border-radius:10px;box-shadow:0 7px 25px #5277790a}.login button{width:100%}.error{color:#a43f3f;min-height:24px;font-size:13px}.card{background:#fff;border:1px solid #e3e5dd;border-radius:8px;padding:22px;margin:16px 0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 16px}.filters .active{color:white;background:var(--teal);border-color:var(--teal)}.docrow{display:flex;justify-content:space-between;align-items:center;gap:20px}.badge{display:inline-block;background:#edf0e7;color:#526047;border-radius:4px;padding:3px 8px;font-size:12px;margin-bottom:9px}.empty{text-align:center;padding:60px 20px;color:#747970}.bodytext{white-space:pre-wrap;overflow-wrap:anywhere}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.sheet{background:white;padding:38px;border:1px solid #e3e5dd;margin-top:20px}.sheet>h1{text-align:center;letter-spacing:7px}.summary{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid #d5d8cd;gap:15px}.summary strong{font-size:25px}.receipt-table{border-collapse:collapse;width:100%;margin:24px 0}.receipt-table th,.receipt-table td{border-bottom:1px solid #e3e5dd;padding:12px 8px;text-align:left}.receipt-table th{font-size:13px;color:#747970}.attachment{padding:18px;background:#f4f2ed;margin-top:24px;border-radius:6px}.footer{font-size:12px;color:#747970;text-align:center;margin:40px 20px}.notice{border-left:3px solid var(--teal);padding:10px 15px;background:#f4f2ed;font-size:13px}@media(max-width:600px){header{padding:13px 16px}.brand strong{font-size:12px}.login{margin:30px 16px;padding:24px}main{margin:23px auto;padding:0 16px}.card{padding:18px}.docrow{align-items:flex-start}.sheet{padding:22px 15px}.receipt-table{font-size:12px}.summary strong{font-size:22px}h1{font-size:22px}}@media print{header,.no-print,.footer{display:none!important}body{background:white}main{max-width:none;padding:0;margin:0}.sheet{border:0;padding:0}.card{border:0}.bodytext{white-space:pre-wrap}}

/* Digital patient card: matched to the supplied LINE screenshot. */
:root{--ink:#4c4c4c;--teal:#626e58}body{background:#faf9f5;color:#4c4c4c}header{background:#f4f2ed;color:#fff;min-height:66px;padding:20px 16px;border:0;font-size:15px;display:block}.patient-strip{background:#fff;min-height:59px;padding:18px 16px;border-bottom:1px solid #ccc;display:flex;justify-content:space-between;gap:8px;font-size:14px}.patient-strip strong:first-child{max-width:52%;overflow-wrap:anywhere}.digital-home{width:100%;max-width:520px;padding:17px 34px;margin:0 auto}.ticket{background:#fff;border-radius:11px;box-shadow:0 6px 8px #0004;min-height:156px;padding:16px;margin-bottom:26px}.ticket h2{font-size:11px;border-bottom:1px solid #ccc;padding-bottom:2px}.today{min-height:105px;display:flex;justify-content:center;align-items:center;text-align:center;font-size:17px;font-weight:700;flex-direction:column}.today small{display:block;font-size:12px;margin-top:5px}.points{border:1px solid #ccc;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:7px 16px;margin-bottom:8px;height:75px}.points strong{font-size:15px}.points span{font-size:43px;line-height:1.2}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.menu-grid button{border:1px solid #ccc;border-radius:5px;padding:16px 5px;background:#fff;min-height:94px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;font-size:15px;color:#363636}.menu-grid svg{width:30px;height:30px}.portal-account{margin-top:135px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#888}.portal-account button{font-size:11px;background:none;padding:5px 8px;border:0}main>h1{margin-top:20px}select{width:100%;padding:12px;margin:8px 0 18px;font:inherit;background:white;border:1px solid #ccc;border-radius:5px}.docrow{flex-wrap:wrap}header strong{display:block;max-width:1000px;margin:auto}@media(min-width:601px){header{padding:26px 30px}.patient-strip{padding:22px max(30px,calc((100vw - 1000px)/2))}.digital-home{padding-top:24px}.ticket{min-height:190px}.today{min-height:133px}.menu-grid button{min-height:115px}}@media print{.patient-strip{display:none}}

[hidden]{display:none!important}

.ticket-visit{padding:7px 0}.ticket-visit+.ticket-visit{border-top:1px solid #e3e5dd}.ticket-visit strong{font-size:16px}.card-qr{text-align:center;padding:0 20px 25px}.card-qr img{max-width:100%;height:auto}.card-qr p{font-size:15px}.card-qr small{color:#666}.card-reservation-select{display:block;text-align:left;margin:16px 0 10px;font-size:12px;color:#59664f}.card-reservation-select select{display:block;margin:5px 0 0;padding:8px;width:100%;font-size:13px}.points>div{display:grid;gap:2px}.points small{display:block;color:#747970;font-size:11px}.reservation-documents{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid #e3e5dd;font-size:12px}.reservation-document{padding:5px 8px;font-size:12px}.course-card strong{font-size:18px}.login #cancel-link{margin-top:15px;width:100%}

/* Public booking: measured against the clinic's original patient reservation flow. */
.booking-screen{color:#505050;font-size:16px;line-height:1.5;min-height:100vh;background:#faf9f5}
.booking-screen header{height:62px;min-height:62px;padding:22px 16px;background:#f4f2ed;font-size:14px;line-height:18px}
.booking-screen header strong{max-width:none}
.booking-nav{height:44px;background:white;border-bottom:1px solid #ddd}
.booking-nav>div{max-width:480px;margin:auto;position:relative;height:100%;display:flex;align-items:center;justify-content:center}
.booking-nav h1{font-size:16px;margin:0;font-weight:700}
.booking-nav button{position:absolute;left:0;top:0;height:44px;border:0;background:none;color:#626e58;padding:0 12px;font-size:27px;display:flex;align-items:center;gap:10px}
.booking-nav button span{font-size:14px;font-weight:700}
.booking-main{width:100%;max-width:480px;margin:16px auto 0;padding:0 0 40px}
.booking-intro{font-size:14px;line-height:21px;margin-bottom:24px}
.booking-intro p{margin:0 0 24px}
.booking-options{display:grid;gap:8px}
.booking-options button{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:44px;border:1px solid #ccc;border-radius:4px;padding:10px 12px;color:#505050;font-size:16px;font-weight:700;background:white}
.booking-options button>span{font-size:24px;line-height:20px;color:#888;font-weight:400}
.booking-options small,.booking-summary small{display:block;font-size:12px;color:#888;font-weight:400;line-height:18px}
.booking-category{margin:0 0 24px}.booking-category h2{font-size:16px;margin:0 0 12px}
.booking-summary{background:white;border:1px solid #ccc;border-radius:8px;padding:8px 12px 12px;min-height:86px}
.booking-summary strong{font-size:16px;line-height:24px}.booking-summary small:last-child{margin-top:6px}
.booking-notice-title{font-size:16px;margin:24px 0 12px}.booking-notice-title span{color:#b95252}
.booking-notice{background:white;border:1px solid #ccc;border-radius:8px;padding:16px;white-space:pre-line;font-size:16px;line-height:24px}
.booking-ack{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px 0;font-size:14px;font-weight:400}
.booking-ack input{width:18px;height:18px;margin:0;accent-color:#626e58}
.booking-screen .booking-next{display:block;width:312px;max-width:100%;height:56px;border:0;border-radius:30px;background:#626e58;color:white;font-size:16px;letter-spacing:1px;font-weight:700;padding:12px;margin:24px auto 0;cursor:pointer}
.booking-screen .booking-next:disabled{opacity:1;background:#ddd;cursor:not-allowed}
.booking-prompt{font-size:16px;font-weight:700;margin:16px 0 18px;line-height:24px}.booking-prompt span{color:#b44747}
.booking-calendar{border:1px solid #bbb;border-radius:10px;background:white;overflow:hidden}
.booking-week{height:59px;border-bottom:1px solid #bbb;display:flex;align-items:center;justify-content:space-between;gap:0;padding:0 12px}
.booking-week strong{font-size:20px;white-space:nowrap;letter-spacing:-.4px}
.booking-week button{border:0;background:none;padding:0;width:28px;height:40px;font-size:30px;line-height:1;color:#555}.booking-week button:disabled{visibility:hidden}
.booking-calendar table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center}
.booking-calendar th:first-child{width:18%}.booking-calendar thead th{height:56px;padding:4px 0;font-size:18px;font-weight:700}
.booking-calendar th small{display:block;font-size:12px;font-weight:400}.booking-calendar .sunday{color:#bb5050}.booking-calendar .saturday{color:#3658a3}
.booking-calendar tbody tr{height:46px;border-top:1px solid #eee}.booking-calendar tbody th{font-size:18px;font-weight:400;border-right:1px solid #eee;padding:0}
.booking-calendar td{height:46px;padding:0}.booking-calendar td button{width:100%;height:45px;border:0;border-radius:0;padding:0;color:#626e58;background:white;font:30px/1 Arial,sans-serif}.booking-calendar td button.selected{background:#e6ebde}.booking-calendar td>span{color:#666;font:28px/1 Arial,sans-serif}
.booking-fixed{position:fixed;z-index:10;left:0;right:0;bottom:0;background:white;box-shadow:0 -4px 6px #344b4b20;padding:16px 16px 8px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
.booking-fixed>div{max-width:350px;margin:auto}.booking-choice{display:flex;align-items:center;gap:8px;min-height:40px;position:relative}.booking-choice label{font-size:12px;font-weight:400;white-space:nowrap;width:44px;flex-shrink:0;text-align:right}
.booking-choice>button:not(.choice-clear){height:32px;width:288px;text-align:left;padding:4px 8px;border:1px solid #ccc;border-radius:0;font-size:14px;white-space:nowrap;color:#555;background:#fafafa;font-weight:400}
.booking-choice>button.filled:not(.choice-clear){background:white;border-color:transparent;padding-right:24px}
.booking-choice .choice-clear{position:absolute;right:0;top:12px;width:16px;height:16px;border:0;border-radius:50%;padding:0;background:#aaa;color:white;font:14px/16px Arial}
.booking-fixed .booking-next{margin-top:12px}.with-booking-fixed{padding-bottom:235px}.booking-help{font-size:12px;color:#777}.booking-history-choices{font-size:13px}
@media(max-width:511px){.booking-main{padding-left:16px;padding-right:16px}.booking-calendar{margin:0 -16px;border-left:0;border-right:0}.booking-week{padding:0 14px}.booking-week strong{font-size:20px}.booking-calendar th:first-child{width:19%}.booking-fixed>div{max-width:312px}.booking-fixed .booking-next{width:312px}.booking-choice{gap:8px}.booking-choice>button:not(.choice-clear){font-size:14px}.booking-nav>div{width:100%}}
@media(max-width:359px){.booking-week strong{font-size:17px}.booking-choice>button:not(.choice-clear){font-size:12px}.booking-calendar tbody th{font-size:15px}}
.booking-category{margin:8px 0}.booking-category summary{list-style:none;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:3px;padding:9px 16px;font-size:16px;font-weight:700;min-height:42px;display:flex;align-items:center;justify-content:space-between}.booking-category summary::-webkit-details-marker{display:none}.booking-category summary:after{content:'⌄';color:#999;font-size:22px;font-weight:400;line-height:20px}.booking-category[open] summary:after{content:'⌃'}.booking-category .booking-options{gap:0}.booking-category .booking-options button{border:0;border-bottom:1px solid #ddd;border-radius:0;padding:14px 16px;font-weight:700}.booking-options p{font-size:14px;font-weight:400;margin:8px 0 0}.booking-summary{position:relative;margin-bottom:8px}.booking-screen .booking-secondary{background:white;border:1px solid #626e58;color:#626e58;margin-top:40px}.booking-remove{position:absolute;right:8px;top:8px;padding:0 6px;border:0}.booking-total{font-size:13px}
.booking-menu-list{padding-top:8px}.booking-category summary{height:42px;padding:8px 16px}.booking-summary small:last-child{margin-top:4px}.booking-prompt{margin-bottom:16px}.booking-calendar td button{font-size:0;position:relative}.booking-calendar td button:after{content:'';display:inline-block;width:13px;height:13px;border:2px solid #626e58;border-radius:50%;vertical-align:middle}.booking-calendar td>span{font-size:0;display:inline-block;width:20px;height:20px;position:relative;vertical-align:middle}.booking-calendar td>span:before,.booking-calendar td>span:after{content:'';position:absolute;top:9px;left:1px;width:18px;height:1.8px;background:#666;transform:rotate(45deg)}.booking-calendar td>span:after{transform:rotate(-45deg)}

/* Unified clinic brand: staff login, patient card, booking and documents. */
header,.booking-screen header{height:auto;min-height:76px;background:#fffefa;color:#545650;border-bottom:1px solid #e3e5dd;padding:16px 20px}
.portal-brand{max-width:1000px;margin:auto;display:flex;align-items:center;gap:10px;line-height:1.4}
.portal-brand-symbol{width:31px;min-width:31px;height:41px;border:1px solid #aab09f;border-radius:24px 24px 0 0;display:flex;align-items:center;justify-content:center;padding-right:7px;color:#798170;font:25px/25px Georgia,serif;letter-spacing:-6px}.portal-brand-symbol>span{font:19px/19px Georgia,serif;padding-top:12px;letter-spacing:-6px}
.portal-brand-name{font:16px/22px 'Yu Mincho',serif;color:#545650}.portal-brand-name small{display:block;font:10px/15px 'Yu Mincho',serif;letter-spacing:1px}.portal-brand-name small>span{display:block;font:7px/12px Arial,sans-serif;letter-spacing:1px;margin-top:2px}
body{color:#414743}.login{border-color:#e3e5dd;box-shadow:0 8px 28px #4147430a}.login h1{color:#414743;font-size:23px}.login input:focus{outline:2px solid #798170;outline-offset:2px}button.primary:hover,.booking-screen .booking-next:not(:disabled):not(.booking-secondary):hover{background:#4e5946}.booking-screen .booking-secondary{background:#fff;color:#59664f;border-color:#798170}.booking-screen .booking-next:disabled{color:#62665d;background:#e3e5dd}.booking-calendar td button:after{border-color:#626e58}.booking-calendar td button.selected{background:#e6ebde}.booking-calendar td button:hover{background:#f1f3ec}.ticket{box-shadow:0 6px 18px #41474318;border:1px solid #e3e5dd}.points,.menu-grid button,.card,.booking-options button,.booking-summary,.booking-notice,.booking-category summary{border-color:#d5d8cd}.menu-grid button{color:#59664f}.badge{background:#edf0e7;color:#526047}.patient-strip{border-color:#e3e5dd}.booking-nav,.booking-fixed{border-color:#e3e5dd}.booking-nav button{color:#59664f}.booking-ack input{accent-color:#626e58}a{color:#59664f}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #626e58;outline-offset:3px}::selection{background:#dfe5d4;color:#30382f}
@media print{header{display:none!important}body{background:#fff}}

/* Patient child screens only: a fixed card destination, not browser back. */
.patient-close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 12px;border:1px solid #d5d7c9;border-radius:5px;background:white;color:#596245;white-space:nowrap}
.patient-close>span:first-child{font-size:25px;line-height:1}
.booking-nav>div{position:relative;padding-right:148px}
.booking-nav .patient-close{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px}
.actions .patient-close{margin-left:auto}
@media(max-width:450px){.booking-nav>div{flex-wrap:wrap;padding-right:12px}.booking-nav .patient-close{position:static;transform:none;margin-left:auto}.booking-nav h1{flex-basis:calc(100% - 70px);font-size:16px}}

/* Official Beauty Floor palette; this stylesheet is never loaded by chart UI. */
:root{--teal:#626e58;--ink:#414743;--patient-pale:#f4f2ed;--patient-line:#e3e5dd}
body,.booking-screen{background:#faf9f5;color:var(--ink)}
.patient-close{border-color:var(--patient-line);color:#59664f;background:#fff;min-width:44px}
.booking-nav .patient-close{left:auto;border:1px solid var(--patient-line);height:44px;border-radius:6px;padding:6px 10px;font-size:12px;gap:5px}
.booking-nav .patient-close span:first-child{font-size:24px;font-weight:400}.booking-nav .patient-close span:last-child{font-size:12px}
.login .patient-close{width:auto;margin-bottom:16px}
.card,.ticket,.booking-summary,.booking-notice,.sheet,.points,.menu-grid button{background:#fff;border-color:var(--patient-line);color:var(--ink)}
button,input,select{min-height:44px}input,select{color:var(--ink);background:#fff}input[type=checkbox]{min-height:18px}
.notice,.attachment{background:var(--patient-pale)}.error{color:#a43f3f}
.booking-choice .choice-clear{top:0;right:-5px;width:44px;height:44px;border-radius:5px;background:transparent;color:#626e58;font-size:22px}
.booking-choice>button.filled:not(.choice-clear){padding-right:40px}
@media(max-width:450px){.booking-nav{height:auto;min-height:88px}.booking-nav>div{min-height:88px;align-content:center;gap:4px}.booking-nav .patient-close{position:relative;top:auto;right:auto;margin:4px 10px 4px auto}.booking-nav h1{margin-left:70px;margin-right:10px}.actions{gap:8px}.patient-close{font-size:12px}h1,h2,p,.bodytext{overflow-wrap:anywhere}}

/* Official website mark captured unchanged; retain the existing logo slot. */
.portal-brand-symbol{border:0;padding:0;background:none;font-size:0;line-height:0}
.portal-brand-symbol>img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;flex:none}

/* Only newly requested booking fields; existing card/navigation geometry stays unchanged. */
.booking-freeform{margin:24px 0}.booking-freeform label{display:block;font-size:14px}
.booking-freeform textarea{display:block;width:100%;margin:8px 0 0;padding:12px;border:1px solid var(--patient-line);border-radius:5px;background:#fff;color:var(--ink);font:inherit;line-height:1.6;resize:vertical}
.booking-profile{margin:24px 0}.booking-profile-fields label{display:block}.booking-profile-fields{display:grid;gap:4px}
.booking-menu-image{max-width:100%;max-height:180px;object-fit:contain}.booking-history-actions{margin-top:16px}

/* Saved patient theme only.  Staff routes share portal.css but never receive this data attribute. */
#portal[data-patient-theme="custom"]{--patient-theme-header-background:#faf9f6;--patient-theme-header-clinic-name:#414743;--patient-theme-main:#626e58;--patient-theme-sub:#f0f0e9}
#portal[data-patient-theme="custom"] header,#portal[data-patient-theme="custom"] .booking-screen header{background:var(--patient-theme-header-background)}
#portal[data-patient-theme="custom"] .portal-brand-name{color:var(--patient-theme-header-clinic-name)}
#portal[data-patient-theme="custom"] .portal-brand-symbol{color:var(--patient-theme-sub)}
#portal[data-patient-theme="custom"] a,#portal[data-patient-theme="custom"] .booking-nav button,#portal[data-patient-theme="custom"] .patient-close{color:var(--patient-theme-main)}
#portal[data-patient-theme="custom"] button.primary,#portal[data-patient-theme="custom"] .filters .active,#portal[data-patient-theme="custom"] .booking-screen .booking-next:not(.booking-secondary){background:var(--patient-theme-main);border-color:var(--patient-theme-main)}
#portal[data-patient-theme="custom"] .booking-screen .booking-secondary{color:var(--patient-theme-main);border-color:var(--patient-theme-main)}
#portal[data-patient-theme="custom"] .booking-calendar td button:after{border-color:var(--patient-theme-main)}
#portal[data-patient-theme="custom"] .booking-calendar td button.selected{background:var(--patient-theme-sub)}

.booking-referral-guide{margin:0 0 24px;padding:14px 16px;background:#fff;border:1px solid var(--patient-line);border-radius:8px}.booking-referral-guide h2{font-size:15px}.booking-referral-guide p{margin:6px 0 0;white-space:pre-wrap}.booking-consultation-status{margin:7px 0 0;color:#a43f3f;font-size:12px;font-weight:400;line-height:1.5}
.booking-month-selector{margin:18px 0 24px;padding:14px 16px;background:#fff;border:1px solid var(--patient-line);border-radius:8px}.booking-month-selector label{display:block;font-size:14px}.booking-month-selector input{display:block;margin:7px 0 0;max-width:190px}.booking-month-selector .booking-help{margin:8px 0 12px}.booking-month-calendar{border:1px solid var(--patient-line);border-radius:6px;overflow:hidden}.booking-month-calendar>strong{display:block;padding:9px 12px;background:var(--patient-pale);font-size:14px}.booking-month-calendar table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center}.booking-month-calendar th{padding:7px 0;border-bottom:1px solid var(--patient-line);font-size:12px}.booking-month-calendar td{height:40px;border:1px solid var(--patient-line);border-bottom:0}.booking-month-calendar td:first-child{border-left:0}.booking-month-calendar td:last-child{border-right:0}.booking-month-calendar td button,.booking-month-calendar td span{width:100%;height:100%;min-height:40px;padding:0;border:0;border-radius:0;background:#fff;color:var(--ink);font-size:13px}.booking-month-calendar td button{color:#59664f;font-weight:700}.booking-month-calendar td button:hover{background:#f1f3ec}.booking-month-calendar .booking-month-outside{background:#faf9f5}.booking-month-calendar .sunday{color:#bb5050}.booking-month-calendar .saturday{color:#3658a3}.booking-month-calendar .error{margin:8px 12px}

/* Menu-linked questionnaires reuse the existing patient form proportions. */
.booking-questionnaire{display:grid;gap:12px;margin:22px 0;padding-top:16px;border-top:1px solid #e3e5dc}
.booking-questionnaire h2,.booking-questionnaire>p{margin:0}
.booking-questionnaire-question{display:grid;gap:7px;min-width:0;margin:0;padding:0;border:0}
.booking-questionnaire-question>span,.booking-questionnaire-question legend{font-weight:600;font-size:14px}
.booking-questionnaire-question input[type=text],.booking-questionnaire-question textarea,.booking-questionnaire-question select{box-sizing:border-box;width:100%;min-width:0;border:1px solid #d5d9ce;border-radius:6px;padding:10px 12px;font:inherit;background:#fff}
.booking-questionnaire-question textarea{resize:vertical;min-height:100px}
.booking-questionnaire-question>label{display:flex;align-items:center;gap:8px;padding:6px 0}
.booking-questionnaire-question input[type=radio],.booking-questionnaire-question input[type=checkbox]{width:18px;height:18px;min-height:0;margin:0;flex:0 0 18px;accent-color:var(--patient-theme-main,#687151)}
.booking-questionnaire-required,.booking-questionnaire-optional{font-size:11px;font-weight:400;margin-left:6px;color:#626a58}
