:root{--green:#2dd68c;--green-dark:#15b876;--green-xdark:#0d9e63;--green-light:#e3faf0;--yellow:#ffe566;--yellow-dark:#f5d200;--blue-100:#bfdbfe;--bluegray-100:#dbeafe;--aqua-100:#ccfbf1;--lavender-100:#e9e0ff;--coral-100:#ffd2d2;--peach-100:#fde68a;--pink-100:#fbcfe8;--mint-100:#ccfbf1;--red:#d32f2f;--red-dark:#b71c1c;--red-light:#ffebee;--red-100:#ffcdd2;--red-200:#ef9a9a;--red-bg:#fff5f5;--amber:#d97706;--amber-dark:#92400e;--amber-light:#fef3c7;--amber-border:#f59e0b;--black:#0d0d0d;--white:#fff;--page-bg:#eff4f0;--off-white:#eff4f1;--gray-100:#f4f4f4;--gray-200:#d4d4d4;--gray-400:#9b9b9b;--gray-600:#555;--gray-800:#2a2a2a;--font-heading:"Syne", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--border:2px solid var(--black);--border-thick:3px solid var(--black);--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:3px 3px 0 var(--black);--shadow-md:5px 5px 0 var(--black);--shadow-lg:7px 7px 0 var(--black);--max-width:1160px;font-family:var(--font-body);color:var(--black);background:var(--page-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}*,:before,:after{box-sizing:border-box}html{scrollbar-gutter:stable;overflow-x:hidden}body{background:var(--page-bg);margin:0;padding:0;overflow-x:hidden}::selection{background:var(--blue-100);color:var(--black)}::selection{background:var(--blue-100);color:var(--black)}#root{width:100%;min-height:100svh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--black);letter-spacing:-.02em;margin:0;line-height:1.1}p{margin:0}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer}img{max-width:100%}.btn-primary{background:var(--green);color:var(--black);font-family:var(--font-body);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:13px 26px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .1s,box-shadow .1s;display:inline-flex}.btn-primary:hover{box-shadow:7px 7px 0 var(--black);transform:translate(-2px,-2px)}.btn-primary:active{box-shadow:2px 2px 0 var(--black);transform:translate(2px,2px)}.btn-primary:disabled{background:var(--gray-200);color:var(--gray-400);border-color:var(--gray-400);box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background:var(--white);color:var(--black);font-family:var(--font-body);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:13px 26px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .1s,box-shadow .1s;display:inline-flex}.btn-secondary:hover{box-shadow:7px 7px 0 var(--black);transform:translate(-2px,-2px)}.btn-secondary:active{box-shadow:2px 2px 0 var(--black);transform:translate(2px,2px)}.btn-secondary:disabled{background:var(--gray-200);color:var(--gray-400);border-color:var(--gray-400);box-shadow:none;cursor:not-allowed;transform:none}.toast-success{background:var(--green-light)!important;border-color:var(--green-dark)!important;color:var(--green-xdark)!important}.toast-error{color:#b71c1c!important;background:#fef2f2!important;border-color:#d32f2f!important}.section-label{background:var(--green-light);color:var(--green-xdark);font-family:var(--font-body);border:1.5px solid var(--green-dark);letter-spacing:.06em;text-transform:uppercase;border-radius:100px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--green)!important}.MuiInputLabel-root.Mui-focused{color:var(--green)!important}.MuiOutlinedInput-root.Mui-error .MuiOutlinedInput-notchedOutline,.MuiOutlinedInput-root.Mui-error:hover .MuiOutlinedInput-notchedOutline,.MuiOutlinedInput-root.Mui-error.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--red)!important}.MuiInputLabel-root.Mui-error,.MuiInputLabel-root.Mui-error.Mui-focused{color:var(--red)!important}.MuiOutlinedInput-notchedOutline legend>span{padding-left:5px;padding-right:7px}
