:root{color-scheme:light dark;--radius:18px;--spacing:16px;--shadow:0 12px 30px rgba(17,24,39,0.08);--shadowHover:0 18px 50px rgba(17,24,39,0.12);--gap:18px;--textPrimary:#111827;--textSecondary:rgba(17,24,39,0.7);--bg:#f6f7f8;--surface:#ffffff;--border:rgba(17,24,39,0.12);--navBg:rgba(246,247,248,0.72);--footerBg:rgba(255,255,255,0.56);--footerLinkHoverBg:rgba(17,24,39,0.06);--primary:#111827;--primaryHover:#1f2937;--onPrimary:#ffffff;--accent:#2563eb;--accentHover:#1d4ed8;--focusRing:rgba(37,99,235,0.4);--danger:#dc2626;--dangerHover:#b91c1c;--success:#16a34a;--breakpoint-xs:320px;--breakpoint-sm:375px;--breakpoint-md:480px;--breakpoint-lg:768px;--breakpoint-xl:1024px;--touch-target-min:44px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--textPrimary:rgba(255,255,255,0.92);--textSecondary:rgba(255,255,255,0.68);--bg:#0b0f17;--surface:#161c28;--border:rgba(255,255,255,0.12);--shadow:0 14px 40px rgba(0,0,0,0.45);--shadowHover:0 18px 60px rgba(0,0,0,0.55);--navBg:rgba(11,15,23,0.65);--footerBg:rgba(11,15,23,0.58);--footerLinkHoverBg:rgba(255,255,255,0.08);--primary:#e5e7eb;--primaryHover:#f3f4f6;--onPrimary:#0b0f17;--accent:#3b82f6;--accentHover:#60a5fa;--focusRing:rgba(59,130,246,0.45);--danger:#ef4444;--dangerHover:#f87171;--success:#22c55e}}:root[data-theme=light]{color-scheme:light;--shadow:0 12px 30px rgba(17,24,39,0.08);--shadowHover:0 18px 50px rgba(17,24,39,0.12);--textPrimary:#111827;--textSecondary:rgba(17,24,39,0.7);--bg:#f6f7f8;--surface:#ffffff;--border:rgba(17,24,39,0.12);--navBg:rgba(246,247,248,0.72);--footerBg:rgba(255,255,255,0.56);--footerLinkHoverBg:rgba(17,24,39,0.06)}:root[data-theme=dark]{color-scheme:dark;--textPrimary:rgba(255,255,255,0.92);--textSecondary:rgba(255,255,255,0.68);--bg:#0b0f17;--surface:#161c28;--border:rgba(255,255,255,0.12);--shadow:0 14px 40px rgba(0,0,0,0.45);--shadowHover:0 18px 60px rgba(0,0,0,0.55);--navBg:rgba(11,15,23,0.65);--footerBg:rgba(11,15,23,0.58);--footerLinkHoverBg:rgba(255,255,255,0.08);--primary:#e5e7eb;--primaryHover:#f3f4f6;--onPrimary:#0b0f17;--accent:#3b82f6;--accentHover:#60a5fa;--focusRing:rgba(59,130,246,0.45);--danger:#ef4444;--dangerHover:#f87171;--success:#22c55e}body,html{padding:0;margin:0;height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;color:var(--textPrimary);background:var(--bg)}.themeLogo{transition:filter .18s ease}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .themeLogo{opacity:.9;filter:brightness(0) invert(1)}}:root[data-theme=dark] .themeLogo{opacity:.9;filter:brightness(0) invert(1)}:root[data-theme=light] .themeLogo{filter:none}.appShell{min-height:100vh;display:flex;flex-direction:column}.appMain{flex:1 0 auto}.container{max-width:1040px;margin:0 auto;padding:48px 16px}@media (max-width:768px){.container{padding:32px 12px}}@media (max-width:480px){.container{padding:24px 10px}}h1{font-size:32px;font-weight:700}h1,p{margin:0}.hero{padding:8px 0 28px}.heroTitle{font-size:40px;font-weight:720;letter-spacing:-.02em}@media (max-width:768px){.heroTitle{font-size:32px}}@media (max-width:480px){.heroTitle{font-size:28px}}@media (max-width:375px){.heroTitle{font-size:24px}}.heroSubtitle{margin-top:10px;color:var(--textSecondary);font-size:16px}@media (max-width:480px){.heroSubtitle{font-size:14px}}@media (max-width:768px){h1{font-size:26px}}@media (max-width:480px){h1{font-size:22px}}@media (max-width:768px){body{font-size:15px}}@media (max-width:480px){body{font-size:14px}}*{-webkit-tap-highlight-color:transparent}[role=button],a,button{touch-action:manipulation}button,input,select,textarea{font:inherit;box-sizing:border-box}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}input[type=checkbox],input[type=radio]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;accent-color:#0F75BC}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focusRing);outline-offset:1px}@media (max-width:640px){input,select,textarea{font-size:16px}}@media (max-width:768px){div,p,span{word-wrap:break-word;overflow-wrap:break-word}}