:root{--bg: #fbf6f0;--surface: #ffffff;--border: #e8dacb;--text: #4a3426;--text-muted: #8a6e5a;--text-dim: #a08975;--accent: #ae8260;--accent-dark: #8c6243;--chip: #f3e9dd;--error: #c2452d;--placeholder: #bba593;--shadow-card: 0 10px 30px rgba(74, 52, 38, .06);--shadow-btn: 0 8px 20px rgba(174, 130, 96, .3);--focus-ring: 0 0 0 4px rgba(174, 130, 96, .18)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Nunito,sans-serif;-webkit-text-size-adjust:100%}a{color:var(--accent-dark)}a:hover{color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.text-input{width:100%;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:14px;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s;min-height:48px;font-size:16px;padding:10px 14px}.text-input:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.text-input.has-error{border-color:var(--error)}.field-label{font-size:14px;font-weight:600;color:var(--text)}.field-label .star{color:var(--accent-dark)}.field-error{margin-top:2px;font-size:13px;font-weight:600;color:var(--error)}.field-hint{margin-top:6px;font-size:13px;color:var(--text-muted)}.btn-primary{display:flex;align-items:center;gap:8px;background:var(--accent);color:#fff;border:none;border-radius:999px;cursor:pointer;font-family:inherit;box-shadow:var(--shadow-btn);transition:background .15s;min-height:52px;padding:0 18px;font-size:16px;font-weight:700}.btn-primary:hover:not(:disabled){background:var(--accent-dark)}.btn-outline{display:flex;align-items:center;gap:8px;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:999px;cursor:pointer;font-family:inherit;font-weight:700;transition:all .15s;min-height:48px;padding:0 18px;font-size:16px}.btn-outline:hover:not(:disabled){border-color:var(--accent);background:var(--bg)}.card{background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-card);padding:clamp(18px,3vw,28px)}
