.landing-page{--landing-bg:#0f1117;--landing-bg-card:#161b22;--landing-text-primary:#fff;--landing-text-secondary:#8b949e;--landing-accent-purple:#8b5cf6;--landing-accent-blue:#3b82f6;--landing-accent-pink:#ec4899;--landing-border-color:hsla(0,0%,100%,.1);--landing-features-bg:linear-gradient(180deg,transparent,rgba(59,130,246,.05));--landing-mockup-bg:#1e293b;--landing-mockup-dot-1:#ef4444;--landing-mockup-dot-2:#eab308;--landing-mockup-dot-3:#22c55e;--landing-mockup-address-bg:rgba(30,41,59,.5);--landing-mockup-address-text:hsla(0,0%,100%,.5);--landing-image-fade:linear-gradient(0deg,rgba(15,23,42,.9) 0%,transparent);--landing-no-image-bg-1:#1e293b;--landing-no-image-bg-2:#253248;--landing-btn-secondary-bg:hsla(0,0%,100%,.05);--landing-btn-secondary-border:hsla(0,0%,100%,.1);--landing-btn-secondary-hover-bg:hsla(0,0%,100%,.1);--landing-btn-secondary-text:#fff;min-height:100vh;background-color:var(--landing-bg);color:var(--landing-text-primary);font-family:Noto Sans JP,sans-serif;overflow-x:hidden}.light-theme .landing-page{--landing-bg:#fff;--landing-bg-card:#fff;--landing-text-primary:#111827;--landing-text-secondary:#4b5563;--landing-border-color:#e5e7eb;--landing-features-bg:linear-gradient(180deg,#f9fafb,#eff6ff);--landing-mockup-bg:#f3f4f6;--landing-mockup-address-bg:hsla(0,0%,100%,.8);--landing-mockup-address-text:#6b7280;--landing-image-fade:linear-gradient(0deg,hsla(0,0%,100%,.9) 0%,transparent);--landing-no-image-bg-1:#f3f4f6;--landing-no-image-bg-2:#e5e7eb;--landing-btn-secondary-bg:rgba(0,0,0,.05);--landing-btn-secondary-border:rgba(0,0,0,.1);--landing-btn-secondary-hover-bg:rgba(0,0,0,.1);--landing-btn-secondary-text:#111827}.landing-page .landing-container{max-width:1200px;margin:0 auto;padding:0 24px;position:relative}.landing-page .text-gradient{background:linear-gradient(135deg,#60a5fa,#a78bfa 50%,#f472b6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-page .landing-hero{padding:80px 0;text-align:center;position:relative;background:radial-gradient(circle at 50% 0,rgba(59,130,246,.15) 0,transparent 50%)}.landing-page .landing-logo{width:100px;height:100px;margin:0 auto 32px;animation:float 6s ease-in-out infinite}.landing-page .landing-logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(139,92,246,.3))}.landing-page .landing-title{font-size:4rem;font-weight:800;line-height:1.2;margin-bottom:24px;letter-spacing:-.02em}.landing-page .landing-description{font-size:1.125rem;color:var(--landing-text-secondary);line-height:1.8;max-width:720px;margin:0 auto 48px}.landing-page .landing-cta{display:flex;gap:16px;justify-content:center;margin-bottom:24px}.landing-page .landing-sub-cta{margin-bottom:80px}.landing-page .link-register{color:var(--landing-text-secondary);text-decoration:none;font-size:.95rem;transition:color .2s;display:inline-flex;align-items:center;gap:4px}.landing-page .link-register:hover{color:var(--landing-accent-blue);text-decoration:underline}.landing-page .link-register .arrow{transition:transform .2s}.landing-page .link-register:hover .arrow{transform:translateX(4px)}.landing-page .btn-landing{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border-radius:999px;font-weight:600;font-size:1rem;transition:all .3s ease;cursor:pointer}.landing-page .btn-landing.btn-primary{background:linear-gradient(135deg,#3b82f6,#ec4899);color:#fff;border:none;box-shadow:0 4px 20px rgba(59,130,246,.4)}.landing-page .btn-landing.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(59,130,246,.6)}.landing-page .btn-landing.btn-secondary{background:var(--landing-btn-secondary-bg);color:var(--landing-btn-secondary-text);border:1px solid var(--landing-btn-secondary-border)}.landing-page .btn-landing.btn-secondary:hover{background:var(--landing-btn-secondary-hover-bg);border-color:var(--landing-border-color)}.landing-page .ml-2{margin-left:8px}.landing-page .hero-visual{position:relative;max-width:1200px;perspective:1000px;margin:0 auto}.landing-page .dashboard-mockup{position:relative;padding:0}.landing-page .mockup-window{background:#0f172a;border-radius:16px;border:1px solid var(--landing-border-color);box-shadow:0 25px 50px -12px rgba(0,0,0,.5);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.light-theme .landing-page .mockup-window{background:#fff;box-shadow:0 25px 50px -12px rgba(0,0,0,.15)}.landing-page .mockup-window:hover{transform:translateY(-8px) scale(1.01)}.landing-page .mockup-window:hover,.light-theme .landing-page .mockup-window:hover{border-color:var(--landing-accent-purple);box-shadow:0 35px 60px -12px rgba(139,92,246,.4)}.landing-page .window-bar{background:var(--landing-mockup-bg);padding:12px 16px;display:flex;align-items:center;border-bottom:1px solid var(--landing-border-color)}.landing-page .window-dots{display:flex;gap:6px;margin-right:16px}.landing-page .window-dots span{width:10px;height:10px;border-radius:50%;background-color:hsla(0,0%,100%,.1)}.light-theme .landing-page .window-dots span{background-color:rgba(0,0,0,.1)}.landing-page .window-dots span:first-child{background-color:var(--landing-mockup-dot-1)}.landing-page .window-dots span:nth-child(2){background-color:var(--landing-mockup-dot-2)}.landing-page .window-dots span:nth-child(3){background-color:var(--landing-mockup-dot-3)}.landing-page .window-address{background:var(--landing-mockup-address-bg);padding:6px 12px;border-radius:6px;font-size:.8rem;color:var(--landing-mockup-address-text);flex:1 1;text-align:center;border:1px solid var(--landing-border-color);box-shadow:inset 0 1px 2px rgba(0,0,0,.2)}.light-theme .landing-page .window-address{box-shadow:inset 0 1px 2px rgba(0,0,0,.05)}.landing-page .window-content{position:relative;background:var(--landing-mockup-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.landing-page .window-content:after{content:"";position:absolute;bottom:0;left:0;right:0;height:120px;background:var(--landing-image-fade);pointer-events:none}.landing-page .window-content img{width:100%;height:auto;display:block}.landing-page .window-content.no-image{background:linear-gradient(45deg,var(--landing-no-image-bg-1) 25%,var(--landing-no-image-bg-2) 25%,var(--landing-no-image-bg-2) 50%,var(--landing-no-image-bg-1) 50%,var(--landing-no-image-bg-1) 75%,var(--landing-no-image-bg-2) 75%,var(--landing-no-image-bg-2) 100%);background-size:20px 20px}.landing-page .fallback-text{position:absolute;text-align:center;color:hsla(0,0%,100%,.3);font-size:.9rem}.light-theme .landing-page .fallback-text{color:rgba(0,0,0,.3)}.landing-page .landing-features{padding:100px 0;background:var(--landing-features-bg)}.landing-page .features-header{text-align:center;margin-bottom:60px}.landing-page .features-title{font-size:3rem;font-weight:800;margin-bottom:16px}.landing-page .features-subtitle{color:var(--landing-text-secondary);font-size:1.1rem}.landing-page .bento-grid{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px;max-width:1200px;margin:0 auto}.landing-page .bento-card{background:var(--landing-bg-card);border:1px solid var(--landing-border-color);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transition:all .3s ease;position:relative}.landing-page .bento-card:hover{border-color:hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.2)}.light-theme .landing-page .bento-card:hover{border-color:rgba(0,0,0,.1);box-shadow:0 20px 40px rgba(0,0,0,.1)}.landing-page .feature-dividend:hover,.landing-page .feature-portfolio:hover,.light-theme .landing-page .feature-dividend:hover,.light-theme .landing-page .feature-portfolio:hover{border-color:var(--landing-accent-purple);box-shadow:0 20px 40px rgba(139,92,246,.3)}.landing-page .card-content{padding:32px;z-index:1}.landing-page .feature-dividend .card-content,.landing-page .feature-portfolio .card-content{padding-top:12px;padding-bottom:12px}.landing-page .card-content-horizontal{display:flex;align-items:flex-start;gap:24px}.landing-page .card-content-horizontal .feature-icon-box{flex-shrink:0;margin-bottom:0}.landing-page .card-text-content{flex:1 1}.landing-page .card-text-content h3{margin-top:0;margin-bottom:8px}.landing-page .card-text-content p{margin:0}.landing-page .card-content-row{display:flex;align-items:center;height:100%}.landing-page .text-part{padding:40px;flex:1 1;min-width:300px}.landing-page .image-part{flex:1.5 1;height:100%;background:rgba(0,0,0,.2);position:relative;overflow:hidden}.landing-page .feature-icon-box{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:24px}.landing-page .icon-blue{background:rgba(59,130,246,.1);color:#60a5fa}.landing-page .icon-green{background:rgba(34,197,94,.1);color:#4ade80}.landing-page .icon-orange{background:rgba(249,115,22,.1);color:#fb923c}.landing-page .bento-card h3{font-size:1.5rem;font-weight:700;margin-bottom:12px;color:var(--landing-text-primary)}.landing-page .bento-card p{color:var(--landing-text-secondary);line-height:1.6;font-size:.95rem}.landing-page .card-image-area{position:relative;width:100%;height:300px;background:var(--landing-mockup-bg);overflow:hidden;border-top:1px solid var(--landing-border-color)}.landing-page .feature-dividend .card-image-area,.landing-page .feature-portfolio .card-image-area{height:auto;min-height:500px;overflow:visible}.landing-page .feature-csv-upload .card-image-area:after,.landing-page .feature-dividend .card-image-area:after,.landing-page .feature-manual-input .card-image-area:after,.landing-page .feature-portfolio .card-image-area:after{content:"";position:absolute;bottom:0;left:0;right:0;height:120px;background:var(--landing-image-fade);pointer-events:none;z-index:1}.landing-page .card-image-area.no-image{background:repeating-linear-gradient(45deg,var(--landing-no-image-bg-1),var(--landing-no-image-bg-1) 10px,var(--landing-no-image-bg-2) 10px,var(--landing-no-image-bg-2) 20px)}.landing-page .card-image-area img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s ease}.landing-page .feature-dividend .card-image-area img,.landing-page .feature-portfolio .card-image-area img{object-fit:contain;object-position:center;width:100%;height:auto}.landing-page .bento-card:hover .card-image-area img{transform:scale(1.05)}.landing-page .upload-cards-container{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;align-items:stretch}.landing-page .feature-csv-upload .card-content,.landing-page .feature-manual-input .card-content{padding-top:12px;padding-bottom:12px}.landing-page .feature-csv-upload .card-content-horizontal,.landing-page .feature-manual-input .card-content-horizontal{align-items:center}.landing-page .feature-csv-upload .card-image-area,.landing-page .feature-manual-input .card-image-area{height:auto;overflow:visible;flex:1 1;display:flex;flex-direction:column}.landing-page .feature-csv-upload .card-image-area img,.landing-page .feature-manual-input .card-image-area img{object-fit:contain;object-position:center;width:100%;height:auto;flex:1 1}.landing-page .feature-csv-upload:hover,.landing-page .feature-manual-input:hover,.light-theme .landing-page .feature-csv-upload:hover,.light-theme .landing-page .feature-manual-input:hover{border-color:var(--landing-accent-purple);box-shadow:0 20px 40px rgba(139,92,246,.3)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing-page .show-mobile{display:none}@media (max-width:1024px){.landing-page .landing-title{font-size:3rem}.landing-page .bento-grid{grid-template-columns:1fr}.landing-page .text-part{padding:24px}.landing-page .hero-visual{margin-top:0}}@media (max-width:768px){.landing-page .show-mobile{display:block}.landing-page .landing-container{padding:0 16px}.landing-page .landing-hero{padding:100px 0 40px}.landing-page .landing-description{font-size:1rem;margin-bottom:32px}.landing-page .landing-title{font-size:2.5rem}.landing-page .hidden-mobile{display:none}.landing-page .landing-cta{flex-direction:column}.landing-page .btn-landing{width:100%}.landing-page .text-part{padding:24px}.landing-page .upload-cards-container{grid-template-columns:1fr}.landing-page .feature-dividend .card-image-area,.landing-page .feature-portfolio .card-image-area{min-height:auto;height:auto}.landing-page .feature-csv-upload .card-content-horizontal,.landing-page .feature-dividend .card-content-horizontal,.landing-page .feature-manual-input .card-content-horizontal,.landing-page .feature-portfolio .card-content-horizontal{flex-direction:column}.landing-page .card-content-horizontal .feature-icon-box{margin-bottom:0}.landing-page .card-text-content{display:contents}.landing-page .card-text-content h3{order:-1;display:inline-block;vertical-align:middle;margin-bottom:0;margin-left:12px}.landing-page .feature-csv-upload .card-content-horizontal,.landing-page .feature-dividend .card-content-horizontal,.landing-page .feature-manual-input .card-content-horizontal,.landing-page .feature-portfolio .card-content-horizontal{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;grid-gap:12px;gap:12px}.landing-page .feature-csv-upload .card-content-horizontal .feature-icon-box,.landing-page .feature-dividend .card-content-horizontal .feature-icon-box,.landing-page .feature-manual-input .card-content-horizontal .feature-icon-box,.landing-page .feature-portfolio .card-content-horizontal .feature-icon-box{grid-column:1;grid-row:1;margin-bottom:0}.landing-page .feature-csv-upload .card-content-horizontal h3,.landing-page .feature-dividend .card-content-horizontal h3,.landing-page .feature-manual-input .card-content-horizontal h3,.landing-page .feature-portfolio .card-content-horizontal h3{grid-column:2;grid-row:1;margin:0}.landing-page .feature-dividend .card-content-horizontal p,.landing-page .feature-portfolio .card-content-horizontal p{grid-column:1/-1;grid-row:2;margin-top:4px}}