:root{--ac-cream: #fdf6e3;--ac-cream-2: #f5eeda;--ac-ink: #4a3b2a;--ac-ink-soft: #7a6a55;--ac-wood: #8a5a3b;--ac-wood-dark: #6b4429;--ac-leaf: #7cb46b;--ac-leaf-dark: #4e7d43;--ac-pink: #f2a0b5;--ac-sky: #8ecae6;--ac-gold: #f5c542;--ac-paper-line: rgba(107, 68, 41, .18);--radius-lg: 24px;--radius-md: 16px;--radius-pill: 999px;--shadow-chunky: 0 4px 0 var(--ac-wood-dark);--shadow-chunky-leaf: 0 4px 0 var(--ac-leaf-dark);--shadow-soft: 0 8px 24px rgba(74, 59, 42, .25);--font-ui: "Arial Rounded MT Bold", "Helvetica Neue", Arial, sans-serif;--font-size-base: 15px;--touch-min: 44px}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--ac-cream)}body{font-family:var(--font-ui);font-size:var(--font-size-base);color:var(--ac-ink)}#scene{position:fixed;top:0;right:0;bottom:0;left:0}#scene:after{content:none}#scene canvas{display:block;touch-action:none}#topbar{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:linear-gradient(to bottom,#4a3b2a59,#4a3b2a00);pointer-events:none}#topbar button{pointer-events:auto}#brand{font-size:20px;font-weight:800;color:var(--ac-ink);background:linear-gradient(to bottom,#fffdf2,var(--ac-cream));border:2px solid var(--ac-wood);border-radius:var(--radius-pill);padding:6px 14px;box-shadow:0 2px 0 var(--ac-wood-dark)}#brand span{font-size:13px;font-weight:400;color:var(--ac-ink-soft);margin-left:8px}#topright{display:flex;gap:10px;align-items:center;font-size:14px}#count,#meritBadge{background:var(--ac-cream);color:var(--ac-ink);border:2px solid var(--ac-wood);padding:6px 12px;border-radius:var(--radius-pill);box-shadow:0 2px 0 var(--ac-wood-dark)}#meritBadge{border-color:var(--ac-gold);font-weight:700}#topright button{background:var(--ac-cream);color:var(--ac-ink);border:2px solid var(--ac-wood);font-size:18px;width:var(--touch-min);height:var(--touch-min);border-radius:50%;cursor:pointer;box-shadow:0 3px 0 var(--ac-wood-dark)}#topright button:active{transform:translateY(3px);box-shadow:none}#topright button{display:inline-flex;align-items:center;justify-content:center}#topright button img.ic{width:24px;height:24px;display:block}#quickbar button img.ic,#bottommenu button img.ic{width:22px;height:22px;vertical-align:-5px;margin-right:6px}#ticker{position:fixed;top:56px;left:50%;transform:translate(-50%);z-index:9;background:var(--ac-cream);color:var(--ac-ink);border:2px solid var(--ac-wood);padding:8px 18px;border-radius:var(--radius-pill);font-size:14px;max-width:92vw;text-align:center;display:none;box-shadow:var(--shadow-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#quickbar button,#chatbar button,#bottommenu button,#modalFoot button,#modalBody button{font-family:var(--font-ui);background:var(--ac-cream);color:var(--ac-ink);border:2px solid var(--ac-wood);border-radius:var(--radius-pill);box-shadow:0 3px 0 var(--ac-wood-dark);cursor:pointer;font-size:14px;min-height:var(--touch-min)}#quickbar button:active,#chatbar button:active,#bottommenu button:active,#modalFoot button:active,#modalBody button:active{transform:translateY(3px);box-shadow:none}#quickbar button:hover,#bottommenu button:hover{background:var(--ac-cream-2)}#quickbar{position:fixed;left:16px;bottom:118px;z-index:10;display:flex;flex-direction:column;gap:8px}#quickbar button{padding:9px 14px;text-align:left}#chatbar{position:fixed;left:50%;transform:translate(-50%);bottom:72px;z-index:10;display:flex;gap:8px;width:min(560px,92vw)}#chatbar input{flex:1;min-width:0;padding:11px 16px;border-radius:var(--radius-pill);border:2px solid var(--ac-wood);background:var(--ac-cream-2);color:var(--ac-ink);font-size:15px;outline:none;min-height:var(--touch-min);font-family:var(--font-ui)}#chatbar input:focus{background:var(--ac-cream)}#chatbar button{background:var(--ac-leaf);color:#fff;border-color:var(--ac-leaf-dark);box-shadow:0 3px 0 var(--ac-leaf-dark);font-weight:700;padding:9px 20px}#bottommenu{position:fixed;left:0;right:0;bottom:12px;z-index:10;display:flex;gap:6px;flex-wrap:nowrap;justify-content:safe center;width:max-content;max-width:96vw;margin:0 auto;overflow-x:auto;scrollbar-width:none}#bottommenu::-webkit-scrollbar{display:none}#bottommenu button{font-size:13px;padding:8px 12px;flex-shrink:0}#modalWrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#4a3b2a73;display:flex;align-items:center;justify-content:center}#modalWrap.hidden{display:none}#modal{background:var(--ac-cream);color:var(--ac-ink);border:3px solid var(--ac-wood);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);width:min(520px,92vw);max-height:84vh;overflow:auto;padding:20px}#modalTitle{font-size:19px;font-weight:800;margin-bottom:12px;color:var(--ac-wood-dark)}#modalBody{font-size:15px;line-height:1.6}#modalBody input,#modalBody textarea,#modalBody select{width:100%;padding:10px 12px;margin:6px 0 12px;border-radius:var(--radius-md);border:2px solid var(--ac-wood);background:var(--ac-cream-2);color:var(--ac-ink);font-size:15px;font-family:var(--font-ui)}#modalBody button{background:var(--ac-leaf);color:#fff;border-color:var(--ac-leaf-dark);box-shadow:0 3px 0 var(--ac-leaf-dark);padding:10px 18px;font-size:15px;margin-right:8px}#modalBody .row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--ac-paper-line)}#modalBody .swatch{display:inline-block;width:34px;height:34px;border-radius:50%;border:2px solid var(--ac-wood);cursor:pointer;margin-right:8px}#modalBody .swatch.selected{border-color:var(--ac-leaf);box-shadow:0 0 0 3px var(--ac-leaf)}#modalFoot{margin-top:16px;text-align:right}#progress{height:12px;background:var(--ac-cream-2);border:2px solid var(--ac-wood);border-radius:6px;overflow:hidden;margin:10px 0}#progress div{height:100%;background:var(--ac-gold)}#toast{position:fixed;left:50%;bottom:130px;transform:translate(-50%);z-index:30;background:var(--ac-cream);color:var(--ac-ink);border:2px solid var(--ac-wood);padding:10px 20px;border-radius:var(--radius-pill);font-size:14px;display:none;box-shadow:var(--shadow-soft);white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis}#joystick{position:fixed;left:18px;bottom:200px;z-index:10;width:120px;height:120px;border-radius:50%;background:#fdf6e359;border:2px solid rgba(253,246,227,.7);display:none;touch-action:none}#stick{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:#fdf6e3e6;border:2px solid var(--ac-wood);box-shadow:var(--shadow-soft)}#phoneWrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:#4a3b2a73;display:flex;align-items:center;justify-content:center}#phoneWrap.hidden{display:none}#phone{background:var(--ac-cream);border:3px solid var(--ac-wood);border-radius:36px;box-shadow:var(--shadow-soft);width:min(400px,92vw);height:min(700px,86vh);display:flex;flex-direction:column;overflow:hidden}#phoneNotch{width:110px;height:8px;border-radius:4px;background:var(--ac-wood);margin:10px auto 4px}#phoneHead{display:flex;align-items:center;justify-content:space-between;padding:6px 12px 10px;font-weight:800;color:var(--ac-wood-dark)}#phoneHead button{background:var(--ac-cream);border:2px solid var(--ac-wood);border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:15px}#phoneHead button.hidden{visibility:hidden}#phone .phoneScreen{flex:1;overflow:auto;padding:4px 16px 16px}#phone .phoneScreen.hidden{display:none}#phoneHome{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-content:start}#phoneHome button{background:var(--ac-cream-2);border:2px solid var(--ac-wood);border-radius:var(--radius-md);box-shadow:0 3px 0 var(--ac-wood-dark);cursor:pointer;padding:14px 4px;font-size:13px;font-family:var(--font-ui);color:var(--ac-ink);position:relative}#phoneHome button img.ic{width:28px;height:28px;display:block;margin:0 auto 6px}#phoneHome button:active{transform:translateY(3px);box-shadow:none}#phone .phoneScreen input{width:100%;padding:10px 12px;margin:6px 0 12px;border-radius:var(--radius-md);border:2px solid var(--ac-wood);background:var(--ac-cream-2);color:var(--ac-ink);font-size:15px;font-family:var(--font-ui)}#phone .phoneScreen button{background:var(--ac-leaf);color:#fff;border:2px solid var(--ac-leaf-dark);border-radius:var(--radius-pill);box-shadow:0 3px 0 var(--ac-leaf-dark);padding:9px 14px;font-size:14px;cursor:pointer;margin:2px;font-family:var(--font-ui)}#phone .phoneScreen button:active{transform:translateY(3px);box-shadow:none}#phone .phoneScreen .row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--ac-paper-line)}#phone .phoneScreen .row button{padding:6px 10px;font-size:13px}#phone .dmRow{display:flex;justify-content:space-between;width:100%;background:var(--ac-cream-2);border:2px solid var(--ac-wood);color:var(--ac-ink);text-align:left}#phone #dmMsgs{display:flex;flex-direction:column;gap:8px;max-height:46vh;overflow:auto;margin-bottom:12px}#phone .dmMsg{max-width:80%;background:var(--ac-cream-2);border:2px solid var(--ac-wood);border-radius:16px;padding:8px 12px;align-self:flex-start}#phone .dmMsg.mine{background:var(--ac-leaf);color:#fff;border-color:var(--ac-leaf-dark);align-self:flex-end}#phone .dmInputRow{display:flex;gap:8px}#phone .dmInputRow input{margin:0;flex:1;min-width:0}#phoneBtn{position:relative}#phoneBadge,#dmBadge{position:absolute;top:-4px;right:-4px;background:#e53935;color:#fff;font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}#phoneBadge.hidden,#dmBadge.hidden{display:none}@media(pointer:coarse){#joystick{display:block}#quickbar{left:auto;right:16px;bottom:200px}}@media(max-width:640px){#topright #soundBtn,#topright #settingsBtn{display:none}#topbar{padding:8px 12px}#brand{font-size:14px;padding:4px 8px}#brand span{display:none}#topright{font-size:11px;gap:6px}#count,#meritBadge{padding:4px 7px}#topright button{width:36px;height:36px;font-size:15px}#ticker{top:54px;font-size:13px}#chatbar{bottom:212px}#bottommenu{bottom:8px;left:2vw;right:2vw;width:96vw;max-width:96vw;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;overflow:visible;justify-content:normal}#bottommenu button{font-size:11px;padding:6px 2px;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.2;white-space:normal;text-align:center}#bottommenu button img.ic{width:20px;height:20px;margin:0 0 2px;vertical-align:0}#quickbar{bottom:282px;right:12px;left:auto;width:max-content;align-items:flex-end}#quickbar button{width:auto}#joystick,#toast{bottom:282px}#modal{padding:16px}}
