/* TOMOSHI：夜の居酒屋。暗い店内、スポットライトに照らされた木のカウンター、窓の外の庭の緑 */
:root {
  --bg: #12100e;
  --surface: #1e1a16;
  --surface-2: #28221c;
  --ink: #f2e7d6;
  --muted: #a8998a;
  --line: #3a3229;
  --accent: #d9a25a;      /* 灯りの琥珀色 */
  --accent-ink: #1a140e;
  --hot: #e0784a;
  --ok: #8fc27a;
  --badge: #e0784a;
  --pmark: #d9a25a;
  --side-dark: #0c0a08;
  --side-ink: #2b1c0f;
  --side-pill: rgba(255, 244, 222, .82);
  --human-bg: rgba(217, 162, 90, .1);
  --human-line: rgba(217, 162, 90, .45);
  --human-node: #e8b977;
  --bar-ink: #e8b977;
  --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 14px 30px -14px rgba(0, 0, 0, .7);
  --shadow-lift: 0 2px 4px rgba(0, 0, 0, .45), 0 22px 44px -16px rgba(0, 0, 0, .8);
  --font-head: "Shippori Mincho", serif;
  /* カウンターの一枚板：スポットライトが3つ当たっている */
  --side:
    radial-gradient(70% 18% at 50% 14%, rgba(255, 226, 170, .55), transparent 75%),
    radial-gradient(70% 18% at 50% 50%, rgba(255, 226, 170, .45), transparent 75%),
    radial-gradient(70% 18% at 50% 86%, rgba(255, 226, 170, .4), transparent 75%),
    linear-gradient(90deg, rgba(0, 0, 0, .35), transparent 18%, transparent 82%, rgba(0, 0, 0, .35)),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='900'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.09 0.0035' numOctaves='4' seed='5'/><feColorMatrix values='0 0 0 0 0.35  0 0 0 0 0.2  0 0 0 0 0.08  0 0 0 1 -0.25'/></filter><rect width='300' height='900' fill='%23b07a45'/><rect width='300' height='900' filter='url(%23g)'/></svg>") 0 0 / 300px 900px;
}
body.resident {
  background:
    radial-gradient(40% 50% at 100% 30%, rgba(90, 140, 70, .16), transparent 70%),
    radial-gradient(50% 30% at 55% 0%, rgba(255, 200, 120, .1), transparent 70%),
    var(--bg);
  background-attachment: fixed;
}
.r-side { box-shadow: 0 0 40px -6px rgba(255, 200, 120, .25), 0 24px 50px -16px rgba(0, 0, 0, .8); }
.r-pmark { color: #1a140e; }
.r-pill.dark { background: #0c0a08; color: #f2e7d6; box-shadow: inset 0 0 0 1px rgba(217, 162, 90, .4); }
.r-head h1 { font-weight: 700; letter-spacing: .06em; }
.r-card { box-shadow: inset 0 1px 0 rgba(255, 220, 160, .12), var(--shadow); }
.r-note .ic, .r-card h3 .ic { color: var(--accent); }
.r-kic { background: rgba(217, 162, 90, .14); }
.r-btn { box-shadow: 0 0 0 1px var(--line), 0 6px 12px -8px rgba(0, 0, 0, .6); }
.r-btn.primary { background: linear-gradient(180deg, #e8b977, #c98a4b); color: #1a140e; box-shadow: 0 0 22px -4px rgba(232, 185, 119, .55); }
.r-node.human, .r-node.human .who, .r-legend .human::before { color: #1a140e; }
.r-node.human { border-color: #1a140e; box-shadow: 0 4px 0 #0c0a08, 0 0 18px -4px rgba(232, 185, 119, .5); }
.r-node.sys { border-color: var(--muted); }
.r-node.has .r-n { background: var(--accent); color: #1a140e; }
.r-wf-bar { background: #0c0a08; box-shadow: inset 0 0 0 1px rgba(217, 162, 90, .35); }
.r-wf-lines { color: #8a7b6b; }
.r-ava { box-shadow: 0 0 0 2px #1e1a16, 0 4px 10px -3px rgba(0, 0, 0, .6); }
.toast { background: var(--accent); color: #1a140e; }
.r-msg p { color: var(--ink); }
.r-chat-x { color: #2b1c0f; }
textarea, input { color: var(--ink); }
.r-rules textarea, .r-chat-ask input { background: var(--surface-2); }
.wait .r-state { background: rgba(224, 120, 74, .18); }
.r-flow li.human, .r-kcol.human { background: rgba(217, 162, 90, .1); }
.r-node.human small { color: rgba(26, 20, 14, .72); }
