/* auth.css - the /hesap (Cakcan ID) pages.
   Loaded after g-base.css, which supplies the design tokens and the g-header.
   Small surface on purpose: two card widths, a form vocabulary, and the claim
   code. Everything tints from the site's normal palette, no accent games. */

/* Body font, palette and layout come from body.proto-g in g-base.css; this
   class only exists as a hook. */
.cid-body { }

.cid-main {
  width: 100%;
  max-width: 430px;
  margin: 0 auto;
  padding: 46px 16px 64px;
  flex: 1;
}
.cid-main.cid-wide { max-width: 880px; }

.cid-title {
  font-size: 24px; font-weight: 800; letter-spacing: -.02em;
  margin: 0 0 14px;
}

.cid-grid {
  display: grid; gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-items: start;
}

.cid-card {
  background: var(--g-surf);
  border: 1px solid var(--g-border);
  border-radius: 12px;
  padding: 20px 22px;
}
.cid-card h1 { font-size: 20px; font-weight: 800; margin: 0 0 12px; letter-spacing: -.02em; }
.cid-card h2 { font-size: 14px; font-weight: 700; margin: 0 0 12px; }

/* --- forms --- */
.cid-card form { display: flex; flex-direction: column; gap: 11px; }
.cid-card .cid-inline { display: flex; flex-direction: row; gap: 8px; margin-top: 12px; }
.cid-card label { display: flex; flex-direction: column; gap: 5px; }
.cid-card label span {
  font-size: 11px; letter-spacing: .4px; text-transform: uppercase;
  color: var(--g-text-3);
}
.cid-card input {
  font: inherit; color: var(--g-text);
  background: var(--g-bg-2);
  border: 1px solid var(--g-border);
  border-radius: 8px;
  padding: 9px 11px;
}
.cid-card input:focus {
  outline: none;
  border-color: color-mix(in srgb, var(--g-text-3) 60%, var(--g-border));
}

.cid-btn {
  font: inherit; font-weight: 700; font-size: 13.5px;
  color: var(--g-bg);
  background: var(--g-text);
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 9px 14px;
  cursor: pointer;
  align-self: flex-start;
}
.cid-btn:hover { opacity: .88; }
.cid-btn.ghost {
  color: var(--g-text-2, var(--g-text));
  background: transparent;
  border-color: var(--g-border);
}
.cid-btn.ghost:hover { border-color: var(--g-text-3); opacity: 1; }

/* --- notices --- */
.cid-err, .cid-ok {
  font-size: 13px; line-height: 1.45;
  border-radius: 8px; padding: 10px 12px; margin: 0 0 12px;
}
.cid-err {
  color: #f1b9b9;
  background: rgba(214, 69, 69, .1);
  border: 1px solid rgba(214, 69, 69, .35);
}
.cid-ok {
  color: #bfe8c6;
  background: rgba(64, 168, 90, .1);
  border: 1px solid rgba(64, 168, 90, .32);
}

.cid-alt { font-size: 13px; color: var(--g-text-3); margin: 14px 0 0; }
.cid-alt a { color: var(--g-text-2, var(--g-text)); }

/* --- profile rows --- */
.cid-rows { display: flex; flex-direction: column; gap: 8px; margin: 0; }
.cid-rows > div {
  display: flex; justify-content: space-between; gap: 12px;
  font-size: 13.5px;
}
.cid-rows dt { color: var(--g-text-3); }
.cid-rows dd { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* --- the claim code: readable from across the room --- */
.cid-code {
  font-family: ui-monospace, Consolas, monospace;
  font-size: 30px; font-weight: 800; letter-spacing: 3px;
  text-align: center;
  background: var(--g-bg-2);
  border: 1px dashed var(--g-border);
  border-radius: 10px;
  padding: 14px 10px;
  margin: 10px 0;
  user-select: all;
}

/* --- sessions --- */
.cid-sessions { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.cid-sessions li {
  display: flex; justify-content: space-between; gap: 10px;
  font-size: 12.5px; color: var(--g-text-2, var(--g-text));
}
.cid-sessions li.is-me .cid-sess-what b {
  font-weight: 700; color: var(--g-text);
  margin-left: 6px; font-size: 10.5px; text-transform: uppercase; letter-spacing: .5px;
}
.cid-sess-when { color: var(--g-text-3); white-space: nowrap; }

/* The honeypot: parked far off-canvas, never display:none, because the crude
   bots that fill everything skip fields the computed style hides. */
.cid-hp { position: absolute; left: -9999px; top: -9999px; }

@media (max-width: 520px) {
  .cid-main { padding-top: 26px; }
  .cid-card { padding: 16px; }
}
