:root{--teal-900: #0D3D3C;--teal-800: #1A6B6A;--teal-600: #2D8A87;--teal-400: #4AA8A4;--teal-200: #A8D8D6;--teal-50: #EDF6F5;--coral: #E8583A;--coral-dark:#C44228;--coral-light:#F07A62;--sand: #C9A87C;--sand-light:#EDD9B8;--white: #FFFFFF;--text-dark: #0D2B2A;--text-mid: #3A5F5E;--text-muted:#6B8F8D;--border: #D0E8E7;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--shadow-sm: 0 1px 3px rgba(13,59,60,.08), 0 1px 2px rgba(13,59,60,.06);--shadow-md: 0 4px 12px rgba(13,59,60,.12), 0 2px 6px rgba(13,59,60,.08);--shadow-lg: 0 12px 32px rgba(13,59,60,.16), 0 4px 12px rgba(13,59,60,.1);--transition: .18s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;background:var(--teal-50);color:var(--text-dark);line-height:1.6;-webkit-font-smoothing:antialiased}h1{font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.15}h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;line-height:1.25}h3{font-size:1.15rem;font-weight:600}p{color:var(--text-mid)}a{color:var(--teal-800);text-decoration:none}a:hover{color:var(--coral)}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;cursor:pointer;border:none;transition:background var(--transition),transform var(--transition),box-shadow var(--transition)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--coral);color:var(--white);box-shadow:0 2px 8px #e8583a59}.btn-primary:hover{background:var(--coral-dark);color:var(--white);box-shadow:0 4px 14px #e8583a66}.btn-secondary{background:var(--teal-800);color:var(--white)}.btn-secondary:hover{background:var(--teal-900);color:var(--white)}.btn-outline{background:transparent;border:2px solid var(--teal-800);color:var(--teal-800)}.btn-outline:hover{background:var(--teal-800);color:var(--white)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.field-group{display:flex;flex-direction:column;gap:.35rem}.field-group label{font-size:.82rem;font-weight:600;color:var(--text-mid);letter-spacing:.02em;text-transform:uppercase}.input,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea{width:100%;padding:.65rem .9rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:.97rem;color:var(--text-dark);background:var(--white);transition:border-color var(--transition),box-shadow var(--transition);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--teal-600);box-shadow:0 0 0 3px #2d8a8726}.badge{display:inline-block;padding:.2rem .7rem;border-radius:99px;font-size:.78rem;font-weight:700;letter-spacing:.04em}.badge-teal{background:var(--teal-200);color:var(--teal-900)}.badge-coral{background:#fde8e3;color:var(--coral-dark)}.badge-sand{background:var(--sand-light);color:#7a5a30}.spinner{display:inline-block;width:1.4rem;height:1.4rem;border:3px solid var(--teal-200);border-top-color:var(--teal-800);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.divider{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.skeleton{background:linear-gradient(90deg,var(--teal-50) 25%,var(--teal-200) 50%,var(--teal-50) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{to{background-position:-200% 0}}
