:root{--bg:#090b10;--panel:#11151d;--panel-2:#171c26;--line:#283040;--text:#f7f8fb;--muted:#949fb2;--accent:#ff5b35;--accent-2:#ffba3a;--good:#39d98a;--warn:#ffc857;--bad:#ff647c;--info:#62a8ff;--radius:20px;--shadow:0 20px 60px rgba(0,0,0,.34);font-family:Inter,"Noto Sans Thai",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 90% -10%,rgba(255,91,53,.14),transparent 35%),radial-gradient(circle at -10% 90%,rgba(98,168,255,.09),transparent 32%),var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,p{margin-top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.eyebrow{margin:0 0 8px;color:var(--accent-2);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.button{min-height:46px;border:1px solid transparent;border-radius:14px;padding:0 18px;font-weight:800;color:#111;background:linear-gradient(135deg,var(--accent-2),var(--accent));box-shadow:0 10px 25px rgba(255,91,53,.18);transition:transform .16s,border-color .16s,background .16s}.button:hover{transform:translateY(-1px)}.button:focus-visible,.icon-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(98,168,255,.45);outline-offset:2px}.button.secondary{color:var(--text);background:var(--panel-2);border-color:var(--line);box-shadow:none}.button.danger{color:#fff;background:#481e29;border-color:#7e3042;box-shadow:none}.button.small{min-height:38px;padding:0 13px;border-radius:11px;font-size:.84rem}.icon-button{width:44px;height:44px;border:1px solid var(--line);border-radius:13px;color:var(--text);background:var(--panel);font-size:1.15rem}.field{display:grid;gap:8px}.field label{font-size:.84rem;font-weight:750;color:#c8ced9}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 14px;color:var(--text);background:#0c1017}.field textarea{min-height:110px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#657085}.badge{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:3px 10px;border-radius:999px;font-size:.76rem;font-weight:800;background:#252c39;color:#cfd5df}.badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge.good{color:var(--good);background:rgba(57,217,138,.1)}.badge.warn{color:var(--warn);background:rgba(255,200,87,.1)}.badge.info{color:var(--info);background:rgba(98,168,255,.1)}.badge.bad{color:var(--bad);background:rgba(255,100,124,.1)}.empty{padding:42px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius)}.toast-region{position:fixed;right:20px;bottom:20px;z-index:100;display:grid;gap:10px;max-width:min(390px,calc(100vw - 32px))}.toast{padding:14px 16px;border:1px solid var(--line);border-left:4px solid var(--info);border-radius:14px;background:#171c26;box-shadow:var(--shadow)}.toast.error{border-left-color:var(--bad)}
