/* ATHRTY XPROD-021 — Product Foundry experience, presentation only.
   Builds on XPROD-002; no persistence, checkout, permission or approval logic changes. */
.xprod002-dialog{
  --foundry-bg:#101613;--foundry-surface:#19211d;--foundry-surface-hover:#222E2C;
  --foundry-ink:#f5f5f0;--foundry-muted:#ADBAB8;--foundry-line:rgba(222,235,233,.17);
  --foundry-accent:var(--athrty-brand-primary);--foundry-gold:#b9a888;
  width:min(760px,calc(100vw - 32px));max-height:min(90dvh,930px);
  border:1px solid #465653;border-radius:25px;
  background:var(--foundry-bg);color:var(--foundry-ink);color-scheme:dark;
  box-shadow:0 44px 120px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.04);
  font-family:var(--athrty-ui-font,Inter,system-ui,sans-serif);
  overscroll-behavior:contain
}
:root[data-athrty-appearance="light"] .xprod002-dialog{
  background:var(--foundry-bg);color:var(--foundry-ink);color-scheme:dark;border-color:#465653
}
.xprod002-dialog::backdrop{background:rgba(2,7,6,.78);backdrop-filter:blur(14px) saturate(.72)}
.xprod002-dialog .xprod002-shell{position:relative;padding:40px}
.xprod002-dialog .xprod002-kicker{font-size:10px;letter-spacing:.19em;font-weight:750;color:var(--foundry-gold)}
.xprod002-dialog .xprod002-top h2{font-weight:580;letter-spacing:-.067em;line-height:1.01;font-size:clamp(32px,4vw,47px);color:var(--foundry-ink);margin:17px 0 16px;max-width:620px;text-wrap:balance}
.xprod002-dialog .xprod002-top p{font-size:14px;line-height:1.62;color:var(--foundry-muted);max-width:500px}
.xprod002-dialog .xprod002-close{position:absolute;top:22px;right:22px;z-index:3;
  width:44px;height:44px;border-radius:50%;border:1px solid var(--foundry-line);
  color:var(--foundry-ink);background:rgba(11,16,13,.74);font-size:24px;
  transition:background .2s ease,transform .2s ease}
.xprod002-dialog .xprod002-close:hover{background:rgba(227,244,241,.15);transform:rotate(90deg)}
.xprod002-dialog .xprod002-top{padding-right:40px}
.xprod002-dialog[data-step="choose"]{width:min(1010px,calc(100vw - 32px));}
.xprod002-dialog[data-step="choose"] .xprod002-shell{
  display:grid;grid-template-columns:minmax(300px,.83fr) minmax(0,1.2fr);
  grid-template-rows:minmax(0,1fr) auto;padding:0;min-height:570px;
}
.xprod002-dialog[data-step="choose"] .xprod002-top{
  grid-column:1;grid-row:1/3;display:flex;position:relative;overflow:hidden;
  flex-direction:column;align-items:flex-start;justify-content:center;
  padding:72px 42px 50px;margin:0;min-width:0;isolation:isolate;
  border-right:1px solid rgba(212,229,226,.16);
  background:radial-gradient(ellipse at 10% 0%,rgba(169,200,194,.19),transparent 48%),
    radial-gradient(ellipse at 90% 100%,rgba(140,160,156,.13),transparent 52%),#121a16;
}
.xprod002-dialog[data-step="choose"] .xprod002-top::before{
  content:"";position:absolute;width:300px;height:300px;border-radius:50%;
  border:1px solid rgba(214,232,229,.17);right:-146px;top:-148px;z-index:-1;
  box-shadow:0 0 0 42px rgba(214,232,229,.025),0 0 0 95px rgba(214,232,229,.014)
}
.xprod002-dialog[data-step="choose"] .xprod002-top::after{
  content:"";position:absolute;left:42px;bottom:42px;width:95px;height:1px;
  background:linear-gradient(90deg,var(--foundry-gold),transparent);opacity:.78
}
.xprod002-dialog[data-step="choose"] .xprod002-top>div{position:relative;z-index:1}
.xprod002-dialog[data-step="choose"] .xprod002-top h2{
  font-size:clamp(43px,4.1vw,58px);margin:25px 0 22px;max-width:335px;
  letter-spacing:-.077em;line-height:1.02
}
.xprod002-dialog[data-step="choose"] .xprod002-top p{max-width:300px;font-size:14px;line-height:1.85}
.xprod002-dialog[data-step="choose"] .xprod002-body{grid-column:2;grid-row:1;padding:64px 35px 12px;min-width:0}
.xprod002-choice-intro{margin:0 0 25px}
.xprod002-section-label{display:block;color:var(--foundry-gold);font-size:10px;font-weight:760;letter-spacing:.17em}
.xprod002-choice-intro-title{color:var(--foundry-ink);font-size:25px;line-height:1.1;letter-spacing:-.05em;font-weight:620;margin:12px 0 8px}
.xprod002-choice-intro-sub{font-size:12.5px;line-height:1.6;color:var(--foundry-muted);max-width:370px;margin:0}
.xprod002-dialog .xprod002-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.xprod002-dialog .xprod002-type{
  position:relative;min-width:0;min-height:188px;padding:20px;display:flex;
  flex-direction:column;justify-content:space-between;align-items:flex-start;gap:22px;
  border:1px solid var(--foundry-line);border-radius:17px;cursor:pointer;
  color:var(--foundry-ink);text-align:left;isolation:isolate;overflow:hidden;
  background:linear-gradient(155deg,rgba(211,236,232,.075),transparent 58%),var(--foundry-surface);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:transform .25s cubic-bezier(.22,1,.36,1),border-color .22s,background .22s,box-shadow .22s
}
.xprod002-dialog .xprod002-type::after{
  content:"";position:absolute;inset:auto -30% -100% 15%;height:100%;
  border-radius:50%;background:radial-gradient(ellipse,rgba(209,237,232,.13),transparent 70%);
  pointer-events:none;transition:transform .35s ease
}
.xprod002-dialog .xprod002-type:hover{
  transform:translateY(-3px);background:linear-gradient(155deg,rgba(211,236,232,.10),transparent 68%),var(--foundry-surface-hover);
  border-color:rgba(211,236,232,.58);box-shadow:0 16px 36px rgba(0,0,0,.2)
}
.xprod002-dialog .xprod002-type:hover::after{transform:translateY(-16px)}
.xprod002-card-top{display:flex;width:100%;justify-content:space-between;align-items:start;gap:8px}
.xprod002-card-icon{width:47px;height:47px;border-radius:13px;display:grid;place-items:center;
  color:var(--foundry-accent);background:rgba(212,233,229,.07);border:1px solid rgba(212,233,229,.15)
}
.xprod002-card-icon svg{width:26px;height:26px}
.xprod002-card-tag{font-size:8.5px;letter-spacing:.13em;font-weight:730;color:var(--foundry-gold);text-align:right;line-height:1.5;padding-top:3px}
.xprod002-card-copy{display:grid;gap:8px;position:relative;z-index:1}
.xprod002-dialog .xprod002-type strong{font-size:20px;font-weight:620;letter-spacing:-.045em;line-height:1.12;color:var(--foundry-ink)}
.xprod002-dialog .xprod002-type small{font-size:12px;color:var(--foundry-muted);line-height:1.55;font-weight:420;max-width:235px}
.xprod002-dialog[data-step="choose"] .xprod002-feedback{
  grid-column:2;grid-row:2;padding:16px 35px 28px;margin:0;min-height:auto;
  color:#B9C2C0;font-size:9px;font-weight:690;letter-spacing:.12em
}
.xprod002-dialog .xprod002-modes{gap:8px}
.xprod002-dialog .xprod002-mode{border-radius:999px;min-height:44px;border-color:var(--foundry-line);color:var(--foundry-muted);background:#1A2321}
.xprod002-dialog .xprod002-mode[aria-pressed="true"]{background:var(--foundry-accent);color:#101713;border-color:var(--foundry-accent)}
.xprod002-dialog .xprod002-field{color:#DDE7E5;gap:9px;font-size:12px}
.xprod002-dialog .xprod002-field :is(input,textarea,select),
.xprod002-dialog .xprod002-commercial select{
  background:#1B2422;color:var(--foundry-ink);border:1px solid #4B5B58;border-radius:14px;
  min-height:48px;font-size:14px;padding:13px 15px;outline-offset:2px
}
.xprod002-dialog .xprod002-field :is(input,textarea)::placeholder{color:#94A9A5}
.xprod002-dialog .xprod002-consent{color:#C7D3D1}
.xprod002-dialog .xprod002-button,.xprod002-dialog .xprod002-submit{
  border-radius:999px;min-height:46px;padding:12px 22px;
  background:var(--foundry-accent);color:#121B19;border:1px solid var(--foundry-accent);
  font-size:13px;font-weight:750
}
.xprod002-dialog .xprod002-actions .xprod002-button:first-child:not(:last-child),
.xprod002-dialog .xprod002-form>.xprod002-button{
  background:#1c241f;color:#e1e9e2;border-color:#5A6D6A
}
.xprod002-dialog .xprod002-hint{color:var(--foundry-muted)}
.xprod002-dialog .xprod002-upload,.xprod002-dialog .xprod002-saved,
.xprod002-dialog .xprod002-commercial{background:#1B2422;border:1px solid var(--foundry-line);border-radius:17px}
.xprod002-dialog .xprod002-saved h3,.xprod002-dialog .xprod002-commercial h3{color:var(--foundry-ink)}
.xprod002-dialog .xprod002-upload p,.xprod002-dialog .xprod002-saved p{color:var(--foundry-muted)}
.xprod002-dialog .xprod002-feedback,.xprod002-dialog .xprod002-inline{color:#c4b796}
.xprod002-dialog .xprod002-outline-link{color:var(--foundry-accent);border-color:#5A6D6A;border-radius:999px}
.xprod002-dialog :is(button,input,select,textarea,a):focus-visible{
  outline:3px solid #C9EAE4;outline-offset:3px
}
@media(max-width:810px){
  .xprod002-dialog[data-step="choose"] .xprod002-shell{grid-template-columns:1fr;min-height:0}
  .xprod002-dialog[data-step="choose"] .xprod002-top{
    grid-column:1;grid-row:1;min-height:260px;border-right:0;
    border-bottom:1px solid var(--foundry-line);padding:52px 32px 32px
  }
  .xprod002-dialog[data-step="choose"] .xprod002-top h2{max-width:500px;font-size:clamp(35px,7vw,48px);margin:13px 0}
  .xprod002-dialog[data-step="choose"] .xprod002-top p{max-width:470px;line-height:1.55}
  .xprod002-dialog[data-step="choose"] .xprod002-top::after{display:none}
  .xprod002-dialog[data-step="choose"] .xprod002-body{grid-column:1;grid-row:2;padding:25px 28px 5px}
  .xprod002-dialog[data-step="choose"] .xprod002-feedback{grid-column:1;grid-row:3;padding:20px 28px 26px}
}
@media(max-width:540px){
  .xprod002-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:21px}
  .xprod002-dialog .xprod002-shell{padding:25px 20px}
  .xprod002-dialog .xprod002-close{top:13px;right:13px}
  .xprod002-dialog .xprod002-top{padding-right:34px}
  .xprod002-dialog[data-step="choose"] .xprod002-top{padding:45px 24px 24px;min-height:220px}
  .xprod002-dialog[data-step="choose"] .xprod002-top h2{font-size:35px;max-width:290px}
  .xprod002-dialog[data-step="choose"] .xprod002-body{padding:25px 17px 0}
  .xprod002-choice-intro{margin-bottom:17px}
  .xprod002-choice-intro-title{font-size:22px}
  .xprod002-dialog .xprod002-types{grid-template-columns:1fr;gap:9px}
  .xprod002-dialog .xprod002-type{min-height:112px;padding:16px;flex-direction:row;align-items:center;gap:15px}
  .xprod002-card-top{width:auto;flex:0 0 43px}
  .xprod002-card-icon{width:43px;height:43px}
  .xprod002-card-tag{display:none}
  .xprod002-card-copy{gap:5px}
  .xprod002-dialog .xprod002-type strong{font-size:18px}
  .xprod002-dialog .xprod002-type small{font-size:11.5px}
  .xprod002-dialog[data-step="choose"] .xprod002-feedback{padding:18px 18px 23px;line-height:1.6}
}
@media(prefers-reduced-motion:reduce){
  .xprod002-dialog .xprod002-type,.xprod002-dialog .xprod002-close{transition:none}
  .xprod002-dialog .xprod002-type:hover,.xprod002-dialog .xprod002-close:hover{transform:none}
}