.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.p-0{padding:var(--spacing-0)}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.px-2{padding-left:var(--spacing-2);padding-right:var(--spacing-2)}.px-3{padding-left:var(--spacing-3);padding-right:var(--spacing-3)}.px-4{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.px-6{padding-left:var(--spacing-6);padding-right:var(--spacing-6)}.py-2{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.py-3{padding-top:var(--spacing-3);padding-bottom:var(--spacing-3)}.py-4{padding-top:var(--spacing-4);padding-bottom:var(--spacing-4)}.py-6{padding-top:var(--spacing-6);padding-bottom:var(--spacing-6)}.m-0{margin:var(--spacing-0)}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:var(--spacing-4);margin-bottom:var(--spacing-4)}.my-8{margin-top:var(--spacing-8);margin-bottom:var(--spacing-8)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mb-2{margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.mb-8{margin-bottom:var(--spacing-8)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-inverse{color:var(--color-text-inverse)}.bg-primary{background-color:var(--color-primary-500)}.bg-secondary{background-color:var(--color-secondary-500)}.bg-success{background-color:var(--color-success-500)}.bg-warning{background-color:var(--color-warning-500)}.bg-error{background-color:var(--color-error-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-white{background-color:#fff}.border{border:1px solid var(--color-border-primary)}.border-2{border:2px solid var(--color-border-primary)}.border-t{border-top:1px solid var(--color-border-primary)}.border-b{border-bottom:1px solid var(--color-border-primary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.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-none{box-shadow:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.pointer-events-none{pointer-events:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition{transition-property:all;transition-duration:var(--transition-normal);transition-timing-function:var(--transition-ease)}.transition-fast{transition-duration:var(--transition-fast)}.transition-slow{transition-duration:var(--transition-slow)}.scale-105:hover{transform:scale(1.05)}.scale-95:active{transform:scale(.95)}.card{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary);transition:all var(--transition-normal) var(--transition-ease)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);font-family:var(--font-family-body);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-normal) var(--transition-ease);text-decoration:none;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-lg)}.btn-primary{background:var(--brand-primary);color:var(--text-on-primary)}.btn-primary:hover:not(:disabled){background:var(--brand-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-gradient{background:var(--brand-gradient)}.btn-gradient:hover:not(:disabled){background:var(--brand-gradient-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-primary)}.btn-secondary:hover:not(:disabled){border-color:var(--brand-primary);color:var(--brand-primary)}.btn-success{background:var(--color-success);color:var(--text-on-success)}.btn-success:hover:not(:disabled){background:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger{background:var(--color-error);color:var(--text-on-error)}.btn-danger:hover:not(:disabled){background:var(--color-error-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-warning{background:var(--color-warning);color:var(--text-on-warning)}.btn-warning:hover:not(:disabled){background:var(--color-warning-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--border-primary);border-radius:var(--radius-md);font-family:var(--font-family-body);font-size:var(--font-size-sm);color:var(--text-primary);background:var(--bg-primary);transition:border-color var(--transition-fast) var(--transition-ease)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--bg-input-disabled);color:var(--text-disabled);cursor:not-allowed}.form-input:-moz-read-only{background:var(--bg-secondary);cursor:not-allowed}.form-input:read-only{background:var(--bg-secondary);cursor:not-allowed}.form-textarea{resize:vertical;line-height:1.5}.form-select{cursor:pointer}.section-title{font-family:var(--font-family-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-6) 0;display:flex;align-items:center;gap:var(--spacing-2)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12) var(--spacing-8);text-align:center;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.empty-state i,.empty-state .empty-icon{font-size:4rem;color:var(--text-tertiary);margin-bottom:var(--spacing-4)}.empty-state h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-2) 0;font-family:var(--font-family-heading)}.empty-state p{font-size:var(--font-size-base);color:var(--text-secondary);margin:0}.badge{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.spinner{width:1em;height:1em;border:2px solid var(--color-gray-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin .6s linear infinite}.text-kid-blue{color:var(--color-kid-blue)}.text-kid-green{color:var(--color-kid-green)}.text-kid-yellow{color:var(--color-kid-yellow)}.text-kid-purple{color:var(--color-kid-purple)}.bg-kid-blue{background-color:var(--color-kid-blue)}.bg-kid-green{background-color:var(--color-kid-green)}.bg-kid-yellow{background-color:var(--color-kid-yellow)}.bg-kid-orange{background-color:var(--color-kid-orange)}.bg-kid-purple{background-color:var(--color-kid-purple)}.bg-kid-pink{background-color:var(--color-kid-pink)}@media (min-width: 640px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:text-lg{font-size:var(--font-size-lg)}}@media (min-width: 768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}.md\:text-xl{font-size:var(--font-size-xl)}.md\:p-8{padding:var(--spacing-8)}}@media (min-width: 1024px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:text-2xl{font-size:var(--font-size-2xl)}.lg\:p-12{padding:var(--spacing-12)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4)}.modal-box{background:var(--bg-primary);border-radius:var(--radius-lg);width:100%;max-width:520px;box-shadow:var(--shadow-lg);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--border-primary)}.modal-header h3{margin:0;font-size:var(--font-size-base);font-family:var(--font-family-heading);color:var(--text-primary)}.modal-close{background:none;border:none;cursor:pointer;font-size:1.25rem;color:var(--text-secondary);padding:0;line-height:1;transition:color var(--transition-fast) var(--transition-ease)}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--spacing-4) var(--spacing-5);max-height:360px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);border-top:1px solid var(--border-primary)}.stat-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-6);display:flex;align-items:center;gap:var(--spacing-4);box-shadow:var(--shadow-sm);transition:all var(--transition-normal) var(--transition-ease)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{width:3.5rem;height:3.5rem;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--brand-primary) 10%,transparent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon i{font-size:1.5rem;color:var(--brand-primary)}.stat-content{flex:1}.stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:1;margin-bottom:var(--spacing-1);font-family:var(--font-family-heading)}.stat-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.stat-subtitle{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:.125rem}.comic-complexity-badge{font-size:11px;font-weight:600;padding:2px 10px;border-radius:99px;white-space:nowrap;flex-shrink:0}.complexity-k2{background:var(--bg-info-subtle);color:var(--color-info)}.complexity-grade34{background:var(--bg-warning-subtle);color:var(--color-warning-dark)}.complexity-grade56{background:color-mix(in srgb,var(--brand-primary) 12%,transparent);color:var(--brand-primary)}
