:root{--primary:#0395d1;--dark:#000;--light:#fff;--accent:#d97706;--slate-950:#0f172a;--slate-800:#1e293b;--slate-500:#64748b;--slate-300:#cbd5e1;--slate-100:#f1f5f9;--slate-50:#f8fafc;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--font-headings:var(--font-inter), "Inter", "Roboto", -apple-system, sans-serif;--font-body:var(--font-inter), "Inter", sans-serif;--font-technical:var(--font-fira-code), "Fira Code", "Courier New", monospace;--fs-h1:2.25rem;--fs-h2:1.75rem;--fs-h3:1.25rem;--fs-h4:1rem;--fs-body:.875rem;--fs-small:.75rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--spacing-xxs:4px;--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--radius-small:2px;--radius-medium:4px;--radius-large:6px;--shadow-flat:none;--shadow-subtle:0 1px 3px 0 #0000000d, 0 1px 2px -1px #0000000d;--shadow-raised:0 4px 6px -1px #00000014, 0 2px 4px -2px #00000014;--shadow-modal:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-default:cubic-bezier(.4, 0, .2, 1);--ease-technical-spring:cubic-bezier(.16, 1, .3, 1);--ease-micro-interact:ease-out;--duration-instant:.1s;--duration-normal:.2s;--duration-slow:.4s;--duration-shimmer:1.5s;--motion-duration-instant:var(--duration-instant);--motion-duration-normal:var(--duration-normal);--motion-duration-slow:var(--duration-slow);--motion-duration-shimmer:var(--duration-shimmer);--motion-ease-default:var(--ease-default);--motion-ease-technical:var(--ease-technical-spring);--motion-ease-micro:var(--ease-micro-interact)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;height:100%;font-size:16px}body{min-height:100%;color:var(--slate-950);background-color:var(--slate-50);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;line-height:1.5;display:flex}main{flex-grow:1}a{color:inherit;transition:color var(--duration-normal) var(--ease-micro-interact);text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button,select,input,textarea,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #0395d140}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--layout-container-max-width,1280px);padding-left:var(--spacing-md);padding-right:var(--spacing-md);margin-left:auto;margin-right:auto}.technical-grid-bg{background-size:20px 20px;background-image:radial-gradient(circle, var(--slate-300) 1px, transparent 1px)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:-100%;left:var(--spacing-md);z-index:1000;background:var(--light);color:var(--dark);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--primary);border-radius:4px;position:absolute}.skip-link:focus{top:var(--spacing-md)}h1,h2,h3,h4,h5,h6{font-family:var(--font-headings);color:var(--dark);font-weight:var(--fw-bold);line-height:1.2}.tech-mono{font-family:var(--font-technical)}.scroll-reveal{opacity:0;animation:reveal var(--duration-slow) var(--ease-technical-spring) forwards;transform:translateY(20px)}.skeleton-shimmer{background:linear-gradient(90deg, var(--slate-100) 0%, #e2e8f0 45%, var(--slate-100) 100%);animation:skeleton-shimmer var(--duration-shimmer) linear infinite;background-size:200% 100%}.route-loading{min-height:calc(100vh - 64px);padding:var(--spacing-xl);background:var(--slate-50);flex-grow:1;place-items:center;margin-top:64px;display:grid}@media (max-width:1023px){.route-loading{margin-top:0}}.route-loading__panel{gap:var(--spacing-sm);width:min(420px,100%);padding:var(--spacing-lg);background:var(--light);border:1px solid var(--slate-300);border-radius:var(--radius-medium);box-shadow:var(--shadow-subtle);color:var(--slate-500);font-family:var(--font-technical);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;display:flex}.route-loading__line{border-radius:var(--radius-small);height:10px}.route-loading__line--short{width:68%}.not-found-page{min-height:calc(100vh - 64px);padding:var(--spacing-xl);background:var(--slate-50);flex-grow:1;place-items:center;margin-top:64px;display:grid}@media (max-width:1023px){.not-found-page{margin-top:0}}.not-found-panel{align-items:flex-start;gap:var(--spacing-md);width:min(560px,100%);padding:var(--spacing-xl);background:var(--light);border:1px solid var(--slate-300);border-radius:var(--radius-large);box-shadow:var(--shadow-subtle);flex-direction:column;display:flex}.not-found-kicker{font-family:var(--font-technical);font-size:var(--fs-small);font-weight:var(--fw-bold);color:var(--primary);letter-spacing:.08em}.not-found-panel h1{font-size:var(--fs-h2)}.not-found-panel p{color:var(--slate-500);max-width:48ch}.not-found-action{min-height:44px;padding:0 var(--spacing-lg);border-radius:var(--radius-medium);background:var(--primary);color:var(--light);font-weight:var(--fw-bold);transition:background-color var(--duration-normal) var(--ease-micro-interact), transform var(--duration-normal) var(--ease-micro-interact);justify-content:center;align-items:center;display:inline-flex}.not-found-action:hover{background:#027fb3;transform:translateY(-1px)}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
