/* Trust Checkup — app chrome on top of ridley.css (Ink & Brass).
   Only the gateway/upload-specific bits live here; everything else is ridley.css. */

.tc-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}
.tc-shell .masthead{margin-bottom:0}

.tc-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:64px 24px 80px}
.tc-card{
  width:100%;max-width:560px;background:var(--paper-3);
  border:1px solid var(--rule);padding:48px 48px 40px;position:relative;
}
.tc-card::after{content:'';position:absolute;inset:10px;border:1px solid var(--rule-soft);pointer-events:none}
.tc-card > *{position:relative;z-index:1}

.tc-card h1{
  font-family:'Cormorant Garamond',serif;font-weight:500;font-size:40px;line-height:1.05;
  letter-spacing:-0.015em;color:var(--ink);margin:14px 0 0;
}
.tc-card h1 em{font-style:italic;font-weight:400;color:var(--brass-deep)}
.tc-card .lede{margin-top:18px;font-size:16px;line-height:1.7;color:var(--text-mute)}

.tc-form{margin-top:28px;display:flex;flex-direction:column;gap:18px}
.tc-form label{
  font-family:'Inter',sans-serif;font-size:10px;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--brass-deep);display:flex;flex-direction:column;gap:8px;font-weight:500;
}
.tc-form input[type=text],.tc-form input[type=email]{
  font-family:'Inter',sans-serif;font-size:16px;font-weight:400;letter-spacing:normal;text-transform:none;
  color:var(--text);background:var(--paper);border:1px solid var(--rule);padding:13px 14px;border-radius:0;
}
.tc-form input:focus{outline:2px solid var(--brass);outline-offset:1px}

.tc-btn{
  display:inline-block;width:100%;text-align:center;background:var(--ink);color:var(--paper-3);
  border:1px solid var(--ink);padding:15px 26px;font-family:'Inter',sans-serif;font-size:12px;
  letter-spacing:0.22em;text-transform:uppercase;font-weight:500;line-height:1;cursor:pointer;
  text-decoration:none;transition:all .2s;
}
.tc-btn:hover{background:transparent;color:var(--ink)}

.tc-consent{font-size:11px;line-height:1.6;color:var(--text-mute);margin-top:4px}

.tc-note{
  margin-top:26px;background:var(--paper-2);border:1px solid var(--rule-soft);border-left:2px solid var(--brass);
  padding:16px 18px;font-size:13px;line-height:1.65;color:var(--text);
}
.tc-note strong{color:var(--ink);font-weight:500}
.tc-note .clead{display:block;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--brass-deep);margin-bottom:4px}

.tc-error{
  margin-bottom:18px;background:#F2E4DF;border-left:2px solid var(--crimson);
  padding:12px 16px;font-size:14px;color:var(--crimson);
}

.tc-drop{
  border:1px dashed var(--rule);background:var(--paper);padding:30px;text-align:center;
  color:var(--text-mute);cursor:pointer;
}
.tc-drop .ico{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:30px;color:var(--brass-deep);display:block;margin-bottom:8px}
.tc-drop input{display:block;margin:12px auto 0;font-size:13px}

.tc-fine{margin-top:22px;font-size:11px;line-height:1.6;color:var(--text-mute)}

.tc-spin{text-align:center;margin-top:26px;color:var(--text-mute)}
.tc-spin .dot{width:30px;height:30px;border:2px solid var(--rule-soft);border-top-color:var(--brass-deep);
  border-radius:50%;margin:0 auto 12px;animation:tc-rot .9s linear infinite}
@keyframes tc-rot{to{transform:rotate(360deg)}}
.tc-spin .mono{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.16em;text-transform:uppercase}

/* "What we check" list (gateway) */
.tc-checks{margin-top:34px;border-top:1px solid var(--rule-soft);padding-top:26px}
.tc-checks h2{
  font-family:'Cormorant Garamond',serif;font-weight:500;font-size:24px;color:var(--ink);margin:0 0 6px;
}
.tc-checks h2 em{font-style:italic;font-weight:400;color:var(--brass-deep)}
.tc-checks .intro{font-size:13px;line-height:1.65;color:var(--text-mute);margin:0 0 18px}
.tc-checks dl{margin:0;display:flex;flex-direction:column;gap:13px}
.tc-checks dt{
  font-family:'Inter',sans-serif;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  font-weight:500;color:var(--brass-deep);display:flex;align-items:baseline;gap:8px;
}
.tc-checks dt .n{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text-mute);letter-spacing:0}
.tc-checks dd{margin:3px 0 0;font-size:13px;line-height:1.6;color:var(--text-mute)}

/* Live progress panel (upload page, while the checkup runs) */
.tc-progress{margin-top:26px}
.tc-progress .bar{
  height:3px;background:var(--rule-soft);position:relative;overflow:hidden;
}
.tc-progress .bar .fill{
  position:absolute;inset:0;right:auto;width:0%;background:var(--brass-deep);
  transition:width 1.1s cubic-bezier(.4,0,.3,1);
}
.tc-progress .count{
  margin-top:12px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.18em;
  text-transform:uppercase;color:var(--brass-deep);
}
.tc-progress .feed{margin-top:14px;display:flex;flex-direction:column;gap:7px;min-height:96px}
.tc-progress .row{
  display:flex;align-items:baseline;gap:10px;font-size:13px;line-height:1.5;color:var(--text-mute);
  animation:tc-rowin .4s ease both;
}
@keyframes tc-rowin{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.tc-progress .row .mk{width:14px;flex:none;text-align:center;color:var(--brass-deep);font-size:12px}
.tc-progress .row.done{opacity:.55}
.tc-progress .row.live .mk{animation:tc-blink 1s ease infinite}
@keyframes tc-blink{50%{opacity:.25}}
.tc-progress .fine{margin-top:16px;font-size:11px;line-height:1.6;color:var(--text-mute)}

@media (max-width:600px){
  .tc-main{padding:36px 18px 60px}
  .tc-card{padding:34px 24px 30px}
  .tc-card h1{font-size:32px}
}
