@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/dm-sans-latin-ext-400-normal.d663ebe0.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-ext-400-normal.9850054c.woff) format("woff");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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/dm-sans-latin-400-normal.7abd0811.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-400-normal.6193dcef.woff) format("woff");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}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/dm-sans-latin-ext-500-normal.d7898f39.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-ext-500-normal.fae40d5a.woff) format("woff");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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/dm-sans-latin-500-normal.210398b6.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-500-normal.1dd5b1eb.woff) format("woff");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}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/dm-sans-latin-ext-700-normal.c3bb9d04.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-ext-700-normal.654517d4.woff) format("woff");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:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/dm-sans-latin-700-normal.db6484ff.woff2) format("woff2"),url(/_next/static/media/dm-sans-latin-700-normal.beb4580c.woff) format("woff");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{--color-primary:"linear-gradient(135deg, #4F8DFD, #3369D6)";--color-secondary:#34495e;--color-bg:#f5f7fa;--color-surface:#ffffff;--color-text:#000000;--color-text-light:#ffffff;--color-error:#e74c3c;--color-border:#bdc3c7;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-round:9999px}*{box-sizing:border-box}#__next,body,html{height:100%}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:DM Sans,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 16px;cursor:pointer;transition:all .2s ease}button:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.08)}button:focus{outline:2px solid var(--color-primary);outline-offset:2px}textarea{transition:all .2s ease}textarea:focus{box-shadow:0 0 0 2px rgba(74,144,226,.25);border-color:var(--color-primary)}.container{max-width:960px;margin:0 auto;padding:var(--space-lg)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);box-shadow:0 1px 3px rgba(0,0,0,.08);transition:box-shadow .2s ease,transform .2s ease}.card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}@keyframes typingBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.typing-dots span{width:10px;height:10px;background:#357abd;border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite both}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}