:root{--navy:#1b365d;--navy-deep:#14294a;--navy-soft:#24466f;--red:#d42027;--red-deep:#a31c22;--ink:#14213d;--muted:#5b6472;--line:#e6e8ec;--ground:#f4f5f7;--paper:#fff;--ok:#0f6e56;--ok-bg:#e1f5ee;--warn:#b45309;--warn-bg:#faeeda;--danger-bg:#fdecec;--radius:12px;--font:"Kantumruy Pro","Khmer OS","Khmer OS System",system-ui,sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*,:after,:before{box-sizing:border-box}#__nuxt,body,html{height:100%}body{background:var(--ground);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;margin:0;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}a{color:var(--navy);text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:16px}.btn{align-items:center;border:1.5px solid transparent;border-radius:10px;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;min-height:44px;padding:0 18px;white-space:nowrap}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-deep)}.btn-secondary{background:var(--paper);border-color:var(--navy);color:var(--navy)}.btn-ghost{background:transparent;color:var(--navy)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #7fa3d8;outline-offset:2px}.field{display:flex;flex-direction:column;gap:6px}.field label{color:var(--muted);font-size:13px;font-weight:600}.field input{background:var(--paper);border:1.5px solid var(--line);border-radius:10px;color:var(--ink);min-height:48px;padding:0 14px}.field input:focus{border-color:var(--navy);outline:none}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.muted{color:var(--muted)}.error{background:var(--danger-bg);border-radius:8px;color:var(--red-deep);font-size:14px;padding:10px 12px}h1,h2,h3{line-height:1.25;margin:0}h1{font-size:22px}h1,h2{font-weight:700}h2{font-size:17px}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}
