/* Identity entry and sign-in inherit C; authentication endpoints stay unchanged. */
.entry-c{margin:0;background:var(--c-ground);min-height:100vh;min-height:100dvh}
.entry-c .entry-shell{display:grid;grid-template-columns:1fr;gap:0;min-height:100dvh;width:min(100%,1240px);padding:0;margin:0 auto;align-content:start}
.entry-c .entry-brand{grid-column:1;grid-row:1;display:flex;width:auto;align-items:center;gap:12px;margin:0;padding:22px 24px;background:var(--c-green);color:#fff;text-shadow:none;text-decoration:none}
.entry-c .entry-brand strong{display:block;font:700 22px/1.4 var(--c-display);letter-spacing:1px}
.entry-c .entry-brand small{display:block;font:400 12px/1.6 var(--c-font);color:#dfdfce;margin-top:3px}
.entry-c .brand-seal{width:46px;height:46px;flex:none;border:1px solid var(--c-brass);border-radius:50%;background:var(--c-green);box-shadow:none;font:700 26px/1 var(--c-display);color:#e5dab7}
.entry-c .entry-intro{display:none}
.entry-c :is(.entry-hero,.login-panel){width:auto;max-width:480px;margin:32px 16px;padding:26px 24px;border:1px solid var(--c-line);border-radius:var(--c-radius);background:var(--c-surface);color:var(--c-ink);box-shadow:none;backdrop-filter:none}
.entry-c h1{font:900 30px/1.4 var(--c-display);letter-spacing:0;margin:0;color:var(--c-ink)}
.entry-c .login-panel h1{margin:20px 0 12px}
.entry-c .entry-description{margin:12px 0 24px;color:var(--c-muted);font-size:14px;line-height:1.75}
.entry-c .entry-grid{display:grid;gap:14px;margin:0}
.entry-c .entry-card{min-height:104px;padding:20px 16px;gap:16px;border:1px solid var(--c-field-line);border-radius:var(--c-control-radius);background:var(--c-surface);color:var(--c-green);transform:none;transition:background .15s,border-color .15s}
.entry-c .entry-card:hover{background:var(--c-soft);border-color:var(--c-green);transform:none;color:var(--c-green)}
.entry-c .entry-card-copy{min-width:0}
.entry-c .entry-card strong{display:block;font-size:18px;line-height:1.5}
.entry-c .entry-card small{display:block;font-size:12px;line-height:1.6;margin-top:6px;color:var(--c-muted)}
.entry-c .visitor-card{background:var(--c-green);border-color:var(--c-green);color:#fff}
.entry-c .visitor-card small{color:#dfdfce}
.entry-c .visitor-card:hover{background:var(--c-green-hover);color:#fff}
.entry-c .card-icon{width:28px;height:28px;background:none;color:inherit;border-radius:0}
.entry-c .card-icon svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none}
.entry-c .card-arrow{position:static;margin-left:auto;color:inherit;font-size:20px}
.entry-c :is(.back-link,.visitor-link){color:var(--c-green);font:400 14px/1.7 var(--c-font);display:inline-flex;align-items:center;min-height:44px}
.entry-c .back-link{margin-top:-8px}
.entry-c .visitor-link{margin-top:24px;padding-top:18px;border-top:1px solid var(--c-line);width:100%}
.entry-c form{gap:8px}
.entry-c label{font:500 14px/1.6 var(--c-font);color:var(--c-ink)}
.entry-c input{min-width:0;width:100%;height:48px;padding:0 12px;border:1px solid var(--c-field-line);border-radius:var(--c-control-radius);background:#fff;color:var(--c-ink);font:400 16px/1.5 var(--c-font);margin:0 0 16px}
.entry-c input:focus{outline:3px solid var(--c-focus);outline-offset:3px}
.entry-c .password-field{position:relative;margin-bottom:16px}
.entry-c .password-field input{padding-right:66px;margin:0}
.entry-c button{min-height:48px;height:auto;padding:12px 16px;font:500 16px/1.5 var(--c-font);border:1px solid var(--c-green);border-radius:var(--c-control-radius);background:var(--c-green);color:#fff;cursor:pointer;transition:background .15s}
.entry-c button:hover{background:var(--c-green-hover)}
.entry-c button:disabled{background:#edf1ef;color:var(--c-muted);border-color:var(--c-line);opacity:1;cursor:wait}
.entry-c .password-toggle{position:absolute;right:4px;top:3px;min-height:42px;height:42px;padding:8px 10px;border:0;background:transparent;color:var(--c-green);font-size:14px}
.entry-c .password-toggle:hover{background:var(--c-soft)}
.entry-c .login-error{margin:0 0 12px;padding:12px 14px;color:var(--c-error);background:#fff0ed;border:1px solid #efc7be;border-radius:var(--c-control-radius);font-size:14px;overflow-wrap:anywhere}
@media(min-width:700px){
  .entry-c .entry-shell{grid-template-columns:45% 55%;grid-template-rows:auto 1fr;align-content:stretch}
  .entry-c .entry-brand{grid-column:1;grid-row:1;padding:38px 36px 20px}
  .entry-c .entry-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;grid-column:1;grid-row:2;padding:24px 36px 48px;background:var(--c-green);color:#fff;min-width:0}
  .entry-c .entry-intro h2{font:700 clamp(30px,3vw,44px)/1.5 var(--c-display);color:#fff;margin:0 0 14px;letter-spacing:0}
  .entry-c .entry-intro p{color:#dfdfce;font-size:14px;margin:0 0 32px}
  .entry-c .entry-intro img{width:100%;height:auto;max-height:270px;object-fit:cover;object-position:center;border-radius:var(--c-radius)}
  .entry-c :is(.entry-hero,.login-panel){grid-column:2;grid-row:1/3;width:calc(100% - 64px);align-self:center;justify-self:center;margin:32px;padding:36px}
  .entry-c h1{font-size:32px}
}
@media(max-width:360px){.entry-c :is(.entry-hero,.login-panel){padding:24px 18px;margin:24px 12px}.entry-c .entry-brand{padding:18px}.entry-c .entry-card{gap:12px;padding:16px 12px}.entry-c .entry-card small{font-size:11px}}
