@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/cormorant-garamond-cyrillic-ext-600-normal.BMhMHfrj.woff2) format("woff2"),url(/_astro/cormorant-garamond-cyrillic-ext-600-normal.CsIYWmWK.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/cormorant-garamond-cyrillic-600-normal.C2atO-64.woff2) format("woff2"),url(/_astro/cormorant-garamond-cyrillic-600-normal.FNmA3REe.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/cormorant-garamond-vietnamese-600-normal.BoXdMtcr.woff2) format("woff2"),url(/_astro/cormorant-garamond-vietnamese-600-normal.C4HEjEaf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/cormorant-garamond-latin-ext-600-normal.DaBc-lu7.woff2) format("woff2"),url(/_astro/cormorant-garamond-latin-ext-600-normal.Dk3-quAP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/cormorant-garamond-latin-600-normal.Co1r35X9.woff2) format("woff2"),url(/_astro/cormorant-garamond-latin-600-normal.2CBVLo0M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.patient-portal{--ink:#173c39;--teal:#155c51;--muted:#61736e;--line:#dfe6df;--paper:#faf9f5;--sage:#e9eee4;--gold:#d2ac68;margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Trebuchet MS,Verdana,sans-serif;-webkit-font-smoothing:antialiased}.patient-portal *{box-sizing:border-box}.patient-portal [hidden]{display:none!important}.patient-portal button,.patient-portal input,.patient-portal select{font:inherit}.patient-portal button,.patient-portal a,.patient-portal input,.patient-portal select{touch-action:manipulation}.patient-portal button,.patient-portal a{-webkit-tap-highlight-color:transparent}.patient-portal button{cursor:pointer}.patient-portal button:disabled{cursor:wait;opacity:.65}.patient-portal a{color:inherit;text-underline-offset:4px}.patient-portal h1,.patient-portal h2,.patient-portal h3,.patient-portal p{margin:0}.patient-portal h1,.patient-portal h2{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;line-height:1.08}.patient-portal h2{font-size:32px}.patient-portal h3{line-height:1.4}.patient-portal :focus-visible{outline:3px solid #bb8d3c;outline-offset:4px}.patient-portal .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;top:-80px;left:20px;background:#fff;padding:12px;z-index:10}.skip-link:focus{top:12px}.portal-header{max-width:1220px;margin:auto;padding:26px 36px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Cormorant Garamond,Georgia,serif;font-size:32px;font-weight:600;line-height:1}.brand small{display:block;font:9px/1.4 Trebuchet MS,sans-serif;letter-spacing:2px;margin-top:7px}.brand-mark{background:var(--teal);width:45px;height:48px;border-radius:16px 16px 16px 3px;color:#fff;text-align:center;font:42px/.95 Georgia,serif;position:relative}.brand-mark span{font:18px Georgia;position:absolute;right:3px;top:3px;color:#d9e6c8}.header-actions{display:flex;align-items:center;gap:16px}.private-label{font-size:12px;color:var(--muted)}.private-label span{color:#6e9179;margin-right:6px;font-size:9px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:9px;min-height:46px;padding:11px 19px;border:1px solid transparent;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s,transform .15s}.button:active{transform:translateY(1px)}.button-primary{background:var(--teal);color:#fff}.button-primary:hover{background:#0a443b}.button-outline{border-color:var(--line);background:#fff;color:var(--ink)}.button-outline:hover{background:var(--sage)}.button-quiet{background:transparent;border-color:var(--line);color:var(--ink)}.button-quiet:hover{background:#edf0e9}.text-button{background:none;border:0;text-decoration:underline;color:var(--muted);padding:12px 3px;min-height:44px;font-size:12px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;font-size:14px;font-weight:700}.eyebrow,.step-label{display:block;font-size:10px;font-weight:700;letter-spacing:1.8px;line-height:1.6}.step-label{color:var(--muted)}#portal-main{max-width:1220px;margin:0 auto;padding:40px 36px 60px}.access-layout{display:grid;grid-template-columns:1.1fr 1fr;min-height:670px;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:0 15px 40px #1b3b3410}.welcome-panel{padding:54px 48px 34px;background:#124c43;color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}.welcome-panel:after{content:"";position:absolute;width:400px;height:400px;border:1px solid #ffffff0c;border-radius:50%;top:-160px;right:-180px;box-shadow:0 0 0 48px #ffffff03,0 0 0 96px #ffffff03;pointer-events:none}.welcome-panel>.eyebrow{color:#b8d4c1;margin-bottom:27px}.welcome-panel h1{font-size:clamp(46px,5.5vw,72px);letter-spacing:-1.8px;position:relative}.welcome-copy{max-width:330px;color:#d0e0d6;font-size:16px;margin-top:22px!important;line-height:1.7}.welcome-items{display:grid;gap:24px;margin:42px 0}.welcome-items>div{display:flex;align-items:center;gap:15px;font-size:14px}.welcome-items small{display:block;font-size:12px;color:#c0d4c9;margin-top:3px}.feature-icon{display:grid;place-items:center;flex:none;width:40px;height:42px;border:1px solid #ffffff26;border-radius:10px;color:#d9d9b2;font-size:23px}.welcome-bottom{margin-top:auto;font-size:9px;letter-spacing:1.5px;color:#afc9bb}.access-card{padding:54px 44px 34px;display:flex;flex-direction:column}.access-card h2{font-size:39px;margin:13px 0 15px}.access-card>p{color:var(--muted);font-size:14px;line-height:1.7}.access-card form{margin-top:28px}.field{margin-bottom:22px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input,.history-filters input,.history-filters select{width:100%;min-width:0;min-height:48px;border:1px solid #becbc3;background:#fff;border-radius:8px;color:var(--ink);padding:11px 13px}.field input::placeholder,.history-filters input::placeholder{color:#77857f}.field small{display:block;font-size:11px;color:var(--muted);line-height:1.5;margin-top:7px}.code-field{display:flex;border:1px solid #becbc3;border-radius:8px;overflow:visible}.code-field input{border:0;flex:1;letter-spacing:2px;border-radius:8px 0 0 8px}.code-field button{border:0;border-radius:0 8px 8px 0;background:#f3f5f0;padding:0 14px;color:var(--teal);font-size:12px;font-weight:700}.access-card .button-primary{width:100%;justify-content:space-between}.access-help{display:flex;gap:12px;align-items:center;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.access-help>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--sage);font-family:Georgia}.access-help p{font-size:12px;line-height:1.8;color:var(--muted)}.access-help a{font-weight:700;color:var(--ink)}.access-card .privacy-note{font-size:10px;line-height:1.6;margin-top:22px;color:#77817b}.inline-error{background:#fff0ed;color:#873d34;padding:12px 14px;border:1px solid #e5bcb5;border-radius:8px;font-size:13px;margin-bottom:16px!important}.loading-card{max-width:600px;margin:80px auto;text-align:center;padding:48px 30px;border:1px solid var(--line);border-radius:16px;background:#fff}.loading-card p{margin:18px 0 24px;color:var(--muted)}.loading-dot{display:inline-block;width:24px;height:24px;border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;animation:portal-spin .8s linear infinite;margin-bottom:20px}.patient-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:2px 0 32px}.patient-heading .eyebrow{color:#718575;margin-bottom:10px}.patient-heading h1{font-size:46px;letter-spacing:-.5px}.patient-heading p{font-size:14px;color:var(--muted);margin-top:10px}.patient-tools{display:flex;flex-direction:column;align-items:flex-end}.portal-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px}.care-main,.care-aside{min-width:0}.appointment-card{background:#144e44;border-radius:14px;padding:28px 30px;color:#fff;position:relative;overflow:hidden}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.appointment-card .eyebrow{color:#bed5c5}.pill{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:4px 9px;border-radius:6px;background:#eef2ea;color:var(--teal);font-size:10px;white-space:nowrap;line-height:1.5}.pill-light{background:#d9e7c1;color:#244839}.appointment-core{display:flex;align-items:center;gap:22px;margin:24px 0}.date-tile{display:flex;flex-direction:column;justify-content:center;align-items:center;flex:none;width:82px;min-height:94px;border:1px solid #c4dbce55;border-radius:12px;background:#ffffff08}.date-tile .day{font:45px/1 Cormorant Garamond,Georgia,serif}.date-tile .month{font-size:10px;letter-spacing:1.8px;margin-top:7px}.appointment-core h2{font-size:32px}.appointment-core p{font-size:13px;color:#d7e3db;margin-top:7px}.appointment-time{font-size:15px!important;font-weight:700;color:#fff!important}.appointment-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #ffffff24;padding-top:18px}.appointment-actions .button{background:#fff;color:var(--ink);font-size:12px;padding:9px 14px;min-height:44px}.appointment-actions .button.secondary{background:transparent;border-color:#fff5;color:#fff}.appointment-empty{padding:25px 0}.appointment-empty p{color:#d7e3db;margin-top:12px;font-size:14px;max-width:460px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.section-heading h2{font-size:29px}.section-heading p{color:var(--muted);font-size:12px;margin-top:7px}.muted{font-size:11px;color:var(--muted)}.latest-section{margin:30px 0}.latest-documents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.document-shortcut{background:#fff;border:1px solid var(--line);border-radius:12px;text-align:left;padding:19px 16px;min-height:155px;display:flex;flex-direction:column;align-items:flex-start;color:var(--ink);transition:border-color .15s,box-shadow .15s}.document-shortcut:hover{border-color:#90aa95;box-shadow:0 3px 12px #23433210}.document-shortcut .doc-symbol{display:grid;place-items:center;width:34px;height:36px;background:#f1f3eb;border-radius:8px;font-size:20px;margin-bottom:15px}.document-shortcut strong{font-size:13px;line-height:1.5}.document-shortcut small{font-size:10px;color:var(--muted);margin-top:auto;padding-top:7px}.history-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}.history-filters{display:flex;gap:10px;margin-bottom:12px}.history-filters input{flex:1;font-size:12px;min-height:44px;background:#fcfcf9}.history-filters select{width:155px;font-size:12px;min-height:44px}.report-row{width:100%;display:flex;align-items:center;text-align:left;gap:13px;border:0;border-top:1px solid #e8ece5;background:#fff;padding:20px 0;color:var(--ink)}.report-row:hover{background:#fafbf7}.report-row .row-icon{display:grid;place-items:center;flex:none;background:#f0f3ec;border-radius:8px;width:38px;height:42px;color:#71856f;font-size:20px}.report-row .row-copy{min-width:0;flex:1}.report-row strong{display:block;font-size:14px;font-weight:700;overflow-wrap:anywhere}.report-row small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.row-arrow{font-size:20px;color:var(--teal);margin-left:8px}.empty-state{padding:27px 12px;text-align:center;color:var(--muted);font-size:14px;background:#f6f7f2;border-radius:10px;grid-column:1/-1}.contact-card{background:#e9eee4;border:1px solid #dce3d6;border-radius:14px;padding:28px 23px}.aside-symbol{display:block;font-size:35px;line-height:1;color:#67856a;margin-bottom:24px}.contact-card h2{font-size:35px;margin:12px 0 16px}.contact-card p{font-size:13px;color:var(--muted);line-height:1.75}.contact-card .button{width:100%;margin:23px 0 7px;border-color:#cad5c5;font-size:13px}.contact-card .text-link{font-size:12px;width:100%}.contact-card small,.review-card small{display:block;color:var(--muted);font-size:10px;line-height:1.7;margin-top:4px}.contact-card .clinic-address{font-size:11px;margin-top:20px;padding-top:18px;border-top:1px solid #ced8c9;white-space:pre-line}.review-card{padding:27px 23px;margin-top:20px;background:#f7f1e5;border:1px solid #e9dfcb;border-radius:14px}.review-card .eyebrow{font-size:9px;color:#7c6b4c}.review-card h2{font-size:29px;margin:12px 0}.review-card p{font-size:13px;color:#796f5e;line-height:1.7}.review-card .text-link{font-size:12px;margin:12px 0 10px}.privacy-card{display:flex;gap:12px;padding:24px 5px;color:#768078;font-size:11px}.privacy-card>span{font-size:24px}.privacy-card p{line-height:1.7}.privacy-card strong{font-weight:700;color:#4c6356}.portal-footer{max-width:1148px;margin:auto;border-top:1px solid var(--line);padding:24px 0 32px;display:flex;justify-content:space-between;gap:25px;color:#758077;font-size:10px}.portal-footer>span:first-child{font-size:12px}.portal-footer>span:first-child>span{padding:0 8px;color:#b09a72}#report-dialog{width:min(850px,calc(100% - 28px));max-height:90dvh;padding:0;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);box-shadow:0 30px 90px #12332b44}#report-dialog::backdrop{background:#152d2b99;backdrop-filter:blur(4px)}.document-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:1}.document-toolbar>div{display:flex;gap:9px}.document-toolbar .button{font-size:12px;padding:9px 12px}.document-toolbar .eyebrow{font-size:9px}#document-content{padding:32px}#document-title{font-size:38px;margin-bottom:12px}.document-meta{color:var(--muted);font-size:12px;line-height:1.8;padding-bottom:24px;border-bottom:1px solid var(--line);white-space:pre-line}.document-section{margin-top:25px}.document-section h3{font-family:Cormorant Garamond,Georgia,serif;font-size:25px;margin-bottom:9px}.document-section p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;margin-bottom:10px}.document-section .document-subheading{font-weight:700;color:var(--teal)}.document-disclaimer{margin-top:30px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:15px}body:has(#report-dialog[open]){overflow:hidden}@keyframes portal-spin{to{transform:rotate(360deg)}}@media(min-width:760px){.access-layout{animation:portal-enter .35s ease-out}@keyframes portal-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media(max-width:950px){.portal-grid{grid-template-columns:minmax(0,1fr) 245px;gap:20px}.welcome-panel{padding:40px 32px}.access-card{padding:40px 30px}.patient-heading h1{font-size:39px}.portal-footer{margin:0 30px}.latest-documents{gap:8px}.document-shortcut{padding:16px 12px}.section-heading .muted{display:none}.history-card{padding:22px}.contact-card,.review-card{padding:24px 19px}}@media(max-width:740px){.portal-header{padding:18px 20px}.brand{font-size:29px}.brand-mark{width:40px;height:43px;font-size:38px}.header-actions{gap:8px}.private-label{font-size:10px}.header-actions .button{font-size:11px;padding:9px 12px}#portal-main{padding:25px 20px 35px}.access-layout{grid-template-columns:1fr}.welcome-panel{padding:34px 29px}.welcome-panel>.eyebrow{margin-bottom:14px}.welcome-panel h1{font-size:49px}.welcome-panel h1 br{display:none}.welcome-copy{max-width:100%;font-size:14px;margin-top:15px!important}.welcome-items{display:none}.welcome-bottom{margin-top:25px;font-size:8px}.access-card{padding:30px 27px}.access-card h2{font-size:36px}.portal-grid{grid-template-columns:1fr}.care-aside{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.contact-card{grid-row:span 2}.review-card{margin-top:0}.privacy-card{padding-top:5px}.patient-heading{align-items:flex-start;margin-bottom:25px}.patient-heading h1{font-size:37px}.patient-heading .eyebrow{font-size:9px}.patient-heading p{font-size:12px}.patient-tools .button{font-size:11px;min-height:40px;padding:8px 12px}.text-button{font-size:10px}.appointment-card{padding:24px}.portal-footer{margin:0 20px;flex-direction:column;gap:8px;font-size:9px}.loading-card{margin:25px auto}.document-toolbar{padding:12px 16px}.document-toolbar>.eyebrow{display:none}#document-content{padding:24px}.document-toolbar>div{width:100%;justify-content:space-between}}@media(max-width:440px){.private-label{display:none}.patient-heading{display:block}.patient-tools{flex-direction:row;align-items:center;justify-content:space-between;margin-top:14px}.patient-heading h1{font-size:36px}.latest-documents{grid-template-columns:1fr}.document-shortcut{min-height:74px;display:grid;grid-template-columns:34px 1fr;column-gap:13px;row-gap:0;padding:13px 16px}.document-shortcut .doc-symbol{grid-row:span 2;margin:0}.document-shortcut small{padding-top:0}.document-shortcut strong{align-self:end}.care-aside{grid-template-columns:1fr}.contact-card{grid-row:auto}.contact-card h2 br,.contact-card .aside-symbol{display:none}.contact-card .button{margin-top:16px}.appointment-core{gap:15px}.appointment-core h2{font-size:28px}.date-tile{width:65px;min-height:84px}.date-tile .day{font-size:39px}.history-card{padding:20px 17px}.history-filters{flex-direction:column}.history-filters select{width:100%}.history-card .section-heading{align-items:flex-start}.report-row .pill{display:none}.access-card{padding:27px 22px}.welcome-panel{padding:28px 22px}.welcome-panel h1{font-size:43px}.privacy-card{padding:0 4px}.section-top .eyebrow{font-size:9px}.appointment-actions .button{flex:1}.review-card h2{font-size:31px}}@media(prefers-reduced-motion:reduce){.patient-portal *{animation:none!important;transition:none!important}}#pdf-viewer{display:grid;justify-items:center;gap:18px;width:100%;max-height:min(72vh,900px);overflow:auto;padding:18px;background:#dfe3de}#pdf-viewer[hidden]{display:none}#pdf-viewer .pdf-page{display:block;width:min(100%,794px);height:auto;background:#fff;box-shadow:0 2px 12px #173c3926}#document-summary{border-top:1px solid var(--line);background:#fafaf7}#document-summary>summary{cursor:pointer;padding:14px 24px;font-size:12px;font-weight:700;color:var(--teal)}#document-summary #document-content{padding-top:18px}@media print{.patient-portal{background:#fff;font:12pt/1.5 Georgia,serif}.patient-portal>*,.patient-portal #report-dialog .document-toolbar{display:none!important}.patient-portal #report-dialog[open]{display:block!important;position:static;width:100%;max-width:none;height:auto;max-height:none;overflow:visible;border:0;box-shadow:none;margin:0;padding:0}.patient-portal #report-dialog::backdrop{background:none}.patient-portal #document-content{padding:0}.patient-portal .document-section{break-inside:auto}.patient-portal .document-section h3{break-after:avoid}.patient-portal .document-section p{font-size:11pt}body:has(#report-dialog[open]){overflow:visible}@page{margin:18mm}}#patient-greeting:focus{outline:none}
