/* Shared website navigation declares --tideland-site-height after measuring it. */
:root{--tideland-site-height:0px;--tideland-visible-height:100dvh}
#ui>.topbar{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 14px)}
#ui>.side{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 105px)}
#ui>.overlay{top:var(--tideland-site-height)}
#ui>#interiorHud{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 88px)}
#interactPrompt{pointer-events:auto!important;color:#35695c;cursor:pointer;touch-action:manipulation;min-height:46px;z-index:8;max-width:calc(100vw - 24px);border:2px solid #fff8df;font-family:inherit;animation:none}
#interactPrompt:focus-visible{outline:3px solid #db9c38;outline-offset:3px}
#touchInteract{font-size:15px!important;font-weight:900;width:64px!important;height:58px!important;border-radius:18px!important}
#touchInteract::after{content:'互动 E';display:block;font-size:10px}
.tideland-life{position:fixed;right:20px;bottom:calc(18px + var(--tideland-keyboard-inset,0px));width:min(440px,calc(100vw - 32px));max-height:calc(var(--tideland-visible-height) - var(--tideland-site-height) - var(--tideland-device-height,0px) - 24px);overflow:auto;z-index:18;border:3px solid #e2edce;outline:2px solid #60816a;border-radius:7px;background:#fff8e8;box-shadow:6px 7px 0 #35684d55;color:#405d4a;padding:15px;font-family:'Trebuchet MS','Microsoft YaHei',sans-serif;scrollbar-width:thin;overscroll-behavior:contain}
.tideland-life button,.tideland-life input,.tideland-life textarea{font:inherit}
.tideland-life button{min-height:42px;padding:8px 11px;border:2px solid #b9cda9;border-radius:4px;background:#edf0dc;color:#415e49;font-size:12px;font-weight:800;box-shadow:0 2px 0 #bdcca8;touch-action:manipulation}
.tideland-life button:disabled{opacity:.5;cursor:default}
.tideland-life button:focus-visible,.tideland-life textarea:focus-visible,.tideland-life input:focus-visible{outline:3px solid #da9c43;outline-offset:2px}
.life-heading{display:flex;align-items:center;gap:11px;border-bottom:2px dashed #d2dabc;padding-bottom:10px}
#life-avatar{width:53px;height:53px;display:grid;place-items:center;background:#dfeacf;border:2px solid #b8cda6;font-size:32px;border-radius:5px}
.life-heading strong{display:block;font-size:19px;letter-spacing:1px}.life-heading small{display:block;font-size:11px;color:#7c8d70;margin-top:5px}
#life-close{margin-left:auto;font-size:23px;min-width:42px;padding:2px}
.life-summary{display:flex;gap:7px;justify-content:space-between;font-size:11px;padding:11px 0;color:#758367}
.life-messages{max-height:180px;min-height:85px;overflow:auto;overscroll-behavior:contain;padding:3px 5px 3px 0;scrollbar-width:thin}
.life-line{font-size:13px;line-height:1.8;margin:6px 20px 10px 0;background:#edf0dc;border-left:4px solid #c6d7ad;padding:8px 11px;overflow-wrap:anywhere;white-space:pre-wrap}
.life-line-user{background:#f4e5cf;border-left-color:#d9b68e;margin:7px 0 10px 20px;color:#7b654c}
.life-status{font-size:11px;line-height:1.6;color:#7e805f;min-height:19px;margin:9px 0}
.life-input-label{display:block;font-size:12px;font-weight:bold;margin:6px 0}
#life-input{display:block;width:100%;min-height:68px;max-height:140px;resize:vertical;background:#fffef7;color:#3c5948;border:2px solid #b8cca4;border-radius:4px;padding:9px;font-size:16px;line-height:1.5;touch-action:auto}
.life-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
#life-send{background:#74956a;color:#fffef0;border-color:#64855c}
.life-tools{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;border-top:2px dashed #d2dabc;margin-top:14px;padding-top:10px;font-size:12px}
.life-tools label{display:flex;align-items:center;gap:6px;min-height:42px}.life-tools input{width:19px;height:19px;accent-color:#719267}
.life-privacy{font-size:10px;line-height:1.7;margin:10px 0 0;color:#7c8870}
.life-memory{background:#eee7d4;border:2px solid #d5c8a5;padding:11px;margin-top:13px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.life-memory h3{margin:0 0 8px;font-size:14px}.life-memory small{display:block;color:#7b7158;margin:10px 0}.life-memory button{margin:5px 4px 0 0}
.life-thinking{animation:lifeThinking 1s ease-in-out infinite alternate}@keyframes lifeThinking{to{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.life-thinking{animation:none}}
@media(pointer:coarse){.touch{display:block}.tideland-life button{min-height:44px}}
@media(max-width:720px){#ui>.topbar{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 8px)}#ui>.side{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 125px)}#ui>#interiorHud{top:calc(var(--tideland-site-height) + var(--tideland-device-height,0px) + 112px);white-space:normal;justify-content:center;font-size:10px}#ui .header-right{max-width:138px;flex-wrap:wrap;justify-content:flex-end}.header-right .icon-btn{min-width:40px;min-height:40px}.interact-prompt{bottom:121px;white-space:normal;width:max-content;max-width:70%;font-size:11px;padding:8px 10px}.tideland-life{right:10px;bottom:calc(9px + var(--tideland-keyboard-inset,0px));width:calc(100vw - 20px);padding:12px;max-height:calc(var(--tideland-visible-height) - var(--tideland-site-height) - var(--tideland-device-height,0px) - 16px)}.life-messages{max-height:142px}.life-line{font-size:12px}.life-heading strong{font-size:17px}.life-privacy{font-size:10px}.tideland-typing .touch,.tideland-typing .bottom-area,.tideland-typing #interactPrompt{visibility:hidden}}
@media(max-height:650px){.tideland-life{max-height:calc(var(--tideland-visible-height) - var(--tideland-site-height) - var(--tideland-device-height,0px) - 15px)}.life-messages{max-height:95px}.life-privacy{font-size:9px}.life-heading{padding-bottom:6px}.life-tools{margin-top:9px;padding-top:5px}}
@media(max-width:720px){.bottom-area{width:max-content;max-width:calc(100vw - 16px)}.quick-menu{width:100%}.quick-menu button{flex:1;white-space:nowrap;padding:9px 6px;min-height:40px}.life-summary{flex-wrap:wrap}}
