:root{--paper:#f7f6f3;--surface:#fff;--ink:#29272a;--secondary:#66616a;--muted:#8c868d;--line:#e6e1e2;--brand:#b32430;--brand-soft:#faecee;--success:#216449;--inset:#f4f2f2;--radius:12px;--shadow:0 2px 12px #35212808;--space:4px;font-family:Arial,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button{cursor:pointer;min-height:44px;border:1px solid transparent;border-radius:8px;padding:10px 20px;font-weight:600;transition:background .15s,transform .15s}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bf6975;outline-offset:3px}header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));background:var(--surface)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:23px;font-weight:800}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:4px}.brand-mark{display:grid;place-items:center;background:var(--brand);color:#fff;width:44px;height:48px;border-radius:4px 4px 14px 4px;font-size:32px}.header-tools{display:flex;align-items:center;gap:24px;font-size:14px}.header-tools a{color:var(--secondary)}.quiet{background:transparent;color:var(--ink)}.quiet:hover{background:var(--inset)}main{max-width:1120px;margin:0 auto;padding:48px 24px 64px;min-height:calc(100vh - 180px)}h1{font-size:40px;line-height:1.2;margin:12px 0 20px;letter-spacing:-1px;text-wrap:balance}h2{font-size:24px;line-height:1.3;margin:0 0 20px}h3{font-size:18px;margin:0 0 12px}p{line-height:1.7;color:var(--secondary);text-wrap:pretty}.eyebrow{font-size:12px;color:var(--brand);font-weight:700;letter-spacing:1px}.hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:36px}.hero p{max-width:580px;font-size:17px;margin:0}.meeting-details{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.pill{font-size:13px;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:24px}.test-banner{padding:12px 16px;background:#fff3d7;color:#70520f;border-radius:8px;margin-bottom:24px;font-size:14px}.layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:24px;align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel-heading h2{margin:0;font-size:21px}.step-number{font-size:13px;color:var(--muted)}.days{display:flex;gap:8px;overflow:auto;padding:4px 4px 16px;scrollbar-width:thin}.day{background:var(--paper);border:1px solid var(--line);min-width:76px;padding:12px 8px;color:var(--secondary);font-weight:400;display:grid;gap:6px}.day strong{font-size:24px;color:var(--ink)}.day[aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.day[aria-pressed=true] strong{color:var(--brand)}.date-label{font-size:15px;margin:16px 0;color:var(--secondary)}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.slot{background:white;border:1px solid var(--line);font-variant-numeric:tabular-nums;min-height:48px}.slot:hover{border-color:var(--brand);background:var(--brand-soft)}.slot[aria-pressed=true]{background:var(--brand);color:white;border-color:var(--brand)}.selected-summary{padding:16px;background:var(--brand-soft);border-radius:8px;color:var(--brand);margin-bottom:20px;font-weight:600;line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:8px;font-size:14px;color:var(--secondary)}.field.full{grid-column:1/-1}input,select,textarea{border:1px solid var(--line);background:var(--inset);border-radius:8px;min-height:46px;padding:10px 12px;width:100%;color:var(--ink)}input[type=email],input[type=tel],input[type=time]{direction:ltr;text-align:right}input[type=checkbox]{width:20px;min-height:20px}.primary{background:var(--brand);color:white}.primary:hover{background:#951c28}.secondary{background:var(--paper);border-color:var(--line)}.wide{width:100%;margin-top:20px}.hint{font-size:12px;line-height:1.7;color:var(--secondary);margin:16px 0 0}.empty{padding:36px 12px;text-align:center;color:var(--secondary);line-height:1.8}.error{color:#9d1827;background:var(--brand-soft);padding:16px;border-radius:8px;line-height:1.6;margin:16px 0}.success{color:var(--success)}.success-badge{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:#e8f4ed;color:var(--success);font-size:32px;margin-bottom:24px}.confirmation{max-width:640px;margin:32px auto}.confirmation h1{font-size:30px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.loading{padding:64px;text-align:center;color:var(--secondary)}footer{max-width:1120px;margin:0 auto;padding:24px;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);font-size:12px;color:var(--secondary)}#toast{position:fixed;bottom:24px;inset-inline-start:50%;transform:translateX(50%);background:var(--ink);color:#fff;padding:14px 24px;border-radius:8px;box-shadow:var(--shadow);display:none;z-index:5}dialog{max-width:460px;border:0;border-radius:16px;padding:32px;box-shadow:0 12px 60px #0003}dialog::backdrop{background:#28242c66}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.admin-heading h1{font-size:32px}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:20px 0 28px;overflow:auto}.tabs button{background:transparent;border-radius:0;white-space:nowrap;color:var(--secondary)}.tabs button.active{color:var(--brand);border-bottom:3px solid var(--brand)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-grid .panel{display:grid;gap:16px;align-content:start}.settings-grid h2{font-size:20px;margin-bottom:4px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap;font-size:14px}th{font-weight:600;color:var(--secondary);background:var(--paper)}td,th{padding:14px 16px;border-bottom:1px solid var(--line)}td small{display:block;color:var(--secondary);margin-top:4px}.status{display:inline-block;padding:5px 8px;border-radius:6px;background:var(--inset);font-size:12px}.status.confirmed{background:#e8f4ed;color:var(--success)}.status.cancelled{background:var(--brand-soft);color:var(--brand)}.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.toolbar input{width:260px}.small{font-size:13px}.muted{color:var(--secondary)}.hidden{display:none!important}.skip{position:absolute;top:-100px;padding:16px;background:white;z-index:9}.skip:focus{top:0}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ltr{direction:ltr;unicode-bidi:embed}.checkbox-field{display:flex;gap:12px;align-items:center}.audit-row{padding:12px 0;border-bottom:1px solid var(--line);line-height:1.5;font-size:13px}code{direction:ltr;display:inline-block;word-break:break-all} @media(max-width:800px){header{height:76px;padding:0 20px}.brand{font-size:19px}.header-tools{gap:12px}main{padding:28px 16px 40px}h1{font-size:32px}.hero{display:block;margin-bottom:24px}.hero p{font-size:15px}.layout,.settings-grid{grid-template-columns:1fr}.panel{padding:20px}.form-grid{gap:12px}.slots{gap:8px}.hero .meeting-details{margin-top:16px}footer{flex-direction:column;padding:20px}.admin-heading{align-items:start}.admin-heading h1{font-size:27px}.confirmation{margin:0}.days{margin-inline:-4px}.toolbar input{width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}button:active{transform:none}}


.login-link{display:inline-block;padding:14px 24px;border-radius:8px}


.portal-hero{padding-block:24px}.portal-service{display:block;max-width:640px;text-decoration:none;margin-top:24px;border-top:3px solid var(--brand)}.portal-service h3{font-size:24px;margin:16px 0}.portal-service p{color:var(--secondary);line-height:1.8}.portal-cta{display:inline-block;color:var(--brand);font-weight:700;margin-top:16px}.portal-service:hover{border-color:var(--brand)}

#admin-code-form{display:grid;gap:16px;margin-top:24px}.user-editor{margin-top:24px}

@media(max-width:600px){
  .brand{gap:8px;font-size:18px}.brand small{letter-spacing:0;font-size:11px}.brand-mark{flex-shrink:0}
  .header-tools{gap:8px}.header-tools a{display:inline-flex;align-items:center;min-height:44px}
  .tabs{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:4px;border-bottom:0}.tabs button{padding:10px 8px;border-radius:8px;white-space:normal}.tabs button.active{background:var(--brand-soft);border-bottom:2px solid var(--brand)}
  .form-grid{grid-template-columns:1fr}.field,.panel,.settings-grid{min-width:0}.field input,.field select{min-width:0;font-size:16px}
  .actions{flex-direction:column;align-items:stretch}.actions button,.actions a{width:100%}
  .table-wrap{overflow:visible}.table-wrap table,.table-wrap tbody{display:block;width:100%;white-space:normal}.table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .table-wrap tbody tr{display:block;border:1px solid var(--line);border-radius:8px;margin-block:12px;padding:8px 12px}
  .table-wrap td{display:grid;grid-template-columns:minmax(72px,30%) minmax(0,1fr);gap:8px;padding:10px 0;white-space:normal;overflow-wrap:anywhere;font-size:14px}
  .table-wrap td::before{content:attr(data-label);font-weight:600;color:var(--secondary)}.table-wrap td:last-child{border-bottom:0}.table-wrap td small{grid-column:2;margin-top:0}.table-wrap td button{width:100%}
  #admin-code-form input{font-size:24px;text-align:center;letter-spacing:6px;min-height:52px}.confirmation h1{font-size:26px}
}

/* Brand assets supplied by Kingstore, matching the KINGSITE theme. */
@font-face{font-family:'Kedem Sans';src:url('/fonts/kedem-sans-regular.ttf') format('truetype');font-weight:100 400;font-style:normal;font-display:swap}
@font-face{font-family:'Kedem Sans';src:url('/fonts/kedem-sans-medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Kedem Sans';src:url('/fonts/kedem-sans-semibold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Kedem Sans';src:url('/fonts/kedem-sans-bold.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:'Expo Arabic';src:url('/fonts/expo-arabic-book.ttf') format('truetype');font-weight:100 400;font-style:normal;font-display:swap}
@font-face{font-family:'Expo Arabic';src:url('/fonts/expo-arabic-semibold.ttf') format('truetype');font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:'Expo Arabic';src:url('/fonts/expo-arabic-bold.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
:root{font-family:'Kedem Sans',Arial,sans-serif}html[lang='ar']{font-family:'Expo Arabic',Arial,sans-serif}
.brand{display:flex;flex-direction:column;align-items:center;gap:0;font-weight:500;flex-shrink:0}
.brand-logo{display:block;width:220px;height:64px;object-fit:cover;object-position:center}
.portal-brand-caption{font-size:13px;line-height:1.25;color:var(--secondary);letter-spacing:0}
@media(max-width:600px){header{height:90px;padding-inline:16px}.brand-logo{width:168px;height:49px}.portal-brand-caption{font-size:12px}.header-tools{gap:4px}.header-tools button{padding-inline:10px}.brand{gap:1px}}
@media(max-width:350px){.brand-logo{width:148px;height:44px}.header-tools{font-size:13px}.header-tools button{padding-inline:8px}}
/* Corporate palette sampled from king.deltacomputer.co.il. */
:root{--paper:#fff;--ink:#163a2b;--secondary:#52645a;--muted:#65786c;--line:#d9e5dd;--brand:#087a46;--brand-dark:#034a2e;--brand-soft:#edf6ef;--accent:#f6ff00;--success:#087a46;--inset:#f5f8f5;--radius:3px;--shadow:0 8px 28px #034a2e09}
header{border-top:5px solid var(--brand);height:108px;border-bottom-color:var(--line)}
h1,h2,h3{color:var(--brand-dark)}
button,input,select,textarea,.panel,.selected-summary,.test-banner,.login-link{border-radius:3px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--brand-dark)}
.header-tools a{color:var(--brand);font-weight:600}.header-tools .quiet{color:var(--brand-dark);border:1px solid var(--line)}
.primary,.portal-cta{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-dark)}
.portal-hero{background:var(--brand-dark);border-bottom:6px solid var(--accent);padding:44px;margin-bottom:40px;min-height:260px;align-items:center}
.portal-hero h1{color:#fff;max-width:780px;font-size:46px;line-height:1.22}
.portal-hero .eyebrow{color:var(--accent);letter-spacing:0}.portal-hero p{color:#e3f1e6}
.portal-service{border:1px solid var(--line);border-inline-start:5px solid var(--brand);max-width:740px;padding:32px;box-shadow:var(--shadow)}
.portal-service:hover{border-color:var(--brand);background:#f9fcf9}.portal-service h3{font-size:27px}.portal-service .eyebrow{letter-spacing:1px}
.portal-cta{display:inline-block;padding:12px 24px;border-radius:3px;margin-top:12px;min-height:44px}
.pill{background:var(--brand-soft);color:var(--brand-dark);border:0;border-radius:3px}
.error{background:#fff0f1;color:#9d1827}.status.cancelled{background:#fff0f1;color:#9d1827}
.test-banner{background:#fffbe4;border-inline-start:3px solid #c9a52b;color:#665114}
footer{max-width:none;padding:28px max(24px,calc((100vw - 1072px)/2));background:var(--brand-dark);color:#fff;border-top:4px solid var(--accent)}
@media(max-width:800px){.portal-hero{padding:28px;min-height:220px}.portal-hero h1{font-size:34px}header{height:100px}.portal-service{padding:24px}footer{padding:24px 20px}}
@media(max-width:600px){header{height:96px}.portal-hero{padding:24px 20px;margin-bottom:28px}.portal-hero h1{font-size:30px}.portal-service h3{font-size:23px}.portal-service{padding:22px}.portal-cta{display:block;text-align:center}.tabs button.active{background:var(--brand-soft)}}
@media(max-width:600px){.slots{grid-template-columns:repeat(3,minmax(0,1fr))}.slot{min-width:0;padding-inline:6px;font-size:16px}}
.portal-admin-nav{margin-bottom:32px}.booking-admin-section{border-inline-start:3px solid var(--line);padding-inline-start:24px}.booking-admin-section>h2{font-size:22px;margin-bottom:12px}.booking-admin-nav{margin-top:0}.booking-admin-nav button{font-size:14px}@media(max-width:600px){.booking-admin-section{padding-inline-start:12px}.booking-admin-nav{grid-template-columns:1fr}.portal-admin-nav{grid-template-columns:1fr 1fr}}
#security-form{display:grid;gap:18px}#app-enrollment:not(:empty){border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.authenticator-qr{display:block;max-width:100%;height:auto;margin:16px auto}#app-enrollment details{margin:16px 0;overflow-wrap:anywhere}#app-enrollment code{white-space:normal}#confirm-app{margin-top:20px}
@media(max-width:600px){.admin-heading{gap:12px}.admin-heading>div{min-width:0}.admin-heading h1{overflow-wrap:anywhere}.admin-heading>button{flex-shrink:0;padding-inline:12px}}
/* Comfortable reading weights: retain the brand fonts without heavy display bold. */
body{font-weight:400;line-height:1.6}
h1,h2,h3{font-weight:500;letter-spacing:0;line-height:1.35}
button,.header-tools a,.portal-cta,.selected-summary,th,.eyebrow{font-weight:500}
strong,b{font-weight:500}
.portal-hero h1{font-size:40px;line-height:1.35}
.portal-service h3{font-size:24px}
.eyebrow,.portal-service .eyebrow{letter-spacing:0}
.hint{font-size:14px;line-height:1.7}
.field{font-size:15px}
.tabs button{font-weight:400}.tabs button.active{font-weight:500}
@media(max-width:800px){.portal-hero h1{font-size:32px}}
@media(max-width:600px){h1,.portal-hero h1{font-size:28px}.admin-heading h1{font-size:25px}.portal-service h3{font-size:22px}.table-wrap td::before{font-weight:500}}
.account-form{display:grid;gap:20px}.account-form details .form-grid{margin-top:16px}.password-settings{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.password-settings form{margin-top:20px}
#setup-content:not(:empty){margin-top:28px;border-top:1px solid var(--line);padding-top:24px}#setup-content details{margin-block:16px}#setup-content code{white-space:normal;overflow-wrap:anywhere}
