/* Shared feedback desk and site-wide companion. */
.site-header nav{gap:18px}.live-label{display:none}
.feedback-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:25px;margin-bottom:35px}
.feedback-panel{padding:27px;background:#182d3a;border:1px solid #405a68;min-width:0}.feedback-panel h2{font-size:20px;color:#e1d3af;margin-bottom:12px}.feedback-panel>p{font-size:14px;color:#abc1ce;line-height:1.9;margin-bottom:20px}
.feedback-form{display:grid;gap:17px}.feedback-form label{display:grid;gap:7px;color:#b1c6d0;font-size:13px}.feedback-form input,.feedback-form select,.feedback-form textarea{width:100%;min-width:0;font:inherit;color:#e1e9e7;border:1px solid #526d7b;background:#102631;padding:11px 12px;border-radius:0}.feedback-form textarea{min-height:145px;resize:vertical;line-height:1.9}.feedback-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.feedback-hint{font-size:12px;color:#9eb6c2;line-height:1.9}.feedback-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.feedback-actions button{padding:10px 17px;font:inherit;font-size:13px;background:#273d47;border:1px solid #768476;color:#e3d5b4}.feedback-actions button[type=submit]{background:#3c4843;border-color:#a7936e}.feedback-actions button:disabled{opacity:.5;cursor:wait}.feedback-actions button:hover{border-color:#e0c38b}.feedback-status{font-size:13px;line-height:1.9;color:#d8c799;min-height:25px}.feedback-status.is-error{color:#edb3a4}
.feedback-list-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.feedback-list-heading button{font:inherit;font-size:12px;background:transparent;border:1px solid #506b77;padding:6px 12px;color:#b6c9d1}.feedback-record{border-top:1px solid #405966;padding:18px 0}.feedback-record:last-child{padding-bottom:0}.feedback-record header{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:12px;color:#9eb9c6;align-items:center}.feedback-record header strong{color:#d6c7a5;font-size:13px}.feedback-record h3{font-size:16px;margin:9px 0;color:#dce5e5;overflow-wrap:anywhere}.feedback-record p{font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:#b5cbd4}.feedback-record a{display:inline-block;font-size:12px;color:#d2c197;margin-top:8px}.feedback-empty{padding:28px 0;color:#9bb5c3;font-size:14px}.feedback-service{border-left:2px solid #c1aa7c;background:#192e37;padding:14px 18px;margin-bottom:23px;font-size:13px;color:#abc2cb;line-height:1.9}.feedback-service strong{color:#d5d6bd}.feedback-total{color:#d8c59d;font-variant-numeric:tabular-nums}
.site-pet{position:fixed;right:22px;bottom:20px;z-index:2147483000;width:154px;display:flex;flex-direction:column;align-items:center;isolation:isolate;filter:drop-shadow(0 7px 13px #0005)}
.pet-touch{display:block;width:128px;height:124px;border:1px solid #83938b;border-top:2px solid #cdb685;background:#14252e;border-radius:12px 12px 5px 5px;padding:0;overflow:hidden;position:relative;cursor:pointer;touch-action:manipulation}.pet-touch:hover{border-color:#ead6a5}.pet-touch:focus-visible{outline:3px solid #e0c58a;outline-offset:4px}.pet-touch img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.pet-touch:after{content:'摸摸头';position:absolute;right:0;left:0;bottom:0;text-align:center;font-size:10px;color:#f0e2bd;line-height:23px;background:linear-gradient(transparent,#0b1a27e6);pointer-events:none}
.pet-count{background:#102431f5;border:1px solid #516775;padding:6px 9px;margin-top:5px;font-size:11px;line-height:1.7;min-width:143px;text-align:center;color:#b5c8ce;border-radius:3px}.pet-count strong{color:#e2c991;font-size:15px;margin-left:5px;display:inline-block;font-variant-numeric:tabular-nums}.pet-count small{display:block;color:#8faeba;font-size:10px}.pet-count a{font-size:10px;color:#bec7b4}.pet-message{font-size:11px;line-height:1.7;color:#e3dabf;background:#1d3541f5;padding:7px 10px;border:1px solid #617780;border-radius:6px;margin-bottom:9px;max-width:185px;position:absolute;right:0;bottom:100%;width:max-content}.pet-message:empty{display:none}
@media(max-width:1100px){.site-header{gap:20px}.site-header nav{gap:13px}.site-header nav a{font-size:11px}.identity b{font-size:12px}}
@media(max-width:850px){.feedback-layout{grid-template-columns:1fr}.site-header nav{overflow-x:auto;max-width:100%;justify-content:flex-start;flex-shrink:0}.site-pet{right:12px;bottom:13px;width:123px}.pet-touch{width:105px;height:102px}.pet-count{font-size:10px;min-width:123px;padding:4px 7px}.pet-count strong{font-size:13px}.pet-count small{font-size:9px}.pet-message{max-width:160px}}
@media(max-width:600px){.feedback-panel{padding:20px}.feedback-form .form-row{grid-template-columns:1fr}.site-pet{right:9px;bottom:10px;width:110px}.pet-touch{width:90px;height:87px}.pet-count{min-width:110px}.pet-touch:after{font-size:9px;line-height:19px}.site-footer{padding-bottom:190px}}
@media print{.site-pet,.feedback-form{display:none!important}}
.feedback-layout>.feedback-panel:last-child{align-self:start;min-height:280px}
.feedback-form button.text-link{background:transparent;border:0;border-bottom:1px solid #7f826b;padding:0 0 3px;color:#d1c398;font:inherit;font-size:12px;cursor:pointer}
.pet-drag{display:block;font:inherit;font-size:10px;letter-spacing:.6px;color:#b7c9c9;background:#142a36f5;border:1px solid #61737c;border-bottom:0;border-radius:5px 5px 0 0;padding:3px 13px;cursor:grab;touch-action:none;user-select:none}
.pet-touch{touch-action:none;user-select:none;-webkit-user-select:none}.pet-touch img{-webkit-user-drag:none}.site-pet.is-dragging,.site-pet.is-dragging .pet-touch,.site-pet.is-dragging .pet-drag{cursor:grabbing}.site-pet.is-dragging .pet-touch:after{content:'拖动不会播放语音'}
.pet-drag:focus-visible{outline:2px solid #e2c88f;outline-offset:3px}
/* Owner moderation shares the board's quiet TCR palette. */
.feedback-admin-panel{border:1px solid #405a68;background:var(--ui-surface,rgba(14,34,45,.42));padding:12px 16px;margin:0 0 20px;min-width:0}
.feedback-admin-panel>summary,.feedback-manage>summary{cursor:pointer;color:#dfc78e;font-size:13px;line-height:1.8;min-height:28px}
.feedback-admin-panel[open]>summary{margin-bottom:9px}.feedback-admin-panel .feedback-form{max-width:600px;grid-template-columns:minmax(160px,1fr) auto;gap:10px;align-items:end}
.feedback-admin-panel [hidden]{display:none!important}.feedback-admin-panel .feedback-form input{padding:8px 10px}.feedback-admin-panel .feedback-actions button{padding:9px 14px}
.feedback-admin-help{font-size:12px;color:#adc0cb;line-height:1.8;margin-bottom:8px}.feedback-admin-panel .feedback-status{min-height:0;margin-top:6px}
.feedback-admin-logged-in{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:#9cd0b0;font-size:13px}.feedback-admin-logged-in button{font:inherit;font-size:12px;padding:6px 12px;border:1px solid #62757c;background:transparent;color:#c7d5d8}
.feedback-badge{display:inline-block;padding:2px 7px;border:1px solid currentColor;font-size:11px;line-height:1.5;white-space:nowrap}
.feedback-badge.status-pending{color:#dcc48d;background:#8b6a2024}.feedback-badge.status-resolved{color:#a5d6b1;background:#3c895522}.feedback-badge.status-accepted{color:#99cce9;background:#317da324}
.feedback-list-tools{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 14px;font-size:12px;color:#a9bfca}
.feedback-list-tools label{display:flex;gap:8px;align-items:center}.feedback-list-tools select{background:#142b39b3;color:#d3e1e5;border:1px solid #506b77;font:inherit;padding:6px 9px;min-height:34px}
.feedback-reply{border-left:2px solid #a89268;background:rgba(31,54,66,.32);padding:10px 13px;margin-top:12px}.feedback-reply header strong{font-size:12px}.feedback-reply p{margin:6px 0 0;font-size:13px;line-height:1.8}
.feedback-manage{margin-top:13px;padding-top:9px;border-top:1px dashed #4b657378}.feedback-manage[open]>summary{margin-bottom:10px}.feedback-manage .feedback-form{gap:11px}.feedback-manage .feedback-form textarea{min-height:90px;line-height:1.7;padding:9px 10px}.feedback-manage .feedback-form select{padding:8px 10px}
.feedback-admin-result{font-size:12px;color:#c9d7cc;overflow-wrap:anywhere}.feedback-admin-result.is-error{color:#edb3a4}.feedback-admin-panel button:focus-visible,.feedback-manage button:focus-visible,.feedback-list-tools select:focus-visible{outline:2px solid #d8bf89;outline-offset:2px}
@media(max-width:600px){.feedback-admin-panel{padding:11px 13px}.feedback-admin-panel .feedback-form{grid-template-columns:1fr}.feedback-manage .feedback-actions{gap:8px}.feedback-reply{padding:9px 10px}}
@media print{.feedback-admin-panel,.feedback-manage,.feedback-list-tools{display:none!important}}
/* The alternate pet is only reachable after its browser-local unlock. */
.pet-touch:after{content:attr(data-caption)}
.site-pet.secret-active .pet-touch{border-color:#d0aa56;background:radial-gradient(ellipse at center,#31304b,#111e2b)}
.site-pet.secret-active .pet-touch img{object-fit:contain;transform-origin:50% 88%}
.site-pet.secret-active .pet-touch:after{font-size:10px;line-height:1.45;padding:4px 3px;color:#ffe7a5;white-space:pre-line}
.secret-pat img{animation:secret-pat-bounce .6s ease-in-out 1}
@keyframes secret-pat-bounce{0%,100%{transform:scale(1)}18%{transform:scale(.98,1.06)}43%{transform:scale(1.035,.91)}70%{transform:scale(.985,1.035)}}
.pet-switch{display:flex;width:143px;gap:4px;margin-top:4px}.pet-switch button,.pet-music{font:inherit;font-size:10px;line-height:1.6;padding:4px 7px;border:1px solid #627780;color:#cbd6da;background:#122734e8;cursor:pointer}.pet-switch button{flex:1;min-width:0}.pet-switch button.active{border-color:#c7aa69;color:#f5dfa1;background:#5f502c88}.pet-music{margin-top:4px;width:143px;color:#e6c785}
@media(max-width:850px){.pet-switch,.pet-music{width:123px}.site-pet.secret-active .pet-touch:after{font-size:9px}}
@media(max-width:600px){.pet-switch,.pet-music{width:110px}.site-pet.secret-active .pet-touch:after{font-size:8px}.pet-switch button,.pet-music{min-height:30px}}
@media(prefers-reduced-motion:reduce){.secret-pat img{animation:none}}
.pet-music-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;width:143px;margin-top:4px}.pet-music-controls .pet-music{width:auto;min-width:0;margin:0;padding:4px 7px}
.pet-music-controls .pet-meteors{grid-column:1/-1}.pet-meteors[aria-pressed=true]{border-color:#bd9d62;color:#f1d58e}
.pet-music-controls .pet-secret-reset{grid-column:1/-1;border-style:dashed;color:#acb9c0;font-size:9px}
@media(max-width:850px){.pet-music-controls{width:123px}}
@media(max-width:600px){.pet-music-controls{width:110px}}
