.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-background);padding:var(--spacing-md)}.auth-card{background:var(--color-white);border-radius:var(--radius-md);padding:var(--spacing-xl);width:100%;max-width:400px;box-shadow:var(--shadow-xl)}.auth-card h1{margin-bottom:var(--spacing-lg);text-align:center;color:var(--color-text-primary);font-family:var(--font-family-display);font-size:var(--font-size-h3);font-weight:var(--font-weight-medium)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-2xs);color:var(--color-neutral-500);font-weight:var(--font-weight-medium, 500);font-family:var(--font-family-body);font-size:var(--font-size-body-base)}.form-group input{width:100%;padding:var(--spacing-xs);border:var(--border-width) solid var(--color-border-dark);border-radius:var(--radius-sm);font-size:var(--font-size-body-base, 16px);font-family:var(--font-family-body);transition:border-color var(--transition-base)}.form-group input:focus{outline:none;border-color:var(--color-primary-500)}.form-group input:disabled{background-color:var(--color-surface);cursor:not-allowed}button{width:100%;padding:var(--spacing-xs);background:var(--color-primary-500);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-body-base, 16px);font-weight:var(--font-weight-medium, 500);font-family:var(--font-family-body);cursor:pointer;transition:background var(--transition-base)}button:hover:not(:disabled){background:var(--color-primary-600)}button:disabled{background:var(--color-neutral-300);cursor:not-allowed}.auth-link{text-align:center;margin-top:var(--spacing-md);color:var(--color-text-secondary)}.auth-link a{color:var(--color-primary-500);text-decoration:none}.auth-link a:hover{text-decoration:underline}.dashboard{min-height:100vh;background:var(--color-surface);padding:var(--spacing-md)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);background:var(--color-white);padding:var(--spacing-md);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.dashboard-header h1{margin:0;color:var(--color-text-primary)}.header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.user-email{color:var(--color-text-secondary);font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body)}.header-actions button{padding:var(--spacing-2xs) var(--spacing-sm);background:var(--color-primary-500);color:var(--color-white);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body)}.logout-btn{background:var(--color-error-500)!important}.upload-card{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.upload-card h2{margin-bottom:var(--spacing-xs);color:var(--color-text-primary)}.upload-description{color:var(--color-text-secondary);margin-bottom:var(--spacing-md);line-height:var(--line-height-body-base, 1.6);font-family:var(--font-family-body)}.upload-card .form-group{margin-bottom:var(--spacing-md)}.upload-card label{display:block;margin-bottom:var(--spacing-2xs);color:var(--color-neutral-500);font-weight:var(--font-weight-medium, 500);font-family:var(--font-family-body)}.upload-card input,.upload-card textarea{width:100%;padding:var(--spacing-xs);border:var(--border-width) solid var(--color-border-dark);border-radius:var(--radius-sm);font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body)}.upload-card textarea{resize:vertical;min-height:200px}.form-group label{display:flex;justify-content:space-between;align-items:center}.example-button{padding:var(--spacing-3xs) var(--spacing-xs);background:var(--color-surface-hover);color:var(--color-primary-500);border:var(--border-width) solid var(--color-border-dark);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-caption, 12px);font-weight:var(--font-weight-medium, 500);font-family:var(--font-family-body);margin-left:auto}.example-button:hover{background:var(--color-neutral-200)}.form-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-md)}.secondary-button{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-white);color:var(--color-primary-500);border:var(--border-width) solid var(--color-primary-500);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-body-base, 16px);font-family:var(--font-family-body);width:100%}.secondary-button:hover{background:var(--color-primary-50)}.error-message{background:var(--color-error-50);color:var(--color-error-700);padding:var(--spacing-xs);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);border:var(--border-width) solid var(--color-error-200)}.tokens-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.token-card{background:var(--color-white);padding:var(--spacing-md);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.token-card h3{margin:0 0 var(--spacing-2xs) 0;color:var(--color-text-primary)}.token-slug{color:var(--color-text-secondary);font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body);margin-bottom:var(--spacing-sm)}.token-actions{display:flex;gap:var(--spacing-2xs)}.preview-link{flex:1;padding:var(--spacing-2xs) var(--spacing-sm);background:var(--color-primary-500);color:var(--color-white);text-decoration:none;border-radius:var(--radius-sm);text-align:center;font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body)}.delete-btn{padding:var(--spacing-2xs) var(--spacing-sm);background:var(--color-error-500);color:var(--color-white);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-body-small, 14px);font-family:var(--font-family-body)}.empty-state,.loading{text-align:center;padding:var(--spacing-3xl) var(--spacing-md);color:var(--color-text-secondary);background:var(--color-white);border-radius:var(--radius-md)}.empty-state-content{max-width:600px;margin:0 auto}.empty-state-content h2{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:var(--font-size-h5, 28px);font-family:var(--font-family-display);font-weight:var(--font-weight-medium, 500)}.empty-state-content>p{color:var(--color-text-secondary);font-size:var(--font-size-body-base, 16px);font-family:var(--font-family-body);line-height:var(--line-height-body-base, 1.6);margin-bottom:var(--spacing-xl)}.empty-state-actions{margin-bottom:var(--spacing-2xl)}.primary-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary-500);color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-body-base, 16px);font-weight:var(--font-weight-medium, 500);font-family:var(--font-family-body);cursor:pointer;transition:background var(--transition-base)}.primary-button:hover{background:var(--color-primary-600)}.empty-state-help{text-align:left;background:var(--color-surface);padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-xl)}.empty-state-help h3{color:var(--color-text-primary);font-size:var(--font-size-body-medium, 18px);font-family:var(--font-family-display);font-weight:var(--font-weight-medium, 500);margin-bottom:var(--spacing-sm)}.empty-state-help ol{color:var(--color-text-secondary);line-height:var(--line-height-body-base, 1.8);font-family:var(--font-family-body);padding-left:var(--spacing-md)}.empty-state-help li{margin-bottom:var(--spacing-2xs)}.deliverrr-badge{position:fixed;bottom:var(--spacing-md);right:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background-color:#fff;border:none;border-radius:6px;font-family:Onest,sans-serif;font-size:13px;font-weight:400;line-height:1.4;color:var(--color-text-primary);box-shadow:var(--shadow-md);z-index:var(--z-index-sticky);opacity:0;transform:translateY(20px);animation:badgeSlideIn .6s ease-in-out .3s forwards;pointer-events:none;display:flex;align-items:center;gap:var(--spacing-2xs)}.deliverrr-logo{flex-shrink:0;width:10px;height:15px}.deliverrr-badge span{display:block}.deliverrr-badge strong{font-weight:700}@keyframes badgeSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.deliverrr-badge{bottom:var(--spacing-sm);right:var(--spacing-sm);font-size:13px;padding:var(--spacing-2xs) var(--spacing-xs)}}@media (max-width: 480px){.deliverrr-badge{bottom:var(--spacing-xs);right:var(--spacing-xs)}}.preview-banner{position:fixed;top:0;left:0;right:0;width:100%;height:32px;background-color:var(--color-background-dark);color:var(--color-white);display:flex;align-items:center;justify-content:center;z-index:calc(var(--z-index-modal) + 2);font-family:Onest,sans-serif;font-size:var(--font-size-body-small);font-weight:var(--font-weight-medium);line-height:1}.preview-banner-text{text-transform:uppercase;letter-spacing:.5px}@media (max-width: 1024px){.preview-banner{height:28px;font-size:12px}}.skeleton{background:linear-gradient(90deg,var(--color-surface) 0%,var(--color-surface-hover) 50%,var(--color-surface) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.hero-skeleton{width:100%;margin-bottom:var(--spacing-lg)}.hero-skeleton .skeleton{width:100%}.skeleton-margin-top{margin-top:var(--spacing-sm)!important}:root{--color-primary-50: #f4f1fd;--color-primary-100: #e2dafb;--color-primary-200: #c6b6f7;--color-primary-300: #a991f3;--color-primary-400: #8d6cef;--color-primary-500: #7047eb;--color-primary-600: #6540d4;--color-primary-700: #5b3abf;--color-primary-800: #5234ac;--color-primary-900: #4a2f9b;--color-secondary-50: #f4f1fd;--color-secondary-100: #e2dafb;--color-secondary-200: #c6b6f7;--color-secondary-300: #a991f3;--color-secondary-400: #8d6cef;--color-secondary-500: #7047eb;--color-secondary-600: #6540d4;--color-secondary-700: #5b3abf;--color-secondary-800: #5234ac;--color-secondary-900: #4a2f9b;--color-neutral-50: #f7f7f8;--color-neutral-100: #ebebef;--color-neutral-200: #d1d1db;--color-neutral-300: #a9a9bc;--color-neutral-400: #8a8aa3;--color-neutral-500: #6c6c89;--color-neutral-600: #55556d;--color-neutral-700: #3f3f50;--color-neutral-800: #282833;--color-neutral-900: #121217;--color-error-50: #fef0f4;--color-error-100: #fdd8e1;--color-error-200: #fbb1c4;--color-error-300: #f98ba6;--color-error-400: #f76489;--color-error-500: #f53d6b;--color-error-600: #f3164e;--color-error-700: #d50b3e;--color-error-800: #af0932;--color-error-900: #880727;--color-warning-50: #fff9eb;--color-warning-100: #fff3d6;--color-warning-200: #ffe7ad;--color-warning-300: #ffda85;--color-warning-400: #ffce5c;--color-warning-500: #ffc233;--color-warning-600: #faaf00;--color-warning-700: #c28800;--color-warning-800: #8a6100;--color-warning-900: #523900;--color-success-50: #eefbf4;--color-success-100: #dff8ea;--color-success-200: #b2eecc;--color-success-300: #84e4ae;--color-success-400: #56d990;--color-success-500: #2dca72;--color-success-600: #26a95f;--color-success-700: #1e874c;--color-success-800: #17663a;--color-success-900: #0f4527;--color-background: #ffffff;--color-background-dark: #151515;--color-text-primary: #151515;--color-text-secondary: #858585;--color-border: #f5f5f5;--color-border-dark: #d1d1db;--color-surface: #f5f5f5;--color-surface-hover: #e8e8e8;--color-white: #ffffff;--color-overlay: rgba(255, 255, 255, .5);--font-family-display: "Bricolage Grotesque", sans-serif;--font-family-body: "IBM Plex Mono", monospace;--font-size-h1: 72px;--font-size-h2: 60px;--font-size-h3: 48px;--font-size-h4: 36px;--font-size-h5: 30px;--font-size-h6: 24px;--font-size-body-large: 22px;--font-size-body-medium: 18px;--font-size-body-base: 16px;--font-size-body-small: 14px;--font-size-caption: 14px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--line-height-h1: 80px;--line-height-h2: 72px;--line-height-h3: 52px;--line-height-h4: 48px;--line-height-h5: 40px;--line-height-h6: 32px;--line-height-body-large: 28px;--line-height-body-medium: 24px;--line-height-body-base: 22px;--line-height-body-small: 20px;--line-height-caption: 16px;--spacing-4xs: 2px;--spacing-3xs: 4px;--spacing-2xs: 8px;--spacing-xs: 12px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 40px;--spacing-2xl: 48px;--spacing-3xl: 64px;--spacing-4xl: 80px;--spacing-5xl: 96px;--spacing-6xl: 128px;--radius-xs: 0px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--border-width: 1px;--border-color: var(--color-border);--border-color-dark: var(--color-border-dark);--shadow-xs: 0px 1px 2px 0px rgba(18, 18, 23, .05);--shadow-sm: 0px 1px 3px 0px rgba(18, 18, 23, .1), 0px 1px 2px 0px rgba(18, 18, 23, .06);--shadow-md: 0px 4px 6px -1px rgba(18, 18, 23, .08), 0px 2px 4px -1px rgba(18, 18, 23, .06);--shadow-lg: 0px 10px 15px -3px rgba(18, 18, 23, .08), 0px 4px 6px -2px rgba(18, 18, 23, .05);--shadow-xl: 0px 20px 25px -5px rgba(18, 18, 23, .1), 0px 10px 10px -5px rgba(18, 18, 23, .04);--shadow-xxl: 0px 25px 50px -12px rgba(18, 18, 23, .25);--opacity-5: .05;--opacity-10: .1;--opacity-20: .2;--opacity-30: .3;--opacity-40: .4;--opacity-50: .5;--opacity-60: .6;--opacity-70: .7;--opacity-80: .8;--opacity-90: .9;--opacity-100: 1;--opacity-50: .05;--opacity-100: .1;--opacity-200: .2;--opacity-300: .3;--opacity-400: .4;--opacity-500: .5;--opacity-600: .6;--opacity-700: .7;--opacity-800: .8;--opacity-900: .9;--opacity-1000: 1;--transition-fast: .2s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--breakpoint-mobile: 480px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--z-index-base: 1;--z-index-dropdown: 100;--z-index-sticky: 200;--z-index-overlay: 300;--z-index-modal: 400;--z-index-tooltip: 500;--sidebar-width: 234px;--header-height: 72px;--logo-size: 48px;--logo-icon-width: 17px;--logo-icon-height: 24px;--hero-height: 480px;--hero-title-max-width: 550px}.spacing-4xs{gap:var(--spacing-4xs)}.spacing-3xs{gap:var(--spacing-3xs)}.spacing-2xs{gap:var(--spacing-2xs)}.spacing-xs{gap:var(--spacing-xs)}.spacing-sm{gap:var(--spacing-sm)}.spacing-md{gap:var(--spacing-md)}.spacing-lg{gap:var(--spacing-lg)}.spacing-xl{gap:var(--spacing-xl)}.spacing-2xl{gap:var(--spacing-2xl)}.spacing-3xl{gap:var(--spacing-3xl)}.spacing-4xl{gap:var(--spacing-4xl)}.spacing-5xl{gap:var(--spacing-5xl)}.spacing-6xl{gap:var(--spacing-6xl)}.p-4xs{padding:var(--spacing-4xs)}.p-3xs{padding:var(--spacing-3xs)}.p-2xs{padding:var(--spacing-2xs)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-2xl{padding:var(--spacing-2xl)}.p-3xl{padding:var(--spacing-3xl)}.m-4xs{margin:var(--spacing-4xs)}.m-3xs{margin:var(--spacing-3xs)}.m-2xs{margin:var(--spacing-2xs)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-2xl{margin:var(--spacing-2xl)}.m-3xl{margin:var(--spacing-3xl)}.text-h1{font-family:var(--font-family-display);font-size:var(--font-size-h1);font-weight:var(--font-weight-medium);line-height:var(--line-height-h1);color:var(--color-text-primary)}.text-h2{font-family:var(--font-family-display);font-size:var(--font-size-h2);font-weight:var(--font-weight-medium);line-height:var(--line-height-h2);color:var(--color-text-primary)}.text-h3{font-family:var(--font-family-display);font-size:var(--font-size-h3);font-weight:var(--font-weight-medium);line-height:var(--line-height-h3);color:var(--color-text-primary)}.text-h4{font-family:var(--font-family-display);font-size:var(--font-size-h4);font-weight:var(--font-weight-regular);line-height:var(--line-height-h4);color:var(--color-text-primary)}.text-h5{font-family:var(--font-family-display);font-size:var(--font-size-h5);font-weight:var(--font-weight-regular);line-height:var(--line-height-h5);color:var(--color-text-primary)}.text-h6{font-family:var(--font-family-display);font-size:var(--font-size-h6);font-weight:var(--font-weight-regular);line-height:var(--line-height-h6);color:var(--color-text-primary)}.text-body-large{font-family:var(--font-family-body);font-size:var(--font-size-body-large);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-large);color:var(--color-text-primary)}.text-body-medium{font-family:var(--font-family-body);font-size:var(--font-size-body-medium);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-medium);color:var(--color-text-primary)}.text-body-base{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary)}.text-body-small{font-family:var(--font-family-body);font-size:var(--font-size-body-small);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-small);color:var(--color-text-primary)}.text-caption{font-family:var(--font-family-body);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular);line-height:var(--line-height-caption);color:var(--color-text-primary)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-white{color:var(--color-white)}.bg-primary{background-color:var(--color-primary-500)}.bg-secondary{background-color:var(--color-secondary-500)}.bg-neutral{background-color:var(--color-neutral-500)}.bg-surface{background-color:var(--color-surface)}.bg-white{background-color:var(--color-white)}.border{border:var(--border-width) solid var(--border-color)}.border-dark{border:var(--border-width) solid var(--border-color-dark)}.transition-fast{transition:var(--transition-fast)}.transition-base{transition:var(--transition-base)}.transition-slow{transition:var(--transition-slow)}body{font-family:var(--font-family-body);background-color:var(--color-background);color:var(--color-text-primary);overflow-x:hidden}body.menu-open{overflow:hidden}ol,ul{list-style:none}a{text-decoration:none;color:inherit;cursor:pointer}a:hover{opacity:var(--opacity-70);transition:opacity var(--transition-fast)}.container{display:flex;min-height:100vh;background-color:var(--color-background);overflow:hidden;padding-left:var(--sidebar-width)}body.has-preview-banner .container{padding-top:32px}.nav{background-color:var(--color-background);display:flex;flex-direction:column;gap:var(--spacing-md);flex-shrink:0;z-index:var(--z-index-sticky)}@media (min-width: 1025px){.nav{width:var(--sidebar-width);position:fixed;top:0;left:0;height:100vh;overflow-y:auto}body.has-preview-banner .nav{top:32px;height:calc(100vh - 32px)}}.brand{border-bottom:var(--border-width) solid var(--border-color);padding:var(--spacing-lg) 0 var(--spacing-lg) var(--spacing-lg);display:flex;align-items:center;justify-content:flex-start}.logo{width:var(--logo-size);height:var(--logo-size);background-color:var(--color-surface);border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none;transition:opacity var(--transition-fast)}.logo:hover{opacity:var(--opacity-70)}.logo img{width:var(--logo-icon-width);height:var(--logo-icon-height);display:block}.contents{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg) 0 var(--spacing-lg) var(--spacing-lg)}.nav-item{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);white-space:nowrap}.nav-item.active{font-weight:var(--font-weight-semibold)}.nav-item a{font-weight:var(--font-weight-medium)}.submenu{display:flex;flex-direction:column;gap:var(--spacing-md);padding-left:var(--spacing-sm);font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base)}.submenu a{display:block}.header{display:none;position:fixed;top:0;left:0;right:0;width:100%;height:var(--header-height);background-color:var(--color-background);border-bottom:none;z-index:var(--z-index-modal);align-items:center;justify-content:space-between;padding:0 var(--spacing-md);box-shadow:var(--shadow-xs)}.header-logo{width:var(--logo-size);height:var(--logo-size);background-color:var(--color-surface);border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;text-decoration:none;transition:opacity var(--transition-fast)}.header-logo:hover{opacity:var(--opacity-70)}.header-logo img{width:var(--logo-icon-width);height:var(--logo-icon-height);display:block}.menu-toggle{display:none;width:var(--logo-size);height:var(--logo-size);background-color:transparent;border:none;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:var(--spacing-3xs);padding:var(--spacing-xs);border-radius:var(--radius-xs);transition:background-color var(--transition-fast)}.menu-toggle:hover{background-color:var(--color-surface-hover);background:var(--color-surface-hover)}.menu-toggle span{display:block;width:24px;height:2px;background-color:var(--color-text-primary);transition:var(--transition-fast);border-radius:var(--radius-xs)}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.menu-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,var(--opacity-50));z-index:var(--z-index-sticky);opacity:0;transition:opacity var(--transition-base);pointer-events:none}.menu-overlay.active{display:block;opacity:1;pointer-events:auto}.main{flex:1;border-left:var(--border-width) solid var(--border-color);display:flex;flex-direction:column;min-width:0;margin-left:0}.hero{height:var(--hero-height);padding:var(--spacing-lg);display:flex;align-items:center;justify-content:flex-start;position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.hero-title{position:relative;z-index:var(--z-index-base);max-width:var(--hero-title-max-width);color:var(--color-white)}.hero-title h1{font-family:var(--font-family-display);font-size:var(--font-size-h1);font-weight:var(--font-weight-medium);line-height:var(--line-height-h1);margin:0;margin-bottom:var(--spacing-3xs);font-variation-settings:"opsz" 14,"wdth" 100}.hero-title p{font-family:var(--font-family-body);font-size:var(--font-size-body-large);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-large);margin:0}.body{padding:var(--spacing-lg) 0}.section{padding:var(--spacing-lg)}.content{display:flex;gap:var(--spacing-2xl)}.left{flex:1;min-width:0}.left h1{font-family:var(--font-family-display);font-size:var(--font-size-h2);font-weight:var(--font-weight-medium);line-height:var(--line-height-h2);color:var(--color-text-primary);margin:0;font-variation-settings:"opsz" 14,"wdth" 100}.left h1.h3{font-size:var(--font-size-h3);line-height:var(--line-height-h3)}.right{flex:1;min-width:0}.right p{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);margin:0;white-space:pre-wrap}.footer{padding:var(--spacing-lg) 0}.footer-content{border-top:var(--border-width) solid var(--border-color);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-family-body);font-size:var(--font-size-body-small);font-weight:var(--font-weight-regular);line-height:var(--line-height-caption);color:var(--color-text-primary)}.legal{display:flex;gap:var(--spacing-sm);align-items:center}.rights{white-space:nowrap}@media (max-width: 1024px){.header{display:flex;top:0;z-index:calc(var(--z-index-modal) + 1)}body.has-preview-banner .header{top:28px}.menu-toggle{display:flex}.header .menu-toggle:hover,button.menu-toggle:hover{background-color:var(--color-surface-hover)!important;background:var(--color-surface-hover)!important}.container{flex-direction:column;padding-left:0;padding-top:var(--header-height)}body.has-preview-banner .container{padding-top:calc(var(--header-height) + 28px)}.main{padding-top:0}.nav{width:100%;height:calc(100vh - var(--header-height));position:fixed;top:-100vh;left:0;transition:top var(--transition-base);z-index:var(--z-index-overlay);box-shadow:var(--shadow-lg);overflow-y:auto;overflow-x:hidden}body.has-preview-banner .nav{height:calc(100vh - var(--header-height) - 28px)}.nav:not(.open){top:-100vh;visibility:hidden}.nav.open{visibility:visible}.nav .contents{padding-top:var(--spacing-xl)}.nav .nav-item,.nav .submenu a{opacity:0;transform:translateY(-10px);transition:opacity .4s ease-in-out,transform .4s ease-in-out}.nav.open .nav-item,.nav.open .submenu a{opacity:1;transform:translateY(0)}.nav.open .nav-item:nth-child(1){transition-delay:.15s}.nav.open .nav-item:nth-child(2){transition-delay:.25s}.nav.open .submenu a:nth-child(1){transition-delay:.35s}.nav.open .submenu a:nth-child(2){transition-delay:.45s}.nav.open .submenu a:nth-child(3){transition-delay:.55s}.nav.open .submenu a:nth-child(4){transition-delay:.65s}.nav.open .submenu a:nth-child(5){transition-delay:.75s}.nav.open .submenu a:nth-child(6){transition-delay:.85s}.nav:not(.open) .nav-item,.nav:not(.open) .submenu a{transition-delay:0s}.nav.open{top:var(--header-height)}body.has-preview-banner .nav.open{top:calc(var(--header-height) + 28px)}.nav .brand{display:none}.main{margin-left:0}.hero-title h1{font-size:var(--font-size-h2, 56px);line-height:var(--line-height-h2, 64px)}.left h1{font-size:var(--font-size-h3);line-height:var(--line-height-h3, 56px)}}@media (max-width: 768px){.content{flex-direction:column;gap:var(--spacing-lg)}.hero{height:360px;padding:var(--spacing-md)}.hero-title{max-width:100%}.hero-title h1{font-size:var(--font-size-h3, 42px);line-height:var(--line-height-h3, 48px)}.hero-title p{font-size:var(--font-size-body-medium);line-height:var(--line-height-body-medium)}.left h1{font-size:var(--font-size-h4);line-height:var(--line-height-h4, 44px)}.section{padding:var(--spacing-md)}.footer-content{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start;padding:var(--spacing-lg) var(--spacing-md)}.legal{flex-wrap:wrap}}@media (max-width: 480px){.contents{padding:0 0 var(--spacing-md) var(--spacing-md)}.brand{padding:var(--spacing-md) 0 var(--spacing-md) var(--spacing-md)}.hero-title h1{font-size:var(--font-size-h4, 32px);line-height:var(--line-height-h4, 38px)}.hero-title p{font-size:var(--font-size-body-base);line-height:var(--line-height-body-base)}.left h1{font-size:var(--font-size-h5, 28px);line-height:var(--line-height-h5, 36px)}.right p{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}.section-header{padding:var(--spacing-lg)}.section-title-wrapper{display:flex;gap:var(--spacing-sm);align-items:center}.section-title-wrapper h1{font-family:var(--font-family-display);font-size:var(--font-size-h2);font-weight:var(--font-weight-medium);line-height:var(--line-height-h2);color:var(--color-text-primary);margin:0;font-variation-settings:"opsz" 14,"wdth" 100}.section-counter{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-secondary)}.subsection{display:flex;flex-direction:column;gap:var(--spacing-lg)}.h3{font-family:var(--font-family-display);font-size:var(--font-size-h3);font-weight:var(--font-weight-medium);line-height:var(--line-height-h3);color:var(--color-text-primary);font-variation-settings:"opsz" 14,"wdth" 100}.typography-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.typography-header{width:100%}.typography-body{display:flex;flex-direction:column;width:100%}.typography-intro{display:flex;flex-direction:column;gap:var(--spacing-3xl)}.subsection .content{margin-bottom:var(--spacing-xl)}.typography-family{display:flex;flex-direction:column;color:var(--color-text-primary)}.font-display{font-family:var(--font-family-display);font-size:var(--font-size-h4);font-weight:var(--font-weight-regular);line-height:var(--line-height-h4);margin:0;font-variation-settings:"opsz" 14,"wdth" 100}.typography-family p{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);margin:0}.typography-tables{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:982px}.table-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.table-title{font-family:var(--font-family-display);font-size:var(--font-size-h5);font-weight:var(--font-weight-regular);line-height:var(--line-height-h5);color:var(--color-text-primary);margin:0;font-variation-settings:"opsz" 14,"wdth" 100}.table{display:flex;flex-direction:column;width:100%}.table-header{display:flex;align-items:center;padding-bottom:var(--spacing-2xs)}.table-body{display:flex;flex-direction:column;gap:var(--spacing-2xs)}.table-row{display:flex;align-items:center;padding:var(--spacing-sm) 0}.table-cell{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary)}.table-header .table-cell{font-size:var(--font-size-body-medium);font-weight:var(--font-weight-medium);line-height:var(--line-height-body-medium)}.table-row .table-cell.cell-name{font-weight:var(--font-weight-medium);font-size:var(--font-size-body-medium);line-height:var(--line-height-body-medium)}.cell-name{width:200px;flex-shrink:0}.cell-weight{width:320px;flex-shrink:0;display:flex;gap:var(--spacing-2xs)}.cell-size,.cell-lineheight{width:120px;flex-shrink:0}.weight-regular{font-weight:var(--font-weight-regular);font-size:var(--font-size-body-medium);line-height:var(--line-height-body-medium)}.weight-medium{font-weight:var(--font-weight-medium);font-size:var(--font-size-body-medium);line-height:var(--line-height-body-medium)}.weight-semibold{font-weight:var(--font-weight-semibold);font-size:var(--font-size-body-medium);line-height:var(--line-height-body-medium)}.table-divider{height:var(--border-width);background-color:var(--border-color-dark);width:100%}.page-navigation{display:flex;gap:var(--spacing-sm);padding:var(--spacing-lg)}.nav-button{flex:1;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--radius-sm);text-decoration:none;opacity:1;transition:background-color var(--transition-fast)}.nav-button:hover{background-color:var(--color-surface-hover);opacity:1}.nav-button-next{justify-content:flex-end}.nav-button-icon{width:56px;height:56px;flex-shrink:0}.nav-button-icon img{width:100%;height:100%;display:block}.nav-button-text{display:flex;flex-direction:column;gap:var(--spacing-3xs);flex:1;min-width:0}.nav-button-next .nav-button-text{align-items:flex-end;text-align:right}.nav-label{font-family:var(--font-family-body);font-size:var(--font-size-body-small);font-weight:var(--font-weight-regular);line-height:var(--line-height-caption);color:var(--color-text-primary)}.nav-page{font-family:var(--font-family-body);font-size:var(--font-size-body-medium);font-weight:var(--font-weight-medium);line-height:var(--line-height-body-medium);color:var(--color-text-primary);white-space:pre-wrap}.submenu a.active{font-weight:var(--font-weight-semibold)}@media (max-width: 1024px){.section-title-wrapper h1{font-size:var(--font-size-h3, 48px);line-height:var(--line-height-h3, 56px)}.h3{font-size:var(--font-size-h4, 36px);line-height:var(--line-height-h4, 44px)}.typography-tables{max-width:100%}}@media (max-width: 768px){.section-header{padding:var(--spacing-md)}.section-title-wrapper{flex-direction:column;align-items:flex-start;gap:var(--spacing-2xs)}.section-title-wrapper h1{font-size:var(--font-size-h4);line-height:var(--line-height-h4, 44px)}.h3{font-size:var(--font-size-h5, 28px);line-height:var(--line-height-h5, 36px)}.typography-intro{gap:var(--spacing-lg)}.font-display{font-size:var(--font-size-h5, 28px);line-height:var(--line-height-h5, 36px);font-family:var(--font-family-display)}.font-body{font-size:var(--font-size-h5, 28px);line-height:var(--line-height-h5, 36px);font-family:var(--font-family-body)}.table-title{font-size:var(--font-size-h6);line-height:var(--line-height-h6)}.table-row,.table-header{flex-wrap:wrap}.cell-name,.cell-weight{width:100%}.cell-size,.cell-lineheight{width:50%}.page-navigation{flex-direction:column;padding:var(--spacing-md)}.nav-button-next{flex-direction:row-reverse}.nav-button-next .nav-button-text{align-items:flex-start;text-align:left}}@media (max-width: 480px){.section-title-wrapper h1{font-size:var(--font-size-h5, 28px);line-height:var(--line-height-h5, 36px)}.h3{font-size:var(--font-size-h6, 24px);line-height:var(--line-height-h6, 32px)}.font-display{font-size:var(--font-size-body-large, 22px);line-height:var(--line-height-body-large, 28px);font-family:var(--font-family-display)}.font-body{font-size:var(--font-size-body-large, 22px);line-height:var(--line-height-body-large, 28px);font-family:var(--font-family-body)}.table-header .table-cell,.table-row .table-cell,.weight-regular,.weight-medium,.weight-semibold{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}.color-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.color-header{width:100%}.color-body{display:flex;flex-direction:column;width:100%}.color-stack{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.color-subtitle{display:flex;width:100%}.color-palette{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.palette-title{font-family:var(--font-family-display);font-size:var(--font-size-h6);font-weight:var(--font-weight-regular);line-height:var(--line-height-h6);color:var(--color-text-primary);margin:0;font-variation-settings:"opsz" 14,"wdth" 100}.swatches{display:flex;width:100%;margin-right:var(--spacing-4xs)}.swatch{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative;margin-right:-1px;min-width:0}.swatch-color{height:140px;width:100%}.swatch-label{display:flex;flex-direction:column;padding:0 var(--spacing-2xs)}.swatch-label p{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);margin:0}.swatch-indicator{position:absolute;top:var(--spacing-2xs);right:7.6px;width:var(--spacing-2xs);height:var(--spacing-2xs);background-color:var(--color-overlay);border-radius:var(--radius-sm)}@media (max-width: 1024px){.swatches{overflow-x:auto;-webkit-overflow-scrolling:touch}.swatch{min-width:80px}}@media (max-width: 768px){.palette-title{font-size:var(--font-size-body-large, 20px);line-height:var(--line-height-body-large, 28px)}.swatch-color{height:100px}.swatch{min-width:70px}.swatch-label p{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}@media (max-width: 480px){.color-stack{gap:var(--spacing-md)}.palette-title{font-size:var(--font-size-body-medium, 18px);line-height:var(--line-height-body-medium, 24px)}.swatch-color{height:80px}.swatch{min-width:60px;gap:var(--spacing-xs)}.swatch-label{padding:0 var(--spacing-3xs)}.swatch-label p{font-size:var(--font-size-caption, 12px);line-height:var(--line-height-caption)}}.opacity-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.opacity-header{width:100%}.opacity-body{display:flex;flex-direction:column;width:100%}.opacity-row{display:flex;width:100%;align-items:center}.opacity-col{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.opacity-box{height:140px;width:100%;background-color:var(--color-primary-500);display:flex;align-items:center}.opacity-label{display:flex;align-items:center;justify-content:center;padding:0 var(--spacing-2xs)}.opacity-label p{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);margin:0}@media (max-width: 1024px){.opacity-row{overflow-x:auto;-webkit-overflow-scrolling:touch}.opacity-col{min-width:80px}}@media (max-width: 768px){.opacity-box{height:100px}.opacity-col{min-width:70px;gap:var(--spacing-xs)}.opacity-label p{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}@media (max-width: 480px){.opacity-box{height:80px}.opacity-col{min-width:60px;gap:var(--spacing-2xs)}.opacity-label{padding:0 var(--spacing-3xs)}.opacity-label p{font-size:var(--font-size-caption, 12px);line-height:var(--line-height-caption)}}.shadow-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.shadow-header{width:100%}.shadow-body{display:flex;flex-direction:column;width:100%}.shadow-swatches{display:flex;gap:var(--spacing-sm);width:100%}.shadow-swatch{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.shadow-tile{height:140px;width:100%;background-color:var(--color-background);border-radius:var(--radius-md)}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-xxl{box-shadow:var(--shadow-xxl)}.shadow-label{display:flex;align-items:center;justify-content:flex-start;padding:0 var(--spacing-2xs)}.shadow-label p{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);margin:0}.nav-button-placeholder{flex:1;min-height:1px}@media (max-width: 1024px){.shadow-swatches{overflow-x:auto;-webkit-overflow-scrolling:touch}.shadow-swatch{min-width:120px}}@media (max-width: 768px){.shadow-tile{height:100px}.shadow-swatch{min-width:100px;gap:var(--spacing-xs)}.shadow-label p{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}@media (max-width: 480px){.shadow-tile{height:80px}.shadow-swatch{min-width:80px;gap:var(--spacing-2xs)}.shadow-label{padding:0 var(--spacing-3xs)}.shadow-label p{font-size:var(--font-size-caption, 12px);line-height:var(--line-height-caption)}}.radius-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.radius-header{width:100%}.radius-body{display:flex;flex-direction:column;width:100%}.radius-swatches{display:flex;gap:var(--spacing-2xl);width:100%}.radius-swatch{display:flex;flex-direction:column;gap:var(--spacing-md)}.radius-tile{width:128px;height:128px;border:var(--border-width) solid var(--border-color-dark);overflow:hidden;position:relative}.radius-tile img{position:absolute;left:-1px;top:-1px;width:128px;height:128px;display:block;max-width:none}.radius-xs{border-radius:var(--radius-xs)}.radius-sm{border-radius:var(--radius-sm)}.radius-md{border-radius:var(--radius-md)}.radius-lg{border-radius:var(--radius-lg)}.radius-xl{border-radius:var(--radius-xl)}.radius-full{border-radius:var(--radius-full)}.radius-label{display:flex;flex-direction:column;width:100%}.radius-name{font-family:var(--font-family-body);font-size:var(--font-size-body-medium);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-medium);color:var(--color-text-primary);margin:0}.radius-value{font-family:var(--font-family-body);font-size:var(--font-size-body-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-base);color:var(--color-text-primary);margin:0}@media (max-width: 1024px){.radius-swatches{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:var(--spacing-lg)}.radius-swatch{min-width:128px}}@media (max-width: 768px){.radius-swatches{gap:var(--spacing-md)}.radius-tile,.radius-tile img{width:100px;height:100px}.radius-swatch{min-width:100px;gap:var(--spacing-sm)}.radius-name{font-size:var(--font-size-body-base);line-height:var(--line-height-body-base)}.radius-value{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}}@media (max-width: 480px){.radius-swatches{gap:var(--spacing-sm)}.radius-tile,.radius-tile img{width:80px;height:80px}.radius-swatch{min-width:80px;gap:var(--spacing-xs)}.radius-name{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}.radius-value{font-size:var(--font-size-caption, 12px);line-height:var(--line-height-caption)}}.spacing-content{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%}.spacing-header{width:100%}.spacing-body{display:flex;flex-direction:column;width:100%}.spacing-table{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.spacing-row{display:flex;align-items:center;width:100%}.spacing-cell-visual{width:480px;padding:var(--spacing-2xs) var(--spacing-md);display:flex;align-items:center;flex-shrink:0}.spacing-bar{width:180px;background-color:var(--color-primary-300);border-radius:var(--radius-sm);flex-shrink:0}.spacing-cell-name{flex:1;padding:var(--spacing-2xs) var(--spacing-md);display:flex;align-items:center;min-width:0}.spacing-cell-name p{font-family:var(--font-family-body);font-size:var(--font-size-body-medium);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-medium);color:var(--color-text-primary);margin:0}.spacing-cell-value{flex:1;padding:var(--spacing-2xs) var(--spacing-md);display:flex;align-items:center;min-width:0}.spacing-cell-value p{font-family:var(--font-family-body);font-size:var(--font-size-body-medium);font-weight:var(--font-weight-regular);line-height:var(--line-height-body-medium);color:var(--color-text-primary);margin:0}@media (max-width: 1024px){.spacing-cell-visual{width:320px}.spacing-bar{width:140px}}@media (max-width: 768px){.spacing-row{flex-wrap:wrap}.spacing-cell-visual{width:100%;padding:var(--spacing-2xs) var(--spacing-sm)}.spacing-bar{width:100%;max-width:200px}.spacing-cell-name,.spacing-cell-value{width:50%;flex:none;padding:var(--spacing-2xs) var(--spacing-sm)}.spacing-cell-name p,.spacing-cell-value p{font-size:var(--font-size-body-base);line-height:var(--line-height-body-base)}.spacing-table{gap:var(--spacing-md)}}@media (max-width: 480px){.spacing-cell-visual{padding:var(--spacing-2xs) var(--spacing-xs)}.spacing-bar{max-width:150px}.spacing-cell-name,.spacing-cell-value{padding:var(--spacing-3xs) var(--spacing-xs)}.spacing-cell-name p,.spacing-cell-value p{font-size:var(--font-size-body-small);line-height:var(--line-height-body-small)}.spacing-table{gap:var(--spacing-sm)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-body, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:var(--font-family-body, "Courier New", monospace)}
