:root{--color-primary:#0f172a;--color-primary-hover:#1e293b;--color-secondary:#0ea5e9;--color-secondary-hover:#0284c7;--bg-main:#f8fafc;--bg-card:#fff;--text-main:#0f172a;--text-muted:#64748b;--text-light:#fff;--border-color:#e2e8f0;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--nav-height:64px}*,:before,:after{box-sizing:border-box}body,html{background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:15px;line-height:1.5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif!important}h1,h2,h3,h4,h5,h6{color:var(--text-main);margin-top:0;margin-bottom:.5rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif!important}p{margin-top:0;margin-bottom:1rem}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-primary-hover)}button{cursor:pointer;font-family:inherit}.glass-panel{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border-bottom:1px solid #e2e8f0cc}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);padding:2rem}@media (width<=640px){:root{--nav-height:64px}html{font-size:14px}.card{padding:1.5rem}}.layout-container{background:radial-gradient(circle at 100% 0,#7dd3fc24,#0000 24%),linear-gradient(#f8fbff 0%,#f4f9ff 100%);flex-direction:column;height:100dvh;min-height:100vh;display:flex;overflow:hidden}.navbar{height:var(--nav-height);z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-bottom:1px solid #dbeafe;position:sticky;top:0}.navbar-content{justify-content:space-between;align-items:center;width:100%;height:100%;padding:0 1rem;display:flex}@media (width>=768px){.navbar-content{padding:0 1.5rem}}.navbar-left{align-items:center;gap:1rem;display:flex}.sidebar-toggle{color:#1e293b;background:#fff;border:1px solid #dbeafe;border-radius:.9rem;justify-content:center;align-items:center;padding:.5rem;display:flex}.sidebar-toggle:hover{background-color:#f0f9ff}.navbar-brand{align-items:center;gap:.75rem;display:flex}.brand-logo{background:#0284c7;border-radius:.9rem;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 10px 22px #0e74d633}.brand-logo span{color:#fff;letter-spacing:-.02em;font-size:.85rem;font-weight:700}.brand-name{letter-spacing:-.025em;color:#0f172a;font-size:1rem;font-weight:700}.user-profile{background:#fff;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:.75rem;min-height:44px;padding:.35rem .6rem .35rem .35rem;display:flex}.user-menu{position:relative}.user-profile:hover{background:#f0f9ff}.user-menu-chevron{color:#64748b;transition:transform .16s}.user-menu-chevron.open{transform:rotate(180deg)}.user-menu-dropdown{z-index:60;background:#fff;border:1px solid #dbeafe;border-radius:1rem;gap:.25rem;min-width:190px;padding:.4rem;display:grid;position:absolute;top:calc(100% + .55rem);right:0;box-shadow:0 18px 40px #94a3b82e}.user-menu-item{color:#1e293b;text-align:left;background:0 0;border:none;border-radius:.8rem;align-items:center;gap:.65rem;width:100%;padding:.72rem .8rem;font-size:.92rem;font-weight:600;display:flex}.user-menu-item:hover{color:#0f172a;background:#f0f9ff}.user-menu-item:disabled{opacity:.65;cursor:not-allowed}.user-menu-logout{color:#b91c1c}.user-menu-logout:hover,.user-menu-logout.is-loading{color:#991b1b;background:#fef2f2}.avatar{color:#0369a1;background-color:#f0f9ff;border:1px solid #dbeafe;border-radius:9999px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.user-name{font-size:.875rem;font-weight:500;display:none}@media (width>=640px){.user-name{display:block}}@media (width<=640px){.user-profile{padding-right:.45rem}.user-menu-dropdown{min-width:170px;right:0}}.layout-body{flex:1;width:100%;min-height:0;display:flex}.sidebar{width:84px;top:var(--nav-height);z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-right:1px solid #dbeafe;flex-direction:column;justify-content:space-between;padding:1rem .75rem;transition:left .3s;display:flex;position:fixed;bottom:0;left:-84px}.sidebar.mobile-open{left:0}.sidebar.expanded{width:230px}@media (width>=768px){.sidebar{z-index:10;position:sticky;left:0}}.sidebar-nav{flex-direction:column;gap:.5rem;display:flex}.nav-item{color:#64748b;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:1rem;justify-content:center;align-items:center;width:100%;padding:.75rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;position:relative}.nav-icon-wrap{justify-content:center;align-items:center;display:inline-flex;position:relative}.nav-item-indicator{color:#fff;text-align:center;background:#dc2626;border:1px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:-7px;right:-9px;box-shadow:0 4px 12px #dc26264d}.nav-item.active .nav-item-indicator{border-color:#0284c7}.sidebar.expanded .nav-item{justify-content:flex-start;gap:.75rem;padding:.75rem 1rem}.nav-item:hover{color:#0f172a;background-color:#f0f9ff}.nav-item.active{color:#fff;background-color:#0284c7;box-shadow:0 10px 22px #0284c738}.nav-label{display:none}.sidebar.expanded .nav-label{display:inline}.nav-item[data-tooltip]:after{content:attr(data-tooltip);color:#fff;white-space:nowrap;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;z-index:50;background:#0f172a;border-radius:.375rem;padding:.45rem .55rem;font-size:.75rem;font-weight:500;line-height:1;transition:opacity .15s,transform .15s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.nav-item[data-tooltip]:before{content:"";opacity:0;pointer-events:none;z-index:49;border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:6px solid #0f172a;transition:opacity .15s;position:absolute;top:50%;left:calc(100% + 4px);transform:translateY(-50%)}.nav-item[data-tooltip]:hover:after,.nav-item[data-tooltip]:hover:before{opacity:1}@media (width<=767px){.nav-item[data-tooltip]:after,.nav-item[data-tooltip]:before{display:none}}.main-content{flex:1;width:100%;min-height:0;padding:1rem;overflow-y:auto}@media (width>=768px){.main-content{padding:1.5rem}}.dashboard-shell{flex-direction:column;gap:1.5rem;display:flex}.patient-hero,.patient-stat-card,.patient-panel{background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 55px #94a3b824}.patient-hero{background:radial-gradient(circle at 100% 0,#7dd3fc2e,#0000 30%),linear-gradient(#fbfdff 0%,#f7fbff 100%);border-radius:2rem;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:1.5rem;padding:1.75rem;display:grid}.patient-hero-copy,.patient-hero-panel,.patient-panel,.patient-stat-card{min-width:0}.patient-badge,.patient-section-label{color:#0369a1;letter-spacing:.16em;text-transform:uppercase;background:#e0f2fe;border-radius:999px;align-items:center;padding:.45rem .85rem;font-size:.74rem;font-weight:700;display:inline-flex}.patient-hero-copy h1{color:#0f172a;letter-spacing:-.05em;margin:1rem 0 0;font-size:clamp(2rem,4vw,3rem);font-weight:650;line-height:1}.patient-hero-copy p,.patient-hero-panel-copy p,.patient-visit-card p,.patient-checklist-copy p,.patient-stat-copy span{color:#475569;line-height:1.65}.patient-hero-copy p{max-width:44ch;margin:1rem 0 0;font-size:1rem}.patient-hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.patient-primary-btn,.patient-secondary-btn{border-radius:1rem;justify-content:center;align-items:center;gap:.5rem;min-height:42px;padding:.7rem 1rem;font-size:.9rem;font-weight:700;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.patient-primary-btn{color:#fff;background:#0284c7;border:1px solid #0000;box-shadow:0 10px 22px #0284c733}.patient-primary-btn:hover{background:#0369a1;transform:translateY(-1px)}.patient-secondary-btn{color:#1e293b;background:#fff;border:1px solid #dbeafe}.patient-secondary-btn:hover{background:#f0f9ff}.patient-hero-panel{background:#fff;border:1px solid #dbeafe;border-radius:1.75rem;gap:.85rem;padding:1.35rem;display:grid}.patient-hero-panel-copy h2,.patient-panel-head h2{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:1.45rem;font-weight:650}.patient-hero-panel-copy p{margin:.7rem 0 0;font-size:.95rem}.patient-payment-card{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1rem;padding:1rem}.patient-payment-card p{color:#334155;margin:0;font-size:.9rem;line-height:1.6}.patient-payment-powered-by{color:#0f172a;margin-top:.45rem;font-size:.8rem;font-weight:700;display:block}.patient-payment-btn{width:100%;margin-top:.85rem}.patient-hero-list{gap:.75rem;margin-top:.2rem;display:grid}.patient-hero-item{color:#334155;background:#f0f9ff;border-radius:1rem;align-items:center;gap:.75rem;padding:.85rem .95rem;font-size:.9rem;line-height:1.45;display:flex}.patient-hero-item svg{color:#0284c7;flex:none}.patient-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.patient-stat-card{border-radius:1.5rem;align-items:center;gap:1rem;padding:1.2rem;display:flex}.patient-stat-icon{color:#0369a1;background:#e0f2fe;border-radius:1rem;flex:none;place-items:center;width:46px;height:46px;display:inline-grid}.patient-stat-copy p{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:700}.patient-stat-copy h3{color:#0f172a;margin:.25rem 0 0;font-size:1.5rem;font-weight:650}.patient-stat-copy span{margin-top:.25rem;font-size:.9rem;display:block}.patient-dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1rem;display:grid}.patient-panel{border-radius:1.75rem;padding:1.35rem}.patient-panel-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.patient-status-pill{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.8rem;font-weight:700;display:inline-flex}.patient-visit-grid{gap:.9rem;margin-top:1.2rem;display:grid}.patient-visit-card{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.2rem;padding:1rem}.visit-label{color:#0369a1;letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:700;display:inline-block}.patient-visit-card strong{color:#0f172a;margin-top:.45rem;font-size:1rem;display:block}.patient-visit-card p{margin:.35rem 0 0;font-size:.9rem}.patient-checklist{gap:.85rem;margin-top:1.15rem;display:grid}.patient-checklist-item{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.2rem;align-items:flex-start;gap:.85rem;padding:.95rem;display:flex}.patient-checklist-icon{border-radius:999px;flex:none;place-items:center;width:38px;height:38px;display:inline-grid}.patient-checklist-icon.status-done{color:#166534;background:#dcfce7}.patient-checklist-icon.status-due{color:#b91c1c;background:#fee2e2}.patient-checklist-icon.status-open{color:#0369a1;background:#e0f2fe}.patient-checklist-copy h3{color:#0f172a;margin:0;font-size:1rem;font-weight:650}.patient-checklist-copy p{margin:.35rem 0 0;font-size:.88rem}@media (width<=1100px){.patient-hero,.patient-dashboard-grid,.patient-stats-grid{grid-template-columns:1fr}}@media (width<=640px){.dashboard-shell{gap:1rem}.patient-hero,.patient-panel,.patient-stat-card{border-radius:1.25rem}.patient-hero{padding:1.15rem}.patient-panel,.patient-stat-card{padding:1rem}.patient-hero-copy h1{font-size:1.8rem}.patient-hero-actions{flex-direction:column}.patient-primary-btn,.patient-secondary-btn{width:100%}.patient-panel-head{flex-direction:column}}.messages-page{height:calc(100dvh - var(--nav-height) - 3rem);max-height:calc(100dvh - var(--nav-height) - 3rem);flex-direction:column;gap:1rem;min-height:0;display:flex;overflow:hidden}.messages-header{justify-content:space-between;align-items:center;display:flex}.messages-header h1{color:#0f172a;letter-spacing:-.04em;margin:0;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:650}.messages-layout{flex:1;grid-template-columns:320px 1fr;gap:1rem;min-height:0;max-height:100%;display:grid}.messages-list,.messages-thread{background:#fff;border:1px solid #dbeafe;border-radius:1.75rem;box-shadow:0 22px 55px #94a3b824}.messages-list{flex-direction:column;gap:.85rem;min-height:0;max-height:100%;padding:1rem;display:flex;overflow-y:auto}.messages-search{color:#64748b;background:#f8fbff;border:1px solid #dbeafe;border-radius:1rem;align-items:center;gap:.55rem;padding:.72rem .85rem;display:flex}.messages-search input{color:#1e293b;background:0 0;border:none;outline:none;width:100%;font-size:.9rem}.thread-item{text-align:left;background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.15rem;flex-direction:column;gap:.28rem;padding:.9rem;transition:border-color .18s,background-color .18s,transform .18s;display:flex}.thread-item:hover{background:#f0f9ff;border-color:#bfdbfe;transform:translateY(-1px)}.thread-item.active{background:linear-gradient(#f0f9ff 0%,#e8f5ff 100%);border-color:#0284c7;box-shadow:0 12px 26px #7dd3fc2e}.thread-group{flex-direction:column;gap:.65rem;display:flex}.thread-group+.thread-group{border-top:1px solid #e7f2ff;padding-top:.25rem}.thread-group-title{letter-spacing:.12em;text-transform:uppercase;color:#0369a1;margin:0;padding-left:.1rem;font-size:.74rem;font-weight:700}.thread-name{color:#0f172a;font-weight:650}.thread-meta{color:#0369a1;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;font-weight:700}.thread-preview{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;overflow:hidden}.thread-time{color:#94a3b8;font-size:.74rem}.thread-footer{justify-content:space-between;align-items:center;gap:.5rem;min-height:1rem;display:flex}.thread-unread-badge{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex}.messages-thread{min-height:0;max-height:100%;padding:1rem;display:flex;overflow:hidden}.thread-empty{text-align:center;color:#64748b;margin:auto}.thread-empty h2{color:#0f172a;margin-top:.75rem;margin-bottom:.35rem;font-size:1.35rem}.thread-panel{flex-direction:column;gap:.85rem;width:100%;min-height:0;display:flex}.thread-header{border-bottom:1px solid #dbeafe;padding-bottom:.85rem}.thread-back-btn{color:#0369a1;background:#f8fbff;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:.35rem;margin-bottom:.7rem;padding:.45rem .75rem;font-size:.8rem;font-weight:700;display:none}.thread-header h2{color:#0f172a;flex-wrap:wrap;align-items:baseline;gap:.55rem;margin:0;font-size:1.2rem;font-weight:650;display:flex}.thread-patient-dob-inline{color:#64748b;letter-spacing:.02em;font-size:.76rem;font-weight:600}.thread-header p{color:#0369a1;letter-spacing:.1em;text-transform:uppercase;margin:.3rem 0 0;font-size:.78rem;font-weight:700}.thread-patient-details{color:#475569;flex-wrap:wrap;gap:.4rem .85rem;margin-top:.5rem;font-size:.82rem;display:flex}.thread-patient-details strong{color:#0f172a;font-weight:650}.thread-stream{flex-direction:column;flex:1;justify-content:flex-start;gap:.65rem;min-height:0;padding-right:.25rem;display:flex;overflow-y:auto}.thread-empty-message{text-align:center;color:#64748b;margin:auto 0}.thread-empty-message p{margin:0}.message-row{flex:none;width:100%;margin:0;display:flex}.message-row.mine{justify-content:flex-end}.message-row.theirs{justify-content:flex-start}.message-bubble{background:#f8fbff;border:1px solid #dbeafe;border-radius:1.1rem;max-width:min(78%,580px);padding:.72rem .85rem;box-shadow:0 10px 24px #94a3b81a}.message-row.mine .message-bubble{color:#fff;background:#0284c7;border-color:#0284c7;box-shadow:0 12px 26px #0284c73d}.message-row.pending.theirs .message-bubble{opacity:.72}.message-sender{color:#64748b;margin:0 0 .24rem;font-size:.74rem;font-weight:600}.message-row.mine .message-sender{color:#fffc}.message-body{white-space:pre-wrap;word-break:break-word;margin:0;line-height:1.55}.message-time{opacity:.76;text-align:right;margin-top:.3rem;font-size:.71rem;display:block}.thread-composer{border-top:1px solid #dbeafe;gap:.65rem;margin-top:auto;padding-top:.85rem;display:flex}.thread-composer input{color:#1e293b;background:#f8fbff;border:1px solid #dbeafe;border-radius:1rem;flex:1;padding:.78rem .9rem;font-size:.9rem}.thread-composer input:focus{background:#fff;border-color:#0284c7;outline:none}.thread-composer button{color:#fff;background:#0284c7;border:none;border-radius:1rem;padding:.78rem 1.1rem;font-weight:700;box-shadow:0 10px 22px #0284c733}.thread-composer button:disabled{opacity:.55;cursor:not-allowed}.messages-hint{color:#64748b;margin:.4rem 0;font-size:.9rem}.messages-snackbar{color:#fff;z-index:60;text-align:center;background:#0f172a;border-radius:999px;width:min(92vw,520px);padding:.85rem 1rem;font-size:.88rem;font-weight:600;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 18px 40px #0f172a3d}@media (width<=1024px){.messages-page{height:calc(100dvh - var(--nav-height) - 2rem);max-height:calc(100dvh - var(--nav-height) - 2rem)}.messages-layout{grid-template-columns:1fr}}@media (width<=640px){.messages-page{height:calc(100dvh - var(--nav-height) - 1.5rem);max-height:calc(100dvh - var(--nav-height) - 1.5rem)}.messages-list,.messages-thread{border-radius:1.25rem;padding:.85rem}.messages-list.mobile-hidden,.messages-thread.mobile-hidden-thread{display:none}.messages-thread.mobile-visible{display:flex}.thread-back-btn{display:inline-flex}.message-bubble{max-width:88%}.thread-composer{flex-direction:column}.thread-composer button{width:100%}.messages-snackbar{width:calc(100vw - 2rem);max-width:none;bottom:1rem;left:50%;right:auto;transform:translate(-50%)}}.appointments-calendar-shell{grid-template-columns:minmax(0,1.45fr) minmax(340px,.85fr);gap:1.35rem;margin-top:1.35rem;display:grid}.appointments-calendar-column{align-content:start;gap:1.35rem;min-width:0;display:grid}.appointments-calendar-card,.calendar-day-panel{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.25rem;min-width:0;padding:1.35rem}.calendar-toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.calendar-toolbar h3,.calendar-day-head h3{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:650}.calendar-nav-btn{color:#0369a1;background:#fff;border:1px solid #dbeafe;border-radius:999px;place-items:center;width:38px;height:38px;display:inline-grid}.calendar-nav-btn:hover{background:#f0f9ff}.calendar-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:.6rem;margin-top:1.2rem;display:grid}.calendar-weekdays span{color:#64748b;letter-spacing:.08em;text-align:center;text-transform:uppercase;font-size:.76rem;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.6rem;margin-top:.85rem;display:grid}.calendar-day{color:#0f172a;background:#fff;border:1px solid #e3f0fd;border-radius:1.05rem;flex-direction:column;justify-content:space-between;align-items:center;min-height:94px;padding:.8rem .45rem .65rem;font-size:.98rem;font-weight:600;display:flex}.calendar-day-number{border-radius:999px;place-items:center;min-width:1.75rem;min-height:1.75rem;padding:0 .35rem;display:inline-grid}.calendar-day.today .today-number{color:#fff;background:#0ea5e9;box-shadow:0 0 0 2px #0ea5e933}.calendar-day:hover{background:#f0f9ff}.calendar-day.outside-month{color:#94a3b8;background:#fbfdff}.calendar-day.has-appointments{border-color:#bae6fd}.calendar-day.past-day{color:#64748b;background:linear-gradient(160deg,#f8fafc 0%,#f1f5f9 100%);border-style:dashed;border-color:#cbd5e1;box-shadow:inset 0 0 0 1px #94a3b838}.calendar-day.past-day:hover{background:linear-gradient(160deg,#f1f5f9 0%,#e2e8f0 100%)}.calendar-day.past-day .calendar-day-marker{opacity:.85;filter:saturate(.7)}.calendar-day.unavailable{opacity:.45;cursor:not-allowed}.calendar-day.selected{color:#0f172a;background:#fff;border-style:solid;border-color:#0284c7;box-shadow:inset 0 0 0 1px #0284c733,0 8px 16px #0284c71f}.calendar-day-dots{grid-template-columns:repeat(6,minmax(0,1fr));align-content:end;justify-items:center;gap:.12rem .18rem;width:100%;min-height:30px;display:grid}.calendar-day-marker{text-shadow:0 0 #0000;justify-content:center;align-items:center;min-width:.8rem;min-height:.8rem;font-size:.84rem;line-height:1;display:inline-flex}.calendar-day-head{gap:.5rem;display:grid}.calendar-empty-state{text-align:center;color:#64748b;justify-items:center;gap:.55rem;padding:2rem 1rem;display:grid}.calendar-empty-state svg{color:#0284c7}.calendar-empty-state p{margin:0;font-size:.9rem}.calendar-day-appointments{gap:.8rem;margin-top:1.1rem;display:grid}.calendar-day-legends{gap:.6rem;margin-top:1rem;display:grid}.calendar-day-legend-item{background:radial-gradient(circle at 100% 0,#0ea5e914,#0000 44%),linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:1rem;gap:.55rem;padding:.75rem .82rem;display:grid;box-shadow:0 8px 20px #94a3b814}.calendar-day-legend-line{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.42rem;min-width:0;padding:.4rem .5rem;display:inline-flex}.calendar-day-legend-line.is-location{background:#f8fbff;border-color:#dbeafe}.calendar-day-legend-line.is-provider{background:#fff;border-color:#e2e8f0}.calendar-day-legend-group{gap:.32rem;display:grid}.calendar-day-legend-group-title{color:#0369a1;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:700}.calendar-day-legend-symbol{color:#0f172a;justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.95rem;line-height:1;display:inline-flex}.calendar-day-legend-color{border:1px solid #cbd5e1;border-radius:999px;width:.7rem;height:.7rem;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff73}.calendar-day-legend-separator{color:#64748b;font-size:.8rem;font-weight:700;line-height:1}.calendar-day-legend-location,.calendar-day-legend-provider{overflow-wrap:anywhere;min-width:0}.calendar-day-legend-location{color:#0f172a;font-size:.86rem;font-weight:700;line-height:1.2}.calendar-day-legend-provider{color:#334155;font-size:.83rem;line-height:1.25}.calendar-day-legend-divider{background:linear-gradient(90deg,#94a3b800,#94a3b866,#94a3b800);height:1px;margin:.05rem 0}.calendar-location-card{border:1px solid var(--location-color,#0ea5e9);border-radius:1rem;padding:1rem}.calendar-location-card h4{color:#0f172a;margin:0;font-size:.98rem;font-weight:700}.calendar-location-card ul{gap:.2rem;margin:.6rem 0 0;padding-left:1.05rem;display:grid}.calendar-location-card li{color:#334155;font-size:.9rem;line-height:1.35}.calendar-provider-add-form{background:#fff;border:1px solid #cbd5e1;border-radius:.9rem;gap:.45rem;width:100%;min-width:0;max-width:100%;margin-top:1rem;padding:.65rem .75rem;display:grid}.calendar-provider-add-title{color:#0f172a;margin:0;font-size:.84rem;font-weight:700}.calendar-provider-add-controls{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;width:100%;display:grid}.calendar-provider-location-select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.7rem;width:100%;min-width:0;min-height:40px;padding:.5rem .7rem;font-size:.9rem}.calendar-provider-add-btn{color:#fff;white-space:nowrap;background:#0284c7;border:1px solid #0000;border-radius:.7rem;width:auto;min-height:40px;padding:.55rem .9rem;font-size:.88rem;font-weight:700}.calendar-provider-add-btn:disabled{opacity:.6;cursor:not-allowed}.calendar-provider-add-hint{color:#64748b;margin:0;font-size:.82rem}.calendar-provider-delete-box{background:#fff1f2;border:1px solid #fecaca;border-radius:.95rem;gap:.6rem;margin-top:1.6rem;padding:.8rem;display:grid}.calendar-provider-delete-note{color:#7f1d1d;margin:0;font-size:.84rem}.calendar-provider-delete-btn{color:#fff;background:#dc2626;border:1px solid #0000;border-radius:.75rem;width:100%;min-height:40px;margin-top:.45rem;font-size:.88rem;font-weight:700}.calendar-provider-delete-btn:hover{background:#b91c1c}.calendar-provider-delete-btn:disabled{opacity:.65;cursor:not-allowed}.appointments-section-head.calendar-section-head{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1rem}.calendar-head-copy{gap:.85rem;width:100%;display:grid}.appointments-calendar-top-cell{min-width:0}@media (width<=900px){.appointments-section-head.calendar-section-head{flex-wrap:wrap}.calendar-provider-add-form{width:100%;min-width:0;margin-left:0}.calendar-provider-add-controls{grid-template-columns:1fr}}@media (width<=1180px){.appointments-calendar-shell{grid-template-columns:1fr}}@media (width<=640px){.appointments-calendar-card,.calendar-day-panel{padding:.85rem}.calendar-weekdays span{font-size:.64rem}.calendar-grid{gap:.25rem}.calendar-day{border-radius:.8rem;justify-content:flex-start;align-items:flex-start;min-height:56px;padding:.35rem .3rem .3rem;font-size:.82rem}.calendar-day-number{min-width:1.25rem;min-height:1.25rem;padding:0 .22rem;font-size:.72rem}.calendar-day-dots{grid-template-columns:repeat(4,minmax(0,1fr));gap:.08rem .12rem;width:100%;min-height:20px;margin-top:auto}.calendar-day-marker{min-width:.5rem;min-height:.5rem;font-size:.56rem}}.appointments-shell{flex-direction:column;gap:1.35rem;display:flex}.appointments-notice{color:#0c4a6e;background:#f0f9ff;border:1px solid #bae6fd;border-radius:1rem;padding:.85rem 1rem;font-size:.9rem}.appointments-notice-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.appointments-snackbar{z-index:120;color:#f8fafc;text-align:center;background:#0369a1;border:1px solid #7dd3fc;border-radius:999px;width:min(92vw,520px);padding:.8rem 1rem;font-size:.9rem;font-weight:600;line-height:1.35;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 14px 30px #0284c754}.appointments-hero,.appointments-list,.appointments-summary{background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 55px #94a3b824}.appointments-hero{background:radial-gradient(circle at 100% 0,#7dd3fc2e,#0000 30%),linear-gradient(#fbfdff 0%,#f7fbff 100%);border-radius:2rem;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:start;gap:1.35rem;padding:1.75rem;display:grid}.appointments-hero-copy,.appointments-hero-panel,.appointments-work-panel,.appointments-list,.appointments-summary{min-width:0}.appointments-badge,.appointments-section-label{color:#0369a1;letter-spacing:.16em;text-transform:uppercase;background:#e0f2fe;border-radius:999px;align-items:center;padding:.45rem .85rem;font-size:.74rem;font-weight:700;display:inline-flex}.appointments-hero-copy h1{color:#0f172a;letter-spacing:-.05em;margin:.85rem 0 0;font-size:clamp(2rem,4vw,3rem);font-weight:650;line-height:.98}.appointments-hero-copy p,.appointments-hero-panel-copy p,.appointment-detail-card p,.appointments-prep-item p,.appointments-support-copy p{color:#475569;line-height:1.65}.appointments-hero-copy p{max-width:44ch;margin:.95rem 0 0;font-size:.98rem}.appointments-hero-panel{background:#fff;border:1px solid #dbeafe;border-radius:1.75rem;padding:1.35rem}.appointments-hero-panel-copy h2,.appointments-section-head h2,.appointments-summary h2{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:1.45rem;font-weight:650}.appointments-hero-panel-copy p{margin:.7rem 0 0;font-size:.95rem}.appointments-hero-list{gap:.75rem;margin-top:1rem;display:grid}.appointments-work-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:.65rem;display:grid}.appointments-work-panel{background:radial-gradient(circle at 100% 0,#0ea5e91a,#0000 42%),linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:1.75rem;padding:.92rem;box-shadow:0 12px 26px #94a3b81f}.appointments-work-panel-hero{width:min(560px,100%);margin-top:1.08rem}.appointments-work-summary-label{color:#0369a1;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.appointments-work-stat{background:#fff;border:1px solid #dbeafe;border-radius:.85rem;gap:.2rem;padding:.62rem .72rem;display:grid}.appointments-work-stat span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.appointments-work-stat strong{color:#0f172a;font-size:1.42rem;line-height:1.1}.appointments-hero-item{color:#334155;background:linear-gradient(#f0f9ff 0%,#ecf7ff 100%);border-radius:1rem;align-items:center;gap:.75rem;padding:.85rem .95rem;font-size:.9rem;display:flex}.appointments-hero-item svg,.appointments-prep-icon{color:#0284c7}.appointments-grid{grid-template-columns:minmax(0,1fr);gap:1.25rem;display:grid}.appointments-side-column{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.appointments-list,.appointments-summary{border-radius:1.75rem;padding:1.35rem}.appointments-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.appointments-calendar-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.appointments-calendar-filter{gap:.35rem;display:grid}.appointments-calendar-filter label{color:#334155;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.appointments-calendar-filter select,.appointments-filter-input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.75rem;width:100%;min-height:40px;padding:.55rem .7rem;font-size:.88rem}.appointments-range-card{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.25rem;gap:.9rem;padding:1rem;display:grid}.appointments-range-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.appointment-card{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.25rem;padding:1rem}.appointment-card-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.appointment-card-head h3,.appointments-prep-item h3{color:#0f172a;margin:0;font-size:1rem;font-weight:650}.appointment-card-head p{color:#64748b;margin:.35rem 0 0;font-size:.88rem}.appointment-status-pill{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.8rem;font-weight:700;display:inline-flex}.appointment-detail-grid{gap:.8rem;margin-top:1rem;display:grid}.appointment-detail-card{background:#fff;border:1px solid #e3f0fd;border-radius:1rem;padding:.9rem}.appointment-detail-label{color:#0369a1;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:700;display:inline-block}.appointment-detail-card strong{color:#0f172a;margin-top:.45rem;font-size:1rem;display:block}.appointment-detail-card p{margin:.3rem 0 0;font-size:.88rem}.appointments-summary-list{gap:.8rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.appointments-summary-list li{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1rem;gap:.2rem;padding:.9rem;display:grid}.appointments-summary-list strong{color:#0f172a;font-size:1.2rem}.appointments-summary-list span{color:#475569;font-size:.88rem}.appointments-own-events-list{gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.appointments-own-events-item{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1rem;justify-content:space-between;align-items:center;gap:.85rem;padding:.8rem .9rem;display:flex}.appointments-own-events-item strong{color:#0f172a;font-size:.95rem}.appointments-prep-list{gap:.8rem;margin-top:1rem;display:grid}.appointments-prep-item{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1rem;align-items:flex-start;gap:.8rem;padding:.9rem;display:flex}.appointments-prep-icon{background:#e0f2fe;border-radius:999px;flex:none;place-items:center;width:38px;height:38px;display:inline-grid}.appointments-prep-item p{margin:.35rem 0 0;font-size:.86rem}.appointments-support-card{background:radial-gradient(circle at 100% 0,#7dd3fc29,#0000 35%),linear-gradient(#fff 0%,#f8fbff 100%)}.appointments-support-copy p{margin:.8rem 0 0;font-size:.92rem}.appointments-form-grid{gap:.85rem;margin-top:1rem;display:grid}.appointments-form-row{gap:.35rem;display:grid}.appointments-form-row label{color:#334155;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700}.appointments-form-row select,.appointments-readonly-input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.8rem;width:100%;min-height:42px;padding:.65rem .8rem;font-size:.92rem}.appointments-readonly-input{align-items:center;display:inline-flex}.appointments-note{color:#475569;margin:0;font-size:.85rem}.appointments-support-btn{color:#fff;background:#0284c7;border:1px solid #0000;border-radius:1rem;justify-content:center;align-items:center;gap:.5rem;min-height:42px;margin-top:1rem;padding:.7rem 1rem;font-size:.9rem;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #0284c733}.appointments-support-btn:hover{background:#0369a1}.appointments-support-btn:disabled{opacity:.6;cursor:not-allowed}.appointments-danger-btn{background:#dc2626;min-height:36px;margin-top:0;box-shadow:0 10px 22px #dc262638}.appointments-danger-btn:hover{background:#b91c1c}.appointments-modal-overlay{z-index:90;background:#0f172a6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.appointments-modal-card{background:#fff;border:1px solid #dbeafe;border-radius:1.2rem;width:min(460px,100%);padding:1.15rem;box-shadow:0 24px 65px #0f172a4d}.appointments-modal-label{color:#be123c;letter-spacing:.12em;text-transform:uppercase;background:#fff1f2;border-radius:999px;padding:.35rem .7rem;font-size:.7rem;font-weight:700;display:inline-flex}.appointments-modal-card h3{color:#0f172a;letter-spacing:-.02em;margin:.8rem 0 0;font-size:1.3rem}.appointments-modal-card p{color:#475569;margin:.75rem 0 0;line-height:1.5}.appointments-modal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:1.15rem;display:grid}.appointments-modal-cancel,.appointments-modal-danger{border:1px solid #0000;border-radius:.8rem;min-height:42px;font-size:.9rem;font-weight:700}.appointments-modal-cancel{color:#334155;background:#f1f5f9;border-color:#cbd5e1}.appointments-modal-cancel:hover{background:#e2e8f0}.appointments-modal-danger{color:#fff;background:#dc2626;box-shadow:0 10px 22px #dc262638}.appointments-modal-danger:hover{background:#b91c1c}.appointments-modal-cancel:disabled,.appointments-modal-danger:disabled{opacity:.65;cursor:not-allowed}@media (width<=1100px){.appointments-hero,.appointments-grid,.appointments-side-column,.appointments-range-grid{grid-template-columns:1fr}}@media (width<=640px){.appointments-shell{gap:1rem}.appointments-hero,.appointments-list,.appointments-summary{border-radius:1.25rem}.appointments-hero{padding:1.15rem}.appointments-list,.appointments-summary{padding:1rem}.appointments-hero-copy h1{font-size:1.8rem}.appointments-work-summary{grid-template-columns:1fr}.appointment-card-head{flex-direction:column}.appointments-support-btn{width:100%}.appointments-modal-actions,.appointments-calendar-filters{grid-template-columns:1fr}.appointments-snackbar{width:calc(100vw - 1.5rem);max-width:none;bottom:.75rem;left:50%;right:auto;transform:translate(-50%)}}.calendar-export-page{flex-direction:column;gap:12px;max-width:760px;padding:24px;display:flex}.calendar-export-badge{color:#0369a1;letter-spacing:.14em;text-transform:uppercase;background:#e0f2fe;border-radius:999px;width:fit-content;padding:6px 12px;font-size:12px;font-weight:700}.calendar-export-page h1{color:#0f172a;margin:0}.calendar-export-page p{color:#475569;margin:0;line-height:1.55}.calendar-export-note{color:#0c4a6e;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;margin-top:4px;padding:10px 12px;font-size:14px;display:inline-block}.calendar-export-note ul{margin:6px 0 0 18px;padding:0}.calendar-export-grid{grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;max-width:540px;display:grid}.calendar-export-grid label{color:#334155;letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.calendar-export-grid input{color:#0f172a;border:1px solid #cbd5e1;border-radius:10px;min-height:42px;padding:0 12px;font-size:15px;font-weight:500}.calendar-export-btn{color:#fff;cursor:pointer;background:#0369a1;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.calendar-export-btn:disabled{cursor:not-allowed;opacity:.65}.calendar-export-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;max-width:620px;margin:0;padding:10px 12px}.calendar-export-snackbar{z-index:2200;color:#ecfdf5;text-align:center;background:#10b981;border:1px solid #34d399;border-radius:999px;width:min(92vw,520px);padding:.85rem 1rem;font-size:.9rem;font-weight:700;line-height:1.35;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #10b9814d}@media (width<=680px){.calendar-export-grid{grid-template-columns:1fr}.calendar-export-btn{width:100%}.calendar-export-snackbar{width:calc(100vw - 1.5rem);max-width:none;bottom:.8rem}}.ziprefer-referrals-page{flex-direction:column;gap:14px;max-width:1100px;padding:24px;display:flex}.ziprefer-referrals-badge{color:#1d4ed8;letter-spacing:.14em;text-transform:uppercase;background:#dbeafe;border-radius:999px;width:fit-content;padding:6px 12px;font-size:12px;font-weight:700}.ziprefer-referrals-page h1{color:#0f172a;margin:0}.ziprefer-referrals-page p{color:#475569;margin:0}.ziprefer-controls{background:#f8fafc;border:1px solid #dbe6f3;border-radius:14px;grid-template-columns:minmax(150px,180px) minmax(180px,220px) minmax(150px,180px) minmax(150px,180px) max-content;align-items:start;gap:10px;padding:12px;display:grid}.ziprefer-control{flex-direction:column;gap:6px;min-width:0;display:flex}.ziprefer-control span{color:#334155;letter-spacing:.02em;font-size:12px;font-weight:700}.ziprefer-control select,.ziprefer-control input{box-sizing:border-box;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;height:40px;padding:0 10px;font-size:14px}.ziprefer-control select:focus,.ziprefer-control input:focus{border-color:#3b82f6;outline:2px solid #3b82f626}.ziprefer-apply-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#1e3a8a;border:none;border-radius:10px;justify-content:center;place-self:auto start;align-items:center;min-width:110px;min-height:40px;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.ziprefer-action-control span{visibility:hidden;display:block}.ziprefer-action-control{align-self:start}.ziprefer-apply-btn:disabled{cursor:not-allowed;opacity:.65}.ziprefer-referrals-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin:0;padding:10px 12px}.ziprefer-results{border:1px solid #dbe6f3;border-radius:12px;padding:14px}.ziprefer-results-head{justify-content:space-between;align-items:center;display:flex}.ziprefer-results-head h2{color:#1e3a8a;margin:0;font-size:22px}.ziprefer-total{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700}.ziprefer-range{color:#0f172a;margin-top:6px;font-size:14px;font-weight:600}.ziprefer-empty{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:8px;margin-top:12px;padding:12px 14px;display:inline-flex}.ziprefer-chart-grid{flex-direction:column;gap:12px;margin-top:14px;display:flex}.ziprefer-chart-row{grid-template-columns:minmax(130px,240px) 1fr;gap:10px;display:grid}.ziprefer-month-label{color:#334155;letter-spacing:.01em;overflow-wrap:anywhere;white-space:normal;word-break:break-word;padding-top:2px;font-size:13px;font-weight:700;line-height:1.25}.ziprefer-bar-line{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;min-height:32px;padding:5px 8px 5px 5px;display:flex}.ziprefer-bar-line em{color:#0f172a;font-size:12px;font-style:normal;font-weight:700}.ziprefer-bar{border-radius:6px;min-width:2px;height:20px;display:inline-block}.ziprefer-bar.received{background:linear-gradient(90deg,#2c7be5,#3ea0e6)}@media (width<=920px){.ziprefer-controls{grid-template-columns:1fr 1fr}.ziprefer-action-control{grid-column:1/-1}.ziprefer-apply-btn{width:100%}}@media (width<=680px){.ziprefer-controls,.ziprefer-chart-row{grid-template-columns:1fr}.ziprefer-month-label{padding-top:0}}.admin-portal-page{flex-direction:column;gap:1.5rem;display:flex}.admin-tabs{background:radial-gradient(circle at 100% 0,#7dd3fc24,#0000 30%),linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:1.75rem;flex-wrap:wrap;gap:.85rem;padding:1.15rem;display:flex;box-shadow:0 22px 50px #94a3b821}.admin-tab-btn{color:#334155;background:#ffffffe6;border:1px solid #dbeafe;border-radius:999px;padding:.8rem 1.15rem;font-weight:700;transition:all .2s}.admin-tab-btn:hover{color:#0f172a;background:#f8fbff;border-color:#93c5fd}.admin-tab-btn.active{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 100%);border-color:#0284c7;box-shadow:0 14px 32px #0284c738}.admin-tab-list{background:linear-gradient(#fffffff2 0%,#f8fbfff2 100%);border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:.45rem;margin:.25rem 0 1rem;padding:.35rem;display:inline-flex;box-shadow:inset 0 1px #ffffffe6,0 12px 30px #94a3b81f}.admin-tab{color:#475569;letter-spacing:.01em;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;min-height:2.55rem;padding:.62rem 1rem;font-weight:700;transition:all .2s;display:inline-flex}.admin-tab:hover{color:#0f172a;background:#e2e8f08c}.admin-tab.active{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 100%);box-shadow:0 10px 24px #0284c74d}.admin-tab:focus-visible{outline:none;box-shadow:0 0 0 3px #7dd3fc6b}.admin-notice{color:#0f172a;background:linear-gradient(#fbfdff 0%,#f0f9ff 100%);border:1px solid #dbeafe;border-radius:1.15rem;padding:.95rem 1.1rem;font-weight:500;box-shadow:0 16px 36px #94a3b817}.admin-notice-error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.admin-portal-page>.card{background:radial-gradient(circle at 100% 0,#7dd3fc1f,#0000 32%),linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:2rem;box-shadow:0 28px 60px #94a3b826}.admin-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.5rem;display:flex}.admin-section-copy{gap:.65rem;min-width:0;display:grid}.admin-section-kicker{color:#0369a1;letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.admin-section-copy h2{color:#0f172a;letter-spacing:-.04em;margin:0;font-size:clamp(2rem,2.4vw,2.6rem);font-weight:700;line-height:1}.admin-section-subtitle{color:#475569;max-width:58ch;margin:0;line-height:1.65}.admin-search-form{background:#f8fbffe0;border:1px solid #dbeafe;border-radius:1.35rem;align-items:center;gap:.6rem;padding:.7rem;display:flex;box-shadow:inset 0 1px #ffffffd9}.admin-search-form input{background:#fff;border:1px solid #dbeafe;border-radius:999px;min-width:260px;padding:.8rem 1rem}.admin-search-form select{background:#fff;border:1px solid #dbeafe;border-radius:999px;min-width:180px;padding:.8rem 1rem}.admin-inline-form{background:radial-gradient(circle at 100% 0,#7dd3fc2e,#0000 36%),linear-gradient(#fbfdff 0%,#f7fbff 100%);border:1px solid #dbeafe;border-radius:1.65rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:.9rem;margin-bottom:1.5rem;padding:1.35rem;display:grid;box-shadow:inset 0 1px #ffffffe6}.admin-inline-form-copy{grid-column:1/-1;gap:.4rem;margin-bottom:.2rem;display:grid}.admin-inline-form-kicker{color:#0369a1;letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.admin-inline-form h3{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:1.4rem;font-weight:700}.admin-inline-form-copy p:last-child{color:#475569;max-width:56ch;margin:0;line-height:1.6}.admin-inline-form input,.admin-inline-form select{color:#0f172a;background:#fff;border:1px solid #dbeafe;border-radius:1.05rem;min-height:50px;padding:.85rem 1rem;box-shadow:0 8px 18px #94a3b80f}.admin-inline-form-actions{flex-wrap:nowrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:.7rem;display:flex}.admin-inline-form-actions .admin-secondary-btn,.admin-inline-form-actions .admin-primary-btn{min-width:170px}.general-contact-assignments{background:radial-gradient(circle at 100% 0,#7dd3fc24,#0000 34%),linear-gradient(#fbfdff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:1.65rem;gap:1rem;margin-bottom:1.5rem;padding:1.35rem;display:grid}.general-contact-assignments-copy{gap:.35rem;display:grid}.general-contact-assignments-copy h3{color:#0f172a;margin:0;font-size:1.35rem}.general-contact-assignments-copy p:last-child{color:#475569;margin:0;line-height:1.6}.general-contact-assignments-toolbar{justify-content:flex-end;display:flex}.general-contact-operator-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem;display:grid}.general-contact-operator-card{background:#fff;border:1px solid #dbeafe;border-radius:1.15rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.general-contact-operator-card strong,.general-contact-person strong{color:#0f172a;display:block}.general-contact-operator-card span,.general-contact-person span,.general-contact-message span,.general-contact-status-note{color:#64748b;font-size:.92rem;display:block}.general-contact-message p{color:#0f172a;margin:0 0 .5rem;line-height:1.55}.general-contact-status-stack{gap:.35rem;display:grid}.general-contact-status-pill{text-transform:capitalize;border-radius:999px;width:fit-content;padding:.35rem .75rem;font-size:.8rem;font-weight:700;display:inline-flex}.general-contact-status-pill.is-open{color:#075985;background:#dbeafe}.general-contact-status-pill.is-resolved{color:#166534;background:#dcfce7}.general-contact-resolved-label{color:#166534;font-weight:700}.general-contact-table-actions{justify-content:flex-start;display:flex}.general-contact-request-details{gap:1.25rem;margin-top:1.25rem;display:grid}.general-contact-request-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.general-contact-request-grid>div{min-width:0}.general-contact-request-label{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:block}.general-contact-request-grid strong,.general-contact-request-body p{color:#0f172a}.general-contact-request-grid strong{overflow-wrap:anywhere;word-break:break-word;display:block}.general-contact-request-body{background:#f8fbff;border:1px solid #dbeafe;border-radius:1rem;padding:1rem 1.05rem}.general-contact-request-body p{white-space:pre-wrap;margin:0;line-height:1.65}.admin-primary-btn,.admin-secondary-btn,.admin-danger-btn{border:1px solid #0000;border-radius:999px;min-height:46px;padding:.72rem 1.1rem;font-weight:700}.admin-primary-btn{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 100%);box-shadow:0 14px 30px #0284c733}.admin-secondary-btn{color:#0f172a;background:#fffffff5;border-color:#dbeafe}.admin-danger-btn{color:#be123c;background:#fff1f2;border-color:#fecdd3}.admin-primary-btn:hover{background:#0369a1}.admin-secondary-btn:hover{background:#f8fbff}.admin-danger-btn:hover{background:#ffe4e6}.admin-primary-btn:disabled,.admin-secondary-btn:disabled,.admin-danger-btn:disabled{opacity:.6;cursor:not-allowed}.admin-table-wrap{background:#fff;border-radius:1.55rem;overflow-x:auto}.admin-table-shell{background:linear-gradient(#fffffffa 0%,#f8fbfffa 100%);border:1px solid #dbeafe;border-radius:1.65rem;box-shadow:0 20px 48px #94a3b81c}.admin-table{border-collapse:collapse;text-align:left;width:100%}.admin-table th,.admin-table td{vertical-align:middle;border-bottom:1px solid #e3f0fd;padding:1.05rem 1.2rem}.admin-table th{color:#64748b;text-transform:uppercase;letter-spacing:.12em;background:#f8fbffe6;font-size:.76rem}.admin-table tbody tr:hover{background:#f8fbff}.admin-table td{color:#0f172a}.admin-table-empty-cell{padding:1.8rem}.admin-table-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-action-menu{position:relative}.admin-action-menu-dropdown{z-index:10;background:#fff;border:1px solid #dbeafe;border-radius:.9rem;min-width:8rem;padding:.35rem;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 16px 36px #0f172a24}.admin-action-menu-item{color:#0f172a;text-align:left;background:0 0;border:none;border-radius:.7rem;width:100%;padding:.65rem .8rem;font-weight:600}.admin-action-menu-item:hover{background:#f8fbff}.admin-action-menu-item:disabled{opacity:.6;cursor:wait}.admin-icon-btn{background:#fff;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;transition:background-color .2s,border-color .2s,opacity .2s;display:inline-flex}.admin-icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.admin-icon-btn-neutral{color:#0f172a;border-color:#dbeafe}.admin-icon-btn-neutral:hover{background:#f8fbff}.admin-icon-btn-danger{color:#be123c;background:#fff1f2;border-color:#fecdd3}.admin-icon-btn-danger:hover{background:#ffe4e6}.admin-icon-btn:disabled{opacity:.6;cursor:not-allowed}.admin-table-state{color:#64748b;text-align:center;place-items:center;gap:.55rem;min-height:180px;display:grid}.admin-table-state p{max-width:30ch;margin:0;line-height:1.6}.admin-table-state-badge{color:#0369a1;letter-spacing:.14em;text-transform:uppercase;background:#dff1ff;border-radius:999px;justify-content:center;align-items:center;min-height:2.35rem;padding:.35rem .95rem;font-size:.78rem;font-weight:700;display:inline-flex}.admin-pagination-row{color:#475569;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;font-size:.9rem;display:flex}.admin-pagination-row p{margin:0}.admin-pagination-actions{align-items:center;gap:.5rem;display:inline-flex}.admin-feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.admin-feature-item{background:#fff;border:1px solid #dbeafe;border-radius:1.4rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex;box-shadow:0 18px 40px #94a3b81a}.admin-feature-header{justify-content:space-between;gap:.75rem;display:flex}.admin-feature-header p{color:#64748b;margin:.25rem 0 0}.admin-switch{align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.admin-role-checkboxes{flex-direction:column;gap:8px;display:flex}.admin-role-option{align-items:center;gap:.35rem;font-size:.875rem;display:inline-flex}.admin-provider-assignment{gap:.35rem;display:grid}.admin-provider-trigger{justify-content:center;padding-left:.85rem;padding-right:.85rem;font-size:.82rem}.admin-provider-caption{color:#64748b;font-size:.8rem;line-height:1.4}.admin-provider-color-cell{align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.admin-provider-color-swatch{border:1px solid #bfdbfe;border-radius:999px;width:.9rem;height:.9rem;box-shadow:inset 0 0 0 1px #ffffff80}.admin-assignment-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.3rem .65rem;font-size:.76rem;font-weight:700;display:inline-flex}.admin-assignment-pill.is-assigned{color:#166534;background:#dcfce7}.admin-assignment-pill.is-unassigned{color:#475569;background:#e2e8f0}.admin-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a4d;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.admin-modal-card{background:#fff;border:1px solid #dbeafe;border-radius:1.5rem;width:min(680px,100%);max-height:min(85vh,760px);padding:1.25rem;overflow:auto;box-shadow:0 28px 70px #0f172a2e}.admin-modal-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-modal-head h3{color:#0f172a;letter-spacing:-.03em;margin:.55rem 0 0;font-size:1.4rem;font-weight:650}.admin-modal-subtitle{color:#475569;margin:.55rem 0 0;line-height:1.6}.admin-modal-field-note{color:#64748b;margin:-.2rem 0 0;font-size:.92rem;line-height:1.5}.admin-provider-modal-list{gap:.75rem;margin-top:1.25rem;display:grid}.admin-provider-modal-item{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:1.15rem;align-items:flex-start;gap:.8rem;padding:1rem 1.05rem;display:flex}.admin-provider-modal-item input{margin-top:.15rem}.admin-provider-modal-item strong{color:#0f172a;display:block}.admin-provider-modal-item span{color:#64748b;margin-top:.2rem;font-size:.88rem;display:block}.admin-modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.admin-modal-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.9rem;margin-top:1.25rem;display:grid}@media (width<=520px){.admin-modal-form{grid-template-columns:1fr}}.admin-modal-form-row-pair{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.9rem;display:grid}.admin-modal-form input,.admin-modal-form select{box-sizing:border-box;color:#0f172a;background:#fff;border:1px solid #dbeafe;border-radius:1.05rem;width:100%;min-width:0;min-height:50px;padding:.85rem 1rem;box-shadow:0 8px 18px #94a3b80f}.admin-modal-form select{appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4 6 8 10 12 6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.75rem}.admin-modal-form input[type=color]{padding:.35rem}.admin-modal-field-stack{gap:.45rem;min-width:0;display:grid}.admin-modal-field-stack label{color:#475569;font-size:.86rem;font-weight:700}.admin-radio-group{flex-wrap:wrap;align-items:center;gap:.55rem;display:inline-flex}.admin-radio-option{color:#334155;cursor:pointer;align-items:center;gap:.45rem;font-size:.92rem;font-weight:600;line-height:1;display:inline-flex}.admin-radio-option input[type=radio]{accent-color:#0284c7;flex-shrink:0;width:.95rem;height:.95rem;margin:0}.admin-symbol-picker{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:.55rem;display:grid}.admin-symbol-option{color:#0f172a;background:#fff;border:1px solid #dbeafe;border-radius:.9rem;justify-content:center;align-items:center;min-width:2.5rem;min-height:2.5rem;padding:.5rem;font-size:1.05rem;line-height:1;display:inline-flex}.admin-symbol-option:hover{background:#f8fbff;border-color:#93c5fd}.admin-symbol-option.is-active{color:#075985;background:#e0f2fe;border-color:#0284c7;box-shadow:0 8px 20px #0284c726}.admin-location-symbol{background:#f8fbff;border:1px solid #dbeafe;border-radius:.6rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.98rem;line-height:1;display:inline-flex}.admin-modal-form .admin-modal-actions{grid-column:1/-1;margin-top:.25rem}.admin-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;display:flex}.admin-checkbox input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.admin-checkbox-box{background:#fff;border:1.5px solid #93c5fd;border-radius:.35rem;flex-shrink:0;width:1.15rem;height:1.15rem;transition:border-color .15s,background .15s,box-shadow .15s;position:relative}.admin-checkbox input[type=checkbox]:checked+.admin-checkbox-box{background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 100%);border-color:#0284c7;box-shadow:0 4px 12px #0284c740}.admin-checkbox input[type=checkbox]:checked+.admin-checkbox-box:after{content:"";border:2px solid #fff;border-top:none;border-left:none;width:.28rem;height:.52rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-60%)rotate(45deg)}.admin-checkbox:hover .admin-checkbox-box{background:#f0f9ff;border-color:#0ea5e9}.admin-checkbox input[type=checkbox]:focus-visible+.admin-checkbox-box{outline-offset:2px;outline:2px solid #0ea5e9}.admin-checkbox input[type=checkbox]:disabled+.admin-checkbox-box{opacity:.5;cursor:not-allowed}.admin-snackbar{z-index:90;color:#166534;text-align:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;min-width:min(420px,100vw - 2rem);max-width:calc(100vw - 2rem);padding:.95rem 1.25rem;font-size:.92rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #16653414}.admin-snackbar-success{color:#fff;background:#166534;border-color:#14532d;box-shadow:0 12px 30px #14532d47}.admin-snackbar-error{color:#fff;background:#b91c1c;border-color:#991b1b;box-shadow:0 12px 30px #991b1b57}@media (width<=640px){.admin-tabs{padding:.85rem}.admin-tab-list{border-radius:1rem;grid-template-columns:1fr;display:grid}.admin-section-copy h2{font-size:1.8rem}.admin-search-form{flex-wrap:wrap;width:100%;padding:.65rem}.admin-search-form input{width:100%;min-width:0}.admin-secondary-btn{white-space:nowrap;width:100%}.admin-inline-form{padding:1rem}.admin-inline-form h3{font-size:1.2rem}.admin-inline-form-actions{flex-wrap:wrap}.admin-inline-form-actions .admin-secondary-btn,.admin-inline-form-actions .admin-primary-btn{width:100%;min-width:0}.admin-modal-card{padding:1rem}.admin-modal-head,.admin-modal-actions{flex-direction:column}.admin-modal-actions .admin-secondary-btn,.admin-modal-actions .admin-primary-btn{width:100%}}.profile-page{flex-direction:column;gap:1.5rem;display:flex}.profile-hero,.profile-form,.profile-password-panel{background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 55px #94a3b824}.profile-hero{background:radial-gradient(circle at 100% 0,#7dd3fc29,#0000 30%),linear-gradient(#fbfdff 0%,#f7fbff 100%);border-radius:2rem;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);gap:1.25rem;padding:1.5rem;display:grid}.profile-badge,.profile-section-kicker{color:#0369a1;letter-spacing:.16em;text-transform:uppercase;background:#e0f2fe;border-radius:999px;align-items:center;padding:.45rem .85rem;font-size:.74rem;font-weight:700;display:inline-flex}.profile-hero-copy h1{color:#0f172a;letter-spacing:-.05em;margin:1rem 0 0;font-size:clamp(2rem,4vw,2.8rem);font-weight:650;line-height:1}.profile-hero-copy p,.profile-role-panel p{color:#475569;margin:.9rem 0 0;line-height:1.7}.profile-role-panel{background:#fff;border:1px solid #dbeafe;border-radius:1.5rem;align-content:start;gap:.55rem;padding:1.25rem;display:grid}.profile-role-label{color:#64748b;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:700}.profile-role-panel strong{color:#0f172a;text-transform:capitalize;font-size:1.25rem;font-weight:650}.profile-form{border-radius:2rem;gap:1.25rem;padding:1.5rem;display:grid}.profile-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.profile-section-head h2{color:#0f172a;letter-spacing:-.03em;margin:.7rem 0 0;font-size:1.55rem;font-weight:650}.profile-status-text{color:#64748b;font-size:.9rem;font-weight:600}.profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.15rem;display:grid}.profile-field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.profile-field span{color:#0f172a;align-items:center;gap:.45rem;font-size:.9rem;font-weight:700;display:inline-flex}.profile-field input{color:#1e3a5f;box-sizing:border-box;background:#eef6fd;border:1px solid #c7dbf1;border-radius:1rem;width:100%;min-width:0;min-height:46px;padding:.78rem .95rem;font-size:.95rem}.profile-field input::placeholder{color:#547196}.profile-password-panel{background:#f8fbff;border-radius:1.5rem;gap:1rem;padding:1.2rem;display:grid}.profile-actions{justify-content:flex-start;display:flex}.profile-save-btn{color:#fff;background:#0284c7;border:1px solid #0000;border-radius:1rem;justify-content:center;align-items:center;gap:.55rem;min-height:44px;padding:.72rem 1.05rem;font-size:.92rem;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #0284c72e}.profile-save-btn:hover{background:#0369a1}.profile-save-btn:disabled{opacity:.7;cursor:not-allowed}.profile-snackbar{z-index:90;text-align:center;border-radius:999px;min-width:min(420px,100vw - 2rem);max-width:calc(100vw - 2rem);padding:.95rem 1.1rem;font-size:.92rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.profile-snackbar-success{color:#fff;background:#166534;border:1px solid #14532d;box-shadow:0 12px 30px #14532d47}.profile-snackbar-error{color:#fff;background:#b91c1c;border:1px solid #991b1b;box-shadow:0 12px 30px #991b1b57}@media (width<=900px){.profile-hero,.profile-form-grid{grid-template-columns:1fr}}@media (width<=640px){.profile-page{gap:1rem}.profile-hero,.profile-form{border-radius:1.35rem;padding:1.1rem}.profile-password-panel{border-radius:1.15rem;padding:1rem}.profile-hero-copy h1{font-size:1.8rem}.profile-save-btn{width:100%}}.settings-shell{flex-direction:column;gap:1.5rem;display:flex}.settings-hero,.settings-panel{background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 55px #94a3b824}.settings-hero{background:radial-gradient(circle at 100% 0,#7dd3fc2e,#0000 30%),linear-gradient(#fbfdff 0%,#f7fbff 100%);border-radius:2rem;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:1.5rem;padding:1.75rem;display:grid}.settings-hero-copy,.settings-hero-panel,.settings-panel{min-width:0}.settings-badge,.settings-section-label{color:#0369a1;letter-spacing:.16em;text-transform:uppercase;background:#e0f2fe;border-radius:999px;align-items:center;padding:.45rem .85rem;font-size:.74rem;font-weight:700;display:inline-flex}.settings-hero-copy h1{color:#0f172a;letter-spacing:-.05em;margin:1rem 0 0;font-size:clamp(2rem,4vw,3rem);font-weight:650;line-height:1}.settings-hero-copy p,.settings-hero-panel-copy p,.settings-row-copy p,.settings-note{color:#475569;line-height:1.65}.settings-hero-copy p{max-width:44ch;margin:1rem 0 0;font-size:1rem}.settings-hero-panel{background:#fff;border:1px solid #dbeafe;border-radius:1.75rem;padding:1.35rem}.settings-hero-panel-copy h2,.settings-panel-head h2{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:1.45rem;font-weight:650}.settings-hero-panel-copy p{margin:.7rem 0 0;font-size:.95rem}.settings-hero-list{gap:.75rem;margin-top:1rem;display:grid}.settings-hero-item{color:#334155;background:#f0f9ff;border-radius:1rem;align-items:center;gap:.75rem;padding:.85rem .95rem;font-size:.9rem;display:flex}.settings-hero-item svg{color:#0284c7;flex:none}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.settings-panel{border-radius:1.75rem;padding:1.35rem}.settings-panel-list{gap:.85rem;margin-top:1.1rem;display:grid}.settings-row{cursor:pointer;background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.2rem;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.95rem;display:grid}.settings-row-icon{color:#0284c7;background:#e0f2fe;border-radius:999px;place-items:center;width:38px;height:38px;display:inline-grid}.settings-row-copy h3{color:#0f172a;margin:0;font-size:1rem;font-weight:650}.settings-row-copy p{margin:.35rem 0 0;font-size:.86rem}.settings-switch-shell{align-items:center;display:inline-flex;position:relative}.settings-switch-shell input{opacity:0;cursor:pointer;position:absolute;inset:0}.settings-switch{background:#dbeafe;border-radius:999px;width:46px;height:28px;transition:background-color .18s;position:relative}.settings-switch:after{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .18s;position:absolute;top:4px;left:4px;box-shadow:0 4px 10px #0f172a24}.settings-switch-shell input:checked+.settings-switch{background:#0284c7}.settings-switch-shell input:checked+.settings-switch:after{transform:translate(18px)}.settings-note{background:#fbfdff;border:1px dashed #c7dbf1;border-radius:1rem;margin-top:1rem;padding:.85rem .95rem;font-size:.85rem}@media (width<=1100px){.settings-hero,.settings-grid{grid-template-columns:1fr}}@media (width<=640px){.settings-shell{gap:1rem}.settings-hero,.settings-panel{border-radius:1.25rem}.settings-hero{padding:1.15rem}.settings-panel{padding:1rem}.settings-hero-copy h1{font-size:1.8rem}.settings-row{grid-template-columns:1fr;justify-items:start}.settings-switch-shell{justify-self:end}}.select-group{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.select-label{color:var(--text-main);font-size:.875rem;font-weight:500}.select-wrapper{align-items:center;display:flex;position:relative}.select-field{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-card);width:100%;color:var(--text-main);appearance:none;cursor:pointer;padding:.625rem 2.5rem .625rem .875rem;font-family:inherit;font-size:.875rem;line-height:1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.select-field:hover{border-color:var(--color-secondary);background-color:var(--bg-main)}.select-field:focus{border-color:var(--color-secondary);background-color:var(--bg-card);outline:none;box-shadow:0 0 0 3px #0ea5e926}.select-arrow{pointer-events:none;color:var(--text-muted);justify-content:center;align-items:center;transition:color .2s,transform .2s;display:flex;position:absolute;right:.875rem}.select-field:focus+.select-arrow{color:var(--color-secondary);transform:translateY(-1px)}.select-arrow svg{width:1rem;height:1rem}.select-error{border-color:#ef4444}.select-error:focus{box-shadow:0 0 0 3px #ef444433}.select-error-text{color:#ef4444;font-size:.75rem}.input-group{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.input-label{color:var(--text-main);font-size:.875rem;font-weight:500}.input-field{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-main);padding:.625rem .875rem;font-family:inherit;font-size:.875rem;line-height:1.25rem;transition:border-color .15s,box-shadow .15s}.input-field:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 3px #0ea5e933}.input-field::placeholder{color:var(--text-muted)}.input-error{border-color:#ef4444}.input-error:focus{box-shadow:0 0 0 3px #ef444433}.input-error-text{color:#ef4444;font-size:.75rem}.btn{border-radius:var(--radius-md);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-full{width:100%}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:not(:disabled):hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:not(:disabled):hover{background-color:var(--color-secondary-hover)}.btn-outline{border-color:var(--border-color);color:var(--text-main);background-color:#0000}.btn-outline:not(:disabled):hover{background-color:var(--bg-main)}.btn-ghost{color:var(--text-main);background-color:#0000}.btn-ghost:not(:disabled):hover{background-color:var(--bg-main)}.login-page{background:radial-gradient(circle at 16% 10%,#0b83d31f,#0000 38%),radial-gradient(circle at 90% 88%,#4dadf02e,#0000 40%),#f5f8fc;justify-content:center;align-items:center;min-height:100vh;padding:1.25rem;display:flex}.login-shell{background:#fff;border:1px solid #d8e1ed;border-radius:30px;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);width:min(1060px,100%);display:grid;overflow:hidden;box-shadow:0 14px 34px #10214424}.login-visual{background:linear-gradient(165deg,#f7fbff 0%,#eaf4ff 100%);border-right:1px solid #d8e2ef;padding:2.75rem 2.6rem}.login-badge{color:#0b6cae;background:#dbeefe;border-radius:999px;align-items:center;margin-bottom:1.35rem;padding:.52rem 1.08rem;font-size:.86rem;font-weight:700;display:inline-flex}.login-visual h1{color:#102144;letter-spacing:-.03em;max-width:16ch;margin:0;font-size:clamp(1.6rem,2.3vw,2.45rem);font-weight:700;line-height:1.08}.login-visual p{color:#344c6c;max-width:46ch;margin:1rem 0 0;font-size:1rem;line-height:1.65}.login-home-link{color:#12203f;background:#fff;border:1px solid #c1d2e5;border-radius:14px;justify-content:center;align-items:center;min-height:44px;margin-top:1.5rem;padding:0 1rem;font-size:.93rem;font-weight:700;display:inline-flex}.login-home-link:hover{color:#12203f;background:#f7fbff}.login-card{box-shadow:none;border:0;padding:2.45rem 2.35rem}.login-header{margin-bottom:1.35rem}.login-header h2{color:#0f1a39;margin:0;font-size:1.55rem;font-weight:700}.login-header p{color:#60738f;margin:.42rem 0 0;font-size:.96rem}.login-form{flex-direction:column;display:flex}.login-form .input-group{margin-bottom:.95rem}.login-form .input-label{color:#2c3f5c;font-weight:600}.login-form .input-field{color:#1f3352;background:#fff;border:1px solid #c4d3e5;border-radius:14px;min-height:46px}.login-form .input-field::placeholder{color:#9aa8ba}.patient-invite-form-stack{flex-direction:column;gap:.7rem;min-width:0;display:flex}.patient-invite-verification-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.patient-invite-verification-status{color:#60738f;font-size:.88rem;font-weight:600}.patient-invite-verification-status.is-verified{color:#0a7a43}.login-error{color:#b42318;background:#fff4f5;border:1px solid #f7c0c8;border-radius:12px;margin-bottom:1rem;padding:.68rem .78rem;font-size:.88rem;line-height:1.45}.login-forgot{justify-content:flex-end;margin-top:.1rem;margin-bottom:1.2rem;display:flex}.login-forgot a{color:#0b6cae;font-size:.87rem;font-weight:600}.login-forgot a:hover{color:#095f97}.login-submit-btn.btn-primary{min-height:46px;box-shadow:none;background:#0b83d3;border:1px solid #0a81cd;border-radius:14px;font-size:.96rem;font-weight:700}.login-submit-btn.btn-primary:not(:disabled):hover{background:#0a74bb}.login-footer{text-align:center;color:#667a99;margin-top:1.35rem;font-size:.88rem}.login-footer a{color:#0b6cae;margin-left:.2rem;font-weight:700}@media (width<=920px){.login-shell{grid-template-columns:1fr}.login-visual{border-bottom:1px solid #d8e2ef;border-right:0;padding:1.65rem 1.5rem}.login-visual h1{max-width:none}.login-card{padding:1.6rem 1.25rem 1.35rem}}.register-type-card{padding-top:2.3rem}.register-select-group{flex-direction:column;gap:.375rem;margin-bottom:.95rem;display:flex}.register-select{color:#1f3352;background:#fff;border:1px solid #c4d3e5;border-radius:14px;min-height:46px;padding:0 .9rem;font-size:.95rem}.register-select:focus{border-color:#0b83d3;outline:none;box-shadow:0 0 0 3px #0b83d32e}.register-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.register-type-option{color:#12203f;background:#fff;border:1px solid #d8e2ef;border-radius:18px;padding:1rem .95rem;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:block}.register-type-option:hover{border-color:#92c4e8;transform:translateY(-2px);box-shadow:0 10px 20px #12234314}.register-type-option h3{color:#102144;margin:0;font-size:1.05rem}.register-type-option p{color:#4f6280;margin:.5rem 0 0;font-size:.87rem;line-height:1.45}.register-type-footer{margin-top:1.05rem}.register-success{color:#0f766e;background:#effcf9;border:1px solid #9ad9d0;border-radius:12px;margin-bottom:1rem;padding:.68rem .78rem;font-size:.88rem;line-height:1.45}.register-links{margin-top:1rem}.register-links a{margin:0 .18rem}.register-details-summary{background:#f8fbff;border:1px solid #d5e3f2;border-radius:14px;gap:.45rem;padding:.85rem .95rem;display:grid}.register-details-summary-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.2rem;display:flex}.register-details-summary-header strong{color:#102144}.register-details-summary p{color:#334155;margin:0;font-size:.88rem}.register-details-edit-btn{color:#1f3352;cursor:pointer;background:#fff;border:1px solid #b8cde3;border-radius:999px;min-height:32px;padding:.25rem .7rem;font-size:.82rem;font-weight:600}.register-details-edit-btn:hover{border-color:#8fb5db}.patient-invite-form-grid,.patient-invite-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.patient-otp-modal-backdrop{z-index:1200;background:#0f172a7a;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.patient-otp-modal-card{background:#fff;border:1px solid #dbe6f3;border-radius:16px;gap:.75rem;width:min(100%,460px);padding:1rem;display:grid;box-shadow:0 18px 40px #0f172a33}.patient-otp-modal-card h3{color:#102144;margin:0}.patient-otp-modal-card p{color:#4f6280;margin:0}.patient-otp-modal-actions{flex-wrap:wrap;gap:.5rem;display:flex}.patient-otp-modal-note{color:#1f3352;font-size:.86rem}@media (width<=680px){.patient-invite-form-grid,.patient-invite-form-row{grid-template-columns:1fr;gap:0}.patient-otp-modal-actions{flex-direction:column}.patient-otp-modal-actions .admin-primary-btn,.patient-otp-modal-actions .admin-secondary-btn{width:100%}}@media (width<=920px){.register-type-grid{grid-template-columns:1fr}}.navbar-landing{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-bottom:1px solid #dbeafe;position:sticky;top:0}.nav-container{justify-content:space-between;align-items:center;gap:1rem;max-width:1280px;margin:0 auto;padding:1.2rem 2rem 1.05rem;display:flex}.logo-link{color:#0f172a;align-items:center;gap:.85rem;display:flex}.logo-link:hover{color:#0f172a}.logo-icon{color:#fff;letter-spacing:-.03em;background:#0284c7;border-radius:22px;place-items:center;width:72px;height:72px;font-size:1.55rem;font-weight:700;display:grid;box-shadow:0 14px 32px #0e74d647}.logo-copy{flex-direction:column;line-height:1.15;display:flex}.logo-title{letter-spacing:-.03em;color:#1e293b;margin:0;font-size:1.35rem;font-weight:600}.nav-actions{align-items:center;gap:.75rem;min-width:0;display:flex}.nav-btn{color:#1e293b!important;background:#fff!important;border-color:#dbeafe!important;border-radius:999px!important;min-width:0!important;padding:.6rem 1.8rem!important;font-size:1rem!important;font-weight:600!important}.nav-signup-btn{color:#fff;background:#0284c7;border:1px solid #0000;border-radius:999px;min-width:0;padding:.7rem 1.8rem;font-size:1rem;font-weight:700;line-height:1.2;box-shadow:0 10px 24px #0e74d652}.nav-signup-btn:hover{background:#0369a1}@media (width<=900px){.nav-container{padding:.9rem 1rem}.logo-title{font-size:1.12rem}.logo-icon{border-radius:16px;width:50px;height:50px;font-size:1.1rem}.nav-btn,.nav-signup-btn{padding:.5rem 1rem!important;font-size:.88rem!important}}@media (width<=640px){.nav-container{flex-direction:column;align-items:stretch;gap:.85rem;padding:.85rem 1rem 1rem}.logo-link{align-items:center;gap:.7rem}.logo-copy{flex:auto;min-width:0}.logo-title{white-space:normal;overflow-wrap:anywhere;font-size:1rem;line-height:1.1}.nav-actions{flex-direction:column;gap:.65rem;width:100%}.nav-actions>a,.nav-signup-btn{flex:auto;width:100%}.nav-actions>a{width:100%;display:flex}.nav-btn,.nav-signup-btn{justify-content:center;width:100%;min-height:42px;padding:.65rem .9rem!important}}@media (width<=420px){.nav-container{padding-inline:.8rem}.logo-icon{border-radius:14px;width:44px;height:44px;font-size:1rem}.logo-title{font-size:.92rem}.nav-link{min-width:0}}.landing-page{color:#0f172a;background:radial-gradient(circle at 100% 0,#7dd3fc2e,#0000 28%),linear-gradient(#f8fbff 0%,#f7fbff 100%);min-height:100vh;overflow-x:hidden}.container{box-sizing:border-box;width:100%;max-width:1280px;margin:0 auto;padding:0 2rem}.section-eyebrow{color:#0284c7;letter-spacing:.24em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.hero-section{border-bottom:1px solid #dbeafe;padding:1rem 0 4rem}.hero-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:2.75rem;display:grid}.hero-layout>*,.contact-layout>*{min-width:0}.hero-side-stack{gap:1.25rem;display:grid}.hero-content{min-width:0;max-width:930px}.hero-badge{color:#0369a1;background:#e0f2fe;border-radius:999px;align-items:center;padding:.82rem 1.45rem;font-size:.92rem;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #7dd3fc29}.hero-content h1{color:#0f172a;letter-spacing:-.06em;max-width:12ch;margin:1.55rem 0 0;font-size:clamp(2.9rem,6vw,4.9rem);font-weight:650;line-height:.96}.hero-content p{color:#475569;overflow-wrap:anywhere;max-width:40ch;margin:1.45rem 0 0;font-size:clamp(1.02rem,1.45vw,1.32rem);line-height:1.8}.hero-actions,.contact-actions{flex-wrap:wrap;gap:.95rem;margin-top:2rem;display:flex}.hero-primary-btn,.hero-secondary-btn,.contact-primary-btn,.contact-secondary-btn,.video-link{border-radius:1.35rem;justify-content:center;align-items:center;gap:.55rem;font-weight:700;text-decoration:none;transition:transform .16s,background-color .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex}.hero-primary-btn,.contact-primary-btn{color:#fff;background:#0284c7;border:1px solid #0000;min-height:46px;padding:.72rem 1.2rem;font-size:.95rem;box-shadow:0 10px 22px #0284c738}.hero-primary-btn:hover,.contact-primary-btn:hover{background:#0369a1;transform:translateY(-1px)}.hero-secondary-btn,.contact-secondary-btn{color:#1e293b;background:#fff;border:1px solid #dbeafe;min-height:46px;padding:.72rem 1.2rem;font-size:.95rem}.hero-secondary-btn:hover,.contact-secondary-btn:hover,.video-link:hover{color:#0f172a;background:#f0f9ff}.hero-highlight-card,.service-card,.video-card,.contact-form-panel,.signup-modal{background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 55px #94a3b829}.hero-highlight-card{border-radius:3rem;padding:1.5rem}.hero-side-badge{margin-bottom:1rem}.hero-payment-card{background:radial-gradient(circle at 100% 0,#7dd3fc24,#0000 32%),linear-gradient(#fff 0%,#f7fbff 100%)}.hero-payment-grid{gap:.8rem;display:grid}.hero-payment-option{background:#f8fbff;border:1px solid #e3f0fd;border-radius:1.5rem;gap:.7rem;padding:.9rem;display:grid}.hero-payment-option h3{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:1.15rem;font-weight:650}.hero-payment-option p{color:#475569;margin:.45rem 0 0;font-size:.92rem;line-height:1.55}.hero-payment-btn{width:100%;min-height:42px}.hero-highlight-copy h2{letter-spacing:-.04em;color:#0f172a;margin:0;font-size:clamp(1.9rem,2vw,2.5rem);font-weight:650}.hero-highlight-copy p{color:#475569;overflow-wrap:anywhere;margin:.95rem 0 0;font-size:1.12rem;line-height:1.7}.hero-highlight-list{gap:.8rem;margin-top:1.1rem;display:grid}.hero-highlight-item{color:#334155;background:#f0f9ff;border-radius:1.75rem;align-items:center;gap:.95rem;min-width:0;padding:.85rem 1rem;font-size:.94rem;line-height:1.45;display:flex}.hero-highlight-item svg{color:#0284c7;flex:none}.hero-highlight-item span{overflow-wrap:anywhere;min-width:0}.services-section,.videos-section,.contact-section{padding:5rem 0}.videos-section{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffb8;border-top:1px solid #dbeafe;border-bottom:1px solid #dbeafe}.services-headline{min-width:0;max-width:48rem;margin-bottom:2rem}.services-headline h2,.contact-copy h2{color:#0f172a;letter-spacing:-.045em;margin:.85rem 0 0;font-size:clamp(2rem,3.4vw,3rem);font-weight:650;line-height:1.05}.services-grid,.videos-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid}.service-card,.video-card{border-radius:2rem;min-width:0;overflow:hidden}.service-card{padding:2rem}.service-icon-shell{color:#0369a1;background:#e0f2fe;border-radius:1.1rem;place-items:center;width:56px;height:56px;display:inline-grid}.service-card h3,.video-card h3{color:#0f172a;letter-spacing:-.03em;margin:1.25rem 0 0;font-size:1.7rem;font-weight:650}.service-card p,.contact-copy p,.video-card-body p{color:#475569;overflow-wrap:anywhere;margin:.9rem 0 0;font-size:1.05rem;line-height:1.8}.video-card-media{aspect-ratio:16/9;background:linear-gradient(135deg,#dbeeff 0%,#eff7ff 100%);justify-content:center;align-items:center;display:flex}.video-pill{color:#0369a1;text-align:center;background:#fff;border-radius:999px;align-items:center;gap:.7rem;min-width:0;max-width:calc(100% - 2rem);padding:.9rem 1.2rem;display:inline-flex;box-shadow:0 10px 24px #94a3b824}.video-pill span{overflow-wrap:anywhere;min-width:0}.video-card-body{min-width:0;padding:1.5rem}.video-link{color:#1e293b;background:#fff;border:1px solid #dbeafe;border-radius:999px;min-height:36px;margin-top:1.1rem;padding:.52rem .9rem;font-size:.88rem}.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:2rem;display:grid}.contact-form-panel{border-radius:2rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem 1.25rem;padding:1.75rem;display:grid}.contact-field{flex-direction:column;gap:.55rem;min-width:0;display:flex}.contact-field span{color:#0f172a;font-size:.92rem;font-weight:700}.contact-helper{color:#64748b;font-size:.8rem;line-height:1.45}.landing-snackbar{z-index:1200;color:#f8fafc;background:#0f172a;border-radius:1rem;max-width:min(28rem,100vw - 2rem);padding:.95rem 1.1rem;font-size:.95rem;line-height:1.45;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 20px 50px #0f172a38}.contact-field input,.contact-field select,.contact-field textarea{color:#1e3a5f;box-sizing:border-box;appearance:none;background:#eef6fd;border:1px solid #c7dbf1;border-radius:1.25rem;width:100%;min-width:0;padding:.78rem .95rem;font-size:.93rem}.contact-field input,.contact-field select{min-height:46px}.contact-field textarea{resize:vertical;min-height:132px;line-height:1.6}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#547196}.contact-field-full{grid-column:1/-1}.contact-checkbox{background:#f8fbff;border:1px solid #dbeafe;border-radius:1rem;align-items:flex-start;gap:.7rem;padding:.85rem .95rem;display:flex}.contact-checkbox input{flex:none;margin:.18rem 0 0}.contact-checkbox span{color:#334155;font-size:.85rem;font-weight:500;line-height:1.55}.contact-form-actions{grid-column:1/-1;justify-content:flex-start;margin-top:.2rem;display:flex}.contact-submit-btn{color:#fff;background:#0284c7;border:1px solid #0000;border-radius:1.1rem;justify-content:center;align-items:center;gap:.55rem;min-height:44px;padding:.72rem 1.05rem;font-size:.92rem;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #0284c72e}.contact-submit-btn:hover{background:#0369a1}.signup-modal-backdrop{z-index:1300;background:#0f172a6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.signup-modal{border-radius:28px;width:min(930px,100%);padding:2rem;position:relative}.signup-modal h2{color:#0f172a;margin:0;font-size:clamp(1.35rem,1.4vw,1.75rem)}.signup-modal-subtitle{color:#64748b;margin:.4rem 0 1.3rem;font-size:clamp(.95rem,1.1vw,1.1rem)}.signup-modal-close{color:#94a3b8;background:0 0;border:0;padding:0;position:absolute;top:1.3rem;right:1.3rem}.signup-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.1rem;display:grid}.signup-field{flex-direction:column;gap:.45rem;display:flex}.signup-field span{color:#334155;font-size:.9rem;font-weight:600}.signup-field input,.signup-field select{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:14px;height:46px;padding:0 .9rem;font-size:.95rem}.signup-field input::placeholder{color:#94a3b8}.signup-field-full{grid-column:1/-1}.signup-form-actions{grid-column:1/-1;justify-content:flex-end;margin-top:.6rem;display:flex}.signup-next-btn{color:#fff;background:#0284c7;border:0;border-radius:16px;min-width:80px;min-height:44px;padding:0 1.2rem;font-size:.98rem;font-weight:700}.signup-next-btn:hover{background:#0369a1}@media (width<=1100px){.container{padding:0 1.1rem}.hero-layout,.contact-layout,.services-grid,.videos-grid{grid-template-columns:1fr}}@media (width<=720px){.container{padding:0 1rem}.hero-section,.services-section,.videos-section,.contact-section{padding:1.6rem 0 3rem}.hero-layout{gap:1.5rem}.hero-badge{letter-spacing:.01em;padding:.7rem 1rem;font-size:.78rem}.hero-content h1{max-width:11ch;font-size:clamp(2.2rem,10vw,3.15rem)}.hero-content p,.service-card p,.contact-copy p,.video-card-body p{font-size:.98rem;line-height:1.7}.services-headline{margin-bottom:1.35rem}.services-headline h2,.contact-copy h2{font-size:clamp(1.75rem,7vw,2.35rem)}.hero-primary-btn,.hero-secondary-btn,.contact-primary-btn,.contact-secondary-btn{width:100%;min-height:44px;padding:.72rem .95rem;font-size:.92rem}.hero-highlight-card,.service-card,.video-card,.contact-form-panel,.signup-modal{border-radius:1.4rem}.hero-highlight-card{padding:1.3rem}.hero-side-stack{gap:1rem}.hero-highlight-copy h2{font-size:1.55rem}.hero-highlight-copy p{font-size:.98rem}.hero-highlight-list{gap:.75rem;margin-top:1rem}.hero-highlight-item{border-radius:1.1rem;padding:.85rem .95rem;font-size:.92rem}.service-card{padding:1.35rem}.service-card h3,.video-card h3{font-size:1.35rem}.video-card-body{padding:1.2rem}.video-link{width:100%}.contact-layout{gap:1.3rem}.contact-form-panel{grid-template-columns:1fr;gap:1rem;padding:1rem}.contact-field input,.contact-field select{min-height:44px;padding:.74rem .9rem;font-size:.9rem}.contact-field textarea{min-height:120px;padding:.8rem .9rem;font-size:.9rem}.contact-checkbox{padding:.8rem .85rem}.signup-modal{padding:1.2rem}.signup-form-grid{grid-template-columns:1fr}.signup-field-full,.signup-form-actions{grid-column:1}.signup-form-actions{justify-content:stretch}.signup-next-btn{width:100%}}@media (width<=480px){.container{padding:0 .85rem}.section-eyebrow{letter-spacing:.18em;font-size:.74rem}.hero-section,.services-section,.videos-section,.contact-section{padding:1.15rem 0 2.4rem}.hero-content h1{overflow-wrap:anywhere;max-width:none;font-size:clamp(1.95rem,11vw,2.55rem);line-height:1}.hero-content p{margin-top:1rem;font-size:.94rem}.hero-actions,.contact-actions{gap:.75rem;margin-top:1.35rem}.hero-highlight-card,.service-card,.video-card,.contact-form-panel,.signup-modal{border-radius:1.15rem}.hero-highlight-copy h2,.services-headline h2,.contact-copy h2{font-size:1.55rem}.hero-highlight-item{align-items:flex-start}.service-icon-shell{width:48px;height:48px}.video-card-media{aspect-ratio:1.5}.video-pill{border-radius:1rem;justify-content:center;width:calc(100% - 1.5rem);padding:.8rem .9rem;font-size:.9rem}.video-card-body{padding:1rem}.contact-field input,.contact-field select{min-height:42px;padding:.7rem .85rem}.contact-field textarea{min-height:112px;padding:.78rem .85rem}.contact-checkbox span{font-size:.82rem}.signup-modal{padding:1rem}.signup-modal-close{top:.9rem;right:.9rem}}@media (width<=360px){.container{padding:0 .7rem}.hero-badge{justify-content:center;width:100%;padding-inline:.8rem}.hero-primary-btn,.hero-secondary-btn,.contact-primary-btn,.contact-secondary-btn{border-radius:1rem;font-size:.88rem}.hero-highlight-item{gap:.7rem;padding-inline:.8rem}.video-pill{width:100%;max-width:100%}.contact-submit-btn{width:100%;min-height:42px;font-size:.88rem}}@media (width<=520px){.hero-layout{gap:1rem}.hero-content h1{letter-spacing:-.05em;margin-top:1rem;font-size:clamp(1.8rem,10vw,2.35rem);line-height:.98}.hero-content p{font-size:.92rem;line-height:1.65}.hero-highlight-card{padding:1rem}.hero-highlight-copy h2{font-size:1.35rem}.hero-highlight-copy p{font-size:.92rem;line-height:1.55}.hero-highlight-item{padding:.75rem .85rem;font-size:.88rem}.services-headline h2,.contact-copy h2{font-size:1.45rem;line-height:1.08}.service-card h3,.video-card h3{font-size:1.2rem;line-height:1.15}.service-card p,.contact-copy p,.video-card-body p{font-size:.92rem;line-height:1.6}.video-card-body{padding:.95rem}.contact-submit-btn{width:100%}}
