.doctor-entry{font-size:12px;background:none;border:0;color:#78817a;padding:8px 0;white-space:nowrap;margin-left:auto}.doctor-entry:hover{color:var(--green)}header nav{margin-left:auto}.doctor-entry.active{color:var(--green)}.doctor-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.lock-button{background:none;border:0;color:#7c847e;font-size:12px;padding:5px}.password-dialog{max-width:380px}.password-dialog h2{margin-bottom:12px}.password-dialog .hint{margin-bottom:24px}.password-error{color:#b14540;font-size:12px;min-height:20px;margin-top:9px}body.calendar-view{background:var(--bg)}body.calendar-view main{max-width:1380px;padding:30px 28px 55px}.calendar-shell{border:1px solid #dedee1;border-radius:15px;background:white;overflow:hidden;box-shadow:0 8px 35px #182b2510}.apple-toolbar{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:23px 25px 20px;border-bottom:1px solid #e9e9eb;background:#fdfdfd}.calendar-heading .eyebrow{margin-bottom:8px;color:#98989e;letter-spacing:1px;font-size:10px}.calendar-heading h1{font-size:27px;font-weight:650;letter-spacing:-.6px;margin:0;color:#25252a}.calendar-heading h1 span{color:#88888e;font-weight:400;margin-left:7px}.calendar-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.segmented{display:flex;border:1px solid #d7d7dc;border-radius:7px;padding:2px;background:#efeff1}.segmented button{padding:6px 17px;border:0;background:none;color:#75757b;border-radius:5px;font-size:12px}.segmented .current{background:#fff;color:#2d2d33;box-shadow:0 1px 4px #0002}.month-navigation{display:flex;align-items:center;gap:3px}.month-navigation button{border:1px solid #e1e1e5;background:white;padding:6px 11px;min-height:31px;color:#505057}.month-navigation button:first-child{border-radius:6px 0 0 6px}.month-navigation button:last-child{border-radius:0 6px 6px 0}.month-navigation button+button{margin-left:-1px}.calendar-add{border:0;background:#ed5554;color:white;width:31px;height:31px;border-radius:50%;font-size:22px;line-height:1}.calendar-subbar{display:flex;justify-content:space-between;gap:15px;padding:12px 25px;border-bottom:1px solid #e9e9eb;font-size:11px;color:#85858d}.cal-legends{display:flex;gap:16px}.cal-legends i{width:8px;height:8px;margin-right:5px;background:#89929d;border-radius:2px}.cal-legends .pending-dot{background:none;border:1px dashed #89929d}.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #e7e7eb}.month-weekdays span{text-align:right;font-size:11px;padding:13px 12px;color:#88888e}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-day{min-height:120px;border-right:1px solid #ededf0;border-bottom:1px solid #ededf0;padding:8px 7px 9px;background:#fff;position:relative;cursor:pointer;min-width:0}.month-day:nth-child(7n){border-right:0;background:#fafafa}.month-day:nth-child(7n-1){background:#fafafa}.month-day:focus-visible{outline:2px solid #5a91ce;outline-offset:-2px}.month-day:hover{background:#f8fafc}.month-day.other-month .day-number{color:#c1c1c6}.month-day.selected-day{background:#f1f6fc;box-shadow:inset 0 0 0 1px #bdd1e8}.day-number{display:flex;justify-content:flex-end;margin-bottom:8px;color:#54545c;font-size:12px}.day-number span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%}.month-day.today .day-number span{background:#ec5353;color:#fff}.month-event{border:0;text-align:left;border-radius:4px;margin-bottom:4px;padding:5px 7px;display:block;width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.4;border-left:2px solid currentColor;background:var(--event-bg);color:var(--event-fg)}.color-0{--event-bg:#e6f0fd;--event-fg:#4075bc}.color-1{--event-bg:#e8f3ed;--event-fg:#418267}.color-2{--event-bg:#f2eafb;--event-fg:#8d63b9}.color-3{--event-bg:#fff0df;--event-fg:#b97f34}.color-4{--event-bg:#fce8ee;--event-fg:#b96382}.month-event.pending-event{background:transparent;border:1px dashed var(--event-fg);border-left:2px solid var(--event-fg)}.more-events{font-size:10px;color:#9999a1;padding:3px 6px}.mobile-dots{display:none}.day-agenda{padding:25px;border-top:1px solid #e5e5e9;background:#fff}.agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.agenda-heading h2{font-size:16px;margin:0;color:#37373e}.agenda-heading span{font-size:11px;color:#929299}.agenda-row{display:flex;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid #efeff2;color:#565660}.agenda-row:last-child{border-bottom:0}.agenda-time{font-size:12px;min-width:90px;color:#92929a}.agenda-bar{width:3px;height:32px;border-radius:3px;background:var(--event-fg);flex-shrink:0}.agenda-clinic{font-size:13px;flex:1}.agenda-clinic button{font:inherit;color:#404048;background:none;border:0;padding:0;text-align:left}.agenda-clinic small{display:block;margin-top:5px;font-size:11px;color:#92929a}.calendar-empty{padding:26px 0;color:#a0a0a7;font-size:12px}.calendar-note{font-size:11px;color:#95959d;line-height:1.8;margin:16px 2px}.time-calendar{overflow:auto;max-height:690px}.time-board{min-width:700px}.time-board.single-day{min-width:0}.time-day-head{display:grid;grid-template-columns:60px repeat(var(--days),minmax(0,1fr));position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid #e4e4e9}.time-day-head>div{padding:14px 5px;text-align:center;border-right:1px solid #efeff2}.time-day-head span{display:block;color:#97979e;font-size:10px;margin-bottom:7px}.time-day-head button{background:none;border:0;width:29px;height:29px;border-radius:50%;color:#62626b;font-size:16px}.time-day-head .is-today button{background:#ec5353;color:#fff}.time-columns{display:grid;grid-template-columns:60px repeat(var(--days),minmax(0,1fr));position:relative}.hour-ruler{position:relative;background:#fff}.hour-label{position:absolute;right:9px;font-size:10px;color:#a2a2aa;transform:translateY(-50%)}.hour-label:first-child{transform:none}.time-day-column{position:relative;border-left:1px solid #ededf2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#eaeaf0 59px,#eaeaf0 60px),repeating-linear-gradient(to bottom,transparent 0,transparent 29px,#f6f6f8 29px,#f6f6f8 30px)}.time-event{position:absolute;left:3px;right:4px;border:0;border-left:3px solid var(--event-fg);border-radius:4px;background:var(--event-bg);color:var(--event-fg);padding:4px 6px;text-align:left;overflow:hidden;font-size:11px}.time-event strong{font-size:11px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-event span{font-size:9px;display:block;margin-top:2px;white-space:nowrap}.time-event.pending-event{border:1px dashed var(--event-fg);border-left:3px solid var(--event-fg);background:var(--event-bg)}.now-line{position:absolute;height:1px;background:#ed5353;left:0;right:0;z-index:2;pointer-events:none}.now-line:before{content:'';position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#ed5353}.public-event-dialog h2{line-height:1.5;overflow-wrap:anywhere}.event-info{display:flex;flex-direction:column;gap:9px;font-size:14px;line-height:1.7}.event-info .hint{margin-top:9px}.event-info .badge{align-self:flex-start}.doctor-entry-icon{font-size:11px;margin-right:5px}body.calendar-view footer{max-width:1324px}body.calendar-view nav button.active{background:#f0f0f2;color:#414149}@media(max-width:800px){header{position:relative}.doctor-entry{position:absolute;right:20px;top:24px;font-size:11px}header nav{margin-left:0;width:100%}.apple-toolbar{padding:19px 15px;align-items:flex-start;gap:18px;flex-wrap:wrap}.calendar-heading h1{font-size:24px}.calendar-controls{width:100%;justify-content:space-between;gap:10px}.calendar-controls .segmented{order:0}.calendar-controls .month-navigation{order:1}.calendar-controls .calendar-add{order:2}body.calendar-view main{padding:23px 14px 40px}.calendar-subbar{padding:11px 15px;font-size:10px;flex-wrap:wrap}.month-day{min-height:78px;padding:5px 3px}.day-number{justify-content:center;margin-bottom:3px}.day-number span{width:24px;height:24px;font-size:11px}.month-event{display:none}.mobile-dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center;margin-top:5px}.mobile-dots span{width:5px;height:5px;border-radius:50%;background:var(--event-fg)}.mobile-dots .pending-event{background:transparent;border:1px solid var(--event-fg)}.more-events{display:none}.month-weekdays span{text-align:center;padding:12px 0;font-size:10px}.day-agenda{padding:20px 15px}.agenda-heading{align-items:flex-start;flex-direction:column;gap:8px}.agenda-time{min-width:77px;font-size:11px}.agenda-row{gap:12px}.agenda-clinic{font-size:12px}.time-calendar{max-height:590px}.time-board{min-width:650px}.calendar-note{font-size:10px}.calendar-shell{border-radius:12px}.doctor-heading h1{font-size:25px}}@media(min-width:1200px){.month-day{min-height:140px}}@media(max-width:380px){.segmented button{padding:6px 13px}.month-navigation button{padding:6px 8px}.calendar-heading h1{font-size:22px}.month-day{min-height:68px}}

/* Personal schedule: mint page and neutral non-working areas. */
.demo-banner{background:#d1e9de;color:#4b6c5d}.demo-banner button{color:#335b47}
footer{border-top-color:#86bca5;color:#395f4f}.calendar-note{color:#395f4f}
.month-day{background:#eceeee;border-color:#dadddd}
.month-day:nth-child(7n),.month-day:nth-child(7n-1){background:#e8eaea}
.month-day.has-availability{background:#fff}
.month-day:hover{background:#e3e9e5}
.month-day.has-availability:hover{background:#fff}
.month-day.selected-day{background:#e2e8e4;box-shadow:inset 0 0 0 1px #88b39e}
.month-day.selected-day.has-availability{background:#fff;box-shadow:inset 0 0 0 2px #88b39e}
.month-day.other-month .day-number{color:#969e9a}
.month-day:focus-visible{outline-color:#006d53}
.time-day-column{background-color:#eceeee;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#d5dada 59px,#d5dada 60px),repeating-linear-gradient(to bottom,transparent 0,transparent 29px,#e3e7e7 29px,#e3e7e7 30px)}
.time-event{box-shadow:0 1px 3px #344c3d15}
.cal-legends .empty-dot{background:#d7dddd;border:1px solid #bfc8c3}
@media(max-width:800px){.personal-title{font-size:18px;padding-right:80px;line-height:1.5}.doctor-entry{top:20px;color:#64746b}.calendar-note{color:#395f4f}}
@media(max-width:360px){header{padding-left:15px;padding-right:15px}.personal-title{font-size:16px;padding-right:64px}.doctor-entry{right:15px;font-size:10px}}

.available-period{position:absolute;left:0;right:0;pointer-events:none;background-color:#fff;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#e4e7e7 59px,#e4e7e7 60px),repeating-linear-gradient(to bottom,transparent 0,transparent 29px,#f2f3f3 29px,#f2f3f3 30px)}
.time-event{z-index:1}
.cal-legends{flex-wrap:wrap;row-gap:8px}
.cal-legends .available-dot{background:#fff;border:1px solid #bfc8c3}

.security-box[hidden]{display:none}.security-box{padding:18px 0 0}.security-box .hint{margin-bottom:12px}.network-error{background:#fff1dc;border:1px solid #e8d2ad;color:#875f20;padding:16px 20px;border-radius:12px;line-height:1.7;margin-bottom:22px;font-size:13px}.network-error button{margin-left:8px}

.security-box{max-width:1124px;margin:-45px auto 40px;background:#fff;border:1px solid #e1e8e2;border-radius:15px;padding:24px 28px}.security-box strong{display:block;margin:10px 0 18px}.security-box #turnstile-widget{min-height:65px}@media(max-width:800px){.security-box{margin:-20px 18px 30px;padding:22px}}
