.feedback-trigger{width:100%;text-align:left;background:transparent;border:0}
.feedback-backdrop{position:fixed;inset:0;z-index:2100;background:#13243e99;display:flex;align-items:center;justify-content:center;padding:16px;color:#20334c;line-height:1.5;font-size:1rem;text-align:left}
.feedback-modal{background:#fff;border:1px solid #dce4ee;border-radius:16px;box-shadow:0 18px 70px #10244040;width:620px;max-width:100%;max-height:calc(100dvh - 32px);overflow:auto;padding:24px;overscroll-behavior:contain}
.feedback-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.feedback-modal h2{font-size:1.4rem;margin:0 0 8px;color:#17375c}.feedback-modal p{margin:8px 0 14px;white-space:normal}
.feedback-close{background:transparent;border:0;font-size:28px;min-width:44px;min-height:44px;color:#344d6c}
.feedback-modal fieldset{margin:16px 0;border:0;padding:0;min-width:0}.feedback-modal legend{font-size:1rem;font-weight:600;float:none;width:auto;margin-bottom:8px}
.feedback-types{display:flex;flex-wrap:wrap;gap:8px 18px}.feedback-types label{min-height:44px;display:flex;align-items:center;gap:6px}
.feedback-modal textarea,.feedback-modal select{display:block;width:100%;max-width:100%;border:1px solid #9aadc4;border-radius:8px;padding:10px;margin-top:6px;color:#20334c;background:#fff;font:inherit}.feedback-modal textarea{min-height:110px;resize:vertical}
.feedback-modal small{display:block;text-align:right;color:#54677d}.feedback-warning,.feedback-help{font-size:.9rem;color:#425973}.feedback-warning{background:#f1f5fa;padding:10px;border-radius:8px}
.feedback-description-box{margin-top:6px}.feedback-description-box textarea{margin-top:0}.feedback-description-box #feedback-count{margin-top:6px;font-size:.8rem;line-height:1.35}
.feedback-check{display:flex;gap:10px;align-items:flex-start;white-space:normal;margin:12px 0}.feedback-check input{margin-top:5px;flex-shrink:0;width:18px;height:18px}
.feedback-modal footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:18px}.feedback-modal .btn{min-height:44px;white-space:normal}
.feedback-modal figure{margin:16px 0}.feedback-preview{display:block;border:1px solid #bccadd;border-radius:8px;background:#f3f6fb;padding:6px;width:100%}.feedback-preview img{display:block;width:100%;max-height:150px;object-fit:contain}.feedback-preview img.expanded{max-height:none}
#feedback-error{color:#9d2735;white-space:normal}.feedback-modal :focus-visible{outline:3px solid #2671c4;outline-offset:3px}
@media(max-width:480px){.feedback-backdrop{padding:8px}.feedback-modal{padding:16px;max-height:calc(100dvh - 16px)}.feedback-modal footer .btn{flex:1}}

.feedback-image-viewer{position:absolute;inset:16px;background:#fff;border-radius:12px;padding:16px;display:flex;flex-direction:column;box-shadow:0 18px 70px #10244040;min-width:0}
.feedback-image-viewer header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.feedback-image-viewer header>div{display:flex;gap:8px;flex-wrap:wrap}.feedback-image-viewer button{min-height:44px}
.feedback-image-scroll{overflow:auto;flex:1;min-height:0;background:#e5ebf3;overscroll-behavior:contain}
.feedback-image-scroll img{display:block;margin:auto}.feedback-image-scroll .fit-size{width:100%;height:100%;object-fit:contain}.feedback-image-scroll .actual-size{max-width:none;width:auto;height:auto}
.feedback-image-viewer :focus-visible{outline:3px solid #2671c4;outline-offset:3px}
@media(max-width:480px){.feedback-image-viewer{inset:8px;padding:12px}}
