:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#14213d;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}a{color:#2459c8;text-decoration:none}a:hover{text-decoration:underline}.nav{display:flex;align-items:center;justify-content:space-between;max-width:1140px;margin:auto;padding:22px 26px}.brand{font-size:21px;font-weight:800;letter-spacing:-.7px;color:#14213d}.nav-links{display:flex;gap:22px;align-items:center}.button{display:inline-block;border:0;background:#275ee7;color:white;border-radius:11px;padding:13px 20px;font-weight:700;cursor:pointer;font-size:15px;text-align:center}.button:hover{background:#1646bb;text-decoration:none}.button.secondary{background:white;color:#2459c8;border:1px solid #d9e1f0}.auth-layout{max-width:1140px;margin:28px auto 80px;display:grid;grid-template-columns:1fr 1fr;gap:54px;padding:0 26px;align-items:center}.hero h1{font-size:clamp(34px,4vw,56px);line-height:1.1;letter-spacing:-2px;margin:14px 0}.hero p{font-size:18px;line-height:1.65;color:#59687f}.eyebrow{color:#2459c8;text-transform:uppercase;letter-spacing:2px;font-weight:800;font-size:12px}.perks{padding:0;list-style:none;line-height:2.6;color:#40526c}.perks li:before{content:'Ã¢Å“â€œ';color:#0c9c76;font-weight:900;margin-right:12px}.panel{background:white;padding:36px;border:1px solid #e2e8f3;border-radius:20px;box-shadow:0 22px 65px rgba(26,49,90,.08)}.panel h2{margin:0 0 8px;font-size:27px}.muted{color:#6a7890}.field{margin:15px 0}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input,.field select{width:100%;padding:12px 13px;border:1px solid #cad4e3;border-radius:9px;font-size:15px;background:white;color:#14213d}.field input:focus,.field select:focus{outline:2px solid #9db8ff;border-color:#2459c8}.full{width:100%}.alert{background:#fff2f0;color:#a52424;padding:12px;border-radius:9px;margin:14px 0}.small{font-size:13px;color:#6a7890;line-height:1.6}.center{text-align:center}.dash{max-width:1000px;margin:70px auto;padding:0 26px}.stat{display:inline-block;background:#eaf0ff;padding:12px 17px;border-radius:12px;color:#1747a6;font-weight:700}@media(max-width:780px){.auth-layout{grid-template-columns:1fr;gap:24px}.hero h1{font-size:36px}.panel{padding:24px}.nav{padding:18px}.nav-links{gap:12px}}

/* BookEasy brand and workspace */
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#101d38;background:#f5f8ff}body{background:radial-gradient(circle at 18% 26%,#e8f2ff 0,transparent 39%),#f7faff}.brand{display:inline-flex;align-items:center;gap:10px;font-size:27px;letter-spacing:-1.3px;text-decoration:none!important}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:#1265ef;color:white;border-radius:10px;width:41px;height:41px;box-shadow:0 8px 20px #1265ef30}.brand-accent{color:#1769ef}.nav{max-width:1320px;padding:26px 32px}.auth-layout{max-width:1320px;gap:75px;align-items:center;margin:15px auto 65px;padding:0 32px}.hero h1{font-size:clamp(42px,5vw,72px);letter-spacing:-3px;line-height:1.04;color:#0c1934}.hero p{max-width:550px;font-size:19px}.pill{display:inline-block;padding:10px 15px;background:#e7f0ff;border-radius:30px}.perks{font-size:15px;line-height:2.4}.perks li:before{content:'Ã¢Å“â€œ';display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#23aa89;color:#fff;margin-right:12px}.auth-panel{padding:42px;border-radius:23px}.auth-panel h2{font-size:29px;line-height:1.25}.field input,.field select{padding:13px 15px;border-radius:10px}.button{background:#1765ed}.button:hover{background:#0e4fc6}.button:disabled{opacity:.5;cursor:not-allowed}.preview{max-width:525px;margin-top:27px;border:1px solid #dbe7f6;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 22px 45px #1b4c9b16;transform:rotate(-1deg)}.preview-head{height:38px;display:flex;align-items:center;gap:5px;padding:0 15px;border-bottom:1px solid #e8eef8;font-size:12px}.preview-head strong{margin-left:12px;color:#354d71}.preview-dot{width:8px;height:8px;background:#c6d7ed;border-radius:50%}.preview-body{display:flex;min-height:180px}.preview-sidebar{background:#172b4a;color:#dbe9ff;padding:20px;line-height:2.8;font-size:11px;min-width:100px}.preview-calendar{padding:17px;flex:1;font-size:13px}.preview-row{display:flex;gap:20px;margin-top:12px;align-items:center;color:#6c7b92}.preview-row b{display:block;padding:8px 12px;background:#e7f2ff;color:#1952a3;border-radius:6px;flex:1}.preview-row:nth-child(3) b{background:#dcf7f0;color:#17785e}.preview-row:nth-child(4) b{background:#f0e8ff;color:#704bb0}.dash{max-width:1160px;margin:55px auto}.workspace-grid{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:22px;align-items:start}.workspace-grid .panel{padding:26px}.record{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #e6edf8;padding:17px 0}.record:last-child{border-bottom:0}.record p{margin:4px 0}.feature-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.feature-card{display:block;padding:28px;background:#fff;border:1px solid #e2e8f3;border-radius:18px;color:#14213d;box-shadow:0 12px 28px #1b4c9b0d}.feature-card:hover{border-color:#1765ed;text-decoration:none}.feature-card h2{margin:8px 0}.feature-card p{color:#64748b}.feature-icon{font-size:29px;color:#1765ed}.nav-links{flex-wrap:wrap}.nav-links a{font-size:14px}@media(max-width:850px){.auth-layout{grid-template-columns:1fr;gap:28px}.workspace-grid{grid-template-columns:1fr}.feature-cards{grid-template-columns:1fr}.nav{flex-wrap:wrap;gap:15px}.nav-links{gap:10px}.hero h1{font-size:45px}.auth-panel{padding:25px}.preview{display:none}}

/* BookEasy professional workspace shell */
.workspace-body{background:#f4f7fc;color:#101c3b;font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif}.workspace-shell{min-height:100vh;display:flex}.sidebar{width:235px;flex:0 0 235px;background:linear-gradient(160deg,#142844,#192e4d);color:#fff;min-height:100vh;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-brand{padding:27px 19px 29px}.side-brand .brand{color:#fff;font-size:24px}.side-brand .brand-mark{background:#1167ed}.side-links{display:flex;flex-direction:column;gap:5px;padding:0 13px}.side-links a{display:flex;gap:15px;align-items:center;padding:12px 14px;color:#e1eafa;border-radius:9px;font-size:14px}.side-links a > span:not(.be-nav-label):not(.be-plan-lock){width:23px;text-align:center;font-size:20px}.side-links a:hover,.side-links a.selected{background:#0867f6;color:white;text-decoration:none}.side-bottom{margin-top:auto;padding:14px}.side-trial{border:1px solid #405779;border-radius:14px;padding:17px;color:#e4eeff}.side-trial-title{font-weight:750;font-size:14px}.side-trial p{font-size:13px;margin:9px 0 13px}.side-trial small{font-size:11px;color:#abc1e2}.trial-track{height:9px;border-radius:20px;background:#455a79;overflow:hidden;margin:12px 0}.trial-track span{display:block;height:100%;background:#20c794;border-radius:20px}.workspace-main{min-width:0;flex:1}.workspace-topbar{height:72px;background:#fff;border-bottom:1px solid #e4eaf4;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 30px}.top-search{display:flex;align-items:center;gap:12px;color:#7c8ba5;background:#f8faff;border:1px solid #e1e8f4;border-radius:10px;padding:12px 16px;font-size:13px;width:min(510px,55%)}.top-search:hover{text-decoration:none;border-color:#9ebaff}.top-actions{display:flex;align-items:center;gap:16px}.business-pill{font-size:13px;font-weight:700;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-logout{background:#eef4ff;color:#1457d6;border:0;padding:11px 13px;border-radius:9px;cursor:pointer;font-weight:700}.mobile-menu{display:none;background:none;border:0;font-size:24px;cursor:pointer}.workspace-content{max-width:1600px;margin:0 auto;padding:32px 30px 55px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin:0 0 28px}.page-heading h1{font-size:30px;letter-spacing:-1px;margin:0 0 7px;color:#101b39}.page-heading p{color:#697b9b;margin:0;font-size:15px}.today-label{font-size:13px;color:#536887;white-space:nowrap;padding-top:10px}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.dashboard-primary{min-width:0}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.kpi-card{display:flex;align-items:flex-start;gap:13px;border-radius:15px;border:1px solid #e1e9f5;padding:20px 15px;min-width:0}.kpi-card.blue{background:#eaf4ff}.kpi-card.green{background:#e7faf2}.kpi-card.purple{background:#f3ecff}.kpi-card.orange{background:#fff4e8}.kpi-icon{background:#146cf1;color:white;border-radius:12px;padding:10px 12px;font-size:23px;font-weight:700}.green .kpi-icon{background:#10bd85}.purple .kpi-icon{background:#7c4df5}.orange .kpi-icon{background:#ff980d}.kpi-card small,.kpi-card span{display:block;font-size:11px;color:#526684}.kpi-card strong{display:block;font-size:27px;margin:7px 0;color:#0d1c3e;letter-spacing:-.8px}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.workspace-card{background:#fff;border:1px solid #e4eaf3;border-radius:16px;padding:20px;min-width:0;box-shadow:0 8px 26px #18376309}.card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.card-head h2{margin:0;font-size:17px;letter-spacing:-.35px}.card-head a{font-size:12px;font-weight:700;color:#1165e8;white-space:nowrap}.appointment-item{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #edf0f6}.appointment-item:last-child{border-bottom:0}.appointment-time{font-weight:750;font-size:12px;min-width:75px}.appointment-time small{display:block;font-weight:400;color:#7b8ba4;margin-top:4px}.appointment-name{min-width:0;flex:1}.appointment-name strong,.appointment-name span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-name strong{font-size:13px}.appointment-name span{font-size:12px;color:#6d7e99;margin-top:5px}.status-tag{display:inline-block;font-size:11px;padding:6px 9px;border-radius:8px;background:#dcf9ec;color:#07804d;text-transform:capitalize;white-space:nowrap}.status-tag.canceled{background:#ffeded;color:#a83838}.table-wrap{overflow-x:auto}.workspace-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.workspace-table th{text-align:left;color:#687b99;font-weight:600;border-bottom:1px solid #e5ebf4;padding:11px 8px}.workspace-table td{padding:13px 8px;border-bottom:1px solid #eef1f7;color:#4a5d7a}.workspace-table td strong{color:#182a4c}.workspace-table tr:last-child td{border-bottom:0}.table-empty{text-align:center;padding:30px!important;color:#8493a9!important}.dashboard-right{display:flex;flex-direction:column;gap:17px}.trial-widget{background:linear-gradient(140deg,#fff,#eaf3ff)}.trial-header{display:flex;gap:12px;align-items:center}.trial-header strong,.trial-header span{display:block}.trial-header strong{font-size:14px;line-height:1.45}.trial-header span{color:#617596;font-size:12px;margin-top:4px;text-transform:capitalize}.trial-crown{font-size:27px;background:#1467f2;border-radius:12px;padding:12px;color:#fff}.trial-track.light{background:#dce6f5}.trial-widget p{color:#607494;font-size:13px;line-height:1.6}.billing-note{display:block;text-align:center;background:#e3eaf7;color:#536c96;padding:12px;border-radius:9px;font-size:12px;font-weight:700}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-action{min-height:100px;border-radius:12px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:25px;text-decoration:none!important}.quick-action span{font-size:12px;font-weight:700}.quick-action.blue{background:#e5f0ff;color:#075bea}.quick-action.green{background:#e2f9ef;color:#008b5b}.quick-action.purple{background:#f0e9ff;color:#7742df}.quick-action.orange{background:#fff0df;color:#d66c00}.quick-action:hover{filter:brightness(.97)}.setup-list{display:flex;flex-direction:column;gap:10px}.setup-list a{display:flex;align-items:center;gap:12px;padding:8px 0;color:#344c70;font-size:13px}.setup-check{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#eaf1ff;color:#1661d5;font-weight:700}.setup-check.done{background:#def8eb;color:#008b56}.empty-state{text-align:center;padding:25px 10px;color:#70819b}.empty-state>span{display:block;font-size:28px;color:#1765ed;margin-bottom:9px}.empty-state strong{display:block;color:#233657}.empty-state p{font-size:13px}.mini-primary{display:inline-block;background:#e8f0ff;padding:10px 14px;border-radius:9px;font-size:12px;font-weight:750}.workspace-page{max-width:1180px;margin:0 auto;padding:0}.workspace-page h1{margin:12px 0 8px}.workspace-page .panel{box-shadow:0 6px 24px #1837630a}.back-link{display:inline-flex;align-items:center;font-size:13px;font-weight:750;margin-bottom:22px;color:#1765ed}.coming-soon{padding:55px 40px;text-align:center}.coming-soon h1{font-size:32px}.coming-soon p{margin-bottom:25px}.workspace-page .workspace-grid{margin-top:24px}.workspace-page .record{flex-wrap:wrap}.workspace-page .dash{margin:0}.wave{font-size:25px}
@media(max-width:1450px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 265px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.dashboard-layout{grid-template-columns:1fr}.dashboard-right{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.data-grid{grid-template-columns:1fr 1fr}}@media(max-width:850px){.sidebar{position:fixed;z-index:20;transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.mobile-menu{display:block}.workspace-topbar{padding:0 18px}.workspace-content{padding:24px 18px}.dashboard-right{grid-template-columns:1fr 1fr}.dashboard-right .workspace-card:last-child{grid-column:span 2}.top-search{width:auto;flex:1}.business-pill{display:none}}@media(max-width:600px){.data-grid,.dashboard-right,.kpi-grid{grid-template-columns:1fr}.dashboard-right .workspace-card:last-child{grid-column:auto}.page-heading{display:block}.today-label{display:block}.top-search span{display:none}.top-search{flex:0 0 auto}.workspace-content{padding:22px 13px}.workspace-card{padding:16px}.kpi-card{padding:15px}.top-actions{gap:7px}}

/* BookEasy UI polish: larger, more legible type and consistent vector navigation. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px}
.workspace-body{font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.5}
.sidebar{width:252px;flex-basis:252px}
.side-links{gap:6px;padding:0 12px}
.side-links a{font-size:15px;font-weight:550;min-height:49px;gap:14px;padding:11px 14px;transition:background-color .15s ease}
.side-links .nav-icon{width:22px;height:22px;flex:0 0 22px;display:block}
.side-brand{padding:25px 18px 28px}
.side-trial-title{font-size:15px}.side-trial p{font-size:14px}.side-trial small{font-size:12px}
.workspace-topbar{height:76px}.top-search{font-size:14px}.business-pill{font-size:14px}.top-logout{font-size:14px}
.workspace-content{padding-top:34px}.page-heading h1{font-size:32px;line-height:1.2}.page-heading p{font-size:16px}.today-label{font-size:14px}
.kpi-card{padding:21px 18px}.kpi-card small,.kpi-card span{font-size:13px;line-height:1.45}.kpi-card strong{font-size:32px;line-height:1.15}.kpi-icon{font-size:26px}
.card-head h2{font-size:19px;line-height:1.3}.card-head a{font-size:14px}.workspace-card{padding:22px}
.workspace-table{font-size:14px}.workspace-table th{font-size:13px;padding:12px 9px}.workspace-table td{padding:14px 9px;line-height:1.45}
.appointment-time{font-size:14px}.appointment-time small{font-size:12px}.appointment-name strong{font-size:14px}.appointment-name span{font-size:13px}
.status-tag{font-size:12px;font-weight:600}.trial-header strong{font-size:15px}.trial-header span{font-size:13px}.trial-widget p{font-size:14px}.billing-note{font-size:13px}
.quick-action{font-size:29px;min-height:108px}.quick-action span{font-size:14px}.setup-list a{font-size:14px}.empty-state p{font-size:14px}.mini-primary{font-size:14px}.back-link{font-size:14px}
.workspace-page .field label{font-size:14px}.workspace-page .field input,.workspace-page .field select{font-size:16px}.workspace-page .button{font-size:15px}
@media(max-width:850px){.sidebar{width:252px;flex-basis:252px}.workspace-content{padding-top:26px}}
@media(max-width:600px){.workspace-card{padding:18px}.page-heading h1{font-size:28px}.kpi-card strong{font-size:30px}.workspace-table{font-size:13px}}

/* Phase 2: staff, public booking, and weekly calendar */
.staff-item{padding:20px 0;border-bottom:1px solid #e2e8f0}.staff-item h3{font-size:18px;margin:0}.staff-item h3 small{font-size:12px;color:#64748b;font-weight:500}.weekday-row{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0}.weekday-row label{display:flex;gap:5px;align-items:center;font-size:14px}.hours-row{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.hours-row label{font-size:13px;display:flex;flex-direction:column;gap:4px}.hours-row input{padding:9px;border:1px solid #cbd5e1;border-radius:8px}.calendar-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}.calendar-filter label{display:flex;flex-direction:column;gap:5px}.calendar-filter input{padding:10px;border:1px solid #cbd5e1;border-radius:9px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:10px;overflow-x:auto}.week-day{background:white;border:1px solid #e2e8f0;border-radius:12px;padding:12px;min-height:230px}.week-day h3{font-size:15px;border-bottom:1px solid #e2e8f0;padding-bottom:10px}.week-event{background:#eff6ff;border-left:3px solid #2563eb;border-radius:6px;padding:9px;margin:8px 0;display:flex;flex-direction:column;gap:4px;font-size:13px}.week-event small{color:#475569}.week-event.is-canceled{opacity:.55;text-decoration:line-through}.public-booking{background:#f3f7ff;min-height:100vh;padding:35px 16px;font-family:Inter,system-ui,sans-serif;color:#12203d}.public-card{background:#fff;max-width:600px;margin:auto;padding:35px;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 18px 55px #173c7512}.public-card h1{font-size:30px;margin:18px 0 8px}.public-card .field{margin:18px 0}.public-card .field label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.public-card input,.public-card select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:9px;font-size:15px}.public-card .button{width:100%;background:#1263ed;color:white;border:0;padding:14px;border-radius:10px;cursor:pointer}.success-note{background:#e9fbf2;border:1px solid #a7e5c4;border-radius:10px;padding:14px;margin:18px 0}@media(max-width:700px){.week-grid{grid-template-columns:repeat(7,170px)}.public-card{padding:22px}}

/* Service management: accessible secondary actions and inline editing. */
.workspace-page .button.secondary,.workspace-page .button.secondary:visited{background:#fff;color:#1747a6;border:1px solid #cbd8ed;transition:background-color .15s,color .15s,border-color .15s}
.workspace-page .button.secondary:hover,.workspace-page .button.secondary:focus-visible{background:#e8f0ff;color:#103b8a;border-color:#8aaeea}
.workspace-page .button.secondary:active{background:#d5e5ff;color:#102f69}
.service-record{align-items:flex-start}.service-info{flex:1;min-width:160px}.service-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.service-actions form{margin:0}.service-edit{flex:0 0 100%;width:100%;border-top:1px solid #e6edf8;padding-top:18px;margin-top:4px}.service-edit[hidden]{display:none}.service-edit h3{margin:0 0 12px;font-size:18px}.service-edit .button{min-width:155px}

/* Phase 3C: readable weekly calendar and automatic booking end-time preview */
.week-navigation{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px}
.week-navigation .button.secondary{font-size:14px;padding:10px 13px}
.week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;overflow-x:visible}
.week-day{min-width:0;padding:10px;min-height:260px}
.week-day h3{font-size:13px;margin:8px 0 12px;overflow-wrap:anywhere}
.week-event{font-size:13px;padding:10px 8px;overflow-wrap:anywhere;line-height:1.4}
.week-event strong{font-size:13px;line-height:1.45}
.week-event span{font-weight:650}
.week-event small{font-size:12px;line-height:1.5}
.booking-end-preview{padding:12px 14px;margin:12px 0;border-radius:10px;background:#edf5ff;color:#1747a6;font-size:14px;font-weight:650}
@media(max-width:1100px){.week-grid{grid-template-columns:repeat(7,minmax(130px,1fr));overflow-x:auto}.week-day{min-width:130px}}
@media(max-width:700px){.week-grid{grid-template-columns:repeat(7,170px)}.week-day{min-width:170px}}

/* Phase 4: actionable calendar events and accessible detail links */
a.week-event{display:flex;flex-direction:column;text-decoration:none;color:inherit;cursor:pointer}a.week-event:hover,a.week-event:focus-visible{outline:2px solid #2563eb;outline-offset:2px;background:#e9f2ff}.record a{color:#1c4c91;text-decoration:underline;text-underline-offset:3px}.record a:hover{color:#12345f}

/* Phase 5: customer notes and invoice printing */
.workspace-page .field textarea{box-sizing:border-box;width:100%;min-height:110px;resize:vertical;padding:12px 14px;border:1px solid #cbd5e1;border-radius:10px;font:inherit;font-size:15px;line-height:1.5;color:#142844;background:#fff}
.workspace-page .field textarea:focus{outline:2px solid #2563eb;outline-offset:1px}
@media print{.sidebar,.workspace-topbar,.workspace-page .button,.workspace-page form{display:none!important}.workspace-main{margin:0!important}.workspace-content{padding:0!important}.panel{box-shadow:none!important;border:0!important}}

/* Consistent, compact workspace typography and billing layout. */
.workspace-body{font-size:14px;line-height:1.5}
.workspace-body .workspace-page{font-size:14px;line-height:1.55}
.workspace-body .workspace-page h1,.workspace-body .page-heading h1{font-size:26px;line-height:1.25;letter-spacing:-.6px;font-weight:750}
.workspace-body .workspace-page h2,.workspace-body .workspace-page .panel h2{font-size:19px;line-height:1.35;letter-spacing:-.25px}
.workspace-body .workspace-page h3{font-size:16px;line-height:1.4}
.workspace-body .workspace-page p,.workspace-body .workspace-page li,.workspace-body .workspace-page .record,.workspace-body .workspace-page .muted{font-size:14px}
.workspace-body .workspace-page .small,.workspace-body .workspace-page small{font-size:12px}
.workspace-body .workspace-page .button,.workspace-body .workspace-page button,.workspace-body .workspace-page .field input,.workspace-body .workspace-page .field select,.workspace-body .workspace-page .field textarea{font-size:14px}
.workspace-body .workspace-page .field label{font-size:13px}
.workspace-body .workspace-page .panel{padding:24px;border-radius:15px}
.workspace-body .side-links a{font-size:14px;min-height:44px;gap:12px}
.workspace-body .side-links .nav-icon{width:19px;height:19px;flex-basis:19px}
.workspace-body .workspace-topbar{height:68px}
.workspace-body .top-search,.workspace-body .top-logout,.workspace-body .business-pill{font-size:13px}
.workspace-body .card-head h2{font-size:18px}
.workspace-body .kpi-card strong{font-size:27px}
.workspace-body .kpi-card small,.workspace-body .kpi-card span{font-size:12px}
.workspace-body .workspace-table,.workspace-body .workspace-table td{font-size:13px}
.workspace-body .workspace-table th{font-size:12px}
.workspace-body .quick-action{font-size:24px}
.workspace-body .quick-action span{font-size:13px}
.billing-page .billing-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}
.billing-page .billing-heading h1{margin:5px 0}
.billing-page .billing-heading p{margin:0}
.billing-page .billing-summary{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:20px}
.billing-page .billing-summary>div{display:flex;flex-direction:column;gap:5px;min-width:150px}
.billing-page .billing-summary h2{margin:0}
.billing-page .billing-label{font-size:12px;color:#66758c;font-weight:650}
.billing-page .billing-status{display:inline-flex;align-self:flex-start;padding:4px 10px;border-radius:20px;background:#e4f8ed;color:#116d44;font-size:12px;font-weight:750;text-transform:capitalize}
.billing-page .billing-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr);gap:20px;align-items:start}
.billing-page .billing-columns .panel h2{margin-bottom:8px}
.billing-page .billing-plans{margin-top:16px}
.billing-page .billing-plan{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e8edf5;padding:16px 0}
.billing-page .billing-plan>div{display:flex;flex-direction:column;gap:4px}
.billing-page .billing-price{font-size:15px;font-weight:750;color:#182b4b}
.billing-page .billing-price small{font-weight:400;color:#718096}
.billing-page .billing-plan form{margin:0}
.billing-page .billing-plan .button{white-space:nowrap;padding:10px 14px}
.billing-page .billing-current{font-size:12px;font-weight:750;color:#126a48;background:#e5f7ee;border-radius:20px;padding:7px 11px}
.billing-page .billing-plan-note{font-size:12px;color:#63758f;text-align:right}
.billing-page .billing-message{padding:11px 13px;background:#edf4ff;border-radius:9px;color:#204a85;margin:14px 0}
.billing-page .billing-footnote{margin-top:20px;font-size:12px!important}
@media(max-width:900px){.billing-page .billing-columns{grid-template-columns:1fr}}
@media(max-width:600px){.billing-page .billing-heading{align-items:flex-start;flex-direction:column}.billing-page .billing-plan{flex-wrap:wrap}.workspace-body .workspace-page h1{font-size:24px}}

/* Invoice document: same layout on screen and when printed to PDF. */
.invoice-detail-page{max-width:1100px}.invoice-screen-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.invoice-action-group{display:flex;gap:10px;flex-wrap:wrap}.invoice-action-group form{margin:0}.invoice-message{display:block;padding:12px 16px;background:#eef6ff;border-radius:9px;color:#2451a2}.invoice-paper{background:#fff;border:1px solid #e2e8f2;border-radius:16px;box-shadow:0 8px 24px rgba(20,38,65,.05);padding:48px;max-width:850px;margin:0 auto;color:#1b2b45;font-size:14px}.invoice-paper-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.invoice-business-name{font-size:23px;font-weight:800;line-height:1.3}.invoice-brand-subtitle{font-size:12px;color:#64748b;margin-top:7px}.invoice-number-block{text-align:right}.invoice-document-label{font-size:27px;font-weight:800;letter-spacing:1px}.invoice-document-number{color:#64748b;font-size:14px}.invoice-paper-rule{height:2px;background:#e5ebf4;margin:27px 0}.invoice-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:38px}.invoice-eyebrow{font-size:11px;font-weight:800;letter-spacing:1px;color:#64748b;margin-bottom:10px}.invoice-recipient{font-weight:750;font-size:17px;margin-bottom:5px}.invoice-dates>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px}.invoice-dates span{color:#64748b}.invoice-dates strong{text-align:right}.invoice-status{text-transform:capitalize}.invoice-items-table{width:100%;border-collapse:collapse;margin-bottom:22px}.invoice-items-table th{background:#f0f5fb;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.5px;padding:13px}.invoice-items-table th:last-child,.invoice-items-table td:last-child{text-align:right;white-space:nowrap}.invoice-items-table td{padding:19px 13px;border-bottom:1px solid #e6ebf3;overflow-wrap:anywhere}.invoice-totals{margin-left:auto;max-width:340px}.invoice-totals>div{display:flex;justify-content:space-between;gap:22px;padding:9px 0}.invoice-grand-total{font-size:18px;border-top:2px solid #1c3152;margin-top:8px;padding-top:16px!important}.invoice-paper-footer{border-top:1px solid #e6ebf3;margin-top:70px;padding-top:20px;text-align:center;color:#64748b;font-size:12px}.invoice-management{max-width:850px;margin:22px auto 0}
@media(max-width:650px){.invoice-paper{padding:22px}.invoice-meta-grid{grid-template-columns:1fr}.invoice-screen-actions{align-items:flex-start;flex-direction:column}.invoice-paper-head{flex-wrap:wrap}}
@page{size:A4;margin:14mm}
@media print{html,body{background:white!important;margin:0!important;padding:0!important;width:100%!important}body.invoice-detail-body .sidebar,body.invoice-detail-body .workspace-topbar,body.invoice-detail-body .invoice-screen-actions,body.invoice-detail-body .invoice-management,body.invoice-detail-body nav,body.invoice-detail-body aside,body.invoice-detail-body .workspace-footer{display:none!important}body.invoice-detail-body .invoice-detail-page,body.invoice-detail-body main{display:block!important;position:static!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}body.invoice-detail-body .invoice-paper{display:block!important;width:100%!important;max-width:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;color:#172b46!important;break-inside:avoid}body.invoice-detail-body .invoice-items-table thead{display:table-header-group}body.invoice-detail-body .invoice-paper-head,body.invoice-detail-body .invoice-meta-grid,body.invoice-detail-body .invoice-totals{break-inside:avoid}body.invoice-detail-body .invoice-items-table th{background:#f0f5fb!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Phase 5 final polish */
.be-settings-panel{max-width:860px}.be-settings-panel h2{font-size:17px;margin:12px 0 20px}.be-settings-panel h2:not(:first-child){border-top:1px solid #e2e8f0;padding-top:24px;margin-top:28px}.be-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}.be-settings-panel textarea{display:block;width:100%;min-height:85px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:9px;padding:12px;font:inherit;resize:vertical}.be-notice{color:#166534;background:#dcfce7;border-radius:9px;padding:12px 16px}.be-preline{white-space:pre-line}.be-powered{margin-top:10px;font-size:10px;color:#94a3b8}.be-report-header{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.be-report-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.be-report-filters select{border:1px solid #cbd5e1;border-radius:8px;padding:10px;font:inherit;background:#fff}.be-report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.be-report-kpis .panel h2{font-size:22px;margin:10px 0}.be-report-kpis small{color:#64748b}.be-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.be-trend-row{display:grid;grid-template-columns:75px 1fr 110px;gap:12px;align-items:center;padding:10px 0;font-size:12px}.be-trend-track{height:12px;background:#eff4fb;border-radius:6px;overflow:hidden}.be-trend-track span{display:block;height:100%;background:#2563eb;border-radius:6px}.be-trend-row strong{text-align:right}@media(max-width:1000px){.be-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.be-settings-grid,.be-report-kpis,.be-report-grid{grid-template-columns:1fr}.be-report-filters{width:100%}}

/* Phase 6: responsive public appointment booking */
.public-booking-v2{margin:0;padding:24px 16px 36px;background:#f4f7fc;font-size:14px;line-height:1.5}
.public-booking-v2 *{box-sizing:border-box}.booking-container{max-width:1060px;margin:0 auto}.booking-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.booking-platform{font-size:20px;font-weight:800;color:#152946;text-decoration:none}.booking-platform span{color:#1765ed}.booking-secure{font-size:12px;color:#526684}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.booking-panel,.booking-summary{background:white;border:1px solid #e0e8f5;border-radius:17px;box-shadow:0 12px 32px #1837630a}.booking-panel{padding:30px}.booking-intro{border-bottom:1px solid #e6edf7;padding-bottom:22px;margin-bottom:24px}.booking-kicker{font-size:11px;font-weight:800;letter-spacing:.13em;color:#1765ed}.booking-intro h1{font-size:26px;letter-spacing:-.6px;margin:8px 0;color:#132747}.booking-intro p{font-size:14px;color:#60738e;margin:0}.booking-step{padding:0;margin:0 0 24px;border:0;min-width:0}.booking-step legend{font-size:17px;font-weight:750;margin:0 0 16px;padding:0;color:#162b4b}.step-number{display:inline-grid;place-items:center;background:#eaf1ff;color:#1765ed;width:28px;height:28px;border-radius:9px;margin-right:8px;font-size:13px}.booking-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.public-booking-v2 .field{margin:0}.public-booking-v2 .field label{font-size:13px;font-weight:700;margin:0 0 7px;display:block;color:#243c5e}.public-booking-v2 .field input,.public-booking-v2 .field select{min-height:45px;width:100%;font-size:14px;padding:10px 12px;background:white;border:1px solid #cad6e8;border-radius:9px;color:#172d4c}.public-booking-v2 .field input:focus,.public-booking-v2 .field select:focus{outline:2px solid #9fc4ff;outline-offset:1px}.public-booking-v2 .field select:disabled{background:#f1f4f9;color:#72829a}.booking-field-wide{grid-column:1/-1}.booking-hint{font-size:12px;color:#526684;min-height:18px;margin:6px 0 0}.booking-timezone{font-size:12px;color:#5b6f8c;margin:12px 0 0}.booking-optional{font-weight:400;color:#64748b}.booking-submit{border-top:1px solid #e6edf7;padding-top:22px}.public-booking-v2 .booking-submit button{width:100%;border:0;border-radius:10px;background:#1765ed;color:white;padding:13px 16px;font-size:14px;font-weight:750;cursor:pointer}.public-booking-v2 .booking-submit button:disabled{opacity:.7;cursor:wait}.booking-submit p{font-size:12px;color:#64748b;text-align:center;margin:12px 0 0}.booking-summary{padding:24px;position:sticky;top:20px}.booking-summary h2{font-size:18px;margin:0 0 4px}.booking-summary-intro{font-size:12px;color:#64748b;margin:0 0 18px}.booking-summary dl{margin:0}.booking-summary dl>div{border-top:1px solid #edf1f7;padding:12px 0}.booking-summary dt{font-size:11px;color:#64748b;margin-bottom:4px}.booking-summary dd{font-size:13px;font-weight:700;color:#162b4b;margin:0;overflow-wrap:anywhere}.booking-summary-foot{font-size:12px;color:#0c8054;background:#eaf9f2;padding:12px;border-radius:9px;text-align:center}.booking-footer{text-align:center;color:#73839b;font-size:12px;padding:24px 0}.booking-success,.booking-error,.booking-empty{border-radius:11px;padding:18px;margin:0 0 24px}.booking-success{background:#eaf9f2;border:1px solid #a7e4c4}.booking-error{background:#fff0f0;border:1px solid #f1b7b7}.booking-empty{background:#f4f7fc}.booking-success p,.booking-error p{margin:7px 0}.booking-again{font-weight:700;color:#1765ed}
@media(max-width:760px){.booking-layout{grid-template-columns:1fr}.booking-summary{position:static;order:-1;padding:18px}.booking-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.booking-panel{padding:22px}.booking-intro h1{font-size:23px}}
@media(max-width:480px){.public-booking-v2{padding:15px 12px}.booking-fields{grid-template-columns:1fr}.booking-summary dl{grid-template-columns:1fr 1fr}.booking-panel{padding:19px}.booking-header{margin-bottom:15px}}

.be-settings-billing{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:19px 22px}.be-settings-billing strong{font-size:15px}.be-settings-billing p{margin:5px 0 0;font-size:13px}.be-settings-billing .button{white-space:nowrap;text-decoration:none}@media(max-width:520px){.be-settings-billing{align-items:stretch;flex-direction:column}}

/* Phase 6 customer confirmation and booking link settings */
.be-confirmation{max-width:740px;margin:28px auto;text-align:left;padding:42px;}
.be-confirmation-check{display:grid;place-items:center;background:#e3f7ed;color:#087a53;border-radius:50%;width:54px;height:54px;font-size:30px;font-weight:700;margin-bottom:20px;}
.be-confirmation-details{border:1px solid #dce5f4;border-radius:12px;overflow:hidden;margin:26px 0;}
.be-confirmation-details>div{display:flex;justify-content:space-between;gap:18px;padding:15px 18px;border-bottom:1px solid #e6ecf6;}
.be-confirmation-details>div:last-child{border-bottom:0;}
.be-confirmation-details dt{color:#62728b;}
.be-confirmation-details dd{margin:0;font-weight:700;overflow-wrap:anywhere;text-align:right;}
.be-slug-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.be-slug-form input{max-width:270px;}
@media(max-width:600px){.be-confirmation{padding:25px 20px;}.be-confirmation-details>div{display:block;}.be-confirmation-details dd{text-align:left;margin-top:5px;}}

/* Public URL editor: match the existing business settings fields. */
.be-slug-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px;min-width:0;}
.be-slug-form label{flex-basis:100%;margin-bottom:-4px;font-size:13px;font-weight:700;color:#102342;}
.be-slug-form input{width:min(100%,310px);max-width:100%;min-height:44px;padding:10px 15px;border:1px solid #cbd8eb;border-radius:11px;background:#fff;color:#102342;font:inherit;font-size:14px;box-sizing:border-box;}
.be-slug-form input:focus{outline:2px solid #a5c3ff;outline-offset:1px;border-color:#1765ed;}
.be-slug-form .button{min-height:44px;}
@media(max-width:650px){.be-slug-form{width:100%;}.be-slug-form input,.be-slug-form .button{width:100%;}}
/* Shared branded error states. */
.be-error-page{min-height:100vh;background:#f3f6fc;color:#142949;font-family:inherit;padding:32px 18px;box-sizing:border-box;}
.be-error-shell{max-width:680px;margin:0 auto;}
.be-error-brand{font-size:20px;font-weight:800;color:#1461e8;text-decoration:none;}
.be-error-card{background:#fff;border:1px solid #dde6f4;border-radius:18px;box-shadow:0 12px 35px rgba(24,52,100,.06);padding:48px;margin-top:56px;text-align:center;}
.be-error-symbol{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:#eaf1ff;color:#1765ed;font-size:27px;font-weight:800;}
.be-error-card h1{font-size:28px;margin:12px 0;color:#102342;}
.be-error-card p{font-size:15px;line-height:1.7;color:#5e708a;margin:0 auto 26px;max-width:480px;}
.be-error-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 24px;background:#1765ed;color:white;border-radius:10px;text-decoration:none;font-weight:700;}
@media(max-width:520px){.be-error-card{padding:34px 22px;margin-top:35px;}.be-error-card h1{font-size:24px;}}

/* Login and public error page refresh Ã¢â‚¬â€ isolated styles */
.be-login-refresh{min-height:100vh;background:radial-gradient(ellipse at 9% 28%,#e7f1ff 0,transparent 48%),#f7faff}
.be-login-nav-right{display:flex;align-items:center;gap:18px;font-size:14px;color:#667994}
.be-login-layout{min-height:calc(100vh - 125px);align-items:center;gap:clamp(30px,6vw,95px)}
.be-login-hero h1{font-size:clamp(44px,5vw,68px);line-height:1.07;letter-spacing:-2.9px}
.be-login-highlight{color:#1765ed}
.be-login-hero p{font-size:18px;max-width:530px}
.be-login-card{padding:clamp(28px,4vw,48px);box-shadow:0 24px 65px #193f7914}
.be-login-card h2{font-size:clamp(24px,2.5vw,32px)}
.be-login-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#eaf1ff;color:#1765ed;font-size:24px;margin-bottom:18px}
.be-login-card .field{margin:19px 0}
.be-login-card .field input{min-height:48px}
.be-login-submit{min-height:49px;margin-top:6px}
.be-login-divider{border-top:1px solid #e8eef7;margin:26px 0 18px}
.be-login-safe{color:#8b99ad;margin-top:17px}
.be-login-preview{max-width:490px;margin-top:28px;background:white;border:1px solid #dce7f7;border-radius:16px;overflow:hidden;box-shadow:0 16px 40px #194c9613;transform:rotate(-1deg)}
.be-login-preview-top{display:flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-bottom:1px solid #e8eef8}
.be-login-preview-top strong{font-size:11px;color:#31466a;margin-left:12px}
.be-login-preview-dot{width:8px;height:8px;border-radius:50%;background:#bfd3ee}
.be-login-preview-content{display:grid;grid-template-columns:105px 1fr;min-height:166px}
.be-login-preview-side{background:#172b4a;color:#e1ecff;padding:16px;font-size:11px;line-height:3.1}
.be-login-preview-events{padding:17px;font-size:12px}
.be-login-preview-events>div{display:flex;align-items:center;gap:13px;margin-top:12px;color:#63748e}
.be-login-preview-events b{background:#e7f2ff;color:#1952a3;border-radius:7px;padding:9px 13px;flex:1}
.be-login-preview-events>div:nth-of-type(2) b{background:#dcf7f0;color:#17785e}
.be-login-preview-events>div:nth-of-type(3) b{background:#f0e8ff;color:#704bb0}
.be-error-refresh{min-height:100vh;background:radial-gradient(ellipse at 70% 50%,#e8f3ff 0,transparent 50%),#f7fbff;color:#101d38}
.be-error-nav{max-width:1420px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px clamp(20px,4vw,60px)}
.be-error-nav nav{display:flex;align-items:center;gap:28px;font-size:15px}
.be-error-hero{max-width:1420px;margin:0 auto;padding:clamp(45px,8vh,110px) clamp(20px,4vw,60px) 65px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(30px,5vw,80px)}
.be-error-tag{display:inline-block;padding:10px 17px;background:#e6f0ff;color:#1765ed;font-size:12px;font-weight:800;letter-spacing:1.3px;border-radius:30px}
.be-error-copy h1{font-size:clamp(38px,4.5vw,64px);line-height:1.11;letter-spacing:-2.3px;max-width:690px;margin:29px 0}
.be-error-copy>p{font-size:clamp(16px,1.6vw,20px);line-height:1.7;color:#60718d;max-width:600px}
.be-error-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px}
.be-error-actions .button{padding:15px 22px}
.be-error-help{margin-top:50px;max-width:550px}
.be-error-help strong{font-size:20px}
.be-error-help p{color:#60718d;line-height:1.65;margin-top:8px}
.be-error-benefits{display:flex;flex-wrap:wrap;gap:14px 25px;color:#39506f;font-size:13px;margin-top:28px}
.be-error-art{min-height:440px;position:relative;display:grid;place-items:center}
.be-error-orbit{position:absolute;inset:4%;background:linear-gradient(135deg,#e1f0ff,#d5eaff);border-radius:48% 52% 47% 53%;transform:rotate(-12deg)}
.be-error-window{position:relative;width:min(92%,470px);height:325px;background:linear-gradient(155deg,#fff,#e9f4ff);border-radius:24px;box-shadow:0 25px 65px #387bd525;overflow:visible}
.be-error-dots{display:flex;gap:8px;align-items:center;padding:20px 23px;border-bottom:1px solid #e3eefb}
.be-error-dots i{width:13px;height:13px;border-radius:50%;background:#fb6b6b}.be-error-dots i:nth-child(2){background:#ffc04b}.be-error-dots i:nth-child(3){background:#39c68b}
.be-error-dots span{margin-left:16px;height:18px;width:50%;border-radius:20px;background:#e8f2fe}
.be-error-document{width:55%;min-height:220px;margin:24px auto;background:white;border-radius:15px;box-shadow:0 12px 28px #2767ad1a;padding:22px;text-align:center}
.be-error-doc-code{font-size:74px;font-weight:850;color:#1765ed;letter-spacing:-4px}
.be-error-doc-line{height:12px;background:#e0edff;border-radius:20px;margin:10px auto;width:90%}.be-error-doc-line.short{width:72%}.be-error-doc-line.shorter{width:52%}
.be-error-glass{position:absolute;right:6%;bottom:18px;width:95px;height:95px;border:13px solid #1765ed;border-radius:50%;background:#d6eaffbb;box-shadow:0 8px 20px #1765ed30}
.be-error-glass:after{content:'';position:absolute;width:65px;height:15px;background:#1765ed;border-radius:10px;transform:rotate(48deg);top:75px;left:66px}
.be-error-plane{position:absolute;top:0;right:4%;color:#1765ed;font-size:46px;transform:rotate(-35deg)}
@media(max-width:850px){.be-login-layout,.be-error-hero{grid-template-columns:1fr}.be-login-layout{min-height:0}.be-error-hero{padding-top:40px}.be-error-art{min-height:310px}.be-error-window{height:275px}.be-error-document{min-height:180px}.be-error-doc-code{font-size:54px}.be-login-preview{display:none}}
@media(max-width:520px){.be-login-nav-right span{display:none}.be-login-hero h1{font-size:40px}.be-error-nav nav{gap:12px}.be-error-nav .brand{font-size:22px}.be-error-hero{gap:10px}.be-error-art{min-height:260px}.be-error-window{height:225px}.be-error-document{padding:12px;min-height:145px}.be-error-doc-code{font-size:43px}.be-error-glass{width:60px;height:60px;border-width:9px;right:12%}.be-error-glass:after{width:40px;height:11px;top:47px;left:43px}.be-error-benefits{display:grid}}

/* Public auth/error pages: accessible button contrast and fluid columns. */
.be-login-refresh .button:not(.secondary),
.be-error-refresh .button:not(.secondary){background:#1765ed;color:#fff;text-decoration:none;}
.be-login-refresh .button:not(.secondary):is(:hover,:focus-visible),
.be-error-refresh .button:not(.secondary):is(:hover,:focus-visible){background:#104bb8;color:#fff;text-decoration:none;}
.be-login-refresh .button.secondary,
.be-error-refresh .button.secondary{background:#fff;color:#1747a6;border:1px solid #cbd8ed;text-decoration:none;}
.be-login-refresh .button.secondary:is(:hover,:focus-visible),
.be-error-refresh .button.secondary:is(:hover,:focus-visible){background:#e8f0ff;color:#103b8a;border-color:#8aaeea;text-decoration:none;}
.be-login-refresh .button:focus-visible,
.be-error-refresh .button:focus-visible{outline:3px solid #93baff;outline-offset:3px;}
.be-login-refresh .auth-layout.be-login-layout{width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.be-login-layout > *, .be-error-hero > *{min-width:0;}
.be-login-hero h1{overflow-wrap:break-word;}
@media(max-width:850px){.be-login-refresh .auth-layout.be-login-layout{grid-template-columns:minmax(0,1fr);}}

/* Phase 8: customer self-service actions remain inside the confirmation card. */
.be-confirmation .be-selfservice-card{margin:18px 0 0;padding:20px;border:1px solid #dbe7f7;border-radius:14px;background:#f5f9ff;}
.be-confirmation .be-selfservice-reschedule{background:#eff6ff;border-color:#bfdbfe;}
.be-confirmation .be-selfservice-cancel{background:#fff7ed;border-color:#fed7aa;}
.be-confirmation .be-selfservice-card h2{font-size:18px;margin:0 0 7px;color:#162b4b;}
.be-confirmation .be-selfservice-card .muted{margin:0 0 14px;}
.be-confirmation .be-selfservice-card label{display:block;font-size:13px;font-weight:700;}
.be-confirmation .be-selfservice-card input,.be-confirmation .be-selfservice-card select{max-width:100%!important;}
.be-confirmation .be-confirmation-contact{font-size:13px;color:#536781;}
.be-confirmation .be-book-again{display:inline-flex;margin-top:20px;}
.be-confirmation{margin-top:12px;padding:30px;}
@media(max-width:600px){.be-confirmation{padding:22px 18px;}.be-confirmation .be-selfservice-card{padding:16px;}}

/* Premium billing pricing cards */
.billing-page .premium-pricing{margin:20px 0}
.billing-page .premium-pricing-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}
.billing-page .premium-pricing-heading h2{font-size:25px;margin:5px 0;color:#10234b}
.billing-page .premium-pricing-heading p{margin:0;font-size:13px}
.billing-page .premium-currency{white-space:nowrap;border:1px solid #dce6f7;background:white;border-radius:30px;padding:9px 14px;color:#2858a7;font-size:12px;font-weight:700}
.billing-page .premium-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.billing-page .premium-tier{min-width:0;display:flex;flex-direction:column;padding:22px 20px;border:1px solid #dce6f7;border-radius:18px;background:linear-gradient(155deg,#fff 45%,#edf5ff);box-shadow:0 10px 30px #193e7810}
.billing-page .premium-tier-1{background:linear-gradient(155deg,#fff 40%,#f2edff);border-color:#e6dbff}
.billing-page .premium-tier-2{background:linear-gradient(155deg,#fff 40%,#e9f9f2);border-color:#d6f1e4}
.billing-page .premium-tier.is-current{border:2px solid #2469ed;padding:21px 19px}
.billing-page .premium-tier-top{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:40px}
.billing-page .premium-tier-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e6f0ff;color:#1766e9;font-size:22px}
.billing-page .premium-tier-1 .premium-tier-icon{background:#f0e8ff;color:#8454d8}
.billing-page .premium-tier-2 .premium-tier-icon{background:#dcf7e9;color:#008e66}
.billing-page .premium-tier h3{font-size:21px;margin:19px 0 5px;color:#10234b}
.billing-page .premium-tier-description{margin:0;min-height:32px;font-size:12px;color:#647897}
.billing-page .premium-tier-price{display:flex;align-items:baseline;gap:7px;margin-top:12px}
.billing-page .premium-tier-price strong{font-size:33px;letter-spacing:-1px;color:#112650}
.billing-page .premium-tier-price span,.billing-page .premium-tier-tax{font-size:12px;color:#657998}
.billing-page .premium-tier-tax{margin:5px 0 0}
.billing-page .premium-tier-rule{border-top:1px solid #e2eaf6;margin:20px 0 15px}
.billing-page .premium-tier-label{font-size:12px;font-weight:750;color:#273c61;margin:0 0 12px}
.billing-page .premium-tier-features{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:13px}
.billing-page .premium-tier-features li{position:relative;padding-left:26px;font-size:12px;color:#425875;line-height:1.5}
.billing-page .premium-tier-features li:before{content:"Ã¢Å“â€œ";position:absolute;left:0;top:0;width:18px;height:18px;display:grid;place-items:center;background:#dcf7e9;color:#087d52;border-radius:50%;font-size:12px;font-weight:800}
.billing-page .premium-tier-action{margin-top:auto;min-height:42px;display:flex;align-items:center}
.billing-page .premium-tier-action form,.billing-page .premium-tier-action .button{width:100%;margin:0}
.billing-page .premium-tier-selected,.billing-page .premium-tier-note{display:block;width:100%;text-align:center;padding:12px 8px;border-radius:10px;font-size:12px;font-weight:750;background:#e2f8eb;color:#0b754c}
.billing-page .premium-tier-note{background:#eef3fa;color:#58708f}
.billing-page .premium-tier-disclaimer{font-size:12px;color:#667b98;line-height:1.6;margin:14px 3px 0}
.billing-page .premium-portal{display:flex;align-items:center;gap:18px;padding:23px;background:linear-gradient(110deg,#edf5ff,#fff)}
.billing-page .premium-portal-icon{flex:0 0 46px;display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#deebff;color:#2163d6;font-size:25px}
.billing-page .premium-portal-copy{flex:1;min-width:0}
.billing-page .premium-portal-copy h2{margin:0 0 7px;font-size:19px}
.billing-page .premium-portal-copy p{margin:0 0 6px;font-size:12px;line-height:1.6}
.billing-page .premium-portal-action form{margin:0}
.billing-page .premium-portal-action .button{white-space:nowrap}
@media(max-width:900px){.billing-page .premium-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-page .premium-portal{flex-wrap:wrap}}
@media(max-width:620px){.billing-page .premium-pricing-grid{grid-template-columns:1fr}.billing-page .premium-pricing-heading{align-items:flex-start;flex-direction:column}.billing-page .premium-portal-action,.billing-page .premium-portal-action .button{width:100%}}

/* Trial-to-paid clarity */
.billing-page .billing-trial-notice{display:flex;gap:15px;align-items:flex-start;margin:16px 0 20px;padding:19px 21px;border:1px solid #bce8d3;border-radius:16px;background:linear-gradient(105deg,#effcf5,#f7fbff);color:#17395a}
.billing-page .billing-trial-notice-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:#d5f5e4;color:#087b51;font-size:21px;font-weight:800}
.billing-page .billing-trial-notice-body{flex:1;min-width:0}
.billing-page .billing-trial-notice h2{font-size:17px;line-height:1.3;margin:0 0 7px;color:#113b2e}
.billing-page .billing-trial-notice p{font-size:13px;line-height:1.65;margin:0;color:#385d58}
.billing-page .billing-trial-notice-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #cfeadd}
.billing-page .billing-trial-notice-meta span{display:grid;gap:4px}
.billing-page .billing-trial-notice-meta small{font-size:11px;color:#597b75}
.billing-page .billing-trial-notice-meta strong{font-size:12px;color:#173e35}
@media(max-width:620px){.billing-page .billing-trial-notice{padding:15px;gap:11px}.billing-page .billing-trial-notice-meta{gap:18px}}

/* Phase 10: subscription plan change review */
.billing-page .premium-plan-change{width:100%;justify-content:center;text-align:center;text-decoration:none}
.billing-page .plan-change-review{max-width:760px;margin:24px auto;padding:30px}
.billing-page .plan-change-comparison{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;margin:20px 0;padding:23px;border-radius:15px;background:#f2f6ff}
.billing-page .plan-change-comparison h2{margin:8px 0;font-size:22px}
.billing-page .plan-change-arrow{font-size:28px;color:#2469ed}
.billing-page .plan-change-review>p{line-height:1.7}
.billing-page .plan-change-review form{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
@media(max-width:620px){.billing-page .plan-change-review{padding:20px}.billing-page .plan-change-comparison{gap:9px;padding:14px}.billing-page .plan-change-comparison h2{font-size:16px}}

/* Stripe subscription schedule summary */
.billing-scheduled-notice{display:flex;gap:16px;padding:22px 24px;margin:16px 0 22px;background:linear-gradient(115deg,#eff6ff,#f8faff);border:1px solid #b9d4ff;border-radius:15px;color:#15325d}
.billing-scheduled-symbol{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:#dbeafe;color:#1d4ed8;font-size:24px}
.billing-scheduled-content{flex:1;min-width:0}.billing-scheduled-title{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.billing-scheduled-title h2{margin:0;font-size:18px;color:#123264}
.billing-scheduled-badge{background:#dbeafe;color:#1e40af;border-radius:99px;padding:5px 12px;font-size:12px;font-weight:700}
.billing-scheduled-content>p{margin:10px 0;line-height:1.6}.billing-scheduled-details{display:flex;flex-wrap:wrap;gap:16px 28px;border-top:1px solid #cfddf3;padding-top:14px;margin-top:14px}
.billing-scheduled-details>div{display:flex;flex-direction:column;gap:4px}.billing-scheduled-details small{color:#547198}.billing-scheduled-details strong{font-size:13px}
.billing-scheduled-content .billing-scheduled-help{font-size:12px;color:#486387;margin:12px 0 0}
.billing-page .premium-tier-scheduled{background:#dbeafe;color:#1e40af}
@media(max-width:600px){.billing-scheduled-notice{padding:16px;gap:10px}.billing-scheduled-details{display:grid;gap:12px}}

/* Scheduled subscription date clarity and management */
.billing-scheduled-action{margin-top:14px}.billing-scheduled-action .button{max-width:100%;white-space:normal;text-align:center}
.billing-scheduled-details small{display:block;margin-top:4px}
.billing-next-period{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:13px 18px;margin:12px 0 18px;border:1px solid #dbe7ff;border-radius:12px;background:#f8fbff;color:#16305b}
.billing-next-period span{font-weight:600}.billing-next-period small{display:block;font-weight:400;color:#536b8f}

/* Plan navigation indicators */
.be-plan-lock{margin-left:auto;font-size:10px;font-weight:700;letter-spacing:.04em;opacity:.7}

/* BookEasy plan navigation: keep badges inside the sidebar at all widths. */
.workspace-body .side-links a{min-width:0;box-sizing:border-box}
.workspace-body .side-links .be-nav-label{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-body .side-links .be-plan-lock{flex:0 0 auto;margin-left:4px;opacity:1;font-size:10px;line-height:1;padding:5px 7px;border-radius:6px;background:rgba(255,255,255,.15);color:#e9f0ff;letter-spacing:.03em}
.workspace-body .side-links a.selected .be-plan-lock{background:rgba(255,255,255,.22);color:white}
@media(max-width:300px){.workspace-body .side-links .be-plan-lock{padding:4px;font-size:9px}}

/* BOOKEASY PRO BADGE FIX */
.workspace-body .side-links a .be-nav-label {
    width: auto;
    flex: 1 1 auto;
    min-width: 0;
    font-size: 14px;
    font-weight: inherit;
    text-align: left;
}

.workspace-body .side-links a .be-plan-lock {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 34px;
    flex: 0 0 auto;
    margin-left: auto;
    padding: 4px 6px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    border-radius: 6px;
    background: rgba(255,255,255,.16);
    color: #eaf1ff;
}
/* Visible authenticated workspace identity */
.be-user-identity{display:flex;flex-direction:column;align-items:flex-end;gap:2px;max-width:250px;min-width:0}
.be-user-identity strong,.be-user-identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.be-user-identity strong{font-size:13px}.be-user-identity small{font-size:11px;opacity:.8}
@media(max-width:640px){.be-user-identity{max-width:125px}.be-user-identity small{display:none}}

/* Dashboard section colors and responsive recent bookings */
.dashboard-layout .be-dashboard-panel{padding:0!important;overflow:hidden;border-radius:16px}.dashboard-layout .be-dashboard-panel>.card-head{padding:14px 17px;margin:0!important;background:var(--be-panel-bg);border-bottom:1px solid var(--be-panel-border);min-height:56px;gap:8px}.dashboard-layout .be-dashboard-panel>.card-head h2{font-size:16px;line-height:1.3;margin:0;color:var(--be-panel-ink)}.dashboard-layout .be-dashboard-panel>.card-head a{white-space:normal;text-align:right}
.be-panel-blue{--be-panel-bg:#eaf2ff;--be-panel-border:#d4e4ff;--be-panel-ink:#1958b4}.be-panel-purple{--be-panel-bg:#f1ecff;--be-panel-border:#e2d7ff;--be-panel-ink:#653db8}.be-panel-green{--be-panel-bg:#e7f8ef;--be-panel-border:#cdebdc;--be-panel-ink:#107a58}.be-panel-orange{--be-panel-bg:#fff2e5;--be-panel-border:#f5dec7;--be-panel-ink:#a15d0a}
.dashboard-layout .be-dashboard-panel>.appointment-list,.dashboard-layout .be-dashboard-panel>.table-wrap,.dashboard-layout .be-dashboard-panel>.quick-grid,.dashboard-layout .be-dashboard-panel>.setup-list,.dashboard-layout .be-dashboard-panel>.empty-state{margin:0;padding:14px 16px}.dashboard-layout .be-dashboard-panel>.table-wrap{min-width:0;max-width:100%;overflow-x:auto}.dashboard-layout .be-recent-table .workspace-table{table-layout:fixed;width:100%;white-space:normal;font-size:12px}.dashboard-layout .be-recent-table .workspace-table th,.dashboard-layout .be-recent-table .workspace-table td{padding:10px 5px;overflow-wrap:anywhere;word-break:normal;vertical-align:middle}.dashboard-layout .be-recent-table .workspace-table th:nth-child(1){width:28%}.dashboard-layout .be-recent-table .workspace-table th:nth-child(2){width:32%}.dashboard-layout .be-recent-table .workspace-table th:nth-child(3){width:16%}.dashboard-layout .be-recent-table .workspace-table th:nth-child(4){width:24%}.dashboard-layout .be-recent-table .status-tag{white-space:normal;display:inline-flex;max-width:100%;overflow-wrap:anywhere}.dashboard-layout .trial-widget{padding:19px!important;background:linear-gradient(130deg,#fff3e7,#fff 76%)}.dashboard-layout .be-dashboard-panel>.quick-grid{gap:10px}
@media(max-width:640px){.dashboard-layout .be-dashboard-panel>.card-head{padding:12px 14px}.dashboard-layout .be-dashboard-panel>.table-wrap{padding:10px}.dashboard-layout .be-recent-table .workspace-table{font-size:11px}}
