:root{--bg-primary: #e8f5e9;--card-bg: #ffffff;--accent-color: #4caf50;--accent-color-dark: #388e3c;--text-primary: #1a1a1a;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--danger-color: #f44336;--warning-color: #ff9800;--border-radius: 16px;--border-radius-sm: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin:0}a{font-weight:500;color:var(--accent-color);text-decoration:none}a:hover{color:var(--accent-color-dark)}button{border-radius:var(--border-radius-sm);border:none;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;font-family:inherit;background-color:var(--accent-color);color:#fff;cursor:pointer;transition:background-color .2s ease}button:hover{background-color:var(--accent-color-dark)}button:disabled{background-color:var(--text-muted);cursor:not-allowed}button.secondary{background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}button.secondary:hover{background-color:var(--bg-primary);color:var(--text-primary)}button.danger{background-color:var(--danger-color)}button.danger:hover{background-color:#d32f2f}input,select,textarea{border-radius:var(--border-radius-sm);border:1px solid var(--border-color);padding:.75rem 1rem;font-size:1rem;font-family:inherit;background-color:#fff;color:var(--text-primary);width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #4caf501a}input::placeholder,textarea::placeholder{color:var(--text-muted)}label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary)}.form-group{margin-bottom:1rem}.label-optional{font-weight:400;font-size:.85rem;color:var(--text-muted)}.field-error{color:var(--danger-color);font-size:.8rem;text-align:right;margin-top:.25rem}
