@import"https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700&family=Poppins:wght@600;700&display=swap";:root{font-family:Nunito Sans,sans-serif;line-height:1.6;font-weight:400;color:#1f2537;background-color:#f6f9fb;--font-display: "Poppins", sans-serif;--ink: #1f2537;--ink-soft: #4f5b70;--brand-navy: #232a40;--brand-teal: #08a6a5;--brand-green: #7bcf5b;--accent: #08a6a5;--accent-strong: #2bbf8a;--card: #ffffff;--card-ghost: #f2f7f7;--border: rgba(31, 37, 55, .12);--border-strong: rgba(31, 37, 55, .22);--shadow: 0 22px 45px -28px rgba(15, 23, 42, .35);--shadow-soft: 0 12px 24px -20px rgba(15, 23, 42, .25);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 0% 1000px,rgba(43,191,138,.25),transparent 50%),linear-gradient(180deg,#f6fbfb,#f3f7f7 60%,#f1f6f4)}#root{width:100%}button,input,select{font-family:inherit}input,select,textarea{border-radius:12px;border:1px solid var(--field-border, var(--border));background:var(--field-bg, #ffffff);color:var(--field-text, var(--ink));transition:border-color .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #08a6a526}.page{min-height:100vh;padding:2.5rem 5vw 4rem;display:flex;flex-direction:column;gap:4rem;color:var(--ink);--field-bg: #ffffff;--field-text: var(--ink);--field-border: var(--border)}.landing{background:transparent;position:relative}.nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.landing-nav{padding-bottom:1rem;border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:.6rem}.brand-logo{width:85px;height:48px;object-fit:contain}.brand-logo-only{width:85px;height:48px}.logo-mark{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.2rem;text-transform:uppercase;font-weight:700;background:linear-gradient(120deg,var(--brand-teal),var(--brand-green));-webkit-background-clip:text;color:transparent}.nav-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.profile-menu{position:relative}.profile-menu-button{width:42px;height:42px;border-radius:999px;border:1px solid var(--border-strong);background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.profile-menu-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #0f172a1f}.profile-menu-button svg{width:20px;height:20px}.profile-menu-dropdown{position:absolute;top:calc(100% + .6rem);right:0;min-width:180px;padding:.4rem;background:#fff;border-radius:14px;border:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.2rem;z-index:20}.profile-menu-item{border:none;background:transparent;text-align:left;padding:.6rem .8rem;border-radius:10px;font:inherit;cursor:pointer;color:var(--ink);text-decoration:none}.profile-menu-item:hover,.profile-menu-item.active{background:#0f172a0f}.link-button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.hero{display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}.clean-hero{min-height:60vh;align-items:center;text-align:center;grid-template-columns:1fr}.hero-copy h1{font-family:var(--font-display);font-size:clamp(2.7rem,4.2vw,3.9rem);margin:.25rem 0 .8rem;line-height:1.3}.clean-hero h1{color:var(--brand-teal);font-weight:700}.clean-hero .lead{color:#2f4763;font-size:1.1rem}.clean-hero .hero-copy{max-width:720px;margin:0 auto;position:relative}.landing .clean-hero h1{color:#2bbf8a;font-weight:700;letter-spacing:-.015em}.landing .clean-hero .lead{color:#2f4763}.landing .primary{background:#2bbf8a;box-shadow:0 14px 24px -18px #2bbf8a8c}.landing .outline{border-color:#2bbf8a;color:#2bbf8a}.eyebrow{font-size:.85rem;letter-spacing:.2rem;text-transform:uppercase;color:var(--accent);margin:0}.lead{font-size:1.05rem;margin:0 0 1.8rem;color:var(--ink-soft)}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.features,.steps{display:flex;flex-direction:column;gap:2rem;text-align:center}.features h2,.steps h2,.cta-band h2{margin:0;font-family:var(--font-display);color:var(--brand-navy)}.feature-grid,.step-grid{display:grid;gap:1.8rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.feature-card,.step-card{background:var(--card);border-radius:20px;padding:1.8rem;box-shadow:var(--shadow-soft);border:1px solid var(--border);text-align:left}.steps-track{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;align-items:start;margin-top:1.5rem}.steps-line{display:none}.step-node{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:0 .5rem;position:relative}.step-node:after{content:"";position:absolute;top:32px;height:2px;width:calc(80% - 24px);background:linear-gradient(90deg,#08a6a50d,#08a6a559 55%,#7bcf5b73)}.step-node:before{right:calc(50% + 32px)}.step-node:after{left:calc(50% + 32px);background:linear-gradient(90deg,#7bcf5b73,#08a6a559 55%,#08a6a50d)}.step-node:first-child:before,.step-node:last-child:after{display:none}.step-icon{position:relative;width:64px;height:64px;border-radius:999px;background:#08a6a51f;display:grid;place-items:center;color:var(--brand-teal)}.step-icon svg{width:28px;height:28px}.step-number{position:absolute;top:-6px;right:-6px;background:var(--brand-teal);color:#fff;font-size:.7rem;font-weight:700;width:26px;height:26px;border-radius:999px;display:grid;place-items:center;border:2px solid #fff}.feature-card h3,.step-card h3{margin:.8rem 0 .6rem;font-size:1.05rem;color:var(--brand-navy)}.feature-card p,.step-card p{margin:0;color:var(--ink-soft);font-size:.95rem}.feature-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#08a6a51f;color:var(--brand-teal);box-shadow:0 10px 18px -14px #08a6a580}.feature-icon svg{width:24px;height:24px}.step-badge{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:#08a6a51f;color:var(--brand-teal);font-weight:700}.cta-band{background:linear-gradient(120deg,#2bbf8a,#2fae74);border-radius:28px;padding:3rem;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.cta-band p{margin:.5rem 0 0;color:#ffffffd9}.ghost.light{border-color:#fff9;color:#fff}.hero-panel{display:flex;flex-direction:column;gap:1.25rem}.hero-logo{width:85px;height:48px;object-fit:contain;align-self:flex-start;filter:drop-shadow(0 12px 20px rgba(8,166,165,.2))}.panel-card{background:var(--card);border-radius:24px;padding:2rem;box-shadow:var(--shadow-soft);border:1px solid rgba(8,166,165,.1)}.panel-card h3{margin-top:0;font-size:1.4rem}.panel-card ul{padding-left:1.2rem;margin:1rem 0 1.5rem;color:var(--ink-soft)}.panel-meta{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--ink-soft)}.provider{background:var(--card);border-radius:28px;padding:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;box-shadow:var(--shadow-soft)}.soft-card{border:1px solid rgba(8,166,165,.1)}.provider-actions{display:inline-flex;gap:.75rem;flex-wrap:wrap}.admin{background:linear-gradient(160deg,#1b2237,#121a2b);color:#f8fafc;border-radius:32px;padding:3rem;display:flex;flex-direction:column;gap:2rem;box-shadow:var(--shadow);--field-bg: rgba(15, 23, 42, .35);--field-text: #e2e8f0;--field-border: rgba(248, 250, 252, .22)}.admin .field input,.admin .field select,.admin .category-row input,.admin .service-type-row input,.admin .service-type-row select,.admin .category-form input,.admin .category-form select,.admin .service-type-form input,.admin .service-type-form select,.admin .status-form select,.admin .status-form input{background:var(--field-bg);color:var(--field-text);border-color:var(--field-border)}.admin-page .nav,.login-page .nav{color:var(--ink)}.login-wrapper{flex:1;display:grid;place-items:center}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--border);border-radius:20px;padding:2rem;box-shadow:var(--shadow-soft);text-align:left}.login-card h2{margin-top:0;font-family:var(--font-display);color:var(--brand-navy)}.login-card p{margin:0 0 1.5rem;color:var(--ink-soft)}.admin-loading{margin:4rem auto;font-size:1.2rem;color:var(--ink-soft)}.auth-card{max-width:520px;margin:0 auto;background:#111c33}.auth-logo{width:85px;height:48px;object-fit:contain;margin-bottom:1rem}.auth-card .lead{color:#cbd5f5}.admin .eyebrow{color:#7bcf5b}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.admin-header-right{display:flex;align-items:center;gap:1.25rem}.brand-badge{width:92px;height:62px;border-radius:14px;background:#08a6a52e;display:grid;place-items:center;border:1px solid rgba(123,207,91,.35)}.brand-badge img{width:85px;height:48px;object-fit:contain}.admin-header h2{margin:.5rem 0 .75rem;font-size:2rem}.admin-tabs{display:flex;gap:.75rem;flex-wrap:wrap}.admin-actions{display:flex;justify-content:flex-end;margin:0 0 1.5rem}.admin-tabs button,.admin-tabs .tab-link{border-radius:999px;padding:.5rem 1.3rem;border:1px solid rgba(248,250,252,.18);background:transparent;color:inherit;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.admin-tabs .active{background:linear-gradient(120deg,var(--brand-teal),var(--brand-green));color:#0f172a;border-color:transparent}.admin-panel .card{background:#111c33e6;border-radius:20px;padding:2rem;color:#e2e8f0;box-shadow:0 18px 40px -30px #0f172acc;border:1px solid rgba(123,207,91,.1)}.admin-panel .ghost{color:#f8fafc;border-color:#f8fafc59}.admin-panel .ghost:hover{box-shadow:0 12px 24px -20px #f8fafc99}.admin-panel .card h3{margin-top:0}.admin-panel p{color:#e2e8f0cc}.demo-table,.provider-list,.service-type-list,.category-list{margin-top:1.5rem}.demo-row,.provider-row,.service-type-row,.category-row{padding:.85rem 0;border-bottom:1px solid rgba(248,250,252,.08)}.admin-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.admin-panel .card.highlight{background:linear-gradient(140deg,#1e293b,#0f172a);border:1px solid rgba(248,250,252,.1)}.admin-panel ul{padding-left:1.2rem;color:#cbd5f5}.provider-list{margin-top:1rem;display:flex;flex-direction:column;gap:.9rem}.provider-row{display:grid;grid-template-columns:2fr 1.5fr auto;gap:1rem;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(248,250,252,.1)}.provider-row span{display:block;color:#94a3b8;font-size:.9rem}.provider-meta{display:flex;flex-direction:column;gap:.35rem}.provider-actions{display:flex;gap:.6rem;flex-wrap:wrap}.demo-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.service-type-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.service-type-header h3{margin-bottom:.4rem}.demo-actions{display:flex;gap:.75rem;align-items:center}.demo-actions select{border-radius:999px;border:1px solid rgba(248,250,252,.22);background:transparent;color:#e2e8f0;padding:.4rem .8rem}.demo-row select{border-radius:999px;border:1px solid rgba(248,250,252,.22);background:transparent;color:#e2e8f0;padding:.3rem .7rem}.demo-table{display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem}.demo-row.active{background:#f8fafc0d}.demo-row.header{font-size:.85rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.08rem;cursor:default}.demo-row.header span{color:#94a3b8}.demo-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(248,250,252,.1);cursor:pointer}.demo-row>span,.demo-row>div{flex:1}.demo-row strong{display:block}.demo-row span{display:block;color:#94a3b8;font-size:.9rem}.demo-timeline{margin-top:1.5rem;background:#f8fafc0a;padding:1.25rem;border-radius:16px}.demo-timeline ul{list-style:none;padding:0;margin:1rem 0;display:flex;flex-direction:column;gap:.75rem}.demo-timeline li strong{display:block;color:#f8fafc}.demo-timeline li span{display:block;color:#94a3b8;font-size:.85rem}.status-form{display:grid;grid-template-columns:1fr 2fr auto;gap:.75rem;align-items:center}.pill{background:#08a6a533;color:#63e6e2;padding:.3rem .8rem;border-radius:999px;font-size:.75rem}.pill.warning{background:#7bcf5b33;color:#9ef07e}.modal.modal-wide{width:min(860px,100%)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.checkbox{display:flex;align-items:center;gap:.6rem;font-weight:600}.service-block{margin-top:.5rem;display:flex;flex-direction:column;gap:1.2rem}.service-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.service-card{background:var(--card-ghost);border-radius:16px;padding:1.5rem}.service-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.service-actions{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.9rem;color:var(--ink-soft)}.service-action-info{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.service-action-buttons{display:flex;align-items:center;gap:.6rem}.service-advanced{margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(31,37,55,.12)}.service-advanced-grid{margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(31,37,55,.12);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.service-assignments{margin-top:1rem;display:grid;gap:1rem}.service-assign{padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(148,163,184,.18);background:#0f172a47}.service-assign-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.service-assign-header h5{margin:0;font-size:.95rem}.service-assign-options{display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--ink-soft)}.empty-inline{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap}.service-assign-hint{margin-top:.5rem;padding:.6rem .8rem;border-radius:12px;border:1px dashed rgba(148,163,184,.3);background:#0f172a33;color:var(--ink-soft);font-size:.85rem}.service-warnings{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.service-warning{padding:.6rem .8rem;border-radius:12px;border:1px solid rgba(239,68,68,.32);background:#fee2e2eb;color:#991b1b;font-weight:600;font-size:.9rem}.ghost.small{padding:.4rem .9rem;font-size:.85rem}.icon-only-button{width:2.35rem;min-width:2.35rem;padding:.4rem;display:inline-flex;align-items:center;justify-content:center}.icon-only-button svg{width:1rem;height:1rem}.icon-only-button.danger{color:#fecaca;border-color:#f8717157}.icon-only-button.danger:hover{color:#fee2e2;border-color:#f871718c}.admin .modal .ghost.icon-only-button.danger{color:#b91c1c;background:#fee2e2f5;border-color:#ef44446b}.admin .modal .ghost.icon-only-button.danger:hover{color:#991b1b;background:#fee2e2;border-color:#dc262694}.modal-actions{margin-top:2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal-actions-status{flex:1}.modal-actions-status .form-error{margin:0}.modal-actions-buttons{display:flex;align-items:center;gap:1rem}.category-form,.service-type-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-top:1rem}.space-form,.worker-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-top:1rem;align-items:center}.availability-block{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(248,250,252,.08);display:flex;flex-direction:column;gap:1rem}.availability-header h4{margin:0 0 .3rem}.availability-header p{margin:0;color:#e2e8f0bf}.availability-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;align-items:center}.availability-list{display:flex;flex-direction:column;gap:.6rem}.availability-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem;align-items:center}.availability-row.overlap{padding:.45rem;border-radius:12px;border:1px solid rgba(250,204,21,.45);background:#facc1514}.availability-row input[type=datetime-local]{min-width:190px}.config-section{margin-top:1rem;padding:1rem;border-radius:16px;background:#0f172a59;border:1px solid rgba(248,250,252,.1);display:flex;flex-direction:column;gap:1.5rem}.config-section .filter-bar{margin-top:0;padding:0;border:none;background:transparent}.config-section .availability-block{margin-top:0;padding-top:1.5rem;border-top:1px solid rgba(248,250,252,.08)}.filter-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem;padding:1rem;border-radius:16px;background:#0f172a59;border:1px solid rgba(248,250,252,.1)}.filter-field{display:flex;flex-direction:column;gap:.35rem;min-width:220px}.filter-field label{font-weight:600}.filter-hint{font-size:.85rem;color:#e2e8f0bf}.form-warning{margin-bottom:.2rem;padding:.6rem .8rem;border-radius:12px;border:1px solid rgba(250,204,21,.4);background:#facc151f;color:#fde68a;font-size:.9rem}.overlap-banner{margin-top:.6rem;padding:.6rem .8rem;border-radius:12px;border:1px solid rgba(248,113,113,.45);background:#f871711f;color:#fecaca;font-size:.9rem}.view-toggle{display:flex;align-items:center;gap:.4rem}.view-toggle .toggle{border-radius:999px;padding:.35rem .85rem;font-size:.82rem;border:1px solid rgba(148,163,184,.35);background:transparent;color:#e2e8f0cc;cursor:pointer}.view-toggle .toggle.active{background:#22c55e33;border-color:#22c55e80;color:#dcfce7}.availability-calendar{padding:1rem;border-radius:16px;background:#0f172a47;border:1px solid rgba(148,163,184,.18);display:flex;flex-direction:column;gap:.75rem}.calendar-title{font-weight:600;color:var(--ink)}.calendar-week{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.calendar-day{border-radius:14px;padding:.75rem;background:#0f172a38;border:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:.6rem;min-height:120px}.calendar-day-header{font-weight:600;font-size:.9rem}.calendar-day-body{display:flex;flex-direction:column;gap:.4rem}.calendar-date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.calendar-date-card{border-radius:14px;padding:.75rem;background:#0f172a38;border:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:.6rem}.calendar-date-header{font-weight:600;font-size:.9rem}.calendar-date-body{display:flex;flex-direction:column;gap:.4rem}.calendar-chip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.82rem;padding:.35rem .6rem;border-radius:999px;border:1px solid transparent}.calendar-chip-icon{width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.calendar-chip-icon svg{width:100%;height:100%}.rule-chip{justify-content:flex-start;gap:.6rem;background:#3b82f638;border-color:#60a5fa6b;color:#dbeafe;font-weight:600}.rule-chip-icon{width:1.2rem;height:1.2rem;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.24);color:#eff6ff;padding:.12rem}.calendar-chip-text{line-height:1.2}.calendar-chip.neutral{background:#3b82f61f;border-color:#3b82f64d;color:#bfdbfe}.calendar-chip.open{background:#10b98126;border-color:#10b98159;color:#bbf7d0}.calendar-chip.closed{background:#f8717129;border-color:#f8717159;color:#fecaca}.empty-state{margin-top:1rem;padding:1rem 1.2rem;border-radius:14px;border:1px dashed rgba(148,163,184,.35);background:#0f172a33;color:var(--ink-soft);text-align:center}.worker-space-picker{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:var(--ink-soft)}.worker-space-options{display:flex;flex-wrap:wrap;gap:.5rem}.service-type-form .form-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;grid-column:1 / -1}.service-type-form .form-actions button{width:auto}.category-list,.service-type-list,.space-list,.worker-list{margin-top:1rem;margin-bottom:4rem;display:flex;flex-direction:column;gap:.6rem;overflow-x:auto;padding-bottom:.4rem}.category-row input,.service-type-row input,.service-type-row select,.space-row input,.space-row select,.category-form input,.category-form select,.service-type-form input,.service-type-form select,.space-form input,.space-form select,.worker-form input,.worker-form select,.availability-form input,.availability-form select,.availability-row input,.availability-row select,.status-form select,.status-form input{border-radius:12px;border:1px solid var(--field-border);background:var(--field-bg);color:var(--field-text);padding:.45rem .7rem}.service-type-row{display:grid;grid-template-columns:1.2fr 1.4fr repeat(8,minmax(130px,1fr));gap:.6rem;min-width:1200px}.space-row-wrapper{background:var(--card-ghost);border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;gap:.85rem;--field-bg: #ffffff;--field-text: var(--ink);--field-border: var(--border)}.space-row-wrapper input,.space-row-wrapper select{border:1px solid var(--field-border);background:var(--field-bg);color:var(--field-text)}.space-row-wrapper .checkbox{color:var(--field-text)}.space-row-wrapper .form-warning{background:#fef3c7eb;border-color:#f59e0b73;color:#92400e}.space-row-wrapper .form-error{background:#fee2e2eb;border-color:#dc262666;color:#b91c1c}.space-row-wrapper .pill{background:#08a6a52e;border:1px solid rgba(8,166,165,.35);color:#0f766e;font-weight:600}.space-row{display:flex;gap:3rem;align-items:baseline}.space-row.inactive{background:#0f172a38;border-radius:12px;padding:.6rem}.space-row.inactive input:disabled,.space-row.inactive select:disabled{opacity:.6;cursor:not-allowed}.space-warning{margin-left:.25rem}.space-row.inactive .checkbox.small:not(.active-toggle),.space-row.inactive .pill{opacity:.6}.space-row-name{margin-right:.5rem}.worker-card{background:var(--card-ghost);--field-bg: #ffffff;--field-text: var(--ink);--field-border: var(--border);border-radius:16px;padding:1.2rem;display:flex;flex-direction:column;gap:.85rem}.worker-card.inactive .field,.worker-card.inactive .worker-spaces,.worker-card.inactive .worker-space-options{opacity:.6}.worker-card.inactive input:disabled,.worker-card.inactive select:disabled{cursor:not-allowed}.worker-card .field label{color:var(--field-text);font-size:.85rem}.worker-card .checkbox{color:var(--field-text)}.worker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;align-items:center}.worker-spaces{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:var(--ink-soft)}.worker-card .ghost.small{border-color:#b91c1c66;color:#b91c1c;background:#fff}.worker-card .ghost.small:hover{border-color:#b91c1cb3}.service-type-row.header{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-weight:600;padding:.1rem .2rem .4rem;border-bottom:1px solid rgba(31,37,55,.08)}.service-type-row.header span{padding:0 .2rem}.checkbox.small{font-size:.85rem;font-weight:500}.provider h2{margin:0 0 .75rem;font-size:1.8rem}.provider p{margin:0;color:var(--ink-soft)}.footer{margin-top:2rem;padding:1.5rem 0 0;border-top:1px solid rgba(31,37,55,.1);display:flex;align-items:center;gap:.75rem;color:var(--ink-soft);font-size:.95rem}.footer span{white-space:nowrap}.footer-logo{width:85px;height:48px;object-fit:contain;filter:grayscale(1) contrast(1.1);opacity:.85}.primary,.ghost{border-radius:999px;padding:.7rem 1.5rem;font-size:.95rem;border:1px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.outline{border-radius:999px;padding:.7rem 1.5rem;font-size:.95rem;border:1px solid var(--brand-teal);background:transparent;color:var(--brand-teal);font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.outline:hover{transform:translateY(-1px)}.landing .cta-band{background:#2bbf8a;text-align:center;justify-content:center;border-radius:0;width:calc(100% + 10vw);max-width:none;margin-left:-5vw;margin-right:-5vw;padding:3.5rem 6vw;position:relative;overflow:hidden}.landing .cta-band:before,.landing .cta-band:after{content:"";position:absolute;width:220px;height:220px;border-radius:999px;border:1px solid rgba(255,255,255,.18);opacity:.6}.landing .cta-band:before{left:4%;bottom:-40px}.landing .cta-band:after{right:6%;top:-40px}.landing .cta-band h2{color:#fff}.btn-icon{display:inline-flex;width:18px;height:18px;margin-right:.6rem}.btn-icon svg{width:18px;height:18px}.primary{background:linear-gradient(120deg,var(--brand-teal),var(--brand-green));color:#fff;box-shadow:0 16px 30px -18px #08a6a58c}.primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.ghost{background:transparent;border-color:var(--border-strong);color:var(--ink)}.language{border-color:#1f25371f;padding:.55rem .9rem;font-size:.85rem}.primary:hover:not(:disabled),.ghost:hover{transform:translateY(-1px)}.modal-backdrop{position:fixed;inset:0;background:#14192699;display:grid;place-items:center;padding:2rem;z-index:20}.modal{background:#fff;border-radius:20px;width:min(520px,100%);padding:2rem;box-shadow:var(--shadow);max-height:calc(100vh - 4rem);overflow-y:auto}.admin .modal{color:#0f172a;--field-bg: #ffffff;--field-text: #0f172a;--field-border: rgba(15, 23, 42, .18)}.admin .modal .ghost{color:#0f172a;border-color:#0f172a40}.admin .modal .ghost:hover{border-color:#0f172a73}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal-form{display:flex;flex-direction:column;gap:1.2rem;margin-top:1.5rem}.modal-separator{height:1px;width:100%;background:var(--field-border);opacity:.7}.modal-tabs{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.6rem}.modal-tabs button{border-radius:999px;padding:.45rem 1.1rem;border:1px solid var(--field-border);background:transparent;color:inherit;cursor:pointer}.modal-tabs .active{background:linear-gradient(120deg,var(--brand-teal),var(--brand-green));color:#0f172a;border-color:transparent}.modal-section{display:flex;flex-direction:column;gap:1rem}.toast-stack{position:fixed;top:1.5rem;right:1.5rem;z-index:2000;display:flex;flex-direction:column;gap:.5rem}.toast{background:#0f172a;color:#f8fafc;padding:.75rem 1.1rem;border-radius:14px;box-shadow:0 12px 30px #0f172a2e,0 2px 8px #0f172a1f;font-weight:600}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-weight:600}.field-label-with-help{display:inline-flex;align-items:center;gap:.45rem}.info-badge{width:1.1rem;height:1.1rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#08a6a529;border:1px solid rgba(8,166,165,.32);color:var(--accent);font-size:.72rem;font-weight:700;cursor:help;-webkit-user-select:none;user-select:none}.field input,.field select{border:1px solid var(--field-border);border-radius:12px;padding:.65rem .9rem;font-size:.95rem;font-family:inherit;background:var(--field-bg);color:var(--field-text)}.field input.readonly-input{background:#f1f5f9;border-color:#94a3b899;color:#64748b;cursor:not-allowed}.field input.readonly-input::placeholder{color:#94a3b8}.hint{font-size:.85rem;color:var(--accent)}.toggle{display:inline-flex;gap:.5rem;background:#edf7f6;padding:.4rem;border-radius:999px}.toggle button{border:none;background:transparent;border-radius:999px;padding:.4rem 1rem;font-weight:600;cursor:pointer}.toggle .active{background:#fff;box-shadow:0 6px 18px -12px #08a6a573}.modal-success{margin-top:1.5rem;background:#eef8f4;padding:1.25rem;border-radius:14px;font-weight:600;color:var(--ink)}.form-error{background:#fff3f3;border:1px solid rgba(220,38,38,.2);color:#b42318;padding:.8rem 1rem;border-radius:12px;font-size:.9rem}.form-success{background:#ecfdf3;border:1px solid rgba(16,185,129,.2);color:#0f6b4a;padding:.8rem 1rem;border-radius:12px;font-size:.9rem}@media(max-width:720px){.nav{flex-direction:column;align-items:flex-start}.nav-actions{width:100%;justify-content:flex-start}.hero-actions{justify-content:center}.feature-card,.step-card{text-align:left}.cta-band{padding:2rem}.footer{flex-direction:column;align-items:flex-start;gap:.4rem}.demo-row,.demo-row.header{flex-direction:column;align-items:flex-start;gap:.35rem}.demo-row>span,.demo-row>div{flex:none;width:100%}}@media(max-width:960px){.steps-track{grid-template-columns:1fr;gap:2.5rem}.steps-line{display:none}.cta-band{flex-direction:column;align-items:flex-start}.provider-row{grid-template-columns:1fr;align-items:flex-start}.provider-actions{width:100%;justify-content:flex-start}}.admin .modal .worker-card .ghost.small{border-color:#b91c1c66;color:#b91c1c;background:#fff}.admin .modal .worker-card .ghost.small:hover{border-color:#b91c1cb3}.provider-link{display:inline-block;margin-top:.25rem;font-size:.85rem;color:var(--accent);text-decoration:none}.provider-link:hover{text-decoration:underline}.provider-link.muted{color:var(--ink-soft)}.booking-page{padding:2.5rem 0 3rem}.booking-card{width:min(720px,100%);margin:0 auto;background:var(--card-ghost);border-radius:18px;padding:2rem;box-shadow:0 18px 40px #0f172a14}.booking-header h1{margin:0 0 .35rem}.booking-header p{margin:0 0 1.5rem;color:var(--ink-soft)}.booking-form{display:grid;gap:1rem}.booking-actions{margin-top:.5rem}.wizard-steps{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.wizard-step{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .8rem;border-radius:999px;background:#0f172a14;color:var(--ink-soft);font-size:.85rem}.wizard-step span{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#08a6a533;color:var(--accent);font-weight:700;font-size:.75rem}.wizard-step.active{background:#08a6a524;color:var(--ink)}.wizard-step.active span{background:var(--accent);color:#fff}.wizard-step.done span{background:#22c55ecc;color:#fff}.wizard-step-panel{display:flex;flex-direction:column;gap:1rem}.wizard-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.wizard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.wizard-card{text-align:left;padding:1rem;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:#ffffffe6;box-shadow:0 10px 24px #0f172a14;cursor:pointer;transition:transform .2s ease,border-color .2s ease}.wizard-card:hover{transform:translateY(-2px);border-color:#08a6a566}.wizard-card.selected{border-color:#08a6a599;box-shadow:0 14px 30px #08a6a533}.calendar{display:flex;flex-direction:column;gap:1rem}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem}.calendar-label{text-align:center;font-size:.75rem;color:var(--ink-soft);font-weight:600}.calendar-day{height:44px;border-radius:12px;border:1px solid transparent;background:#0f172a0d;color:var(--ink);font-weight:600;cursor:pointer}.calendar-day.available{background:#08a6a51f;border-color:#08a6a54d}.calendar-day.disabled{background:#94a3b81f;color:#64748b99;cursor:not-allowed}.slot-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem}.slot-button{border-radius:10px;padding:.6rem .8rem;border:1px solid rgba(8,166,165,.3);background:#08a6a51f;font-weight:600;cursor:pointer}.slots-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.booking-summary{display:grid;gap:.4rem;padding:1rem;border-radius:14px;background:#0f172a0f;border:1px solid rgba(148,163,184,.2)}.wizard-nav{display:flex;justify-content:flex-start;margin-bottom:2rem}.multi-select{position:relative}.multi-select-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;border-radius:12px;border:1px solid rgba(148,163,184,.35);background:#fff;color:var(--ink);font-weight:600}.multi-select-menu{position:absolute;top:calc(100% + .35rem);left:0;right:0;background:#fff;border:1px solid rgba(148,163,184,.25);border-radius:12px;box-shadow:0 12px 30px #0f172a1f;padding:.35rem;display:flex;flex-direction:column;gap:.25rem;z-index:20;max-height:240px;overflow:auto}.multi-select-option{display:flex;align-items:center;gap:.6rem;padding:.45rem .6rem;border-radius:10px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer}.multi-select-option:hover{background:#08a6a514}.multi-select-check{width:18px;height:18px;border-radius:4px;border:1px solid rgba(148,163,184,.6);display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;background:transparent;color:#fff}.multi-select-check.checked{background:var(--accent);border-color:var(--accent)}.caret{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--ink-soft)}.calendar-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;min-height:240px;color:var(--ink-soft);font-weight:600}.spinner{width:24px;height:24px;border-radius:50%;border:3px solid rgba(8,166,165,.2);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.wizard-nav .ghost{display:inline-flex;align-items:center;gap:.4rem}.back-icon{width:16px;height:16px}.auth-divider{margin:1.25rem 0 .75rem;text-align:center;color:var(--ink-soft);font-size:.85rem}.social-buttons{display:grid;gap:.6rem}.social-button{width:100%;padding:.65rem .8rem;border-radius:12px;border:1px solid rgba(148,163,184,.3);background:#fff;font-weight:600;cursor:pointer}.social-button:hover{border-color:#08a6a566}.login-hint{margin-top:1rem;font-size:.9rem;color:var(--ink-soft)}.login-hint a{color:var(--accent);text-decoration:none}.login-hint a:hover{text-decoration:underline}.payment-choice .radio-group{display:grid;gap:.5rem}.text-link{border:none;background:transparent;color:var(--accent);font:inherit;padding:0;cursor:pointer;text-decoration:none}.text-link:hover{text-decoration:underline}.text-link:disabled{opacity:.6;cursor:not-allowed;text-decoration:none}.radio{display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem}.booking-confirmation{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-radius:14px;border:1px solid rgba(8,166,165,.2);background:#08a6a514}.booking-confirmation-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.booking-confirmation .form-warning{background:#fff7ed;border-color:#f59e0b73;color:#7c2d12;font-weight:600}.booking-number{font-weight:600}.booking-number-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-weight:600}.customer-page{background:#f7f9fc}.dashboard-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.dashboard-card{background:#fff;border-radius:18px;padding:1.5rem;border:1px solid var(--border);box-shadow:var(--shadow-soft)}.dashboard-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.dashboard-tabs{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem;background:#94a3b826;border-radius:999px}.dashboard-tab{border:none;background:transparent;padding:.4rem .95rem;border-radius:999px;font:inherit;color:var(--ink-soft);cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.dashboard-tab.active{background:#fff;color:var(--ink);box-shadow:0 10px 20px #0f172a1f}.booking-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.booking-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.75rem .9rem;border-radius:14px;border:1px solid rgba(148,163,184,.2);background:#fff}.booking-meta{margin-top:.25rem;color:var(--ink-soft);font-size:.9rem}.booking-item-actions{display:flex;gap:.5rem;flex-wrap:wrap}.dashboard-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.customer-dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.booking-item-selectable{width:100%;appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer}.booking-item-selectable.selected{border-color:#08a6a56b;box-shadow:0 14px 28px #08a6a51f}.booking-item-chevron{color:var(--accent);font-size:.85rem;font-weight:700}.booking-meta-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.booking-status{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:700;border:1px solid transparent}.booking-status.danger{background:#dc26261f;color:#b42318;border-color:#dc26262e}.booking-status.warning{background:#f59e0b29;color:#b45309;border-color:#f59e0b38}.booking-status.success{background:#10b98124;color:#0f6b4a;border-color:#10b9812e}.booking-status.neutral{background:#64748b1f;color:#475569;border-color:#64748b2e}.booking-status.muted{background:#94a3b824;color:#64748b;border-color:#94a3b82e}.booking-detail-card{display:flex;flex-direction:column;gap:1rem}.booking-detail-grid,.booking-proof-grid{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.booking-detail-label{display:block;margin-bottom:.25rem;color:var(--ink-soft);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.booking-proof-panel{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-radius:16px;background:#0f172a0a;border:1px solid rgba(148,163,184,.18)}.booking-proof-copy{display:flex;flex-direction:column;gap:.55rem}.booking-proof-copy h4{margin:0}.booking-proof-form{display:flex;flex-direction:column;gap:.8rem}.inline-checkbox{gap:.3rem}.checkbox-row{display:inline-flex;align-items:center;gap:.55rem;font-weight:600}.action-button.cancel{border-color:#dc262647;color:#b42318}.action-button.cancel:hover{border-color:#dc262673}.action-button.missed,.action-button.unpaid{border-color:#64748b4d;color:#475569}.action-button.missed:hover,.action-button.unpaid:hover{border-color:#64748b75}.action-button.paid{border-color:#10b98147;color:#0f6b4a}.action-button.paid:hover{border-color:#10b98170}.provider-dashboard-grid{grid-template-columns:1fr}.provider-dashboard-hero,.provider-dashboard-main{display:flex;flex-direction:column;gap:1rem}.provider-dashboard-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.provider-calendar-shell{display:flex;flex-direction:column;gap:1rem}.provider-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.provider-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem}.provider-calendar-label{text-align:center;font-size:.75rem;color:var(--ink-soft);font-weight:700}.provider-calendar-day{min-height:150px;border-radius:18px;border:1px solid rgba(148,163,184,.22);background:#f7fafcf2;padding:.85rem;display:flex;flex-direction:column;gap:.75rem;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.provider-calendar-day:hover{transform:translateY(-1px);box-shadow:0 12px 24px #0f172a14}.provider-calendar-day.active{border-color:#08a6a559;box-shadow:0 16px 32px #08a6a529}.provider-calendar-day.today{background:#08a6a514}.provider-calendar-day.empty{min-height:0;background:transparent;border-style:dashed;cursor:default}.provider-calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-weight:700}.provider-calendar-count{min-width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#0f172a14;color:var(--ink-soft);font-size:.8rem}.provider-calendar-preview{display:flex;flex-direction:column;gap:.45rem}.provider-calendar-chip{display:flex;flex-direction:column;gap:.15rem;padding:.45rem .6rem;border-radius:12px;background:#0f172a0d;border:1px solid rgba(148,163,184,.14);color:var(--ink-soft);font-size:.8rem}.provider-calendar-chip strong{color:var(--ink)}.provider-calendar-chip.danger{background:#dc262614;border-color:#dc26261f}.provider-calendar-chip.warning{background:#f59e0b1a;border-color:#f59e0b29}.provider-calendar-chip.success{background:#10b9811a;border-color:#10b98124}.provider-calendar-chip.neutral,.provider-calendar-chip.muted{background:#94a3b81f}.provider-day-detail{display:flex;flex-direction:column;gap:.9rem;padding:1rem;border-radius:18px;background:#0f172a0a;border:1px solid rgba(148,163,184,.16)}.provider-day-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}@media(max-width:640px){.provider-calendar-grid{gap:.35rem}.provider-calendar-toolbar{align-items:stretch}.provider-calendar-day{min-height:88px;padding:.55rem}.provider-calendar-preview{display:none}}@media(max-width:960px){.customer-dashboard-grid{grid-template-columns:1fr}}.copy-button{border:1px solid rgba(148,163,184,.35);background:#fff;color:var(--ink);border-radius:999px;padding:.25rem .5rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.copy-button svg{width:16px;height:16px}.copy-button:hover{border-color:#08a6a580}
