@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap";:root{--nok-primary: #1a1a1a;--nok-primary-hover: #333333;--nok-accent: #e63946;--nok-accent-hover: #c62d3a;--nok-accent-light: #ffebee;--nok-secondary: #2d4a6f;--nok-secondary-light: #4a6fa5;--nok-white: #ffffff;--nok-off-white: #fafafa;--nok-light-gray: #f5f5f5;--nok-medium-gray: #e0e0e0;--nok-dark-gray: #757575;--nok-charcoal: #424242;--nok-success: #4caf50;--nok-success-light: #e8f5e9;--nok-warning: #ff9800;--nok-warning-light: #fff3e0;--nok-error: #f44336;--nok-error-light: #ffebee;--nok-info: #2196f3;--nok-info-light: #e3f2fd;--nok-font-primary: "Inter", "Helvetica Neue", Arial, sans-serif;--nok-font-heading: "Playfair Display", Georgia, "Times New Roman", serif;--nok-text-xs: .75rem;--nok-text-sm: .875rem;--nok-text-base: 1rem;--nok-text-lg: 1.125rem;--nok-text-xl: 1.25rem;--nok-text-2xl: 1.5rem;--nok-text-3xl: 1.875rem;--nok-text-4xl: 2.25rem;--nok-font-light: 300;--nok-font-regular: 400;--nok-font-medium: 500;--nok-font-semibold: 600;--nok-font-bold: 700;--nok-spacing-xs: .25rem;--nok-spacing-sm: .5rem;--nok-spacing-md: 1rem;--nok-spacing-lg: 1.5rem;--nok-spacing-xl: 2rem;--nok-spacing-2xl: 3rem;--nok-radius-sm: 4px;--nok-radius-md: 8px;--nok-radius-lg: 12px;--nok-radius-full: 9999px;--nok-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--nok-shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--nok-shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--nok-shadow-xl: 0 20px 40px rgba(0, 0, 0, .12);--nok-transition-fast: .15s ease;--nok-transition-base: .2s ease;--nok-transition-slow: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--nok-font-primary);font-size:var(--nok-text-base);font-weight:var(--nok-font-regular);line-height:1.6;color:var(--nok-primary);background-color:var(--nok-off-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--nok-spacing-xl)}.nok-form-container{max-width:600px;width:100%;margin:var(--nok-spacing-2xl) auto;padding:var(--nok-spacing-xl);background:var(--nok-white);border-radius:var(--nok-radius-lg);box-shadow:var(--nok-shadow-lg)}.nok-form-header{text-align:center;margin-bottom:var(--nok-spacing-xl);padding-bottom:var(--nok-spacing-lg);border-bottom:1px solid var(--nok-medium-gray)}.nok-form-title{font-family:var(--nok-font-heading);font-size:var(--nok-text-3xl);font-weight:var(--nok-font-bold);color:var(--nok-primary);margin-bottom:var(--nok-spacing-sm);letter-spacing:-.02em}.nok-form-subtitle{font-size:var(--nok-text-base);color:var(--nok-dark-gray);font-weight:var(--nok-font-regular)}.nok-form-section{margin-bottom:var(--nok-spacing-xl);padding-bottom:var(--nok-spacing-lg);border-bottom:1px solid var(--nok-medium-gray)}.nok-form-section:last-of-type{border-bottom:none;margin-bottom:var(--nok-spacing-lg);padding-bottom:0}.nok-section-title{font-size:var(--nok-text-lg);font-weight:var(--nok-font-semibold);color:var(--nok-primary);margin-bottom:var(--nok-spacing-md);letter-spacing:-.01em}.nok-section-description{color:var(--nok-dark-gray);font-size:var(--nok-text-sm);margin-bottom:var(--nok-spacing-md);line-height:1.5}.nok-form-group{margin-bottom:var(--nok-spacing-lg)}.nok-form-group:last-child{margin-bottom:0}.nok-label{display:block;font-size:var(--nok-text-sm);font-weight:var(--nok-font-semibold);color:var(--nok-charcoal);margin-bottom:var(--nok-spacing-xs);letter-spacing:.01em}.nok-label-required:after{content:" *";color:var(--nok-accent)}.nok-helper-text{font-size:var(--nok-text-xs);color:var(--nok-dark-gray);margin-top:var(--nok-spacing-xs)}.nok-input,.nok-textarea,.nok-select{width:100%;padding:var(--nok-spacing-md);font-family:var(--nok-font-primary);font-size:var(--nok-text-base);color:var(--nok-primary);background-color:var(--nok-white);border:1.5px solid var(--nok-medium-gray);border-radius:var(--nok-radius-md);transition:border-color var(--nok-transition-fast),box-shadow var(--nok-transition-fast);outline:none}.nok-input::placeholder,.nok-textarea::placeholder{color:var(--nok-dark-gray);opacity:.7}.nok-input:hover,.nok-textarea:hover,.nok-select:hover{border-color:var(--nok-charcoal)}.nok-input:focus,.nok-textarea:focus,.nok-select:focus{border-color:var(--nok-accent);box-shadow:0 0 0 3px var(--nok-accent-light)}.nok-input:disabled,.nok-select:disabled{opacity:.5;cursor:not-allowed;background-color:var(--nok-light-gray)}.nok-input--error,.nok-textarea--error,.nok-select--error{border-color:var(--nok-error);background-color:var(--nok-error-light)}.nok-input--success,.nok-textarea--success,.nok-select--success{border-color:var(--nok-success);background-color:var(--nok-success-light)}.nok-textarea{min-height:120px;resize:vertical;line-height:1.5}.nok-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23424242' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.nok-select option{background:var(--nok-white);color:var(--nok-primary);padding:.5rem}.nok-checkbox-group,.nok-radio-group{display:flex;flex-wrap:wrap;gap:var(--nok-spacing-sm)}.nok-checkbox-label,.nok-radio-label{display:flex;align-items:flex-start;gap:var(--nok-spacing-sm);cursor:pointer;font-size:var(--nok-text-base);color:var(--nok-charcoal);transition:color var(--nok-transition-fast);padding:var(--nok-spacing-md);background:var(--nok-light-gray);border:1.5px solid var(--nok-medium-gray);border-radius:var(--nok-radius-md);flex:1 1 calc(50% - var(--nok-spacing-sm) / 2);min-width:200px}.nok-checkbox-label:hover,.nok-radio-label:hover{color:var(--nok-primary);border-color:var(--nok-accent)}.nok-checkbox,.nok-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;min-width:20px;border:2px solid var(--nok-medium-gray);background-color:var(--nok-white);cursor:pointer;transition:all var(--nok-transition-fast);flex-shrink:0;margin-top:2px}.nok-checkbox{border-radius:var(--nok-radius-sm)}.nok-radio{border-radius:var(--nok-radius-full)}.nok-checkbox:hover,.nok-radio:hover{border-color:var(--nok-accent)}.nok-checkbox:checked,.nok-radio:checked{background-color:var(--nok-accent);border-color:var(--nok-accent)}.nok-checkbox:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M10.28 2.28L4.5 8.06 1.72 5.28a1 1 0 0 0-1.44 1.44l3.5 3.5a1 1 0 0 0 1.44 0l6.5-6.5a1 1 0 0 0-1.44-1.44z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.nok-radio:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='4' fill='white'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.nok-checkbox:focus,.nok-radio:focus{outline:none;box-shadow:0 0 0 3px var(--nok-accent-light)}.nok-checkbox-text{color:var(--nok-charcoal);font-size:var(--nok-text-sm);line-height:1.4}.nok-checkbox-label--opt-in{background:transparent;border:none;padding:0;flex:1 1 100%}.nok-checkbox-label--opt-in .nok-checkbox-text{color:var(--nok-dark-gray);font-size:var(--nok-text-sm)}.nok-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--nok-spacing-sm);padding:var(--nok-spacing-md) var(--nok-spacing-xl);font-family:var(--nok-font-primary);font-size:var(--nok-text-base);font-weight:var(--nok-font-semibold);line-height:1;text-decoration:none;border:none;border-radius:var(--nok-radius-md);cursor:pointer;transition:all var(--nok-transition-base);outline:none}.nok-button--primary{background-color:var(--nok-accent);color:var(--nok-white)}.nok-button--primary:hover{background-color:var(--nok-accent-hover);transform:translateY(-1px);box-shadow:var(--nok-shadow-md)}.nok-button--primary:active{transform:translateY(0)}.nok-button--primary:focus{box-shadow:0 0 0 3px var(--nok-accent-light)}.nok-button--secondary{background-color:var(--nok-primary);color:var(--nok-white)}.nok-button--secondary:hover{background-color:var(--nok-primary-hover);transform:translateY(-1px);box-shadow:var(--nok-shadow-md)}.nok-button--outline{background-color:transparent;color:var(--nok-primary);border:2px solid var(--nok-primary)}.nok-button--outline:hover{background-color:var(--nok-primary);color:var(--nok-white)}.nok-button--ghost{background-color:transparent;color:var(--nok-accent)}.nok-button--ghost:hover{background-color:var(--nok-accent-light)}.nok-button--sm{padding:var(--nok-spacing-sm) var(--nok-spacing-md);font-size:var(--nok-text-sm)}.nok-button--lg{padding:var(--nok-spacing-lg) var(--nok-spacing-2xl);font-size:var(--nok-text-lg)}.nok-button--full{width:100%}.nok-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.nok-message{padding:var(--nok-spacing-md);border-radius:var(--nok-radius-md);font-size:var(--nok-text-sm);margin-bottom:var(--nok-spacing-lg)}.nok-message--error{background-color:var(--nok-error-light);color:var(--nok-error);border-left:4px solid var(--nok-error)}.nok-message--success{background-color:var(--nok-success-light);color:#2e7d32;border-left:4px solid var(--nok-success)}.nok-message--warning{background-color:var(--nok-warning-light);color:#e65100;border-left:4px solid var(--nok-warning)}.nok-message--info{background-color:var(--nok-info-light);color:#1565c0;border-left:4px solid var(--nok-info)}.nok-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--nok-spacing-lg);padding:var(--nok-spacing-2xl)}.nok-spinner{width:50px;height:50px;border:4px solid var(--nok-medium-gray);border-top-color:var(--nok-accent);border-radius:50%;animation:nok-spin .8s linear infinite}@keyframes nok-spin{to{transform:rotate(360deg)}}.nok-loading-text{color:var(--nok-dark-gray);font-size:var(--nok-text-base);font-weight:var(--nok-font-medium);letter-spacing:.01em}.nok-form-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--nok-spacing-md);margin-top:var(--nok-spacing-xl);padding-top:var(--nok-spacing-lg);border-top:1px solid var(--nok-medium-gray)}.nok-form-actions{display:flex;gap:var(--nok-spacing-md)}.nok-form-link{color:var(--nok-accent);text-decoration:none;font-size:var(--nok-text-sm);font-weight:var(--nok-font-medium);transition:color var(--nok-transition-fast)}.nok-form-link:hover{color:var(--nok-accent-hover);text-decoration:underline}.nok-divider{display:flex;align-items:center;margin:var(--nok-spacing-lg) 0}.nok-divider:before,.nok-divider:after{content:"";flex:1;height:1px;background-color:var(--nok-medium-gray)}.nok-divider span{padding:0 var(--nok-spacing-md);color:var(--nok-dark-gray);font-size:var(--nok-text-sm)}.nok-progress{display:flex;justify-content:space-between;margin-bottom:var(--nok-spacing-xl);position:relative}.nok-progress:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background-color:var(--nok-medium-gray);transform:translateY(-50%);z-index:0}.nok-progress-step{width:36px;height:36px;border-radius:var(--nok-radius-full);background-color:var(--nok-light-gray);border:2px solid var(--nok-medium-gray);display:flex;align-items:center;justify-content:center;font-size:var(--nok-text-sm);font-weight:var(--nok-font-semibold);color:var(--nok-dark-gray);z-index:1;transition:all var(--nok-transition-base)}.nok-progress-step--active{background-color:var(--nok-accent);border-color:var(--nok-accent);color:var(--nok-white)}.nok-progress-step--completed{background-color:var(--nok-success);border-color:var(--nok-success);color:var(--nok-white)}.nok-file-upload{border:2px dashed var(--nok-medium-gray);border-radius:var(--nok-radius-md);padding:var(--nok-spacing-xl);text-align:center;cursor:pointer;transition:all var(--nok-transition-base)}.nok-file-upload:hover{border-color:var(--nok-accent);background-color:var(--nok-accent-light)}.nok-file-upload-text{color:var(--nok-dark-gray);font-size:var(--nok-text-sm)}.nok-file-upload-text strong{color:var(--nok-accent);font-weight:var(--nok-font-semibold)}@media (max-width: 640px){.app{padding:var(--nok-spacing-md)}.nok-form-container{margin:var(--nok-spacing-md);padding:var(--nok-spacing-lg)}.nok-form-title{font-size:var(--nok-text-2xl)}.nok-form-footer{flex-direction:column}.nok-form-actions{width:100%;flex-direction:column}.nok-button{width:100%}.nok-checkbox-label,.nok-radio-label{flex:1 1 100%}}
