.sub-page{min-height:100vh;display:flex;flex-direction:column;background-color:#f5f7fa}.sub-visual{position:relative;width:100%;height:280px;background:linear-gradient(120deg,#2c3e50,#3498db);overflow:hidden;margin-bottom:0;box-shadow:0 2px 15px rgba(0,0,0,.1)}.sub-visual:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(/images/sub-visual-bg.jpg) no-repeat 50%;background-size:cover;opacity:.1;z-index:1}.sub-visual-text{position:relative;text-align:center;color:#fff;z-index:2;padding-top:100px}.sub-visual-text h1{font-size:36px;font-weight:700;margin:0;letter-spacing:-.5px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.visual-description{max-width:600px;margin:15px auto 0;font-size:16px;line-height:1.5;opacity:.9;letter-spacing:.5px;text-shadow:0 1px 3px rgba(0,0,0,.2)}.container{flex:1}.max-w-lg{max-width:450px;position:relative;z-index:10;margin:-50px auto 0}.member-tabs{display:flex;justify-content:center;border-bottom:1px solid #e5e7eb;background-color:white;box-shadow:0 2px 5px rgba(0,0,0,.05);border-radius:8px 8px 0 0;overflow:hidden;max-width:600px;margin:0 auto 20px;width:100%}.member-tab,.member-tab-active{padding:.85rem 1.3rem;font-weight:500;text-align:center;transition:all .3s ease;position:relative;cursor:pointer}.member-tab{color:#6b7280}.member-tab:hover{color:#4b5563;background-color:#f9fafb}.member-tab-active{color:#4b5563;font-weight:600;background-color:#f3f4f6}.member-tab-active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:#6b7280}.content-box{background:#fff;border-radius:12px;padding:30px;box-shadow:0 5px 25px rgba(0,0,0,.05);transition:all .3s ease}.content-title-wrap{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #eef2f7}.content-title{font-size:24px;font-weight:700;color:#2c3e50;margin:0 0 5px}.content-path{font-size:13px;color:#7a8599}.content-path a{color:#3498db;text-decoration:none;transition:color .2s ease}.content-path a:hover{color:#2980b9}.content-message{text-align:center;margin-bottom:25px;color:#4a5568;line-height:1.6;font-size:15px;background:#f8faff;padding:15px;border-radius:8px;border-left:3px solid #3498db}.join-form,.login-form,.password-form{width:100%}.form-group{margin-bottom:20px;position:relative}.form-label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:14px}.form-input{width:100%;padding:12px 15px;border:1px solid #dfe4ea;border-radius:8px;font-size:15px;color:#2c3e50;transition:all .3s ease;background-color:#fff}.form-input:focus{border-color:#3498db;box-shadow:0 0 0 2px rgba(52,152,219,.2);outline:none}.form-input-error{border-color:#e74c3c}.form-input-error:focus{box-shadow:0 0 0 2px rgba(231,76,60,.2)}.error-text{color:#e74c3c;font-size:12px;margin-top:5px;font-weight:500}.required{color:#e74c3c;margin-left:2px}.submit-button{width:100%;padding:14px;background:#3498db;color:white;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:15px;transition:all .3s ease;position:relative;overflow:hidden}.submit-button:hover{background:#2980b9;transform:translateY(-1px);box-shadow:0 4px 12px rgba(52,152,219,.2)}.submit-button:active{transform:translateY(0)}.submit-button:disabled{background:#95a5a6;cursor:not-allowed}.form-actions{margin-top:25px}.login-footer{text-align:center;margin-top:20px;padding-top:15px;border-top:1px solid #eee;color:#7a8599;font-size:14px}.text-link{color:#3498db;text-decoration:none;font-weight:600;transition:all .2s ease}.text-link:hover{color:#2980b9;text-decoration:underline}.error-box{background-color:#fff2f2;border-left:3px solid #e74c3c;color:#e74c3c;padding:15px;margin-bottom:20px;border-radius:8px;font-size:14px;font-weight:500}.success-box{text-align:center;padding:35px 20px;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success-icon{width:70px;height:70px;background-color:#edfbf6;border-radius:50%;margin:0 auto 20px;position:relative;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.success-icon:after,.success-icon:before{content:"";position:absolute;background-color:#2ecc71}.success-icon:before{width:5px;height:15px;left:24px;top:35px;transform:rotate(45deg)}.success-icon:after{width:25px;height:5px;left:25px;top:35px;transform:rotate(135deg)}.success-title{font-size:20px;font-weight:700;color:#2c3e50;margin-bottom:10px}.success-message{color:#7a8599;font-size:15px;line-height:1.5;margin-bottom:25px}.label-emoji{margin-right:5px;font-size:16px}.password-options{text-align:right;margin-top:8px}.forgot-password{font-size:13px;color:#7a8599;text-decoration:none;transition:all .2s ease}.forgot-password:hover{color:#3498db;text-decoration:underline}@media (max-width:767px){.sub-visual{height:220px}.sub-visual-text{padding-top:80px}.sub-visual-text h1{font-size:30px}.visual-description{font-size:14px;margin:10px auto 0;padding:0 20px}.max-w-lg{margin-top:-30px}.content-box{padding:25px 20px}.member-tab,.member-tab-active{font-size:13px;padding:15px 10px}.content-title{font-size:20px}.form-label{font-size:13px}.form-input{padding:10px 12px;font-size:14px}.submit-button{padding:12px;font-size:14px}}@media (max-width:480px){.sub-visual{height:180px}.sub-visual-text{padding-top:60px}.sub-visual-text h1{font-size:24px}.visual-description{font-size:13px}.member-tabs{flex-direction:column}.member-tab,.member-tab-active{border-bottom:1px solid #eee;padding:12px}.member-tab:last-child{border-bottom:none}.content-title-wrap{text-align:center}.content-path{display:none}}.member-page{min-height:100vh;background-color:#f5f5f5;position:relative}.member-visual{background:linear-gradient(90deg,#2c3e50,#4ca1af);color:white;padding:80px 20px;text-align:center;position:relative}.member-visual:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/images/common/pattern.png);opacity:.1;z-index:1}.member-visual-text{position:relative;z-index:2;max-width:1200px;margin:0 auto}.member-visual-text h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.member-visual-text p{font-size:1.1rem;font-weight:300;max-width:800px;margin:0 auto}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.member-content{padding:4rem}.member-content-header{margin-bottom:2rem}.member-content-title{font-size:1.75rem;font-weight:700;text-align:center;color:#1f2937;margin-bottom:.5rem}.member-content .max-w-lg,.member-content .max-w-md{max-width:600px;margin:0 auto;width:100%}.member-content .bg-white{padding:20px 25px}.member-content input{font-size:14px!important;padding-top:.5rem!important;padding-bottom:.5rem!important;border-radius:.25rem!important}.member-content input:focus{outline:none!important;box-shadow:0 0 0 1px #6b7280!important;border-color:#6b7280!important}.member-content label{font-size:14px!important;margin-bottom:4px!important}.member-content button{font-size:14px!important;padding-top:.5rem!important;padding-bottom:.5rem!important;background-color:#6b7280!important;border-radius:.25rem!important}.member-content button:hover{background-color:#4b5563!important}.member-content .space-y-5{margin-top:0!important}.member-content .space-y-5>div{margin-bottom:.75rem!important}.member-content form.space-y-5>div{margin-top:0!important;margin-bottom:12px!important}@media (max-width:768px){.member-visual{padding:60px 20px}.member-visual-text h1{font-size:2rem}.member-visual-text p{font-size:1rem}.member-tabs{flex-direction:column}.member-tab,.member-tab-active{width:100%;padding:.75rem}.member-tab-active:after{width:100%}}