.cp-auth{--cp-bg:#fcf7f0;--cp-ink:#374375;--cp-ink-muted:#374375a8;--cp-hairline:#3743751f;--cp-sage:#679267;--cp-sage-dark:#5c845c;--cp-peach:#c67b5c;--cp-lavender:#8fa6a0;background-color:var(--cp-bg);color:var(--cp-ink)}body:has(.cp-auth){background-color:#fcf7f0}.cp-aurora{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.cp-aurora span{will-change:transform;border-radius:50%;position:absolute}.cp-aurora span:first-child{background:radial-gradient(circle,#67926738 0%,#67926700 65%);width:max(58vw,460px);height:max(58vw,460px);animation:26s ease-in-out infinite alternate cp-drift-a;top:-22%;left:-14%}.cp-aurora span:nth-child(2){background:radial-gradient(circle,#c67b5c2e 0%,#c67b5c00 65%);width:max(55vw,420px);height:max(55vw,420px);animation:32s ease-in-out infinite alternate cp-drift-b;top:4%;right:-20%}.cp-aurora span:nth-child(3){background:radial-gradient(circle,#8fa6a033 0%,#8fa6a000 65%);width:max(62vw,500px);height:max(62vw,500px);animation:38s ease-in-out infinite alternate cp-drift-c;bottom:-30%;left:20%}@keyframes cp-drift-a{to{transform:translate(7vw,6vh)scale(1.1)}}@keyframes cp-drift-b{to{transform:translate(-6vw,10vh)scale(.95)}}@keyframes cp-drift-c{to{transform:translate(6vw,-8vh)scale(1.08)}}.cp-display{letter-spacing:-.025em;font-size:clamp(2rem,4.2vw,3.1rem);font-weight:700;line-height:1.06}.locale-th .cp-display{letter-spacing:0;line-height:1.24}.cp-muted{color:var(--cp-ink-muted)}.cp-card,.cp-pill,.cp-panel{-webkit-backdrop-filter:blur(14px);background:#ffffff80;border:none;position:relative;box-shadow:inset 0 1px 1px #ffffffb3,0 0 0 1px #3743750f,0 12px 40px #3743751a}.cp-card:before,.cp-pill:before,.cp-panel:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(#fffffff2 0%,#fff6 20%,#ffffff0d 40% 60%,#fff6 80%,#fffffff2 100%);padding:1.4px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cp-card{background:#ffffffb8;border-radius:28px;box-shadow:inset 0 1px 1px #ffffffe6,0 0 0 1px #37437512,0 24px 60px #37437524}.cp-panel{border-radius:22px}.cp-pill{border-radius:9999px}.cp-tile{border-radius:14px;flex-shrink:0;place-items:center;width:2.5rem;height:2.5rem;display:grid}.cp-tile-sage{color:var(--cp-sage-dark);background:#67926724}.cp-tile-peach{color:#a75f42;background:#c67b5c26}.cp-tile-lavender{color:#5f7a74;background:#8fa6a033}.cp-tile-ink{color:var(--cp-ink);background:#3743751a}.cp-field{width:100%;height:3.25rem;color:var(--cp-ink);background:#ffffffbf;border:1px solid #37437524;border-radius:16px;padding:0 1rem;font-size:1rem;transition:background-color .18s,border-color .18s,box-shadow .18s}.cp-field::placeholder{color:#37437559}.cp-field:focus{background:#fff;border-color:#679267b3;outline:none;box-shadow:0 0 0 4px #67926729}.cp-field:disabled{opacity:.6}.cp-otp{grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem;display:grid}.cp-otp .cp-field{text-align:center;font-variant-numeric:tabular-nums;min-width:0;height:3.5rem;padding:0;font-size:1.375rem;font-weight:600}.cp-btn{border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;font-weight:600;transition:background-color .2s,color .2s,border-color .2s,transform .15s;display:inline-flex}.cp-btn:disabled{opacity:.55;cursor:not-allowed}.cp-btn:not(:disabled):active{transform:scale(.98)}.cp-btn-primary{background-color:var(--cp-sage);color:#fff;box-shadow:inset 0 1px 1px #ffffff4d,0 10px 24px #67926747}.cp-btn-primary:not(:disabled):hover{background-color:var(--cp-sage-dark)}.cp-btn-outline{color:var(--cp-ink);background:#ffffff80;border:1px solid #37437529}.cp-btn-outline:not(:disabled):hover{background:#fffc;border-color:#3743754d}.cp-btn-ghost{color:var(--cp-ink-muted)}.cp-btn-ghost:not(:disabled):hover{color:var(--cp-ink);background:#fff9}.cp-link{color:var(--cp-sage-dark);text-underline-offset:3px;font-weight:600}.cp-link:hover{text-decoration:underline}.cp-alert{border-radius:16px;align-items:flex-start;gap:.5rem;padding:.75rem .9rem;font-size:.875rem;line-height:1.45;display:flex}.cp-alert-error{color:#93372e;background:#b8473c17;border:1px solid #b8473c38}.cp-alert-success{color:#3f6440;background:#6792671f;border:1px solid #6792674d}.cp-step-num{border:1px solid var(--cp-hairline);width:1.75rem;height:1.75rem;color:var(--cp-sage-dark);font-variant-numeric:tabular-nums;background:#ffffffd9;border-radius:9999px;flex-shrink:0;place-items:center;font-size:.8125rem;font-weight:700;display:grid}.cp-ticks{background-image:repeating-linear-gradient(90deg, var(--cp-hairline) 0 1px, transparent 1px 14px);height:10px}.cp-spinner{border-style:solid;border-color:#0000 currentColor currentColor;border-radius:9999px;animation:.7s linear infinite cp-spin}@keyframes cp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.cp-auth *,.cp-auth :before,.cp-auth :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.cp-auth .cp-spinner{animation-duration:1.4s!important;animation-iteration-count:infinite!important}}
