@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=EB+Garamond:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;500;600&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-black: #000000;--color-white: #ffffff;--color-gray-50: #fafafa;--color-gray-100: #f5f5f5;--color-gray-200: #e5e5e5;--color-gray-300: #d4d4d4;--color-gray-400: #a3a3a3;--color-gray-500: #737373;--color-gray-600: #525252;--color-gray-700: #404040;--color-gray-800: #262626;--color-gray-900: #171717;--font-serif: "Playfair Display", "EB Garamond", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--border-subtle: 1px solid var(--color-gray-200);--border-medium: 1px solid var(--color-gray-300);--border-strong: 1px solid var(--color-gray-400);--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 6px rgba(0, 0, 0, .1);--shadow-strong: 0 10px 25px rgba(0, 0, 0, .15);--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1)}html,body{overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--color-black);color:var(--color-white);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;display:flex;justify-content:center}#root{width:100%;display:flex;justify-content:center}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--color-black) 0%,var(--color-gray-900) 100%);max-width:1600px;width:100%;position:relative;margin:0 auto}.app-header{padding:3rem 2rem 2rem;text-align:center;border-bottom:var(--border-subtle);background:#ffffff05;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-title{font-family:var(--font-serif);font-size:clamp(2rem,5vw,4rem);font-weight:700;margin-bottom:1rem;letter-spacing:-.02em;background:linear-gradient(135deg,var(--color-white) 0%,var(--color-gray-300) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(1rem,2.5vw,1.5rem);color:var(--color-gray-400);max-width:800px;margin:0 auto;line-height:1.5}.app-navigation{padding:1.5rem 2rem;border-bottom:var(--border-subtle);background:#ffffff03;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-steps{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;max-width:1200px;margin:0 auto}.nav-step{background:transparent;border:var(--border-medium);color:var(--color-gray-400);padding:.75rem 1.5rem;border-radius:.5rem;font-family:var(--font-serif);font-size:clamp(.8rem,1.5vw,1rem);cursor:pointer;transition:var(--transition-smooth);position:relative;overflow:hidden;min-width:120px;text-align:center;white-space:nowrap}.nav-step:hover{border-color:var(--color-gray-300);color:var(--color-gray-300);transform:translateY(-1px)}.nav-step.active{background:var(--color-white);color:var(--color-black);border-color:var(--color-white);box-shadow:var(--shadow-medium)}.nav-step.active:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.app-main{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.step-container{max-width:1200px;margin:0 auto}.app-footer{padding:2rem;text-align:center;border-top:var(--border-subtle);background:#ffffff03}.philosophical-quote{font-family:var(--font-serif);font-style:italic;font-size:clamp(1rem,2vw,1.3rem);color:var(--color-gray-400);max-width:800px;margin:0 auto;line-height:1.6;animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.component-card{background:#ffffff05;border:var(--border-subtle);border-radius:1rem;padding:clamp(1.5rem,4vw,3rem);margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition-smooth);box-shadow:var(--shadow-subtle)}.component-card:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-medium)}.component-title{font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700;margin-bottom:1rem;color:var(--color-white);text-align:center}.component-subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(.9rem,2vw,1.2rem);color:var(--color-gray-400);margin-bottom:2rem;line-height:1.5;text-align:center}.form-group{margin-bottom:2rem}.form-label{display:block;font-family:var(--font-serif);font-size:clamp(1rem,2vw,1.3rem);font-weight:600;margin-bottom:.75rem;color:var(--color-white)}.form-input,.form-textarea,.form-select{width:100%;padding:clamp(1rem,2vw,1.5rem);background:#ffffff0d;border:var(--border-medium);border-radius:.75rem;color:var(--color-white);font-family:var(--font-sans);font-size:clamp(.9rem,1.5vw,1.1rem);transition:var(--transition-fast);resize:vertical}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-white);background:#ffffff14;box-shadow:0 0 0 3px #ffffff1a}.form-textarea{min-height:150px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:clamp(.75rem,2vw,1.25rem) clamp(1.5rem,3vw,3rem);background:var(--color-white);color:var(--color-black);border:none;border-radius:.75rem;font-family:var(--font-serif);font-size:clamp(.9rem,1.5vw,1.2rem);font-weight:600;cursor:pointer;transition:var(--transition-smooth);text-decoration:none;gap:.5rem;min-width:140px;white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-strong)}.btn:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--color-white);border:var(--border-medium)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--color-white)}.btn-loading{opacity:.7;cursor:not-allowed}.btn-loading:hover{transform:none;box-shadow:none}.loading-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:clamp(1rem,3vw,2rem);margin-top:2rem}.grid-item{background:#ffffff05;border:var(--border-subtle);border-radius:1rem;padding:clamp(1.5rem,3vw,2.5rem);transition:var(--transition-smooth);position:relative;box-shadow:var(--shadow-subtle)}.grid-item:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-medium)}.grid-item:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--color-gray-800) 1px,transparent 1px),linear-gradient(0deg,var(--color-gray-800) 1px,transparent 1px);background-size:20px 20px;opacity:.1;border-radius:1rem;pointer-events:none}.grid-item-title{font-family:var(--font-serif);font-size:clamp(1.1rem,2vw,1.5rem);font-weight:700;margin-bottom:1rem;color:var(--color-white)}.grid-item-content{position:relative;z-index:1}.api-instructions{background:#ffffff08;border:var(--border-subtle);border-radius:1rem;padding:clamp(1.5rem,3vw,2.5rem);margin-top:1.5rem}.api-instructions h3{font-family:var(--font-serif);font-size:clamp(1.1rem,2vw,1.4rem);font-weight:600;margin-bottom:1rem;color:var(--color-white);display:flex;align-items:center;gap:.5rem}.api-instructions ol{margin-left:1.5rem;color:var(--color-gray-300);line-height:1.8;font-size:clamp(.9rem,1.5vw,1rem)}.api-instructions li{margin-bottom:.5rem}.api-instructions a{color:var(--color-white);text-decoration:underline;transition:var(--transition-fast)}.api-instructions a:hover{color:var(--color-gray-300)}.api-warning{background:#ff00001a;border:1px solid rgba(255,0,0,.3);border-radius:.75rem;padding:1rem;margin-top:1rem;color:#ff6b6b;font-style:italic;display:flex;align-items:center;gap:.5rem;font-size:clamp(.85rem,1.5vw,1rem)}.api-security{background:#00ff001a;border:1px solid rgba(0,255,0,.3);border-radius:.75rem;padding:1rem;margin-top:1rem;color:#51cf66;font-style:italic;display:flex;align-items:center;gap:.5rem;font-size:clamp(.85rem,1.5vw,1rem)}.provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.provider-card{text-align:left;background:#ffffff0a;border:var(--border-medium);border-radius:.75rem;padding:1rem 1.25rem;color:var(--color-white);cursor:pointer;transition:var(--transition-smooth)}.provider-card:hover{transform:translateY(-2px);border-color:var(--color-white);box-shadow:var(--shadow-medium)}.provider-card.active{background:#ffffff1a;border-color:var(--color-white);box-shadow:var(--shadow-strong)}.provider-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;font-weight:600}.provider-icon{font-size:1.1rem}.provider-name{font-family:var(--font-serif)}.provider-desc{color:var(--color-gray-400);font-size:.95rem}table{width:100%;border-collapse:collapse;margin:1rem 0}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--color-gray-600)}th{background:#ffffff0d;font-weight:600;color:var(--color-white)}tr:hover{background:#ffffff05}.btn-small{font-size:.8rem;padding:.25rem .5rem;border-radius:.25rem;min-width:auto;height:auto}@media (max-width: 1200px){.app{max-width:100%}.app-main{padding:1.5rem}.step-container{max-width:1000px}}@media (max-width: 768px){.app-header{padding:2rem 1rem 1.5rem}.app-navigation{padding:1rem}.nav-steps{gap:.5rem}.nav-step{padding:.5rem 1rem;min-width:100px}.app-main{padding:1rem}.component-card{padding:1.5rem}.grid-container{grid-template-columns:1fr;gap:1rem}.btn{width:100%;justify-content:center}}@media (max-width: 480px){.app-header{padding:1.5rem .5rem 1rem}.app-navigation{padding:.75rem}.nav-step{padding:.5rem .75rem;min-width:80px;font-size:.75rem}.app-main{padding:.75rem}.component-card{padding:1rem}.form-input,.form-textarea,.form-select{padding:.75rem}}@media (min-width: 1600px){.app{max-width:1800px}.step-container{max-width:1400px}.app-main{max-width:1600px}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.fade-in{animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-up{animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
