.demo-feedback-fab { position:fixed; right:18px; bottom:18px; z-index:40; display:inline-flex; min-height:44px; align-items:center; gap:7px; padding:0 15px; border:1px solid #4f8175; border-radius:99px; background:#3d7167; color:#fff; font:600 13px Roboto,Arial,sans-serif; box-shadow:0 8px 22px rgba(42,65,54,.2); }
.demo-feedback-fab:hover,.demo-feedback-fab:focus-visible { background:#2f5f56; }
.demo-feedback-fab span:first-child { font-size:18px; line-height:1; }
.demo-feedback-dialog { width:min(92vw,460px); max-width:none; padding:0; border:0; border-radius:22px; background:transparent; box-shadow:0 20px 60px rgba(27,40,34,.25); color:var(--ink,#293536); }
.demo-feedback-dialog::backdrop { background:rgba(27,40,34,.38); }
.demo-feedback-card { position:relative; display:grid; gap:10px; padding:26px 22px 22px; border:1px solid var(--line,#e1e8e3); border-radius:22px; background:var(--surface,#fff); }
.demo-feedback-card h2 { margin:0; font-size:24px; }
.demo-feedback-intro { margin:0 0 5px; color:var(--muted,#5d6e68); font-size:14px; line-height:1.45; }
.demo-feedback-card label { display:grid; gap:6px; color:var(--muted,#5d6e68); font-size:13px; font-weight:500; }
.demo-feedback-card input,.demo-feedback-card textarea { width:100%; border:1px solid var(--line,#e1e8e3); border-radius:11px; background:#fcfdfb; color:var(--ink,#293536); padding:10px 11px; font:inherit; }
.demo-feedback-card input { min-height:44px; }
.demo-feedback-card textarea { resize:vertical; line-height:1.45; }
.demo-feedback-close { position:absolute; top:10px; right:11px; width:38px; height:38px; border:0; border-radius:10px; background:var(--accent-soft,#eaf4ef); color:var(--accent-dark,#3d7167); font-size:25px; line-height:1; }
.demo-feedback-status { min-height:18px; margin:0; color:var(--accent-dark,#3d7167); font-size:12px; }
.demo-feedback-status.is-error,.feedback-empty.is-error { color:#9a4335; }
.feedback-page { width:min(calc(100% - 32px),720px); margin:0 auto; padding:34px 0 60px; }
.feedback-page-header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:25px; }
.feedback-page-header img { width:min(190px,48vw); height:auto; }
.feedback-page-header a { color:var(--accent-dark); font-size:13px; text-decoration:none; }
.feedback-page h1 { margin:0 0 9px; font-size:clamp(28px,7vw,40px); }
.feedback-page-intro { margin:0 0 22px; color:var(--muted); font-size:15px; line-height:1.5; }
.feedback-page-form { display:grid; gap:10px; margin-bottom:28px; padding:20px; border:1px solid var(--line); border-radius:18px; background:var(--surface); }
.feedback-page-form label { display:grid; gap:6px; color:var(--muted); font-size:13px; font-weight:500; }
.feedback-page-form input,.feedback-page-form textarea { width:100%; border:1px solid var(--line); border-radius:11px; background:#fcfdfb; color:var(--ink); padding:10px 11px; font:inherit; }
.feedback-page-form input { min-height:44px; }.feedback-page-form textarea { resize:vertical; line-height:1.45; }
.feedback-list-heading { margin:0 0 12px; font-size:20px; }.feedback-list { display:grid; gap:10px; }
.feedback-entry { padding:16px; border:1px solid var(--line); border-radius:15px; background:var(--surface); }
.feedback-entry strong { color:var(--accent-dark); font-size:14px; }.feedback-entry p { margin:7px 0 0; color:var(--muted); font-size:14px; line-height:1.5; }
.feedback-empty { padding:22px 4px; color:var(--muted); font-size:14px; }
@media (max-width:520px) { .demo-feedback-fab { right:12px; bottom:12px; } .feedback-page-header { align-items:flex-start; flex-direction:column; } }
