/* 01 · 固定在视口底部的奶白纸面；控制按钮悬在左上边缘，收起后仍留在左下角。 */
.feedback-dock{--feedback-panel-height:128px;position:fixed;left:0;right:0;bottom:0;height:var(--feedback-panel-height);z-index:30;transition:height .32s ease;color:#54718b;pointer-events:none}
.feedback-dock[hidden]{display:none}.feedback-dock[data-open="false"]{height:0}
.feedback-toggle{position:absolute;left:clamp(14px,4vw,56px);top:-42px;display:flex;align-items:center;gap:8px;height:34px;padding:0 13px;border:1px solid #c7ae7d;border-radius:7px 7px 2px 2px;background:#fbf3df;color:#6f7e87;box-shadow:1px 2px 0 #cbb78422;font-family:inherit;font-size:13px;letter-spacing:1px;cursor:pointer;pointer-events:auto}
.feedback-toggle svg{width:20px;height:20px;fill:none;stroke:#ad8f57;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.feedback-chevron{transform-origin:12px 11px;transition:transform .3s}.feedback-dock[data-open="false"] .feedback-chevron{transform:rotate(180deg)}
.feedback-toggle:hover{background:#f8edcf}.feedback-toggle:focus-visible{outline:2px dashed #8eaab9;outline-offset:3px}
/* 02 · 笔迹色与全站一致，整片纸面承接输入；字数提示不抢正文注意力。 */
.feedback-panel{position:absolute;left:0;right:0;bottom:0;height:var(--feedback-panel-height);box-sizing:border-box;display:flex;flex-direction:column;gap:4px;padding:12px 5% max(12px,env(safe-area-inset-bottom));background:#fffdf5fa;border-top:1px solid #cbb48688;box-shadow:0 -5px 24px #b7a7800b;pointer-events:auto;transition:transform .32s ease,opacity .25s ease}
.feedback-panel label{font-size:14px;line-height:20px;letter-spacing:1px;color:#67859b}.feedback-panel textarea{display:block;width:100%;min-height:0;flex:1;resize:none;border:0;border-bottom:1px solid #b8c5c744;outline:none;border-radius:0;background:repeating-linear-gradient(transparent 0,transparent 23px,#bdcbd417 23px,#bdcbd417 24px);padding:2px 0;color:#496b87;font-family:inherit;font-size:14px;line-height:24px;letter-spacing:.5px;caret-color:#547b9a}.feedback-panel textarea::placeholder{color:#a1aaa7;opacity:1}.feedback-panel textarea:focus{border-bottom-color:#789cb0}.feedback-counter{align-self:flex-end;font:10px Georgia,serif;color:#a7a498;line-height:12px;letter-spacing:1px}
/* 发送区固定在纸面右下方，提示占左侧；发送按钮仍沿用淡金描边和手绘图标。 */
.feedback-actions{display:flex;align-items:center;gap:12px;min-height:28px;flex-shrink:0}
.feedback-status{flex:1;min-width:0;font-size:11px;line-height:14px;color:#83958e}
.feedback-actions .feedback-counter{align-self:center;white-space:nowrap}
.feedback-send{display:flex;align-items:center;gap:7px;flex-shrink:0;padding:4px 13px;min-height:28px;border:1px solid #c7ae7d;border-radius:4px;background:#fbf3df;color:#54718b;font-family:inherit;font-size:13px;letter-spacing:1px;cursor:pointer;transition:background .18s,opacity .18s}
.feedback-send svg{width:16px;height:16px;fill:none;stroke:#ad8f57;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.feedback-send:hover:not(:disabled){background:#f4e7c7}.feedback-send:focus-visible{outline:2px dashed #8eaab9;outline-offset:3px}.feedback-send:disabled{opacity:.45;cursor:not-allowed}
.feedback-dock[data-open="false"] .feedback-panel{transform:translateY(calc(100% + 4px));opacity:0;pointer-events:none}
/* 03 · 评价框只增加正文滚动空间；星图保持收起时的尺寸，导游提示仍避开评价区。 */
body.feedback-dock-visible{padding-bottom:var(--feedback-space,176px)}
body.feedback-dock-visible[data-gallery-mode="map"] .map-canvas{height:clamp(400px,calc(100svh - 288px),720px)}
body.feedback-dock-visible .guide-chat{bottom:calc(var(--feedback-space) + 14px)}
@media(max-width:700px){.feedback-dock{--feedback-panel-height:158px}.feedback-panel{padding-left:6%;padding-right:6%}.feedback-panel label{font-size:13px}.feedback-panel textarea{font-size:16px;letter-spacing:0}.feedback-toggle{font-size:12px;left:12px}body.feedback-dock-visible[data-gallery-mode="map"] .map-start{top:3%;bottom:auto}body.feedback-dock-visible[data-gallery-mode="map"] .map-canvas{height:clamp(430px,calc(100svh - 200px),580px)}}
/* 动画减少时立即展开／收起，输入和按钮的焦点反馈仍然保留。 */
.reduce-motion .feedback-dock,.reduce-motion .feedback-panel,.reduce-motion .feedback-chevron{transition:none}
@media(prefers-reduced-motion:reduce){.feedback-dock,.feedback-panel,.feedback-chevron{transition:none}}


