/* Remaining scene interactions, opt-in component shells; no economy or world geometry. */
body.premium-panels-v80 #modal:has(#city-observation){background:var(--pp80-shell);border:1px solid var(--pp80-rim);border-radius:24px;box-shadow:inset 0 1px #ecf0ff80,0 0 0 4px #16233d99,0 22px 80px #030a23a6;padding:24px}
#modalContent #city-observation{color:var(--pp80-text);min-width:0}
#city-observation .city-observation-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:48px}
#city-observation .city-observation-top .eyebrow{font-size:10px;line-height:1.45;letter-spacing:.06em;color:#c8d7ef;max-width:210px}
#city-observation .city-observation-back{flex-shrink:0;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid var(--pp80-rim);background:var(--pp80-enamel);box-shadow:var(--pp80-card-depth);color:#f6f5ff;font-size:12px;line-height:1.3}
#modalContent #city-observation h2{font-size:28px;line-height:1.12;letter-spacing:-.025em;margin:16px 0;color:#fff8e9;overflow-wrap:normal;word-break:normal}
#city-observation .city-observation-context{margin:0 0 16px;padding:0;border:1px solid var(--pp80-line);border-radius:12px;background:var(--pp80-inset)}
#city-observation .city-observation-context summary{cursor:pointer;min-height:44px;padding:12px;box-sizing:border-box;font-size:12px;line-height:1.5;color:#d8e4f9}
#city-observation .city-observation-context p{font-size:13px;line-height:1.55;margin:0;padding:0 12px 12px;color:#d7e1f2}
#city-observation .city-observation-context img{display:block;width:calc(100% - 24px);height:150px;object-fit:cover;margin:0 12px 12px;border-radius:10px}
#city-observation .city-observation-progress{display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:11px;line-height:1.5;color:#d4dcef;margin-bottom:12px}
#modalContent #city-observation #cityQuestion{font-family:inherit;font-size:18px;font-weight:750;line-height:1.4;margin:0 0 14px;color:#fff8e9}
#city-observation .city-answers{margin:0;gap:10px}
#city-observation .city-answers button{display:flex;align-items:center;gap:12px;min-height:52px;padding:13px;border:1px solid #fff1ca;border-radius:14px;background:var(--pp80-paper);box-shadow:inset 0 1px #fffdf4,0 3px 0 #74694e,0 7px 12px #07162f40;color:#1c3048;font-size:14px;font-weight:650;line-height:1.45;white-space:normal;text-align:left}
#city-observation .city-answer-number{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border:1px solid #41587555;border-radius:8px;font-size:11px;color:#425875;background:#ffffff65}
#city-observation .city-answers button:hover{background:#fff8e7}
#city-observation .city-answers button:active{box-shadow:inset 0 2px 5px #67583c25,0 1px 0 #74694e;transform:translateY(2px)}
#city-observation :is(button,summary):focus-visible{outline:3px solid #ffdfa0;outline-offset:3px}
#modalContent #city-observation .city-answer-status{min-height:20px;margin:12px 0;font-size:13px;line-height:1.5;color:#ffe0a6}
#city-observation .city-complete{padding:18px;border:1px solid #a9d9b5;border-radius:14px;background:linear-gradient(145deg,#285f60,#204247);color:#e4ffe0;font-weight:750}
#modalContent #city-observation :is(.hint,.city-observation-result){font-size:12px;line-height:1.55;color:#cbd6ea;margin:14px 0 0}
@media(max-width:420px){body.premium-panels-v80 #modal:has(#city-observation){padding:18px 12px}#city-observation .city-observation-top{align-items:flex-start;padding-right:48px;gap:8px}#city-observation .city-observation-top .eyebrow{font-size:9px}#city-observation .city-observation-back{padding:10px 8px;font-size:11px}#modalContent #city-observation h2{font-size:24px;margin:14px 0}#modalContent #city-observation #cityQuestion{font-size:17px}#city-observation .city-observation-progress{font-size:10px;gap:8px}}
@media(prefers-reduced-motion:reduce){#city-observation *{animation:none!important;transition:none!important}#city-observation .city-answers button:active{transform:none}}
