:root{--canvas:#f8f1ec;--surface:#fffdfb;--surface-muted:#fbf7ff;--ink:#292260;--text:#514b5c;--muted:#8f8798;--line:#e5dce8;--primary:#51428f;--primary-hover:#403474;--primary-soft:#eee8ff;--gold:#b88d43;--danger:#a74646;--success:#3f7f5a;--shadow:0 18px 50px #382c5f1f}*{box-sizing:border-box}html{background:var(--canvas)}body{background:var(--canvas);min-width:320px;color:var(--text);margin:0;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif}button,select,textarea,input{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed}input,select,textarea{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:.55rem}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted)}:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.form-message{border-radius:.55rem;padding:.7rem .8rem;line-height:1.5}.form-message.error{border:1px solid color-mix(in srgb, var(--danger) 45%, var(--line));background:color-mix(in srgb, var(--danger) 9%, var(--surface));color:var(--danger)}.form-message.success{border:1px solid color-mix(in srgb, var(--success) 45%, var(--line));background:color-mix(in srgb, var(--success) 9%, var(--surface));color:var(--success)}@media (max-width:767px){:where(button,input,select){min-height:44px}:where(button){min-width:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
