*{box-sizing:border-box}body{font-family:var(--font-family-primary,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-background,#fff);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold,700);line-height:var(--line-height-tight,1.2);margin:0}h1{font-size:var(--font-size-4xl,2.25rem)}h2{font-size:var(--font-size-3xl,1.875rem)}h3{font-size:var(--font-size-2xl,1.5rem)}h4{font-size:var(--font-size-xl,1.25rem)}h5{font-size:var(--font-size-lg,1.125rem)}h6{font-size:var(--font-size-base,1rem)}p{margin:0}a{color:var(--color-primary,#3b82f6);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-family-monospace,"Courier New",monospace)}code{font-size:var(--font-size-sm,.875rem);background-color:var(--color-background,#f3f4f6);border-radius:var(--border-radius-sm,.25rem);padding:.125rem .375rem}pre{font-size:var(--font-size-sm,.875rem);background-color:var(--color-background,#f3f4f6);padding:var(--spacing-md,1rem);border-radius:var(--border-radius-md,.5rem);border:1px solid var(--color-border,#e5e7eb);overflow-x:auto}pre code{background:0 0;border-radius:0;padding:0}ul,ol{padding-left:var(--spacing-lg,1.5rem);margin:0}li{margin:var(--spacing-xs,.25rem)0}table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem)}thead{background-color:var(--color-background,#f9fafb)}th{padding:var(--spacing-sm,.75rem);text-align:left;font-weight:var(--font-weight-semibold,600);border-bottom:1px solid var(--color-border,#e5e7eb)}td{padding:var(--spacing-sm,.75rem);border-bottom:1px solid var(--color-border,#e5e7eb)}tbody tr:hover{background-color:var(--color-background,#f9fafb)}blockquote{padding-left:var(--spacing-md,1rem);border-left:4px solid var(--color-border,#e5e7eb);color:var(--color-text-secondary,#6b7280);margin:0;font-style:italic}hr{border:none;border-top:1px solid var(--color-border,#e5e7eb);margin:var(--spacing-md,1rem)0}img{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit;cursor:pointer}input,textarea,select,button{font-family:inherit;font-size:inherit}textarea,select{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=text]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=email]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=password]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=number]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=tel]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=url]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=search]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=date]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=time]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=datetime-local]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=month]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}input[type=week]{width:100%;padding:var(--spacing-sm,.75rem);font-size:var(--font-size-base,1rem);line-height:var(--line-height-normal,1.5);color:var(--color-text,#1f2937);background-color:var(--color-input-background,var(--color-surface,#fff));border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);transition:border-color .2s,box-shadow .2s,background-color .2s;display:block}textarea:focus,select:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=text]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=email]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=password]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=number]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=tel]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=url]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=search]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=date]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=time]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=datetime-local]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=month]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}input[type=week]:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}textarea:disabled,select:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=text]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=email]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=password]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=number]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=tel]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=url]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=search]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=date]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=time]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=datetime-local]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=month]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=week]:disabled{background-color:var(--color-background,#f9fafb);cursor:not-allowed;opacity:.6}input[type=text]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=email]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=password]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=number]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=tel]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=url]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=search]::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}textarea::-moz-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=text]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=text]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=email]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=email]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=password]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=password]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=number]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=number]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=tel]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=tel]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=url]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=url]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=search]::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}input[type=search]::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}textarea::-webkit-input-placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}textarea::placeholder{color:var(--color-text-secondary,#6b7280);opacity:.7}textarea{resize:vertical;min-height:100px}select{-webkit-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='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-sm,.75rem)center;padding-right:calc(var(--spacing-sm,.75rem)*2.5)}input[type=checkbox]{width:1rem;height:1rem;margin-right:var(--spacing-xs,.25rem);cursor:pointer;accent-color:var(--color-primary,#3b82f6)}input[type=radio]{width:1rem;height:1rem;margin-right:var(--spacing-xs,.25rem);cursor:pointer;accent-color:var(--color-primary,#3b82f6)}label{margin-bottom:var(--spacing-xs,.25rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--color-text,#1f2937);display:block}.form-group{margin-bottom:var(--spacing-md,1rem)}.form-help{margin-top:var(--spacing-xs,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary,#6b7280);display:block}.form-error{margin-top:var(--spacing-xs,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-error,#dc2626);display:block}input.error,textarea.error,select.error{border-color:var(--color-error,#dc2626)}input.error:focus,textarea.error:focus,select.error:focus{box-shadow:0 0 0 3px rgba(220,38,38,.1)}.form-success{margin-top:var(--spacing-xs,.25rem);font-size:var(--font-size-sm,.875rem);color:var(--color-success,#16a34a);display:block}input.success,textarea.success,select.success{border-color:var(--color-success,#16a34a)}button,.btn{padding:var(--spacing-sm,.75rem)var(--spacing-md,1rem);font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-medium,500);line-height:var(--line-height-normal,1.5);text-align:center;border-radius:var(--border-radius-md,.5rem);cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .2s;display:inline-block}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background-color:var(--color-primary,#3b82f6);border-color:var(--color-primary,#3b82f6)}button[type=submit]{color:#fff;background-color:var(--color-primary,#3b82f6);border-color:var(--color-primary,#3b82f6)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark,#2563eb);border-color:var(--color-primary-dark,#2563eb)}button[type=submit]:hover:not(:disabled){background-color:var(--color-primary-dark,#2563eb);border-color:var(--color-primary-dark,#2563eb)}.btn-secondary{color:var(--color-text,#1f2937);background-color:var(--color-surface,#fff);border-color:var(--color-border,#e5e7eb)}.btn-secondary:hover:not(:disabled){background-color:var(--color-background,#f9fafb)}.btn-outline{color:var(--color-primary,#3b82f6);border-color:var(--color-primary,#3b82f6);background-color:transparent}.btn-outline:hover:not(:disabled){color:#fff;background-color:var(--color-primary,#3b82f6)}.btn-ghost{color:var(--color-text,#1f2937);background-color:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-background,#f9fafb)}.btn-danger{color:#fff;background-color:var(--color-error,#dc2626);border-color:var(--color-error,#dc2626)}.btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-sm{padding:calc(var(--spacing-xs,.25rem)*1.5)var(--spacing-sm,.75rem);font-size:var(--font-size-sm,.875rem)}.btn-lg{padding:var(--spacing-md,1rem)var(--spacing-lg,1.5rem);font-size:var(--font-size-lg,1.125rem)}.input-group{align-items:stretch;display:flex}.input-group>input,.input-group>select,.input-group>button,.input-group>.btn{border-radius:0}.input-group>:first-child{border-top-left-radius:var(--border-radius-md,.5rem);border-bottom-left-radius:var(--border-radius-md,.5rem)}.input-group>:last-child{border-top-right-radius:var(--border-radius-md,.5rem);border-bottom-right-radius:var(--border-radius-md,.5rem)}.input-group>:not(:last-child){border-right:none}fieldset{padding:var(--spacing-md,1rem);border:1px solid var(--color-border,#e5e7eb);border-radius:var(--border-radius-md,.5rem);margin:0}legend{padding:0 var(--spacing-xs,.25rem);font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text,#1f2937)}.text-primary{color:var(--color-primary,#3b82f6)}.text-secondary{color:var(--color-text-secondary,#6b7280)}.bg-surface{background-color:var(--color-surface,#fff)}.bg-background{background-color:var(--color-background,#f9fafb)}.border{border:1px solid var(--color-border,#e5e7eb)}.rounded-sm{border-radius:var(--border-radius-sm,.25rem)}.rounded-md{border-radius:var(--border-radius-md,.5rem)}.rounded-lg{border-radius:var(--border-radius-lg,.75rem)}.shadow-sm{box-shadow:var(--shadow-sm,0 1px 2px 0 rgba(0,0,0,.05))}.shadow-md{box-shadow:var(--shadow-md,0 4px 6px -1px rgba(0,0,0,.1))}.shadow-lg{box-shadow:var(--shadow-lg,0 10px 15px -3px rgba(0,0,0,.1))}
