:root{--bg: #faf9f7;--bg-alt: #e8e6e3;--bg-card: #ffffff;--text: #1a1a1a;--text-muted: #5c5c5c;--accent: #2d6a4f;--accent-light: #40916c;--border: #e5e3e0;--radius: 12px;--danger: #c62828;--danger-bg: #ffebee;--info-bg: #edf5f0;--info-border: #b8d4c8;--warn-bg: #fff8e1;--warn-border: #ffe082;--warn-text: #5d4037;--section-normal: #2d6a4f;--section-uv: #7c5cbf;--section-doc: #c76a4f;--section-border: #c48888;--payment-modal-border: #d4a5a5}:root.dark{--bg: #1a1a1a;--bg-alt: #2a2a2a;--bg-card: #242424;--text: #e8e6e3;--text-muted: #aaa;--accent: #52b788;--accent-light: #74c69d;--border: #3a3a3a;--danger: #ef5350;--danger-bg: #3b1c1c;--info-bg: #1a2e25;--info-border: #2d5a45;--warn-bg: #2e2a1a;--warn-border: #5a5030;--warn-text: #ffd54f;--section-normal: #52b788;--section-uv: #a78bfa;--section-doc: #f0976b;--section-border: #5b9ab8;--payment-modal-border: #7eb8da}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);overscroll-behavior:none;transition:background .25s,color .25s;overflow-x:hidden}#root{min-height:100vh;min-height:100dvh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:1rem;-webkit-appearance:none;color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.7}input:focus,textarea:focus,select:focus{border-color:var(--accent)!important;outline:none}button:active{opacity:.9;transform:scale(.98)}button:disabled,select:disabled{opacity:.5;cursor:not-allowed;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media(max-width:640px){body{padding-bottom:env(safe-area-inset-bottom)}}
