/* Tarleaks public site: styles only the Partner Program pages need (/partners/ and /ar/partners/).
   Loaded after site.css through head_extra (scripts/site/pages/partners.py), with ?v=<content hash>.
   Rules: tokens from site.css only (no hex, no px font stacks); logical properties only, so the same rules mirror under
   dir="rtl"; the page reads without JavaScript, so every enhancement hangs off .is-steps, which partners.js adds. */
@layer components{

/* `hidden` must win over the display rules below and in site.css (.btn, .field, ...). */
.pt-form [hidden],.pt-thanks [hidden]{display:none!important}

/* ------------------------------------------------------------------ hero */
.pt-hero{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;margin-block:var(--s-4) var(--s-4)}
.pt-hero__main > * + *{margin-block-start:var(--s-3)}
.pt-hero__main h1{margin:0}
.pt-hero__main .lead{max-inline-size:56ch;margin-block-end:0}
.pt-hero--track h1{font-size:clamp(30px,3.6vw,46px)}
html[lang="ar"] .pt-hero--track h1{font-size:clamp(30px,3.6vw,44px)}
.pt-hero__panel{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-5)}
.pt-cap{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:0 0 var(--s-3)}
html[lang="ar"] .pt-cap{text-transform:none;letter-spacing:0;font-size:13.5px}
.pt-quick{list-style:none;display:grid}
.pt-quick li{display:grid;padding-block:var(--s-2);border-block-end:1px solid var(--border)}
.pt-quick li:last-child{border-block-end:0}
.pt-quick a{display:flex;align-items:center;min-block-size:var(--target);font-weight:650}
.pt-quick span{color:var(--text-3);font-size:14.5px;line-height:1.5;padding-block-end:var(--s-1)}
.pt-glance{display:grid;gap:var(--s-3)}
.pt-glance dt{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}
html[lang="ar"] .pt-glance dt{text-transform:none;letter-spacing:0;font-size:13.5px}
.pt-glance dd{margin:2px 0 0;color:var(--text);font-size:15.5px;line-height:1.55}

/* ------------------------------------------------------- overview blocks */
.pt-reasons,.pt-benefits,.pt-levels{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-block:var(--s-4)}
.pt-reason{padding-block-start:var(--s-3);border-block-start:3px solid var(--brand)}
.pt-reason h3,.pt-benefit h3{margin:0 0 var(--s-2);font-size:18px}
.pt-reason p{font-size:15.5px}
.pt-benefit{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4)}
.pt-benefit ul.feats{margin:0}
.pt-benefit ul.feats li{font-size:15px;padding-inline-start:26px}
.pt-level{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4) var(--s-4) var(--s-5);background:var(--bg)}
.pt-level--founding{border-color:var(--brand);background:var(--brand-soft)}
.pt-level h3{margin:var(--s-2) 0 var(--s-2)}
.pt-level dt{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin-block-start:var(--s-3)}
html[lang="ar"] .pt-level dt{text-transform:none;letter-spacing:0;font-size:13.5px}
.pt-level dd{margin:2px 0 0;color:var(--text-2);font-size:15.5px}
.pt-badge{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;line-height:1.5;padding:2px 10px;border-radius:var(--r-pill);
  background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}
.pt-level--founding .pt-badge{background:var(--brand);color:var(--on-brand);border-color:transparent}
.pt-band{margin-block:var(--s-7) var(--s-4);padding:var(--s-5);border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--border)}
.pt-band h2,.pt-note h2{margin:0 0 var(--s-2)}
.pt-note{margin-block:var(--s-6) var(--s-4)}
table.pt-compare{min-inline-size:980px}
table.pt-compare :is(th,td){font-size:14.5px;line-height:1.5}
table.compare.pt-compare tbody th{min-inline-size:120px}

/* the track comparison: cards + table on wide screens, one accordion per track on phones */
.pt-only-narrow{display:none}
.pt-acc{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);margin-block-end:var(--s-3)}
.pt-acc > summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-block-size:var(--target);
  padding:12px var(--s-4);font-weight:700;color:var(--text)}
.pt-acc > summary::-webkit-details-marker{display:none}
.pt-acc > summary::after{content:"+";flex:none;font-size:22px;line-height:1;color:var(--text-3);font-weight:400}
.pt-acc[open] > summary::after{content:"−"}
.pt-acc__body{padding:0 var(--s-4) var(--s-4)}
.pt-acc__body > p:first-child{margin:0 0 var(--s-3)}

/* ---------------------------------------------------------- track pages */
.pt-cols{display:grid;gap:var(--s-6) var(--s-7);grid-template-columns:repeat(2,minmax(0,1fr));margin-block:var(--s-6) var(--s-4)}
.pt-col h2{font-size:clamp(21px,2vw,26px);margin:0 0 var(--s-3)}
.pt-col ul{margin:0}
.pt-earn{margin-block:var(--s-5);padding:var(--s-5);border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--border)}
.pt-earn h2{margin:0 0 var(--s-2)}
.pt-terms{display:grid;margin-block-start:var(--s-3)}
.pt-term{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-1) var(--s-4);padding-block:var(--s-3);border-block-start:1px solid var(--border)}
.pt-term dt{font-weight:650;color:var(--text)}
.pt-term dd{margin:0;color:var(--text-2)}
ol.steps .pt-st{display:block;font-weight:700;color:var(--text)}
ol.steps li > p{margin:2px 0 0}

/* ------------------------------------------------------- the apply form */
.form.pt-form{max-inline-size:720px;margin-block:var(--s-5)}
.pt-form fieldset{border:0;padding:0;margin:0;min-inline-size:0}
.pt-step > * + *{margin-block-start:var(--s-4)}
.pt-step + .pt-step{margin-block-start:var(--s-7);padding-block-start:var(--s-6);border-block-start:1px solid var(--border)}
.pt-legend{float:none;inline-size:100%;padding:0;margin:0 0 var(--s-4);font-size:var(--fs-h3);font-weight:700;line-height:1.3;color:var(--text)}
html[lang="ar"] .pt-legend{line-height:1.5}
.pt-form.is-steps .pt-step{margin-block-start:0;padding-block-start:0;border-block-start:0}
.pt-form.is-steps .pt-step:not(.is-current){display:none}
.pt-hint{margin:0;font-size:14px;color:var(--text-3)}
.pt-err{margin:0;font-size:14.5px;font-weight:600;color:var(--danger-text)}
.field .pt-check{display:flex;gap:var(--s-3);align-items:flex-start}
.field .pt-check input{flex:none;inline-size:22px;block-size:22px;margin:3px 0 0;accent-color:var(--brand)}
.field .pt-check label{font-weight:400;font-size:15.5px;color:var(--text-2)}
select.field-input{appearance:auto;padding-inline-end:var(--s-3)}

/* track radio cards */
.pt-choices{display:grid;gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.pt-choice{position:relative;display:block}
.pt-choice input{position:absolute;inset:0;z-index:1;inline-size:100%;block-size:100%;margin:0;opacity:0;cursor:pointer}
.pt-choice__body{position:relative;display:grid;gap:4px;align-content:start;min-block-size:88px;padding:var(--s-4);padding-inline-start:calc(var(--s-4) + 30px);
  border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg);
  transition:border-color var(--dur-1) var(--ease),background var(--dur-1) var(--ease)}
.pt-choice__body::before{content:"";position:absolute;inset-inline-start:var(--s-4);inset-block-start:calc(var(--s-4) + 3px);inline-size:18px;block-size:18px;
  border:2px solid var(--text-3);border-radius:50%;background:var(--bg)}
.pt-choice__body b{color:var(--text);font-weight:700;line-height:1.35}
.pt-choice__body span{font-size:14.5px;line-height:1.5;color:var(--text-3)}
.pt-choice:hover .pt-choice__body{border-color:var(--brand)}
.pt-choice input:checked + .pt-choice__body{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}
.pt-choice input:checked + .pt-choice__body::before{border-color:var(--brand);background:radial-gradient(circle,var(--brand) 0 45%,var(--bg) 50%)}
.pt-choice input:focus-visible + .pt-choice__body{outline:3px solid var(--focus);outline-offset:2px}

/* progress indicator (C54) and the error summary */
.pt-progress{list-style:none;display:flex;gap:var(--s-2);margin:0 0 var(--s-5);padding:0}
.pt-progress li{flex:1 1 0;min-inline-size:0;display:flex;align-items:center;gap:var(--s-2);padding-block:var(--s-2);border-block-end:3px solid var(--border);
  color:var(--text-3);font-size:14.5px;font-weight:600;line-height:1.35}
.pt-progress li[aria-current="step"]{border-block-end-color:var(--brand);color:var(--text)}
.pt-progress li[data-done]{border-block-end-color:var(--success-text);color:var(--text-2)}
.pt-progress__n{flex:none;display:inline-flex;align-items:center;justify-content:center;inline-size:26px;block-size:26px;border-radius:50%;
  background:var(--surface-2);color:var(--text-2);font-size:13.5px;font-weight:700}
.pt-progress li[aria-current="step"] .pt-progress__n{background:var(--brand);color:var(--on-brand)}
.pt-progress li[data-done] .pt-progress__n{background:var(--success-text);color:var(--bg);font-size:0}
.pt-progress li[data-done] .pt-progress__n::after{content:"✓";font-size:14px}
.pt-progress__t{overflow-wrap:anywhere}
.pt-summary{padding:var(--s-4);border:2px solid var(--danger-text);border-radius:var(--r-md);background:var(--danger-soft);margin-block-end:var(--s-4)}
.pt-summary p{margin:0 0 var(--s-2);font-weight:700;color:var(--text)}
.pt-summary ul{margin:0;padding-inline-start:22px}
.pt-summary a{color:var(--text)}
.pt-actions{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center;margin-block-start:var(--s-5)}
.pt-draft{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-1) var(--s-3);margin:0}
.pt-draft .btn--tertiary{margin-inline-start:-6px}
.pt-needjs{font-weight:600;color:var(--text-2)}

/* ------------------------------------------------------------ thank-you */
.pt-ref{margin-block:var(--s-5);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);max-inline-size:520px}
.pt-ref__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin:0}
.pt-ref__id{font-family:var(--font-mono);font-size:20px;color:var(--text);unicode-bidi:isolate;overflow-wrap:anywhere}

/* ----------------------------------------------------------------- small */
@media (max-width:900px){
  .pt-hero,.pt-cols{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:719.98px){
  .pt-only-wide{display:none}
  .pt-only-narrow{display:block}
  .pt-hero--home .pt-hero__panel{display:none}   /* the four tracks are one tap away (Compare the four tracks) */
  .pt-hero__panel,.pt-earn,.pt-band{padding:var(--s-4)}
  .pt-progress{gap:var(--s-1)}
  .pt-progress li{flex-direction:column;align-items:flex-start;gap:var(--s-1)}
  .pt-actions .btn{flex:1 1 140px}
}
}
