:root{--color-ink: #0a0e17;--color-navy: #10182b;--color-accent: #0f766e;--color-accent-dark: #115e59;--color-accent-light: #5eead4;--color-accent-glow: rgba(15,118,110,0.15);--color-paper: #fbfbf8;--color-line: #1a1a1a;--color-line-soft: #c9c9c2;--color-stamp: #c2272d;--color-white: #ffffff;--color-surface: #f3f4f6;--color-border: #d1d5db;--color-text: #111827;--color-muted: #4b5563;--color-success: #15803d;--color-success-bg: #f0fdf4;--color-error: #b91c1c;--color-error-bg: #fef2f2;--color-purple: #7c3aed;--color-purple-bg: #f5f3ff;--font-sans: system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--font-tech: 'Plex Condensed','Arial Narrow',system-ui,sans-serif;--font-size-base: 1rem;--line-height-base: 1.6;--space-1: 0.25rem;--space-2: 0.5rem;--space-3: 0.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;--space-24: 6rem;--container-max: 1180px;--container-pad: clamp(1.25rem,5vw,2.5rem);--header-height: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(4,8,15,.06);--shadow-md: 0 8px 24px rgba(4,8,15,.10);--shadow-lg: 0 16px 48px rgba(4,8,15,.14);--transition: 180ms ease}@font-face{font-family: 'Plex Condensed';src: url('/static/fonts/ibm-plex-sans-condensed-latin-600-normal.woff2') format('woff2');font-weight: 600;font-style: normal;font-display: swap}*,*::before,*::after{box-sizing: border-box;margin: 0;padding: 0}html{scroll-behavior: smooth;-webkit-text-size-adjust: 100%}body{font-family: var(--font-sans);font-size: var(--font-size-base);line-height: var(--line-height-base);color: var(--color-text);background: var(--color-paper);-webkit-font-smoothing: antialiased}body > main{min-height: calc(100dvh - var(--header-height))}img{max-width: 100%;height: auto;display: block}a{color: inherit;text-decoration: none}ul{list-style: none}h1,h2,h3{line-height: 1.2;font-weight: 700}h1{font-size: clamp(2rem,4vw,3rem)}h2{font-size: clamp(1.5rem,3vw,2.1rem)}.container{max-width: var(--container-max);margin: 0 auto;padding-left: var(--container-pad);padding-right: var(--container-pad)}.btn{display: inline-flex;align-items: center;justify-content: center;gap: var(--space-2);padding: 0.6rem 1.25rem;border-radius: var(--radius-md);font-family: var(--font-sans);font-size: 0.9rem;font-weight: 600;border: 1.5px solid var(--color-border);background: var(--color-white);color: var(--color-text);cursor: pointer;transition: background var(--transition),border-color var(--transition),color var(--transition)}.btn:hover{border-color: var(--color-accent);color: var(--color-accent)}.btn--primary{background: var(--color-accent);border-color: var(--color-accent);color: var(--color-white)}.btn--primary:hover{background: var(--color-accent-dark);border-color: var(--color-accent-dark);color: var(--color-white)}.btn--outline{background: transparent}.btn--block{width: 100%}.btn--sm{padding: 0.4rem 0.9rem;font-size: 0.85rem}.form-group{margin-bottom: var(--space-4)}.form-label{display: block;font-size: 0.85rem;font-weight: 600;margin-bottom: var(--space-2)}.form-input{width: 100%;padding: 0.65rem 0.85rem;border: 1.5px solid var(--color-border);border-radius: var(--radius-md);font-family: var(--font-sans);font-size: 0.95rem;background: var(--color-white);transition: border-color var(--transition)}.form-input:focus{outline: none;border-color: var(--color-accent);box-shadow: 0 0 0 3px var(--color-accent-glow)}.form-input--error{border-color: var(--color-error)}.form-check{display: flex;align-items: center;gap: var(--space-2);font-size: 0.88rem;margin-bottom: var(--space-5);cursor: pointer}.form-alert{padding: var(--space-3) var(--space-4);border-radius: var(--radius-md);font-size: 0.88rem;margin-bottom: var(--space-4)}.form-alert--error{background: var(--color-error-bg);color: var(--color-error)}.form-alert--success{background: var(--color-success-bg);color: var(--color-success)}
.nav{position: sticky;top: 0;z-index: 100;height: var(--header-height);box-sizing: border-box;background: rgba(251,251,248,0.94);backdrop-filter: blur(8px);border-bottom: 1px solid var(--color-line)}.nav__inner{display: flex;align-items: center;justify-content: space-between;gap: var(--space-6);height: 100%}.nav__logo{display: flex;align-items: center;color: var(--color-ink)}.nav__name{font-family: var(--font-tech);font-weight: 600;font-size: 1.1rem}.nav__links{display: flex;gap: var(--space-6)}.nav__link{font-size: 0.9rem;font-weight: 500;color: var(--color-muted);transition: color var(--transition)}.nav__link:hover{color: var(--color-ink)}.nav__actions{display: flex;gap: var(--space-4);align-items: center}@media (max-width: 720px){.nav__links{display: none}}
.footer{border-top: 1px solid var(--color-line);padding: var(--space-6) 0;font-size: 0.82rem;color: var(--color-muted);background: var(--color-paper)}.footer__inner{display: flex;justify-content: space-between;align-items: center;gap: var(--space-4);flex-wrap: wrap}.footer__list{display: flex;gap: var(--space-5)}.footer__list a{text-decoration: underline;text-underline-offset: 3px}.footer__list a:hover{color: var(--color-ink)}
.cookie-banner{position: fixed;bottom: var(--space-5);left: 50%;transform: translateX(-50%);z-index: 9999;width: calc(100% - 2rem);max-width: 680px;background: var(--color-navy);color: var(--color-white);border-radius: var(--radius-lg);box-shadow: 0 8px 32px rgba(0,0,0,0.25);padding: var(--space-4) var(--space-6);animation: cookie-slide-up 0.3s ease}@keyframes cookie-slide-up{from{opacity: 0;transform: translateX(-50%) translateY(12px)}to{opacity: 1;transform: translateX(-50%) translateY(0)}}.cookie-banner[hidden]{display: none}.cookie-banner__inner{display: flex;align-items: center;gap: var(--space-5);flex-wrap: wrap}.cookie-banner__text{flex: 1;min-width: 200px;font-size: 0.88rem;line-height: 1.5;color: rgba(255,255,255,0.85)}.cookie-banner__actions{display: flex;gap: var(--space-2);flex-shrink: 0}.cookie-banner__btn{padding: 0.5rem 1.1rem;border-radius: var(--radius-md);font-family: var(--font-sans);font-size: 0.85rem;font-weight: 700;cursor: pointer;border: 1.5px solid transparent;transition: background var(--transition),color var(--transition),border-color var(--transition)}.cookie-banner__btn--accept{background: var(--color-accent);color: var(--color-white);border-color: var(--color-accent)}.cookie-banner__btn--accept:hover{background: var(--color-accent-dark);border-color: var(--color-accent-dark)}.cookie-banner__btn--dismiss{background: transparent;color: rgba(255,255,255,0.7);border-color: rgba(255,255,255,0.25)}.cookie-banner__btn--dismiss:hover{background: rgba(255,255,255,0.08);color: var(--color-white)}@media (max-width: 480px){.cookie-banner{bottom: 0;border-bottom-left-radius: 0;border-bottom-right-radius: 0;width: 100%}.cookie-banner__inner{flex-direction: column;align-items: flex-start;gap: var(--space-3)}}
.legal{padding: var(--space-16) 0 var(--space-20)}.legal .container{max-width: 760px}.legal h1{margin-bottom: var(--space-2)}.legal__updated{color: var(--color-muted);font-size: 0.85rem;margin-bottom: var(--space-10)}.legal h2{font-size: 1.2rem;margin-top: var(--space-10);margin-bottom: var(--space-3)}.legal p,.legal li{color: var(--color-text);font-size: 0.95rem;line-height: 1.7;margin-bottom: var(--space-3)}.legal ul{padding-left: var(--space-6);list-style: disc}.legal a{color: var(--color-accent);text-decoration: underline;text-underline-offset: 2px}.legal-table{width: 100%;border-collapse: collapse;margin: var(--space-4) 0 var(--space-6);font-size: 0.85rem}.legal-table th,.legal-table td{text-align: left;padding: var(--space-2) var(--space-3);border-bottom: 1px solid var(--color-border);vertical-align: top}.legal-table th{color: var(--color-muted);font-weight: 600;font-size: 0.78rem}
