:root{--primary-50: #f0f9ff;--primary-100: #e0f2fe;--primary-200: #bae6fd;--primary-300: #7dd3fc;--primary-400: #38bdf8;--primary-500: #0ea5e9;--primary-600: #0284c7;--primary-700: #0369a1;--primary-800: #075985;--primary-900: #0c4a6e;--neutral-50: #fafafa;--neutral-100: #f5f5f5;--neutral-200: #e5e5e5;--neutral-300: #d4d4d4;--neutral-400: #a3a3a3;--neutral-500: #737373;--neutral-600: #525252;--neutral-700: #404040;--neutral-800: #262626;--neutral-900: #171717;--rose-100: #ffe4e6;--rose-300: #fda4af;--rose-500: #f43f5e;--rose-600: #e11d48;--rose-700: #be185d;--emerald-100: #dcfce7;--emerald-300: #86efac;--emerald-500: #10b981;--amber-100: #fef3c7;--amber-300: #fcd34d;--amber-500: #f59e0b;--success: var(--emerald-500);--warning: var(--amber-500);--error: var(--rose-500);--info: var(--primary-500);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1)}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--neutral-700);background:linear-gradient(135deg,var(--primary-50) 0%,var(--neutral-50) 100%);min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.2;color:var(--neutral-800)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin:0 0 var(--space-4) 0}a{color:var(--primary-600);text-decoration:none;transition:color .2s ease}a:hover{color:var(--primary-700)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-4);box-sizing:border-box}.card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:1px solid var(--neutral-300);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-base);font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;min-height:44px;background:var(--neutral-100);color:var(--neutral-700)}.btn:hover:not(:disabled){background:var(--neutral-200)}.btn-primary{background:var(--primary-600);color:#fff;border-color:var(--primary-600);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.btn-primary:hover{background:var(--primary-700);border-color:var(--primary-700);box-shadow:var(--shadow-sm);color:#fff}.btn-secondary{background:var(--neutral-200);color:var(--neutral-800);border-color:var(--neutral-300);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.btn-secondary:hover{background:var(--neutral-300);border-color:var(--neutral-400)}.btn-danger{background:var(--rose-600);color:#fff;border-color:var(--rose-600)}.btn-danger:hover{background:var(--rose-700);border-color:var(--rose-700);box-shadow:var(--shadow-sm)}.btn-outline-danger{background:transparent;color:var(--rose-600);border:2px solid var(--rose-300)}.btn-outline-danger:hover{background:var(--rose-100);border-color:var(--rose-500);color:var(--rose-700)}.btn:disabled,button:disabled{background:var(--neutral-200);color:var(--neutral-500);border-color:var(--neutral-300);cursor:not-allowed;box-shadow:none;opacity:.6}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:500;color:var(--neutral-700)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3);border:1px solid var(--neutral-300);border-radius:var(--radius-lg);font-family:inherit;font-size:var(--font-size-base);transition:all .2s ease;background:#fff}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #0ea5e91a}.form-control[readonly],.form-input[readonly],.form-textarea[readonly],input[readonly],textarea[readonly]{background:var(--neutral-100);color:var(--neutral-600);cursor:not-allowed}.loading{display:inline-flex;align-items:center;gap:var(--space-2)}.pregnancy-spinner,.spinner{font-size:1.5rem;display:inline-block;animation:waddle 1s ease-in-out infinite}@keyframes waddle{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.hidden{display:none}@supports (-webkit-touch-callout: none){.form-input,.form-select,.form-textarea,input,select,textarea{font-size:16px!important}}@media (max-width: 768px){.container{padding:0 var(--space-3);max-width:100%}.card{padding:var(--space-4)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}.form-input,.form-select,.form-textarea,input,select,textarea{font-size:max(16px,var(--font-size-base))}}
