
:root {
  color-scheme: light;
  --bg: #f5efe7;
  --bg-2: #efe4dc;
  --surface: #fffaf4;
  --surface-2: #f8eee6;
  --surface-3: #eadfd8;
  --ink: #1c121b;
  --muted: #6c5c67;
  --faint: #94848f;
  --line: #dfd2ce;
  --line-strong: #cdbbb6;
  --plum: #4b213f;
  --plum-2: #6b3158;
  --coral: #e96543;
  --coral-2: #ff8a62;
  --pear: #cedd69;
  --mint: #79d7c4;
  --success: #28745e;
  --warning: #996315;
  --danger: #a33f52;
  --shadow-sm: 0 10px 30px rgba(71, 38, 58, .07);
  --shadow-lg: 0 30px 90px rgba(71, 38, 58, .14);
  --r-xs: 10px;
  --r-sm: 16px;
  --r-md: 24px;
  --r-lg: 34px;
  --r-xl: 46px;
  --max: 1240px;
  --dock: 76px;
  --sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #100b12;
  --bg-2: #171019;
  --surface: #1b131c;
  --surface-2: #241824;
  --surface-3: #31202e;
  --ink: #fbf2e9;
  --muted: #c3b1bc;
  --faint: #93828d;
  --line: #38283a;
  --line-strong: #514053;
  --plum: #d8a7c8;
  --plum-2: #f0c2df;
  --coral: #ff7a55;
  --coral-2: #ff9b78;
  --pear: #dce97a;
  --mint: #8fe3d2;
  --success: #78d4b2;
  --warning: #e6be71;
  --danger: #ee9cad;
  --shadow-sm: 0 10px 30px rgba(0, 0, 0, .18);
  --shadow-lg: 0 36px 100px rgba(0, 0, 0, .38);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  background:
    radial-gradient(circle at 12% 0%, rgba(233,101,67,.10), transparent 28rem),
    radial-gradient(circle at 88% 10%, rgba(121,215,196,.10), transparent 28rem),
    var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  padding-bottom: calc(var(--dock) + 30px + env(safe-area-inset-bottom));
}
button, input, textarea, select { font: inherit; color: inherit; }
button { cursor: pointer; }
a { color: inherit; }
svg { display: block; }
[hidden] { display: none !important; }
::selection { background: var(--pear); color: #1a1a12; }
button, a, input, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }

.shell { width: min(calc(100% - 28px), var(--max)); margin: 0 auto; }
.mono { font-family: var(--mono); }
.kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--plum);
  font: 800 .72rem/1 var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.kicker::before { content: ""; width: 8px; height: 8px; border-radius: 2px; background: var(--coral); transform: rotate(45deg); }
.muted { color: var(--muted); }
.faint { color: var(--faint); }

/* top navigation */
.site-header {
  position: sticky;
  top: 0;
  z-index: 80;
  backdrop-filter: blur(18px);
  background: color-mix(in srgb, var(--bg) 78%, transparent);
  border-bottom: 1px solid color-mix(in srgb, var(--line) 72%, transparent);
}
.topbar {
  min-height: 74px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 14px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
  min-width: 0;
}
.brand-symbol {
  width: 42px;
  height: 42px;
  color: var(--plum);
  flex: none;
  filter: drop-shadow(0 8px 18px rgba(75,33,63,.12));
}
.brand-copy { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.brand-word { font-size: 1.04rem; font-weight: 900; letter-spacing: -.035em; }
.brand-kanji { color: var(--faint); font-size: .72rem; font-weight: 700; }
.top-nav { display: none; align-items: center; justify-content: center; gap: 5px; }
.top-nav button {
  border: 0;
  background: transparent;
  padding: 9px 12px;
  border-radius: 999px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 720;
}
.top-nav button:hover { background: var(--surface); color: var(--ink); }
.top-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; }
.icon-btn, .access-btn {
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--surface) 84%, transparent);
  box-shadow: var(--shadow-sm);
}
.icon-btn { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; }
.icon-btn svg { width: 18px; height: 18px; }
.access-btn { min-height: 42px; border-radius: 999px; padding: 0 15px; font-size: .82rem; font-weight: 800; }

/* screens */
.screen { padding: 26px 0 96px; }
.screen-head { display: grid; gap: 9px; margin: 10px 0 24px; }
.screen-head h1, .screen-head h2 { margin: 0; letter-spacing: -.045em; line-height: 1; }
.screen-head h1 { font-size: clamp(2.35rem, 9vw, 5.4rem); max-width: 11ch; }
.screen-head h2 { font-size: clamp(2rem, 7vw, 4rem); }
.screen-head p { margin: 0; color: var(--muted); max-width: 68ch; }

/* home hero */
.hero { display: grid; gap: 16px; }
.hero-main {
  min-height: min(690px, calc(100svh - 140px));
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(24px, 5vw, 58px);
  border-radius: var(--r-xl);
  background:
    radial-gradient(circle at 80% 20%, rgba(206,221,105,.32), transparent 18rem),
    linear-gradient(135deg, #4b213f 0%, #6f2e55 42%, #9b3f58 72%, #e96543 100%);
  color: #fff8f2;
  box-shadow: var(--shadow-lg);
}
.hero-main::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 86%);
  pointer-events: none;
}
.hero-main > * { position: relative; z-index: 1; }
.hero-topline { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; }
.hero-main .kicker { color: #ffe7dc; }
.hero-main .kicker::before { background: var(--pear); }
.hero-version { color: rgba(255,248,242,.74); font: 700 .68rem/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.hero-title {
  margin: clamp(54px, 12vw, 110px) 0 0;
  max-width: 10.4ch;
  font-size: clamp(3.35rem, 12vw, 8.5rem);
  line-height: .86;
  letter-spacing: -.075em;
  font-weight: 850;
}
.hero-title em { color: var(--pear); font-style: normal; }
.hero-copy { display: grid; gap: 22px; margin-top: 28px; }
.hero-copy p { margin: 0; max-width: 62ch; color: rgba(255,248,242,.84); font-size: clamp(1rem, 2vw, 1.2rem); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.btn-primary, .btn-secondary, .btn-quiet, .btn-danger {
  min-height: 50px;
  border-radius: 999px;
  padding: 0 20px;
  border: 1px solid transparent;
  font-weight: 820;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.btn-primary { background: var(--pear); color: #1b1910; }
.btn-primary:hover { transform: translateY(-1px); background: #dce884; }
.hero-main .btn-secondary { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.23); color: #fff8f2; backdrop-filter: blur(10px); }
.btn-secondary { background: var(--surface); border-color: var(--line); color: var(--ink); }
.btn-secondary:hover, .btn-quiet:hover { border-color: var(--line-strong); }
.btn-quiet { background: transparent; border-color: var(--line); color: var(--muted); }
.btn-danger { background: transparent; border-color: color-mix(in srgb, var(--danger) 35%, var(--line)); color: var(--danger); }

.hero-visual {
  position: relative;
  min-height: 460px;
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  background: var(--surface);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
  padding: 24px;
  display: grid;
  align-content: space-between;
  gap: 24px;
}
.hero-visual::after {
  content: "";
  position: absolute;
  inset: auto -80px -90px auto;
  width: 260px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(121,215,196,.38), transparent 67%);
}
.visual-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.live-dot { display: inline-flex; align-items: center; gap: 7px; color: var(--success); font: 800 .68rem/1 var(--mono); text-transform: uppercase; letter-spacing: .1em; }
.live-dot::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 6px color-mix(in srgb, var(--success) 11%, transparent); }
.mirror-stage { position: relative; min-height: 260px; display: grid; place-items: center; }
.mirror-mark { width: min(76%, 300px); color: var(--plum); filter: drop-shadow(0 28px 40px rgba(75,33,63,.15)); }
.signal-card {
  position: absolute;
  width: min(47%, 190px);
  padding: 13px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--surface) 88%, transparent);
  box-shadow: var(--shadow-sm);
  backdrop-filter: blur(12px);
}
.signal-card.left { left: 0; top: 20px; transform: rotate(-2deg); }
.signal-card.right { right: 0; bottom: 18px; transform: rotate(2deg); }
.signal-card small { display: block; color: var(--faint); font: 750 .62rem/1 var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.signal-card strong { display: block; margin-top: 6px; font-size: .86rem; line-height: 1.25; }
.visual-foot { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.micro-stat { padding: 13px; border-radius: 18px; background: var(--surface-2); border: 1px solid var(--line); }
.micro-stat strong { display: block; font-size: 1rem; }
.micro-stat span { display: block; margin-top: 2px; color: var(--faint); font-size: .72rem; }

/* editorial sections */
.section-block { padding: 76px 0 0; scroll-margin-top: 94px; }
.section-grid { display: grid; gap: 16px; }
.hero > *, .section-grid > *, .compose-layout > *, .exchange-layout > *, .access-layout > *, .dashboard-grid > * { min-width: 0; }
.sector-rail { max-width: 100%; }
.section-card { border: 1px solid var(--line); background: var(--surface); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); }
.section-pad { padding: clamp(22px, 4vw, 38px); }
.section-title { margin: 10px 0 0; font-size: clamp(2.15rem, 7vw, 4.5rem); line-height: .96; letter-spacing: -.055em; max-width: 12ch; }
.section-lead { color: var(--muted); max-width: 66ch; margin: 16px 0 0; }
.steps { display: grid; gap: 10px; margin-top: 24px; }
.step {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-radius: var(--r-md);
  background: var(--surface-2);
  border: 1px solid var(--line);
}
.step-no { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--plum); color: #fff7f2; font: 800 .68rem/1 var(--mono); }
.step h3 { margin: 0; font-size: 1rem; }
.step p { margin: 5px 0 0; color: var(--muted); font-size: .9rem; }

.sector-rail { margin-top: 22px; display: flex; gap: 8px; overflow-x: auto; padding-bottom: 5px; scrollbar-width: thin; }
.sector-chip { flex: 0 0 auto; border: 1px solid var(--line); background: var(--surface); border-radius: 999px; padding: 9px 13px; color: var(--muted); font-weight: 720; font-size: .82rem; }

.stat-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; margin-top: 24px; }
.stat-card { padding: 18px; border-radius: var(--r-md); border: 1px solid var(--line); background: var(--surface-2); }
.stat-card strong { display: block; font-size: clamp(1.6rem, 6vw, 2.5rem); letter-spacing: -.05em; line-height: 1; }
.stat-card span { display: block; margin-top: 7px; color: var(--muted); font-size: .78rem; }
.stat-card.acid { background: var(--pear); color: #1a1911; border-color: transparent; }
.stat-card.acid span { color: rgba(26,25,17,.7); }
.stat-card.coral { background: var(--coral); color: #fff9f4; border-color: transparent; }
.stat-card.coral span { color: rgba(255,249,244,.78); }

.security-grid { display: grid; gap: 12px; margin-top: 22px; }
.security-item { padding: 18px; border-left: 3px solid var(--mint); background: var(--surface-2); border-radius: 0 var(--r-sm) var(--r-sm) 0; }
.security-item strong { display: block; }
.security-item p { margin: 5px 0 0; color: var(--muted); font-size: .9rem; }
.tech-note { margin-top: 18px; padding: 15px 17px; border-radius: var(--r-sm); background: #171019; color: #f9f0e8; font: 650 .73rem/1.65 var(--mono); }
.tech-note b { color: var(--pear); }

/* access */
.access-layout { display: grid; gap: 16px; align-items: stretch; }
.access-hero, .access-card { border-radius: var(--r-xl); box-shadow: var(--shadow-lg); }
.access-hero { padding: clamp(28px, 6vw, 60px); min-height: 480px; background: linear-gradient(150deg, #1b111c 0%, #4b213f 58%, #e96543 140%); color: #fff8f2; display: flex; flex-direction: column; justify-content: space-between; }
.access-hero .brand-symbol { width: 64px; height: 64px; color: var(--pear); }
.access-hero h1 { margin: 24px 0 12px; font-size: clamp(2.6rem, 8vw, 5rem); line-height: .9; letter-spacing: -.065em; max-width: 8ch; }
.access-hero p { margin: 0; max-width: 45ch; color: rgba(255,248,242,.8); }
.access-points { display: grid; gap: 8px; margin-top: 30px; }
.access-point { display: flex; gap: 8px; align-items: center; color: rgba(255,248,242,.8); font-size: .86rem; }
.access-point::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--pear); }
.access-card { padding: clamp(24px, 5vw, 44px); background: var(--surface); border: 1px solid var(--line); display: grid; align-content: center; }
.access-card h2 { margin: 0; font-size: 2rem; letter-spacing: -.045em; }
.access-card p { color: var(--muted); margin: 10px 0 22px; }
.field { display: grid; gap: 7px; margin-top: 14px; }
.field label { font-size: .78rem; font-weight: 800; }
.field input, .field textarea, .field select {
  width: 100%;
  border: 1px solid var(--line);
  background: var(--surface);
  min-height: 52px;
  border-radius: var(--r-sm);
  padding: 12px 14px;
}
.field textarea { min-height: 110px; resize: vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--plum); outline: 3px solid color-mix(in srgb, var(--plum) 12%, transparent); }
.access-actions { display: grid; gap: 9px; margin-top: 18px; }
.access-privacy { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--faint); font-size: .75rem; }

/* dashboard */
.dashboard-grid { display: grid; gap: 14px; }
.dashboard-card { border: 1px solid var(--line); background: var(--surface); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); padding: 20px; }
.dashboard-card.featured { background: linear-gradient(135deg, var(--plum), #74324f); color: #fff8f2; border-color: transparent; }
.dashboard-card.featured p { color: rgba(255,248,242,.78); }
.dashboard-card h3 { margin: 0; font-size: 1rem; }
.dashboard-card p { margin: 6px 0 0; color: var(--muted); font-size: .88rem; }
.dashboard-list { display: grid; gap: 8px; margin-top: 14px; }
.dashboard-row { border: 1px solid var(--line); background: var(--surface-2); border-radius: var(--r-sm); padding: 13px; display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; }
.dashboard-row strong { font-size: .9rem; }
.dashboard-row small { display: block; margin-top: 3px; color: var(--faint); }
.badge { display: inline-flex; align-items: center; width: fit-content; padding: 6px 9px; border-radius: 999px; background: var(--surface-3); color: var(--muted); font: 800 .62rem/1 var(--mono); text-transform: uppercase; letter-spacing: .07em; }
.badge.ok { background: color-mix(in srgb, var(--success) 13%, var(--surface)); color: var(--success); }

/* composer */
.compose-layout { display: grid; gap: 16px; }
.compose-main, .compose-side { border: 1px solid var(--line); background: var(--surface); border-radius: var(--r-xl); box-shadow: var(--shadow-lg); }
.compose-main { padding: clamp(22px, 4vw, 38px); }
.compose-side { padding: 22px; }
.role-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 6px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--line); }
.role-switch button { min-height: 44px; border: 0; border-radius: 999px; background: transparent; color: var(--muted); font-weight: 800; }
.role-switch button[aria-pressed="true"] { background: var(--plum); color: #fff8f2; box-shadow: var(--shadow-sm); }
.statement {
  margin: 22px 0;
  padding: 20px;
  border-radius: var(--r-md);
  background: #1a111b;
  color: #fbf2e9;
}
.statement small { color: #bdaab6; font: 800 .65rem/1 var(--mono); text-transform: uppercase; letter-spacing: .1em; }
.statement p { margin: 7px 0 0; font-size: clamp(1.15rem, 4vw, 1.7rem); line-height: 1.28; letter-spacing: -.025em; font-weight: 750; }
.compose-group { margin-top: 20px; }
.compose-group h3 { margin: 0 0 9px; font-size: .83rem; }
.choice-grid { display: flex; flex-wrap: wrap; gap: 7px; }
.choice {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 999px;
  min-height: 42px;
  padding: 0 13px;
  color: var(--muted);
  font-size: .79rem;
  font-weight: 740;
}
.choice[aria-pressed="true"] { border-color: var(--coral); background: color-mix(in srgb, var(--coral) 9%, var(--surface)); color: var(--ink); }
.inputs-row { display: grid; gap: 10px; margin-top: 16px; }
.inline-field { display: grid; gap: 6px; }
.inline-field label { font-size: .76rem; font-weight: 800; }
.inline-field input { width: 100%; min-height: 48px; border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--surface); padding: 0 12px; }
.criteria-box { margin-top: 18px; display: grid; gap: 8px; }
.criteria-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 12px 13px; border-radius: var(--r-sm); background: var(--surface-2); border: 1px solid var(--line); font-size: .82rem; }
.criteria-row span:last-child { color: var(--plum); font-weight: 850; }
.compose-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.compose-side h3 { margin: 0; }
.compose-side p { margin: 7px 0 0; color: var(--muted); font-size: .88rem; }
.compose-side .tech-note { margin-top: 16px; }

/* match */
.match-stage {
  max-width: 820px;
  margin: 0 auto;
  min-height: 600px;
  border-radius: var(--r-xl);
  background: linear-gradient(145deg, #1c111c 0%, #4b213f 46%, #e96543 130%);
  color: #fff8f2;
  box-shadow: var(--shadow-lg);
  padding: clamp(28px, 7vw, 70px);
  display: grid;
  align-content: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.match-stage::before { content: ""; position: absolute; inset: 10% auto auto 50%; width: 270px; height: 270px; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(206,221,105,.24), transparent 68%); }
.match-stage > * { position: relative; }
.match-logo { width: 110px; margin: 0 auto 24px; color: var(--pear); }
.match-stage h1 { margin: 0; font-size: clamp(2.8rem, 10vw, 6rem); line-height: .9; letter-spacing: -.07em; }
.match-stage p { max-width: 54ch; margin: 18px auto 0; color: rgba(255,248,242,.8); }
.match-criteria { margin: 24px auto 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 7px; }
.match-criteria span { padding: 8px 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,.17); background: rgba(255,255,255,.08); font-size: .74rem; }
.match-actions { margin-top: 28px; display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; }
.match-stage .btn-secondary { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.2); color: #fff8f2; }

/* exchange */
.exchange-layout { display: grid; gap: 14px; }
.thread-card { border: 1px solid var(--line); border-radius: var(--r-xl); background: var(--surface); box-shadow: var(--shadow-lg); overflow: hidden; }
.thread-head { padding: 16px 18px; border-bottom: 1px solid var(--line); display: grid; gap: 10px; background: var(--surface-2); }
.thread-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.thread-title strong { font-size: .93rem; }
.thread-sub { color: var(--faint); font-size: .72rem; }
.presence-tabs { display: flex; gap: 6px; overflow-x: auto; }
.presence-tabs button { flex: 0 0 auto; border: 1px solid var(--line); background: var(--surface); border-radius: 999px; padding: 7px 10px; color: var(--muted); font-size: .7rem; font-weight: 780; }
.presence-tabs button[aria-pressed="true"] { background: var(--pear); border-color: transparent; color: #181810; }
.thread { min-height: 460px; max-height: 620px; overflow-y: auto; padding: 18px; display: flex; flex-direction: column; gap: 12px; }
.message { max-width: min(84%, 560px); display: grid; gap: 4px; }
.message.self { align-self: flex-end; }
.message .who { font: 750 .62rem/1 var(--mono); color: var(--faint); text-transform: uppercase; letter-spacing: .08em; }
.bubble { padding: 12px 14px; border-radius: 18px; background: var(--surface-2); border: 1px solid var(--line); font-size: .9rem; }
.message.self .bubble { background: var(--plum); color: #fff8f2; border-color: transparent; border-bottom-right-radius: 6px; }
.message:not(.self) .bubble { border-bottom-left-radius: 6px; }
.system-card { align-self: stretch; padding: 17px; border-radius: var(--r-md); border: 1px solid var(--line); background: var(--surface-2); display: grid; gap: 9px; }
.system-card.highlight { background: color-mix(in srgb, var(--pear) 32%, var(--surface)); border-color: color-mix(in srgb, var(--pear) 62%, var(--line)); }
.system-kicker { color: var(--faint); font: 800 .63rem/1 var(--mono); text-transform: uppercase; letter-spacing: .09em; }
.system-card h3 { margin: 0; font-size: 1rem; }
.system-card p { margin: 0; color: var(--muted); font-size: .84rem; }
.money-grid { display: grid; grid-template-columns: 1fr auto; gap: 6px 12px; padding-top: 7px; border-top: 1px solid var(--line); font-size: .82rem; }
.money-grid strong { text-align: right; }
.thread-compose { border-top: 1px solid var(--line); padding: 12px; display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.thread-compose input { min-height: 48px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); padding: 0 15px; }
.send-btn { width: 48px; height: 48px; border: 0; border-radius: 50%; background: var(--coral); color: #fff; font-size: 1.05rem; font-weight: 900; }
.mission-side { border: 1px solid var(--line); border-radius: var(--r-xl); background: var(--surface); box-shadow: var(--shadow-sm); padding: 20px; align-self: start; }
.mission-side h3 { margin: 0; }
.mission-side p { margin: 6px 0 0; color: var(--muted); font-size: .86rem; }
.mission-facts { display: grid; gap: 8px; margin-top: 16px; }
.mission-fact { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); font-size: .8rem; }
.mission-fact span:first-child { color: var(--faint); }
.mission-side .btn-primary, .mission-side .btn-secondary, .mission-side .btn-danger { width: 100%; margin-top: 9px; }

/* security / SEO detail */
.audit-grid { display: grid; gap: 10px; margin-top: 20px; }
.audit-item { padding: 18px; border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--line); }
.audit-item strong { display: block; }
.audit-item span { display: block; margin-top: 5px; color: var(--muted); font-size: .84rem; }
.audit-check { display: inline-flex; align-items: center; gap: 7px; color: var(--success); font: 800 .67rem/1 var(--mono); text-transform: uppercase; letter-spacing: .07em; }
.audit-check::before { content: "✓"; width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; background: color-mix(in srgb, var(--success) 12%, transparent); }

/* bottom dock */
.bottom-nav {
  position: fixed;
  z-index: 100;
  left: 50%;
  bottom: calc(12px + env(safe-area-inset-bottom));
  transform: translateX(-50%);
  width: min(calc(100% - 22px), 620px);
  min-height: var(--dock);
  padding: 7px;
  border: 1px solid color-mix(in srgb, var(--line-strong) 72%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--surface) 86%, transparent);
  backdrop-filter: blur(20px);
  box-shadow: 0 18px 54px rgba(67,31,55,.18);
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 3px;
}
.bottom-nav button {
  min-width: 0;
  min-height: 58px;
  padding: 5px 3px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  display: grid;
  place-items: center;
  gap: 2px;
  font-size: .61rem;
  font-weight: 800;
}
.bottom-nav button svg { width: 18px; height: 18px; }
.bottom-nav button[aria-current="page"] { background: var(--plum); color: #fff8f2; }

.site-footer { margin-top: 78px; padding: 26px 0 120px; border-top: 1px solid var(--line); color: var(--muted); }
.footer-grid { display: grid; gap: 16px; }
.footer-brand { color: var(--ink); font-weight: 900; }
.footer-copy { font-size: .82rem; max-width: 64ch; }
.footer-meta { display: flex; flex-wrap: wrap; gap: 8px; }
.footer-meta span { padding: 6px 9px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--line); font: 700 .63rem/1 var(--mono); }

@media (min-width: 700px) {
  .topbar { grid-template-columns: auto 1fr auto; }
  .top-nav { display: flex; }
  .hero { grid-template-columns: minmax(0,1.28fr) minmax(330px,.72fr); }
  .section-grid.two { grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); }
  .stat-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .security-grid, .audit-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .access-layout { grid-template-columns: 1.04fr .96fr; }
  .dashboard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .inputs-row { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .footer-grid { grid-template-columns: 1fr auto; align-items: end; }
}

@media (min-width: 980px) {
  .compose-layout { grid-template-columns: minmax(0,1.22fr) 360px; align-items: start; }
  .compose-side, .mission-side { position: sticky; top: 94px; }
  .exchange-layout { grid-template-columns: minmax(0,1fr) 340px; align-items: start; }
  .dashboard-grid { grid-template-columns: 1.15fr .85fr .85fr; }
  .dashboard-card.featured { grid-row: span 2; }
}

@media (max-width: 460px) {
  .brand-kanji { display: none; }
  .access-btn { padding: 0 12px; }
  .hero-main { min-height: 590px; }
  .hero-title { font-size: clamp(3.1rem, 17vw, 4.9rem); }
  .mirror-stage { min-height: 230px; }
  .signal-card { width: 48%; }
  .bottom-nav { width: calc(100% - 16px); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* Native application: real links, explicit states, readable copy, no public demo data. */
:root{--faint:#756571}:root[data-theme="dark"]{--faint:#bda7b5}
a{text-decoration:none}button:disabled{cursor:not-allowed;opacity:.55}svg{max-width:100%;flex-shrink:0}.brand-link{stroke:var(--coral)}
.hero-title{max-width:none;font-size:clamp(2.7rem,5.8vw,6.2rem);line-height:1.04;margin-top:52px;letter-spacing:-.055em}.hero-main{min-height:580px}.hero-visual svg{width:100%;height:auto}h1,h2,h3{overflow-wrap:break-word}
.screen-head h1,.section-title{max-width:none;line-height:1.1}.screen-head h1{font-size:clamp(2rem,4.5vw,4.1rem)}.section-title{font-size:clamp(1.9rem,3vw,3rem)}.screen-head p{line-height:1.7}
.hero-actions a,.btn-primary,.btn-secondary,.btn-quiet,.btn-danger,.access-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:8px;text-decoration:none;line-height:1.35;padding-top:12px;padding-bottom:12px}
.top-nav a{padding:12px 14px;border-radius:999px;font-size:.88rem;color:var(--muted)}.top-nav a:hover{background:var(--surface);color:var(--ink)}
.pilot-label{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:16px;font-size:.77rem;color:var(--muted)}.pilot-label span{background:var(--surface-2);border:1px solid var(--line);border-radius:30px;padding:4px 9px;font-weight:750}
.bottom-nav a{flex:1;min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:999px;color:var(--muted);font-size:.73rem;font-weight:750;padding:7px 3px}.bottom-nav a svg{width:21px;height:21px}.bottom-nav a[aria-current="page"]{background:var(--plum);color:var(--surface)}.bottom-nav{gap:2px}
:focus-visible{outline:3px solid var(--plum);outline-offset:4px}.skip-link{position:fixed;top:10px;left:12px;z-index:300;background:var(--pear);color:#20171c;padding:14px 20px;border-radius:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.notice{padding:18px 22px;background:var(--surface-2);border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:14px;margin-bottom:22px;overflow-wrap:anywhere}.notice.success{border-left-color:var(--success)}.full{width:100%}
.narrow{max-width:760px;margin:24px auto}.narrow h1,.reading h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.1;letter-spacing:-.04em;margin:16px 0 24px}.reading{max-width:900px;margin:20px auto}.reading p{color:var(--muted);line-height:1.8}.reading h2{margin-top:32px;line-height:1.3;font-size:1.4rem}
.field{display:grid;gap:8px;min-width:0;margin:18px 0}.field label{font-weight:700;font-size:.9rem}.field input,.field select,.field textarea,.copy-value{width:100%;min-width:0;min-height:50px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:13px;padding:12px 14px}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--plum);outline-offset:3px}.field input[type="file"]{font-size:.82rem;padding:12px 8px;overflow:hidden}.field small,.note{font-size:.84rem;color:var(--muted);line-height:1.65}.field textarea{resize:vertical;min-height:90px}
.form-grid{display:grid;gap:12px;grid-template-columns:1fr}.plain-fieldset{border:0;padding:0;margin:22px 0;min-width:0}.plain-fieldset legend{font-weight:750;margin-bottom:12px}.native-role{display:grid;grid-template-columns:1fr 1fr;gap:9px}.native-role label{display:flex;gap:9px;align-items:center;min-height:56px;border:1px solid var(--line);border-radius:15px;padding:12px;font-size:.87rem;font-weight:700}.native-role label:has(input:checked){background:var(--plum);color:var(--surface);border-color:var(--plum)}input[type="radio"],input[type="checkbox"]{accent-color:var(--plum);min-width:18px;min-height:18px}.native-role input{accent-color:#e96543}.check-grid{display:grid;gap:8px}.check-grid label,.check-line{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 0;font-size:.9rem}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.text-link{color:var(--plum);text-decoration:underline;text-underline-offset:4px;font-weight:700;display:inline-block;padding:12px 0}.statement p{font-size:clamp(1.12rem,2vw,1.55rem);line-height:1.6;letter-spacing:-.025em}.sector-list{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.compose-side .brand-symbol{margin-bottom:24px}.compose-side h2{font-size:1.6rem;line-height:1.2}.compose-side p{color:var(--muted);line-height:1.7}
.summary-strip{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin:24px 0 30px;background:var(--surface-2);padding:22px;border-radius:22px;border:1px solid var(--line)}.summary-strip>div{flex:1;min-width:90px}.summary-strip strong{display:block;font-size:2rem;letter-spacing:-.05em}.summary-strip span{color:var(--muted);font-size:.87rem}.row-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.row-head h2{margin:0}
.record-list{display:grid;gap:12px;margin-top:18px}.record{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:22px;border:1px solid var(--line);border-radius:19px;background:var(--surface-2);min-width:0}.record h2,.record h3{margin:10px 0 6px;font-size:1.2rem;line-height:1.35}.record p{color:var(--muted);margin:5px 0;overflow-wrap:anywhere}.record-actions{display:grid;gap:10px;justify-items:start}.empty-state{padding:32px 0;max-width:700px}.empty-state h2,.empty-state h3{font-size:1.5rem;line-height:1.4}.empty-state p{color:var(--muted)}.account-email,.secret-value,.copy-value{overflow-wrap:anywhere}
details{margin:18px 0;border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;padding:12px 0;min-height:44px;font-weight:700}.thread{min-height:300px;max-height:min(65svh,640px);overflow-y:auto;overscroll-behavior:contain}.thread-compose{align-items:flex-end}.thread-compose textarea{flex:1;min-width:0;min-height:60px;max-height:190px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:16px;padding:14px;resize:vertical}.thread-compose .send-btn{width:48px;height:48px;flex:none;display:grid;place-items:center}.bubble,.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.message-time{display:block;margin:5px 8px 0;color:var(--muted);font-size:.69rem}.message-status{margin:0;padding:10px 18px;color:var(--muted);font-size:.8rem;line-height:1.5;border-top:1px solid var(--line)}.thread-title .thread-sub{margin:5px 0}.thread-head .note{margin-bottom:0}.presence-tabs button{min-height:44px}.mission-side .notice{padding:13px;font-size:.83rem}.mission-side h2{font-size:1.6rem;line-height:1.2}.document-list{list-style:none;padding:0}.document-list li{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid var(--line)}.document-list a{color:var(--plum);text-decoration:underline;overflow-wrap:anywhere}.document-list small{color:var(--muted)}
.timeline{padding:0 0 0 25px}.timeline li{padding:18px 12px;border-bottom:1px solid var(--line)}.timeline time{display:block;color:var(--muted);font-size:.85rem;margin-top:7px}.checks{list-style:none;padding:0}.checks li{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.success-text{color:var(--success)}.danger-text{color:var(--danger)}.secret-value{background:var(--surface-2);padding:18px;border:1px dashed var(--plum);border-radius:12px;font-size:1rem}.recovery-grid{display:grid;gap:10px;padding:20px;background:var(--surface-2);border:1px solid var(--line);border-radius:14px}.admin-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}.table-scroll{overflow-x:auto;max-width:100%}table{border-collapse:collapse;width:100%;min-width:550px}caption{text-align:left;padding:16px 0;color:var(--muted);font-size:.88rem}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line);font-size:.89rem}.footer-links{display:flex;gap:14px;flex-wrap:wrap;align-content:start;font-size:.84rem}.footer-links a{text-decoration:underline;text-underline-offset:4px;padding:8px 0}.stat-card.coral,.stat-card.coral span{color:var(--ink)}.step-no{background:#4b213f;color:#fff7f2}
@media(min-width:650px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:980px){.topbar{grid-template-columns:auto 1fr auto}.top-nav{display:flex}.menu-button{display:none}.mission-side{position:static}}
@media(max-width:979px){.topbar{display:flex;justify-content:space-between}.top-nav.expanded{display:flex;position:absolute;left:14px;right:14px;top:78px;flex-direction:column;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-lg)}.top-nav.expanded a{padding:14px}.access-btn{padding:11px;font-size:.78rem}.brand-symbol{width:35px;height:35px}.brand{gap:6px}}
@media(max-width:450px){.hero-main{min-height:0;padding:25px;border-radius:28px}.hero-title{font-size:2.75rem;margin-top:34px}.hero-visual{min-height:380px;border-radius:28px}.hero-actions>*{width:100%}.signal-card{width:47%;padding:10px}.signal-card strong{font-size:.77rem}.hero-version{font-size:.6rem}.kicker{line-height:1.4}.summary-strip{gap:16px;padding:18px}.summary-strip>a{width:100%}.access-hero h1{font-size:2.35rem;max-width:none}.native-role label{font-size:.78rem;padding:10px 8px;gap:6px}.thread-head{padding:16px}.message{max-width:95%}.thread{padding:16px}.presence-tabs{display:grid;grid-template-columns:1fr}.access-btn{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.signal-card{z-index:2}html{scroll-padding-block:110px}.field,form button,.btn-primary,.btn-secondary{scroll-margin-block:110px}

/* Konaji 1.1.0: simpler public UX, richer brand system */
body{padding-bottom:36px}.has-dock{padding-bottom:calc(var(--dock) + 30px + env(safe-area-inset-bottom))}.site-header{background:color-mix(in srgb,var(--bg) 88%,transparent)}
.top-nav a,.lang-switch,.login-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.lang-switch{font:800 .72rem/1 var(--mono);letter-spacing:.08em;color:var(--muted);padding:0 8px}.login-link{padding:0 9px;font-size:.82rem;font-weight:800;color:var(--muted)}.login-link:hover,.lang-switch:hover{color:var(--ink)}
.brand-symbol .brand-link,.demo-seal .brand-link,.auth-mark .brand-link,.side-seal .brand-link,.cta-mark .brand-link{stroke:var(--coral)}
.hero-demo{display:grid;gap:15px;align-items:stretch}.hero-main-v11{min-height:560px}.hero-v11-copy{display:grid;gap:20px;margin-top:auto}.hero-title-v11{margin:48px 0 0;max-width:11ch;font-size:clamp(3rem,11vw,7.1rem);line-height:.91;letter-spacing:-.066em;font-weight:900}.hero-v11-copy>p{max-width:58ch;margin:0;color:rgba(255,248,242,.86);font-size:clamp(1rem,2vw,1.16rem);line-height:1.7}.hero-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.hero-proof span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(255,255,255,.19);border-radius:999px;background:rgba(20,10,18,.13);font-size:.74rem;font-weight:760}.hero-proof svg{width:17px;height:17px;color:var(--pear)}
.demo-panel{border:1px solid var(--line);border-radius:var(--r-xl);background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--plum) 5%,var(--surface)));box-shadow:var(--shadow-lg);padding:clamp(20px,4vw,34px);overflow:hidden;position:relative}.demo-panel::after{content:"";position:absolute;width:250px;aspect-ratio:1;border-radius:50%;right:-105px;bottom:-115px;background:radial-gradient(circle,rgba(121,215,196,.26),transparent 70%);pointer-events:none}.demo-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.demo-seal{width:54px;height:54px;color:var(--plum)}.konaji-demo{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:12px;position:relative;z-index:1}.konaji-demo li{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow-sm)}.konaji-demo li[data-step="check"]{background:linear-gradient(135deg,color-mix(in srgb,var(--pear) 18%,var(--surface)),var(--surface))}.konaji-demo li[data-step="exchange"]{background:linear-gradient(135deg,color-mix(in srgb,var(--plum) 8%,var(--surface)),var(--surface))}.demo-number{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--plum);color:#fff8f2;font:800 .68rem/1 var(--mono)}.konaji-demo h2{margin:3px 0 12px;font-size:1.12rem;letter-spacing:-.025em}.demo-request{display:flex;flex-wrap:wrap;gap:7px}.demo-request strong{width:100%;font-size:1rem}.demo-request span,.demo-checks span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.73rem;font-weight:750}.demo-checks{display:flex;flex-wrap:wrap;gap:6px}.demo-checks svg{width:14px;height:14px;color:var(--success)}.mini-thread{display:grid;gap:7px}.mini-message{width:88%;margin:0;padding:9px 11px;border-radius:13px 13px 13px 4px;background:var(--surface-2);border:1px solid var(--line);font-size:.78rem;color:var(--muted)}.mini-message.self{margin-left:auto;border-radius:13px 13px 4px 13px;background:color-mix(in srgb,var(--plum) 11%,var(--surface))}.mini-message b{display:block;color:var(--ink);font-size:.68rem;margin-bottom:3px}
.explain-strip{margin-top:18px;padding:24px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);display:grid;gap:12px;box-shadow:var(--shadow-sm)}.explain-strip p{margin:0;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.5;letter-spacing:-.025em;max-width:52ch}.section-head-wide{max-width:820px;margin-bottom:26px}.section-head-wide h2{margin:12px 0 10px;font-size:clamp(2rem,4.4vw,4rem);line-height:1.04;letter-spacing:-.05em}.section-head-wide p{margin:0;color:var(--muted);font-size:1rem;line-height:1.75}.sector-grid{display:grid;grid-template-columns:1fr;gap:9px}.sector-card{min-height:130px;padding:18px;border-radius:20px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:flex-end}.sector-card:nth-child(3n+1){background:linear-gradient(145deg,color-mix(in srgb,var(--coral) 11%,var(--surface)),var(--surface))}.sector-card:nth-child(3n+2){background:linear-gradient(145deg,color-mix(in srgb,var(--pear) 13%,var(--surface)),var(--surface))}.sector-card:nth-child(3n){background:linear-gradient(145deg,color-mix(in srgb,var(--mint) 12%,var(--surface)),var(--surface))}.sector-card strong{font-size:1.02rem}.sector-card p{margin:6px 0 0;color:var(--muted);font-size:.85rem}.home-values{margin-top:70px}.home-values .section-card{min-height:250px;display:flex;flex-direction:column;justify-content:flex-end}.home-values h2{font-size:1.7rem;margin:16px 0 8px;letter-spacing:-.035em}.home-values p{margin:0;color:var(--muted);line-height:1.7}.cta-band{margin:18px 0 30px;padding:clamp(26px,5vw,54px);border-radius:var(--r-xl);background:linear-gradient(125deg,#251524 0%,#4b213f 48%,#9e3d57 100%);color:#fff8f2;display:grid;gap:28px;box-shadow:var(--shadow-lg);overflow:hidden;position:relative}.cta-band::after{content:"";position:absolute;width:320px;aspect-ratio:1;border-radius:50%;right:-140px;top:-170px;background:radial-gradient(circle,rgba(206,221,105,.42),transparent 67%)}.cta-band>div{position:relative;z-index:1}.cta-band .cta-mark{width:58px;height:58px;color:var(--pear);margin-bottom:18px}.cta-band .kicker{color:#ffe5da}.cta-band h2{font-size:clamp(2rem,4.4vw,4.5rem);max-width:13ch;margin:12px 0 0;line-height:1;letter-spacing:-.055em}.cta-band .btn-secondary{color:#fff8f2;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}
.auth-shell{display:grid;gap:14px;max-width:1100px;margin:16px auto}.auth-brand,.auth-card{border-radius:var(--r-xl);box-shadow:var(--shadow-lg)}.auth-brand{min-height:370px;padding:clamp(26px,6vw,58px);background:linear-gradient(150deg,#241323 0%,#5c294a 62%,#e96543 145%);color:#fff8f2;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.auth-brand::after{content:"";position:absolute;width:300px;aspect-ratio:1;border-radius:50%;right:-140px;bottom:-150px;background:radial-gradient(circle,rgba(206,221,105,.36),transparent 70%)}.auth-brand>*{position:relative;z-index:1}.auth-brand .kicker{color:#ffe6de}.auth-mark{width:70px;height:70px;color:var(--pear);margin:24px 0}.auth-brand h1{font-size:clamp(2.4rem,7vw,4.7rem);line-height:.95;letter-spacing:-.06em;margin:0 0 14px;max-width:10ch}.auth-brand p{max-width:46ch;margin:0;color:rgba(255,248,242,.82);line-height:1.7}.auth-brand ul{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:8px}.auth-brand li{display:flex;gap:8px;align-items:center;font-size:.88rem;color:rgba(255,248,242,.86)}.auth-brand li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pear)}.auth-mini-flow{display:grid;gap:8px;margin-top:28px}.auth-mini-flow span{display:flex;align-items:center;min-height:42px;padding:8px 12px;border-radius:13px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);font-size:.82rem}.auth-card{padding:clamp(24px,5vw,46px);background:var(--surface);border:1px solid var(--line);align-self:stretch;display:grid;align-content:center}.auth-card h2{margin:0 0 20px;font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.045em}.form-stack{display:grid;gap:3px}.label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.password-tools{display:inline-flex;flex-wrap:wrap;gap:4px}.text-button,.field-action{border:0;background:transparent;color:var(--plum);font-size:.76rem;font-weight:800;text-decoration:underline;text-underline-offset:4px;padding:8px}.input-action{display:grid;grid-template-columns:1fr auto;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.input-action input{border:0!important;border-radius:0!important;outline:0!important}.field-action{min-width:72px;text-decoration:none;border-left:1px solid var(--line)}.passphrase-meter{min-height:21px;margin-top:4px;font-size:.76rem;color:var(--muted)}.passphrase-meter[data-level="strong"]{color:var(--success)}.passphrase-meter[data-level="good"]{color:var(--plum)}.passphrase-meter[data-level="short"]{color:var(--warning)}.field-help{margin:3px 0 0;color:var(--faint);font-size:.78rem;line-height:1.55}.check-row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;font-size:.84rem;color:var(--muted);line-height:1.45}.check-row input{margin-top:2px}.check-row a{color:var(--plum);font-weight:750;text-decoration:underline;text-underline-offset:3px}.auth-links{display:grid;gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line);font-size:.84rem;color:var(--muted)}.auth-links a{color:var(--plum);font-weight:800;text-decoration:underline;text-underline-offset:4px}
.intent-grid{display:grid;gap:12px}.intent-card{min-height:190px;padding:24px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);text-decoration:none;display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:center;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.intent-card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:var(--shadow-lg)}.intent-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:var(--plum);color:#fff8f2;font-size:1.6rem;font-weight:500}.intent-card.available .intent-icon{background:var(--coral)}.intent-card h2{margin:0 0 7px;font-size:1.4rem;letter-spacing:-.035em}.intent-card p{margin:0;color:var(--muted);line-height:1.6}.simple-explainer{margin-top:14px;padding:24px;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(135deg,color-mix(in srgb,var(--mint) 8%,var(--surface)),var(--surface))}.simple-explainer h2{margin:12px 0 14px;font-size:1.45rem}.simple-explainer ol{margin:0;padding-left:21px;color:var(--muted);display:grid;gap:8px}.compose-layout.v11{display:grid;gap:14px;align-items:start}.simple-rule{border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--plum) 8%,var(--surface)),var(--surface));border-radius:var(--r-xl);padding:26px;box-shadow:var(--shadow-sm)}.simple-rule .side-seal{width:68px;height:68px;color:var(--plum);margin-bottom:30px}.simple-rule h2{margin:12px 0 10px;font-size:1.75rem;line-height:1.15;letter-spacing:-.04em}.simple-rule p{color:var(--muted);line-height:1.7}.criteria-box{display:grid;gap:8px;margin-top:24px}.criteria-box p{margin:0;padding:12px;border-radius:13px;background:var(--surface-2);border:1px solid var(--line);font-size:.83rem}.must-match{padding:20px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--pear) 8%,var(--surface))}
.action-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:14px}.action-summary article{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.action-summary strong{display:block;font-size:2rem;letter-spacing:-.055em}.action-summary span{display:block;color:var(--muted);font-size:.78rem}.action-summary>a{grid-column:1/-1}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.section-heading h2{margin:0 0 8px;font-size:1.45rem}.section-heading p{margin:0;color:var(--muted);max-width:58ch}.device-section{margin-top:14px}.inline-form{display:grid;gap:8px;margin:18px 0}.inline-form select{min-height:48px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.public-hero{max-width:820px;padding:30px 0}.public-hero h1{font-size:clamp(2.6rem,7vw,5.9rem);line-height:.96;letter-spacing:-.065em;margin:14px 0}.public-hero>p{font-size:clamp(1.05rem,2vw,1.25rem);color:var(--muted);line-height:1.75}.public-grid{display:grid;gap:11px;margin-top:24px}.public-card{padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}.public-card h2{font-size:1.2rem;line-height:1.3;margin:0 0 9px;letter-spacing:-.025em}.public-card p{margin:0;color:var(--muted);line-height:1.72}.public-card a{color:var(--plum);font-weight:780;text-decoration:underline;text-underline-offset:3px}.error-card{max-width:760px;margin:42px auto;padding:clamp(26px,6vw,54px);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-lg)}.error-code{font-size:clamp(4rem,16vw,8rem);font-weight:900;letter-spacing:-.08em;line-height:.9;color:var(--plum);margin:28px 0 16px}.error-card h1{font-size:clamp(1.7rem,4vw,2.8rem);line-height:1.12;margin:0 0 10px}.error-card p{color:var(--muted);line-height:1.7}
.footer-grid{display:grid;gap:26px}.footer-brand{font-weight:900;font-size:1.1rem;text-decoration:none}.footer-copy{max-width:36ch;color:var(--muted)}
@media(min-width:620px){.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-summary{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.action-summary>a{grid-column:auto}.inline-form{grid-template-columns:1fr auto;align-items:end}.footer-grid{grid-template-columns:minmax(220px,.7fr) 1.3fr}}
@media(min-width:880px){.auth-shell{grid-template-columns:minmax(0,.86fr) minmax(420px,1fr)}.auth-brand{min-height:650px}.compose-layout.v11{grid-template-columns:minmax(0,1.25fr) minmax(300px,.65fr)}.simple-rule{position:sticky;top:100px}.sector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cta-band{grid-template-columns:1fr auto;align-items:end}}
@media(min-width:980px){.hero-demo{grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr)}.hero-main-v11,.demo-panel{min-height:650px}.demo-panel{display:flex;flex-direction:column}.konaji-demo{margin-top:auto;margin-bottom:auto}.hero-title-v11{font-size:clamp(4.4rem,6.8vw,7.8rem)}.explain-strip{grid-template-columns:180px 1fr;align-items:center}.home-values{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:979px){.top-actions{gap:4px}.login-link{display:none}.top-nav.expanded{z-index:100}.top-nav.expanded a{min-height:48px}.lang-switch{padding:0 4px}}
@media(max-width:520px){.shell{width:min(calc(100% - 22px),var(--max))}.screen{padding-top:18px}.hero-main-v11,.demo-panel,.cta-band,.auth-brand,.auth-card{border-radius:27px}.hero-title-v11{font-size:clamp(2.65rem,14vw,4rem);margin-top:38px}.hero-v11-copy>p{font-size:.97rem}.hero-proof{gap:6px}.hero-proof span{font-size:.68rem}.konaji-demo li{grid-template-columns:34px 1fr;padding:14px}.demo-number{width:30px;height:30px}.sector-card{min-height:115px}.section-head-wide h2{font-size:2.2rem}.intent-card{grid-template-columns:46px 1fr;min-height:150px;padding:18px}.intent-icon{width:44px;height:44px}.auth-brand{min-height:330px}.auth-brand h1{font-size:2.6rem}.auth-card{padding:22px}.label-row{align-items:flex-start;flex-direction:column}.password-tools{width:100%;justify-content:flex-start}.public-hero h1{font-size:2.65rem}.bottom-nav{left:8px;right:8px;transform:none;width:auto;bottom:calc(8px + env(safe-area-inset-bottom));padding:5px}.bottom-nav a{font-size:.65rem}.top-actions .access-btn{display:none}}
.public-sections{display:grid;gap:11px;margin-top:24px}.public-section{padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}.public-section h2{font-size:1.2rem;line-height:1.3;margin:0 0 9px;letter-spacing:-.025em}.public-section p{margin:0;color:var(--muted);line-height:1.72}.public-page>.btn-primary,.public-page>p>.btn-primary{margin-top:20px}.compact-head{max-width:900px}.compact-head h1{max-width:16ch}.bottom-nav{max-width:620px}.section-card+.section-card{margin-top:14px}
@media(min-width:620px){.public-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.public-sections{grid-template-columns:repeat(3,minmax(0,1fr))}}
.form-error{margin:0 0 16px;padding:13px 14px;border-radius:13px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line));border-left:4px solid var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--surface));color:var(--ink);font-size:.88rem;line-height:1.55}
.home-composer{display:grid;gap:10px;max-width:680px}.home-composer>label{font-weight:800;font-size:.92rem}.home-composer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.home-composer-row input{min-height:52px;border:1px solid rgba(255,255,255,.28);border-radius:16px;background:rgba(255,255,255,.1);color:#fff8f2;padding:0 16px;font:inherit}.home-composer-row input::placeholder{color:rgba(255,248,242,.7)}.home-availability-link{color:#fff8f2;font-weight:800;text-decoration:underline;text-underline-offset:4px;justify-self:start}.draft-recovery{margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--pear) 9%,var(--surface));display:grid;gap:10px}.draft-recovery[hidden]{display:none}.draft-recovery label{font-weight:850}.draft-recovery p{margin:0;color:var(--muted);font-size:.88rem}.draft-recovery textarea{width:100%;resize:vertical}
@media(max-width:520px){.home-composer-row{grid-template-columns:1fr}.home-composer-row .btn-primary{width:100%}}
/* Konaji 1.2.0 homepage */
.home-hero-v12{display:grid;gap:16px;align-items:stretch}.home-intro-v12{padding:clamp(26px,5vw,54px);border-radius:var(--r-xl);background:linear-gradient(138deg,#3c1835 0%,#74314f 56%,#c65342 100%);color:#fff8f2;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;justify-content:center;gap:24px;overflow:hidden;position:relative}.home-intro-v12::after{content:"";position:absolute;inset:auto -90px -130px auto;width:260px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(206,221,105,.18),transparent 70%);pointer-events:none}.home-intro-copy,.home-composer,.home-availability-link,.home-intro-notes{position:relative;z-index:1}.home-intro-v12 h1{font-size:clamp(2.25rem,10vw,2.75rem);line-height:.98;letter-spacing:-.052em;max-width:12ch;margin:0}.home-lead{font-size:clamp(1rem,2.1vw,1.15rem);line-height:1.62;max-width:58ch;margin:12px 0 0;color:rgba(255,248,242,.88)}.home-intro-notes{display:flex;flex-wrap:wrap;gap:9px}.home-intro-notes span{display:inline-flex;align-items:center;gap:7px;font-size:.75rem;font-weight:760;color:rgba(255,248,242,.9)}.home-intro-notes svg{width:16px;height:16px;color:var(--pear)}
.home-flow{padding:clamp(22px,4vw,34px);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-lg);display:grid;gap:20px}.home-flow-head{display:flex;justify-content:space-between;align-items:center;gap:16px;font:800 .72rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.home-flow-seal{width:44px;height:44px}.home-flow-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.home-flow-list>li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:15px 0;border-top:1px solid var(--line)}.home-flow-list>li:first-child{border-top:0}.flow-step{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--plum) 10%,var(--surface));font:800 .66rem/1 var(--mono);color:var(--plum)}.home-flow-list h2{font-size:1rem;margin:3px 0 9px;letter-spacing:-.02em}.flow-request,.flow-checks{display:flex;flex-wrap:wrap;gap:6px}.flow-request strong{width:100%;font-size:.95rem}.flow-request span,.flow-checks span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--surface-2);font-size:.72rem;border:1px solid var(--line)}.flow-checks svg{width:13px;height:13px;color:var(--pear)}.flow-match{background:linear-gradient(90deg,color-mix(in srgb,var(--pear) 8%,transparent),transparent);border-radius:14px;padding-inline:8px!important}.flow-thread{display:grid;gap:6px}.flow-thread p{margin:0;padding:8px 10px;border-radius:12px 12px 12px 4px;background:var(--surface-2);font-size:.76rem;color:var(--muted);max-width:92%}.flow-thread p.self{margin-left:auto;border-radius:12px 12px 4px 12px;background:color-mix(in srgb,var(--lilac) 12%,var(--surface))}.flow-thread b{display:block;color:var(--ink);font-size:.66rem;margin-bottom:2px}
.home-principle-v12,.home-use-trust-v12{margin-top:clamp(54px,8vw,96px)}.home-section-intro{max-width:760px}.home-section-intro h2{font-size:clamp(2rem,4.4vw,3.75rem);line-height:1.02;letter-spacing:-.048em;margin:12px 0}.home-section-intro p{color:var(--muted);line-height:1.72;max-width:62ch;margin:0}.home-principle-steps{list-style:none;padding:0;margin:32px 0 0;border-top:1px solid var(--line)}.home-principle-steps li{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.home-principle-steps span{font:800 .72rem/1 var(--mono);color:var(--coral)}.home-principle-steps p{margin:0;font-size:clamp(1.05rem,2vw,1.32rem);font-weight:780;letter-spacing:-.02em}
.home-need-stream{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 34px}.home-need-stream span{padding:10px 13px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:.86rem;font-weight:720;box-shadow:var(--shadow-sm)}.home-trust-split{display:grid;gap:1px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--line)}.home-trust-split>div{padding:clamp(22px,4vw,36px);background:var(--surface)}.home-trust-split h3{margin:0 0 18px;font-size:1.2rem;letter-spacing:-.025em}.home-trust-split ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.home-trust-split li{position:relative;padding-left:20px;color:var(--muted)}.home-trust-split li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--coral)}.home-trust-split>div+div li::before{background:var(--pear)}
.home-final-v12{margin:clamp(54px,8vw,96px) 0 28px;padding:clamp(26px,5vw,44px);border-radius:var(--r-xl);background:linear-gradient(120deg,#241422,#4a213e);color:#fff8f2;display:grid;gap:24px;align-items:end}.home-final-seal{width:46px;height:46px;color:var(--pear);margin-bottom:14px}.home-final-v12 h2{font-size:clamp(2rem,4vw,3.45rem);line-height:1.02;letter-spacing:-.045em;max-width:15ch;margin:0}.home-final-actions{display:flex;flex-wrap:wrap;gap:10px}.home-final-v12 .btn-secondary{color:#fff8f2;border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.07)}
@media(min-width:760px){.home-trust-split{grid-template-columns:1fr 1fr}.home-final-v12{grid-template-columns:1fr auto}.home-principle-steps{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.home-principle-steps li{display:block;border-bottom:0;border-right:1px solid var(--line);padding:24px}.home-principle-steps li:first-child{padding-left:0}.home-principle-steps li:last-child{border-right:0}.home-principle-steps p{margin-top:14px}}
@media(min-width:980px){.home-hero-v12{grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr)}.home-intro-v12 h1{font-size:clamp(2.75rem,4vw,3.625rem)}.home-flow{align-self:stretch}.home-flow-list{align-content:center;height:100%}}
@media(max-width:520px){.home-intro-v12,.home-flow,.home-final-v12{border-radius:26px}.home-section-intro h2{font-size:2.1rem}.home-trust-split>div{padding:20px}.home-final-actions>*{width:100%}.home-intro-notes{display:grid}.home-need-stream{gap:7px}.home-need-stream span{font-size:.8rem;padding:9px 11px}}
/* Konaji 1.2.0 auth simplification */
.auth-shell-v12{max-width:980px;align-items:stretch}.auth-brand-v12{min-height:290px;padding:clamp(24px,4vw,44px);justify-content:center}.auth-brand-v12 .auth-mark{width:52px;height:52px;margin:18px 0}.auth-brand-v12 h1{font-size:clamp(2.1rem,5vw,3.4rem);line-height:1;max-width:12ch;margin-bottom:12px}.auth-brand-v12 p{max-width:38ch}.auth-card{align-content:center}.auth-card h2{font-size:clamp(1.65rem,3vw,2.2rem)}
@media(min-width:880px){.auth-shell-v12{grid-template-columns:minmax(0,.72fr) minmax(430px,1fr)}.auth-brand-v12{min-height:520px}}
@media(max-width:520px){.auth-brand-v12{min-height:230px}.auth-brand-v12 h1{font-size:2.2rem}.auth-brand-v12 .auth-mark{width:44px;height:44px;margin:14px 0}}
