.navbar{background-color:#faf8f2;border-bottom:1px solid #e9e4db;padding:10px 0;position:sticky;top:0;z-index:999}.nav-container{max-width:1200px;margin:auto;height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.navbar *{line-height:1}.logo{display:flex;align-items:center;gap:8px;flex-shrink:0}.logo-circle{width:50px;height:50px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-circle img{width:100%;height:100%;object-fit:contain}.logo-title{font-size:26px;font-weight:600;line-height:1.1;margin:0;white-space:nowrap}.logo-sub{font-size:14px;line-height:1;margin-top:2px;color:#8a8a8a}.nav-links-desktop{display:flex;gap:24px;font-size:16px;line-height:1}.nav-links-desktop a{text-decoration:none;color:#333;font-weight:500;cursor:pointer;transition:color .2s ease}.nav-links-desktop a:hover{color:#6f8f7b}.nav-links-desktop a.active{color:#6f8f7b;font-weight:600}.nav-right-desktop{display:flex;align-items:center;gap:12px}.nav-btn{background-color:#6f8f7b;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-family:inherit;cursor:pointer;white-space:nowrap;min-width:100px;text-align:center;transition:opacity .2s ease}.nav-btn:hover{opacity:.9}.hamburger{display:none;flex-direction:column;justify-content:space-between;width:28px;height:20px;cursor:pointer;z-index:1100;background:none;border:none;padding:0}.hamburger span{display:block;height:2.5px;width:100%;background-color:#333;border-radius:2px;transition:all .3s ease}.hamburger.open span:nth-child(1){transform:translateY(8.75px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8.75px) rotate(-45deg)}.mobile-backdrop,.mobile-drawer{display:none}@media(max-width:992px){.nav-container{height:64px}.logo-title{font-size:20px}.logo-sub{font-size:11px}.logo-circle{width:44px;height:44px}.nav-links-desktop,.nav-right-desktop{display:none!important}.hamburger{display:flex}.mobile-backdrop{display:block;position:fixed;inset:0;background:#0000;z-index:1000;pointer-events:none;transition:background .3s ease}.mobile-backdrop.active{background:#0006;pointer-events:auto}.mobile-drawer{display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;width:82vw;max-width:360px;height:100dvh;background-color:#faf8f2;z-index:1001;box-shadow:-8px 0 24px #0000001f;transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);overflow-y:auto;overscroll-behavior:contain}.mobile-drawer.active{transform:translate(0)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e9e4db;flex-shrink:0}.drawer-logo{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.drawer-logo .logo-circle{width:40px;height:40px}.drawer-logo .logo-title{font-size:17px;font-weight:600}.drawer-logo .logo-sub{font-size:11px;margin-top:2px}.drawer-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:none;border:none;cursor:pointer;border-radius:8px;color:#555;flex-shrink:0;margin-right:-8px;transition:background-color .15s ease}.drawer-close:hover{background-color:#0000000d}.drawer-nav{display:flex;flex-direction:column;padding:12px 0;flex:1}.drawer-link{display:block;padding:14px 24px;font-size:16px;font-weight:500;color:#333;text-decoration:none;cursor:pointer;transition:background-color .15s ease,color .15s ease;min-height:48px;line-height:1.25;display:flex;align-items:center}.drawer-link:hover{background-color:#6f8f7b0f}.drawer-link.active{color:#6f8f7b;font-weight:600;background-color:#6f8f7b14;border-right:3px solid #6f8f7b}.drawer-cta{display:flex;flex-direction:column;gap:10px;padding:20px 24px;border-top:1px solid #e9e4db;flex-shrink:0;margin-top:auto}.drawer-btn{display:block;width:100%;padding:14px 20px;font-size:15px;font-weight:600;font-family:inherit;text-align:center;text-decoration:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease,transform .1s ease;border:none;box-sizing:border-box}.drawer-btn:active{transform:scale(.98)}.drawer-btn-primary{background-color:#6f8f7b;color:#fff}.drawer-btn-outline{background:transparent;color:#6f8f7b;border:1.5px solid #6f8f7b}.drawer-btn-secondary{background:transparent;color:#555;border:1px solid #d4d0c8}.hamburger.open span{background-color:transparent}}@media(prefers-reduced-motion:reduce){.mobile-drawer,.mobile-backdrop,.hamburger span{transition:none}}.cta{background-color:#6f8f7b;padding:80px 20px}.cta-container{max-width:900px;margin:auto}.cta h2{font-size:42px;color:#fff;margin-bottom:20px}.cta p{color:#e7efe9;font-size:16px;margin-bottom:40px}.cta-buttons{display:flex;justify-content:center;gap:20px}.cta-primary{background-color:#fff;color:#2f2f2f;padding:14px 28px;border-radius:8px;border:none;font-size:14px;cursor:pointer}.cta-secondary{background-color:transparent;border:1px solid #d7e3dc;color:#fff;padding:14px 28px;border-radius:8px;font-size:14px;cursor:pointer}@media(max-width:768px){.cta h2{font-size:32px}.cta-buttons{flex-direction:column}.cta-primary,.cta-secondary{width:100%}}.doctor{background-color:#faf8f2;padding:100px 20px}.doctor-container{max-width:1200px;margin:auto;display:flex;gap:80px;align-items:center}.doctor-left{flex:1}.doctor-image-container{background-color:#e5ece6;border-radius:20px;height:420px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}.doctor-portrait-img{height:100%;width:100%;object-fit:contain;object-position:bottom;z-index:1;transform:scale(1.15);transform-origin:bottom center}.doctor-right{flex:1}.doctor-label{color:#6f8f7b;font-size:12px;letter-spacing:1px;margin-bottom:15px}.doctor-right h2{margin-bottom:20px;color:#2f2f2f;font-size:38px;line-height:1.25}.doctor-text{font-size:15px;color:#666;margin-bottom:18px}.doctor-badges{display:flex;gap:30px;margin:25px 0;font-size:14px;color:#555}.doctor-badges span{display:flex;align-items:center;gap:6px}.doctor-btn{background-color:#fff;border:1px solid #e3ddd5;padding:12px 24px;border-radius:8px;font-size:14px}@media(max-width:992px){.doctor-container{flex-direction:column;gap:50px;text-align:center}.doctor-badges{justify-content:center;flex-wrap:wrap}.doctor-right h2{font-size:30px}}.footer{background-color:#faf8f2;padding:80px 20px 30px;border-top:1px solid #e9e4db}.footer-container{max-width:1200px;margin:auto auto 50px;display:grid;grid-template-columns:repeat(4,1fr);gap:60px}.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:15px}.footer-logo .logo-circle{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.footer-logo .logo-circle img{width:100%;height:100%;object-fit:contain}.footer-logo h3{font-size:16px;margin:0}.logo-sub{font-size:12px;color:#888}.footer-description{font-size:14px;color:#666;line-height:1.6}.footer-col h4{font-size:16px;margin-bottom:20px;color:#2f2f2f}.footer-col ul{list-style:none;padding:0;margin:0}.footer-col li{font-size:14px;color:#666;margin-bottom:12px;cursor:pointer}.footer-col li:hover{color:#6f8f7b}.footer-bottom{max-width:1200px;margin:auto;padding-top:20px;border-top:1px solid #e9e4db;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#777}.footer-links span{margin-left:20px;cursor:pointer}.footer-links span:hover{color:#6f8f7b}.footer-map-container{max-width:1200px;margin:40px auto 20px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000000d}.footer-map-container iframe{display:block}@media(max-width:768px){.footer-container{grid-template-columns:repeat(2,1fr);gap:30px}}@media(max-width:480px){.footer-container{grid-template-columns:1fr}}.hero{background-color:#f7f4ee;padding:100px 20px}.hero-container{max-width:1200px;margin:auto;display:flex;align-items:center;gap:60px;padding:60px 70px}.hero-left{flex:1}.hero-right{flex:1;display:flex;justify-content:center}.hero-small{color:#6f8f7b;font-size:12px;letter-spacing:1px;margin-bottom:15px}.hero h1{font-size:48px;line-height:1.2}.hero h1 span{color:#6f8f7b}.hero-text{margin-top:20px;font-size:16px;color:#555;max-width:500px}.hero-buttons{margin-top:30px;display:flex;gap:15px}.primary-btn{background-color:#6f8f7b;color:#fff;padding:12px 20px;border-radius:6px;border:none;cursor:pointer}.secondary-btn{background-color:#fff;border:1px solid #ddd;padding:12px 20px;border-radius:6px;cursor:pointer}.quote-card{background:linear-gradient(to bottom right,#dde6df,#cfd9d2);padding:60px 40px;border-radius:20px;text-align:center;max-width:450px}.quote-icon{font-size:40px;margin-bottom:20px}.quote-text{font-style:italic;font-size:18px}.quote-author{margin-top:15px;font-size:14px;color:#666}@media(max-width:992px){.hero-container{flex-direction:column;padding:40px 20px;gap:40px;text-align:center}.hero-text{margin:20px auto 0}.hero-buttons{justify-content:center}.hero h1{font-size:36px}.quote-card{padding:40px 20px}}@media(max-width:480px){.hero h1{font-size:28px}.hero-buttons{flex-direction:column}.primary-btn,.secondary-btn{width:100%}}.services{background-color:#faf8f2;padding:90px 20px;text-align:center}.services-container{max-width:1200px;margin:auto}.services h2{font-size:40px;margin-bottom:10px;color:#2f2f2f}.services-subtitle{color:#777;margin-bottom:60px;font-size:15px}.slider-outer{position:relative;display:flex;align-items:center;gap:12px}.slider-arrow{flex-shrink:0;width:42px;height:42px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#2f2f2f;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #0000000f;z-index:2}.slider-arrow:hover{background:#2f2f2f;color:#fff;border-color:#2f2f2f}.slider-wrapper{overflow:hidden;flex:1;min-width:0}.slider-track{display:flex;gap:30px}.service-card{min-width:calc((100% - 90px)/4);max-width:calc((100% - 90px)/4);flex-shrink:0;background-color:#fff;border:1px solid #e9e4db;padding:35px 25px;border-radius:12px;text-align:left;transition:transform .2s ease,box-shadow .2s ease;box-sizing:border-box}.service-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px #00000014}.icon-box{width:45px;height:45px;background-color:#eef2ed;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:20px}.service-card h3{font-size:18px;margin-bottom:10px;color:#2f2f2f}.service-card p{font-size:14px;color:#666}@media(max-width:992px){.service-card{min-width:calc((100% - 30px)/2);max-width:calc((100% - 30px)/2)}}@media(max-width:576px){.services h2{font-size:30px}.service-card{min-width:100%;max-width:100%}.slider-arrow{width:34px;height:34px;font-size:14px}}.stats{background-color:#faf8f2;border-top:1px solid #e9e4db;border-bottom:1px solid #e9e4db;padding:70px 20px}.stats-container{max-width:1100px;margin:auto;display:flex;justify-content:space-between;text-align:center}.stat h2{font-size:34px;color:#6f8f7b;margin-bottom:8px}.stat p{font-size:14px;color:#666}@media(max-width:768px){.stats-container{flex-direction:column;gap:40px}.stat h2{font-size:28px}}.testimonials{background:linear-gradient(175deg,#f4f1ea,#faf8f2 40%,#f0ede5);padding:100px 20px;text-align:center;position:relative;overflow:hidden}.testimonials:before,.testimonials:after{content:"";position:absolute;border-radius:50%;opacity:.07;pointer-events:none}.testimonials:before{width:400px;height:400px;background:var(--primary-color, #6f8f7b);top:-120px;right:-100px}.testimonials:after{width:300px;height:300px;background:var(--primary-color, #6f8f7b);bottom:-80px;left:-60px}.testimonials-container{max-width:1200px;margin:auto;position:relative;z-index:1}.testimonials-badge{display:inline-block;background:#6f8f7b1f;color:var(--primary-dark, #5c7666);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:6px 20px;border-radius:30px;margin-bottom:18px}.testimonials h2{font-size:42px;margin-bottom:12px;color:#2f2f2f}.testimonials-subtitle{color:#888;margin-bottom:56px;font-size:16px;max-width:520px;margin-left:auto;margin-right:auto;line-height:1.6}.testimonials-slider-outer{position:relative;display:flex;align-items:center;gap:14px}.testimonials-arrow{flex-shrink:0;width:46px;height:46px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#2f2f2f;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 12px #0000000f;z-index:2}.testimonials-arrow:hover{background:var(--primary-color, #6f8f7b);color:#fff;border-color:var(--primary-color, #6f8f7b);transform:scale(1.08)}.testimonials-slider-wrapper{overflow:hidden;flex:1;min-width:0}.testimonials-slider-track{display:flex;gap:32px}.testimonial-card{min-width:calc((100% - 64px) / 3);max-width:calc((100% - 64px) / 3);flex-shrink:0;background:#fff;border:1px solid #e9e4db;border-radius:16px;padding:36px 30px 28px;text-align:left;position:relative;transition:transform .3s ease,box-shadow .3s ease;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between}.testimonial-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px #6f8f7b1f}.testimonial-quote-icon{font-size:64px;line-height:1;color:var(--primary-color, #6f8f7b);opacity:.2;position:absolute;top:16px;right:24px;pointer-events:none;-webkit-user-select:none;user-select:none}.testimonial-text{font-size:15px;line-height:1.75;color:#555;margin:0 0 24px;flex:1;position:relative;z-index:1;font-style:italic}.testimonial-footer{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid #f0ece4}.testimonial-category-icon{width:44px;height:44px;background:linear-gradient(135deg,#eef2ed,#dfe8df);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.testimonial-category-info{display:flex;flex-direction:column;gap:2px}.testimonial-category-label{font-size:14px;font-weight:600;color:#2f2f2f}.testimonial-verified{font-size:12px;color:var(--primary-color, #6f8f7b);font-weight:500;display:flex;align-items:center;gap:4px}.testimonial-verified:before{content:"✓";font-size:11px;font-weight:700}@media(max-width:992px){.testimonial-card{min-width:calc((100% - 32px)/2);max-width:calc((100% - 32px)/2)}.testimonials h2{font-size:34px}}@media(max-width:576px){.testimonials{padding:70px 16px}.testimonials h2{font-size:28px}.testimonial-card{min-width:100%;max-width:100%;padding:28px 22px 22px}.testimonials-arrow{width:36px;height:36px;font-size:14px}.testimonials-subtitle{font-size:14px;margin-bottom:36px}}.register-page{min-height:80vh;display:flex;align-items:center;justify-content:center;background-color:#faf8f2;padding:40px}.register-container{width:420px;background:#fff;border:1px solid #e9e4db;border-radius:10px;padding:40px}.register-container h2{text-align:center;margin-bottom:10px}.register-sub{text-align:center;color:#777;margin-bottom:30px}.register-form{display:flex;flex-direction:column}.register-form label{font-size:14px;margin-bottom:5px}.register-form input{padding:10px;margin-bottom:18px;border:1px solid #ddd;border-radius:6px;width:100%;box-sizing:border-box}.register-btn{background-color:#6f8f7b;color:#fff;border:none;padding:12px;border-radius:6px;cursor:pointer}.register-login{text-align:center;margin-top:20px;font-size:14px}.register-login span{color:#6f8f7b;cursor:pointer}.register-btn{display:block;text-align:center;background-color:#6f8f7b;color:#fff;padding:12px;border-radius:6px;text-decoration:none}@media(max-width:480px){.register-page{padding:20px}.register-container{width:100%;padding:30px 20px}}.field-error{color:#c0392b;font-size:.82rem;margin:-10px 0 12px;background:#fdedec;padding:8px 12px;border-radius:6px;border-left:3px solid #c0392b}.input-error{border-color:#c0392b!important;background-color:#fff8f7!important}.input-error:focus{border-color:#c0392b!important;box-shadow:0 0 0 3px #c0392b26!important;outline:none!important}.input-valid{border-color:#27ae60!important}.btn-loading{opacity:.7;cursor:not-allowed!important}label{display:block}.password-input-wrapper+.field-error{margin-top:-4px}@media(max-width:480px){.field-error{font-size:.78rem;padding:6px 10px}}.login-page{min-height:80vh;display:flex;align-items:center;justify-content:center;background-color:#faf8f2;padding:40px}.login-container{width:400px;background:#fff;border:1px solid #e9e4db;border-radius:10px;padding:40px}.login-container h2{text-align:center;margin-bottom:10px}.login-sub{text-align:center;color:#777;margin-bottom:30px}.login-form{display:flex;flex-direction:column}.login-form label{font-size:14px;margin-bottom:5px}.login-form input{padding:10px;margin-bottom:18px;border:1px solid #ddd;border-radius:6px;width:100%;box-sizing:border-box}.password-input-wrapper{position:relative;display:flex;align-items:center;margin-bottom:18px;width:100%}.password-input-wrapper input{margin-bottom:0!important;padding-right:44px!important}.password-toggle-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:0;cursor:pointer;color:#777;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:4px;transition:color .2s ease,background-color .2s ease}.password-toggle-btn:hover{color:#333;background-color:#0000000a}.password-toggle-btn:focus-visible{outline:2px solid #6f8f7b;outline-offset:1px}.login-btn{background-color:#6f8f7b;color:#fff;border:none;padding:12px;border-radius:6px;cursor:pointer}.login-register{text-align:center;margin-top:20px;font-size:14px}.login-register span{color:#6f8f7b;cursor:pointer}@media(max-width:480px){.login-page{padding:20px}.login-container{width:100%;padding:30px 20px}}.about-hero{background:linear-gradient(to right,#eef2ed,#faf8f2);padding:80px 20px}.about-hero-container{max-width:1200px;margin:auto;display:flex;gap:60px;align-items:center}.about-hero-text{flex:1}.about-label{font-size:12px;letter-spacing:2px;color:#6f8f7b;font-weight:600}.about-hero-text h1{font-size:46px;margin:10px 0}.about-degree{color:#888;margin-bottom:20px}.about-hero-text p{color:#555;line-height:1.6;margin-bottom:15px}.about-hero-image{flex:1}.about-doctor-image-container{background:linear-gradient(135deg,#dde5de,#cdd9d0);border-radius:20px;height:420px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}.about-doctor-portrait-img{height:100%;width:100%;object-fit:contain;object-position:bottom;z-index:1;transform:scale(1.15);transform-origin:bottom center}.qualifications{padding:80px 20px;background-color:#fff}.qualifications-container{max-width:1200px;margin:auto;display:flex;gap:60px}.qualification-left,.qualification-right{flex:1}.qualifications h2{margin-bottom:20px}.qualifications ul{list-style:none;padding:0}.qualifications li{margin-bottom:12px;color:#555}.philosophy{padding:90px 20px;background-color:#faf8f2;text-align:center}.philosophy-container{max-width:1100px;margin:auto}.philosophy h2{font-size:38px;margin-bottom:50px}.philosophy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.philosophy-card{background:#fff;border:1px solid #e9e4db;border-radius:12px;padding:30px;text-align:left}.philosophy-card h3{font-size:18px;margin-bottom:10px}.philosophy-card p{color:#666;font-size:14px}.timeline{padding:90px 20px;background-color:#fff}.timeline-container{max-width:900px;margin:auto}.timeline h2{text-align:center;margin-bottom:60px}.timeline-item{border-left:3px solid #6f8f7b;padding-left:20px;margin-bottom:40px;position:relative}.timeline-year{font-weight:700;color:#6f8f7b}.timeline-item h3{margin:5px 0}.timeline-item p{color:#666;font-size:14px}.about-cta{background-color:#6f8f7b;padding:100px 20px;text-align:center;color:#fff}.about-cta-container{max-width:700px;margin:auto}.about-cta h2{font-size:40px;margin-bottom:15px}.about-cta p{margin-bottom:30px;color:#e6efe8}.cta-btn{background:#fff;border:none;padding:14px 28px;border-radius:8px;cursor:pointer;font-weight:500}.appointment-page{padding:80px 20px}.appointment-header{text-align:center;margin-bottom:60px}.tag{color:#6f8f7b;font-size:14px}.subtitle{color:#777}.appointment-layout{max-width:1100px;margin:auto;display:grid;grid-template-columns:2fr 1fr;gap:40px}.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ddd;border-radius:6px}.form-row{display:flex;gap:15px}.time-slots{display:flex;flex-wrap:wrap;gap:8px}.time-btn{padding:6px 10px;border:1px solid #ddd;background:#fff}.info-card{background:#fff;border:1px solid #eee;padding:20px;margin-bottom:20px}.urgent-card{background:#6f8f7b;color:#fff;padding:20px;border-radius:6px}.time-btn:disabled{background:#ddd;cursor:not-allowed}.time-btn.selected{background:#6f8f7b;color:#fff;border-color:#6f8f7b}.appointment-btn{width:100%;padding:12px;background:#6f8f7b;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;margin-top:20px;margin-bottom:100px}.appointment-btn:hover{background:#5a7565}.sidebar-call-btn{width:100%;padding:10px;background:#fff;color:#6f8f7b;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:15px;transition:all .2s ease;margin-top:10px}.sidebar-call-btn:hover{background:#f0f0f0;transform:translateY(-2px)}@media(max-width:992px){.appointment-layout{grid-template-columns:1fr}.form-row{flex-direction:column;gap:0}.appointment-page{padding:40px 15px}}@media(max-width:480px){.time-slots{justify-content:space-between}.time-btn{flex:1 1 45%;text-align:center}}.dashboard{--dd-bg: #f5f7f4;--dd-card-bg: #ffffff;--dd-card-border: #e0e4dc;--dd-card-shadow: rgba(0, 0, 0, .05);--dd-text-primary: #2c3e2d;--dd-text-secondary: #637063;--dd-text-muted: #8a958a;--dd-green: #3d7a4a;--dd-green-hover: #326a3e;--dd-green-light: #e8f0ea;--dd-green-soft: #f0f5f1;--dd-red: #c0392b;--dd-red-hover: #a93226;--dd-postpone: #7d5ba6;--dd-postpone-hover: #6b4d90;--dd-online-bg: #e8f5e9;--dd-online-text: #2e7d32;--dd-inperson-bg: #f0ece4;--dd-inperson-text: #5d5340;--dd-prescription-bg: #f0f5f1;--dd-prescription-border: #d4e0d6;--dd-filter-bg: #f0f5f1;--dd-filter-border: #e0e4dc;--dd-input-border: #cdd5ce;--dd-input-focus: #3d7a4a;--dd-modal-bg: #f5f9f6;--dd-modal-border: #d4e0d6;--dd-link: #3d7a4a;--dd-avatar-bg: #e8f0ea;--dd-avatar-text: #3d7a4a;--dd-pending: #c68a17;--dd-approved: #3d7a4a;--dd-completed: #637063;--dd-cancelled: #c0392b;--dd-postponed: #7d5ba6;padding:40px;max-width:1200px;margin:0 auto;background-color:var(--dd-bg);color:var(--dd-text-primary)}.dashboard h2{margin-bottom:10px;color:var(--dd-text-primary)}.dashboard-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--dd-card-border);padding-bottom:0}.tab{padding:10px 24px;border:none;background:none;cursor:pointer;font-size:1rem;font-family:"Source Sans 3",sans-serif;color:var(--dd-text-secondary);border-bottom:3px solid transparent;transition:color .2s,border-color .2s}.tab:hover{color:var(--dd-green)}.active-tab{color:var(--dd-green);border-bottom:3px solid var(--dd-green);font-weight:600}.appointments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.appointment-card{background:var(--dd-card-bg);border:1px solid var(--dd-card-border);border-radius:10px;padding:20px;box-shadow:0 2px 8px var(--dd-card-shadow);min-width:0;box-sizing:border-box}.appointment-card h3{margin-bottom:10px;color:var(--dd-text-primary)}.appointment-card h4,.appointment-card p,.appointment-card b{color:var(--dd-text-primary)}.dashboard .status{margin:8px 0;font-weight:700;text-transform:capitalize}.dashboard .status.pending{color:var(--dd-pending)}.dashboard .status.approved{color:var(--dd-approved)}.dashboard .status.completed{color:var(--dd-completed)}.dashboard .status.cancelled{color:var(--dd-cancelled)}.dashboard .status.postponed{color:var(--dd-postponed)}.reason{font-style:italic;color:var(--dd-text-muted);font-size:.9rem}.card-actions{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.card-actions button{padding:8px 14px;border:none;background:var(--dd-green);color:#fff;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .2s,box-shadow .2s}.card-actions button:hover{background:var(--dd-green-hover);box-shadow:0 2px 6px #3d7a4a40}.card-actions button:focus-visible{outline:2px solid var(--dd-green);outline-offset:2px}.btn-cancel{background:var(--dd-red)!important}.btn-cancel:hover{background:var(--dd-red-hover)!important}.btn-postpone{background:var(--dd-postpone)!important}.btn-postpone:hover{background:var(--dd-postpone-hover)!important}.btn-back{background:var(--dd-green-light)!important;color:var(--dd-green)!important;border:1px solid var(--dd-card-border)!important}.btn-back:hover{background:var(--dd-green-soft)!important;box-shadow:0 1px 4px #3d7a4a26!important}.postpone-modal{margin-top:16px;padding:16px;background:var(--dd-modal-bg);border:1px solid var(--dd-modal-border);border-radius:8px;box-sizing:border-box;width:100%;max-width:100%;min-width:0}.postpone-modal h4{margin-bottom:12px;color:var(--dd-text-primary)}.postpone-modal label{display:block;font-weight:600;margin:8px 0 4px;font-size:.9rem;color:var(--dd-text-secondary)}.postpone-modal input,.postpone-modal textarea{width:100%;padding:8px 10px;border:1px solid var(--dd-input-border);border-radius:6px;font-size:.9rem;box-sizing:border-box;max-width:100%;min-width:0;font-family:inherit;background:var(--dd-card-bg);color:var(--dd-text-primary);transition:border-color .2s,box-shadow .2s}.postpone-modal input:focus,.postpone-modal textarea:focus{outline:none;border-color:var(--dd-input-focus);box-shadow:0 0 0 2px #3d7a4a26}.postpone-modal textarea{resize:vertical}.modal-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.modal-actions button{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;color:#fff;background:var(--dd-green);font-size:.9rem;font-weight:600;font-family:inherit;transition:background .2s,box-shadow .2s}.modal-actions button:hover{background:var(--dd-green-hover);box-shadow:0 2px 6px #3d7a4a40}.modal-actions button:focus-visible{outline:2px solid var(--dd-green);outline-offset:2px}.modal-actions button.btn-cancel{background:var(--dd-red)}.modal-actions button.btn-cancel:hover{background:var(--dd-red-hover);box-shadow:0 2px 6px #c0392b40}.modal-actions button.btn-cancel:focus-visible{outline-color:var(--dd-red)}.dashboard .section-heading{color:var(--dd-text-primary);border-bottom:2px solid var(--dd-green);padding-bottom:5px;display:inline-block}.dashboard .patient-header-card{padding:20px;border:1px solid var(--dd-card-border);border-radius:8px;background:var(--dd-card-bg);display:flex;align-items:center;gap:20px}.dashboard .patient-header-card h2{margin:0;color:var(--dd-text-primary)}.dashboard .patient-header-card p{color:var(--dd-text-secondary);margin:4px 0 0}.dashboard .avatar-placeholder{border-radius:50%;background:var(--dd-avatar-bg);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--dd-avatar-text)}.dashboard .filter-bar{background:var(--dd-filter-bg);border:1px solid var(--dd-filter-border);border-radius:8px;padding:15px}.dashboard .filter-bar label{font-size:.85rem;font-weight:600;color:var(--dd-text-secondary)}.dashboard .filter-bar select,.dashboard .filter-bar input[type=date]{padding:8px;border-radius:4px;border:1px solid var(--dd-input-border);background-color:var(--dd-card-bg);color:var(--dd-text-primary);outline:none;font-family:inherit;transition:border-color .2s}.dashboard .filter-bar select:focus,.dashboard .filter-bar input[type=date]:focus{border-color:var(--dd-input-focus);box-shadow:0 0 0 2px #3d7a4a26}.dashboard .patient-search-input{padding:10px;border-radius:6px;border:1px solid var(--dd-input-border);font-family:inherit;background:var(--dd-card-bg);color:var(--dd-text-primary);transition:border-color .2s,box-shadow .2s;max-width:100%}.dashboard .patient-search-input:focus{outline:none;border-color:var(--dd-input-focus);box-shadow:0 0 0 2px #3d7a4a26}.dashboard .prescription-box{margin-top:10px;padding:10px;background:var(--dd-prescription-bg);border:1px solid var(--dd-prescription-border);border-radius:6px}.dashboard .prescription-box p{white-space:pre-wrap;margin-top:5px;font-size:.9rem;color:var(--dd-text-primary)}.dashboard .feedback-display{margin-top:10px;padding:10px;background:var(--dd-prescription-bg);border:1px solid var(--dd-prescription-border);border-radius:6px;font-size:.9rem;white-space:pre-wrap;color:var(--dd-text-primary)}.dashboard .inline-review-modal{margin-top:15px;padding:15px;background:var(--dd-card-bg);border:1px solid var(--dd-card-border);border-radius:6px}.dashboard .inline-review-modal h4{margin:0 0 10px;color:var(--dd-text-primary)}.dashboard .inline-review-modal textarea{width:100%;padding:10px;border-radius:4px;border:1px solid var(--dd-input-border);font-family:inherit;margin-bottom:10px;box-sizing:border-box;background:var(--dd-card-bg);color:var(--dd-text-primary);resize:vertical;transition:border-color .2s,box-shadow .2s}.dashboard .inline-review-modal textarea:focus{outline:none;border-color:var(--dd-input-focus);box-shadow:0 0 0 2px #3d7a4a26}.dashboard .inline-review-modal textarea.input-error{border-color:var(--dd-red)}.dashboard .type-badge{font-size:.85rem;padding:2px 8px;border-radius:12px;font-weight:600}.dashboard .type-badge.online{background:var(--dd-online-bg);color:var(--dd-online-text)}.dashboard .type-badge.inperson{background:var(--dd-inperson-bg);color:var(--dd-inperson-text)}.dashboard .meet-link{color:var(--dd-link);font-weight:600;text-decoration:none;transition:color .2s}.dashboard .meet-link:hover{color:var(--dd-green-hover);text-decoration:underline}.dashboard .doc-link{display:inline-block;margin:10px 0;color:var(--dd-link);font-weight:600;text-decoration:none;transition:color .2s}.dashboard .doc-link:hover{color:var(--dd-green-hover);text-decoration:underline}.dashboard .btn-video{background:var(--dd-green)!important}.dashboard .btn-video:hover{background:var(--dd-green-hover)!important}.dashboard .text-secondary{color:var(--dd-text-secondary)}.dashboard .text-muted{color:var(--dd-text-muted)}.dashboard .badge{font-size:.8rem;padding:2px 8px}.dashboard .badge.reviewed{color:var(--dd-approved)}.dashboard .badge.pending{color:var(--dd-pending)}.dashboard .btn-feedback-edit{background:var(--dd-postpone)!important}.dashboard .btn-feedback-edit:hover{background:var(--dd-postpone-hover)!important}.dashboard .btn-feedback-provide{background:var(--dd-green)!important}.dashboard .btn-feedback-provide:hover{background:var(--dd-green-hover)!important}.dashboard .no-data{color:var(--dd-text-muted)}@media(max-width:768px){.dashboard{padding:20px 15px}.dashboard-tabs{flex-wrap:wrap;gap:5px}.tab{padding:8px 15px;font-size:.9rem;flex:1 1 auto;text-align:center}.appointments-grid{grid-template-columns:1fr}}@media(max-width:480px){.dashboard h2{font-size:1.5rem}.card-actions{flex-direction:column}.card-actions button{width:100%}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.profile-page{display:flex;min-height:calc(100vh - 80px);max-width:1200px;margin:0 auto;padding:30px 20px;gap:30px}.profile-sidebar{width:260px;flex-shrink:0;background:#fff;border:1px solid #d5cfc4;border-radius:12px;padding:30px 20px;display:flex;flex-direction:column;align-items:center;box-shadow:0 2px 10px #0000000f;align-self:flex-start;position:sticky;top:100px}.profile-avatar{width:72px;height:72px;border-radius:50%;background:#4a7c59;color:#fff;font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.profile-sidebar h3{margin:0 0 4px;text-align:center}.profile-email{color:#888;font-size:.88rem;margin:0 0 8px;word-break:break-all;text-align:center}.profile-role{display:inline-block;padding:2px 12px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:capitalize;background:#eafaf1;color:#27ae60;margin-bottom:24px}.profile-nav{width:100%;display:flex;flex-direction:column;gap:4px;margin-bottom:20px}.profile-nav button{background:none;border:none;padding:10px 14px;border-radius:8px;cursor:pointer;font-size:.95rem;text-align:left;color:#444;transition:all .15s;font-family:"Source Sans 3",sans-serif}.profile-nav button:hover{background:#f5f2ec;color:#1a1a1a}.profile-nav button.active{background:#4a7c59;color:#fff;font-weight:600}.profile-quick-actions{width:100%;display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.quick-btn{width:100%;padding:9px;background:transparent;border:1.5px solid #4a7c59;color:#4a7c59;border-radius:6px;cursor:pointer;font-size:.88rem;font-weight:600;transition:all .15s}.quick-btn:hover{background:#4a7c59;color:#fff}.logout-btn{width:100%;padding:9px;background:transparent;border:1.5px solid #c0392b;color:#c0392b;border-radius:6px;cursor:pointer;font-size:.88rem;font-weight:600;transition:all .15s}.logout-btn:hover{background:#c0392b;color:#fff}.profile-main{flex:1;min-width:0}.profile-main h2{margin-bottom:20px}.info-card{background:#fff;border:1px solid #d5cfc4;border-radius:10px;padding:24px;box-shadow:0 2px 8px #0000000f}.info-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0ece4}.info-row:last-of-type{border-bottom:none}.info-label{font-weight:600;color:#555}.role-badge{display:inline-block;padding:2px 10px;border-radius:10px;font-size:.85rem;background:#eafaf1;color:#27ae60;font-weight:600;text-transform:capitalize}.edit-btn{margin-top:16px;padding:10px 24px;background:#4a7c59;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.edit-btn:hover{background:#3d6a4b}.edit-form{background:#fff;border:1px solid #d5cfc4;border-radius:10px;padding:24px;box-shadow:0 2px 8px #0000000f}.edit-form label{display:block;font-weight:600;margin:12px 0 6px;color:#333;font-size:.9rem}.optional{font-weight:400;color:#aaa;font-size:.82rem}.edit-form input{width:100%;padding:10px;border:1px solid #c0b9aa;border-radius:6px;font-size:.95rem;box-sizing:border-box;background:#fff}.form-actions{display:flex;gap:10px;margin-top:18px}.form-actions button{padding:10px 24px;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;background:#4a7c59;color:#fff}.cancel-btn{background:#f0ece4!important;color:#555!important}.cancel-btn:hover{background:#e0dbd1!important}.tab-section{background:#fff;border:1px solid #d5cfc4;border-radius:10px;padding:24px;box-shadow:0 2px 8px #0000000f}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tab-header h2{margin:0}.action-btn{padding:8px 18px;background:#4a7c59;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.88rem}.action-btn:hover{background:#3d6a4b}.no-data{color:#aaa;font-style:italic}.records-list{display:flex;flex-direction:column;gap:12px}.record-card{padding:16px 18px;border:1px solid #ebe7df;border-radius:8px;background:#fdfcfa}.record-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.record-date{font-weight:700;color:#1a1a1a}.record-id{font-weight:700;color:#4a7c59;font-size:.95rem}.record-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:capitalize}.record-badge.pending{background:#fef9e7;color:#d4910e}.record-badge.approved{background:#eafaf1;color:#27ae60}.record-badge.completed,.record-badge.delivered{background:#f0f0f0;color:#555}.record-badge.cancelled{background:#fdedec;color:#c0392b}.record-badge.postponed{background:#f4ecf7;color:#8e44ad}.record-badge.paid,.record-badge.confirmed_by_doctor{background:#eafaf1;color:#27ae60}.record-badge.placed{background:#fef9e7;color:#d4910e}.record-badge.reviewed,.record-badge.shipped{background:#ebf5fb;color:#2980b9}.record-note{font-style:italic;color:#777;font-size:.9rem;margin:4px 0}.record-card p{margin:4px 0;color:#444}.record-footer{display:flex;gap:12px;align-items:center;margin-top:8px;flex-wrap:wrap}@media(max-width:768px){.profile-page{flex-direction:column;padding:20px 15px}.profile-sidebar{width:100%;position:static;box-sizing:border-box}.profile-main{width:100%}.profile-nav{flex-direction:row;overflow-x:auto;padding-bottom:5px}.profile-nav button{white-space:nowrap;flex:0 0 auto}.info-row{flex-direction:column;align-items:flex-start;gap:4px}.tab-header{flex-direction:column;align-items:flex-start;gap:10px}.action-btn{width:100%;text-align:center}}body{margin:0;padding:0;background-color:#faf8f2;font-family:Inter,sans-serif}a{text-decoration:none;color:inherit}html{scroll-behavior:smooth}#root{margin:0;padding:0}
