:root {
  --ink: #11100e;
  --paper: #f2efe7;
  --acid: #e7ff4e;
  --rose: #f07d75;
  --line: rgba(17, 16, 14, .22);
  --muted: #68645c;
  font-family: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); }
a { color: inherit; }
button, input { font: inherit; }
.gate-shell { min-height: 100vh; display: grid; place-items: center; padding: 2rem; background: var(--ink); color: var(--paper); }
.gate-card { width: min(100%, 38rem); border: 1px solid rgba(242,239,231,.32); padding: clamp(1.5rem, 5vw, 4rem); background: linear-gradient(135deg, rgba(255,255,255,.06), transparent); }
.eyebrow { margin: 0 0 1rem; color: var(--muted); font-size: .7rem; font-weight: 700; letter-spacing: .13em; }
.gate-card .eyebrow { color: var(--acid); }
h1, h2, h3, p { margin-top: 0; }
.gate-card h1 { margin-bottom: 1.25rem; font-size: clamp(2.8rem, 9vw, 5.75rem); line-height: .88; letter-spacing: -.09em; }
.lede { max-width: 28rem; color: #c4bfb6; line-height: 1.6; }
.gate-form { margin-top: 2.5rem; }
.gate-form label { display: block; margin-bottom: .55rem; font-size: .76rem; color: #c4bfb6; }
.input-row { display: flex; gap: .6rem; }
input { min-width: 0; flex: 1; padding: .85rem 1rem; border: 1px solid #888; color: var(--paper); background: transparent; }
button { border: 1px solid var(--acid); padding: .85rem 1rem; color: var(--ink); background: var(--acid); cursor: pointer; font-weight: 700; }
.gate-message { min-height: 1.2rem; margin-top: .8rem; color: var(--rose); font-size: .75rem; }
.hub { min-height: 100vh; }
.masthead { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.25rem clamp(1.25rem, 5vw, 5rem); border-bottom: 1px solid var(--line); }
.brand { text-decoration: none; font-size: 1.4rem; font-weight: 800; letter-spacing: -.1em; }.brand span { color: var(--rose); }
nav { display: flex; gap: 1.2rem; } nav a, .quiet-button { color: var(--muted); font-size: .72rem; text-decoration: none; }
.quiet-button { border: 0; padding: 0; background: transparent; }
.hero { padding: clamp(5rem, 14vw, 12rem) clamp(1.25rem, 10vw, 10rem); border-bottom: 1px solid var(--line); }
.hero h1 { max-width: 11ch; margin-bottom: 1.5rem; font-size: clamp(3.5rem, 10vw, 9rem); line-height: .82; letter-spacing: -.09em; }.hero em { color: var(--rose); font-style: normal; }.hero > p:last-child { max-width: 42rem; color: var(--muted); line-height: 1.7; }
.section { padding: clamp(3.5rem, 8vw, 8rem) clamp(1.25rem, 10vw, 10rem); border-bottom: 1px solid var(--line); }.section-heading h2, .split-section h2 { margin: 0; font-size: clamp(2.2rem, 5vw, 4rem); letter-spacing: -.07em; }
.workspace-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 2.5rem; border: 1px solid var(--line); }.workspace-card { min-height: 22rem; padding: 1.5rem; text-decoration: none; border-right: 1px solid var(--line); transition: transform .2s, background .2s; }.workspace-card:last-child { border-right: 0; }.workspace-card:hover { background: var(--acid); transform: translateY(-.35rem); }.workspace-card.dollhouse:hover { background: #d4bbf7; }.index { color: var(--muted); font-size: .75rem; }.workspace-card h3 { margin-top: 4rem; font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.08em; }.workspace-card p { max-width: 28rem; color: var(--muted); line-height: 1.65; }.launch { display: block; margin-top: 3rem; font-size: .76rem; font-weight: 700; }
.split-section { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }.split-section > p { max-width: 32rem; color: var(--muted); line-height: 1.75; }.auth-section { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }.auth-panel { max-width: 34rem; }.auth-form { margin: 1.25rem 0; }.auth-form label { display: block; margin-bottom: .55rem; font-size: .76rem; }.auth-form input { color: var(--ink); border-color: var(--line); background: #fffdf8; }.status-copy { color: var(--muted); line-height: 1.65; }.records-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1.5rem 0 0; padding: 0; list-style: none; }.records-list li { display: grid; gap: .45rem; min-height: 6rem; padding: 1rem; border: 1px solid var(--line); }.records-list strong { font-size: .92rem; }.records-list span { color: var(--muted); font-size: .72rem; }.footer-note { color: var(--muted); line-height: 1.7; }
@media (max-width: 700px) { nav { display: none; }.workspace-grid, .split-section, .auth-section, .records-list { grid-template-columns: 1fr; }.workspace-card { border-right: 0; border-bottom: 1px solid var(--line); }.workspace-card:last-child { border-bottom: 0; } }
