:root{--color-plum: #42314c;--color-blue: #399ddf;--color-heading-blue: #409fe4;--color-blue-dark: #326f8d;--color-blue-light: #8fc4e8;--accent-pale: #eaf4fb;--page-bg: #fbfcf0;--surface-soft: #f6f5f5;--surface: #ffffff;--text: #2c2c2c;--text-muted: #6e6676;--border: #e9e4da;--input-border: #8a7d91;--success: #2c6e49;--error: #b3261e;--radius: 16px;--radius-sm: 12px;--shadow-soft: 0 8px 24px rgba(66, 49, 76, .1);--shadow-card: 0 4px 16px rgba(66, 49, 76, .08);--font-title: "Ubuntu", "Segoe UI", sans-serif;--font-body: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:var(--page-bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{font-family:var(--font-title);color:var(--color-plum);margin:0}a{color:var(--color-blue-dark);text-decoration:none}button{font-family:var(--font-body);cursor:pointer}input,textarea,select{font-family:var(--font-body);font-size:16px;color:var(--text)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--color-blue-dark);color:var(--surface);border:none;border-radius:var(--radius);padding:14px 20px;font-size:16px;font-weight:700;transition:background .2s ease,transform .1s ease}.btn-primary:hover:not(:disabled){background:var(--color-blue)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:12px 18px;color:var(--color-plum);font-weight:700}.btn-ghost:hover{background:var(--accent-pale)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:20px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-weight:700;color:var(--color-plum);font-size:14px}.field input,.field textarea{border:1px solid var(--input-border);border-radius:var(--radius-sm);padding:12px 14px;background:var(--surface);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field textarea:focus{border-color:var(--color-blue-dark);box-shadow:0 0 0 3px var(--accent-pale)}.field textarea{resize:vertical;min-height:88px}.error{color:var(--error);font-size:14px}.muted{color:var(--text-muted)}.page{max-width:640px;margin:0 auto;padding:24px 20px 96px}.rosace-corner{position:absolute;top:20px;right:20px;width:40px;height:40px}
