:root{--primary:#4f46e5;--primary-hover:#4338ca;--bg-main:#f8fafc;--bg-card:#ffffff;--text-main:#1e293b;--text-muted:#334155;--white:#ffffff;--border:#e2e8f0;--input-bg:#ffffff;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--transition:all .2s cubic-bezier(.4,0,.2,1)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background-color:var(--bg-main);color:var(--text-main);line-height:1.6;overflow-x:hidden}
h1,h2,h3,.logo-text{font-family:'Outfit',sans-serif;color:var(--text-main);font-weight:700}
.container{max-width:1000px;margin:0 auto;padding:0 1.5rem}
.site-header{padding:1rem 0;background:var(--bg-card);border-bottom:1px solid var(--border)}
.site-header .container{display:flex;justify-content:center;align-items:center}
.logo-link{text-decoration:none;color:inherit;display:inline-block}
.logo-text{font-size:1.65rem;font-weight:800;letter-spacing:-.04em;font-family:'Outfit',sans-serif;color:var(--text-main);display:flex;align-items:center}
.highlight{color:var(--primary)}
.logo-domain{font-weight:500;opacity:.8}
.hero{padding:3.5rem 0 3rem;text-align:center;background:var(--bg-main)}
.hero h1{font-size:2.75rem;font-weight:800;margin-bottom:2rem;line-height:1.1;letter-spacing:-.03em;max-width:800px;margin-left:auto;margin-right:auto}
.input-container{max-width:750px;margin:0 auto}
.input-wrapper{display:flex;gap:.4rem;background:var(--bg-card);padding:.4rem;border:1px solid var(--border);border-radius:1.25rem;transition:var(--transition)}
.input-box{position:relative;flex-grow:1;display:flex;align-items:center}
#videoUrl{width:100%;background:transparent;border:none;padding:1rem 3.25rem 1rem 1.25rem;color:var(--text-main);font-size:1.1rem;outline:none}
#videoUrl::placeholder{color:var(--text-muted)}
.clear-btn{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;transition:var(--transition);display:none;align-items:center;justify-content:center;z-index:2;-webkit-tap-highlight-color:transparent;width:32px;height:32px;border-radius:50%}
.clear-btn:hover{color:var(--text-main);background:rgba(0,0,0,.05)}
.btn-primary{text-decoration:none;background:var(--primary);color:var(--white);border:none;padding:.875rem 1.75rem;border-radius:.875rem;font-weight:400;font-size:1.1rem;cursor:pointer;transition:var(--transition);white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:.625rem;-webkit-tap-highlight-color:transparent}
.btn-primary:hover{background:var(--primary-hover)}
.how-to-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.25rem;color:var(--primary);text-decoration:none;font-size:1rem;font-weight:500;transition:var(--transition)}
.how-to-link:hover{color:var(--primary-hover)}
.how-to-link svg{color:currentColor;flex-shrink:0;transform:translateY(-1px)}
.section{padding:3.5rem 0}
.section-title{font-size:1.85rem;text-align:center;margin-bottom:2.5rem;letter-spacing:-.02em}
.glass-section{background:#ffffff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.about-card{max-width:850px;margin:0 auto}
.about-text{font-size:1rem;color:var(--text-muted);line-height:1.8}.about-text p+p{margin-top:1.5rem}
.steps-grid{display:flex;flex-direction:column;gap:1.25rem;max-width:850px;margin:0 auto}
.step-card{padding:1.25rem 2rem;background:var(--bg-card);border-radius:1.5rem;border:1px solid var(--border);transition:var(--transition);display:flex;align-items:center;gap:1.5rem;position:relative;overflow:hidden}
.step-number{font-size:3rem;font-weight:900;color:var(--primary);opacity:.15;line-height:1;min-width:60px}
.step-content{flex:1}
.step-card h3{font-size:1.25rem;margin-bottom:.5rem}
.step-card p{color:var(--text-muted)}
.features-grid{display:flex;flex-direction:column;gap:1.25rem;max-width:850px;margin:0 auto}
.feature-item{background:var(--bg-card);padding:1.25rem 2rem;border-radius:1.5rem;border:1px solid var(--border);display:flex;align-items:center;gap:1.5rem}
.feature-header{display:flex;align-items:center;gap:2rem;min-width:60px}
.feature-icon{width:60px;height:60px;background:rgba(79,70,229,.1);color:var(--primary);border-radius:1.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.feature-icon svg{width:24px;height:24px}
.feature-content{flex:1}
.feature-item h3{font-size:1.25rem;margin-bottom:.5rem}
.feature-item p{color:var(--text-muted);font-size:1rem}
.faq-grid{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.faq-item{background:var(--bg-card);padding:1.25rem 1.75rem;border-radius:1.25rem;border:1px solid var(--border)}
.faq-question h3{font-size:1.2rem;margin-bottom:.75rem}
.faq-answer p{color:var(--text-muted)}
.result-section{margin-bottom:2rem;display:none;margin-top:1rem}.card-api-container{max-width:600px;margin:0 auto;border-radius:1.5rem;overflow:hidden}#cardApiIframe{border:none;display:none}
.iframe-loading{display:flex;flex-direction:column;gap:1.2rem;padding:1.25rem 2rem 2rem;width:100%}
.skeleton-item{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite linear;border-radius:.75rem;width:100%}
.skeleton-thumbnail{height:200px}
.skeleton-title{height:45px;width:100%}
.skeleton-dropdown{height:45px}
.skeleton-button{height:45px}
@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.notice-box{margin:2.5rem auto 0;max-width:850px;padding:1.25rem 1.75rem;background:#fffbeb;border:1px solid #fef3c7;border-radius:1.25rem;display:flex;align-items:flex-start;gap:1rem}
.notice-icon{color:#d97706;margin-top:.25rem;flex-shrink:0}
.notice-content p{margin:0;font-size:1rem;color:var(--text-muted)}
.notice-content strong{color:var(--text-main)}
.legal-page{padding:5rem 0 7rem;background:white}
.legal-container{max-width:850px;margin:0 auto}
.legal-header{margin-bottom:4rem;text-align:center}
.legal-title{font-size:2.45rem}

.legal-content{background:var(--bg-card);padding:4rem;border-radius:2rem;border:1px solid var(--border)}
.legal-section{margin-bottom:3rem}
.legal-section:last-child{margin-bottom:0}
.legal-section h2{font-size:1.35rem;margin-bottom:1rem;color:var(--text-main)}
.legal-section p,.legal-section li{color:var(--text-muted);font-size:1.1rem;margin-bottom:1.25rem}
.legal-section p:last-child,.legal-section ul:last-child,.legal-section li:last-child{margin-bottom:0}
.legal-section ul{list-style:none;padding-left:.5rem;margin-bottom:1.25rem}
.legal-section li{position:relative;padding-left:1.75rem}
.legal-section li::before{content:"→";position:absolute;left:0;color:var(--primary);font-weight:700}
.legal-section a{color:var(--primary);text-decoration:none}
.legal-section a:hover{text-decoration:underline}
.site-footer{padding:2rem 0;background:var(--bg-card);border-top:1px solid var(--border)}
.footer-content{display:flex;justify-content:center}
.footer-info{color:var(--text-muted);font-size:1rem;display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap;justify-content:center}
.footer-links{display:flex;gap:1.25rem}
.footer-info a{color:var(--text-muted);text-decoration:none;transition:var(--transition)}
.footer-info a:hover{color:var(--primary)}
@media (max-width:1024px){.hero h1{font-size:2.25rem}.features-grid{gap:1.5rem}.logo-text{font-size:1.5rem}}
@media (max-width:768px){.container{padding:0 1.25rem}.hero{padding:2.5rem 0 2rem}.logo-text{font-size:1.35rem}.hero h1{font-size:1.85rem}.input-wrapper{flex-direction:column;background:transparent;border:none;box-shadow:none;padding:0}.input-box{background:#fff;border:1px solid var(--border);border-radius:1rem;padding:.25rem}.btn-primary{width:100%;border-radius:1rem;padding:1.25rem}.steps-grid,.features-grid{flex-direction:column}.step-card,.feature-item{flex-direction:column;text-align:center;gap:1rem;padding:1.5rem 1.25rem}.step-number,.feature-icon{min-width:auto;margin-bottom:.5rem}.section-title{font-size:1.5rem;margin-bottom:1.75rem}.legal-content{padding:2rem}.legal-title{font-size:1.85rem}.footer-info{flex-direction:column-reverse;gap:1rem}.footer-links{gap:1.25rem}.iframe-loading{padding:.85rem 0 1.25rem}}
.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;background:#ffffff;padding:2rem}
.error-container{max-width:600px}
.error-code{font-size:clamp(8rem,20vw,12rem);background:linear-gradient(135deg,var(--primary) 0%,#818cf8 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:900;line-height:.9;margin-bottom:1.5rem;letter-spacing:-.05em}
.error-title{font-size:2.25rem;font-weight:800;color:var(--text-main);margin-bottom:1rem;letter-spacing:-.02em}
.error-message{font-size:1.15rem;color:var(--text-muted);margin-bottom:2.5rem;line-height:1.6}
.error-actions .btn{padding:1rem 2.5rem;font-weight:600;font-size:1.15rem}