.navbar{z-index:100;background:#fff;border-bottom:1px solid #e5edf0;width:100%;position:sticky;top:0;box-shadow:0 4px 14px #1f37490d}.navbar-content{justify-content:space-between;align-items:center;gap:30px;min-height:76px;display:flex}.clinic-brand{align-items:center;gap:12px;display:flex}.tooth-logo{background:#dffafa;border-radius:13px;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.clinic-brand h2{color:#172033;margin:0;font-size:16px;line-height:1.3}.clinic-brand small{color:#1aaeb1;font-size:11px;font-weight:600}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a{color:#475569;font-size:14px;font-weight:500;transition:color .2s}.nav-links a:hover{color:#1aaeb1}.nav-actions{align-items:center;gap:12px;display:flex}.nav-actions button{border-radius:12px;min-height:44px;padding:0 22px;font-size:14px;font-weight:600}.btn-secondary{color:#172033;background:#fff;border:1px solid #dce5e9}.btn-primary{color:#fff;background:#2ec4c7}.btn-primary:hover{background:#1ba7aa}@media (width<=950px){.nav-links{display:none}}@media (width<=600px){.navbar-content{min-height:68px}.clinic-brand small,.nav-actions .btn-secondary{display:none}.nav-actions button{padding:0 17px}}.hero{background:radial-gradient(circle at 85% 25%,#2ec4c729,#0000 34%),linear-gradient(135deg,#fff 0%,#f7fcfc 55%,#eefafa 100%);padding:90px 0 110px;position:relative;overflow:hidden}.hero:before{content:"";background:#2ec4c714;border-radius:50%;width:420px;height:420px;position:absolute;top:-180px;right:-130px}.hero-container{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px;display:grid;position:relative}.hero-left{max-width:650px}.hero-badge{color:#159c9f;background:#ecfbfb;border:1px solid #2ec4c740;border-radius:999px;align-items:center;gap:10px;width:fit-content;margin-bottom:25px;padding:10px 16px;font-size:13px;font-weight:600;display:flex}.hero-badge svg{font-size:14px}.hero-left h1{letter-spacing:-2.5px;color:#182235;max-width:650px;margin-bottom:24px;font-size:clamp(44px,5vw,68px);line-height:1.1}.hero-left h1 span{color:#2ec4c7}.hero-description{color:#64748b;max-width:590px;margin-bottom:34px;font-size:17px;line-height:1.8}.hero-buttons{flex-wrap:wrap;gap:16px;margin-bottom:32px;display:flex}.hero-buttons button{border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 24px;font-size:15px;font-weight:600;transition:all .25s;display:inline-flex}.hero-primary-btn{color:#fff;background:#2ec4c7;box-shadow:0 12px 28px #2ec4c740}.hero-primary-btn:hover{background:#1ba7aa;transform:translateY(-2px)}.hero-secondary-btn{color:#243145;background:#fff;border:1px solid #dce7e8}.hero-secondary-btn:hover{color:#159c9f;border-color:#2ec4c7;transform:translateY(-2px)}.hero-trust-list{flex-wrap:wrap;gap:22px;display:flex}.hero-trust-list div{color:#64748b;align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.hero-trust-list svg{color:#2ec4c7}.hero-right{justify-content:center;display:flex;position:relative}.portal-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #e8f0f1;border-radius:26px;width:min(100%,490px);padding:28px;box-shadow:0 30px 70px #284b5a29}.portal-header{justify-content:space-between;align-items:flex-start;margin-bottom:22px;display:flex}.portal-header p{color:#94a3b8;margin-bottom:3px;font-size:12px}.portal-header h3{color:#1e293b;font-size:22px}.portal-secure{color:#159c9f;background:#ecfbfb;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.appointment-card{color:#fff;background:linear-gradient(135deg,#2ec4c7,#1ba7aa);border-radius:18px;align-items:center;gap:16px;margin-bottom:24px;padding:20px;display:flex;box-shadow:0 15px 35px #2ec4c73d}.appointment-icon{background:#ffffff2e;border-radius:15px;flex-shrink:0;place-items:center;width:52px;height:52px;font-size:20px;display:grid}.appointment-card p{opacity:.8;margin-bottom:3px;font-size:12px}.appointment-card h4{margin-bottom:3px;font-size:17px}.appointment-card span{opacity:.9;font-size:13px}.quick-action-title{margin-bottom:14px}.quick-action-title h4{color:#334155;font-size:15px}.quick-action-grid{grid-template-columns:repeat(2,1fr);gap:13px;margin-bottom:20px;display:grid}.quick-action-grid button{color:#475569;text-align:left;background:#f8fbfc;border:1px solid #e6eff0;border-radius:15px;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;min-height:98px;padding:15px;transition:all .25s;display:flex}.quick-action-grid button svg{color:#2ec4c7;font-size:20px}.quick-action-grid button span{font-size:13px;font-weight:600}.quick-action-grid button:hover{background:#ecfbfb;border-color:#2ec4c773;transform:translateY(-2px)}.portal-notification{background:#fff9eb;border:1px solid #f6e6b6;border-radius:14px;align-items:flex-start;gap:12px;padding:15px;display:flex}.portal-notification>svg{color:#e9a826;flex-shrink:0;margin-top:3px}.portal-notification strong{color:#475569;margin-bottom:2px;font-size:13px;display:block}.portal-notification p{color:#94a3b8;font-size:11px;line-height:1.5}.hero-floating-card{background:#fff;border:1px solid #e5eeee;border-radius:15px;align-items:center;gap:11px;padding:14px 17px;display:flex;position:absolute;bottom:38px;left:-40px;box-shadow:0 15px 35px #284b5a21}.hero-floating-card>svg{color:#2ec4c7;font-size:20px}.hero-floating-card strong,.hero-floating-card span{display:block}.hero-floating-card strong{color:#334155;font-size:12px}.hero-floating-card span{color:#94a3b8;font-size:10px}@media (width<=1000px){.hero{padding:75px 0 90px}.hero-container{grid-template-columns:1fr;gap:60px}.hero-left{max-width:760px}.hero-right{justify-content:flex-start}.portal-card{width:min(100%,600px)}.hero-floating-card{left:auto;right:10px}}@media (width<=650px){.hero{padding:60px 0 75px}.hero-left h1{letter-spacing:-1.5px;font-size:42px}.hero-description{font-size:15px}.hero-buttons{flex-direction:column}.hero-buttons button{width:100%}.hero-trust-list{flex-direction:column;gap:12px}.portal-card{border-radius:20px;padding:20px}.quick-action-grid{grid-template-columns:1fr}.hero-floating-card{display:none}}.hero-whatsapp-btn svg{transition:transform .25s}.hero-whatsapp-btn:hover svg{transform:translateY(-1px)scale(1.06)}.services-section{background:#f7fafc;border-top:1px solid #edf2f7;border-bottom:1px solid #edf2f7;padding:95px 0}.services-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px;display:flex}.section-eyebrow{color:#1aaeb1;letter-spacing:1.5px;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:700;display:inline-flex}.section-eyebrow:before{content:"";background:#2ec4c7;border-radius:999px;width:4px;height:18px}.services-header h2{color:#172033;margin:0 0 8px;font-size:38px;line-height:1.2}.services-header p{color:#718096;margin:0;font-size:15px}.services-book-btn{color:#fff;background:#2ec4c7;border-radius:12px;align-items:center;gap:10px;min-height:46px;padding:0 20px;font-weight:600;transition:all .25s;display:inline-flex;box-shadow:0 12px 24px #2ec4c733}.services-book-btn:hover{background:#1ba7aa;transform:translateY(-2px)}.services-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.service-card{background:#fff;border:1px solid #dfe7ee;border-radius:18px;min-height:150px;padding:24px 22px;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{border-color:#2ec4c780;transform:translateY(-4px);box-shadow:0 16px 30px #26404f14}.service-icon{margin-bottom:22px;font-size:28px}.service-card h3{color:#172033;margin:0 0 12px;font-size:16px;font-weight:600}.service-duration{color:#8a97aa;background:#edf2f7;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}@media (width<=1000px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.services-section{padding:70px 0}.services-header{flex-direction:column;align-items:stretch}.services-book-btn{align-self:flex-start}.services-grid{grid-template-columns:1fr}.services-header h2{font-size:32px}}.services-motion-ready .services-header-reveal:not(.is-revealed){opacity:0;transform:translateY(25px)}.services-motion-ready .service-card-reveal:not(.is-revealed){opacity:0;transform:translateY(45px)scale(.96)}.services-motion-ready .services-header-reveal.is-revealed{animation:services-header-reveal .65s cubic-bezier(.16, 1, .3, 1) var(--services-delay,0s) backwards}.services-motion-ready .service-card-reveal.is-revealed{animation:services-card-reveal .72s cubic-bezier(.16, 1, .3, 1) var(--services-delay,0s) backwards}.services-motion-ready .service-card-reveal.is-revealed .service-content-reveal,.services-motion-ready .service-card-reveal.is-revealed .service-text-reveal,.services-motion-ready .service-card-reveal.is-revealed .service-footer-reveal{animation:.48s cubic-bezier(.22,1,.36,1) backwards services-content-reveal}.services-motion-ready .service-card-reveal.is-revealed .service-content-reveal{animation-delay:calc(var(--services-delay,0s) + 60ms)}.services-motion-ready .service-card-reveal.is-revealed .service-text-reveal{animation-delay:calc(var(--services-delay,0s) + .12s)}.services-motion-ready .service-card-reveal.is-revealed .service-footer-reveal{animation-delay:calc(var(--services-delay,0s) + .2s)}@keyframes services-header-reveal{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes services-card-reveal{0%{opacity:0;transform:translateY(45px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes services-content-reveal{0%{opacity:0;transform:translateY(12px)scale(.9)}to{opacity:1;transform:translateY(0)}}@media (width<=1000px){.services-motion-ready .service-card-reveal:not(.is-revealed){transform:translateY(36px)scale(.96)}}@media (width<=650px){.services-motion-ready .services-header-reveal:not(.is-revealed){transform:translateY(20px)}.services-motion-ready .service-card-reveal:not(.is-revealed){transform:translateY(28px)scale(.97)}}@media (prefers-reduced-motion:reduce){.services-motion-ready [data-services-reveal],.services-motion-ready .service-card-reveal :is(.service-content-reveal,.service-text-reveal,.service-footer-reveal){opacity:1;animation:none;transform:none}}[data-theme=dark] .home-page .services-section,[data-theme=light] .home-page .services-section{isolation:isolate;position:relative;overflow:hidden}[data-theme=dark] .home-page .services-section{background:radial-gradient(circle at 88% 18%,#5feef233 0,#0c9bac1c 13%,#0000 31%),radial-gradient(at 75% 44%,#138d9d21,#0000 32%),radial-gradient(circle at 6% 88%,#0dc2ca2e,#0000 24%),radial-gradient(circle at 98% 92%,#0fa0ae24,#0000 20%),linear-gradient(145deg,#04121e 0%,#061b29 45%,#03101b 100%);border-color:#52d5d721}[data-theme=light] .home-page .services-section{background:radial-gradient(circle at 88% 18%,#2bc7cc33 0,#61dadd1a 14%,#0000 31%),radial-gradient(at 75% 44%,#34bcc01a,#0000 32%),radial-gradient(circle at 6% 88%,#2ec4c724,#0000 24%),radial-gradient(circle at 98% 92%,#26aaae1a,#0000 20%),linear-gradient(145deg,#f8fdfd 0%,#eef9fa 46%,#f7fbfc 100%);border-color:#159c9f26}[data-theme=dark] .home-page .services-section:before,[data-theme=light] .home-page .services-section:before{z-index:-2;pointer-events:none;content:"";background-image:radial-gradient(circle at 8% 22%,currentColor 0 1px,#0000 2px),radial-gradient(circle at 22% 68%,currentColor 0 1.4px,#0000 2.4px),radial-gradient(circle at 44% 17%,currentColor 0 1px,#0000 2px),radial-gradient(circle at 64% 72%,currentColor 0 1.2px,#0000 2.2px),radial-gradient(circle at 83% 27%,currentColor 0 1.5px,#0000 2.6px),radial-gradient(circle at 94% 62%,currentColor 0 1px,#0000 2px),linear-gradient(30deg,#0000 47%,currentColor 48% 49%,#0000 50%),linear-gradient(150deg,#0000 47%,currentColor 48% 49%,#0000 50%),linear-gradient(90deg,#0000 47%,currentColor 48% 49%,#0000 50%),radial-gradient(circle,currentColor 1px,#0000 1.5px);background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,12px 12px;background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,72px 42px,72px 42px,72px 42px,36px 36px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 2%,#000 24% 78%,#0000 98%);mask-image:linear-gradient(#0000 2%,#000 24% 78%,#0000 98%)}[data-theme=dark] .home-page .services-section:before{color:#69eff21c;filter:drop-shadow(0 0 5px #2ec4c75c)}[data-theme=light] .home-page .services-section:before{color:#0f858817;filter:drop-shadow(0 0 4px #159c9f2e)}[data-theme=dark] .home-page .services-section:after,[data-theme=light] .home-page .services-section:after{z-index:-1;pointer-events:none;content:"";border:1px solid;border-radius:50%;width:82%;height:310px;position:absolute;bottom:-205px;right:-18%;transform:rotate(-7deg);box-shadow:0 -20px 0 -19px,0 -43px 0 -42px,0 -72px 0 -71px,0 -108px 0 -107px,0 -150px 0 -149px,0 0 70px #2ec4c726}[data-theme=dark] .home-page .services-section:after{color:#39dee257;filter:drop-shadow(0 -4px 9px #1fcdd34d)}[data-theme=light] .home-page .services-section:after{color:#0f8f9233;filter:drop-shadow(0 -3px 8px #159c9f29)}.home-page .services-section>.container{z-index:1;position:relative}@media (width<=1000px){[data-theme=dark] .home-page .services-section:before,[data-theme=light] .home-page .services-section:before{opacity:.82}[data-theme=dark] .home-page .services-section:after,[data-theme=light] .home-page .services-section:after{opacity:.72;width:76%}}@media (width<=650px){[data-theme=dark] .home-page .services-section:before,[data-theme=light] .home-page .services-section:before{opacity:.5}[data-theme=dark] .home-page .services-section:after,[data-theme=light] .home-page .services-section:after{opacity:.48;width:105%;right:-38%}}.about-section{background:#fff;padding:110px 0}.about-wrapper{grid-template-columns:.95fr 1.05fr;align-items:center;gap:80px;display:grid}.about-visual{position:relative}.about-clinic-image{object-fit:cover;border-radius:28px;width:100%;height:560px;display:block;box-shadow:0 28px 65px #1f374924}.about-rating-card{background:#fff;border:1px solid #e4edef;border-radius:18px;align-items:center;gap:14px;min-width:245px;padding:18px 20px;display:flex;position:absolute;bottom:45px;right:-38px;box-shadow:0 20px 45px #1f374929}.rating-icon{color:#f5b51b;background:#fff8df;border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:21px;display:grid}.about-rating-card strong,.about-rating-card span{display:block}.about-rating-card strong{color:#172033;margin-bottom:3px;font-size:14px}.about-rating-card span{color:#8a97a8;font-size:11px}.about-information{max-width:650px}.about-eyebrow{color:#1aaeb1;letter-spacing:1.6px;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:14px;font-size:13px;font-weight:700;display:inline-flex}.about-eyebrow:before{content:"";background:#2ec4c7;border-radius:999px;width:4px;height:18px}.about-information>h2{color:#172033;letter-spacing:-1.5px;max-width:570px;margin:0 0 24px;font-size:clamp(36px,4vw,52px);line-height:1.15}.about-information>p{color:#68778b;margin:0 0 17px;font-size:15px;line-height:1.85}.about-features-grid{grid-template-columns:repeat(2,1fr);gap:15px;margin-top:34px;display:grid}.about-feature-card{background:#fbfdfd;border:1px solid #e2eaee;border-radius:17px;align-items:flex-start;gap:14px;min-height:118px;padding:19px;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex}.about-feature-card:hover{border-color:#2ec4c773;transform:translateY(-3px);box-shadow:0 14px 30px #1f374914}.about-feature-icon{color:#1aaeb1;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:17px;display:grid}.about-feature-card h3{color:#253247;margin:1px 0 5px;font-size:14px}.about-feature-card p{color:#8a97a8;margin:0;font-size:11px;line-height:1.55}@media (width<=1000px){.about-wrapper{grid-template-columns:1fr;gap:60px}.about-visual{max-width:720px}.about-rating-card{right:25px}.about-information{max-width:760px}}@media (width<=650px){.about-section{padding:75px 0}.about-clinic-image{border-radius:21px;height:380px}.about-rating-card{width:calc(100% - 30px);min-width:0;margin:-38px auto 0;position:relative;bottom:auto;right:auto}.about-information>h2{font-size:34px}.about-features-grid{grid-template-columns:1fr}}[data-theme=light] .home-page .about-section,[data-theme=dark] .home-page .about-section{isolation:isolate;padding:108px 0 72px;position:relative;overflow:hidden}[data-theme=light] .home-page .about-section{background:radial-gradient(circle at 10% 24%,#5dbee833,#0000 25%),radial-gradient(circle at 92% 30%,#2ec4c71f,#0000 27%),linear-gradient(140deg,#f4faff,#fff 49%,#f1fbfb)}[data-theme=dark] .home-page .about-section{background:radial-gradient(circle at 10% 24%,#2582b033,#0000 25%),radial-gradient(circle at 92% 30%,#2ec4c724,#0000 27%),linear-gradient(140deg,#071724,#0a1c2a 49%,#061621)}.home-page .about-section:before{z-index:-2;pointer-events:none;content:"";background-image:radial-gradient(circle at 6% 15%,#2ec4c7b3 0 2px,#0000 3px),radial-gradient(circle at 22% 75%,#59cdd18c 0 2px,#0000 3px),radial-gradient(circle at 58% 18%,#2ec4c773 0 1px,#0000 2px),radial-gradient(circle at 91% 66%,#2ec4c78c 0 2px,#0000 3px),repeating-radial-gradient(at 87% 44%,#0000 0 17px,#2ec4c712 18px 19px,#0000 20px 27px);position:absolute;inset:0}.home-page .about-section:after{z-index:-1;content:"";pointer-events:none;border:1px solid #2ec4c729;border-radius:50%;width:70%;height:280px;position:absolute;top:21%;right:-18%;transform:rotate(-12deg);box-shadow:0 24px 0 -23px #2ec4c72e,0 48px 0 -47px #2ec4c724,0 72px 0 -71px #2ec4c71a}.home-page .about-orb{z-index:-1;pointer-events:none;background:linear-gradient(145deg,#ffffffbf,#2ec4c71f);border-radius:50%;position:absolute;box-shadow:inset -8px -8px 15px #2ec4c714,0 12px 28px #1f4b5d14}.home-page .about-orb-one{width:42px;height:42px;top:8%;left:54%}.home-page .about-orb-two{width:58px;height:58px;bottom:25%;right:8%}.home-page .about-section .about-wrapper{z-index:1;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);align-items:center;gap:88px;position:relative}.home-page .about-section .about-visual{border:1px solid color-mix(in srgb,var(--public-accent) 24%,var(--public-border));background:color-mix(in srgb,var(--public-surface) 88%,transparent);border-radius:30px;min-height:560px;padding:12px;box-shadow:0 28px 70px #13415229}.home-page .about-section .about-clinic-image{object-fit:cover;border-radius:20px;height:536px}.home-page .about-image-orbit{z-index:3;filter:drop-shadow(0 0 10px #2ec4c759);pointer-events:none;border:2px solid #53dde0a3;border-radius:50%;width:120%;height:190px;position:absolute;bottom:32px;left:-18%;transform:rotate(-8deg)}.home-page .about-tooth-stage{z-index:4;pointer-events:none;width:230px;height:255px;position:absolute;bottom:-52px;left:-40px}.home-page .about-tooth-canvas{z-index:2;filter:drop-shadow(0 18px 17px #0a525b47);width:100%;height:100%;display:block;position:relative}.home-page .about-tooth-loading{background:radial-gradient(circle,#2ec4c738,#0000 67%);border-radius:50%;width:70%;height:70%;margin:auto}.home-page .about-tooth-platform{z-index:1;background:radial-gradient(#d9ffffdb,#2ec4c752 25%,#2ec4c714 55%,#0000 70%);border:2px solid #52e5e8a6;border-radius:50%;width:82%;height:62px;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 0 25px #2ec4c761}.home-page .about-tooth-platform i{border:1px solid #159c9f85;border-radius:50%;position:absolute;inset:12px 9%}.home-page .about-section .about-information{max-width:690px}.home-page .about-section .about-information>h2{letter-spacing:-2px;max-width:640px;margin-bottom:16px;font-size:clamp(42px,4.1vw,62px);font-weight:780;line-height:1.07}.home-page .about-title-line{background:var(--public-accent-strong);border-radius:99px;width:72px;height:3px;margin:0 0 23px;display:block}.home-page .about-section .about-information>p{font-size:15px;line-height:1.85}.home-page .about-section .about-features-grid{gap:14px;margin-top:28px}.home-page .about-section .about-feature-card{background:color-mix(in srgb,var(--public-surface) 91%,transparent);border-radius:15px;min-height:112px;padding:20px;box-shadow:0 12px 28px #193f4e12}.home-page .about-section .about-feature-card:hover{transform:translateY(-5px);box-shadow:0 19px 36px #193f4e1f}.home-page .about-section .about-feature-icon{border:1px solid color-mix(in srgb,var(--public-accent) 35%,transparent);border-radius:14px;width:48px;height:48px;font-size:19px}.home-page .about-stats-shell{z-index:2;border:1px solid color-mix(in srgb,var(--public-accent) 22%,var(--public-border));background:color-mix(in srgb,var(--public-surface) 87%,transparent);border-radius:20px;margin-top:82px;position:relative;overflow:hidden;box-shadow:0 20px 45px #1341521a}.home-page .about-stats-track{will-change:transform;width:max-content;animation:25s linear infinite about-stats-slide;display:flex}.home-page .about-stats-set{grid-template-columns:repeat(4,minmax(220px,1fr));align-items:center;min-width:min(100vw - 48px,1180px);padding:20px 10px;display:grid}.home-page .about-stat{border-right:1px solid var(--public-border);justify-content:center;align-items:center;gap:14px;min-height:64px;padding:0 28px;display:flex}.home-page .about-stat:last-child{border-right:0}.home-page .about-stat-icon{color:#fff;background:linear-gradient(145deg,#16a8ab,#087c89);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;font-size:20px;display:grid;box-shadow:0 8px 18px #0f8f9238}.home-page .about-stat strong,.home-page .about-stat small{display:block}.home-page .about-stat strong{color:var(--public-text);font-size:22px}.home-page .about-stat small{color:var(--public-secondary);white-space:nowrap;margin-top:3px;font-size:11px}@keyframes about-stats-slide{to{transform:translate(-50%)}}@media (width<=1000px){.home-page .about-section .about-wrapper{grid-template-columns:1fr;gap:72px}.home-page .about-section .about-visual{width:min(100%,720px)}.home-page .about-section .about-information{max-width:760px}.home-page .about-stats-set{grid-template-columns:repeat(4,minmax(190px,1fr))}.home-page .about-stat{padding-inline:18px}}@media (width<=650px){[data-theme] .home-page .about-section{padding:76px 0 58px}.home-page .about-section .about-wrapper{gap:62px}.home-page .about-section .about-visual{border-radius:22px;min-height:356px;padding:8px}.home-page .about-section .about-clinic-image{border-radius:15px;height:338px}.home-page .about-tooth-stage{width:150px;height:175px;bottom:-37px;left:-12px}.home-page .about-image-orbit{height:120px;bottom:18px}.home-page .about-section .about-information>h2{letter-spacing:-1.3px;font-size:38px}.home-page .about-section .about-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .about-section .about-feature-card{flex-direction:column;min-height:145px;padding:16px}.home-page .about-stats-shell{scrollbar-width:none;margin-top:54px;overflow-x:auto}.home-page .about-stats-shell::-webkit-scrollbar{display:none}.home-page .about-stats-track{animation:none}.home-page .about-stats-set{grid-template-columns:repeat(4,minmax(145px,1fr));min-width:620px;padding:14px 6px}.home-page .about-stats-set[aria-hidden=true]{display:none}.home-page .about-stat{padding:0 12px}.home-page .about-stat-icon{width:44px;height:44px}.home-page .about-stat strong{font-size:18px}}@media (prefers-reduced-motion:reduce){.home-page .about-stats-track{animation:none}.home-page .about-stats-set[aria-hidden=true]{display:none}}.patient-management-section{color:#fff;background:radial-gradient(circle at 15% 20%,#ffffff1f,#0000 30%),linear-gradient(135deg,#2ec4c7 0%,#159c9f 100%);padding:100px 0;position:relative;overflow:hidden}.patient-management-section:before{content:"";background:#ffffff14;border-radius:50%;width:420px;height:420px;position:absolute;top:-220px;right:-150px}.patient-management-container{z-index:2;position:relative}.patient-management-heading{text-align:center;max-width:680px;margin:0 auto 48px}.patient-management-heading span{color:#fffc;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:700;display:inline-block}.patient-management-heading h2{color:#fff;margin:0 0 14px;font-size:clamp(36px,4vw,50px);line-height:1.15}.patient-management-heading p{color:#fffc;margin:0;font-size:15px;line-height:1.7}.patient-management-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.patient-management-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff1a;border:1px solid #ffffff38;border-radius:20px;min-height:210px;padding:24px;transition:transform .25s,background .25s,border-color .25s}.patient-management-card:hover{background:#ffffff29;border-color:#ffffff59;transform:translateY(-5px)}.patient-management-icon{color:#159c9f;background:#fff;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:24px;font-size:19px;display:grid}.patient-management-card h3{color:#fff;margin:0 0 10px;font-size:17px}.patient-management-card p{color:#ffffffc7;margin:0;font-size:13px;line-height:1.7}.patient-management-actions{justify-content:center;gap:14px;margin-top:38px;display:flex}.patient-management-actions button{border-radius:12px;min-height:50px;padding:0 25px;font-weight:600;transition:transform .25s,background .25s}.patient-management-primary{color:#159c9f;background:#fff}.patient-management-primary:hover{background:#f5ffff;transform:translateY(-2px)}.patient-management-secondary{color:#fff;background:0 0;border:1px solid #ffffff8c}.patient-management-secondary:hover{background:#ffffff1a;transform:translateY(-2px)}@media (width<=1000px){.patient-management-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.patient-management-section{padding:75px 0}.patient-management-grid{grid-template-columns:1fr}.patient-management-actions{flex-direction:column}.patient-management-actions button{width:100%}}[data-theme=dark] .home-page .patient-management-section,[data-theme=light] .home-page .patient-management-section{isolation:isolate;background:0 0;padding:105px 0;position:relative;overflow:hidden}[data-theme=dark] .home-page .patient-management-section{color:#f8fafc;background:radial-gradient(circle at 79% 22%,#2ec4c733,#0000 26%),radial-gradient(circle at 4% 88%,#19799321,#0000 25%),linear-gradient(140deg,#04121f,#071b29 52%,#03101a)}[data-theme=light] .home-page .patient-management-section{color:#10283a;background:radial-gradient(circle at 79% 22%,#2ec4c72b,#0000 27%),radial-gradient(circle at 4% 88%,#3ca5c61a,#0000 25%),linear-gradient(140deg,#f7fcfd,#edf9fa 52%,#f8fcfd)}.home-page .patient-management-section:before{z-index:-2;opacity:.8;background-image:radial-gradient(circle at 8% 18%,#52d5d7a6 0 1px,#0000 2px),radial-gradient(circle at 29% 74%,#52d5d773 0 1px,#0000 2px),radial-gradient(circle at 62% 12%,#52d5d780 0 1px,#0000 2px),radial-gradient(circle at 91% 67%,#52d5d78c 0 1px,#0000 2px),linear-gradient(30deg,#0000 48%,#52d5d709 49%,#0000 50%),linear-gradient(150deg,#0000 48%,#52d5d709 49%,#0000 50%);background-size:100% 100%,100% 100%,100% 100%,100% 100%,82px 48px,82px 48px;border-radius:0;width:100%;height:100%;inset:0}.home-page .patient-management-section:after{z-index:-1;content:"";background:0 0;border:1px solid #2ec4c738;border-radius:50%;width:75%;height:260px;position:absolute;bottom:-175px;right:-20%;transform:rotate(-7deg);box-shadow:0 -25px 0 -24px #2ec4c729,0 -54px 0 -53px #2ec4c71f,0 -88px 0 -87px #2ec4c714,0 0 65px #2ec4c71f}.home-page .patient-management-section .patient-management-container{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.home-page .patient-management-intro{grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);align-items:center;gap:72px;margin-bottom:54px;display:grid}.home-page .patient-management-section .patient-management-heading{text-align:left;max-width:650px;margin:0}.home-page .patient-management-section .patient-management-heading>span{color:var(--public-accent-strong);margin-bottom:18px;font-weight:850}.home-page .patient-management-section .patient-management-heading h2{color:var(--public-text);letter-spacing:-2.5px;margin-bottom:22px;font-size:clamp(46px,4.3vw,66px);font-weight:790;line-height:1.03}.home-page .patient-management-section .patient-management-heading h2 em{color:var(--public-accent-strong);font-style:normal}.home-page .patient-management-section .patient-management-heading p{max-width:590px;color:var(--public-secondary);font-size:16px;line-height:1.8}.home-page .patient-management-visual{isolation:isolate;height:430px;position:relative}.home-page .patient-management-tooth-canvas{z-index:3;filter:drop-shadow(0 25px 24px #0a46524d);width:100%;height:100%;display:block;position:relative}.home-page .patient-management-tooth-loading{aspect-ratio:1;background:radial-gradient(circle,#2ec4c733,#0000 68%);border-radius:50%;width:60%;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.home-page .patient-management-halo{aspect-ratio:1;z-index:0;filter:blur(13px);background:radial-gradient(circle,#52d5d73b,#2ec4c70f 48%,#0000 70%);border-radius:50%;width:72%;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.home-page .patient-management-platform{z-index:4;filter:drop-shadow(0 0 12px #2ec4c761);background:radial-gradient(#d3ffffe6,#2ec4c761 20%,#2ec4c71a 48%,#0000 70%);border-radius:50%;width:45%;height:60px;position:absolute;bottom:25px;left:50%;transform:translate(-50%)}.home-page .patient-management-platform i{border:1px solid #52d5d794;border-radius:50%;position:absolute;inset:14px 13%}.home-page .patient-management-section .patient-management-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.home-page .patient-management-section .patient-management-card{border:1px solid color-mix(in srgb,var(--public-accent) 32%,var(--public-border));background:linear-gradient(145deg,color-mix(in srgb,var(--public-surface) 92%,transparent),color-mix(in srgb,var(--public-elevated) 80%,transparent));border-radius:18px;min-height:220px;padding:25px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d,0 15px 32px #05233014}.home-page .patient-management-section .patient-management-card:hover{border-color:color-mix(in srgb,var(--public-accent) 72%,var(--public-border));transform:translateY(-6px);box-shadow:inset 0 1px #ffffff12,0 20px 40px #05465224}.home-page .patient-management-section .patient-management-icon{color:var(--public-accent-strong);background:var(--public-accent-soft);transition:transform .25s}.home-page .patient-management-section .patient-management-card:hover .patient-management-icon{transform:translateY(-2px)scale(1.06)}.home-page .patient-management-card-accent{background:var(--public-accent-strong);width:46px;height:2px;box-shadow:0 0 10px color-mix(in srgb,var(--public-accent) 45%,transparent);border-radius:99px;position:absolute;bottom:18px;left:25px}.home-page .patient-management-section .patient-management-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.home-page .patient-management-section .patient-management-choice{border:1px solid color-mix(in srgb,var(--public-accent) 24%,var(--public-border));background:linear-gradient(145deg,color-mix(in srgb,var(--public-surface) 93%,transparent),color-mix(in srgb,var(--public-elevated) 80%,transparent));border-radius:18px;flex-direction:column;min-height:205px;padding:23px;display:flex;box-shadow:0 15px 34px #05233014}.home-page .patient-management-choice-heading{align-items:center;gap:16px;margin-bottom:18px;display:flex}.home-page .patient-management-choice-heading>div{min-width:0}.home-page .patient-management-section .patient-management-choice .patient-management-choice-icon{border:1px solid color-mix(in srgb,var(--public-accent) 28%,transparent);width:54px;height:54px;color:var(--public-accent-strong);background:var(--public-accent-soft);opacity:1;border-radius:15px;flex:0 0 54px;place-items:center;margin:0;font-size:30px;line-height:1;display:grid;overflow:visible}.home-page .patient-management-section .patient-management-choice .patient-management-choice-icon>svg{color:currentColor;opacity:1;width:30px;height:30px;display:block}.home-page .patient-management-section .patient-management-whatsapp .patient-management-choice-icon{color:#fff;background:#168b50;animation:2.8s ease-in-out infinite patient-whatsapp-pulse}.home-page .patient-management-section .patient-management-choice-heading strong{color:var(--public-text);font-size:16px;display:block}.home-page .patient-management-section .patient-management-choice-heading span{color:var(--public-secondary);margin-top:5px;font-size:12px;line-height:1.45;display:block}.home-page .patient-management-section .patient-management-choice :is(button,a){margin-top:auto;margin-bottom:10px}.home-page .patient-management-section .patient-management-primary{color:#fff;background:var(--public-accent-strong)}.home-page .patient-management-section .patient-management-primary>svg,.home-page .patient-management-section .whatsapp-booking>svg{color:currentColor;opacity:1;flex:0 0 20px;width:20px;height:20px;display:block}.home-page .patient-management-section .patient-management-choice small{color:var(--public-muted)}@keyframes patient-whatsapp-pulse{50%{box-shadow:0 0 0 7px #168b501f}}.patient-management-motion-ready [data-management-reveal]:not(.is-revealed){opacity:0;transform:translateY(26px)}.patient-management-motion-ready .patient-management-visual[data-management-reveal]:not(.is-revealed){transform:translateY(20px)scale(.96)}.patient-management-motion-ready [data-management-reveal].is-revealed{animation:patient-management-reveal .68s cubic-bezier(.16,1,.3,1) var(--management-delay,0s) backwards}@keyframes patient-management-reveal{0%{opacity:0;transform:translateY(26px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1050px){.home-page .patient-management-intro{grid-template-columns:minmax(0,1fr) minmax(350px,.8fr);gap:38px}.home-page .patient-management-section .patient-management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=780px){.home-page .patient-management-intro{grid-template-columns:1fr;gap:28px}.home-page .patient-management-visual{width:min(100%,540px);height:390px;margin-inline:auto}.home-page .patient-management-section .patient-management-heading{max-width:650px}}@media (width<=650px){[data-theme] .home-page .patient-management-section{padding:76px 0}.home-page .patient-management-section .patient-management-heading h2{letter-spacing:-1.7px;font-size:42px}.home-page .patient-management-visual{height:330px}.home-page .patient-management-section .patient-management-grid,.home-page .patient-management-section .patient-management-choices{grid-template-columns:1fr}.home-page .patient-management-section .patient-management-card{min-height:190px}.home-page .patient-management-section .patient-management-choice{min-height:195px}.home-page .patient-management-section .patient-management-choice .patient-management-choice-icon{flex-basis:50px;width:50px;height:50px;font-size:28px}.home-page .patient-management-section .patient-management-choice .patient-management-choice-icon>svg{width:28px;height:28px}.home-page .patient-management-section:after{width:120%;right:-55%}}@media (prefers-reduced-motion:reduce){.home-page .patient-management-whatsapp .patient-management-choice-icon{animation:none}.patient-management-motion-ready [data-management-reveal]{opacity:1;animation:none;transform:none}}.location-section{background:#f7fafc;padding:105px 0}.location-heading{max-width:650px;margin-bottom:42px}.location-heading span{color:#1aaeb1;letter-spacing:1.5px;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:700;display:inline-flex}.location-heading span:before{content:"";background:#2ec4c7;border-radius:999px;width:4px;height:18px}.location-heading h2{color:#172033;margin:0 0 12px;font-size:42px}.location-heading p{color:#718096;margin:0;line-height:1.75}.location-layout{grid-template-columns:.8fr 1.2fr;align-items:stretch;gap:30px;display:grid}.location-info-grid{gap:18px;display:grid}.location-card{background:#fff;border:1px solid #e2e8ee;border-radius:18px;align-items:flex-start;gap:16px;padding:24px;display:flex;box-shadow:0 12px 28px #1f37490d}.location-icon{color:#1aaeb1;background:#eafafa;border-radius:13px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:18px;display:grid}.location-card-content,.operating-hours-content{width:100%}.location-card h3{color:#253247;margin:0 0 12px;font-size:15px}.location-card p{color:#7b8798;margin:0;font-size:13px;line-height:1.65}.contact-list{gap:12px;display:grid}.contact-item{color:#64748b;align-items:center;gap:11px;font-size:13px;text-decoration:none;display:flex}.contact-item svg{color:#2ec4c7;flex-shrink:0}.contact-item:hover{color:#1aaeb1}.operating-hours-card{align-items:flex-start}.operating-hours-content h3{margin-bottom:18px}.hours-list{gap:13px;width:100%;display:grid}.hours-row{grid-template-columns:1fr auto;align-items:center;gap:28px;width:100%;display:grid}.hours-row span{color:#64748b;font-size:14px}.hours-row strong{color:#172033;white-space:nowrap;font-size:14px;font-weight:600}.hours-row .closed-text{color:#ef4444;font-weight:700}.location-map-card{background:#fff;border:1px solid #e2e8ee;border-radius:22px;min-height:440px;overflow:hidden;box-shadow:0 18px 38px #1f374914}.location-map-card iframe{border:0;width:100%;height:100%;min-height:440px;display:block}.location-map-fallback{text-align:center;background:#f7fbfc;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:440px;padding:36px;display:flex}.location-map-fallback-icon{color:#1aaeb1;background:#eafafa;border-radius:16px;place-items:center;width:58px;height:58px;margin-bottom:18px;font-size:22px;display:grid}.location-map-fallback>span{color:#1aaeb1;letter-spacing:1.2px;text-transform:uppercase;font-size:12px;font-weight:700}.location-map-fallback h3{color:#172033;margin:9px 0 8px;font-size:20px}.location-map-fallback p{color:#64748b;max-width:440px;margin:0 0 22px;font-size:14px;line-height:1.65}.location-map-fallback a{color:#fff;background:#2ec4c7;border-radius:11px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-size:13px;font-weight:700;text-decoration:none;transition:background .2s;display:inline-flex}.location-map-fallback a:hover{background:#1aaeb1}@media (width<=900px){.location-layout{grid-template-columns:1fr}}@media (width<=650px){.location-section{padding:75px 0}.location-heading h2{font-size:34px}.location-map-card,.location-map-card iframe,.location-map-fallback{min-height:330px}.hours-row{gap:14px}}@media (width<=480px){.location-card{padding:20px}.hours-row{grid-template-columns:1fr;gap:4px}.contact-item{overflow-wrap:anywhere;align-items:flex-start}}[data-theme=dark] .home-page .location-section,[data-theme=light] .home-page .location-section{isolation:isolate;padding:105px 0;position:relative;overflow:hidden}[data-theme=dark] .home-page .location-section{background:radial-gradient(circle at 77% 48%,#2ec4c729,#0000 31%),radial-gradient(circle at 3% 88%,#247c9a1c,#0000 24%),radial-gradient(circle at 97% 5%,#52d5d714,#0000 18%),linear-gradient(145deg,#06131e,#081b28 54%,#05111b)}[data-theme=light] .home-page .location-section{background:radial-gradient(circle at 77% 48%,#2ec4c71f,#0000 31%),radial-gradient(circle at 3% 88%,#4badcc12,#0000 24%),radial-gradient(circle at 97% 5%,#52d5d712,#0000 18%),linear-gradient(145deg,#fbfdfd,#f2f7f8 54%,#fafcfc)}.home-page .location-section:before{z-index:-2;pointer-events:none;content:"";opacity:.72;background-image:linear-gradient(#2ec4c70a 1px,#0000 1px),linear-gradient(90deg,#2ec4c70a 1px,#0000 1px),repeating-radial-gradient(circle at 12% 70%,#0000 0 34px,#2ec4c717 35px 36px,#0000 37px 66px),repeating-radial-gradient(circle at 89% 17%,#0000 0 27px,#2ec4c714 28px 29px,#0000 30px 54px),radial-gradient(circle at 12% 70%,#2ec4c752 0 3px,#0000 4px),radial-gradient(circle at 89% 17%,#2ec4c747 0 3px,#0000 4px);background-size:58px 58px,58px 58px,100% 100%,100% 100%,100% 100%,100% 100%;position:absolute;inset:0}.home-page .location-section:after{content:"";z-index:-1;pointer-events:none;border:1px dashed #2ec4c72e;border-radius:50%;width:76%;height:48%;position:absolute;top:34%;left:-19%;transform:rotate(-11deg)}[data-theme=dark] .home-page .location-section:before{background-image:linear-gradient(#52d5d70b 1px,#0000 1px),linear-gradient(90deg,#52d5d70b 1px,#0000 1px),repeating-radial-gradient(circle at 12% 70%,#0000 0 34px,#52d5d71c 35px 36px,#0000 37px 66px),repeating-radial-gradient(circle at 89% 17%,#0000 0 27px,#52d5d71a 28px 29px,#0000 30px 54px),radial-gradient(circle at 12% 70%,#52d5d770 0 3px,#0000 4px),radial-gradient(circle at 89% 17%,#52d5d761 0 3px,#0000 4px)}[data-theme=dark] .home-page .location-section:after{border-color:#52d5d738}.home-page .location-section>.container{z-index:1;position:relative}.home-page .location-section .location-layout{grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);align-items:stretch;gap:42px}.home-page .location-left{min-width:0}.home-page .location-section .location-heading{margin-bottom:30px}.home-page .location-section .location-heading h2{letter-spacing:-1.8px;font-size:clamp(42px,4vw,58px)}.home-page .location-section .location-heading p{max-width:560px}.home-page .location-section .location-info-grid{gap:15px}.home-page .location-section .location-card{border:1px solid color-mix(in srgb,var(--public-accent) 28%,var(--public-border));background:linear-gradient(145deg,color-mix(in srgb,var(--public-surface) 93%,transparent),color-mix(in srgb,var(--public-elevated) 79%,transparent));border-radius:16px;padding:21px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;box-shadow:0 14px 32px #04283614}.home-page .location-section .location-card:hover{border-color:color-mix(in srgb,var(--public-accent) 72%,var(--public-border));transform:translateY(-4px);box-shadow:0 18px 38px #05495424}.home-page .location-section .location-icon{border:1px solid color-mix(in srgb,var(--public-accent) 30%,transparent);transition:transform .25s}.home-page .location-section .location-card:hover .location-icon{transform:scale(1.07)}.home-page .location-section .location-map-card{isolation:isolate;border:1px solid color-mix(in srgb,var(--public-accent) 34%,var(--public-border));background:radial-gradient(circle at 50% 25%,color-mix(in srgb,var(--public-accent) 17%,transparent),transparent 31%),linear-gradient(145deg,color-mix(in srgb,var(--public-surface) 94%,transparent),color-mix(in srgb,var(--public-elevated) 78%,transparent));min-height:640px;box-shadow:0 25px 60px #04283624,0 0 72px color-mix(in srgb,var(--public-accent) 13%,transparent);border-radius:25px;position:relative;overflow:hidden}.home-page .location-section .location-map-card iframe{border:0;width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.home-page .location-map-content{z-index:4;border:1px solid color-mix(in srgb,var(--public-accent) 28%,var(--public-border));background:color-mix(in srgb,var(--public-surface) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;border-radius:18px;width:min(100% - 56px,530px);padding:24px;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 16px 35px #04283621}.home-page .location-map-content>span{color:var(--public-accent-strong);letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:850}.home-page .location-map-content h3{color:var(--public-text);margin:8px 0;font-size:22px}.home-page .location-map-content p{color:var(--public-secondary);margin:0 0 18px;font-size:13px;line-height:1.6}.home-page .location-map-content a{color:#fff;background:linear-gradient(135deg,#20b8bb,#0d858e);border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 18px;text-decoration:none;transition:transform .22s,box-shadow .22s;display:flex;box-shadow:0 10px 22px #159c9f33}.home-page .location-map-content a:hover{transform:translateY(-3px);box-shadow:0 15px 28px #159c9f4a}.home-page .location-map-content a strong{font-size:13px}.home-page .location-button-arrow{margin-left:auto;transition:transform .22s}.home-page .location-map-content a:hover .location-button-arrow{transform:translate(5px)}.location-motion-ready [data-location-reveal]:not(.is-revealed){opacity:0}.location-motion-ready .location-heading[data-location-reveal]:not(.is-revealed){transform:translateY(24px)}.location-motion-ready .location-card[data-location-reveal]:not(.is-revealed){transform:translate(-25px)}.location-motion-ready .location-map-card[data-location-reveal]:not(.is-revealed){transform:translate(32px)scale(.97)}.location-motion-ready [data-location-reveal].is-revealed{animation:location-reveal .7s cubic-bezier(.16,1,.3,1) var(--location-delay,0s) backwards}@keyframes location-reveal{0%{opacity:0;transform:translateY(22px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@media (width<=1050px) and (width>=801px){.home-page .location-section .location-layout{grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr);gap:24px}.home-page .location-section .location-map-card{min-height:680px}.home-page .location-map-content{left:24px;right:24px;transform:none}}@media (width<=800px){.home-page .location-section .location-layout{grid-template-columns:1fr;gap:32px}.home-page .location-section .location-map-card{min-height:570px}.home-page .location-map-content{left:24px;right:24px;transform:none}}@media (width<=650px){[data-theme] .home-page .location-section{padding:76px 0}.home-page .location-section:before{opacity:.58;background-size:46px 46px,46px 46px,100% 100%,100% 100%,100% 100%,100% 100%}.home-page .location-section:after{width:112%;height:34%;top:42%;left:-58%}.home-page .location-section .location-map-card{border-radius:20px;min-height:520px}.home-page .location-map-content{width:calc(100% - 30px);padding:19px;bottom:15px;left:15px;transform:none}.home-page .location-map-content h3{font-size:19px}.home-page .location-map-content a strong{font-size:12px}.location-motion-ready .location-map-card[data-location-reveal]:not(.is-revealed){transform:translateY(24px)scale(.98)}}@media (prefers-reduced-motion:reduce){.location-motion-ready [data-location-reveal]{opacity:1;animation:none;transform:none}}.home-page section.reviews-section{isolation:isolate;background:radial-gradient(55% 38% at 102% 4%,#45dbdc47,#2ec4c721 40%,#0000 72%),radial-gradient(60% 34% at -7% 48%,#1eaeb233,#64e6e51a 44%,#0000 75%),radial-gradient(76% 31% at 54% 108%,#35cacd3d,#7beceb1a 46%,#0000 76%),linear-gradient(#fbfefe 0%,#fff 46%,#f9fdfd 100%);padding:48px 0 76px;position:relative;overflow:hidden}.home-page section.reviews-section:before,.home-page section.reviews-section:after{content:"";z-index:-1;pointer-events:none;filter:blur(34px);position:absolute}.home-page section.reviews-section:before{background:radial-gradient(at 64% 39%,#46dedf5c,#0000 57%),linear-gradient(142deg,#0000 8%,#1aaeb214 28%,#4bdcdc4f 50%,#8ef1ef26 67%,#0000 88%);border-radius:66% 34% 58% 42%/38% 61% 39% 62%;width:min(980px,72vw);height:310px;top:-3%;right:-17%;transform:rotate(-11deg)skew(-7deg)}.home-page section.reviews-section:after{background:radial-gradient(at 47% 56%,#149ea24a,#0000 61%),linear-gradient(102deg,#0000 5%,#69e8e724 24%,#27bdc152 48%,#77ebe929 70%,#0000 94%);border-radius:35% 65% 28% 72%/58% 35% 65% 42%;width:min(1180px,86vw);height:330px;bottom:-12%;left:-15%;transform:rotate(6deg)skew(8deg)}.home-page section.reviews-section>.container{z-index:1;position:relative}.home-page header.reviews-header{max-width:720px;margin-bottom:28px}.home-page .reviews-eyebrow{color:var(--public-accent-strong);letter-spacing:1.35px;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:10px;font-size:12px;font-weight:800;display:inline-flex}.reviews-eyebrow:before{content:"";background:var(--public-accent);border-radius:9px;width:4px;height:17px}.home-page .reviews-header h2{color:var(--public-text);margin:0 0 8px;font-size:clamp(32px,3.4vw,45px);line-height:1.15}.home-page .reviews-header p{color:var(--public-secondary);margin:0;font-size:15px;line-height:1.7}.reviews-feature{border:1px solid var(--public-border);background:var(--public-surface);border-radius:24px;grid-template-columns:minmax(0,1.05fr) minmax(310px,.95fr);min-height:340px;transition:transform .3s,border-color .3s,box-shadow .3s,opacity .48s;display:grid;overflow:hidden;box-shadow:0 24px 60px #0f203417}.reviews-feature:hover{border-color:color-mix(in srgb, var(--public-accent) 45%, var(--public-border));transform:translateY(-5px);box-shadow:0 30px 68px #0f203424}.reviews-feature-content{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,4vw,54px);display:flex}.reviews-feature-label{color:var(--public-accent-strong);letter-spacing:1.25px;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:20px;font-size:12px;font-weight:800;display:inline-flex}.reviews-google-icon{border:1px solid color-mix(in srgb, #4285f4 25%, var(--public-border));color:#4285f4;background:color-mix(in srgb, #4285f4 10%, var(--public-surface));border-radius:13px;place-items:center;width:42px;height:42px;font-size:21px;transition:transform .26s;display:grid}.reviews-feature:hover .reviews-google-icon{transform:scale(1.08)}.reviews-feature-content h3{color:var(--public-text);letter-spacing:-.8px;margin:0 0 13px;font-size:clamp(26px,2.8vw,36px);line-height:1.15}.reviews-feature-content>p{max-width:465px;color:var(--public-secondary);margin:0 0 27px;font-size:15px;line-height:1.75}.reviews-google-link{border:1px solid var(--public-accent-strong);color:#fff;background:var(--public-accent-strong);border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-size:13px;font-weight:750;text-decoration:none;transition:transform .22s,background-color .22s,box-shadow .22s;display:inline-flex;box-shadow:0 10px 24px #128f922e}.reviews-google-link:hover{background:#0f7b7e;transform:translateY(-3px);box-shadow:0 14px 28px #128f9245}.google-reviews-link-unavailable{border:1px solid var(--public-border);background:var(--public-elevated);border-radius:10px;max-width:360px;padding:12px 15px}.google-reviews-link-unavailable strong,.google-reviews-link-unavailable span{display:block}.google-reviews-link-unavailable strong{color:var(--public-text);font-size:12px}.google-reviews-link-unavailable span{color:var(--public-secondary);margin-top:4px;font-size:11px;line-height:1.5}.reviews-feature-visual{isolation:isolate;border-left:1px solid color-mix(in srgb, var(--public-accent) 15%, var(--public-border));background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--public-accent) 20%, transparent), transparent 47%), linear-gradient(145deg, var(--public-elevated), color-mix(in srgb, var(--public-accent-soft) 68%, var(--public-surface)));place-items:center;min-height:340px;display:grid;position:relative;overflow:hidden}.reviews-visual-orbit{border:1px solid color-mix(in srgb, var(--public-accent) 22%, transparent);border-radius:50%;width:310px;height:310px;position:absolute}.reviews-visual-orbit-one{transform:scale(1.15)}.reviews-visual-orbit-two{transform:scale(.76)}.reviews-visual-emblem{border:1px solid color-mix(in srgb, var(--public-accent) 32%, var(--public-border));color:#4285f4;background:var(--public-surface);border-radius:38px;place-items:center;width:154px;height:154px;font-size:78px;transition:transform .32s;display:grid;transform:rotate(-7deg);box-shadow:0 22px 55px #0f203429}.reviews-feature:hover .reviews-visual-emblem{transform:rotate(-7deg)scale(1.06)}.reviews-visual-caption{border:1px solid var(--public-border);width:max-content;max-width:calc(100% - 36px);color:var(--public-text);background:var(--public-surface);text-align:center;border-radius:999px;align-items:center;gap:9px;padding:10px 15px;font-size:11px;font-weight:650;display:inline-flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #0f203414}.reviews-visual-caption svg{color:var(--public-accent-strong);flex:none}.reviews-highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.reviews-highlight{border:1px solid var(--public-border);background:var(--public-surface);border-radius:18px;min-height:148px;padding:22px 24px;transition:transform .28s,border-color .28s,box-shadow .28s,opacity .45s;box-shadow:0 9px 26px #0f20340b}.reviews-highlight:hover{border-color:color-mix(in srgb, var(--public-accent) 45%, var(--public-border));transform:translateY(-5px);box-shadow:0 17px 35px #0f20341a}.reviews-highlight-icon{width:38px;height:38px;color:var(--public-accent-strong);background:var(--public-accent-soft);border-radius:11px;place-items:center;margin-bottom:14px;font-size:17px;display:grid}.reviews-highlight h3{color:var(--public-text);margin:0 0 5px;font-size:15px}.reviews-highlight p{color:var(--public-secondary);margin:0;font-size:12px;line-height:1.55}[data-theme=dark] .home-page .reviews-feature,[data-theme=dark] .home-page .reviews-highlight{background:var(--public-surface);border-color:#354758;box-shadow:0 16px 35px #00000021}[data-theme=dark] .home-page .reviews-highlight{background:#192637}[data-theme=dark] .home-page .reviews-feature-visual{background:radial-gradient(circle at 50% 40%,#52d5d733,#0000 49%),linear-gradient(145deg,#1a3040,#142332);border-color:#354758}[data-theme=dark] .home-page .reviews-visual-emblem,[data-theme=dark] .home-page .reviews-visual-caption{background:#1b2b3a;border-color:#405668}[data-theme=dark] .home-page .reviews-google-link{color:#062b2d;background:var(--public-accent);border-color:var(--public-accent)}[data-theme=dark] .home-page .reviews-google-link:hover{background:var(--public-accent-strong)}[data-theme=dark] .home-page .reviews-feature:hover,[data-theme=dark] .home-page .reviews-highlight:hover{border-color:#498487}[data-theme=dark] .home-page section.reviews-section{background:radial-gradient(55% 38% at 102% 4%,#37dcdd40,#1a9ca11f 42%,#0000 72%),radial-gradient(60% 34% at -7% 48%,#16abb038,#3ad5d717 45%,#0000 75%),radial-gradient(76% 31% at 54% 108%,#27c8cc3d,#4fe4e414 46%,#0000 76%),linear-gradient(155deg,#07121d 0%,#091722 48%,#06111b 100%)}[data-theme=dark] .home-page section.reviews-section:before{opacity:.88;background:radial-gradient(at 64% 39%,#3ee4e563,#0000 57%),linear-gradient(142deg,#0000 8%,#1eb7bb17 27%,#3ee1e259 50%,#77efee2b 67%,#0000 88%)}[data-theme=dark] .home-page section.reviews-section:after{opacity:.88;background:radial-gradient(at 47% 56%,#18b9bd57,#0000 61%),linear-gradient(102deg,#0000 5%,#4de4e426 24%,#24ced257 48%,#66ebea2b 70%,#0000 94%)}@media (prefers-reduced-motion:no-preference){.reviews-motion-ready .reviews-eyebrow,.reviews-motion-ready .reviews-header h2,.reviews-motion-ready .reviews-header p,.reviews-motion-ready .reviews-feature,.reviews-motion-ready .reviews-highlight{opacity:0;transform:translateY(22px)}.reviews-motion-ready .reviews-eyebrow,.reviews-motion-ready .reviews-header h2,.reviews-motion-ready .reviews-header p{transition:opacity .44s,transform .44s}.reviews-motion-ready.reviews-visible .reviews-eyebrow,.reviews-motion-ready.reviews-visible .reviews-header h2,.reviews-motion-ready.reviews-visible .reviews-header p,.reviews-motion-ready.reviews-visible .reviews-feature,.reviews-motion-ready.reviews-visible .reviews-highlight{opacity:1;transform:translateY(0)}.reviews-visible .reviews-header h2{transition-delay:65ms}.reviews-visible .reviews-header p{transition-delay:.12s}.reviews-visible .reviews-feature{transition-delay:.16s}.reviews-visible .reviews-highlight:first-child{transition-delay:.23s}.reviews-visible .reviews-highlight:nth-child(2){transition-delay:.3s}.reviews-visible .reviews-highlight:nth-child(3){transition-delay:.37s}.reviews-motion-ready.reviews-visible .reviews-feature:hover,.reviews-motion-ready.reviews-visible .reviews-highlight:hover{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.reviews-section .reviews-feature,.reviews-section .reviews-highlight,.reviews-section .reviews-google-icon,.reviews-section .reviews-visual-emblem,.reviews-section .reviews-google-link{transition:none}.reviews-section .reviews-feature:hover,.reviews-section .reviews-highlight:hover,.reviews-section .reviews-google-icon,.reviews-section .reviews-visual-emblem,.reviews-section .reviews-google-link:hover{transform:none}}@media (width<=760px){.home-page section.reviews-section:before{filter:blur(30px);width:112vw;height:230px;right:-55%}.home-page section.reviews-section:after{filter:blur(30px);width:125vw;height:250px;left:-47%}.reviews-feature{grid-template-columns:1fr}.reviews-feature-visual{border-top:1px solid var(--public-border);border-left:0;min-height:250px}.reviews-visual-emblem{border-radius:28px;width:118px;height:118px;font-size:58px}.reviews-highlights{grid-template-columns:1fr;gap:12px}.reviews-highlight{min-height:0;padding:18px 20px}}@media (width<=600px){.home-page section.reviews-section{padding:36px 0 60px}.home-page header.reviews-header{margin-bottom:23px}.reviews-feature-content{padding:29px 24px}.reviews-google-link{width:100%}.reviews-feature-visual{min-height:225px}.reviews-visual-caption{bottom:16px}}.footer{color:#8ea0b9;background:#111a2e}.footer-main{grid-template-columns:1.35fr .75fr .9fr 1.1fr;gap:70px;padding-top:68px;padding-bottom:56px;display:grid}.footer-brand-heading{align-items:center;gap:13px;margin-bottom:22px;display:flex}.footer-logo{color:#fff;background:#2ec4c7;border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:21px;display:grid}.footer-brand-heading h2{color:#fff;margin:0;font-size:17px;line-height:1.25}.footer-brand-heading span{color:#2ec4c7;margin-top:3px;font-size:12px;font-weight:600;display:block}.footer-description{color:#7486a2;max-width:330px;margin:0 0 24px;font-size:13px;line-height:1.8}.footer-socials{gap:12px;display:flex}.footer-socials a{color:#9fb0c6;background:#202c42;border-radius:11px;place-items:center;width:42px;height:42px;transition:color .2s,background .2s,transform .2s;display:grid}.footer-socials a:hover{color:#fff;background:#2ec4c7;transform:translateY(-2px)}.footer-column{flex-direction:column;align-items:flex-start;gap:15px;display:flex}.footer-column h3{color:#9fb2cc;letter-spacing:1.2px;text-transform:uppercase;margin:1px 0 10px;font-size:12px;font-weight:700}.footer-column a,.footer-column button{color:#7486a2;text-align:left;background:0 0;border:0;padding:0;font-size:13px;line-height:1.5;text-decoration:none;transition:color .2s}.footer-column a:hover,.footer-column button:hover{color:#2ec4c7}.footer-contact-column{gap:16px}.footer-contact-item{color:#7486a2;align-items:flex-start;gap:13px;font-size:13px;line-height:1.75;display:flex}.footer-contact-item svg{color:#2ec4c7;flex-shrink:0;margin-top:4px;font-size:15px}.footer-divider{background:#ffffff14;height:1px}.footer-bottom{justify-content:space-between;align-items:center;gap:25px;min-height:110px;display:flex}.footer-bottom p{color:#52647e;margin:0;font-size:12px}.footer-security{color:#52647e;align-items:center;gap:9px;font-size:12px;display:flex}.footer-security svg{color:#2ec4c7}@media (width<=1050px){.footer-main{grid-template-columns:repeat(2,1fr);gap:50px}}@media (width<=650px){.footer-main{grid-template-columns:1fr;gap:42px;padding-top:58px;padding-bottom:46px}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;padding-top:25px;padding-bottom:25px}}.reset-password-page{background:radial-gradient(circle at 50% 15%,var(--accent-soft),transparent 34%),var(--bg-page);min-height:100vh;color:var(--text-primary);grid-template-rows:auto 1fr;padding:0 24px 40px;display:grid}.reset-password-topbar{justify-content:space-between;align-items:center;width:min(1100px,100%);min-height:76px;margin:auto;display:flex}.reset-password-brand{color:var(--text-primary);background:0 0;border:0;padding:0;font-size:15px;font-weight:800}.reset-password-card{border:1px solid var(--border);background:var(--bg-surface);border-radius:24px;align-self:center;width:min(100%,500px);margin:auto;padding:36px;box-shadow:0 28px 80px #0f172a29}.reset-password-heading{text-align:center}.reset-password-heading>div{width:56px;height:56px;color:var(--accent);background:var(--accent-soft);border-radius:16px;place-items:center;margin:0 auto 14px;display:grid}.reset-password-heading>span,.reset-password-success>span{color:var(--accent);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.reset-password-heading h1,.reset-password-success h1{color:var(--text-primary);margin:7px 0;font-size:29px}.reset-password-heading p,.reset-password-success p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.65}.reset-password-form{gap:17px;margin-top:25px;display:grid}.reset-password-form label>span{color:var(--text-primary);margin-bottom:7px;font-size:12px;font-weight:700;display:block}.reset-password-input{border:1px solid var(--border);min-height:50px;color:var(--text-muted);background:var(--input-bg);border-radius:12px;align-items:center;gap:10px;padding:0 14px;display:flex}.reset-password-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.reset-password-input input{width:100%;min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;padding:0}.reset-password-input button{width:30px;height:30px;color:var(--text-muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.reset-password-policy{color:var(--text-muted);margin:0;font-size:11px;line-height:1.55}.reset-password-message{color:#a42834;background:#fff0f1;border:1px solid #f2c9ce;border-radius:10px;padding:11px 13px;font-size:12px}.reset-password-submit,.reset-password-success button{color:#fff;background:var(--accent-bright);border:0;border-radius:12px;min-height:50px;font-weight:800}.reset-password-submit:hover,.reset-password-success button:hover{background:var(--accent)}.reset-password-submit:disabled{cursor:not-allowed;opacity:.6}[data-theme=dark] .reset-password-message{color:#fecdd3;background:#351c24;border-color:#7f3944}.reset-password-success{text-align:center}.reset-password-success>svg{color:#22c55e;margin:0 auto 18px;font-size:60px;display:block}.reset-password-success button{width:100%;margin-top:24px}@media (width<=560px){.reset-password-page{padding-inline:14px}.reset-password-topbar{min-height:66px}.reset-password-brand{text-align:left;max-width:220px}.reset-password-card{border-radius:20px;padding:30px 20px}.reset-password-heading h1,.reset-password-success h1{font-size:25px}}.reset-recovery-page .verification-card{box-sizing:border-box}.reset-recovery-page .reset-password-form{text-align:left;grid-template-columns:minmax(0,1fr)}.reset-recovery-page .reset-password-form label{min-width:0}.reset-recovery-page .reset-password-input{background:#f8fbfc;min-width:0}.reset-recovery-page .reset-password-input input{font:inherit;flex:1;font-size:14px}.reset-recovery-page .reset-password-input>svg,.reset-recovery-page .reset-password-input button{flex-shrink:0}.reset-recovery-page .reset-password-input input:focus-visible{outline:none}.reset-recovery-page .reset-password-policy{color:#426773;background:#e8fbfb;border:1px solid #b9e7e8;border-radius:12px;padding:12px 14px;font-size:12px;line-height:1.7}.reset-recovery-page .reset-password-submit{margin-top:0}[data-theme=dark] .reset-recovery-page .reset-password-message{color:#a42834;background:#fff0f1;border-color:#f2c9ce}.auth-modal-overlay{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aad;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.auth-modal-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;width:min(100%,480px);padding:34px;position:relative;box-shadow:0 30px 80px #0f172a42}.auth-modal-close{color:#64748b;background:#f1f5f9;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;font-size:24px;line-height:1;display:grid;position:absolute;top:15px;right:18px}.auth-modal-close:hover{color:#172033;background:#e7eef2}.auth-modal-close svg{width:16px;height:16px;display:block}.auth-modal-heading{text-align:center;margin-bottom:28px}.auth-modal-icon{color:#159c9f;background:#e7fbfb;border-radius:16px;place-items:center;width:54px;height:54px;margin:0 auto 14px;font-size:20px;display:grid}.auth-modal-heading>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.auth-modal-heading h2{color:#172033;margin:0 0 8px;font-size:30px}.auth-modal-heading p{color:#7a8798;margin:0;font-size:13px;line-height:1.7}.auth-form{gap:18px;display:grid}.auth-field{gap:8px;display:grid}.auth-field label,.auth-label-row label{color:#334155;font-size:13px;font-weight:600}.auth-label-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.forgot-password-button{color:#1aaeb1;background:0 0;border:0;padding:0;font-size:11px;font-weight:600}.auth-input-wrapper{background:#fbfdfd;border:1px solid #dfe8ec;border-radius:12px;align-items:center;gap:11px;min-height:50px;padding:0 15px;transition:border-color .2s,box-shadow .2s;display:flex}.auth-input-wrapper:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 4px #2ec4c71f}.auth-input-wrapper>svg{color:#94a3b8;flex-shrink:0;font-size:14px}.auth-input-wrapper input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:13px}.auth-input-wrapper input::placeholder{color:#a7b2c0}.password-toggle{color:#94a3b8;background:0 0;border:0;flex-shrink:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.remember-checkbox{color:#64748b;cursor:pointer;align-items:center;gap:9px;width:fit-content;font-size:12px;display:flex}.remember-checkbox input{accent-color:#2ec4c7}.auth-submit-button{color:#fff;background:#2ec4c7;border:0;border-radius:12px;min-height:50px;font-size:14px;font-weight:700;box-shadow:0 12px 26px #2ec4c738}.auth-submit-button:hover{background:#1ba7aa}.auth-security-note{color:#6e7c8f;background:#f3fbfb;border:1px solid #d9eeee;border-radius:12px;align-items:flex-start;gap:10px;margin-top:20px;padding:13px 14px;font-size:11px;line-height:1.6;display:flex}.auth-security-note svg{color:#2ec4c7;flex-shrink:0;margin-top:2px}.auth-switch-text{color:#7a8798;text-align:center;margin:20px 0 0;font-size:12px}.auth-switch-text button{color:#1aaeb1;background:0 0;border:0;margin-left:5px;padding:0;font-weight:700}@media (width<=520px){.auth-modal-overlay{padding:14px}.auth-modal-card{border-radius:20px;padding:30px 20px 24px}.auth-modal-heading h2{font-size:27px}}.auth-form-message{border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45}.auth-form-message.error{color:#a42834;background:#fff0f1;border:1px solid #f2c9ce}.auth-form-message.success{color:#176b63;background:#edfbf9;border:1px solid #bce8e3}.auth-submit-button:disabled{cursor:wait;opacity:.7}.auth-modal-card{box-sizing:border-box;overscroll-behavior:contain;border-color:#d5e9eb;width:min(100%,460px);min-width:0;max-width:100%;max-height:calc(100dvh - 48px);padding:30px 32px 26px;overflow-y:auto;box-shadow:0 24px 64px #0f172a33}.auth-modal-card .auth-modal-heading{margin-bottom:24px}.auth-modal-card .auth-modal-icon{color:#128f92;background:#e8fbfb;border:1px solid #b9e7e8;border-radius:13px;width:46px;height:46px;margin-bottom:12px}.auth-modal-card .auth-modal-heading>span{color:#0f7b7e;letter-spacing:1.5px;font-size:10px}.auth-modal-card .auth-modal-heading h2{color:#0f172a;letter-spacing:-.7px;font-size:28px;line-height:1.3}.auth-modal-card .auth-modal-heading p{color:#64748b;font-size:12px;line-height:1.7}.auth-modal-card .auth-form{gap:16px}.auth-modal-card .auth-field{gap:7px}.auth-modal-card .auth-label-row{flex-wrap:wrap;gap:10px}.auth-modal-card .auth-input-wrapper,.auth-modal-card .auth-resend-form .reset-password-input{background:#f8fbfc;border:1px solid #d5e2e8;border-radius:11px;gap:10px;min-height:48px;padding:0 13px}.auth-modal-card .auth-input-wrapper input,.auth-modal-card .auth-resend-form input{font:inherit;color:#172033;background:0 0;min-width:0;font-size:13px;line-height:1.5}.auth-modal-card .auth-input-wrapper input::placeholder{color:#738296}.auth-modal-card .auth-input-wrapper>svg,.auth-modal-card .auth-resend-form .reset-password-input>svg{color:#64828c;flex-shrink:0;font-size:14px}.auth-modal-card .auth-input-wrapper:focus-within,.auth-modal-card .auth-resend-form .reset-password-input:focus-within{border-color:#128f92;box-shadow:0 0 0 3px #128f9221}.auth-modal-card :is(button,input):focus-visible{outline-offset:3px;outline:3px solid #128f92}.auth-modal-card .auth-input-wrapper input:focus-visible,.auth-modal-card .auth-resend-form input:focus-visible{outline:none}.auth-modal-card .password-toggle{color:#64748b;border-radius:7px;width:34px;height:38px}.auth-modal-card .password-toggle:hover{color:#0f7b7e;background:#e8fbfb}.auth-modal-card .forgot-password-button,.auth-modal-card .auth-switch-text button{color:#0f7b7e}.auth-modal-card .forgot-password-button:hover,.auth-modal-card .auth-switch-text button:hover{text-underline-offset:3px;text-decoration:underline}.auth-modal-card .remember-checkbox{min-height:24px}.auth-modal-card .remember-checkbox input{accent-color:#128f92;width:15px;height:15px}.auth-modal-card .auth-submit-button,.auth-modal-card .auth-resend-form .reset-password-submit{color:#fff;width:100%;min-height:48px;font:inherit;background:linear-gradient(115deg,#0f7b7e,#106b74);border:1px solid #128f92;border-radius:11px;justify-content:center;align-items:center;gap:9px;padding:12px 14px;font-size:13px;font-weight:600;line-height:1.5;transition:background .2s,box-shadow .2s;display:flex;box-shadow:0 6px 16px #128f9226}.auth-modal-card .auth-submit-button:hover:not(:disabled),.auth-modal-card .auth-resend-form .reset-password-submit:hover:not(:disabled){background:linear-gradient(115deg,#106b74,#0d5d66);box-shadow:0 8px 20px #128f9233}.auth-modal-card .auth-resend-form .reset-password-submit:disabled{cursor:wait;opacity:.7}.auth-modal-card .auth-resend-form .reset-password-submit svg{flex-shrink:0;font-size:12px}.auth-modal-card .auth-verification{gap:12px;display:grid}.auth-modal-card .auth-verification-info{background:#e8fbfb;border:1px solid #b9e7e8;border-radius:12px;gap:12px;padding:14px;display:flex}.auth-modal-card .auth-verification-info>svg{color:#0f7b7e;flex-shrink:0;margin-top:2px;font-size:17px}.auth-modal-card .auth-verification-info h3{color:#155e68;margin:0 0 5px;font-size:13px;font-weight:700;line-height:1.4}.auth-modal-card .auth-verification-info p{color:#426773;margin:0;font-size:12px;line-height:1.65}.auth-modal-card .auth-form-message{overflow-wrap:anywhere;border-radius:10px;align-items:flex-start;gap:9px;padding:10px 12px;font-size:12px;line-height:1.65;display:flex}.auth-modal-card .auth-form-message>svg{flex-shrink:0;margin-top:3px;font-size:13px}.auth-modal-card .auth-form-message.error{color:#a42834;background:#fff3f4;border-color:#f0d4d8}.auth-modal-card .auth-form-message.success{color:#155e68;background:#e8fbfb;border-color:#b9e7e8}.auth-modal-card .auth-resend-form{gap:12px;margin:3px 0 0}.auth-modal-card .auth-resend-form label>span{color:#334155;font-size:12px;font-weight:600}.auth-modal-card .auth-resend-message{color:#155e68;overflow-wrap:anywhere;background:#e8fbfb;border:1px solid #b9e7e8;border-radius:10px;gap:9px;margin:0;padding:11px 12px;font-size:12px;line-height:1.65;display:flex}.auth-modal-card .auth-resend-message>svg{flex-shrink:0;margin-top:3px}.auth-modal-card .auth-verification-divider{color:#64748b;align-items:center;gap:14px;margin:19px 0;font-size:11px;display:flex}.auth-modal-card .auth-verification-divider:before,.auth-modal-card .auth-verification-divider:after{content:"";background:#e0eaed;flex:1;height:1px}.auth-modal-card .auth-security-note{color:#64748b;background:0 0;border:0;border-top:1px solid #e0eaed;border-radius:0;margin-top:18px;padding:12px 0 0;font-size:11px}.auth-modal-card .auth-security-note svg{color:#128f92}.auth-modal-card .auth-switch-text{color:#64748b;margin-top:16px}.auth-modal-card :is(.auth-form,.auth-field,.auth-verification,.auth-resend-form){grid-template-columns:minmax(0,1fr);min-width:0}.auth-modal-card :is(.auth-input-wrapper,.reset-password-input,.auth-resend-form label,.auth-verification-info>div,.auth-form-message>span,.auth-resend-message>span){box-sizing:border-box;min-width:0;max-width:100%}.auth-modal-card :is(.auth-input-wrapper,.reset-password-input) input{flex:1;min-width:0;max-width:100%}.auth-modal-card .auth-verification-info{overflow-wrap:anywhere}.auth-login-spinner{border:2px solid #fff6;border-top-color:currentColor;border-radius:50%;flex:0 0 16px;width:16px;height:16px;animation:.8s linear infinite auth-login-spin}@keyframes auth-login-spin{to{transform:rotate(360deg)}}[data-theme=dark] .auth-modal-card .auth-modal-heading h2{color:var(--text-primary)}[data-theme=dark] .auth-modal-card :is(.auth-modal-heading>span,.forgot-password-button,.auth-switch-text button){color:var(--accent)}[data-theme=dark] .auth-modal-card :is(.auth-modal-heading p,.auth-security-note,.auth-switch-text){color:var(--text-secondary)}[data-theme=dark] .auth-modal-card :is(.auth-input-wrapper,.auth-resend-form .reset-password-input){background:var(--input-bg);border-color:var(--border)}[data-theme=dark] .auth-modal-card :is(.auth-verification-info,.auth-resend-message,.auth-form-message.success){color:#c4ebec;background:#17383c;border-color:#2b6267}[data-theme=dark] .auth-modal-card .auth-verification-info :is(h3,p,svg){color:#c4ebec}[data-theme=dark] .auth-modal-card .auth-form-message.error{color:#fecdd3;background:#351c24;border-color:#7f3944}[data-theme=dark] .auth-modal-card .auth-resend-form label>span{color:var(--text-primary)}@media (width<=520px){.auth-modal-card{border-radius:20px;max-height:calc(100dvh - 28px);padding:26px 20px 22px}.auth-modal-card .auth-modal-heading h2{font-size:26px}.auth-modal-card .auth-modal-heading{margin-bottom:20px}}@media (prefers-reduced-motion:reduce){.auth-modal-card *,.auth-modal-card :before,.auth-modal-card :after{transition:none}.auth-login-spinner{animation:none}}.register-modal-overlay{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aad;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.register-modal-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;width:min(100%,720px);max-height:calc(100vh - 40px);padding:34px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #0f172a42}.register-modal-close{color:#64748b;background:#f1f5f9;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;font-size:24px;display:grid;position:absolute;top:15px;right:18px}.register-modal-heading{text-align:center;margin-bottom:28px}.register-modal-icon{color:#159c9f;background:#e7fbfb;border-radius:16px;place-items:center;width:54px;height:54px;margin:0 auto 14px;font-size:20px;display:grid}.register-modal-heading>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.register-modal-heading h2{color:#172033;margin:0 0 8px;font-size:30px}.register-modal-heading p{color:#7a8798;margin:0;font-size:13px;line-height:1.7}.register-form{gap:20px;display:grid}.register-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.register-field{gap:8px;display:grid}.register-field label{color:#334155;font-size:13px;font-weight:600}.register-input-wrapper{background:#fbfdfd;border:1px solid #dfe8ec;border-radius:12px;align-items:center;gap:11px;min-height:50px;padding:0 15px;display:flex}.register-input-wrapper:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 4px #2ec4c71f}.register-input-wrapper>svg{color:#94a3b8;flex-shrink:0;font-size:14px}.register-input-wrapper input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:13px}.register-input-wrapper input::placeholder{color:#a7b2c0}.register-password-toggle{color:#94a3b8;background:0 0;border:0;flex-shrink:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.register-consent{color:#64748b;cursor:pointer;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;display:flex}.register-consent input{accent-color:#2ec4c7;margin-top:3px}.register-submit-button{color:#fff;background:#2ec4c7;border:0;border-radius:12px;min-height:50px;font-size:14px;font-weight:700;box-shadow:0 12px 26px #2ec4c738}.register-submit-button:hover{background:#1ba7aa}.register-switch-text{color:#7a8798;text-align:center;margin:20px 0 0;font-size:12px}.register-switch-text button{color:#1aaeb1;background:0 0;border:0;margin-left:5px;padding:0;font-weight:700}@media (width<=680px){.register-modal-overlay{padding:14px}.register-modal-card{border-radius:20px;padding:30px 20px 24px}.register-grid{grid-template-columns:1fr}}.register-password-guidance,.register-field-error{font-size:11px;line-height:1.45;display:block}.register-password-guidance{color:#64748b}.register-field-error{color:#b42332;font-weight:600}.register-input-wrapper:has(input[aria-invalid=true]){border-color:#df7882}.register-form-message{color:#a42834;background:#fff0f1;border:1px solid #f2c9ce;border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:13px}.register-field-wide{margin:16px 0}.register-input-wrapper select,.register-input-wrapper textarea{color:#172033;width:100%;font:inherit;resize:vertical;background:0 0;border:0;outline:0}.register-input-wrapper textarea{padding-top:11px}.register-submit-button:disabled{cursor:wait;opacity:.7}.forgot-modal-overlay{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aad;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.forgot-modal-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;width:min(100%,480px);padding:34px;position:relative;box-shadow:0 30px 80px #0f172a42}.forgot-modal-close{color:#64748b;background:#f1f5f9;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;font-size:24px;line-height:1;display:grid;position:absolute;top:15px;right:18px}.forgot-modal-close:hover{color:#172033;background:#e7eef2}.forgot-modal-heading{text-align:center;margin-bottom:27px}.forgot-modal-icon{color:#159c9f;background:#e7fbfb;border-radius:16px;place-items:center;width:54px;height:54px;margin:0 auto 14px;font-size:20px;display:grid}.forgot-modal-heading>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.forgot-modal-heading h2,.forgot-success h2{color:#172033;margin:0 0 9px;font-size:29px}.forgot-modal-heading p,.forgot-success p{color:#7a8798;margin:0;font-size:13px;line-height:1.7}.forgot-form{gap:20px;display:grid}.forgot-field{gap:8px;display:grid}.forgot-field label{color:#334155;font-size:13px;font-weight:600}.forgot-input-wrapper{background:#fbfdfd;border:1px solid #dfe8ec;border-radius:12px;align-items:center;gap:11px;min-height:50px;padding:0 15px;display:flex}.forgot-input-wrapper:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 4px #2ec4c71f}.forgot-input-wrapper svg{color:#94a3b8;flex-shrink:0}.forgot-input-wrapper input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:13px}.forgot-submit-button{color:#fff;background:#2ec4c7;border:0;border-radius:12px;width:100%;min-height:50px;font-size:14px;font-weight:700;box-shadow:0 12px 26px #2ec4c738}.forgot-submit-button:hover{background:#1ba7aa}.forgot-submit-button:disabled{cursor:not-allowed;opacity:.6}.forgot-form-message{color:#a42834;background:#fff0f1;border:1px solid #f2c9ce;border-radius:10px;padding:11px 13px;font-size:12px;line-height:1.5}[data-theme=dark] .home-page .forgot-form-message{color:#fecdd3;background:#351c24;border-color:#7f3944}.forgot-back-button{color:#1aaeb1;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;margin:19px auto 0;padding:0;font-size:12px;font-weight:700;display:flex}.forgot-success{text-align:center;padding:18px 0 4px}.forgot-success-icon{color:#16a34a;background:#dcfce7;border-radius:50%;place-items:center;width:65px;height:65px;margin:0 auto 18px;font-size:28px;display:grid}.forgot-success>strong{color:#172033;overflow-wrap:anywhere;margin:12px 0;font-size:14px;display:block}.forgot-success-note{background:#f3fbfb;border-radius:12px;padding:13px;color:#64748b!important;margin-bottom:24px!important;font-size:11px!important}@media (width<=520px){.forgot-modal-overlay{padding:14px}.forgot-modal-card{border-radius:20px;padding:30px 20px 24px}}[data-theme=dark] .home-page .forgot-success-note{background:var(--public-elevated);border:1px solid var(--public-border);color:var(--public-secondary)!important}.appointment-overlay{z-index:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.appointment-modal{background:#fff;border-radius:22px;width:min(100%,850px);max-height:calc(100vh - 40px);overflow:hidden;box-shadow:0 30px 90px #0f172a4d}.appointment-header{color:#fff;background:linear-gradient(135deg,#2ec4c7,#159c9f);padding:26px 30px 22px;position:relative}.appointment-overlay .appointment-modal .appointment-header h2{color:#fff;margin:0 0 4px;font-size:22px}.appointment-overlay .appointment-modal .appointment-header>p{color:#ffffffd1;opacity:1;margin:0 0 18px;font-size:12px}.appointment-close{color:#fff;background:0 0;padding:0;font-size:25px;position:absolute;top:22px;right:28px}.appointment-progress{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.progress-item{align-items:center;gap:8px;min-width:0;display:flex;position:relative}.progress-circle{z-index:2;color:#ffffffd1;background:#ffffff29;border:1px solid #ffffff8c;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:11px;display:grid;position:relative}.progress-circle.active{color:#fff;background:#ffffff40;border-color:#fff}.progress-circle.completed{color:#159c9f;background:#fff;border-color:#fff}.progress-item span{z-index:2;color:#ffffffc7;flex-shrink:0;font-size:12px;font-weight:600;position:relative}.progress-item span.active-label{color:#fff}.progress-item:has(.progress-circle.completed) span.active-label{color:#ffffffe0}.progress-item:has(.progress-circle.active) span.active-label{color:#fff;font-weight:700}.progress-line{background:#ffffff80;width:100%;height:1px;margin-right:10px}.appointment-body{max-height:calc(100vh - 190px);padding:28px 30px 24px;overflow-y:auto}.appointment-section-title{color:#159c9f;letter-spacing:1.2px;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 18px;font-size:13px;display:flex}.appointment-section-title:before{content:"";background:#2ec4c7;border-radius:999px;width:4px;height:18px}.appointment-services-grid{grid-template-columns:repeat(4,1fr);gap:11px;display:grid}.appointment-service-card{color:#172033;text-align:left;background:#fff;border:1px solid #dfe7ee;border-radius:13px;flex-direction:column;align-items:flex-start;min-height:110px;padding:16px;display:flex}.appointment-service-card:hover,.appointment-service-card.selected{background:#eefcfc;border-color:#2ec4c7}.appointment-service-icon{margin-bottom:15px;font-size:22px}.appointment-service-card strong{margin-bottom:4px;font-size:12px}.appointment-service-card small{color:#94a3b8;font-size:10px}.appointment-actions{justify-content:space-between;align-items:center;gap:16px;margin-top:26px;display:flex}.appointment-actions.align-right{justify-content:flex-end}.appointment-primary-button,.appointment-back-button{border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:0 22px;font-weight:700;display:inline-flex}.appointment-primary-button{color:#fff;background:#2ec4c7}.appointment-primary-button:disabled{cursor:not-allowed;opacity:.48}.appointment-back-button{color:#334155;background:#fff;border:1px solid #dfe7ee}.date-time-layout{grid-template-columns:1fr 1fr;gap:28px;display:grid}.calendar-card{border:1px solid #dfe7ee;border-radius:15px;padding:20px}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.calendar-header button{color:#64748b;background:0 0}.calendar-header strong{color:#172033;font-size:14px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{color:#94a3b8;text-align:center;font-size:10px}.calendar-grid button,.calendar-grid>span{min-height:41px}.calendar-grid button{color:#334155;background:0 0;border-radius:8px}.calendar-grid button:hover:not(:disabled),.calendar-grid button.selected{color:#fff;background:#2ec4c7}.calendar-grid button:disabled{cursor:not-allowed;color:#cbd5e1}[data-theme=dark] .figma-patient-layout .appointment-modal .calendar-grid button:disabled,[data-theme=dark] .figma-patient-layout .appointment-modal .calendar-grid button:disabled:hover{cursor:not-allowed;color:var(--portal-muted);background:var(--portal-page);border-color:var(--portal-border);box-shadow:none;opacity:.5;transform:none}.time-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.time-grid button{color:#334155;background:#fff;border:1px solid #dfe7ee;border-radius:10px;min-height:39px}.time-grid button:hover,.time-grid button.selected{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.selected-date-box{color:#159c9f;background:#effcfc;border:1px solid #cee;border-radius:11px;margin-top:13px;padding:14px;font-size:12px}.patient-details-form{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.patient-details-form label{color:#475569;gap:7px;font-size:12px;font-weight:600;display:grid}.patient-details-form .full-width{grid-column:1/-1}.patient-details-form input,.patient-details-form textarea{color:#172033;width:100%;font:inherit;background:#fff;border:1px solid #dfe7ee;border-radius:11px;outline:0;padding:13px 15px}.patient-details-form input:focus,.patient-details-form textarea:focus{border-color:#2ec4c7;box-shadow:0 0 0 4px #2ec4c71a}.patient-details-form textarea{resize:vertical}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-body{background:inherit}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-step-section,[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-step-section :is(.appointment-services-grid,.appointment-doctors-grid,.date-time-layout,.patient-details-form,.booking-review-grid){box-shadow:none;background:0 0!important}.booking-review-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.review-panel{border:1px solid #dfe7ee;border-radius:13px;overflow:hidden}.review-panel h4{color:#64748b;letter-spacing:1px;text-transform:uppercase;background:#f8fafc;border-bottom:1px solid #dfe7ee;margin:0 0 10px;padding:16px;font-size:11px}.review-panel>div{grid-template-columns:1fr auto;gap:15px;padding:7px 16px;display:grid}.review-panel span{color:#94a3b8;font-size:11px}.review-panel strong{color:#172033;text-align:right;font-size:11px}.appointment-email-note{color:#2563eb;background:#eff6ff;border:1px solid #cfe2ff;border-radius:11px;align-items:flex-start;gap:12px;margin-top:18px;padding:15px;font-size:11px;line-height:1.7;display:flex}.appointment-email-note svg{flex-shrink:0;margin-top:3px}.appointment-email-note p{margin:0}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .review-panel{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .review-panel h4{color:var(--portal-accent);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .review-panel span{color:var(--portal-muted)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .review-panel strong{color:var(--portal-primary)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-email-note{color:var(--portal-secondary);background:var(--portal-surface);border-color:color-mix(in srgb, var(--portal-border) 72%, var(--portal-accent))}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-email-note svg{color:var(--portal-accent)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-email-note p{color:var(--portal-secondary)}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-primary-button.primary{color:#fff;background:var(--portal-accent);border-color:var(--portal-accent);cursor:pointer}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-primary-button.primary:hover:not(:disabled){background:#2ec4c7;border-color:#2ec4c7}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-primary-button.primary:active:not(:disabled){background:#159c9f;border-color:#159c9f}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-primary-button.primary:focus-visible{outline:2px solid var(--portal-accent);outline-offset:3px}[data-theme=dark] .figma-patient-layout .appointment-modal .appointment-review-step .appointment-primary-button.primary:disabled{cursor:not-allowed;opacity:.48}@media (width<=760px){.appointment-progress{gap:8px}.progress-item span,.progress-line{display:none}.appointment-services-grid{grid-template-columns:repeat(2,1fr)}.date-time-layout,.booking-review-grid{grid-template-columns:1fr}}@media (width<=560px){.appointment-overlay{padding:0}.appointment-modal{border-radius:0;min-height:100vh;max-height:100vh}.appointment-header,.appointment-body{padding-left:18px;padding-right:18px}.appointment-services-grid,.patient-details-form{grid-template-columns:1fr}.patient-details-form .full-width{grid-column:auto}.time-grid{grid-template-columns:repeat(2,1fr)}.appointment-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:470px;padding:45px 20px;display:flex}.appointment-success-icon{color:#159c9f;background:#f1ffff;border:4px solid #c9f7f5;border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:20px;font-size:27px;display:grid}.appointment-success h3{color:#172033;margin:0 0 8px;font-size:25px;line-height:1.25}.appointment-success-message{color:#718096;margin:0 0 28px;font-size:14px;line-height:1.7}.appointment-success-message strong{color:#64748b;font-weight:700}.success-summary-card{text-align:left;background:#f8fafc;border:1px solid #dfe7ee;border-radius:17px;gap:17px;width:min(100%,425px);margin-bottom:28px;padding:23px;display:grid}.success-summary-row{grid-template-columns:1fr auto;align-items:center;gap:25px;display:grid}.success-summary-row span{color:#94a3b8;font-size:13px}.success-summary-row strong{color:#172033;text-align:right;overflow-wrap:anywhere;max-width:240px;font-size:13px;font-weight:700}.success-close-button{min-width:88px;padding:0 22px}@media (width<=520px){.appointment-success{min-height:430px;padding-left:5px;padding-right:5px}.success-summary-card{padding:19px}.success-summary-row{grid-template-columns:1fr;gap:4px}.success-summary-row strong{text-align:left;max-width:none}}}.appointment-closed-message{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca;border-radius:10px;margin-top:12px;padding:11px 13px;font-size:12px;font-weight:600;line-height:1.5}.appointment-section-copy{color:#64748b;margin:-8px 0 18px;font-size:13px}.appointment-doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.appointment-doctor-card{color:#334155;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:13px;grid-template-columns:48px minmax(0,1fr);align-items:center;column-gap:12px;min-width:0;padding:16px;font-family:inherit;transition:all .2s;display:grid}.appointment-doctor-card>span{color:#159c9f;background:#eafafa;border-radius:50%;grid-row:1/3;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.appointment-doctor-card strong{font-size:14px}.appointment-doctor-card small{color:#64748b;margin-top:4px;font-size:12px}.appointment-doctor-card:hover,.appointment-doctor-card.selected{background:#effcfc;border-color:#2ec4c7;box-shadow:0 8px 22px #2ec4c71f}@media (width<=650px){.appointment-doctors-grid{grid-template-columns:1fr}}.appointment-modal.appointment-modal-success{width:min(100%,650px);max-height:calc(100dvh - 40px);overflow:hidden}.appointment-modal-success .appointment-body{background:#fff;max-height:none;padding:0;overflow:visible}.appointment-modal-success .appointment-header{padding:18px 26px 15px}.appointment-modal-success .appointment-header p{margin-bottom:0}.appointment-modal-success .appointment-close{top:16px;right:23px}.appointment-body .appointment-success{text-align:center;flex-direction:column;align-items:center;width:100%;padding:24px 34px 26px;display:flex;background:0 0!important}.appointment-body .appointment-success-icon{color:#159c9f;background:#f1ffff;border:3px solid #c9f7f5;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:13px;font-size:22px;display:grid}.appointment-body .appointment-success h3{color:#172033;margin:0 0 8px;font-size:23px;line-height:1.3}.appointment-body .appointment-success-message{color:#718096;max-width:475px;margin:0 0 17px;font-size:14px;line-height:1.6}.appointment-body .success-summary-card{text-align:left;background:0 0;border:1px solid #dfe7ee;border-radius:15px;width:min(100%,520px);margin:0 auto 14px;padding:8px 22px;display:grid}.appointment-body .success-summary-row{background:0 0;border-bottom:1px solid #e7edf2;grid-template-columns:minmax(90px,.65fr) minmax(0,1.35fr);align-items:center;gap:22px;width:100%;padding:11px 0;display:grid}.appointment-body .success-summary-row>*,.appointment-body .success-summary-row:before,.appointment-body .success-summary-row:after{background:0 0}.appointment-body .success-summary-row:last-child{border-bottom:0}.appointment-body .success-summary-row span{color:#8491a3;font-size:12px;font-weight:500}.appointment-body .success-summary-row strong{color:#172033;text-align:right;overflow-wrap:anywhere;min-width:0;font-size:13px;font-weight:700;line-height:1.45}.appointment-modal.appointment-modal-success .appointment-success .pending-confirmation-badge{color:#92400e;opacity:1;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:999px;align-items:center;margin-bottom:15px;padding:6px 13px;font-size:11px;font-weight:800;display:inline-flex}.appointment-body .success-close-button{width:auto;min-width:94px;min-height:42px;margin:0 auto;padding:0 23px}[data-theme=dark] .appointment-modal-success .appointment-header h2{color:#fff}[data-theme=dark] .appointment-modal-success .appointment-header p{color:#ffffffdb}[data-theme=dark] .appointment-modal.appointment-modal-success,[data-theme=dark] .appointment-modal-success .appointment-body{background:var(--bg-surface)!important}[data-theme=dark] .appointment-modal-success .appointment-success{background:0 0!important}[data-theme=dark] .appointment-body .appointment-success h3{color:var(--text-primary)}[data-theme=dark] .appointment-body .appointment-success-message{color:var(--text-secondary)}[data-theme=dark] .appointment-body .success-summary-card{border-color:var(--border);color:var(--text-primary);background:0 0!important}[data-theme=dark] .appointment-body .success-summary-row{border-color:var(--border);background:0 0!important}[data-theme=dark] .appointment-body .success-summary-row>*,[data-theme=dark] .appointment-body .success-summary-row:before,[data-theme=dark] .appointment-body .success-summary-row:after{background:0 0!important}[data-theme=dark] .appointment-body .success-summary-row span{color:var(--text-secondary)}[data-theme=dark] .appointment-body .success-summary-row strong{color:var(--text-primary);background:0 0}[data-theme=dark] .appointment-body .appointment-success-icon{border-color:color-mix(in srgb, var(--accent) 42%, transparent);color:var(--accent);background:var(--accent-soft)}[data-theme=dark] .appointment-modal.appointment-modal-success .appointment-success .pending-confirmation-badge{color:#fbbf24;background-color:#f59e0b2e;border:1px solid #f59e0b8c}@media (width<=520px){.appointment-modal.appointment-modal-success{width:100%;max-height:calc(100dvh - 20px)}.appointment-modal-success .appointment-header{padding:16px 20px 14px}.appointment-modal-success .appointment-close{top:14px;right:18px}.appointment-body .appointment-success{padding:24px 18px 26px}.appointment-body .success-summary-card{padding:7px 17px}.appointment-body .success-summary-row{grid-template-columns:1fr;gap:3px;padding:10px 0}.appointment-body .success-summary-row strong{text-align:left}}@media (height<=650px){.appointment-modal.appointment-modal-success{overflow-y:auto}.appointment-body .appointment-success{padding-top:18px;padding-bottom:20px}}.home-page{--public-page:#f8fafc;--public-surface:#fff;--public-elevated:#f1f5f9;--public-text:#0f172a;--public-secondary:#64748b;--public-muted:#94a3b8;--public-border:#e2e8f0;--public-accent:#20b8bb;--public-accent-strong:#128f92;--public-accent-soft:#e8fbfb;--public-navy:#102238;color:var(--public-text);background:var(--public-page);overflow-x:clip}[data-theme=dark] .home-page{--public-page:#0b1220;--public-surface:#111827;--public-elevated:#172033;--public-text:#f8fafc;--public-secondary:#cbd5e1;--public-muted:#94a3b8;--public-border:#334155;--public-accent:#52d5d7;--public-accent-strong:#2ec4c7;--public-accent-soft:#12353b;--public-navy:#07101d}.home-page .container{width:min(1180px,100% - 48px);margin-inline:auto}.home-page :is(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--public-accent) 34%,transparent);outline-offset:3px}.home-page :is(button,a){transition:color .2s,background-color .2s,border-color .2s,transform .2s,box-shadow .2s}.home-page :is(.services-section,.about-section,.patient-management-section,.location-section,.reviews-section){scroll-margin-top:90px}.home-page .topbar{color:#d8f5f5;background:#0b2b3b;border:0}.home-page .topbar-content{min-height:38px;font-size:12px}.home-page .navbar{background:color-mix(in srgb,var(--public-surface) 94%,transparent);border-color:var(--public-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);top:0;box-shadow:0 10px 30px #0f172a0f}.home-page .navbar-content{min-height:78px;position:relative}.home-page .clinic-brand{min-width:260px;color:var(--public-text);text-decoration:none}.home-page .tooth-logo{width:46px;height:46px;color:var(--public-accent-strong);background:var(--public-accent-soft);border:1px solid color-mix(in srgb,var(--public-accent) 30%,var(--public-border));font-size:20px}.home-page .clinic-brand h2{color:var(--public-text);letter-spacing:-.2px;font-size:15px}.home-page .clinic-brand small{color:var(--public-accent-strong);text-transform:uppercase;letter-spacing:.6px;font-size:10px}.home-page .nav-links{gap:7px}.home-page .nav-links>a{color:var(--public-secondary);border-radius:9px;padding:10px 12px;font-size:13px;font-weight:650}.home-page .nav-links>a:hover{color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page .nav-actions{gap:9px}.home-page .nav-actions>button:not(.theme-toggle):not(.nav-menu-toggle){border-radius:10px;min-height:40px;padding-inline:17px}.home-page .nav-actions .btn-secondary{color:var(--public-text);background:var(--public-surface);border-color:var(--public-border)}.home-page .nav-actions .btn-secondary:hover{color:var(--public-accent-strong);background:var(--public-accent-soft);border-color:var(--public-accent)}.home-page .nav-actions .btn-primary{color:#fff;background:var(--public-accent-strong);border:1px solid var(--public-accent-strong);box-shadow:0 8px 20px #128f922e}.home-page .nav-actions .btn-primary:hover{background:#0f7b7e;transform:translateY(-1px)}.home-page .nav-menu-toggle,.home-page .nav-mobile-auth{display:none}.home-page .hero{background:radial-gradient(circle at 83% 19%,color-mix(in srgb,var(--public-accent) 18%,transparent),transparent 34%),linear-gradient(145deg,var(--public-page),color-mix(in srgb,var(--public-accent-soft) 60%,var(--public-page)));min-height:690px;padding:92px 0 108px;overflow-x:clip}.home-page .hero:before{background:color-mix(in srgb,var(--public-accent) 8%,transparent);width:500px;height:500px;top:-230px;right:-210px}.home-page .hero-container{grid-template-columns:minmax(0,1.25fr) minmax(390px,.75fr);gap:56px}.home-page .hero-left{min-width:0}.home-page .hero-badge{color:var(--public-accent-strong);background:var(--public-accent-soft);border-color:color-mix(in srgb,var(--public-accent) 35%,var(--public-border));letter-spacing:.2px;margin-bottom:22px;font-size:12px}.home-page .hero-left h1{max-width:100%;color:var(--public-text);letter-spacing:-1.7px;overflow-wrap:normal;margin:0 0 24px;font-size:clamp(30px,2.25vw,34px);line-height:1.08}.home-page .hero-left h1 .hero-title-line{max-width:100%;color:var(--public-text);white-space:normal;display:block}.home-page .hero-left h1 .hero-title-line+.hero-title-line{color:var(--public-accent-strong);margin-top:8px}.home-page .hero-description{color:var(--public-secondary);font-size:17px;line-height:1.75}.home-page .hero-buttons button{border-radius:11px;min-height:52px;font-size:14px}.home-page .hero-primary-btn{background:var(--public-accent-strong);box-shadow:0 13px 28px #128f9238}.home-page .hero-primary-btn:hover{background:#0f7b7e;transform:translateY(-2px)}.home-page .hero-trust-list{gap:10px 20px}.home-page .hero-trust-list svg{color:var(--public-accent-strong)}.home-page .portal-card{color:var(--public-text);background:var(--public-surface);border-color:var(--public-border);-webkit-backdrop-filter:none;backdrop-filter:none;padding:26px;box-shadow:0 34px 80px #0f172a2b}.home-page .portal-header p,.home-page .portal-notification p{color:var(--public-muted)}.home-page .portal-header h3,.home-page .quick-action-title h4{color:var(--public-text)}.home-page .portal-secure{color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page .appointment-card{background:linear-gradient(135deg,var(--public-accent-strong),#176f79);box-shadow:0 16px 35px #128f923d}.home-page .quick-action-grid button{color:var(--public-secondary);background:var(--public-elevated);border-color:var(--public-border)}.home-page .quick-action-grid button:hover{color:var(--public-text);background:var(--public-accent-soft);border-color:var(--public-accent)}.home-page .quick-action-grid button svg{color:var(--public-accent-strong)}.home-page .portal-notification{background:color-mix(in srgb,#f59e0b 11%,var(--public-surface));border-color:color-mix(in srgb,#f59e0b 32%,var(--public-border))}.home-page .portal-notification strong{color:var(--public-text)}.home-page .hero-floating-card{box-sizing:border-box;width:100%;color:var(--public-text);background:var(--public-surface);border-color:var(--public-border);box-shadow:none;margin-top:14px;position:static}.home-page .hero-floating-card strong{color:var(--public-text)}.home-page .hero-floating-card span{color:var(--public-muted)}@media (width>=1200px){.home-page .hero-left h1 .hero-title-line{white-space:nowrap}}.home-page :is(.services-section,.patient-management-section,.reviews-section){background:var(--public-page);padding:96px 0}.home-page :is(.about-section,.location-section){background:color-mix(in srgb,var(--public-elevated) 62%,var(--public-page));padding:96px 0}.home-page :is(.services-header,.reviews-header){margin-bottom:38px}.home-page :is(.services-header,.location-heading,.reviews-header,.patient-management-heading) h2,.home-page .about-information h2{color:var(--public-text);letter-spacing:-1px}.home-page :is(.services-header,.location-heading,.reviews-header,.patient-management-heading) p,.home-page .about-information>p{color:var(--public-secondary);line-height:1.75}.home-page :is(.section-eyebrow,.about-eyebrow,.reviews-eyebrow,.location-heading>span,.patient-management-heading>span){color:var(--public-accent-strong);letter-spacing:1.1px;text-transform:uppercase;font-weight:800}.home-page .services-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.home-page .service-card{min-height:0;color:var(--public-text);background:var(--public-surface);border-color:var(--public-border);border-radius:16px;flex-direction:column;grid-column:span 2;padding:20px;display:flex;box-shadow:0 8px 26px #0f172a0b}.home-page .service-card:nth-child(4){grid-column:2/span 2}.home-page .service-card:nth-child(5){grid-column:4/span 2}.home-page .service-card:hover{border-color:color-mix(in srgb,var(--public-accent) 55%,var(--public-border));transform:translateY(-4px);box-shadow:0 18px 40px #0f172a17}.home-page .service-card-main{align-items:center;gap:14px;margin-bottom:18px;display:flex}.home-page .service-icon{width:auto;height:auto;color:inherit;background:0 0;border:0;border-radius:0;flex:none;margin:0;font-size:32px;line-height:1;display:block}.home-page .service-label{color:var(--public-muted);letter-spacing:.75px;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:800;display:block}.home-page .service-card h3{color:var(--public-text);margin:0;font-size:17px;line-height:1.3}.home-page .service-card-footer{border-top:1px solid var(--public-border);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:13px;display:flex}.home-page .service-duration{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-weight:700;display:inline-flex}.home-page .service-duration svg{color:#128f92}.home-page .service-card:hover .service-duration{color:#0f4f53;background:#e8fbfb;border-color:#8cdadd}.home-page .service-card:hover .service-duration svg{color:#0f7b7e}[data-theme=dark] .home-page .service-duration{color:#e6ffff;background:#12353b;border-color:#285f65}[data-theme=dark] .home-page .service-duration svg{color:#72e3e5}[data-theme=dark] .home-page .service-card:hover .service-duration{color:azure;background:#17464d;border-color:#3b858b}[data-theme=dark] .home-page .service-card:hover .service-duration svg{color:#8ff3f4}.home-page .service-card-footer button{color:var(--public-accent-strong);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-weight:750;display:inline-flex}.home-page .service-card-footer button:hover{background:var(--public-accent-soft);border-color:var(--public-accent)}.home-page .services-book-btn{background:var(--public-accent-strong);box-shadow:none}.home-page .about-wrapper{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:72px}.home-page .about-visual{background:var(--public-surface);border:1px solid var(--public-border);border-radius:24px;padding:14px;box-shadow:0 24px 55px #0f172a1c}.home-page .about-clinic-image{border-radius:16px;height:510px}.home-page .about-features-grid{gap:12px}.home-page .about-feature-card{border:1px solid var(--public-border);background:var(--public-surface);border-radius:13px;padding:16px}.home-page .about-feature-icon{color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page .about-feature-card h3{color:var(--public-text)}.home-page .about-feature-card p{color:var(--public-secondary)}.home-page .patient-management-container{border:1px solid var(--public-border);background:var(--public-surface);border-radius:28px;padding:54px;box-shadow:0 22px 60px #0f172a12}.home-page .patient-management-grid{gap:14px}.home-page .patient-management-card{border:1px solid var(--public-border);background:var(--public-elevated);box-shadow:none}.home-page .patient-management-card h3{color:var(--public-text)}.home-page .patient-management-card p{color:var(--public-secondary)}.home-page .patient-management-icon{color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page .patient-management-secondary{color:var(--public-text);background:var(--public-surface);border-color:var(--public-border)}.home-page .patient-management-choices{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.home-page .patient-management-choice{border:1px solid var(--public-border);background:var(--public-elevated);text-align:left;border-radius:14px;flex-direction:column;align-items:flex-start;padding:16px;display:flex}.home-page .patient-management-choice :is(button,a){border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;margin-bottom:12px;font-weight:800;text-decoration:none;display:flex}.home-page .patient-management-choice strong{color:var(--public-text);font-size:13px}.home-page .patient-management-choice span{color:var(--public-secondary);margin-top:4px;font-size:12px;line-height:1.5}.home-page .patient-management-choice small{color:var(--public-muted);margin-top:7px;font-size:10px}.home-page .patient-management-choice .whatsapp-booking{color:#fff;background:#168b50;border:1px solid #168b50}.home-page .patient-management-choice .whatsapp-booking:hover{background:#107540;transform:translateY(-1px)}.home-page .patient-management-choice .whatsapp-booking.disabled{color:var(--public-muted);background:var(--public-surface);border-color:var(--public-border);cursor:not-allowed}.home-page .location-layout{grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);gap:22px}.home-page .location-info-grid{gap:12px}.home-page .location-card{color:var(--public-text);background:var(--public-surface);border-color:var(--public-border);box-shadow:none;padding:20px}.home-page .location-icon{color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page .location-card h3,.home-page .location-map-fallback h3{color:var(--public-text)}.home-page .location-card p,.home-page .contact-item,.home-page .hours-row span{color:var(--public-secondary)}.home-page .hours-row{border-color:var(--public-border)}.home-page .hours-row strong{color:var(--public-text)}.home-page .location-map-card{background:var(--public-surface);border-color:var(--public-border);min-height:520px;box-shadow:0 18px 45px #0f172a17}.home-page .location-map-fallback{color:var(--public-text);background:linear-gradient(145deg,var(--public-surface),var(--public-elevated))}.home-page .location-map-fallback p{color:var(--public-secondary)}.home-page .location-map-fallback a{background:var(--public-accent-strong)}.home-page .google-rating-card,.home-page .reviews-api-card,.home-page .review-card{color:var(--public-text);background:var(--public-surface);border-color:var(--public-border);box-shadow:0 10px 28px #0f172a0e}.home-page .review-card:hover{border-color:color-mix(in srgb,var(--public-accent) 45%,var(--public-border));transform:translateY(-3px);box-shadow:0 18px 38px #0f172a17}.home-page .review-user h3,.home-page .reviews-api-card h3{color:var(--public-text)}.home-page :is(.review-user span,.review-text,.reviews-api-card p,.google-rating-card span){color:var(--public-secondary)}.home-page .footer{background:var(--public-navy);border-top:1px solid color-mix(in srgb,var(--public-accent) 20%,transparent)}.home-page .footer-logo{background:var(--public-accent-soft);color:var(--public-accent)}.home-page .footer-column :is(a,button),.home-page .footer-description,.home-page .footer-contact-item,.home-page .footer-bottom{color:#aebdca}.home-page .footer-column :is(a,button):hover{color:var(--public-accent)}.home-page :is(.auth-modal-overlay,.register-modal-overlay,.forgot-modal-overlay){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020617c2;padding:22px}.home-page :is(.auth-modal-card,.register-modal-card,.forgot-modal-card){color:var(--public-text);background:var(--public-surface);border:1px solid var(--public-border);box-shadow:0 32px 90px #00000059}.home-page :is(.auth-modal-heading h2,.register-modal-heading h2,.forgot-modal-heading h2){color:var(--public-text);letter-spacing:-.5px}.home-page :is(.auth-modal-heading p,.register-modal-heading p,.forgot-modal-heading p,.auth-switch-text,.register-switch-text){color:var(--public-secondary)}.home-page :is(.auth-modal-icon,.register-modal-icon,.forgot-modal-icon){color:var(--public-accent-strong);background:var(--public-accent-soft)}.home-page :is(.auth-modal-close,.register-modal-close,.forgot-modal-close){color:var(--public-secondary);background:var(--public-elevated);border-color:var(--public-border)}.home-page :is(.auth-field label,.register-field label,.forgot-field label){color:var(--public-text)}.home-page :is(.auth-input-wrapper,.register-input-wrapper,.forgot-input-wrapper){color:var(--public-muted);background:var(--public-elevated);border-color:var(--public-border)}.home-page :is(.auth-input-wrapper,.register-input-wrapper,.forgot-input-wrapper):focus-within{border-color:var(--public-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--public-accent) 18%,transparent)}.home-page :is(.auth-input-wrapper,.register-input-wrapper,.forgot-input-wrapper) :is(input,select,textarea){color:var(--public-text);background:0 0}.home-page :is(.auth-input-wrapper,.register-input-wrapper,.forgot-input-wrapper) :is(input,textarea)::placeholder{color:var(--public-muted)}.home-page :is(.auth-input-wrapper,.register-input-wrapper,.forgot-input-wrapper) select option{color:var(--public-text);background:var(--public-surface)}.home-page :is(.password-toggle,.register-password-toggle,.forgot-password-button,.auth-switch-text button,.register-switch-text button){color:var(--public-accent-strong)}.home-page :is(.auth-submit-button,.register-submit-button,.forgot-submit-button){background:var(--public-accent-strong);box-shadow:none}.home-page :is(.auth-security-note,.register-consent){color:var(--public-secondary);background:var(--public-elevated);border-color:var(--public-border)}@media (prefers-reduced-motion:reduce){.home-page *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=1050px){.home-page .nav-links{gap:2px}.home-page .nav-links>a{padding-inline:8px}.home-page .clinic-brand{min-width:220px}.home-page .hero-container{grid-template-columns:1fr;gap:58px}.home-page .hero-left{max-width:780px}.home-page .hero-right{justify-content:flex-start}.home-page .portal-card{width:min(100%,620px)}.home-page .about-wrapper,.home-page .location-layout{grid-template-columns:1fr}.home-page .about-visual{width:min(100%,720px)}.home-page .location-map-card{min-height:430px}}@media (width<=850px){.home-page .navbar-content{min-height:70px}.home-page .nav-links{z-index:5;background:var(--public-surface);border:1px solid var(--public-border);border-radius:0 0 16px 16px;flex-direction:column;align-items:stretch;padding:12px;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;box-shadow:0 20px 35px #0f172a21}.home-page .nav-links.open{display:flex}.home-page .nav-links>a{padding:12px 14px}.home-page .nav-menu-toggle{border:1px solid var(--public-border);width:40px;height:40px;color:var(--public-text);background:var(--public-elevated);border-radius:10px;place-items:center;padding:0;display:grid}.home-page .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .service-card,.home-page .service-card:nth-child(4),.home-page .service-card:nth-child(5){grid-column:auto}.home-page .patient-management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.home-page .container{width:min(100% - 28px,1180px)}.home-page .topbar-content span:not(:first-child){display:none}.home-page .clinic-brand{min-width:0}.home-page .clinic-brand h2{max-width:175px;font-size:13px}.home-page .clinic-brand small{display:none}.home-page .tooth-logo{width:40px;height:40px}.home-page .nav-actions>.btn-primary,.home-page .nav-actions>.btn-secondary{display:none}.home-page .nav-mobile-auth{border-top:1px solid var(--public-border);grid-template-columns:1fr 1fr;gap:8px;padding-top:8px;display:grid}.home-page .nav-mobile-auth button{border:1px solid var(--public-border);min-height:42px;color:var(--public-text);background:var(--public-elevated);border-radius:9px;font-weight:750}.home-page .nav-mobile-auth button:last-child{color:#fff;background:var(--public-accent-strong);border-color:var(--public-accent-strong)}.home-page .hero{min-height:auto;padding:64px 0 74px}.home-page .hero-left h1{letter-spacing:-1.1px;font-size:clamp(27px,8vw,36px);line-height:1.12}.home-page .hero-left h1 .hero-title-line{white-space:normal}.home-page .hero-left h1 .hero-title-line+.hero-title-line{margin-top:6px}.home-page .hero-description{font-size:15px}.home-page .hero-buttons{flex-direction:column}.home-page .hero-buttons button{width:100%}.home-page .hero-trust-list{flex-direction:column;align-items:flex-start}.home-page .portal-card{border-radius:19px;padding:18px}.home-page .quick-action-grid{grid-template-columns:1fr 1fr}.home-page .quick-action-grid button{min-height:86px}.home-page .hero-floating-card{display:flex}.home-page :is(.services-section,.about-section,.patient-management-section,.location-section,.reviews-section){padding:70px 0}.home-page :is(.services-header,.reviews-header){flex-direction:column;align-items:flex-start}.home-page .services-book-btn{justify-content:center;width:100%}.home-page .services-grid,.home-page .patient-management-grid,.home-page .about-features-grid,.home-page .patient-management-choices{grid-template-columns:1fr}.home-page .service-card{min-height:0}.home-page .about-wrapper{gap:38px}.home-page .about-visual{padding:8px}.home-page .about-clinic-image{height:300px}.home-page .patient-management-container{border-radius:20px;padding:28px 18px}.home-page .patient-management-actions{flex-direction:column;align-items:stretch}.home-page .patient-management-actions button{width:100%}.home-page .location-map-card{min-height:330px}.home-page .reviews-grid{grid-template-columns:1fr}.home-page :is(.auth-modal-overlay,.register-modal-overlay,.forgot-modal-overlay){align-items:end;padding:10px}.home-page :is(.auth-modal-card,.register-modal-card,.forgot-modal-card){border-radius:18px;max-height:calc(100dvh - 20px);overflow:auto}}.home-page .hero{color:#f8fafc;background:radial-gradient(circle at 77% 44%,#2ec4c733,#0000 27%),radial-gradient(circle at 18% 0,#3f709233,#0000 34%),linear-gradient(135deg,#10283a 0%,#0b1b2c 54%,#07131f 100%);min-height:720px;padding:82px 0 92px}[data-theme=dark] .home-page .hero{background:radial-gradient(circle at 77% 44%,#2ec4c738,#0000 28%),radial-gradient(circle at 18% 0,#2a56742e,#0000 34%),linear-gradient(135deg,#0b1c2c,#07111e 58%,#040b14)}.home-page .hero-container{grid-template-columns:minmax(0,1fr) minmax(460px,.9fr);align-items:center;gap:62px}.home-page .hero-badge{color:#9bf1f2;background:#12353bb8;border-color:#52d5d757}.home-page .hero-left h1{letter-spacing:-2.4px;text-transform:none;max-width:690px;margin-bottom:26px;font-size:clamp(43px,3.55vw,57px);line-height:1.02}.home-page .hero-left h1 .hero-title-line{white-space:nowrap;max-width:100%;display:block}.home-page .hero-left h1 .hero-title-white{color:#fff}.home-page .hero-left h1 .hero-title-accent{color:#52d5d7}.home-page .hero-description{color:#cbd5e1}.home-page .hero-secondary-btn{color:#f8fafc;background:#112033b8;border-color:#456074}.home-page .hero-secondary-btn:hover{color:#8ff3f4;background:#12353b;border-color:#52d5d7}.home-page .hero-trust-list div{color:#cbd5e1}.home-page .hero-right{min-width:0;display:block}.home-page .tooth-hero-visual{isolation:isolate;perspective:1000px;width:100%;height:590px;position:relative;overflow:visible}.home-page .tooth-hero-loading{background:radial-gradient(circle,#52d5d72b,#0000 62%);border-radius:50%;width:100%;height:590px}.home-page .tooth-canvas{z-index:3;filter:drop-shadow(0 26px 30px #0000004d);width:100%;height:100%;display:block;position:relative}.home-page .tooth-model-status{z-index:4;color:#cbd5e1;background:#07131fb8;border:1px solid #52d5d740;border-radius:999px;padding:8px 11px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home-page .tooth-model-fallback{z-index:4;color:#cbd5e1;text-align:center;place-content:center;gap:8px;display:grid;position:absolute;inset:0}.home-page .tooth-model-fallback span{filter:grayscale(.25);font-size:92px}.home-page .tooth-model-fallback small{font-size:10px}.home-page .tooth-glow{aspect-ratio:1;z-index:0;filter:blur(12px);background:radial-gradient(circle,#52d5d73d,#2ec4c70f 45%,#0000 70%);border-radius:50%;width:66%;animation:4s ease-in-out infinite tooth-glow-pulse;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)}.home-page .tooth-rings{z-index:2;width:70%;height:100px;transform-style:preserve-3d;position:absolute;bottom:42px;left:50%;transform:translate(-50%)}.home-page .tooth-rings i{border:2px solid #52d5d785;border-radius:50%;animation:8s linear infinite tooth-ring-orbit;position:absolute;inset:0;transform:rotateX(70deg);box-shadow:0 0 18px #52d5d752,inset 0 0 18px #52d5d724}.home-page .tooth-rings i:nth-child(2){border-style:dashed;border-color:#84eff161;animation-duration:11s;animation-direction:reverse;inset:17px 10%}.home-page .tooth-rings i:nth-child(3){border-width:1px;animation-duration:6s;inset:34px 21%}.home-page .tooth-callout{z-index:5;color:#f8fafc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a1c2bc7;border:1px solid #52d5d74d;border-radius:11px;min-width:145px;padding:10px 12px;animation:4.5s ease-in-out infinite tooth-callout-float;position:absolute;box-shadow:0 12px 30px #0000002e}.home-page .tooth-callout span,.home-page .tooth-callout strong{display:block}.home-page .tooth-callout span{color:#52d5d7;letter-spacing:.7px;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:850}.home-page .tooth-callout strong{font-size:10px;line-height:1.4}.home-page .tooth-callout-2{animation-delay:-1.2s;top:155px;right:-12px}.home-page .tooth-callout-3{animation-delay:-2.1s;bottom:135px;left:-20px}.home-page .tooth-callout-4{animation-delay:-3s;bottom:105px;right:-5px}@keyframes tooth-glow-pulse{50%{opacity:.68;transform:translate(-50%,-50%)scale(1.08)}}@keyframes tooth-ring-orbit{to{transform:rotateX(70deg)rotate(360deg)}}@keyframes tooth-callout-float{50%{transform:translateY(-7px)}}@media (width<=1100px){.home-page .hero-container{grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);gap:35px}.home-page .hero-left h1{letter-spacing:-1.8px;font-size:clamp(35px,3.8vw,44px)}.home-page .tooth-hero-visual{height:510px}.home-page .tooth-callout{min-width:125px}.home-page .tooth-callout-1,.home-page .tooth-callout-3{left:0}.home-page .tooth-callout-2,.home-page .tooth-callout-4{right:0}}@media (width<=850px){.home-page .hero{padding:70px 0 78px}.home-page .hero-container{grid-template-columns:1fr;gap:35px}.home-page .hero-left{max-width:700px}.home-page .hero-left h1{font-size:clamp(40px,7vw,53px)}.home-page .tooth-hero-visual{width:min(100%,620px);height:520px;margin-inline:auto}}@media (width<=620px){.home-page .hero{padding:58px 0 62px}.home-page .hero-left h1{letter-spacing:-1.4px;font-size:clamp(32px,10.2vw,44px);line-height:1.06}.home-page .hero-left h1 .hero-title-line{white-space:normal}.home-page .hero-left h1 .hero-title-line+.hero-title-line{margin-top:6px}.home-page .tooth-hero-visual{height:420px}.home-page .tooth-rings{bottom:25px}.home-page .tooth-callout{min-width:0;max-width:128px;padding:8px 9px}.home-page .tooth-callout strong{font-size:9px}.home-page .tooth-callout-1{top:55px}.home-page .tooth-callout-2{top:105px}.home-page .tooth-callout-3{bottom:92px}.home-page .tooth-callout-4{bottom:62px}}@media (prefers-reduced-motion:reduce){.home-page :is(.tooth-glow,.tooth-rings i,.tooth-callout){animation:none!important}}.home-page .hero{min-height:820px;padding:96px 0 104px}.home-page .hero .hero-container{grid-template-columns:minmax(0,47fr) minmax(0,53fr);gap:92px;width:min(100% - 140px,1560px)}.home-page .hero-left{max-width:720px}.home-page .hero-badge{margin-bottom:30px}.home-page .hero-left h1{letter-spacing:-2.25px;max-width:720px;margin-bottom:34px;font-size:clamp(50px,3.5vw,58px);font-weight:780;line-height:1.09}.home-page .hero-left h1 .hero-title-line+.hero-title-line{margin-top:7px}.home-page .hero-description{max-width:610px;margin-bottom:42px;font-size:17px;line-height:1.8}.home-page .hero-buttons{gap:20px;margin-bottom:40px}.home-page .hero-buttons button{min-height:55px;padding-inline:25px}.home-page .hero-trust-list{flex-wrap:nowrap;gap:30px}.home-page .hero-trust-list div{min-width:max-content}.home-page .hero-right{place-items:center;display:grid}.home-page .tooth-hero-visual,.home-page .tooth-hero-loading{height:660px}.home-page .tooth-glow{opacity:.82;width:72%;top:49%}.home-page .tooth-rings{pointer-events:none;width:100%;height:100%;transform-style:preserve-3d;inset:0 0 auto;transform:none}.home-page .tooth-rings-back{z-index:2}.home-page .tooth-rings-front{z-index:4}.home-page .tooth-rings i{transform:translateX(-50%) rotateX(var(--ring-tilt,68deg)) rotateZ(var(--ring-offset,0deg));transform-origin:50%;border-width:1px;animation-name:tooth-ring-orbit-spacious;inset:auto auto auto 50%}.home-page .tooth-rings-back i:first-child{--ring-tilt:62deg;--ring-offset:-8deg;opacity:.34;width:78%;height:170px;animation-duration:13s;top:19%}.home-page .tooth-rings-back i:nth-child(2){--ring-tilt:72deg;--ring-offset:7deg;opacity:.46;width:88%;height:190px;animation-duration:17s;top:40%}.home-page .tooth-rings-back i:nth-child(3){--ring-tilt:66deg;--ring-offset:-5deg;opacity:.35;width:70%;height:150px;animation-duration:10s;top:62%}.home-page .tooth-rings-back i:nth-child(4){--ring-tilt:76deg;--ring-offset:4deg;opacity:.5;width:58%;height:118px;animation-duration:19s;animation-direction:reverse;top:72%}.home-page .tooth-rings-front i{clip-path:inset(50% 0 0)}.home-page .tooth-rings-front i:first-child{--ring-tilt:70deg;--ring-offset:-6deg;opacity:.48;width:80%;height:175px;animation-duration:15s;top:34%}.home-page .tooth-rings-front i:nth-child(2){--ring-tilt:64deg;--ring-offset:8deg;opacity:.58;width:64%;height:135px;animation-duration:11s;animation-direction:reverse;top:58%}.home-page .tooth-rings-front i:nth-child(3){--ring-tilt:78deg;--ring-offset:-3deg;opacity:.66;width:52%;height:102px;animation-duration:14s;top:70%}@keyframes tooth-ring-orbit-spacious{to{transform:translateX(-50%) rotateX(var(--ring-tilt,68deg)) rotateZ(calc(360deg + var(--ring-offset,0deg)))}}.home-page .tooth-particles{z-index:2;pointer-events:none;position:absolute;inset:7% 10%}.home-page .tooth-particles i{opacity:.5;background:#8ff3f4;border-radius:50%;width:3px;height:3px;animation:5s ease-in-out infinite tooth-particle-drift;position:absolute;box-shadow:0 0 9px #52d5d7}.home-page .tooth-particles i:first-child{top:18%;left:12%}.home-page .tooth-particles i:nth-child(2){animation-delay:-1s;top:14%;left:78%}.home-page .tooth-particles i:nth-child(3){animation-delay:-2s;top:42%;left:88%}.home-page .tooth-particles i:nth-child(4){animation-delay:-3s;top:48%;left:9%}.home-page .tooth-particles i:nth-child(5){animation-delay:-4s;top:72%;left:20%}.home-page .tooth-particles i:nth-child(6){animation-delay:-.6s;top:78%;left:74%}.home-page .tooth-particles i:nth-child(7){animation-delay:-1.6s;top:8%;left:55%}.home-page .tooth-particles i:nth-child(8){animation-delay:-2.6s;top:86%;left:42%}.home-page .tooth-particles i:nth-child(9){animation-delay:-3.6s;top:64%;left:94%}.home-page .tooth-particles i:nth-child(10){animation-delay:-4.6s;top:30%;left:4%}@keyframes tooth-particle-drift{50%{opacity:.9;transform:translateY(-9px)scale(1.5)}}.home-page .tooth-callout{align-items:flex-start;gap:11px;min-width:158px;padding:12px 14px;display:flex}.home-page .tooth-callout>svg{color:#52d5d7;filter:drop-shadow(0 0 7px #52d5d747);flex:none;width:24px;height:24px;margin-top:2px}.home-page .tooth-callout>div{min-width:0}.home-page .tooth-callout:after{content:"";border-top:1px dotted #52d5d780;width:34px;position:absolute;top:50%}.home-page .tooth-callout-1{top:75px;left:-18px}.home-page .tooth-callout-1:after,.home-page .tooth-callout-3:after{left:100%}.home-page .tooth-callout-2{top:120px;right:-22px}.home-page .tooth-callout-2:after,.home-page .tooth-callout-4:after{right:100%}.home-page .tooth-callout-3{bottom:125px;left:-28px}.home-page .tooth-callout-4{bottom:95px;right:-15px}.home-page .tooth-base-glow{z-index:5;filter:blur(7px);pointer-events:none;background:radial-gradient(#b2ffffcc 0,#52d5d76b 13%,#2ec4c726 43%,#0000 72%);border-radius:50%;width:42%;height:58px;animation:3.8s ease-in-out infinite tooth-base-pulse;position:absolute;bottom:54px;left:50%;transform:translate(-50%)}.home-page .tooth-base-glow i{background:#d8ffff;border-radius:50%;width:15px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 16px 7px #52d5d7b3}@keyframes tooth-base-pulse{50%{opacity:.68;transform:translate(-50%)scaleX(1.08)}}@media (width<=1250px){.home-page .hero{min-height:760px;padding:82px 0 90px}.home-page .hero .hero-container{grid-template-columns:minmax(0,48fr) minmax(0,52fr);gap:55px;width:min(100% - 80px,1180px)}.home-page .hero-left h1{font-size:clamp(40px,4vw,49px)}.home-page .hero-trust-list{flex-wrap:wrap;gap:15px 25px}.home-page .tooth-hero-visual,.home-page .tooth-hero-loading{height:570px}.home-page .tooth-callout-1,.home-page .tooth-callout-3{left:0}.home-page .tooth-callout-2,.home-page .tooth-callout-4{right:0}}@media (width<=850px){.home-page .hero .hero-container{grid-template-columns:1fr;gap:48px;width:min(100% - 48px,760px)}.home-page .hero-left{max-width:720px}.home-page .hero-left h1{font-size:clamp(40px,7vw,53px)}.home-page .tooth-hero-visual,.home-page .tooth-hero-loading{height:540px}}@media (width<=620px){.home-page .hero{min-height:auto;padding:62px 0 66px}.home-page .hero .hero-container{gap:38px;width:min(100% - 28px,560px)}.home-page .hero-badge{margin-bottom:25px}.home-page .hero-left h1{margin-bottom:28px;font-size:clamp(32px,10.2vw,44px)}.home-page .hero-description,.home-page .hero-buttons{margin-bottom:34px}.home-page .hero-trust-list{flex-direction:column;gap:13px}.home-page .tooth-hero-visual,.home-page .tooth-hero-loading{height:440px}.home-page .tooth-callout{min-width:0;max-width:125px}.home-page .tooth-callout:after{display:none}.home-page .tooth-callout-1{top:38px}.home-page .tooth-callout-2{top:82px}.home-page .tooth-callout-3{bottom:70px}.home-page .tooth-callout-4{bottom:38px}}@media (prefers-reduced-motion:reduce){.home-page :is(.tooth-particles i,.tooth-base-glow){animation:none!important}}[data-theme=light] .home-page .hero{color:#0f172a;background:radial-gradient(circle at 77% 44%,#20b8bb24,#0000 29%),radial-gradient(circle at 18% 0,#bbe6e84d,#0000 35%),linear-gradient(135deg,#f8fafc 0%,#f4fafb 58%,#eef8f8 100%)}[data-theme=light] .home-page .hero-badge{color:#0f7f82;background:#ffffffd6;border-color:#159c9f6b;box-shadow:0 7px 20px #0f767814}[data-theme=light] .home-page .hero-left h1 .hero-title-white{color:#10283a}[data-theme=light] .home-page .hero-left h1 .hero-title-accent{color:#159c9f}[data-theme=light] .home-page .hero-description{color:#475569}[data-theme=light] .home-page .hero-secondary-btn{color:#17243a;background:#fff;border-color:#b7c7d1;box-shadow:0 8px 20px #0f172a0f}[data-theme=light] .home-page .hero-secondary-btn:hover{color:#0f7f82;background:#effafa;border-color:#159c9f}[data-theme=light] .home-page .hero-trust-list div{color:#475569}[data-theme=light] .home-page .hero-trust-list svg{color:#159c9f}[data-theme=light] .home-page .tooth-canvas{filter:drop-shadow(0 25px 25px #1f475233)}[data-theme=light] .home-page .tooth-glow{opacity:.58;filter:blur(15px);background:radial-gradient(circle,#24b1b433,#53cacc12 45%,#0000 70%)}[data-theme=light] .home-page .tooth-rings i{border-color:#0f85887a;box-shadow:0 0 11px #159c9f24,inset 0 0 9px #159c9f14}[data-theme=light] .home-page .tooth-rings i:nth-child(2){border-color:#0f85886b}[data-theme=light] .home-page .tooth-particles i{opacity:.42;background:#168f92;box-shadow:0 0 7px #159c9f73}[data-theme=light] .home-page .tooth-callout{color:#17243a;background:#ffffffe6;border-color:#159c9f4d;box-shadow:0 12px 28px #1f47521f}[data-theme=light] .home-page .tooth-callout span{color:#0f8588}[data-theme=light] .home-page .tooth-callout>svg{color:#159c9f;filter:drop-shadow(0 0 5px #159c9f33)}[data-theme=light] .home-page .tooth-callout:after{border-color:#0f85888c}[data-theme=light] .home-page .tooth-base-glow{filter:blur(9px);background:radial-gradient(#d2fbfbdb 0,#45c5c74d 15%,#159c9f1a 44%,#0000 72%)}[data-theme=light] .home-page .tooth-base-glow i{background:#d9ffff;box-shadow:0 0 13px 5px #159c9f5c}[data-theme=light] .home-page .tooth-model-status{color:#475569;background:#ffffffe0;border-color:#159c9f4d}[data-theme=light] .home-page .tooth-model-fallback{color:#475569}.home-page .hero .hero-primary-btn{color:#102033;background:#fff;border:1px solid #94a3b87a;box-shadow:0 12px 28px #0f172a24}.home-page .hero .hero-primary-btn>svg{color:#159c9f}.home-page .hero .hero-primary-btn:hover{color:#102033;background:#f2fbfb;border-color:#159c9f7a;transform:translateY(-2px);box-shadow:0 15px 31px #0f172a29}.home-page .hero .hero-whatsapp-btn{color:#fff;background:#25d366;border:1px solid #25d366;box-shadow:0 12px 27px #25d36638}.home-page .hero .hero-whatsapp-btn>svg{color:#fff}.home-page .hero .hero-whatsapp-btn:hover{color:#fff;background:#1fb858;border-color:#1fb858;transform:translateY(-2px);box-shadow:0 15px 31px #25d3664d}.figma-patient-layout{color:#172033;background:#f4f7f9;grid-template-columns:242px minmax(0,1fr);width:100%;min-height:100vh;display:grid}.figma-sidebar-wrapper{z-index:50;min-width:0;position:relative}.figma-patient-content{width:100%;min-width:0;min-height:100vh}.figma-patient-page{width:100%;min-width:0;padding:20px 24px 32px}.figma-patient-page section{min-height:0}.figma-sidebar-overlay{display:none}.figma-patient-sidebar{background:#fff;border-right:1px solid #e5ebef;flex-direction:column;width:242px;height:100vh;padding:22px 15px;display:flex;position:sticky;top:0;overflow:hidden}.figma-sidebar-brand{border-bottom:1px solid #edf2f5;align-items:center;gap:10px;padding:0 5px 19px;display:flex}.figma-sidebar-logo{color:#fff;background:#2ec4c7;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.figma-sidebar-brand strong,.figma-sidebar-brand span{display:block}.figma-sidebar-brand strong{color:#172033;font-size:15px;line-height:1.3}.figma-sidebar-brand span{color:#16aeb1;margin-top:3px;font-size:11px;font-weight:700}.figma-sidebar-patient{align-items:center;gap:10px;padding:18px 5px;display:flex}.figma-sidebar-avatar{color:#159c9f;background:#ddfafa;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.figma-sidebar-avatar img,.figma-topbar-avatar img{object-fit:cover;width:100%;height:100%;display:block}.figma-sidebar-patient strong,.figma-sidebar-patient span{display:block}.figma-sidebar-patient strong{color:#172033;font-size:13px;line-height:1.3}.figma-sidebar-patient span{color:#94a3b8;overflow-wrap:anywhere;margin-top:4px;font-size:10px}[data-theme=dark] .figma-patient-layout .figma-patient-sidebar .figma-sidebar-patient span{color:var(--text-secondary);opacity:1}.figma-sidebar-navigation{overscroll-behavior:contain;gap:5px;min-height:0;margin-top:4px;display:grid;overflow-y:auto}.figma-sidebar-menu{color:#64748b;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:grid}.figma-sidebar-menu:hover,.figma-sidebar-menu.active{color:#159c9f;background:#eafafa}.figma-sidebar-menu-icon{color:#8fa0b5;place-items:center;font-size:15px;display:grid}.figma-sidebar-menu:hover .figma-sidebar-menu-icon,.figma-sidebar-menu.active .figma-sidebar-menu-icon{color:#2ec4c7}.figma-sidebar-menu-label{white-space:nowrap}.figma-sidebar-badge{color:#fff;background:#2ec4c7;border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 6px;font-size:9px;font-weight:700;display:grid}.figma-sidebar-logout{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;align-items:center;gap:10px;min-height:44px;margin-top:auto;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.figma-sidebar-logout:hover{color:#dc2626;background:#fff1f2}.figma-patient-topbar{background:#fff;border-bottom:1px solid #e5ebef;justify-content:space-between;align-items:center;gap:24px;min-height:74px;padding:10px 24px;display:flex}.figma-topbar-left{align-items:center;gap:13px;min-width:0;display:flex}.figma-topbar-left h1{color:#172033;margin:0 0 3px;font-size:20px;line-height:1.25}.figma-topbar-left p{color:#94a3b8;margin:0;font-size:12px;line-height:1.4}.figma-topbar-menu-button{color:#64748b;cursor:pointer;background:#f8fafc;border:0;border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;padding:0;display:none}.figma-topbar-actions{align-items:center;gap:10px;display:flex}.figma-topbar-book-button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.figma-topbar-book-button:hover{background:#20b4b7}.figma-topbar-notification-button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e1e9ee;border-radius:10px;place-items:center;width:40px;height:40px;padding:0;font-size:15px;display:grid;position:relative}.figma-topbar-notification-button>span{color:#fff;background:#2ec4c7;border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:8px;font-weight:700;display:grid;position:absolute;top:-5px;right:-5px}.figma-topbar-profile{align-items:center;gap:9px;min-height:42px;padding:4px 8px 4px 4px;display:flex}.figma-topbar-avatar{color:#159c9f;background:#ddfafa;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:grid;overflow:hidden}.figma-topbar-profile strong,.figma-topbar-profile span{white-space:nowrap;display:block}.figma-topbar-profile strong{color:#172033;font-size:13px}.figma-topbar-profile span{color:#94a3b8;margin-top:3px;font-size:10px}@media (width<=1000px){.figma-patient-layout{grid-template-columns:80px minmax(0,1fr)}.figma-patient-sidebar{align-items:center;width:80px;padding-left:11px;padding-right:11px}.figma-sidebar-brand>div:last-child,.figma-sidebar-patient>div:last-child,.figma-sidebar-menu-label,.figma-sidebar-badge,.figma-sidebar-logout span{display:none}.figma-sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.figma-sidebar-menu{grid-template-columns:1fr;justify-items:center;width:46px;padding:0}.figma-sidebar-logout{justify-content:center;width:46px;padding:0}}@media (width<=700px){.figma-patient-layout{display:block}.figma-sidebar-wrapper{z-index:100;transition:transform .25s;position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.figma-sidebar-wrapper.open{transform:translate(0)}.figma-sidebar-wrapper .figma-patient-sidebar{align-items:stretch;width:242px}.figma-sidebar-wrapper .figma-sidebar-brand>div:last-child,.figma-sidebar-wrapper .figma-sidebar-patient>div:last-child,.figma-sidebar-wrapper .figma-sidebar-menu-label,.figma-sidebar-wrapper .figma-sidebar-badge,.figma-sidebar-wrapper .figma-sidebar-logout span{display:block}.figma-sidebar-wrapper .figma-sidebar-menu{justify-items:initial;grid-template-columns:20px minmax(0,1fr) auto;width:100%;padding:0 11px}.figma-sidebar-wrapper .figma-sidebar-logout{justify-content:flex-start;width:100%;padding:0 11px}.figma-sidebar-overlay{z-index:90;background:#0f172a7a;border:0;padding:0;display:block;position:fixed;inset:0}.figma-patient-topbar{min-height:72px;padding:12px 15px}.figma-topbar-menu-button{display:grid}.figma-topbar-book-button span,.figma-topbar-profile>div:last-child{display:none}.figma-topbar-book-button{width:40px;padding:0}.figma-topbar-left h1{font-size:18px}.figma-topbar-left p{display:none}.figma-patient-page{padding:16px}}.figma-topbar-profile{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-family:inherit;transition:background .2s,box-shadow .2s}.figma-topbar-profile:hover{background:#f1f8f8}.figma-topbar-profile:focus-visible{background:#f1f8f8;outline:0;box-shadow:0 0 0 3px #2ec4c72e}.figma-patient-page{width:100%;min-width:0;min-height:0!important;padding:20px 24px 32px!important;display:block!important}.figma-patient-page>*{width:100%;margin-top:0}.patient-figma-welcome,.patient-figma-stat-grid{margin-bottom:16px}.patient-figma-dashboard-grid{margin-top:0}.patient-figma-welcome{color:#fff;background:radial-gradient(circle at 85% 10%,#ffffff24,#0000 34%),linear-gradient(135deg,#31c2c4,#159b9e);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;min-height:118px;padding:22px 26px;display:flex}.patient-figma-welcome>div{min-width:0}.patient-figma-welcome>div>span{margin-bottom:10px;font-size:15px;font-weight:600;display:block}.figma-patient-layout .figma-patient-page .patient-figma-welcome h2{color:#fff;margin:0 0 10px;font-size:31px;line-height:1.15}.figma-patient-layout .figma-patient-page .patient-figma-welcome p{color:#ffffffd9;opacity:1;margin:0;font-size:15px;line-height:1.5}.patient-figma-welcome button{color:#108f92;cursor:pointer;background:#fff;border:0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 20px;font-family:inherit;font-size:14px;font-weight:700;display:inline-flex}.patient-figma-welcome button:hover{background:#f4ffff}.patient-figma-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.patient-figma-stat-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.patient-figma-stat-icon{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.patient-figma-stat-icon.teal{color:#16aaad;background:#e8fbfb}.patient-figma-stat-icon.blue{color:#2563eb;background:#edf4ff}.patient-figma-stat-icon.purple{color:#9333ea;background:#f6efff}.patient-figma-stat-icon.orange{color:#f59e0b;background:#fff8e8}.patient-figma-stat-card strong,.patient-figma-stat-card span,.patient-figma-stat-card small{display:block}.patient-figma-stat-card strong{color:#111827;margin-bottom:2px;font-size:25px;line-height:1.1}.patient-figma-stat-card span{color:#64748b;font-size:13px;line-height:1.35}.patient-figma-stat-card small{color:#94a3b8;margin-top:3px;font-size:11px}.patient-figma-dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);align-content:start;align-items:start;gap:18px;display:grid}.patient-figma-left-column,.patient-figma-right-column{align-content:start;gap:18px;min-width:0;display:grid}.patient-figma-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;min-width:0;overflow:hidden}.patient-figma-card-header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding:0 21px;display:flex}.patient-figma-card-header h3{color:#172033;margin:0;font-size:17px}.patient-figma-card-header button{color:#13a4a7;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.patient-figma-next-appointment{grid-template-columns:auto minmax(0,1fr);gap:16px;padding:19px 21px;display:grid}.patient-figma-treatment-icon{background:#effcfc;border:1px solid #bfeded;border-radius:13px;flex-shrink:0;place-items:center;width:54px;height:54px;font-size:25px;display:grid}.patient-figma-appointment-main{min-width:0}.patient-figma-appointment-title-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.patient-figma-appointment-title-row h4{color:#172033;margin:0 0 4px;font-size:17px}.patient-figma-appointment-title-row div>span{color:#718096;font-size:12px}.patient-figma-confirmed{color:#16a34a;text-transform:uppercase;background:#e9fbea;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:10px;font-weight:700}.patient-figma-appointment-meta{flex-wrap:wrap;gap:9px 17px;margin-top:14px;display:flex}.patient-figma-appointment-meta span{color:#64748b;align-items:center;gap:7px;font-size:12px;line-height:1.4;display:inline-flex}.patient-figma-appointment-meta svg{color:#2ec4c7;flex-shrink:0}.patient-figma-appointment-actions{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.patient-figma-appointment-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:35px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:600}.patient-figma-appointment-actions button:hover{background:#f8fafc}.patient-figma-appointment-actions button.cancel{color:#ef4444;border-color:#fecaca}.patient-figma-appointment-actions button.cancel:hover{background:#fff5f5}.patient-figma-info-list{gap:15px;padding:18px 21px;display:grid}.patient-figma-info-list div{justify-content:space-between;align-items:center;gap:18px;display:flex}.patient-figma-info-list span{color:#94a3b8;font-size:12px}.patient-figma-info-list strong{color:#334155;text-align:right;font-size:12px}.patient-figma-info-list strong.danger{color:#ef4444}.patient-figma-visit-list{display:grid}.patient-figma-visit-row{border-bottom:1px solid #edf1f4;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 21px;display:grid}.patient-figma-visit-row:last-child{border-bottom:0}.patient-figma-visit-icon{color:#94a3b8;background:#f1f5f9;border-radius:50%;flex-shrink:0;place-items:center;width:37px;height:37px;font-size:13px;display:grid}.patient-figma-visit-row strong,.patient-figma-visit-row div:nth-child(2) span{display:block}.patient-figma-visit-row strong{color:#172033;margin-bottom:4px;font-size:13px}.patient-figma-visit-row div:nth-child(2) span{color:#94a3b8;font-size:11px}.patient-figma-completed{color:#64748b;text-transform:uppercase;background:#eef2f7;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:700}.patient-figma-quick-list{display:grid}.patient-figma-quick-list button{color:#334155;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f4;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:50px;padding:0 21px;font-family:inherit;font-size:13px;display:grid}.patient-figma-quick-list button:last-child{border-bottom:0}.patient-figma-quick-list button:hover{background:#f8fcfc}.patient-figma-quick-list button>svg:first-child{color:#2ec4c7}.patient-figma-quick-list button>svg:last-child{color:#cbd5e1}.patient-figma-notice{background:#fffbeb;border:1px solid #fcd34d;border-radius:13px;align-items:flex-start;gap:12px;padding:15px;display:flex}.patient-figma-notice>svg{color:#f59e0b;flex-shrink:0;margin-top:2px}.patient-figma-notice strong{color:#92400e;margin-bottom:4px;font-size:12px;display:block}.patient-figma-notice p{color:#475569;margin:0;font-size:11px;line-height:1.5}[data-theme=dark] .figma-patient-layout .figma-patient-page .patient-figma-notice{color:var(--portal-primary);background:#f59e0b24;border:1px solid #f59e0b66}[data-theme=dark] .figma-patient-layout .figma-patient-page .patient-figma-notice>svg{color:#f59e0b}[data-theme=dark] .figma-patient-layout .figma-patient-page .patient-figma-notice strong{color:#fbbf24}[data-theme=dark] .figma-patient-layout .figma-patient-page .patient-figma-notice p{color:var(--portal-secondary)}@media (width<=1100px){.patient-figma-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-figma-dashboard-grid{grid-template-columns:1fr}.patient-figma-right-column{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-figma-notice{grid-column:1/-1}}@media (width<=700px){.figma-patient-page{padding:16px!important}.patient-figma-welcome{flex-direction:column;align-items:flex-start;gap:16px;padding:20px}.patient-figma-welcome button{width:100%}.patient-figma-stat-grid,.patient-figma-right-column{grid-template-columns:1fr}.patient-figma-appointment-title-row{flex-direction:column;gap:10px}}@media (width<=500px){.patient-figma-welcome h2{font-size:23px}.patient-figma-next-appointment{grid-template-columns:1fr}.patient-figma-visit-row{grid-template-columns:auto minmax(0,1fr)}.patient-figma-completed{grid-column:1/-1;width:fit-content}.figma-patient-page section{display:block;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important}.figma-patient-page .patient-figma-welcome{display:flex;margin-bottom:16px!important;padding:22px 26px!important}.figma-patient-page .patient-figma-stat-grid{display:grid;margin-bottom:16px!important;padding:0!important}.figma-patient-page .patient-figma-dashboard-grid{display:grid;margin:0!important;padding:0!important}.figma-patient-page,.patient-figma-dashboard-grid,.patient-figma-left-column,.patient-figma-right-column{place-content:start normal!important}}.patient-figma-confirmed.cancelled{color:#dc2626;background:#fee2e2}.figma-appointments-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.figma-appointments-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.figma-appointments-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.figma-appointments-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.figma-appointments-heading>button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex;box-shadow:0 10px 22px #2ec4c72e}.figma-appointments-heading>button:hover{background:#20b4b7;transform:translateY(-1px)}.figma-appointments-tabs{background:#fff;border:1px solid #e5ebef;border-radius:13px;gap:8px;margin-bottom:18px;padding:6px;display:flex}.figma-appointments-tabs button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700;transition:color .2s,background .2s;display:inline-flex}.figma-appointments-tabs button:hover{background:#f3fbfb}.figma-appointments-tabs button.active{color:#159c9f;background:#eafafa}.figma-appointments-tabs button span{color:#718096;background:#edf2f5;border-radius:999px;place-items:center;min-width:23px;height:23px;padding:0 6px;font-size:10px;font-weight:700;display:grid}.figma-appointments-tabs button.active span{color:#fff;background:#2ec4c7}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-tabs button span{color:var(--portal-secondary);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-tabs button:hover span{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-tabs button.active span{color:#062b2d;background:var(--portal-accent);border-color:var(--portal-accent)}.figma-appointments-section{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.figma-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.figma-section-heading span{color:#1aaeb1;letter-spacing:.9px;text-transform:uppercase;font-size:11px;font-weight:700}.figma-section-heading h3{color:#172033;margin:5px 0 0;font-size:20px;line-height:1.3}.figma-section-heading p{color:#94a3b8;margin:0;font-size:12px}.figma-upcoming-list{gap:12px;display:grid}.figma-appointment-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.figma-appointment-card:hover{border-color:#bfeaea;transform:translateY(-1px);box-shadow:0 10px 24px #1f37490f}.figma-appointment-date{color:#fff;background:#2ec4c7;border-radius:13px;flex-shrink:0;align-content:center;place-items:center;width:66px;height:72px;display:grid}.figma-appointment-date span{text-transform:uppercase;font-size:11px;font-weight:700}.figma-appointment-date strong{margin-top:2px;font-size:26px;line-height:1}.figma-appointment-info{min-width:0}.figma-appointment-info>span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:600}.figma-appointment-info h3{color:#172033;margin:6px 0 11px;font-size:20px;line-height:1.3}.figma-appointment-meta{flex-wrap:wrap;gap:10px 16px;display:flex}.figma-appointment-meta span{color:#64748b;align-items:center;gap:7px;font-size:12px;line-height:1.5;display:flex}.figma-appointment-meta svg{color:#2ec4c7;flex-shrink:0;font-size:13px}.figma-appointment-actions{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.figma-appointment-status{border-radius:999px;padding:7px 11px;font-size:10px;font-weight:700}.figma-appointment-status.confirmed{color:#15803d;background:#dcfce7}.figma-appointment-status.pending{color:#b45309;background:#fef3c7;border:1px solid #fcd34d}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointment-status.pending{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b80}.figma-details-button,.figma-cancel-button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.figma-details-button{color:#159c9f;background:#effcfc;border:1px solid #cee}.figma-details-button:hover{background:#ddf8f8}.figma-cancel-button{color:#dc2626;background:#fff5f5;border:1px solid #fecaca}.figma-cancel-button:hover{background:#feecec}.figma-appointments-empty{text-align:center;padding:48px 20px}.figma-appointments-empty>svg{color:#2ec4c7;margin-bottom:14px;font-size:38px}.figma-appointments-empty h3{color:#172033;margin:0 0 8px;font-size:20px}.figma-appointments-empty p{color:#8491a3;margin:0 0 19px;font-size:13px;line-height:1.6}.figma-appointments-empty button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:9px;min-height:42px;padding:0 17px;font-family:inherit;font-size:12px;font-weight:700}.figma-history-table{overflow-x:auto}.figma-history-header,.figma-history-row{grid-template-columns:minmax(180px,1.4fr) minmax(140px,1fr) minmax(140px,1fr) minmax(110px,.75fr) 70px;align-items:center;gap:16px;min-width:760px;display:grid}.figma-history-header{color:#94a3b8;text-transform:uppercase;background:#f8fafc;border-radius:10px;padding:13px 15px;font-size:11px;font-weight:700}.figma-history-row{color:#64748b;border-bottom:1px solid #edf2f5;padding:15px;font-size:12px}.figma-history-row:last-child{border-bottom:0}.figma-history-service{align-items:center;gap:11px;display:flex}.figma-history-service>div{color:#159c9f;background:#eafafa;border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:14px;display:grid}.figma-history-service strong{color:#172033;font-size:13px}.figma-history-row>div:nth-child(2) strong,.figma-history-row>div:nth-child(2) span{display:block}.figma-history-row>div:nth-child(2) strong{color:#334155;margin-bottom:4px;font-size:12px}.figma-history-row>div:nth-child(2) span{color:#94a3b8;font-size:11px}.figma-history-status{color:#2563eb;background:#dbeafe;border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:6px 9px;font-size:10px;font-weight:700;display:inline-flex}.figma-history-view{color:#159c9f;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.figma-history-status.cancelled{color:#dc2626;background:#fee2e2}.figma-appointment-details-overlay{z-index:1200;background:#0f172a7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.figma-appointment-details-modal{overscroll-behavior:contain;background:#fff;border:1px solid #e5ebef;border-radius:16px;width:min(560px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 20px 55px #0f172a2e}.figma-appointment-details-modal:before{content:"";background:#2ec4c7;height:3px;display:block}.figma-appointment-details-modal>header,.figma-appointment-details-modal>footer{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.figma-appointment-details-modal>header{border-bottom:1px solid #e5ebef}.figma-appointment-details-modal>header span,.figma-appointment-details-grid span{color:#94a3b8;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.figma-appointment-details-modal h3{color:#172033;margin:0;font-size:19px}.figma-appointment-details-modal>header button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;transition:color .2s,background .2s,border-color .2s;display:grid}.figma-appointment-details-modal>header button:hover{color:#159c9f;background:#effcfc;border-color:#bfe8e9}.figma-appointment-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px;display:grid}.figma-appointment-details-grid>div{background:#f8fafc;border:1px solid #edf2f5;border-radius:10px;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.figma-appointment-detail-icon{border:1px solid #0000;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;font-size:14px;display:grid}.figma-appointment-detail-icon.date,.figma-appointment-detail-icon.time{color:#159c9f;background:#eafafa;border-color:#cee}.figma-appointment-detail-icon.doctor{color:#7c3aed;background:#f3e8ff;border-color:#e9d5ff}.figma-appointment-detail-icon.status{color:#15803d;background:#e8f8ef;border-color:#bbf7d0}.figma-appointment-detail-icon.clinic{color:#2563eb;background:#eaf2ff;border-color:#cfe0ff}.figma-appointment-detail-copy{min-width:0}.figma-appointment-details-grid .wide{grid-column:1/-1}.figma-appointment-details-grid .reason{flex-direction:column;align-items:flex-start;gap:5px}.figma-appointment-details-grid strong{color:#334155;overflow-wrap:anywhere;font-size:13px}.figma-appointment-detail-status{border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:5px 9px;font-size:11px;display:inline-flex}.figma-appointment-detail-status.confirmed,.figma-appointment-detail-status.completed{color:#15803d;background:#dcfce7}.figma-appointment-detail-status.pending{color:#b45309;background:#fef3c7}.figma-appointment-detail-status.cancelled{color:#dc2626;background:#fee2e2}[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal{background:var(--portal-surface);border-color:var(--portal-border);box-shadow:0 24px 70px #0208176b}[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal>header,[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal>footer{background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal>header span{color:var(--portal-accent)}[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal>header button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout .figma-appointment-details-modal>header button:hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .figma-patient-layout .figma-appointment-details-grid>div{color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-icon.date,[data-theme=dark] .figma-patient-layout .figma-appointment-detail-icon.time{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378;box-shadow:0 4px 14px #2ec4c71a}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-icon.doctor{color:#c4b5fd;background:#7c3aed24;border-color:#a78bfa4d;box-shadow:0 4px 14px #7c3aed14}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-icon.status{color:#86efac;background:#16a34a24;border-color:#4ade8047;box-shadow:0 4px 14px #16a34a14}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-icon.clinic{color:#7dd3fc;background:#0ea5e921;border-color:#38bdf847;box-shadow:0 4px 14px #0ea5e914}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-status.confirmed,[data-theme=dark] .figma-patient-layout .figma-appointment-detail-status.completed{color:#86efac;background:#16a34a2e}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-status.pending{color:#fcd34d;background:#d977062b}[data-theme=dark] .figma-patient-layout .figma-appointment-detail-status.cancelled{color:#fca5a5;background:#dc262629}.figma-appointment-details-modal>footer{border-top:1px solid #e5ebef;justify-content:flex-end}.figma-appointment-details-modal>footer button{color:#fff;cursor:pointer;background:#159c9f;border:0;border-radius:10px;min-height:40px;padding:0 18px;font-family:inherit;font-size:12px;font-weight:700}.figma-appointments-feedback{color:#166534;background:#f0fdf4;border:1px solid #a7e3d0;border-radius:10px;margin:0 0 16px;padding:12px 15px;font-size:13px;font-weight:600}.figma-reschedule-modal form{gap:14px;padding:20px;display:grid}.figma-reschedule-modal form label>span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.figma-reschedule-modal input,.figma-reschedule-modal select,.figma-reschedule-modal textarea{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:9px 11px;font-size:13px}.figma-reschedule-modal textarea{resize:vertical}.figma-reschedule-summary{background:#f8fafc;border-radius:10px;grid-template-columns:auto 1fr;gap:7px 14px;padding:13px;display:grid}.figma-reschedule-summary span{color:#8491a3;font-size:11px}.figma-reschedule-summary strong{color:#334155;font-size:12px}.figma-reschedule-modal form>small{color:#64748b;line-height:1.5}.figma-reschedule-modal form>p{color:#b45309;margin:0;font-size:12px}.figma-reschedule-modal form footer{justify-content:flex-end;gap:9px;display:flex}.figma-reschedule-modal form footer button{color:#64748b;min-height:40px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:0 16px;font-size:12px;font-weight:700}.figma-reschedule-modal form footer button[type=submit]{color:#fff;background:#159c9f;border-color:#159c9f}.figma-reschedule-modal button:disabled{cursor:not-allowed;opacity:.6}[data-theme=dark] .figma-appointments-feedback{color:#a7f3d0;background:#064e3b59;border-color:#34d39959}[data-theme=dark] .figma-reschedule-modal input,[data-theme=dark] .figma-reschedule-modal select,[data-theme=dark] .figma-reschedule-modal textarea{border-color:var(--portal-border);color:var(--portal-text);background:var(--portal-surface)}[data-theme=dark] .figma-reschedule-summary{background:var(--portal-surface-subtle)}[data-theme=dark] .figma-reschedule-summary strong{color:var(--portal-text)}[data-theme=dark] .figma-reschedule-modal form label>span,[data-theme=dark] .figma-reschedule-modal form>small{color:var(--portal-muted)}@media (width<=900px){.figma-appointments-heading h2{font-size:27px}.figma-appointment-card{grid-template-columns:auto minmax(0,1fr)}.figma-appointment-actions{flex-flow:wrap;grid-column:1/-1;align-items:center}}@media (width<=650px){.figma-appointment-details-overlay{align-items:end;padding:10px}.figma-appointment-details-modal{max-height:calc(100dvh - 20px)}.figma-appointments-heading{flex-direction:column;align-items:flex-start;gap:15px}.figma-appointments-heading>button{width:100%}.figma-appointments-heading h2{font-size:25px}.figma-appointments-tabs{flex-direction:column}.figma-appointments-section{padding:16px}.figma-section-heading{flex-direction:column;align-items:flex-start;gap:7px}.figma-appointment-card{grid-template-columns:1fr;gap:14px;padding:16px}.figma-appointment-date{width:58px;height:64px}.figma-appointment-info h3{font-size:18px}.figma-appointment-actions{grid-column:auto;align-items:flex-start}.figma-details-button,.figma-cancel-button{min-height:38px}.figma-appointment-details-grid{grid-template-columns:1fr}.figma-appointment-details-grid .wide{grid-column:auto}}.figma-appointments-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px;display:grid}.figma-appointments-summary-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;min-width:0;padding:18px 20px;box-shadow:0 8px 24px #1f37490a}.figma-appointments-summary-card:before{background:var(--status-accent);content:"";border-radius:99px;width:32px;height:4px;margin-bottom:14px;display:block}.figma-appointments-summary-card.pending{--status-accent:#d98b19}.figma-appointments-summary-card.confirmed{--status-accent:#159c9f}.figma-appointments-summary-card.completed{--status-accent:#298650}.figma-appointments-summary-card.cancelled{--status-accent:#d65b64}.figma-appointments-summary-card span,.figma-appointments-summary-card strong,.figma-appointments-summary-card small{display:block}.figma-appointments-summary-card span{color:#64748b;font-size:12px;font-weight:700}.figma-appointments-summary-card strong{color:#172033;margin:5px 0 1px;font-size:29px;line-height:1.1}.figma-appointments-summary-card small{color:#94a3b8;font-size:11px}.figma-appointments-tabs{overflow-x:auto}.figma-appointments-tabs button{white-space:nowrap;flex:1 0 auto}.figma-appointment-status{border:1px solid #0000}.figma-appointment-status.completed{color:#166534;background:#dcfce7}.figma-appointment-status.cancelled{color:#b42332;background:#fee2e2}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-summary-card{border-color:var(--portal-border);background:var(--portal-surface);box-shadow:none}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-summary-card span,[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-summary-card small{color:var(--portal-secondary)}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointments-summary-card strong{color:var(--portal-primary)}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointment-status.confirmed{color:#86efac;background:#22c55e2b}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointment-status.completed{color:#6ee7b7;background:#10b98129}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-appointment-status.cancelled{color:#fda4af;background:#f43f5e29}@media (width<=1000px){.figma-appointments-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.figma-appointments-summary{gap:9px}.figma-appointments-summary-card{padding:14px}.figma-appointments-tabs{flex-direction:row}.figma-appointments-tabs button{min-height:42px;padding:0 12px;font-size:12px}}.figma-records-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.figma-records-heading>div:first-child>span,.figma-records-section-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.figma-records-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.figma-records-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.figma-records-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.figma-records-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.figma-records-stat-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;align-items:center;gap:14px;min-width:0;padding:18px;display:flex}.figma-records-stat-icon{border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:16px;display:grid}.figma-records-stat-icon.teal{color:#159c9f;background:#eafafa}.figma-records-stat-icon.blue{color:#2563eb;background:#eaf2ff}.figma-records-stat-icon.purple{color:#7c3aed;background:#f1eafe}.figma-records-stat-card strong,.figma-records-stat-card span,.figma-records-stat-card small{display:block}.figma-records-stat-card strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;font-size:20px;line-height:1.2;overflow:hidden}.figma-records-stat-card span{color:#64748b;font-size:12px;font-weight:700}.figma-records-stat-card small{color:#94a3b8;margin-top:3px;font-size:10px}.figma-records-section{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:34px 20px 20px}.figma-records-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.figma-records-section-heading>div>span{letter-spacing:.9px;font-size:11px}.figma-records-section-heading h3{color:#172033;margin:2px 0 0;font-size:20px;line-height:1.3}.figma-records-search{background:#f8fafc;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,330px);min-height:42px;padding:0 13px;transition:border-color .2s,box-shadow .2s;display:flex}.figma-records-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.figma-records-search>svg{color:#94a3b8;flex-shrink:0;font-size:13px}.figma-records-search input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-family:inherit;font-size:12px}.figma-records-search input::placeholder{color:#94a3b8}.figma-records-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.figma-records-list{gap:12px;display:grid}.figma-record-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.figma-record-card:hover{border-color:#bfeaea;box-shadow:0 10px 24px #1f37490f}.figma-record-card-header{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:18px;font-family:inherit;display:grid}.figma-record-card-header:hover{background:#fbfefe}.figma-record-treatment-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:17px;display:grid}.figma-record-main-information{min-width:0}.figma-record-main-information>span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:600}.figma-record-main-information h3{color:#172033;margin:5px 0 9px;font-size:18px;line-height:1.3}.figma-record-meta{flex-wrap:wrap;gap:8px 16px;display:flex}.figma-record-meta span{color:#64748b;align-items:center;gap:7px;font-size:12px;line-height:1.5;display:flex}.figma-record-meta svg{color:#2ec4c7;font-size:12px}.figma-record-view-label{color:#159c9f;font-size:11px;font-weight:700}.figma-record-expand-icon{color:#159c9f;background:#effcfc;border-radius:9px;place-items:center;width:32px;height:32px;font-size:11px;display:grid}.figma-record-details{background:#f8fafc;border-top:1px solid #edf2f5;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 18px 18px;display:grid}.figma-record-detail-item{background:#fff;border:1px solid #e5ebef;border-radius:11px;padding:14px}.figma-record-detail-item span{color:#1aaeb1;letter-spacing:.7px;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.figma-record-detail-item p{color:#64748b;margin:0;font-size:12px;line-height:1.65}.figma-records-empty{text-align:center;padding:48px 20px}.figma-records-empty>svg{color:#2ec4c7;margin-bottom:14px;font-size:38px}.figma-records-empty h3{color:#172033;margin:0 0 8px;font-size:20px}.figma-records-empty p{color:#8491a3;margin:0;font-size:13px}.figma-records-security-note{background:#effcfc;border:1px solid #cee;border-radius:12px;align-items:center;gap:12px;margin-top:16px;padding:14px 16px;display:flex}.figma-records-security-note>div{color:#159c9f;background:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:14px;display:grid}.figma-records-security-note p{color:#64748b;margin:0;font-size:11px;line-height:1.6}.figma-records-security-note strong{color:#159c9f;font-size:12px;display:block}@media (width<=900px){.figma-records-heading h2{font-size:27px}.figma-records-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.figma-records-stat-card:last-child{grid-column:1/-1}}@media (width<=650px){.figma-records-heading{align-items:flex-start}.figma-records-heading h2{font-size:25px}.figma-records-heading-icon{display:none}.figma-records-stat-grid{grid-template-columns:1fr}.figma-records-stat-card:last-child{grid-column:auto}.figma-records-section{padding:16px}.figma-records-section-heading{flex-direction:column;align-items:flex-start;gap:13px}.figma-records-search{width:100%}.figma-record-card-header{grid-template-columns:auto minmax(0,1fr) auto;padding:16px}.figma-record-view-label{display:none}.figma-record-details{grid-template-columns:1fr;padding:14px 16px 16px}}@media (width<=430px){.figma-record-card-header{grid-template-columns:minmax(0,1fr) auto}.figma-record-treatment-icon{display:none}.figma-record-meta{flex-direction:column;gap:5px}.figma-records-security-note{align-items:flex-start}}.patient-care-list{gap:14px}.patient-care-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;transition:border-color .2s,box-shadow .2s,transform .2s;overflow:hidden}.patient-care-card:hover{border-color:#bfeaea;transform:translateY(-1px);box-shadow:0 10px 24px #1f37490f}.patient-care-card-header{background:#fbfefe;border-bottom:1px solid #edf2f5;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.patient-care-type,.patient-care-published{border-radius:999px;align-items:center;gap:7px;width:fit-content;font-size:10px;font-weight:700;display:inline-flex}.patient-care-type{color:#159c9f;background:#eafafa;padding:7px 10px}.patient-care-type svg{font-size:11px}.patient-care-published{color:#15803d;background:#dcfce7;padding:7px 11px}.patient-care-main{min-width:0;padding:18px}.patient-care-main h4{color:#172033;margin:0 0 10px;font-size:18px;line-height:1.35}.patient-care-meta{flex-wrap:wrap;gap:8px 18px;display:flex}.patient-care-meta span{color:#718096;align-items:center;gap:7px;font-size:12px;line-height:1.5;display:inline-flex}.patient-care-meta svg{color:#2ec4c7;flex-shrink:0;font-size:12px}.patient-care-content{color:#334155;overflow-wrap:anywhere;white-space:pre-wrap;background:#f8fafc;border:1px solid #e5ebef;border-radius:11px;margin-top:16px;padding:15px 16px;font-size:13px;line-height:1.7}.patient-care-empty{color:#64748b;text-align:center;place-items:center;padding:42px 20px;display:grid}.patient-care-empty>svg{color:#2ec4c7;font-size:28px}.patient-care-empty h3{color:#172033;margin:12px 0 4px}.patient-care-empty p{margin:0;line-height:1.6}.patient-care-empty small{color:#159c9f;align-items:center;gap:7px;margin-top:14px;display:flex}@media (width<=650px){.patient-care-card-header,.patient-care-main{padding:15px}}@media (width<=430px){.patient-care-card-header{align-items:flex-start}.patient-care-main h4{font-size:17px}.patient-care-meta{flex-direction:column;gap:5px}.patient-care-content{padding:13px}.patient-care-empty small{align-items:flex-start}}.figma-notifications-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.figma-notifications-heading>div:first-child>span,.figma-notifications-section-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.figma-notifications-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.figma-notifications-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.figma-notifications-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.figma-notifications-section{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.figma-notifications-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.figma-notifications-section-heading>div>span{letter-spacing:.9px;font-size:11px}.figma-notifications-section-heading h3{color:#172033;margin:5px 0 0;font-size:20px;line-height:1.3}.figma-notifications-section-heading>p{color:#64748b;background:#f1f5f7;border-radius:999px;margin:0;padding:7px 11px;font-size:11px}.figma-notifications-section-heading>p strong{color:#159c9f;font-size:12px}.figma-notifications-summary{align-items:center;gap:10px;display:flex}.figma-notifications-summary p{color:#0f766e;background:#ccfbf1;border:1px solid #99f6e4;border-radius:999px;margin:0;padding:7px 11px;font-size:11px;font-weight:600}.figma-notifications-summary p strong{color:inherit;font-size:12px;font-weight:600}.figma-notifications-summary button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:9px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-notifications-summary>p{color:#5eead4;background:#2dd4bf2e;border:1px solid #2dd4bf73}[data-theme=dark] .figma-patient-layout .figma-patient-page .figma-notifications-summary>p strong{color:inherit}.figma-notifications-list{gap:12px;display:grid}.figma-notification-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid;position:relative;overflow:hidden}.figma-notification-card.clickable{cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.figma-notification-card.clickable:hover,.figma-notification-card.clickable:focus-visible{background:#f8fefe;border-color:#bfe8e9;outline:0;box-shadow:0 8px 22px #1720330f}.figma-notification-card:hover{border-color:#bfeaea;transform:translateY(-1px);box-shadow:0 10px 24px #1f37490f}.figma-notification-card.unread{background:#fbfefe;border-color:#cee}.figma-notification-card.unread:before{content:"";background:#2ec4c7;width:3px;position:absolute;inset:0 auto 0 0}.figma-notification-card.read{background:#fff}.figma-notification-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:17px;display:grid}.figma-notification-card.read .figma-notification-icon{color:#718096;background:#f1f5f7}.figma-notification-content{min-width:0}.figma-notification-title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.figma-notification-title-row>div{align-items:center;gap:8px;min-width:0;display:flex}.figma-notification-title-row h3{color:#172033;margin:0;font-size:15px;line-height:1.35}.figma-notification-card.unread .figma-notification-title-row h3{font-weight:700}.figma-notification-unread-label{color:#159c9f;letter-spacing:.4px;text-transform:uppercase;background:#e2fafa;border-radius:999px;flex-shrink:0;padding:4px 7px;font-size:9px;font-weight:700}.figma-notification-title-row time{color:#94a3b8;flex-shrink:0;font-size:11px;line-height:1.5}.figma-notification-content>p{color:#64748b;margin:7px 0 0;font-size:12px;line-height:1.6}.figma-notification-action{justify-content:flex-end;min-width:104px;display:flex}.figma-notification-action button,.figma-notification-action>span{border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.figma-notification-action button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;transition:background .2s}.figma-notification-action button:hover{background:#ddf8f8}.figma-notification-action>span{color:#94a3b8}@media (width<=900px){.figma-notifications-heading h2{font-size:27px}.figma-notification-card{grid-template-columns:auto minmax(0,1fr)}.figma-notification-action{grid-column:2;justify-content:flex-start;min-width:0}}@media (width<=650px){.figma-notifications-heading{align-items:flex-start}.figma-notifications-heading h2{font-size:25px}.figma-notifications-heading-icon{display:none}.figma-notifications-section{padding:16px}.figma-notifications-section-heading{align-items:flex-start;gap:10px}.figma-notification-card{grid-template-columns:1fr;gap:12px;padding:16px}.figma-notification-icon{width:42px;height:42px}.figma-notification-title-row{flex-direction:column;gap:5px}.figma-notification-action{grid-column:auto}}@media (width<=430px){.figma-notifications-section-heading{flex-direction:column}.figma-notification-title-row>div{flex-direction:column;align-items:flex-start;gap:5px}.figma-notifications-summary{flex-direction:column;align-items:flex-start}}.figma-profile-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.figma-profile-heading>div:first-child>span,.figma-profile-card-heading>div:first-child>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.figma-profile-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.figma-profile-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.figma-profile-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.figma-profile-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);align-items:start;gap:18px;display:grid}.figma-profile-side{gap:18px;display:grid}.figma-profile-card{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.figma-profile-card-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.figma-profile-card-heading>div:first-child>span{letter-spacing:.9px;font-size:11px}.figma-profile-card-heading h3{color:#172033;margin:5px 0 0;font-size:20px;line-height:1.3}.figma-profile-saved-badge{color:#15803d;background:#dcfce7;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:10px;font-weight:700;display:inline-flex}.figma-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.figma-profile-save-error{color:#b42332;background:#fff1f2;border:1px solid #fecaca;border-radius:9px;grid-column:1/-1;margin:0;padding:10px 13px;font-size:12px;line-height:1.5}[data-theme=dark] .figma-patient-layout .figma-profile-save-error{color:#fecaca;background:#7f1d1d3d;border-color:#f8717166}.figma-profile-form label,.figma-profile-password-form label{color:#334155;gap:7px;font-size:12px;font-weight:600;display:grid}.figma-profile-full-width{grid-column:1/-1}.figma-profile-input-wrapper{background:#f8fafc;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;min-height:44px;padding:0 13px;transition:border-color .2s,box-shadow .2s;display:flex}.figma-profile-input-wrapper:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.figma-profile-input-wrapper>svg{color:#94a3b8;flex-shrink:0;font-size:13px}.figma-profile-input-wrapper input,.figma-profile-input-wrapper textarea{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-family:inherit;font-size:12px}.figma-profile-address-wrapper{align-items:flex-start;min-height:76px;padding-top:12px;padding-bottom:12px}.figma-profile-address-wrapper textarea{resize:vertical;line-height:1.5}.figma-profile-primary-button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex;box-shadow:0 8px 18px #2ec4c729}.figma-profile-primary-button:hover{background:#20b4b7;transform:translateY(-1px)}.figma-profile-primary-button:disabled{cursor:wait;opacity:.7;transform:none}.figma-profile-form>.figma-profile-primary-button{grid-column:1/-1;margin-top:1px}.figma-profile-photo-content{align-items:center;gap:16px;display:flex}.figma-profile-avatar{color:#159c9f;background:#ddfafa;border:3px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:76px;height:76px;font-size:25px;font-weight:700;display:grid;overflow:hidden;box-shadow:0 0 0 1px #cee}.figma-profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.figma-profile-photo-info{min-width:0}.figma-profile-photo-info>strong,.figma-profile-photo-info>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.figma-profile-photo-info>strong{color:#172033;font-size:14px}.figma-profile-photo-info>span{color:#94a3b8;margin:3px 0 10px;font-size:11px}.figma-profile-upload{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.figma-profile-upload:hover{background:#ddf8f8}.figma-profile-file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.figma-profile-photo-message{color:#15803d!important}.figma-profile-photo-error{color:#b42332!important}[data-theme=dark] .figma-profile-photo-message{color:#86efac!important}[data-theme=dark] .figma-profile-photo-error{color:#fda4af!important}.figma-profile-photo-card>small{color:#94a3b8;border-top:1px solid #edf2f5;margin-top:13px;padding-top:11px;font-size:10px;line-height:1.5;display:block}.figma-profile-security-icon{color:#159c9f;background:#eafafa;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:13px;display:grid}.figma-profile-password-form{gap:13px;display:grid}.figma-profile-password-form .figma-profile-primary-button{margin-top:2px}@media (width<=900px){.figma-profile-heading h2{font-size:27px}.figma-profile-layout{grid-template-columns:1fr}.figma-profile-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.figma-profile-heading{align-items:flex-start}.figma-profile-heading h2{font-size:25px}.figma-profile-heading-icon{display:none}.figma-profile-side,.figma-profile-form{grid-template-columns:1fr}.figma-profile-card{padding:16px}.figma-profile-full-width,.figma-profile-form>.figma-profile-primary-button{grid-column:auto}.figma-profile-primary-button{width:100%}}@media (width<=430px){.figma-profile-card-heading,.figma-profile-photo-content{align-items:flex-start}}.portal-settings-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:20px;display:flex}.portal-settings-heading>div:first-child>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.portal-settings-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.portal-settings-heading p{color:#8491a3;margin:0;font-size:15px}.portal-settings-heading>div:last-child{color:#159c9f;background:#eafafa;border-radius:13px;flex-shrink:0;place-items:center;width:50px;height:50px;font-size:19px;display:grid}.portal-settings-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:9px;min-height:44px;margin-bottom:16px;padding:0 15px;font-size:13px;font-weight:600;display:flex}.portal-settings-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:18px}.portal-settings-shell{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.portal-settings-shell>nav{scrollbar-width:thin;background:#fff;border:1px solid #e5ebef;border-radius:14px;gap:4px;min-width:0;padding:6px;display:flex;overflow-x:auto;box-shadow:0 8px 24px #17203308}.portal-settings-shell>nav button{color:#64748b;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:9px;min-width:125px;min-height:48px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;display:flex}.portal-settings-shell>nav button svg{flex-shrink:0;width:16px}.portal-settings-shell>nav button:hover{color:#159c9f;background:#f4fbfb}.portal-settings-shell>nav button.active{color:#159c9f;background:#eafafa;box-shadow:inset 0 -3px #2ec4c7}.portal-settings-shell>main{width:100%;min-width:0}.portal-settings-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px #1720330a}.portal-settings-panel>header{background:#fbfefe;border-bottom:1px solid #edf1f4;align-items:center;gap:14px;min-height:96px;padding:20px 22px;display:flex}.portal-settings-panel>header>div{color:#159c9f;background:#e7f8f8;border-radius:12px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:17px;display:grid}.portal-settings-panel>header h3{color:#172033;margin:0;font-size:20px}.portal-settings-panel>header p{color:#8491a3;margin:5px 0 0;font-size:13px;line-height:1.45}.portal-settings-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;display:grid}.portal-settings-field>span{color:#475569;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.portal-settings-field input{color:#334155;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;width:100%;min-height:44px;padding:0 12px;font:14px inherit}.portal-settings-field input:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.portal-settings-field input:disabled{color:#94a3b8;background:#f8fafc}.portal-settings-form-footer{grid-column:1/-1;justify-content:flex-end;padding-top:6px;display:flex}.portal-settings-form-footer button,.portal-settings-panel-footer button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.portal-settings-rows{display:grid}.portal-settings-row{border-bottom:1px solid #edf1f4;align-items:center;gap:16px;min-height:78px;padding:16px 22px;display:flex}.portal-settings-row.wide{border:1px solid #edf1f4;border-radius:11px;grid-column:1/-1;margin-top:2px}.portal-settings-row>span{min-width:0;margin-right:auto}.portal-settings-row strong,.portal-settings-row small{display:block}.portal-settings-row strong{color:#334155;font-size:14px}.portal-settings-row small{color:#8491a3;margin-top:5px;font-size:12px;line-height:1.45}.portal-settings-row>button{cursor:pointer;background:#cbd5e1;border:0;border-radius:999px;flex-shrink:0;width:44px;height:25px;padding:0;position:relative}.portal-settings-row>button i{background:#fff;border-radius:50%;width:19px;height:19px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.portal-settings-row>button.on{background:#2ec4c7}.portal-settings-row>button.on i{transform:translate(19px)}.portal-settings-panel-footer{background:#fbfcfd;border-top:1px solid #edf1f4;justify-content:flex-end;padding:17px 22px 22px;display:flex}.portal-settings-note{color:#159c9f;background:#f5fcfc;border:1px solid #cee;border-radius:11px;align-items:center;gap:12px;margin:20px 22px;padding:15px;display:flex}.portal-settings-note span{color:#334155}.portal-settings-note strong,.portal-settings-note small{display:block}.portal-settings-note strong{font-size:13px}.portal-settings-note small{color:#8491a3;margin-top:4px;font-size:11px}.portal-settings-session>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:22px;display:grid}.portal-settings-session p{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;margin:0;padding:14px}.portal-settings-session p span,.portal-settings-session p strong{display:block}.portal-settings-session p span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:800}.portal-settings-session p strong{color:#334155;margin-top:6px;font-size:13px}.portal-settings-session p strong.status{color:#15803d;background:#e8f8ef;border-radius:99px;width:max-content;padding:5px 8px}.portal-settings-session article{border-top:1px solid #edf1f4;align-items:center;gap:16px;padding:18px 22px 22px;display:flex}.portal-settings-session article>span{margin-right:auto}.portal-settings-session article strong,.portal-settings-session article small{display:block}.portal-settings-session article strong{font-size:14px}.portal-settings-session article small{color:#8491a3;margin-top:4px;font-size:12px}.portal-settings-session article button{color:#159c9f;cursor:pointer;background:#fff;border:1px solid #cee;border-radius:9px;align-items:center;gap:7px;min-height:42px;padding:0 16px;font:700 12px inherit;display:flex}.portal-settings-action-grid{grid-template-columns:1fr 1fr;gap:12px;padding:20px 22px;display:grid}.portal-settings-action-grid button{color:#159c9f;text-align:left;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:11px;align-items:center;gap:13px;min-height:80px;padding:15px;font-family:inherit;display:flex}.portal-settings-action-grid button span{color:#334155}.portal-settings-action-grid strong,.portal-settings-action-grid small{display:block}.portal-settings-action-grid strong{font-size:13px}.portal-settings-action-grid small{color:#8491a3;margin-top:4px;font-size:11px}.portal-settings-modal{z-index:700;background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.portal-settings-modal>section{overscroll-behavior:contain;background:#fff;border-radius:16px;width:min(100%,540px);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 28px 80px #0f172a55}.portal-settings-modal header{background:#effcfc;border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:18px 20px;display:flex}.portal-settings-modal header>div{color:#fff;background:#2ec4c7;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.portal-settings-modal header>span{margin-right:auto}.portal-settings-modal header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.portal-settings-modal h3{margin:3px 0 0}.portal-settings-modal header>button{color:#64748b;background:#fff;border:1px solid #e5ebef;border-radius:9px;width:34px;height:34px}.portal-settings-modal>section>p{color:#475569;margin:20px;font-size:13px;line-height:1.6}.portal-settings-modal footer{justify-content:flex-end;gap:8px;padding:0 20px 20px;display:flex}.portal-settings-modal footer button{color:#64748b;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:42px;padding:0 17px;font:700 13px inherit}.portal-settings-modal footer .primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}@media (width<=850px){.portal-settings-shell>nav button{min-width:112px}.portal-settings-panel>header{min-height:auto}}@media (width<=600px){.portal-settings-modal{align-items:end;padding:10px}.portal-settings-modal>section{max-height:calc(100dvh - 20px)}.portal-settings-heading>div:last-child{display:none}.portal-settings-heading h2{font-size:25px}.portal-settings-shell>nav{justify-content:flex-start}.portal-settings-shell>nav button{flex:none;min-width:max-content;padding-inline:16px}.portal-settings-form{grid-template-columns:1fr;padding:18px}.portal-settings-form-footer,.portal-settings-row.wide{grid-column:1}.portal-settings-panel>header,.portal-settings-row{padding-inline:18px}.portal-settings-session>div,.portal-settings-action-grid{grid-template-columns:1fr;padding:18px}.portal-settings-session article{flex-direction:column;align-items:flex-start;padding:18px}.portal-settings-session article button,.portal-settings-panel-footer button,.portal-settings-form-footer button{width:100%}.portal-settings-panel-footer{padding:16px 18px 18px}.portal-settings-note{margin:18px}}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav{background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav button{color:var(--portal-secondary);background:var(--portal-elevated);box-shadow:none}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav button:hover{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav button.active{color:#062b2d;background:var(--portal-accent);box-shadow:inset 0 -3px #8ff3f4}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav button.active svg{color:currentColor}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-shell>nav button:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.portal-settings-panel,.portal-settings-panel>header,.portal-settings-row,.portal-settings-panel-footer){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-panel>header{background:var(--portal-elevated)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-panel>header>div{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.portal-settings-panel>header h3,.portal-settings-row strong,.portal-settings-session p strong,.portal-settings-session article strong,.portal-settings-action-grid button span,.portal-settings-note span){color:var(--portal-primary)}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.portal-settings-panel>header p,.portal-settings-row small,.portal-settings-session p span,.portal-settings-session article small,.portal-settings-action-grid small,.portal-settings-note small,.portal-settings-field>span){color:var(--portal-secondary)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-field input{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-field input:focus{border-color:var(--portal-accent);box-shadow:0 0 0 3px var(--portal-accent-soft)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-field input:disabled{color:var(--portal-muted);border-color:var(--portal-border);opacity:1;background:#0e1725}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.portal-settings-note,.portal-settings-session p,.portal-settings-action-grid button){color:var(--portal-accent);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-action-grid button:hover{background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-session article{border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-session article button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-row>button:not(.on){background:#475569}[data-theme=dark] :is(.doctor-page,.admin-page) .portal-settings-row>button i{box-shadow:none;background:#e2e8f0}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) :is(.portal-settings-heading h2,.portal-settings-panel>header h3,.portal-settings-field>span,.portal-settings-row strong,.portal-settings-session p span,.portal-settings-session p strong:not(.status),.portal-settings-session article strong,.portal-settings-note strong,.portal-settings-action-grid strong){color:var(--portal-primary);font-weight:600}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) :is(.portal-settings-heading p,.portal-settings-panel>header p,.portal-settings-row small,.portal-settings-session article small,.portal-settings-note small,.portal-settings-action-grid small){color:var(--portal-secondary)}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) .portal-settings-session p strong.status{color:#d1fae5;background:#164534;border:1px solid #2b8a63;border-radius:999px;font-weight:600}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) .portal-settings-session article button{color:#ffe4e6;cursor:pointer;background:#3b252d;border:1px solid #97515e;font-weight:700;transition:background-color .2s,border-color .2s,color .2s}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) .portal-settings-session article button:hover{color:#fff1f2;background:#50303a;border-color:#c37683}[data-theme=dark] :is(.doctor-layout .doctor-page,.admin-layout .admin-page) .portal-settings-session article button:focus-visible{outline-offset:3px;outline:2px solid #fda4af}[data-theme=dark] .figma-patient-page .portal-settings-shell>nav{background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .figma-patient-page .portal-settings-shell>nav button{color:var(--portal-secondary);box-shadow:none;background:0 0}[data-theme=dark] .figma-patient-page .portal-settings-shell>nav button:hover{color:var(--portal-accent);background:var(--portal-elevated)}[data-theme=dark] .figma-patient-page .portal-settings-shell>nav button.active{color:var(--portal-accent);background:var(--portal-accent-soft);box-shadow:inset 0 -3px var(--portal-accent)}[data-theme=dark] .figma-patient-page .portal-settings-heading>div:last-child{color:var(--portal-accent);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .figma-patient-page :is(.portal-settings-heading h2,.portal-settings-panel>header h3,.portal-settings-field>span,.portal-settings-row strong,.portal-settings-session p span,.portal-settings-session p strong:not(.status),.portal-settings-session article strong){color:var(--portal-primary);font-weight:600}[data-theme=dark] .figma-patient-page :is(.portal-settings-heading p,.portal-settings-panel>header p,.portal-settings-row small,.portal-settings-session article small){color:var(--portal-secondary)}[data-theme=dark] .figma-patient-layout .figma-patient-page .portal-settings-session p strong.status{color:#d1fae5;background:#164534;border:1px solid #2b8a63;border-radius:999px;font-weight:600}[data-theme=dark] .figma-patient-layout .figma-patient-page .portal-settings-session article button{color:#ffe4e6;cursor:pointer;background:#3b252d;border:1px solid #97515e;font-weight:700;transition:background-color .2s,border-color .2s,color .2s}[data-theme=dark] .figma-patient-layout .figma-patient-page .portal-settings-session article button:hover{color:#fff1f2;background:#50303a;border-color:#c37683}[data-theme=dark] .figma-patient-layout .figma-patient-page .portal-settings-session article button:focus-visible{outline-offset:3px;outline:2px solid #fda4af}.invoice-heading{color:#fff;background:linear-gradient(135deg,#31c2c4,#159b9e);border-radius:15px;justify-content:space-between;align-items:center;gap:20px;min-height:112px;margin-bottom:16px;padding:22px 25px;display:flex}.invoice-heading>div:first-child>span{margin-bottom:6px;font-size:12px;font-weight:700;display:block}.invoice-heading h2{margin:0 0 7px;font-size:27px}.invoice-heading p{margin:0;font-size:13px}.invoice-heading button{color:#159b9e;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #ffffff8c;border-radius:10px;align-items:center;gap:8px;padding:0 15px;font-size:12px;font-weight:700;display:inline-flex}.invoice-heading-icon{border:1px solid #fff6;border-radius:13px;place-items:center;width:54px;height:54px;font-size:23px;display:grid}.invoice-feedback,.invoice-error{background:#f0fdf4;border:1px solid #bde9d0;border-radius:10px;margin:0 0 14px;padding:11px 14px}.invoice-feedback{justify-content:space-between;align-items:center;display:flex}.invoice-feedback button{cursor:pointer;background:0 0;border:0}.invoice-error{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.invoice-workspace{grid-template-columns:minmax(320px,.8fr) minmax(0,1.5fr);align-items:start;gap:18px;display:grid}.invoice-list-card,.invoice-detail-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;min-width:0;overflow:hidden}.invoice-list-card>header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:12px 17px;display:flex}.invoice-list-card>header span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.invoice-list-card h3{margin:3px 0 0}.invoice-list-card label{border:1px solid #dce5eb;border-radius:9px;align-items:center;gap:6px;padding:0 9px;display:flex}.invoice-list-card input{width:125px;min-height:35px;font:inherit;border:0;outline:0}.invoice-list{display:grid}.invoice-list>button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px 17px;display:grid}.invoice-list>button.active{background:#effcfc}.invoice-list>button span strong,.invoice-list>button small{display:block}.invoice-list>button small{color:#94a3b8;margin-top:4px;font-size:10px}.invoice-status{border-radius:999px;padding:5px 8px;font-size:9px;display:inline-block}.invoice-status.draft{color:#b45309;background:#fef3c7}.invoice-status.issued{color:#15803d;background:#dcfce7}.invoice-state{text-align:center;padding:25px}.invoice-empty{color:#64748b;text-align:center;place-items:center;min-height:260px;padding:30px;display:grid}.invoice-empty>svg{color:#94a3b8;margin-bottom:12px;font-size:30px}.invoice-empty h3{margin:0 0 6px}.invoice-empty p{margin:0;font-size:12px}.invoice-detail-header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px;display:flex}.invoice-detail-header span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.invoice-detail-header h3{margin:4px 0;font-size:20px}.invoice-detail-header p{color:#64748b;margin:0;font-size:11px}.invoice-detail-header button,.invoice-detail-actions button,.invoice-create-items button,.add-line,.invoice-modal footer button{color:#64748b;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.invoice-detail-meta{background:#f8fafc;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 20px;display:grid}.invoice-detail-meta p{margin:0}.invoice-detail-meta span,.invoice-detail-meta strong{display:block}.invoice-detail-meta span{color:#94a3b8;font-size:10px}.invoice-detail-meta strong{margin-top:4px;font-size:11px}.invoice-items{padding:18px 20px}.invoice-items>header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.invoice-items h4{margin:0}.invoice-items>header span{color:#94a3b8;font-size:10px}.invoice-items-head,.invoice-item-row{grid-template-columns:minmax(150px,1fr) 58px 92px 95px 72px;align-items:center;gap:8px;display:grid}.invoice-items-head{color:#94a3b8;text-transform:uppercase;background:#f8fafc;padding:8px 9px;font-size:9px;font-weight:700}.invoice-item-row{border-bottom:1px solid #edf1f4;min-height:48px;padding:7px 9px;font-size:11px}.invoice-item-row input{width:100%;min-height:34px;font:inherit;border:1px solid #dce5eb;border-radius:7px;padding:0 8px}.invoice-row-actions{gap:4px;display:flex}.invoice-row-actions button,.invoice-item-row.add>button{cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:7px;align-items:center;gap:4px;min-height:32px;padding:0 8px;display:inline-flex}.invoice-totals{width:min(100%,310px);margin-left:auto;padding:0 20px 18px}.invoice-totals p{border-bottom:1px solid #edf1f4;justify-content:space-between;margin:0;padding:8px 0;display:flex}.invoice-totals p:last-child{font-size:15px}.invoice-detail-actions{border-top:1px solid #edf1f4;justify-content:flex-end;padding:14px 20px;display:flex}.invoice-detail-actions .primary,.invoice-modal footer .primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.invoice-detail-actions button:disabled{opacity:.5;cursor:not-allowed}.invoice-modal-overlay{z-index:700;background:#0f172a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.invoice-modal{background:#fff;border:1px solid #dce5eb;border-radius:15px;width:min(100%,720px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 25px 70px #0f172a40}.invoice-modal>header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;padding:18px 21px;display:flex}.invoice-modal>header span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.invoice-modal>header h2{margin:4px 0 0}.invoice-modal>header button{cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;width:34px;height:34px}.invoice-modal form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:18px 21px;display:grid}.invoice-modal label>span{color:#475569;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.invoice-modal select,.invoice-modal input{width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:8px;padding:0 10px}.invoice-create-items,.invoice-modal .add-line,.invoice-draft-total,.invoice-modal footer{grid-column:1/-1}.invoice-create-items h3{margin:7px 0 10px}.invoice-create-item{grid-template-columns:minmax(0,1fr) 90px 120px 36px;gap:8px;margin-bottom:8px;display:grid}.invoice-modal .add-line{width:max-content}.invoice-draft-total{background:#f8fafc;border:1px solid #dce5eb;border-radius:9px;grid-template-columns:1fr auto;gap:4px;margin:4px 0;padding:12px;display:grid}.invoice-draft-total strong{font-size:15px}.invoice-draft-total small{color:#94a3b8;grid-column:1/-1}.invoice-modal footer{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1050px){.invoice-workspace{grid-template-columns:1fr}.invoice-list-card{max-height:400px;overflow:auto}}@media (width<=700px){.invoice-heading{flex-direction:column;align-items:flex-start}.invoice-detail-meta{grid-template-columns:1fr}.invoice-items{overflow-x:auto}.invoice-items-head,.invoice-item-row{min-width:620px}.invoice-modal form{grid-template-columns:1fr}.invoice-modal label,.invoice-create-items,.invoice-modal .add-line,.invoice-modal footer{grid-column:1}.invoice-create-item{grid-template-columns:1fr 75px 100px 34px}}.doctor-layout{color:#172033;background:#f4f7f9;grid-template-columns:242px minmax(0,1fr);width:100%;min-height:100vh;display:grid}.doctor-sidebar-wrapper{z-index:50;min-width:0;position:relative}.doctor-content{width:100%;min-width:0;min-height:100vh}.doctor-page{width:100%;min-width:0;padding:20px 24px 32px}.doctor-sidebar-overlay{display:none}.doctor-sidebar{background:#fff;border-right:1px solid #e5ebef;flex-direction:column;width:242px;height:100vh;padding:22px 15px;display:flex;position:sticky;top:0;overflow:hidden}.doctor-sidebar-brand{border-bottom:1px solid #edf2f5;align-items:center;gap:10px;padding:0 5px 19px;display:flex}.doctor-sidebar-logo{color:#fff;background:#2ec4c7;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.doctor-sidebar-brand strong,.doctor-sidebar-brand span,.doctor-sidebar-user strong,.doctor-sidebar-user span{display:block}.doctor-sidebar-brand strong{color:#172033;font-size:15px;line-height:1.3}.doctor-sidebar-brand span{color:#16aeb1;margin-top:3px;font-size:11px;font-weight:700}.doctor-sidebar-user{align-items:center;gap:10px;padding:18px 5px;display:flex}.doctor-sidebar-avatar{color:#159c9f;background:#ddfafa;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:grid}.doctor-sidebar-avatar img,.doctor-topbar-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.doctor-sidebar-user strong{color:#172033;font-size:13px;line-height:1.3}.doctor-sidebar-user span{color:#94a3b8;margin-top:4px;font-size:10px}.doctor-sidebar-navigation{overscroll-behavior:contain;gap:5px;min-height:0;margin-top:4px;display:grid;overflow-y:auto}.doctor-sidebar-menu{color:#64748b;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:grid}.doctor-sidebar-menu:hover,.doctor-sidebar-menu.active{color:#159c9f;background:#eafafa}.doctor-sidebar-menu-icon{color:#8fa0b5;place-items:center;font-size:15px;display:grid}.doctor-sidebar-menu:hover .doctor-sidebar-menu-icon,.doctor-sidebar-menu.active .doctor-sidebar-menu-icon{color:#2ec4c7}.doctor-sidebar-menu-label{white-space:nowrap}.doctor-sidebar-badge{color:#fff;background:#2ec4c7;border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 6px;font-size:9px;font-weight:700;display:grid}.doctor-sidebar-logout{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;align-items:center;gap:10px;min-height:44px;margin-top:auto;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.doctor-sidebar-logout:hover{color:#dc2626;background:#fff1f2}.doctor-topbar{background:#fff;border-bottom:1px solid #e5ebef;justify-content:space-between;align-items:center;gap:24px;min-height:74px;padding:10px 24px;display:flex}.doctor-topbar-left{align-items:center;gap:13px;min-width:0;display:flex}.doctor-topbar-left h1{color:#172033;margin:0 0 3px;font-size:20px;line-height:1.25}.doctor-topbar-left p{color:#94a3b8;margin:0;font-size:12px;line-height:1.4}.doctor-topbar-menu-button{color:#64748b;cursor:pointer;background:#f8fafc;border:0;border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;padding:0;display:none}.doctor-topbar-actions{align-items:center;gap:10px;display:flex}.doctor-topbar-notifications{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e1e9ee;border-radius:10px;place-items:center;width:40px;height:40px;padding:0;font-size:15px;display:grid;position:relative}.doctor-topbar-notifications>span{color:#fff;background:#2ec4c7;border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:8px;font-weight:700;display:grid;position:absolute;top:-5px;right:-5px}.doctor-topbar-profile{align-items:center;gap:9px;min-height:42px;padding:4px 8px 4px 4px;display:flex}.doctor-topbar-avatar{color:#159c9f;background:#ddfafa;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:grid}.doctor-topbar-profile strong,.doctor-topbar-profile span{white-space:nowrap;display:block}.doctor-topbar-profile strong{color:#172033;font-size:13px}.doctor-topbar-profile span{color:#94a3b8;margin-top:3px;font-size:10px}@media (width<=1000px){.doctor-layout{grid-template-columns:80px minmax(0,1fr)}.doctor-sidebar{align-items:center;width:80px;padding-left:11px;padding-right:11px}.doctor-sidebar-brand>div:last-child,.doctor-sidebar-user>div:last-child,.doctor-sidebar-menu-label,.doctor-sidebar-badge,.doctor-sidebar-logout span{display:none}.doctor-sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.doctor-sidebar-menu,.doctor-sidebar-logout{width:46px;padding:0}.doctor-sidebar-menu{grid-template-columns:1fr;justify-items:center}.doctor-sidebar-logout{justify-content:center}}@media (width<=700px){.doctor-layout{display:block}.doctor-sidebar-wrapper{z-index:100;transition:transform .25s;position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.doctor-sidebar-wrapper.open{transform:translate(0)}.doctor-sidebar-wrapper .doctor-sidebar{align-items:stretch;width:242px}.doctor-sidebar-wrapper .doctor-sidebar-brand>div:last-child,.doctor-sidebar-wrapper .doctor-sidebar-user>div:last-child,.doctor-sidebar-wrapper .doctor-sidebar-menu-label,.doctor-sidebar-wrapper .doctor-sidebar-badge,.doctor-sidebar-wrapper .doctor-sidebar-logout span{display:block}.doctor-sidebar-wrapper .doctor-sidebar-menu{justify-items:initial;grid-template-columns:20px minmax(0,1fr) auto;width:100%;padding:0 11px}.doctor-sidebar-wrapper .doctor-sidebar-logout{justify-content:flex-start;width:100%;padding:0 11px}.doctor-sidebar-overlay{z-index:90;background:#0f172a7a;border:0;padding:0;display:block;position:fixed;inset:0}.doctor-topbar{min-height:72px;padding:12px 15px}.doctor-topbar-menu-button{display:grid}.doctor-topbar-profile>div:last-child{display:none}.doctor-topbar-left h1{font-size:18px}.doctor-topbar-left p{display:none}.doctor-page{padding:16px}}.doctor-topbar-profile{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;font-family:inherit;transition:background .2s,box-shadow .2s}.doctor-topbar-profile:hover{background:#f1f8f8}.doctor-topbar-profile:focus-visible{background:#f1f8f8;outline:0;box-shadow:0 0 0 3px #2ec4c72e}.doctor-dashboard-welcome{color:#fff;background:radial-gradient(circle at 85% 10%,#ffffff24,#0000 34%),linear-gradient(135deg,#31c2c4,#159b9e);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;min-height:118px;margin-bottom:16px;padding:22px 26px;display:flex}.doctor-dashboard-welcome>div:first-child>span{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.doctor-dashboard-welcome h2{margin:0 0 8px;font-size:29px;line-height:1.15}.doctor-dashboard-welcome p{opacity:.9;margin:0;font-size:13px;line-height:1.5}.doctor-dashboard-date{background:#ffffff1f;border:1px solid #ffffff38;border-radius:12px;flex-shrink:0;align-items:center;gap:11px;padding:13px 15px;display:flex}.doctor-dashboard-date>svg{font-size:17px}.doctor-dashboard-date strong,.doctor-dashboard-date span{display:block}.doctor-dashboard-date span{opacity:.85;margin-top:4px;font-size:10px}.doctor-dashboard-summary{background:#fff;border:1px solid #dce5eb;border-radius:15px;justify-content:space-between;align-items:center;gap:22px;min-height:96px;margin-bottom:16px;padding:19px 22px;display:flex}.doctor-dashboard-summary>div>span{color:#159c9f;letter-spacing:.7px;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800;display:block}.doctor-dashboard-summary h2{color:#172033;margin:0 0 5px;font-size:24px;line-height:1.2}.doctor-dashboard-summary p{color:#64748b;margin:0;font-size:13px}.doctor-dashboard-summary>button{color:#fff;cursor:pointer;background:#2ec4c7;border:1px solid #2ec4c7;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.doctor-stat-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.doctor-stat-icon{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.doctor-stat-icon.teal{color:#16aaad;background:#e8fbfb}.doctor-stat-icon.blue{color:#2563eb;background:#edf4ff}.doctor-stat-icon.orange{color:#f59e0b;background:#fff8e8}.doctor-stat-icon.purple{color:#7c3aed;background:#f3efff}.doctor-stat-card strong,.doctor-stat-card span,.doctor-stat-card small{display:block}.doctor-stat-card strong{color:#111827;margin-bottom:2px;font-size:25px;line-height:1.1}.doctor-stat-card span{color:#64748b;font-size:13px;line-height:1.35}.doctor-stat-card small{color:#94a3b8;margin-top:3px;font-size:11px}.doctor-dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);align-items:stretch;gap:18px;display:grid}.doctor-dashboard-main-column,.doctor-dashboard-side-column{align-content:start;gap:18px;min-width:0;display:grid}.doctor-dashboard-side-column{grid-template-rows:auto minmax(130px,1fr)}.doctor-dashboard-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;min-width:0;overflow:hidden}.doctor-card-header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:18px;min-height:60px;padding:10px 21px;display:flex}.doctor-card-header>div>span{color:#1aaeb1;letter-spacing:.8px;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-card-header h3{color:#172033;margin:3px 0 0;font-size:17px}.doctor-card-header button{color:#13a4a7;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.doctor-schedule-list,.doctor-record-list{display:grid}.doctor-schedule-head{color:#94a3b8;letter-spacing:.5px;text-transform:uppercase;border-bottom:1px solid #edf1f4;grid-template-columns:82px minmax(0,1fr) minmax(130px,.9fr) auto 28px;align-items:center;gap:14px;padding:10px 21px;font-size:10px;font-weight:800;display:grid}.doctor-schedule-row{border-bottom:1px solid #edf1f4;grid-template-columns:82px minmax(0,1fr) minmax(130px,.9fr) auto 28px;align-items:center;gap:14px;padding:14px 21px;display:grid}.doctor-schedule-row:last-child,.doctor-record-row:last-child{border-bottom:0}.doctor-schedule-time{color:#2ec4c7;align-items:center;gap:7px;display:flex}.doctor-schedule-time strong{color:#334155;font-size:11px}.doctor-schedule-patient{align-items:center;gap:11px;min-width:0;display:flex}.doctor-schedule-patient>div{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:10px;font-weight:700;display:grid}.doctor-schedule-patient strong,.doctor-schedule-patient small{display:block}.doctor-schedule-patient strong{color:#172033;font-size:12px}.doctor-schedule-patient small{color:#94a3b8;margin-top:4px;font-size:10px}.doctor-schedule-service{min-width:0}.doctor-schedule-service strong{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.doctor-schedule-status{border-radius:999px;padding:6px 9px;font-size:9px;font-weight:700}.doctor-schedule-status.completed{color:#64748b;background:#eef2f7}.doctor-schedule-status.confirmed{color:#15803d;background:#dcfce7}.doctor-schedule-status.waiting,.doctor-schedule-status.pending{color:#b45309;background:#fef3c7}.doctor-schedule-status.cancelled{color:#b91c1c;background:#fee2e2}.doctor-schedule-row>button{color:#94a3b8;cursor:pointer;background:#f8fafc;border:0;border-radius:8px;place-items:center;width:28px;height:28px;padding:0;display:grid}.doctor-record-row{border-bottom:1px solid #edf1f4;grid-template-columns:auto minmax(130px,.8fr) minmax(170px,1fr) auto;align-items:center;gap:13px;padding:14px 21px;display:grid}.doctor-record-icon{color:#159c9f;background:#eafafa;border-radius:10px;place-items:center;width:37px;height:37px;font-size:13px;display:grid}.doctor-record-row strong,.doctor-record-row span{display:block}.doctor-record-row strong{color:#334155;font-size:11px}.doctor-record-row span{color:#94a3b8;margin-top:4px;font-size:10px}.doctor-record-row button{color:#159c9f;cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:11px;font-weight:700}.doctor-dashboard-empty{color:#64748b;margin:0;padding:20px 21px;font-size:12px}.doctor-profile-info{gap:0;padding:6px 21px 12px;display:grid}.doctor-profile-info>div{border-bottom:1px solid #edf1f4;padding:12px 0}.doctor-profile-info>div:last-child{border-bottom:0}.doctor-profile-info span,.doctor-profile-info strong{display:block}.doctor-profile-info span{color:#94a3b8;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:700}.doctor-profile-info strong{color:#334155;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.doctor-dashboard-reminder{color:#334155;background:#effcfc;border:1px solid #bfe8e9;border-radius:14px;align-items:flex-start;gap:11px;min-height:130px;padding:18px;display:flex}.doctor-dashboard-reminder>svg{color:#159c9f;flex-shrink:0;margin-top:2px}.doctor-dashboard-reminder strong{color:#172033;text-transform:uppercase;font-size:12px;display:block}.doctor-dashboard-reminder p{color:#64748b;margin:5px 0 0;font-size:11px;line-height:1.5}[data-theme=dark] .doctor-layout .doctor-page .doctor-dashboard-reminder{color:var(--portal-primary);background:#14b8a61a;border:1px solid #2dd4bf59}[data-theme=dark] .doctor-layout .doctor-page .doctor-dashboard-reminder>svg{color:#2dd4bf}[data-theme=dark] .doctor-layout .doctor-page .doctor-dashboard-reminder strong{color:#5eead4}[data-theme=dark] .doctor-layout .doctor-page .doctor-dashboard-reminder p{color:var(--portal-secondary)}[data-theme=dark] .doctor-layout .doctor-page .doctor-schedule-status.cancelled{color:#f87171;background:#ef44442b;border:1px solid #ef444473}.doctor-clinic-info{gap:17px;padding:18px 21px;display:grid}.doctor-clinic-info>div{align-items:flex-start;gap:11px;display:flex}.doctor-clinic-info>div>svg{color:#2ec4c7;flex-shrink:0;margin-top:2px;font-size:13px}.doctor-clinic-info p{margin:0}.doctor-clinic-info strong,.doctor-clinic-info span{display:block}.doctor-clinic-info strong{color:#334155;font-size:11px}.doctor-clinic-info span{color:#94a3b8;margin-top:4px;font-size:10px;line-height:1.5}.doctor-dashboard-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.doctor-dashboard-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,590px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.doctor-dashboard-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.doctor-dashboard-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:16px;display:grid}.doctor-dashboard-modal>header>span{min-width:0}.doctor-dashboard-modal>header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.doctor-dashboard-modal>header h2{color:#172033;margin:3px 0 0;font-size:21px}.doctor-dashboard-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.doctor-dashboard-modal-patient{background:#effcfc;border:1px solid #cee;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:17px 21px 0;padding:14px;display:grid}.doctor-dashboard-modal-patient>div{color:#fff;background:#2ec4c7;border-radius:50%;place-items:center;width:44px;height:44px;font-size:12px;font-weight:800;display:grid}.doctor-dashboard-modal-patient p{min-width:0;margin:0}.doctor-dashboard-modal-patient p span,.doctor-dashboard-modal-patient p strong,.doctor-dashboard-modal-patient p small{display:block}.doctor-dashboard-modal-patient p span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:700}.doctor-dashboard-modal-patient p strong{color:#172033;margin-top:3px;font-size:14px}.doctor-dashboard-modal-patient p small{color:#64748b;margin-top:3px;font-size:11px}.doctor-dashboard-modal-patient>.status{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.doctor-dashboard-modal-patient>.status.confirmed{color:#15803d;background:#dcfce7}.doctor-dashboard-modal-patient>.status.completed{color:#475569;background:#e2e8f0}.doctor-dashboard-modal-patient>.status.waiting{color:#b45309;background:#fef3c7}.doctor-dashboard-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 21px 0;display:grid}.doctor-dashboard-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.doctor-dashboard-modal-grid span,.doctor-dashboard-modal-grid strong{display:block}.doctor-dashboard-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.doctor-dashboard-modal-grid strong{color:#334155;margin-top:5px;font-size:12px;line-height:1.45}.doctor-dashboard-modal footer{justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.doctor-dashboard-modal footer button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 13px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.doctor-dashboard-modal footer button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}@media (width<=1100px){.doctor-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-dashboard-grid{grid-template-columns:1fr}.doctor-dashboard-side-column{grid-template-rows:auto auto;grid-template-columns:1fr}}@media (width<=700px){.doctor-dashboard-summary{flex-direction:column;align-items:flex-start;gap:14px}.doctor-dashboard-summary>button,.doctor-dashboard-date{width:100%}.doctor-dashboard-side-column{grid-template-columns:1fr}.doctor-schedule-head{display:none}.doctor-schedule-row{grid-template-columns:70px minmax(0,1fr) auto}.doctor-schedule-service{grid-column:2}.doctor-schedule-status{grid-column:2;width:fit-content}.doctor-schedule-row>button{grid-area:1/3/span 3}.doctor-record-row{grid-template-columns:auto minmax(0,1fr) auto}.doctor-record-row>div:nth-child(3){grid-column:2}.doctor-record-row>button{grid-area:1/3/span 2}.doctor-dashboard-modal-patient{grid-template-columns:auto minmax(0,1fr)}.doctor-dashboard-modal-patient>.status{grid-column:2;justify-self:start}.doctor-dashboard-modal-grid{grid-template-columns:1fr}}@media (width<=500px){.doctor-dashboard-summary h2{font-size:21px}.doctor-stat-grid{grid-template-columns:1fr}.doctor-dashboard-welcome h2{font-size:23px}.doctor-stat-card{min-height:90px}.doctor-card-header{flex-direction:column;align-items:flex-start;gap:7px;padding:15px 17px}.doctor-schedule-row{grid-template-columns:1fr auto;gap:10px;padding:15px 17px}.doctor-schedule-time{grid-column:1/-1}.doctor-schedule-status,.doctor-schedule-service{grid-column:1}.doctor-schedule-row>button{grid-area:2/2/span 3}.doctor-record-row{padding:14px 17px}.doctor-dashboard-modal-overlay{align-items:end;padding:10px}.doctor-dashboard-modal{max-height:calc(100dvh - 20px)}.doctor-dashboard-modal footer{flex-wrap:wrap}.doctor-dashboard-modal footer button{flex:1}}.doctor-dashboard-date span,.doctor-card-header>div>span{font-size:11px}.doctor-card-header button,.doctor-schedule-time strong{font-size:12px}.doctor-schedule-patient small{font-size:12px}.doctor-schedule-status{font-size:10px}.doctor-record-row span{font-size:11px}.doctor-record-row button,.doctor-clinic-info strong{font-size:12px}.doctor-dashboard-welcome>div:first-child>span{font-size:15px}.doctor-dashboard-welcome h2{font-size:31px}.doctor-dashboard-welcome p{font-size:15px}.doctor-dashboard-date strong{font-size:13px}.doctor-card-header>div>span{font-size:12px}.doctor-card-header h3{font-size:17px}.doctor-card-header button{min-height:35px;font-size:12px}.doctor-schedule-row,.doctor-record-row{padding-top:18px;padding-bottom:18px}.doctor-schedule-time strong,.doctor-schedule-patient small,.doctor-record-row span{font-size:12px}.doctor-schedule-patient strong{font-size:15px}.doctor-record-row strong{font-size:13px}.doctor-record-row button{min-height:35px;padding:0 12px;font-size:12px}.doctor-clinic-info strong{font-size:13px}.doctor-clinic-info span{font-size:12px}.doctor-dashboard-modal-grid span{font-size:11px}.doctor-dashboard-modal-grid strong{font-size:13px}.doctor-dashboard-modal footer button{min-height:40px;padding:0 16px;font-size:12px}@media (width<=500px){.doctor-dashboard-welcome h2{font-size:23px}}.doctor-dashboard-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.doctor-dashboard-modal>footer{z-index:2;background:#fff;position:sticky;bottom:0}.doctor-appointments-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.doctor-appointments-heading>div:first-child>span,.doctor-appointments-panel-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.doctor-appointments-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.doctor-appointments-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.doctor-appointments-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.doctor-appointments-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.doctor-appointments-tabs{background:#fff;border:1px solid #e5ebef;border-radius:12px;gap:6px;min-width:0;padding:5px;display:flex}.doctor-appointments-tabs button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-appointments-tabs button:hover{background:#f3fbfb}.doctor-appointments-tabs button.active{color:#159c9f;background:#eafafa}.doctor-appointments-tabs button span{color:#718096;background:#edf2f5;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:9px;display:grid}.doctor-appointments-tabs button.active span{color:#fff;background:#2ec4c7}.doctor-appointments-search{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,300px);min-height:44px;padding:0 13px;display:flex}.doctor-appointments-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.doctor-appointments-search>svg{color:#94a3b8;flex-shrink:0;font-size:13px}.doctor-appointments-search input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-family:inherit;font-size:12px}.doctor-appointments-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.doctor-appointments-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.doctor-appointments-panel-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.doctor-appointments-panel-heading>div>span{letter-spacing:.9px;font-size:10px}.doctor-appointments-panel-heading h3{color:#172033;margin:4px 0 0;font-size:18px;line-height:1.3}.doctor-appointments-panel-heading>p{color:#94a3b8;margin:0;font-size:11px}.doctor-appointments-list{gap:12px;display:grid}.doctor-appointment-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:minmax(170px,.8fr) minmax(190px,1fr) minmax(180px,.9fr) minmax(190px,auto);align-items:center;gap:18px;padding:18px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.doctor-appointment-card:hover{border-color:#bfeaea;transform:translateY(-1px);box-shadow:0 10px 24px #1f37490f}.doctor-appointment-card-highlighted{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f,0 10px 24px #1f37490f}.doctor-appointment-patient{align-items:center;gap:11px;min-width:0;display:flex}.doctor-appointment-avatar{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:11px;font-weight:700;display:grid}.doctor-appointment-patient span,.doctor-appointment-details>span{color:#94a3b8;letter-spacing:.5px;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-appointment-patient h3{color:#172033;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 2px;font-size:13px;line-height:1.35;overflow:hidden}.doctor-appointment-patient small{color:#94a3b8;font-size:10px}.doctor-appointment-details{min-width:0}.doctor-appointment-details h4{color:#334155;margin:4px 0 8px;font-size:12px;line-height:1.35}.doctor-appointment-meta{flex-wrap:wrap;gap:6px 12px;display:flex}.doctor-appointment-meta span{color:#64748b;align-items:center;gap:6px;font-size:10px;display:inline-flex}.doctor-appointment-meta svg{color:#2ec4c7}.doctor-appointment-note{background:#f8fafc;border-radius:9px;align-items:flex-start;gap:8px;min-width:0;padding:10px;display:flex}.doctor-appointment-note>svg{color:#94a3b8;flex-shrink:0;margin-top:2px;font-size:10px}.doctor-appointment-note p{color:#718096;margin:0;font-size:10px;line-height:1.5}.doctor-appointment-note strong{color:#334155;margin-bottom:2px;font-size:10px;display:block}.doctor-appointment-card-actions{flex-direction:column;align-items:flex-end;gap:9px;min-width:0;display:flex}.doctor-appointment-status{border-radius:999px;padding:6px 9px;font-size:9px;font-weight:700}.doctor-appointment-status.confirmed{color:#15803d;background:#dcfce7}.doctor-appointment-status.pending,.doctor-appointment-status.waiting{color:#b45309;background:#fef3c7}.doctor-appointment-status.in-progress{color:#2563eb;background:#dbeafe}.doctor-appointment-status.completed{color:#64748b;background:#eef2f7}.doctor-appointment-status.cancelled{color:#dc2626;background:#fee2e2}.doctor-appointment-card-actions>div{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.doctor-appointment-card-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 9px;font-family:inherit;font-size:9px;font-weight:700;display:inline-flex}.doctor-appointment-card-actions button:hover{background:#f8fafc}.doctor-appointment-card-actions button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.doctor-appointment-card-actions button.complete{color:#15803d;background:#ecfdf3;border-color:#bbf7d0}.doctor-appointments-empty{text-align:center;padding:52px 20px}.doctor-appointments-empty>svg{color:#2ec4c7;margin-bottom:13px;font-size:34px}.doctor-appointments-empty h3{color:#172033;margin:0 0 7px;font-size:18px}.doctor-appointments-empty p{color:#8491a3;margin:0;font-size:12px}.doctor-appointment-details-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.doctor-appointment-details-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,650px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.doctor-appointment-details-header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.doctor-appointment-details-header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:16px;display:grid}.doctor-appointment-details-header>span{min-width:0}.doctor-appointment-details-header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.doctor-appointment-details-header h2{color:#172033;margin:3px 0 0;font-size:21px}.doctor-appointment-details-header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.doctor-appointment-details-patient{background:#effcfc;border:1px solid #cee;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:17px 21px 0;padding:14px;display:grid}.doctor-appointment-details-avatar{color:#fff;background:#2ec4c7;border-radius:50%;place-items:center;width:44px;height:44px;font-size:12px;font-weight:800;display:grid}.doctor-appointment-details-patient>div:nth-child(2){min-width:0}.doctor-appointment-details-patient>div:nth-child(2) span{color:#159c9f;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-appointment-details-patient h3{color:#172033;margin:3px 0;font-size:15px}.doctor-appointment-details-patient p{color:#64748b;margin:0;font-size:11px}.doctor-appointment-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 21px 0;display:grid}.doctor-appointment-details-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.doctor-appointment-details-grid span,.doctor-appointment-details-grid strong{display:block}.doctor-appointment-details-grid span{color:#94a3b8;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-appointment-details-grid strong{color:#334155;margin-top:5px;font-size:12px;line-height:1.45}.doctor-appointment-details-note{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:flex-start;gap:10px;margin:12px 21px 0;padding:13px;display:flex}.doctor-appointment-details-note>svg{color:#2ec4c7;flex-shrink:0;margin-top:2px}.doctor-appointment-details-note span{color:#94a3b8;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-appointment-details-note p{color:#475569;margin:5px 0 0;font-size:12px;line-height:1.55}.doctor-appointment-details-actions{justify-content:flex-end;gap:9px;padding:17px 21px 21px;display:flex}.doctor-appointment-details-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-appointment-details-actions button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}@media (width<=1200px){.doctor-appointment-card{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-appointment-card-actions{align-items:flex-start}.doctor-appointment-card-actions>div{justify-content:flex-start}}@media (width<=850px){.doctor-appointments-toolbar{flex-direction:column;align-items:stretch}.doctor-appointments-tabs{overflow-x:auto}.doctor-appointments-tabs button{white-space:nowrap;flex:1}.doctor-appointments-search{width:100%}}@media (width<=650px){.doctor-appointments-heading{align-items:flex-start}.doctor-appointments-heading h2{font-size:25px}.doctor-appointments-heading-icon{display:none}.doctor-appointments-tabs button{padding:0 10px}.doctor-appointments-panel{padding:16px}.doctor-appointments-panel-heading{flex-direction:column;align-items:flex-start;gap:7px}.doctor-appointment-card{grid-template-columns:1fr;gap:14px;padding:16px}.doctor-appointment-details-overlay{align-items:end;padding:10px}.doctor-appointment-details-modal{max-height:calc(100dvh - 20px)}.doctor-appointment-details-header{padding:17px}.doctor-appointment-details-patient{grid-template-columns:auto minmax(0,1fr);margin:14px 17px 0}.doctor-appointment-details-patient>.doctor-appointment-status{grid-column:2;justify-self:start}.doctor-appointment-details-grid{grid-template-columns:1fr;padding-left:17px;padding-right:17px}.doctor-appointment-details-note{margin-left:17px;margin-right:17px}.doctor-appointment-details-actions{padding:15px 17px 17px}.doctor-appointment-details-actions button{flex:1}}.doctor-appointments-tabs button span{font-size:10px}.doctor-appointments-search input{font-size:13px}.doctor-appointments-panel-heading>div>span{font-size:11px}.doctor-appointments-panel-heading>p,.doctor-appointment-avatar{font-size:12px}.doctor-appointment-patient span,.doctor-appointment-details>span{font-size:11px}.doctor-appointment-patient small{font-size:12px}.doctor-appointment-meta span,.doctor-appointment-note p{font-size:12px}.doctor-appointment-note strong{font-size:11px}.doctor-appointment-status{font-size:10px}.doctor-appointment-card-actions button{min-height:34px;font-size:12px}.doctor-appointments-heading p{font-size:15px}.doctor-appointments-tabs button{min-height:40px;padding:0 14px;font-size:13px}.doctor-appointments-search{min-height:44px}.doctor-appointments-panel{padding:20px}.doctor-appointment-card{padding:19px}.doctor-appointment-avatar{width:44px;height:44px}.doctor-appointment-patient h3{font-size:15px}.doctor-appointment-patient small,.doctor-appointment-meta span,.doctor-appointment-note p{font-size:12px}.doctor-appointment-details h4{font-size:15px}.doctor-appointment-card-actions button{min-height:35px;padding:0 12px;font-size:12px}.doctor-appointment-details-grid span,.doctor-appointment-details-note span{font-size:11px}.doctor-appointment-details-grid strong,.doctor-appointment-details-note p{font-size:13px}.doctor-appointment-details-actions button{min-height:42px;padding:0 18px;font-size:13px}@media (width<=650px){.doctor-appointments-heading h2{font-size:25px}.doctor-appointment-card{padding:17px}}.doctor-appointment-details-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.doctor-appointment-details-actions{z-index:2;background:#fff;position:sticky;bottom:0}.dental-chart{background:#fff;border:1px solid #e1e8ee;border-radius:16px;margin-top:18px;padding:20px}.dental-chart-heading span,.dental-chart-history>header span{color:#1aaeb1;letter-spacing:.8px;text-transform:uppercase;font-size:11px;font-weight:700}.dental-chart-heading h3,.dental-chart-history h4{color:#172033;margin:5px 0;font-size:20px}.dental-chart-heading p{color:#718096;margin:6px 0 0;font-size:12px;line-height:1.6}.dental-chart-development{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin:14px 0 0;padding:10px 12px;font-size:11px}.dental-chart-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:18px;margin-top:18px;display:grid}.dental-chart-board{background:#f8fafc;border:1px solid #e5ebef;border-radius:14px;min-width:0;padding:18px 12px;overflow-x:auto}.dental-arch{text-align:center;min-width:760px}.dental-arch+.dental-arch{margin-top:22px}.dental-arch h4{color:#64748b;text-transform:uppercase;margin:0 0 12px;font-size:11px}.dental-arch-row{grid-template-columns:repeat(16,minmax(38px,1fr));align-items:center;gap:4px;display:grid}.dental-arch.upper .dental-arch-position{transform:translateY(var(--curve))}.dental-arch.lower .dental-arch-position{transform:translateY(calc(var(--curve) * -1))}.dental-tooth{border:2px solid #0000;border-radius:12px;padding:3px;position:relative}.dental-tooth.selected{background:#eafafa;border-color:#2ec4c7}.dental-tooth-number{color:#475569;cursor:pointer;background:0 0;border:0;width:100%;padding:2px;font-size:10px;font-weight:700}.dental-tooth svg{width:100%;display:block;overflow:visible}.dental-tooth path:not(.whole-mark){stroke:#94a3b8;stroke-width:2px;cursor:pointer;transition:filter .15s,stroke .15s}.dental-tooth path:not(.whole-mark):hover{filter:brightness(.94);stroke:#159c9f}.dental-tooth .whole-mark{stroke-width:7px;pointer-events:none}.dental-tooth-mark-count{color:#fff;background:#159c9f;border-radius:50%;place-items:center;width:17px;height:17px;font-size:9px;font-weight:700;display:grid;position:absolute;top:-4px;right:-3px}.dental-chart-legend{background:#fff;border:1px solid #e5ebef;border-radius:13px;gap:9px;padding:14px;display:grid}.dental-chart-legend header{margin-bottom:3px}.dental-chart-legend header span,.dental-chart-legend header strong{display:block}.dental-chart-legend header span{color:#94a3b8;text-transform:uppercase;font-size:9px}.dental-chart-legend header strong{color:#172033;margin-top:3px;font-size:13px}.dental-chart-legend>div{grid-template-columns:auto 1fr auto;align-items:center;gap:9px;display:grid}.dental-chart-legend i{border:1px solid #0f172a1f;border-radius:5px;width:17px;height:17px}.dental-chart-legend strong,.dental-chart-legend small{display:block}.dental-chart-legend strong{color:#334155;font-size:11px}.dental-chart-legend small{color:#94a3b8;margin-top:2px;font-size:9px;line-height:1.3}.dental-chart-legend em{color:#b45309;font-size:9px}.dental-chart-editor{background:#fbfefe;border:1px solid #bfeaea;border-radius:14px;margin-top:18px;padding:18px}.dental-chart-editor>header{justify-content:space-between;align-items:center;display:flex}.dental-chart-editor>header span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:700}.dental-chart-editor h4{color:#172033;margin:3px 0;font-size:18px}.dental-chart-editor>header button{color:#64748b;cursor:pointer;background:0 0;border:0}.dental-chart-editor form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:15px;display:grid}.dental-chart-editor label,.dental-chart-editor fieldset{color:#334155;border:0;gap:6px;margin:0;padding:0;font-size:11px;font-weight:700;display:grid}.dental-chart-editor select,.dental-chart-editor textarea{width:100%;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:10px 11px}.dental-chart-editor small{color:#94a3b8;font-size:9px;font-weight:400}.dental-surface-options{flex-wrap:wrap;gap:6px;display:flex}.dental-surface-options button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;padding:8px 10px;font-size:10px}.dental-surface-options button.active{color:#159c9f;background:#eafafa;border-color:#2ec4c7}.dental-chart-editor form>p{color:#dc2626;grid-column:1/-1;margin:0;font-size:11px}.dental-chart-editor .primary{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:9px;width:fit-content;min-height:39px;padding:0 15px;font-weight:700}.dental-chart-history{margin-top:18px}.dental-chart-history>article{border-bottom:1px solid #edf2f5;justify-content:space-between;align-items:flex-start;gap:14px;padding:13px 0;display:flex}.dental-chart-history article strong,.dental-chart-history article span,.dental-chart-history article small{display:block}.dental-chart-history article strong{color:#334155;font-size:12px}.dental-chart-history article span{color:#159c9f;margin-top:3px;font-size:10px}.dental-chart-history article small{color:#94a3b8;margin-top:4px;font-size:9px}.dental-chart-history article p{color:#475569;background:#f8fafc;border-radius:8px;margin:8px 0 0;padding:9px;font-size:11px}.dental-chart-history article em{color:#7c3aed;margin-top:5px;font-size:9px;display:block}.dental-chart-history article button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:700}.dental-chart-empty{color:#94a3b8;font-size:12px}@media (width<=900px){.dental-chart-layout{grid-template-columns:1fr}.dental-chart-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.dental-chart-legend header{grid-column:1/-1}}@media (width<=650px){.dental-chart{padding:15px}.dental-chart-editor form,.dental-chart-legend{grid-template-columns:1fr}.dental-chart-history>article{flex-direction:column}.dental-chart-history article button{align-self:flex-start}}.dental-chart-legend-simple{gap:14px}.dental-chart-legend-simple section{gap:8px;display:grid}.dental-chart-legend-simple h4{color:#64748b;letter-spacing:.5px;text-transform:uppercase;margin:0;font-size:10px}.dental-chart-legend-simple section>div{color:#334155;align-items:center;gap:9px;font-size:11px;font-weight:600;display:flex}.dental-chart-editor .dental-clinical-type,.dental-chart-editor .dental-editor-surfaces,.dental-chart-editor .wide,.dental-editor-actions{grid-column:1/-1}.dental-clinical-type>div{gap:6px;display:flex}.dental-chart-editor .dental-clinical-type button,.dental-chart-editor .dental-whole-choice,.dental-editor-actions button{color:#64748b;min-height:38px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:0 13px;font-weight:700}.dental-chart-editor .dental-clinical-type button.active,.dental-chart-editor .dental-whole-choice.active{color:#0f7f83;background:#eafafa;border-color:#2ec4c7}.dental-surface-diagram{grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:min(100%,380px);display:grid}.dental-surface-diagram button{color:#475569;min-width:0;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:4px;font-size:10px;font-weight:700}.dental-surface-diagram button.top{grid-area:1/2}.dental-surface-diagram button.left{grid-area:2/1}.dental-surface-diagram button.center{grid-area:2/2}.dental-surface-diagram button.right{grid-area:2/3}.dental-surface-diagram button.bottom{grid-area:3/2}.dental-surface-diagram button.active{color:#0f7f83;background:#dff7f7;border-color:#2ec4c7}.dental-editor-actions{justify-content:flex-end;gap:8px;display:flex}.dental-chart-editor .dental-whole-choice{width:fit-content}@media (width<=650px){.dental-chart-editor .dental-clinical-type,.dental-chart-editor .dental-editor-surfaces,.dental-chart-editor .wide,.dental-editor-actions{grid-column:1}.dental-editor-actions button{flex:1}}[data-theme=dark] :is(.doctor-page,.admin-page) .dental-chart-legend-simple :is(h4,section>div){color:#cbd5e1}[data-theme=dark] .doctor-page .dental-chart-editor :is(.dental-clinical-type button,.dental-surface-diagram button,.dental-whole-choice,.dental-editor-actions button:not(.primary)){color:#cbd5e1;background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .dental-chart-editor :is(.dental-clinical-type button.active,.dental-surface-diagram button.active,.dental-whole-choice.active){color:#67e8f9;background:var(--portal-accent-soft);border-color:var(--portal-accent)}.clinical-images{box-sizing:border-box;color:#203f3d;background:#fff;border:1px solid #dbe8e6;border-radius:18px;width:100%;padding:24px;box-shadow:0 8px 25px #1246430f}.clinical-images-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.clinical-images-heading span{color:#15847d;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:.76rem;font-weight:800;display:flex}.clinical-images-heading h3{margin:5px 0;font-size:1.35rem}.clinical-images-heading p,.clinical-images-heading>small{color:#6a7f7d;margin:0}.clinical-image-upload{background:#f5faf9;border:1px solid #d8e9e6;border-radius:14px;margin-bottom:22px;padding:18px}.clinical-image-upload-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.clinical-image-upload label>span{margin-bottom:7px;font-size:12px;font-weight:700;display:block}.clinical-image-upload select,.clinical-image-upload textarea{box-sizing:border-box;width:100%;color:inherit;background:#fff;border:1px solid #cbdedb;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:400;line-height:1.45}.clinical-image-upload textarea::placeholder{font:inherit;color:inherit;opacity:.65}.clinical-image-upload label small{color:#728784;margin-top:5px;font-size:11px;font-weight:400;line-height:1.45;display:block}.clinical-image-picker{cursor:pointer;background:#fff;border:1px dashed #58aaa3;border-radius:12px;align-items:center;gap:12px;margin-top:16px;padding:14px;display:flex!important}.clinical-image-picker>svg{color:#16857e;font-size:1.7rem}.clinical-image-picker input{opacity:0;width:1px;height:1px;position:absolute}.clinical-image-picker strong,.clinical-image-picker small{display:block}.clinical-image-picker strong{font-size:12px;font-weight:700;line-height:1.45}.clinical-image-picker small{font-size:11px;font-weight:400;line-height:1.45}.clinical-image-local-preview{background:#e8f1f0;border-radius:12px;width:min(280px,100%);height:170px;margin-top:14px;position:relative;overflow:hidden}.clinical-image-local-preview img{object-fit:contain;width:100%;height:100%}.clinical-image-local-preview button{border:0;border-radius:50%;width:32px;height:32px;position:absolute;top:8px;right:8px}.clinical-image-submit{color:#fff;background:#137c76;border:0;border-radius:10px;margin-top:14px;padding:11px 18px;font-weight:800}.clinical-image-submit:disabled{opacity:.5}.clinical-image-error{color:#a33333;background:#fff0f0;border-radius:9px;padding:10px 12px}.clinical-image-gallery{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:15px;display:grid}.clinical-image-card{text-align:left;cursor:pointer;color:inherit;background:#fff;border:1px solid #dce9e7;border-radius:14px;padding:0;position:relative;overflow:hidden}.clinical-image-card.archived{opacity:.78}.clinical-image-thumb{color:#6ba9a4;background:#e9f3f1;justify-content:center;align-items:center;height:155px;font-size:2rem;display:flex}.clinical-image-thumb img{object-fit:cover;width:100%;height:100%}.clinical-image-card-copy{padding:13px;display:block}.clinical-image-card-copy small,.clinical-image-card-copy strong,.clinical-image-card-copy span{display:block}.clinical-image-card-copy small{color:#16857e;font-weight:800}.clinical-image-card-copy strong{white-space:nowrap;text-overflow:ellipsis;margin:5px 0;overflow:hidden}.clinical-image-card-copy span{color:#738481;font-size:.78rem}.clinical-image-card em{color:#16724d;background:#daf3e7;border-radius:999px;padding:4px 9px;font-size:.68rem;font-style:normal;font-weight:800;position:absolute;top:10px;right:10px}.clinical-image-card.archived em{color:#596563;background:#e7e9e9}.clinical-images-empty{text-align:center;color:#718582;border:1px dashed #cbdedb;border-radius:14px;padding:38px}.clinical-images-empty svg{font-size:2rem}.clinical-images-empty h4{margin:8px 0}.clinical-images-empty p{margin:0}.clinical-image-viewer-backdrop{z-index:1200;background:#0a1e1db3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.clinical-image-viewer{background:#fff;border-radius:18px;width:min(960px,96vw);max-height:94vh;padding:20px;overflow:auto}.clinical-image-viewer>header{justify-content:space-between;align-items:center;display:flex}.clinical-image-viewer header h3{margin:3px 0 12px}.clinical-image-viewer header button{background:#eef5f4;border:0;border-radius:50%;width:38px;height:38px}.clinical-image-viewer-canvas{color:#fff;background:#12201f;border-radius:13px;place-items:center;height:min(62vh,620px);display:grid;overflow:hidden}.clinical-image-viewer-canvas img{object-fit:contain;width:100%;height:100%}.clinical-image-viewer-meta{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.clinical-image-viewer-meta p{background:#f3f8f7;border-radius:10px;margin:0;padding:10px}.clinical-image-viewer-meta span,.clinical-image-viewer-meta strong{display:block}.clinical-image-viewer-meta span{color:#748784;font-size:.72rem}.clinical-image-caption{background:#f6f8f8;border-left:3px solid #16857e;padding:14px}.clinical-image-viewer footer{text-align:right}.clinical-image-viewer footer button{color:#a23434;background:#fff;border:1px solid #c96a6a;border-radius:9px;padding:9px 13px}.admin-clinical-workspace>.clinical-images{grid-column:1/-1}@media (width<=760px){.clinical-images{padding:16px}.clinical-images-heading{display:block}.clinical-images-heading>small{margin-top:8px;display:block}.clinical-image-upload-fields{grid-template-columns:1fr}.clinical-image-viewer-meta{grid-template-columns:1fr 1fr}.clinical-image-gallery{grid-template-columns:1fr}}.clinical-image-viewer-canvas{box-sizing:border-box;background:#182321;width:100%;height:clamp(260px,62vh,680px);max-height:70vh;padding:12px;overflow:hidden}.clinical-image-viewer-canvas img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;max-height:100%;display:block}@media (width<=760px){.clinical-image-viewer-backdrop{padding:10px}.clinical-image-viewer{box-sizing:border-box;width:100%;max-height:96vh;padding:14px}.clinical-image-viewer-canvas{height:min(58vh,520px);max-height:58vh;padding:8px}}.clinical-image-viewer{max-height:90vh;overflow-y:auto}.clinical-image-viewer__image-stage{box-sizing:border-box;background:#182321;border-radius:13px;justify-content:center;align-items:center;width:100%;padding:12px;display:flex;overflow:auto}.clinical-image-viewer__full-image{object-fit:contain;object-position:center;aspect-ratio:auto;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:65vh;display:block;position:static}@media (width<=760px){.clinical-image-viewer__image-stage{padding:8px}.clinical-image-viewer__full-image{max-height:58vh}}.doctor-records-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.doctor-records-heading>div:first-child>span,.doctor-records-panel-heading>div>span,.doctor-full-record-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.doctor-records-heading h2,.doctor-full-record-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.doctor-records-heading p,.doctor-full-record-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.doctor-records-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.doctor-records-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.doctor-records-summary article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:13px;min-width:0;min-height:94px;padding:16px;display:flex}.doctor-records-summary article>div{border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:16px;display:grid}.doctor-records-summary .teal{color:#16aaad;background:#e8fbfb}.doctor-records-summary .blue{color:#2563eb;background:#edf4ff}.doctor-records-summary .orange{color:#f59e0b;background:#fff8e8}.doctor-records-summary .purple{color:#9333ea;background:#f6efff}.doctor-records-summary p{min-width:0;margin:0}.doctor-records-summary strong,.doctor-records-summary span,.doctor-records-summary small{display:block}.doctor-records-summary strong{color:#111827;margin-bottom:2px;font-size:24px}.doctor-records-summary span{color:#64748b;font-size:12px;font-weight:600}.doctor-records-summary small{color:#94a3b8;margin-top:3px;font-size:11px}.doctor-records-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.doctor-records-filters{background:#fff;border:1px solid #e5ebef;border-radius:12px;gap:6px;padding:5px;display:flex}.doctor-records-filters button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:38px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:700}.doctor-records-filters button:hover{background:#f3fbfb}.doctor-records-filters button.active{color:#159c9f;background:#eafafa}.doctor-records-search{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,330px);min-height:44px;padding:0 13px;display:flex}.doctor-records-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.doctor-records-search>svg{color:#94a3b8;font-size:13px}.doctor-records-search input{color:#172033;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-family:inherit;font-size:13px}.doctor-records-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.doctor-directory-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.doctor-records-panel-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.doctor-records-panel-heading h3{color:#172033;margin:4px 0 0;font-size:18px}.doctor-records-panel-heading>p{color:#94a3b8;margin:0;font-size:12px}.doctor-directory-list{gap:12px;display:grid}.doctor-directory-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:minmax(220px,1.1fr) minmax(220px,1.2fr) minmax(200px,1fr) minmax(250px,1.3fr) minmax(124px,auto);align-items:center;gap:16px;padding:17px;transition:border-color .2s,box-shadow .2s;display:grid}.doctor-directory-card:hover{border-color:#bfeaea;box-shadow:0 10px 24px #1f37490f}.doctor-directory-identity{align-items:center;gap:11px;min-width:0;display:flex}.doctor-record-avatar{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:grid}.doctor-directory-identity p{min-width:0;margin:0}.doctor-directory-identity small,.doctor-directory-detail small{color:#94a3b8;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:700;display:block}.doctor-directory-identity strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;font-size:15px;display:block;overflow:hidden}.doctor-directory-identity em{color:#94a3b8;margin-top:3px;font-size:11px;font-style:normal;display:block}.doctor-directory-detail{min-width:0}.doctor-directory-detail strong,.doctor-directory-detail span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doctor-directory-detail strong{color:#334155;font-size:13px}.doctor-directory-detail span{color:#64748b;margin-top:4px;font-size:11px}.doctor-directory-detail span svg{color:#2ec4c7;margin-right:4px}.doctor-record-status{white-space:nowrap;border-radius:999px;width:fit-content;padding:6px 9px;font-size:10px;font-weight:700}.doctor-record-status.completed,.doctor-record-status.active{color:#15803d;background:#dcfce7}.doctor-record-status.follow-up{color:#b45309;background:#fef3c7}.doctor-record-status.in-treatment{color:#2563eb;background:#dbeafe}.doctor-record-status.pending{color:#dc2626;background:#fee2e2}.doctor-directory-actions{flex-direction:column;justify-self:end;align-items:flex-end;gap:8px;min-width:124px;display:flex}.doctor-view-patient{color:#159c9f;white-space:nowrap;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;justify-content:center;align-items:center;gap:6px;width:fit-content;min-height:36px;padding:0 11px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-view-patient:hover{background:#ddf8f8}.doctor-records-empty{text-align:center;padding:52px 20px}.doctor-records-empty>svg{color:#2ec4c7;margin-bottom:13px;font-size:34px}.doctor-records-empty h3{color:#172033;margin:0 0 7px;font-size:18px}.doctor-records-empty p{color:#8491a3;margin:0;font-size:12px}.doctor-full-record{gap:18px;display:grid}.doctor-record-tabs{scrollbar-width:thin;background:#fff;border:1px solid #e5ebef;border-radius:14px;gap:6px;padding:6px;display:flex;overflow-x:auto}.doctor-record-tabs button{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:9px;flex:1 0 auto;min-height:42px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:700}.doctor-record-tabs button:not([aria-selected=true]):hover{color:#138f92;background:#eafafa}.doctor-record-tabs button[aria-selected=true]{color:#126e72;background:#eafafa;border-color:#bfeaea;box-shadow:inset 0 -3px #159c9f}.doctor-record-tabs button:focus-visible{outline-offset:2px;outline:2px solid #159c9f}.doctor-record-section-card[hidden]{display:none!important}@media print{.doctor-record-tabs{display:none!important}.doctor-record-section-card[hidden]{display:block!important}}html[data-theme=dark] .doctor-page .doctor-record-tabs{border-color:var(--portal-border);background:var(--portal-elevated)}html[data-theme=dark] .doctor-page .doctor-record-tabs button{color:var(--portal-secondary);background:0 0}html[data-theme=dark] .doctor-page .doctor-record-tabs button:not([aria-selected=true]):hover{color:var(--portal-primary);border-color:var(--portal-border);background:var(--portal-accent-soft)}html[data-theme=dark] .doctor-page .doctor-record-tabs button[aria-selected=true]{color:var(--portal-accent);border-color:var(--portal-accent);background:color-mix(in srgb, var(--portal-accent) 22%, var(--portal-elevated));box-shadow:inset 0 -3px var(--portal-accent)}html[data-theme=dark] .doctor-page .doctor-record-tabs button:focus-visible{outline-color:var(--portal-accent)}.doctor-print-header{display:none}.doctor-full-record-heading{background:linear-gradient(135deg,#fff 48%,#effcfc 100%);border:1px solid #dcebec;border-radius:16px;grid-template-columns:minmax(300px,1.1fr) minmax(420px,1fr);align-items:end;gap:24px;padding:62px 24px 24px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 28px #1f37490f}.doctor-record-back{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex;position:absolute;top:18px;left:24px}.doctor-record-hero-main{align-items:center;gap:16px;min-width:0;display:flex}.doctor-record-hero-avatar{color:#fff;background:#2ec4c7;border:5px solid #fff;border-radius:18px;flex-shrink:0;place-items:center;width:66px;height:66px;font-size:20px;font-weight:800;display:grid;box-shadow:0 8px 20px #2ec4c738}.doctor-record-hero-identity{min-width:0}.doctor-record-hero-identity>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:800}.doctor-record-hero-identity>div{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.doctor-record-hero-identity h2{color:#172033;margin:4px 0;font-size:26px;line-height:1.2}.doctor-record-hero-identity p{color:#64748b;margin:0;font-size:13px}.doctor-record-hero-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;display:grid}.doctor-record-hero-details>div{background:#ffffffdb;border:1px solid #e5ebef;border-radius:12px;align-items:flex-start;gap:9px;min-width:0;padding:13px;display:flex}.doctor-record-hero-details>div.upcoming{background:#eafafa;border-color:#bfeaea}.doctor-record-hero-details>div>span{color:#159c9f;background:#eafafa;border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.doctor-record-hero-details>div.upcoming>span{color:#fff;background:#2ec4c7}.doctor-record-hero-details p{min-width:0;margin:0}.doctor-record-hero-details small,.doctor-record-hero-details strong{display:block}.doctor-record-hero-details small{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.doctor-record-hero-details strong{color:#334155;text-overflow:ellipsis;margin-top:4px;font-size:12px;line-height:1.4;overflow:hidden}.doctor-full-record-actions{background:#fff;border:1px solid #e5ebef;border-radius:14px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:14px 16px;display:flex}.doctor-full-record-actions>div{min-width:180px;margin-right:auto}.doctor-full-record-actions>div span,.doctor-full-record-actions>div small{display:block}.doctor-full-record-actions>div span{color:#172033;font-size:14px;font-weight:800}.doctor-full-record-actions>div small{color:#94a3b8;margin-top:2px;font-size:11px}.doctor-full-record-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-full-record-actions button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7;box-shadow:0 6px 14px #2ec4c733}.doctor-full-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.doctor-record-section-card{background:#fff;border:1px solid #e5ebef;border-radius:15px;overflow:hidden}.doctor-record-section-heading{background:linear-gradient(90deg,#fff,#fbfefe);border-bottom:1px solid #edf1f4;align-items:center;gap:12px;min-height:72px;padding:14px 18px;display:flex}.doctor-record-section-heading>div{color:#159c9f;background:#eafafa;border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:14px;display:grid}.doctor-record-section-heading small{color:#1aaeb1;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.doctor-record-section-heading h3{color:#172033;margin:3px 0 0;font-size:18px}.doctor-information-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 18px 18px;display:grid}.doctor-information-item{background:#f8fafc;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:10px;min-width:0;padding:12px;display:flex}.doctor-information-item:nth-child(4n+2),.doctor-information-item:nth-child(4n+3){background:#fbfefe}.doctor-information-item>span,.doctor-clinical-item>span{color:#159c9f;background:#eafafa;border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.doctor-information-item p,.doctor-clinical-item p{min-width:0;margin:0}.doctor-information-item small,.doctor-clinical-item small{color:#94a3b8;letter-spacing:.3px;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.doctor-information-item strong,.doctor-clinical-item strong{color:#334155;overflow-wrap:anywhere;margin-top:4px;font-size:12px;font-weight:600;line-height:1.55;display:block}.doctor-clinical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 18px 18px;display:grid}.doctor-clinical-item{background:#f8fafc;border:1px solid #edf1f4;border-radius:11px;align-items:flex-start;gap:10px;min-width:0;padding:13px;display:flex}.doctor-clinical-item.notes,.doctor-clinical-item.treatment-plan,.doctor-clinical-item.diagnosis{grid-column:1/-1}.doctor-clinical-item.allergies{background:#fff5f5;border-color:#fecaca}.doctor-clinical-item.allergies>span{color:#dc2626;background:#fee2e2}.doctor-clinical-item.allergies small{color:#dc2626}.doctor-clinical-item.diagnosis,.doctor-clinical-item.treatment-plan{background:#effcfc;border-color:#cee}.doctor-clinical-item.diagnosis strong,.doctor-clinical-item.treatment-plan strong{color:#176f73;font-weight:700}.doctor-clinical-item.notes{background:#f5f7fa}.doctor-clinical-item.notes strong{color:#475569}.doctor-treatment-history-card{grid-column:1/-1}.doctor-treatment-table{gap:10px;padding:14px 18px 18px;display:grid}.doctor-treatment-table-header,.doctor-treatment-table-row{grid-template-columns:100px minmax(140px,1fr) 140px minmax(220px,1.5fr) 90px;align-items:center;gap:14px;display:grid}.doctor-treatment-table-header{color:#94a3b8;text-transform:uppercase;padding:0 14px 3px;font-size:10px;font-weight:700}.doctor-treatment-table-row{color:#64748b;background:#fff;border:1px solid #e5ebef;border-radius:12px;padding:15px 14px 15px 18px;font-size:12px;position:relative;box-shadow:0 4px 12px #1f374909}.doctor-treatment-table-row:before{content:"";background:#2ec4c7;border-radius:0 3px 3px 0;width:3px;position:absolute;top:12px;bottom:12px;left:0}.doctor-treatment-table-row>strong{color:#334155;font-size:12px}.doctor-treatment-table-row p{margin:0}.doctor-treatment-table-row p strong,.doctor-treatment-table-row p small{display:block}.doctor-treatment-table-row p strong{color:#334155;font-size:12px}.doctor-treatment-table-row p small{color:#94a3b8;margin-top:4px;font-size:11px;line-height:1.45}.doctor-appointments-card{grid-column:1/-1}.doctor-record-appointment-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 18px 18px;display:grid}.doctor-record-appointment-list>div{background:#f8fafc;border:1px solid #e5ebef;border-radius:12px;align-items:center;gap:12px;min-width:0;padding:15px;display:flex}.doctor-record-appointment-list>div.upcoming{background:#effcfc;border-color:#bfeaea;box-shadow:0 6px 16px #2ec4c714}.doctor-appointment-summary-icon{background:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:34px;height:34px;color:#64748b!important;font-size:12px!important;display:grid!important}.doctor-record-appointment-list>div.upcoming .doctor-appointment-summary-icon{background:#2ec4c7;color:#fff!important}.doctor-record-appointment-list p{min-width:0;margin:0}.doctor-record-appointment-list p>span,.doctor-record-appointment-list strong{display:block}.doctor-record-appointment-list p>span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.doctor-record-appointment-list strong{color:#334155;margin-top:5px;font-size:13px;line-height:1.45}.doctor-clinical-note-history-card{grid-column:1/-1}.doctor-clinical-note-history{gap:12px;padding:16px 18px 18px;display:grid}.doctor-clinical-note-entry{background:#fff;border:1px solid #dcebec;border-radius:12px;overflow:hidden}.doctor-clinical-note-entry-heading{background:#f4fbfb;border-bottom:1px solid #e5ebef;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.doctor-clinical-note-entry-heading>div span,.doctor-clinical-note-entry-heading>div strong{display:block}.doctor-clinical-note-entry-heading>div span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.doctor-clinical-note-entry-heading>div strong{color:#172033;margin-top:3px;font-size:14px}.doctor-clinical-note-entry-heading>small{color:#64748b;font-size:11px;font-weight:700}.doctor-clinical-note-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 15px 15px;display:grid}.doctor-clinical-note-entry-grid>div{background:#f8fafc;border-radius:9px;min-width:0;padding:11px 12px}.doctor-clinical-note-entry-grid>div.follow-up{background:#effcfc;border:1px solid #cee}.doctor-clinical-note-entry-grid span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.doctor-clinical-note-entry-grid p{color:#475569;white-space:pre-wrap;margin:5px 0 0;font-size:12px;line-height:1.55}.doctor-clinical-note-empty{color:#94a3b8;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:30px 18px;display:flex}.doctor-clinical-note-empty>svg{color:#2ec4c7;font-size:22px}.doctor-clinical-note-empty p{margin:0;font-size:12px}.doctor-record-status.planned{color:#475569;background:#e2e8f0}.doctor-record-status.in-progress{color:#2563eb;background:#dbeafe}.doctor-record-status.follow-up-required{color:#b45309;background:#fef3c7}.doctor-treatment-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.doctor-treatment-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,720px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.doctor-treatment-modal-header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.doctor-treatment-modal-header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:16px;display:grid}.doctor-treatment-modal-header>span{min-width:0}.doctor-treatment-modal-header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.doctor-treatment-modal-header h2{color:#172033;margin:3px 0 0;font-size:21px}.doctor-treatment-modal-header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.doctor-treatment-patient{background:#effcfc;border:1px solid #cee;border-radius:11px;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin:17px 21px 0;padding:13px;display:grid}.doctor-treatment-patient span,.doctor-treatment-patient strong,.doctor-treatment-patient small{display:block}.doctor-treatment-patient span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:700}.doctor-treatment-patient strong{color:#334155;margin-top:4px;font-size:12px}.doctor-treatment-patient small{color:#64748b;margin-top:3px;font-size:10px}.doctor-treatment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:17px 21px 21px;display:grid}.doctor-treatment-form label{min-width:0}.doctor-treatment-form label:nth-child(n+3){grid-column:1/-1}.doctor-treatment-form label>span{color:#475569;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.doctor-treatment-form input,.doctor-treatment-form select,.doctor-treatment-form textarea{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:none;padding:0 12px;font-size:13px}.doctor-treatment-form textarea{resize:vertical;min-height:68px;padding-top:10px}.doctor-treatment-form input:focus,.doctor-treatment-form select:focus,.doctor-treatment-form textarea:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.doctor-treatment-form [aria-invalid=true]{border-color:#ef4444}.doctor-treatment-form label>small{color:#dc2626;margin-top:4px;font-size:10px;display:block}.doctor-treatment-form footer{grid-column:1/-1;justify-content:flex-end;gap:9px;padding-top:2px;display:flex}.doctor-treatment-form footer button,.doctor-treatment-success button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.doctor-treatment-form footer button.primary,.doctor-treatment-success button{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.doctor-treatment-success{text-align:center;flex-direction:column;align-items:center;padding:42px 28px;display:flex}.doctor-treatment-success>div{color:#fff;background:#2ec4c7;border-radius:50%;place-items:center;width:56px;height:56px;margin-bottom:14px;font-size:19px;display:grid;box-shadow:0 10px 24px #2ec4c73d}.doctor-treatment-success>span{color:#159c9f;letter-spacing:.8px;text-transform:uppercase;font-size:10px;font-weight:800}.doctor-treatment-success h2{color:#172033;margin:7px 0;font-size:22px}.doctor-treatment-success p{color:#64748b;max-width:420px;margin:0 0 20px;font-size:13px;line-height:1.6}@media (width<=1200px){.doctor-records-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-directory-card{grid-template-columns:minmax(190px,1.1fr) minmax(180px,1fr) minmax(180px,1fr) 124px}.doctor-directory-card>.doctor-directory-detail:nth-of-type(4){display:none}}@media (width<=900px){.doctor-directory-card{grid-template-columns:minmax(0,1fr) auto;width:100%;max-width:100%;overflow:hidden}.doctor-directory-card>.doctor-directory-detail:nth-of-type(2),.doctor-directory-card>.doctor-directory-detail:nth-of-type(4){display:none}.doctor-directory-identity,.doctor-directory-card>.doctor-directory-detail:nth-of-type(3){grid-column:1;min-width:0}.doctor-directory-actions{grid-area:1/2/span 2;align-self:center}.doctor-view-patient{min-height:40px;padding-left:16px;padding-right:16px}.doctor-full-record-heading,.doctor-full-record-grid{grid-template-columns:1fr}.doctor-treatment-history-card,.doctor-appointments-card{grid-column:auto}}@media (width<=800px){.doctor-records-toolbar{flex-direction:column;align-items:stretch}.doctor-records-filters{overflow-x:auto}.doctor-records-filters button{white-space:nowrap;flex:1}.doctor-records-search{width:100%}.doctor-record-hero-details{grid-template-columns:1fr}}@media (width<=650px){.doctor-records-heading{align-items:flex-start}.doctor-records-heading h2{font-size:25px}.doctor-records-heading-icon{display:none}.doctor-records-summary{grid-template-columns:1fr}.doctor-directory-panel{width:100%;max-width:100%;padding:16px;overflow:hidden}.doctor-records-panel-heading{flex-direction:column;align-items:flex-start;gap:7px}.doctor-directory-card{grid-template-columns:minmax(0,1fr);gap:12px 16px;width:100%;max-width:100%;padding:15px;display:grid;overflow:hidden}.doctor-directory-identity{grid-column:1;min-width:0}.doctor-directory-card>.doctor-directory-detail{grid-column:1;min-width:0;display:block!important}.doctor-directory-actions{flex-flow:wrap;grid-area:auto/1;justify-content:space-between;justify-self:stretch;align-items:center;width:100%;min-width:0}.doctor-view-patient{width:fit-content;max-width:180px;min-height:42px;padding:0 16px}.doctor-full-record-actions{justify-content:flex-start}.doctor-full-record-actions>div{width:100%;margin:0 0 4px}.doctor-full-record-actions button{flex:1}.doctor-information-grid,.doctor-clinical-grid,.doctor-record-appointment-list{grid-template-columns:1fr}.doctor-full-record-heading{gap:18px;padding:62px 16px 16px}.doctor-record-back{top:16px;left:16px}.doctor-record-hero-avatar{border-radius:14px;width:54px;height:54px;font-size:17px}.doctor-record-hero-identity h2{font-size:22px}.doctor-clinical-item.notes,.doctor-clinical-item.treatment-plan,.doctor-clinical-item.diagnosis{grid-column:auto}.doctor-treatment-table-header{display:none}.doctor-treatment-table-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.doctor-treatment-table-row>[data-label]:before{color:#94a3b8;letter-spacing:.3px;text-transform:uppercase;content:attr(data-label);margin-bottom:4px;font-size:9px;font-weight:700;display:block}.doctor-treatment-table-row p{grid-column:1/-1}.doctor-clinical-note-entry-grid{grid-template-columns:1fr}.doctor-clinical-note-entry-heading{flex-direction:column;align-items:flex-start}.doctor-treatment-patient,.doctor-treatment-form{grid-template-columns:1fr}.doctor-treatment-form label,.doctor-treatment-form label:nth-child(n+3),.doctor-treatment-form footer{grid-column:1}.doctor-treatment-modal-overlay{align-items:end;padding:10px}.doctor-treatment-modal{max-height:calc(100dvh - 20px)}.doctor-treatment-form footer button{flex:1}}.doctor-records-heading p{font-size:15px}.doctor-records-summary strong{font-size:25px}.doctor-records-summary span{font-size:13px}.doctor-records-summary small{font-size:11px}.doctor-records-search input,.doctor-records-filter button{font-size:13px}.doctor-records-filter button{min-height:40px;padding-left:14px;padding-right:14px}.doctor-records-panel-heading>div>span{font-size:12px}.doctor-directory-card{padding:19px}.doctor-directory-identity small,.doctor-directory-detail small{font-size:11px}.doctor-directory-identity strong{font-size:15px}.doctor-directory-detail strong{font-size:14px}.doctor-directory-detail span{font-size:12px}.doctor-view-patient{min-height:40px;padding:0 16px;font-size:13px}.doctor-record-hero-identity>span{font-size:12px}.doctor-record-hero-identity h2{font-size:28px}.doctor-record-hero-identity p{font-size:14px}.doctor-record-hero-details small{font-size:11px}.doctor-record-hero-details strong{font-size:13px}.doctor-full-record-actions>div span{font-size:15px}.doctor-full-record-actions>div small{font-size:12px}.doctor-full-record-actions button{min-height:40px;padding:0 16px;font-size:13px}.doctor-record-section-heading small{font-size:12px}.doctor-record-section-heading h3{font-size:18px}.doctor-information-item small,.doctor-clinical-item small{font-size:11px}.doctor-information-item strong,.doctor-clinical-item strong{font-size:13px}.doctor-treatment-table-header{font-size:11px}.doctor-treatment-table-row,.doctor-treatment-table-row>strong,.doctor-treatment-table-row p strong{font-size:13px}.doctor-treatment-table-row p small{font-size:12px}.doctor-record-appointment-list p>span,.doctor-clinical-note-entry-grid span{font-size:11px}.doctor-record-appointment-list strong,.doctor-clinical-note-entry-grid p{font-size:13px}.doctor-clinical-note-entry-heading>div span{font-size:11px}.doctor-clinical-note-entry-heading>div strong{font-size:15px}.doctor-clinical-note-entry-heading>small,.doctor-treatment-patient span,.doctor-treatment-form label>span{font-size:12px}.doctor-treatment-patient strong,.doctor-treatment-form input,.doctor-treatment-form select,.doctor-treatment-form textarea{font-size:14px}.doctor-treatment-form footer button{min-height:42px;padding:0 18px;font-size:13px}@media print{@page{size:A4;margin:14mm}body{color:#172033!important;background:#fff!important}.doctor-layout{min-height:0;background:#fff!important;display:block!important}.doctor-sidebar-wrapper,.doctor-topbar,.doctor-full-record-actions,.doctor-record-back,.doctor-treatment-modal-overlay{display:none!important}.doctor-content,.doctor-page{width:100%!important;min-height:0!important;padding:0!important}.doctor-full-record{color:#172033;background:#fff;display:block}.doctor-print-header{border-bottom:2px solid #172033;margin-bottom:16px;padding-bottom:10px;display:block}.doctor-print-header h1{color:#172033;margin:0;font-size:20px}.doctor-print-header p{color:#475569;margin:4px 0 0;font-size:11px}.doctor-full-record-heading{box-shadow:none;border:1px solid #94a3b8;margin-bottom:14px;padding:14px;display:block;overflow:visible;background:#fff!important}.doctor-record-hero-main{margin-bottom:10px}.doctor-record-hero-avatar{color:#172033;box-shadow:none;background:#fff;border:1px solid #64748b}.doctor-record-hero-details{grid-template-columns:repeat(3,1fr)}.doctor-record-hero-details>div,.doctor-record-hero-details>div.upcoming{background:#fff;border-color:#cbd5e1;padding:8px}.doctor-full-record-grid{display:block}.doctor-record-section-card{break-inside:avoid;box-shadow:none;background:#fff;border-color:#94a3b8;border-radius:0;margin-bottom:12px}.doctor-record-section-heading{background:#fff;min-height:0;padding:8px 10px}.doctor-record-section-heading>div{display:none}.doctor-record-section-heading h3{font-size:14px}.doctor-information-grid,.doctor-clinical-grid,.doctor-record-appointment-list,.doctor-clinical-note-history,.doctor-treatment-table{padding:10px}.doctor-information-item,.doctor-clinical-item,.doctor-record-appointment-list>div,.doctor-record-appointment-list>div.upcoming,.doctor-clinical-note-entry-grid>div{box-shadow:none;background:#fff;border-color:#d1d5db}.doctor-treatment-table-header{display:grid}.doctor-treatment-table-header,.doctor-treatment-table-row{grid-template-columns:70px 110px 100px minmax(180px,1fr) 74px;gap:8px}.doctor-treatment-table-row{break-inside:avoid;box-shadow:none;border-color:#cbd5e1}.doctor-treatment-table-row:before{display:none}.doctor-clinical-note-entry{break-inside:avoid;border-color:#cbd5e1}.doctor-clinical-note-entry-heading{background:#fff}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.doctor-treatment-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.doctor-treatment-form footer{z-index:2;background:#fff;position:sticky;bottom:0}.doctor-encounter-timeline-card,.doctor-patient-instructions-card{grid-column:1/-1}.doctor-encounter-timeline{gap:0;padding:4px 20px 18px;display:grid}.doctor-encounter-timeline article{border-bottom:1px solid #edf1f4;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:15px 0;display:grid}.doctor-encounter-timeline time{color:#159c9f;font-size:12px;font-weight:800}.doctor-encounter-timeline strong,.doctor-encounter-timeline span,.doctor-encounter-timeline small{display:block}.doctor-encounter-timeline strong{color:#172033;font-size:14px}.doctor-encounter-timeline span,.doctor-encounter-timeline small{color:#64748b;margin-top:4px;font-size:12px}.doctor-patient-instructions{gap:12px;padding:18px 20px;display:grid}.doctor-patient-instructions>article{background:#f8fafc;border:1px solid #e5ebef;border-radius:12px;padding:16px}.doctor-patient-instructions header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.doctor-patient-instructions header span,.doctor-patient-instructions header strong{display:block}.doctor-patient-instructions header div>span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.doctor-patient-instructions header strong{color:#172033;margin-top:4px;font-size:14px}.doctor-patient-instructions>article>p{color:#334155;white-space:pre-wrap;font-size:13px;line-height:1.6}.doctor-patient-instructions>article>small{color:#64748b;font-size:11px}.instruction-status{border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.instruction-status.draft{color:#92400e;background:#fef3c7}.instruction-status.published{color:#15803d;background:#dcfce7}.instruction-status.withdrawn{color:#64748b;background:#e2e8f0}.doctor-patient-instructions footer{justify-content:flex-end;margin-top:12px;display:flex}.doctor-patient-instructions footer button{color:#fff;cursor:pointer;background:#2ec4c7;border:1px solid #2ec4c7;border-radius:8px;min-height:36px;padding:0 13px;font:700 11px inherit}.doctor-patient-instructions footer button.danger{color:#dc2626;background:#fff1f2;border-color:#fecaca}@media (width<=650px){.doctor-encounter-timeline article{grid-template-columns:1fr;gap:5px}.doctor-patient-instructions header{flex-direction:column;align-items:flex-start}}.doctor-treatment-history-card>.dental-chart-history{box-sizing:border-box;color:#203f3d;background:#fff;border:1px solid #dbe8e6;border-radius:18px;width:100%;margin:18px 0 0;padding:24px;box-shadow:0 8px 25px #1246430f}.doctor-treatment-history-card>.dental-chart-history>header{justify-content:space-between;align-items:flex-start;gap:24px;min-width:0;margin-bottom:6px;display:flex}.doctor-treatment-history-card>.dental-chart-history>header>div{min-width:0}.doctor-treatment-history-card>.dental-chart-history h4{font-size:1.35rem}.doctor-treatment-history-card>.dental-chart-history>header>small{color:#6a7f7d;text-align:right;margin-top:2px;font-size:11px}.doctor-treatment-history-card>.dental-chart-history>article{gap:20px;padding:16px 0}.doctor-treatment-history-card>.dental-chart-history>article:last-of-type{border-bottom:0}.doctor-treatment-history-card>.dental-chart-history .dental-chart-history-content{flex:1;min-width:0}.doctor-treatment-history-card>.dental-chart-history article strong,.doctor-treatment-history-card>.dental-chart-history article small,.doctor-treatment-history-card>.dental-chart-history article em{overflow-wrap:anywhere}.doctor-treatment-history-card>.dental-chart-history article small{line-height:1.5}.doctor-treatment-history-card>.dental-chart-history article p{box-sizing:border-box;overflow-wrap:anywhere;white-space:pre-wrap;border:1px solid #e5efed;border-radius:9px;width:min(100%,680px);margin-top:10px;padding:10px 12px;line-height:1.6}.doctor-treatment-history-card>.dental-chart-history article em{margin-top:7px}.doctor-treatment-history-card>.dental-chart-history article button{flex:none}.doctor-treatment-history-card>.dental-chart-history>article{padding:18px 0}.doctor-treatment-history-card>.dental-chart-history article strong{font-size:17px;font-weight:700;line-height:1.4}.doctor-treatment-history-card>.dental-chart-history article span{margin-top:7px;font-size:14px;font-weight:600;line-height:1.5}.doctor-treatment-history-card>.dental-chart-history article small{margin-top:6px;font-size:13px;line-height:1.6}.doctor-treatment-history-card>.dental-chart-history article p{margin-top:10px;padding:11px 12px;font-size:14px;line-height:1.65}.doctor-treatment-history-card>.dental-chart-history article em{margin-top:8px;font-size:12px;line-height:1.5}.doctor-treatment-history-card>.dental-chart-history article button{padding:8px 11px;font-size:13px;font-weight:600}@media (width<=650px){.doctor-treatment-history-card>.dental-chart-history{padding:16px}.doctor-treatment-history-card>.dental-chart-history>header{display:block}.doctor-treatment-history-card>.dental-chart-history>header>small{text-align:left;margin-top:7px;display:block}.doctor-treatment-history-card>.dental-chart-history>article{gap:12px;padding:15px 0}}.doctor-schedule-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.doctor-schedule-heading>div:first-child>span,.doctor-calendar-card-heading>div>span,.doctor-schedule-side-heading>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.doctor-schedule-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.doctor-schedule-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.doctor-schedule-heading-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.doctor-schedule-controls{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.doctor-schedule-navigation,.doctor-schedule-view-toggle{background:#fff;border:1px solid #e5ebef;border-radius:12px;align-items:center;gap:6px;padding:5px;display:flex}.doctor-schedule-navigation button,.doctor-schedule-view-toggle button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;min-height:36px;padding:0 12px;font-family:inherit;font-size:11px;font-weight:700;display:grid}.doctor-schedule-navigation button:hover,.doctor-schedule-view-toggle button:hover{background:#f3fbfb}.doctor-schedule-navigation button.today,.doctor-schedule-view-toggle button.active{color:#159c9f;background:#eafafa}.doctor-schedule-navigation strong{color:#334155;text-align:center;min-width:170px;font-size:11px}.doctor-schedule-view-toggle button{min-width:58px}.doctor-schedule-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.doctor-schedule-summary article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:13px;min-width:0;min-height:94px;padding:16px;display:flex}.doctor-schedule-summary article>div{border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:16px;display:grid}.doctor-schedule-summary .teal{color:#16aaad;background:#e8fbfb}.doctor-schedule-summary .blue{color:#2563eb;background:#edf4ff}.doctor-schedule-summary .purple{color:#9333ea;background:#f6efff}.doctor-schedule-summary .orange{color:#f59e0b;background:#fff8e8}.doctor-schedule-summary p{min-width:0;margin:0}.doctor-schedule-summary strong,.doctor-schedule-summary span,.doctor-schedule-summary small{display:block}.doctor-schedule-summary strong{color:#111827;margin-bottom:2px;font-size:22px}.doctor-schedule-summary span{color:#64748b;font-size:11px;font-weight:600}.doctor-schedule-summary small{color:#94a3b8;margin-top:3px;font-size:9px}.doctor-schedule-layout{grid-template-columns:minmax(0,1fr) 270px;align-items:start;gap:18px;display:grid}.doctor-calendar-card,.doctor-schedule-side-card{background:#fff;border:1px solid #e5ebef;border-radius:15px;min-width:0;overflow:hidden}.doctor-calendar-card-heading{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:18px;min-height:60px;padding:10px 18px;display:flex}.doctor-calendar-card-heading>div>span,.doctor-schedule-side-heading>span{letter-spacing:.8px;font-size:9px}.doctor-calendar-card-heading h3,.doctor-schedule-side-heading h3{color:#172033;margin:3px 0 0;font-size:16px}.doctor-calendar-card-heading>p{color:#ef4444;margin:0;font-size:10px;font-weight:700}.doctor-calendar-scroll{overflow-x:auto}.doctor-calendar-grid{grid-template-columns:68px repeat(var(--day-count),minmax(112px,1fr));min-width:780px;display:grid}.doctor-calendar-scroll.day-view .doctor-calendar-grid{min-width:360px}.doctor-calendar-corner,.doctor-calendar-day{background:#f8fafc;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;align-content:center;place-items:center;min-height:55px;display:grid}.doctor-calendar-corner{color:#94a3b8;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-calendar-day strong{color:#334155;font-size:10px}.doctor-calendar-day span{color:#94a3b8;margin-top:3px;font-size:9px}.doctor-calendar-row{display:contents}.doctor-calendar-time{color:#94a3b8;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;justify-content:center;align-items:flex-start;min-height:70px;padding-top:10px;font-size:9px;display:flex}.doctor-calendar-slot{border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;min-height:70px;padding:4px}.doctor-calendar-slot.closed{background:#f8fafc;place-items:center;display:grid}.doctor-calendar-appointment{text-align:left;cursor:pointer;border:0;border-left:3px solid;border-radius:7px;width:100%;height:100%;min-height:61px;padding:7px;font-family:inherit;display:block}.doctor-calendar-appointment strong,.doctor-calendar-appointment span,.doctor-calendar-appointment small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doctor-calendar-appointment span{opacity:.8;margin-top:3px;font-size:8px}.doctor-calendar-appointment small{margin-top:4px;font-size:7px}.doctor-calendar-appointment.confirmed{color:#166534;background:#ecfdf3;border-color:#22c55e}.doctor-calendar-appointment.pending{color:#92400e;background:#fff8e8;border-color:#f59e0b}.doctor-calendar-appointment.completed{color:#475569;background:#eef2f7;border-color:#64748b}.doctor-calendar-appointment.cancelled{color:#b91c1c;background:#fff1f2;border-color:#ef4444}.doctor-calendar-empty{color:#0000;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:100%;height:100%;padding:0;display:grid}.doctor-calendar-empty:hover{color:#2ec4c7;background:#f3fbfb}.doctor-calendar-blocked{color:#64748b;cursor:pointer;background:#eef2f7;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;height:100%;font-family:inherit;font-size:8px;display:flex}.doctor-calendar-closed{color:#94a3b8;text-transform:uppercase;font-size:8px;font-weight:700}.doctor-schedule-side{gap:16px;display:grid}.doctor-schedule-side-heading{border-bottom:1px solid #edf1f4;padding:14px 16px}.doctor-today-list{display:grid}.doctor-today-list button{min-height:55px;color:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f4;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 16px;font-family:inherit;display:grid}.doctor-today-list button:last-child{border-bottom:0}.doctor-today-list time{color:#159c9f;font-size:9px;font-weight:700}.doctor-today-list p{margin:0}.doctor-today-list strong,.doctor-today-list span{display:block}.doctor-today-list strong{color:#334155;font-size:10px}.doctor-today-list span{color:#94a3b8;margin-top:3px;font-size:8px}.doctor-today-list svg{color:#cbd5e1;font-size:9px}.doctor-next-content{align-items:center;gap:11px;padding:15px 16px;display:flex}.doctor-next-content>div{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:10px;font-weight:700;display:grid}.doctor-next-content p{margin:0}.doctor-next-content strong,.doctor-next-content span,.doctor-next-content small{display:block}.doctor-next-content strong{color:#172033;font-size:11px}.doctor-next-content span{color:#64748b;margin-top:3px;font-size:9px}.doctor-next-content small{color:#159c9f;margin-top:5px;font-size:9px}.doctor-next-actions{justify-content:flex-end;padding:0 16px 15px;display:flex}.doctor-next-actions button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:5px;min-width:104px;min-height:32px;padding:0 12px;font-family:inherit;font-size:8px;font-weight:700;display:inline-flex}.doctor-available-slots{flex-wrap:wrap;gap:7px;padding:14px 16px 10px;display:flex}.doctor-available-slots span{color:#64748b;background:#fff;border:1px solid #dce5eb;border-radius:7px;align-items:center;min-height:28px;padding:0 9px;font-size:8px;font-weight:700;display:inline-flex}.doctor-block-slot-action{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #dce5eb;border-radius:8px;justify-content:center;align-items:center;gap:6px;width:calc(100% - 32px);min-height:33px;margin:0 16px 15px;font-family:inherit;font-size:9px;font-weight:700;display:flex}.doctor-hours-list{padding:8px 16px 12px}.doctor-hours-list p{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:9px 0;display:flex}.doctor-hours-list p:last-child{border-bottom:0}.doctor-hours-list span{color:#94a3b8;font-size:9px}.doctor-hours-list strong{color:#334155;font-size:9px}.doctor-hours-list .closed strong{color:#ef4444}.doctor-schedule-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.doctor-schedule-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,570px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.doctor-schedule-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.doctor-schedule-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:16px;display:grid}.doctor-schedule-modal>header>span{min-width:0}.doctor-schedule-modal>header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.doctor-schedule-modal>header h2{color:#172033;margin:3px 0 0;font-size:21px}.doctor-schedule-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.doctor-schedule-modal-patient{background:#effcfc;border:1px solid #cee;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:17px 21px 0;padding:14px;display:grid}.doctor-schedule-modal-patient>div{color:#fff;background:#2ec4c7;border-radius:50%;place-items:center;width:44px;height:44px;font-size:12px;font-weight:800;display:grid}.doctor-schedule-modal-patient p{min-width:0;margin:0}.doctor-schedule-modal-patient p span,.doctor-schedule-modal-patient p strong,.doctor-schedule-modal-patient p small{display:block}.doctor-schedule-modal-patient p span{color:#159c9f;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-schedule-modal-patient p strong{color:#172033;margin-top:3px;font-size:14px}.doctor-schedule-modal-patient p small{color:#64748b;margin-top:3px;font-size:10px}.doctor-schedule-modal-patient>.status{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.doctor-schedule-modal-patient>.status.confirmed{color:#15803d;background:#dcfce7}.doctor-schedule-modal-patient>.status.pending{color:#b45309;background:#fef3c7}.doctor-schedule-modal-patient>.status.completed{color:#475569;background:#e2e8f0}.doctor-schedule-modal-patient>.status.cancelled{color:#dc2626;background:#fee2e2}.doctor-schedule-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 21px 0;display:grid}.doctor-schedule-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.doctor-schedule-modal-grid span,.doctor-schedule-modal-grid strong{display:block}.doctor-schedule-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:9px;font-weight:700}.doctor-schedule-modal-grid strong{color:#334155;margin-top:5px;font-size:12px}.doctor-schedule-modal footer{justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.doctor-schedule-modal footer button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 13px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.doctor-schedule-modal footer button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}@media (width<=1150px){.doctor-schedule-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-schedule-layout{grid-template-columns:1fr}.doctor-schedule-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=750px){.doctor-schedule-controls{flex-direction:column;align-items:stretch}.doctor-schedule-navigation{overflow-x:auto}.doctor-schedule-view-toggle button{flex:1}.doctor-schedule-side{grid-template-columns:1fr}}@media (width<=650px){.doctor-schedule-heading{align-items:flex-start}.doctor-schedule-heading h2{font-size:25px}.doctor-schedule-heading-icon{display:none}.doctor-schedule-summary{grid-template-columns:1fr}.doctor-schedule-navigation strong{min-width:145px}.doctor-calendar-grid{min-width:740px}.doctor-calendar-scroll.day-view .doctor-calendar-grid{min-width:340px}.doctor-schedule-modal-overlay{align-items:end;padding:10px}.doctor-schedule-modal{max-height:calc(100dvh - 20px)}.doctor-schedule-modal-patient{grid-template-columns:auto minmax(0,1fr)}.doctor-schedule-modal-patient>.status{grid-column:2;justify-self:start}.doctor-schedule-modal-grid{grid-template-columns:1fr}.doctor-schedule-modal footer{flex-wrap:wrap}.doctor-schedule-modal footer button{flex:1}}.doctor-schedule-navigation button,.doctor-schedule-view-toggle button,.doctor-schedule-navigation strong{font-size:12px}.doctor-schedule-summary small,.doctor-calendar-card-heading>div>span,.doctor-schedule-side-heading>span{font-size:11px}.doctor-calendar-card-heading>p,.doctor-calendar-corner{font-size:11px}.doctor-calendar-day strong{font-size:12px}.doctor-calendar-day span,.doctor-calendar-time{font-size:11px}.doctor-calendar-appointment strong{font-size:12px}.doctor-calendar-appointment span{font-size:11px}.doctor-calendar-appointment small,.doctor-calendar-blocked,.doctor-calendar-closed{font-size:10px}.doctor-today-list time{font-size:11px}.doctor-today-list span{font-size:11px}.doctor-next-content>div{font-size:12px}.doctor-next-content small,.doctor-next-actions button,.doctor-available-slots span{font-size:11px}.doctor-block-slot-action{font-size:12px}.doctor-hours-list span{font-size:11px}.doctor-hours-list strong{font-size:12px}.doctor-schedule-heading p{font-size:15px}.doctor-schedule-navigation button,.doctor-schedule-view-toggle button{min-height:40px;padding-left:14px;padding-right:14px;font-size:13px}.doctor-schedule-navigation strong{font-size:13px}.doctor-schedule-summary strong{font-size:25px}.doctor-schedule-summary span{font-size:13px}.doctor-schedule-summary small{font-size:11px}.doctor-calendar-card-heading>div>span,.doctor-schedule-side-heading>span{font-size:12px}.doctor-calendar-card-heading h3,.doctor-schedule-side-heading h3{font-size:17px}.doctor-calendar-day strong,.doctor-calendar-appointment strong{font-size:13px}.doctor-calendar-day span,.doctor-calendar-time,.doctor-calendar-appointment span{font-size:12px}.doctor-calendar-appointment small,.doctor-calendar-blocked,.doctor-calendar-closed{font-size:11px}.doctor-today-list button{min-height:64px;padding-top:11px;padding-bottom:11px}.doctor-today-list time,.doctor-today-list span{font-size:12px}.doctor-today-list strong{font-size:14px}.doctor-next-content strong{font-size:15px}.doctor-next-content span{font-size:13px}.doctor-next-content small,.doctor-available-slots span{font-size:12px}.doctor-next-actions button,.doctor-block-slot-action{min-height:35px;font-size:12px}.doctor-hours-list span,.doctor-hours-list strong{font-size:12px}.doctor-schedule-modal-patient p span,.doctor-schedule-modal-grid span{font-size:11px}.doctor-schedule-modal-patient p strong{font-size:15px}.doctor-schedule-modal-patient p small,.doctor-schedule-modal-grid strong{font-size:12px}.doctor-schedule-modal footer button{min-height:40px;padding:0 16px;font-size:12px}.doctor-schedule-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.doctor-schedule-modal footer{z-index:2;background:#fff;position:sticky;bottom:0}.doctor-profile-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.doctor-profile-heading span,.doctor-profile-card-heading>div:first-child>span{color:#1aaeb1;letter-spacing:.9px;text-transform:uppercase;font-size:12px;font-weight:700}.doctor-profile-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.doctor-profile-heading p{color:#8491a3;margin:0;font-size:14px;line-height:1.6}.doctor-profile-heading-icon,.doctor-profile-security-icon{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.doctor-profile-heading-icon{width:48px;height:48px;font-size:18px}.doctor-profile-security-icon{width:36px;height:36px;font-size:13px}.doctor-profile-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);align-items:start;gap:18px;display:grid}.doctor-profile-side{gap:18px;display:grid}.doctor-profile-card{background:#fff;border:1px solid #e5ebef;border-radius:16px;min-width:0;padding:20px}.doctor-profile-card-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.doctor-profile-card-heading>div:first-child>span{font-size:11px}.doctor-profile-card-heading h3{color:#172033;margin:5px 0 0;font-size:20px;line-height:1.3}.doctor-profile-saved{color:#15803d;background:#dcfce7;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;font-weight:700;display:inline-flex}.doctor-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.doctor-profile-form label,.doctor-profile-password-form label{color:#334155;gap:7px;font-size:12px;font-weight:600;display:grid}.doctor-profile-form .wide,.doctor-profile-form>.doctor-profile-primary,.doctor-profile-form>.doctor-profile-error{grid-column:1/-1}.doctor-profile-input{background:#f8fafc;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;min-height:44px;padding:0 13px;transition:border-color .2s,box-shadow .2s;display:flex}.doctor-profile-input:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.doctor-profile-input>svg{color:#94a3b8;flex-shrink:0;font-size:13px}.doctor-profile-input input{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:13px}.doctor-profile-input input[readonly]{color:#64748b}.doctor-profile-primary{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 16px;font-family:inherit;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex;box-shadow:0 8px 18px #2ec4c729}.doctor-profile-primary:hover{background:#20b4b7;transform:translateY(-1px)}.doctor-profile-primary:disabled{opacity:.7;cursor:wait;transform:none}.doctor-profile-error{color:#b42332;background:#fff1f2;border:1px solid #fecaca;border-radius:9px;margin:0;padding:10px 13px;font-size:12px;line-height:1.5}.doctor-profile-password-success{color:#15803d;margin:0;font-size:12px;font-weight:600}.doctor-profile-photo-content{align-items:center;gap:16px;display:flex}.doctor-profile-avatar{color:#159c9f;background:#ddfafa;border:3px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:76px;height:76px;font-size:25px;font-weight:700;display:grid;box-shadow:0 0 0 1px #cee}.doctor-profile-photo-content>div:last-child{min-width:0}.doctor-profile-photo-content strong,.doctor-profile-photo-content span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.doctor-profile-photo-content strong{color:#172033;font-size:14px}.doctor-profile-photo-content span{color:#94a3b8;margin-top:3px;font-size:11px}.doctor-profile-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.doctor-profile-upload{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:34px;margin-top:10px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.doctor-profile-upload:hover{background:#ddf8f8}.doctor-profile-upload:focus-within{outline-offset:2px;outline:2px solid #159c9f}.doctor-profile-file-input{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.doctor-profile-photo-card>small.doctor-profile-photo-message{color:#15803d}.doctor-profile-photo-card>small.doctor-profile-photo-error{color:#b42332}.doctor-profile-photo-card>small{color:#94a3b8;border-top:1px solid #edf2f5;margin-top:13px;padding-top:11px;font-size:10px;line-height:1.5;display:block}.doctor-profile-password-form{gap:13px;display:grid}@media (width<=900px){.doctor-profile-layout{grid-template-columns:1fr}.doctor-profile-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.doctor-profile-heading{align-items:flex-start}.doctor-profile-heading h2{font-size:25px}.doctor-profile-heading-icon{display:none}.doctor-profile-side,.doctor-profile-form{grid-template-columns:1fr}.doctor-profile-card{padding:16px}.doctor-profile-form .wide,.doctor-profile-form>.doctor-profile-primary,.doctor-profile-form>.doctor-profile-error{grid-column:auto}.doctor-profile-primary{width:100%}}[data-theme=dark] .doctor-page .doctor-profile-card{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-profile-heading h2,.doctor-profile-card-heading h3,.doctor-profile-photo-content strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.doctor-profile-heading p,.doctor-profile-photo-content span,.doctor-profile-photo-card>small){color:var(--portal-secondary)}[data-theme=dark] .doctor-page :is(.doctor-profile-form label,.doctor-profile-password-form label){color:var(--portal-primary);font-weight:600}[data-theme=dark] .doctor-page .doctor-profile-input{background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-profile-input input{color:var(--portal-primary);background:0 0}[data-theme=dark] .doctor-page .doctor-profile-input input[readonly]{color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-profile-photo-card>small{border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-profile-avatar{border-color:var(--portal-border);background:var(--portal-accent-soft);box-shadow:none}[data-theme=dark] .doctor-page .doctor-profile-error{color:#fecaca;background:#7f1d1d3d;border-color:#f8717166}[data-theme=dark] .doctor-page .doctor-profile-password-success{color:#86efac}[data-theme=dark] .doctor-page .doctor-profile-upload{color:var(--portal-accent);background:var(--portal-elevated);border-color:#3b7378}[data-theme=dark] .doctor-page .doctor-profile-upload:hover{background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] .doctor-page .doctor-profile-photo-card>small.doctor-profile-photo-message{color:#86efac}[data-theme=dark] .doctor-page .doctor-profile-photo-card>small.doctor-profile-photo-error{color:#fda4af}.admin-layout{color:#172033;background:#f4f7f9;grid-template-columns:242px minmax(0,1fr);width:100%;min-height:100vh;display:grid}.admin-sidebar-wrapper{z-index:50;min-width:0;position:relative}.admin-content{min-width:0;min-height:100vh}.admin-page{width:100%;min-width:0;padding:20px 24px 32px}.admin-sidebar-overlay{display:none}.admin-sidebar{background:#fff;border-right:1px solid #e5ebef;flex-direction:column;width:242px;height:100vh;padding:22px 15px;display:flex;position:sticky;top:0;overflow:hidden}.admin-sidebar-brand{border-bottom:1px solid #edf2f5;align-items:center;gap:10px;padding:0 5px 19px;display:flex}.admin-sidebar-logo{color:#fff;background:#2ec4c7;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.admin-sidebar-brand strong,.admin-sidebar-brand span,.admin-sidebar-user strong,.admin-sidebar-user span{display:block}.admin-sidebar-brand strong{color:#172033;font-size:15px}.admin-sidebar-brand span{color:#16aeb1;margin-top:3px;font-size:11px;font-weight:700}.admin-sidebar-user{align-items:center;gap:10px;padding:18px 5px;display:flex}.admin-sidebar-avatar{color:#159c9f;background:#ddfafa;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:grid}.admin-sidebar-user strong{font-size:13px}.admin-sidebar-user span{color:#94a3b8;margin-top:4px;font-size:10px}.admin-sidebar-navigation{overscroll-behavior:contain;gap:5px;min-height:0;margin-top:4px;display:grid;overflow-y:auto}.admin-sidebar-menu{color:#64748b;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:44px;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:grid}.admin-sidebar-menu:hover,.admin-sidebar-menu.active{color:#159c9f;background:#eafafa}.admin-sidebar-menu-icon{color:#8fa0b5;place-items:center;font-size:15px;display:grid}.admin-sidebar-menu:hover .admin-sidebar-menu-icon,.admin-sidebar-menu.active .admin-sidebar-menu-icon{color:#2ec4c7}.admin-sidebar-menu-label{white-space:nowrap}.admin-sidebar-logout{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;align-items:center;gap:10px;min-height:44px;margin-top:auto;padding:0 11px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.admin-sidebar-logout:hover{color:#dc2626;background:#fff1f2}.admin-topbar{background:#fff;border-bottom:1px solid #e5ebef;justify-content:space-between;align-items:center;gap:24px;min-height:74px;padding:10px 24px;display:flex}.admin-topbar-left{align-items:center;gap:13px;min-width:0;display:flex}.admin-topbar-left h1{margin:0 0 3px;font-size:20px}.admin-topbar-left p{color:#94a3b8;margin:0;font-size:12px}.admin-topbar-menu{color:#64748b;cursor:pointer;background:#f8fafc;border:0;border-radius:10px;place-items:center;width:38px;height:38px;padding:0;display:none}.admin-topbar-actions{align-items:center;gap:10px;display:flex}.admin-notification-button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e1e9ee;border-radius:10px;place-items:center;width:40px;height:40px;padding:0;font-size:15px;display:grid;position:relative}.admin-notification-button>span{color:#fff;background:#2ec4c7;border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:8px;font-weight:700;display:grid;position:absolute;top:-5px;right:-5px}.admin-topbar-profile{align-items:center;gap:9px;padding:4px 8px 4px 4px;display:flex}.admin-topbar-profile>div{color:#159c9f;background:#ddfafa;border-radius:50%;place-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:grid}.admin-topbar-profile strong,.admin-topbar-profile small{white-space:nowrap;display:block}.admin-topbar-profile strong{font-size:13px}.admin-topbar-profile small{color:#94a3b8;margin-top:3px;font-size:10px}@media (width<=1000px){.admin-layout{grid-template-columns:80px minmax(0,1fr)}.admin-sidebar{align-items:center;width:80px;padding-left:11px;padding-right:11px}.admin-sidebar-brand>div:last-child,.admin-sidebar-user>div:last-child,.admin-sidebar-menu-label,.admin-sidebar-logout span{display:none}.admin-sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.admin-sidebar-menu,.admin-sidebar-logout{width:46px;padding:0}.admin-sidebar-menu{grid-template-columns:1fr;justify-items:center}.admin-sidebar-logout{justify-content:center}}@media (width<=700px){.admin-layout{display:block}.admin-sidebar-wrapper{z-index:100;transition:transform .25s;position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.admin-sidebar-wrapper.open{transform:translate(0)}.admin-sidebar-wrapper .admin-sidebar{align-items:stretch;width:242px}.admin-sidebar-wrapper .admin-sidebar-brand>div:last-child,.admin-sidebar-wrapper .admin-sidebar-user>div:last-child,.admin-sidebar-wrapper .admin-sidebar-menu-label,.admin-sidebar-wrapper .admin-sidebar-logout span{display:block}.admin-sidebar-wrapper .admin-sidebar-menu{justify-items:initial;grid-template-columns:20px minmax(0,1fr);width:100%;padding:0 11px}.admin-sidebar-wrapper .admin-sidebar-logout{justify-content:flex-start;width:100%;padding:0 11px}.admin-sidebar-overlay{z-index:90;background:#0f172a7a;border:0;padding:0;display:block;position:fixed;inset:0}.admin-topbar{min-height:72px;padding:12px 15px}.admin-topbar-menu{display:grid}.admin-topbar-profile>span{display:none}.admin-topbar-left h1{font-size:18px}.admin-topbar-left p{display:none}.admin-page{padding:16px}}.admin-sidebar-menu:has(.admin-sidebar-badge){grid-template-columns:20px minmax(0,1fr) auto}.admin-sidebar-badge{color:#fff;background:#2ec4c7;border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 6px;font-size:9px;font-weight:700;display:grid}@media (width<=1000px){.admin-sidebar-badge{display:none}}@media (width<=700px){.admin-sidebar-wrapper .admin-sidebar-menu:has(.admin-sidebar-badge){grid-template-columns:20px minmax(0,1fr) auto}.admin-sidebar-wrapper .admin-sidebar-badge{display:grid}}.admin-topbar-profile{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;font-family:inherit;transition:background .2s,box-shadow .2s}.admin-topbar-profile:hover{background:#f1f8f8}.admin-topbar-profile:focus-visible{background:#f1f8f8;outline:0;box-shadow:0 0 0 3px #2ec4c72e}.admin-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:9px;min-height:42px;margin-bottom:14px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.admin-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;padding:5px;display:grid}.admin-welcome{color:#fff;background:radial-gradient(circle at 85% 10%,#ffffff24,#0000 34%),linear-gradient(135deg,#31c2c4,#159b9e);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;min-height:118px;margin-bottom:16px;padding:22px 26px;display:flex}.admin-welcome>div:first-child>span{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.admin-welcome h2{margin:0 0 8px;font-size:29px;line-height:1.15}.admin-welcome p{opacity:.9;margin:0;font-size:13px;line-height:1.5}.admin-welcome-date{background:#ffffff1f;border:1px solid #ffffff38;border-radius:12px;flex-shrink:0;align-items:center;gap:11px;padding:13px 15px;display:flex}.admin-welcome-date>svg{font-size:17px}.admin-welcome-date p{margin:0}.admin-welcome-date strong,.admin-welcome-date span{display:block}.admin-welcome-date span{margin-top:4px;font-size:11px}.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.admin-stat-grid article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.admin-stat-grid article>div{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.admin-stat-grid .teal{color:#16aaad;background:#e8fbfb}.admin-stat-grid .blue{color:#2563eb;background:#edf4ff}.admin-stat-grid .orange{color:#f59e0b;background:#fff8e8}.admin-stat-grid .purple{color:#9333ea;background:#f6efff}.admin-stat-grid p{margin:0}.admin-stat-grid strong,.admin-stat-grid span,.admin-stat-grid small{display:block}.admin-stat-grid strong{color:#111827;font-size:25px}.admin-stat-grid span{color:#64748b;font-size:13px}.admin-stat-grid small{color:#94a3b8;margin-top:3px;font-size:11px}.admin-dashboard-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);align-items:start;gap:18px;display:grid}.admin-main-column,.admin-side-column{gap:18px;min-width:0;display:grid}.admin-card{background:#fff;border:1px solid #e1e8ee;border-radius:15px;min-width:0;overflow:hidden}.admin-card>header{border-bottom:1px solid #edf1f4;align-items:center;min-height:60px;padding:10px 21px;display:flex}.admin-card>header span{color:#1aaeb1;letter-spacing:.8px;text-transform:uppercase;font-size:11px;font-weight:700}.admin-card>header h3{margin:3px 0 0;font-size:17px}.admin-appointment-row{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(135px,.9fr) minmax(155px,1fr) minmax(120px,.7fr) auto;align-items:center;gap:13px;padding:14px 21px;display:grid}.admin-appointment-row:last-child,.admin-patient-row:last-child{border-bottom:0}.admin-appointment-row strong,.admin-appointment-row span{display:block}.admin-appointment-row strong{color:#334155;font-size:13px}.admin-appointment-row>div>span{color:#94a3b8;margin-top:4px;font-size:11px}.admin-status{border-radius:999px;width:max-content;padding:6px 9px;font-size:10px;font-weight:700}.admin-status.confirmed{color:#15803d;background:#dcfce7}.admin-status.pending{color:#b45309;background:#fef3c7}.admin-status.cancelled{color:#dc2626;background:#fee2e2}.admin-row-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}.admin-row-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;min-height:32px;padding:0 10px;font-family:inherit;font-size:11px;font-weight:700}.admin-row-actions button:hover{color:#159c9f;border-color:#a9e3e4}.admin-row-actions button.danger{color:#dc2626}.admin-patient-row{border-bottom:1px solid #edf1f4;grid-template-columns:auto minmax(130px,.8fr) minmax(130px,.8fr) minmax(180px,1.1fr) auto;align-items:center;gap:13px;padding:14px 21px;display:grid}.admin-patient-avatar{color:#159c9f;background:#eafafa;border-radius:50%;place-items:center;width:38px;height:38px;font-size:11px;font-weight:700;display:grid}.admin-patient-row strong,.admin-patient-row span,.admin-patient-row small{display:block}.admin-patient-row strong{color:#334155;font-size:12px}.admin-patient-row span,.admin-patient-row small{color:#94a3b8;margin-bottom:4px;font-size:10px}.admin-patient-row button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;min-height:34px;padding:0 11px;font-family:inherit;font-size:11px;font-weight:700}.admin-pending-list{display:grid}.admin-pending-list>div{border-bottom:1px solid #edf1f4;align-items:center;gap:11px;padding:14px 17px;display:flex}.admin-pending-list>div:last-child{border-bottom:0}.admin-pending-list>div>span{border-radius:9px;place-items:center;min-width:32px;height:32px;font-size:12px;font-weight:800;display:grid}.admin-pending-list .orange{color:#b45309;background:#fef3c7}.admin-pending-list .teal{color:#159c9f;background:#eafafa}.admin-pending-list .blue{color:#2563eb;background:#edf4ff}.admin-pending-list p{margin:0}.admin-pending-list strong,.admin-pending-list small{display:block}.admin-pending-list strong{color:#334155;font-size:12px}.admin-pending-list small{color:#94a3b8;margin-top:4px;font-size:10px;line-height:1.4}.admin-clinic-info{gap:17px;padding:18px 21px;display:grid}.admin-clinic-info>div{align-items:flex-start;gap:11px;display:flex}.admin-clinic-info svg{color:#2ec4c7;flex-shrink:0;margin-top:2px}.admin-clinic-info p{margin:0}.admin-clinic-info strong,.admin-clinic-info span{display:block}.admin-clinic-info strong{color:#334155;font-size:12px}.admin-clinic-info span{color:#94a3b8;margin-top:4px;font-size:11px;line-height:1.5}.admin-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,620px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.admin-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.admin-modal>header>span{min-width:0}.admin-modal>header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.admin-modal>header h2{margin:3px 0 0;font-size:21px}.admin-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.admin-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:17px 21px 0;display:grid}.admin-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.admin-modal-grid span,.admin-modal-grid strong{display:block}.admin-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.admin-modal-grid strong{color:#334155;margin-top:5px;font-size:12px;line-height:1.45}.admin-modal>footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.admin-modal footer:empty{display:none}.admin-modal footer button,.admin-reschedule-form button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:38px;padding:0 13px;font-family:inherit;font-size:11px;font-weight:700}.admin-modal button.primary,.admin-reschedule-form button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-modal button.danger{color:#dc2626}.admin-reschedule-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:18px 21px 21px;display:grid}.admin-reschedule-form label span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.admin-reschedule-form input,.admin-reschedule-form select{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:0 11px;font-size:13px}.admin-reschedule-form>div{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}[data-theme=dark] .admin-layout .admin-page .admin-appointment-row .admin-status.pending{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b80}[data-theme=dark] .admin-layout .admin-page .admin-appointment-row .admin-status.cancelled{color:#f87171;background:#ef44442b;border:1px solid #ef444473}[data-theme=dark] .admin-layout .admin-page .admin-welcome h2{color:#fff}[data-theme=dark] .admin-layout .admin-page .admin-welcome>div:first-child>p{color:#ffffffd9;opacity:1}[data-theme=dark] .admin-layout .admin-page .admin-welcome-date strong{color:#fff}[data-theme=dark] .admin-layout .admin-page .admin-welcome-date span{color:#ffffffd9}@media (width<=1150px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid{grid-template-columns:1fr}.admin-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.admin-side-column{grid-template-columns:1fr}.admin-appointment-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-status{justify-self:start}.admin-patient-row{grid-template-columns:auto minmax(0,1fr) auto}.admin-patient-row>div:nth-child(3),.admin-patient-row>div:nth-child(4){grid-column:2}.admin-patient-row>button{grid-area:1/3/span 3}}@media (width<=560px){.admin-welcome{flex-direction:column;align-items:flex-start;padding:20px}.admin-welcome h2{font-size:24px}.admin-welcome-date{width:100%}.admin-stat-grid{grid-template-columns:1fr}.admin-appointment-row{grid-template-columns:1fr;padding:15px 17px}.admin-row-actions{grid-column:1;justify-content:flex-start}.admin-patient-row{padding:14px 17px}.admin-modal-overlay{align-items:end;padding:10px}.admin-modal{max-height:calc(100dvh - 20px)}.admin-modal-grid,.admin-reschedule-form{grid-template-columns:1fr}.admin-reschedule-form>div{grid-column:1}.admin-modal>footer button{flex:1}}.admin-welcome>div:first-child>span{font-size:15px}.admin-welcome h2{font-size:31px}.admin-welcome p{font-size:15px}.admin-welcome-date strong{font-size:13px}.admin-card>header span{font-size:12px}.admin-card>header h3{font-size:17px}.admin-appointment-row,.admin-patient-row{padding-top:18px;padding-bottom:18px}.admin-appointment-row strong,.admin-patient-row strong{font-size:13px}.admin-appointment-row>div>span,.admin-patient-row span,.admin-patient-row small{font-size:12px}.admin-row-actions button,.admin-patient-row button{min-height:35px;padding:0 12px;font-size:12px}.admin-pending-list strong,.admin-clinic-info strong{font-size:13px}.admin-pending-list small,.admin-clinic-info span{font-size:12px}.admin-modal-grid span{font-size:11px}.admin-modal-grid strong{font-size:13px}.admin-modal footer button,.admin-reschedule-form button{min-height:42px;padding:0 18px;font-size:13px}.admin-reschedule-form label span{font-size:13px}.admin-reschedule-form input,.admin-reschedule-form select{font-size:14px}@media (width<=560px){.admin-welcome h2{font-size:23px}}.admin-dashboard-reschedule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 21px 0;display:grid}.admin-dashboard-reschedule-summary>div{background:#f8fafc;border:1px solid #e7eef2;border-radius:10px;min-width:0;padding:11px 12px}.admin-dashboard-reschedule-summary span,.admin-dashboard-reschedule-summary strong,.admin-dashboard-reschedule-summary small{display:block}.admin-dashboard-reschedule-summary span{color:#159c9f;letter-spacing:.45px;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.admin-dashboard-reschedule-summary strong{overflow-wrap:anywhere;color:#334155;font-size:13px;line-height:1.4}.admin-dashboard-reschedule-summary small{color:#8491a3;margin-top:3px;font-size:11px}.admin-dashboard-slot-form{gap:13px;padding:15px 21px 21px;display:grid}.admin-dashboard-slot-finder{background:#fff;border:1px solid #dfe9ee;border-radius:12px;min-width:0;overflow:hidden}.admin-dashboard-slot-finder>header{background:#fbfefe;border-bottom:1px solid #edf2f5;padding:12px 14px}.admin-dashboard-slot-finder>header strong,.admin-dashboard-slot-finder>header span{display:block}.admin-dashboard-slot-finder>header strong{color:#172033;text-transform:uppercase;font-size:14px}.admin-dashboard-slot-finder>header span{color:#8491a3;margin-top:4px;font-size:11px}.admin-dashboard-slot-tabs{background:#f8fafc;border:1px solid #e5ebef;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:12px 14px;padding:4px;display:grid}.admin-modal .admin-dashboard-slot-tabs button{color:#718096;min-width:0;min-height:38px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 10px;font-size:12px;font-weight:700}.admin-modal .admin-dashboard-slot-tabs button.active{color:#159c9f;background:#fff;box-shadow:0 2px 8px #0f172a12}.admin-dashboard-earliest-dates{scrollbar-width:thin;max-height:300px;padding:0 14px 14px;overflow-y:auto}.admin-dashboard-earliest-dates article{border-bottom:1px solid #edf2f5;padding:11px 0}.admin-dashboard-earliest-dates article:first-child{padding-top:2px}.admin-dashboard-earliest-dates h3,.admin-dashboard-date-choice h3{color:#334155;margin:0 0 9px;font-size:12px}.admin-dashboard-earliest-dates article.selected-date h3{color:#159c9f}.admin-dashboard-earliest-dates article>div,.admin-dashboard-date-choice>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.admin-modal .admin-dashboard-earliest-dates article button,.admin-modal .admin-dashboard-date-choice>div button{color:#159c9f;min-width:0;min-height:36px;font:inherit;cursor:pointer;background:#f7fefe;border:1px solid #bfe8e9;border-radius:8px;padding:0 7px;font-size:11px;font-weight:700}.admin-modal .admin-dashboard-earliest-dates article button:hover,.admin-modal .admin-dashboard-date-choice>div button:hover{background:#eafafa;border-color:#2ec4c7}.admin-modal .admin-dashboard-earliest-dates article button.selected,.admin-modal .admin-dashboard-date-choice>div button.selected{color:#fff;background:#2ec4c7;border-color:#2ec4c7;box-shadow:0 4px 12px #2ec4c738}.admin-modal .admin-dashboard-earliest-dates .show-more{color:#159c9f;width:100%;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:1px dashed #bfe8e9;border-radius:9px;margin-top:10px;font-size:12px;font-weight:700}.admin-dashboard-date-choice{padding:0 14px 14px}.admin-dashboard-date-choice label span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.admin-dashboard-date-choice input{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:0 11px;font-size:13px}.admin-dashboard-date-choice input:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-dashboard-date-choice h3{margin-top:13px}.admin-dashboard-date-choice>p{color:#64748b;background:#f8fafc;border:1px dashed #dce5eb;border-radius:9px;margin:11px 0 0;padding:12px;font-size:12px}.admin-dashboard-date-choice>p.unavailable{color:#9a5b13;background:#fffaf0;border-color:#fed7aa}.admin-dashboard-selected-slot{background:#effcfc;border:1px solid #bfe8e9;border-radius:10px;padding:12px 14px}.admin-dashboard-selected-slot span,.admin-dashboard-selected-slot strong{display:block}.admin-dashboard-selected-slot span{color:#159c9f;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.admin-dashboard-selected-slot strong{color:#334155;font-size:13px}.admin-dashboard-selected-slot b{color:#159c9f;padding:0 5px}.admin-dashboard-reason>span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.admin-dashboard-reason small{color:#94a3b8;font-size:11px;font-weight:500}.admin-dashboard-reason textarea{color:#334155;width:100%;font:inherit;resize:vertical;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:10px 11px;font-size:13px}.admin-dashboard-reason textarea:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-dashboard-slot-form>footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-dashboard-slot-form>footer button{color:#64748b;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:0 18px;font-size:13px;font-weight:700}.admin-dashboard-slot-form>footer button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-dashboard-slot-form>footer button:disabled{color:#9aa7b6;cursor:not-allowed;background:#edf2f5;border-color:#e5ebef}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-slot-finder>header strong{color:#172033}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-slot-finder>header span{color:#475569}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-date-choice label span,[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-reason>span{color:var(--portal-secondary)}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-reason small{color:var(--portal-muted)}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-reason textarea::placeholder{color:var(--portal-muted);opacity:1}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-date-choice input{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-date-choice input::-webkit-calendar-picker-indicator{filter:invert();opacity:.8}[data-theme=dark] .admin-layout .admin-modal .admin-dashboard-date-choice>p:not(.unavailable){color:#475569}[data-theme=dark] .admin-layout .admin-modal :is(.admin-dashboard-earliest-dates h3,.admin-dashboard-date-choice h3){color:var(--portal-primary)}[data-theme=dark] .admin-layout .admin-modal :is(.admin-dashboard-earliest-dates article button,.admin-dashboard-date-choice>div button){color:var(--portal-accent)}@media (width<=560px){.admin-dashboard-reschedule-summary{grid-template-columns:1fr;margin:13px 15px 0}.admin-dashboard-slot-form{padding:14px 15px 18px}.admin-dashboard-slot-tabs{grid-template-columns:1fr}.admin-dashboard-earliest-dates article>div,.admin-dashboard-date-choice>div{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-slot-form>footer button{flex:1}}.admin-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.admin-modal>footer,.admin-dashboard-slot-form>footer{z-index:2;background:#fff;position:sticky;bottom:0}.admin-appointments-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:9px;min-height:42px;margin-bottom:14px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.admin-appointments-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;padding:5px;display:grid}.admin-appointments-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.admin-appointments-heading>div:first-child>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.admin-appointments-heading h2{margin:5px 0 6px;font-size:30px;line-height:1.2}.admin-appointments-heading p{color:#8491a3;margin:0;font-size:14px}.admin-appointments-heading>div:last-child{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.admin-appointments-heading .admin-add-appointment-button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#159c9f;border:1px solid #2ec4c7;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex}.admin-appointments-heading .admin-add-appointment-button:hover{background:#11898c}.admin-appointments-heading .admin-add-appointment-button:focus-visible{outline-offset:3px;outline:3px solid #2ec4c7}.admin-create-error{color:#991b1b;background:#fff1f2;border:1px solid #fecaca;border-radius:9px;margin:0;padding:10px 12px;font-size:12px}.admin-create-patient-tabs{background:#f8fafc;border:1px solid #dce5eb;border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:5px;display:grid}.admin-appointment-modal .admin-create-patient-tabs button{color:#64748b;background:0 0;border-color:#0000}.admin-appointment-modal .admin-create-patient-tabs button.active{color:#11898c;background:#fff;border-color:#bfe8e9;box-shadow:0 2px 8px #0f172a0f}[data-theme=dark] .admin-layout .admin-create-patient-tabs{border-color:var(--portal-border);background:var(--portal-input)}[data-theme=dark] .admin-layout .admin-create-patient-tabs button.active{border-color:var(--portal-accent);color:var(--portal-accent);background:var(--portal-surface)}[data-theme=dark] .admin-layout .admin-create-form label>span{color:var(--portal-primary)}[data-theme=dark] .admin-layout .admin-create-form label small{color:var(--portal-muted)}@media (width<=650px){.admin-appointments-heading{flex-wrap:wrap}.admin-appointments-heading .admin-add-appointment-button{width:100%}}.admin-appointments-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.admin-appointments-summary article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.admin-appointments-summary article>div{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.admin-appointments-summary .teal{color:#16aaad;background:#e8fbfb}.admin-appointments-summary .orange{color:#f59e0b;background:#fff8e8}.admin-appointments-summary .green{color:#15803d;background:#ecfdf3}.admin-appointments-summary .red{color:#dc2626;background:#fff1f2}.admin-appointments-summary p{margin:0}.admin-appointments-summary strong,.admin-appointments-summary span,.admin-appointments-summary small{display:block}.admin-appointments-summary strong{color:#111827;font-size:25px}.admin-appointments-summary span{color:#64748b;font-size:13px}.admin-appointments-summary small{color:#94a3b8;margin-top:3px;font-size:11px}.admin-appointments-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.admin-appointments-tabs{background:#fff;border:1px solid #e5ebef;border-radius:12px;gap:6px;min-width:0;padding:5px;display:flex}.admin-appointments-tabs button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.admin-appointments-tabs button.active{color:#159c9f;background:#eafafa}.admin-appointments-tabs button span{color:#718096;background:#edf2f5;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;display:grid}.admin-appointments-tabs button.active span{color:#fff;background:#2ec4c7}.admin-appointments-search{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,340px);min-height:44px;padding:0 13px;display:flex}.admin-appointments-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-appointments-search svg{color:#94a3b8}.admin-appointments-search input{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:13px}.admin-appointments-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-appointments-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.admin-appointments-panel>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.admin-appointments-panel>header span{color:#1aaeb1;letter-spacing:.9px;text-transform:uppercase;font-size:11px;font-weight:700}.admin-appointments-panel>header h3{margin:4px 0 0;font-size:18px}.admin-appointments-panel>header p{color:#94a3b8;margin:0;font-size:12px}.admin-appointments-list{gap:12px;display:grid}.admin-appointment-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:minmax(180px,.8fr) minmax(185px,.9fr) minmax(190px,.9fr) minmax(240px,1.15fr);align-items:center;gap:17px;padding:18px;display:grid}.admin-appointment-card:hover{border-color:#bfeaea;box-shadow:0 10px 24px #1f37490f}.admin-appointment-patient{align-items:center;gap:11px;min-width:0;display:flex}.admin-appointment-patient>div{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:grid}.admin-appointment-patient p{min-width:0;margin:0}.admin-appointment-patient span,.admin-appointment-service>span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-appointment-patient strong,.admin-appointment-patient small,.admin-appointment-service strong,.admin-appointment-service small{display:block}.admin-appointment-patient strong{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 2px;font-size:15px;overflow:hidden}.admin-appointment-patient small,.admin-appointment-service small{color:#94a3b8;font-size:12px}.admin-appointment-service strong{color:#334155;margin:4px 0 7px;font-size:14px}.admin-appointment-note{background:#f8fafc;border-radius:9px;align-items:flex-start;gap:8px;padding:10px;display:flex}.admin-appointment-note svg{color:#94a3b8;flex-shrink:0;margin-top:2px}.admin-appointment-note p{color:#718096;margin:0;font-size:12px;line-height:1.5}.admin-appointment-note strong{color:#334155;margin-bottom:2px;font-size:11px;display:block}.admin-appointment-card-actions{flex-direction:column;align-items:flex-end;gap:8px;min-width:0;display:flex}.admin-appointment-badge{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.admin-appointment-badge.pending{color:#b45309;background:#fef3c7}.admin-appointment-badge.confirmed{color:#15803d;background:#dcfce7}.admin-appointment-badge.completed{color:#64748b;background:#eef2f7}.admin-appointment-badge.cancelled{color:#dc2626;background:#fee2e2}.admin-appointment-card-actions>p{color:#64748b;text-align:right;margin:0;font-size:11px;line-height:1.7}.admin-appointment-card-actions>p svg{color:#2ec4c7;margin-right:4px}.admin-appointment-card-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;min-height:34px;padding:0 9px;font-family:inherit;font-size:11px;font-weight:700}.admin-appointment-card-actions button.confirm{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-appointment-card-actions button.danger{color:#dc2626}.admin-appointments-empty{text-align:center;padding:52px 20px}.admin-appointments-empty svg{color:#2ec4c7;margin-bottom:13px;font-size:34px}.admin-appointments-empty h3{margin:0 0 7px}.admin-appointments-empty p{color:#8491a3;margin:0;font-size:12px}.admin-appointment-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-appointment-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,650px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.admin-appointment-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-appointment-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.admin-appointment-modal>header>span{min-width:0}.admin-appointment-modal>header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.admin-appointment-modal>header h2{margin:3px 0 0;font-size:21px}.admin-appointment-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.admin-appointment-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:17px 21px 0;display:grid}.admin-appointment-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.admin-appointment-modal-grid span,.admin-appointment-modal-grid strong{display:block}.admin-appointment-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.admin-appointment-modal-grid strong{color:#334155;margin-top:5px;font-size:12px;line-height:1.45}.admin-appointment-modal>footer,.admin-appointment-form footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.admin-appointment-modal button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:38px;padding:0 13px;font-family:inherit;font-size:11px;font-weight:700}.admin-appointment-modal button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-appointment-modal button.danger{color:#fff;background:#dc2626;border-color:#fecaca}.admin-appointment-confirm-copy,.admin-cancel-warning{background:#effcfc;border:1px solid #cee;border-radius:12px;align-items:center;gap:13px;margin:18px 21px 0;padding:15px;display:flex}.admin-appointment-confirm-copy>svg,.admin-cancel-warning>svg{color:#159c9f;flex-shrink:0;font-size:22px}.admin-appointment-confirm-copy p,.admin-cancel-warning p{margin:0}.admin-appointment-confirm-copy strong,.admin-appointment-confirm-copy span,.admin-cancel-warning strong,.admin-cancel-warning span{display:block}.admin-appointment-confirm-copy strong,.admin-cancel-warning strong{color:#334155;font-size:13px}.admin-appointment-confirm-copy span,.admin-cancel-warning span{color:#64748b;margin-top:4px;font-size:11px}.admin-current-appointment{background:#effcfc;border:1px solid #cee;border-radius:10px;margin:17px 21px 0;padding:13px}.admin-current-appointment span,.admin-current-appointment strong{display:block}.admin-current-appointment span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:700}.admin-current-appointment strong{color:#334155;margin-top:5px;font-size:13px}.admin-appointment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:17px 21px 21px;display:grid}.admin-appointment-form label>span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.admin-appointment-form input,.admin-appointment-form select,.admin-appointment-form textarea{color:#334155;width:100%;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:10px 11px;font-size:13px}.admin-appointment-form input,.admin-appointment-form select{min-height:42px}.admin-appointment-form textarea{resize:vertical}.admin-appointment-form input:focus,.admin-appointment-form select:focus,.admin-appointment-form textarea:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-appointment-form .wide,.admin-appointment-form footer,.admin-cancel-warning{grid-column:1/-1}.admin-appointment-form footer{padding:3px 0 0}.admin-cancel-warning{background:#fff1f2;border-color:#fecaca;margin:0}.admin-cancel-warning>svg{color:#dc2626}.cancel-form{grid-template-columns:1fr}@media (width<=1200px){.admin-appointments-summary,.admin-appointment-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-appointment-card-actions{align-items:flex-start}.admin-appointment-card-actions>p{text-align:left}.admin-appointment-card-actions>div{justify-content:flex-start}}@media (width<=850px){.admin-appointments-toolbar{flex-direction:column;align-items:stretch}.admin-appointments-tabs{overflow-x:auto}.admin-appointments-tabs button{white-space:nowrap;flex:1}.admin-appointments-search{width:100%}}@media (width<=650px){.admin-appointments-heading{align-items:flex-start}.admin-appointments-heading h2{font-size:25px}.admin-appointments-heading>div:last-child{display:none}.admin-appointments-summary{grid-template-columns:1fr}.admin-appointments-panel{padding:16px}.admin-appointments-panel>header{flex-direction:column;align-items:flex-start;gap:7px}.admin-appointment-card{grid-template-columns:1fr;padding:16px}.admin-appointment-modal-overlay{align-items:end;padding:10px}.admin-appointment-modal{max-height:calc(100dvh - 20px)}.admin-appointment-modal-grid,.admin-appointment-form{grid-template-columns:1fr}.admin-appointment-form .wide,.admin-appointment-form footer{grid-column:1}.admin-appointment-modal>footer button,.admin-appointment-form footer button{flex:1}}.admin-appointments-heading p{font-size:15px}.admin-appointments-tabs button{min-height:40px;padding:0 14px;font-size:13px}.admin-appointments-search input{font-size:14px}.admin-appointments-panel>header span{font-size:12px}.admin-appointment-card{padding:19px}.admin-appointment-patient>div{width:44px;height:44px}.admin-appointment-patient span,.admin-appointment-service>span{font-size:11px}.admin-appointment-patient strong{font-size:15px}.admin-appointment-patient small,.admin-appointment-service small,.admin-appointment-note p{font-size:12px}.admin-appointment-service strong{font-size:15px}.admin-appointment-card-actions>p{font-size:12px}.admin-appointment-card-actions button{min-height:35px;padding:0 12px;font-size:12px}.admin-appointment-modal-grid span{font-size:11px}.admin-appointment-modal-grid strong{font-size:13px}.admin-appointment-confirm-copy strong,.admin-cancel-warning strong{font-size:14px}.admin-appointment-confirm-copy span,.admin-cancel-warning span{font-size:12px}.admin-cancel-warning strong{color:#991b1b;font-weight:700}.admin-cancel-warning span{color:#6b4f55}.admin-appointment-form label>span{font-size:13px}.admin-appointment-form input,.admin-appointment-form select,.admin-appointment-form textarea{font-size:14px}.admin-appointment-modal button{min-height:42px;padding:0 18px;font-size:13px}.admin-current-appointment>div{flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:7px;display:flex}.admin-current-appointment>div strong{margin:0;position:relative}.admin-current-appointment>div strong:not(:last-child):after{color:#b4c0cc;content:"â€¢";position:absolute;right:-11px}.admin-available-slots{border:0;min-width:0;margin:0;padding:0}.admin-available-slots legend{color:#475569;margin-bottom:9px;padding:0;font-size:13px;font-weight:700}.admin-available-slots>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.admin-appointment-modal .admin-available-slots button{color:#159c9f;background:#f7fefe;border-color:#bfe8e9;min-width:0}.admin-appointment-modal .admin-available-slots button:hover{background:#eafafa;border-color:#2ec4c7}.admin-appointment-modal .admin-available-slots button.selected{color:#fff;background:#2ec4c7;border-color:#2ec4c7;box-shadow:0 5px 14px #2ec4c733}.admin-available-slots p{color:#64748b;background:#f8fafc;border:1px dashed #dce5eb;border-radius:9px;margin:0;padding:13px 14px;font-size:12px;line-height:1.5}.admin-available-slots p.unavailable{color:#9a5b13;background:#fffaf0;border-color:#fed7aa}.admin-appointment-form label small{color:#94a3b8;font-size:11px;font-weight:500}.admin-appointment-modal button:disabled{color:#9aa7b6;cursor:not-allowed;box-shadow:none;background:#edf2f5;border-color:#e5ebef}@media (width<=650px){.admin-appointments-heading h2{font-size:25px}.admin-appointment-card{padding:17px}.admin-available-slots>div{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-current-appointment>div{flex-direction:column;align-items:flex-start;gap:5px}.admin-current-appointment>div strong:after{display:none}}.admin-appointment-card{grid-template-columns:minmax(190px,1.1fr) minmax(220px,1.2fr) minmax(210px,1.15fr) 300px;gap:18px;padding:19px;transition:border-color .2s,box-shadow .2s,transform .2s}.admin-appointment-card:hover{transform:translateY(-1px)}.admin-appointment-avatar{color:#159c9f;flex-shrink:0;place-items:center;background:#eafafa!important;border-radius:50%!important;width:44px!important;height:44px!important;font-size:12px!important;font-weight:700!important;display:grid!important}.admin-appointment-patient>div:last-child{width:auto;min-width:0;height:auto;font-size:inherit;font-weight:inherit;background:0 0;border-radius:0;display:block}.admin-appointment-patient span,.admin-appointment-details>span{color:#94a3b8;letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:700}.admin-appointment-patient h3{color:#172033;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 2px;font-size:15px;line-height:1.35;overflow:hidden}.admin-appointment-patient small{color:#94a3b8;font-size:12px}.admin-appointment-details{min-width:0}.admin-appointment-details h4{color:#334155;margin:4px 0;font-size:15px;line-height:1.35}.admin-appointment-details>small{color:#94a3b8;margin-bottom:8px;font-size:12px;display:block}.admin-appointment-meta{flex-wrap:wrap;gap:6px 12px;display:flex}.admin-appointment-meta span{color:#64748b;align-items:center;gap:6px;font-size:12px;display:inline-flex}.admin-appointment-meta svg{color:#2ec4c7}.admin-appointment-note{min-width:0}.admin-appointment-card-actions{justify-content:flex-start;place-self:stretch end;gap:9px;width:300px;min-width:300px}.admin-appointment-card-actions>div{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}@media (width<=1350px){.admin-appointment-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-appointment-card-actions{justify-self:stretch;align-items:flex-start;width:100%;min-width:0}.admin-appointment-card-actions>div{justify-content:flex-start}}@media (width<=650px){.admin-appointment-card{grid-template-columns:1fr;gap:14px;padding:17px}}.admin-reschedule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 21px 0;display:grid}.admin-reschedule-summary>div{background:#f8fafc;border:1px solid #e7eef2;border-radius:10px;min-width:0;padding:11px 12px}.admin-reschedule-summary span,.admin-reschedule-summary strong,.admin-reschedule-summary small{display:block}.admin-reschedule-summary span{color:#159c9f;letter-spacing:.45px;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.admin-reschedule-summary strong{overflow-wrap:anywhere;color:#334155;font-size:13px;line-height:1.4}.admin-reschedule-summary small{color:#8491a3;margin-top:3px;font-size:11px}.admin-reschedule-form{grid-template-columns:1fr}.admin-slot-finder{background:#fff;border:1px solid #dfe9ee;border-radius:12px;min-width:0;overflow:hidden}.admin-slot-finder>header{background:#fbfefe;border-bottom:1px solid #edf2f5;padding:13px 15px 11px}.admin-slot-finder>header span{color:#172033;text-transform:uppercase;font-size:14px;font-weight:800}.admin-slot-finder>header p{color:#8491a3;margin:4px 0 0;font-size:11px;line-height:1.45}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-slot-finder>header span{color:#172033}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-slot-finder>header p{color:#475569}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-reschedule-form>label>span{color:var(--portal-secondary)}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-reschedule-form>label>span small{color:var(--portal-muted)}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-reschedule-form textarea::placeholder{color:var(--portal-muted);opacity:1}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-date-availability label span{color:var(--portal-secondary)}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-date-availability input{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-date-availability input::-webkit-calendar-picker-indicator{filter:invert();opacity:.8}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-date-availability>p:not(.unavailable){color:#475569}[data-theme=dark] .admin-layout .admin-appointment-modal .admin-chosen-date strong,[data-theme=dark] .admin-layout .admin-appointment-modal .admin-earliest-dates h4{color:var(--portal-primary)}[data-theme=dark] .admin-layout .admin-appointment-modal :is(.admin-earliest-dates article button,.admin-date-slot-grid button){color:var(--portal-accent)}.admin-slot-mode-tabs{background:#f8fafc;border:1px solid #e5ebef;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:12px 14px;padding:4px;display:grid}.admin-appointment-modal .admin-slot-mode-tabs button{color:#718096;background:0 0;border:0;min-width:0;min-height:38px}.admin-appointment-modal .admin-slot-mode-tabs button.active{color:#159c9f;background:#fff;box-shadow:0 2px 8px #0f172a12}.admin-earliest-dates{scrollbar-width:thin;max-height:315px;padding:0 14px 14px;overflow-y:auto}.admin-earliest-dates article{border-bottom:1px solid #edf2f5;padding:12px 0}.admin-earliest-dates article:first-child{padding-top:2px}.admin-earliest-dates article.has-selection h4{color:#159c9f}.admin-earliest-dates h4{color:#334155;margin:0 0 9px;font-size:12px}.admin-earliest-dates article>div,.admin-date-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.admin-appointment-modal .admin-earliest-dates article button,.admin-appointment-modal .admin-date-slot-grid button{color:#159c9f;background:#f7fefe;border-color:#bfe8e9;min-width:0;min-height:36px;padding:0 7px;font-size:11px}.admin-appointment-modal .admin-earliest-dates article button:hover,.admin-appointment-modal .admin-date-slot-grid button:hover{background:#eafafa;border-color:#2ec4c7}.admin-appointment-modal .admin-earliest-dates article button.selected,.admin-appointment-modal .admin-date-slot-grid button.selected{color:#fff;background:#2ec4c7;border-color:#2ec4c7;box-shadow:0 4px 12px #2ec4c738}.admin-appointment-modal .admin-show-more-dates{color:#159c9f;background:#fff;border-style:dashed;width:100%;margin-top:10px}.admin-date-availability{padding:0 14px 14px}.admin-date-availability label span{color:#475569;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.admin-date-availability input{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:9px 11px;font-size:13px}.admin-date-availability input:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-chosen-date{justify-content:space-between;align-items:center;gap:12px;margin:13px 0 9px;display:flex}.admin-chosen-date strong{color:#334155;font-size:12px}.admin-chosen-date span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.admin-date-availability>p{color:#64748b;background:#f8fafc;border:1px dashed #dce5eb;border-radius:9px;margin:12px 0 0;padding:12px 13px;font-size:12px;line-height:1.5}.admin-date-availability>p.unavailable{color:#9a5b13;background:#fffaf0;border-color:#fed7aa}.admin-selected-slot{background:#effcfc;border:1px solid #bfe8e9;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:7px 14px;padding:12px 14px;display:grid}.admin-selected-slot span{color:#159c9f;text-transform:uppercase;grid-column:1/-1;font-size:10px;font-weight:800}.admin-selected-slot strong{color:#334155;font-size:13px}.admin-selected-slot small{color:#159c9f;font-size:12px;font-weight:800}@media (width<=650px){.admin-reschedule-summary{grid-template-columns:1fr;margin:13px 15px 0}.admin-reschedule-form{padding:14px 15px 18px}.admin-slot-mode-tabs{grid-template-columns:1fr}.admin-earliest-dates article>div,.admin-date-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-chosen-date{flex-direction:column;align-items:flex-start;gap:4px}.admin-selected-slot{grid-template-columns:1fr auto}}.admin-appointment-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.admin-appointment-modal>footer,.admin-appointment-form footer{z-index:2;background:#fff;position:sticky;bottom:0}.admin-schedule-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-schedule-heading span,.admin-schedule-card header span{color:#159c9f;letter-spacing:.8px;text-transform:uppercase;font-size:12px;font-weight:800}.admin-schedule-heading h2{color:#172033;margin:5px 0;font-size:29px}.admin-schedule-heading p{color:#64748b;margin:0;font-size:14px}.admin-schedule-heading>div:last-child,.admin-schedule-modal>header>div{color:#fff;background:#2ec4c7;border-radius:14px;place-items:center;width:52px;height:52px;font-size:20px;display:grid}.admin-schedule-controls{background:#fff;border:1px solid #e5ebef;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 20px;padding:14px 16px;display:flex}.admin-schedule-controls>div{align-items:center;gap:8px;display:flex}.admin-schedule-controls button,.admin-schedule-controls select{color:#475569;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:40px;padding:0 13px;font:600 13px inherit}.admin-schedule-controls strong{text-align:center;color:#172033;min-width:170px;font-size:13px}.admin-schedule-controls label{color:#159c9f;align-items:center;gap:9px;display:flex}.admin-schedule-controls label span{font-size:12px;font-weight:700}.admin-schedule-card{background:#fff;border:1px solid #e5ebef;border-radius:15px;overflow:hidden}.admin-schedule-card>header{border-bottom:1px solid #e5ebef;justify-content:space-between;align-items:center;gap:16px;min-height:70px;padding:14px 20px;display:flex}.admin-schedule-card h3{color:#172033;margin:4px 0 0;font-size:18px}.admin-schedule-card header p{color:#64748b;margin:0;font-size:12px}.admin-schedule-scroll{overflow-x:auto}.admin-schedule-grid{grid-template-columns:82px repeat(6,minmax(155px,1fr));min-width:1050px;display:grid}.admin-schedule-grid>.corner,.admin-schedule-grid>.day{background:#f8fafc;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;align-content:center;place-items:center;min-height:62px;display:grid}.admin-schedule-grid>.corner{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:800}.admin-schedule-grid>.day strong{color:#334155;font-size:13px}.admin-schedule-grid>.day span{color:#94a3b8;margin-top:3px;font-size:11px}.admin-schedule-grid>.row{display:contents}.admin-schedule-grid .time{color:#64748b;text-align:center;border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;min-height:88px;padding-top:12px;font-size:11px}.admin-schedule-grid .slot{border-bottom:1px solid #edf1f4;border-right:1px solid #edf1f4;min-height:88px;padding:5px}.admin-schedule-grid .appointment{text-align:left;cursor:pointer;border:0;border-left:3px solid;border-radius:8px;width:100%;margin-bottom:4px;padding:8px;font-family:inherit;display:block}.admin-schedule-grid .appointment strong,.admin-schedule-grid .appointment span,.admin-schedule-grid .appointment small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-schedule-grid .appointment strong{font-size:12px}.admin-schedule-grid .appointment span{margin-top:3px;font-size:11px}.admin-schedule-grid .appointment small{margin-top:4px;font-size:10px}.admin-schedule-grid .confirmed{color:#166534;background:#ecfdf3;border-color:#22c55e}.admin-schedule-grid .pending{color:#92400e;background:#fff8e8;border-color:#f59e0b}.admin-schedule-grid .completed{color:#475569;background:#eef2f7;border-color:#64748b}.admin-schedule-modal-overlay{z-index:700;background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-schedule-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,620px);max-height:calc(100dvh - 40px);overflow:auto}.admin-schedule-modal>header{border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-schedule-modal>header>div{width:42px;height:42px}.admin-schedule-modal header small,.admin-schedule-modal header h2{display:block}.admin-schedule-modal header small{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.admin-schedule-modal header h2{color:#172033;margin:3px 0 0;font-size:20px}.admin-schedule-modal header>button{color:#64748b;cursor:pointer;background:0 0;border:0;margin-left:auto}.admin-schedule-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:20px;display:grid}.admin-schedule-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;padding:12px}.admin-schedule-modal-grid span,.admin-schedule-modal-grid strong{display:block}.admin-schedule-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:11px}.admin-schedule-modal-grid strong{color:#334155;margin-top:5px;font-size:13px}.admin-schedule-modal footer{background:#fff;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:16px 20px;display:flex;position:sticky;bottom:0}.admin-schedule-modal footer button{color:#475569;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:40px;padding:0 15px;font:700 12px inherit}.admin-schedule-modal footer .danger{color:#dc2626;background:#fff1f2;border-color:#fecaca}@media (width<=720px){.admin-schedule-heading>div:last-child{display:none}.admin-schedule-controls{flex-direction:column;align-items:stretch}.admin-schedule-controls>div{overflow-x:auto}.admin-schedule-controls label select{flex:1}.admin-schedule-modal-overlay{align-items:end;padding:10px}.admin-schedule-modal-grid{grid-template-columns:1fr}.admin-schedule-modal footer button{flex:1}}.admin-users-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:9px;min-height:42px;margin-bottom:14px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.admin-users-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;padding:5px;display:grid}.admin-users-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.admin-users-heading>div>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.admin-users-heading h2{margin:5px 0 6px;font-size:30px;line-height:1.2}.admin-users-heading p{color:#8491a3;margin:0;font-size:15px}.admin-users-heading>button{color:#fff;cursor:pointer;background:#2ec4c7;border:0;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-users-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.admin-users-summary article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.admin-users-summary article>div{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.admin-users-summary .teal{color:#16aaad;background:#e8fbfb}.admin-users-summary .blue{color:#2563eb;background:#edf4ff}.admin-users-summary .green{color:#15803d;background:#ecfdf3}.admin-users-summary .purple{color:#9333ea;background:#f6efff}.admin-users-summary p{margin:0}.admin-users-summary strong,.admin-users-summary span,.admin-users-summary small{display:block}.admin-users-summary strong{color:#111827;font-size:25px}.admin-users-summary span{color:#64748b;font-size:13px}.admin-users-summary small{color:#94a3b8;margin-top:3px;font-size:11px}.admin-users-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.admin-users-tabs{background:#fff;border:1px solid #e5ebef;border-radius:12px;gap:6px;min-width:0;padding:5px;display:flex}.admin-users-tabs button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-users-tabs button.active{color:#159c9f;background:#eafafa}.admin-users-tabs button span{color:#718096;background:#edf2f5;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;display:grid}.admin-users-tabs button.active span{color:#fff;background:#2ec4c7}.admin-users-search{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,340px);min-height:44px;padding:0 13px;display:flex}.admin-users-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-users-search svg{color:#94a3b8}.admin-users-search input{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:14px}.admin-users-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-users-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.admin-users-panel>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.admin-users-panel>header span{color:#1aaeb1;letter-spacing:.9px;text-transform:uppercase;font-size:12px;font-weight:700}.admin-users-panel>header h3{margin:4px 0 0;font-size:18px}.admin-users-panel>header p{color:#94a3b8;margin:0;font-size:12px}.admin-users-list{gap:12px;display:grid}.admin-user-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:minmax(210px,1fr) minmax(255px,1.2fr) minmax(230px,1fr) minmax(330px,1.3fr);align-items:center;gap:17px;padding:19px;display:grid}.admin-user-card:hover{border-color:#bfeaea;box-shadow:0 10px 24px #1f37490f}.admin-user-identity{align-items:center;gap:11px;min-width:0;display:flex}.admin-user-identity>div{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:13px;font-weight:700;display:grid}.admin-user-identity p{min-width:0;margin:0}.admin-user-identity span,.admin-user-contact>span,.admin-user-access>span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-user-identity strong,.admin-user-identity small,.admin-user-contact strong,.admin-user-contact small,.admin-user-access strong,.admin-user-access small{display:block}.admin-user-identity strong{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 2px;font-size:15px;overflow:hidden}.admin-user-identity small{color:#94a3b8;font-size:12px}.admin-user-contact strong,.admin-user-access strong{overflow-wrap:anywhere;color:#334155;margin:5px 0;font-size:13px}.admin-user-contact small,.admin-user-access small{color:#64748b;font-size:12px;line-height:1.5}.admin-user-access .role{border-radius:7px;width:max-content;padding:5px 8px}.admin-user-access .role.patient{color:#2563eb;background:#edf4ff}.admin-user-access .role.doctor{color:#159c9f;background:#eafafa}.admin-user-access .role.admin{color:#9333ea;background:#f6efff}.admin-user-actions{flex-direction:column;align-items:flex-end;gap:9px;min-width:0;display:flex}.admin-user-status{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.admin-user-status.active{color:#15803d;background:#dcfce7}.admin-user-status.inactive{color:#64748b;background:#eef2f7}.admin-user-actions>div{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-user-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;min-height:35px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700}.admin-user-actions button.danger{color:#dc2626}.admin-user-actions button.activate{color:#15803d;background:#ecfdf3;border-color:#bbf7d0}.admin-users-empty{text-align:center;padding:52px 20px}.admin-users-empty svg{color:#2ec4c7;margin-bottom:13px;font-size:34px}.admin-users-empty h3{margin:0 0 7px}.admin-users-empty p{color:#8491a3;margin:0;font-size:12px}.admin-user-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-user-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,680px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.admin-user-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-user-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.admin-user-modal>header>span{min-width:0}.admin-user-modal>header small{color:#159c9f;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.admin-user-modal>header h2{margin:3px 0 0;font-size:21px}.admin-user-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.admin-user-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:17px 21px 0;display:grid}.admin-user-modal-grid>div{background:#f8fafc;border:1px solid #edf1f4;border-radius:10px;min-width:0;padding:12px}.admin-user-modal-grid span,.admin-user-modal-grid strong{display:block}.admin-user-modal-grid span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-user-modal-grid strong{overflow-wrap:anywhere;color:#334155;margin-top:5px;font-size:13px;line-height:1.45}.admin-user-modal>footer,.admin-user-form footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.admin-user-modal button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700}.admin-user-modal button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-user-modal button.danger{color:#fff;background:#dc2626;border-color:#fecaca}.admin-user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:17px 21px 21px;display:grid}.admin-user-form label>span{color:#475569;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.admin-user-form input,.admin-user-form select{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:0 11px;font-size:14px}.admin-user-form input:focus,.admin-user-form select:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-user-form select:disabled{color:#94a3b8;background:#f8fafc}.admin-user-form label>small{color:#94a3b8;margin-top:6px;font-size:11px;line-height:1.4;display:block}.admin-user-form footer{grid-column:1/-1;padding:3px 0 0}.admin-user-confirm{background:#effcfc;border:1px solid #cee;border-radius:12px;align-items:center;gap:13px;margin:18px 21px 0;padding:15px;display:flex}.admin-user-confirm.danger{background:#fff1f2;border-color:#fecaca}.admin-user-confirm>i{color:#159c9f;background:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;font-style:normal;display:grid}.admin-user-confirm.danger>i{color:#dc2626}.admin-user-confirm p{margin:0}.admin-user-confirm strong,.admin-user-confirm span{display:block}.admin-user-confirm strong{color:#334155;font-size:14px}.admin-user-confirm span{color:#64748b;margin-top:5px;font-size:12px;line-height:1.5}@media (width<=1250px){.admin-users-summary,.admin-user-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-actions{align-items:flex-start}.admin-user-actions>div{justify-content:flex-start}}@media (width<=850px){.admin-users-toolbar{flex-direction:column;align-items:stretch}.admin-users-tabs{overflow-x:auto}.admin-users-tabs button{white-space:nowrap;flex:1}.admin-users-search{width:100%}}@media (width<=650px){.admin-users-heading{flex-direction:column;align-items:flex-start}.admin-users-heading h2{font-size:25px}.admin-users-heading>button{justify-content:center;width:100%}.admin-users-summary{grid-template-columns:1fr}.admin-users-panel{padding:16px}.admin-users-panel>header{flex-direction:column;align-items:flex-start;gap:7px}.admin-user-card{grid-template-columns:1fr;padding:17px}.admin-user-modal-overlay{align-items:end;padding:10px}.admin-user-modal{max-height:calc(100dvh - 20px)}.admin-user-modal-grid,.admin-user-form{grid-template-columns:1fr}.admin-user-form footer{grid-column:1}.admin-user-modal>footer button,.admin-user-form footer button{flex:1}}.admin-user-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.admin-user-modal>footer,.admin-user-form footer{z-index:2;background:#fff;position:sticky;bottom:0}[data-theme=dark] .admin-layout .admin-user-card :is(.admin-user-identity small,.admin-user-contact small,.admin-user-access small){color:#cbd5e1}[data-theme=dark] .admin-layout .admin-user-card .admin-user-access .role.patient{color:#1d4ed8}[data-theme=dark] .admin-layout .admin-user-card .admin-user-access .role.doctor{color:#0f766e}[data-theme=dark] .admin-layout .admin-user-card .admin-user-access .role.admin{color:#7e22ce}[data-theme=dark] .admin-layout .admin-user-card .admin-user-status.inactive{color:#475569}.admin-records-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:9px;min-height:42px;margin-bottom:14px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.admin-records-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;padding:5px;display:grid}.admin-records-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.admin-records-heading>div:first-child>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.admin-records-heading h2{margin:5px 0 6px;font-size:30px;line-height:1.2}.admin-records-heading p{color:#8491a3;margin:0;font-size:15px}.admin-records-heading>div:last-child{color:#159c9f;background:#eafafa;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:18px;display:grid}.admin-records-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.admin-records-summary article{background:#fff;border:1px solid #e1e8ee;border-radius:15px;align-items:center;gap:14px;min-width:0;min-height:98px;padding:17px;display:flex}.admin-records-summary article>div{border-radius:13px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:18px;display:grid}.admin-records-summary .teal{color:#16aaad;background:#e8fbfb}.admin-records-summary .blue{color:#2563eb;background:#edf4ff}.admin-records-summary .green{color:#15803d;background:#ecfdf3}.admin-records-summary .orange{color:#f59e0b;background:#fff8e8}.admin-records-summary p{margin:0}.admin-records-summary strong,.admin-records-summary span,.admin-records-summary small{display:block}.admin-records-summary strong{font-size:25px}.admin-records-summary span{color:#64748b;font-size:13px}.admin-records-summary small{color:#94a3b8;margin-top:3px;font-size:11px}.admin-records-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.admin-records-tabs{background:#fff;border:1px solid #e5ebef;border-radius:12px;gap:6px;padding:5px;display:flex}.admin-records-tabs button{color:#718096;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-records-tabs button.active{color:#159c9f;background:#eafafa}.admin-records-tabs button span{color:#718096;background:#edf2f5;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;display:grid}.admin-records-tabs button.active span{color:#fff;background:#2ec4c7}.admin-records-search{background:#fff;border:1px solid #e5ebef;border-radius:10px;align-items:center;gap:10px;width:min(100%,350px);min-height:44px;padding:0 13px;display:flex}.admin-records-search:focus-within{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-records-search svg{color:#94a3b8}.admin-records-search input{color:#172033;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:14px}.admin-records-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-records-panel{background:#fff;border:1px solid #e5ebef;border-radius:16px;padding:20px}.admin-records-panel>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.admin-records-panel>header span{color:#1aaeb1;text-transform:uppercase;font-size:12px;font-weight:700}.admin-records-panel>header h3{margin:4px 0 0;font-size:18px}.admin-records-panel>header p{color:#94a3b8;margin:0;font-size:12px}.admin-record-directory{gap:12px;display:grid}.admin-record-card{background:#fff;border:1px solid #e5ebef;border-radius:14px;grid-template-columns:minmax(220px,1.1fr) minmax(220px,1fr) minmax(240px,1.1fr) 150px;align-items:center;gap:18px;padding:19px;display:grid}.admin-record-card:hover{border-color:#bfeaea;box-shadow:0 10px 24px #1f37490f}.admin-record-identity{align-items:center;gap:11px;min-width:0;display:flex}.admin-record-identity>div{color:#159c9f;background:#eafafa;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:13px;font-weight:700;display:grid}.admin-record-identity p{min-width:0;margin:0}.admin-record-card>div>span,.admin-record-identity span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.admin-record-card strong,.admin-record-card small{display:block}.admin-record-card strong{color:#334155;margin:4px 0;font-size:14px}.admin-record-card small{color:#64748b;font-size:12px}.admin-record-card-actions{flex-direction:column;align-items:flex-end;gap:9px;display:flex}.admin-record-status{border-radius:999px;width:max-content;padding:6px 9px;font-size:10px;font-weight:700}.admin-record-status.active{color:#15803d;background:#dcfce7}.admin-record-status.inactive{color:#64748b;background:#eef2f7}.admin-record-card-actions button{color:#159c9f;cursor:pointer;background:#effcfc;border:1px solid #cee;border-radius:8px;min-height:40px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:700}.admin-records-empty{text-align:center;padding:52px 20px}.admin-records-empty svg{color:#2ec4c7;margin-bottom:13px;font-size:34px}.admin-records-empty h3{margin:0 0 7px}.admin-records-empty p{color:#8491a3;margin:0;font-size:12px}.admin-full-record{gap:18px;display:grid}.admin-print-heading{display:none}.admin-record-hero{background:linear-gradient(135deg,#fff,#f2fbfb);border:1px solid #dbe8ec;border-radius:16px;grid-template-columns:minmax(280px,1fr) minmax(420px,1.25fr);gap:20px;padding:58px 22px 22px;display:grid;position:relative;box-shadow:0 10px 28px #1f37490d}.admin-record-back{color:#159c9f;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex;position:absolute;top:16px;left:20px}.admin-record-hero-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.admin-record-hero-main>div{color:#fff;background:#2ec4c7;border-radius:18px;place-items:center;width:66px;height:66px;font-size:20px;font-weight:800;display:grid}.admin-record-hero-main p{min-width:0;margin:0}.admin-record-hero-main p>span{color:#1aaeb1;text-transform:uppercase;font-size:12px;font-weight:800}.admin-record-hero-main h2{margin:4px 0;font-size:28px}.admin-record-hero-main small{color:#64748b;font-size:14px}.admin-record-hero-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-record-hero-meta p{background:#ffffffdb;border:1px solid #e5ebef;border-radius:11px;min-width:0;margin:0;padding:13px}.admin-record-hero-meta span,.admin-record-hero-meta strong{display:block}.admin-record-hero-meta span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-record-hero-meta strong{overflow-wrap:anywhere;color:#334155;margin-top:5px;font-size:13px;line-height:1.45}.admin-record-view-tabs{scrollbar-width:thin;background:#fff;border:1px solid #e5ebef;border-radius:14px;gap:6px;padding:6px;display:flex;overflow-x:auto}.admin-record-view-tabs button{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:9px;flex:1 0 auto;min-height:42px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:700}.admin-record-view-tabs button:not([aria-selected=true]):hover{color:#138f92;background:#eafafa}.admin-record-view-tabs button[aria-selected=true]{color:#126e72;background:#eafafa;border-color:#bfeaea;box-shadow:inset 0 -3px #159c9f}.admin-record-view-tabs button:focus-visible{outline-offset:2px;outline:2px solid #159c9f}.admin-record-tab-panel[hidden]{display:none!important}.admin-record-tab-panel>.dental-chart,.admin-record-tab-panel>.clinical-images{min-width:0;margin:0}.admin-dental-chart-panel{gap:18px;display:grid}.admin-dental-chart-panel>.dental-chart-history{box-sizing:border-box;color:#203f3d;background:#fff;border:1px solid #dbe8e6;border-radius:18px;width:100%;margin:0;padding:24px;box-shadow:0 8px 25px #1246430f}.admin-dental-chart-panel>.dental-chart-history>header{justify-content:space-between;align-items:flex-start;gap:24px;min-width:0;margin-bottom:6px;display:flex}.admin-dental-chart-panel>.dental-chart-history>header>div{min-width:0}.admin-dental-chart-panel>.dental-chart-history h4{font-size:1.35rem}.admin-dental-chart-panel>.dental-chart-history>article{gap:20px;padding:18px 0}.admin-dental-chart-panel>.dental-chart-history>article:last-of-type{border-bottom:0}.admin-dental-chart-panel .dental-chart-history-content{flex:1;min-width:0}.admin-dental-chart-panel>.dental-chart-history article strong,.admin-dental-chart-panel>.dental-chart-history article small,.admin-dental-chart-panel>.dental-chart-history article em{overflow-wrap:anywhere}.admin-dental-chart-panel>.dental-chart-history article strong{font-size:17px;font-weight:700;line-height:1.4}.admin-dental-chart-panel>.dental-chart-history article span{margin-top:7px;font-size:14px;font-weight:600;line-height:1.5}.admin-dental-chart-panel>.dental-chart-history article small{margin-top:6px;font-size:13px;line-height:1.6}.admin-dental-chart-panel>.dental-chart-history article p{box-sizing:border-box;overflow-wrap:anywhere;white-space:pre-wrap;border:1px solid #e5efed;border-radius:9px;width:min(100%,680px);margin-top:10px;padding:11px 12px;font-size:14px;line-height:1.65}.admin-dental-chart-panel>.dental-chart-history article em{margin-top:8px;font-size:12px;line-height:1.5}html[data-theme=dark] .admin-page .admin-record-view-tabs{border-color:var(--portal-border);background:var(--portal-elevated)}html[data-theme=dark] .admin-page .admin-record-view-tabs button{color:var(--portal-secondary);background:0 0}html[data-theme=dark] .admin-page .admin-record-view-tabs button:not([aria-selected=true]):hover{color:var(--portal-primary);border-color:var(--portal-border);background:var(--portal-accent-soft)}html[data-theme=dark] .admin-page .admin-record-view-tabs button[aria-selected=true]{color:var(--portal-accent);border-color:var(--portal-accent);background:color-mix(in srgb,var(--portal-accent) 22%,var(--portal-elevated));box-shadow:inset 0 -3px var(--portal-accent)}html[data-theme=dark] .admin-page .admin-record-view-tabs button:focus-visible{outline-color:var(--portal-accent)}html[data-theme=dark] .admin-page .admin-dental-chart-panel>.dental-chart-history{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}html[data-theme=dark] .admin-page .admin-dental-chart-panel>.dental-chart-history>article{border-color:var(--portal-border)}html[data-theme=dark] .admin-page .admin-dental-chart-panel .dental-chart-history :is(h4,article strong){color:var(--portal-primary)}html[data-theme=dark] .admin-page .admin-dental-chart-panel .dental-chart-history :is(header>small,article small){color:var(--portal-secondary)}html[data-theme=dark] .admin-page .admin-dental-chart-panel .dental-chart-history article span{color:#67d7d8}html[data-theme=dark] .admin-page .admin-dental-chart-panel .dental-chart-history article p{color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}html[data-theme=dark] .admin-page .admin-dental-chart-panel .dental-chart-history article em{color:#c4b5fd}.admin-record-actions{background:#fff;border:1px solid #e5ebef;border-radius:14px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:14px 16px;display:flex}.admin-record-actions>div{min-width:220px;margin-right:auto}.admin-record-actions>div strong,.admin-record-actions>div span{display:block}.admin-record-actions>div strong{font-size:15px}.admin-record-actions>div span{color:#94a3b8;margin-top:3px;font-size:12px}.admin-record-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-record-actions button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-record-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-record-section{background:#fff;border:1px solid #e5ebef;border-radius:15px;overflow:hidden}.admin-record-section.wide{grid-column:1/-1}.admin-record-section>header{background:linear-gradient(90deg,#fff,#fbfefe);border-bottom:1px solid #edf1f4;align-items:center;gap:12px;min-height:72px;padding:14px 18px;display:flex}.admin-record-section>header>div{color:#159c9f;background:#eafafa;border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:14px;display:grid}.admin-record-section>header small{color:#1aaeb1;text-transform:uppercase;font-size:12px;font-weight:700;display:block}.admin-record-section>header h3{margin:3px 0 0;font-size:18px}.admin-record-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 18px 18px;display:grid}.admin-record-info-grid p,.admin-record-clinical p{background:#f8fafc;border-radius:10px;min-width:0;margin:0;padding:12px}.admin-record-info-grid span,.admin-record-info-grid strong{display:block}.admin-record-info-grid span,.admin-record-clinical small{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-record-info-grid strong,.admin-record-clinical strong{overflow-wrap:anywhere;color:#334155;margin-top:4px;font-size:13px;line-height:1.5;display:block}.admin-record-clinical{gap:10px;padding:16px 18px 18px;display:grid}.admin-record-clinical p{align-items:flex-start;gap:10px;display:flex}.admin-record-clinical p>svg{color:#159c9f;flex-shrink:0;margin-top:2px}.admin-record-clinical .allergy{background:#fff1f2;border:1px solid #fecaca}.admin-record-clinical .allergy>svg,.admin-record-clinical .allergy small{color:#dc2626}.admin-record-history,.admin-record-notes{gap:10px;padding:16px 18px 18px;display:grid}.admin-record-history article{border:1px solid #e5ebef;border-radius:12px;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.admin-record-history time{color:#159c9f;font-size:12px;font-weight:700}.admin-record-history article>div strong,.admin-record-history article>div span{display:block}.admin-record-history article>div strong{font-size:14px}.admin-record-history article>div span{color:#64748b;margin-top:3px;font-size:12px}.admin-record-history article p{color:#64748b;margin:6px 0 0;font-size:12px;line-height:1.5}.admin-record-history-status{color:#15803d;background:#dcfce7;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700}.admin-record-notes article{border:1px solid #e5ebef;border-radius:12px;overflow:hidden}.admin-record-notes article header{background:#f4fbfb;border-bottom:1px solid #edf1f4;justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.admin-record-notes header strong{font-size:14px}.admin-record-notes header span{color:#64748b;font-size:12px}.admin-record-notes article p{color:#475569;margin:0;padding:14px;font-size:13px;line-height:1.6}.admin-record-appointments{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 18px 18px;display:grid}.admin-record-appointments p{background:#f8fafc;border:1px solid #e5ebef;border-radius:12px;margin:0;padding:15px}.admin-record-appointments p.upcoming{background:#effcfc;border-color:#bfeaea}.admin-record-appointments span,.admin-record-appointments strong{display:block}.admin-record-appointments span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.admin-record-appointments strong{color:#334155;margin-top:5px;font-size:13px}.admin-record-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-record-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,680px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.admin-record-modal>header{background:linear-gradient(135deg,#fff,#effcfc);border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-record-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.admin-record-modal>header>span{min-width:0}.admin-record-modal>header small{color:#159c9f;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.admin-record-modal>header h2{margin:3px 0 0;font-size:21px}.admin-record-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.admin-record-modal>footer,.admin-record-form footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:17px 21px 21px;display:flex}.admin-record-modal button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700}.admin-record-modal button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-record-modal button.danger{color:#fff;background:#dc2626;border-color:#fecaca}.admin-record-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:17px 21px 21px;display:grid}.admin-record-form label>span{color:#475569;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.admin-record-form input,.admin-record-form select,.admin-record-form textarea{color:#334155;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:10px 11px;font-size:14px}.admin-record-form textarea{resize:vertical}.admin-record-form .wide,.admin-record-form footer{grid-column:1/-1}.admin-record-form footer{padding:3px 0 0}.admin-record-status-confirm{background:#effcfc;border:1px solid #cee;border-radius:12px;align-items:center;gap:13px;margin:18px 21px 0;padding:15px;display:flex}.admin-record-status-confirm svg{color:#159c9f;flex-shrink:0;font-size:22px}.admin-record-status-confirm p{margin:0}.admin-record-status-confirm strong,.admin-record-status-confirm span{display:block}.admin-record-status-confirm strong{font-size:14px}.admin-record-status-confirm span{color:#64748b;margin-top:5px;font-size:12px;line-height:1.5}@media (width<=1200px){.admin-records-summary,.admin-record-card{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-record-card-actions{align-items:flex-start}.admin-record-hero,.admin-record-detail-grid{grid-template-columns:1fr}.admin-record-section.wide{grid-column:auto}}@media (width<=850px){.admin-records-toolbar{flex-direction:column;align-items:stretch}.admin-records-tabs{overflow-x:auto}.admin-records-tabs button{white-space:nowrap;flex:1}.admin-records-search{width:100%}.admin-record-hero-meta{grid-template-columns:1fr}}@media (width<=650px){.admin-records-heading{align-items:flex-start}.admin-records-heading h2{font-size:25px}.admin-records-heading>div:last-child{display:none}.admin-records-summary{grid-template-columns:1fr}.admin-records-panel{padding:16px}.admin-records-panel>header{flex-direction:column;align-items:flex-start;gap:7px}.admin-record-card{grid-template-columns:1fr;padding:17px}.admin-record-hero{padding:60px 16px 16px}.admin-record-hero-main{grid-template-columns:auto minmax(0,1fr)}.admin-record-hero-main>.admin-record-status{grid-column:2}.admin-record-hero-main h2{font-size:23px}.admin-record-actions{justify-content:flex-start}.admin-record-actions>div{width:100%;margin:0 0 4px}.admin-record-actions button{flex:1}.admin-record-info-grid,.admin-record-appointments,.admin-record-history article{grid-template-columns:1fr}.admin-record-notes article header{flex-direction:column;align-items:flex-start}.admin-record-modal-overlay{align-items:end;padding:10px}.admin-record-modal{max-height:calc(100dvh - 20px)}.admin-record-form{grid-template-columns:1fr}.admin-record-form .wide,.admin-record-form footer{grid-column:1}.admin-record-modal>footer button,.admin-record-form footer button{flex:1}}@media print{@page{size:A4;margin:14mm}body{color:#172033!important;background:#fff!important}.admin-layout{min-height:0;background:#fff!important;display:block!important}.admin-sidebar-wrapper,.admin-topbar,.admin-record-actions,.admin-record-back,.admin-record-modal-overlay,.admin-records-feedback{display:none!important}.admin-content,.admin-page{width:100%!important;min-height:0!important;padding:0!important}.admin-full-record{color:#172033;background:#fff;display:block}.admin-print-heading{border-bottom:2px solid #172033;margin-bottom:14px;padding-bottom:10px;display:block}.admin-print-heading h1{margin:0;font-size:20px}.admin-print-heading p{color:#475569;margin:4px 0 0;font-size:11px}.admin-record-hero{box-shadow:none;background:#fff;border:1px solid #94a3b8;border-radius:0;margin-bottom:12px;padding:12px;display:block}.admin-record-hero-main{margin-bottom:10px}.admin-record-hero-meta{grid-template-columns:repeat(3,1fr)}.admin-record-detail-grid{display:block}.admin-record-section{break-inside:avoid;border-color:#94a3b8;border-radius:0;margin-bottom:12px}.admin-record-section>header{background:#fff;min-height:0;padding:8px 10px}.admin-record-section>header>div{display:none}.admin-record-section>header h3{font-size:14px}.admin-record-info-grid,.admin-record-clinical,.admin-record-history,.admin-record-notes,.admin-record-appointments{padding:10px}.admin-record-info-grid p,.admin-record-clinical p,.admin-record-history article,.admin-record-notes article,.admin-record-appointments p{box-shadow:none;background:#fff;border-color:#d1d5db}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.admin-record-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.admin-record-modal>footer,.admin-record-form footer{z-index:2;background:#fff;position:sticky;bottom:0}.admin-clinical-workspace{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-clinical-workspace>.dental-chart{grid-column:1/-1;min-width:0;margin-top:0}.admin-record-timeline,.admin-record-instructions{gap:10px;padding:16px 18px 18px;display:grid}.admin-record-timeline article{border-bottom:1px solid #edf1f4;grid-template-columns:130px minmax(0,1fr);gap:14px;padding:14px 0;display:grid}.admin-record-timeline time{color:#159c9f;font-size:12px;font-weight:700}.admin-record-timeline strong,.admin-record-timeline span,.admin-record-timeline small{display:block}.admin-record-timeline strong{font-size:14px}.admin-record-timeline span,.admin-record-timeline small{color:#64748b;margin-top:4px;font-size:12px}.admin-record-instructions>article{background:#f8fafc;border:1px solid #e5ebef;border-radius:12px;padding:15px}.admin-record-instructions header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-record-instructions header span,.admin-record-instructions header strong{display:block}.admin-record-instructions header div>span{color:#159c9f;text-transform:uppercase;font-size:10px;font-weight:800}.admin-record-instructions header strong{margin-top:4px;font-size:14px}.admin-record-instructions>article>p{color:#334155;white-space:pre-wrap;font-size:13px;line-height:1.6}.admin-record-instructions>article>small{color:#64748b;font-size:11px}.admin-instruction-status{border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.admin-instruction-status.draft{color:#92400e;background:#fef3c7}.admin-instruction-status.published{color:#15803d;background:#dcfce7}.admin-instruction-status.withdrawn{color:#64748b;background:#e2e8f0}@media (width<=850px){.admin-clinical-workspace{grid-template-columns:1fr}}@media (width<=650px){.admin-record-timeline article{grid-template-columns:1fr;gap:5px}.admin-record-instructions header{flex-direction:column}.admin-dental-chart-panel>.dental-chart-history{padding:16px}.admin-dental-chart-panel>.dental-chart-history>header{display:block}.admin-dental-chart-panel>.dental-chart-history>article{gap:12px;padding:15px 0}}@media print{.admin-record-view-tabs{display:none!important}.admin-record-tab-panel[hidden]{display:grid!important}}.admin-operations-feedback{color:#15803d;background:#f0fdf4;border:1px solid #bde9d0;border-radius:11px;align-items:center;gap:10px;min-height:44px;margin-bottom:16px;padding:0 15px;font-size:13px;font-weight:600;display:flex}.admin-operations-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;padding:6px;display:grid}.admin-operations-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:20px;display:flex}.admin-operations-heading>div:first-child>span{color:#1aaeb1;letter-spacing:1px;text-transform:uppercase;font-size:12px;font-weight:700}.admin-operations-heading h2{color:#172033;margin:5px 0 6px;font-size:30px;line-height:1.2}.admin-operations-heading p{color:#8491a3;margin:0;font-size:15px}.admin-operations-heading-icon{color:#159c9f;background:#eafafa;border-radius:13px;flex-shrink:0;place-items:center;width:50px;height:50px;font-size:19px;display:grid}.admin-clinic-hero{background:#fff;border:1px solid #cfe9e9;border-radius:18px;margin-bottom:22px;overflow:hidden;box-shadow:0 12px 30px #1720330e}.admin-clinic-hero-top{background:linear-gradient(100deg,#effbfb 0%,#f8fdfd 58%,#fff 100%);border-bottom:1px solid #dceeee;justify-content:space-between;align-items:center;gap:20px;min-height:104px;padding:20px 22px;display:flex}.admin-clinic-hero-brand{align-items:center;gap:15px;min-width:0;display:flex}.admin-clinic-hero-brand>div{color:#fff;background:#2ec4c7;border-radius:15px;flex-shrink:0;place-items:center;width:54px;height:54px;font-size:21px;display:grid;box-shadow:0 8px 18px #2ec4c738}.admin-clinic-hero-brand>span{min-width:0}.admin-clinic-hero-brand small{color:#159c9f;letter-spacing:.8px;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.admin-clinic-hero-brand h3{color:#172033;margin:4px 0;font-size:22px}.admin-clinic-hero-brand p{color:#718096;margin:0;font-size:13px}.admin-clinic-hero-top>button{color:#159c9f;cursor:pointer;background:#fff;border:1px solid #bfe5e5;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 17px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-clinic-hero-content{grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:20px;padding:20px 22px 22px;display:grid}.admin-clinic-hero-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;display:grid}.admin-clinic-hero-metrics article{background:#fff;border:1px solid #e5ebef;border-radius:12px;min-width:0;padding:15px}.admin-clinic-hero-metrics article:first-child{background:#f5fcf8;border-color:#c9ead7}.admin-clinic-hero-metrics article.closed{background:#fff8f7;border-color:#f3d4d1}.admin-clinic-hero-metrics span,.admin-clinic-hero-metrics strong,.admin-clinic-hero-metrics small{display:block}.admin-clinic-hero-metrics span{color:#8491a3;letter-spacing:.45px;text-transform:uppercase;font-size:10px;font-weight:800}.admin-clinic-hero-metrics strong{color:#172033;margin-top:7px;font-size:18px;line-height:1.25}.admin-clinic-hero-metrics article.open strong{color:#208b59}.admin-clinic-hero-metrics article.closed strong{color:#c94d47}.admin-clinic-hero-metrics small{color:#94a3b8;margin-top:5px;font-size:11px;line-height:1.35}.admin-clinic-contact{border-left:1px solid #e5ebef;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-left:20px;display:grid}.admin-clinic-contact p{background:#f8fafc;border-radius:10px;min-width:0;margin:0;padding:11px 12px}.admin-clinic-contact p.wide{grid-column:1/-1}.admin-clinic-contact span,.admin-clinic-contact strong{display:block}.admin-clinic-contact span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:800}.admin-clinic-contact strong{overflow-wrap:anywhere;color:#334155;margin-top:5px;font-size:12px;line-height:1.5}.admin-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px;display:grid}.admin-operation-card{background:#fff;border:1px solid #e5ebef;border-radius:16px;min-width:0;transition:box-shadow .2s,transform .2s;overflow:hidden;box-shadow:0 8px 24px #1720330a}.admin-operation-card:hover{transform:translateY(-1px);box-shadow:0 12px 30px #17203311}.admin-operation-card.closed-card,.admin-operation-card.services-card{grid-column:1/-1}.admin-operation-card>header{background:#fbfefe;border-bottom:1px solid #edf1f4;align-items:center;gap:12px;min-height:94px;padding:17px 20px;display:flex}.admin-operation-card-icon{border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:17px;display:grid}.admin-operation-card>header>div:nth-child(2){min-width:0}.admin-operation-card>header span{letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.admin-operation-card h3{color:#172033;margin:4px 0 0;font-size:19px}.admin-operation-card>header>div:nth-child(2)>p{color:#8491a3;margin:5px 0 0;font-size:12px;line-height:1.4}.admin-operation-card-action{align-self:center;margin-left:auto}.admin-operation-card-action button,.admin-card-footer-actions button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 15px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-operation-card.hours-card{border-top:3px solid #4f8fe8}.admin-operation-card.hours-card>header{background:#f7faff}.hours-card .admin-operation-card-icon{color:#2563b9;background:#e4efff}.hours-card>header span{color:#3978cf}.hours-card .admin-operation-card-action button{color:#3978cf;background:#fff;border:1px solid #cfe0f8}.admin-operation-card.slots-card{border-top:3px solid #8b6bd6}.admin-operation-card.slots-card>header{background:#faf8ff}.slots-card .admin-operation-card-icon{color:#7252bd;background:#eee8ff}.slots-card>header span{color:#7252bd}.slots-card .admin-operation-card-action button{color:#7252bd;background:#fff;border:1px solid #ddd3f7}.admin-operation-card.closed-card{border-top:3px solid #ef766f}.admin-operation-card.closed-card>header{background:#fff9f8}.closed-card .admin-operation-card-icon{color:#d6534c;background:#ffe8e6}.closed-card>header span{color:#d6534c}.closed-card .admin-operation-card-action button{color:#c94d47;background:#fff;border:1px solid #f7d0cd}.admin-operation-card.services-card{border-top:3px solid #35b77b}.admin-operation-card.services-card>header{background:#f6fcf9}.services-card .admin-operation-card-icon{color:#208b59;background:#e1f7eb}.services-card>header span{color:#258e5e}.services-card .admin-operation-card-action button{color:#208b59;background:#fff;border:1px solid #c8ead8}.admin-hours-list{padding:18px 20px 20px;display:grid}.admin-hours-table-head,.admin-hours-row{grid-template-columns:minmax(82px,1fr) 100px minmax(105px,1fr) minmax(105px,1fr);align-items:center;gap:10px;display:grid}.admin-hours-table-head{border-bottom:1px solid #dce8f3;padding-bottom:10px}.admin-hours-table-head span{color:#7890aa;letter-spacing:.45px;text-transform:uppercase;font-size:10px;font-weight:800}.admin-hours-row{border-bottom:1px solid #edf1f4;min-height:56px}.admin-hours-row:last-child{border-bottom:0}.admin-hours-row>strong{color:#334155;font-size:13px}.admin-hours-status{border-radius:999px;width:max-content;padding:6px 10px;font-size:11px;font-weight:700}.admin-hours-status.open{color:#25724c;background:#e9f8ef}.admin-hours-status.closed{color:#c44f49;background:#fff0ef}.admin-hours-value{color:#475569;font-size:13px;font-weight:600}.admin-hours-status-control{align-items:center;gap:7px;display:flex}.admin-hours-status-control>span{color:#64748b;font-size:11px;font-weight:700}.admin-hours-time{color:#334155;width:100%;min-width:0;min-height:38px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:8px;padding:0 7px;font-size:12px}.admin-hours-time:disabled{color:#94a3b8;background:#f8fafc}.admin-card-footer-actions{justify-content:flex-end;gap:8px;padding:0 20px 20px;display:flex}.admin-card-footer-actions button{color:#64748b;background:#fff;border:1px solid #dce5eb}.admin-card-footer-actions button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-operations-toggle{cursor:pointer;background:#cbd5e1;border:0;border-radius:999px;flex-shrink:0;width:42px;height:24px;padding:0;transition:all .2s;position:relative}.admin-operations-toggle span{background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a38}.admin-operations-toggle.on{background:#2ec4c7}.admin-operations-toggle.on span{transform:translate(18px)}.admin-slot-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:20px 20px 12px;display:grid}.admin-slot{background:#fbfaff;border:1px solid #ded7f3;border-radius:11px;align-items:center;gap:8px;min-width:0;min-height:58px;padding:8px 8px 8px 12px;display:flex;box-shadow:inset 3px 0 #8b6bd6}.admin-slot strong{color:#6245aa;margin-right:auto;font-size:13px}.admin-slot.disabled{box-shadow:none;opacity:.7;background:#f5f7f9;border-color:#e8edf1}.admin-slot.disabled strong{color:#94a3b8;text-decoration:line-through}.admin-slot .admin-operations-toggle{width:38px;height:22px}.admin-slot .admin-operations-toggle span{width:16px;height:16px}.admin-slot .admin-operations-toggle.on span{transform:translate(16px)}.admin-slot>button:last-child{color:#94a3b8;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;padding:0;display:grid}.admin-slot>button:last-child:hover{color:#dc2626;background:#fff1f2}.admin-operations-note{color:#94a3b8;margin:0;padding:0 20px 20px;font-size:11px;line-height:1.5}.admin-closed-list{gap:8px;padding:20px;display:grid}.admin-closed-list article{background:#fffdfd;border:1px solid #f4dfdd;border-radius:11px;grid-template-columns:112px minmax(0,1fr) 34px;align-items:center;gap:14px;min-height:60px;padding:8px 11px 8px 13px;display:grid}.admin-closed-list time{color:#c94d47;background:#ffe9e7;border-radius:8px;width:max-content;padding:7px 9px;font-size:12px;font-weight:700}.admin-closed-list strong,.admin-closed-list span{display:block}.admin-closed-list strong{color:#334155;font-size:13px}.admin-closed-list span{color:#b06560;text-transform:uppercase;margin-top:4px;font-size:10px;font-weight:700}.admin-closed-list article>button{color:#c96b65;cursor:pointer;background:#fff0ef;border:0;border-radius:8px;place-items:center;width:32px;height:32px;padding:0;display:grid}.admin-closed-list article>button:hover{color:#b91c1c;background:#fee2e2}.admin-service-list{gap:8px;padding:20px;display:grid}.admin-service-table-head,.admin-service-list article{grid-template-columns:44px minmax(220px,1fr) 120px 100px 210px;align-items:center;gap:12px;display:grid}.admin-service-table-head{border-bottom:1px solid #dce9e1;padding:0 14px 8px}.admin-service-table-head span{color:#789587;letter-spacing:.45px;text-transform:uppercase;font-size:10px;font-weight:800}.admin-service-table-head span:first-child{grid-column:1/3}.admin-service-list article{background:#fcfefd;border:1px solid #e1eee7;border-radius:12px;min-height:68px;padding:11px 14px}.admin-service-icon{color:#208b59;background:#e1f7eb;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.admin-service-list article>div:nth-child(2){min-width:0}.admin-service-list strong{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.admin-service-duration{color:#64748b;font-size:13px}.admin-service-status{border-radius:999px;justify-self:start;width:max-content;padding:6px 9px;font-size:10px;font-weight:700}.admin-service-status.active{color:#18794e;background:#e8f8ef;border:1px solid #bce8cf}.admin-service-status.inactive{color:#718096;background:#f1f4f6;border:1px solid #dce3e9}.admin-service-actions{justify-content:flex-end;gap:7px;display:flex}.admin-service-actions button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:68px;min-height:34px;padding:0 11px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.admin-service-actions button:hover{color:#208b59;background:#f1fbf5;border-color:#bfe3cf}.admin-operations-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:20px;display:grid}.admin-clinic-hero-form{padding:20px 22px 22px}.admin-operations-form label.wide{grid-column:1/-1}.admin-operations-form label>span,.admin-operations-modal-form label>span{color:#475569;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.admin-operations-form input,.admin-operations-form textarea,.admin-operations-modal-form input,.admin-operations-modal-form select{color:#334155;width:100%;min-height:43px;font:inherit;background:#fff;border:1px solid #dce5eb;border-radius:9px;outline:0;padding:10px 11px;font-size:14px}.admin-operations-form textarea{resize:vertical}.admin-operations-form input:focus,.admin-operations-form textarea:focus,.admin-operations-modal-form input:focus,.admin-operations-modal-form select:focus{border-color:#2ec4c7;box-shadow:0 0 0 3px #2ec4c71f}.admin-operations-form-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.admin-operations-form-actions button,.admin-operations-modal-form footer button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.admin-operations-form-actions button.primary,.admin-operations-modal-form footer button.primary{color:#fff;background:#2ec4c7;border-color:#2ec4c7}.admin-operations-modal-overlay{z-index:650;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-operations-modal{background:#fff;border:1px solid #dce5eb;border-radius:16px;width:min(100%,590px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 28px 80px #0f172a47}.admin-operations-modal>header{background:#effcfc;border-bottom:1px solid #e5ebef;align-items:center;gap:12px;padding:19px 21px;display:flex}.admin-operations-modal>header>div{color:#fff;background:#2ec4c7;border-radius:11px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.admin-operations-modal>header>span{min-width:0}.admin-operations-modal>header small{color:#159c9f;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.admin-operations-modal>header h2{margin:3px 0 0;font-size:21px}.admin-operations-modal>header>button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e5ebef;border-radius:9px;place-items:center;width:34px;height:34px;margin-left:auto;padding:0;display:grid}.admin-operations-modal-form{gap:13px;padding:18px 21px 21px;display:grid}.admin-operations-modal-form.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-operations-modal-form .wide,.admin-operations-modal-form footer{grid-column:1/-1}.admin-operations-modal-form footer{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}@media (width<=1250px){.admin-clinic-hero-content{grid-template-columns:1fr}.admin-clinic-contact{border:0;padding:0}.admin-service-table-head,.admin-service-list article{grid-template-columns:40px minmax(170px,1fr) 90px 90px 190px}.admin-slot-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.admin-operations-grid{grid-template-columns:1fr}.admin-operation-card.closed-card,.admin-operation-card.services-card{grid-column:auto}.admin-clinic-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-slot-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=720px){.admin-operations-heading{align-items:flex-start}.admin-operations-heading-icon{display:none}.admin-operations-heading h2{font-size:26px}.admin-clinic-hero-top{flex-direction:column;align-items:flex-start}.admin-clinic-hero-top>button{width:100%}.admin-clinic-hero-content{padding:18px}.admin-clinic-hero-metrics{grid-template-columns:1fr 1fr}.admin-clinic-contact{grid-template-columns:1fr}.admin-clinic-contact p.wide{grid-column:auto}.admin-operations-grid{gap:18px}.admin-operation-card>header{flex-wrap:wrap;align-items:flex-start;min-height:auto;padding:16px 18px}.admin-operation-card-action{width:100%;margin-left:56px}.admin-hours-list,.admin-slot-list,.admin-closed-list,.admin-service-list{padding:18px}.admin-hours-table-head{display:none}.admin-hours-row{grid-template-columns:minmax(88px,1fr) auto;gap:8px;padding:10px 0}.admin-hours-status,.admin-hours-status-control{justify-self:end}.admin-hours-value,.admin-hours-time{grid-column:1/-1}.admin-hours-value:before{color:#94a3b8;text-transform:uppercase;width:92px;font-size:10px;font-weight:700;display:inline-block}.admin-hours-value:nth-last-child(2):before{content:"Opening Time"}.admin-hours-value:last-child:before{content:"Closing Time"}.admin-slot-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-service-table-head{display:none}.admin-service-list article{grid-template-columns:40px minmax(0,1fr) auto}.admin-service-duration{grid-column:2}.admin-service-status{grid-area:1/3/3}.admin-service-actions{grid-column:1/-1}.admin-service-actions button{flex:1}.admin-operations-form{grid-template-columns:1fr;padding:18px}.admin-operations-form label.wide,.admin-operations-form-actions{grid-column:1}.admin-operations-modal-overlay{align-items:end;padding:10px}.admin-operations-modal{max-height:calc(100dvh - 20px)}.admin-operations-modal-form.two-column{grid-template-columns:1fr}.admin-operations-modal-form .wide,.admin-operations-modal-form footer{grid-column:1}}@media (width<=480px){.admin-clinic-hero-brand{align-items:flex-start}.admin-clinic-hero-brand h3{font-size:19px}.admin-clinic-hero-metrics{grid-template-columns:1fr}.admin-operation-card-action{margin-left:0}.admin-operation-card-action button{width:100%}.admin-slot-list{grid-template-columns:1fr}.admin-closed-list article{grid-template-columns:1fr auto}.admin-closed-list time,.admin-closed-list article>div{grid-column:1}.admin-closed-list article>button{grid-area:1/2/3}.admin-service-list article{grid-template-columns:40px minmax(0,1fr)}.admin-service-duration,.admin-service-status{grid-area:auto/2}.admin-service-actions{grid-column:1/-1}.admin-operations-form-actions button,.admin-card-footer-actions button,.admin-operations-modal-form footer button{flex:1}}.admin-operations-modal{overscroll-behavior:contain;scrollbar-gutter:stable}.admin-operations-modal-form footer{z-index:2;background:#fff;position:sticky;bottom:0}.admin-break-list{gap:8px;padding:20px;display:grid}.admin-break-list article{border:1px solid #e5ebef;border-radius:11px;grid-template-columns:minmax(90px,1fr) minmax(150px,1fr) auto auto auto;align-items:center;gap:10px;padding:11px 13px;display:grid}.admin-break-list strong{color:#334155;font-size:13px}.admin-break-list span{color:#64748b;font-size:12px}.admin-break-list article>button:not(.admin-operations-toggle){color:#64748b;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce5eb;border-radius:8px;padding:0 9px;font-size:11px;font-weight:700}.admin-operation-card.breaks-card{grid-column:1/-1}@media (width<=720px){.admin-break-list article{grid-template-columns:1fr auto}.admin-break-list article>span{grid-column:1}.admin-break-list article>button:not(.admin-operations-toggle){grid-row:auto}}.not-found-page{background:#f4f7f9;place-items:center;min-height:100vh;padding:24px;font-family:Arial,Helvetica,sans-serif;display:grid}.not-found-card{text-align:center;background:#fff;border:1px solid #e5ebef;border-radius:16px;width:min(460px,100%);padding:42px 28px;box-shadow:0 12px 32px #0f172a12}.not-found-icon{color:#159c9f;background:#eafafa;border-radius:16px;place-items:center;width:58px;height:58px;margin:0 auto 18px;font-size:24px;display:grid}.not-found-card>span{color:#159c9f;letter-spacing:.12em;font-size:12px;font-weight:800}.not-found-card h1{color:#172033;margin:8px 0 10px;font-size:30px}.not-found-card p{color:#64748b;margin:0 auto 24px;font-size:14px;line-height:1.6}.not-found-card a{color:#fff;background:#159c9f;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:0 18px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.verification-page{--text-primary:#0f172a;--text-secondary:#64748b;--text-muted:#64748b;--input-bg:#fff;--border:#d5e9eb;--accent:#128f92;--accent-bright:#128f92;--accent-soft:#e8fbfb;isolation:isolate;min-height:100svh;color:var(--text-primary);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:radial-gradient(at 77% 28%,#20b8bb29,#0000 42%),radial-gradient(at 16% 86%,#2ec4c71f,#0000 44%),linear-gradient(145deg,#fff 5%,#f7fcfc 52%,#e8fbfb 100%);flex-direction:column;display:flex;position:relative;overflow:clip}.verification-page:before,.verification-page:after{content:"";z-index:-1;pointer-events:none;aspect-ratio:1;border:1px solid #20b8bb1f;border-radius:50%;width:min(76vw,900px);position:absolute}.verification-page:before{top:-55%;right:-20%;box-shadow:0 0 0 60px #20b8bb06}.verification-page:after{bottom:-68%;left:-23%;box-shadow:0 0 0 50px #20b8bb06}.verification-header{align-items:center;width:min(1180px,100% - 48px);min-height:100px;margin-inline:auto;display:flex}.verification-brand{text-align:left;color:var(--text-primary);background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:4px;display:inline-flex}.verification-brand-mark{width:46px;height:46px;color:var(--accent);background:var(--accent-soft);border:1px solid #b9e7e8;border-radius:13px;flex:none;place-items:center;font-size:20px;display:grid}.verification-brand-copy{gap:4px;display:grid}.verification-page .verification-brand-copy strong{color:var(--text-primary);letter-spacing:-.2px;font-size:15px;font-weight:700;line-height:1.35}.verification-page .verification-brand-copy small{color:#0f7b7e;letter-spacing:.6px;text-transform:uppercase;font-size:10px;font-weight:600}.verification-content{flex:1;place-items:center;padding:32px 24px 100px;display:grid}.verification-card{text-align:center;background:#fffffff7;border:1px solid #128f9229;border-radius:28px;width:min(100%,520px);min-width:0;padding:48px 44px 30px;box-shadow:0 28px 80px -24px #10465530,0 4px 16px #128f9209}.verification-icon{color:#0f7b7e;background:linear-gradient(145deg,#f0fdfd,#d9f5f5);border:1px solid #b9e7e8;border-radius:50%;place-items:center;width:82px;height:82px;margin:0 auto 30px;font-size:30px;display:grid;box-shadow:0 0 0 9px #f4fcfc}.verification-card--error .verification-icon,.verification-card--expired .verification-icon{color:#a26415;background:#fff8eb;border-color:#f0dcb4;box-shadow:0 0 0 9px #fffcf6}.verification-card--info .verification-icon{color:#27718a;background:#eff8fc;border-color:#cde5ed;box-shadow:0 0 0 9px #f7fbfd}.verification-eyebrow{color:#0f7b7e;letter-spacing:1.7px;text-transform:uppercase;font-size:10px;font-weight:700}.verification-page .verification-result h1{color:var(--text-primary);letter-spacing:-.8px;text-wrap:balance;margin:12px 0 18px;font-size:clamp(25px,3.5vw,30px);font-weight:700;line-height:1.3}.verification-result h1 span{color:#0f7b7e;display:block}.verification-page .verification-description{color:#5b6d80;overflow-wrap:anywhere;text-wrap:pretty;max-width:375px;margin-inline:auto;font-size:14px;line-height:1.8}.verification-login{color:#fff;width:100%;min-height:52px;font:inherit;background:linear-gradient(115deg,#0f7b7e,#106b74);border:1px solid #128f92;border-radius:12px;justify-content:center;align-items:center;gap:12px;margin-top:30px;padding:14px 20px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s;display:flex;box-shadow:0 8px 20px #128f922e}.verification-login svg{flex-shrink:0;font-size:12px}.verification-login:hover{background:linear-gradient(115deg,#106b74,#0d5d66);transform:translateY(-1px);box-shadow:0 10px 24px #128f923d}.verification-login:active{transform:translateY(0)}.verification-page :is(button,input):focus-visible{outline-offset:4px;outline:3px solid #128f92}.verification-recovery{text-align:left;border-top:1px solid #e4eff0;margin-top:28px;padding-top:24px}.verification-recovery .reset-password-form{gap:14px;margin-top:0}.verification-recovery .reset-password-form label>span{font-size:12px}.verification-recovery .reset-password-input input{font:inherit;font-size:14px}.verification-recovery .reset-password-submit{color:#0f7377;background:#e8fbfb;border:1px solid #b9e7e8;min-height:48px;padding:12px 16px;font-size:13px;font-weight:600;transition:background .2s}.verification-recovery .reset-password-submit:hover{background:#d9f5f5}.verification-page .verification-help,.verification-recovery .reset-password-form p{color:#5b6d80;overflow-wrap:anywhere;font-size:12px;line-height:1.75}.verification-page .verification-help{margin-top:18px}.verification-assurance{color:#64748b;justify-content:center;align-items:center;gap:7px;margin-top:26px;font-size:11px;display:flex}.verification-assurance svg{color:#128f92;font-size:11px}.verification-spinner{border:3px solid #b9e7e8;border-top-color:#128f92;border-radius:50%;width:30px;height:30px;animation:.9s linear infinite verification-spin}@keyframes verification-spin{to{transform:rotate(360deg)}}@media (width<=560px){.verification-header{width:calc(100% - 32px);min-height:84px}.verification-brand-copy strong{max-width:235px}.verification-page .verification-brand-copy strong{font-size:13px}.verification-page .verification-brand-copy small{letter-spacing:.4px;font-size:8px}.verification-brand{gap:10px}.verification-brand-mark{width:42px;height:42px}.verification-content{padding:24px 16px 52px}.verification-card{border-radius:22px;padding:36px 24px 26px}.verification-icon{width:72px;height:72px;margin-bottom:26px;font-size:27px}}@media (prefers-reduced-motion:reduce){.verification-page *,.verification-page :before,.verification-page :after{transition:none;animation:none}}html,body,#root{width:100%;min-height:100%;margin:0;padding:0}body{background:#f8fdfd;min-width:320px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#1e293b;background:#fff;font-family:Poppins,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;border:none;font-family:inherit}img{width:100%;display:block}.container{width:min(1200px,90%);margin:auto}.home-page section{padding:100px 0}:root,[data-theme=light]{--bg-page:#f4f7f9;--bg-surface:#fff;--bg-elevated:#f8fafc;--bg-soft:#effcfc;--text-primary:#172033;--text-secondary:#64748b;--text-muted:#94a3b8;--border:#dce5eb;--accent:#159c9f;--accent-bright:#2ec4c7;--accent-soft:#eafafa;--input-bg:#fff;--overlay:#0f172a94;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg-page:#0d141c;--bg-surface:#151f2a;--bg-elevated:#1b2734;--bg-soft:#173137;--text-primary:#edf5f7;--text-secondary:#b7c5ce;--text-muted:#8fa2ae;--border:#344653;--accent:#52d5d7;--accent-bright:#36c8ca;--accent-soft:#17383c;--input-bg:#111b25;--overlay:#02060cc7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg-page);color:var(--text-primary);transition:background-color .18s,color .18s}.theme-toggle{border:1px solid var(--border);min-width:40px;min-height:40px;color:var(--text-secondary);background:var(--bg-surface);font:inherit;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.theme-toggle:hover{color:var(--accent);background:var(--accent-soft)}.theme-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.admin-topbar-actions .theme-toggle span,.doctor-topbar-actions .theme-toggle span,.figma-topbar-actions .theme-toggle span{display:none}[data-theme=dark] :is(.admin-layout,.doctor-layout,.figma-patient-layout,.admin-page,.doctor-page,.figma-patient-page,.home-page){color:var(--text-primary);background:var(--bg-page)}[data-theme=dark] :is(.admin-sidebar,.doctor-sidebar,.figma-patient-sidebar,.admin-topbar,.doctor-topbar,.figma-patient-topbar,.navbar,.topbar){background:var(--bg-surface);border-color:var(--border)}[data-theme=dark] :is(h1,h2,h3,h4,h5,h6,strong,label,legend){color:var(--text-primary)}[data-theme=dark] :is(p,small,.subtitle){color:var(--text-secondary)}[data-theme=dark] :is(input,select,textarea){color:var(--text-primary);background:var(--input-bg);border-color:var(--border)}[data-theme=dark] :is(input,textarea)::placeholder{color:var(--text-muted)}[data-theme=dark] :is(input,select,textarea):disabled{color:var(--text-muted);background:#202b35}[data-theme=dark] :is(.admin-sidebar-menu,.doctor-sidebar-menu,.figma-sidebar-menu,.admin-sidebar-logout,.doctor-sidebar-logout,.figma-sidebar-logout){color:var(--text-secondary)}[data-theme=dark] :is(.admin-sidebar-logout,.doctor-sidebar-logout,.figma-sidebar-logout):is(:hover,:focus-visible){color:#f87171;background:#ef444429;border:1px solid #ef444459}[data-theme=dark] :is(.admin-sidebar-logout,.doctor-sidebar-logout,.figma-sidebar-logout):active{color:#f87171;background:#ef44443d;border-color:#ef444473}[data-theme=dark] :is(.admin-sidebar-logout,.doctor-sidebar-logout,.figma-sidebar-logout):is(:hover,:focus-visible,:active) svg{color:currentColor}[data-theme=dark] :is(.admin-sidebar-logout,.doctor-sidebar-logout,.figma-sidebar-logout):focus-visible{outline-offset:2px;outline:3px solid #f8717159}[data-theme=dark] :is(.admin-sidebar-menu,.doctor-sidebar-menu,.figma-sidebar-menu):is(:hover,.active){color:var(--accent);background:var(--accent-soft)}[data-theme=dark] :is(.admin-notification-button,.doctor-topbar-notifications,.figma-topbar-notification-button,.admin-topbar-menu,.doctor-topbar-menu-button,.figma-topbar-menu-button,.admin-topbar-profile,.doctor-topbar-profile,.figma-topbar-profile){color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border)}[data-theme=dark] :is(.admin-topbar-profile,.doctor-topbar-profile,.figma-topbar-profile):hover{background:var(--bg-elevated)}[data-theme=dark] :is(.invoice-list-card,.invoice-detail-card,.invoice-modal,.dental-chart,.dental-chart-legend,.clinical-images,.clinical-image-card,.clinical-image-viewer){color:var(--text-primary);background:var(--bg-surface);border-color:var(--border);box-shadow:none}[data-theme=dark] :is(.invoice-list-card>header,.invoice-detail-header,.invoice-detail-actions,.invoice-modal>header,.invoice-list>button,.invoice-item-row,.dental-chart-history>article){border-color:var(--border)}[data-theme=dark] :is(.invoice-list>button,.invoice-detail-header button,.invoice-detail-actions button,.invoice-create-items button,.add-line,.invoice-modal footer button,.invoice-modal>header button,.invoice-row-actions button,.invoice-item-row.add>button){color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border)}[data-theme=dark] :is(.invoice-list>button.active,.dental-tooth.selected,.dental-surface-options button.active){background:var(--accent-soft)}[data-theme=dark] :is(.invoice-detail-meta,.invoice-items-head,.invoice-draft-total,.dental-chart-board,.dental-chart-history article p,.clinical-image-upload,.clinical-image-viewer-meta p,.clinical-image-caption){color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border)}[data-theme=dark] :is(.dental-chart-editor,.clinical-image-picker){color:var(--text-primary);background:var(--bg-soft);border-color:var(--border)}[data-theme=dark] :is(.dental-surface-options button,.dental-chart-history article button,.clinical-image-viewer header button,.clinical-image-viewer footer button){color:var(--text-secondary);background:var(--bg-surface);border-color:var(--border)}[data-theme=dark] .dental-tooth path:not(.whole-mark){stroke:#b8c4cc}[data-theme=dark] .dental-chart-legend i{border-color:#ffffff4d}[data-theme=dark] :is(.clinical-image-thumb,.clinical-image-local-preview){background:#1d3335}[data-theme=dark] :is(.modal-overlay,.invoice-modal-overlay,.appointment-modal-overlay,.appointment-overlay,.auth-modal-overlay,.register-modal-overlay,.forgot-modal-overlay,.clinical-image-viewer-backdrop){background:var(--overlay)}[data-theme=dark] [class*=modal] :is(section,form,.modal-content),[data-theme=dark] :is(.auth-modal-card,.register-modal-card,.forgot-modal-card,.appointment-modal){color:var(--text-primary);background:var(--bg-surface);border-color:var(--border);box-shadow:none}[data-theme=dark] :is(.auth-modal-card,.register-modal-card,.forgot-modal-card,.appointment-modal) :is(input,select,textarea){color:var(--text-primary);background:var(--input-bg);border-color:var(--border)}[data-theme=dark] :is(.admin-page,.doctor-page,.figma-patient-page) :is(article,section,table,.card,[class*=-card],[class*=-panel]){border-color:var(--border)}[data-theme=dark] :is(.admin-page,.doctor-page,.figma-patient-page) :is([class*=-card],[class*=-panel]):not(.invoice-heading){color:var(--text-primary);background-color:var(--bg-surface)}[data-theme=dark] table{color:var(--text-primary);background:var(--bg-surface)}[data-theme=dark] :is(th,td){border-color:var(--border)}[data-theme=dark] th{background:var(--bg-elevated)}[data-theme=dark] .home-page :is(.services,.about,.patient-management,.location,.reviews){color:var(--text-primary);background-color:var(--bg-page)}[data-theme=dark] .home-page :is(.service-card,.review-card,.location-card,.about-card){color:var(--text-primary);background:var(--bg-surface);border-color:var(--border)}[data-theme=dark] img{filter:none}@media (width<=700px){.theme-toggle{min-width:38px;min-height:38px;padding:0}.navbar .theme-toggle span{display:none}}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout){--portal-page:#0b1220;--portal-surface:#111827;--portal-elevated:#172033;--portal-input:#111827;--portal-primary:#f8fafc;--portal-secondary:#cbd5e1;--portal-muted:#94a3b8;--portal-border:#334155;--portal-accent:#52d5d7;--portal-accent-soft:#12353b;color:var(--portal-primary);background:var(--portal-page)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page){background:var(--portal-page);color:var(--portal-primary)}[data-theme=dark] :is(.figma-patient-sidebar,.doctor-sidebar,.admin-sidebar,.figma-patient-topbar,.doctor-topbar,.admin-topbar){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(h1,h2,h3,h4,h5,h6,strong,label,legend){color:var(--portal-primary)}[data-theme=dark] .admin-page .admin-appointment-modal .admin-cancel-warning p>strong{color:#991b1b;font-weight:700}[data-theme=dark] .admin-page .admin-appointment-modal .admin-cancel-warning p>span{color:#6b4f55}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(p,small),[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is([class*=meta],[class*=subtitle],[class*=caption],[class*=helper],[class*=empty]){color:var(--portal-secondary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is([class$=-card],[class*=-card\ ],[class$=-panel],[class*=-panel\ ],[class$=-table],[class*=-table\ ],[class$=-list],[class*=-list\ ]),[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is([class*=summary],[class*=stat],[class*=overview] article,[class*=quick] article){background-color:var(--portal-surface);border-color:var(--portal-border);color:var(--portal-primary);box-shadow:none}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.teal,.doctor-stat-icon.teal,.admin-stat-grid article>.teal){color:#2dd4bf;background:#14b8a629}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.blue,.doctor-stat-icon.blue,.admin-stat-grid article>.blue){color:#60a5fa;background:#2563eb2e}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.orange,.doctor-stat-icon.orange,.admin-stat-grid article>.orange){color:#fbbf24;background:#f59e0b29}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.purple,.doctor-stat-icon.purple,.admin-stat-grid article>.purple){color:#a78bfa;background:#7c3aed2e}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.green,.doctor-stat-icon.green,.admin-stat-grid article>.green){color:#4ade80;background:#22c55e29}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.patient-figma-stat-icon.red,.doctor-stat-icon.red,.admin-stat-grid article>.red){color:#f87171;background:#ef444429}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(header,[class*=header],[class*=toolbar],[class*=filter],[class*=tabs]),[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is([class*=row],[class*=item],[class*=entry]){border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,select,textarea){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border);caret-color:var(--portal-accent)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,textarea)::placeholder{color:var(--portal-muted);opacity:1}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,select,textarea):focus{border-color:var(--portal-accent);outline-color:var(--portal-accent)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,select,textarea):disabled{color:var(--portal-muted);background:#1e293b}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) option{color:var(--portal-primary);background:var(--portal-input)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is([class*=search],[class*=filter]){border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) table{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(thead,th){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(tbody,tr,td){background-color:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) tbody tr:hover{background-color:var(--portal-elevated)}[data-theme=dark] .figma-patient-page :is(.figma-stat-card,.figma-next-appointment,.figma-patient-info,.figma-recent-visits,.figma-quick-actions,.figma-appointment-reminder){background:var(--portal-surface);border-color:var(--portal-border);color:var(--portal-primary);box-shadow:none}[data-theme=dark] .figma-patient-page :is(.figma-stat-card p,.figma-next-appointment p,.figma-patient-info p,.figma-recent-visits p){color:var(--portal-secondary)}[data-theme=dark] .figma-patient-page :is(.patient-appointment-card,.patient-record-card,.patient-notification-card,.figma-profile-card){background:var(--portal-surface);border-color:var(--portal-border);color:var(--portal-primary);box-shadow:none}[data-theme=dark] :is(.doctor-page,.admin-page) :is([class*=schedule],[class*=calendar]){color:var(--portal-primary);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is([class*=calendar] [class*=cell],[class*=schedule] [class*=slot],[class*=calendar] [class*=day],[class*=schedule] [class*=day]){background-color:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is([class*=calendar] [class*=header],[class*=schedule] [class*=header],[class*=time-column]){color:var(--portal-secondary);background-color:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is([class*=clinical],[class*=record-detail],[class*=record-section],[class*=history]){border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is([class*=clinical-card],[class*=record-card],[class*=history-card]),[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.portal-settings-panel,.portal-settings-panel>header,.portal-settings-panel-footer,.portal-settings-session p,.portal-settings-action-grid button,.portal-settings-modal>section,.portal-settings-modal header){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.portal-settings-row,.portal-settings-note,.portal-settings-session article){border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.portal-settings-row small,.portal-settings-note small,.portal-settings-session span,.portal-settings-action-grid small){color:var(--portal-secondary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.invoice-list-card,.invoice-detail-card,.invoice-list>button,.invoice-modal){background:var(--portal-surface);border-color:var(--portal-border);color:var(--portal-primary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.invoice-detail-meta,.invoice-items-head,.invoice-draft-total){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.invoice-item-row,.invoice-totals p,.invoice-detail-header,.invoice-detail-actions){border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.dental-chart,.dental-chart-legend){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.dental-chart-board,.dental-chart-history article p){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) .dental-chart-editor{background:var(--portal-surface);border-color:#28545a}[data-theme=dark] .admin-page .dental-chart-development{color:#fde68a;background:#3b2b12;border-color:#a16207}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.dental-chart-heading p,.dental-chart-history small,.dental-chart-legend small,.dental-arch h4){color:var(--portal-secondary)}[data-theme=dark] :is(.doctor-page,.admin-page) .dental-tooth path:not(.whole-mark){stroke:#cbd5e1}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.clinical-images,.clinical-image-card,.clinical-image-viewer){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.clinical-image-upload,.clinical-image-viewer-meta p,.clinical-image-caption){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.clinical-images-heading p,.clinical-image-card-copy span,.clinical-image-viewer-meta span){color:var(--portal-secondary)}[data-theme=dark] :is(.doctor-page,.admin-page) .clinical-image-picker{background:var(--portal-input);border-color:#3f777b}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.clinical-image-thumb,.clinical-image-local-preview){background:#172b31}[data-theme=dark] :is(.doctor-page,.admin-page) :is(.clinical-image-thumb img,.clinical-image-local-preview img,.clinical-image-viewer img){filter:none}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.appointment-modal,.invoice-modal,.portal-settings-modal>section,[class*=dialog]){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}@media (width<=700px){[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page){overflow-x:hidden}}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) label>div:has(>input,>textarea,>select){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) label>div:has(>input,>textarea,>select):focus-within{border-color:var(--portal-accent);box-shadow:0 0 0 3px #2ec4c724}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) label>div:has(>:disabled){background:var(--portal-elevated)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,textarea,select)[readonly],[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input,textarea,select):disabled{color:var(--portal-secondary);-webkit-text-fill-color:var(--portal-secondary);opacity:1;cursor:not-allowed}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(input[type=date],input[type=time],input[type=datetime-local],input[type=number]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .doctor-page .doctor-profile-fields label{color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-profile-fields label>div>svg{color:var(--portal-muted)}[data-theme=dark] .doctor-page .doctor-profile-fields :is(input,textarea):disabled{color:var(--portal-secondary);-webkit-text-fill-color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-profile-hours,[data-theme=dark] .doctor-page .doctor-profile-hours div{border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-profile-hours span{color:var(--portal-muted)}[data-theme=dark] .doctor-page .doctor-profile-summary-card>button,[data-theme=dark] .doctor-page .doctor-profile-actions button.cancel{color:var(--portal-accent);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .doctor-page .doctor-profile-summary-card>button:hover,[data-theme=dark] .doctor-page .doctor-profile-actions button.cancel:hover{background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.admin-appointments-search,.doctor-appointments-search,.patient-appointments-search,.admin-users-search,.doctor-records-search,.invoice-list-card label,[class$=-search]){color:var(--portal-secondary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.admin-appointments-search,.doctor-appointments-search,.patient-appointments-search,.admin-users-search,.doctor-records-search,.invoice-list-card label,[class$=-search]):focus-within{border-color:var(--portal-accent);box-shadow:0 0 0 3px #2ec4c724}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.appointment-modal,.admin-modal,.admin-appointment-modal,.doctor-schedule-modal,.invoice-modal,.portal-settings-modal>section){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.admin-modal>header,.admin-appointment-modal>header,.doctor-schedule-modal>header,.portal-settings-modal header){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.admin-modal-grid>div,.admin-appointment-modal-grid>div,.doctor-schedule-modal-grid>div,.admin-reschedule-summary>div,.admin-dashboard-reschedule-summary>div,.admin-current-appointment,.admin-appointment-confirm-copy){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.admin-appointment-form,.admin-reschedule-form,.invoice-modal,.portal-settings-form,.doctor-schedule-modal,.appointment-modal) :is(input,textarea,select){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.admin-appointment-modal>footer,.doctor-schedule-modal footer,.admin-appointment-form footer){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout :is(.appointment-doctor-card,.appointment-service-card,.appointment-date-card,.appointment-time-card,.appointment-slot,.appointment-summary){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout :is(.appointment-doctor-card,.appointment-service-card,.appointment-date-card,.appointment-time-card,.appointment-slot):is(:hover,.selected){color:var(--portal-primary);background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.invoice-item-row input,.invoice-modal input,.invoice-modal select){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.invoice-detail-header button,.invoice-create-items button,.invoice-row-actions button,.invoice-item-row.add>button,.invoice-modal>header button,.invoice-modal footer button:not(.primary),.add-line),[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.portal-settings-field input,.portal-settings-session article button,.portal-settings-action-grid button,.portal-settings-modal header>button,.portal-settings-modal footer button:not(.primary),.admin-row-actions button,.admin-appointment-card-actions button:not(.confirm):not(.danger),.doctor-schedule-modal footer button:not(.primary),.admin-modal footer button:not(.primary):not(.danger),button.secondary,button.cancel,[class*=view-] button,[class*=record-] button){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.portal-settings-field input,.portal-settings-session article button,.portal-settings-action-grid button,.admin-row-actions button,.admin-appointment-card-actions button:not(.confirm):not(.danger),button.secondary,button.cancel):hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .figma-patient-page :is(.patient-figma-stat-card,.patient-figma-card,.patient-figma-visit-row,.figma-appointments-tabs,.figma-appointments-section,.figma-appointment-card,.figma-history-header,.figma-history-row,.figma-records-stat-card,.figma-records-section,.figma-record-card,.figma-record-details,.figma-record-detail-item,.patient-care-card,.patient-care-content,.figma-notifications-section,.figma-notification-card,.figma-profile-card,.figma-profile-input-wrapper){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .figma-patient-page :is(.patient-figma-card-header,.figma-history-header,.patient-care-card-header){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-page :is(.patient-figma-stat-card span,.patient-figma-stat-card small,.patient-figma-appointment-meta span,.patient-figma-info-list span,.patient-figma-visit-row div:nth-child(2) span,.figma-appointments-heading p,.figma-section-heading p,.figma-appointment-meta span,.figma-history-row span,.figma-records-stat-card span,.figma-records-stat-card small,.figma-record-meta span,.patient-care-meta span,.figma-notifications-heading p,.figma-notification-title-row time,.figma-notification-content>p,.figma-profile-heading p,.figma-profile-photo-info>span,.figma-profile-photo-card>small){color:var(--portal-secondary)}[data-theme=dark] .figma-patient-page :is(.patient-figma-stat-card strong,.patient-figma-card-header h3,.patient-figma-appointment-title-row h4,.patient-figma-info-list strong,.patient-figma-visit-row strong,.figma-appointments-heading h2,.figma-section-heading h3,.figma-appointment-info h3,.figma-history-service strong,.figma-records-heading h2,.figma-records-section-heading h3,.figma-record-main-information h3,.patient-care-main h4,.figma-notifications-heading h2,.figma-notifications-section-heading h3,.figma-notification-title-row h3,.figma-profile-heading h2,.figma-profile-card-heading h3,.figma-profile-photo-info>strong){color:var(--portal-primary)}[data-theme=dark] .figma-patient-page :is(.patient-figma-appointment-actions button,.patient-figma-quick-list button,.figma-details-button,.figma-notifications-summary button,.figma-notification-action button,.figma-profile-upload){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-page :is(.patient-figma-appointment-actions button,.patient-figma-quick-list button,.figma-details-button,.figma-notifications-summary button,.figma-notification-action button,.figma-profile-upload):hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .figma-patient-page :is(.figma-appointments-tabs button,.figma-appointments-tabs button span){color:var(--portal-secondary);background:0 0}[data-theme=dark] .figma-patient-page .figma-appointments-tabs button.active{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .figma-patient-page :is(.figma-records-search,.figma-profile-input-wrapper){background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-page .figma-notification-card.read{background:var(--portal-elevated)}[data-theme=dark] .figma-patient-layout :is(.figma-appointment-details-modal,.appointment-modal){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .figma-patient-layout :is(.figma-appointment-details-modal>header,.figma-appointment-details-modal>footer){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout :is(.figma-appointment-details-grid>div,.selected-date-box,.review-panel,.success-summary-card){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout :is(.calendar-header button,.calendar-grid button,.time-grid button,.appointment-back-button,.figma-appointment-details-modal>header button){color:var(--portal-secondary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .figma-patient-layout :is(.calendar-grid button,.time-grid button):is(:hover,.selected){color:var(--portal-primary);background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] .figma-patient-layout :is(.patient-details-form input,.patient-details-form textarea){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-stat-card,.doctor-dashboard-card,.doctor-schedule-row,.doctor-record-row,.doctor-appointments-tabs,.doctor-appointments-panel,.doctor-appointment-card,.doctor-appointment-note){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page :is(.doctor-card-header,.doctor-appointments-panel-heading){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-stat-card strong,.doctor-card-header h3,.doctor-schedule-time strong,.doctor-schedule-patient strong,.doctor-record-row strong,.doctor-appointments-heading h2,.doctor-appointments-panel-heading h3,.doctor-appointment-patient h3,.doctor-appointment-details h4,.doctor-appointment-note strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.doctor-stat-card span,.doctor-stat-card small,.doctor-schedule-patient small,.doctor-record-row span,.doctor-clinic-info span,.doctor-appointments-heading p,.doctor-appointments-panel-heading>p,.doctor-appointment-patient small,.doctor-appointment-meta span,.doctor-appointment-note p){color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-schedule-row>button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-schedule-row>button:hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .doctor-page .doctor-appointments-tabs button{color:var(--portal-secondary);background:var(--portal-elevated);border:1px solid #0000}[data-theme=dark] .doctor-page .doctor-appointments-tabs button>span{color:var(--portal-secondary);background:#334155}[data-theme=dark] .doctor-page .doctor-appointments-tabs button:not(.active):hover{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-appointments-tabs button.active{color:#5eead4;background:#14b8a629;border-color:#2dd4bf73;box-shadow:inset 0 -2px #2dd4bf}[data-theme=dark] .doctor-page .doctor-appointments-tabs button.active>span{color:#062b2d;background:#2dd4bf}[data-theme=dark] .doctor-page .doctor-appointments-tabs button:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] .doctor-page .doctor-appointment-status.pending,[data-theme=dark] .doctor-page .doctor-appointment-status.waiting{color:#fbbf24;background:#f59e0b2e;border:1px solid #f59e0b80}[data-theme=dark] .doctor-page .doctor-appointment-status.confirmed{color:#4ade80;background:#22c55e29;border:1px solid #4ade806b}[data-theme=dark] .doctor-page .doctor-appointment-status.completed{color:var(--portal-secondary);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .doctor-page .doctor-appointment-status.cancelled{color:#f87171;background:#ef44442b;border:1px solid #ef444473}[data-theme=dark] .doctor-page .doctor-appointment-card-actions button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-appointment-card-actions button:first-child{color:#5eead4;background:#14b8a61a;border-color:#2dd4bf6b}[data-theme=dark] .doctor-page .doctor-appointment-card-actions button:hover{color:#99f6e4;background:#14b8a633;border-color:#2dd4bf9e}[data-theme=dark] .doctor-page .doctor-appointment-card-actions button:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] .doctor-page :is(.doctor-schedule-navigation,.doctor-schedule-view-toggle,.doctor-schedule-summary article,.doctor-calendar-card,.doctor-schedule-side-card,.doctor-calendar-slot,.doctor-today-list button,.doctor-hours-list p){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page :is(.doctor-calendar-card-heading,.doctor-schedule-side-heading,.doctor-calendar-corner,.doctor-calendar-day){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-calendar-time,.doctor-calendar-slot){color:var(--portal-secondary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-calendar-slot.closed,.doctor-calendar-closed){color:var(--portal-muted);background:#0e1725}[data-theme=dark] .doctor-page :is(.doctor-schedule-navigation button,.doctor-schedule-view-toggle button,.doctor-next-actions button,.doctor-available-slots span,.doctor-block-slot-action){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-schedule-navigation button,.doctor-schedule-view-toggle button,.doctor-next-actions button,.doctor-available-slots span,.doctor-block-slot-action):hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .doctor-page .doctor-schedule-view-toggle button.active{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .doctor-page :is(.doctor-schedule-summary strong,.doctor-calendar-day strong,.doctor-today-list strong,.doctor-next-content strong,.doctor-hours-list strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.doctor-schedule-summary span,.doctor-schedule-summary small,.doctor-calendar-day span,.doctor-today-list span,.doctor-next-content span,.doctor-hours-list span){color:var(--portal-secondary)}[data-theme=dark] .doctor-page :is(.doctor-records-summary article,.doctor-records-filters,.doctor-directory-panel,.doctor-directory-card,.doctor-full-record-heading,.doctor-record-hero-details>div,.doctor-full-record-actions,.doctor-record-section-card,.doctor-information-item,.doctor-clinical-item,.doctor-treatment-table-header,.doctor-treatment-table-row,.doctor-record-appointment-list>div,.doctor-clinical-note-entry,.doctor-clinical-note-entry-heading,.doctor-clinical-note-entry-grid>div,.doctor-encounter-timeline article,.doctor-patient-instructions>article){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page :is(.doctor-record-section-heading,.doctor-treatment-table-header,.doctor-clinical-note-entry-heading){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-records-summary strong,.doctor-records-panel-heading h3,.doctor-directory-identity strong,.doctor-directory-detail strong,.doctor-record-hero-identity h2,.doctor-record-hero-details strong,.doctor-record-section-heading h3,.doctor-information-item strong,.doctor-clinical-item strong,.doctor-treatment-table-row strong,.doctor-record-appointment-list strong,.doctor-clinical-note-entry-heading strong,.doctor-encounter-timeline strong,.doctor-patient-instructions strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.doctor-records-summary span,.doctor-records-summary small,.doctor-records-panel-heading>p,.doctor-directory-identity small,.doctor-directory-detail small,.doctor-record-hero-identity p,.doctor-record-hero-details small,.doctor-information-item small,.doctor-clinical-item small,.doctor-treatment-table-row small,.doctor-record-appointment-list span,.doctor-clinical-note-entry-grid span,.doctor-encounter-timeline span,.doctor-encounter-timeline small,.doctor-patient-instructions>article>small){color:var(--portal-secondary)}[data-theme=dark] .doctor-page :is(.doctor-record-back,.doctor-full-record-actions button:not(.primary)){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-record-back:hover,.doctor-full-record-actions button:not(.primary):hover){color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .doctor-page .doctor-records-filters button{color:var(--portal-secondary);background:var(--portal-elevated);border:1px solid #0000}[data-theme=dark] .doctor-page .doctor-records-filters button:not(.active):hover{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-records-filters button.active{color:#5eead4;background:#14b8a629;border-color:#2dd4bf73;box-shadow:inset 0 -2px #2dd4bf}[data-theme=dark] .doctor-page .doctor-records-filters button:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] .doctor-page .doctor-record-status.active{color:#4ade80;background:#22c55e29;border:1px solid #4ade806b}[data-theme=dark] .doctor-page .doctor-record-status.inactive{color:var(--portal-secondary);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .doctor-page .doctor-view-patient{color:#5eead4;background:#14b8a61f;border-color:#2dd4bf6b}[data-theme=dark] .doctor-page .doctor-view-patient:hover{color:#99f6e4;background:#14b8a638;border-color:#2dd4bfa6}[data-theme=dark] .doctor-page .doctor-view-patient:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] .doctor-layout :is(.doctor-treatment-modal,.doctor-appointment-details-modal,.doctor-dashboard-modal,.doctor-schedule-modal){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-layout :is(.doctor-treatment-modal-header,.doctor-appointment-details-header,.doctor-dashboard-modal>header,.doctor-schedule-modal>header,.doctor-appointment-details-actions,.doctor-dashboard-modal>footer,.doctor-schedule-modal footer){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout :is(.doctor-treatment-form input,.doctor-treatment-form select,.doctor-treatment-form textarea){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout :is(.doctor-treatment-form footer button:not(.primary),.doctor-treatment-success button,.doctor-appointment-details-actions button,.doctor-dashboard-modal footer button:not(.primary)){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-stat-grid article,.admin-card,.admin-appointment-row,.admin-patient-row,.admin-pending-list>div,.admin-appointments-summary article,.admin-appointments-tabs,.admin-appointments-panel,.admin-appointment-card,.admin-appointment-note,.admin-users-summary article,.admin-users-tabs,.admin-users-panel,.admin-user-card,.admin-records-summary article,.admin-records-tabs,.admin-records-panel,.admin-record-card){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .admin-page :is(.admin-card>header,.admin-appointments-panel>header,.admin-users-panel>header,.admin-records-panel>header){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-stat-grid strong,.admin-appointment-row strong,.admin-patient-row strong,.admin-pending-list strong,.admin-appointments-summary strong,.admin-appointment-service strong,.admin-appointment-note strong,.admin-users-summary strong,.admin-user-identity strong,.admin-user-contact strong,.admin-user-access strong,.admin-record-card strong){color:var(--portal-primary)}[data-theme=dark] .admin-page :is(.admin-stat-grid span,.admin-stat-grid small,.admin-appointment-row>div>span,.admin-patient-row span,.admin-patient-row small,.admin-pending-list small,.admin-appointments-summary span,.admin-appointments-summary small,.admin-appointment-patient small,.admin-appointment-service small,.admin-appointment-note p,.admin-users-summary span,.admin-users-summary small,.admin-user-identity small,.admin-user-contact small,.admin-user-access small,.admin-records-summary span,.admin-records-summary small,.admin-record-card small){color:var(--portal-secondary)}[data-theme=dark] .admin-page :is(.admin-appointments-tabs button,.admin-users-tabs button,.admin-records-tabs button){color:var(--portal-secondary);background:0 0}[data-theme=dark] .admin-page :is(.admin-appointments-tabs button.active,.admin-users-tabs button.active,.admin-records-tabs button.active){color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .admin-page :is(.admin-row-actions button,.admin-patient-row button,.admin-user-actions button,.admin-record-card-actions button,.admin-service-actions button){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-row-actions button,.admin-patient-row button,.admin-user-actions button,.admin-record-card-actions button,.admin-service-actions button):hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .admin-page :is(.admin-schedule-controls,.admin-schedule-card,.admin-schedule-grid .slot){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .admin-page :is(.admin-schedule-card>header,.admin-schedule-grid>.corner,.admin-schedule-grid>.day){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-schedule-grid .time,.admin-schedule-grid .slot){color:var(--portal-secondary);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-schedule-controls button,.admin-schedule-controls select){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page .admin-schedule-controls button:hover{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .admin-layout :is(.admin-schedule-modal,.admin-patient-modal,.admin-user-modal,.admin-record-modal,.admin-appointment-modal,.admin-modal,.admin-operations-modal){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .admin-layout :is(.admin-schedule-modal>header,.admin-patient-modal>header,.admin-user-modal>header,.admin-record-modal>header,.admin-appointment-modal>header,.admin-modal>header,.admin-operations-modal>header){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .admin-layout :is(.admin-schedule-modal footer,.admin-patient-modal>footer,.admin-patient-form footer,.admin-user-modal>footer,.admin-user-form footer,.admin-record-modal>footer,.admin-record-form footer,.admin-appointment-modal>footer,.admin-appointment-form footer,.admin-operations-modal-form footer){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-layout :is(.admin-patient-modal-grid>div,.admin-user-modal-grid>div,.admin-record-modal-grid>div,.admin-schedule-modal-grid>div,.admin-user-confirm){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .admin-layout :is(.admin-patient-form,.admin-user-form,.admin-record-form,.admin-operations-form,.admin-operations-modal-form) :is(input,select,textarea){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-record-hero,.admin-record-actions,.admin-record-section,.admin-record-section>header,.admin-record-info-grid p,.admin-record-clinical p,.admin-record-history article,.admin-record-notes article,.admin-record-appointments p,.admin-record-timeline article,.admin-record-instructions>article){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .admin-page .admin-record-hero{background:radial-gradient(circle at 100% 100%,var(--portal-accent-soft) 0,transparent 58%),linear-gradient(135deg,var(--portal-surface),var(--portal-page))}[data-theme=dark] .admin-page .admin-record-hero .admin-record-status.active{color:#86efac;background:#22c55e2e;border:1px solid #86efac61}[data-theme=dark] .admin-page .admin-record-hero-meta p{color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-record-section>header,.admin-record-notes article header){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-record-hero-meta span,.admin-record-info-grid span,.admin-record-clinical small,.admin-record-history span,.admin-record-timeline span,.admin-record-timeline small,.admin-record-instructions>article>small){color:var(--portal-secondary)}[data-theme=dark] .admin-page :is(.admin-record-hero-meta strong,.admin-record-info-grid strong,.admin-record-clinical strong,.admin-record-appointments strong){color:var(--portal-primary)}[data-theme=dark] .admin-page .admin-record-actions button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-clinic-hero,.admin-clinic-hero-top,.admin-clinic-hero-brand>div,.admin-clinic-hero-metrics article,.admin-clinic-contact,.admin-operation-card,.admin-operation-card>header,.admin-hours-row,.admin-hours-value,.admin-slot,.admin-service-list article,.admin-operations-note){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .admin-page :is(.admin-operation-card>header,.admin-clinic-hero-top){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-clinic-hero-brand h3,.admin-clinic-hero-metrics strong,.admin-clinic-contact strong,.admin-operation-card h3,.admin-hours-row>strong,.admin-service-list strong){color:var(--portal-primary)}[data-theme=dark] .admin-page :is(.admin-clinic-hero-brand p,.admin-clinic-hero-metrics span,.admin-clinic-hero-metrics small,.admin-clinic-contact span,.admin-operation-card>header p,.admin-service-duration){color:var(--portal-secondary)}[data-theme=dark] .admin-page :is(.admin-clinic-hero-top>button,.admin-operation-card-action button,.admin-card-footer-actions button,.admin-slot>button:last-child,.admin-service-actions button){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page :is(.admin-hours-time,.admin-hours-value){color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .admin-page .admin-clinic-hero-top{background:linear-gradient(100deg,#14b8a621 0%,#14b8a60b 58%,var(--portal-elevated) 100%);border-color:#2dd4bf3d}[data-theme=dark] .admin-page .admin-clinic-hero-brand>div{color:#2dd4bf;box-shadow:none;background:#14b8a62e}[data-theme=dark] .admin-page .admin-clinic-hero-brand small{color:#5eead4}[data-theme=dark] .admin-page .admin-clinic-hero-brand h3{color:var(--portal-primary)}[data-theme=dark] .admin-page .admin-clinic-hero-brand p{color:var(--portal-secondary)}[data-theme=dark] .admin-page .admin-clinic-hero-top>button{color:#5eead4;background:#14b8a614;border-color:#2dd4bf6b}[data-theme=dark] .admin-page .admin-clinic-hero-top>button:hover{color:#99f6e4;background:#14b8a629;border-color:#2dd4bf9e}[data-theme=dark] .admin-page .admin-clinic-hero-top>button:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] .admin-page .admin-clinic-hero-metrics article{background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-page .admin-clinic-hero-metrics article.open{background:#22c55e1c;border-color:#4ade8061}[data-theme=dark] .admin-page .admin-clinic-hero-metrics article.open strong{color:#4ade80}[data-theme=dark] .admin-page .admin-clinic-hero-metrics article.closed{background:#ef44441a;border-color:#f8717161}[data-theme=dark] .admin-page .admin-clinic-hero-metrics article.closed strong{color:#f87171}[data-theme=dark] .admin-page .admin-clinic-hero-metrics span,[data-theme=dark] .admin-page .admin-clinic-hero-metrics small{color:var(--portal-secondary)}[data-theme=dark] .admin-page .admin-clinic-hero-metrics strong{color:var(--portal-primary)}[data-theme=dark] .admin-page .admin-clinic-contact p{background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .admin-page .admin-clinic-contact span{color:var(--portal-secondary)}[data-theme=dark] .admin-page .admin-clinic-contact strong{color:var(--portal-primary);overflow-wrap:anywhere;word-break:break-word}[data-theme=dark] .admin-page .admin-operation-card.hours-card{border-color:var(--portal-border);border-top-color:#60a5fa}[data-theme=dark] .admin-page .hours-card>header{background:#2563eb14}[data-theme=dark] .admin-page .hours-card>header span{color:#93c5fd}[data-theme=dark] .admin-page .hours-card .admin-operation-card-icon{color:#60a5fa;background:#2563eb2e}[data-theme=dark] .admin-page .hours-card .admin-operation-card-action button{color:#93c5fd;background:#2563eb14;border-color:#60a5fa7a}[data-theme=dark] .admin-page .admin-operation-card.slots-card{border-color:var(--portal-border);border-top-color:#a78bfa}[data-theme=dark] .admin-page .slots-card>header{background:#7c3aed14}[data-theme=dark] .admin-page .slots-card>header span{color:#c4b5fd}[data-theme=dark] .admin-page .slots-card .admin-operation-card-icon{color:#a78bfa;background:#7c3aed2e}[data-theme=dark] .admin-page .slots-card .admin-operation-card-action button{color:#c4b5fd;background:#7c3aed14;border-color:#a78bfa7a}[data-theme=dark] .admin-page .admin-operation-card.closed-card{border-color:var(--portal-border);border-top-color:#f87171}[data-theme=dark] .admin-page .closed-card>header{background:#ef444412}[data-theme=dark] .admin-page .closed-card>header span{color:#fca5a5}[data-theme=dark] .admin-page .closed-card .admin-operation-card-icon{color:#f87171;background:#ef44442b}[data-theme=dark] .admin-page .closed-card .admin-operation-card-action button{color:#fca5a5;background:#ef444414;border-color:#ef444473}[data-theme=dark] .admin-page .admin-operation-card.services-card{border-color:var(--portal-border);border-top-color:#4ade80}[data-theme=dark] .admin-page .services-card>header{background:#22c55e12}[data-theme=dark] .admin-page .services-card>header span{color:#86efac}[data-theme=dark] .admin-page .services-card .admin-operation-card-icon{color:#4ade80;background:#22c55e29}[data-theme=dark] .admin-page .services-card .admin-operation-card-action button{color:#86efac;background:#22c55e14;border-color:#4ade8073}[data-theme=dark] .admin-page :is(.hours-card,.slots-card,.closed-card,.services-card) .admin-operation-card-action button:hover{filter:brightness(1.14)}[data-theme=dark] .admin-page :is(.hours-card,.slots-card,.closed-card,.services-card) .admin-operation-card-action button:focus-visible{outline-offset:2px;outline:2px solid}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-section{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-list{background:0 0}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-heading h2{color:var(--portal-primary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-heading p{color:var(--portal-secondary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-heading-icon{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-section-heading>div>span{color:var(--portal-accent)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-section-heading h3{color:var(--portal-primary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-summary p{color:#5eead4;background:#2dd4bf2e;border:1px solid #2dd4bf73}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notifications-summary p strong{color:inherit}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.figma-notifications-summary button,.figma-notification-action button){color:#5eead4;background:#14b8a61f;border-color:#2dd4bf6b}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.figma-notifications-summary button,.figma-notification-action button):hover{color:#99f6e4;background:#14b8a633;border-color:#2dd4bf9e}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.figma-notifications-summary button,.figma-notification-action button):focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card{color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card.unread{background:#14b8a60f;border-color:#2dd4bf5c}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card.unread:before{background:#2dd4bf}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card.clickable:is(:hover,:focus-visible){background:var(--portal-accent-soft);box-shadow:none;border-color:#2dd4bf85}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card.clickable:focus-visible{outline-offset:2px;outline:2px solid #2dd4bf}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-title-row h3{color:var(--portal-primary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) :is(.figma-notification-title-row time,.figma-notification-content>p,.figma-notification-action>span){color:var(--portal-secondary)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-icon{color:#2dd4bf;background:#14b8a629}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-card.read .figma-notification-icon{color:var(--portal-secondary);background:var(--portal-input)}[data-theme=dark] :is(.figma-patient-page,.doctor-page,.admin-page) .figma-notification-unread-label{color:#5eead4;background:#2dd4bf29;border:1px solid #2dd4bf52}[data-theme=dark] :is(.figma-patient-layout,.doctor-layout,.admin-layout) :is(.figma-appointment-details-modal,.doctor-dashboard-modal,.doctor-appointment-details-modal,.doctor-schedule-modal,.doctor-treatment-modal,.admin-modal,.admin-appointment-modal,.admin-schedule-modal,.admin-patient-modal,.admin-user-modal,.admin-record-modal,.admin-operations-modal,.invoice-modal,.portal-settings-modal>section) button:not(.primary):not(.danger):not([type=submit]){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .admin-layout :is(.admin-appointment-modal,.admin-modal) :is(.admin-slot-mode-tabs,.admin-dashboard-slot-tabs) button:not(.primary):not(.danger):not([type=submit]){color:var(--portal-secondary);background:var(--portal-elevated);box-shadow:none;border:1px solid #0000}[data-theme=dark] .admin-layout :is(.admin-appointment-modal,.admin-modal) :is(.admin-slot-mode-tabs,.admin-dashboard-slot-tabs) button.active:not(.primary):not(.danger):not([type=submit]){color:#5eead4;background:#14b8a629;border-color:#2dd4bf73;box-shadow:0 0 0 1px #2dd4bf1a}[data-theme=dark] .admin-layout :is(.admin-appointment-modal,.admin-modal) :is(.admin-slot-mode-tabs,.admin-dashboard-slot-tabs) button:not(.primary):not(.danger):not([type=submit]):not(.active):hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#2dd4bf40}[data-theme=dark] .admin-layout :is(.admin-appointment-modal,.admin-modal) :is(.admin-slot-mode-tabs,.admin-dashboard-slot-tabs) button:not(.primary):not(.danger):not([type=submit]):focus-visible{outline-offset:2px;outline:2px solid #2dd4bf8c}[data-theme=dark] .doctor-page .doctor-schedule-heading-icon{color:var(--portal-accent);background:var(--portal-elevated);border:1px solid var(--portal-border)}[data-theme=dark] .doctor-page .doctor-calendar-empty:is(:hover,:focus-visible){color:var(--portal-accent);background:var(--portal-accent-soft);outline:1px solid #3b7378}[data-theme=dark] .doctor-page :is(.doctor-calendar-corner,.doctor-calendar-day,.doctor-calendar-time,.doctor-calendar-slot){border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-schedule-navigation strong,.doctor-calendar-card-heading h3,.doctor-schedule-side-heading h3){color:var(--portal-primary)}[data-theme=dark] .doctor-page .doctor-treatment-history-card>.dental-chart-history{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page .doctor-treatment-history-card>.dental-chart-history>article{border-color:var(--portal-border)}[data-theme=dark] .doctor-page .dental-chart-history :is(h4,article strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page .dental-chart-history :is(header>small,article small){color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-treatment-history-card>.dental-chart-history article span{color:#67d7d8}[data-theme=dark] .doctor-page .dental-chart-history article p{color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .dental-chart-history article em{color:#c4b5fd}[data-theme=dark] .doctor-page .dental-chart-history article button{color:var(--portal-accent);background:var(--portal-elevated);border-color:#3b7378}[data-theme=dark] .doctor-page .dental-chart-history article button:hover{background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] .doctor-layout :is(form,.portal-settings-modal,.doctor-treatment-modal,.doctor-appointment-details-modal,.doctor-dashboard-modal,.doctor-schedule-modal,.invoice-modal) :is(input,select,textarea){color:var(--portal-primary);background-color:var(--portal-input);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-layout :is(form,.portal-settings-modal,.doctor-treatment-modal,.doctor-appointment-details-modal,.doctor-dashboard-modal,.doctor-schedule-modal,.invoice-modal) :is(input,select,textarea)::placeholder{color:var(--portal-muted)}[data-theme=dark] .doctor-layout :is(form,.portal-settings-modal,.doctor-treatment-modal,.doctor-appointment-details-modal,.doctor-dashboard-modal,.doctor-schedule-modal,.invoice-modal) :is(input,select,textarea):focus{border-color:var(--portal-accent);outline:2px solid var(--portal-accent-soft);outline-offset:1px}[data-theme=dark] .doctor-layout :is(form,.portal-settings-modal,.doctor-treatment-modal,.doctor-appointment-details-modal,.doctor-dashboard-modal,.doctor-schedule-modal,.invoice-modal) :is(input,select,textarea):is(:disabled,[readonly]){color:var(--portal-muted);border-color:var(--portal-border);opacity:1;background:#0e1725}[data-theme=dark] .doctor-layout :is(.portal-settings-field>span,.dental-chart-editor label,.dental-chart-editor fieldset,.clinical-image-upload label>span){color:var(--portal-secondary)}[data-theme=dark] .doctor-layout select option{color:var(--portal-primary);background:var(--portal-input)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-overlay,.doctor-appointment-details-overlay,.doctor-schedule-modal-overlay,.doctor-treatment-modal-overlay,.clinical-image-viewer-backdrop){background:#020617c7}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal,.doctor-appointment-details-modal,.doctor-schedule-modal,.doctor-treatment-modal){background:var(--portal-elevated);border-color:var(--portal-border);box-shadow:0 28px 80px #00000073}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal>header,.doctor-appointment-details-header,.doctor-schedule-modal>header,.doctor-treatment-modal-header){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal>header h2,.doctor-appointment-details-header h2,.doctor-schedule-modal>header h2,.doctor-treatment-modal-header h2){color:var(--portal-primary)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal>header>button,.doctor-appointment-details-header>button,.doctor-schedule-modal>header>button,.doctor-treatment-modal-header>button){color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-patient,.doctor-appointment-details-patient,.doctor-schedule-modal-patient,.doctor-treatment-patient){color:var(--portal-primary);background:var(--portal-surface);border-color:#28545a}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-patient,.doctor-appointment-details-patient,.doctor-schedule-modal-patient,.doctor-treatment-patient) :is(h3,strong){color:var(--portal-primary)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-patient,.doctor-appointment-details-patient,.doctor-schedule-modal-patient,.doctor-treatment-patient) :is(p,small){color:var(--portal-secondary)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-grid,.doctor-appointment-details-grid,.doctor-schedule-modal-grid)>div{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal-grid,.doctor-appointment-details-grid,.doctor-schedule-modal-grid)>div strong{color:var(--portal-primary)}[data-theme=dark] .doctor-layout .doctor-appointment-details-note{color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout .doctor-appointment-details-note p{color:var(--portal-secondary)}[data-theme=dark] .doctor-layout :is(.doctor-dashboard-modal>footer,.doctor-appointment-details-actions,.doctor-schedule-modal>footer,.doctor-treatment-form footer){background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-appointments-toolbar,.doctor-appointments-search){color:var(--portal-secondary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-appointments-search input{color:var(--portal-primary);background:0 0}[data-theme=dark] .doctor-page .doctor-appointment-note{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-appointment-card:hover{background:var(--portal-elevated);box-shadow:none;border-color:#3b7378}[data-theme=dark] .doctor-page .doctor-appointments-empty{color:var(--portal-secondary);background:var(--portal-surface)}[data-theme=dark] .doctor-page .doctor-calendar-empty{color:var(--portal-muted);background:#0e1725}[data-theme=dark] .doctor-page .doctor-calendar-empty:is(:hover,:focus-visible,:active){color:var(--portal-accent);background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] .doctor-page .doctor-calendar-blocked{color:var(--portal-secondary);border:1px solid var(--portal-border);background:#1e293b}[data-theme=dark] .doctor-page .doctor-calendar-blocked:is(:hover,:focus-visible){color:var(--portal-primary);background:#263449;border-color:#64748b;outline:0}[data-theme=dark] .doctor-page .doctor-calendar-appointment.confirmed{color:#bbf7d0;background:#123525;border-color:#22c55e}[data-theme=dark] .doctor-page .doctor-calendar-appointment.pending{color:#fde68a;background:#3b2b12;border-color:#f59e0b}[data-theme=dark] .doctor-page .doctor-calendar-appointment.completed{color:#cbd5e1;background:#263244;border-color:#64748b}[data-theme=dark] .doctor-page .doctor-calendar-appointment.cancelled{color:#fecaca;background:#3b1820;border-color:#ef4444}[data-theme=dark] .doctor-page :is(.doctor-today-list button,.doctor-next-content,.doctor-available-slots,.doctor-hours-list){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-today-list button:hover{background:var(--portal-accent-soft)}[data-theme=dark] .doctor-page .doctor-next-content>div{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .doctor-page .dental-chart-development{color:#fde68a;background:#3b2b12;border-color:#a16207}[data-theme=dark] .doctor-page :is(.dental-chart-editor,.clinical-image-upload,.clinical-image-picker,.clinical-images-empty){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.dental-chart-editor h4,.dental-chart-legend header strong,.dental-chart-legend strong,.clinical-images-heading h3,.clinical-image-card-copy strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.dental-chart-editor small,.dental-chart-legend small,.clinical-images-heading p,.clinical-images-heading>small,.clinical-image-card-copy span,.clinical-images-empty){color:var(--portal-secondary)}[data-theme=dark] .doctor-page :is(.dental-surface-options button,.dental-chart-editor>header button){color:var(--portal-secondary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .dental-surface-options button:is(.active,:hover){color:var(--portal-accent);background:var(--portal-accent-soft);border-color:var(--portal-accent)}[data-theme=dark] .doctor-page :is(.doctor-clinical-note-entry-grid>div,.doctor-clinical-note-entry-grid>div.follow-up){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-clinical-note-entry-grid p,[data-theme=dark] .doctor-page .doctor-patient-instructions>article>p{color:var(--portal-secondary)}[data-theme=dark] .doctor-page :is(.clinical-images,.clinical-image-card,.clinical-image-viewer){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page .clinical-image-card:hover{background:var(--portal-elevated);border-color:#3b7378}[data-theme=dark] .doctor-layout .clinical-image-viewer :is(header button,.clinical-image-viewer-meta p,.clinical-image-caption){color:var(--portal-primary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-layout .clinical-image-viewer footer button{color:#fca5a5;background:#3b1820;border-color:#7f1d1d}[data-theme=dark] .doctor-page :is(.doctor-profile-summary-card,.doctor-profile-card){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.doctor-profile-summary-copy h3,.doctor-profile-card-heading h3,.doctor-profile-hours strong){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.doctor-profile-summary-copy p,.doctor-profile-hours span,.doctor-profile-fields label){color:var(--portal-secondary)}[data-theme=dark] .doctor-page .doctor-profile-photo{border-color:var(--portal-border);background:var(--portal-accent-soft);box-shadow:none}[data-theme=dark] .doctor-page .doctor-profile-card-icon{color:var(--portal-accent);background:var(--portal-accent-soft)}[data-theme=dark] .doctor-page .doctor-profile-fields label>div{color:var(--portal-primary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .doctor-profile-fields label>div:focus-within{border-color:var(--portal-accent);box-shadow:0 0 0 3px #52d5d71f}[data-theme=dark] .doctor-page .doctor-profile-fields :is(input,textarea){color:var(--portal-primary);background:0 0}[data-theme=dark] .doctor-page :is(.invoice-list-card,.invoice-detail-card,.invoice-list>button,.invoice-detail-meta,.invoice-items-head,.invoice-item-row,.invoice-empty){color:var(--portal-primary);background:var(--portal-surface);border-color:var(--portal-border);box-shadow:none}[data-theme=dark] .doctor-page .invoice-list>button:is(.active,:hover){background:var(--portal-accent-soft);border-color:#3b7378}[data-theme=dark] .doctor-page .invoice-list-card>header label{color:var(--portal-secondary);background:var(--portal-input);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .invoice-list-card>header input{color:var(--portal-primary);background:0 0}[data-theme=dark] .doctor-page :is(.invoice-detail-header,.invoice-detail-actions){background:var(--portal-surface);border-color:var(--portal-border)}[data-theme=dark] .doctor-page :is(.invoice-detail-header h3,.invoice-detail-meta strong,.invoice-item-row strong,.invoice-totals strong,.invoice-empty h3){color:var(--portal-primary)}[data-theme=dark] .doctor-page :is(.invoice-detail-header p,.invoice-detail-meta span,.invoice-items>header span,.invoice-list>button small,.invoice-empty p){color:var(--portal-secondary)}[data-theme=dark] .doctor-page .invoice-detail-header button{color:var(--portal-secondary);background:var(--portal-elevated);border-color:var(--portal-border)}[data-theme=dark] .doctor-page .invoice-detail-header button:hover{color:var(--portal-accent);background:var(--portal-accent-soft);border-color:#3b7378}@media print{@page{size:A4 portrait;margin:14mm}html,html[data-theme=dark],html[data-theme=light],html body,html[data-theme=dark] body,html[data-theme=light] body{color:#111827!important;background:#fff!important}html[data-theme] .doctor-layout,html[data-theme] .doctor-content,html[data-theme] .doctor-page,html[data-theme] .doctor-full-record{color:#111827!important;box-shadow:none!important;background:#fff!important}html[data-theme] .doctor-layout{min-height:0!important;display:block!important}html[data-theme] .doctor-content,html[data-theme] .doctor-page{width:100%!important;min-height:0!important;padding:0!important}html[data-theme] .doctor-page :is(.doctor-print-header,.doctor-full-record-heading,.doctor-record-hero-details>div,.doctor-record-section-card,.doctor-record-section-heading,.doctor-information-item,.doctor-clinical-item,.doctor-treatment-table-header,.doctor-treatment-table-row,.doctor-record-appointment-list>div,.doctor-clinical-note-entry,.doctor-clinical-note-entry-heading,.doctor-clinical-note-entry-grid>div,.doctor-encounter-timeline article,.doctor-patient-instructions>article,.dental-chart,.dental-chart-board,.dental-chart-legend,.dental-chart-history,.dental-chart-history>article,.dental-chart-history article p,.clinical-images,.clinical-image-card,.clinical-images-empty){color:#111827!important;box-shadow:none!important;background:#fff!important;border-color:#cbd5e1!important}html[data-theme] .doctor-page :is(.doctor-print-header h1,.doctor-record-hero-identity h2,.doctor-record-hero-details strong,.doctor-record-section-heading h3,.doctor-information-item strong,.doctor-clinical-item strong,.doctor-treatment-table-row strong,.doctor-record-appointment-list strong,.doctor-clinical-note-entry-heading strong,.doctor-encounter-timeline strong,.doctor-patient-instructions strong,.dental-chart-heading h3,.dental-chart-history h4,.dental-chart-history article strong,.dental-chart-legend strong,.clinical-images-heading h3,.clinical-image-card-copy strong){color:#111827!important}html[data-theme] .doctor-page :is(.doctor-print-header p,.doctor-record-hero-identity p,.doctor-record-hero-details small,.doctor-record-section-heading small,.doctor-information-item small,.doctor-clinical-item small,.doctor-treatment-table-row small,.doctor-record-appointment-list span,.doctor-clinical-note-entry-heading small,.doctor-clinical-note-entry-grid span,.doctor-clinical-note-entry-grid p,.doctor-encounter-timeline span,.doctor-encounter-timeline small,.doctor-patient-instructions>article>p,.doctor-patient-instructions>article>small,.dental-chart-heading p,.dental-chart-history small,.dental-chart-history article p,.dental-arch h4,.dental-chart-legend small,.clinical-images-heading p,.clinical-images-heading>small,.clinical-image-card-copy span){color:#475569!important}html[data-theme] .doctor-page :is(.doctor-full-record-heading,.doctor-record-section-heading,.dental-chart-heading,.clinical-images-heading){break-after:avoid-page}html[data-theme] .doctor-page :is(.doctor-record-hero-details>div,.doctor-information-item,.doctor-clinical-item,.doctor-treatment-table-row,.doctor-record-appointment-list>div,.doctor-clinical-note-entry,.doctor-encounter-timeline article,.doctor-patient-instructions>article,.dental-chart-history>article,.clinical-image-card){break-inside:avoid;page-break-inside:avoid}html[data-theme] .doctor-page :is(.dental-tooth-number,.dental-chart-legend header strong){color:#111827!important}html[data-theme] .doctor-page .dental-tooth path:not(.whole-mark){stroke:#64748b!important}html[data-theme] .doctor-page .dental-chart-legend i{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-color:#64748b!important}html[data-theme] .doctor-page :is(.clinical-image-thumb,.clinical-image-viewer__image-stage){background:#fff!important}html[data-theme] .doctor-page :is(.clinical-image-thumb img,.clinical-image-viewer__full-image){filter:none!important;opacity:1!important}html[data-theme] .doctor-layout :is(.doctor-sidebar-wrapper,.doctor-sidebar-overlay,.doctor-topbar,.doctor-full-record-actions,.doctor-record-back,.doctor-treatment-modal-overlay,.clinical-image-viewer-backdrop,.dental-chart-editor,.clinical-image-upload,button:not(.dental-tooth-number),input,select,textarea){display:none!important}html[data-theme] .doctor-page .dental-tooth-number{background:0 0!important;display:block!important}html[data-theme] .doctor-page :is(.doctor-record-section-card,.dental-chart,.clinical-images){overflow:visible!important}}
