@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap";
:root{--bg-color:#fafafa;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--border-color:#eaeaea;--primary-color:#1a1a1a;--primary-inverse:#fafafa;--accent-color:#06f;--error-color:#ff3b30;--success-color:#34c759;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001f;--transition-speed:.2s;--ease-mechanical:ease-out}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.05em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:2}a{color:inherit;text-decoration:none}button{cursor:pointer;transition:opacity var(--transition-speed)ease;background:0 0;border:none;font-family:inherit}button:active{opacity:.8}button:disabled{opacity:.5;cursor:not-allowed}input,textarea{font-family:inherit}.text-h1{letter-spacing:.08em;font-size:2.5rem;font-weight:300;line-height:1.4}.text-h2{letter-spacing:.08em;font-size:2rem;font-weight:300}.text-h3{letter-spacing:.06em;font-size:1.5rem;font-weight:400}.text-body{color:var(--text-secondary);letter-spacing:.08em;font-size:1rem;line-height:2}.text-small{color:var(--text-muted);letter-spacing:.06em;font-size:.875rem}.container{width:100%;max-width:600px;margin:0 auto;padding:0 20px}.flex-center{justify-content:center;align-items:center;display:flex}.flex-column{flex-direction:column;display:flex}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.gap-xl{gap:32px}.btn-primary{background-color:var(--primary-color);color:var(--primary-inverse);border-radius:var(--radius-full);letter-spacing:.12em;width:100%;transition:transform var(--transition-speed)var(--ease-mechanical),box-shadow var(--transition-speed)var(--ease-mechanical),background-color var(--transition-speed)var(--ease-mechanical);justify-content:center;align-items:center;gap:8px;padding:18px 32px;font-size:1.1rem;font-weight:400;display:flex}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{background-color:var(--bg-color);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-full);letter-spacing:.1em;width:100%;transition:background-color var(--transition-speed)var(--ease-mechanical),transform var(--transition-speed)var(--ease-mechanical);justify-content:center;align-items:center;gap:8px;padding:16px 32px;font-size:1rem;font-weight:400;display:flex}.btn-secondary:hover:not(:disabled){background-color:#f0f0f0}.card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-speed)ease,border-color var(--transition-speed)ease;padding:32px}.card:hover{box-shadow:var(--shadow-md)}.text-center{text-align:center}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg,.mt-xl{margin-top:24px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:12px}.mb-lg{margin-bottom:16px}.mb-xl{margin-bottom:24px}@media (max-width:640px){.container{padding:0 12px}.text-h1{font-size:1.8rem}.card{padding:16px}.gap-xl{gap:16px}.gap-lg{gap:12px}.btn-primary{padding:14px 20px;font-size:1rem}}.footer-link-highlight{border:1px solid var(--border-color);border-radius:var(--radius-full);transition:all var(--transition-speed)var(--ease-mechanical);background-color:#0000;align-items:center;margin:0 12px;padding:8px 24px;font-weight:500;display:inline-flex;color:var(--text-primary)!important}.footer-link-highlight:hover{background-color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-2px);color:var(--primary-inverse)!important}.skeleton-pulse{border-radius:var(--radius-md);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:2s ease-in-out infinite pulse-skeleton}@keyframes pulse-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
