:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-active: #1e40af;--color-secondary: #f8fafc;--color-accent: #ec4899;--color-accent-hover: #db2777;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--color-text-primary: var(--color-gray-900);--color-text-secondary: var(--color-gray-600);--color-text-muted: var(--color-gray-500);--color-background: #ffffff;--color-background-secondary: #ffffff;--color-success: #10b981;--color-success-bg: #ecfdf5;--color-error: #ef4444;--color-error-bg: #fef2f2;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--focus-ring: 0 0 0 3px rgb(59 130 246 / .5);color:var(--color-text-primary);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus{outline:2px solid var(--color-primary);outline-offset:2px}body{margin:0;padding:0;min-width:320px;min-height:100vh;display:flex;background-color:var(--color-background-secondary)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.25;color:var(--color-text-primary)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin:0;line-height:1.6;color:var(--color-text-secondary)}*:focus{outline:2px solid var(--color-primary);outline-offset:2px}html{scroll-behavior:smooth}::selection{background-color:var(--color-primary);color:#fff}#app{width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;background:transparent;box-sizing:border-box}.first-container{width:100%;max-width:100%;background:transparent;border-radius:0;box-shadow:none;padding:var(--space-4);margin:0;display:flex;flex-direction:column;gap:var(--space-6);box-sizing:border-box}.top{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-2)}.top svg{flex-shrink:0;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all .2s ease;color:var(--color-accent)}.top svg:hover{background-color:var(--color-gray-100);transform:translate(-2px)}.top svg:focus{outline:2px solid var(--color-primary);outline-offset:2px}.top h2{font-size:var(--text-2xl);font-weight:600;color:var(--color-text-primary);margin:0;flex:1;text-align:center}.form-grid{display:grid;grid-template-columns:1fr;gap:var(--space-5);width:100%}#future-text-input{display:flex;flex-direction:column;gap:var(--space-2);width:100%}#future-input-label{font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary);margin:0}.future-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-weight:400;color:var(--color-text-primary);background-color:var(--color-background);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);outline:none;transition:all .2s ease;box-sizing:border-box;min-height:48px}.future-input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);background-color:var(--color-background)}.future-input:hover:not(:focus){border-color:var(--color-gray-300)}.future-input::placeholder{color:var(--color-gray-400)}.label-error{color:var(--color-error)!important}.required-indicator{color:var(--color-error);margin-left:var(--space-1);font-weight:600}.input-container{position:relative;width:100%}.input-error{border-color:var(--color-error)!important;background-color:var(--color-error-bg)!important}.input-focused{border-color:var(--color-primary)!important;box-shadow:var(--focus-ring)!important}.input-has-value{background-color:var(--color-background)}.help-text{color:var(--color-text-muted);font-size:var(--text-sm);margin:var(--space-1) 0 0 0;line-height:1.4}.error-text{color:var(--color-error);font-size:var(--text-sm);font-weight:500;margin:var(--space-1) 0 0 0;display:flex;align-items:center;gap:var(--space-2)}.error-text:before{content:"⚠";font-size:var(--text-sm)}.bottom{display:flex;flex-direction:column;gap:var(--space-4);align-items:stretch;margin-top:var(--space-2)}.footer{margin-top:var(--space-4);padding:var(--space-4);background-color:var(--color-gray-50);border-radius:var(--radius-lg);text-align:center}.footer p{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-8);text-align:center;min-height:300px}.loading h3{font-size:var(--text-xl);font-weight:600;color:var(--color-text-primary)}.error-container{margin-top:var(--space-4);padding:var(--space-4);background-color:var(--color-error-bg);border-radius:var(--radius-lg);border:1px solid var(--color-error)}.success-label{font-size:var(--text-base);font-weight:500;color:var(--color-text-primary);text-align:center;line-height:1.6;margin:var(--space-4) 0}.success-instructions{margin-top:var(--space-6);padding:var(--space-4);background-color:var(--color-gray-50);border-radius:var(--radius-lg);text-align:left}.success-instructions p{font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-3)}.success-instructions ol{margin:0;padding-left:var(--space-5);list-style-type:decimal}.success-instructions li{color:var(--color-text-secondary);margin-bottom:var(--space-2);line-height:1.5}.success-instructions li:last-child{margin-bottom:0}.spinner{width:40px;height:40px;border:3px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.spinner--small{width:24px;height:24px;border-width:2px}.spinner--large{width:56px;height:56px;border-width:4px}.spinner--secondary{border-top-color:var(--color-gray-500)}.spinner--success{border-top-color:var(--color-success)}.spinner--error{border-top-color:var(--color-error)}@keyframes spin{to{transform:rotate(360deg)}}.success-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center;padding:var(--space-8)}.success-container svg{animation:successPop .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes successPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.success-container h3{font-size:var(--text-2xl);font-weight:600;color:var(--color-success);margin:0}.app-download-section{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);width:100%;margin-top:var(--space-6)}.app-store-buttons{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:280px}.app-store-button{display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);color:var(--color-text);text-decoration:none;transition:all .2s ease;cursor:pointer;font-family:inherit;font-size:var(--text-base);width:100%;min-height:60px}.app-store-button:hover{border-color:var(--color-primary);background:var(--color-background-subtle);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.app-store-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.app-store-button.ios{border-color:#007aff}.app-store-button.ios:hover{border-color:#0056cc;background:#007aff0d}.app-store-button.android{border-color:#34a853}.app-store-button.android:hover{border-color:#2e7d32;background:#34a8530d}.app-store-content{display:flex;align-items:center;gap:var(--space-3);pointer-events:none}.app-store-content svg{flex-shrink:0;pointer-events:none}.download-text{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;pointer-events:none}.store-name{font-size:var(--text-lg);font-weight:600;color:var(--color-text);margin:0;pointer-events:none}.download-help{font-size:var(--text-sm);color:var(--color-text-secondary);text-align:center;margin:0;max-width:300px}@media screen and (min-width: 640px){#app{padding:0}.first-container{max-width:100%;padding:var(--space-6)}.form-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.top h2{font-size:var(--text-3xl)}.spinner{width:48px;height:48px;border-width:4px}.app-store-buttons{flex-direction:row;max-width:100%;gap:var(--space-4);justify-content:center}.app-store-button{flex:0 0 auto;max-width:200px}}@media screen and (min-width: 768px){.first-container{max-width:100%;padding:var(--space-8)}.form-grid{gap:var(--space-8)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}.success-container svg{animation:none}*{transition:none!important;animation:none!important}}@media (prefers-contrast: high){.future-input{border-width:3px}.future-input:focus{border-width:4px}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:var(--space-3) var(--space-8);min-width:120px;font-size:var(--text-base);font-weight:600;font-family:inherit;line-height:1.25;text-decoration:none;white-space:nowrap;color:#fff;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);cursor:pointer;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.button:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0%,var(--color-primary-active) 100%);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.button:active{background:linear-gradient(135deg,var(--color-primary-active) 0%,var(--color-primary-hover) 100%);box-shadow:var(--shadow-sm);transform:translateY(0)}.button:focus{box-shadow:var(--shadow-lg),var(--focus-ring)}.button:disabled{background:var(--color-gray-300);color:var(--color-gray-500);cursor:not-allowed;box-shadow:none;transform:none}.button:disabled:hover{background:var(--color-gray-300);transform:none;box-shadow:none}.button--secondary{background:var(--color-background);color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:var(--shadow-sm)}.button--secondary:hover{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}.button--danger{background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%)}.button--danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)}.button--small{min-height:40px;padding:var(--space-2) var(--space-6);font-size:var(--text-sm);min-width:100px}.button--large{min-height:56px;padding:var(--space-4) var(--space-10);font-size:var(--text-lg);min-width:140px}.button--full-width{width:100%}.button--loading{position:relative;color:transparent;pointer-events:none}.button--loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin 1s linear infinite;color:#fff}@media (prefers-reduced-motion: reduce){.button{transition:none;transform:none}.button:hover{transform:none}.button--loading:after{animation:none}}@media (prefers-contrast: high){.button{border:2px solid currentColor}.button--secondary{border-width:3px}}@media (hover: none) and (pointer: coarse){.button:hover{transform:none;box-shadow:var(--shadow-md)}}
