.feedback-fab{position:fixed;right:20px;bottom:20px;z-index:50;display:inline-flex;align-items:center;gap:0;width:2.25rem;height:2.25rem;padding:0;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-weight:600;font-size:.9rem;cursor:pointer;opacity:.5;box-shadow:0 2px 8px rgba(0,0,0,.2);overflow:hidden;transition:width .2s ease,border-radius .2s ease,opacity .2s ease,gap .2s ease,padding .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.feedback-fab:hover{width:auto;border-radius:999px;gap:.45rem;padding:0 .85rem 0 .6rem;opacity:1;color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 4px 16px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.04)}.feedback-fab:active{opacity:.85}.feedback-fab-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;color:inherit}.feedback-fab-label{white-space:nowrap;overflow:hidden;max-width:0;opacity:0;transition:max-width .2s ease,opacity .15s ease}.feedback-fab:hover .feedback-fab-label{max-width:6rem;opacity:1}.feedback-fab-embed{right:10px;bottom:10px;width:2.25rem;height:2.25rem;border-radius:50%;padding:0;gap:0;opacity:.82;background:#ffffff;color:#2563eb;border-color:#cbd5e1;box-shadow:0 2px 8px rgba(15,23,42,.16)}.feedback-fab-embed:hover{width:2.25rem;border-radius:50%;padding:0;gap:0;opacity:1;color:#1d4ed8;border-color:#93c5fd;box-shadow:0 3px 12px rgba(37,99,235,.22)}.feedback-fab-embed .feedback-fab-label,.feedback-fab-embed:hover .feedback-fab-label{max-width:0;opacity:0}.feedback-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:1rem;background:rgba(4,8,14,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:feedback-fade-in .2s ease}.feedback-dialog{width:min(480px,100%);max-height:min(90vh,640px);overflow:auto;border-radius:16px;border:1px solid color-mix(in srgb,var(--border) 80%,var(--accent) 20%);background:linear-gradient(168deg,color-mix(in srgb,var(--surface) 96%,#1e3a5f 4%) 0,var(--surface) 42%);box-shadow:0 24px 64px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.05);animation:feedback-slide-up .28s cubic-bezier(.22,1,.36,1)}@keyframes feedback-fade-in{0%{opacity:0}to{opacity:1}}@keyframes feedback-slide-up{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.feedback-dialog-header{display:flex;align-items:flex-start;gap:.85rem;padding:1.35rem 1.35rem 0}.feedback-dialog-header-text{flex:1 1;min-width:0}.feedback-dialog-badge{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.feedback-dialog-title{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;line-height:1.3}.feedback-dialog-subtitle{margin:.35rem 0 0;font-size:.875rem;color:var(--muted);line-height:1.45}.feedback-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:-.15rem -.15rem 0 0;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease}.feedback-close:hover{background:rgba(255,255,255,.06);color:var(--text)}.feedback-dialog-body{padding:1.25rem 1.35rem 1.35rem}.feedback-field{margin-bottom:1.1rem}.feedback-field:last-of-type{margin-bottom:0}.feedback-label{display:block;margin-bottom:.45rem;font-size:.8125rem;font-weight:600;color:color-mix(in srgb,var(--text) 88%,var(--muted));letter-spacing:.01em}.feedback-label-optional{font-weight:500;color:var(--muted)}.feedback-input,.feedback-textarea{width:100%;padding:.75rem .9rem;border-radius:10px;border:1px solid var(--border);background:rgba(0,0,0,.22);color:var(--text);font:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.feedback-textarea{min-height:7.5rem;resize:vertical}.feedback-input::placeholder,.feedback-textarea::placeholder{color:color-mix(in srgb,var(--muted) 85%,transparent)}.feedback-input:hover,.feedback-textarea:hover{border-color:color-mix(in srgb,var(--border) 60%,var(--muted))}.feedback-input:focus,.feedback-textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 65%,var(--border));background:rgba(0,0,0,.28);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.feedback-stars{display:flex;gap:.35rem;flex-wrap:wrap}.feedback-star{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid var(--border);border-radius:10px;background:rgba(0,0,0,.18);color:var(--muted);cursor:pointer;transition:transform .12s ease,border-color .15s ease,background .15s ease,color .15s ease}.feedback-star:hover{transform:scale(1.06);border-color:color-mix(in srgb,#fbbf24 40%,var(--border));color:#fbbf24}.feedback-star-active,.feedback-star-active:hover{border-color:color-mix(in srgb,#fbbf24 55%,var(--border));background:color-mix(in srgb,#fbbf24 12%,transparent);color:#fbbf24}.feedback-star:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.feedback-star-clear{margin-left:.25rem;padding:0 .65rem;width:auto;min-width:0;font-size:.75rem;font-weight:500;color:var(--muted);border-style:dashed}.feedback-star-clear:hover{color:var(--text);transform:none}.feedback-error{margin:0 0 1rem;padding:.65rem .85rem;border-radius:10px;font-size:.875rem;line-height:1.45;color:#fecaca;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.25)}.feedback-error a{color:#93c5fd;font-weight:600}.feedback-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem;padding-top:1.15rem;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.feedback-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;border:none;border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 95%,white),var(--accent));color:#fff;font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer;box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 35%,transparent);transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.feedback-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px color-mix(in srgb,var(--accent) 45%,transparent)}.feedback-submit:disabled{opacity:.65;cursor:not-allowed;transform:none}.feedback-footer-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;font-size:.75rem;color:var(--muted);line-height:1.4}.feedback-footer-meta svg{flex-shrink:0;opacity:.7}.feedback-support-link{color:var(--muted);text-decoration:none;font-weight:500;white-space:nowrap;transition:color .15s ease}.feedback-support-link:hover{color:var(--accent)}.feedback-success{text-align:center;padding:.5rem 0 .25rem}.feedback-success-icon{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;margin-bottom:1rem;border-radius:50%;background:color-mix(in srgb,#22c55e 16%,transparent);color:#4ade80;border:1px solid color-mix(in srgb,#22c55e 35%,transparent);animation:feedback-pop .4s cubic-bezier(.22,1,.36,1)}@keyframes feedback-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.feedback-success-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700}.feedback-success-text{margin:0 0 1.35rem;font-size:.9rem;color:var(--muted);line-height:1.5}.feedback-success-actions{display:flex;flex-direction:column;gap:.6rem}.feedback-success-actions .feedback-submit{width:100%}.feedback-success-actions .feedback-support-link{display:block;text-align:center;padding:.5rem;font-size:.875rem}@media (max-width:520px){.feedback-fab{right:10px;bottom:10px;width:2.25rem;height:2.25rem;border-radius:50%;padding:0;gap:0;opacity:.82;background:#ffffff;color:#2563eb;border-color:#cbd5e1;box-shadow:0 2px 8px rgba(15,23,42,.16)}.feedback-fab:hover{width:2.25rem;border-radius:50%;padding:0;gap:0;opacity:1;color:#1d4ed8;border-color:#93c5fd;box-shadow:0 3px 12px rgba(37,99,235,.22)}.feedback-fab-label,.feedback-fab:hover .feedback-fab-label{max-width:0;opacity:0}.feedback-backdrop{align-items:stretch;place-items:stretch;padding:.75rem}.feedback-dialog{width:100%;max-height:calc(100vh - 1.5rem);border-radius:12px}.feedback-dialog-header{padding:1rem 1rem 0}.feedback-dialog-body{padding:1rem}.feedback-dialog-subtitle{font-size:.8125rem}}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-armenian-wght-normal.8aa0998f.woff2) format("woff2-variations");unicode-range:u+0308,u+0530-058f,u+2010,u+2024,u+25cc,u+fb13-fb17}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-bengali-wght-normal.aa24889e.woff2) format("woff2-variations");unicode-range:u+0951-0952,u+0964-0965,u+0980-09fe,u+1cd0,u+1cd2,u+1cd5-1cd6,u+1cd8,u+1ce1,u+1cea,u+1ced,u+1cf2,u+1cf5-1cf7,u+200c-200d,u+20b9,u+25cc,u+a8f1}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-canadian-aboriginal-wght-normal.bf03182d.woff2) format("woff2-variations");unicode-range:u+02c7,u+02d8-02d9,u+02db,u+0307,u+1400-167f,u+18b0-18f5,u+25cc,u+11ab?}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-cyrillic-ext-wght-normal.db6d3550.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-cyrillic-wght-normal.14d793b3.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-devanagari-wght-normal.f25a668c.woff2) format("woff2-variations");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-ethiopic-wght-normal.c59698c6.woff2) format("woff2-variations");unicode-range:u+030e,u+1200-1399,u+2d80-2dde,u+ab01-ab2e,u+1e7e0-1e7e6,u+1e7e8-1e7eb,u+1e7ed-1e7ee,u+1e7f0-1e7fe}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-georgian-wght-normal.cfaf9c9b.woff2) format("woff2-variations");unicode-range:u+0589,u+10a0-10ff,u+1c90-1cba,u+1cbd-1cbf,u+205a,u+2d00-2d2f,u+2e31}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-greek-ext-wght-normal.7555df00.woff2) format("woff2-variations");unicode-range:u+1f??}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-greek-wght-normal.c0991bdb.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-gujarati-wght-normal.5f33f07d.woff2) format("woff2-variations");unicode-range:u+0951-0952,u+0964-0965,u+0a80-0aff,u+200c-200d,u+20b9,u+25cc,u+a830-a839}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-gurmukhi-wght-normal.1e64534c.woff2) format("woff2-variations");unicode-range:u+0951-0952,u+0964-0965,u+0a01-0a76,u+200c-200d,u+20b9,u+25cc,u+262c,u+a830-a839}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-hebrew-wght-normal.7a213d05.woff2) format("woff2-variations");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-khmer-wght-normal.7bd77dc5.woff2) format("woff2-variations");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-lao-wght-normal.701407d8.woff2) format("woff2-variations");unicode-range:u+0e81-0edf,u+200c-200d,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-malayalam-wght-normal.22fc563b.woff2) format("woff2-variations");unicode-range:u+0307,u+0323,u+0951-0952,u+0964-0965,u+0d00-0d7f,u+1cda,u+1cf2,u+200c-200d,u+20b9,u+25cc,u+a830-a832}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-oriya-wght-normal.02841fc0.woff2) format("woff2-variations");unicode-range:u+0951-0952,u+0964-0965,u+0b01-0b77,u+1cda,u+1cf2,u+200c-200d,u+20b9,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-sinhala-wght-normal.2cfe6a42.woff2) format("woff2-variations");unicode-range:u+0964-0965,u+0d81-0df4,u+1cf2,u+200c-200d,u+25cc,u+111e1-111f4}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-symbols-wght-normal.716aa7a9.woff2) format("woff2-variations");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-tamil-wght-normal.dd2fd976.woff2) format("woff2-variations");unicode-range:u+0964-0965,u+0b82-0bfa,u+200c-200d,u+20b9,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-telugu-wght-normal.7df35240.woff2) format("woff2-variations");unicode-range:u+0951-0952,u+0964-0965,u+0c00-0c7f,u+1cda,u+1cf2,u+200c-200d,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-thai-wght-normal.b79e331b.woff2) format("woff2-variations");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-vietnamese-wght-normal.6a573f9e.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-latin-ext-wght-normal.1ca8332c.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Google Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/writemath/_next/static/media/google-sans-latin-wght-normal.8cd5e298.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#0b0f14;--surface:#141a22;--text:#e8edf4;--muted:#8b9cb3;--accent:#3b82f6;--accent-hover:#2563eb;--border:#243044;font-family:Google Sans Variable,Google Sans,Google Sans Text,Roboto,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}a{color:var(--accent)}.btn{display:inline-block;padding:.65rem 1.25rem;background:var(--accent);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;border:none;cursor:pointer}.btn:hover{background:var(--accent-hover)}.btn-secondary{background:transparent;color:var(--text)}.btn-secondary,.card{border:1px solid var(--border)}.card{background:var(--surface);border-radius:12px;padding:1.5rem}.container{max-width:960px;margin:0 auto;padding:2rem 1.25rem}