/* Public Paper / Ink template for documents and identity doors.
   It does not change the shared application frame or the Landing candidate. */
html body.dt.public{
  background:var(--paper);
  background-image:none;
  color:var(--ink);
  font-family:var(--body);
  font-weight:400;
}

/* Content and mode behavior stay in the HTML; the shared sheet only
   replaces the old drafting-board presentation. */
html body.dt.public{font-size:16px;line-height:1.6}
html body.dt.public .dt-sheet,
html body.dt.public .dt-cells,
html body.dt.public .dt-dim,
html body.dt.public .dt-dims,
html body.dt.public .dt-read,
html body.dt.public .dt-follow{display:none}
html body.dt.public .dt-page{
  width:min(100%,1040px);
  max-width:none;
  min-height:100vh;
  padding:clamp(20px,4vw,44px);
  gap:0;
}
html body.dt.public .dt-top{
  align-items:center;
  flex-wrap:nowrap;
  padding:0 0 14px;
  border-bottom:1px solid var(--line-soft);
}
html body.dt.public .dt-top .eyebrow{
  color:var(--muted);
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.12em;
}
html body.dt.public .dt-tog{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  padding:0;
  border:1px solid var(--line);
  border-radius:var(--r-btn);
  background:transparent;
  color:var(--ink);
  cursor:pointer;
}
html body.dt.public .dt-tog:hover{background:var(--card)}
html body.dt.public .dt-tog svg{width:19px;height:19px}
html body.dt.public .dt-tog .dt-icon-day{display:none}
html[data-mode="dusk"] body.dt.public .dt-tog .dt-icon-day{display:block}
html[data-mode="dusk"] body.dt.public .dt-tog .dt-icon-dusk{display:none}
html body.dt.public #vc-pill{display:none!important}
html body.dt.public .dt-block{border:0}
html body.dt.public .dt-block-main{
  align-items:center;
  gap:12px;
  padding:30px 0 22px;
}
html body.dt.public .dt-markwrap{width:34px;flex-basis:34px}
html body.dt.public .dt-mark{width:34px;height:34px;color:var(--accent)}
html body.dt.public .dt-mark :is(.dt-axis,.dt-ray,.dt-rcap,.dt-xdot,.dt-dot,.dt-sat,.dt-plot){display:none}
html body.dt.public .dt-wordwrap{padding:0}
html body.dt.public .dt-wm{
  color:var(--ink);
  font:600 23px/1 var(--font-display,Outfit,sans-serif);
  letter-spacing:.18em;
}
html body.dt.public .dt-strap{
  margin-top:5px;
  color:var(--muted);
  font:400 9px var(--mono);
  letter-spacing:.11em;
}
html body.dt.public .dt-body{
  display:block;
  width:min(100%,780px);
  padding:0;
}
html body.dt.public .dt-claim{max-width:680px;text-align:left}
html body.dt.public .dt-claim .eyebrow{
  color:var(--accent);
  font:500 11px var(--mono);
  letter-spacing:.12em;
}
html body.dt.public .dt-claim h1{
  margin:12px 0 12px;
  color:var(--ink);
  font:500 clamp(36px,5vw,54px)/1.08 var(--body);
  letter-spacing:-.035em;
  text-wrap:balance;
}
html body.dt.public .dt-lede{
  max-width:58ch;
  margin:0;
  color:var(--ink-soft);
  font-size:17px;
  line-height:1.55;
}
html body.dt.public .dt-doc{
  width:100%;
  max-width:none;
  margin:32px 0 0;
  padding:clamp(24px,4vw,44px);
  border:1px solid var(--card-edge);
  border-radius:var(--r-card);
  background:var(--card);
  box-shadow:none;
}
html body.dt.public .dt-doc h2{
  margin:30px 0 12px;
  padding:22px 0 0;
  border-top:1px solid var(--line-soft);
  color:var(--ink);
  font:500 21px/1.3 var(--body);
  letter-spacing:-.015em;
}
html body.dt.public .dt-doc h2:first-of-type{margin-top:0;padding-top:0;border:0}
html body.dt.public .dt-doc :is(p,ul,table){font-size:14px;line-height:1.65}
html body.dt.public .dt-doc p{margin-bottom:16px;color:var(--ink-soft)}
html body.dt.public .dt-doc p.lede{font-size:16px;color:var(--ink)}
html body.dt.public .dt-doc ul{margin:0 0 18px;padding-left:23px;color:var(--ink-soft)}
html body.dt.public .dt-doc li{margin-bottom:8px}
html body.dt.public .dt-doc strong{font-weight:600;color:var(--ink)}
html body.dt.public .dt-doc th{
  padding:11px 12px 11px 0;
  border-bottom:1px solid var(--line);
  color:var(--ink);
  font:500 11px var(--mono);
  text-align:left;
}
html body.dt.public .dt-doc td{
  padding:12px 12px 12px 0;
  border-bottom:1px solid var(--line-soft);
  color:var(--ink-soft);
  vertical-align:top;
}
html body.dt.public .dt-doc td:first-child{font-weight:500;color:var(--ink)}
html body.dt.public .dt-updated{
  margin-top:28px;
  padding-top:14px;
  border-top:1px solid var(--line-soft);
  color:var(--muted);
  font:400 10px var(--mono);
  letter-spacing:.1em;
}
html body.dt.public .dt-foot{
  margin-top:auto;
  padding:30px 0 0;
  border-top:0;
  align-items:center;
  gap:16px;
  color:var(--ink-soft);
}
html body.dt.public .dt-foot .eyebrow{
  font:400 10px var(--mono);
  letter-spacing:.07em;
}
html body.dt.public .dt-foot b{font-weight:600}
html body.dt.public :is(.dt-doc,.dt-foot) a{
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
html body.dt.public a:focus-visible,
html body.dt.public button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
}

/* Login and Apply use the same outer public sheet. The form is a quiet
   right-hand plane, while the copy retains the single page title. */
html body.dt.public.identity .dt-page{width:min(100%,1120px)}
html body.dt.public.identity .dt-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,430px);
  align-items:start;
  column-gap:clamp(48px,8vw,112px);
  width:100%;
  padding:clamp(30px,6vw,76px) 0 72px;
}
html body.dt.public.identity .dt-claim{padding-top:24px}
html body.dt.public.identity .dt-claim h1{
  max-width:12ch;
  margin:15px 0 18px;
  font-size:clamp(42px,5.5vw,66px);
}
html body.dt.public.identity .dt-lede{
  max-width:43ch;
  font-size:16px;
}
html body.dt.public.identity .dt-doors{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
}
html body.dt.public.identity .dt-door{
  width:100%;
  max-width:none;
  margin:0;
  padding:30px;
  border:1px solid var(--card-edge);
  border-radius:var(--r-card);
  background:var(--card);
  box-shadow:none;
}
html body.dt.public.identity .dt-dhd{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin:0 0 28px;
  padding:0 0 14px;
  border-bottom:1px solid var(--line-soft);
}
html body.dt.public.identity .dt-dhd .eyebrow{
  color:var(--ink);
  font:500 10px var(--mono);
  letter-spacing:.11em;
  text-transform:uppercase;
}
html body.dt.public.identity .dt-dhd .quiet{color:var(--muted)}
html body.dt.public.identity .dt-note{
  margin:20px 0 0;
  color:var(--ink-soft);
  font-size:13px;
  line-height:1.55;
}
html body.dt.public.identity .dt-note a{
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
html body.dt.public.identity .boot-loading{color:var(--muted)}
html body.dt.public.identity .dt-cell{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0 0 20px;
  padding:0;
  border:0;
  background:none;
}
html body.dt.public.identity .dt-label,
html body.dt.public.identity #clerk-signin .cl-formFieldLabel{
  color:var(--ink-soft);
  font:500 11px var(--mono);
  letter-spacing:.03em;
}
html body.dt.public.identity .dt-cell input,
html body.dt.public.identity #clerk-signin .cl-formFieldInput,
html body.dt.public.identity #clerk-signin .cl-otpCodeFieldInput{
  min-height:46px;
  padding:11px 13px !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r-field) !important;
  background:var(--inset) !important;
  color:var(--ink) !important;
  font:400 15px var(--body) !important;
  box-shadow:none !important;
}
html body.dt.public.identity .dt-cell input::placeholder,
html body.dt.public.identity #clerk-signin input::placeholder{
  color:var(--muted) !important;
}
html body.dt.public.identity .dt-cell input:focus,
html body.dt.public.identity #clerk-signin .cl-formFieldInput:focus,
html body.dt.public.identity #clerk-signin .cl-otpCodeFieldInput:focus{
  border-color:var(--accent) !important;
  outline:2px solid var(--accent);
  outline-offset:2px;
}
html body.dt.public.identity .dt-go,
html body.dt.public.identity #clerk-signin .cl-formButtonPrimary{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  padding:12px 16px;
  border:1px solid var(--accent);
  border-radius:var(--r-btn) !important;
  background:var(--accent);
  color:var(--on-accent);
  font:500 14px var(--body);
  letter-spacing:0;
  text-transform:none;
  box-shadow:none;
  cursor:pointer;
}
html body.dt.public.identity .dt-go:hover,
html body.dt.public.identity #clerk-signin .cl-formButtonPrimary:hover{
  filter:brightness(1.1);
}
html body.dt.public.identity .dt-go:disabled{opacity:.55;cursor:wait}
html body.dt.public.identity .ap-error:not(:empty),
html body.dt.public.identity #clerk-signin .cl-formFieldErrorText{
  margin:0 0 14px;
  color:var(--warn);
  font-size:13px;
}
html body.dt.public.identity #clerk-signin .cl-card,
html body.dt.public.identity #clerk-signin .cl-main{
  width:100%;
  padding:0;
  border:0;
  background:none;
  box-shadow:none;
}
html body.dt.public.identity #clerk-signin .cl-formField{
  padding:0;
  border:0;
  background:none;
}
html body.dt.public.identity .ap-check{
  border-color:var(--accent);
  color:var(--accent);
}
html body.dt.public.identity .ap-done h2{color:var(--ink)}

@media (max-width:760px){
  html body.dt.public.identity .dt-body{
    grid-template-columns:1fr;
    gap:30px;
    padding:20px 0 56px;
  }
  html body.dt.public.identity .dt-claim{padding-top:0}
  html body.dt.public.identity .dt-claim h1{font-size:clamp(38px,8vw,54px)}
  html body.dt.public.identity .dt-door{padding:24px}
}

@media (max-width:640px){
  html body.dt.public .dt-page{padding:18px}
  html body.dt.public .dt-block-main{padding:22px 0}
  html body.dt.public .dt-doc{padding:22px 18px}
  html body.dt.public .dt-doc table{display:block;overflow-x:auto}
  html body.dt.public .dt-doc td:first-child{white-space:normal}
  html body.dt.public .dt-foot{flex-wrap:wrap;padding:30px 0 12px}
  html body.dt.public.identity .dt-door{padding:22px 18px}
}
@media (prefers-reduced-motion:reduce){
  html body.dt.public .dt-mark *,
html body.dt.public .dt-dims{animation:none}
}
