<!-- SOLID CITY · part 173 -->
0deg,#7a3a3a,#4a1a1a);color:#ffd0d0;border-color:#ff6b7a}
.fg-place.sel{background:linear-gradient(180deg,#2f8f4e,#14502a);color:#fff;border-color:#bff5cf}
.fg-pop{position:absolute;z-index:14;right:calc(116px + env(safe-area-inset-right));top:calc(246px + env(safe-area-inset-top));width:min(300px,calc(100vw - 140px));padding:10px;border-radius:14px;background:rgba(10,6,10,.95);border:1px solid #e8c36a;pointer-events:auto}
.fg-ph{color:#f6dc8e;font:800 11px/1 system-ui,sans-serif;letter-spacing:.16em;margin:2px 0 8px}
.fg-sw{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:10px}
.fg-s{height:40px;border-radius:10px;border:2px solid rgba(255,255,255,.25);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;position:relative;overflow:hidden}
.fg-pick input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.fg-row{display:flex;gap:6px;margin:6px 0}
.fg-wrap{flex-wrap:wrap}
.fg-t{width:auto;min-width:46px;height:40px;padding:0 10px;font-size:11px;letter-spacing:.08em;font-weight:800}
.fg-gold{border-color:#ffd27a;color:#000;background:linear-gradient(180deg,#f3d27a,#b8862a)}
.fg-sheet{position:absolute;z-index:21;left:0;right:0;bottom:0;max-height:72vh;overflow:auto;padding:10px 12px calc(14px + env(safe-area-inset-bottom));background:rgba(8,5,9,.97);border-top:2px solid #e8c36a;border-radius:16px 16px 0 0;color:#f6e9c4;font:13px/1.35 system-ui,sans-serif;pointer-events:auto;-webkit-overflow-scrolling:touch}
.fg-sh-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.fg-sh-h b{color:#ff4d5e;letter-spacing:.2em}
.fg-sec{padding:8px 0;border-top:1px solid rgba(232,195,106,.18)}
.fg-sec input{height:40px;border-radius:9px;border:1px solid #6b5220;background:#0c0a0e;color:#fff;font-size:16px;padding:0 10px;width:min(260px,60vw)}
.fg-li{display:flex;align-items:center;gap:6px;padding:4px 0}.fg-li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fg-li i{color:#a49aa8;font-style:normal;font-size:11px}
.fg-dim{color:#a49aa8;font-size:12px}
.fg-foot{margin-top:8px}
@media (max-width:600px){
  .fg-bar{top:calc(146px + env(safe-area-inset-top));max-width:calc(100vw - 176px);font-size:11px;padding:7px 8px}
  .fg-col{top:calc(244px + env(safe-area-inset-top));grid-template-columns:repeat(2,44px);gap:6px}
  .fg-b{width:44px;height:44px;font-size:19px}
  .fg-tray{left:calc(188px + env(safe-area-inset-left));right:calc(10px + env(safe-area-inset-right));flex-direction:column;align-items:stretch;bottom:calc(14px + env(safe-area-inset-bottom))}
  .fg-place{height:52px}
  .fg-pop{right:calc(110px + env(safe-area-inset-right));top:calc(244px + env(safe-area-inset-top));width:calc(100vw - 130px)}
}
@media (max-height:700px) and (min-width:601px){.fg-col{grid-template-columns:repeat(4,46px)}.fg-pop{top:calc(360px + env(safe-area-inset-top))}}
/* ---------- SOUL PRINT talk panel (wine-red) ---------- */
.sp-talk{border-top-color:#c0306a}
.sp-talk .sc-talk-h b{color:#ff7aa8}
.sp-talk .sc-talk-log .her{background:#1a0a12;border-color:#8a1834;color:#ffe6ef}

/* 2026-10-09 player: iPhone sets the music volume with the side buttons (element.volume is read-only on iOS) */
.mp-vol.mp-vol-hw{align-items:center;gap:8px}
.mp-volhint{font-size:11px;line-height:1.3;opacity:.75;letter-spacing:.02em}
/* 👥 AI CITIZENS */
.cz-talk{border-top-color:var(--cz,#e8c36a)}
.cz-talk .sc-talk-h{align-items:center}
.cz-talk .sc-talk-h img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--cz,#e8c36a);flex:none}
.cz-talk .sc-talk-h b{color:var(--cz,#ff4d5e)}
.cz-talk .sc-talk-log .her{border-color:var(--cz,#6b5220)}
.cz-talk .sc-talk-log small{color:#8f8496;font-size:10px}
.cz-chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.cz-chips button{flex:none;height:32px;border-radius:16px;border:1px solid #6b5220;background:#141016;color:#f6e9c4;font-size:12px;padding:0 10px}
#cz-radio{position:absolute;left:50%;transform:translate(-50%,-6px);top:calc(94px + env(safe-area-inset-top));max-width:min(560px,80vw);font-size:12px;color:#e9dfe9;background:rgba(8,4,8,.72);border:1px solid #3a2a18;padding:5px 12px;border-radius:14px;opacity:0;pointer-events:none;transition:opacity .5s,transform .5s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#cz-radio.on{opacity:1;transform:translate(-50%,0)}
#cz-follow{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(150px + env(safe-area-inset-bottom));font-size:13px;color:#f6e9c4;background:rgba(8,4,8,.85);border:1px solid #e8c36a;border-radius:14px;padding:6px 8px 6px 12px;display:flex;gap:8px;align-items:center;max-width:90vw}
#cz-follow b{color:#ffd27a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#cz-follow button{background:#a30d1d;border:1px solid #e8c36a;color:#fff;border-radius:10px;height:30px;padding:0 10px;font-weight:700}
.cz-card{dis