html{-webkit-text-size-adjust:100%}body{padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left)}
button,a,input,select,textarea,summary{touch-action:manipulation}.btn,.btn.small,.close,.row-go,.nav button,.tabs button{min-height:44px}.row-go,.close{min-width:44px}.row-link{min-height:44px}input,select,textarea{font-size:16px;min-height:44px}button:disabled{cursor:default}
.topbar{gap:12px;flex-wrap:wrap;height:auto;min-height:82px;padding:14px 0}.topbar-left{flex:1}.account-actions{display:flex;gap:8px}.account-actions .btn{font-size:12px}.online-guide{line-height:1.8;padding-left:24px;max-width:850px}.online-guide li{padding:8px 0}.sms-layout fieldset{border:0;padding:0;margin:0;min-width:0}.sms-layout legend{font-weight:600}
.auth-body{min-height:100dvh;display:flex;justify-content:center;align-items:flex-start;padding:48px 20px;background:var(--paper)}.auth-card{width:100%;max-width:460px;padding:36px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 40px #26465309}.auth-logo{display:block;width:108px;height:108px;object-fit:contain;margin:0 auto 28px}.auth-card h1{font-size:27px}.auth-card h2{font-size:19px;margin-top:24px}.auth-card p{line-height:1.7;font-size:14px}.auth-form{display:grid;gap:18px;margin:24px 0}.auth-form label{display:grid;gap:8px}.auth-form input{width:100%;padding:13px;border:1px solid var(--line);border-radius:8px}.auth-form .btn{font-size:15px;min-height:48px}.auth-error{padding:14px;background:#fff0ef;border-radius:8px;color:#8c3028;margin-top:18px}.auth-demo{background:#f4eddc;padding:10px 12px;border-radius:6px}.auth-footer{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;color:var(--muted);font-size:11px!important}.auth-link{display:inline-block;margin-top:18px;color:var(--ink)}.auth-link.primary{color:#fff}.auth-logout{margin-top:24px}.auth-qr{display:flex;justify-content:center;margin:24px 0}.auth-qr svg{width:220px;height:220px;max-width:100%}.auth-key{display:block;overflow-wrap:anywhere;margin:14px 0;font-size:15px}.auth-card summary{min-height:44px;padding:12px 0;cursor:pointer}.recovery{border:1px solid var(--green);border-radius:10px;padding:16px;background:var(--light)}.recovery h2{margin:0}.recovery ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.recovery code{font-size:14px;overflow-wrap:anywhere}.auth-success{color:#426d22}
/* Tablet forms keep their heading and save action outside the scrolling body. */
@media(max-width:1180px){.main{padding-left:22px;padding-right:22px}.page-head{align-items:flex-start;flex-direction:column}.page-head>.actions{justify-content:flex-start}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{padding-left:14px;padding-right:14px}}
@media(min-width:701px) and (max-width:1100px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-inputs{gap:10px}.nav{grid-template-columns:repeat(6,minmax(0,1fr))}.nav button{flex-direction:column;gap:4px;font-size:10px}.nav .count{display:none}.sidebar .brand{margin-bottom:6px}.topbar-left{max-width:none}}
@media(max-width:1100px),(pointer:coarse){
 #modal[open],#drawer[open]{display:flex;flex-direction:column;max-height:var(--app-viewport-height,100dvh);overflow:hidden}
 #modal>form{display:flex;flex-direction:column;min-height:0;overflow:hidden}
 #modal .form-body,#drawer>.form-body{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .dialog-head,.form-footer,#modal form>.check-row,#modal form>.hint{flex-shrink:0;position:static}
 .form-footer{padding-bottom:max(14px,env(safe-area-inset-bottom))}.check-row{min-height:44px}
}
@media(max-width:700px){.main{padding-left:14px;padding-right:14px}.account-actions{margin-left:auto}.topbar .local-pill{display:none}.topbar-left{max-width:none;font-size:10px}.account-actions .btn{padding:8px;font-size:11px}.auth-body{padding:20px 12px}.auth-card{padding:24px 20px}.auth-logo{width:88px;height:88px;margin-bottom:20px}.auth-card h1{font-size:24px}.recovery ul{grid-template-columns:1fr}.form-footer .btn{min-height:48px}}

.prescription-field{min-width:0;display:grid;gap:8px}.prescription-input{display:flex;gap:6px;min-width:0}.prescription-input input{min-width:0;flex:1;width:100%}.sign-toggle{min-width:44px;min-height:44px;padding:6px;font-size:21px}.prescription-field label{font-size:12px}
/* A separate top-layer dialog keeps hints above both forms and side drawers. */
#liveTutorial{position:fixed;inset:0;margin:0;padding:0;width:100vw;height:var(--app-viewport-height,100dvh);max-width:none;max-height:none;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;color:var(--ink)}
#liveTutorial::backdrop{background:transparent;backdrop-filter:none}
.live-tour-shade{position:absolute;inset:0;pointer-events:none}.live-tour-ring{position:fixed;box-sizing:border-box;border:3px solid #9bd35d;border-radius:9px;box-shadow:0 0 0 2px #fff;pointer-events:none}
.live-tour-card{position:fixed;box-sizing:border-box;width:min(380px,calc(100vw - 24px));max-height:calc(var(--app-viewport-height,100dvh) - 24px);overflow:auto;background:#fff;border:1px solid #d9e7cd;border-radius:14px;padding:18px;box-shadow:0 12px 48px #0d1e3450;text-align:left}
.live-tour-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:600;color:#5d7449}.live-tour-close{border:0;background:#f0f4eb;border-radius:8px;width:44px;height:44px;flex-shrink:0;font-size:24px;line-height:1;color:#42602b}
.live-tour-progress{height:4px;background:#edf2e7;border-radius:4px;overflow:hidden;margin:8px 0 16px}.live-tour-progress span{height:100%;display:block;background:#8bbf4b}
.live-tour-card h2{font-size:20px;line-height:1.35;margin:0 0 10px}.live-tour-card p{font-size:14px;line-height:1.65;margin:0 0 16px;color:#4b606f}.live-tour-actions{display:flex;justify-content:space-between;gap:10px}.live-tour-actions .btn{min-height:46px;white-space:normal;text-align:center;padding:10px 13px;font-size:12px}.live-tour-actions .primary{margin-left:auto}
.live-tour-jump{display:block;width:100%;margin-top:12px;font-size:14px;min-height:44px;color:#526b40;border:1px solid #dce6d3;background:#f8faf5;border-radius:7px;padding:8px;text-overflow:ellipsis}.live-tour-card .live-tour-error{color:#9b3931}.live-tour-error:empty{display:none}
.live-tour-running .form-body{scroll-behavior:auto}.live-tour-running #modal::backdrop,.live-tour-running #drawer::backdrop{backdrop-filter:none}
@media(max-height:600px){.live-tour-card{padding:12px}.live-tour-top{font-size:10px}.live-tour-close{height:36px;min-height:36px;width:36px}.live-tour-progress{margin:6px 0 10px}.live-tour-card h2{font-size:17px}.live-tour-card #liveTourDescription{font-size:13px;line-height:1.5;max-height:80px;overflow:auto;margin-bottom:10px}.live-tour-jump{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.live-tour-running *{scroll-behavior:auto!important;transition:none!important}}
