.header{position:sticky;top:0;background-color:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;z-index:1000}.header-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px}.logo{display:flex;align-items:center;cursor:pointer;margin-right:40px}.logo-text{font-size:24px;font-weight:700;color:#ffec48;letter-spacing:-.5px}.nav-menu{display:flex;justify-content:space-between;align-items:center;flex:1;list-style:none;margin:0;padding:0}.nav-left{display:flex;gap:30px;align-items:center}.nav-right{display:flex;gap:20px;align-items:center;margin-left:auto}.nav-item{background:none;border:none;font-size:15px;color:#333;cursor:pointer;padding:8px 12px;transition:color .3s ease;font-weight:500}.nav-item:hover{color:#ffec48}.nav-item.user-info{color:#666;font-size:14px;cursor:pointer}.nav-item.user-info:hover{color:#ffec48}.nav-item.logout-btn{background-color:#f5f5f5;border-radius:6px;padding:8px 16px;color:#666;font-weight:600}.nav-item.logout-btn:hover{background-color:#ffec48;color:#333}.nav-item.nav-avatar{display:flex;align-items:center;justify-content:center;padding:4px;color:#555;border-radius:50%;transition:background .2s,color .2s}.nav-item.nav-avatar:hover{background:#f0f0f0;color:#333}.nav-item.nav-avatar.disabled{color:#d0d0d0}.nav-item.disabled{color:#d0d0d0;cursor:not-allowed;pointer-events:none}.nav-item.disabled:hover{color:#d0d0d0}.main-page{flex:1;display:flex;flex-direction:column}.hero-section{padding:80px 20px;background:linear-gradient(135deg,#fffaf0,#fff8e1);text-align:center;border-bottom:3px solid #ffec48}.hero-content{max-width:800px;margin:0 auto}.hero-title{font-size:48px;font-weight:700;color:#333;margin-bottom:16px;line-height:1.2}.hero-subtitle{font-size:18px;color:#666;margin-bottom:40px;line-height:1.6}.cta-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn{padding:14px 32px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.btn-primary{background-color:#ffec48;color:#333;min-width:200px}.btn-primary:hover{background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec484d}.btn-secondary{background-color:#f8f9fa;color:#333;border:2px solid #ffec48;min-width:280px}.btn-secondary:hover{background-color:#fff;box-shadow:0 4px 12px #0000001a}.features-section{padding:120px 20px;background:#fff;text-align:center}.toss-section{padding:120px 20px;background:#fff}[data-scroll-fade]{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}[data-scroll-fade].fade-in-active{opacity:1;transform:translateY(0)}.toss-container [data-scroll-fade]:nth-child(1){transition-delay:.1s}.toss-container [data-scroll-fade]:nth-child(2){transition-delay:.3s}.toss-section.alt{background:#f0f0f0}.toss-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.toss-container.reverse{grid-template-columns:1fr 1fr}.toss-text h2{font-size:52px;font-weight:800;color:#191f28;line-height:1.3;letter-spacing:-2px}.toss-text p{font-size:18px;color:#666;line-height:1.6;margin-top:20px;word-break:keep-all}.toss-text[data-scroll-fade]:not(.fade-in-active){transform:translate(-40px)}.toss-container.reverse .toss-text[data-scroll-fade]:not(.fade-in-active){transform:translate(40px)}.toss-visual{position:relative}.phone-mockup{position:relative;width:100%;max-width:340px;margin:0 auto;perspective:1000px}.toss-visual[data-scroll-fade] .phone-mockup{transform:translateY(0)}.toss-visual:not(.fade-in-active) .phone-mockup{transform:translateY(60px)}.mockup-screen{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:32px;padding:32px 24px;box-shadow:0 20px 60px #00000026;border:8px solid #1a1a1a;position:relative}.mockup-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.mockup-logo{font-size:18px;font-weight:700;color:#191f28}.mockup-card{background:#fff;border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 4px 12px #00000014;display:flex;align-items:center;gap:16px;transition:all .3s ease;animation:cardSlideIn .6s ease-out backwards}.mockup-card.card-1{animation-delay:.2s}.mockup-card.card-2{animation-delay:.4s}.mockup-card.card-3{animation-delay:.6s}@keyframes cardSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.mockup-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.card-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff8e1,#ffecb3);border-radius:12px;flex-shrink:0}.card-content{flex:1;text-align:left}.card-title{font-size:13px;color:#6b7684;margin-bottom:4px;font-weight:500}.card-amount{font-size:22px;font-weight:700;color:#191f28}.card-subtitle{font-size:14px;color:#191f28;font-weight:600}.card-change{font-size:14px;font-weight:600;margin-top:4px}.card-change.positive{color:#f23645}.feature-visual-card{background:linear-gradient(135deg,#fff,#f8f9fa);padding:48px 40px;border-radius:24px;text-align:center;box-shadow:0 20px 60px #0000001a;border:1px solid #e9ecef;transition:transform .6s ease}.toss-visual[data-scroll-fade] .feature-visual-card{transform:translateY(0)}.toss-visual:not(.fade-in-active) .feature-visual-card{transform:translateY(60px)}.visual-icon.big-icon{font-size:100px;margin:0 auto 32px;display:flex;align-items:center;justify-content:center;width:100%}.feature-visual-card h3{font-size:28px;font-weight:700;color:#191f28;margin-bottom:16px}.feature-visual-card p{font-size:16px;color:#6b7684;line-height:1.7;margin-bottom:24px}.visual-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:10px 20px;border-radius:20px;font-size:14px;font-weight:600;color:#1976d2}.visual-badge span{font-size:16px}.features-section h2{font-size:48px;font-weight:800;color:#191f28;margin-bottom:80px;letter-spacing:-1.5px}.features-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:40px}.feature-card{padding:50px 36px;background:linear-gradient(135deg,#f9fafb,#fff);border-radius:20px;border:1px solid #f1f3f5;transition:all .4s cubic-bezier(.4,0,.2,1);text-align:center;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ffd43b,#ffc107);transform:scaleX(0);transition:transform .4s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014;border-color:#e9ecef}.feature-icon{font-size:48px;margin-bottom:28px;display:inline-flex;align-items:center;justify-content:center;width:100px;height:100px;border-radius:24px;box-shadow:0 8px 24px #ffc10726;transition:all .3s ease}.feature-icon.icon-yellow{background:linear-gradient(135deg,#fff8e1,#ffecb3)}.feature-icon.icon-blue{background:linear-gradient(135deg,#e3f2fd,#bbdefb);box-shadow:0 8px 24px #2196f326}.feature-icon.icon-green{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);box-shadow:0 8px 24px #4caf5026}.feature-card:hover .feature-icon{transform:scale(1.05)}.feature-card:hover .feature-icon.icon-yellow{box-shadow:0 12px 32px #ffc10740}.feature-card:hover .feature-icon.icon-blue{box-shadow:0 12px 32px #2196f340}.feature-card:hover .feature-icon.icon-green{box-shadow:0 12px 32px #4caf5040}.feature-card h3{font-size:24px;font-weight:700;color:#191f28;margin-bottom:16px;letter-spacing:-.5px}.feature-card p{font-size:16px;color:#4e5968;line-height:1.8;font-weight:400}.info-section{padding:120px 20px;background:linear-gradient(180deg,#fafafa,#f5f5f5);text-align:center}.gallery-section{padding:120px 40px;background:#000;color:#fff;overflow:hidden}.gallery-header{text-align:center;margin-bottom:80px;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.4,0,.2,1)}.gallery-header.fade-in-active{opacity:1;transform:translateY(0)}.gallery-header h2{font-size:52px;font-weight:800;color:#fff;margin-bottom:16px;letter-spacing:-1.5px}.gallery-header p{font-size:18px;color:#999;font-weight:400}.image-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1600px;margin:0 auto}.gallery-card{position:relative;cursor:pointer;opacity:0;transform:translateY(40px);transition:all .6s cubic-bezier(.4,0,.2,1)}.gallery-card.fade-in-active{opacity:1;transform:translateY(0)}.gallery-card:nth-child(1){transition-delay:.1s}.gallery-card:nth-child(2){transition-delay:.2s}.gallery-card:nth-child(3){transition-delay:.3s}.gallery-card:nth-child(4){transition-delay:.4s}.gallery-card:hover{transform:translateY(-8px)}.gallery-image{width:100%;height:300px;border-radius:16px;overflow:hidden;position:relative;transition:all .3s ease;background:#1a1a1a;display:flex;align-items:center;justify-content:center}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:all .3s ease}.gallery-card:hover .gallery-image{transform:translateY(-8px)}.gallery-card:hover .gallery-image img{transform:scale(1.05)}.gallery-info{margin-top:24px;padding:0 8px;text-align:left}.gallery-info h3{font-size:20px;font-weight:700;color:#fff;margin-bottom:12px;line-height:1.4}.gallery-info p{font-size:14px;color:#999;line-height:1.6}.info-section h2{font-size:48px;font-weight:800;color:#191f28;margin-bottom:60px;letter-spacing:-1.5px}.info-list{max-width:800px;margin:0 auto;list-style:none;padding:0;display:grid;gap:16px}.info-list li{font-size:18px;color:#191f28;padding:24px 32px;line-height:1.6;background:#fff;border-radius:16px;font-weight:500;box-shadow:0 2px 8px #0000000a;transition:all .3s ease;border-left:4px solid #FFD43B}.info-list li:hover{transform:translate(4px);box-shadow:0 8px 20px #00000014;border-left-color:#ffc107}@media(max-width:1200px){.image-gallery{grid-template-columns:repeat(2,1fr);gap:24px}.gallery-header h2{font-size:42px}}@media(max-width:768px){.hero-title{font-size:36px}.hero-subtitle{font-size:16px}.cta-buttons{flex-direction:column}.btn{width:100%;min-width:unset}.features-section,.info-section{padding:80px 20px}.features-section h2,.info-section h2{font-size:36px;margin-bottom:48px}.features-grid{grid-template-columns:1fr;gap:24px}.feature-icon{width:80px;height:80px;font-size:40px}.feature-card{padding:40px 28px}.info-list li{font-size:16px;padding:20px 24px}.toss-section{padding:80px 20px}.toss-container,.toss-container.reverse{grid-template-columns:1fr;gap:48px}.toss-container.reverse{direction:ltr}.toss-container.reverse .toss-visual{order:2}.toss-container.reverse .toss-text{order:1}.toss-text h2{font-size:36px;letter-spacing:-1px}.toss-text p{font-size:16px;margin-top:16px}.phone-mockup{max-width:280px}.mockup-screen{padding:24px 16px;border-width:6px;border-radius:24px}.mockup-card{padding:16px;gap:12px}.card-icon{font-size:24px;width:40px;height:40px}.card-amount{font-size:18px}.feature-visual-card{padding:36px 28px}.visual-icon.big-icon{font-size:80px}.feature-visual-card h3{font-size:24px}.gallery-section{padding:80px 20px}.gallery-header h2{font-size:36px}.gallery-header p{font-size:16px}.image-gallery{grid-template-columns:1fr;gap:32px}.gallery-image{height:280px}.gallery-info h3{font-size:18px}.gallery-info p{font-size:14px}}.hero{position:relative;min-height:85vh;overflow:hidden;background:linear-gradient(135deg,#fff9e6,#fffbea,#fff6dc);display:flex;align-items:center;padding:60px 20px}.hero-container{max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.hero-content{position:relative;z-index:2;text-align:left;color:#222}.hero-label{display:inline-block;font-size:14px;font-weight:700;color:#d4a500;background:#f7d84b59;padding:6px 16px;border-radius:20px;margin-bottom:24px;letter-spacing:.5px}.hero-title{font-size:64px;font-weight:800;line-height:1.2;margin-bottom:24px;color:#1a1a1a;letter-spacing:-1px;animation:fadeInUp .8s ease-out forwards;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-description{color:#666;font-size:18px;margin-bottom:36px;line-height:1.7;animation:fadeInUp .8s ease-out .2s forwards;opacity:0}.hero-actions{display:flex;gap:16px;animation:fadeInUp .8s ease-out .4s forwards;opacity:0;flex-wrap:wrap}.btn-primary{background:#1a1a1a;border:none;padding:16px 40px;border-radius:8px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #00000026}.btn-primary:hover{background:#000;transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.btn-secondary{background:transparent;border:2px solid #1a1a1a;padding:14px 40px;border-radius:8px;color:#1a1a1a;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#1a1a1a;color:#fff;transform:translateY(-2px)}.hero-visual{position:relative;height:500px;display:flex;align-items:center;justify-content:center}.visual-circle{position:absolute;border-radius:50%;animation:float 4s ease-in-out infinite}.visual-circle-1{width:320px;height:320px;background:linear-gradient(135deg,#ffe066,#ffce3d);opacity:.4;animation-delay:0s}.visual-circle-2{width:220px;height:220px;background:linear-gradient(135deg,#ffeb99,#ffc830);opacity:.45;top:50px;right:50px;animation-delay:.8s}.visual-circle-3{width:140px;height:140px;background:linear-gradient(135deg,#ffed88,#ffd042);opacity:.5;bottom:80px;left:40px;animation-delay:1.6s}@keyframes float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.05)}}@media(max-width:768px){.hero{min-height:auto;padding:40px 20px}.hero-container{grid-template-columns:1fr;gap:40px}.hero-title{font-size:42px}.hero-description{font-size:16px}.hero-visual{height:300px}.visual-circle-1{width:200px;height:200px}.visual-circle-2{width:140px;height:140px}.visual-circle-3{width:90px;height:90px}.btn-primary,.btn-secondary{width:100%}}.terms-checkbox-wrapper{border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;overflow:hidden;transition:box-shadow .3s ease}.terms-checkbox-wrapper:hover{box-shadow:0 2px 8px #00000014}.terms-checkbox-row{display:flex;align-items:center;padding:16px;gap:12px;cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.terms-checkbox-row:hover{background-color:#f8f9fa}.terms-checkbox-row.checked{background-color:#f0f8ff}.checkbox-container{position:relative;flex-shrink:0;width:24px;height:24px}.checkbox-input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}.checkbox-label{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid #d0d0d0;border-radius:4px;background-color:#fff;cursor:pointer;transition:all .3s ease}.checkbox-input:checked+.checkbox-label{background-color:#ffec48;border-color:#ffec48}.checkbox-input:checked+.checkbox-label:after{content:"✓";color:#333;font-size:16px;font-weight:700}.terms-info-section{flex:1;min-width:0}.terms-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.terms-type{font-size:12px;font-weight:600;padding:4px 8px;border-radius:4px;white-space:nowrap}.terms-type.필수{background-color:#ffe0e5;color:#f64e5b}.terms-type.선택{background-color:#fff8e1;color:#f8b500}.terms-title{font-size:15px;font-weight:500;color:#333}.expand-button{flex-shrink:0;background:none;border:none;font-size:14px;color:#999;cursor:pointer;padding:4px;transition:color .2s ease}.expand-button:hover{color:#333}.terms-content{padding:16px;border-top:1px solid #e0e0e0;background-color:#fafafa;max-height:400px;overflow-y:auto;animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:400px}}.content-text{font-size:13px;line-height:1.8;color:#555;white-space:pre-wrap;word-break:break-word}.terms-page{flex:1;padding:40px 20px;background-color:#f8f9fa}.terms-container{max-width:3000px;margin:0 auto}.terms-header{text-align:center;margin-bottom:40px}.terms-header h1{font-size:32px;font-weight:700;color:#333;margin-bottom:12px}.terms-header p{font-size:16px;color:#666;line-height:1.5}.terms-list{display:flex;flex-direction:column;gap:16px;margin-bottom:30px}.terms-info{text-align:center;margin-bottom:24px;padding:12px;background-color:#f0f0f0;border-radius:8px}.terms-info p{font-size:14px;color:#666;margin:0}.submit-button{width:100%;padding:16px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s ease,opacity .3s ease}.submit-button.enabled:hover{background-color:gold}.submit-button.enabled:active{background-color:#ffb700}.login-page{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;background-color:#fffaf0}.login-container{width:100%;max-width:420px}.login-card{background-color:#fff;border-radius:12px;padding:40px;box-shadow:0 4px 16px #00000014;border:1px solid #e9e9e9}.login-card h1{font-size:32px;font-weight:700;color:#333;margin-bottom:8px;text-align:center}.login-subtitle{text-align:center;color:#666;font-size:14px;margin-bottom:32px}.divider{text-align:center;color:#999;font-size:12px;margin:24px 0;position:relative}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:calc(50% - 16px);height:1px;background-color:#e9e9e9}.divider:before{left:0}.divider:after{right:0}.signup-link{background:none;border:none;color:#666;font-size:14px;cursor:pointer;padding:12px;text-align:center;transition:color .3s ease}.signup-link:hover{color:#333}.signup-link span{color:#ffec48;font-weight:600}.signup-link:hover span{color:gold}@media(max-width:480px){.login-card{padding:32px 24px}.login-card h1{font-size:28px}}.signup-page{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px;background-color:#fffaf0}.signup-container{width:100%;max-width:420px}.signup-card{background-color:#fff;border-radius:12px;padding:40px;box-shadow:0 4px 16px #00000014;border:1px solid #e9e9e9}.signup-card h1{font-size:32px;font-weight:700;color:#333;margin-bottom:8px;text-align:center}.signup-subtitle{text-align:center;color:#666;font-size:14px;margin-bottom:32px}form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#333}.form-group input{padding:12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:#ffec48;box-shadow:0 0 0 3px #ffec481a}.form-group input.error{border-color:#f64e5b}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.error-text{font-size:12px;color:#f64e5b;margin-top:4px}.error-message{padding:12px;background-color:#ffe0e5;color:#f64e5b;border-radius:6px;font-size:13px;line-height:1.5}.submit-button{padding:14px;background-color:#ffec48;color:#333;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:12px}.submit-button:hover:not(:disabled){background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec484d}.submit-button:disabled{opacity:.7;cursor:not-allowed}.divider{text-align:center;color:#999;font-size:12px;margin:24px 0}.login-link{background:none;border:none;color:#666;font-size:14px;cursor:pointer;padding:12px;text-align:center;transition:color .3s ease}.login-link:hover{color:#333}.login-link span{color:#ffec48;font-weight:600}.login-link:hover span{color:gold}.modal-icon{font-size:48px;color:#ffec48;margin-bottom:16px;font-weight:700}.modal-button:hover{background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec484d}@media(max-width:480px){.signup-card{padding:32px 24px}.signup-card h1{font-size:28px}.modal-content{padding:32px 24px}}.survey-page{flex:1;padding:40px 20px;background-color:#fffaf0}.survey-container{max-width:800px;margin:0 auto}.survey-header{text-align:center;margin-bottom:40px}.survey-header h1{font-size:36px;font-weight:700;color:#333;margin-bottom:12px}.survey-subtitle{font-size:16px;color:#666;line-height:1.6;margin-bottom:20px}.survey-form{background-color:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #00000014;margin-bottom:24px}.survey-section{margin-bottom:32px;display:flex;flex-direction:column}.survey-section:last-child{margin-bottom:0}.survey-section label{font-size:15px;font-weight:600;color:#333;margin-bottom:12px;display:flex;align-items:center}.required:after{content:""}.optional{font-size:14px;color:#666}.form-input{padding:12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .3s ease}.form-input:focus{outline:none;border-color:#ffec48;box-shadow:0 0 0 3px #ffec481a}.input-group{position:relative;display:flex;align-items:center}.number-input{padding-right:40px}.input-suffix{position:absolute;right:12px;font-size:14px;color:#999;pointer-events:none}.radio-group{display:flex;flex-direction:column;gap:12px}.radio-item{display:flex;align-items:center;padding:12px;border:1px solid #e9e9e9;border-radius:6px;cursor:pointer;transition:all .3s ease}.radio-item:hover{background-color:#f8f9fa;border-color:#ffec48}.radio-item input[type=radio]{margin-right:12px;cursor:pointer;width:18px;height:18px;accent-color:#ffec48}.radio-item label{margin:0;font-weight:500;cursor:pointer;flex:1}.question-options{display:flex;flex-direction:column;gap:12px}.question-options>label{display:flex;align-items:flex-start;padding:12px;border:1px solid #e9e9e9;border-radius:6px;cursor:pointer;transition:all .3s ease;font-weight:400;margin-bottom:0}.question-options>label:hover{background-color:#f8f9fa;border-color:#ffec48}.question-options>label input[type=radio],.question-options>label input[type=checkbox]{margin-right:12px;margin-top:3px;cursor:pointer;width:18px;height:18px;flex-shrink:0;accent-color:#ffec48}.nested-option{display:flex;flex-direction:column;gap:8px}.nested-option>label{display:flex;align-items:flex-start;padding:12px;border:1px solid #e9e9e9;border-radius:6px;cursor:pointer;transition:all .3s ease;font-weight:400;margin-bottom:0}.nested-option>label:hover{background-color:#f8f9fa;border-color:#ffec48}.nested-option>label input[type=checkbox]{margin-right:12px;margin-top:3px;cursor:pointer;width:18px;height:18px;flex-shrink:0;accent-color:#ffec48}.sub-options{display:flex;flex-direction:column;gap:8px;margin-left:30px;margin-top:8px;padding:12px;background-color:#f8f9fa;border-radius:6px;border-left:3px solid #ffec48}.sub-option-label{display:flex;align-items:center;padding:8px;cursor:pointer;font-weight:400;margin-bottom:0}.sub-option-label input[type=radio]{margin-right:8px;cursor:pointer;width:16px;height:16px;flex-shrink:0;accent-color:#ffec48}.conditional-section{margin-top:16px;padding:16px;background-color:#f8f9fa;border-radius:6px;border-left:4px solid #ffec48}.conditional-section label{margin-bottom:8px;font-size:14px}.submit-button{width:100%;padding:16px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;background-color:#ffec48;color:#333}.submit-button:hover{background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec484d}.submit-button.enabled{background-color:#ffec48;color:#333}.submit-button.enabled:hover{background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec484d}.submit-button.disabled{background-color:#d0d0d0;color:#999;cursor:not-allowed;opacity:.6}.error-message{padding:12px 16px;margin-bottom:16px;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px;text-align:center}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.modal-content{background-color:#fff;border-radius:12px;padding:40px;text-align:center;max-width:400px;box-shadow:0 8px 24px #00000026;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-icon{font-size:48px;margin-bottom:16px}.modal-content h2{font-size:24px;font-weight:700;color:#333;margin-bottom:12px}.modal-content p{font-size:14px;color:#666;margin-bottom:24px;line-height:1.6}.modal-buttons{display:flex;flex-direction:column;gap:12px;width:100%}.modal-button{padding:12px 32px;background-color:#ffec48;color:#333;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.modal-button.primary{background-color:#ffec48;color:#333;font-size:16px;padding:14px 32px}.modal-button.primary:hover{background-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #ffec4866}.modal-button.secondary{background-color:#f5f5f5;color:#666;font-size:14px}.modal-button.secondary:hover{background-color:#e0e0e0;color:#333}.modal-button:hover{transform:translateY(-2px)}@media(max-width:768px){.survey-form{padding:24px}.survey-header h1{font-size:28px}.survey-section{margin-bottom:24px}.radio-group{gap:8px}.modal-content{padding:32px 24px;margin:20px}}.dashboard-page{min-height:calc(100vh - 60px);background:#f0f7f3;padding:0;position:relative;overflow-x:hidden}.dashboard-header{background:linear-gradient(135deg,#5a9068,#60966e);padding:2.5rem 1.5rem;text-align:left;position:relative;overflow:hidden;box-shadow:0 4px 16px #5a906840}.dashboard-header:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.4}.dashboard-header h1{font-size:1.5rem;color:#fff;margin-bottom:.375rem;font-weight:700;letter-spacing:-.5px;position:relative;z-index:1;text-shadow:0 1px 4px rgba(0,0,0,.1)}.dashboard-subtitle{font-size:.875rem;color:#ffffffeb;position:relative;z-index:1;font-weight:500}.dashboard-content{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;max-width:1400px;margin:-2rem auto 0;padding:0 1.5rem 1.5rem;position:relative;z-index:2}.dashboard-left{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.dashboard-left .card{margin-bottom:0}.dashboard-right{display:flex;flex-direction:column}.dashboard-right .card{margin-bottom:0;flex:1}.dashboard-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:1400px;margin:0 auto 1.5rem;padding:0 1.5rem 1.5rem;position:relative;z-index:2}.dashboard-bottom>*{margin-bottom:0;display:flex;flex-direction:column}.dashboard-bottom .card{margin-bottom:0;flex:1;box-sizing:border-box}.card{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;padding:1.25rem;box-shadow:0 4px 12px #0000000a;margin-bottom:1.5rem;border:1px solid #E8F0EC;transition:box-shadow .2s ease;position:relative;overflow:hidden}.card:hover{box-shadow:0 6px 20px #00000012}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.125rem;padding-bottom:.75rem;border-bottom:1px solid #E8F5EC}.card h2{font-size:.9375rem;color:#1f2937;margin:0;font-weight:700;letter-spacing:-.2px}.dash-analysis-btn{display:inline-flex;align-items:center;gap:5px;padding:.5rem 1rem;background:#1a1a1a;color:#fff;font-size:.8125rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0;box-shadow:0 2px 6px #00000014}.dash-analysis-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0003;background:#000}.dash-analysis-btn:disabled{background:linear-gradient(135deg,#cbd5e0,#a0aec0);cursor:not-allowed;opacity:.6;box-shadow:none}.dash-analysis-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:dash-spin .7s linear infinite}@keyframes dash-spin{to{transform:rotate(360deg)}}.weather-card{background:linear-gradient(135deg,#5a9068,#60966e);color:#fff;border:none;box-shadow:0 4px 16px #5a906833}.weather-card h2{color:#fff}.market-selector{padding:.5rem 1rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-weight:600;cursor:pointer;transition:all .25s ease;font-size:.875rem}.market-selector:hover{background:#ffffff40;border-color:#ffffff80}.market-selector option{background:#6fbf8f;color:#fff}.weather-loading{display:flex;align-items:center;justify-content:center;height:80px;color:#6b7280;font-size:14px}.weather-content{display:flex;align-items:center;gap:1.75rem;margin-top:1.5rem}.weather-icon{font-size:4.5rem;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.15))}.weather-details{flex:1}.weather-status{font-size:1.25rem;font-weight:500;margin-bottom:.625rem;text-shadow:0 2px 6px rgba(0,0,0,.12)}.weather-score{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.875rem;font-weight:400}.score-label{opacity:.9}.score-value{font-size:1.125rem;font-weight:600;background:#fff3;padding:.25rem .75rem;border-radius:7px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.weather-recommendation{font-size:.9375rem;font-weight:500;margin-bottom:.5rem;opacity:.95;line-height:1.4}.weather-hint{font-size:.8125rem;opacity:.8;line-height:1.5;font-weight:400}.indices-card{background:#fff}.indices-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.index-item{padding:1rem;background:#fff9c4;border-radius:10px;border:1px solid #FDE68A;color:#1f2937;transition:box-shadow .2s ease;box-shadow:none}.index-item:hover{box-shadow:0 3px 10px #fde68a73}.index-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.625rem}.index-header h3{font-size:.8125rem;font-weight:600;margin:0;color:#6b7280;text-transform:uppercase;letter-spacing:.4px}.index-date{font-size:.6875rem;color:#9ca3af;background:#fffc;padding:2px 7px;border-radius:6px;font-weight:500}.index-value{font-size:1.6rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.5px;color:#1f2937}.index-change{font-size:.8125rem;font-weight:600;color:#6b7280}.trading-trends-card{background:#fff;display:flex;flex-direction:column;justify-content:flex-start}.trading-market-stack{display:flex;flex-direction:column;gap:.625rem}.trading-market-block.with-divider{border-top:2px solid #E8F5EC;padding-top:.5rem}.trading-market-chip{display:inline-block;background:#1a1a1a;color:#fff;padding:3px 10px;border-radius:8px;font-size:.72rem;font-weight:700;margin-bottom:.5rem}.trading-date{font-size:.75rem;color:#64748b;font-weight:500;background:#f0f4f8;padding:3px 8px;border-radius:6px}.trading-market-label{display:inline-block;background:#1a1a1a;color:#fff;padding:5px 14px;border-radius:7px;font-size:.8125rem;font-weight:600;margin:0 0 1.125rem}.investor-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.82rem}.investor-table thead{background:linear-gradient(135deg,#6fbf8f,#4f8f6f)}.investor-table th{padding:.6rem .85rem;text-align:right;font-weight:600;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);font-size:.76rem;text-transform:uppercase;letter-spacing:.3px}.investor-table th:first-child{text-align:left;border-radius:8px 0 0}.investor-table th:last-child{border-radius:0 8px 0 0}.investor-table td{padding:.75rem .85rem;border-bottom:1px solid #f0f4f8;text-align:right;font-weight:500;font-size:.84rem}.investor-table .investor-label{text-align:left;font-weight:600;color:#1f2937;font-size:.84rem}.investor-table tbody tr{transition:all .2s ease}.investor-table tbody tr:last-child td{border-bottom:none}.investor-table tbody tr:hover{background:linear-gradient(90deg,#E8F5EC 0%,transparent 100%)}.positive{color:#f56565;font-weight:600}.negative{color:#4299e1;font-weight:600}.neutral{color:#a0aec0;font-weight:500}.recommendations-card{background:#fff}.stock-recommendations-card{display:flex;flex-direction:column}.stock-recommendations-card .recommendations-list{flex:1}.stock-detail-bottom{display:flex;justify-content:flex-end;margin-top:.75rem}.detail-button{padding:.5rem 1rem;background:transparent;color:#1a1a1a;border:1px solid #1a1a1a;border-radius:7px;cursor:pointer;font-weight:600;font-size:.75rem;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:none}.detail-button:hover{transform:translateY(-1px);background:#1a1a1a;color:#fff;box-shadow:0 2px 6px #0000001f}.recommendations-list,.portfolio-list{display:flex;flex-direction:column;gap:.75rem}.recommendation-item,.portfolio-item{padding:1.25rem;background:#fff;border-radius:12px;border:1px solid #E8F0EC;border-left:3px solid #F0C040;transition:box-shadow .2s ease;box-shadow:0 2px 8px #0000000a;display:flex;flex-direction:column;justify-content:center;min-height:142px}.recommendation-item:hover,.portfolio-item:hover{box-shadow:0 4px 16px #00000012}.recommendation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.recommendation-header h3{font-size:1.1rem;color:#1f2937;font-weight:700;margin:0;letter-spacing:-.3px}.stock-code{font-size:.75rem;color:#718096;font-family:Courier New,monospace;background:#e2e8f0;padding:.25rem .5rem;border-radius:4px;font-weight:600}.recommendation-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.stock-price{font-size:1.5rem;font-weight:800;color:#111827;letter-spacing:-.5px}.change-badge{padding:.3rem .65rem;border-radius:5px;font-size:.82rem;font-weight:600;white-space:nowrap}.change-badge.up{background:linear-gradient(135deg,#fed7d7,#feb2b2);color:#c53030}.change-badge.down{background:linear-gradient(135deg,#bee3f8,#90cdf4);color:#2c5282}.recommendation-type{padding:.25rem .75rem;border-radius:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.recommendation-type.buy{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff;box-shadow:0 3px 10px #f5656540}.recommendation-type.hold{background:linear-gradient(135deg,#ed8936,#dd6b20);color:#fff;box-shadow:0 3px 10px #ed893640}.recommendation-reason{font-size:.875rem;color:#6b7280;line-height:1.5;font-weight:400}.portfolio-item h3{font-size:1rem;color:#1a202c;margin-bottom:.625rem;font-weight:700}.portfolio-info{display:flex;justify-content:space-between;align-items:center}.expected-return{font-weight:700;font-size:1rem;color:#4f8f6f}.risk-level{padding:.3125rem .75rem;border-radius:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.risk-level.low{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 3px 10px #48bb7840}.risk-level.medium{background:linear-gradient(135deg,#ed8936,#dd6b20);color:#fff;box-shadow:0 3px 10px #ed893640}.risk-level.high{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff;box-shadow:0 3px 10px #f5656540}.pf-nav-card{transition:all .25s cubic-bezier(.4,0,.2,1)}.pf-nav-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-3px)}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:#718096}.spinner{width:48px;height:48px;border:4px solid #f0f0f0;border-top-color:#d4a500;border-radius:50%;animation:dash-spin .8s linear infinite;margin-bottom:1.25rem}.error-state{color:#e53e3e}@media(max-width:1024px){.dashboard-content,.dashboard-bottom{grid-template-columns:1fr}.dashboard-header h1{font-size:1.75rem}}@media(max-width:768px){.dashboard-page{padding:0}.dashboard-content{padding:0 1rem 1rem;gap:1.25rem}.card{padding:1.125rem;border-radius:12px}.dashboard-header{padding:1.5rem 1rem}.dashboard-header h1{font-size:1.375rem}.weather-content{flex-direction:column;gap:1.25rem}.weather-icon{font-size:3.5rem}.indices-grid{grid-template-columns:1fr}}.dashboard-page{scroll-behavior:smooth}.dashboard-page::-webkit-scrollbar{width:8px}.dashboard-page::-webkit-scrollbar-track{background:#ffffff1a}.dashboard-page::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.dashboard-page::-webkit-scrollbar-thumb:hover{background:#94a3b8}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:40vh;text-align:center;padding:1.5rem}.loading-spinner{width:48px;height:48px;border:4px solid #E8F5EC;border-top-color:#6fbf8f;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1.25rem}.loading-container p{margin:0;font-size:.875rem;color:#6fbf8f;font-weight:500;letter-spacing:.3px}.app{min-height:100vh;display:flex;flex-direction:column;background-color:#fffaf0}.rec-page{min-height:100vh;background:#f7f8fa;font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif}.rec-editorial-header{background:#fff;border-bottom:1px solid #EBEBEB;padding:60px 20px 48px;text-align:center}.rec-editorial-inner{max-width:680px;margin:0 auto}.rec-premium-badge{display:inline-block;border:1.5px solid #1B4332;color:#1b4332;font-size:.7em;font-weight:700;letter-spacing:1.5px;padding:5px 14px;border-radius:20px;margin-bottom:22px}.rec-main-title{font-size:2.8em;font-weight:800;color:#0d1117;margin:0 0 16px;line-height:1.2;letter-spacing:-.5px}.rec-main-subtitle{font-size:.97em;color:#6b7280;line-height:1.75;margin:0 0 32px}.rec-tabs{display:inline-flex;gap:10px;background:#f3f4f6;border-radius:12px;padding:5px}.rec-tab{padding:9px 22px;border:none;background:transparent;border-radius:8px;font-size:.88em;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s}.rec-tab.active{background:#fff;color:#0d1117;box-shadow:0 1px 4px #0000001a}.rec-cards-section{padding:48px 20px 32px}.rec-cards-inner{max-width:1200px;margin:0 auto}.rec-cards-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:32px}.rec-card{background:#fff;border-radius:16px;padding:28px 26px;border:1px solid #E8EAED;box-shadow:0 2px 8px #0000000d;width:calc(33.333% - 16px);min-width:300px;max-width:380px;display:flex;flex-direction:column;gap:0;transition:box-shadow .2s,transform .2s}.rec-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-3px)}.rec-card-header{margin-bottom:16px}.rec-card-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.rec-card-name{font-size:1.25em;font-weight:800;color:#0d1117;letter-spacing:-.3px}.rec-card-code{font-size:.78em;color:#9ca3af;font-weight:500;margin-right:4px}.rec-card-market{font-size:.82em;color:#9ca3af;font-weight:500}.rec-growth-badge{display:inline-block;font-size:.72em;font-weight:700;padding:4px 10px;border-radius:20px;margin-left:auto;white-space:nowrap}.rec-growth-badge.badge-stable{background:#d1fae5;color:#065f46}.rec-growth-badge.badge-momentum{background:#fef3c7;color:#92400e}.rec-growth-badge.badge-volatile{background:#fee2e2;color:#991b1b}.rec-divider{border:none;border-top:1px solid #F0F0F0;margin:0 0 18px}.rec-score-section{margin-bottom:16px}.rec-score-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rec-score-label{font-size:.78em;color:#6b7280;font-weight:500}.rec-score-num{font-size:1.3em;font-weight:800;color:#0d1117}.rec-score-total{font-size:.6em;font-weight:500;color:#9ca3af}.rec-score-bar-bg{width:100%;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.rec-score-bar-fill{height:100%;background:#ffb84d;border-radius:4px;transition:width .6s ease}.rec-vol-box{display:flex;align-items:center;justify-content:space-between;background:#f9fafb;border:1px solid #EBEBEB;border-radius:8px;padding:10px 14px;margin-bottom:18px}.rec-vol-label{font-size:.8em;color:#6b7280;font-weight:500}.rec-vol-value{font-size:.88em;font-weight:700;color:#0d1117}.rec-vol-trend{margin-left:4px;color:#1b4332}.rec-why{flex:1;margin-bottom:20px}.rec-why-title{font-size:.72em;font-weight:700;color:#9ca3af;letter-spacing:1px;margin-bottom:10px}.rec-why-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.rec-why-list li{display:flex;align-items:flex-start;gap:8px;font-size:.88em;color:#374151;line-height:1.5}.rec-check-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;min-width:18px;border-radius:50%;background:#1b4332;color:#fff;font-size:.7em;font-weight:700}.rec-report-btn{width:100%;padding:14px;background:#ffb84d;color:#1a1a1a;font-size:.9em;font-weight:700;border:none;border-radius:10px;cursor:pointer;transition:background .2s;letter-spacing:.2px}.rec-report-btn:hover{background:#ffa726}.rec-refresh-row{display:flex;justify-content:center;padding:8px 0 16px}.rec-refresh-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 22px;background:#fff;border:1.5px solid #D1D5DB;border-radius:8px;font-size:.85em;font-weight:600;color:#374151;cursor:pointer;transition:border-color .2s,background .2s}.rec-refresh-btn:hover:not(:disabled){border-color:#1b4332;color:#1b4332;background:#f0fdf4}.rec-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.analysis-btn-spinner{display:inline-block;width:11px;height:11px;border:2px solid rgba(0,0,0,.2);border-top-color:#1b4332;border-radius:50%;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.rec-portfolio-section{background:#fff;border-top:1px solid #EBEBEB;padding:48px 20px}.rec-portfolio-inner{max-width:1200px;margin:0 auto}.rec-portfolio-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.rec-portfolio-title{font-size:1.5em;font-weight:800;color:#0d1117;margin:0 0 4px;letter-spacing:-.3px}.rec-portfolio-sub{font-size:.88em;color:#9ca3af;margin:0}.rec-portfolio-card{background:#f9fafb;border:1px solid #E8EAED;border-radius:16px;padding:32px;cursor:pointer;transition:box-shadow .2s}.rec-portfolio-card:hover{box-shadow:0 6px 20px #00000014}.rec-portfolio-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.rec-portfolio-card-name{font-size:1.15em;font-weight:700;color:#0d1117;margin:0}.rec-portfolio-meta{display:flex;gap:20px;font-size:.88em;color:#6b7280}.allocation-bar{display:flex;overflow:hidden;border-radius:8px}.allocation-segment{transition:opacity .2s}.allocation-segment:hover{opacity:.8}.rec-pie-layout{display:flex;align-items:center;gap:32px;margin:20px 0}.rec-pie-svg{width:180px;height:180px;flex-shrink:0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1))}.allocation-list{flex:1;display:flex;flex-direction:column;gap:10px}.allocation-item{display:flex;align-items:center;gap:8px;font-size:.88em}.allocation-color{width:10px;height:10px;border-radius:3px;flex-shrink:0}.allocation-name{flex:1;color:#374151}.allocation-percent{font-weight:600;color:#6b7280}.portfolio-recommendation{margin-top:16px}.recommendation-text{font-size:.9em;color:#4b5563;line-height:1.75;margin:0}.rec-loading-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;gap:14px}.loading-spinner{width:40px;height:40px;border:4px solid #F0F0F0;border-top-color:#1b4332;border-radius:50%;animation:spin .8s linear infinite}.rec-loading-box p{margin:0;font-size:.9em;color:#6b7280;font-weight:500}.rec-error-box{max-width:500px;margin:60px auto;padding:24px 32px;background:#fef2f2;border:1px solid #FCA5A5;border-radius:12px;color:#b91c1c;text-align:center;font-size:1em}@media(max-width:768px){.rec-editorial-header{padding:40px 16px 36px}.rec-main-title{font-size:2em}.rec-cards-section{padding:32px 16px}.rec-cards-grid{flex-direction:column;align-items:center}.rec-card{width:100%;max-width:100%}.rec-portfolio-section{padding:36px 16px}.rec-portfolio-header-row{flex-direction:column}}.stocks-page{min-height:calc(100vh - 64px);background:#f7f8fa}.stocks-editorial-header{background:#fff;border-bottom:1px solid #E5E7EB;padding:56px 60px 48px}.stocks-editorial-inner{max-width:1200px;margin:0 auto}.stocks-live-badge{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#16a34a;text-transform:uppercase;margin-bottom:20px}.stocks-main-title{font-size:1.8rem;font-weight:700;color:#111827;line-height:1.2;margin:0 0 12px;letter-spacing:-.5px}.stocks-title-accent{font-style:italic;color:#16a34a;font-weight:800}.stocks-subtitle{font-size:15px;color:#6b7280;margin:0 0 32px;line-height:1.6}.stocks-search-wrap{position:relative;display:flex;align-items:center;max-width:520px;background:#f9fafb;border:1.5px solid #E5E7EB;border-radius:12px;padding:0 16px;transition:border-color .2s,box-shadow .2s}.stocks-search-wrap:focus-within{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a1a;background:#fff}.stocks-search-icon{color:#9ca3af;flex-shrink:0;margin-right:10px}.stocks-search-input{flex:1;border:none;background:transparent;padding:14px 0;font-size:15px;color:#1f2937;outline:none}.stocks-search-input::placeholder{color:#9ca3af}.stocks-search-clear{border:none;background:#d1d5db;color:#fff;width:20px;height:20px;border-radius:50%;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}.stocks-search-clear:hover{background:#6b7280}.stocks-search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #E5E7EB;border-radius:12px;box-shadow:0 8px 24px #0000001a;max-height:360px;overflow-y:auto;z-index:50}.stocks-search-result{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid #F3F4F6;transition:background .15s}.stocks-search-result:last-child{border-bottom:none}.stocks-search-result:hover{background:#f9fafb}.stocks-result-logo{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.stocks-result-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.stocks-result-name{font-size:14px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stocks-result-code{font-size:12px;color:#9ca3af;font-family:Courier New,monospace}.stocks-result-change{font-size:13px;font-weight:700;flex-shrink:0}.stocks-result-change.positive{color:#16a34a}.stocks-result-change.negative{color:#dc2626}.stocks-no-results{padding:24px;text-align:center;color:#9ca3af;font-size:14px}.stocks-table-section{padding:40px 60px}.stocks-table-inner{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;overflow:hidden}.stocks-table-topbar{display:flex;align-items:center;justify-content:space-between;padding:28px 36px 20px;border-bottom:1px solid #F3F4F6}.stocks-table-title{font-size:20px;font-weight:800;color:#111827;margin:0;letter-spacing:-.5px}.stocks-live-indicator{font-size:12px;font-weight:600;color:#16a34a;letter-spacing:.5px;animation:livePulse 2s infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.5}}.stocks-col-header{display:grid;grid-template-columns:60px 1fr 160px 160px 120px;padding:12px 36px;background:#f9fafb;border-bottom:1px solid #E5E7EB}.stocks-col-header span{font-size:11px;font-weight:700;letter-spacing:1px;color:#9ca3af;text-transform:uppercase}.stocks-col-header .scol-price,.stocks-col-header .scol-change,.stocks-col-header .scol-trend{text-align:right}.stocks-table-body{max-height:calc(100vh - 360px);overflow-y:auto}.stocks-table-body::-webkit-scrollbar{width:5px}.stocks-table-body::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:4px}.stocks-table-row{display:grid;grid-template-columns:60px 1fr 160px 160px 120px;align-items:center;padding:18px 36px;border-bottom:1px solid #F3F4F6;cursor:pointer;transition:background .15s}.stocks-table-row:hover{background:#f9fafb}.stocks-table-row:last-child{border-bottom:none}.stocks-table-row.selected{background:#f0fdf4;border-left:3px solid #16A34A}.scol-rank{font-size:16px;font-weight:700;color:#9ca3af;letter-spacing:.5px}.scol-asset{display:flex;align-items:center;gap:14px;min-width:0}.stocks-logo-circle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex-shrink:0;line-height:1.1;text-align:center}.stocks-asset-info{display:flex;flex-direction:column;gap:3px;min-width:0}.stocks-asset-name{font-size:15px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stocks-asset-code{font-size:12px;color:#9ca3af;font-family:Courier New,monospace}.scol-price{font-size:15px;font-weight:700;color:#111827;text-align:right;letter-spacing:-.3px}.scol-change{font-size:15px;font-weight:700;text-align:right}.scol-change.positive{color:#16a34a}.scol-change.negative{color:#dc2626}.scol-trend{display:flex;justify-content:flex-end;align-items:center}.stocks-skeleton-row{height:76px;background:linear-gradient(90deg,#f9fafb 25%,#e5e7eb,#f9fafb 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;margin:1px 0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stocks-empty-state{padding:60px;text-align:center;color:#9ca3af}.stocks-empty-state p{font-size:15px;margin:0 0 16px}.stocks-retry-btn{padding:10px 24px;background:#16a34a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.stocks-retry-btn:hover{background:#15803d}.stocks-scroll-hint{text-align:center;font-size:12px;color:#9ca3af;padding:16px 0 12px}.stock-detail-page{min-height:100vh;background:linear-gradient(135deg,#fafafa,#f5f5f5);padding:40px 20px}.stock-detail-container{max-width:1200px;margin:0 auto}.back-button{background:#fff;color:#f97316;border:2px solid #F97316;padding:12px 24px;border-radius:30px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:30px;box-shadow:0 2px 8px #f973161a;display:inline-flex;align-items:center;gap:8px}.back-button:before{content:"←";font-size:1.3em;transition:transform .3s ease}.back-button:hover{background:#f97316;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #f973164d}.back-button:hover:before{transform:translate(-4px)}.back-button:active{transform:translateY(0)}.stock-detail-header{background:#fff;border-radius:20px;padding:32px;margin-bottom:30px;box-shadow:0 4px 20px #00000014;border:1px solid #f5f5f5;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;transition:all .3s ease}.stock-detail-header:hover{box-shadow:0 6px 30px #0000001f}.header-left{flex:1}.header-right{text-align:right}.stock-title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.stock-detail-name{font-size:2.3em;font-weight:700;color:#2c3e50;margin:0}.market-badge{display:inline-block;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:6px 14px;border-radius:20px;font-size:.6em;font-weight:600;letter-spacing:.5px}.stock-detail-code{font-size:1.2em;color:#7f8c8d;margin:0;font-family:Courier New,monospace}.current-price-large{font-size:2.6em;font-weight:700;color:#2c3e50;margin-bottom:8px}.price-change-large{font-size:1.6em;font-weight:700;display:flex;gap:12px;justify-content:flex-end}.price-change-large.positive{color:#f97316}.price-change-large.negative{color:#3b82f6}.price-change-large .percent{font-size:1em}.stock-detail-content{display:flex;flex-direction:column;gap:30px}.section-heading{font-size:1.5em;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:14px;border-bottom:2px solid #fff3e0;letter-spacing:-.3px}.chart-section{background:#fff;border-radius:20px;padding:32px;box-shadow:0 2px 12px #0000000f;border:1px solid #f5f5f5;transition:all .3s ease}.chart-section:hover{box-shadow:0 6px 24px #0000001a;transform:translateY(-2px)}.chart-container{background:#fafafa;border-radius:14px;padding:24px;position:relative;border:1px solid #f0f0f0}.chart-labels{margin-top:15px}.chart-date-labels{display:flex;justify-content:space-between;color:#7f8c8d;font-size:1em;margin-bottom:10px}.chart-price-labels{display:flex;justify-content:space-between;font-size:1.05em}.max-price{color:#f97316;font-weight:600}.min-price{color:#3b82f6;font-weight:600}.investment-fit-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.investment-fit-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.fit-container{display:flex;gap:30px;align-items:flex-start}.fit-details{flex:1}.fit-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.fit-metric-chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:.92em;font-weight:700;letter-spacing:-.2px}.fit-metric-chip.up{background:#ea580c14;color:#ea580c}.fit-metric-chip.down{background:#3b82f614;color:#3b82f6}.fit-metric-chip.neutral{background:#f3f4f6;color:#555}.fit-summary{font-size:1.05em;color:#444;margin:0 0 16px;font-weight:600;line-height:1.7}.fit-list{list-style:none;padding:0;margin:0}.fit-list li{padding:10px 0;color:#555;line-height:1.7;font-size:1.05em;border-bottom:1px solid #f0f0f0}.fit-list li:last-child{border-bottom:none}.fit-caution{color:#b45309}.fit-list-extra{display:flex;flex-direction:column;gap:4px;color:#555}.fit-list-tag{font-size:.88em;font-weight:700;color:#f97316;letter-spacing:.2px}.company-info-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.company-info-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.company-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.info-item{background:#fafafa;border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:8px;transition:all .3s ease;align-items:center;text-align:center}.info-item:hover{background:#fff8f0;transform:translateY(-2px)}.info-label{font-size:1.2em;color:#f97316;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1.25em;color:#333;font-weight:600}.industry-analysis-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.industry-analysis-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.analysis-list{list-style:none;padding:0;margin:0}.analysis-list li{padding:12px 16px 12px 42px;margin-bottom:10px;background:#fafafa;border-radius:10px;color:#444;font-size:1.05em;line-height:1.7;position:relative;transition:all .3s ease}.analysis-list li:hover{background:#fff8f0;transform:translate(4px)}.analysis-list li:before{content:"●";position:absolute;left:16px;color:#f97316;font-size:.9em;top:50%;transform:translateY(-50%)}.unstructured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.unstructured-card{background:#fafafa;border-radius:12px;padding:20px;border:1px solid #f0f0f0}.unstructured-card-title{font-size:1em;font-weight:700;color:#444;margin:0 0 12px}.unstructured-item{margin-bottom:10px}.unstr-label{display:inline-block;font-size:.88em;font-weight:600;padding:2px 8px;border-radius:4px;margin-bottom:4px}.unstr-risk{background:#fee2e2;color:#b91c1c}.unstr-opp{background:#dcfce7;color:#15803d}.unstructured-card p{margin:0;font-size:1em;color:#555;line-height:1.7}.reports-ai-summary{font-size:1em;color:#555;line-height:1.7;margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.reports-list{display:flex;flex-direction:column;gap:12px}.report-item{padding:12px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.report-item-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.report-brokerage{font-size:.85rem;font-weight:600;color:#f97316}.report-date{font-size:.82rem;color:#9ca3af}.report-pdf-btn{font-size:.82rem;font-weight:600;color:#f97316;text-decoration:none;padding:2px 8px;border:1px solid #F97316;border-radius:4px;transition:background .15s,color .15s}.report-pdf-btn:hover{background:#f97316;color:#fff}.report-title{font-size:1em;font-weight:600;color:#444;margin:0 0 6px}.report-content{font-size:.98em;color:#666;line-height:1.7;margin:0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.comprehensive-analysis-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.comprehensive-analysis-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.radar-chart-container{position:relative;width:100%;max-width:500px;margin:0 auto;padding:20px}.radar-chart{display:block;width:100%;height:auto}.radar-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.radar-label{position:absolute;transform:translate(-50%,-50%);background:#fff;padding:8px 14px;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:all;cursor:help;transition:all .3s ease}.radar-label:hover{transform:translate(-50%,-50%) scale(1.1);box-shadow:0 4px 16px #00000026;z-index:10}.label-text{font-size:.95em;color:#555;font-weight:600}.label-value{font-size:1.5em;color:#f97316;font-weight:700}.tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;background:#2c3e50;color:#fff;padding:10px 14px;border-radius:6px;font-size:.9em;white-space:nowrap;box-shadow:0 4px 12px #0003;z-index:100}.tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#2c3e50}.recommendation-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.recommendation-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.recommendation-box{background:linear-gradient(135deg,#fff4e6,#ffedd5);border-left:4px solid #F97316;border-radius:8px;padding:20px}.recommendation-detail{color:#444;line-height:1.7;font-size:1.05em;margin:0}.loading,.error-message{text-align:center;color:#333;font-size:1.6em;padding:60px 20px}.error-message{background:#e74c3c1a;border:2px solid #e74c3c;border-radius:12px;max-width:600px;margin:40px auto 20px;color:#e74c3c}@media(max-width:1024px){.stock-detail-container{max-width:100%}}@media(max-width:768px){.stock-detail-page{padding:20px 10px}.stock-detail-header{flex-direction:column;align-items:flex-start}.header-right{text-align:left;width:100%}.price-change-large{justify-content:flex-start}.stock-title-row{flex-wrap:wrap}.stock-detail-name{font-size:1.9em}.current-price-large{font-size:2.1em}.section-heading{font-size:1.5em}.fit-container{flex-direction:column}.fit-score-box{width:100%}.company-info-grid{grid-template-columns:1fr}.radar-chart-container{max-width:100%}.radar-label{font-size:.95em}.label-value{font-size:1.2em}}@media(max-width:480px){.stock-detail-name{font-size:1.6em}.market-badge{font-size:.7em;padding:4px 10px}.current-price-large{font-size:1.9em}.price-change-large{font-size:1.3em}.section-heading{font-size:1.5em}.fit-score{font-size:3.1em}}.sd-back-btn{background:#fff;color:#333;border:2px solid #F97316;padding:10px 20px;border-radius:25px;font-size:1.1em;cursor:pointer;transition:all .3s ease;margin-bottom:30px}.sd-header-left{flex:1;display:flex;flex-direction:column;gap:8px}.sd-rank-badge{display:inline-block;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:6px 16px;border-radius:24px;font-size:1.05em;font-weight:700;width:fit-content;box-shadow:0 3px 12px #f9731666;letter-spacing:.3px}.sd-ticker{font-size:1.2em;color:#7f8c8d;font-family:Courier New,monospace;font-weight:600;letter-spacing:.5px}.sd-market-badge{display:inline-block;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:5px 14px;border-radius:18px;font-size:.95em;font-weight:600;width:fit-content;box-shadow:0 2px 8px #f973164d}.sd-risk-tier{display:inline-block;background:#fff3e0;color:#ea580c;border:2px solid #FDBA74;padding:5px 14px;border-radius:16px;font-size:.95em;font-weight:700;width:fit-content;letter-spacing:.2px}.sd-score-box{text-align:right;min-width:140px}.sd-score-label{font-size:.95em;color:#7f8c8d;margin-bottom:4px}.sd-score-large{font-size:2.1em;font-weight:700;color:#ea580c;line-height:1.2}.sd-score-bar-bg{width:100%;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden;margin-top:8px}.sd-score-bar-fill{height:100%;background:linear-gradient(90deg,#f97316,#ea580c);border-radius:4px}.sd-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.sd-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.sd-section-heading{font-size:1.5em;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:14px;border-bottom:2px solid #fff3e0;letter-spacing:-.3px;display:flex;align-items:center;gap:10px}.sd-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.sd-feature-card{background:linear-gradient(135deg,#fffaf5,#fff8f0);border:1px solid #FDBA74;border-radius:14px;padding:18px 16px;text-align:center;cursor:default;transition:all .25s ease;position:relative;overflow:hidden}.sd-feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f97316,#ea580c);transform:scaleX(0);transition:transform .3s ease}.sd-feature-card:hover{box-shadow:0 6px 20px #f9731640;transform:translateY(-4px);border-color:#f97316}.sd-feature-card:hover:before{transform:scaleX(1)}.sd-feature-label{font-size:.9em;color:#7f8c8d;margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sd-feature-value{font-size:1.35em;font-weight:700;letter-spacing:-.3px}.sd-explanation-box{background:linear-gradient(135deg,#fffaf5,#fff8f0);border-left:5px solid #F97316;border-radius:0 16px 16px 0;padding:20px 24px;line-height:1.8;color:#2c3e50;font-size:1.1em;box-shadow:0 2px 12px #f9731614}.sd-reasons-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.sd-reasons-list li{background:linear-gradient(135deg,#fff7ed,#fff5ea);border-left:4px solid #F97316;padding:14px 18px;border-radius:0 12px 12px 0;font-size:1.08em;color:#333;line-height:1.7;box-shadow:0 2px 8px #f973160f;transition:all .25s ease;position:relative}.sd-reasons-list li:hover{transform:translate(4px);box-shadow:0 4px 16px #f9731626;border-left-width:6px}.sd-reasons-list li:before{content:"✓";position:absolute;left:-2px;top:50%;transform:translateY(-50%);width:20px;height:20px;background:#f97316;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.sd-notice-section{background:#fafafa;border:1px solid #eee}.sd-notice-list{margin:0;padding-left:22px;list-style:disc}.sd-notice-list li{font-size:.98em;color:#7f8c8d;line-height:1.6;margin-bottom:6px}.sd-error-box{background:#fff;border-radius:16px;padding:40px;text-align:center;box-shadow:0 4px 12px #00000014;max-width:500px;margin:60px auto}.sd-error-box p{color:#7f8c8d;margin-bottom:20px}.sd-back-btn{background:#fff;color:#333;border:2px solid #F97316;padding:8px 18px;border-radius:25px;font-size:1em;cursor:pointer;transition:all .2s ease;margin-bottom:24px;display:inline-block}.sd-back-btn:hover{background:#f97316;color:#fff}.sd-debug-btn{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;padding:6px 12px;border-radius:6px;font-size:.95em;cursor:pointer;transition:all .2s ease}.sd-debug-btn:hover{background:#e5e7eb;border-color:#9ca3af}.sd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:20px}.sd-loading p{font-size:17px;color:#888;margin:0}.sd-spinner{width:44px;height:44px;border:4px solid #e8e8e8;border-top-color:#4f8ef7;border-radius:50%;animation:sd-spin .8s linear infinite}@keyframes sd-spin{to{transform:rotate(360deg)}}.sd-price-box{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.sd-current-price{font-size:36px;font-weight:800;color:#1a1a1a;display:flex;align-items:center;gap:12px;letter-spacing:-.5px}.sd-realtime-badge{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:#ea580c;background:#ea580c1a;padding:5px 12px;border-radius:20px;letter-spacing:.3px;text-transform:uppercase;animation:pulse 2s ease-in-out infinite}.sd-realtime-badge:before{content:"●";font-size:10px;animation:blink 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.sd-change-badge{font-size:19px;font-weight:700;padding:6px 14px;border-radius:16px;letter-spacing:-.2px}.sd-price-date{font-size:14px;color:#999;margin-top:4px;font-weight:500}.sd-sector-badge{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed;border-radius:18px;padding:5px 14px;font-size:15px;font-weight:700;letter-spacing:.3px;box-shadow:0 2px 8px #7c3aed26}.sd-score-row-outer{display:flex;align-items:center;gap:16px;background:#fff;border-radius:16px;padding:18px 24px;margin-bottom:20px;box-shadow:0 3px 12px #00000014;border:1px solid #f5f5f5;transition:all .3s ease}.sd-score-row-outer:hover{box-shadow:0 6px 20px #0000001f;transform:translateY(-2px)}.sd-score-label{font-size:16px;color:#555;white-space:nowrap;font-weight:700;letter-spacing:.2px}.sd-score-bar-bg{flex:1;height:12px;background:#f0f0f0;border-radius:8px;overflow:hidden;position:relative}.sd-score-bar-bg:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.sd-score-bar-fill{height:100%;background:linear-gradient(90deg,#f97316,#fb923c,#f97316);background-size:200% 100%;border-radius:8px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #f9731666;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.sd-score-value{font-size:18px;font-weight:800;color:#f97316;white-space:nowrap;letter-spacing:-.3px}.sd-chart-wrap{display:flex;gap:8px;align-items:stretch;overflow:hidden}.sd-chart-yaxis{display:flex;flex-direction:column;justify-content:space-between;font-size:13px;color:#aaa;text-align:right;padding:4px 0;min-width:60px}.sd-table-wrap{overflow-x:auto}.sd-price-table{width:100%;border-collapse:collapse;font-size:15px}.sd-price-table th{padding:8px 12px;background:#fafafa;border-bottom:2px solid #eee;font-weight:600;color:#555;text-align:left}.sd-price-table td{padding:8px 12px;border-bottom:1px solid #f3f3f3}.sd-price-table tbody tr:hover{background:#fffaf0}.sd-reasons-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.sd-reasons-list li{background:#fff7ed;border-left:3px solid #F97316;padding:10px 14px;border-radius:0 8px 8px 0;font-size:16px;color:#444}@media(max-width:768px){.sd-features-grid{grid-template-columns:repeat(2,1fr)}.sd-price-box{align-items:flex-start}.stock-detail-header{flex-direction:column;gap:16px}.sd-current-price{font-size:24px}}.sd-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:2px solid #fff3e0}.sd-chart-tabs{display:flex;gap:6px}.sd-chart-tab{background:#f3f4f6;color:#555;border:none;padding:5px 12px;border-radius:20px;font-size:.88em;font-weight:600;cursor:pointer;transition:all .2s ease}.sd-chart-tab:hover{background:#fff3e0;color:#ea580c}.sd-chart-tab.active{background:#ea580c;color:#fff;box-shadow:0 2px 8px #ea580c4d}.sd-candle-wrap{width:100%;background:#fff;padding:20px;border-radius:12px}.sd-candle-tooltip{position:absolute;top:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 14px;box-shadow:0 4px 16px #0000001a;font-size:14px;min-width:140px;z-index:10;pointer-events:none;transform:translate(-50%)}.sd-candle-tooltip-date{font-weight:700;color:#555;margin-bottom:6px;font-size:13px}.sd-candle-tooltip-row{display:flex;justify-content:space-between;gap:16px;padding:2px 0;color:#333;font-weight:500}.sd-candle-tooltip-row .up{color:#ea580c;font-weight:700}.sd-candle-tooltip-row .down{color:#3b82f6;font-weight:700}.sd-candle-minmax{display:flex;justify-content:space-between;margin-top:10px;font-size:15px;font-weight:600;padding-top:10px;border-top:1px solid #f0f0f0}.sd-candle-high{color:#ea580c;display:flex;align-items:center;gap:6px}.sd-candle-high:before{content:"⬆";font-size:1em}.sd-candle-low{color:#3b82f6;display:flex;align-items:center;gap:6px}.sd-candle-low:before{content:"⬇";font-size:1em}.sd-radar-wrap{position:relative;width:100%;max-width:360px;margin:0 auto;overflow:visible}.sd-radar-label{position:absolute;transform:translate(-50%,-50%);background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:6px 12px;display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:auto;cursor:default;z-index:1;white-space:nowrap}.sd-radar-label-name{font-size:13px;color:#666;font-weight:600}.sd-radar-label-score{font-size:17px;color:#f97316;font-weight:700}.sd-radar-tooltip{display:none;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);width:230px;white-space:normal;background:#1f2937;color:#f9fafb;border-radius:10px;padding:12px 14px;box-shadow:0 6px 20px #00000038;z-index:100;text-align:left;pointer-events:none;word-break:keep-all}.sd-radar-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.sd-radar-tooltip-desc{font-size:11.5px;color:#d1d5db;margin:0 0 8px;line-height:1.5}.sd-radar-tooltip-items{margin:0;padding:0 0 0 14px;list-style:disc;display:flex;flex-direction:column;gap:4px}.sd-radar-tooltip-items li{font-size:11px;color:#e5e7eb;line-height:1.45}.sd-radar-label:hover{z-index:200;box-shadow:0 4px 16px #f973162e}.sd-radar-label:hover .sd-radar-tooltip{display:block}.sd-radar-label:hover .sd-radar-label-name{color:#ea580c}.sd-skeleton{display:flex;flex-direction:column;gap:10px}.sd-skeleton-row{height:14px;border-radius:7px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:400% 100%;animation:sdShimmer 1.4s infinite}@keyframes sdShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sd-spinner-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;padding:28px 0 20px}.sd-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top-color:#f97316;border-radius:50%;animation:sdSpinRotate .9s linear infinite}@keyframes sdSpinRotate{to{transform:rotate(360deg)}}.sd-spinner-text{font-size:16px;color:#6b7280;text-align:center;margin:0}.sd-analysis-pending{color:#aaa;font-size:15px;font-style:italic;margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sd-retry-btn{font-size:14px;font-style:normal;padding:4px 10px;border:1px solid #d1d5db;border-radius:6px;background:#f9fafb;color:#374151;cursor:pointer;transition:background .15s}.sd-retry-btn:hover{background:#e5e7eb}.sd-intraday-wrap{width:100%;background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.sd-intraday-wrap:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.sd-intraday-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f5f5f5}.sd-intraday-title{font-size:1.2em;font-weight:700;color:#1a1a1a;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.sd-intraday-title:before{content:"📈";font-size:1.3em}.sd-intraday-change{font-size:.95em;font-weight:700;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;letter-spacing:-.2px}.sd-intraday-change.up{color:#ea580c;background:#ea580c14}.sd-intraday-change.down{color:#3b82f6;background:#3b82f614}.sd-intraday-change .percent{font-size:1em;font-weight:600}.sd-intraday-empty{padding:40px;text-align:center;color:#999;font-size:1.05em}@media(max-width:768px){.sd-intraday-wrap{padding:18px;border-radius:12px}.sd-intraday-header{flex-direction:column;align-items:flex-start;gap:10px}.sd-intraday-title{font-size:1.1em}.sd-intraday-change{font-size:1.05em;padding:5px 12px}}.investor-flow-wrap{display:flex;flex-direction:column;gap:20px}.investor-flow-tables{display:grid;grid-template-columns:1fr 1fr;gap:16px}.investor-flow-table{background:#fafafa;border:1px solid #ebebeb;border-radius:12px;padding:16px}.investor-flow-market-label{font-size:16px;font-weight:700;color:#333;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #f0f0f0;letter-spacing:.5px}.investor-flow-tbl{width:100%;border-collapse:collapse;font-size:15px}.investor-flow-tbl th{text-align:center;padding:6px 8px;color:#888;font-weight:600;font-size:14px;border-bottom:1px solid #ebebeb}.investor-flow-tbl th:first-child{text-align:left}.investor-flow-tbl td{padding:7px 8px;text-align:center;border-bottom:1px solid #f5f5f5;font-size:15px;font-variant-numeric:tabular-nums}.investor-flow-tbl tr:last-child td{border-bottom:none}.investor-flow-name{text-align:left!important;font-weight:600;color:#444}.investor-flow-sell{color:#3b82f6}.investor-flow-buy{color:#ea580c}.investor-flow-date{margin-top:10px;font-size:13px;color:#bbb;text-align:right}.investor-flow-err{font-size:14px;color:#aaa;padding:12px 0;text-align:center}.investor-flow-thermometer{background:#fff;border:1px solid #ebebeb;border-radius:12px;padding:18px 20px}.investor-flow-thermo-title{font-size:16px;font-weight:700;color:#333;margin-bottom:14px}.investor-flow-bar-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.investor-flow-bar-label{width:44px;font-size:15px;font-weight:600;color:#555;flex-shrink:0}.investor-flow-bar-track{flex:1;height:14px;background:#f3f4f6;border-radius:7px;position:relative;overflow:hidden}.investor-flow-bar-fill{position:absolute;top:0;height:100%;border-radius:7px;transition:width .4s ease;min-width:3px}.investor-flow-bar-center{position:absolute;left:50%;top:0;width:2px;height:100%;background:#d1d5db;transform:translate(-50%)}.investor-flow-bar-value{width:72px;font-size:15px;font-weight:700;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.investor-flow-thermo-hint{font-size:13px;color:#ccc;margin-top:6px;text-align:right}@media(max-width:640px){.investor-flow-tables{grid-template-columns:1fr}}.term-tooltip-wrap{position:relative;display:inline}.term-highlight{color:#ea580c;font-weight:600;border-bottom:1.5px dashed #F97316;cursor:help;transition:color .15s ease}.term-highlight:hover{color:#c2410c}.term-bubble{position:absolute;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:4px;min-width:220px;max-width:300px;padding:10px 14px;border-radius:12px;background:#1e1e2e;color:#f0f0f5;box-shadow:0 8px 24px #00000038;font-size:.78rem;line-height:1.5;pointer-events:none;white-space:normal;word-break:keep-all}.bubble-top{bottom:calc(100% + 10px)}.bubble-top:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:#1e1e2e}.bubble-bottom{top:calc(100% + 10px)}.bubble-bottom:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-bottom-color:#1e1e2e}.term-bubble-term{font-size:.82rem;font-weight:700;color:#f97316;letter-spacing:.02em}.term-bubble-def{color:#d1d5db;font-size:.76rem;line-height:1.55}@media(max-width:480px){.term-bubble{min-width:180px;max-width:240px;font-size:.73rem}}.apb-container{padding:4px 0 8px}.apb-bar-wrap{width:100%;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.apb-bar{height:100%;background:linear-gradient(90deg,#f97316,#fb923c);border-radius:4px;transition:width .55s cubic-bezier(.4,0,.2,1)}.apb-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:13px;color:#6b7280}.apb-label{font-weight:500;color:#374151}.apb-percent{font-weight:700;color:#f97316;font-size:14px}.apb-steps{display:flex;flex-direction:column;gap:8px;margin-top:14px}.apb-step{display:flex;align-items:center;gap:10px;font-size:12px;color:#d1d5db;transition:color .4s ease}.apb-step.active{color:#f97316}.apb-step.done{color:#10b981}.apb-step-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0;transition:background .4s ease}.apb-step.active .apb-step-dot{animation:apb-pulse 1.2s ease-in-out infinite}.apb-step-text{font-weight:500}@keyframes apb-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.etf-detail-page{min-height:100vh;background:linear-gradient(135deg,#fafafa,#f5f5f5);padding:40px 20px}.etf-detail-container{max-width:1200px;margin:0 auto}.etf-back-btn{background:#fff;color:#333;border:2px solid #F97316;padding:8px 18px;border-radius:25px;font-size:1em;cursor:pointer;transition:all .2s ease;margin-bottom:24px;display:inline-block}.etf-back-btn:hover{background:#f97316;color:#fff}.etf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:20px}.etf-loading p{font-size:17px;color:#888;margin:0}.etf-error-box{background:#fff;border-radius:16px;padding:40px;text-align:center;box-shadow:0 4px 12px #00000014;max-width:500px;margin:60px auto}.etf-error-box p{color:#7f8c8d;margin-bottom:20px}.etf-detail-header{background:#fff;border-radius:20px;padding:32px;margin-bottom:30px;box-shadow:0 4px 20px #00000014;border:1px solid #f5f5f5;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;transition:all .3s ease}.etf-detail-header:hover{box-shadow:0 6px 30px #0000001f}.etf-header-left{flex:1;min-width:200px;display:flex;flex-direction:column;gap:8px}.etf-rank-badge{display:inline-block;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:6px 16px;border-radius:24px;font-size:1.05em;font-weight:700;width:fit-content;box-shadow:0 3px 12px #f9731666;letter-spacing:.3px}.etf-detail-name{font-size:2.3em;font-weight:700;color:#2c3e50;margin:0}.etf-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.etf-ticker{font-size:1.2em;color:#7f8c8d;font-family:Courier New,monospace;font-weight:600;letter-spacing:.5px}.etf-market-badge{display:inline-block;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:5px 14px;border-radius:18px;font-size:.95em;font-weight:600;width:fit-content;box-shadow:0 2px 8px #f973164d}.etf-type-badge{display:inline-block;background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#15803d;padding:5px 14px;border-radius:18px;font-size:.95em;font-weight:700;width:fit-content;box-shadow:0 2px 8px #15803d26}.etf-sector-badge{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed;border-radius:18px;padding:5px 14px;font-size:15px;font-weight:700;letter-spacing:.3px;box-shadow:0 2px 8px #7c3aed26}.etf-risk-tier{display:inline-block;background:#fff3e0;color:#ea580c;border:2px solid #FDBA74;padding:5px 14px;border-radius:16px;font-size:.95em;font-weight:700;width:fit-content;letter-spacing:.2px}.etf-price-box{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.etf-current-price{font-size:36px;font-weight:800;color:#1a1a1a;display:flex;align-items:center;gap:12px;letter-spacing:-.5px}.etf-realtime-badge{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:#ea580c;background:#ea580c1a;padding:5px 12px;border-radius:20px;letter-spacing:.3px;text-transform:uppercase;animation:etfPulse 2s ease-in-out infinite}@keyframes etfPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.etf-change-badge{font-size:19px;font-weight:700;padding:6px 14px;border-radius:16px;letter-spacing:-.2px}.etf-price-date{font-size:14px;color:#999;margin-top:4px;font-weight:500}.etf-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.etf-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.etf-section-heading{font-size:1.5em;font-weight:700;color:#1a1a1a;margin:0 0 20px;padding-bottom:14px;border-bottom:2px solid #fff3e0;letter-spacing:-.3px;display:flex;align-items:center;gap:10px}.etf-fit-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.etf-fit-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.etf-fit-container{display:flex;gap:30px;align-items:flex-start}.etf-fit-details{flex:1}.etf-fit-summary{font-size:1.05em;color:#444;margin:0 0 16px;font-weight:600;line-height:1.7}.etf-fit-list{list-style:none;padding:0;margin:0}.etf-fit-list li{padding:10px 0;color:#555;line-height:1.7;font-size:1.05em;border-bottom:1px solid #f0f0f0}.etf-fit-list li:last-child{border-bottom:none}.etf-info-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.etf-info-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.etf-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.etf-info-item{background:#fafafa;border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:8px;transition:all .3s ease;align-items:center;text-align:center}.etf-info-item:hover{background:#fff8f0;transform:translateY(-2px)}.etf-info-label{font-size:1.2em;color:#f97316;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.etf-info-value{font-size:1.25em;color:#333;font-weight:600}.etf-analysis-section{background:#fff;border-radius:16px;padding:28px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;transition:all .3s ease}.etf-analysis-section:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.etf-analysis-list{list-style:none;padding:0;margin:0}.etf-analysis-list li{padding:12px 16px 12px 42px;margin-bottom:10px;background:#fafafa;border-radius:10px;color:#444;font-size:1.05em;line-height:1.7;position:relative;transition:all .3s ease}.etf-analysis-list li:hover{background:#fff8f0;transform:translate(4px)}.etf-analysis-list li:before{content:"●";position:absolute;left:16px;color:#f97316;font-size:.9em;top:50%;transform:translateY(-50%)}.etf-analysis-pending{color:#9ca3af;font-size:.9em;display:flex;align-items:center;gap:12px}.etf-retry-btn{background:none;border:1px solid #F97316;color:#f97316;padding:4px 12px;border-radius:6px;font-size:.85em;cursor:pointer;transition:all .2s}.etf-retry-btn:hover{background:#f97316;color:#fff}.etf-holdings-table-wrap{overflow-x:auto}.etf-holdings-table{width:100%;border-collapse:collapse;font-size:15px}.etf-holdings-table th{padding:8px 12px;background:#fafafa;border-bottom:2px solid #eee;font-weight:600;color:#555;text-align:left;white-space:nowrap}.etf-holdings-table td{padding:8px 12px;border-bottom:1px solid #f3f3f3;color:#374151;vertical-align:middle}.etf-holdings-table tbody tr:hover{background:#fffaf0}.etf-holdings-rank{font-weight:700;color:#9ca3af;font-size:.9em;width:48px}.etf-holdings-type{color:#6b7280;font-size:.9em;width:60px}.etf-holdings-name{font-weight:600;color:#1a1a1a}.etf-holdings-weight{font-weight:600;color:#ea580c;text-align:left;white-space:nowrap;width:80px}.etf-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.etf-feature-card{background:linear-gradient(135deg,#fffaf5,#fff8f0);border:1px solid #FDBA74;border-radius:14px;padding:18px 16px;text-align:center;cursor:default;transition:all .25s ease;position:relative;overflow:hidden}.etf-feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f97316,#ea580c);transform:scaleX(0);transition:transform .3s ease}.etf-feature-card:hover{box-shadow:0 6px 20px #f9731640;transform:translateY(-4px);border-color:#f97316}.etf-feature-card:hover:before{transform:scaleX(1)}.etf-feature-label{font-size:.9em;color:#7f8c8d;margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.etf-feature-value{font-size:1.35em;font-weight:700;letter-spacing:-.3px}.etf-rec-box{background:linear-gradient(135deg,#fff4e6,#ffedd5);border-left:4px solid #F97316;border-radius:8px;padding:20px}.etf-rec-detail{color:#444;line-height:1.7;font-size:1.05em;margin:0}.etf-notice-section{background:#fafafa;border:1px solid #eee}.etf-notice-list{margin:0;padding-left:22px;list-style:disc}.etf-notice-list li{font-size:.98em;color:#7f8c8d;line-height:1.6;margin-bottom:6px}.etf-skeleton{display:flex;flex-direction:column;gap:10px}.etf-skeleton-row{height:14px;border-radius:7px;background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:400% 100%;animation:etfShimmer 1.4s infinite}@keyframes etfShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.etf-candle-wrap{width:100%;background:#fff;padding:20px;border-radius:12px}.etf-candle-minmax{display:flex;justify-content:space-between;margin-top:10px;font-size:15px;font-weight:600;padding-top:10px;border-top:1px solid #f0f0f0}.etf-candle-high{color:#ea580c;display:flex;align-items:center;gap:6px}.etf-candle-high:before{content:"⬆"}.etf-candle-low{color:#3b82f6;display:flex;align-items:center;gap:6px}.etf-candle-low:before{content:"⬇"}.etf-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:2px solid #fff3e0}.etf-chart-tabs{display:flex;gap:6px}.etf-chart-tab{background:#f3f4f6;color:#555;border:none;padding:5px 12px;border-radius:20px;font-size:.88em;font-weight:600;cursor:pointer;transition:all .2s ease}.etf-chart-tab:hover{background:#fff3e0;color:#ea580c}.etf-chart-tab.active{background:#ea580c;color:#fff;box-shadow:0 2px 8px #ea580c4d}.etf-candle-tooltip{position:absolute;top:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 14px;box-shadow:0 4px 16px #0000001a;font-size:14px;min-width:140px;z-index:10;pointer-events:none;transform:translate(-50%)}.etf-candle-tooltip-date{font-weight:700;color:#555;margin-bottom:6px;font-size:13px}.etf-candle-tooltip-row{display:flex;justify-content:space-between;gap:16px;padding:2px 0;color:#333;font-weight:500}.etf-candle-tooltip-row .up{color:#ea580c;font-weight:700}.etf-candle-tooltip-row .down{color:#3b82f6;font-weight:700}@media(max-width:768px){.etf-detail-page{padding:20px 10px}.etf-detail-header{flex-direction:column;gap:16px}.etf-price-box{align-items:flex-start}.etf-current-price{font-size:24px}.etf-detail-name{font-size:1.9em}.etf-info-grid{grid-template-columns:1fr}.etf-features-grid{grid-template-columns:repeat(2,1fr)}.etf-section,.etf-fit-section{padding:20px 16px}.etf-fit-container{flex-direction:column}.etf-section-heading{font-size:1.5em}}@media(max-width:480px){.etf-detail-name{font-size:1.6em}.etf-current-price{font-size:20px}}.pd-reason-list{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:8px}.pd-reason-item{font-size:1.06em;color:#374151;line-height:1.85;background:#fafafa;border-radius:10px;transition:all .3s ease;padding:12px 16px 12px 36px;position:relative}.pd-reason-item:before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:#f97316;flex-shrink:0}.pd-reason-item:hover{background:#fff8f0;transform:translateY(-2px)}.pd-reason-item strong{color:#1e293b;font-weight:700}.portfolio-detail-page{min-height:100vh;background:#f5f6fa;padding:32px 40px}.portfolio-detail-container{max-width:1200px;margin:0 auto;width:100%}.pd-back-btn{background:#fff;color:#333;border:2px solid #F97316;padding:10px 20px;border-radius:25px;font-size:1em;cursor:pointer;transition:all .3s ease;margin-bottom:30px;display:inline-block}.pd-back-btn:hover{background:#f97316;color:#fff}.pd-main-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000012;overflow:hidden}.pd-divider{border:none;border-top:1px solid #f0f0f0;margin:0}.pd-section-row{padding:20px 40px;page-break-inside:avoid;break-inside:avoid}.pdf-page-break{page-break-before:always;break-before:page}.pd-section-label{font-size:1.5em;font-weight:700;color:#334155;margin-bottom:12px;display:flex;align-items:center;gap:6px}.pd-header-row .pd-section-label{font-size:1.5em;color:#1e293b}.pd-tier-summary-list{font-size:1.06em;font-weight:600;color:#1e293b;margin:6px 0 2px;padding-left:20px}.pd-tier-summary-list li{line-height:1.6}.pd-summary-text{font-size:1.06em;color:#64748b;line-height:1.6;padding-left:14px;border-left:2px solid #e2e8f0;margin-top:4px}.pd-donut-wrap{display:flex;align-items:center;gap:40px;position:relative}.pd-donut-tooltip{position:absolute;z-index:100;background:#1e293b;color:#fff;border-radius:10px;padding:12px 16px;max-width:260px;pointer-events:none;box-shadow:0 4px 16px #0000002e;display:flex;flex-direction:column;gap:6px;animation:tooltipFadeIn .15s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.pd-donut-tooltip-name{font-size:.85em;font-weight:700;color:#f97316}.pd-donut-tooltip-text{font-size:.85em;line-height:1.6;color:#e2e8f0}.pd-donut-legend{display:flex;flex-direction:column;gap:10px;flex:1}.pd-donut-legend-item{display:flex;align-items:center;gap:10px}.pd-donut-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.pd-donut-name{flex:1;font-size:1.06em;color:#1e293b;font-weight:500}.pd-donut-pct{font-size:1.06em;font-weight:700;color:#f97316}.pd-labeled-bar{display:flex;height:36px;border-radius:6px;overflow:hidden;gap:1px}.pd-bar-segment{display:flex;align-items:center;justify-content:center;overflow:hidden;min-width:0;cursor:default}.pd-bar-segment:hover{opacity:.85}.pd-bar-label{font-size:.75em;font-weight:600;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px;text-shadow:0 1px 2px rgba(0,0,0,.3)}.pd-bar-label-link{cursor:pointer;text-decoration:underline;text-decoration-color:#ffffff80;text-underline-offset:2px}.pd-bar-label-link:hover{text-decoration-color:#fffffff2}.pd-two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.pd-col{min-width:0}.pd-perf-boxes{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}.pd-perf-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px;min-width:90px;text-align:center}.pd-perf-box-label{font-size:.85em;color:#94a3b8;margin-bottom:4px}.pd-perf-box-value{font-size:1.1em;font-weight:700;color:#334155}.pd-mc-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}.pd-mc-box{flex:1;min-width:80px;border-radius:8px;padding:10px 12px;text-align:center}.pd-mc-label{font-size:.85em;color:#94a3b8;margin-bottom:4px}.pd-mc-value{font-size:1.1em;font-weight:700}.pd-mc-bear{background:#fff1f2}.pd-mc-bear .pd-mc-value{color:#e11d48}.pd-mc-base{background:#f8fafc}.pd-mc-base .pd-mc-value{color:#334155}.pd-mc-bull{background:#f0fdf4}.pd-mc-bull .pd-mc-value{color:#16a34a}.pd-interpretation{font-size:1.06em;color:#64748b;line-height:1.6;margin-top:6px}.pd-risk-summary{font-size:1.06em;color:#374151;line-height:1.7;margin-top:4px;margin-bottom:24px;padding:8px 10px;background:#fef2f2;border-left:3px solid #ef4444;border-radius:4px}.pd-risk-item{align-items:flex-start!important;flex-direction:column!important;gap:4px!important;padding:12px 16px!important;border-bottom:none!important;background:#fafafa;border-radius:10px;transition:all .3s ease}.pd-risk-item:hover{background:#fff8f0;transform:translateY(-2px)}.pd-risk-text{font-size:1.06em;line-height:1.5;white-space:normal;color:#1e293b!important}.pd-pos{color:#dc2626}.pd-neg{color:#10b981}.pd-stock-list{display:flex;flex-direction:column}.pd-stock-row{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #f1f5f9;align-items:flex-start;page-break-inside:avoid;break-inside:avoid}.pd-stock-row:last-child{border-bottom:none}.pd-stock-left{display:flex;align-items:center;gap:6px;flex-shrink:0;width:200px;flex-wrap:wrap;align-content:flex-start}.pd-stock-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pd-stock-name{font-size:1.06em;font-weight:700;color:#1e293b}.pd-stock-code{font-size:.9em;color:#94a3b8}.pd-grade-badge{font-size:.9em;padding:1px 7px;border-radius:10px;font-weight:600}.pd-grade-Ź��{background:#eff6ff;color:#1d4ed8}.pd-grade-���{background:#f0fdf4;color:#16a34a}.pd-grade-��ȣ{background:#fffbeb;color:#d97706}.pd-grade-����{background:#f8fafc;color:#64748b}.pd-grade-����{background:#fff1f2;color:#e11d48}.pd-grade-��������{background:#f1f5f9;color:#94a3b8}.pd-ai-badge{font-size:.9em;color:#7c3aed;font-weight:600}.pd-stock-right{flex:1;min-width:0}.pd-stock-reason{font-size:1.06em;color:#475569;line-height:1.7;margin:0}.pd-stock-tags{display:flex;flex-wrap:wrap;gap:5px}.pd-tag{font-size:.9em;padding:2px 8px;border-radius:12px}.pd-tag-pos{background:#f0fdf4;color:#16a34a}.pd-tag-neg{background:#fff7ed;color:#c2410c}.pd-ai-btn{font-size:.9em;padding:6px 16px;border-radius:20px;border:1px solid #7c3aed;background:#faf5ff;color:#7c3aed;cursor:pointer;font-weight:600}.pd-ai-btn:disabled{opacity:.6;cursor:not-allowed}.pd-status-msg{font-size:.85em;margin-top:6px}.pd-status-err{color:#e11d48}.pd-status-warn{color:#d97706}.pd-section-label-mt{margin-top:20px}.pd-signal-bar-wrap{position:relative;height:24px;background:#f1f5f9;border-radius:6px;overflow:hidden;margin-bottom:10px}.pd-signal-bar{height:100%;background:linear-gradient(90deg,#10b981,#34d399);border-radius:6px;transition:width .4s ease;max-width:100%}.pd-signal-pct{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.85em;font-weight:700;color:#1e293b;white-space:nowrap}.pd-big-value{font-size:1.6em;font-weight:800;line-height:1.2;margin-bottom:10px}.pd-big-value-sub{font-size:.85em;font-weight:400;color:#94a3b8}.pd-signal-items{display:flex;flex-direction:column;gap:8px}.pd-signal-item{display:flex;justify-content:space-between;align-items:center;font-size:1.06em;color:#475569;padding:3px 0;border-bottom:1px solid #f8fafc}.pd-signal-name{color:#334155;font-weight:700}.pd-no-data{font-size:1.06em;color:#cbd5e1;margin:4px 0 0}.pd-notice{background:#fafafa}.pd-notice ul{margin:0;padding-left:18px}.pd-notice li{font-size:.85em;color:#94a3b8;line-height:1.8}.pd-footer{padding:20px 24px;display:flex;justify-content:center;background:#fafafa}.pd-download-btn{background:#1e293b;color:#fff;border:none;border-radius:8px;padding:10px 32px;font-size:1em;font-weight:600;cursor:pointer}.pd-download-btn:hover{background:#0f172a}@media(max-width:900px){.portfolio-detail-page{padding:24px 20px}.pd-section-row{padding:16px 20px}}@media(max-width:600px){.portfolio-detail-page{padding:16px 10px}.pd-section-row{padding:14px}.pd-two-col{grid-template-columns:1fr}.pd-stock-left{width:100%}.pd-stock-row{flex-direction:column}.pd-bar-label{font-size:.7em}}.pdf-mode{font-size:13px}.pdf-mode .pd-section-label{font-size:1.2em}.pdf-mode .pd-reason-item,.pdf-mode .pd-tier-summary-list,.pdf-mode .pd-summary-text,.pdf-mode .pd-stock-reason,.pdf-mode .pd-risk-summary,.pdf-mode .pd-risk-text,.pdf-mode .pd-interpretation,.pdf-mode .pd-signal-item,.pdf-mode .pd-stock-name{font-size:.95em}.pdf-mode .pd-stock-code,.pdf-mode .pd-grade-badge,.pdf-mode .pd-ai-badge,.pdf-mode .pd-tag,.pdf-mode .pd-signal-name{font-size:.82em}.pdf-mode .pd-perf-box-value,.pdf-mode .pd-mc-value{font-size:.95em}.pdf-mode .pd-big-value{font-size:1.3em}@media print{@page{margin:16mm 14mm}header,nav,.pd-back-btn,.pd-footer,.pd-ai-btn,.pd-status-msg{display:none!important}body,.portfolio-detail-page{background:#fff!important;padding:0!important}.portfolio-detail-container{width:100%!important}.pd-main-card{box-shadow:none!important;border:1px solid #e2e8f0;break-inside:avoid}.pd-section-row,.pd-stock-row{break-inside:avoid;page-break-inside:avoid}.pd-bar-segment,.pd-signal-bar,[class*=pd-grade-]{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.loading-container,.pd-error-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem}.loading-container{background:transparent}.loading-spinner{width:56px;height:56px;border:5px solid #d1fae5;border-top-color:#10b981;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1.5rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container p{margin:0;font-size:1rem;color:#10b981;font-weight:600;letter-spacing:.3px}.pd-error-box{background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 20px #00000014;max-width:500px;margin:60px auto}.pd-error-box p{color:#64748b;margin-bottom:24px;font-size:1rem;line-height:1.6}.mypage{min-height:calc(100vh - var(--header-h, 64px));background:#f0f7f3;padding:1.5rem 0}.mypage-container{max-width:1400px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:240px 1fr;gap:1.5rem}.mypage-sidebar{background:#fff;border-radius:12px;padding:1.5rem 1rem;height:fit-content;max-height:calc(100vh - var(--header-h, 64px) - 3rem);position:sticky;top:calc(var(--header-h, 64px) + 1.5rem);display:flex;flex-direction:column;box-shadow:0 1px 4px #0000000f;border:1px solid #E5E7EB}.sidebar-category{font-size:.6875rem;font-weight:700;letter-spacing:1.2px;color:#9ca3af;text-transform:uppercase;padding:0 .5rem;margin-bottom:.75rem}.sidebar-menu{display:flex;flex-direction:column;gap:.25rem}.menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-left:3px solid transparent;border-radius:0 8px 8px 0;cursor:pointer;font-size:.9375rem;font-weight:500;color:#6b7280;text-align:left;transition:all .2s ease;position:relative}.menu-item:hover{background:#f3f4f6;color:#111827}.menu-item.active{background:#f0fdf4;color:#15803d;font-weight:600;border-left-color:#16a34a}.menu-icon{display:flex;align-items:center;justify-content:center;width:20px;flex-shrink:0}.menu-label{flex:1}.mypage-content{min-height:600px}.section-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:1.75rem;box-shadow:0 8px 24px #0000000f,0 4px 12px #00000008;border:1px solid rgba(255,255,255,.9);transition:all .25s ease}.section-title{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.08);letter-spacing:-.3px;position:relative}.section-title:after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:linear-gradient(90deg,#5a9068,#6ba777)}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem;letter-spacing:-.2px}.form-group .required{color:#dc2626;margin-left:2px}.form-input{width:100%;height:44px;padding:0 1rem;font-size:.9375rem;color:#1a1a1a;background:#fff;border:1px solid #e5e7eb;border-radius:10px;transition:all .25s cubic-bezier(.4,0,.2,1)}.form-input:focus{outline:none;border-color:#5a9068;box-shadow:0 0 0 3px #5a90681a;transform:translateY(-.5px)}.form-input.error{border-color:#ef4444;background:#fef2f2}.form-input.disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.form-input::placeholder{color:#9ca3af}select.form-input{cursor:pointer}.form-helper{font-size:.8125rem;color:#6b7280;margin-top:.375rem;line-height:1.4}.form-error{font-size:.8125rem;color:#dc2626;margin-top:.375rem;font-weight:500}.form-divider{height:1px;background:linear-gradient(90deg,transparent 0%,#e5e7eb 50%,transparent 100%);margin:1.75rem 0}.form-actions{display:flex;gap:.75rem;margin-top:1.75rem}.btn{height:44px;padding:0 1.5rem;font-size:.9375rem;font-weight:600;border-radius:10px;border:none;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap;letter-spacing:-.2px;box-shadow:0 2px 6px #0000000f}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,#5a9068,#6ba777);color:#fff;box-shadow:0 3px 12px #5a906833,0 2px 6px #5a90681f}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 5px 18px #5a906840,0 3px 10px #5a906826}.btn-secondary{background:#fff;color:#1a1a1a;border:1px solid #e5e7eb;box-shadow:0 2px 6px #0000000a}.btn-secondary:hover{border-color:#1a1a1a;transform:translateY(-1px)}.btn-outline{background:transparent;color:#1a1a1a;border:1px solid #d1d5db}.btn-outline:hover{background:#f9fafb;border-color:#1a1a1a}.btn-full{width:100%}.profile-card{max-width:700px}.holdings-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem}.holdings-summary{display:flex;flex-direction:column;gap:1.125rem}.summary-card{background:linear-gradient(135deg,#fff,#fafafa);border-radius:14px;padding:1.5rem;border:1px solid #e5e7eb;transition:all .25s ease;box-shadow:0 3px 12px #00000008}.summary-card:hover{transform:translateY(-1px);box-shadow:0 5px 18px #0000000f}.summary-card h3{font-size:.8125rem;font-weight:600;color:#6b7280;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.summary-card .amount{font-size:1.75rem;font-weight:700;color:#1a1a1a;letter-spacing:-1px}.summary-card.total{background:linear-gradient(135deg,#5a9068,#6ba777);border:none;box-shadow:0 6px 24px #5a906833,0 3px 12px #5a90681f}.summary-card.total h3,.summary-card.total .amount{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.change-info{display:flex;align-items:center;gap:1.125rem;margin-top:.375rem}.change-info .amount{flex:1;font-size:1.25rem}.change-info .rate{font-size:1rem;font-weight:700;padding:.375rem .875rem;border-radius:8px;background:#fff3}.change-info.positive .amount,.change-info.positive .rate{color:#dc2626}.summary-card.total .change-info.positive .rate{color:#fff;background:#ffffff40}.change-info.negative .amount,.change-info.negative .rate{color:#2563eb}.summary-card.total .change-info.negative .rate{color:#fff;background:#ffffff40}.holdings-list-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1.5rem;flex:1;box-shadow:0 3px 12px #00000008}.holdings-list-card h3{font-size:1.125rem;font-weight:700;color:#1a1a1a;margin-bottom:1.125rem;letter-spacing:-.3px}.holdings-list{display:flex;flex-direction:column;gap:.75rem;max-height:450px;overflow-y:auto;padding-right:.375rem}.holdings-list::-webkit-scrollbar{width:5px}.holdings-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:8px}.holdings-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:8px}.holdings-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.holding-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(135deg,#fafafa,#fff);border-radius:12px;position:relative;border:1px solid transparent;transition:all .25s ease}.holding-item:hover{background:#fff;border-color:#e5e7eb;transform:translate(3px);box-shadow:0 3px 10px #0000000d}.btn-delete-holding{position:absolute;top:.625rem;right:.625rem;width:24px;height:24px;border-radius:50%;border:none;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .25s ease;padding:0;line-height:1;box-shadow:0 2px 6px #ef444440}.holding-item:hover .btn-delete-holding{opacity:1}.btn-delete-holding:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:scale(1.1)}.btn-delete-holding:active{transform:scale(.95)}.holding-info h4{font-size:.9375rem;font-weight:600;color:#1a1a1a;margin-bottom:.3125rem;letter-spacing:-.2px}.stock-code{font-size:.8125rem;color:#6b7280;font-family:Courier New,monospace;font-weight:500}.holding-value{text-align:right}.holding-value .amount{font-size:1rem;font-weight:700;color:#1a1a1a;margin-bottom:.3125rem;letter-spacing:-.3px}.holding-value .return{font-size:.8125rem;font-weight:700;padding:.1875rem .625rem;border-radius:6px;display:inline-block}.holding-value .return.positive{color:#dc2626;background:#fee2e2}.holding-value .return.negative{color:#2563eb;background:#dbeafe}.holdings-form-wrapper{position:sticky;top:calc(var(--header-h, 64px) + 1rem)}.holdings-form-card{background:linear-gradient(135deg,#fafafa,#fff);border-radius:14px;padding:1.5rem;border:1px solid #e5e7eb;box-shadow:0 3px 12px #00000008}.holdings-form-card h3{font-size:1.25rem;font-weight:700;color:#1a1a1a;margin-bottom:1.5rem;letter-spacing:-.3px}.input-method-toggle{display:flex;gap:.375rem;margin-bottom:1.5rem;background:#fff;padding:.3125rem;border-radius:10px;border:1px solid #e5e7eb}.toggle-btn{flex:1;padding:.75rem;border:none;background:transparent;color:#6b7280;font-size:.875rem;font-weight:600;cursor:pointer;border-radius:8px;transition:all .25s ease}.toggle-btn.active{background:linear-gradient(135deg,#5a9068,#6ba777);color:#fff;box-shadow:0 3px 10px #5a906833}.toggle-btn:hover:not(.active){background:#f9fafb;color:#374151}.image-upload-section{margin-bottom:1.5rem}.image-upload-box{margin-bottom:1rem}.image-upload-label{display:block;padding:2.5rem 1.5rem;background:#fff;border:2px dashed #d1d5db;border-radius:12px;text-align:center;cursor:pointer;transition:all .25s ease}.image-upload-label:hover{border-color:#5a9068;background:#f0fdf4;transform:translateY(-1px);box-shadow:0 6px 20px #5a906814}.upload-icon{font-size:2.75rem;margin-bottom:1rem;color:#9ca3af;transition:all .25s ease}.image-upload-label:hover .upload-icon{color:#5a9068;transform:scale(1.1)}.upload-title{font-size:.9375rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.upload-hint{font-size:.8125rem;color:#6b7280}.uploading{display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner{width:40px;height:40px;border:3px solid #f3f4f6;border-top-color:#5a9068;border-radius:50%;animation:spin .8s linear infinite}.image-guide{background:linear-gradient(135deg,#f0fdf4,#dcfce7);padding:1.125rem;border-radius:10px;border-left:3px solid #5a9068;box-shadow:0 2px 6px #5a906814}.guide-title{font-size:.875rem;font-weight:700;color:#1a1a1a;margin-bottom:.625rem;display:flex;align-items:center;gap:.375rem}.guide-title:before{content:"💡";font-size:1.125rem}.image-guide ul{list-style:none;padding:0;margin:0}.image-guide li{font-size:.8125rem;color:#374151;padding-left:1.25rem;position:relative;margin-bottom:.375rem;line-height:1.5}.image-guide li:before{content:"•";position:absolute;left:0;color:#5a9068;font-weight:700;font-size:1.125rem}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.portfolio-card{background:linear-gradient(135deg,#fff,#fafafa);border-radius:14px;padding:1.5rem;border:1px solid #e5e7eb;transition:all .25s ease;box-shadow:0 3px 12px #00000008}.portfolio-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014;border-color:#5a9068}.portfolio-header{margin-bottom:1.5rem;padding-bottom:1.125rem;border-bottom:1px solid #f3f4f6}.portfolio-header h3{font-size:1.25rem;font-weight:700;color:#1a1a1a;margin-bottom:.625rem;letter-spacing:-.3px}.portfolio-total{font-size:.9375rem;font-weight:600;color:#6b7280}.portfolio-total strong{color:#1a1a1a;font-size:1.25rem;font-weight:700;letter-spacing:-.3px}.portfolio-chart-wrapper{display:flex;justify-content:center;margin:1.5rem 0}.portfolio-unified{width:100%}.portfolio-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-top:2.5rem}.portfolio-chart-section{display:flex;justify-content:center;align-items:center;padding:3rem 2rem;background:linear-gradient(135deg,#fafafa,#fff);border-radius:24px;border:2px solid #e5e7eb;box-shadow:0 4px 16px #0000000a}.portfolio-legend-section{background:#fff;border:2px solid #e5e7eb;border-radius:24px;padding:2rem;box-shadow:0 4px 16px #0000000a}.portfolio-legend-section h4{font-size:1.375rem;font-weight:700;color:#1a1a1a;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6;letter-spacing:-.3px}.portfolio-selected-info{display:flex;align-items:center;gap:1.25rem;padding:1.75rem;background:linear-gradient(135deg,#5a9068,#6ba777);border-radius:18px;color:#fff;margin-bottom:1.75rem;animation:slideDown .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #5a906840}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.selected-color{width:52px;height:52px;border-radius:12px;border:3px solid #ffffff;flex-shrink:0;box-shadow:0 4px 12px #00000026}.selected-content{flex:1}.selected-content h4{font-size:1.375rem;font-weight:700;margin-bottom:.625rem;letter-spacing:-.3px}.selected-details{display:flex;align-items:center;gap:1.25rem}.selected-amount{font-size:1.125rem;font-weight:600;opacity:.95}.selected-value{font-size:1rem;font-weight:700;padding:.375rem .875rem;background:#ffffff40;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.selected-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff3;border:none;border-radius:50%;color:#fff;font-size:1.25rem;cursor:pointer;transition:all .3s ease;flex-shrink:0}.selected-close:hover{background:#ffffff59;transform:scale(1.15) rotate(90deg)}.portfolio-legend{display:flex;flex-direction:column;gap:.75rem}.legend-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem;padding:1rem;border-radius:10px;cursor:pointer;transition:all .25s ease;border:1px solid transparent;background:#fafafa}.legend-item:hover{background:#fff;transform:translate(4px);box-shadow:0 3px 10px #0000000d}.legend-item.active{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fbbf24;transform:translate(4px);box-shadow:0 3px 14px #fbbf2433}.legend-color{width:18px;height:18px;border-radius:4px;flex-shrink:0;box-shadow:0 1px 6px #00000014}.legend-text{display:flex;align-items:center;gap:.5rem;flex:1}.legend-name{font-weight:600;color:#1a1a1a}.legend-value{color:#6b7280;font-weight:500}.legend-amount{font-weight:700;color:#1a1a1a;white-space:nowrap;font-size:.9375rem;letter-spacing:-.2px}.strategy-list{display:flex;flex-direction:column;gap:1.25rem}.strategy-item{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#fafafa,#fff);border-radius:14px;border:1px solid transparent;transition:all .25s ease;box-shadow:0 1px 6px #00000008}.strategy-item:hover{border-color:#e5e7eb;transform:translateY(-1px);box-shadow:0 6px 20px #0000000f}.strategy-main{flex:1}.strategy-date{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#6b7280;margin-bottom:.75rem;font-weight:500}.date-icon{font-size:1rem}.strategy-content{padding-left:1.5rem}.strategy-title{font-size:1.125rem;font-weight:700;color:#1a1a1a;margin-bottom:.625rem;letter-spacing:-.2px}.strategy-summary{font-size:.9375rem;color:#6b7280;margin-bottom:.75rem;line-height:1.5}.strategy-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.risk-badge,.return-badge{padding:.4375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:700;letter-spacing:.2px;box-shadow:0 1px 6px #0000000d}.risk-badge{background:linear-gradient(135deg,#e5e7eb,#f3f4f6);color:#374151}.risk-badge.risk-stable{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.risk-badge.risk-neutral{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.risk-badge.risk-aggressive{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.return-badge{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534}.archived-badge{padding:.4375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:700;background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#6b7280}.active-badge{padding:.4375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:700;background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;box-shadow:0 1px 6px #1665341f}.strategy-action{margin-left:1.25rem}.empty-state,.empty-state-card{text-align:center;padding:3rem 1.5rem;color:#9ca3af}.empty-state-card{background:linear-gradient(135deg,#fafafa,#fff);border-radius:14px;border:1px dashed #d1d5db}.empty-state p,.empty-state-card p{font-size:1.125rem;font-weight:600;margin-bottom:.625rem;color:#6b7280}.empty-hint{font-size:.9375rem!important;font-weight:400!important;color:#9ca3af!important}.empty-state-card .btn{margin-top:1.5rem}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3.5rem 1.5rem;text-align:center;color:#9ca3af}.loading-state .spinner{margin-bottom:1.25rem}.error-state{color:#dc2626}@media(max-width:1400px){.mypage-container{max-width:100%}}@media(max-width:1024px){.mypage-container{grid-template-columns:1fr;gap:1.5rem}.mypage-sidebar{position:static;max-height:none;margin-bottom:0}.sidebar-menu{flex-direction:row;overflow-x:auto;gap:.625rem}.menu-item{flex-shrink:0;min-width:120px}.holdings-layout{grid-template-columns:1fr}.holdings-form-wrapper{position:static}.portfolio-grid{grid-template-columns:1fr}.portfolio-layout{grid-template-columns:1fr;gap:2rem}.portfolio-chart-section svg{width:100%;height:auto;max-width:350px}}@media(max-width:768px){.mypage{padding:1.25rem 0}.mypage-container{padding:0 .875rem}.section-content{padding:1.5rem;border-radius:14px}.section-title,.sidebar-title{font-size:1.25rem}.mypage-sidebar{padding:1.25rem .875rem;border-radius:12px}.holdings-form-card,.holdings-list-card,.summary-card{padding:1.25rem}.summary-card .amount{font-size:1.5rem}.strategy-item{padding:1.25rem}.strategy-content{padding-left:0}.strategy-title{font-size:1rem}.portfolio-layout{gap:1.5rem}.portfolio-chart-section{padding:1.5rem 1.25rem}.portfolio-legend-section{padding:1.25rem}}@media(max-width:480px){.form-actions{flex-direction:column}.btn{width:100%}.summary-card .amount{font-size:1.375rem}.holdings-list-card h3{font-size:1rem}.holding-item{flex-direction:column;align-items:flex-start;gap:.625rem}.holding-value{text-align:left;width:100%}.btn-delete-holding{top:auto;bottom:.625rem;right:.625rem}.portfolio-grid{grid-template-columns:1fr}.strategy-item{flex-direction:column;align-items:flex-start;gap:.875rem}.strategy-action{margin-left:0;width:100%}.strategy-action .btn{width:100%}}.mypage-content::-webkit-scrollbar,.holdings-list::-webkit-scrollbar{width:8px}.mypage-content::-webkit-scrollbar-track,.holdings-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:10px}.mypage-content::-webkit-scrollbar-thumb,.holdings-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#5a9068,#6ba777);border-radius:10px}.mypage-content::-webkit-scrollbar-thumb:hover,.holdings-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#4a7c59,#5a9068)}.section-content{animation:fadeIn .4s ease}.btn:focus,.form-input:focus,.menu-item:focus{outline:2px solid #5a9068;outline-offset:2px}button:focus-visible,input:focus-visible{outline:2px solid #5a9068;outline-offset:2px}@media(max-width:480px){.sidebar-title,.section-title{font-size:1.5rem}.form-actions{flex-direction:column}.btn{width:100%}.strategy-item{flex-direction:column;align-items:flex-start;gap:1rem}.strategy-action{width:100%;margin-left:0}.strategy-action .btn{width:100%}.menu-item{padding:.75rem;font-size:var(--fs-sm, 14px)}.menu-icon{font-size:1rem}.holding-item{flex-direction:column;align-items:flex-start;gap:.75rem}.holding-value{text-align:left}}.chatbot-page{display:flex;height:calc(100vh - 80px);background:#f7f9f8;overflow:hidden}.chatbot-sidebar{width:280px;background:#fff;border-right:1px solid #E5E7EB;display:flex;flex-direction:column;padding:20px;box-shadow:2px 0 10px #0000001a}.sidebar-header{display:flex;align-items:center;gap:12px;margin-bottom:30px;font-size:20px;font-weight:600;color:#1f2937}.bot-icon{width:40px;height:40px;background:#6fbf8f;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.new-chat-btn{background:#6fbf8f;color:#fff;border:none;border-radius:8px;padding:12px 16px;margin-bottom:20px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s ease}.new-chat-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #2e7d5b4d;background:#247055}.chat-sessions{flex:1;overflow-y:auto}.session-list{list-style:none;padding:0;margin:0}.session-item{padding:12px;margin-bottom:8px;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:all .2s ease;border-left:3px solid transparent;display:flex;align-items:center;gap:4px}.session-item:hover{background:#e9ecef;transform:translate(2px)}.session-item.active{background:#e8f5ec;border-left-color:#6fbf8f}.session-item-content{flex:1;min-width:0}.session-title{font-weight:500;color:#333;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-item-footer{display:flex;align-items:center;justify-content:space-between}.session-time{font-size:12px;color:#999}.session-delete-btn{flex-shrink:0;opacity:0;background:none;border:none;color:#aaa;cursor:pointer;font-size:13px;padding:3px 6px;border-radius:4px;transition:opacity .15s ease,background .15s ease,color .15s ease;line-height:1}.session-item:hover .session-delete-btn{opacity:1}.session-delete-btn:hover{background:#ffebee;color:#e53935}.chatbot-main{flex:1;display:flex;flex-direction:column;background:#fff}.chat-header{padding:20px;background:#fff;border-bottom:1px solid #E5E7EB;display:flex;align-items:center;justify-content:space-between}.chat-title{font-size:24px;font-weight:600;color:#333}.chat-subtitle{font-size:14px;color:#666;margin-top:4px}.user-info{display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:8px 16px;border-radius:20px}.status-dot{width:8px;height:8px;background:#28a745;border-radius:50%}.chat-messages{flex:1;display:flex;flex-direction:column;padding:20px;overflow-y:auto;background:#f7f9f8;min-height:0}.messages-container{flex:1;display:flex;flex-direction:column;gap:16px;max-width:800px;margin:0 auto;width:100%}.message{display:flex;gap:12px;animation:fadeIn .3s ease;position:relative}.message-delete-btn{display:none;position:absolute;top:6px;right:8px;background:#fffc;border:none;color:#9ca3af;font-size:12px;cursor:pointer;padding:2px 6px;border-radius:4px;line-height:1;transition:color .15s,background .15s;z-index:2}.message-delete-btn:hover{color:#ef4444;background:#fee2e2}.message-content:hover .message-delete-btn{display:block}.message.user{flex-direction:row-reverse}.message-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;flex-shrink:0}.message.user .message-avatar{background:#9ca3af}.message.assistant .message-avatar{background:#6fbf8f;color:#fff}.message-content{background:#fff;padding:14px 18px;border-radius:18px;max-width:70%;word-wrap:break-word;box-shadow:0 2px 10px #0000001a;position:relative}.message.user .message-content{background:#fde68a;color:#1f2937;border-bottom-right-radius:6px}.message.assistant .message-content{background:#e8f5ec;color:#1f2937;border-bottom-left-radius:6px;border:1px solid #E5E7EB}.message-time{font-size:12px;color:#9ca3af;margin-top:8px}.message.assistant .message-time{color:#6fbf8f}.empty-chat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#666;padding:40px 20px;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-icon{font-size:80px;margin-bottom:24px;opacity:.8;animation:bounce 2s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-title{font-size:28px;margin-bottom:16px;color:#1a1a1a;font-weight:700;letter-spacing:-.5px}.empty-subtitle{font-size:17px;margin-bottom:40px;color:#666;line-height:1.6;font-weight:400}.quick-questions{display:flex;flex-wrap:wrap;gap:14px;max-width:600px;justify-content:center}.quick-question-btn{background:#fff;border:2px solid #E5E7EB;border-radius:24px;padding:12px 20px;cursor:pointer;transition:all .3s ease;font-size:14px;color:#1f2937;font-weight:500;box-shadow:0 2px 8px #0000000a}.quick-question-btn:hover{background:#6fbf8f;color:#fff;transform:translateY(-3px);box-shadow:0 6px 20px #2e7d5b4d;border-color:#6fbf8f}.quick-question-btn:active{transform:translateY(-1px)}.quick-question-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-input{background:#fff;border-top:1px solid #E5E7EB;padding:20px;display:flex;align-items:center;gap:12px}.input-container{flex:1;display:flex;align-items:center;background:#f8f9fa;border-radius:24px;padding:4px 20px;border:2px solid transparent;transition:all .3s ease}.input-container:focus-within{border-color:#6fbf8f;background:#fff}.chat-input input{flex:1;border:none;outline:none;background:transparent;padding:12px 0;font-size:16px}.send-btn{background:#6fbf8f;color:#fff;border:none;border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.send-btn:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 15px #2e7d5b66;background:#247055}.send-btn:disabled{opacity:.5;cursor:not-allowed}.typing-indicator{display:flex;align-items:center;gap:4px;padding:12px 16px;background:#f0f0f0;border-radius:18px;margin-top:8px}.typing-dot{width:6px;height:6px;background:#999;border-radius:50%;animation:typingAnimation 1.4s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingAnimation{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-10px);opacity:1}}.formatted-message{line-height:1.6;color:#333}.formatted-message .chat-heading{font-size:16px;font-weight:600;color:#2c3e50;margin:15px 0 8px;padding-bottom:4px;border-bottom:2px solid #3498db}.formatted-message strong{font-weight:600;color:#2c3e50}.formatted-message .chat-bullet{margin:4px 0;padding:2px 0;color:#444}.formatted-message .chat-bullet:before{content:"";display:inline-block;width:4px;height:4px;background:#3498db;border-radius:50%;margin-right:8px;vertical-align:middle}.formatted-message .chat-numbered{margin:4px 0;padding:2px 0 2px 16px;color:#444;font-weight:500}.formatted-message .chat-check{margin:6px 0;padding:8px 12px;background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left:4px solid #28a745;border-radius:4px;font-weight:500}.formatted-message .chat-cross{margin:6px 0;padding:8px 12px;background:linear-gradient(135deg,#f8d7da,#f1c2c7);border-left:4px solid #dc3545;border-radius:4px;font-weight:500}.formatted-message .chat-warning{margin:6px 0;padding:8px 12px;background:linear-gradient(135deg,#fff3cd,#fce4aa);border-left:4px solid #ffc107;border-radius:4px;font-weight:500}.formatted-message .chat-sources{font-size:12px;color:#666;margin-top:10px;padding-top:8px;border-top:1px solid #d1e8da;line-height:1.5}.formatted-message .chat-sources br{display:none}.formatted-message .chat-sources .chat-bullet{margin:1px 0;padding:0;font-size:12px;color:#666}.formatted-message .chat-sources .chat-bullet:before{display:none}.formatted-message .chat-sources strong{color:#444;font-size:12px}.formatted-message .chat-sources .chat-link{font-size:12px}.formatted-message .chat-link{color:#4a7c59;text-decoration:underline;text-underline-offset:2px;word-break:break-all}.formatted-message .chat-link:hover{color:#2d5a3d}.formatted-message .chat-star{color:#ffc107;text-shadow:0 0 3px rgba(255,193,7,.5);animation:starTwinkle 2s infinite ease-in-out}@keyframes starTwinkle{0%,to{opacity:1}50%{opacity:.7}}.formatted-message br{line-height:1.8}@media(max-width:768px){.formatted-message .chat-heading{font-size:14px}.formatted-message .chat-check,.formatted-message .chat-cross,.formatted-message .chat-warning{padding:6px 10px;font-size:13px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.chatbot-page{flex-direction:column}.chatbot-sidebar{width:100%;height:200px;border-right:none;border-bottom:1px solid #e0e0e0}.message-content{max-width:85%}}.customer-center{min-height:calc(100vh - var(--header-h, 64px));background:#f0f7f3;padding:2rem 0}.cs-container{max-width:1600px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:260px 1fr;gap:2rem}.cs-sidebar{background:#fff;border-radius:12px;padding:1.5rem 1rem;height:fit-content;max-height:calc(100vh - var(--header-h, 64px) - 3rem);position:sticky;top:calc(var(--header-h, 64px) + 1.5rem);display:flex;flex-direction:column;box-shadow:0 1px 4px #0000000f;border:1px solid #E5E7EB}.cs-sidebar-category{font-size:.6875rem;font-weight:700;letter-spacing:1.2px;color:#9ca3af;text-transform:uppercase;padding:0 .5rem;margin-bottom:.75rem}.cs-menu{display:flex;flex-direction:column;gap:.25rem}.cs-menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-left:3px solid transparent;border-radius:0 8px 8px 0;cursor:pointer;font-size:.9375rem;font-weight:500;color:#6b7280;text-align:left;transition:all .2s ease;position:relative}.cs-menu-item:hover{background:#f3f4f6;color:#111827}.cs-menu-item.active{background:#f0fdf4;color:#15803d;font-weight:600;border-left-color:#16a34a}.cs-menu-item .menu-icon{display:flex;align-items:center;justify-content:center;width:20px;flex-shrink:0}.cs-menu-item .menu-label{flex:1}.cs-main-content{min-height:600px}.cs-content-section{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:1.75rem;box-shadow:0 8px 24px #0000000f,0 4px 12px #00000008;border:1px solid rgba(255,255,255,.9)}.cs-section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.06);display:flex;justify-content:space-between;align-items:flex-start}.cs-section-title{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 .375rem;letter-spacing:-.3px}.cs-section-description{font-size:.9375rem;color:#6b7280;margin:0}.btn-new-inquiry{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#ffe34d,#f4d400);color:#1a1a1a;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 3px 10px #ffe34d40}.btn-new-inquiry:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ffe34d66}.btn-new-inquiry:active{transform:translateY(0)}.btn-new-inquiry svg{flex-shrink:0}.faq-search-bar{position:relative;margin-bottom:1.5rem}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.faq-search-input{width:100%;padding:.75rem .75rem .75rem 2.75rem;border:1px solid #e5e7eb;border-radius:10px;font-size:.9375rem;background:#fff;transition:all .25s ease;outline:none}.faq-search-input:focus{border-color:#ffe34d;box-shadow:0 0 0 4px #ffe34d1a}.faq-search-input::placeholder{color:#9ca3af}.faq-list{display:flex;flex-direction:column;gap:.75rem}.faq-item{background:#fff;border:1px solid #f3f4f6;border-radius:12px;overflow:hidden;transition:all .25s ease}.faq-item:hover{border-color:#e5e7eb;box-shadow:0 2px 8px #0000000a}.faq-item.open{border-color:#ffe34d;box-shadow:0 4px 16px #ffe34d1f}.faq-question{width:100%;display:flex;align-items:center;gap:.875rem;padding:1rem 1.25rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .2s ease}.faq-question:hover{background:#fafafa}.faq-q-label{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe34d,#f4d400);color:#1a1a1a;font-weight:700;font-size:.8125rem;border-radius:7px;box-shadow:0 2px 6px #ffe34d40}.faq-q-text{flex:1;font-size:.9375rem;font-weight:600;color:#1a1a1a;line-height:1.4}.faq-toggle-icon{flex-shrink:0;color:#6b7280;transition:transform .3s ease}.faq-item.open .faq-toggle-icon{transform:rotate(180deg);color:#1a1a1a}.faq-answer{display:flex;gap:.875rem;padding:0 1.25rem 1rem;background:#fafafa;animation:slideDown .25s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.faq-a-label{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#1a1a1a;color:#ffe34d;font-weight:700;font-size:.8125rem;border-radius:7px}.faq-a-text{flex:1;font-size:.9375rem;line-height:1.6;color:#4b5563;margin:0;padding-top:.125rem}.inq-wrapper{padding:0!important;background:transparent!important;box-shadow:none!important;border:none!important}.inq-layout{display:grid;grid-template-columns:1fr 340px;gap:0;background:#fff;border-radius:16px;border:1px solid #E5E7EB;overflow:hidden;min-height:calc(100vh - 220px)}.inq-main{padding:2.5rem;border-right:1px solid #E5E7EB;display:flex;flex-direction:column;gap:2rem}.inq-greeting-title{font-size:1.875rem;font-weight:800;color:#111827;margin:0 0 .75rem;letter-spacing:-.5px}.inq-greeting-sub{font-size:1rem;color:#6b7280;line-height:1.7;margin:0;max-width:540px}.inq-detail-box{background:#f9fafb;border:1px solid #E5E7EB;border-radius:12px;padding:2rem;display:flex;flex-direction:column;gap:1.25rem}.inq-detail-topbar{display:flex;justify-content:space-between;align-items:center}.inq-detail-meta{display:flex;align-items:center;gap:.75rem}.inq-type-badge{font-size:.6875rem;font-weight:700;letter-spacing:.8px;color:#374151;background:#e5e7eb;padding:3px 8px;border-radius:4px;text-transform:uppercase}.inq-detail-date{font-size:.8125rem;color:#9ca3af}.inq-detail-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0;line-height:1.4}.inq-detail-content{font-size:1.0625rem;color:#4b5563;line-height:1.8;margin:0}.inq-support-reply{display:flex;gap:.875rem;background:#fff;border:1px solid #E5E7EB;border-radius:10px;padding:1rem}.inq-support-avatar{width:36px;height:36px;min-width:36px;border-radius:50%;background:#1b4332;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.inq-support-body{display:flex;flex-direction:column;gap:.375rem}.inq-support-name{font-size:.8125rem;font-weight:600;color:#111827}.inq-support-text{font-size:.875rem;color:#4b5563;line-height:1.6;margin:0}.inq-pending-notice{background:#fffbeb;border:1px solid #FDE68A;border-radius:8px;padding:.875rem 1rem;font-size:.875rem;color:#92400e}.inq-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.9375rem}.inq-sidebar{display:flex;flex-direction:column;background:#f9fafb}.inq-stats{display:flex;align-items:center;justify-content:center;gap:2rem;padding:2rem 1.5rem;border-bottom:1px solid #E5E7EB}.inq-stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.inq-stat-num{font-size:2.25rem;font-weight:800;color:#111827;line-height:1}.inq-stat-label{font-size:.625rem;font-weight:700;letter-spacing:1px;color:#9ca3af;text-transform:uppercase}.inq-stat-divider{width:1px;height:36px;background:#e5e7eb}.inq-list-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem .75rem}.inq-list-title{font-size:.875rem;font-weight:700;color:#111827}.inq-list-all{font-size:.75rem;color:#6b7280;cursor:pointer}.inq-list{flex:1;overflow-y:auto;padding:.5rem 1.5rem;display:flex;flex-direction:column;gap:.625rem}.inq-list::-webkit-scrollbar{width:4px}.inq-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.inq-list-item{width:100%;display:flex;flex-direction:column;gap:6px;padding:1rem;background:#fff;border:1px solid #E5E7EB;border-radius:10px;cursor:pointer;text-align:left;transition:all .15s ease}.inq-list-item:hover{border-color:#d1d5db;box-shadow:0 1px 4px #0000000f}.inq-list-item.active{background:#ecfdf5;border-color:#6ee7b7}.inq-list-item-top{display:flex;justify-content:space-between;align-items:center}.inq-dot-status{font-size:.6rem;font-weight:700;letter-spacing:.5px;padding:2px 6px;border-radius:3px}.inq-dot-status.pending{background:#fef3c7;color:#92400e}.inq-dot-status.completed{background:#d1fae5;color:#065f46}.inq-list-item-title{font-size:.9375rem;font-weight:600;color:#111827;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inq-list-item-date{font-size:.75rem;color:#9ca3af}.inq-list-empty{font-size:.875rem;color:#9ca3af;text-align:center;padding:2rem 0}.inq-write-btn{margin:1rem 1.5rem 1.5rem;padding:1.125rem;background:#ffb84d;border:none;border-radius:12px;font-size:1rem;font-weight:700;color:#1a1a1a;cursor:pointer;transition:background .2s}.inq-write-btn:hover{background:#ffa726}.inquiry-container{display:grid;grid-template-columns:1fr 360px;gap:1.25rem}.inquiry-detail-card,.inquiry-history-card{background:#fff;border-radius:14px;padding:1.5rem;border:1px solid #f3f4f6}.inquiry-detail-card{min-height:500px}.inquiry-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.inquiry-detail-title{font-size:1.125rem;font-weight:700;color:#1a1a1a;margin:0}.status-badge{padding:.375rem .875rem;border-radius:6px;font-size:.8125rem;font-weight:600;white-space:nowrap}.status-pending{background:#fef3c7;color:#92400e}.status-completed{background:#d1fae5;color:#065f46}.inquiry-info-section{margin-bottom:1.5rem}.inquiry-subject{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .75rem;line-height:1.4}.inquiry-meta{display:flex;gap:1.5rem}.inquiry-meta-item{display:flex;gap:.5rem;font-size:.875rem}.meta-label{color:#6b7280;font-weight:500}.meta-value{color:#1a1a1a;font-weight:600}.inquiry-content-section,.inquiry-answer-section{margin-bottom:1.5rem}.inquiry-answer-section{background:#fafafa;padding:1.25rem;border-radius:12px;margin-bottom:0}.content-section-label{font-size:.8125rem;font-weight:700;color:#1a1a1a;margin:0 0 .625rem;text-transform:uppercase;letter-spacing:.4px}.content-text{font-size:.9375rem;line-height:1.6;color:#4b5563;margin:0}.answer-text{font-size:.9375rem;line-height:1.6;color:#1a1a1a;margin:0;background:#fff;padding:1rem;border-radius:10px;border:1px solid #e5e7eb}.answer-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.answer-pending svg{margin-bottom:1rem}.pending-message{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.pending-description{font-size:.9375rem;color:#6b7280;margin:0}.inquiry-history-card{max-height:600px;display:flex;flex-direction:column}.inquiry-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.875rem;border-bottom:1px solid #f3f4f6}.inquiry-history-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0}.inquiry-count{font-size:.8125rem;font-weight:600;color:#6b7280;background:#f3f4f6;padding:.25rem .625rem;border-radius:5px}.inquiry-list{display:flex;flex-direction:column;gap:.625rem;overflow-y:auto;max-height:500px;padding-right:.375rem}.inquiry-list::-webkit-scrollbar{width:6px}.inquiry-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.inquiry-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.inquiry-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.inquiry-item{width:100%;display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#fafafa;border:1px solid transparent;border-radius:10px;cursor:pointer;text-align:left;transition:all .2s ease}.inquiry-item:hover{background:#f3f4f6;border-color:#e5e7eb}.inquiry-item.active{background:#fffbea;border-color:#ffe34d;box-shadow:0 2px 8px #ffe34d26}.inquiry-item-header{display:flex;justify-content:space-between;align-items:center}.inquiry-item-date{font-size:.8125rem;color:#6b7280}.inquiry-item-title{font-size:.9375rem;font-weight:600;color:#1a1a1a;margin:0;line-height:1.4}.inquiry-item-type{font-size:.8125rem;color:#6b7280;background:#fff;padding:.25rem .625rem;border-radius:6px;width:fit-content}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-state svg{margin-bottom:1.5rem}.empty-message{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.empty-description{font-size:.9375rem;color:#6b7280;margin:0}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.spinner{width:48px;height:48px;border:4px solid #f3f4f6;border-top-color:#ffe34d;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{font-size:1rem;color:#6b7280;margin:0}.error-state{background:#fef2f2;border:2px solid #fecaca;border-radius:16px;padding:3rem 2rem}.error-message{font-size:1rem;color:#dc2626;margin:0}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:16px;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040;animation:slideUp .25s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #f3f4f6}.modal-title{font-size:1.25rem;font-weight:700;color:#1a1a1a;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border:none;border-radius:7px;cursor:pointer;transition:all .2s ease;color:#6b7280}.modal-close:hover{background:#e5e7eb;color:#1a1a1a}.inquiry-form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.875rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:10px;font-size:.9375rem;font-family:inherit;color:#1a1a1a;background:#fff;transition:all .2s ease;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#ffe34d;box-shadow:0 0 0 3px #ffe34d1a}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%236b7280' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.75rem}.form-textarea{resize:vertical;min-height:120px;line-height:1.5}.char-count{text-align:right;font-size:.75rem;color:#9ca3af;margin-top:.375rem}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #f3f4f6}.btn-cancel,.btn-submit{flex:1;padding:.75rem;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#f3f4f6;color:#6b7280}.btn-cancel:hover{background:#e5e7eb;color:#1a1a1a}.btn-submit{background:linear-gradient(135deg,#ffe34d,#f4d400);color:#1a1a1a;box-shadow:0 3px 10px #ffe34d40}.btn-submit:hover{transform:translateY(-1px);box-shadow:0 5px 15px #ffe34d59}.btn-submit:active{transform:translateY(0)}@media(max-width:1200px){.inquiry-container{grid-template-columns:1fr 350px}}@media(max-width:1024px){.cs-container{grid-template-columns:220px 1fr;gap:1.5rem}.cs-sidebar{padding:1.25rem 1rem}.cs-sidebar-title{font-size:1.25rem}.cs-content-section{padding:1.5rem}.inquiry-container{grid-template-columns:1fr;gap:1.25rem}.inquiry-detail-card{min-height:auto}.inquiry-history-card{max-height:450px}}@media(max-width:768px){.customer-center{padding:1.25rem 0}.cs-container{grid-template-columns:1fr;gap:1.25rem;padding:0 1rem}.cs-sidebar{position:static;max-height:none}.cs-info-box{font-size:.75rem}.cs-content-section{padding:1.25rem}.cs-section-header{flex-direction:column;align-items:flex-start;gap:.875rem}.btn-new-inquiry{width:100%;justify-content:center}.cs-section-title{font-size:1.25rem}.faq-q-text{font-size:.9375rem}.inquiry-subject{font-size:1rem}.inquiry-meta{flex-direction:column;gap:.5rem}.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header{padding:1.125rem 1.25rem}.modal-title{font-size:1.125rem}.inquiry-form{padding:1.25rem}.form-actions{flex-direction:column}}@media(max-width:480px){.cs-sidebar-title{font-size:1.125rem}.cs-menu-item{font-size:.875rem;padding:.75rem 1rem}.cs-section-header{margin-bottom:1.25rem;padding-bottom:.875rem}.cs-section-title{font-size:1.125rem}.btn-new-inquiry{padding:.625rem 1rem;font-size:.875rem}.faq-search-input{padding:.75rem .75rem .75rem 2.5rem}.faq-question{padding:.875rem 1rem}.faq-answer{padding:0 1rem .875rem}.inquiry-detail-card,.inquiry-history-card{padding:1.25rem}.modal-header{padding:1rem}.modal-title{font-size:1rem}.inquiry-form{padding:1rem}.form-label{font-size:.8125rem}.form-input,.form-select,.form-textarea{padding:.625rem .875rem;font-size:.875rem}}.footer{background-color:#fff;border-top:1px solid #e5e7eb;padding:12px 40px;margin-top:auto}.footer-inner{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;column-gap:240px;row-gap:4px;flex-wrap:wrap}.footer-left{display:flex;flex-direction:column;gap:2px}.footer-brand{font-size:14px;font-weight:700;color:#111827}.footer-copy{font-size:12px;color:#6b7280}.footer-disclaimer-row{max-width:1280px;margin:0 auto;padding-bottom:4px;text-align:center}.footer-disclaimer{font-size:12px;color:#9ca3af}.footer-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.footer-right a{font-size:12px;color:#6b7280;text-decoration:none;white-space:nowrap}.footer-right a:hover{color:#111827;text-decoration:underline}.chatbot-float-button{position:fixed;right:1.5rem;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#6fbf8f,#4f8f6f);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 16px #6fbf8f66;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;display:flex;align-items:center;justify-content:center}.chatbot-float-button:hover{transform:scale(1.08) rotate(5deg);box-shadow:0 8px 24px #6fbf8f80;background:linear-gradient(135deg,#4f8f6f,#3a7d5d)}.chatbot-float-button:active{transform:scale(1.05) rotate(5deg)}.chatbot-float-button svg{transition:transform .3s ease;filter:drop-shadow(0 2px 3px rgba(0,0,0,.15))}.chatbot-float-button:hover svg{transform:scale(1.05)}.chatbot-modal{position:fixed;right:1.5rem;width:380px;max-height:550px;background:#fff;border-radius:16px;box-shadow:0 12px 40px #00000026;display:flex;flex-direction:column;z-index:999;overflow:hidden}.chatbot-header{background:linear-gradient(135deg,#6fbf8f,#4f8f6f);color:#fff;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center}.chatbot-header h3{margin:0;font-size:1.1rem;font-weight:600}.chatbot-close-button{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.chatbot-close-button:hover{background:#fff3}.chatbot-messages{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;background:#f8f9fa}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chatbot-messages::-webkit-scrollbar-thumb{background:#6fbf8f;border-radius:3px}.chatbot-messages::-webkit-scrollbar-thumb:hover{background:#4f8f6f}.chatbot-welcome{text-align:center;color:#666;padding:2rem 1rem}.chatbot-welcome p{margin:0;line-height:1.5}.chat-message{max-width:80%;padding:.75rem 1rem;border-radius:12px;word-wrap:break-word;animation:chatSlideIn .3s ease}.chat-message.user{align-self:flex-end;background:linear-gradient(135deg,#6fbf8f,#4f8f6f);color:#fff;border-bottom-right-radius:4px}.chat-message.bot{align-self:flex-start;background:#fff;color:#333;border:1px solid #e0e0e0;border-bottom-left-radius:4px}.chat-message.bot.loading{opacity:.7;font-style:italic}.chat-message.bot.error{background:#fff5f5;border-color:#fc8181;color:#c53030}.chat-message p{margin:0;font-size:.95rem;line-height:1.5}.chat-markdown{font-size:.95rem;line-height:1.6;color:inherit}.chat-markdown p{margin:0 0 .5rem}.chat-markdown p:last-child{margin-bottom:0}.chat-markdown strong{font-weight:700}.chat-markdown em{font-style:italic}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3{font-size:1rem;font-weight:700;margin:.6rem 0 .3rem;line-height:1.4}.chat-markdown h1:first-child,.chat-markdown h2:first-child,.chat-markdown h3:first-child{margin-top:0}.chat-markdown ul,.chat-markdown ol{margin:.3rem 0 .5rem;padding-left:1.2rem}.chat-markdown li{margin:.15rem 0}.chat-markdown hr{border:none;border-top:1px solid rgba(0,0,0,.12);margin:.5rem 0}.chat-markdown a{color:#4f8f6f;word-break:break-all;text-decoration:underline}.chat-markdown code{background:#00000012;padding:.1em .35em;border-radius:4px;font-size:.88rem;font-family:monospace}.chat-markdown blockquote{border-left:3px solid #6FBF8F;margin:.4rem 0;padding:.2rem .75rem;color:#555;font-style:italic}.chatbot-input{display:flex;gap:.5rem;padding:1rem;border-top:1px solid #e0e0e0;background:#fff}.chatbot-input input{flex:1;padding:.75rem 1rem;border:1px solid #ddd;border-radius:24px;font-size:.95rem;outline:none;transition:border-color .2s}.chatbot-input input:focus{border-color:#6fbf8f}.chatbot-input button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#6fbf8f,#4f8f6f);color:#fff;border:none;border-radius:24px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.chatbot-input button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6fbf8f66}.chatbot-input button:active{transform:translateY(0)}@keyframes chatSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.chatbot-modal{right:1rem;left:1rem;width:auto;max-height:450px}.chatbot-float-button{right:1rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#fffaf0;color:#333}html,body,#root{height:100%}
