
body.patient-web {background:#f4f7f6;color:#163e37;padding:0;}
.patient-web .app-shell {max-width:1240px;width:100%;margin:auto;padding:0 28px 60px;}
.patient-web .topbar {position:relative;top:auto;background:transparent;box-shadow:none;border-bottom:1px solid #dce7e2;padding:22px 0;border-radius:0;}
.patient-web .web-home-link {color:#235b4e;text-decoration:none;font-size:14px;padding:10px;}
.patient-web main {padding-top:24px;}
.patient-web .hero {background:#fff;border:1px solid #dce7e2;border-radius:20px;box-shadow:none;padding:32px;display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:center;margin-bottom:26px;}
.patient-web .hero-logo {display:none;}
.patient-web .web-eyebrow {color:#647d72;font-size:13px;}
.patient-web .hero h1 {color:#173e37;font-size:32px;margin:10px 0;}
.patient-web .hero p {color:#5a7469;max-width:600px;line-height:1.9;}
.patient-web .hero-card {background:#edf6f1;color:#173e37;border:0;padding:22px;border-radius:14px;}
.patient-web #patientApp {display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start;}
.patient-web .tabs {position:sticky;top:20px;bottom:auto;display:flex;flex-direction:column;grid-column:1;grid-row:1;gap:8px;background:white;border:1px solid #dce7e2;border-radius:16px;padding:14px;box-shadow:none;margin:0;}
.patient-web .tabs .tab {display:flex;flex-direction:row;justify-content:flex-start;gap:10px;width:100%;padding:15px 12px;border-radius:10px;}
.patient-web .tabs .tab span {font-size:14px;}
.patient-web #patientApp > .view {grid-column:2;grid-row:1;min-width:0;}
.patient-web .panel,.patient-web .stat-card {box-shadow:none;border:1px solid #dce7e2;}
.patient-web #notificationOnboarding,.patient-web #enableNotifications {display:none!important;}
@media(max-width:760px){
.patient-web .app-shell {padding:0 14px 35px;}
.patient-web .topbar {padding:14px 0;}
.patient-web .hero {grid-template-columns:1fr;padding:22px;gap:16px;}
.patient-web .hero h1 {font-size:27px;}
.patient-web #patientApp {display:block;}
.patient-web .tabs {position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px;padding:8px;}
.patient-web .tabs .tab {padding:12px 8px;}
.patient-web .tabs .tab span {font-size:13px;}
}
/* Website visual identity: charcoal, mint and Vazirmatn. */
@font-face{font-family:Vazirmatn;src:url('/assets/fonts/Vazirmatn-Regular.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:Vazirmatn;src:url('/assets/fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:700;font-display:swap;}
body.patient-web{--bg:#101117;--surface:#191c25;--ink:#f6f7fa;--muted:#b4b9c8;--line:#343a48;--brand:#7df3c5;--brand-strong:#a8f8d9;--brand-soft:#19362e;--blue-soft:#202b39;--amber-soft:#302b20;--coral-soft:#382526;--warm-surface:#302b20;--info-surface:#202b39;--info:#b4daf6;--danger:#ffaaa3;--amber:#f4d28b;--blue:#b4daf6;background:radial-gradient(circle at 82% -12%,#58839d2e,transparent 512px),radial-gradient(circle at 8% 22%,#3380661f,transparent 448px),#101117;color:var(--ink);font-family:Vazirmatn,system-ui,sans-serif;}
.patient-web .app-shell{background:transparent;box-shadow:none;max-width:1180px;border:0;}
.patient-web button,.patient-web input,.patient-web select,.patient-web textarea{font-family:inherit;}
.patient-web .topbar{background:#080a10db;border-color:#ffffff1f;}
.patient-web .brand strong{color:#f6f7fa;}.patient-web .brand img{width:48px;height:48px;object-fit:contain;}
.patient-web .web-home-link,.patient-web .icon-button{color:#f6f7fa;background:transparent;border:1px solid #ffffff26;border-radius:10px;}
.patient-web .hero{background:linear-gradient(125deg,#202633,#171c24);border-color:#ffffff1f;box-shadow:0 18px 45px #0003;}
.patient-web .hero h1{color:#f6f7fa;}.patient-web .hero p,.patient-web .web-eyebrow{color:#b4b9c8;}
.patient-web .hero-card{background:#7df3c50c;border:1px solid #7df3c530;color:#f6f7fa;}
.patient-web .hero-card strong{color:#7df3c5;}.patient-web .hero-card small{color:#b4b9c8;}
.patient-web .tabs{background:#161a22;border-color:#ffffff1f;}
.patient-web .tabs .tab{background:transparent;color:#c1c6d2;border:1px solid transparent;box-shadow:none;}
.patient-web .tabs .tab:hover{background:#ffffff08;color:white;}
.patient-web .tabs .tab.is-active{background:#7df3c517;color:#b1ffde;border-color:#7df3c540;box-shadow:none;}
.patient-web .metric-grid article,.patient-web .metric-grid article:nth-child(n){background:#191d27;border:1px solid #ffffff1f;box-shadow:none;border-radius:14px;}
.patient-web .metric-grid span{color:#b4b9c8;}.patient-web .metric-grid strong,.patient-web .metric-grid article:nth-child(n) strong{color:#f6f7fa;}
.patient-web .web-account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;}
.patient-web .web-account-actions button{display:flex;flex-direction:column;text-align:right;align-items:flex-start;gap:12px;background:linear-gradient(140deg,#1d2530,#181d25);border:1px solid #ffffff1f;border-radius:18px;padding:26px;color:#bbc3d0;cursor:pointer;line-height:1.9;}
.patient-web .web-account-actions button:hover{border-color:#7df3c570;background:#202c32;}
.patient-web .web-account-actions strong{color:#f6f7fa;font-size:20px;}.patient-web .web-action-icon{font-size:28px;color:#7df3c5;}.patient-web .web-action-link{color:#a8f8d9;}
.patient-web .panel,.patient-web .profile-summary,.patient-web .profile-panel,.patient-web .auth-panel,.patient-web .guest-access,.patient-web .info-panel,.patient-web .profile-note,.patient-web .appointment-history article,.patient-web .treatment-card,.patient-web #appointments>.profile-form{background:#191d27;border:1px solid #ffffff1f;color:#f6f7fa;box-shadow:none;border-radius:16px;}
.patient-web .profile-summary h2,.patient-web .section-heading h2,.patient-web .treatment-card h3{color:#f6f7fa;}
.patient-web .schedule-guide{background:#202b39;border-color:#34485b;}.patient-web .schedule-guide strong{color:#c3e2fa;}.patient-web .schedule-guide small{color:#e3c6a0;border-color:#ffffff1f;}
.patient-web input,.patient-web select,.patient-web textarea{background:#10151e;color:#f6f7fa;border:1px solid #424b5c;color-scheme:dark;}
.patient-web input::placeholder,.patient-web textarea::placeholder{color:#929cae;}
.patient-web .primary,.patient-web .treatment-actions button{background:linear-gradient(135deg,#fff,#dff8ef);color:#101510;border:1px solid #ffffffa6;box-shadow:none;}
.patient-web .secondary,.patient-web .auth-method-switch button,.patient-web .appointment-mode-switch button{background:#242c37;color:#d7e1ed;border-color:#465263;}
.patient-web .auth-method-switch .is-active,.patient-web .appointment-mode-switch .is-active{background:#193b30;color:#bcffe2;border-color:#7df3c580;}
.patient-web .treatment-meta,.patient-web .profile-summary p,.patient-web .profile-summary span{color:#b4b9c8;}.patient-web .treatment-file{color:#a8f8d9;}
.patient-web .notice,.patient-web .appointment-empty{background:#202b39;border-color:#3f5268;color:#d9e8f7;}
.patient-web :focus-visible{outline:2px solid #7df3c5;outline-offset:4px;}
@media(max-width:760px){.patient-web .brand strong{font-size:13px;}.patient-web .web-home-link{font-size:12px;padding:8px;}.patient-web .web-account-actions{grid-template-columns:1fr;}.patient-web .web-account-actions button{padding:20px;}.patient-web .hero{padding:22px;}.patient-web .metric-grid{gap:8px;}.patient-web .metric-grid article{padding:12px;}}
