/* Public introduction only. Workspace layout remains owned by its existing sheets. */
#welcome .welcome-copy h1{font-size:clamp(38px,4.4vw,68px);line-height:1.1;letter-spacing:-.04em}
#welcome .hero-description{max-width:590px}
#welcome .public-assistant{grid-column:1/-1;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,76px);padding:64px 0;border-top:1px solid var(--appearance-line)}
#welcome .public-assistant h2,#welcome .public-questions h2{font-size:clamp(28px,3vw,42px);line-height:1.18;letter-spacing:-.025em;margin:18px 0 24px}
#welcome .public-assistant h2 em{font-weight:400}
#welcome .public-assistant p{line-height:1.75;max-width:620px}
#welcome .public-assistant .primary-link{margin-top:14px}
#welcome .public-workflow{padding:28px 32px;border:1px solid var(--appearance-line);border-radius:14px;background:var(--appearance-surface)}
#welcome .public-workflow ol{padding:0;margin:24px 0;list-style:none;counter-reset:steps}
#welcome .public-workflow li{counter-increment:steps;display:grid;grid-template-columns:28px 1fr;column-gap:12px;padding:16px 0;border-bottom:1px solid var(--appearance-line)}
#welcome .public-workflow li::before{content:counter(steps,decimal-leading-zero);grid-row:span 2;font-size:12px;opacity:.7;padding-top:3px}
#welcome .public-workflow li span{grid-column:2;font-size:14px;line-height:1.6;margin-top:5px}
#welcome .public-connection-note{font-size:13px;opacity:.85;margin-bottom:0}
#welcome .public-questions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.3fr;gap:48px;padding:36px 0 64px;border-top:1px solid var(--appearance-line)}
#welcome .public-questions details{border-bottom:1px solid var(--appearance-line);padding:20px 0;background:transparent;border-radius:0}
#welcome .public-questions summary{cursor:pointer;font-weight:600;padding:0}
#welcome .public-questions details p{line-height:1.7;margin:16px 0 0;max-width:680px}
@media(max-width:800px){#welcome .public-assistant,#welcome .public-questions{grid-template-columns:1fr;gap:24px;padding:36px 0}#welcome .public-workflow{padding:20px}body:not([data-signed-in=true]) .public-nav{flex-wrap:wrap}}

/* Public appearance is fixed; signing in restores the saved workspace theme. */
@media screen {
  :root:has(body:not([data-signed-in=true])) {
    --appearance-canvas:#090b0b;--appearance-surface:#121616;--appearance-soft:#1c2221;
    --appearance-ink:#f3f5f2;--appearance-muted:#a5afab;--appearance-link:#d4e8dc;
    --appearance-line:#2a3330;--appearance-control-border:#53625b;
    --appearance-strong:#dfefdf;--appearance-on-strong:#122019;--appearance-accent-soft:#23352b;
    --appearance-focus:#a6dfbd;--appearance-danger:#ffb9b0;--appearance-danger-soft:#442823;
    --gold:#b8d8bf;--shadow:0 20px 65px #0006;color-scheme:dark;background:#090b0b;
  }
}
body:not([data-signed-in=true]) {min-height:100vh}
body:not([data-signed-in=true]) .header-tools {display:none}
body:not([data-signed-in=true]) .site-header {height:94px;max-width:1440px;border-bottom-color:#ffffff12;gap:24px}
body:not([data-signed-in=true]) .brand {color:#f3f5f2;font-size:26px}
body:not([data-signed-in=true]) .brand-icon {color:#d4e8dc;background:#18221c;border-color:#35483b;box-shadow:inset 0 1px #ffffff12}
body:not([data-signed-in=true]) .brand-period {color:#b8d8bf}
body:not([data-signed-in=true]) .public-nav {gap:28px}
body:not([data-signed-in=true]) .public-nav a {color:#a5afab;font-size:13px}
body:not([data-signed-in=true]) .public-nav a:hover {color:#fff}
body:not([data-signed-in=true]) .public-nav a:last-child {padding:11px 18px;border-radius:100px;border:1px solid #39453e;background:linear-gradient(#1d2721,#141c17);color:#e7efe9;box-shadow:inset 0 1px #ffffff10}
body:not([data-signed-in=true]) .public-nav a:last-child:hover {border-color:#718a77;background:#26372b}
#welcome {padding-top:100px;column-gap:4%;grid-template-columns:1.15fr 1fr}
#welcome .welcome-copy {align-self:center;padding-bottom:15px}
#welcome .welcome-copy h1 {font-size:clamp(48px,5.6vw,84px);line-height:1.02;letter-spacing:-.055em;margin:0 0 32px;font-weight:500}
#welcome .welcome-copy h1 em {color:#b8d8bf;letter-spacing:-.055em}
#welcome .hero-description {max-width:510px;font-size:16px;line-height:1.85;color:#a5afab}
#welcome .public-hero-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
#welcome :is(.primary-link,.secondary-link),#welcome #login button.primary {display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:54px;margin:0;border-radius:100px;padding:10px 12px 10px 24px;font-size:13px;font-weight:650;line-height:1.4;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s,border-color .2s}
#welcome .primary-link,#welcome #login button.primary {color:#132019;background:linear-gradient(145deg,#e7f2e5,#bfdcc4);border:1px solid #ebf5e8;box-shadow:inset 0 1px #fff8,0 4px 16px #0004}
#welcome :is(.primary-link,#login button.primary)>span {display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#132019;color:#e0efdf;font-size:18px;font-weight:400;flex-shrink:0;transition:transform .2s}
#welcome .primary-link:hover,#welcome #login button.primary:hover {color:#132019;background:#eef8e9;box-shadow:0 6px 24px #b8d8bf18;transform:translateY(-2px)}
#welcome .primary-link:hover>span {transform:rotate(45deg)}
#welcome .secondary-link {padding:14px 20px;border:1px solid #344039;background:transparent;color:#dbe5df;font-weight:500}
#welcome .secondary-link:hover {background:#18211c;border-color:#647b69;transform:translateY(-2px)}
#welcome :is(.primary-link,.secondary-link):active,#welcome #login button.primary:active {transform:translateY(0)}
#welcome .hero-footnote {display:flex;align-items:center;gap:9px;margin-top:32px;font-size:11px;color:#8e9c94;letter-spacing:0}
#welcome .hero-footnote span {width:5px;height:5px;border-radius:50%;background:#b8d8bf;margin:0;flex-shrink:0}
#welcome .welcome-visual {min-height:450px;background:radial-gradient(ellipse,#365a3f25,transparent 68%)}
#welcome .orbit {display:none}
#welcome .visual-label {color:#8e9c94;letter-spacing:2.2px;top:-4px}
#welcome .visual-card {background:linear-gradient(125deg,#1c2520,#111713);border-color:#38463b;box-shadow:0 20px 65px #0008,inset 0 1px #ffffff08;border-radius:18px}
#welcome .card-main {padding:30px;transform:rotate(-4deg);background:linear-gradient(145deg,#26372b,#152019);border-color:#4c6252}
#welcome .card-main h2 {font-size:38px;color:#e7efe6}
#welcome .card-heading {color:#9fb4a4;border-color:#ffffff18}
#welcome .card-back {transform:rotate(4deg);top:32px;left:2%}
#welcome .card-front {bottom:12px;right:0;transform:rotate(3deg)}
#welcome .visual-card strong {color:#e4eee7}
#welcome .visual-card small,#welcome .visual-stages {color:#a0afa5}
#welcome .visual-caption {color:#8e9c94;font-size:10px;bottom:-24px}
#welcome .file-icon,#welcome .document-icon {color:#c5dfcb;background:#2a3d2f;border:1px solid #455c4a}
#welcome .check-mark {color:#b8d8bf}
#welcome .approach {margin-top:100px;padding:40px 0 48px;gap:38px;border-color:#2a3330}
#welcome .approach article {padding-left:0}
#welcome .approach article>span {position:static;display:block;margin-bottom:22px;color:#769580;font-size:11px;letter-spacing:1px}
#welcome .approach h3 {font-size:20px;color:#e7eee9;margin-bottom:14px}
#welcome .approach p {font-size:14px;line-height:1.8;max-width:350px}
#welcome .public-assistant {padding:80px 0;border-top:0}
#welcome .public-assistant h2,#welcome .public-questions h2 {font-size:clamp(30px,3.2vw,46px);letter-spacing:-.035em}
#welcome .public-assistant h2 em {color:#b8d8bf}
#welcome .public-assistant p {line-height:1.8}
#welcome .public-assistant .primary-link {margin-top:18px}
#welcome .public-workflow {padding:30px 32px;border:1px solid #354239;border-radius:20px;background:linear-gradient(140deg,#18211b,#101512);box-shadow:inset 0 1px #ffffff08}
#welcome .public-workflow li {grid-template-columns:30px 1fr;column-gap:14px;padding:18px 0;border-color:#2a3830}
#welcome .public-workflow li::before {font-size:11px;color:#9fc1a9;padding-top:4px;opacity:1}
#welcome .public-workflow li span {font-size:13px;line-height:1.7;margin-top:6px;color:#a5afab}
#welcome .public-connection-note {font-size:12px;color:#99a59d;opacity:1}
#welcome .public-questions {padding:60px 0;border-color:#2a3330}
#welcome .public-questions details {border:0;border-bottom:1px solid #2a3330;padding:22px 0;margin:0}
#welcome .public-questions summary {font-weight:500;border:0;font-size:15px;color:#dfe8e2}
#welcome .public-questions details p {line-height:1.8;font-size:14px}
#welcome .access-section {padding:70px 0 90px;gap:10%;border-top:1px solid #2a3330}
#welcome #login {background:linear-gradient(145deg,#151b17,#0f1411);border:1px solid #354239;border-radius:20px;box-shadow:inset 0 1px #ffffff08,0 18px 45px #0003}
#welcome #login h2 {color:#e4eee7;font-size:22px}
#welcome #login label {color:#b7c3ba}
#welcome #login input {background:#090e0b;border-radius:10px;min-height:48px;padding:12px 14px}
#welcome #login button.primary {display:flex;width:100%;margin-top:26px}
#welcome .public-footer {border-color:#2a3330;padding:32px 0}
@media(max-width:1000px) {
  #welcome {column-gap:3%;padding-top:70px}
  #welcome .welcome-copy h1 {font-size:clamp(43px,5.5vw,68px)}
  #welcome .card-main {padding:24px}
  #welcome .card-main h2 {font-size:31px}
}
@media(max-width:800px) {
  body:not([data-signed-in=true]) .site-header {height:78px;padding-inline:5%;gap:18px}
  body:not([data-signed-in=true]) .public-nav {gap:15px}
  #welcome {grid-template-columns:1fr;padding-top:55px}
  #welcome .welcome-copy h1 {font-size:clamp(47px,8.7vw,76px)}
  #welcome .hero-description {max-width:560px}
  #welcome .welcome-visual {width:100%;max-width:530px;margin:55px auto 25px}
  #welcome .approach {margin-top:50px;gap:30px}
  #welcome .public-assistant,#welcome .public-questions {grid-template-columns:1fr;gap:30px;padding:48px 0}
  #welcome .public-workflow {padding:24px}
  #welcome .access-section {padding:50px 0;gap:30px}
}
@media(max-width:560px) {
  body:not([data-signed-in=true]) .site-header .brand {font-size:22px}
  body:not([data-signed-in=true]) .public-nav a:not(:last-child) {display:none}
  body:not([data-signed-in=true]) .public-nav a:last-child {font-size:11px;padding:9px 13px}
  #welcome .welcome-copy h1 {font-size:clamp(42px,9.6vw,54px)}
  #welcome .hero-description {font-size:15px}
  #welcome .public-hero-actions {align-items:stretch}
  #welcome .hero-footnote {font-size:10px}
  #welcome .welcome-visual {min-height:395px}
  #welcome .card-main {max-width:330px}
  #welcome .card-back,#welcome .card-front {max-width:300px;padding:15px}
  #welcome .approach,#welcome .access-section {grid-template-columns:1fr}
  #welcome .approach article>span {margin-bottom:12px}
  #welcome .approach article+article {padding-top:26px;border-top:1px solid #2a3330}
  #welcome .public-assistant .primary-link {font-size:12px;gap:16px;padding-left:18px}
  #welcome #login {max-width:none;padding:26px 22px}
  #welcome .public-footer {flex-wrap:wrap;gap:15px}
}
@media(prefers-reduced-motion:reduce) {
  #welcome :is(a,button),#welcome .primary-link>span {transition:none;transform:none!important}
}
