  :root{--brand:#25364a;--brand-text:#fff;--processing:#a9dcf4;--processing-text:#182333;--accent:#f1dce5;--ink:#171717;--muted:#655a63;--paper:#fffefa;--bg:#f7f1f7;--ok:#176b43;--bad:#a12d2d;--line:#e5dce2;--shadow:0 14px 38px rgba(37,54,74,.08)}
  *{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
  body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 55%,transparent),transparent 35%),var(--bg)}
  button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{max-width:1100px;margin:0 auto;padding:24px 18px 56px}
  header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;padding:14px 18px;background:#fff;border-radius:16px}.brand{display:flex;align-items:center;gap:12px;min-height:54px}.brand img{display:block;max-height:54px;max-width:180px}.brand-text{font-size:25px;font-weight:850;letter-spacing:.08em;color:var(--brand)}
  .customer-header,.verification-header,.worker-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.customer-header .brand,.verification-header .brand,.worker-header .brand{justify-self:start}.portal-header-title{justify-self:center;color:var(--muted);font-size:14px;font-weight:400;text-align:center}.language-picker{position:relative;justify-self:end}.language-picker:after{content:"⌄";position:absolute;right:14px;top:50%;transform:translateY(-56%);pointer-events:none;color:#4d4650;font-size:18px}.language-picker select{width:auto;min-width:128px;appearance:none;-webkit-appearance:none;border-color:#ded4dc;border-radius:999px;background:#fff;padding:10px 40px 10px 15px;color:#25364a;box-shadow:0 3px 12px rgba(37,54,74,.07);cursor:pointer}.worker-header #workerIdentity{justify-self:end;text-align:right}
  .subtitle{color:var(--muted);font-size:14px}.panel{background:var(--paper);border:1px solid color-mix(in srgb,var(--brand) 10%,transparent);border-radius:18px;box-shadow:var(--shadow);padding:24px}
  .nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.nav button{border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:999px;color:var(--ink)}.nav button.active{background:var(--brand);border-color:var(--brand);color:var(--brand-text)}
  .view{display:none}.view.active{display:block}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid>*{min-width:0}.grid .wide{grid-column:1/-1}
  label{display:block;font-size:13px;font-weight:700;margin:0 0 7px}.hint{font-size:12px;color:var(--muted);margin-top:5px}input,select,textarea{width:100%;min-width:0;max-width:100%;border:1px solid #d7cac2;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#8ecded;box-shadow:0 0 0 3px rgba(169,220,244,.42)}textarea{min-height:115px;resize:vertical}
  h1{font-size:27px;margin:0 0 7px}h2{font-size:21px;margin:0 0 8px}h3{font-size:16px;margin:20px 0 10px}.lead{color:var(--muted);margin:0 0 22px;line-height:1.55}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.primary,.secondary,.danger{border-radius:10px;padding:11px 17px;font-weight:750}.primary{background:#fff0f6;color:#111;border:1px solid #e3a5c4;box-shadow:0 0 0 3px rgba(241,183,207,.22)}.customer-portal form .actions{margin-top:14px}.customer-portal form .actions>.primary{min-width:112px}.secondary{background:var(--accent);color:var(--ink);border:0}.danger{background:#fee2e2;color:#8d2020;border:0}.primary:disabled,.secondary:disabled,.danger:disabled{opacity:.55;cursor:wait}button[data-processing="true"]{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--processing)!important;color:var(--processing-text)!important;border-color:#8ecded!important;box-shadow:0 0 0 3px rgba(169,220,244,.42)!important;opacity:1!important;cursor:wait}button[data-processing="true"]::before{content:"";width:14px;height:14px;border:2px solid rgba(24,35,51,.3);border-top-color:#182333;border-radius:50%;animation:krust-processing-spin .8s linear infinite}@keyframes krust-processing-spin{to{transform:rotate(360deg)}}
  .details-divider{width:100%;height:1px;border:0;background:var(--line);margin:2px 0 0}.details-fields-lead{color:var(--muted);line-height:1.5;margin:-4px 0 0}
  .customer-verification .email-confirm-action{background:#fee2e2;color:#111;border:0;border-radius:8px;box-shadow:none}.customer-verification .email-confirm-action[data-processing="true"]{border:1px solid #8ecded}
  .notice{display:none;margin:16px 0 0;padding:12px 14px;border-radius:10px;line-height:1.45}.notice.show{display:block}.notice.info,.notice.pending{background:#edf4ff;color:#244970}.notice.success{background:#e9f7ef;color:var(--ok)}.notice.error{background:#fdecec;color:var(--bad);font-weight:700}
  .card{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fff}.cards{display:grid;gap:12px}.customer-portal .check{background:#fbf7fa}.badge{display:inline-block;border-radius:999px;background:var(--accent);padding:4px 9px;font-size:12px;font-weight:750}.badge.status-success{background:#e9f7ef;color:#111}.money{font-variant-numeric:tabular-nums}.hidden{display:none!important}.loading{pointer-events:none}
  .privacy-promise{margin:0 0 18px;padding:14px 16px;border:1px solid #dbe8f2;border-radius:12px;background:#f5faff;color:#25364a;line-height:1.5}.privacy-promise p{margin:6px 0}.privacy-heading-row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.privacy-toggle-separator{margin-left:auto;color:#6f7986}.privacy-footer{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}.privacy-footer .privacy-toggle{margin-left:auto}.privacy-toggle{appearance:none;border:0;background:none;padding:0;color:#255f84;font:inherit;font-weight:400;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.privacy-toggle:hover{text-decoration-thickness:2px}.privacy-toggle:focus-visible{outline:2px solid #8ecded;outline-offset:3px;border-radius:2px}.legal-confirmation{align-items:flex-start}.legal-confirmation input{margin-top:3px;flex:0 0 auto}.legal-confirmation>span{line-height:1.45}.legal-link,.legal-footer a{color:#255f84;text-decoration:underline;text-underline-offset:2px}.legal-footer{margin:18px auto 0;padding:12px 16px;text-align:center;color:#586174;font-size:13px;line-height:1.6}.legal-footer a{white-space:nowrap}.legal-footer .separator{padding:0 7px;color:#8f96a3}
  .rewards-intro{max-width:760px}.rewards-intro .lead{margin-bottom:18px}.rewards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.reward-card{border:1px solid var(--line);border-radius:14px;background:#fbf8fa;padding:18px}.reward-card h2{font-size:18px;color:#25364a}.reward-card p{margin:0;color:var(--muted);line-height:1.6}.rewards-control-note{margin:16px 0 0;color:var(--muted);line-height:1.55}.rewards-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.rewards-action{min-width:170px}.rewards-actions .secondary{background:#25364a;color:#fff;border:1px solid #25364a}.rewards-terms{margin:16px 0 0;font-size:13px}
  .standalone-referral .shell{max-width:720px}.referral-link-view>p{margin:0 0 18px}.referral-earn-reminder{margin:0 0 20px;color:var(--muted);line-height:1.55}.referral-earn-reminder p{margin:0}.referral-earn-reminder strong{color:var(--ink)}.referral-earn-reminder ul{margin:8px 0;padding-left:24px}.referral-earn-reminder li+li{margin-top:4px}.referral-offer{margin:0 0 18px;padding:18px;border:1px solid #dbe8f2;border-radius:14px;background:#f5faff;color:#25364a}.referral-offer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.referral-offer-heading h2{margin:0 0 5px;font-size:21px}.referral-offer-heading p{margin:0;color:var(--muted);line-height:1.5}.referral-code-applied{flex:0 0 auto;border-radius:999px;background:#e9f7ef;color:#111;padding:6px 10px;font-size:12px;font-weight:750;white-space:nowrap}.referral-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.referral-benefits article{border:1px solid #dbe8f2;border-radius:11px;background:#fff;padding:13px}.referral-benefits h3{font-size:15px;margin:0 0 6px}.referral-benefits p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.referral-share-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px}.referral-share-actions .secondary{border:1px solid #ccdce8;background:#fff;padding:9px 13px}.referral-share-status{color:var(--ok);font-size:13px;font-weight:700}
  table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.table-wrap{overflow:auto}
  .inline{display:flex;gap:10px;align-items:end}.inline>*{flex:1;min-width:0}.checkboxes{display:flex;min-width:0;gap:10px;flex-wrap:wrap}.check{display:flex;align-items:center;gap:7px;max-width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.check input{width:auto;margin:0}
  .auth-card{max-width:540px;margin:60px auto;text-align:center}.divider{height:1px;background:var(--line);margin:24px 0}.muted{color:var(--muted)}.right{margin-left:auto}
  .payment-decision,.cancellation-decision{padding:24px;border-width:2px}.payment-decision h2,.cancellation-decision h2{font-size:26px;line-height:1.35}.cancellation-decision{border-color:var(--bad);background:#fff8f8}.cancellation-decision h2{color:var(--bad);font-weight:850}
  .finalized{opacity:.62;pointer-events:none}.benefit-row.unavailable,.benefit-row.conflict-disabled{opacity:.52}.benefit-row input[type="checkbox"]{width:auto}.benefit-row .applied-value{max-width:130px}.benefit-reason{display:block;color:var(--muted);font-size:12px;margin-top:3px}.customer-details{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:6px 14px;max-width:100%;margin:14px 0 0}.customer-details dt{min-width:0;font-weight:750}.customer-details dd{min-width:0;margin:0;overflow-wrap:anywhere}.modal-backdrop{position:fixed;inset:0;z-index:20;background:rgba(41,35,33,.48);display:flex;align-items:center;justify-content:center;padding:18px}.modal-card{width:min(560px,100%);background:var(--paper);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.25);padding:24px}.modal-card h2{margin-bottom:16px}
  @media (prefers-reduced-motion:reduce){button[data-processing="true"]::before{animation:none}}
  @media(max-width:700px){.shell{padding:16px 12px 40px}.panel{min-width:0;padding:18px}.grid{grid-template-columns:minmax(0,1fr)}.grid .wide{grid-column:auto}header{align-items:center;gap:8px;padding:12px 10px}.customer-header,.verification-header,.worker-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.customer-header .portal-header-title,.verification-header .portal-header-title,.worker-header .portal-header-title{grid-column:auto;grid-row:auto;margin-top:0;line-height:1.2}.customer-header .brand,.verification-header .brand,.worker-header .brand{min-width:0}.customer-header .brand img,.verification-header .brand img,.worker-header .brand img{max-width:100%;max-height:46px}.language-picker{min-width:0;width:100%;max-width:108px}.language-picker select{width:100%;min-width:0;padding:9px 30px 9px 11px}.language-picker:after{right:10px}.worker-header #workerIdentity{min-width:0;overflow-wrap:anywhere;font-size:12px}.inline{display:grid;grid-template-columns:minmax(0,1fr)}.inline>*{width:100%}.right{margin-left:0}.rewards-grid,.referral-benefits{grid-template-columns:minmax(0,1fr)}.reward-card{padding:15px}.referral-offer-heading{display:block}.referral-code-applied{display:inline-block;margin-top:10px}.rewards-actions{display:grid;grid-template-columns:minmax(0,1fr)}.rewards-action{width:100%}.customer-details{grid-template-columns:minmax(115px,42%) minmax(0,1fr);gap:7px 10px}.benefit-table{width:100%;table-layout:fixed;font-size:12px}.benefit-table th,.benefit-table td{padding:8px 5px;overflow-wrap:anywhere}.benefit-table th:nth-child(1),.benefit-table td:nth-child(1){width:43%}.benefit-table th:nth-child(2),.benefit-table td:nth-child(2){width:25%}.benefit-table th:nth-child(3),.benefit-table td:nth-child(3){width:10%;text-align:center}.benefit-table th:nth-child(4),.benefit-table td:nth-child(4){width:22%}.benefit-row .applied-value{width:100%;max-width:100%;padding:8px 6px}.benefit-reason{font-size:11px}}
  @media(max-width:600px){.customer-portal form .actions>button,.customer-verification #confirmActions .primary{width:100%}}
  @media(max-width:420px){.shell{padding-inline:8px}.panel{padding:16px}.nav{gap:6px}.nav button{padding:9px 12px}.portal-header-title{font-size:13px}.language-picker select{padding-left:9px;padding-right:27px}.language-picker:after{right:8px}}
  .privacy-heading-row .privacy-toggle{margin-left:auto}
