:root{--pe-bg:#fafaff;--pe-surface:#f1effe;--pe-card:#fff;--pe-dark:#e8e3ff;--pe-border:#e0d9f7;--pe-black:#000;--pe-teal:#7c3aed;--pe-teal-light:#f3eeff;--pe-gold:#f97316;--pe-white:#fff;--pe-muted:#6b6b8a;--pe-text:#1e1635;--pe-green:#059669;--pe-red:#ef4444}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--pe-bg);height:100%;color:var(--pe-text);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6}a{color:var(--pe-teal);text-decoration:none}a:hover{text-decoration:underline}input,select{background:var(--pe-surface);border:1px solid var(--pe-border);width:100%;color:var(--pe-text);border-radius:8px;outline:none;padding:12px 16px;font-family:inherit;font-size:15px;transition:border-color .15s}input:focus,select:focus{border-color:var(--pe-teal)}input::placeholder{color:var(--pe-muted)}select option{background:var(--pe-card);color:var(--pe-text)}button{cursor:pointer;border:none;border-radius:8px;font-family:inherit;font-weight:600;transition:opacity .15s,transform .1s}button:hover:not(:disabled){opacity:.82;transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:var(--pe-teal);color:#fff;letter-spacing:.02em;padding:13px 28px;font-size:15px;font-weight:700}.btn-gold{background:var(--pe-gold);color:#fff;padding:13px 28px;font-size:15px;font-weight:700}.btn-outline{border:1.5px solid var(--pe-teal);color:var(--pe-teal);background:0 0;padding:12px 28px;font-size:15px}.btn-ghost{color:var(--pe-muted);background:0 0;padding:8px 14px;font-size:13px;font-weight:500}.btn-ghost:hover:not(:disabled){color:var(--pe-text);background:var(--pe-surface)}.field{flex-direction:column;gap:6px;display:flex}.field label{letter-spacing:.08em;text-transform:uppercase;color:var(--pe-muted);font-size:12px;font-weight:600}.error-msg{border:1px solid var(--pe-red);color:var(--pe-red);background:#c0392b14;border-radius:8px;padding:10px 14px;font-size:13px}.success-msg{border:1px solid var(--pe-green);color:var(--pe-green);background:#1a8a4a14;border-radius:8px;padding:10px 14px;font-size:13px}.card{background:var(--pe-card);border:1px solid var(--pe-border);border-radius:12px;padding:24px;box-shadow:0 1px 4px #0000000f}
