/* Data-room gate — locked-section cards + identification modal.
   Non-sensitive: this only renders the gate and calls /api/dataroom.
   The protected content is served by the Function, never shipped in the page. */

.dr-slot{margin:0;}

.dr-lock{
  border:1px solid var(--bone,#e8e2d5);
  background:linear-gradient(180deg,rgba(255,255,255,.4),rgba(243,239,231,.55));
  padding:46px 30px;text-align:center;border-radius:3px;
}
.dr-lock__eyebrow{
  font:600 11px/1.4 var(--ui,Inter),sans-serif;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--coral,#e35063);margin:0 0 14px;
}
.dr-lock__title{
  font-family:var(--serif,'Cormorant Garamond'),serif;
  font-weight:500;font-size:27px;line-height:1.15;
  margin:0 0 12px;color:var(--ink,#0a0908);
}
.dr-lock__desc{
  font:400 15.5px/1.62 var(--ui,Inter),sans-serif;
  color:var(--stone,#6b6660);margin:0 auto 24px;max-width:480px;
}
.dr-btn{
  display:inline-block;cursor:pointer;
  border:1px solid var(--ink,#0a0908);background:var(--ink,#0a0908);
  color:var(--paper,#fafaf7);
  font:600 12px/1 var(--ui,Inter),sans-serif;
  letter-spacing:.14em;text-transform:uppercase;
  padding:15px 26px;border-radius:2px;transition:opacity .2s;
}
.dr-btn:hover{opacity:.85;}
.dr-btn[disabled]{opacity:.5;cursor:default;}

.dr-modal{
  position:fixed;inset:0;z-index:9999;display:none;
  align-items:center;justify-content:center;
  background:rgba(10,9,8,.74);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  padding:24px;
}
.dr-modal.is-open{display:flex;}
.dr-card{
  background:var(--paper,#fafaf7);max-width:500px;width:100%;
  padding:38px 36px 34px;border-radius:4px;
  box-shadow:0 40px 100px rgba(0,0,0,.45);
  position:relative;max-height:90vh;overflow:auto;
  text-align:center;
}
.dr-card h3{
  font-family:var(--serif,'Cormorant Garamond'),serif;font-weight:500;
  font-size:30px;line-height:1.1;margin:0 0 8px;color:var(--ink,#0a0908);
}
.dr-card .dr-intro{
  font:400 14.5px/1.6 var(--ui,Inter),sans-serif;
  color:var(--stone,#6b6660);margin:0 0 22px;
}
.dr-field{margin:0 0 15px;}
.dr-field label{
  display:block;font:600 11px/1 var(--ui,Inter),sans-serif;
  letter-spacing:.12em;text-transform:uppercase;color:var(--shadow,#3a342e);margin:0 0 7px;
}
.dr-field input{
  width:100%;box-sizing:border-box;
  border:1px solid var(--line,#d6cfc0);border-radius:2px;
  padding:12px 13px;font:400 15px var(--ui,Inter),sans-serif;
  background:#fff;color:var(--ink,#0a0908);text-align:center;
}
.dr-field input:focus{outline:none;border-color:var(--ink,#0a0908);}
.dr-terms{
  max-height:124px;overflow:auto;
  border:1px solid var(--bone,#e8e2d5);background:var(--cream,#f3efe7);
  padding:13px 15px;border-radius:2px;margin:6px 0 16px;
  font:400 12.5px/1.6 var(--ui,Inter),sans-serif;color:var(--stone,#6b6660);text-align:left;
}
.dr-accept{
  display:flex;gap:11px;align-items:flex-start;justify-content:center;margin:0 0 22px;
  font:400 13.5px/1.5 var(--ui,Inter),sans-serif;color:var(--shadow,#3a342e);cursor:pointer;text-align:left;
}
.dr-accept input{margin-top:3px;flex:0 0 auto;width:16px;height:16px;cursor:pointer;}
.dr-actions{display:flex;align-items:center;justify-content:center;gap:14px;}
.dr-x{
  position:absolute;top:16px;right:16px;background:none;border:none;cursor:pointer;
  font:400 13px var(--ui,Inter),sans-serif;color:var(--ash,#9a948c);
}
.dr-x:hover{color:var(--ink,#0a0908);}
.dr-error{
  font:400 13px/1.4 var(--ui,Inter),sans-serif;color:var(--coral,#e35063);
  margin:14px 0 0;display:none;
}
