.authPageContainer,.authPageContainer *,.authPageContainer :after,.authPageContainer :before{box-sizing:border-box}.authPageContainer{min-height:100vh;position:relative;background-color:#F0F7F4;background-image:linear-gradient(90deg,rgba(19,135,92,.05) 1px,transparent 0),linear-gradient(180deg,rgba(19,135,92,.05) 1px,transparent 0);background-size:32px 32px;display:flex;flex-direction:column;padding:24px 20px 40px;font-family:var(--font-sans),"DM Sans",system-ui,sans-serif}.authTopBar{max-width:1140px;width:100%;margin:0 auto 16px}.authBackLink{display:inline-flex;align-items:center;gap:8px;color:#08764C;font-size:13.5px;font-weight:600;text-decoration:none;padding:6px 12px;border-radius:9999px;background:rgba(255,255,255,.7);border:1px solid rgba(8,118,76,.15);transition:all .15s ease}.authBackLink:hover{background:#FFFFFF;color:#065E3D;transform:translateX(-2px);box-shadow:0 2px 8px rgba(8,118,76,.1)}.authCardWrapper{max-width:1140px;width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);grid-gap:40px;gap:40px;align-items:stretch}@media (min-width:961px){.authPageContainer{display:grid;grid-template-rows:minmax(0,1fr) auto auto minmax(0,1fr)}.authTopBar{grid-row:2;margin:0 auto 16px}.authCardWrapper{grid-row:3;margin:0 auto}}.authBrandShowcase{background-color:#F7FBF8;background-image:linear-gradient(90deg,rgba(255,255,255,.78),rgba(255,255,255,.56)),url(/images/sunrise-durian-valley.png);background-position:0;background-repeat:no-repeat;background-size:cover;border:1px solid #d7e8df;border-radius:28px;padding:36px 32px 28px;box-shadow:0 16px 40px rgba(8,63,48,.06);display:flex;flex-direction:column;min-width:0}.showcaseTopBrand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.brandTitle{font-size:18px;font-weight:800;color:#083F30;letter-spacing:-.01em;line-height:1.2}.brandTagline{font-size:10px;font-weight:700;color:#13875C;letter-spacing:.1em;text-transform:uppercase}.showcaseHeading{margin-bottom:12px}.showcaseHeadingPrimary{font-size:clamp(26px,3.2vw,34px);font-weight:800;color:#083F30;letter-spacing:-.03em;line-height:1.15;font-family:var(--font-sans),"DM Sans",sans-serif}.showcaseHeadingAccent{font-size:clamp(24px,3vw,30px);font-weight:500;font-style:italic;color:#13875C;letter-spacing:-.03em;line-height:1.2;font-family:var(--font-serif),"Noto Serif",Georgia,serif;margin-top:4px}.showcaseDescription{font-size:13.5px;line-height:1.6;color:#D92D20;margin:0 0 24px}.showcaseBenefitsList{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.benefitItem{display:flex;align-items:flex-start;gap:12px}.benefitIcon{width:28px;height:28px;border-radius:50%;background:#E8F5EE;color:#08764C;display:grid;place-items:center;flex-shrink:0;margin-top:2px}.benefitTitle{font-size:13px;font-weight:700;color:#083F30;margin-bottom:2px}.benefitText{font-size:12px;color:#5D796C;line-height:1.45}.showcaseMapVisual{position:relative;border-radius:20px;overflow:hidden;margin-top:auto;border:1px solid rgba(8,118,76,.2);background:#083F30;box-shadow:0 10px 24px rgba(8,63,48,.12)}.mapOverlayGradient,.mapVisualBg{position:absolute;inset:0}.mapOverlayGradient{background:linear-gradient(135deg,rgba(8,63,48,.9),rgba(6,45,34,.8))}.mapVisualContent{position:relative;z-index:2;padding:16px 18px 12px}.mapCodeBadge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);padding:4px 10px;border-radius:9999px;font-size:11px;color:#FFFFFF;margin-bottom:12px}.liveDot{width:6px;height:6px;border-radius:50%;background:#34D399;box-shadow:0 0 8px #34D399}.mapChipsGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-bottom:12px}.attributeChip{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:6px 10px;display:flex;flex-direction:column;gap:2px}.chipLabel{font-size:10px;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.04em}.chipVal{font-size:12px;font-weight:700;color:#FFFFFF}.chipStatus{background:rgba(16,185,129,.15);border-color:rgba(16,185,129,.35)}.chipValStatus{font-size:12px;font-weight:700;color:#34D399}.fruitBadgeCorner{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:6px 10px;width:-moz-fit-content;width:fit-content}.fruitName{font-size:11.5px;font-weight:700;color:#FFFFFF}.fruitSub{font-size:9.5px;color:#A7F3D0}.mapNoteCaption{position:relative;z-index:2;font-size:10px;color:rgba(255,255,255,.5);padding:0 18px 10px;font-style:italic}.authFormCard{background:#FFFFFF;border:1px solid #d7e8df;border-radius:28px;padding:36px 32px;box-shadow:0 16px 40px rgba(8,63,48,.06);display:flex;flex-direction:column;min-width:0}.formLogoHeader{display:flex;justify-content:center;margin-bottom:20px}.modeSwitchPill{display:flex;background:#F0F7F4;border:1px solid #d7e8df;padding:3px;border-radius:9999px;margin-bottom:20px}.modeTabBtn{flex:1 1;padding:8px 16px;border-radius:9999px;border:none;background:transparent;font-size:13px;font-weight:600;color:#52736A;cursor:pointer;transition:all .2s ease}.modeTabBtn.activeTab{background:#08764C;color:#FFFFFF;box-shadow:0 2px 8px rgba(8,118,76,.25)}.formHeader{width:100%;text-align:center;margin-bottom:24px}.authFormCard .formHeader .formSubtitle,.authFormCard .formHeader .formTitle{width:100%;text-align:center!important}.authFormCard .formHeader .formTitle{display:block!important}.formTitle{font-size:24px;font-weight:800;color:#083F30;margin:0 0 6px;letter-spacing:-.02em}.formSubtitle{font-size:13.5px;color:#52736A;margin:0}.feedbackAlert{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;font-size:13px;line-height:1.45;margin-bottom:18px}.errorAlert{background:#FEF2F2;color:#DC2626;border:1px solid #fca5a5}.successAlert{background:#ECFDF5;color:#065F46;border:1px solid #a7f3d0}.authMainForm{display:flex;flex-direction:column;gap:16px}@media (min-width:961px){.authFormCard .authMainForm:not(.registerMainForm){width:90%;margin-inline:auto}.authFormCard .registerMainForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:16px;column-gap:16px;grid-row-gap:16px;row-gap:16px}.authFormCard .registerMainForm .formFooterSwitch,.authFormCard .registerMainForm .registerNoticeBox,.authFormCard .registerMainForm .registerRoleField,.authFormCard .registerMainForm .submitBtn{grid-column:1/-1}}.formFieldGroup{display:flex;flex-direction:column;gap:6px}.fieldLabelRow{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%}.fieldLabel{font-size:12.5px;font-weight:700;color:#083F30}.forgotLinkBtn{background:transparent;border:none;color:#08764C;font-size:12px;font-weight:600;cursor:pointer;padding:0;white-space:nowrap;flex-shrink:0}.forgotLinkBtn:hover{text-decoration:underline}.captchaField{display:flex;flex-direction:column;gap:6px}.captchaHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.captchaRefreshBtn{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#08764C;font:inherit;font-size:11.5px;font-weight:700;cursor:pointer}.captchaRefreshBtn:hover{text-decoration:underline}.captchaControls{display:flex;align-items:center;gap:10px}.captchaImage{width:126px;height:44px;flex:0 0 126px;border:1.5px solid #d7e8df;border-radius:10px;background:#F5FAF7;object-fit:cover}.captchaLoading{display:grid;place-items:center;color:#6B8A7D;font-size:10.5px;font-weight:600}.authFormCard .captchaInput{flex:1 1;min-width:0;padding-left:14px!important}.inputWrapper{position:relative;display:flex;align-items:center}.authFormCard .inputIcon{position:absolute;z-index:1;left:14px;color:#8CA69B;pointer-events:none}.authFormCard .formInput{width:100%;height:44px;padding:0 40px 0 46px!important;border:1.5px solid #d7e8df;border-radius:10px;font-size:13.5px;color:#173D30;background:#FFFFFF;transition:border-color .15s ease,box-shadow .15s ease;outline:none;font-family:inherit}.authFormCard .formSelect{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;color:#36574A;cursor:pointer}.authFormCard .authMainForm select.formSelect{padding-left:14px!important;padding-right:44px!important}.formInput.noIcon{padding-left:14px}.formInput:focus{border-color:#08764C;box-shadow:0 0 0 3px rgba(8,118,76,.12)}.formInput::placeholder{color:#9CA3AF;font-size:13px}.passwordToggleBtn{position:absolute;right:10px;background:transparent;border:none;color:#6B7280;cursor:pointer;padding:6px;display:grid;place-items:center;border-radius:4px}.passwordToggleBtn:hover{color:#083F30}.fieldHelpText{font-size:11px;color:#6B7280;margin-top:2px}.formOptionsRow{display:flex;justify-content:space-between;align-items:center}.authFormCard .checkboxLabel{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;font-size:12.5px;color:#4A6B5D;cursor:pointer}.authFormCard .checkboxLabel input{accent-color:#08764C;width:15px;height:15px;margin:0;cursor:pointer;flex:0 0 15px}.authFormCard .checkboxLabel span{white-space:nowrap}.submitBtn{width:100%;height:46px;border-radius:10px;border:none;background:#08764C;color:#FFFFFF;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 14px rgba(8,118,76,.28);transition:all .2s ease;margin-top:4px}.submitBtn:hover:not(:disabled){background:#065E3D;transform:translateY(-1px);box-shadow:0 6px 18px rgba(8,118,76,.35)}.submitBtn:disabled{opacity:.7;cursor:not-allowed}.loadingFlex{display:inline-flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.authFormCard .registerNoticeBox{display:flex;align-items:center;gap:8px;padding:0 2px;font-size:11.5px;color:#4A6B5D;line-height:1.4}.authFormCard .registerNoticeBox>svg{width:1em!important;height:1em!important;flex:0 0 1em}.authFormCard .registerNoticeText{color:#D92D20!important}.presetDemoBox{background:#F7FAF8;border:1px dashed #c3dcce;border-radius:10px;padding:10px 12px;margin-top:4px}.presetHeader{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#08764C;margin-bottom:8px}.presetChipsRow{display:flex;flex-wrap:wrap;gap:6px}.presetChip{background:#FFFFFF;border:1px solid #d7e8df;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;color:#083F30;cursor:pointer;transition:all .15s ease}.presetChip:hover{background:#E8F5EE;border-color:#08764C;color:#08764C}.authFormCard .formFooterSwitch{text-align:center;font-size:13px!important;color:#6B7280;margin-top:6px}.authFormCard .formFooterSwitch .switchModeTextBtn,.authFormCard .formFooterSwitch>span{font-size:13px!important;line-height:1.4!important}.authFormCard .switchModeTextBtn{background:transparent;border:none;color:#08764C;font:inherit!important;font-weight:700!important;cursor:pointer;padding:0;text-decoration:underline}.switchModeTextBtn:hover{color:#065E3D}.modalBackdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modalCard{background:#FFFFFF;border-radius:20px;width:100%;max-width:440px;box-shadow:0 20px 48px rgba(0,0,0,.2);overflow:hidden;animation:modalAppear .2s ease-out}@keyframes modalAppear{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modalHeader{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.modalTitle{font-size:16px;font-weight:800;color:#083F30;margin:0}.modalCloseBtn{background:transparent;border:none;color:#6B7280;cursor:pointer;padding:4px;display:grid;place-items:center;border-radius:6px}.modalCloseBtn:hover{background:#F3F4F6;color:#1F2937}.modalBody{padding:20px}.modalCancelBtn{background:#F3F4F6;border:1px solid #e5e7eb;border-radius:8px;padding:10px 18px;font-size:13.5px;font-weight:600;color:#4B5563;cursor:pointer}.modalCancelBtn:hover{background:#E5E7EB}.forgotSuccessIcon{width:56px;height:56px;border-radius:50%;background:#ECFDF5;display:grid;place-items:center;margin-bottom:12px}@media (max-width:960px){.authCardWrapper{grid-template-columns:minmax(0,1fr);max-width:500px;width:100%;gap:20px}.authBrandShowcase{order:2}.authFormCard{order:1}}@media (max-width:640px){.authPageContainer{padding:14px 12px 28px;overflow-x:hidden}.authTopBar{margin-bottom:12px}.authBrandShowcase{padding:22px 18px;border-radius:20px}.authFormCard{padding:26px 18px 22px;border-radius:20px}.showcaseHeadingPrimary{font-size:23px}.showcaseHeadingAccent{font-size:21px}.showcaseMapVisual{display:none}.showcaseBenefitsList{margin-bottom:8px;gap:10px}.presetChipsRow{gap:5px}.presetChip{padding:3px 8px;font-size:10.5px}}