@font-face{font-family:Kanit;src:url('/fonts/kanit/kanit-300.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Kanit;src:url('/fonts/kanit/kanit-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Kanit;src:url('/fonts/kanit/kanit-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Kanit;src:url('/fonts/kanit/kanit-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Kanit;src:url('/fonts/kanit/kanit-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{font-family:Kanit,sans-serif;font-synthesis:none}body,input,select,textarea,button,table,pre,code{font-family:Kanit,sans-serif!important}
.rk-brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:inherit;letter-spacing:0}
.rk-mark{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 60px;width:60px;height:52px;isolation:isolate;overflow:visible;border:0;background:none;box-shadow:none;border-radius:0;animation:rk-arrive .65s cubic-bezier(.2,.7,.3,1) both;transition:transform .25s,filter .25s}
.rk-mark>img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 5px #0c2c2418)}
.rk-mark::before{content:none}
.rk-mark::after{content:none}
.rk-wordmark{display:flex;flex-direction:column;gap:4px}.rk-wordmark strong{font-size:18px;letter-spacing:2px;font-weight:600;line-height:1.2}.rk-wordmark small{font-size:8px;letter-spacing:1.8px;font-weight:400;opacity:.65}
.rk-brand:hover .rk-mark{transform:translateY(-2px);filter:drop-shadow(0 4px 8px #d2ad6326)}
:focus-visible{outline:3px solid #c29447;outline-offset:3px}
@keyframes rk-shine{0%,68%{background-position:130% 0}88%,100%{background-position:-30% 0}}
@keyframes rk-arrive{from{opacity:0;transform:translateY(5px) scale(.94)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

:root{--rk-green:#214f45;--rk-green-deep:#102e29;--rk-gold:#d7b370;--rk-gold-dark:#8b6c36;--rk-surface:#f4f7f5;--rk-soft-green:#edf3ef;--rk-soft-gold:#f8f2e6;--rk-border:#dce5df;--rk-muted:#687e74}.rk-wordmark{color:var(--rk-green)}aside .rk-wordmark{color:#fff}

/* Account recovery dialog */
.login-forgot{display:block;margin:18px auto 0;border:0;background:transparent;color:var(--primary,#184f73);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:8px}
.password-help{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #dbe5ed;border-radius:24px;padding:28px;background:#fff;color:#24364b;box-shadow:0 24px 80px #142c4a40;text-align:left}
.password-help::backdrop{background:#12283e80;backdrop-filter:blur(5px)}
.password-help h2{margin:0 0 16px;font-size:24px}.password-help p{line-height:1.7;margin:0 0 16px}.password-help form{margin-top:24px}.password-help .btn{width:100%}
